././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.2565212 veusz-3.6.2/0000775000175000017500000000000014376700261011126 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/AUTHORS0000664000175000017500000000015214126044351012166 0ustar00jssjssJeremy Sanders http://www.jeremysanders.net/ James Graham ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/COPYING0000664000175000017500000004310314126044351012154 0ustar00jssjss GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426591.0 veusz-3.6.2/ChangeLog0000664000175000017500000011335414376677637012733 0ustar00jssjssChanges in 3.6.2: * Fix broken resource symlink handling Changes in 3.6.1: * Fix appdata file * Fix issue in setup.cfg Changes in 3.6: * Interactive rotation of 3D plots * Add 12-bit rainbow colormap * Fix crash in contour key values * Fix breakage with recent numpy versions due to removal of bool * Fix error in colormap sequence * About dialog shows software versions * Rewrite install instructions in INSTALL.md * Fix for Python 3.11 due to opening with universal newlines * Remove use of distutils * Fix MacOS binary Changes in 3.5.3: * Fix missing documentation Changes in 3.5.2: * Fix broken ChangeLog Changes in 3.5.1: * Fixes for EMF generating code (requires pyemf-3.1) Changes in 3.5: * Improvements in fitting (thanks to Sebastian Koenig), including: - Assume absolute errors by default - Introduce minimum and maximum fit ranges - Add setting to give default error value and type (absolute/relative) * Fixes for macOS button appearance (Takuro Hosomi) * Plugin fixes, renaming --plugin to --veusz-plugin option (also thanks to Takuro Hosomi) * Bug fix for broken axis drawing * Mirrored axis bug fix * More keyboard shortcuts * Fix build system to use sip-build, which works with recent SIP versions * Change high DPI scaling policy * Support _FillValue and missing_data attributes in HDF5 files for NetCDF * Switch to pyemf3 module for emf output User-visible changes in 3.4: * Font styles can be chosen * Add setting to specify minor ticks in axis * Add setting to ignore NaN values in point plotter, rather than breaking lines * Add copy and paste of images (thanks to chakuro) * Add embedding SVG graphics (thanks to korintje) * New tight-Bezier line style (thanks to korintje) * Add hide icon (eye) in settings and grey tabs as appropriate * Add \ddot latex command * Axis auto ranges (e.g. 5-95%) can now have decimals * Filename set after Load() * Fix renaming 2D datasets * Fix for blank dataset output names in dataset plugin * Fix for crash in QDP plugin * Linux dark mode improvements * Font foundry name removed from SVG files * Add page colour or fill setting * Change default xy plotter marker size and fill colour for new documents * Add function widget global colour setting Internal changes in 3.4: * Add new compatibility level functionality for new documents * Iminuit2 fixes (thanks to korintje) * Drop Python 2 compatibility * Source code reformatting * Updated appdata (thanks to kevinsmia1939) * Import sip from PyQt5.sip if available * Update to require SIP 5+ build system (thanks to mitya57) * Python 3.10 fixes Changes in 3.3.1: * New tools for zooming into plot on click, zooming out, moving plot center and resetting plot axes * Double clicking on axis range resets endpoint to Auto * Add key entries for histo widget * MacOS improvements * Big Sur compatibility fix * Fix file associations * Python 3.10 prerelease fixes * Fix for reproducible builds Changes in 3.3: * New histogramming widget (histo) * Add keyboard shortcut for showing/hiding widgets (Ctrl+[ and Ctrl+]) * New security model allows running arbitrary code for documents in allowed locations * Allow Python-level module imports * New separate lo and hi error bar styles (#428) * Use same colour for key title as key text (#414) * Add preferences for number of significant figures in picker * New colormaps: inferno, magma, moreland, parula, plasma and viridis * Add CurrentPath() API command to get current widget path * Add dataset operations for reversing and subtracting dataset maximum * Now supports building using sip5 * Bugfix for values in boxplots (#455) * Add setting to optionally omit paths in document files * New flight-recorder and histogram examples * Make sure line around arrows is solid (#429) * README is now renamed to README.md * Switch to unsigned long long for widget IDs to fix build * Add multiline FieldTextEdit (#392) field * Windows binary now built only for 64 bit * MacOS binary now built for High Sierra (10.13) or later Changes in 3.2.1: Bug fixes: * Fix too large page size in SVG export * Reenable compression for PNG export * Fix crash in HDF5 import dialog * If filename extension is missing in export dialog, add it and avoid crash * Take account of QT_LIBINFIX setting for unusual Qt installs Improvements: * Add \wtilde text command to place a tilde over text Changes in 3.2: Improvements: * Add ability to plot image widget using boxes rather than a bitmap, with new drawing mode option * Add widget order option in key widget * Export dialog now uses multiple threads * Python 3.9 compatibility fixes Minor changes: * Show exception dialog if crash occurs outside main thread * Added Brazilian Portuguese description for desktop file * Use python3 by default for in-place run Bug fixes: * Fix icons in tutorial * Fix case when positions in bar widget are set, then removed * Truly all files are shown in import dialog, if requested * Fix browse button in export dialog * Fix stylesheet for polygon widget * Fix invalid escape sequences warnings * Fix parametric date creation for non-English locales Changes in 3.1: Improvements: * Do not print or export hidden pages * Allow expressions in dataset of contour widget * Allow widgets to be excluded in key (thanks to Alexander Book) * Make bezier line better fit data * Switch linux binary from x86 -> x86-64 for better compatibility Bug fixes: * Compilation fix for PyQt>=5.12 (thanks to Dimitry Shachnev) * Ensure fit settings are sorted in output file * Fix crash in contour labelling * Fix 3D axis crash bug * Fix problem with broken axis with null-sized regions * Fix issue with 0-sized images in image widget * Fix function widget crash with certain plotting range * Fix for axis crash with large magnitude ranges * Fix CSV importing issues for 2D and ND data * Fix zero division error in 2D import * Fix crash on importing HDF5 files with variable length text * Catch issue with zero range axes * Fix crash is using set in dataset expression * Fix crash when moving line coordinates * Remove deprecation warnings when compiling with recent Qt versions Changes in 3.0.1: * Change in build system to use qmake to find Qt locations. This is to fix the build inside Anaconda. Also Qt and sip parameters can now be given as environment variables. * Fix problem when picking points with too many non-finite values * Change default SVG export DPI to 96 to match inkscape and provide option in dialog to choose export DPI * Allow %PAGE% and %PAGENAME% in export filename for single page output * Fix failing fitting due to iminuit differences * Fix crash if both ends of part of broken axis widget are the same for EMF exporting * Update to Qt 5.11.1 and update PyQt and sip in Windows binary * Build Mac and Linux binaries with EMF export Changes in 3.0: * New 3D support for plotting points, functions, surfaces and volumes * Add --export-option parameter for command line exporting control * Add templates in preferences for exported file names, add %PAGE00% and %PAGE000% options for zero-prefixed page numbers, and change %PAGENUM% to %PAGE% * In export dialog allow user to specify arbitrary pages to export * Change miter limit for lines, which fixes some problems when exporting arrow to PDFs * Use flat cap on lines with arrows, to avoid line showing through head * Support datetime64 and string/unicode characters in npy/npz import * Add \hat LaTeX support Changes in 2.2.2: * Fix zoom for polar, ternary and broken axis plots * For mean and add dataset operations, allow datasets to be different lengths, expanding to the maximum * Fix broken axis if the ends of the axis are not the edge of the plot * Fix image embedding in Python 3 * Update h5py to newer version in Windows binary (supporting HDF 1.10.1) * Fix 'fractions' and 'percentages' units in polar plot * Add LANG(mapping) function when evaluating labels, allowing translation of strings in documents Changes in 2.2.1: * Fix mouse control for Key widget for different zoom levels * Correct coordinates shown on bottom of screen for different zoom levels * Fix zoom into graph functionality for different zoom levels * Fix plot picking for different zoom levels * When choosing a text dataset, fix the mini dataset browser * Fix crash when previewing in binary import using Python 3 * Fix crash when picking points in certain circumstances Changes in 2.2: * Notify user updates to Veusz are available * Add support for high DPI displays * Change zoom code scale plots, rather than changing the size of elements, so that plots look more similar at different zoom levels * Send automatic anonymous feedback to developers giving software version information and counts of the features used. * Fix colormap sequence and randomize plugins * Change hyphen to minus sign when using standard C formatting in tick labels * Fix for Chinese and Korean characters in filenames on Windows * Sort DatasetPlugin arguments for diffing * Fix bitmap EMF export in Python 3 * The redo operation can now be done multiple times * Hide fully transparent objects, rather than trying to draw them * Fix bug report script in Python 3 * Fallback for paint device metrics, fixing bugs when PyQt is older than Qt * If barplot positions setting is blank but set, treat as unset Changes in 2.1.1: * Fix dashed/dotted custom lines in EMF output * Fix Fields in dataset plugins * Fix data import plugins * Use deprecated sipconfig if available to find SIP files * Fix problems with opening files using command line arguments with some encodings * Hide splash if program takes too long to start Changes in 2.1: * If file cannot be imported on document load, ask user for a new filename * Only open HDF5 files in readonly mode * Do not simply log errors when loading data with ImportPlugins * Cleanup of stylesheet, setting and widget code * Fix filename chooser and embedding in ImageFile widget * Force C++11 compilation on Unix * Fix document reload, export warning and unsafe loading dialogs * Parameterize number of line steps in covariance widget * Report error line number for csv reading exceptions * Convert values from expressions to 1D arrays when required * Take account of endsize setting for bar plot error bars * Remove dependence on sipconfig in build and add sip build parameters Changes in 2.0.1: * Fix crash setting manual bins in histogram dialog box * Add missing DLLs to Windows installer * Fix version number in Mac OS package * Add new colormaps (thanks to yingchaolu) Changes in 2.0: * Update to PyQt5 and Qt5 * Use Ghostscript to write EPS/PS formats * Use pyinstaller for MacOS builds instead of py2app * Windows build requires Windows 7 minimum * MacOS build requires MacOS 10.10 minimum * Move to using Sphinx for documentation * Add Makefile for documentation and remove build script * Use isfinite() on FreeBSD * Drop old veusz_listen script in favour of veusz --listen Changes in 1.27: * New FITS import code and user interface, allowing much more flexible and convenient FITS importing * Fix half pixel error in linear WCS FITS support * Save custom definitions after importing data, to allow customs to depend on datasets. * Add preference for loading translation file * Fix logical errors in transparency in image widget * If cannot find translation or plugin, do not end app after showing error * Fix for Python 3 for reloading datasets Changes in 1.26.1: * Change homepage in program to new site https://veusz.github.io/ * Change new version checking to use veusz.github.io Changes in 1.26: * Add color themes and automatic coloring of widgets * Custom color definitions * Improved custom definition dialog box * Fix loading translator via command line * Show horizontal error lines/fills in key * Use iMinuit if available for fitting * Fix for dataset plugins returning nD datasets * Add editable automatic axis range, including support for shrinking range (-X%), percentage ranges (X-Y%) and limits (Y%) * Fix for key if invalid dataset * For log scaling on image widget, show invalid values as being transparent Bug fixes in 1.25.1: * Fix 2D dataset expressions * Fix 2D X,Y,Z dataset expressions * Better error checking in Gnuplot import plugin * Catch non-single character delimiters for 2D CSV import * Fix SETTING(), BASENAME(), FILENAME() and DATA() in function evaluation * More self tests Changes in 1.25: * Add n-dimensional dataset support * Add GetColormap command to return RGBA values * Add Colormap sequence plugin for choosing colors of widgets * Fill above/below setting shown in key for xy widget * Add Covariance widget for plotting covariance ellipses * Add lineup, linedown, lineleft and lineright markers * Add lineup, linedown and lineextend arrows Bug fixes: * Fix pick indices if non-finite values in data * Fix drag and drop of files into Veusz on Windows * Raise exception if functions in console request input, avoiding hang * Initialise unsafe_mode, in case Veusz used in PyQt embedding * Fix crash if setting default setting in default setting window * Fix crash in Clone() command on python3 Changes in 1.24: * Text labels can now include Python expressions inside %{{ }}% * Added built-in functions DATE([fmt]), TIME([fmt]), FILENAME() and BASENAME() when evaluating expressions, which are useful when used in labels * Added Python dictionary ENVIRON when evaluating expressions, to obtain values from environment variables * Added DATA(name, [part]) function to expression environment for accessing values from datasets, useful for function evaluation or labels * Added SETTING(path) function for expression evaluation to obtain values of settings * Added ESCAPE(text) function to environment, which allows LaTeX special characters to be displayed in labels * Add fractions and percentages units to polar plot * Allow number of spokes to be varied in polar plot * Widgets can be clicked holding down shift or ctrl, to add or toggle their selection * Add K. Moreland's cool-warm colormap (thanks to S. Richardson) * Added further green-map, blue-darkred, blue-darkorange, brown-blue and blue-orange colormaps from Oregon geography dept. * Add logarithm and exponential dataset plugins * Add Wipe() command to embedding interface to clear document * Add File->Reload menu option to reload from saved document * Add tooltip to items in FieldWidget showing widget path Bux fixes: * Fix transparency with bar plot * Use getcwdu() for python2 to avoid bugs combining paths * Handle inf/nan when converting to human readable form in plots * Fix CreateHistogram on command line without binparams parameter * Handle empty 2D dataset import with grid at edge enabled * Do not allow error bars on imported CSV non-numeric data * Handle missing argument in \size * For data edit dialog, allow 1D dataset to replace 2D dataset * Crash if zoom to be height when height is zero * Fix problem with 2D import if error message is in unicode * With axis-function widget catch result if greater than 1 dimension * Fix cloning for datasets with / in name * Fix crash in embedding if plot window closed while rendering in progress >>>>>>> master Changes in 1.23.2: * Add data clipping dataset plugin * Fix boxplot with manual settings * Fix plugin normalize and divide by maximum for new numpy versions * Avoid error in 2d data creation * Fix problems with unicode characters in plugins in Python 2.x * Clip axis to sensible range -1e100->1e100 * Handle unicode errors from operating system in Veusz scripts * Handle unicode errors in error reports * Fix crash in \color Changes in 1.23.1: * Enable compression in exported files (Benjamin K. Stuhl) * Fix saving histogram datasets * Add option to "thin" error bars plotted * Fix label colour in contour labelling * Remove use of deprecated Qt functions * Fix clone widget tools plugin * Fix EPS/PDF crash with broken axis widget * Do not crash filter plugin if using date datatype * Avoid crashes in normalise, subtract minimum and divide maximum plugins * Avoid crash in image widget * Avoid issue in identifying spacing in 1D->2D conversion * Add Gnuplot 2D data import plugin (Joerg Meyer) * When loading data from import plugins, provide default values * Remove some deprecated Qt uses * Fix issue when plotting non-plain datasets with nan values Changes in 1.23: * Add new export dialog box which can export multiple pages and modify the export options * Add new dataset filtering dialog * Add cubehelix() functional colormap * Add -stepN suffix for colormaps to make arbitrary numbers of steps * Fix incorrect colors in log images and log color scales * Fix unsafe commands not being run Minor changes * Fix incorrect use of None in (x,...) pattern * Catch crash if plotting nan/inf value in log space * Fix getData in dataset plugin for dimensions=2 * Catch error in too large float to date time conversion * Catch disappeared file during import * Index error fixed in pickable * Catch error in data edit dialog if 2d dataset size changes * If root widget is selected with others, do not error on hide * Fix undo for dataset histogram with a single output dataset * Fix error resizing ellipse with a tuple width, height or position setting * Only use finite values in histogram * Rewrite Line/FillSet setting controls for internal consistency and to fix new style extended fills * Do not crash with log date-time axes * Also ignore non-finite values when fitting with minuit * Avoid syntax error with invalid colormap * Updates to setup.py and desktop files * Recreate dataset now works if dialog hasn't been opened already * Restore dock layout when using Python3 * Fix undo after loading stylesheet/custom definitions * Support unicode example filenames * Clip bezier lines to avoid problems with log axes Changes in 1.22: * Add option to ignore white space following delimiters when importing CSVs * Allow x/yedge and x/ycent to be inverted to change data order when import 2D data * Rewrite of widget tree internals to fix miscellaneous bugs * Optionally use astropy for SAMP * Add setting to extend the python import path * Add option to select widgets with same name on page * Resize rectangular shapes keeping other corners fixed. Old symmetric resize behaviour is retained if shift is pressed. Bug fixes * Fix faulty caching of datasets expressions * Do not auto mirror axes if shared axis placed in grid and ignore other hidden axes for mirroring purposes * gridatedge 2D import option inverts values in rows * y values for 2D datasets in data edit dialog are inverted * Fix crash when constructing 2D dataset with constants * Fix crash when interpreting date values with unicode * Fix for crash when moving ellipses on broken axes * Fix crash when editing datetime data * Fix crash when renaming 2D datasets in dataset editor * If 2d dataset does not exist, don't crash when using colorbar * Ignore HDF5 data types which are not supported by h5py * Catch recursion limit errors properly * In sort and text sort plugins, clip length to minimum * Do not plot functions with more than 1D in function plotter * Catch error for shapes widgets with no coordinates * Handle zero length datasets in subtract minimum or mean * Clip range of zoom between 0.05 and 20x * Catch errors in CSV date format * Do not allow 2D datasets to be used for labels in label widget * Handle unicode data correctly in clipboard data * Fix data import dialog for fits files in unicode paths Changes in 1.21.1 * Add swap option on keys, swapping symbol and text Bug fixes * Fix missing labels if colorbar out of plot * Preserve tags when reloading datasets * Handle nan/inf/-inf when as value in UI * Remove dependence on pyqtconfig in build system * Handle errors properly in 2D CSV read * Do not crash if selecting siblings of document widget * Fix accidental modification of data by line widget * Improve PDF bounding box rounding to prevent chopping near edge * Fix function plotter in embedding * Fix astropy version checking * Fix crash for error bar in CSV with blank previous column Changes in 1.21: * Add HDF5 saved document format * Add filled curve error bar style * Add fill left/right options for point plotter * Add filetype filters to import dialog file browser dialog * In file completer in import dialog, use selected tab as filter * Move code to use PyQt new style signals * Add a master color setting for xy point and nonorthpoint plot * Line labelling algorithm much improved in contour plots, which rotates text to match line angle and avoids label overlaps * More accurate axis tick label bounding boxes, allowing rotated labels to be placed close together * Add reflection and rotation options to vector field widget * Switch to scientific notation earlier when showing float settings Bug fixes: * Direction combo did not work in import dialog * Saving text datasets did not work in Python3 * Fix partial dataset evaluation issue when loading documents * 2D non-regular pixel spaced images give error if clipped in y * Handle Unicode quoted characters in simple text data files * xcent/ycent in Dataset2D import plugins were ignored * promote_tab broken for import plugins * Full screen view when all pages are deleted * Crash with empty dataset and boxplot widget * Fix copy and paste of datasets * Python 3 resizing axis bug * Crash if picking/zooming on document with no pages * Crash if reediting histogram dataset with blank output entry * Use end of text formatting string beyond format specifier * When writing SVG text as text, use xml:space="preserve" to avoid missing whitespace * Embedding socket issue on Python 3.4+ Changes in 1.20.1: * Include free-desktop appdata, MIME and desktop files * When plotting xy widget filled error regions, plot line on top Bug fixes: * Fix embedding interface startup problem in 1.20 * Additional embedding interface fixes for Python 3 * Fix crash in tutorial if flashing widget deleted * Fix polar plot crash with reverse minumum and maximum radii * Fix crash when changing range of broken axes interactively * Fix object deletion crash in setting menu * Check output dataset is not same as an input for histograms * Fix for compilation on Qt 4.6 * Catch socket errors on embed client * Fixes for formatting strings, including fixes for arguments of the extended %Vg format and properly supporting %% * When restoring window position, do not restore offscreen Changes in 1.20: * Add HDF5 file data import * Allow expressions to be edited for linked 2D datasets * Add support for 2D datasets with irregular gridpoints * Add 2D data CSV import * Allow safe renaming of linked datasets * Support importing text from FITS files Bug fixes: * When capturing data from a file/named pipe, do not stop when no more data are available * Fixes mangling of text in saved files using Windows binary * Fix encoding for standard file import * Fix FITS import for python3 Changes in 1.19.1: * Add option to disable scaling of marker border with point scaling * Implement label at-minimum/at-maximum for ternary plot * Add border and background fill settings for text label widget * Enable FITS support with astropy Bug fixes: * Fix broken drag and drop in documents * Fix deleted C/C++ object crash when using undo and in tutorial * Fix compilation in MSVC for Python 3 * Remove warning/error in compilation in gcc in SUSE * Add Python version classifiers * Fix document icons in Windows binary * Error bars can be plotted incorrectly for histogrammed data Changes in 1.19: * Make code compatible with python3 * Separation of python module and resources in source package (packagers may need to consult INSTALL) * Move to v2 of PyQt API * Remove deprecated numpy API from helpers module * Allow FITS dataset names to be blank if prefix/suffix are not * New ast-based code security checker * Picker uses 1-based index for consistency * Allow non-text datasets to be used for labels * Add number->text conversion dataset plugin * Add binning dataset plugin * Allow more significant figures in float values * Intelligent choice of significant figures when interactively changing axis range * Decrease minimum range of axis * Add notes setting to document, pages and graphs Bug fixes: * Fix crash if other linked axis not initialized * Fix crash if trying to edit non-editable datasets * Make ignore exception work in error reporting dialog * Renaming datasets, widgets and editing data now allow original text to be edited, rather than being cleared * Fix line positions on broken axes * OS X Mavericks - fixes for opening files from finder and fonts Changes in 1.18: * Add support for dataset expressions when plotting * Add axis-function widget for plotting axes which have a scale given by a function, or are linked to a different axis via a function * Add stepped colour maps * Support editing multiple datasets simultaneously in editor * Add setting to fix aspect-ratio of graphs * Add 'vcentre' line step mode for vertical step plots * Add internal margin setting for grids to separate sub-plots * Add pixel, pixel_wcs, fraction and linear_wcs FITS import coordinate system modes * Add drop down toolbar button menu to create axis widgets * More efficient widget dependency resolution Bug fixes: * Fix reversed 'broken'-axes * Do not always draw axes above other widgets (fixes problem with key below axis) * Fix use of transparency image when plotting non-square images * Allow lists passed as xrange and yrange to create 2D dataset * Fix FieldBool positioning for plugins * QDP import: fix "no" values when used mixed with numbers * Remove warning of log images with zeros * For embedded mode, always return string for __repr__ * Workaround for windows appearing behind for Mac OS X * Improve property spacing on Mac OS X Changes in 1.17.1: * Allow coloured points for non-orthogonal plots (polar, ternary) * Remove unnecessary exception data Bug fixes: * Fix Print dialog * Fix command-line "Print" command * Fix duplicate axes drawn in grid * Fix crash adding empty polar plot * Exit properly on Mac OS X with --export option * Fix highlighted button icons missing (Mac OS X binary) Changes in 1.17: * Add new broken axis widget with gaps in the numerical sequence * Grid lines are plotted always under (or over) the data * Shift+Scroll wheel scrolls left/right (thanks to Dave Hughes) * Polar plots can have a "minimum" radius and log axes * Many more LaTeX symbols added * Add SAMP/VoTable support (thanks to Graham Bell) * New shifted-points xy line mode, which plots a stepped line with the points shifted to lie between the coordinates given * Points can be picked to console and/or clipboard (thanks to Valerio Mussi) * Allow reversed ternary plot Bug fixes: * Fix unicode characters for \circ and \odot * Fix for data type of pickable points * Fix sort by group crash bug * Many crashes fixed * Fix width of key when using long titles/and or multiple columns * Fix bold and italic output in SVG output Changes in 1.16: * Experimental MathML support * Add upper/lower-left/right arrows * Add options to clip text/lines/shapes to graphs * Add stacked-area option to bar plot widget * Draw stacked bar plots top-down for better overlapping line behaviour * Axis labels can be placed at left or right of axes, in addition to centre * Line widget now has length-angle or point-to-point modes. Better support for only specifying some coordinates. * Exception dialog records more detailed traceback * Use top level windows for non-modal dialogs, giving minimize in window and no always-on-top behaviour * Zero length vectors and arrows in vector fields are not plotted * Add support for strings to be translated * Add "Sort" dataset plugin * Add "Histogram 2D" dataset plugin * Add "Divide by Maximum" and "Normalize" dataset plugins * Support for *args and **kwargs for custom functions * Custom colormaps can be defined in the custom editing dialog Bug fixes: * Use correct definition of 1pt = 1/72in * Workaround for splash screen problem * Fix numerous problems reported by pyflakes * Histograms fail when saved * Fix plot with nan functions * Fix failure of self tests on ARM platforms * Force pages/documents to have physical sizes * Fix crash if deleting multiple datasets in data edit dialog * Check dimensions of datasets in SetData * Handle better zero bytes in data files * Fix error if page size zero * Fix error if vector baselength is zero * If dataset plugin parameter not given in saved file, use default * Fix crash for axes with same minimum and maximum * Fix CSV import problem when same dataset has multiple types * Thinning markers works when using marker sizes / colors Changes in 1.15: * Improved hatching: - More hatch styles - Adjust spacing of hatching - Change hatching line style - Allow hatching background color * Axes will not extend beyond specified min and max values * Add options to extend axes by 2, 5, 10 and 15% of data range * Ctrl+MouseWheel zooms in and out of plot * Full screen graph view mode * New dataset plugins - Linear interpolation - Cumulative value - Rolling average - Subtract mean / minimum * Allow grid widgets to be placed in grid widgets * Catch EnvironmentError exceptions on Windows * Allow multiple datasets to be selected in dataset browser * Allow tagging of datasets and allow datasets be grouped by tags in dataset browser * Allow text to be written as text in SVG, rather than curves * Add DBus interface to program, if DBus is installed * 2D QDP support * Add setup.py options for packagers --veusz-resource-dir : location of data files --disable-install-docs * Add title option for keys Minor changes: * Use / rather than \ for path separator in saved file names for Windows/Unix compatibility * Add diamond fill error bar type * Add \color and \marker commands to text renderer * Support labels on xy datasets if one of x or y datasets missing * Reorganise dataset plugin menu * Fix links in INSTALL/README * Floating point intervals in capture dialog Bug fixes: * Trap case where nan values could be plotted * Fix error if website not accessible in exception dialog * Crash when min and max of axes are too similar * Fix clipping of paths after transform in SVG files * Fix crash in picker * Fix crash if duplication of characters in CSV date format * Fix crash in tool tip in dataset browser * Fix GlobalColor error (on certain dark color sets) * Fix blocked data import if no descriptor * Fix crash if log contours and minimum is zero * Bug fix https://bugzilla.redhat.com/show_bug.cgi?id=800196 Changes in 1.14: * Added interactive tutorial * Points in graphs can be colored depending on another dataset and the scale shown in a colorbar widget * Improved CSV import - better data type detection - locale-specific numeric and date formats - single/multiple/none header modes - option to skip lines at top of file - better handling of missing values * Data can be imported from clipboard * Substantially reduced size of output SVG files * In standard data import, descriptor can be left blank to generate dataset names colX * Axis plotting range can be interactively manipulated * If axis is in date-time format, show and allow the min and max values to be in date-time format * ImageFile widget can have image data embedded in document file * Fit widget can update the fit parameters and fit quality to a label widget * Allow editing of 2D datasets in data edit dialog * Add copy and paste dataset command to dataset browser context menu Minor and API changes: * Examples added to help menu * Picker shows date values as dates * Allow descriptor statement in standard data files after a comment character, e.g. "#descriptor x y" * Added some further color maps * Draw key symbols for vector field widget * Import plugin changes - Register classes rather than instances (backward compatibility is retained) - Plugins can return constants and functions (see Constant and Function types) - Add DatasetDateTime for returning date-time datasets * Custom definitions - Add RemoveCustom API to remove custom definitions - AddCustom API can specify order where custom definition is added * C++ code to speed up plotting points of different sizes / colors * Expand files by default in data navigator window * Select created datasets in data edit dialog * Tooltip wrapping used in data navigator window * Grid lines are dropped if they overlap with edge of graph Bug fixes * Fix initial extension in export dialog * Fix crash on hiding pages * Fixed validation for numeric values * Position of grid lines in perpendicular direction for non default positions * Catch errors in example import plugin * Fix crash for non existent key symbols * Fix crash when mismatch of dataset sizes when combining 1D datasets to make 2D dataset Changes in 1.13: * Graphs are rendered in separate threads for speed and a responsive user interface * A changed Graph is rendered immediately on document modification, improving latency * A new ternary plot widget is included * Size of pages can be modified individually in a document * Binary data import added * NPY/NPZ numpy data import added * Axis and tick labels on axes can be rotated at 45 deg intervals * Labels can be plotted next to points on non-orthogonal plots * Add an option for DPI of output EPS and PDF files Minor improvements: * Import dialog detects filename extension to show correct tab * Polygon fill mode for non orthogonal plotting * --plugin command line option added, for loading and testing plugins * Plugin for swapping two colors in a plot * Dataset navigator is moved to right of window by default * Mac OS X binary release updated to Python 2.7.2 * Import plugins can say which file extensions they support * Import plugins can be "promoted" to their own tab on the import dialog * ForceUpdate command added to embedding API, to force an update of the displayed plot (useful if SetUpdateInterval is set to 0) * X or Y dataset can be left blank in plotter to plot by row number Bugs fixed: * Images plotted when axes are inverted are inverted too * Fixed crash when selecting datasets for plotting in the popup menu * Picker crashes with a constant function * 2D dataset creation using expressions fixed * CSV reader treated dataset names ending in + or - incorrectly * unique1d function no longer available in numpy Changes in 1.12: * Multiple widgets can now be selected for editing properties * Add Edit->Select menu and context menu for above * Added context menu on dataset browser for filenames to reload, delete or unlink all associated datasets * New tree-like dataset browsing widget is shown in data edit dialog * Importing 1D fits images is now supported * Date / time data has its own dataset type * The data edit dialog box can create or edit date/time data in human-readable form Minor improvements: * Add LaTeX commands \cdot, \nabla, \overline plus some arrows * Inform user in exception dialog if a new version is available * Add linevertbar and linehorzbar error bar styles Bug fixes: * Fix crash on filling filled error regions if no error bars * Remove grouping separator to numbers in locale as it creates ambiguous lists of numbers * Undo works properly for boolean and integer settings * Prevent widgets getting the same names when dragging and dropping * Hidden plot widgets are ignored when calculating axis ranges * Combo boxes are now case sensitive when displaying matches with previous text * Fix errors if plotting DatasetRange or Dataset1DPlugin datasets against data with nan values * Fix division by zero in dataset preview * Do not leave settings pointing to deleted widgets after an undo * Fix errors when using super/subscripts of super/subscripts * Fix crash when giving positions of bar plot and labels * Do not allow dataset names to be invalid after remaining * Several EMF format bug fixes, including not showing hidden lines and not connecting points making curves * Stop crash when contouring zero-sized datasets Changes in 1.11: * New data point picker for finding coordinates of points on plot (contributed by B.K. Stuhl) * New data navigator window for filtering, sorting and examining dataset statistics * ".." button next to dataset settings pops up data navigator for choosing datasets * Data fitting can now use PyMinuit, giving error estimates (B.K. Stuhl) * Console history now uses currently entered characters to select lines from history (B.K. Stuhl) * New self test script, comparing graph output with expected output * Put superscripts and subscripts above each other when formatting (B.K. Stuhl) * Key entries can have multiple lines (using \\) (B.K. Stuhl) * Option to treat blanks as data items in CSV files * Locale support added for number formatting - Can use current locale or US/English in documents - Can use US/English or current local in user interface * Contours avoid missing (nan) values * Linux binaries are now created on a more modern system * Windows binaries now use MSVC for compilation Bug fixes: * CSV import with blank columns fixed * Embedding module now working when using binary * Remember current directory with unicode characters * Extension module now compiles under MSVC in Windows * Output is always appended to console (B.K. Stuhl) * \r characters sometimes break data import in Windows * If using --export option, add directory of script to import path Minor bug fixes: * Zero sized dataset contour plot fix * Fix problem on context menu for axis match setting * Small values on log axis fix * Disable data edit dialog context menu when no datasets * Loading files with unicode filenames on command line * Do not allow non finite float settings ././@PaxHeader0000000000000000000000000000003300000000000010211 xustar0027 mtime=1677426865.136521 veusz-3.6.2/Documents/0000775000175000017500000000000014376700261013067 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/Makefile0000664000175000017500000000366714126044351014535 0ustar00jssjss############################################################################ # Copyright (C) 2017 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################ verfile=../VERSION RELEASE=$(shell cat $(verfile)) mansources=$(shell find manual-source -name *.rst) all: man manual ############################################################################ # man pages %.1: %.pod $(verfile) pod2man --release=$(RELEASE) --center="Veusz" $< > $@ %.man.txt: %.1 MANWIDTH=76 man ./$< > $@ man: man-page/veusz.1 man-page/veusz.man.txt ############################################################################ # manual manual-pdf: manual/pdf/veusz.pdf manual-html: manual/html/index.html manual/pdf/veusz.pdf: $(mansources) $(verfile) make -C manual-source latexpdf mkdir -p manual/pdf mv manual/latex/veusz.pdf manual/pdf/ rm -rf manual/latex/ manual/html/index.html: $(mansources) $(verfile) make -C manual-source html manual: manual-html manual-pdf rm -rf manual/doctrees/ ############################################################################ clean: rm -f man-page/*.1 man-page/*.man.txt make -C manual-source clean ././@PaxHeader0000000000000000000000000000003300000000000010211 xustar0027 mtime=1677426865.136521 veusz-3.6.2/Documents/man-page/0000775000175000017500000000000014376700261014554 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426732.0 veusz-3.6.2/Documents/man-page/veusz.10000664000175000017500000001727114376700054016022 0ustar00jssjss.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.42) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "VEUSZ 1" .TH VEUSZ 1 "2023-01-29" "3.6.2" "Veusz" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Veusz \- a scientific plotting and graphing application. .SH "SYNOPSIS" .IX Header "SYNOPSIS" veusz [\fIoptions\fR] [\fIdocument.vsz\fR]... .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fBVeusz\fR is a scientific plotting and graphing package. It is designed to create publication-ready output in a variety of different output formats. Graphs are built-up combining plotting widgets. Veusz has a \&\s-1GUI\s0 user interface (started with the \f(CW\*(C`veusz\*(C'\fR command), a Python module interface and a scripting interface. .PP If started without command line arguments, \fBVeusz\fR will open up with a new empty document. The program will otherwise open the listed documents. .SH "OPTIONS" .IX Header "OPTIONS" .IP "\fB\-\-unsafe\-mode\fR" 8 .IX Item "--unsafe-mode" Do not check opened scripts for the presence of unsafe Python commands. This allows you to create or open complete Python scripts with Veusz commands if they come from a trusted source. .IP "\fB\-\-listen\fR" 8 .IX Item "--listen" Read Veusz commands from stdin, executing them, then writing the results to stdout. This option replaces the old veusz_listen. .Sp In this mode Veusz does not read any input documents, but will use the first argument to the program as the window title, if given. .IP "\fB\-\-quiet\fR" 8 .IX Item "--quiet" If in listening mode, do not open a window before running commands, but execute them quietly. .IP "\fB\-\-export\fR=\fI\s-1FILE\s0\fR" 8 .IX Item "--export=FILE" Export the next Veusz document file on the command line to the graphics file \fI\s-1FILE\s0\fR. Supported file types include \s-1EPS, PDF, SVG, PNG, BMP, JPG\s0 and \s-1XPM.\s0 The extension of the output file is used to determine the output file format. There should be as many export options specified as input Veusz documents on the command line. .IP "\fB\-\-export\-option\fR=\fI\s-1OPT\s0\fR" 8 .IX Item "--export-option=OPT" Adds the option given when exporting. Supported options are dpi=\fI\s-1DPI\s0\fR giving the resolution for bitmap output files (default 100), color=True/False to switch to monochrome output (default True), page=[\fIX\fR,...] gives a list of pages to export (default [0]), where the page numbers are numbered from 0, antialias=True/False enables or disables antialiasing in bitmap output files (default True), quality=\fI\s-1VAL\s0\fR gives the \s-1JPEG\s0 quality value (default 85), backcolor='\fI#RRGGBBAA\fR' gives the background color of bitmap files (default '#ffffff00'), pdfdpi=\fI\s-1DPI\s0\fR gives the \s-1DPI\s0 when outputting to \&\s-1PDF\s0 files (default 150) and svgtextastext=True/False outputs text in \&\s-1SVG\s0 files as text, rather than as curves (default False). .IP "\fB\-\-veusz\-plugin\fR=\fI\s-1FILE\s0\fR" 8 .IX Item "--veusz-plugin=FILE" Loads the Veusz plugin \fI\s-1FILE\s0\fR when starting Veusz. This option provides a per-session alternative to adding the plugin in the preferences dialog box. .IP "\fB\-\-help\fR" 8 .IX Item "--help" Displays the options to the program and exits. .IP "\fB\-\-version\fR" 8 .IX Item "--version" Displays information about the currently installed version and exits. .SH "BUGS" .IX Header "BUGS" Please report bugs at https://github.com/veusz/veusz/issues .SH "AUTHORS" .IX Header "AUTHORS" \&\fBVeusz\fR was written by Jeremy Sanders . .PP This manual page was written by Jeremy Sanders . .SH "COPYRIGHT" .IX Header "COPYRIGHT" Copyright (C) 2003\-2023 Jeremy Sanders . .PP This program is free software; you can redistribute it and/or modify it under the terms of the \s-1GNU\s0 General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. .PP On Debian GNU/Linux systems, the complete text of the \s-1GNU\s0 General Public License can be found in `/usr/share/common\-licenses/GPL'. ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426732.0 veusz-3.6.2/Documents/man-page/veusz.man.txt0000664000175000017500000000773114376700054017253 0ustar00jssjssVEUSZ(1) Veusz VEUSZ(1) NAME Veusz - a scientific plotting and graphing application. SYNOPSIS veusz [options] [document.vsz]... DESCRIPTION Veusz is a scientific plotting and graphing package. It is designed to create publication-ready output in a variety of different output formats. Graphs are built-up combining plotting widgets. Veusz has a GUI user interface (started with the "veusz" command), a Python module interface and a scripting interface. If started without command line arguments, Veusz will open up with a new empty document. The program will otherwise open the listed documents. OPTIONS --unsafe-mode Do not check opened scripts for the presence of unsafe Python commands. This allows you to create or open complete Python scripts with Veusz commands if they come from a trusted source. --listen Read Veusz commands from stdin, executing them, then writing the results to stdout. This option replaces the old veusz_listen. In this mode Veusz does not read any input documents, but will use the first argument to the program as the window title, if given. --quiet If in listening mode, do not open a window before running commands, but execute them quietly. --export=FILE Export the next Veusz document file on the command line to the graphics file FILE. Supported file types include EPS, PDF, SVG, PNG, BMP, JPG and XPM. The extension of the output file is used to determine the output file format. There should be as many export options specified as input Veusz documents on the command line. --export-option=OPT Adds the option given when exporting. Supported options are dpi=DPI giving the resolution for bitmap output files (default 100), color=True/False to switch to monochrome output (default True), page=[X,...] gives a list of pages to export (default [0]), where the page numbers are numbered from 0, antialias=True/False enables or disables antialiasing in bitmap output files (default True), quality=VAL gives the JPEG quality value (default 85), backcolor='#RRGGBBAA' gives the background color of bitmap files (default '#ffffff00'), pdfdpi=DPI gives the DPI when outputting to PDF files (default 150) and svgtextastext=True/False outputs text in SVG files as text, rather than as curves (default False). --veusz-plugin=FILE Loads the Veusz plugin FILE when starting Veusz. This option provides a per-session alternative to adding the plugin in the preferences dialog box. --help Displays the options to the program and exits. --version Displays information about the currently installed version and exits. BUGS Please report bugs at https://github.com/veusz/veusz/issues AUTHORS Veusz was written by Jeremy Sanders . This manual page was written by Jeremy Sanders . COPYRIGHT Copyright (C) 2003-2023 Jeremy Sanders . 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. On Debian GNU/Linux systems, the complete text of the GNU General Public License can be found in `/usr/share/common-licenses/GPL'. 3.6.2 2023-01-29 VEUSZ(1) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1675026325.0 veusz-3.6.2/Documents/man-page/veusz.pod0000664000175000017500000000646414365557625016462 0ustar00jssjss=head1 NAME Veusz - a scientific plotting and graphing application. =head1 SYNOPSIS veusz [I] [F]... =head1 DESCRIPTION B is a scientific plotting and graphing package. It is designed to create publication-ready output in a variety of different output formats. Graphs are built-up combining plotting widgets. Veusz has a GUI user interface (started with the C command), a Python module interface and a scripting interface. If started without command line arguments, B will open up with a new empty document. The program will otherwise open the listed documents. =head1 OPTIONS =over 8 =item B<--unsafe-mode> Do not check opened scripts for the presence of unsafe Python commands. This allows you to create or open complete Python scripts with Veusz commands if they come from a trusted source. =item B<--listen> Read Veusz commands from stdin, executing them, then writing the results to stdout. This option replaces the old veusz_listen. In this mode Veusz does not read any input documents, but will use the first argument to the program as the window title, if given. =item B<--quiet> If in listening mode, do not open a window before running commands, but execute them quietly. =item B<--export>=I Export the next Veusz document file on the command line to the graphics file I. Supported file types include EPS, PDF, SVG, PNG, BMP, JPG and XPM. The extension of the output file is used to determine the output file format. There should be as many export options specified as input Veusz documents on the command line. =item B<--export-option>=I Adds the option given when exporting. Supported options are dpi=I giving the resolution for bitmap output files (default 100), color=True/False to switch to monochrome output (default True), page=[I,...] gives a list of pages to export (default [0]), where the page numbers are numbered from 0, antialias=True/False enables or disables antialiasing in bitmap output files (default True), quality=I gives the JPEG quality value (default 85), backcolor='I<#RRGGBBAA>' gives the background color of bitmap files (default '#ffffff00'), pdfdpi=I gives the DPI when outputting to PDF files (default 150) and svgtextastext=True/False outputs text in SVG files as text, rather than as curves (default False). =item B<--veusz-plugin>=I Loads the Veusz plugin I when starting Veusz. This option provides a per-session alternative to adding the plugin in the preferences dialog box. =item B<--help> Displays the options to the program and exits. =item B<--version> Displays information about the currently installed version and exits. =back =head1 BUGS Please report bugs at https://github.com/veusz/veusz/issues =head1 AUTHORS B was written by Jeremy Sanders . This manual page was written by Jeremy Sanders . =head1 COPYRIGHT Copyright (C) 2003-2023 Jeremy Sanders . 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. On Debian GNU/Linux systems, the complete text of the GNU General Public License can be found in `/usr/share/common-licenses/GPL'. =cut ././@PaxHeader0000000000000000000000000000003300000000000010211 xustar0027 mtime=1677426865.136521 veusz-3.6.2/Documents/manual/0000775000175000017500000000000014376700261014344 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/manual/.gitignore0000664000175000017500000000000014126044351016314 0ustar00jssjss././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.1405213 veusz-3.6.2/Documents/manual/html/0000775000175000017500000000000014376700261015310 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426733.0 veusz-3.6.2/Documents/manual/html/.buildinfo0000664000175000017500000000034614376700055017270 0ustar00jssjss# Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. config: 334774aa4a9aa10c5fcf2984e0edc741 tags: 645f666f9bcd5a90fca523b33c5a78b7 ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.1405213 veusz-3.6.2/Documents/manual/html/_images/0000775000175000017500000000000014376700261016714 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/manual/html/_images/createdataset.png0000664000175000017500000005706214126044351022237 0ustar00jssjss‰PNG  IHDRä.q8ésRGB®Îé pHYs2v³ltIMEÚ/SsǦtEXtCommentCreated with GIMPW IDATxÚì½y¼$U}ÿ}NUõÞ}·¾ÛìÛVgØq .¨É“Éc¢¢‰?5Ïc4à„ƒbA8 âÂ"åyþÉãËÉnĨ€ìËÀlÀ0ûÌ]ú.½TÕ9Ïuoݺµõ©êª¾Ý}?o¯MÍ©³Õ9UŸúÖ·NCË•jM­&d9NS*qÎ8çdñ ‹•%ím­’hKB<ð8Rð?„öhlÞ D)5¹R)Wk5Âu¥¦V³©¤$+Z­¬3)5Nh¬iÀºÐ5¦áR¡ÊPÁî ¯tÔ¹)œ›P£Óp꽃꘺Ö~ññЗ'w‰Æ¯w^'¯_4?N* å&lºq±*€<@·„ì^$:Ø~Ý (•%%•J'erzZIȲ$+juªy5­ö‹‘²¬î`9áT w® öxFsìà„ÐÙ3–Ö=§©ç™Î…–G¶?¥*¿†“Ž?ñ!usZ•s]WÓ©|:•”Òé´®V*uØšRJ)UUu|l¬Z«Rꢼuú1Ê›bÅ5HÆ”îbq×IÝãq¿ yºUšÛ4;B¥æ^ßÑ]b'¤kKP©Z«¬V+„PNh¨£¤jM­V+„R¿{¶OMf5g´Z«J-ÃM×SÇGçŠô‚®VÒé¬B©¤3­ •¬V+¯¼ºbìäÔôäÌL9Nçrùžž¾U«×äó]ÖÓ"˜a•Í<›OÐì8't1lv·zrדYÌîô5®…¬ö°ŸÁìØ7PßʹÆh VW SUüI™ Ç {oÀúR¯VÊû÷í?15e^é…ÞÞ¾U«× ]"7Jiµ2³ÿÞññ“–Lò½=ÅUkÖòâ™”÷¿²ožIßÊÕõ3á‘¶›Ÿ®ZÏü+£3-A%…sæu3^½æ÷K“åÿýŸßÞ²ål‰Ú.SN}y÷Á·½ý:I’yø«ëÖ zVT’Ž=ò ϾüòËccãSSÓŒ1Ji6›éééÞ¸qäôÓ7­\µ†sƒ6s«~ÐERQñò9çžë:z=·)®×ÄÇmR_Mµ»DêH6YP_ó¿Ô]{ã~œòÕäÀ/7¨ƒy?¢tUyγJ’täÈÁçŸ{ÚóJ?cóêÕëü¯tJ¥£G>ÿü3Þ™lZ½jçŒûgrôð >™œ¾i•¨æ4zŠ àV®ZÍóë Îι×Õ¼aäüçž;ðúëSœÎ ç„J„Â8—(åœ_ýƒ”®¾bû;|•ZÞ»÷å§ž|üùç_|ÛÛ/^¶|E±¯¿Tš8|èàóÏ?ûÈ#ÿsâäÉsÎ9÷ÔSß`=‰Ûظn%½ž3Y…3¬gb×—l» sÝå.V±Í8¥~Ösd+öªäAÒû=*µØ½%r¥æV}ܽûÅ'Ÿxìùç_zÛ;Þ¹|ÙʾbѸÒ_xþ™¹+½túi›¼zRiÏž]s™ ¾íï\¾lE_qV.^xn>“ÓNÝäõ¦„Riïž—Ÿ|r.“·¿sÙòžbi²tø µ&çžfÑœ˜Ìj,–J%»žr†O·qΟb6lØôÒKÊÁƒ:gœÊ”¢s"S"QJùñ_ùÍoÙš5o¸üoÞêsK}ìÑß¼ôÒîß÷œ÷Æ Ì]ýÅþþbÿ¦MgíÞóòüðûªªww÷-[¶Bà^§qÝ1zMl&6¹:&v0+Û]µ…„›ØKñŠGQè°—#ž8.™&^ĨÔ'Oô·¿~é¥Ý¿ÿûðÆ7¾ÉØ}ðСË—Wúž=/ÿðßï3®ô+V:K¡T=yÂÌd¡\û‹ÅM›6ïÙ½û‡?42)._¾‚sÓOÍç3=ùè£s™œgɤ¯ØßWÜ´ióž=/ÿpNs– iNȳÄM¹íˆvïÙ=+€]}Ë–-ó©ŒäSõë6$ëJÑ(%:£„ÆH¥Âþþ惉Äú/Þpq&#{UUÓØ®—žá…]ïÿûÏ9÷<Ætç߆õ>úçÿ÷Þ={w¿¼«\žñ?øt¶;íNg»ÒÙ®p—¡5b*SzM¥ÒùT:ïcÚ$Ó¹H®Îy"™©-‘Ì$’iG`:‘LÛÌSÁyÉæþѹ=[¨Ü/¨nR7‡\ð/ÔKHßÃJl/],¢ l8b7|Ö…{Ë­ªÚ‹/>÷ »ÞÉ%çžûFé?þÉO·¼å¢ÓOÃü[ŸyæÆôõë7üùŸÿÅÞ={w¿üâ̌˕®jÚ‹»f3ñ’‹õÖÔ̤<ã<.MÓwíz~6“s<2Y¿a.“]3͉ά¶ à¾}{m5Ù·o߆õëgp÷®r¥ìS¶Ÿe½víŠD¢røH—Ñ}35šMrÔùÇ;vlÙ[/ʽë]Eï» ;yâ‰ß=qê)§lØp óöÈûú·lÙò̳ϯY³~ÍÚY—–ÓbLg» !•™‰9ÕîªÌ”„mV»}í®ÔÙ×I›Ž7`_'SY[­• ½Vke#OC»ÕZÅÕÄ&A­lÓAÜ—8á:#Œ1ιÎ8cœ{;CØ]·lÖ²´àDõì]ç(fÇrû'³ÔÏÅCýÊ÷ñÎÍ,¹g|K­8™O⨕«§‰RGçDÖÑÚÜ™µ0³áç¢Ô­>~6ÒèÉ£Oüî‰SO=edÃ):c„ÃGŸ{î9_¸áów}çžk¯ýü¿ÿû}„¾bÿ–-o1®ôuë7Xo ”Ò±“ÇL6lØè'Å¢™ÉÚuë­¦(¥ÒèèlM6¬_ɯþçÞ²e‹EsЦæ¬];ë§‘Ž­¶ àþWöŸsî›n¸þÚ+¯¸Üˆðµ·î¸åÖçŸ}rxxh^×xzÒýX³¦7™\wìXÒ¸3‰Ùš9ÌÿùÿéN¥z¯¿^–eî%=”JGùí[u¦ûØoºð™gžŸ˜XK)ç.U²*µuÃjbWfJ„’tÆRžU󅓦R§2…jyÒfeWË“6½6¬éjeÊfeÏ'©L™ÿL¦sµÊô+›ZuzN…­3Vi6Í&SY#Ž˜W„Ûìk‹¦W%‰Dš¢ªBH"‘"„hj•¢$Ró†‰#d6ÏK ¥D¢’,QB乊ÿmÄ—þÅ oÂç AžÙx€´a>á¢Ï‚žweÔóåïÿ‘èDiüèÑ#[ÿè´¹+ýÏþìƒög$„LMOìcuìø±b±8w¥?5>1A¨D¸n¹}ÌÊÅÖ­dÈÅ«¯¾¶fÍjkQfˆ™ µÈ…¡9¥ÙLhÎç?ÿ…»ïù‡+¯¸üºëþΩ9”RÆlê ï ¶råŠÏþšoú{ÆùÛ·ÝrË×wÜòõ/ßôÅÁ~é\`  dkî*Ö¦2™¹je&‘X?:*éz•$foÍšNÿõ¾Üùç'þhkuÍšŠ©H©T*M¤R©îî¶P¬§§§s¹ÜwŒ$¥Ó)U­iš&IDØËÌçeÚ"ʆF§3]éLW¥\2~ÍéL¡RžLg ³º<§Ôæö¬‚Ïéu*]°É±¡Ô¦v¾3Bµ2Å IÍI¶¡ÚÉT®V6”Úîd*gh±!͆('SYg éFvd/°¯ ¯È¬­í¸J 75ZI¤4µjüÓ©Ús×µ¡œPQ¡¤AÌá Ù5YŸÃ«3 =®ÚG£›ãžöË–R:11‘J¥ºWúCý÷í·ßùÆ7ž×Û;»K’Í+]•%:ÿ"щÒD*•êêéaLíµçŸÿ–ë®û»íÛ?edµsçm;w~ã©§’dj‘ º &%{Mvî¼íî{þáÝï~ç7¾ùí\>·ýòOÙ4G]˜I$Jí*€—ÿÍ¥œ³/ù«?üˇ~ä¦oøÄ'>6×,sG¤kæÐ;îeY[«dD]±‚|ìcÙ|žTªj6={䵚ü$r9ÖÝUa zÚ®«Œ±Z­V(dI²ŽJ™žžÙú¾÷ÁýG:½ÀÙÚÓÓ­iLÕÔT2í;S»û#¶–U¯ ¥öð_B¸)ÙÎÜ áž³µƒ\én’=ç Éfˆçñ¹¨$RšZÑÔŠ5¾b±¾½=$އúú ÙðfÍÐØ'ëˆaŒÏeB9c«V®¸îÚÏ}å+7Î/¿ü²·~cçÎoÜxã CƒFVs™¨©TÒÌÙY“·~cç­ß¸ñK7|òùíÛïšÍðo.shN2Z¥^(€Ô<üË·]úˇyøáGÞý®‹?ñW[Ø,ÝÆ%“ ×2ŸSD–Éß^UU¹¦VuBø‘qy°[Ÿ–OjÝådž’¬d¿Ì¬¯ÿ¹$I…B—ªÖª•J"‘0sϤS?úß?H&L_p®Õ´l6›J&C q]èÝvè²iqÏír1‹ü¼Ønµ0íh/É6”ºZ™6%»V™6|#VÛé !Ùöu¦î5¨Ö*†®Ì9Iè¬R§½”zÞgÍ9gLç$¬ÏšSOÛ›ÚO(Ÿ5mÄgÍÝ|ÖDÐgí5€Åm¦™:Èm_ q›ÏšÛ¬¶zOÔî-§ÖóÇÓŽtú¬ëNúÁeÙz¥Ï_¿'OŽ;vüÎÛ¿¹qãˆõb¯ÕÔl6›J¦-Ïe\–èÂLȶOý5çü+ÿµ‡ùÈ/ù«/}ñú¿úË¿`:[I*E›3Ϲ¬ÌÕ¤ZI(Éרyë7¾ô…Ù„Û.ûkÎøßuÇÞÿÞ¡¡¡yÍI¥gRÚ2° `ÕÀ[oûÖÿüÕ»ÞyñO~úóo}ëοÙv©]S)>ë¢nbÍ=Ç˾xâ…ñZiefÅŠ|q [mòõgF_ìJ懶0Nª5’IqO×ç½}}ŒÑ险®ÂõL&¶Ç%UU©$ ]’$1] þUà‚:Ì¿x¤v߈†įê¢Ô^Ñ-ô¶Õm˜Ø6§¶¦ ×ª3¦eä£Új­,rË3½%„D"m8µ}üžó>ëYO5mÀgÍãtFÇn„74C0¿ÃÛÑÜ«ªÔ1Ê4¨5í̹·¯È™ž,tu›á½½Ý?ûÉý}}}֋ݼÒeIbLŸÚO'Ä‹™é)3“O]ö‰±±±»¾sïU{ÅÇÿòÿ2óQÕÚ¼\06ÿ˜©9ÓS]…î•+–ÿîÑ_ š ?uÙ'.yÿŸ ô3¦«Ú\&Tb ÞéE4[Ó¼Nvº !_ÿÆ·¿~Û·¿xõõñ¿¸ãλÿþæ[8gÛ>õ×Ö#¢’ÄuݵÍ«#Òy­ž<øÜÉ]µ~uy®X*×¾÷Ò÷§µ™K7,•à„LÊKÌ8!„q½»»wÕªÕ{÷íݼi³ÿq:rpp`¸ÐÕ5û\à¸ù—gÆ3Ùžt¶»23NIg{!ÆöBû|lï$=ÞjbsJH*ÓE©º)»á¼^˜Š»eå5² ^«LÕ*SsCGøB9¶YÜ …ÞMÐ9ç†{Î2c«I"™](ÜÖAÜôœÌ;OøœË[­Ø&ª£¶+ŸÛ ¾¨}ÐÍÿ’ŸG­ùå–‡.’¹áE0ûÝüIÆYwwϪU«÷ìÛ»yóYf„™™™üéGþó?þÍêðWSsÎ"„ôm£Ì#“BW—å…ÐR°à¾Í›68ðú×oûö ×_ó±ý¹ÎôK/ý+ÆùÍ;¾þ¾÷ýñÐРEu¯6—Ü=ÖsLÕ¦?ôø3GŸ¦”ü/ÿ¿¼þ«•¹e}ÉaBÈLêÌ×T`z!_xó–ß{æ™gÇÆÇ˜7årù©'Ÿ~æÍ}½=>cÂËs2íPêùÒ-ûæ•z60ÓΘ·}^)OÇ IW¥6þiŽ1ŠªV& ù¶(ø| e;o4BI¦óÉ9Õ&œÔŒÀTÎªÔæKHï‹ÇcV#Næ$›$’Ù9¥ž!„zmx·mÖ·áõžûçl¶‰DÚøsXÌýjŃŒéömû#‘þ9ó;[°xAç!Šô(Èl0±Ó¦N朸 Û7oÜzW¡Ë¸ÒÇ-Wz:þá¿ÿk2™t¹Òûú,%³:[03µêÃé§Ÿæ*½½½¶'ÎôùLÆGý4§23§9½.šÉ3Ó ùüœŽ®X±ü7¿~ècñQ³—þõÇý??è/—ËO=ùÌ6mî5»ù¾t]«zù(y`ÿO>ûе›ûÏú»7ú=ÿzIWªë‘?ÿi!Ñ-Q®éT’¸ªÓ”½ "I’—{ì·O=ùØ[ßzQ¡àâ®T+=úèi§Ÿ}úg¦ †­ø;Chd{hø\D-?aÓ1Ì<ÍžñC¶_½Rf}ÖœpÎ㌮‰˜Ïš‹$8)⳦”7à³vó5[/Ÿ5÷Y›Í7—ÒýæÌ=ÇY» ç>ã¬yΟ÷Yóùž{è TÒun\éo{ÛEù‚ËËüj¥ò裿=íô³O?ã ™”â F%™™™¼õ¢|—K&•Jå±ÙLÎL'‡Îr*ÉŒÑùLÜjR©–ç5')ÏÏD)‰l¦hN‘$Å"€¿Wp¯Ì¼&Ôk†T¦Kñ/®˜îÛ;¶·¢U.ÿɧ•}õí7)¼›1B$¢3¢ÈD¦~.^ÆtYQÎ>û\I’øÑƒ›ÏzÃêÕ«SÉ”á5«ÖªG}î¹ç/Üòö‘‘‘L*¡ëªýþF©—º¡=ABm¯½OGëìàNÿîÜåÒõnJ¸gßmJ”ÊÆ·T¢Äü_3K7ôÝX„s]•„‡Î\(¥ÈÌL<ø%âé õswø¤æœ)‰ÄÙçœ+IÒþëÁÍgmZ³zu2•6ΈZµzä葹+}c6“dºæ¬gº¢Ìeò£7ŸµiõêÕ©Ôœ\T«Gç3ɤg3±ûý™®(ICs~4¯9é9Í©,МtR×jÑÔ ‡-1Ø„TõGŽH’$É UÓ5U]x¥+’$¢s÷+}AÎ’¤È>™p3½î4(’¤ÈJÒMsI¢¢šQWJrBV’𦻠×kõ*ÃS™.S¬­§½÷—" ]hT’²¬"qÎ%‰2Ƙ®² KÄ!ÙQÚÍTíè…{1ä»á""Vë&|rZš£è5š¸“)I •eB(aœÊgŒ1ÍM\Œb3X’IR¥„q*Iœr¡šþU’YR•8ã’$1¦‡ÑœˆzV’’œ „rN¨D9Óu]u8sÈBæs–µ]¬Å.‚Æ$;¢ ™6PLd†v“U;6áŽD¾ÛÅ¥ÑZî“8¥¹.7ÌØ@çôV"ëÐù™Ò4þûô5v4®n.…XFËsNå•™ 'œpÂçÞG›óA˜3#ÿŸ‹2;ÄÑlïT*U©Tç‚øÂ(”š;èÜ ˯¹•L¥ˆëŽ[nY̾؛¿bþè¬qddÌngn[£³-(' ‚4'„.ÈÚ–ÐÚÖæ$¶ãu¾¥ªÔÙ>Døø2û]Óì/Ÿ`cÌOAF¡„ÌM9÷JY×´¹|¸j&š ž·Zf‡æÌ}DE M(IUWÍ14³Q¸µ^ÖÄsÙÏYÆV2™TUÕ4+,ó‹-8"J©ù’|6Œ›™ÐT*e–G-Ùs[#n­Œy€–Ú‘jµº°*s;æþË9/xnôåó™¦ÓÛLVËÚÌSrûŠ—ÚmE¯÷j”Εë›hu¬5^×póûNØkp“g€¿JÅý$T(¡ÿáÀV‹ý êÓ®·þ,¯gÜÎúò1®yݯ‡Œ%Žê|zèæ±Y˜5[%©ûL½ÍfɳÕ\Ì.íSÓ²ž 2ZŒ½þñÖG«#7!ça‹N¹ÂŒ‡h§Ü$â%ÑzKÚú&$>§]|þC8H¨uÊ‚z9‚ªFð÷¶œ7¹+£]2-Xý,¹*Í:¹ë/=%vùF·ì­9 Þ»á½'¬Ü$Ô¶Gt˜µßpiû>›­R»}l+ÏëˆÒFNnÚ¬³4‚+*i&±»ž[@£›+Ó$Ò™ÍðO*16E]õ£ö•@xè¬B›†œ{º#ꟚT8ûäîܳnnª]ÿ°|…›Öy *Ž^‹¼ñ¸e´…ìnÞvŒz†´ <ð²ïáîl<Ò“‚‡ÍíäTãýÔdi’³ÕrŽ_üâ¿-þKÉ çž}V±Øò™Q×ÕÊÌD»(õèèø£?6<4ÔÝÝM }˜˜˜8zìØo<¯··7hÚt¶»Í,ëÝ{öŒlذ|ù²L&‹¾´åòL>Ÿß½gßçŸ×ùnY‘†‡‡òù:Ð^äó…áa6>1.¹ÔfG›Ëæ´)™L¶ÖÖ ,Ö¹BÝönÍlOè½Q•®bÍN”X¯ÄÀ¼8‡qƒLOžðÒë\¡ßø³)»5ÐÁ5UP5“í±ÙªFˆhÝëºíÌÁ+[ÿrEòtwÞu÷wÝÍ-cê9ç·ß~×]ß¹'’üÃM‘Ê‘9!$W˜žG©UkW^y¹¸sçm7|áFBÈG?òáB!\i]Ü !Œëã¹Â€3Ð+rÝ8 ¢z†>šriÝöÊÊ?Ûº…B‹X:twuoÛ¶r͵×ßwß!ßýî÷ ¥Þ¾}ûB¥ŽÆ²¬×6ñu*¸áR‰¸GbÍĹ׼ ØÄ:~ëÎccc>øÀg¯¾æÀ׿ù­Û‹Å¾­[·Þ²ãfÆjшµécip‚‡…ú»Xæ¶ oÄUm½öºº_`eÐùjÍÕ{ï¹ëŠ+®ÜµëÅûï¿dú3Î8ó¶ÛnkD©ç༱qÖ®ÎF,åXMl«§ØËkìj‹Û×u-h˜Øt0’DnÙ¹ó /Ù°eË–·Ü"I‘Í¥¸«¸ Ø2U:žï0B¦J³Úm ´Åwn›©ŒíH¦'órGÔoKè $ _z%±–ëãÅ @‡™×™tâªÏ|ö¡‡ºøâ‹Ó)™»)Z8•£º®–§ÛF2^zy÷ƉN @kB©$Ë ]W9g¶]ªªîÙ³ç”#!< Z¢´®9Ó´jäÙë|—§Oyªt¼)­Àq*ÚXÊYH &ÖÍQdÒ©”¦épƒÚMÓS©T¸´m6ëÞààÀdiB×µ¶_ °ÄLj]Ó&KãCC!Ǽµ™Ï:›ÍJK$àmwBEÑŠ­sq7´;p<7ªªåó¹T*½$Äš’NgÒé :>Ž MQ…Ãh,¹óQö4®Á%«4Ð…ÏÞ/t)µit¢ -Æ•KàLä€6¨!¼d›·h^`)XÖ8u@|âB—ŒLáòÍk a´"š Ö Ö±Ð"„ÁÈ9×4]UkhD¨K"‘T™†]‘+¤X«ª63S.tõu÷£ .S“²dxÐ IDAT¥RéD6› 7[F˜4š¦O¬Y»‘3½ZB@]²ÙL6·æµWw÷õö(J`í #Ö¥R©«»È9«V§Ñ BU×Ré|¡«¯Tïëë š<ð F]×ÇÇ'z{ûTµ‚Öq4µÒÛ[ŸÐu=v±fŒW*MS)m€ pN4M­T*,øz1ºm€Bøü†¡Ç”ˆÁç°¬Á,¹|_Ý×½þÑÄ‹ó‰®Á D•¹`sÅZ X–µ‡Šû(=–ï<½žžm)Q°V)&âÎ *¤°¬A}óÖfZÝiÿÚ’ˆ˜ÉuKqÍÄͧ\ל^uv­¹ëùˆH 5Xº–5XšLO–¬ùëjqOOšqlœ^{ëÚõÎR¼r èš³ÿø×Ùvóð).Žjƒ%,kÐÇXűñÚÎ-UÕ&¿8õ/Îk¯Ó +¸7˜7ñ|4"±kN&A#Fk,JâX,kˆøCº—¬»&1­{ë–âÍ5N rE^Ö ÖÙV®OqþI\«-Þì`)@uM™p¨ª¶{÷î³Ï}×k:ÓÑ‚ ãJ‚È\’B%åé'ݸqc Y­³¹>XÖÔñ?@©Ü ´(hÐrV9š Ö"Àpƒ˜ó‰`ŠThLqæ°¬ m,k§Šû+=€U3ùB!–5´k€X€XÄÄÄ: …b.ˆNñ#´ ¦8sXÖÐ6–µSÅý•Þˆfn´”éœxÕÏFæ³æøÜÊfHà€6 ©S¤2Æt]×4sN)UE–eI êXâMZÖK×õr¹B¨œË ]YYVt]+—g¦§' ×3™´,Ëèð·¬]T\DéQUujjf`py"‘TUµZ­R#„$©|­V=qüp>ŸM$èÀ’1™[lŠTMÓÆÇKË–¯¦T*—ˆÄ@Ó´r¹,Iòð²U“𦹿/ô× ñ€v'^±fŒM”JƒC+4M¯ÕjÜZ­Æ/öO”JŒ1t 4[¬«Õª¦òd2¥ªªO´Z­–ÉdÕ«V«Î½S“'¬&s¾Ð?5yÂØ0þüMlÛ¶W׽ƶ-¾-Ð'•3¡3Cÿ*€AŒ/9çSSÓÝ=EUUy½ñßµZ­»§ojr4NSÏÞMɶm‡Nâµ×5së Ã?•ëF#G€e½djjª««[ĹÁëîîžššô„4M×\ 2½ªáS=(2 µ,kÆX¥Z¥”2ÆêZÖŒ1Bh¥ZeŒ9‡ñžó×éß$oCƒyÂXd±&„rÆ*•Š`ìjµÂü0'œjGnÕ6xó€¡ $F7¥DV”ãÇŽI’Äë!IÒÑ#GdEñòWÛÌê-ÓÈíYñ 1îÐZ–5¥4“NxýÕÁ¡!‘ø¯<08ÐGÅ&Õ6‡ˆØÆŠØöz:Eßo¸jÔ®PÄ:JdY. :|øðÐЮ랕P”ƒªµJ¡PðùîÜ&gη|Öþ/="™ˆW#D• v±&„äó¹çž}г½ôZ–åÇ?ÿÜÓëׯÍçsÚÐV» h-±N$CCårùw¿ûíÊ•k7nܘN§9çŒ1J©$Iåry÷îݯxeíÚÕCC®Óƒ¸:4Ú®¡!ЀÅšÇ:Ej.—[µj%¥ôµ×^Ý·oO±Ø?44œJ¥ªÕê‘#‡Ož8žÍ¦×­[³råŠ\.™ Mœ"U’¤îî.E‘óùܱã'ÆÇÇw½ø¬¦ëŠ,gsÙU«W ô÷÷s¹Åz½àmY»«¸¯Òó…u ”äó¹t:U,öÎÌ”«Õª®3Y–R©T6›Éd2Š¢—`/ž"UiZíE) ù|Þü \’$XÓÐZb=geS, Åš“ùÑaæ@ë`T ‹Õ@;XÖ^*î£ô³±8Þ@p{ÙÒ€ú ËÚˆ5@¬@¬b  UPÐ-‰'žxò‰‰‰!„RÊ9Ç/~ñÛâ¿„®®®óÎ=·X,B¬—£££>úÛ¡¡Áuk× 5h#J¥Ò£þö /ìíík‚XÇ8E*ᥗ_Z¿~ݲeÙL­@Q.—s¹ÜK/¿|á›.Œ!û&N‘ D$:44˜ÏçÑ´ù|~hhp¢TŠ» fL‘ ê’Ëå2™,Ú€v$“Éæóyaý$-7Ej¾kpªtÌ?¤Á £ª'!Ä?瘊®ËW¾úÍ뮹ÂblXÃ]DÌ æ.’ÆuF M vÕnsÛ5ÐaÄ;Îzªt̰[]YÛ¶±‘ï´†8“;gž^i%ŠæS\ÝŠ5bSšÏÝ÷üÓÝ÷ü·ÌºÄ9¿ó®{ï¹÷Ÿ;ʲmçZ]Vã×Ág/©ç„1¶{I hu‹«S(5‹N©4yõç®'„T«µí—_jÞöÛ¿tãÍ„ÿ¯6sP@ì_0z×^‘]·ýëfÕHå#‰Ùâ¾ €+ÝÝ]Û¶m#„\ÃM?øÁB¾÷¯ß7”zûöíù|¡Ó,kW6Z{<¦»‹k‹«› ÅáœïøÚWÆÆÆ|ðk®ûâëÝ~ÇÝÅbßÖ­[oþêMjmjéºAⶃfèz an·þ‹V€+š:}÷wnÿô§¯ÚµëÅøñȆugœqæ­·îl²R“¦MäÈÚˆnB^1]ßRâD ìkVÙqËŽ /¼pddÖ-[¾¶ãkœ•›_æYÖ6·@8-3š†ª¸·A0¦W4ëËFçÞF*&Îu×\áRíˆÐ¢Èúß^õ™_üâïxÇ;dªr¾ßRM«MOO ªÚî={Î=o SË:ÓБ‘x9ž{þ¹‘  |ý@‹"Ir"™Uk3ŒéNUÜ»oß™gœY?9!É©'ŸøõÆ‘‘@×{®0uh0…- czµ2¹ˆ—0ˆ€Æ½j`mÕk>Z|±ÈårºŸm‰®kÙl,_ÇXÅ–uK088X©Ô8‡‘ @›™Ôœ“J¥644wIŠMÅ•ž`‚ÔHÉd³T¢“SÓxÇ@{¡ªZ.ŸK¥Ò&H åÌ€4´ ét&Æ21wàˆ5ˆ5@¬´ á_0r±Ñ#æt3¼f²€6b kQ`ø¬M7 ¾u€ÖÁgËÚÆ²vª¸¿Òó…¢0ÆtišÊ9§”*JB–%I °¤,eB?›47ˆ®ëår…J‰|®»»'+ËŠ®kå™™©© ÎÕL&-Ë2ºS¬UU›šžZ•H$UU­Vk„Ô!‰djphE­Z9vü`>—Å„sàEì.MÓ'&&W,_G©T.—5M3§Ô4­\.K²²|ùÚRiRÓt¯Lºº‡­‹ÒR®åŠWf±ª½XÄq¼¶Þ7¶—ZÃXÖ±À+•JCë4]WUÕ5N­VK&“ý+Nž8ØÓÓíåÂ.M±^¥Ö."‚Õh ·ZËRj×ÿ£eÍ9ŸžžééPUµî,"µZ­§·8Y:‘N§)îm5©\·E"˜f O*›ùæ4å\Ó6XÉɽ¢™õ¯@ƒ1ÕßÕ †q –ž$Ò‘{Lg““S+WÔjªˆÃ¤»»çÐÁWz{z\G†Xm¨Òø£hsÃVñö8Ü­)¸_rÛ†½DŸ„us&¢‡àS¢K)¾9xf+S¼1Ã׿n4ZÙRëÌPHlß/2Æ«•*¥c¬®eÍ#„V+UƸë(¾Ò¸»ÝÔÕSçA¸n„S…˹4~Ä t=Ì•ñ*Å«©jÝúÑv«e×çæŒ±J¥"¹Z­0Æ‚J’©®ŠV7‚1‰ŽW}¬¶¢Ã‚³þF>ôÚ5¦kU}êˆD®%§‡£îŸ`|B©¬(ÇŽ•$‰×C’¤#GŽÈŠB(u-Ñ«&Ɔ¡bÜí!C0wóñ }ö·‚|*ïZkÒÀ1rú[s<4k&®Uu $Â-ì_0þð×âáÄ–„ýÜ\JI:>pàÕ¡!!{ðõ¯ö÷÷Ò ÆýÄø‘îžaëFÐþÙÛfxwÏð„‡Ùh-Èu—îZ¯âB‚3C[œ•lñÀº¢ýÇâÓ/´°ÉÌiM5­6ä5ºªj{öì=ïüßÓj3š^çÍáØØøK/í^¿áÔ¡¡a]÷üæEQ”C‡¾²÷©§nìííé¼niA5é$ƒXƒvA–J"óÄã¿Ùè›íB×P¼_0æóùâ3Ï|øð³Ï>50PÌçóÙCìz¥ÀŨ5÷DBœ)Wì׫V¯ß¸qc:æœ3Æ(¥’$•ËåÝ»wxmßê5«]o5^2×^—h«Õ¶cJ ÖÑËeW­\A)=ðÚþ½{_îïN¥RÕjõÈ‘Ã'NˤSkÖ®^¹by.—ÅÕ‹#Ö’$uww)Š’ÏçŽ;1>1ñ G5MW9›Í®\±l`°¿¿XÌå²”bX$±&„PJóù\:.öõ•ËåJµÊt]’åt*•Éd2™Œ¢`2kXl±ž-I‘ …|>Ÿ3¿|‘$ Ö4´–X›V6…€ `ýChËšÇ77€à°¬ Í,kw÷Uz± ­xªh0ýTà€ÖUõ9à€6 e½„³—ƒ ),kh;˺Å8yrôÉ'Ÿ,•& !”RÎyÿ …sÎ=§Ø×‹ÆDc.©Æĺ5ß/ŽŽ=þØcCCƒë×­] =Q*•~÷Øcç_p~oo/¹DÔõ—´e½ûå=ëׯ[¶l8“É,…^)—˹\n÷î½\ðF4&s‰4&éi©÷‹²L‡†;uí'ù|~hhp¢TBc¢1—Nc.Y{9„* Uº…!¹\.“É.©.Ìd²1IÙš „}–Gƒt÷,‹<ϯ|õ›Æß’íºh[u)·dÓõt]Rçp"`f4ó•OÓ‘:-k¯gÂ1CžG{1\wÍÎí¾—ÆÚªKC/üÚjbüP|ézº¶ù9Ì›˜ÊG—ªû‚Å/bbüPwϲ‰ñCbã‰Ë²îîYnþBÈÝ÷üÓÝ÷üçóÝÃ9¿ó®{ï¹÷ŸC·jwÏrã¯Á;ßÒlL[Kší‰Æ טβîéêÕì‚'vÝîóÊÄY‡º5t-4ô ‰eã‡æn€.b¹k- J¥É«?w=!¤Z­m¿üR#ð¶oÜþ¥o&„|ø}PÐ!hmUkóÚšZ„ö—¨ÓÃ^Cc†lLç )rº:#øŸØ^½ã“`‡º \#;E/Zš÷£ÑyÖ¿¥cVwwwmÛ¶rý 7ýàÿIùÞ¿~߸¶oßžÏðä±è¹¤NÈÖiLÿ˜‘ä¢gmI w#oË,pSq¾ãk_{ðÁ®¹î‹¯ÏmÇ8ÿÐí±×5¹ßûo)®Z7D2tm¥º‘£ª†u¯qtMÝ|è8Ë:bŸššîêî6-èßüæ7Ï>ûl×O?ýôoû[ÓaÒÝÝ355Í÷Ò5럂 6-yLEG+Cþ¹…®†uoè"B/”t1~nΫT«”JŒ1ò>|øp>Ÿ·Æ9|ø°itJ+Õ*cL–%q- j=9…ÞÈÄVŠk`ôîãJñ:@gþÍ9Fÿº…èÿ|šPÄ o†dV¯+eóŸëÖ­ëêê²FX·n¹]­V‚®íõ€Ú€µfÕœ§éÈKñrbxéuÓ<6…à^ÿ®iN“ЂnP~o(¥Š¢;vL’$c¬ÞYgõæ7¿¹0Ç[Þò–Í›7»$I:rä°¢(‚ëp¶›kL/¯ë¢[š ¦m—è/>óôï6Ÿuž—^˲|øð¡gŸybÝÚUù\Ý)þ࿈Ù"Õ ãÝ%áÝ ”Є’àLçœÕ}(ËRqzfæÑßþÏšµ6n<%NsÎc”RI’ÊåòîÝ/¿úÊÞÕ«—÷÷eYræÙ׿Ú5óѯ9C‚¾¢l;¬G½ˆÛ"Õ ½ãLO( Ü6³º¹$Sc¼Hq¹|vÕª”Ò×^Û³gÏËýýƒÃÃéTºZ­>|øÄ‰£étbÍš+W.Ïå³®Žž| } èç„pI¦!fc ó‚‘J!Œs!{J’¤®®Âš5«òùÜñã'&&ÆŸ{î°®i²¢ä²™Ëú‹Å¾\.Ûà8hq(aœ3jÿànJ%IbŒJÃGH>—M§R}½=år¥Z­êº.Ër*•ÊdÒ™LFQdBDs€6…—$)„mƲ–(åœqC¯ÅKJÈ…D>_È1Æ¡„„¬1´µ\K¡t/”XK³«ºpÆ–¨4kpsÂaM–á|^BCˆu°Á{²,qÎ8á°‹ €]Í !Üuú#oKÜ*ÖA´šRãÿœ±º9C çœ*lèr»eí¶ÇóÎÀ Ÿ5ãŒp °q!†„¼§ÔjB8‘%‰pBaU@ 8!œÔ1bè‘$‰Æ‹áuè\»š1I2ÂNf4ˆñ‚‘Êá€Æ.%„yÁؘX*BŒ!h}kÂù¬„6C¬Œ„ 7Ã#R³>Š¡”ʲÌãÆ¢*1ÆdYnÒçæ”’Ù1Ö0¬@\< '„‡ûš0ô FNˆñe !8%„óÐ/ƒ­C)¥TæœN^0@µæ„Q*‡ø„1ŒÀK…R@µ&œHR/Åæ§¦„¼Z€PÖ5 cì*$Îs4`‡Ï#¡9 õ ¼`.€æË Ö¢@ ’s®ëz­¦¢ .Éd"܇æ±>DÓ´rEíë[>´¬}u)MŒŽ̤“Š"l%óù0–µ¦é¥™‘g1V›™E@]²¹\.ÆÞÝOwwç%ðçÁ—õ"d²4ÙW\ÅôÚÌô:„Ì\µ–Íõõ—MŒêíí š\šiÑÁtML”ŠÅþZu­âÔjSÅâÀÄDI×?ŸçÀ£A8g•JEÓTŒÊ€€úI4M«T*˜™);Åš‹ýhH·Åvf¦üēϔËeŒ³€Ö%›ÍœwîY™LbÝÉôô­°þ‰ÄªÜ¦¥ê¤Î ÜpÎI#Å€¶`|ô U¬ÿ-ÛS˜nÞâjXÖKK¬æ›Íâ66¬ÿtÚã"¶|¼¶}ì}Ÿ´‚UòÙ묞ÏQ8“øçºÑê©kéut’–õÒ}è6M9cÛr#йW<Кxé!*\7¯½"1Í£h¤)bª¶`> ÃÜ °¬ñÐæ‘<.˜½)(qÈŠxž¡KwMØ`¹QUJÝÙnr¹ ËzI×öZ½(6Wxä¥7X¥Hê#òˆ®†QU;ÂÃpƒ€öpƒîu}è!þ¥‡³Lô8Ó:Ý Ö0òjà ÒÁd2iâssо®«ª>¼T¯A«<Žk>yŠç_ÃÅ" ÚŠùd`Y/!_‡U+Í'hçóõšóA[ü‰ÞßÐó*Ý™g#þq/3¦Õ½nÛö± k_µACUµ2vòÕÙ$Ð4mÏžý¼ùjeRÓkhA°dn{+ÇG_G;€F•T"™{ì7?Y'2«µéîèíÃ8kh¯nnú¶áäKбÑ×qƒ±ŠgÐÓ)ä²^š¤î„|mAðe½ð(›Ìµ–5´k€X€XÀÁxÁˆ±{ЂpXÖÐ~–µ‹Šû*=†ï@#ör`!…e mÄ–˜X÷ö­´ýùGnÇöj‹j×m|ñÃŒãxEªGšsB†È§É'Uã熑ƒÈeÞÌš·©¤ˆñâc>áoë`oßÊ+ùñF[½Àhvi³žèÇö¶¬ýïxÖ›°b3ÉI¼Œwç½ÔšÄ?7W‹@0жíUHæA‹Ùkk/CÕ«¸º™¯ v«³h‘®ñÊ‚çO¬Õ)*ž‰ãDuM‘Ø^6†èè¦Ñ«›7b2„x?ão¶X³ŠêGܧÑH’%E#Ýá߀zDÐÄó÷-4Ò•‘[‘¡Ouç•(~¡5§iŠVx›ÚZã¬1±ÉÄË‘×̃òz··UÕî{#m%n‰5 ”Äéö¤¶Ñ¶C„}ÔHAñµIÐ^kGËÚåsIÛ‘Œ°D&¶íÞ¾•c£ÆFXž;XbrÇϳ·o•±aì2Š3£¹ææZœx ™•Xµýc[m{ûV…Nâèš™,¬˜g ­e™íôx}ú+P4[‚7~ýæµ5 í„¬Û#þ5wÝ;wƯ ûôˆ30ÄIèzÎÔ=:…šz}‡IDATóg~Ãy%¼¦|ìÜhzÐÑòuŠ ×Î¥„Ÿ«ƒªjeìÄ+â 4MÛ³wÿ›Þü®Z¥¤éµÖ³³„º€~Vp9‡qb·…2Ô-EVRÉdþÑßüldÃ:E `+÷×(èE@+ˆ©«ÛÅ-º¤õ:òîø;î´åSq±&r€6b kk\ß$tX‰ÖÙZùÞ¾UÆ?ÍVk¢óñ9.ÿœ«þ®½m¡-Ò5­)‹{P `¾!1!uê ±¶>.Œä[Ü«£3-k/Ó̱Y ®¿‚©\óo~=m!Îäþ™ ‹OB‘@ÿœ­ás8âlÆ»W¹âíßHSûŸ`Ò†î‹@õ÷ê£Fúºi‡Ö`‹_.™ºg¦W’@ÇÒf–µÓF³Ú"Û‚1]7š\Oã£)ÿäAA¤Vâ®Çë´ B´†`kæ ¶è¦v­ƒkƒø§m¤/ÄOŸÞ©{u,ú¡5ÞŦIâÄ}fÖí‘ 'aXÖžlª'˜OþÚ+ªzFRœøá æU+…H.˜$=ɳªxÿFuì×?D#·Â¡‰tqL—XƒEÜ'a ù¬ãx7Ò:õŒ;s/[Øv¢¸ÆZáÈ›K0ÃÈT¼‚}áŸO$õÑøM8´ö•‚ EÄz.¦X‡8ÛSFËÖ³ ‡ão;[sŽö¹,k+ª&Šé Ô¿^{ýû"Žú‡8švhq\q¿ë W±¶wƒ4ÙùbÚqÍÙõâñ‰&˜IÓº Ú<›lчhL××PâùGXÿ§q¬‡Öü§Ìh[5&µiË:Üó‚™Êš¼Á˜^©|®±¾¯ðJîZIŸ:ø×*„$h+Õm@Íå4=üÝ罿xS“znJÿq¾óO"Ò>õdù·Õ"ZTµx‡6x!ûþâºA:mŠÔHžzÚ€8h‰)RÛeÊÁvœ"ëvÑ»p£ÁÀbõ À9ÄÄ Ö‹O#cuÛt†ÆŽÁg(q»Ož)x Ñ~Ô'Rh#ŸâÂX/xa:òŒŠéÑpãA»Šµë´!&tÞð}2L"8±ªHñ˜âsK Fù~,Pû“ ÓBíAóœ^²9³kúµÿÙåß#!Nç®@E‡˜yöM‹ñŒâ3Ö×Ôk–EgDlÞK"0Á£`’™•Ÿz1Ð $rN!hdŽSÒ¬Ù5EMð,jä4¹ ‚îò?{}Žt¦¤Ái<e÷ÄžA“„›ß5Âv ­ñ)(ã›^R0Iä³kšCª¬ÛŸ!â *¦¸Cï`Y/‹î\ :ç@¸ƒ :µE›^™±NéÕ:§M|³k9Sµû):D¬eÆTƒ%Ó&¨Õ)XJ¬346­%ã>±e‚žAûÑ™ª­O £¤És.ºR‡X[|ŽÊ £©Zç%~㋎7§8ßzã®ÛHNƒÈK°¬ïEa·QN‘Š~mf; µALgN­øhdŠT|nÀÒÅùP¥nY¤h; Ú´v@kƒ8N$œWKB¬@¬b b b kkkè4AæÙç''§(¡”RÎ9~ñ‹ßÎû%”äs¹³Î:³··bÝ~Œ—žzêÙááá#Ñt6O=õÜ9çnêéî†X·{÷½:22²|ù²L&‹Ö ³)—gòùü¾}¯{ΦkñÞ–ÚL1 EÊç ¶ðL¶§<3îšÄu—x à^qå㌜ÉÎ>ᮬ!f|3 íB>_fããÑŸ·°¬›Ðyy§M•Œ¶Vu©±]ž7ÍøÆ† Úø*Èd …B늵ϪÏfÛu¹£%b€Û O×½®¶j]Öª•®¥ˆÚò©kS;õÚï™Ñakwêm twÞu7!ä²K?I)5B8çwÜñY‘/»ô“±¯ebɉ¥°J…—6ùø¬ èèeÀ:K ´æ#¢¼‚m+ÑV.ìkЂL”JW]õ9BH­Z»òÊËÀ;o»á 7B>ú‘ ùøJwœ5æÆ WÙ²úëZ]Õ[DY4ж‹y“@׃֡»«{Û¶m„k®½þ¾û~@ùîw¿g(õöíÛcUêˆ-kÓÒàºãXå³AwŠà^«z½ß á·‰ã¶@kÀoݹcllìÁøìÕ×8ðú7¿u{±Ø·uëÖ[vÜÌX­sÜ °Ç›æZÜëêie3€EVk®Þ{Ï]W\qå®]/Þÿý#ÖqÆ™·Ýv[ÜJ½Äg½äpZ“ÃÇÚtÝ+nA·Îó‹Ž$‘[vî¼ð GF6lÙ²eÇ-·HoB¹ñZÖærœÎu9E;ÃÄæœ¸úL_­WÁÜk‹&H¾$ôJBŽ™óò„3¨]3ôÉÍ¿Ah…k:“N\õ™Ï>ôÐC_|q:%sÇEÎcPïèÅÚkýM熗w˜„q=¨WÁõÍaˆ@ñ$âõQçÝ&ÐhÐòëí)|ð—èºÊ9s»êµVwƒ'©¤¬ªšý¸ÔÀHjÐz­iUW¥VU-™ˆÞŽÑ âêq^‚/ûûû'&Ž'CŠ’4Ò/eûJ :WÁ¹¦Õ&&Ž ô·“XcP‡A6›‘$rrôxBÁÇýt8ª¦e³™T*ÝNb LÒéL:A;BŸ5@¬@¬`‰ÞgÍ çœ£@X7Ãk&,kh Ö±±ˆ5€V_06ƒÑÑñgŸ{arrŠJ)åœã¿øí¼_BI>—Û¼ùÌÞÞnˆuû1>^zúé熇‡7ŽlDkÐÙLLL<ýôs眳©»»«¥Åº¯¸zÞœ<ùZ3Û¨¯¸ÚY¢k`“Ù·ÿÕ‘‘‘åË—e2YœÊt6åòL>Ÿß·ÿµsÎ~C늵M[A(½„„’Êç þÑ\gyÜ+Žx>QÕÇ+fÝ…c0A6hòùÂð0‹<çØ_0ZmmcÛü5wY·E"˜!Ö>¿^™xåæŸ•d·ÎËæ®+Ó†"›6!¶®Læ%å´ÊùœÉ ]‘g£ÏÚǪ5nCàÌm3‰gÌÑ“¯¹&w-Ñk—ȶHdAyò±ÍõÍpSò¬ÿ$ŽÕëÚòñ9„ÆëcÔ@6’@¯AÓ¸ó®» !—]úIs!Îùw|GVäË.ýd¬EG)Ö†bÚÄÚ”Q«œYuÍUãêF}ŸÏ-P‚*µÏÒ±Ni«H.ŒëÔ¾ Ö|ü¡Áú8e·Áõˆ‰R骫>G©UkW^y¹¸sçm7|áFBÈG?òáB!_é»A #×4ucõ®ø¸57·¨¨»š­¿TÕ²H”.ªú˜k½C@ËÒÝÕ½mÛ6BÈ5×^ß}? „|÷»ß3”zûöí±*5‰õc¬D[P+¼‡ éóõ8÷Z®n&×€¶‚ߺsÇØØØƒ>ðÙ«¯9pàõo~ëöb±oëÖ­·ì¸™±ZÛˆµ¿{$&A š³üVÁÚ"¸×ÕùñúÐNjÍÕ{ï¹ëŠ+®ÜµëÅûï¿dú3Î8ó¶Ûn‹[©I|Öñ©¿³©5“8#xå¨hßÞÒJ 1"ÂË­\Wp£­$ìkÐH¹eçί|ù¦'Ž]{Ýç%‰;®úèçú§ªZ;ñŠxMÓöìÝÿ¦7¿«Z™Ð4Ñ›I{Y¬Ñ²gï«§zZ"‘p,W;×h"Ð:HÃ' ©7DÄu°‡ó¯øýÀëý$ÆYƒ&C©46>ùÐC]|ñÅ=Ý9›4«ªúÒË»6¬_ãb+©dªðèo~6²a¢°•{‹kšáYÊJMI&dUÕlbí×7u!Å“ˆ×Ç•¨êS—ºuƒRƒ¦;CXoOჸD×UΙm¯ªj En]7ˆ×P cdÈRî×þþâøøñDbHQ’æØÌvÁÕeq€s¦iU§÷CÓjããÇú[W¬—¸"ûÍf$‰œXìêš]~ÝÚU8§èHJ¥Ò¡cc‡M´´Xáu[D’‡VüVC’}=…žžžt*i„d3iœÓt$’$UjÚɱRô97ç\—wÛ^¿6ûÝIrñÌëFŽà–¨$p°DP”D3×7{¥Wÿ†ÍY`×'¹ÏÞ@5Yâ ÜœÜy×Ý„Ë.ý¤)Çœó;îøŽ¬È—]úÉxï‘ër†à2µ¯’n»%4X+À’b¢TºêªÏBjÕÚ•W^nîÜyÛ _¸‘òÑ|¸PÈ·Xè Ë„û܂twuoÛ¶íŽ;î¸æÚëW­ZyÉ%ïûîw¿g(õöíÛcUj²¸C÷t8ø'] ˆ~ëÎccc>øÀg¯¾æÀ׿ù­Û‹Å¾­[·Þ²ãfÆj±–½h_0µ|}| 0±MRk®Þ{Ï]ï{ïŸlX¿öþûïÙ°î’÷¿ï;wÝ·R7ɲvõxÔuƒø›ÛþÉùXwÈÔí_œât ’DnÙ¹ó+_¾éĉッC×^÷yIjÆ5¥Xûk«H UÊqlñƒºAe/ ÀËüʤW}æ³=ôÐÅ_œNÉœ·›X÷&–ÈÄät!7?1H¥ZC³ÐÖd³é÷½ï½µZ¥\©ZëÕÚÄä´D£—ïØÅÚÕe¼¤ìÖᮃǦ=ÑÓU0FfŽOâ\ MnBÆK“•Je岞È3]¬áOèîÊS‰:|ô!ä‘ßüöÐÑ8­èHÒ)eõòÞ|.ú)6ái]ù\W>‡v„‹ÄÄ Ö Ö Ö±±±€¶_06ƒÑÑñgŸ{arrŠJ)åœã¿øí¼_BI>—Û¼ùÌÞÞnˆuû1>^zúé熇‡7ŽlDkÐÙLLL<ýôs眳©»»«uÅÚ•ñHrnÇÇ÷íudddùòe™L§2M¹<“Ïç÷í휳ßÐÒ–uÜbÚŽsø%”ÄððP>_Ày @Ǔφ‡ÙøøXä97ø‚‘/ü#£'_í+®¶†˜Û}ÅÕÆŸ5‰b ·Å4fĶF³EöÉß§tg†>Y9ËÿËçó°©X:d2ÙB¡Ë[Zòö¶¸×Œž|Õ¶mÝð‰9zòUk xþu÷úתn¶€¥ÆwÝM¹ìÒORJg-VÎï¸ã;²"_vé'c-:z±ÑV×$æ¶x ¨5mÝ| Ô,q&J¥«®ú!¤V­]yååFàηÝð… !ýȇ …|;‰µ—^[Íçºfx8ã=ò<À¤»«{Û¶mwÜqÇ5×^¿jÕÊK.yßw¿û=C©·oß«R“fÝ´Lmž‡¨ò‡] h~ëÎccc>øÀg¯¾æÀ׿ù­Û‹Å¾­[·Þ²ãfÆâ];®/­žºF®kL¥öñÀÄÄ¥Ö\½÷ž»Þ÷Þ?Ù°~íý÷ß?²aÝ%ïßwîº3n¥Ž×²¶y¢^i3Ð5¦MîýÝÓþ^ï@>ñ tÞå8Åè$‰Ü²sçW¾|ӉLJ®½îó’Ä›pÕG)Ö®*éïˆðôÙp¦ ê ”U#ªÍ8Ãù @'™×™tâªÏ|ö¡‡ºøâ‹Ó)Ù)ÍŒëídY×Åj8w°O9™TUK$8Çègëí)|ð—èºÊÖ˜ªj %zó¢Íºgó÷×tª7¹¿¿8>~LU+&6¤×šVµ]Ôœ3U­ŒèïËzé ÏÈf3’DNž<¦(˜6 €GÓ´l6“J¥;G¬—ét&Π¡Áâ±±ˆ5ˆ5ˆ5@¬@¬,$–b8皦«ªê-‘H(Šl®Ž yb­ªZ¹Rëéì1¤›êú[*MŒͤ“‰>¤€&е¦éSë7œÉ9«V«þ‘s¹|.Wؿž‚¢Èè h’XONNöö sÆ*õ”š¢iZ:êéœ,ëííAg€Q¾`Ôu6>^êëëW5M0‰ªj}}ãã%]w™>4Är_>{Í]!² Z‰ný0ÁUЂo'¥ÚÄ:Œ±J¥¢ª*cŒû²wïÞ/}éK¯¼ò ç\UÕJ¥Â˜è\Ï1Í­ŠuÛô€XÇÂÉ“'·mÛöýïÿßþíß1£Œ ŸU lK8:Cœ¬»|²uµv­á¶â\3 t­vÝœEŽ·‘Z‰»³® ÞxÕí;¯óÄÿ h5â†áµ^dµZýÜç>W*•–-[ö§ú§ .+i®¢ë\N×b[ ]0¡Ï^¯Å|mkquËõ t.â^7gÁãm¤VþÍeÝ`‘T&ÐáËzÞO²cÇŽôôô|ík_[¹reLÏ¿u/?Á‹Ó=uÁÜDÖSoAGA´µ_.¹iÉáE°¬g9räÈý×ýáþá²eËŒù—yúé§óùüöíÛ7mÚS¹ >Ø&aÐË8èËF¯RšùTU­¼ò $‚‚• ×;Qõ2&ÖÆ[ÄŸýìg?üð3Ï✠„:Òšgròø~b‰IfbÝ8y|q`ÝÉ…ÊÒ?R7¡µ8[Œ½Æõ4‹óOb-Å«è~ñ¯ªÿñŠW@°A̽f³[»ÀÚΖo¼2T`¯x/œB¸,‡™‰ªjeìÄ+â 4]?øú¡37Ÿ¯–'5¶`ª&UÓöìÙÿÆóßV«Õt]Ÿ½NžüÇüGUUÓéôe—]–Íf꾜H$~÷øÃ##ë féLŠëO߇v@’ÉTþ…g_±r¹"˜c£·¸&°>RB%IbŒJlgΉÓ],?ô¡ýêW¿ºè¢‹lJmKƒû´ŒA΀ c\’$Jšâ¡åŒqÆmþ J‰"K¯¾²oÕê5šå‹óU«V}èC"n¯ å•Wö)²D©Ý‡SXï,Z;‚^`^­9£R7H±–$™Î)a¶ =8ÉdÒ/¾øl± “Nkz—6Š"OMMízñ™ukWnÉsüèg¼´/’D8ç’f’ÑP/%Ê9#œÛ^*ŠÜÓÓÝ3^úÉï?íôMk×®÷Ï祗vïÚõÜòážžnL‘ è|»šsB¸ÜËšRJ©D7J¶íÍfÒ+W K”ì~éÙ'ÿµV…B~å²åˇ³™4œš€%¡ÖœQ*Ñ& ÝãœSIâœqÎ8±+,•hWw!‘LûûÊå²V™L&ŸÏe2iJ©3+è4('ÄPN¾c =Κ¢(¥¹l&›I×µ•)%X€°” kÂ9 7Î:„„HT&ݬýâ‰è0ÌiÀRRkÆ9‘¨ÂL kY3F(%š¬]BšfYBf_02Ë‚i5甆™›:œXÓYÎ ãL&,Ü»º0C÷dYfŒÂ9>Q€ú)3ÆdY¦Í™uRJ gœŒå€pJx“,k27E*¡/ ˜TsÞ´¡{”R™qF8Ç FãŒÒ0n0/%%‰¥€ ¦5'„K¡æ #Ö”RLåáô:œÏZBÓ@뱈5ˆ5@¬@¬@¬b b b kk€X€X€XÄÄÄ Ö Ö Ö±±ˆ5ˆ5ˆ5@¬4M@ÇÃ9×u½VSÛ¥ÂÉdB–eJi'`Ѓ‚X°´Ð4­òÿ·w¯½mZÇá@pÀ—¬Þ֦餩j5uÚgß›i_ÂJµµi–N–:m‹fL®¹ì…%jÅ7b».ÿï>ë<ÈzrÀVFÖã¶]/Ëœ¥tû½¿LC×u½2ïj–:‡n¯Ë¨fSDZ”·ß?ÿ)M“(ŠKsɯkŠ¢^]vlûP×´\“8Š“B‡Ò„¢Š<¡fÕ›OYYU6ôüæÉi’Ä£ÑÇr] æãAÿC½nW#`)ÆÁ~žPsñ#PYqœHé5›_•hMGQ³u"¥/^/—.à8ŠW†Z¸0ç TUš&áh4“$IÓ4çQ–eM6<ÏÛp–e­ý"išŽÇQ8¥i²hY¹Å€›Lu»¡(k÷«×Ýô)k-„=ÏËF&Óç.N§'—Rœ€y–Þ9)k]€¯±›”2±,kòжm)åô ¢(³ƒRÊÉà¢C¶2á-œläL·hp»¡¦ñ#€\–—Qžªzç•5€±m;ç`Îg‹_ÐÙü§Ëz—¡(k úÒ4]ï.ã8ƒÁ`ö©l0ŸÞÓqœ;÷æ²Å;Û 8½ÏìümÛζ?k¨;¸ àS;Ž3·È™ÞÑÈ}w(TÀâ„be °²þÄuݬw\׻Ɯ»O6èºn½^ÏvvÇuÝ%/»ã•õÊ€ËÓ­ü|+kÊÀÝ:[9¸|ŸÙE‡3`ž3°ûPÜ€`e T™&D·ûçééÓ(ŠÖ~‘F£‘m÷ûýÝÌ|O׺Ý÷šÛ 8âŽÝ…ÚÓ󄢬‡EUEí°vñæ¼Õ:1 #^÷?ˆîþ›Åº&ü››·oΟ}«ªb+¿ø7Áu]ø¾¿2e <¼eµ&lÛ²,ùë/?¿xùãÙ³ïÊ2ówW\¼=o·[¶miš¨FÀw¹B-üËÄ–$‰çùÿóïõuÏúe™¶u|ôèQ뛯ۖu$–Þ4(QÀü¡fñã@Å !lûx¯ÕlAX–i›¦qtthšÆÊ_,,QÀü¡æ¢¬ŠSUµV3MÓØà;¾»Ÿ³’¿ÑÊð^¡(kàáVöEAÀ\$ñ&Ê@Ye  ¬”5PÖÊ@Ye  ¬€²Ìím@Y@Ñ›ºÓyš$Iïú’3ÅᓳW" o8PØ•µiAà‹áP*ªÁ€Bu´’Ýù¨Hé U¾ï£”³iêNçu†µšùò‡WIù£DýpõûÕð‡®”½8JNŸ´9SðeAø_o éâØjE¢öÛåûÿ€ €%;³IEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/manual/html/_images/customdefinition.png0000664000175000017500000004501314126044351023002 0ustar00jssjss‰PNG  IHDR×Â2ý¾sRGB®Îé pHYsHHãѾŽtIMEÚ>§•tEXtCommentCreated with GIMPW IDATxÚíyœæFyç«$½W÷ÛoŸsß—Ï™ñ5¶Év ÄY†c°›À.æ6Æ&!x×€m®pÄØÆ‰ Ä ›Ý|6ùä 8²€m®õ¶Ác=žñÜxÎOO÷ûöñ^’jÿÐÛj½:J%½Ò{þ¾žO[¯T*U=ªúéÑ£R‰NMM0JS‰T:¦TbLgŒ‘V@[’%m£ÃÐ6-|<°È“³¶-|ؘuºi(¥†Ò–JÅrµBS¥ÙLŸ$+j¥¨é*ñ—`Q/§Aò¥ BE‹KCTŠŠ ž’ðBF‹T(+![S±²P±Ó@ç#Ô¹tïd,DdÜ%~nÌ'ó/6¬ó¯Ô;^Ìw ¬o,ˆq¹IZ€o4‘)<¥²¤¤Ré„¢LÏÍ*©DJ’•jy¦U.°p­ÚÇŸbŒˆh'kWFŠæ]þº-žÉê7Ìÿò± sÊ­Ui€ uÖÎòWƒKp¯Þ 0¦iU]W©l:™”Òé´V-‘à*F)%´Z­NMM–+%J©UÍXKlÆZ|¶¢rC^Ä™˜K!èwºl¡Ÿú;„Ì5û'ž¡km)#”àåÖ9ÂÌr?B«ÕÊÔäD¹T"Œš—Ì \Ÿ ¡$Ìå•J«ÕêÔäÙr¹dü¯>‹\Ù¨§²q,¯UKétŸB©¤éjB!åréÈoç''ff§çæŠétº¿?;44²jõÚlv jOœYGì© ;ó¡Œç åj÷ˆÝCŽ ó+˜` ‡/XCf ty r£µ+ed® ¥åRñðáS“gffÌ.<0<<²zõºìÀ aº”Їœš²f’]µfí@6gÓW×29r(?5QŸÉÈÊÕ.™Äê@ó”mÕj_eÓt5A%…1Ý+¼z͵…éâ¿ÿÞíÛ/–¨KÏÜ·ÿøÕ¿ýiI’}øËëÖ-ö,¨$?õ ÏíÛ·orrjffV×uJi__fhhpӦ矿eåª5Œéâ>J‰«å(;GP¢Â0ÆÄ¢ÃǰŸÀ³à 1ñ "Ø•ÔG‹I]IÍÿSO]ï¶Œ+c,Ðqô“`æ>$¼#Ì!”J§Nßýü³ž]ø‚­«W¯c\!¦T?ub÷nN&[V¯ZÈ„ye2~ò…Ý»8b²jÕZÆ´&Ä)”móÊU«™®óNÓÎiذñòçŸ?zìØ #„1¡!„èŒI”2Æn»íJWì¦k¸,<¸ï™¿Ú½{ÏâÅ‹¯þí×,[¾btd¬0?yüøîÝÏ=úèãg&&.¹äÒsÏÝée=nw8Êèp B,(i>1b!ÇUX‹·”®7õÔÇåÀµaa{fÔúK "z Þ¿ÏΧŸÚ½{ÏâÅK®¾æµË—­-ò'Na÷®ù.\8ÿ¼-^'‹RéÀ½ó™,¾úš×._¶bdt¬PÈŸø›_>¡¯Y³ùÆ^ŹVLž=ûÔ“¿|ñÅý×þÎï^¶í sÓØÈØØÈØ–-í?°ï{ß½¿ZÕG–-[Á˜‡;ìÿLˆ†ëz!n,.DˆÝ”‰ÙUMØ)f5íÕbây%¨ÛÈ|u”¹‡7]Ïç‚uP.ïHõ×á7 $Á/?ùÄ/^|qÿµ×þî¶mWÛŽŸ8±bùòÑѱ-[.:p`ßwÿí;F^±b¥3gJ¥³gÌLêt`ttlttË–­öïÿîwLFW,_¡×eR+ÉÙ³O>YŸ 3ÄdtldtË–­ìû,_¶ÂÕ7ÄÑóP6f­ÑþûkÊ–Y¶l§0çHë×mH$ÖŸ8‘0’QJ4Bt”Jú—¾r,‘XÿÙÛ_“ÉÈ^EUU}ï‹»_xaï[ßúÖK.½L×5ç¿ ë7¼ëÝÿíàƒû÷í-çø–J÷åÌâñ8“Tf ñ¾cÛ-™îO¦û9…I¦ú“©>óŸWFÉT_"™1Zp"™1V&’sÙ¿-1ç³"äyã'guãcÎç[,èS9ÇnBÏç‚?¾ó«ƒÿÎ ›™o«\(£àeÀ…hìqœxä´ZU÷ìyþ…ö¾õmo»ôÒmº®=ôÐ땯>ïüÍ×þ‡»víÒumýú ï~÷{8¸ßž¹¹9—LTuÏÞZ&^:°~Ãz3“Ù¢K&ªªíÝ»».Í‘Éú ïªe²wÎ-“ˆa»²:tH×UkI:´aýúš²íß[,9Ù)omíÚ‰Dé䩜qÊæ*´/iÄéÉÿü›ÉÓ§—]õêþ×½nÌûrA''Î<ýë§Ï=çœ Îѽƒ#£#cÛ·oßõÜî5kÖ¯Yë]J÷ BJsyB¨!Ä¥¹‚Ÿ¯¹°'Á yÄ!ˆ6! žœ=»hñ˜¦kW\a*›äå_*œà媕™DbýÙ³’¦•I¢ÖIU~û;ý—_žxÃŽòš5%NÜ“R©PȧR©ÁÁ!½^…gggûûû­k$IJ§SÕjEUUIòuŽÜš¤Åž69NgL!.§!Ʋ)¾¦4BRéri:•0¤ÖbcÁ)Á¦^Â’é,!¤Rš%„$ÓýõÊ;ë,h2Õg±±`zĦ4[ ›mÓëD2]­” 69‘L'éjµdíØ´¤ÜAÞþ¨pÒ螯Ñ&‰°°8F/Ô<Áf _4¾ @ Íçk]˜éšuÛÏ~öÿ¾þõolÛvÙðp­wK²Ù…«²$Ys12É éºöÒKG/¿ü•Ÿþô-7Ýôcûw~íÎ;ïyæ™'—.]"ÉÔ¦)ŸÏDÓÌïû«oýÎï¼öž?»·?ÛÓqæzáz‘Va‹²©„?úaÆô?ù“/?üð#?üè>û>pݼYæk¤©u? â¼#7åoÅ rÝu}Ù,)•«}éZÍ+ù÷~/Ñ߯æJ–º‹fêº^©TdI²ŽÕ˜ÛñÆÿôÀ¿—N§­é‡†UU¯ªÕT2)öTËg{:“+ †‹›¹\œ6Ó–KÓ>‰ë„ØQ&î1Måm°ÕG-˜éW+¥šwÌ\~1Lä˜í>Ý÷"i]A׿½RÃ:rø7€XÀcÇ¡¿Ä9DÓj]X’$[$á _øb.—ûï7ÜÚµ‡††TU¯V«r*eæ¢kl^(ÓõU+W|úSÿã‹_ü aìÆ¯¿ó®{î¼óžÏþö%‹Y™™¤RI3gÍZ“;ïºçλîùüçnÿàÞ{ï׿YËð£×[Ť2/&Jp½²Q³ú7ÞðáG~ôá‡ý×½æï¿®Þ,ƒµ%®—ŵ«Ie™|üËU¦VË!ìÔ”¼xP›•'ÔÁãr2KI_}”ÏÕb’$ äªÕJ¹TJ$æ¶L:õÃÿ×d"a^Óæõ]íëëK¥Róÿ©˜»P* wØê7Ç•J¥û…¯±¨‹ °:Ŷ³Ë(Óˆ°Nt¦3FÆ…ù‘Ù:fŒçOS뉦 Æ…Y¨¸0ÿŒPê» < @©‡øRjGÛ~¸E(õºÐ1LjlJ¶ëìž\2»tÑv‘r…dRœqelxdD×éìÜLn gÝ’L&l1ŠjµJ%y` 'QI÷¨û˦5:l8ÅÎüXÄ Llä ·²QκbN±­ãJT’ej¾gI)5ÞÁlôâÄÜ$*škM3üáFßãg¢;†9ˆ¼Ÿ7ÿÿ£Ý·0BcÃ#£ºNçfgrƒæ¶ááÜOú¿###Ö^lvaY’jÒl<$5°fò‘ë?099ùÍ¿üë?þøÇÞ÷ÞÿjæS­Vj:`õ¾™Q’]§³³3¹Á•+–ÿúÉÇ–,Ylîø‘ë?ð¶·þÇE‹Æt]«ª/1©«5 ßPlÊv÷=÷Þýµ{?{û§Þÿ¾÷üÅ7îûÒW¾Ê˜~ÃG>d­•$¦i®eQLî&Ä'§??±·2V]Þ?Z(VþùÅûgÕ¹o½.•`„LÊ+JË!:Ó‡W­Z}ðÐÁ­[¶òëuâÔñÅ‹–ärL׿‡áÖ©87•éJ÷ –æ¦!é¾!Bˆ±lÑx|g].ó¥b>ä\íÝ–™p“eFøØ¹ÕñL¹8)î2ã–ÍU2êR&’}†›N±K¯7žÔ0O/Q,j6^K£Î0ZegQgèó–‹ä(Œ5XæÖTu£ 8t`ëÖ‹Ìõsss¿÷Ž?øþ÷þÅTyÝuïÖtíÃ~¿ÎØWî¸û-oyó’%‹ë”ÍÃÔ¿ûÏTf~uâWÏ?K)ù‡}ûè±ÇVö/I.%„ÌU¨ÆõY™® d~kû«víznrjR÷¦X,>³óÙÍ[¶Ž Õ çf£â¼þZ%x^”Íád~(E:3hHp©˜7ÿ¦39B˜åÁ]-dÁûj_4âÅÆs<‹l¬Ì:‡U0Ï~ÈÜâųd~ˆ›ceŸuX…ksªVæˆe 1w¬›­€–!ÃnÃd™×^Fâî0_Û?Ý?gæ,| |÷d>æÏsz#ÓT^íV0gÇy7´/73ºð”¥ §ÓéïþÛ·“ɤKaL¯›ÉšÉäYkÇ?ÿüó\u`xd˜éuÏŽ™® ,”ä,OLJsób2ìùFuc7hõÊvvÅŠå¿üÅÏ®{Ï»Ì2|øCïûÅã?]´h¬X,>³s׿-[‡”ÍE/©¦©ekֹؔ¶?:üÐÍ?ûÔÖ±‹>ù[ôÆo¿-—Ê=úî$%ÊTJ«j4¥0/F’dIO=õÄ3;ŸºêªW ¸ŒØ-•KO=ùäyç_|þ¦–Á4„Ëh Ÿ…¨Ó&vˆèzÔÊÏlŒQFôZ\˜1ƈÆÜ¿>0ÊDJ\‰ôŽ ×eï=ÚJ(.ìÄf¢qaÚHXœú½ˆm$ñ¬%u ±3×°…ë·e'Êqíi}µçÆÜ^ *i3ºðÕW¿:[Zœ÷?JO>ùÄyç_|þ›3)ÅEû$Y73¹êÕÙœK&¥Ré©Z&¦“.™PIÖu²‰[IJåₘ$e—’D c’¤X”íUî…YP¶d‚2¦/H«¥©LNáÝS2š98y°¤–>úÐ.žþòoAaƒºNˆD4(2‘)ïQ”®k²¢\|ñ¥’$ýè‡l½hóêÕ«SÉ”‚,WÊãããÏ?¿ûÛ{ãÆ™TBÓªuö¢¼7_i£[ÜûeA‚ÏF½3²ýfåØ%½µ™Q·yzÍñÂóqa*ö‹m3—Ò³°¹ÅðŽ…6Vö=¢Èìîo~×?ädnOÅ©hÄ×­ž%fº’H\|É¥’$ýðl½hËšÕ«“©´ÑX*åò©ñSó]xS_&©kªK¶º¦(ó™üð­mY½zu*5¯åòøB&3i{&óQ%iˆÉÄ$=/&¥:1I'kbÂjÂE7Bt]••Ô¼²=ÈW¶tJÑ´*'äéð…ë9S<³ú›çËW,ÛöÐ;¨T¥lšéŒ^°ªSEr}²¼ÐP%¥3éÌ™Ó>ú𱣇u]Ïåæææd%±zõºË¯ø­‘áY&šZñõ„]×ñ̰®qÿUØ»ï{W„†)X˜ƒÒ°Vh>³eñ5|]á‡}‰ðÔ²œÐ4Âé£Ã#²"éó^”›ÏGd%©s3QdZçŠ9K¢¤tú‹‰Ví- …lç•íeNa$™iÕ '»T&g¨pÞ{¾vÞ·.š-ÏJÿùÍß¹xñ% 7„Q‰É”H‘¨ó~ªî-ÉŠ¬¤TUU«j±T,•J™L&•J+Š,IÑ«:ÿåºZbKÂM“cîhs¤’Fž1m\FÃ#‹¼ W²†J|ë‚ T–d¥ªjjµZß…Y’ÑŒ§OÌCŒEIRd9ᚉ$I„©¬N\ÅœPI‘•¤›˜(’D SÝ\é¸.Ó’œ•¤ªj®ÊÆ´Š²fUaRC£îP´VbY!DbŒIÕu]תºøó­ÖâVÊqŠÜˆ(7Á…¥¦ úŠ[«ëd—pFb…ù³ÇC©,B‰Î¨,1]×uÕöZoÎ’¤H’B(%:£’Ę¡šoaê¦$‘YR•˜Î$IÒ™¦kªîâG7ãlJrB’”PÆ•(Ó5M«z\ ìÑ$› Û.`¢÷ú4òžÖ.ZLB}×3b9ŽM‘ýJ›xN;ÁáÞñ]Â)/ˆÛ‡¾P¸½&ʬaËÆ{$ÈäôîkO猹‹js-Q½4WbædzŒ²ù7®ÌéÃkC± £æ¨ÓÚvÆ%„¥“©b¹D6ÔþPë´N–ÝŒÉö,¿)c,•JÚ²·&¡”°ºMóCkŒR2Bíy.±Vzc,8¡„š¨½ìÅÐÚlUn›7„¥pæ ãÐêŠ1o6f5ŽÕ¦u˜=¡ýjùí¥tá…Ejý%”QBUU¥õ[ÍQ*u+Œ¬¶•™©(M&UµjNe¾†hÌ!E²4žÃÏïin!„šJ%+• ±~­œÒ…¤ó/LÕ¡óïÌ?p®Í5—N§êªIÞcdV«Ì¥V-VË”X¦¼*UÊ †³ÂR~­«%ó»PBX:“±}{Ý‘ „É1*È6T†º;|¦™™^û,‡Ýk¢ö”<÷J÷÷]ó¡4ˆïN¹Î+õõEÝ~Ó@®-%B¯¿±[ç9dƒs7Ì \8]æ2^F|äüü ·0Aç-dâî;{ßúK„Æ6#¨Äe—Ê8`æ\ŒY‹©³¶n?:oæž`¼‚9äØ¿BÞŠLÅ{ f<÷×´hDm©ƒâà‘|º!tÂpSQ° g‚ŸˆjDƒ?UŒªý4ô1î8T¸©N±Ë‡yó¯™ÜíƒÁÂ/®{‰ŽyÈ1·`¢eaE ´LÄ!uíôu/ ÇûbH›E$BNŽØ`ÚГÅ#¾ÁKÄ.X7éoóU¸m´˜x}¼½NŽ©øy‹$“c✆!´"eQ]öõ„5ºiªRYStÁwÐSÜÊŸøÆéüv°þš*Ìx]®Åá\ãðrÖA,¢þ¢F—úؾ³¹îJ£kn1†?Xt;5ø~tuc‘†•¨Gõ—µÐnW-ösãã0rpY@”Ãé²HÛm8‹v‰³x2ˆD BÞÔw²øv¼ÿˉH°ÖµïH´8¢Óêñåqa9¦îÏh¸aÓzY<ô@Ã~ÄVÕ Ã<Ìë²WNX´âÀ¢êz,:qôßÒÈÛt¶ˆPUn3ým_8r-Ž(´R÷qqü0ÒËÛÍ>q¡°"×7£À_³g^ºÌ;4ñ}µoÚê†ûN,ÚÎd JcÞ¡þ†­x[êo»©°·“ 3úF(Ǧ@Qí¤J⣲žŠ¿(sn>Å ¶mÚ®]"âÀCtõjHvIØÑÆ)¾~”¶»?k7vÓbbý¢kPq"ªaõ©Šˆ~¡È$p<Ø9j6Þ ˜Ÿ¦ÒˆûT›‡$b¨ c±¬É‹›vˆÐùmßf§tBƒo*ŒHyÛW|;æžKi E1UU«ÕjÓËÌ›%6ž[E‹íCÁ Nc«0¦|‹Ñ}?¸™Å[°ØÜÞŽßD"¡( 븄Tájµ:7WÌæ†G‡– Ûz™™™B¡p¶¯/“H$š¤ÂªªNNV¯ÙÀ˜^)ϵ¹h7‚FtÐ.œ¢s|㨦ýa-)}Ü\ÄO_____ÿÑ—Ž )J`Q £Â…Ba 7ÒܰšÐö)J4YÓˆ3„F“Èßå QÄlÛNóX»$*e5™êË  ù‘‘‘ »KAwÐ4mj*?<<¬r?ïÜž]……é ¡öÏ•ÅTKܙǿÖýc¾)bªh³Z‹X½ÂV]4yœ¶lRkŒµŸ¶U-LMå5M‹ÝÖu½X*ªjµsÇ|rÛø~A/ú4¾êzFèu¸F]ÖI®3kEN¬³jUîÝðž;#ªZ-–Šº®Ë²{D¢[ï%ÛB‘cåàº+ÒEhu·ÎÓ+´5J½Az:Ê…"Ç/ÊÍ8KÁ§I Ñ¥h{·€ö–½Vœu ]Ú·µ)0FÔ¾nü®¬ÿ÷†Ú¤ÚË”éËYç ¾Y˜»pgúrÆVçBÇÉ[»–¨'>`ÕZ_8œÅX·X8ì·6ÛªºK3m7‘(ÎåëÕ3Ï•àAKOKçòu0·¯é¿ “ªÃÚ³4¯ÒÁj$äIn‡=ñgÌó_PœËgú­škü3ÚþZÚvôJïÌÖ+×”8_±ô¢ìIÍô…AøOfvXLÓ±[áA[Ý^cÙÐh§³l®´muMïÌÖ+¯”=îÕÂám’ ›­‚b~шÎå 2Ѻ¶‰>ò3 Æz¤3@y#ëd ¾pžÎEØz=^uléèW{#¤¯ÈUìúú‡ZR´ZFø/K£åÆï ƒ&9ËÎÙhW‡/<ÄÎ*Ás³Sæ¦FüP›²‹gUºÈÏ…« îþ.ÀÕe%îhuöÕA¯5ÎþV×d^ê/X¼ÎV[ÒÒyÚT¸£: åog2Œá-h@\¨0h™4sÔݵR+ª¥\¨0ˆ·'Rß$,ª/r€æë,¤* º[ ‰wb»¼ÖOHm7«0F²ö Ð@½›…j ´7L`Bg{±{ÂF#"¤¡ç ]m$È+hØÔV,/Ï¡mA¬=`Öã6½Ó_ #|a‘ •à f€ TT Â ÂCv„³Òu+_¯”â‰C8tV æ&h¨¶"DQÛ³vš_;T³ÁG؉Z{ê;¨³¸¢DnŽÙ™³Æ_×^ëC¥ ûp„¥jà ‚n:‰íÙ‰à 7ûJh\ŠmÞŸó²(™×s³mµ&°¥q­—³lÎÙöõ* §Ì¾¹ùº"; "œù»L¤¸Ö÷T²*g+çì‡>¡¶”|3ò æÚÞBw‘³ ~¬ÆyïúÂá.ÅÆ²«4ÿ ÏÏ͹ՙ¹éà7”µ IDATØÄ¿ð*¤mAо¹ñí ¾£HÊ ÜE°î¾)9uw=•A­*xÜh-˜ÒvD›“Îß%Dà7µk¤‘÷®/lÅ0zKnÜij —²‘¢rö ‘-‘ }Ó=Dƒa¨¨Î­Zûªï©ŒéüF{è …lðDGØïn]EQ[ø8¥Î|%.¾V¥nše[rÐfF!ã®ï!‚Þ'FUæVÙöiQmr‡îëw7^æîˆE˜ª}DÂz³(q3…¸Ëngš\;ñÛó&—¹Ug¶MZT›4fg18OìC”9\뤈†o‘ DLlÉAÛÄ‘ šI|#Ì"ò.‘`}ómØ|S´¤Ù:h× v '¡-{:çu+ÇQs~\ÕúÜÀë2À?hwÇ‚)·€WJ§ ñmâNŠX@Äæ,ô¹4N„‰pç…cÆ@§#’ê8w·=+r>¤ z¬•j¨¦Vçf˜»ZU÷ïßñ¥W2­¢éíM í”êcônÇG$…Jʳ;ŸÜ´iS"À»íëÁÌ @K&ènzY†:¨î¸Z@…@…*  SUØœeƒ?×FNÞ÷(c›eœÓš´-­-aÜcN#o!Qµížš"µgs–¸Þ#xBífؤ×Îx8UêÍ)R{¶kÄ‘àOmG›eÑk«àlx®køî'ŸÐWò@¥ 1éb#¶ TB¾ ƒV*Pα6'~pjR|FSר¡S¤ŠO¶É/jP£‘€± vöNõ…E.wQÍæçê>¸Î¼tÞ?'%ª©ö‚ÎRH‚Oº¡mCW9D¥Â½ÕS•9ñš¨S¤Tæ¾̰…S¤†XéUß@F‹°¡vƒ/l{r& qÒà´Í¹Š|‚ÊHvq×1œm›i%ÎëÂæ1Ä{âʨšS¬õ w vž"5*ƨ£`QùM¨…¾°9µm¾ uâsS4ç(­š}&ª,›p'سÏ|¼am¼Iû†•ZÒaÛSu™‚6×øe&ò»ñ£0,ªYñ¹B—žAóÛy#Mšghš>vÄÙ—ò,øÏ5½{³3ýÙ‘Ù™ G2⶯øJæ·U(ÏùÖ ²ûÂÖþìˆmcï>¥õ;ŠKJg2Ë&ñ*/¬qî.x\2øæãZH—¶äÝ®DªÊ‚-$DÛcwJî{²˜x xr£5šÏÙç6¡ÿ…Ð…ˆDóïëGgg&<®]ýÙQs9¢ë¡KžæJÛVs9h>Ö•œ 6XZß•Î|øU/OÐã6X©@… dÌUöÍÐ<ã"§^°Žâp-°­$â¦lÒ+=¹-n1‰cfË囟ÙòL«hºÚ¸ìÐV4¹­vJ×h«r¶¡Ñ$I¡RâÙO„˜ÙRA; ù"bõ×`7Z3Tí tMh®Ø#Z^æ.–ÌæPa€ h 3Vû!ü¡$@Š6ñÌû³£Æ?[çBGÐLÕe­/Ü¡Žj„¡â(6y”pë‚•ìÀ(!dfzš›±Ò\oüìÏŽZš[]w 'ÃìÀèÌô„µÀœ*ØgÝ×ê››Dò7SÆa@@“}[6®¥/l çJsÙ)UÎÝEVúæÃ)ƒWæ®U05Ζ³W\ ⛄t±<³I•`Êp DvñÊ„“y$r:ÿ 興Dd3[zùȶš7ò^ W1ŒHt"A hÿF, ~˜ÂU/¼¶ºÞe z…¾‰Ž“àthD"ðœlâÞ™¸Cç«&®bÔ¸SÙL3„{ €qrƒ©h”qa#,àúËÕ?õÝÅæ;W:óq}BåUÁ*ꩈòóÊ€Pd:ª©ÕÙ™3â;T«êþý.¹ìº`fKÀ5:;ª )’œxæé'6mÚlfËìh#qa¡è¨WÞ1‹“{ ‹!Á»sMefú Œ¨ó£a€ TT Â Â€®E©ŽÂ"? ¾0´‹/ì.Ï\ gõ ˆøô¿Và @+ @+Q˜å‹ëç ~ƒ/ mâ {É3GÂk©ðp¬òh(d@a„/ ­* Ý¢ÂÙÜ"ë¿@»ðÓx-t=jÔPQÙ³ÝNGT剣^!òßÅ5¥xg Ý̺ãÔ´°IGüݹ™ÂËÖšXºV•ŸÀ™§×³€Ð] ´¶+I±ÖÄzI±¹½Æ‚õ¯õ§mG¯ô®Þ´k&¾~7'Ÿp»{UÙéPxíÈ¿D5‘kVüd"U·¿γ&R×½\}™ í$èmœøÉõ=•œê„h-^MÄ’Ñ6›eÑäûH ÛÄÈï'âõ…E®ÉƲ¡ÑÎkŽ¹Ò¶Õ5½3[¯L¼RÍG|wþ.‚e}ñã—G$™`•m ]0C~#1ò,-ATíÄ·—†;¹t“ ­E¤%x%pÚ¿ñfã[~kor‚FŽ)}{ùÂ-¼àg"âQs×£˜—ÖСk"¹ V!´ÙÅwôMië± Äù jçéh¤ñÄq"â°äªÔÈÙì#!ÎlsâÂ͘ٲµÏp¬á/Ï%tù½2¼±mç¨b×”'òºÄtrï”Û<Ȳ¬Ù ÒÏŽÄC ø×^÷\mk–v>eQ•Gð\D[˜õÝ¥#µáy`ƒ &üø®ÌæÍN;7es‹Ü¦Çtæ@‚,ø¬´ÔµðÖdüÌmYq2wÉs¦pZÜ,õ…aμsó©BP3:«ÄbÄû¼‹•ˆ5!¯¬)-iÿfa¼N‡ÇAÅNB·–pæmB³ñÚ×ãÌ;‰b}„‰_Áô‚ ˜ëÔ—ûÂÙÜbË%ñ´uÙÜd]"ÿpÙòSš[­ÉBìnÝê›g#;5Tˆd!,æ[g² V€&äÕN|-˜R¤0ü¬ø+m[êDÕZ› ¿.®­%D“‹©³ÄUÕÊìt€;ˆjUÝàÀ¥—m׫EMWq7ˆÊ‡k‰Fr\INHrjçÓ¿Ø´qc"À»íX„7˜ âÂÐZhm8* ð…*  ·T8ô,ξÙÜbã_ㇰå"Oߔ֢†+LËODó­Ú)M4Ž2Øšwˆò îÛ’ó´;tJÇ•ØVâ\Ç0—øÂö-¢ØVÀ¾–‰¤Á´­{¼;H‘[ÓvM3–­WW×K4/Á«7g//?ÂyP¯ ^‰ø%ÝÕI·Ù„__Ëæ®$¶]ïEøGtµ­óp¶ƒŠû†¾%á.h>áŽÂ1W vÈÏãärz¿µs,àš3¿™‰7ÂpÚD;Û¶^Ð\—­ â{ ^ä9éCgëš¹³:Îñ+hÍ0hÙø÷ü•ÄV)ߺ{•‡DN]5ßLDŠ"Ÿ]@p«ïI÷µ¿1ðÔâu ݃Z8hyº3.ìú2b¸»'ÓL¼Ýë5k Ã÷d„.|nã8®­‹Æ]©–Ù%ľV$Ä…?î–ß©tÝ¥Á5RVuÆ`¾0›ÿp3¥´%…÷*¾C4¹‚M+[T³yÊ<¦Ú…¨KT%ip~‰ËÓªVÝàqìÑ>صSp0U—´ÉÓ¹@•·Þ>4Ó¹ˆ©‚¶¢¦•$Ö‡™ÖÌã³| ºDhgA÷Ù·Tû´-VÇ6*/>„ŸÞ & ñ›ÖpWÝÀ™ ›[Ì™!.›[<]8mþœ.œ6Ó‹OiÝÅš‘³u¹‘™"Å+è» Ÿ·ÑÀĭî$ô$¡eàgί»`¬&r=œˆA|íl]Ã)³k[ò2‚`>$¬­øÕd1MxêfßÊ 6 ßÆì›€ß)Ì•ü†Ä‚ÎöDBcñ…§ §潌i·KŠ™À–’³×@nñtÃW'ß‚‰ R’ôÝE¤0ÖL89x•ÄÈ­A+¹îÎ?bs¬ÊÉD¼R¾5âoÌÇ™,´ÁU3PkÔ̓î.ž¹¯•‚Ú¼qhªª•@N¸1³åeÛ^©afKÐt"¹*£Ì¨lôQ9!Ë©§ýxЙ-³¹Å :6hÿŽmup`Ðe@…A»ÓéÊÛSW\&ÃøÑ0@…*  kTØ|¢â;â çŽD뀃1FÂ|‘£Ñy$œ£µ­ãù££½†÷“ù‘Õt@·`ª.‹r¤šõ…(ÎVâ6´Ûu+?Cè_Ø)Ï| gÞé!dº0>[bK6]¯Oϼˆsßú   }[V¯aT8^rKp® 5*<[2]‡€•XÆHðE6„Cµð…ý™Þ.,„ØJjdÏ]¬>5t… G6P­N@m â[]3ä'€NÂ2þ ­çT³ºÌ_@÷úÂNyæK8 ’¾Ï:?¬lÐBß6Ì@5ãÌó?(L Ím«/ €Öè°â%Ͼ»2 À¡A…1ÜÌ¢ÑaÌò­* ­$âñ§NŸ9züt"•™÷Ì)þâ/þâo×üUË¥•Ë-]²¨MUxüå‰Sg ‰D"]Ë•â/þâ/þvÓß’ž851-Itñ¢±vTáã§Î*ŠrþyçãЭìÙ¿ÿØ©‰U8ʸ°¬(ù~œ$@3œëW”d„FütNQœ$@£( ô7Œ‘€V€–:×õozDéfŽŽ:WNLLÀè^æ²ǹ¸6-+™»p›w.5óHD‹Ù|Ñ””ËåT*å+ÄÀËVVCùÚMаÎ48À·)F‘`ÂÿˆÇJQÆX6ÿÚ¼›Ñyºò\–J¥}ûö¹ª€W•qš®+Íèe+ŽÝlµ¶µ4/빦ädËi½ 7º­ *r$Ôô…Y‹'¶äßv¥{˜N§7oÞœJ¥ÊårÐ`…벡]iÆÆmeh´³ú^a×ô"§Žswc6ŨÍ}:gú,Ö&Û›m·R©¸ÊŠ«;ìe"›vôš­om’ èñ¦ØØât»ûÖfÿþý[¶lá\«œ¾Xoš‘o«l< ­›bè/µ!Ýíb4x—ÝSf j+ø§ 3"¤E WG/+Ýê×ðom¼Ó…¶FG›Ñ÷6Ð+& §tLD¢µ_3Ç)ÝÙÝ·66#˜&W–î0£—­¬vp>[k¼Ö®ìàk#"(8Æ]˜PµZ.äO‰«pµª8pð²+^­Vç4­jÝôìž#‹GÇFº¿îÍ6ÍK§Óq\Wa+bmŠÇO=s¶°åü5ÖM²œ•ÌÓO=ºqã†DÂ?Òkªpnpi˜¯6òpzj¶]ÚßµÞVg¥\-Ðãq•ôRpˆ,è_ØlÐίeNÊâÜTÐ|¬»t‹gˆ©³¦¾æ6¬d½PqRöÔ½hŽÿfßÖÌOàÜꕾ£»µð¶Š˜—«àö¸FX¯U1çå qa Ìî ·vnKÏžÀwIÐàóŠßˆß.¸&3[£Í› qþÅ#kbÖŒnæå’X·â”Aß™„ à :xjÉ ©ãé\˜Ï8ê‘ïÒ;ìŒq÷ìå'D҆õ|îáÆ 4 Í%Ti‚pXÛ½oœÁ7"a}ì&x‡Ø­¯œæí© ’ï S„™‹·[‚¢4¡ÃZÃyBåµÕõiUÇ=Â7ǘ½#¾íJüù­à³_ˆ/ˆ ¼ÁÜI·áºÓnÇn/Ý ³,À€VûÂNyæK8óNÏùþÇ`V@·i¥"¯Y:pÞºa×bÖï…ûú'h Û/ß #Ðhšvøè‰½‡'û“qúÂqpû¯%„üÅÿy°‘ŒÝÍ…®aºX#Û«.YõðΣ^?]×ô^ˆÜ2F†0x Q²jùÒgŸñ‚5Ëp¼*­nv™BTU;ç×\¾î§O¶è§O¾ê’U?}êpov'W›¼æòu¦n&ŠäXÆzÜà]C"-«š}¬ÃÓ FI0Æ«€ÔGD /Øb«Û|[§³l]ÃÉÄ&Í^¹µµ Wë„àÚí›!>¾ÿÚí›||¿±ÆöÓHiü´îe®4~¾æòufµªš9˜y:ÞY˜¶ò²g%Ç&Vã˜Æ·ÙÖ–Òvšl³&ëhƒBˆfÑK›úÙÅP@AÍ…}a›n Fl ®™¸jz'Æ.TM3—w¼ú¼<²×ìêæ¦k·oúÁ#{UM3˜+­{™+ðÈ^c¥¹‹ªi?xd¯±Õ¹¦;ƒÕV^và¯tµ‰±`5‹¹lœÛA­§ÏX¶¦7316u´ÁAM…õˆ•ÍÍsCöˆ„à( Nú`ŽV†ÑŽ YØnŠŸßûÙóo¾f³¹é{?{Þ\¶¦7;Wº.˜Ë®é;4˜Ã7ŽuŸÒš›5¥×²‘lÇ«Ï3N–¹Éõ(Ýap@Ñ4É¢r^ÓùˆŽ’˜›+>ýô³× /ljVR­¿Eµþ4—­+ß|Ífg‚·]{1g/sá;>óæk6çÁg\Òé¦sµžQe³úΔ®6ñ=#Nóºž,þJЙ×~9ÂÜúú2—]vq&“ ·/Ìñ¤þ鿲%xçŽmæÊwîØÆqÄŒ”o»öbg&]`:/뙕µVœoß<æôÇá w¾/±`ÑäöUáî—æÒÉ-Eóç¼éJë&gðÑHó÷ßBd/çî®v¨éœvðÚ*n¯ä\þûï?ñÎÛþþûO˜›ŒŸ¾‡ªÂz”$ê#ñO$aŽ^Oi5aýiÍ­£•ÚúÐüoïÌPÒ¿½ÿ±ÿöÖWš›Ì3±l¬÷ÚëÞtåßÞÿ˜±ÕØdìâ\Ó‰v³ÖÚfÁ•®6០‘egÁÌmpPSa5º‹(#}™Ìe—^œÉd¨Z-ç'‹«pUU8tùWWË3ªV±nznïÑE#»—q¶I§R®ëß÷Ž«ÿç?ÿ¿Há•U„‡è8b2/?Û^6x×0:Ô|üìÖu©3“3›Ï]iÝ$ËÉD²ÿWO=¼qãú„"c`5wxéŠ Á¿xÄê_™ ÝV/xFú/¯5—ïû‡ŸX75Â}ÿð“÷½ãêûþá'Ö•ú/¯ð‡«MBà4£—I{ÜàÝ"KUµ*K”§–A&’˜›+>½óÙkF–×ûÂÔ|á+¯®–¾ð‹ð…ƒ±h$ #Ðè:›+•—ög“¥3“3›Ï©÷…•d"Ùÿ«'…}aB!ÅbiÉòõ#ÑJ^>;#ÐÈ]³,wÁú‘—Žˆ*ÏL&MyƒÙ‹7]µ' ¸,„-0Ë;´’po0ã©xÉc0…„/ ­* ­Daø34_ÚÅö’gŽ„ãÙxÉcP…„/ ­* Pa€ h>ÑÏ#ÀV¯Âah74­ £Ny &Œ |k@£"Œ§sÐR Â¨0¨0@…@… Pꇷáå9h ¾0´‹/ì.Ï\ ç¼ÁŒ÷ê½àÆ2•¡Þ`F<š/äˆH@+ üõOkbæ·ºÒeÞ¾-¾þ T ÂЫà‹GÐtØÂ|ah¹/ì”g¾„3ïô$è76²—6j*Œ4_Ë ÁÓ9h-áæ‘à¥ÁD¾0´¨0@…* * PaPa€ ˆ¼Á Íga:øÂÐj_Øâ šT ß™À™µþT ß`€vò…½´ž0ˆxÂ$'ì¢Âx8-RqD$ •„úâ/… (’ð… •@…* PaÍóH@óað… |ayæJ8F«€—<SHøÂÐJ Â¨0¨0@…@…* * PaPa€ € TT Â Â¨0¨0@…@…* * PaPa€ TT Â Â€îFilw&°º æ¦u᥾0´¨0@…* * PaPa€ € TT Â Â¨0¨0@…@…* * PaPa€ € TT Â¨0¨0@…@…* * PaPa€ »‘Éô\6t1Ós™êf¨D˜×ÒEÇOÏìÞwh ?SèB ž-U*ՕˆÚT…sY*Ñ—Ïξ<1³è>Ò)eõò¡l¦MU˜’Ëöç²ý8U žÎT Â Â€^@ ÚƘªjÕjµÓ+’H$E¦”öN•»ØD½y6Åk îªUµXª -Y´ØxQ‡B;ôo¡ŸšϤ“‰„Ò#UîbõäÙ$‚µ† wªªåó3ë7\Ș^.—;½:ýýÙþþÇ^P¹ªÜÅ&êͳ)Rk¨pW1===<²”1½Tꆬªj:^<]8=<<Ô UîbõæÙ©u8ðt®Ñ4}jª022V­ªÝ`Y45UÐ4½GªÜÅ&êͳɯ5|á®B×õR©T­Vu]gŒù¦Ïår…B¿¦å0ƪÕj©TÒu]–¥N©r3-­‰|ËïºI°¾‘ŸMÛšvk½"µ†/ÜëXÛ±³M£Ê=Û* …BG§POOP¨pOtEŽxÙÒøŠ±àµK§WÙ«j"ÙZÓž&âT­#°«måo¼ 4 D$ÚÁ{Ï|>ŸËåòùüàà ñ×ØÑøi¶9cÙš'cÌ5WÌe3¥ë.¡+ÒU6·ýS<[ÛrËMd¦4Óó«f]Ùä¢:“qÌn³­Ñ¬+#iöÔ¾0ð¯ÁÁA[K —O×W™ŸØ–­ó­5‘Y³l¾Ukaëñ-‰5H±£jöð…AŒ}UF[{¥´]<šP‹6±T¸ÝÃn蜽îšmi¦¦¦|ï ]s¿S¯HgU9h1ši"³ŽCCC"µhùÙ4Ê<88h=;®gŠ Ф 4-"\…)U”„®«L×u]‡PÆÎt¶íÔÔÔÐеa…H)˜C ”Ϊ9[N{VyhhH<[ñÂ4ÁD¶’8ËæZ5ßúÆz6cjrÑ6{¯Z뺮몢$Hð‰&ÂøÂ²Lc”1J@,PBhXW¶099iv­ÉÉIW“ƶÕu/ç.œRKíÚ¿Ê“““ÃÃÃâÙ .7ÇD®>¿jÖ•­:›fy&''9fçÛ¹ñ6´ÖL'„0Y#ŠaTX¢!:cº1Ɉ#(µÑ^]lË^+]ÓønåïÅ­ë”*ÊVd¹9&rQÐbÍ/*¿´¶FÛ‚ÕšjŒé 3Þ!° SB%IÒuF(aá˜4˜u­mª9k×ÅUîbõæÙt¯5#ºÎ$I¢¤) *Q¦ëLg!‰˜"”(²ô›#‡V­^£ªíø&þÙ³gƒ>©H$”#G)²D©Kè¬ý«Ü"4ÑÈȈëY딢F^àøkÍÓ©Ô´ˆ„$Â%º†§sq$2™ôž=ÏŽ-ʤ3ª¦uz…Ež™™Ù»g׺µ+ #.Ïu»®Ê1›(­r{_¬Cb;¨¨M«µ$Ƙ$…™ñ2ÔÓ9‰2¦Æ(œáØÎ÷ÐÐàÐTá¡ÿïyçoY»v}§×èÅ÷ïÝûüò¥‹††]çfí¾*w±‰zólòkÍ#„É¡|aZ­–&ÏßA×Ù™3«×nÒª%Më¹ÏÒ4 ]× …é'Nyzz¦Ó«30]ºdÑòåKs¹I’z¡Ê]l¢Þ<›üZK’"'ÒGs`llT ¢ÅãkûÂŒ1*IŒéŒé c$bƒJ478H&FÇFŠÅb§W'“Éd³ý™LšRêÕlº¬Ê]l¢Þ<›>µ¦ŒC ø€.ôxaBA<"^!¦´¿/Ó—IwÁãfJ‰Hüª›ªÜÅ&êͳɯ5c„1½Iã…)%•ñÂð„›$Æ]q¹c½Wå.6QožM^­™Î‘¨¢²a}a]'” ‘#2Ð4_˜B©dŒQÆ»sPaÆhsÞ3î0jᆀé2ÑÃ_BÄ…©,˺®ÂæTB(•u]—e™6gN5J)%Lg„à­ „F k’/Læg¶$”àéÔ4Wb¹Ü `IDAT˜±¦T£”Ê:Ó cx::Ó) ‘óDO’¨Ç¤¢Ð›Î0#„I¡æ‘£Â”bja° q¸¸°Ó@ T Â ÂÐ[(¡÷dŒišV©tÆç6’É„àË…U¯î®Z|¦Í¡ë›\$ /¤ «ªZ*©#c+—w„™òùɳgŽeÒŠ¢(ÝT¯î®ZL¦Í¡š\$ /ðwç!ª¦åós›Î½„1]U;ã[¹Š"BìÛ98دÈr×Ô«»«‡)@“$Ølrº¦vûÇÚY"T ×ðÂ|wŽ2]˜]´Z×µr¹ÒA—åt*52ºrêìÑááÁ®©WwW-”)’|S€æºÉU¦§OüüçÓûö1Uͬ\¹ìꫳ+W¶}Ã#ét*tà ütNÓô|¾0:º¸ã\ªªªŽŽ-Êç šÛ•¹sëÕÝU n c ÐÂ5¹êÜÜ/o»íÛçœsðk_cGŽHãããÿò/ßß¶íÇï~÷ôÑ£íÞðªjè†âÌz©\®V«º®3±÷˜s¹œ¹\(Ze&ÆXµª–ÊeÆtçå'h½r¹\Tui<«È«f[ßY‹ÐŒ"¦Íêkµ&Ç„§:˜{ùåÞò–ôÙ³¯½í¶ìêÕæs® ßñŽÝý×ßÕ«^ûï,Ù¶­«¾áÅþÃÖÍ"ïu lç¨ùgí¾ûî#„|ðƒ4Ÿ;3ƾùÍo*ŠòÁ~'¨s䘉±¦ª?~×»2/½tÑG¯—I¹rìa”hD׈ªi›ÞøFúÿøÓ·¿ý>š]¾\Äè,Íi¥³›Çé‚YWZÓ´?®æ¬ì¸~%Xg2cÙyÆ]]ï›o¾ùæ›o¾÷Þ{Í•wß}÷-·Üò‰O|bffêÖeìý»¿+?þøš+/)J3Kßõži2S)ì¯æLŒZòû¿_J¥]xáÀä䓟ù GÓ µ5è¬žÕ 3lÉòù¼±Ëåòóär9[JcÙ™¦Aâ«—W¥|Wͥͫf®ñ­ '™ÑO¬+óù÷9BÈM7ÝÔß߉)@3ÝaªªîÿÖ·†e)1TªŽg–¯ÚôáOkå—Î^Ó'6nLo¹ ìèÈÀÀÉý×¹‰ ×LŒ¦eÕkó&3°í+¸2¦†{D"ŸÏZÚl)Í¿]Ó ùu±Ù§M°Iðtø&̇1vÇwLNN>ðÀ>ùÉ[Ž;öõ¯ß;::²cÇŽ¯|å+ÕjÒÖMÌ=[|î¹%i&ùuñ‘=‘Ê+oüÒe·|czüÄðÆó÷>ðÝ}ŸûÀØé¢V˜ÉèdüñÇ×½éMáZ£UXÌeñ•ñ¡4Y†lÕ *JÇÕ‚ÓëÒ`•UU½ï¾¿ü£?üØÞ½{~ôÃ߸aÝ\x×Ý÷@‚»P…OžL1¦¤¥å±¾òÉ'¿üû“¯ÿøgÓ¹áçöய¼}ËXµ\&•~’š&¥'Zå0µ£ :áCCCSSS¶m뇆†Ì¬Ì;ã§ußo6w¿¹pMf])RÓ6¯ÚÔÔÔàà õ,¸žg¶¾É8ûè:¹ã«w~é‹_8sæåÅ‹—|òS·ŠŒñ@D¢ Ã>‰d9IÕˆ®U#SêÈ¥×¾ÙØ²îâmûÖoaŧ“%"Ÿ$‰i"+ŠW†œqZ ÑÂÖêFˆ4ªF^ë‡ò Y»®SµÉ:×*tn½œ%¶‚Œ1EI|üo¾öw_ÿGÿ„$ÉPØ®$³bE¢¯¯\$Å)rxbäÊÛZ¹ùÒ—~yÿÓKÿðÈëï~èôà¥Õ4©V %${î¹t7W¦æ±i‘IÇû“““ÖºMNN{™ë'''‡‡‡]½$ë¾æŽÃÃÓ““® Mvm§yrrÒµÀ®5u]Ù>U³&3Šj÷‚¶5Ö•^¾°™¹MÓúû³oyËÛ*•Š®ëAK:‚T&3pÕUåýèÌ1²ì÷?¸äüKOþâþSÿøŸûsÕýßV7½ýÎÍïýÒ®ÿC¥@K—]r‰—’Ún:ÕÓ7¥xV-Paq¼ú˜¹ÞšÀ–ع¯s/j~¥Äk*²ÐÚªqNÈ."u÷B×õR©©ê∄¢(K®¿þä\šPÜó§JñìäSÿkp¬Jt2ó³»öOŒŸúÉ¿—^$²F]}2•òÊÐëÚo^›ù>„ˆÓåSOZ ¥tÙ•WNô£Ê=÷äO²}öW™eDÍ“D–PJNÿúïfv“¾YÒÍ5+ßû^I’‚úF!|ˆ&;@aTX–¤#G­^½FUÕ:Ù E>rä ì};´^Ý]µÀ¦H(|S€v J¤Rk?þñ#„¤þâ/òÕ™IRH"©JÒ2JHbÇŽå_ûZ_WV?° S*õõ÷í}áÙ±±EétºSæLQyfvvÏ Ï®[»‚R©kêEQd©[«Æ33S€¦ôŸÍf7Ü|óÑW½*÷7“ýå/µ³g!J_Ÿ¼íâÔ»Þµì oÈf³¤ãþ‰„úòf~á™Ù¹#GŽž:5qþ­]·¾#ÚÄáC÷îyvéÒ±µkWeûûº¦^Ý]µ8Lš€¦é§ÆOÿæ7'_uÕë]øu]/‹“““³DU3‹ õ÷÷Ëí=[´¢HssÅG~hÝÚK—,–åZ<<º&Œ ëº^(Ìœ8yj|üLaº3^êÏ d—,[¾li.—õ -ub½º»jq˜4‡¹ð7~ù©ÂÆ}A±Xš™™-;ãùu&“Îfû3™4ÿÛPW¯î®ZL¦M G.ü_þë°Ù±;et&¥D¼gvÖœ0]\µXMâ¦.ü_þC~ñÈÒ軳Íwk½º»j  [__&“Iwý›4 ^þ1^€ +Á € TT Â Â€ndn®€–IðλŠÅ"ÕuýÌø>XšL±XZµv«T*ÍÂÐ|_8“I‹3ÒÌLÐ4,Í_b†#*dvvZJ$3333Å2¾±KðλJ¥R__æ‚Í[uUM¦³tròeF¤üäé©©—5U_½j),1Q,–^>3%+ÒÐÐâá±e©dúÿmzÿ=¹mIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/manual/html/_images/importdialog.png0000664000175000017500000006076214126044351022121 0ustar00jssjss‰PNG  IHDR×à} ÙsRGB®Îé pHYsII1–\jtIMEÚ ªS˜tEXtCommentCreated with GIMPW IDATxÚì½yœ%U}÷NÕÝ×î¾Ý3Ó³/=,3 ›€0†ˆD“Hž\‚<¢1&jÄ‘‘H€ ‚»àÌ ¢À€„<Ïózùøø3AEƒ‚Jˆ(…˜}a€Y{¹·—»Ôr~Twuõ½µœÚîÒýy3¯¦nÕ©sN:çSßúÖ©oÑçžß6o~_W.—L&)Sc¤ЖdFI‡@Û¨Ú¦•xrÖ¶•ï€6fÞ4”RMi+•²¤¨±hœ¾väõy…AŒ(REQeâ,Á4 QNÝäK]V„òV—z8(ÊWuÊyJ¼ m\¤\Yqµ5å« å«1uu>öc„G;Y»Ú€Œ0ÊQ5ëúÏØb™l憩_­ÂåÖ(„4€AÀ¸w^‚ÝJkgÙ«î%x®Þ 0¦(’ªÊÑx&‘„d2©H7ìãÀ(¥„J’422\­U(¥F5c-i3Öâ³”âò"ÎøL N»ƒÓÜ`ÓãÔÙ d¦éß?þ M+X—2@ öi(·Îf†û*Iµ‘áÁj¥BÕ/™n$xf&„/—WJ(•$idx¨Z­h?ùŸ®lÔRÙlZ^‘*‰D*B© ¨r\!Õjåà¡ÅáÁ±ñщ‰r"‘H§3]]=K–.Ïd²A[âÌØ9B·H9ÍÁ‹vY˜EÌ•k½Elî2hØ0µ‚q:·û‚ùjFW—77ÊAK°»ZfªPZ­”Ø;2|rlLÂÙîKWd²yÂT.¨”Ø72bÌ$ÓÝUX²ly6“«ÓÓ&žÌäàþâÈàÌLz/5É$TÚNÙ–,uT6E•£Tˆ0¦Zù‚—.ûÓÒhù?~ò­õëϨÉÈܽçµ7_òAóÄ­+V̳¬¨ ?vô¥—^ؽ{÷ððÈØØ¸ªª”ÒT*ÙÕ•_½zàôÓ×-^²Œ1•Ð)q“ù¸Ê®Á)á£2Œ1>ï°Eõ'†¹°,l…˜8:ê•ÔA‹ÉŒšêÿ§–ºÞm™­Œ1Wåúwôº“`æå>Ä»!Ì!” G¾¶ãÅm–CxÍ™K—®`¶BL©pìèë;vØd²né’éL˜U&ÇŽ¼´c»˜,Y²œ1¥ ~ e;cñ’¥LUíNS#6§aÕÀù/¾xøÕWÇ!ŒÆ!DeL ”1vóÍRºô“ßb+Áâ¾}»ŸîÙ;^ž7oÞ›/¹´á¢BOoi´xäµ×vìxá7¿ùƒçœsî©§žèe=ls8HïpBÌ)i>b.Õ[‹n)MoꩃÉ€iüŽÌ õ7GDð¼gÏËÏýá™;^ž7oþ›ßò' û …R©øú믽´cûÔ.~Ú:«“E©°wïΩLæ½ù-²°QO¡·T*yýµ—^4drê:«ë8¥Â¾½»Ÿ{n:“þþE…žBi´tä5cMÎ=͵˜¸~.g¡l…R©täõ™ÊvÊ»SÅXÄF'V­Z·kWäµ×¦2*RBˆÂˆH‰@)!ìç??ôÔïÔeËθæls­zæé§víÚó§oû³7œw¾©·§··§wݺ³öìÝýã‡~ IJ>ßÓß¿ˆ15 sØù™õ ×3…ØŸ_›)«W5n£˜Mj¯Ë+ÁŒÌQG™¹‹Ù¦ âùœ»ʼå¨þ6˜Àþ|Á®$xpðÄÓ¿ûí®]{þôOÿì¼óÞ¨m{íõ×-\X(ô®[wÖÞ½»úуÚ^´hqcΔ Cƒ'õLfè@¡Ð[(¬[wæÞ={zHˤ°há"uF&“5|úé™™0ML ½=…uëÎÜ»w÷CSb²°‘©mˆ¡g¡lÌxD{öî™T¶\O¿Me›’V®X®|ýõ¨–ŒR¢¨”¢ª¤RQ¿zÛ«ÑèÊÏßri2)ZUU–Õ»v¼ôÒÎw½ë]çœûUUÿ­Z¹êýøà¾½ûöìÞY.OXµT"•O¤ò.‡„ë±Odl’Ä™†3:K,žöV“X<‹§cÆ%£±¤‹ Yã³"ææy³OÎf Ìnk|¾ÅÜ>•³xìÆõ|Îýã;§cpÞyz3sì•Óuäìš ^ãø=§’$¿üò‹/½´ó]ï~÷¹çž§ªÊ/~ñË‹Þtñi§Ÿñ§~ÙöíÛUUY¹rÕ>ð·ûöîÛ³û剉 “Ldùå“™XéÀÊU+õLÆË&™È²²s玙( ™¬\õþÉLvN˜e!\¯lû÷ïWUÙX“ýû÷¯Z¹rRÙöì,WÊ6ÙEl¬µåËE£•#GsÚ)›¨ÑTLóÓ“þuøøñþ?¾8ýÖ·öZ_.èðàÉ?üþ§žrʪU§¨ÖΑBOïúõë·¿°cÙ²•Ë–;x—\ZÄ.üñDÖ“cÒ"Ž%Ò®QóœkÕ MˆkÕ Í(ÖôWª•½Å3­J+c„¦¨De*S‰Ê˜¢ÆTÕº/R³ÿÕgMël׆ç|Ôª!xæS…UësÑ̬-µ4À-rdt:9µ˜#]ß!©¥ç´ñnƒ1cÑV¦Ñ®¦Ö'ajcŒûîQ3?ýá÷8õÔS¦†ð‘£GÎ=÷œÏÝòÙ­÷~ûÓŸþì~ô !¤§Ð»~ý›´!¼bå*£ÊS* ×2Yµjµô z&ËW¬d“*ZW“ÉL¦Jxò¿ÿûMë×Ĥ ‹Éò1 dŽp²8xðœs/¸åæO_ûÉk´_Ûtû¦Í·ïxá¹ æO+Û²eV•‰Ø¶lYw,¶âøñ˜6,“ÑɽŽaÿëçãñî›oEÑR³(ŠÅâ±cGß~ÙeŠªØØo¼pûöm#ÅârJí¯Ó‰TžR™(%R9mMe¢”Hæ!•r‰¢/VRBH"™Õ3©–G !qãW+£ÆƒÒìßje¬Î.žÎ­2›úK¤k•q¦DyRdÇÝz'Œñ´MQ+ëk¦–„©VÑ—§RÖ¯!„ÈRe†tR"PA(¡"œèC)!„zpÄúxcŒÚßxò„ Ø´.§7ºôüškÇÕqx4¨«jPZ,Ž;vô²¿ø yj_ñÞ¿¾â½MÿЇ>|üÄñB¡05„Ÿ) ˆáᥴX9vìèe—ý…¦‡½²lÙRcyú=Jé”fM^JÅâ±cG/ÓÄdª‚Ÿýìçîûö¿\ûÉk>ó™n:SL‚šV§l‹/üìgoúâ—¾ª2öÉ6oþú¦Í_ÿò—>ß7¯WQ• .ЕM°²/#6å’ÅÉhtåР(U›²BÿíÁôùçGÿâ²ê²ee¡T(•Šñx<ŸïRgªðøøx:=ãæ]„D".I5Y–ÁÙG›Håt!Ö—Éœ&ÄškB¬/B*åQMŽãɬ&ĺ"ë¢<õs²|]‚²OdtQÖÜz‚Ze|Z‹é¤›"OÏbÞá0Sp“ÑXÒÂ:fS)'Å7KHµŠö“P&t…ñ%¶IsƒñtFÊ?ˆ~¾F›'ÂŽû3w;1eqÏØÐl僧ÅâäfªbÜöøã¿ºë®{Î;ï ÝÝ“£[õ!,‰‚`ÌEË$×Õ¥ªÊ+¯>ÿü7}æ3ÿ¼qãǵí[¶Ü±eË7žþé æ "­Óƒ”Oe¢(úŽ÷}û_Þö¶?ùÆßJgÒ¯ù¸©˜0Ó»ˆºƒu7;ͨl2!äšO|Œ1õË_¾õ‰'~ýÄ¿ùÒoùÈG>4Õ,SG¤È5/0Òx÷®ËߢEäCJe2¤R•R‰É#¯ÕÄ÷¼'šN«ù\ÅàA7ÑLUUkµZ6›Á8Wc||â²ÿqù£?ûq"1ÃRëêÊ˲*ÉR<s´+Eý@*%“å’ßq7ó¦Î(Äš›:‘µ:Oj±¥›ØäàŒN‰X<¥¯!.Ü‘⫯ŒNÛËF㊺9ã¬|EntÞS?âÚ¼Wj˜¯’½¿Ä\–†þ’Æ Š29„A¨ó$|éK_Éår7\ÿ)ãÐîêê’eU’$1×sQ6¥”©ê’Å‹>óé¿ò•Ûc×\sõ–Û¿±eË7¾øÅ[æÏëÓ²Ò3‰ÇczΊ.&tRL¶Üþ-·ã‹_¸å£ù»oݵu2ÃO\m“Ú”˜(Á3•ê‡͆ýú‰ß<ñÄoÞöÖK?òáÍl–üäÅ¢¦—„ˆéPÓ’Š"ùÔuU‰ÉRU!„çå•qqPο&Æ2”¤„™¬™Œ ‚Íæ$©V­T¢Ñ¨¾-™ˆÿì?~‹FõkÚ”¾Ë©T*OMÿö2kãñåmyÛ²Mmdã_<‘ÖLc£k‚ßSlDÓb‡§(µ²fOù(ÊZÎF—EÝ4uÒ/Ìc^ýÂlÊ·Á¬ÔU÷•2fbUS7æ6Ÿ_˜¹ô ót ¿°ÝÔ‹ß3¹u^^Vï6ìg2©„Z]ëXÃŒljsE4=j&ŠÆ!<­‰ƒƒCÇŸ¸ç®;W¯0ŽâZMš†G™løø?0ƾòÕ¯=ñëßüú×O~áó7øïþVUÔ†Lt`¢.&ÕJ4{åðá-·ã Ÿ›ÜqÃÕÿÀTöÕ[7½ç]—ÏŸ?ßJL‘à™ÊVÕ•íö;¾ùįŸ|ëŸ\ú‹_þç7¿yÏ'6|¬QÙ´YÌïáG¬äF[÷òÉ—Fj¥ÅÉE‹2…¾¼òÊè«Û‡^ÎÅ2 úÖ«ŒTk$·™Wƺ{zT•ŽOŒå²¹²‹Öù($I¢‚˜Íæ*¨Îõæ{ ™£§x¦F§ !Õʸ©äê6r­:Nì§M™É<ÖÑklí»0>K"Ä¥šGxÒ%L]ú…­g­ïð ÿ-1Ÿ¯ò{›žÆköòÌOž2È]Ìz4ßÂaŒu÷T•NŒesy}[wwî±_<ÜÓÓcÅúaRšµçdRŒ™|üê o½÷þë>õÉ¿ÿ»¿Ñó‘¤Ú¤­o¦Õ¤GUéøøX.›_¼háïŸ~rþüyúŽ¿ú#ï~×_õõõªª"É5+11u¹{è%uÊöõo|ëëw|ëó·|úÃÿ·wßsßWoÛ̘ºáãÿ`<"*LQLë™nr3!>2úÚ‹ƒ;k½ÒÂt¡T®}ׯå‰ù¡x”B’q+›ŽBT¦äóÝK–,Ý·ß™ëδ?®×¾6¯oA6—cª25é€ÙöfßSÉ\¥\4Û‹6Ü@Ö½*`þbA<™á®ƒ©òLßÑת¦òÍjÕñX<=厯+HÓn]‘c™Ec)BˆT›jÚòL·2³f¸8»sèzõ×Ò 3 VÓYð æp Æ|‰‰61¦jCxïþ½gžy–¾~bbâ=W\õ“ÿ»Ñ©øú‘Wçõ-ÈårÌ ž„0¦*S™ì3fòÏÿ|Ý_þåÛ×®]c|tÿú‘×&3Ñžï1}j‡j“³!½}…ºgþú-“l.gxÆxÚ‹×#1SÙ~õëw|ë–›oúЇ> ¨ÊÇ>öa•±Û6}ýï|Çüùóf(›ES öú6V{öõg_8¶RòÿvÿŸß¼úäâtOl!d¢F[›•©J6“½hýmßþÂðȰjM¹\~þ¹mg¬;³§»k²áüø³¦ljdž¢i±ö7‘ÌgSÔeQ-—!ñ¤ÑlgS+§ŸæBª•QBH<‘šÜf\™1:Žu…ùôY§©¥Ú3=íùžþSb̓l0„'!ÑXJ—c=gí±žõÔcC…ô)ÃfÓd™Õ^®fâÛi¾uÿHpÿ3gÞÀqOæ0mÚuy–áô¦2Iì&ç†ó®i_.›Ó†ðˆa'‰‡~ôo±XÌd÷ô0¦ÎŒdÌdxÈ8ðO?ý4SèîéfêŒGÆLU²Ó5²“ÊÄ”˜t[Îyõw_6SÙ†-ZøÔoÿÐß¾_¯ÃÇþáïûßÿÙ××[.—ŸnûëÎìžV6Ñ¢Š"W’Dg˜¶øÅõúÌÞ³nºèÿÇ¿½;Ïýæ¿ÌFóe²BI G˜•E#¢Ê„gžùÝóÏ=óÇ|q6k23¬R­<óôÓ§~öékÖÆ£†ÉÔƒÉDÉôT¶¢Ó>ÔCæ.6¾"<е8*îfcŒ2¢*Œ0•©Œ0•)Œ¨¶3ú©{“™6:âmç SÊ|ù…ÍkÊxýÂÔÒwÏqìÔá]ì)ŸµÕ!ÒúžÀÌfÚ«AgÜÃQ+¥î˜™Íyý!PAQ˜6„ßüæ‹33]‹SöGåé§wÚégŸ¾æŒdû\AùÙ£gžuÆÒ¥K㱸惬֪ǎ{ñÅ®¿d`` *Š4£½(uùTË)#uΆ#s·ñÀ¨ƒã”5Žb·ïéRÓnF©UãLú€*ˆtÒ<=e˜úzK˜Ù¨Ãj€ó×ç{½þ"9yy<’æo~³úÕÌÞ ï4gH ÆÔH4zö9ç ‚ð³Ÿ>zæYë–-]‹'´>R«V;:5„W§’1U‘M²U•Hd*“Ÿ=zæYë–.]Oé@µzl:“d¢>“©ŠÈ‘HL“ŸM‹IbJL*3Ä$›“ɇå4¸‰èŒ¢ª²‰O)ÛÏí•-(ŠdîÈ4·…gr²|réÖS´å úÏûÅ{­IB&ÁTF4+XViD00­Å‘H\eÂÉ“Çó›'^=|@UÕ\.;11!F¢K—®8ÿ‚‹zº{D‘(r¸1ílåʃ?Ó«iìÂ~å6S½[ÇÖB½TÌK¡Ôk+´Ì] ^Ì÷LaÇ gèNQŒ* ±Â…î1"¨SV”™ÍGÄHLµÍ¤§»'"Ò¦XcM"qU¥Îb¢H$¬ÏVLg;¥l'l*#ˆL‘j6ÙÅ“9M…‹ÖñVØiÿrÖxuœPúýw9›0ªOŸ|®®=˜a‰X¼\­é “¨1¬“a7-Øžá7eŒÅ㱺ìI(%lƦ©©5Z-¡õyNWq*r#Œ1B Õ[@­ ÿGµz›6Õ†ÊéÿMÏΟQ©fcÆÆ1¶€Þ:¬>žíjøÿä/ª½ð8ýc:¡Œ*Ë2¹UŸŸ2c…öƒMnez*JcѨ$Kú{@úDJô¸Q“;i…'÷Ô·BÇcµZ¿V>ù$Y[šš+B)aZ6•˜Rª^’HÄg&ÑŸOfl•©F™<,6™éô±Z©U§ÎІúÆèŒ¡djJK$“uß^oðHPB‰Ð0¨nª 57øôffêäg9ê­&ZŸÒμR-@Ó|(uc»S[ã•:Ú¢f¿©+Ó–çw_Þ¬³ü`§Íݰã¢Ñd`/sY™ŽÖ¥ju€qïl:sÛÙúæÁb¾ ê65–Ç,oS&ß@©óHDHÝKŒ0¢8¦ÿÛ^êAr‚&êÏíëÕcÜt‹vñ&ÏÇEk] zx-S¹õ¸’÷NÆšyú‚ý‚‰‹š²Œ4«S›u|!{X`ƒYwj¸(Ã6¤: h&2o˜3Ë ™l06ŠÌl$•9¿€à¶ÓfõI_#'Í _y ×›Ó.ô×½Ó¸}ô—pÍ9l†?0V#˜LƒÌCÖb“ S&ÊäâÝ»}˜©{‚ÙU¬AŽÈZ‘)ÿ¤î2Gõd,ÜñÓ¾–²ëX1žz EÁÜÎ\‡ðgÔ£YýÇ×ǸÃPá¦Å&æñg_»jr³s¿¸æî%:f!Ƕã­ ³QdJËx RÓAïüílõHx Žè3­ç @ሯû1ß›MúÛ|n-&VoŸ!Ç”ÿ<òyÜÉ1iüŠgEv+ʼºìhqktÓTÛ£²¦è‚㤧°•7<ñ Óøí`ýÕU˜¹°g¹{3½Ë±WÙµˆ:‹²]vic; 2Ý•×ÝBt°àvòù~´ucº•]WhŽê/k¡-Ü®Zìd‡!Ç^ d÷62‡({Óež¾ë;‹vñ³p2D <ÞÔw²øv¼ýkã‘`­ëßhq@§ÕâËãÜrLÍŸÑØºMY}èGN×õòÍ–†:QWÓ\<Ì›e¯œ°`Å5ôXpâè¼ÅÏÛtöO‡ÜfúÛ¶pàZkeÆ×?©ûb,¤×n76S‘ùý3»‘ëØ3+]¶+šñؾ®ú7muÇ }'ìàw3%ˆ9o>gD¨¿^¼-õ·ÝTØZ‹‰›ˆ¾ʱ.PÔY;©«š8¨¬¥"‡/Ê67Ÿ|“9û6m×!°ã!¸ãò%»ÄëlãŽ_'JÛÝŸµ› ›i11~ÑÕ­¸áÕ0Ú‹ÔAEøg?xPdâÚÜ8kúÌISiÀcªÍ]! c¡WÌGðâ&º4~Û·ÛE:¡Ãûw7 ÄÉ@æSIEv6©—Çi¦Ã›Ò`Ç sãs mÓÏZs¹ðô~ øP|*o‹Å·ƒœ§Â¼nŠöã Ù™ìÉ}®4gzq¹6:Áºø…BŸ RÞöߎ¹çê¶5ÛEŽ §™[‘mÍd.]æxÑØ›dPÚ~½b6H­Ó!1T BÃÏEñíDö%Ç'O>÷üó¥Ò(Ñ‚’2†¿ø‹¿žÿB²Ùì¹çœS(ôp_ž˜,Ë’$Í>ñF£‘H„zµN¨¢Hõï=6>ãBã_BÈÈȈ®¼ú²¾Àï-á¬3GúéFjÆ|aNmõlÛrîh:ÈM;¢é Î}ùMFÿƒ©‡Ž§,ž‡H²õ knÛ„³©Û¡ªk_svòFlÞ²å /Xµ~ýú6Œ\Z IDATM›7 ‚½Ö0_žŒŒŒtuuiÂj\&„tu9¬c‚æy$8ÕÜ4™¾R[+ÐÅq¬t¢n«iʱ҉L®Ï&%OþMðHè[íÓ“·òû:ëf“ÒæñºibmA¿ ˜VÞU{Ú´›‡¦n‡ªèþråûr{7V×DV=°qZŽY),™ˆ^÷O×?þøã—^zi".šZ|öf ›d~[ب‰ÃÃöððð°žÆ˜ÀÊF6Moº²»»{xxØtËf„1×aõ¨¢HåñY>yv×î=«W¯6ÚÜÏ:«U›_ÕÎír” ¢U‰±ú÷$IÚ»wï)«lv—$yÏž½gž}~­Vóð^Y§ Šb4}aÛ³«WD£W#±ÀÛM}ÓzQkKgL•å*ú@“<Ždr&ر҉6?Ⱥû HpHtPú­ªÿCkùìð—ê|û-ˆÂ¡C—.]*˲}ÊžóhÅCCCmÞ£¢Ñè¡CÑË“6w*Üþ‚kJ"—eÅCèO€ ²¬Äãq h&Þ»gg¡Ð›L&dÙÎ)ц“y¹d4Û³{çê‚àzªÙœðHÌ›×7Z*ÆbQÛàk“̘"+£¥‘ùóf(‰¢ØÕ•ïîÊÿçc??åÔÓ—-[>ûÚb÷î]{vï\¼¨¿«+/Š¢ÛÝçÄÓ9BH¥R®Tª®¼æõ™¥Ö뙯Í.‹$ÉÉd"O8¦TUµX,½öÚëGŽ›•¡yr¹\ÿ‚ù‹-Ìçs‚àÎ)‘LuÍž“ÐB¬ƒ—W×úÉ:¸)+—˥ѱòDyöèd*™Ëf’ɤ‡OÏés$ÆÚÜêjt3O„Φ N0Ùlí‹”ÒT*•L&c³òèÜëït;ÌÅ™jÀÍ€§~T‚uº³¶Ëhî©Õì'‚¾‚–:ÛUĨÂ@¤h*š ÂÐt<ú…c²¬HR­ã8E""Ô:X…%I®IJ>_èJ$;•rqäd,™ïÑæ€ ˲<OiIšY cA°nÔ1Æ^T5~KÿF‹Ï¼yÛÝ~/jfÝ+²¢6|Ü0Ä Qu{œÒ’:4³Æ‚ ÂÌTa6ýY6?O±ë„¯¿°ÉÌ(ª¬šyº->U[xíÕ]¦ëõM‹ŸÚ˜¦nÍ´ú›­l¬ƒ±”º‚ê6Õ%¨[cg5LÛÁ´n® `ÎbôèzöH0DÝÆ’éîIE&„h? !úóÀdº»<>¬­7>$œ±f*[›Ýù×íʼn,›HϲåkÜ¡‹Ž¾l\oÜÔøqC«Ï 㬃± =7Y–M+#˲UÝüTê|¨WaÇnŒ1- 3Kl\316Ä›Jez´emAWÏÆe}AO©©ª–­ýîÆü{Y¥†caŒ¢ªŠªÎ°ØV¬Zw`ß ª2¹òÀ¾–-_{`ß “Æ2#±ª¨u êv7½`9Ö¡± «Òùz¨FÝèËÆ•u‡oSЬŒó @0*ìÊ®C\ãÏÆ¦9Y­¯Ë“÷ºš˜Wžš€¬ÁªÌ|Hµw÷súã&«õŠõ3.ª ¦F¨cLWÚü4ÖÍO5LóoÌÙª,Ó‚$ØøÂFA4𮯕~ò÷¹{€ìÝýÜÀ)ç†W–^g)¡Ömà”sB=X Â.Œáºg\éLa|lp¦ÅÉŒ ÆéL¡n«é.žw'à&í² ÂÅH×&Mõ¿A)~ u´'>îÙÌÄâgÃB:S0ÙÊÒq÷ Lÿ™J3èLÈÔg²tN9§n¡1%™šjB¼Õ¡qeÝO›ºy®†žó¾=ÏÛäl[<j 7JÙøè`:[0þœ6“³…ñÑA=A]Jb•1¥ãîüùsÕ¾ÝϯZ}ö¾ÝÏk?Wrö¾ÝÏO§aæûNïÅýd‡–eÉ\ýôTúÃoHfžÀ±  Âþ,á:<Ù8@§V2ãòøèIÃcÊú½ìW·ZíeVuFM @ʦKïÛ³mÕê³ôeÓõu›ôìì›Ïtj¶i̳ª[iøé\7÷ÕÐ2\uÊÙuyêk¼ ~æHtîl#ÊÌeÍT)öïÝnš‰ÕzûMö¶acL³ª[Ù˜†«AWÃCAâoŽÄ´˜e²æQÇFOt8·Aq´=Žšv~ó0<‹r¬tÂI¨Û fzËìó®yŪu+­Þb°rð×ÁUqn=ÆõáÌžPâW…îÑUq>ëàª8?Õ¯ ñS­Ã[6H¥šU’Š‘–ס™Õ0-@‚#ÑA:L‰Ä’åò!¤R­BD*(M< ˆ jE·°ͬ†± I‚"ƒÙ†Ÿ+RE–&Ƨom‘$yÏž=gŸûFE*+ŠÔ¹M‹§ !ÑX ½àŸÑÑâhi0•Lr\qÒÒI¥{æ¨UR«ŽB¹†ÞðO*™J§—½rpw·û+FLå™ÃÁfÁÓ9E ‚“r-‘êÊæ ¥ÒÛ+âí~©6ÞÝS)ÅÝ÷é¡ÂŒY–*åɯ8B… 3€ T Â>Éæÿé+ëš@3ËŸ9_x´xÔqMhI¡àÝÖ‚B„ÂÔ,­³—Ó×mÕWšîn“’'±ÕŽºê²`maN]ÖmUãrcӔ޻»* F4 ½<Žæ°n2›Úκ-Y9Ú˜gã‚i‰¥‘£)MWjË¥‘£Ùü‚ÒÈÑ\×=gâÆÀ«}K¼¹‚´…âkC®Ë׿«Ý}–Mµ…›§X²»Ï² l„)KºÑyL U~ëUO©{Ü&æÙB`Zu›m kÂgc¨ê ì·òع®kJ E´Ö#ÁÙÒ(äFÉ;Ò¸»¾Ò¸µ4rĶ86•€™ælº{CþÌkb<¤bçºóHh í¥ÂӠ ¨0¨0Ì‚|wîäàÐóÏ?_*B(¥Œ1üÅ_üÅß6üKÉf³çœsv¡§{ö¨ðÐðð³Ïþ~þü¾+VàâhsJ¥â³Ï>{Áùçuw·XˆSá={ö®Z¹bÍÚu8»€Žà¥/ìÙ»ï‚óÏkm5ó ‹‚0þ<œW@§0þ­º˜#&LLL|ø#Ÿ˜(O =…BÏGÿáår9$[ØTžíÿë•Ð)X©Sùk_»]Uä3×­½óÎoœ¹nm­VÛ´ùUUÜk£UJs@þýÁ W¯øÚ¦-ïy÷_ÝvÛ×V ýà?Û…dªKÿ[·¾î_sjà.üÖ£«šØ$vÛna7²· Ý|O>ù!äÊ+ßwÆÚÕµêø™ëN¿â½ÿ“òįŸ¬V«Áa†ÏÅ;=- žòÄÈ\8©ÉT—ç#µ—`·Ù6­ÁçÈ™³’t:ý7ó·„Ò‹.4á·ÚôÄú.Æ}M—µal“¸±t«Iq/}6;¡z$ˆóÓ¹ö¶…[èð§ÑgàJ›×Ût³±n9¤špîhU?Ñ,]½$ hDÇû…y"[ò›ŠŽÃÒU,…@su.¦á;lš.Ô‡i0x<­ñHx³‰8­HÇâlîôç‚.4ú웎óÜykC¼ ³t¶“žÎ%Á¡NYãœæG—MÅ…Ý®v ÜÔµúØ] ç€YFë#[òGA Ê#ašÒU4ËV5q®Ó1½1,'qÔªnÆæòSg1h ÌšNòHîÈ–Žñ!9Ÿeñ?òòõ‘'^%q®“¸xiÚžn?ÇytöÍåöˆ<×þ Ðn*xYxƒ\Š-¬«{à¹laÓüa €×/ì(óú¥ ñš’Ç–Z}W@ßZ'zÌ<^=ŒïŸUb7Vj £}a[£VÖ1¬`:Çè51Þ9¦èJEuDx G=òé1hC½ƒ[˜ß!AZþss"0„mŸÂþ*ìY‡#Vòl¿Ÿ©Âí›sP.@k½ÄÇ+¿¦oÎ÷¯{xƒ9@n0„¶BZÿ³}à4ÃÖ`t¸•ó…›0— p­Í¶*¬ªj°Åµ ¾pØQ"õüë®{(Â>Ê¥ÿüí©Â”RÍÿK§Ð—1܂ȖœQ"ýçFæœùC‘€ w€G:Î#Ñ‘¶0t³Í#e Û¨pàOçà‘€zö¼¶0À¬òH„4Í>OŸÓx=ä‰ÃÌ&[¸É*Ì‹#á?¶¤‡<}¾ â!„² ·…èKáú…Ã0íólþËr°‚˜­ SÂöHðÄ‘`‰Y;Ä‘h~LaH0kõΔ²@âH0·b Ó!®Á#ª-LÂó 3K[æ¼…ÜÊ8ü æÂ!CЦ ÷žÔiÆ!Ñ”™j`láÖ¨p±Mó P—í£Yæ6*xY-þúgPyÚÏ ¤Çü¡ÑÌK9€Lšé‘x$x=á<œ€¶T[OÂ¥«°ÕÇ7½}ý3ü ÃÐ9„o 3s[iþÓ9Sy¶5á |€Î‡™Feðú³iž®U8xx¦©ù™fŸ¿ÿIrˆr láfÚÂÁK°ã”[?a!íó÷WQ.€ wö7˜›ᬙÀ `.z1:K…=Yw7˜Ý¶°)æ‘hšÚ®¤)~áVÚÂN@ÇÑ‘ µM¦ºê¢ó@Íí¬³ù f+‰ $b$ÐѶp„_`; ¥}þ¦1*](—ÌMµAUÕ Ê¨·…Ã’až(”ÄÇÔÇüýË%¢\0×PU5t¶Œ#ÁÜäÀìÔÚÞè%><Ã#ÁœM]>„‹]G0[e˜¹´…ƒùðœ€óuÖ®=Á”g¦ZРÂ0¥À”F£‘J¥bc—ËåHT ð%ºp¿þIZyÒø2ˆ·"¼Õ³ÙèDDQÈeS¿ýí“çŸA4k”àJ¥²}ÛóÙLR}™°FWt+#[6!ò$ñ7oÌ[ýÜ€ÎUá|.122ø£>(ËÊLË”BbQ1“Ig3IA Ôn”gýf‰÷ c^­}a¤VÖ±ñ]@;Ó8›!•J$“ IîªVk”RA÷GÂq"APÞÛ'h4À• 3¼Á ÍezÎ0žÎ@‹masy¶Öo·_Û€¶5H[ÿs„ÀM—x$ •¸ûú§•!îÍš€Ö¤>''0—ëM- ­* Pa˜«„þÅ#õfÇÁ€–ÛÂòl£ßxi0k ÒÖ¿´1i 3ˆ(4ù 011AðtZÂÄDùÏm/—ËâH˜ÚâÖ4  Ò ]¼b˜J%ßpîYÉd¶0´è"ÀGZ‚î‘€ @ €GZ <Ð2¬æHOã7Œ=l%3?ܸ‹Ï•ÄìËÊœ»+Ù˜Ø[ž~šÈg}Üînz ®Š¶?¹6y0;<᪰qìÙa«ÏËóìâseãPwµ»Õ!øÉÓOù¬«Ý­jâ¸/ÿÉu<|:—d2ÑÖ‰¦:oÙïbš'††Tsþúpîî³hŸõ`6¡ÙÂmTÍþf<(Üf®ÕÊ^•š&(œÇh¿»M†œE»:¹0„Á¬cúH;WÓþVݘ¬qH›®t¼G¶ÏÓÊ“à߆5UvŸMÔ†·ü'š æ–-l°„ùƒª‘°¿M»¡±šÜ’úК+@s<Žbg³†j—Ï•„{€Ÿ<ù‹£‰üׇ§‰š³/³ ÷_<2ÚâÖ9tAøÃ9âñ‹GZT ÂÐ|šGÂ~¨ÍVþ8‡ö#ÃHl\MÏ[C éé3 §UL5ŸíÀ,‚Õ©pˆ8¾(Ì£ÎöqmÂ?òŠlBM?A,›Ò“çDØÔ¶.‡ Ú€9â‘øí9ÏV°gkÈ~[Ù˜øfÈ?ƒ¸9ï û<„o¶øí¹pma·ï#øqq4†%㿽›7ÂaDøÕNÿײ¡Â`îÐÑ|x 4Ó»Zþ؉œ!4½­ êhÇ+–ùŒÔcl1·ÇÂSó@‡î0³Ž?„&ÿJG DelŠP˼EõVs(/€ w€!FìDWêÌïZ Ü kÌÐUþžëã*N¦iY>kÀ,¦­ç uûì(ë>}­’àæÔ‡ßÉ[žÑþ7`¶p›*/œCþ(”ü±%}® <ˆ¥Ïšû é3ȧϚÐ4ÄHÌmzµVî v5SÂñÛB~aäI‚ Òh“Ïš»šèÿëÑ<_ÿ ü‹Ôøõ •©œ‰™J!ýÄÌ0©ÂŒ{ưÊT¨0I4–L§bM !±h$KB… 8[XŒ®Y³ŽR{˜RÊTõÔS× b4r#hz „LŒ8e].—?|x¥\ST±@…T.ÕÝÓ{Úš³'ÆN@… 0jÕqJè‚þóû—ÉR¦DˆDc”c¥cµêxg¨°ãÜ#W‘-Ia›³{x‘-‰§ð›Ž·(£ˆc Ú™ju¬zb¬É…†«ÂŽïìºlé?lcsv<²¥£ª6ÿpø£Œ"Ž%6„ûtÎq>xcÏgæü1ƒj Ç[ôΠ¢ß9¦„ÚÐlD«d ³U¾o‡ã3’$ÿå!+h¥ {°L½ÅNlááð—îÍNw~“Sò\…Cs%£VÑ|Œ ø…Aû³wßþõÿ^õ¾wŸ±öôYh ócǯrpÆ– ÉènBéüá7é}:"Lû¼„x8¿´ŠcÇN\qåß¿úêëüëwvl²¯¯F)Íxk£ cLåÕ’ÃqUz°­ÑÌç?¨*˜LL”¯þÄ år¥Pè)z6\sc¹\éHn€l¦ýë3Hc°á%]E¶lZ C‚Á,@Qԯ߱•0v溵wÞù3×­•eùwÞ§ª,ð²BŸ©F\>V²÷úŒˆØÚ ö­aÙ²µ­8–`®ñÐO)ޝ^=põǯ9ý´«W l½÷îá‘Òòèåõç¤Â>iáÑUDDŸA9?á?¼$Ï.­m¦Å å”Ëå§žú=!äÊ+ßwÊÀ¢òøÐé§/¿â½ÿóûÿßÿûïß>óö?¿4XÞ`€¤Ré¿ù›*œ÷†3*#„J¹tñ›ÎÅb‚ Äq‚ôK@…`Œ©ç½á BHeÆÍèðç­cL­VF;É#H¥\2[Y £,Ä€V€VÒâÈ–XÁ Mø—¾ó/|‡f¤1Æî»ÿÿ<ð¯ÿ·ó<þÇ$§qÔñËÿ«Y¦QÄüDhtuDMÐAþ&ò_s……ƒv Týôg¿L©Õj¿úï´•ßüÖý_¹õë„÷^qy&“î[X~ö#Ѓdzw\'ÚSí0½å7 ÆX·»éJ›[éÀ;Wñ|Ѧ‰¼\-+Ç3îØn´|>¿aáBD IDATBÈ翸é¡ÿŒòà~¢IðÆ3ÙLçÙÂÞ""ZÝn›Ærôÿ]ŒÆJò¿³ËÙ²å·Û~ýK]žSoýê燇‡}ô‘[>Ûk¯½÷¾ÿ](ô\vÙe_ùòÍåñÁÙæ‘àùú§£8†dNúô ØÌ^ðV?†pP¾‹kÿh[*C[ï¹óºënعóå_þòW«V¬Y³vóæ¯.Á¡{$m{#Kžëá:ÏT„@îˆù 2=¢¦ù"ü¸|ž 8"@'ĵÊðm_»í /Xµ~ýú[o»µV"¤Ó"[ÚG/4‚ÈyK<côw1¨ –ü‡f¼Ó'ÜÓ«?FŸçÂCß üTýÔ§þé¿~õ_—\r “‹Œ©a˜ '“ YVøïÖ‰×`‰­»HK‘'ù›1¤c ü\¸­*#ËJ"‘°I ªrT‰Dc çr¹ZÌqJ¥ÒëLJ •UXV”b©¼úÔsS«ÕZ›Ô?“Ée2k÷î~.ŸOGÄÀì*¨p¸‘XOW¶««+¡5À\‚P©ÉƒÃÎ!zGKc…¾¥ªª´kæy"ï),:ÜݬYÐ3Â&‰¢Їƒ£_UQÔb±T(Ì3 –ÛZ$Y.ôö‹%E ,Öp`¶ð¼þÓf܉Ùé˜Þ1 g¹ähS+Õª$Iªª¿EoE.—+•Jökø·:ÕI’\©VSƒ²bƒôHÕâÍVá:E6 ±n)kk´Ÿz‚º­¦»ðäc¼h›ì3lLɳ—ÕJ¬>Ql³lÜ¡íÌ=[ï#„\ý±ê>ÆØÝwß+FÄ«?öÑVÕJ0ÞhÿjF±–À³uܾ*lå4Жݸ•eÖ7–hŸaã•€g/«¬xÐ>¶¦ÿåIß(Í´!ÅRéºën$„Ôªµk¯½F[¹eË·|î‹„÷_õ¾l6ãÍà-™¶&ŸÏ‹E]sõe=½¾Ò¸Õ}\ÑŒ§sö:å¨b<»Xeb\HAÞÐ?… µJ>—ß°a!ä¦Oßüàƒ?$„|ï{ß×$xãÆÞ$ØEé3qqñàPÞÙ` “†gwŽ[uG•+ ð:ø¯›[sØ›€v…ݾeÓððð£>rý 7>üêß¼«Pè¹ì²Ë6oºMUÃpV'¦F!v%ÊsÅ#Á¹Õô®ß³íi_·Ö®g„.©ü #ÃLºÿÛ[?ùÉkwî|ùá‡XµbÍšµwÜq‡g fŒùôHBFFFW6.pz:É#aå®å´:…Ò³QìG?öx°62í† Í[¶\xá…«Ö¯_¿iófA`mR·®®.Εl ›Z²Æ[xã½<™ù„­ñN¿ñ®ßÆMÁã\6­ç^<ÕpeØrj®î,Ö•ã´¹AœLD¯û§ëüñK/½4ýþmáááa]g‡‡‡M`=qk“ma*I•á“9S˲¼wß7^ôÖ‰Ñã’TFsdס₾žÞž<Ḭ̈…Áì€RA£Š"16ã³Jµvr¨xüäÐê¥y'9xÁ…o­ÕjŠâësÝÝÝÃÃîvE1>ó»ÇV-¯‹é¥’éÞ§Ÿzl`Õ þp?Ý…eˆ#ºiàÖL ã;=Se¹ŠvhG¢0õ6tÄ[|`ËdÚ䄃÷/]ºL–åð*244äÖÃˆî… Ÿ¨Í6n7Á©ZϦâR­ÖŠ£ã”88(RéÔΗ¶õöö%‰ãæø•KQù¥m+–/¢40!†G"\úºdž«¯=ѕˢ€N²€)V*ÕþÞ”ƒí" ù|.—+þü‘Ÿœ¾æ¬å+V¶É!ìÚ»gçËÛ,èÍçs¢îòÙ” ”‹Õ#Çá&sxTX4/‘N&S¦’‰Å‹úîÞµíÙgŸl“úç²™… ûö/HqT¸È¦“ðHà Aòùl,í-ô”Ë•6©U2™ÈdÒÉd"ØûZ¨0 ¡”¦RÉd2ÁXûT‰„áW„ ÚZ‹gýó|ñ Â¨0¨0Ì‚Ÿ©ÆS¥V“ì“ÅbQQñR/tB0wUX–åJEîé]¼ ßmŸ²X:ùj2áÄ :!€ Ûö~E)–Ê«O=‡©Jµêð¥©L:›É¬Ý»û¹|>Eœ €N Â~-ú–ª½Ÿ"Ë$‘ˆ÷ îîÎãLtB07 ì霢¨Åb©P˜'˼_(‘$¹ÐÛW,–L㇆ô‘M\•hú1éVÕ„× ëþ…ÚÇül $™ÛDWo/[˜1µR­J’¤ªª}øúýû÷ç;ßùà?¸råJI’+Õ*cêlš­ÑŸö˜•ðwBÃ.̾ÖMžOÍ¢ûÖØÂœ nذá?øÁ¿ÿû¿»ºäjWÝ:{³Ñ;„¾¾nÁjÙ*™ú¾½U2}«iÎÊÛÔÁ¦b ØNè-™Í™å?¹V¢Ù¸Õ¦ºê-öÝÕf«ãX¥GOn6EUÕM›6>|¸««ëÖ[o]¼x±‡[-cOå?Á-ì ŠFÇm7ƒ—ÿì8nµ±[ý”Tmùw´R[ôä«ðÑ£GúÓŸ¾ýíoïïï×Ö|÷»ßݶm[&“Ù¸qãºuëÚdPñ'3#ׂV]GM @ÏÌgGmŸûýÆ«zrëU˜1Æ{ì±Çžxâ‰íÛ·ßpà ýýý¿úÕ¯~ùË_f2™Ë/¿üâ‹/ÖnY+bèsö «Û·@„ØÞpÀ}\P0XDãÙ·¹Ç÷)”öùUJ€ÊX%ôd·„õtîmo{ÛÂ… %Iºë®»žzê©|0N_rÉ%ïxÇ;Â6cÃ6ŠÃ¨eÌ&¯…739¨]š0 ì÷¡?´‹G¢¯¯ïÚk¯½ÿþûK¥ÒC=”J¥–/_~ÕUWyxg_¿Ç±w«ñÜ 9&0> 1½Ô{x@ÇSÜÇuŠw¢®'XǺ­6ØÕ.uýÓqDð,W½Ô*½éØŽPIª Ÿ<È™Z–å½û¼ñ¢·NŒ—¤ræƒ\øÖZ­¦(“sæxàI’‰ÄÕW_J¥Œ»ˆ¢FŸùÝc«–s¾È{àÔ?ë;¡=:!¦Dc©dº÷é§Xµ‚¿/u–…Ûí …Â•W^ùä“O^|ñÅuìíö €GÂÚ¬„ƒ÷/]ºL–e}å’%K®¼òJbö$Ü' §ë?¡ÅÀU'´³_8:!à›˜­WaJ…T:µó¥m½½}‰DÂô­üG„±±ñ—_Ú¶bù"J-ÇÎ+hy'›¡Â¢(äó¹\®øóG~rúš³–¯XiŸ~×Î=;_Þ¶`Ao>ŸE €N Â¾I%‹õ ݽkÛ³Ï>iŸ8—Í,\Ø·°A*™Àiè„*‚ äóÙX,Ú[è)—+ö‰“ÉD&“N&øÞ @'PáÀ ”¦RÉd2áøF¥]„:!˜Ó*¬ômÐr-F'q‡&¨0@…ùáС=±Dm:ñDæÐ¡ÝÞrçÖfÅ¿üâö¾B!•é“jchzˆÅ3Õjù¥Û—/[âö w*,ŠB>ŸÏæŠüìggœ±véòš8Âðñçìß½»w¾ôòŽùóçåóy·o¹‹©FQUµT}ýÈÑcÇN”Fa Ée3óç÷-ì_Ëe7N /1ÕAÈçs±XŒgV<Ì’ÉD&“ñö—ùÂÚ¬øT*‰¦Ÿ`¦@…* * PaÍÂ{L5Ƙ¢(µš„FÌeb±¨(ŠžƒøyTaY–+©§wñ‚|Î`.S,<œLD#/ŠêeYQŠ¥òêSÏQ•êøØÎ`.“N¥3ËÏØ»ûù|&"ŠÍPáÑÒh¡o™ªÔÆÇ‡qsY®¦Ó==…Å#C‡»»»Üîîú霢¨Åb©Pè«VÇÑú@©ÖÆ ½}ÅbIQÔÐU˜1µR­Ê²D¿êsƨ,Ë•j•±ðU@€@…* :œîžÅÚ¿&êß&×€F"hà_ ‡‡^m\î:«¶¶0v¬‰šÑºl´‘µåFÃÙ&¥+s›§DcÎAÕØÂ í¬K+Y_n\pLionsæ£]*ê2ñ_[ Â õv1Ïm>¿lé)}*ŸÝƒ: Â IVpã½+÷œ ™‡Éy½* ÚÅ;á3e }Ž  à<†6ª”QìM‚ƒn<”°…Aû ±Õ| Gïª}J=Aè»­‰q¥Í쟵ÀT’*Ã'òï ËòÞ}ÞxÑ[k•’¬ÔЂ ÍéîY2ßÖ*,ËJ±8ºbåÆÔjµjŸ8•ΤÓÙ^îêÊE""N3>Ù·ÿÐÀÀÀÂ…ýÉd ­,åòD&“Ù¿ÿ•sÏY×Ö*<::ÚÕ=Ÿ1µR©rH¶œHÄó]óFGO„aç0׈F" ÌÏd²hŠÀÉd² ¨###çäÓ9EQGFŠ==½’$ó»/zzzGFŠŠ¢6níîY¹’sk°™ø,ÅCqÝ=K´ÁÖÌ"¥ÈÀ d2•Í… ÒVUµR©H’¤ª*cÌ&åþýû¿óï|ðƒ\¹r¥$I•JEUUQäº$ÌÙØà+–{âÞ’™Ê1†k;S×O8Ï®»s„°æ 3 *•Ê7ÞX*•úûû¯¸â {“™³›êZì(Á‰õ•u‚núº½8W:æcŸ®’Ù´ƒiS€v¶‘]¨ÑÝÔø×Ô¾þ¹gë}÷l½Ï¨HŒ±»îÚºõÞoÏ*[XUÕM›6>|¸««ëÖ[o]¼xq€&¿a”*{[ÃÑñ`ªÀºV7v悱·èk`#N±Tºîº !µjíÚk¯ÑVnÙrÇ-Ÿû"!äýW½/›Ít¤ =zô§?ýéÛßþöþþ~mÍw¿ûÝmÛ¶e2™7®[·.¼ž`úÆ­V"n“¿î7í¨AóÍÞÆ1mò¹ü† î¾ûî›>}ó’%‹ßýîw~ï{ß×$xãÆ¡J°/f„ÕùØÔ ÍùðØc=ñÄÛ·o¿á†úûûõ«_ýò—¿Ìd2—_~ùÅ_¬%ú;¹‹©gÃfeÝ탶04øŠÖﵫܴåžÂR=YOai]ÎV[õ•ÆRŒÅ5ÖÐtÎ#²IÖ˜¿U£buvŒËF¥¶:ÑCƒ¯hý§8hØí[6 ?úè#×ßpÓáïÞùÍ» …žË.»ló¦ÛTµæ(JÄÇ 1ŽÄÛÞö¶… J’t×]w=õÔS>ø`:¾ä’KÞñŽw´¶½{ K9WšnµOišÀq—°t„RëÿlNîÐà+8Å¡È0“îÿöÖw^þW«V.øá‡V­x÷»ÞyïÖ{ê$¸Ã<}}}×^{íý÷ß_*•zè¡T*µ|ùò«®ºÊUàˆºgÓAû´Ñ’Õ׬VêÝÝ~c}LW6æcuœÉìÖÃŽ  ©ë· iÙ¼eËW¾ü¥“'OÌ›7ÿÓŸù¬ 4ãž#¬h>šÑÞÛÛûÑ~ô$)‘H|àEÑþ¦ÛQsM=ö+Ýîë!gûâìÅÑm2þ*2„¯£º:7Z (éJ&¢×ýÓõ?þø¥—^šˆ‹Íñü„>G¢P(\yå•O>ùäÅ_œJá­0–g½£Ñ€‹nSüjwWö¯ßónE‘S›ShÀ*,ŠÂ¡C–,Y&ËÓ/1/Y²äÊ+¯4µ|£ÑÈ¡ƒLßš3u~¡ó`+"hƒ„X–«67úm­Â‚@Óéô®; …Þd2)ËŠCÙqlllç®W­\&‚ fVOÒBêÞ*SÐæ¡F ©Â¢(æó¹|Wæ¿øÙi§±|ù ûô»víݵkÇÂ…óòùœ("²%˜CEEI’£Ñ(Z> $Iކƒ7`D*•\²x‘@…½{_zOœÍe/Z°hQ*•Ä À?½½…‘‘ÑèüH$†¯Øê¦`²\9Þ××Ûî*,B>Ÿ‹Åb½½…r¹lŸ8™Lf³™d2î@Pf ÁÁ㑾_0²,§RÉx<Ñî*L¡”¦RÉd2áèÆ¦”B–D"™Hàæ²“ë‚ ….š Â¨0¨0@…„ ^°™[0ÆdY‘$ MÑh41;@…3’$—+µ®®y}óº4M&„â¯Ï¿¥RqdäX2FÛb4 ¼ðâK££c”PJ)c ýÿ%”dÒé3Ï\Û݇ ȲR,Ž­\µ†1µZ­¢A‚"ΦÓÙû_êêÊE"- 82RÚ¶íÅ ¬XS,ÅbqÛ¶Ï9g]>Ÿƒ /ŒŽŽv÷ÌgL­T ÁÁ^ÞäD"ÞÕ=´t¼»»«µ•ÙàÐÀÀÀÂ…ýÉ$¾k0åòD&“Ùà•sÎ>* \£(êÈHqùе°‚Crõôôô~eO.—3ýpLÓˆF¢ ÌÏd²8)“Éd,PGF†Ïs$檪V*UI’ìÝe³Yã²ñgcJûs Ƙ$I•JUUÕV+EVpx$“©l6x¶>ma“!ÝSX¦- 2®4þ –P3÷SŸvªÓN–þylA!„är¹R©D,¾²¥oÕäX_†ëíl5(êÆ…UÿÑ’™%Ð'šse+<FÝi7ql>í|øF%Õ–s¹œ¶Ü˜h%Ø‹¶¼„ƒpÂëmÆ‹¹žÀtq¥¶¬¯iLP—cúº¯/Ïâ‘Y*•n¸áBHµZݸq£¶òŽ;îøÂ¾@yßûÞ—Éd¼C²êÌÆM°‘CéÒ¥Òu×ÝH©Uk×^{¶rË–;nùÜ !ï¿ê}Ùl&¼Ò›÷t®±ëXu&}½}oãäÌÄñ :ËqaJ>Ÿ/N¡Ëñ¬$ŸÏoذróÍ7ÿð‡?$„|ÿûß×$xãÆœ¬I§éýh—›<Ñ7}úæü!!ä{ßû¾&Á7n U‚IËgª9vJ·½–?ýÜÆÛ纛/««|L—g_smÚ´ixxøÑG¹é¦>|øðÝwßU(ô\vÙe·Ýv[­Vãl@žTÃõTß¾eòD_ÃM‡¿zç7'OôæM·©j­ƒU˜óA„•&:&hŽ æ2’$Ý{ïÖOýãµ;w¾üè#¬Z±fÍÚ-·ß¡K°ÏQàv4AˆC»âJ÷{ë'?yíÎ/?üð䉾ãŽ;–à€=uãø»‹7‹Ø~¯Àâ`“µÜ*éšÂ¸¾î§ã¾###s`|’M›·\xá…«Ö¯_ÿµM›g±ù?—²yËô‰Þ´y³ 4ãD»·…)D¢ª*3Umœ£~òÄ]SNž8`Lи¬'>yâ@oß =¾`šÀ¸ROÙSXvòÄ«Òùëi_ɺ5¦+­Ž…ÿðÃ@eªÊÔ:ÄððpWA[ö}ß¹ GŒ1QŒ|êºëÿë¿Ë[.¥T¨;YZ#hlßÙ¬:’iW1.ôö­ÐvÔö:yâD3ŒSLD¯û§ëüñK/½4M»·éPUUUUåH$JÜG×£’T>yYQ~uÝYÉ•QI©á¼B¡oÅ`˜ãJ’å½{÷Ÿwþ›kµš¢(œ{uwwÛèïÜ3”„X,V«Õ¡(ŠÑhô÷Ï>10°2iå³–ƒ‡Ž¬^½:bLy†RA£Š"1¦6º§öîÝ»lé³î'Ó/l{jÉ’ÅÑEP§îÂ2/=F !*cªŸ×E@¡o¥¾/Ð)ˆͤS»v¾ØÛÛ—L&ec50"qlll×ÎV®X" a}scðÄ~®ëA„J’ DHH’‰XbF˜J/§ß“GB aŒUQqb:Ji6—ÉåR?ô?N_sæòå+Ñ&A±kמ/¿Ðßß—Íe(¥­ «ÖÓÓ5xòõÈü…ÑXœRDL ÒMQ«UO)ºMO± Ƙ x óïE…E2¦Æð­­"J-Y¼P„=»_üó¿EƒE6—]¼hþÂ… Ò©TËGD:EáäÉ#‘B‡Œ,Ëét2[È4#„‰Í±…)¥” “þi8†;Ò|.‹F …îr¹‚ Šd2‘Íd’É¥mñ¨$',”b[­gL¥Ô‹O*⾌ c*c*ÉsLd*‘HÆqõ ²Q)цÃÜîŒMµÏ†í‘©6ŒáèLÕ 8sn"3¦Šb“<D ¢6_—~ „¦2F*zx4àÕVUB)Á Ð<M³… !“OçT¼;S"Ìmλs„Jé¤;îE DeªHToS½ÌTEQUUBSá’B©øÿ·w¿¿mqÇ'à¤@lçǶ6M'MÓª©Óþö=™öOx郶ë~(Ò¦mÑ,Û8NÀîö€ Y±ƒÿÀy¿D×ë5¹/µ>9À>”R¦i®âjYB+-ŸÚ!„ІÐ+Z ‹OïTÓÂÜ€O¬õÊÞ©f†©´Zsw2J+ÃXäŠÄ"wô¤4Ö¾*lÒbX ¡åBûH,’Âòyyب ^ìº0{ßÀ:‘Â@ ) …àiá±(@åi­Ó4½½7ª;;µRó­Die‹"…­’$I%Öóï`óg½nç/ǶŠ<¯*¥•*j’ÇQ¯sÁK¨d§iÜ|õõ÷Z«$I+pöm™B¿}l{Þžeš…JSi²Ù{·L) Y¤¨IÍ—¬… » ›‡§Z©h4ªÊÊݶwÍçýîŸÞÜÒ”JG£Û/JØ»;EŠšŠ»s@U¥© ‚A³y'I…¦ÇI³uƒtö 7/­ |!Dœ¤s‹š¹”æ¥ T”Ö*â8VJé› ¸®; –7Ÿ‚ß_kÇI4i­f-Ë––O kŒOcÙU/Š°ÍÆÓv5ÉûX¸"<ÅÀʾæ‹ÇñöÔãÃîygüZ"8[ OÉäüKu. ka`;®NèRÃ\× ‚ Ïͼ5î ÈžçMþí䀹3Ñ%wd,[Zf|&Ycêü‹w>nQ¬…§nÖÉû¥e|ßï÷ûE¦šóŽå¬öäçöÌÍß•Xj†Å;—„+°N¬… 3¥¼¸øãôôe2o+‰F£‘5ºÝîÜoÛívõÒž³^³¬‹‹ßM)½´©…¬æ?¢V+T) lÃõ½ú‡wç­Ö¡c;Iz߯7ò®^Ë2‡×Ã÷ïÎ_}a²Hi¶mß¿EÎÚK³,9Î/жn!lJÏs]7øéǾDCt¹;IDATyýÝÙ«/7ο|øõÃû󓓖繦)·£´‚EÍü•Ã.ï@u)¥ƒáßÿü{yÙ\ 7Âî³ýããÖ矸÷ü½B¥/j»¼Õ&¥ô¼g;;µV³†ÑæOØqìýý=DZç>¥­B¥/Š+À2 £^wÇ^Úí´Ç­(UU)­TQ¤0°µYü€ ´µžÐðòRHa) ¤0€R@ Àº¹ IaX[·ÛoÃ04”RËX±0Œ^œ½‘Qtͱ€Õ¯…ÇἺ „asD`5á+òË·âúúJ&J‡Ãp¤9:°ìn·ßFQT¯;¯¿}£’¤¶[7Ú?Ÿµnà :i¢N_œp¤`IÂ0ú¯Ó7-éûG~óØ’ò‡Í#d,Ê©NIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/manual/html/_images/mainwindow.png0000664000175000017500000042257214126044351021604 0ustar00jssjss‰PNG  IHDRÁ¼σ½«sRGB®Îé pHYs%Š%Š7!ÃëtIMEÚ;b„@ IDATxÚì}w|TUúþóNz%)Ò„¥¦ €Jµ¯îÚuWQü©`Á¾ö¶Š]¿Ö]]{ݵ¬])ÒS¢”$H“&$žLyÜ3É›;3÷Þ¹3™$çá32gÎ=ç½ïiïsÊ{ˆ™!áD”àUQgæ·ˆh*€'<ÉÌoˆ4¾PÃÌgKFeOð$€G˜ù]© uçAgj‚*ìð€OØ†Ž–ˆ ˜¹Xj=jë½ÎðfÞ)õAÿÀ,¯2ó³Aâ> àt³ôp€;™ù²fuª:q>€;ÜÊÌßHØ¢Ó‘^7ýTfÞ$½kÌp3¯!"°ÀOÌ|¹*^€!̼N–BÄÊ: Àr‹™ù:©‘Ð+U©F¨ð{€x âÿ ¿‡ê·aª¤*£Þ2ë.U!aýEÝÙ  QÕäpø3€5Dt.3W„0ø} à‘®Dt¢Ÿ¨ R€^p-€gƒv³4Xàÿ =fJv:d˲µ)B§uP&^Áa ½^"½TU˜×ö¶Ù¾ðI‚#‡(‹R’GŸ1óEâý`,€mRe]ÓÔ+D`€7ø†ˆF0sÅô§¨j–è(`æ2"Z àD":–™Wú‰z6€t/0³“ˆ>P \jQBÂ0>aæ¿„¡3P£ î Wª\¢3Ì*HØÛaT2ó fÞmô"J"¢Ê‚ˆR ÆK3‘&Q¼ŸßR ¦‘ ¶ÓhÃãQö|¬Ñ¼Tº$«rù‰›.k¶„É~ÀÉÌ›L°HâYêX¢Ø^Jf´NhïÉâʼng ˆó׿èéÇOx²ÁöžLD±&dN6Úߌç0ÚGw2x] ÎeâÿWDÛÙ+ÆÐýêiJ{½‰±6ÕDš1zã¡Ñ6¤$QŒçãÖg“m$ÑDšr¬mŸ:d<[ÁÌ?Û•—{—ˆRÌŒgê¿Q[ÕÀÞM¶»þŠ6ŸŠ\¡Žs’‡£39ˆ¶ÑLû6"*P  –ˆ–‰7£y !¢‰h3€":DD¯QoM¼"úˆªTÑ^"z‡ˆziâ=DD‰(‹ˆÞ²µæ- ¢#…Ñú"Ú#ä-'¢34iÑ|"/Vªì%¢ŠçÑ·¨'¢oÅÖí`ü°x¯‘×."z[ýnD”-t}CD?A™­÷‹¶VODëˆhš‰~ä ±ú¶@í ¢Ûµ†3LD+…¬Þö¯Öxíä"CD E[ûˆþ-Úv"úJôuBþÕóÞ÷<‡ˆ®!¢ŸÅ{mçÕ@D$¢Õ¢½×ѳZCˆúˆ~o§¹AÈ|:.+òËýÎV!×N"š«ó~1Dt•Šx¿Ñ~t[@DßCÙJXCD»‰è}½¾©“âCQ//Ô3Έ¨€©2s™»T”ÇÙš¸ÃˆèQŸj…Þò–S"¢:DrˆßCóÛ«bÌK ÒFF‰¶ú«(ÇJQç2udü‚ˆªE¼]DôŠN¼D;éCDÿ…âCà }-Â’ÅØô»x×õDt¢&-¢ýFD+Tù=#Þy¸j ®'¢ÿQO¢ñ,Uˆ:êmÿ/Q–ÆÖØJDÓˆhºh“^=¼¥Ž«zf†(‹j"ÚGDψ׉חˆÞ:;DDUDô’#HØíÕ›‰h¹¨c¿ÑZ^ êÒV"úÈû €÷ÅÏ׉ß& ´ˆzZ-úâˆè8íÄ‘èsw »¸†ˆ~Ô‰w²È÷8"ºß[E;¿@Ä™IDÄ»U Ÿ ê4žýÅaDô€¢ ~ODƒÄäÑKDä7ÑÉ:ïv!•Q­¨¿…Ìc5ñ>m0WŒ ‡ÄûÑ :éŽ$¢· µªmùH?e#¢m*;âg"š-k¸1#M~|LÀÞ5ÿ<ÿ&UØ4ñþ#âmp€Û¡lÿr8Ç@>CE#rø€«|À` €$/GŠMžp€çE>û R¥ù‚Ho=G÷øZ¤ù‹H¿ ÀÓæhi÷Ò¼ë&ÑýG¤±I¼ë[¶Øà^_Šðo5ï¶H„ÿÀ °V„-WÅë!ÂÖ¹¸ Ê–t°©âŸÀ `3€›Ü e‹é!ÿUÜ%"Íס¬à=`·x¾@¶ ùõäuQwNo—ˆ—)¾'‹¶ÐeËôlѦ~ñ^ñúŠ6Ô(êß}οMmp›h“³„qR-ÒøƒùgЏ»E›¼Y´}0_ïr¶]´±Y¾a‹8Tq·(}Ã'"Ý Þ~T¼ã&ñ.ŸyÓP=Ÿ'ÂV‹þæEñ~U¢/š'ú³¯Ü­JûFU}½ÄB¬0^ àeñž àUÜËDX©0"Þð€xð´FgóDøW®ð¨(Go?’#âõ2ïò_à ѯìÛEÚÈ B/gèüö7ñÛ_Ta³EØ%ª°ÉBÇÍPœÍ]-ʉÅxáñÞaýTÏŽa àBUx¼¨£_‘ÿ8‘wƒ(ûÙ¢îyë~Œ*Ÿf1ö=*ÆÚ‰:»Àaª4?uãW(Žnîi±ø¾P¿xI¤±@š* «ëÅ{?(Ú‹º¾_´¡»Ucê[ªçc œçtxÊÙíÇUãõ§ª¸Ç¨Ú¤KÔý»¬áK4:û³jlžÅÑÙ.U¹PÄ‹ð³hw¯ˆ6òœh»MjûD~üÖÏqÚ²5øÜ­Þ²uúÑ_zËh¼ˆGâû2U[ü§ªíÝ`p€|â‹ø_ˆ±ãÿ¼“YF¨êÂ*•íw•;öŠ:w±*Í?©êãnaŸ½ìì¶®S´³ûEûcçjÆîzQß‹E^߉x? ûô€hó^›¹ @¶*;Düb¡¿EN1f÷TÅ-…r–w¯ÈóA¯‰t]jB9—í¼+ú»ïUeó¹*îÝ"ì{Q¦wªÆðÛe Ò¤ “à¢aê}&›!ÁÎq^ÔÝü&òJ "——DŸ© ÿ·¿T|÷¬S4ñÎÖiL^ce€Uø7"ügɪð‡u ‹="ì~UXº à)U¸C â‰"ìDï#¼•Û[C‚}Hˆˆ»@„ab`ý @†*n¶*ÝkDØñýŸÎæÝ²mÈI\$â%¾_-¾? ‰×S´•JMø!¥š°oDÛÉׄ_!Ò~5ˆL "ÝýšÁ:I]—§0Žvè®IãE‘×, f(ÞÖÕi6‹ð罓SÂÀ*áéÜ à¾•œ¢ ?Âk¨Â抰™yó½FŽ Þ§1pz ýR…*â~ ™`›ª’-GSÆçkdðùÇw‘6Rèo"YL`Tzû=,Èê&a€Ò<¯ˆ{…†|ÍÔûÍÂ8~Q§Ì®"ÿRÑÎÆj½“@§~0~Gkâý?íx"Œsd:Fþ“Š˜Ä«Â_á“5$X;y{„ªÞ¡ië¿iê²·=ýŸFÞda|{ÄiH°[Ý߈²ñÊäSEøª±c„Žÿ/±ûGo=á?ª&EÕýÒS"ü,Õ˜v@Øi~ìðéÌPnŽ‘~@æ] :Qc×þWÇnß(ÆëX]»ÀÙF$ ¶‹ú\n’{g›zêä÷Œ¹Õ‰·@‘NxoC9ƒØK¤õ¥Ÿ4–‰ß³4$x†&Þý"üfMø…"üœ¥‰»Fm ªÂßṪ‰€ãüèÆ;Ë?TC‚7èĽGüö'ñ}¢ø~§NÜÛ5$8C ¢³'Ùä'D¼TĦ"»'ªD•Á±F(„ à8¼rD^‘)ߟ!àXg‰ö8]Ä»N'^¶0üWèàÞš¸ÞYþc4ᯩÃU$x¥&Þá"|³Ž”iV‚'ª'U«_lÕ!ÁótÒ].~Kßßótâþ¨!ÁˆïŸ8B]Æ]°¬Ä(MSÇ|vø!Á'‹ïOè¤ÛOµÅâ{¦¨ï«â|+Êf1€rQëÖk4«XMþ§óÛ QÆ} 2¾®‰oR­ägûy>M~¿LC‚›Ô$Z„ïVO*©Â¿áÝTmw¼—Xø‰Û]C‚ëÄ}NCš.ð7¹ "júª5ÚÉ<ù1M‚›E?èïó„Y;Ý1³K†ñ ïÐÁì¡ól”k4€ßµŽîXajoŠö㓺„ =[:ãL¹‘1†™ [[ÏAœÑq¦ZÓ~œP®?L#¢?8ZŒßù*û]Û~¼GaÙª¹âo½ö³^`5ÇþàDôc>Cð+³º<¤c¬öA/1k×MçS+¶¨4x~€¦QúCOMÇ?ƒb–ŸF©…Ûàûí ð[À4„s“„qñ”3Áñb†ü;?éušìGz:«Ô1\npš˜-Œ‡²Åô¶Ñ8Y…%Œ‚ˆº‰ œýÌ\#ÂR‰è (G ^ƒ²ÚZåœÐƒéB9ß¾Ê=¬Q½Õ hvö#éÇG–ûi¸ 覗pÂR e+éùP¶ƒþ-€a`´q2sC°~D”õ$(Û¿$è.aì/Ô:iêäxSŒy—ˆòIp”Õþ`÷ŒöR@½1s”•V/>ƒ²"\(p"”•Mïø1™ˆr¡LFÿ×`9$^‹cí¾Ûˆå±Z8©{Wô!oB9«éð$×YÕ™kõtv@g¬½LL޼+Ês¶(«D4BŽ aA}ÿ›ó``ŒIí4Ò¶j¨ãÌåP¶"åxà`a'Î÷óH3{¬ÚªÌܬ§˜ù3(×0>&ÈÿYPÎlï"¢keU ¹Ü>Ø e Õa;4ƉÿF´®lôó“N?k¤q“0¿ãZïl°j ÆBºkÅÿ½ Úç+_ ã~"ï¾Ó„Q}´¬Æá_¤ {NL²¼åÄFöîa"ºRUÏÝþ X1Ø¦Š šÏ¼+ZD4LD 6ɹ=@?ÒSô4ýÈz?ýHUVm8„g߆²ÝöA¯‰U;oÿø˜R¨MDÝu®ðé¡Ó‡4Bqlô’˜ 9Sù܆VÏábÇÀœ'v2Dõÿ*þ‘™Ÿ3ÿS(ÎlN†²ê_+HAÙf8Ê‘ ÁÛý£t¾Á±¶¿øÿ÷(*–‡ izÊúõ^{D¬léC‚µkýøÚúñ1€E¿v”IÁs¡LîMCˆíX+ÆŸÞh»ÐÓæ¼¶«&“´m(Ê9õrqG0[5íÇÒ8#v½ÅWÆÅPœÃÕŠß® ÁV]`\N‚rS„¶ýü"Ɠۈh8”•üÌ'¢OÄÎ È•àö뀒õ:wqõÆb‹£?ü&f‰ÆëÜ3vZ=öm‚2û~šöz 1€OFÁú(ÒÍ©âÿ9Ì\ª"À±P¶4ÊŒ¡Yx·ž®óÛn&Ñ""š.:3'f¬pd¨wºJt ÑaPÎÔŠçU/Nƒ²%÷fÞ "À™P¶LŠ3/\šþ:ÀaPÎ*¾¢ÙÒ™o°xWœ'ëüög^“U†ì™:ïw€îPÎûF‹Î“¡œ·ÞÂÌ÷x °ÀÑB/VÛ¯n?"¶ÞNЄÝBDÅÞ럘ù3¿ ehÝ’ØUðOQ‡ÏFZ­ `FÂ3tÊz­×ïx  ÑOO}ûâÞîf(gƒ§Šºü³÷Z¦¨€²…q¢Î¥Ó 8°º­Ûÿ #c– ý{!ŽCDÙX;‹™×ªp”Û'¬Žµ¥þÊKÛ×ÑÙ⪨?вkfæÿ r¾§ ¶‘HÁpùË‡Ø Uì\R—}6”ãfߨìâ"Ò[`ðŽ=«¢H‡' ’;™¿ÒlãÎ×Ã1r惢ߙ¤s³¶ýd‹+Ù^Q=¿Ž™ï…2ù Ù†$ ŽFüÊ Ï Dt”ªBŸÅÝy!Gþ C™¹í à1ï}žDÔ­NžÞçkŸ†rÆ`ž— ÷¼xþif®"ÝÔ™âÈ× x¾´Ô±ˆNå (÷U^¢Jû$(Þ;ÕØÅñÃbÛœ7n>”s+«ä¹` rÄ]¢£Äý¸gÑÂèeK½Å°J˜“Tõ«”ÕÝt€~DÔS´o;9žˆÒTiBYYjÀ2óa„\è5BUÄvšÈó[(Ž~0“ˆÎUÅÅ™^³†à·7ÅçÕyf¯/…B0îåÞÛ]ö®¸ rô ÚÞáØ Œ¡G½÷ÄŠ•è Äï‹»XùVô­‹þý]?çÿ´õt”A§Š‰ºÌ€rÖx ”‰a5>…â`1¾Çh¾…²Ò5 ÁW!ÎÕ>+Há]ªº”e¥Å)Þc›£Æˆ‰l¯ŒiBÆ4s-îü ÷X{šê½’DÉ¡Añ1r%¡Jû|UÝW÷kã hõ0¹K <ñù›*^*ZïâüŠ'¹Jñý?÷9© ŸÍUHšëBn ô®"|!T^Výå e £÷*•MPÎ;Ö‰¿½^(§k¼C¿§“Ÿ÷ZŠ‹5ºX£JÛ{ç¡×Cµúª‰»Ðêý{ZïoÝ áÍP~ä­&ý}*Å`Ošç.¿{Dû_.êý(N.ÀUü7Ti~¬ñ0Û ý21è= ÅaÈñ)ˆÛ/h½ |3Z¯ž¯¹:Ãû[¹˜‘o2Ÿ¥Is”UXm^Þ»UÓýxÄ¡ñ€ù¤ÎÕ->W!©~Û BõÝ{݆Kôy«…n>Eë•o½5^?/p]†ÆCg­x÷"(Ç[‰ µwè8U¿çq«Ðz¿f÷.Ø^îWÕã1~âèÝ<­w½Ù)¾ÍËhõËFjê±7¼À ÌÝyfQ·½^^Py@†²3c¡jœXŠÖ{=ïÒ¤ém»Ú[‚æ*$MñWwèE:òþÕUHªðá{W¹×Hf(«í?Š6½­÷Àž¡ñýœNºÞ¶6U£‹-h½Ëx=Zï#Ö^«8_U&kEù²˜¸>FŽ3†½Cù\«¹E`¿(—RÑ¿7ªêI ïÐñh½ Äç* ?2Þ(úË1ÖÕ¡õ®õXÍ·N(;W¨ì®U^Í5Þ¡¯×äs4W!©~c¨® RÝýýÜr–ŸkE¯ßÓÄXÈB_CÙíQ-ìGÚ6:Ök—ý¡ãY­žâ÷ªtö… ßjïÐÇ‹ró^óçëœÐx¸–éÚ ¶ŠÛè–á_D|õìËÐ8ºbæç‰è[(Û~Fˆÿ%/3ó>“MÎ%¢³Ä¬i®0&ß`æRU¼ZgŠ•ž‰P®uxR’+4É~.:6íY·~tP.—zW×„à ”'3¯g®ï´­žïÒE<¯Ã€ºeS"~[§Ö…ðây*”mkÍP\ï R¼J÷ïÂËÞÅP¶§zWÕß×ñz+Ñuñ´žYôÂ-êô(×Ôë´ß7ˆh‹0nû‰~æQׇЉõއ«‰:Š3-ˆÙñËŪV:”«->fæb±b;\¬Bÿ ÙDDyþ ŹF&'9/¨û!f^CD#E~bB韾Ñl7Z¯AÑâ 1˜kwQ|)È¡wK÷n>bP¿ú^œ½×Ýxå}ˆˆVCÙzÛ[´í;™ù ±ò±Lê»Å*÷ýÐñì e»î¨¼I3s©ØÁs”í¶ß e‰2ªñœD4Eôñ“ xþ_)â¼-¼‹v5¼äì+¼zX%Êc­JçÛÄ…¿ˆ•ß#DZŸ0ó7:i¬};à{.u­0´™™‹ ."¢“E{;Aòï¡Üû»Aïwq#ÃÂ0í'Híwê1Yà=16iÇÊïE=×ö)k„NÔÚï‡þöê@çÜ Ès­7OfþRìnš)ƸbÕú !ûvU›Ú'òÓ+³ÅÚv)t‘e»íéÂp¿^È»A=f3óuâ¼ø¹ªÉŽïèÜ2!Ñ;Ðzä&Vªô^!¶Ÿ å®ë¢¿s‰z²]Äc"º*¯ÆÌÜLDD]ï¥S_µmhž°§ÎQïøš™?ÐÄ{ˆ>ua¸è§¿ðƒÆáFñÎZv¿N;Q·—_uÆn­ˆEÜMšð "|¥µF´Ÿk xÀöˆ טù7"ªƒ¯wèÅøªÅ!?ãÏ5¢<Îíñ-Ñç]¯ÞùÂÌKÄŽÅ+Ä$@¼x·ÿ1s‰lAb&ABBBBBBBBBBBBB¢ÓCž –$XBBBBBBBBBBBBBB’` ‰"Ê$¢™R’KH7¢G GSÇ¡í•%¡Ø†‰(^jBB’`‰ÎŒ£Ü$Õ !Ñ!1úÞ^%$$Œû}‰èx© ‰–6AP®å$© I‚%:3¾01ÈEéщBI‚%$BÂYP®m’PÐÀ~q§„„$Á̼ÊÝrùRr%XBB¶! ;1Àf© I‚%º¾p’Tƒ„DÇ ‘™÷HmHHH,!a†(“j$X¢+à;S¥$$:œñ^$Õ !a D” € R-+Á’Kt,P@DÉRŠË, ë(°š™=R-+Á’Kt 0s€R'HmHHH,!!Û„D—…\ –$X¢KAž –è ÞÜG(–Ú° é]]B¢íØÒÀV© I‚%º ä¹` ‰Žƒcì`æ© Ë+Á¾`'3»¥*$$ –è*(0€ˆ“ªˆzÈ, ‰@D½Ä1óv© ‰ †<,!I°DW‚˜õ[`ŠÔ†„DÔC®`IHÈ6$!a7†@ž–$X¢ Bž –¼„„lC]r%XB’`‰. y.XB"ÊADIr¬•Ú$XBÂFÈ•` I‚%º˜y –ÚˆZäø™™RæAD Ò»º„„r%XB’`‰. ¹,!Ý+X¡a€Ì\)U!!¡€ˆt°SjCB’`‰®y.XBB’` Ù†$$ºrüÊÌ,U!!I°DWÄ÷&Š Ó%$$¤/!ÑÙ ¯“h yXB’`‰® fÞ e+L¾Ô†„Dtˆ²dBžÙ’r"IB¢-K,ÑÑ+UÐùqý—›ù/CRpLï $'%Èf±keΜ9èÞ={¥Çã–Š—èX$±#æh"‰/¾øO=5_ýµ‡Ù#K-š%¤®¥£ö…ñq°¹¹©©©øý÷}ËtŸãpæÞ1tÔÅ«HÔè0Ò%6cÆ Œ7ûvÙ§HDÝ8LÔÂ}àt{/IpWÀ_†$#¯w8bbálª‡ÛãÂtlc cñÔÓÏâÆ9³¥â;ƒyNá6©)¯H6IB6¼…® 2þäŠåK‘ŸŸgsCÀÉò;Y+KÅÙn˜êOÀúK¡åIV$¤^‹BÐÙQÉBmb–¬w6û€©èl*µŸ~Zƒ!C#>>º½l^ópHŠeK*´n/XŸlgKQ§×I, IDATØV È¡W1³:d{ÊímdA±yóFüåâóÑÜXVJΖÕ"*K"LpÄÄ"!! qnêåv讀czgÂ‹æÆ¸Ýΰ`8þøñ(-]úú©øN 9”tL— ° úN*„Õ ·¢l›!Ì!HÇ!è„>ÄÚëû0· ¶*—ÝŠŠV¡°p B[æª'w6¶-U(+«@nnŽ´=$¢×ve†ÛåDsc 1±ˆ‘$¸+ 9) ®æ†ˆ H))É5j$–-[î'‰m §Ë‰C«ÐÜÜÔ&!élx_‘£Hl£ ÁŸ,.*FaaA8ùW‡¨ÃlËK±©ÇÛƒs PFdØ8=5û±+ÿÀ aÝ1’âªUEúm(ܘm¨¯–SàÓô¹ûÿOEÓVhûWkkëÐP_Ã;LÚ:!#œ6rG¶¿í“™ár6"11Yn‡î r([ #„I“&à‡ 1uêä6r455bÛö_q°ªuu5¨¯o@bb"RRR‘‘‘…¾ýú#5%UÎ w)"NKîH¾’Á¼¶mÛ†„ÄDôìÙ3ŒåaýYfa’¯ÎÏ­A!¾/“áÇ}s2˜/·ŒÿÁ?î³*LZ;#L†%EÖ858ùevM¿¨hnºéF‹ D!ŽÊmÐö¼o‡äO-‚˜CEErü®K[ÎŒ­.¹#ÛßáÝãv‚(E’à.A3Øt tÿ#NAMM>ût>Æù7Ó6—íÂÄIwÁáˆÁ‹ÂÀ#zøü>yÒD\7ç&߇¿ïÛ‹_~Y‡Í›7£ªê jkëàñx@DHNNBFF7 œ‹£†Cß¾ýÁÒ¹VÔr½E]£ZXÖ¥(dó‹•   Ïp:¬w6Ø`]”$¾¤Ô8™µ‹ ·¥¤ÚU¡PHq;ða!½¾OUWWã·ßvá裇FüJl4JXÎÛòT“@›D+++ÇàÜÜöµSpìpÚÈÙþŸìÌ f$Á]ƒï%rs ±~ýìÜY+žQ>$6Ì{˜á 3ãž{¾Q\ÝÄ6 ò°}ûì߿ݻw‡Ãá@Å–rü´º?ÿ¼=ë'NÆá½û +;5ÕÕØµë7üòó:,Y² ûÀèÑy8rðP°œEì 1Ò2øÏÏœ$v­‡øþ>ë§UT\ŒÂ‚S‰vJ"¬!v­A¡®€ÃôªpHdÚ27Ç\“â iFrǃ ØN*SR\‚Ñ£FÁAÓéXÚyòØÇíâD¨S`[Å55L±lBy…¿óÀÑ`¿E¿ N¹#Ûßá–™% –P3h6mŠÅ®]x<@lŒ—üÂ0ýæÛmX±’1`À0\3ûÝ´bbbp ã±`áb\pÁù¨ªªBѪØ´© 'Ÿt2ò ÆøÄÏÎÎFvv6†òò2|úÉÇp:Ýè–ž‰^½z£ó\çÒ¹xrÇ^ Ž6"â£AˆpIq î¾ûN FtG$€µUadÔ_¬zÞ4§esìÒoôÐIqÛ§Ù䃡–_$M\6ôÓªUE(Sfâkùõ› ‡W›]™3ÂõêÑëÚ‹²² œ|ò”ÈÓØN°FBŽ˜°ÙÈáL»#ëŇhK _ ÊA\Ü ìÚ×bÀ.ò·Ç46z0÷‘]ˆ‹„{¤¤¿éMž4 ,‚ËåÁÆM¿à—_6âìsÎÁ¨¼|xØû»ù7­Ë#‚÷¬(‹UÕ–pŸïÊ3Ür¾TùÞJ|&‹L¼ðË/pxŸ¾@\ jÙÐ3äl 8påŸ0QomªÂijær3ûΡÖÿ wðF`«…ßÛª)œyX}ÀÈ=ßaW­Z…‡y ÍÎÐßPo»³%}YÃ7š…B€ƒi#ÈÎ2ÿŠòFMö“7ùÿÉÕ .‘ѪJVK?ÀeG£–ªSVVŽÜÜÁà–ŽÚÏèIÖJŠLMTø‘`¬VFÐ998Xù{Xld#i/]¶ ãÇ‹:û[Oö_·nE^Þ±¸ûî;0çúk[â>öØ“xìñ'±~ÝjôêÕÓ´ì’Kú÷ÏB|-Š•|¿C·åo•õ9SÑÌégó/ë1ö¸ãÝ-5D£ÚälÛž“D— k_ìÞ½.— GÎ ñ캢mV—…5uŽ`9¶á>l²°RÞ`¶I£ššm¬k*+«ƒŒŒnAû†–{©„ràСê66ò¶mÛ1`@ÿ6ñÕáÁldi{q×]÷⥗^Åõ×_‹;ï¼Í²ý)½ôíÛwÝu;|ða03®»n6|||ð>Ö£;Ü·iÙ% –ôë—ˆ¸¸A¨¬tÀånD|\ë*„ËMøð£ÆãŒÓ1`€±mS&O‚… ‘”€ônðè຺z¤¤$· Šq 11Ng3\.7:¼äÔ,’§þ®þ[Kµazä7V”–‘øþdö\0½èMø—)³…{ɰ—'§d¶!ÂþƤ$ ANJÉDRJ&êªtI³]#œvEXoÕX/ =Bœ”Ü õ‡|¯!ö1Xe¨i S¯EB‚'±bùRäåDsSM½ù—…¬½—©ÜmY%ËÑȦ÷ÐMÕöëvYJî€80ÁY¹r% tÇ0«¤×ªŒ¡Ýãmà jæðh@ŽÚÁ·?Ê6j’ÃÞŽÊ6oÆàÁ¹bÅÃßì9j: úNBuõ!$¨läíÛw`̘ãqç·áÚkgµD}≧ñä“Ocõê•èÕ«gpY'muZ/½ô*N:i žyæY¤¦&ûäeÅþ·^àšk®³ÿû\,^ü#/^‚¸W\1½%ŽYÙå™` @ŸÃéÓ“1kV"šš|«Ess Î;?sçzpúé†;˜I“&bÕÊ"¤¥¥!Æá{<>ŸÚšZœ~úÑP_ßæ7öx‘Ñ .—.—ÓP~ZR¨GµDÒ(ôVZ­B–™Í¼»zÀ¨N‚§]åw|ñâä”L°ñÕ’á Ö‹odS\=âk~”e]2ì%Ĭ!À¾«À&ànYY|)**AaA¾ÍÆc€³ÂlìùPŒp{Î #àÑQ¶z ÔF¬þX#ÿ2†v¢ÖDÆö}Â($ÐEEE(,,’¼ªìl¬ZÍVa;”io›3Åž³ú:=©…$;æˆ`À{x$Ààñ0š››}lä~}ûàŽ;nÅC=ŠùóÿöxðÄãOá‰'žÂý÷Ý…ž=3d#륭NëûïÆ¿_¥M^VíïpëÅû¹föU8á„ñX¼x ¦NŒ+fN‰;È•à.ÖÎ"&¸ñ¦&8Ùg£cÏ¡XôHw¡.¶®n»àˆK!ÙÈ4ÆÔ“¦àú97àä“NDsc#bãâ} Pb"¾øü?ˆ‹‡GgËBs³ ÉÉÉHˆ³[•¶}$Ô¬S)½X£ihW©í"ÕíVu‚…z;t0rl9“ðë ËŸ¼õ[¶KkW…`´žÙõž fåj1&F²øL0|Î[; 466 ¼¢G †šF#‚…3ÁÁ®Ññ=ÄEq“uÔ3ÁlknúøÉƒì{có;ØtJdŸBÚ`ÅÊU¸nÎ46¹üÚ6äNÖVHͼˆÙ3ÁVÉHàÓ§ÆÏ+G§ÙƲfË=>kÌ“:‘ÙÈ"¦€g\™ìЙ’HYYrssUçCëüjÁеal†¨;̈‰q --Ng³<ûê+ÁÆÃ?†/ÅK–â¾{ïÂŒ¿^îc+û·‘õÓÞ¾cžxòiŸ´¼yÍû8Î;çlôìÙ#¬öw(z€yOÍÇ?.ÅÔ)“ñÝw?`þüçqÍì«,sI‚%Z°aÿÏ8Ø\ƒ>‰}Ð'5 =Ò]ØQûÖVn@z\*z6f49¤øàAú£wïÞØ±sêêk‘–Övi||œî3—³äˆAZZ:Èá»í¹¸Û*ù D˜Í¤¥·bDØ Af€« ¯w;´1›©Jç é7°ôL½ïÙaïvh3¯Ýz&9üœ2ù;ŒVC¦ÅZ2&xéú56lzuÏ´¯Üm² :ÿ™`;ˆ’-EîZ¢®Qlbý‘«KKq寋ϮZÂíX47G`Ûµ®$ắ—mÓLàD#ºý™ìxmñËËËqÎ9gÃaÞÙÐÎw¼ƒÂÌdfeÁã¡66ò¬«¯@ÕÁ*¼ðÂ+¸ñ†ë0ã¯Ó|lå`6²^Ú}ûŽâUKгgŸ´f]}Î=ç8ì°lx<î°Ùß¡êå©§ŸÅ¼§žÅ½÷Ü™3.Ç?žsyÌÌžu¥%î Ip×ÙýbwÍ.¬?°MÝ8<% Õ N¼·écÔ»êqÕðË‘§Ì@%ÅË‹=nLž<ûöîAÅ– >Ò°´»vÿ†‡õBZz:؇$³‰w ôÝÌoJX}í$§f âz MüäÔlAt覥þÝ›VÛ8Y~Ÿ&³Z¾V9|ã´æŠ>ØwKw]%’S²ZœdÕ×U‚ÁHNÉd´ u•HJÉjy>Iõ›¿¹__²Ìº[9gœ¡"ÜmåÖ_qfß³ÈÜú½¡þ Ïª0À‡Zx¸eÕšS¨@ ½+–/A~þ(47Ö´’½@Öc-–…lЭ%9È®ÃdØQ;åÛ^cœE"µióftÏÎFFF7?g‚m"1.dÝ0Ìw·I'$bÆ6©ÁN§S‘™40w’&r[eåÈÍò™`ë[ ;î${ÜèÖ-ýúõ×µ‘ÿvÛM8ó§á˜cŽnãØ*˜ì/íî‡eë:©U‡[³¿Ã«—;vbÞSÏâž»oÇôé—Âíq㪫f‚™ñècópöÙg¡gÏ&egy&X¢µMµ(ÞUŒu{×€x»ìu,ݹ}’{!+¾—Bpšp{ŒG§žz vþ¶ k×®ÇÁƒ•ðx¾š{3›O |õò ž¶µ¾¾®RÐ, ém…÷·V‚¬NÔZ‡«uÄ¥Sÿ¦]‘nù-9£éyÅoIÉ%4øA£OGÿ,c1 ôc…tTи<~ï,µùì¤ßÓz꣚AŸ·ëœ±ê\¯Á+iÙhºv˜ z—ýÐNŸ@2…élqѪ"Ž)4•pИzºW= ¹MØPÉÔåc)‹²´ÉÀZ?j:–aqí’GS°Ä–Š-È4Ðr]á.J€½6rZj*ÆŽ;Þ¯ø9¹Á®vac7p&˜ÃQªa;Ì!ç-ï Žd åL0[Êâ–›oÆÀ1köls¢fßmÖ‘±sªAÏáÛ—mŠ ï˜ð¿rL¶êI#XaßÊo°¶mÞ "Ö‡Ô [kÓž={p≓Q¶égKmË(ù \Dá=ÁàpĂ٢âUøiu‘­6r8Ó7"!{BRºÜ-ÑŠìÄ,TTU ÑÕˆk¿»ûöaîÄÇÝàñpn!6† »LOJŠÇèÑ£P[W¼ücñÕ—ß`ÄÈaè߯?âZ®;injÂÞ}{±~ýÏ8nÜDäææ"1!nW³,äWÜún½FdÛ€K#?û„-9C²éiëc=›b"¬".­g‚©õB!{•s¾­g†}.¢ÐÎ8p‡DaÞÈ× Ù0¨sØR†ýÂQTJ)2›«KKð—?ÿɉ á•ŦU/nÙ¦ÜììLŒíÀ‰îmÏFÞÁüøÈ65Î-<8×ôyà€=ÚÛNö@˜àñ¸—€‘£òàp8lµ‘ÙvGÖ‹E W‚;?Œ®ïo8€þÿ7¤åû˜Þøö‚¯Ðìt %‘áaåÎàøX†ËCˆu«;syuuõ˜;÷ìßÿ;–,YŒ;~…ÇãAzzêëë‡þý¢pÌXdefÁáðHÕèb«Â&Ȱ9IÉÆ}#|óÍwxfþ³øß矄.…¿ÌŒ­>SÄë1Q´ÕO{ʧs˜á¥ÉÍMÍèÙëpìÞµ‰‰‰œ81AÛåÚ˜àN«8¬%èÑh;ïk§L¦ >¬õó_¯½ÒÒÕxvþ¼pÏ£D°íµbãÁì‹δ;²^äJ°„²“²Ð/½/êšê>áq8]1 ê›Ä)Þ¡ÄppPp#qò¤ ¸þ†[ð0;ѳWOüñOçÀåt¡¡±HJJBBB"bccà ØÓ ·Ë% ¤C˜”d:J‡\VdçU@&Þ'hTßEÅÚóÀ¾&24È̃ÆÓ3`ÞèoOc›IqðkIüÙšDfŒ4 CÛ –m`Ï\á4'£ÖOµÉ­ŽëÖ­CnnÂ$Ýdá—3‡ÛøJòkFÚ²²r zÔF’_#p9ሉ ‹δ;²^éZÂÇp!lš¹Fúy€‚‚rŒ0ÖcÁ¦ Mn7l¯±\TT„ˆÊÃÜ~ï«›f{“^ÝÇíÞôåÄ7Êȯå[0~üXëïÚÉ_™…ÇíD³Û9œiwd½H,vÄÄÄà„ÆaÁÂÅ8ÿ¼sàv;áv;¥b:6¿*Ü)ȰBllu84B\\\ŠþïYC¹Ï‘m$Äá ÅzĘlªßÆÈb [•Èlúá&Ê‘"-EEÅ8á„ãmIæhR¨±ûx9Òòv2âkI+í~\1ÈÁeå<87 ä·ë`5Âi#wdû;²KÜň «® hnvùt6¬kàúº°õ¹8ž}ŸVþ ÄÆÅÂét ^¤<3~ÜX|óÍw8íÔ“4 9Ü–Bµ¤«Î@ùÛæyŸUfݱ“Ûxšl›v«<ÔúNÐ{GÕ3¬þ•4ß[ß4ß™Ôù“¦lTihÁ¶ßµñ½Æ6kâhÓ£ é³NúÔ¶žhiV{/fãÕwÒÓ¿~ÓÓ¿þw5ßÓ–©ÈEåɘ5ò·H¡­C¬© Ì‘&=ùîÕ'µÜ™Uk)À¶íµõymù´5öìÝ"Æöm›±}ÛfÙõIHXÀ¢Å‹0eÊX¬Xþ½TF—©&¯H3¾z¿«Ç/´8íiu–Hšô4“^gŠªlt¿‹±j{‰|=Z³pÊèû<ùúîWÿ®~žI+–êòùÓãalݶ WÊË7B#,Zý€“êêR%Eš¤©udVéôd$_›¤mùøH¯Ò?k¾“ÏĤw|ÕO:éiëˆ:O•åGZý’ÏÊ%û}^[MôÊTõØØ¸\¡v½çSî*ÙõÊšºÆŠm¯.SRÛz:uzuÌ[T¶—º<\Ng˳þëéÖ7Íù<«[?¤c¬.ÿޱm™6ÀúêœÃ'ÝM›6ã¬?žƒM×j¬ÍšºÏÞ‹ŒF´žŸm+UúÏY—5è3†ýò˜užE!HH&³¦Ð4cùîƒ5B+·>øï¾û.>úè#ÙJHX@uu5úõ뇪ª*8©‰Àvˆ*8L¢ ­ ‡ä§ÛÄêûÖ­Ûpò)§`ó¦~b²É×ecÒr(:d‹êe{ê ûŽå¶ï`@9ÂèÐ}6¤Ýºî!Ô6¶Ç”ׇ µyV:ÆêJ]¶îÎMÑ>Ý õöI`ÈàAp»Ý(//«ÛÛÍHD(¤(Ö{´ErLax¯åË– /o$š«#”+…©(lôÈM‘®+‰êí ›•+–bÔ¨‘ð¸›àqÛÎUÚadÃÙq{ÈÎÖÓmŸ-Ða¤»Q¾ 6lX‡œAÑÜTk‚øDC;\¨rzS"b˜&—î8u,¤”Úǵ5s4?k••U 7wP[· 6Ô1 ‰HA®KD 'NÀâ—ÂãñHet92ìg–W'Øþùà­nš ç0Hæ›Ê† Ñ·O_¤¥¦Z6"Õÿ,‹xÖ–·mM)@ú¶-¼…¾Š§·ÝfQoźS¯àFgUTTŒÂÂüÀºÖYaõ»Bl©„l,ç É´ýÑÞÚe¢Fª¿òÛÛÛO™"ÒŒC¿òŠ äæY æ@¬XöWí¹,1ôìÙ½{÷ÂêÕkŸ?Z*¤Ë˜@›Õ-EÓoß1“8^Ño6úìy_Fqq òÚ&j1a6±RðUÛÈ`nE×|6AoØã—3Ÿ°Ù•òÙÖ*NQÞŸØ›Ôî={àlnFÿ~ýøâÎí”,G@šð­pr;Ÿ?¶öÖÜ.U!œ•—U 'gÉ…sIz%¢ r%¸ËÐfÞRÒ²Û|Ô¿éý­‡)“'⇠C~#=yåmU^3ò ·+ŸpÊÙüÌÍ„{ƒ’S³Ú|Ì 5~xg¢“S3u›^rJf€¶ÙФ” ËÒ)$8á:§òÊ‹ÉÕ(»z½Àë[tdÛRXxVrý¦dæ kÐéÂó ´¼j$ºÁ•Ú¢¢bX,î0¯ØJÖ_Íç0ì0¹ #Òý Òùc3Iý%²›7ìϨÙéÄÞ}{Ñ¿?CCº\õ•ˆN>$I°„ ÔÕðù¨ÃbÒÄ ¶`=yŒÊaF^;u'ar€öóS]m%êj+Q/>f‰p$ŒCÙ”ì½T\RŠB•CŸ€)…G†Ûo¶"Èa%ÉfI”}uÖ4åvúDH3EÅÅ(,(hŸò0œ|$‰.¬µ‹öèK"HzMõÔfìÏLâÖ­ÛЯ_?8È!·ÅÅ%(ÈϳN#_XáÉÅŸC*ÇTÜQ*AFCÙFoƒ-/ߢÜC/!ÑI¸$ÁíL‚'âûJEHHblÑüñxýMMM "$%%áÜsþˆ+fþ‰‰ ¶Õ]‡#Ž˜88±-[g™ n·ìq[ï_c-8`} P·‚#Ƈ#¦¥*1n·¨±‰\·È@_Ø\†@í2Æ^½z 55­¥ÍÅÅ% ݺ RSÓЫ—‡Ôý½¸¸×]; ˆAllt™FDÄÄÆ#&6‡"›ÛÕ·Û ·Ëe¤Œ£+GItmÁï¿ïGbbRSS¥2$:’*èâ3!Â@Û¸q†/DŒf«ill6—mÅm» µµ5¶$?ö8rõƒÛÕŒ˜˜X?~,,XŒsÏý“_#À¼ºz<.°Ç~Ç&DŠQûö[ï`ûöªü<8t¨ݺ¥|þСjdff ¢b úö탸õõM¦ÉU0ƒ>>!Å žÜhn¬…'#ßK´¶m߃o¸µµÕ€f§û¯DïÞ=tŸÙ·o?Ò»¥aÕªÕ¸âŠ+ðÒK/¡®ö€á“@õÕŸ|sn¸µµµŠ|ÍNìßÿ;zõî­?ØïÛ‡ônÝP¼j•%ù1±€#ï¾÷aKžfpÊ)§ oß¾8óÌ3±páB|ñÅHJJÂØ±cá„Ñ«`Íšu:ô(ÄÆÆùÔ%o»½ýöÛ-É ßnSñè£"7§Ë–ÝX²t9f;©©iHLL‘D„øø¼÷þÇxã·ñÖ[¯!7''Äz‡¸¸$”WlÁ矎Òեصk'@„¾}ú!?/gœq <Îæ¸C dÊVþ5>b bcås ..ûöîÅš5ë°uÛ6TU).;; G €‘#‡¡{p6»àv{L‘k£$5.>ûö´•!33G €Ñ£G–!’“S˜˜ÜRoâSpÛmÃÚµkñïÿÙÙp6×ÛÖG&&&#%%µMzÌŒ’ÒŸ0pÐ@du?O>ù(®ºrfTp""B\|2ªkêðá‡obÉ’¥xãfÍš…“N: §vîí‰bȶŠ)É®(«À9rcƒ„$Á ‰‰I6¼ :[McãqÓÍ7bÏÁíV0Ø–üÖ­ÚŒ[n½Ÿ}òßcz’¸/X;bbát9°|éò Q~~>ÒRl7Òcbc°ºô'¬XQ„qãŽm w»ÜøqÉ2=ôÈ€Ïoݶ#†§³Û·ïćþçœó'466Ûbä9Ÿ˜Žûï¿o¿ý6\.WÀø Àÿû@h$866>ú(víX޳NQVñwînÂg8nü{\qTlÛö F­Æ¯Ùqxùå—1vìXL›v šª é"P}õ'ߦm;P8åÀ=»Q^QqãOð#ßvô<éYÙ–ä‹‹Oµ×ÎÁûï¿ììlSúœ6mˆë®» .DbBfNŸ†[ÿvvíÚ… /8nס–øÅ%úÛ8cãqóÍ7£®®ãÇ·¥ üøã¸í¶ÛðÉ'ÿËOû eí±¸¤³f_^½z£¾¾„ÛíF||<ˆÙÙÙˆ‹‹ÃEOÂï¿DZZšÑÖáC*âRPºz n¹õf,Z¸}rCÁ©Hí™cýÞmø~þ—˜3g¦LŒÇ}#F ƒ³©ÎR[U¶ò[ù›‚N¶Å'Äaû¶mxçÝQVVŽŒÌ d¤§#A¬€ïúm7~þyÞ~ç} z$.¼àôé7Φf[ Tµ ï½ÿ6m*k#ÞÝ{±aÃ&¼ûÞ‡8òÈÁ¸ø¢ó¬É º†È'Ÿ|ÌŒ^½záå—_Æôé—ûì²…9iä+/«@vV232ÚÈdõά߻ cúŽ I\GL,@q¸ï¾ñä¼'‘žž…#ça@ÿ!ÈÊì‰âUñúëo [·n˜7ï œÞ¹hj¬±PG£Õ°í"Kæ*ÊÊ+äy` I‚%:Ô[ôÔ[Mµ¨©­ÅÈcÄ…Wæ7­Þé9è—qÆöª ØSó«ß¸oعþÏv½É“&`þüçuãÇÇ'ãòË/Áû|€„øx¿é657cÜØã°tÙò6ïâñxàr6„@8I\㔄ɓZÉ]CC–.[áCŒ ¼b –-[ ‡ÃóÏû–¯X…‰ÇI'MFYY9Þxó]D¸)dã56.¯¾ú*^{í5Ì›7/`Ü5kÖ`îܹhjv"!žB[1" ©©yÃSpß-GV”Tc嚃¸ô²¿¶Dûàýwðò Ïã´3þ€úà¢?5àÝÆóÿú 3gÎ@LL .¾ø47Ö†\_ÛÊׄAÇ ÇE×ßؼº;~^ãW¾~ŽÀñønzæE|ùæ¿0sæLCòµfIذafΜ‰[o½Õ°*ãââžžŽýë_xöÙgqô ^xû¡éØòÛ~œsøùæ›qÑEøÇâRœrÊTÝôjkk1aÂÜtÓM¶õ+W® hS2*’6p:˜5ëzôî}8jkkqèÐ!ÔÕÕÁáp -- Ì ‡Ãôôtôï?óž~÷Þ}‡)˜È¸„TÜ÷Àxdî\Œ:u ®ùשÈÝeU`R2Ðí°d€€ý;j°âå éÝw߃;ï¼͵`öXè_0!!!ÿýï§øü‹¯qÄ€þ8唩HKóÝ~¸aÃ&4;8î¸1ؼ¹÷?ø(ÎúÃi8ë¬? ©ÉÒ¤š?Ö¬Y‡´ô4y¤ïDhMM­m2¸]͘={6ž{î9ÀW\×_/¾ø"Ž2ÍMu†uojò¥¸yÆ"<þß[à˜88 N¯üÞço·Ã¿X…Ìõ¥8jÜåH­o„㪻,àºúfœzêTìÞõ;f\~öîÝŽŸÖ.AeÕ>T×T¡_Ÿ\tÞµhljÀôéÅ¢E‹1þÓp6ÕØºÃ(âW’ܨDE…²,!!I°D§ ÀF·”CïôôÍÈÅ{??á¢á÷€áÁÞšm†Ó2d0\n¶lùƒ ÔZfسg7nŸ3·_?Ão¯¿÷)®ýÛ#˜9³íV¶1cÆ`ÆŒéh¬?ýV¨Âž={…®}ßÁƒsqé%áµ×ß Aq̰càr†¸"—€×^{ —\r Î;ï¼€q-Z„“O>ÝÒÑP0"úp6++9MM¾+:³¦÷AñšüûõWñ—¿\‘újF¾Ó.™ŽŠukðÚ믔Ï<ýí°^²·bÅ \uÕUÈLOÁs·]rîé ÀÀAäû|IéjÜy‡q¢]^^ŽÊÊJŒ3Æ&S–LÛ¢zDù³Ï¿@||šššPSSƒƒ¢®®ݺuƒÃá@ll,ââ⣎: ß}ûƒ ,¶•&¤búŒ¿â_}ŠËŸšˆ>Gµúxõúàv*+159½PpÆ üáÆ<Œ8¹?æýýqlÛ¾/½øšýí Ÿújf 4‹—_ù'Ö¬Y‰Ž×õ°aÃ&üüóÄÅÅ!--ùù£0 ?|óí8p Ó§OCS“Ó²ƒk2üþûþ–þLM„í”ÁÙ܀ǟ|ò vìØX²d F…[o½wÞqbcaû¶ß’ÒRäç#Áž—V|úã4°Û n¨Å'€Ýn¸ëkñiù"¬‹=€G‡ôs®öì´4ŠÃ©§NEsS ÎýÓ•xó§0iÂé˜3ûn”¬^†üÑcQSSÏ¿z;ÛŽëf=†W_{©©©˜ûðƒhj¬A{ <W’Üh@Yy9.¼à<©‰N‡TAׄzKi¨è—q>øy.~Úó-Vïùýò(úe 5Τ‰ðÂE–å(= þéTÔØéó©Ú³W^y%ÊÊ*àpÄD…þÎE·né¨oh@¨s1±øõ×­X¾|9.½ôÒÀ†¦Ó‰wß}—\r \Á¼ÖÚˆŒŒLdff¡{÷îm~;¼gBP#ÇÎújV¾Ìž=CNÕªU˜5k–_£7-- »wïÆ9çœ ·Ë…gn>½»wÃý/~5›ÃŒ3põÕWûùäs$$&¢±±MMMp:HLLDRR’’’œœÜòwJJ Èá0eÇ'¤âþÀÿ¾úÓæïC€ÿÏÞy‡GQuaüw·oz!´4Hè)" Ò¤ƒ é JGzoR)Ê' ‚ ½‰  (½i(¡†NzÝ:ß»„$$!eƒ€ó>Ï<»3sgæÌÛÞ{Î=‚«¢t¢-³ÑÊùý7ùvè~{o?7:ϩÆM?2uê4ÔZç§æ…N§³›@ë²G­šM›6ÛÈg½:™àGõøò{ç£nÝ×8~â[¶nG­ÕäèKf&ƒÅb›¤;{ö<.\zâÚ'ePg¿$IV” ‰ &Ø ¶+mÛ½ÉdbÊ”)”¯P¿Fçäž%¿YEv4ÁB§Ctìøp ¢d=>C|8kpYLbhþxÞk?Š2#–!-ŸuïÆ,}ÿ”›Z£gò¤)ܹý€zuZóãO‹˜÷ù*ú4Š7¯°bÕLž1„Ò¥*2eÜbºø +VN¥ë‡£˜7o.‡ÿR¥qhû˜Ué³–ÈA툌gŠÐÐ+Ëš`/dMðùãçÐÛîƒ'¥–hÃäýˆÄ;h”Ù¿×oÔeËÖíôèÞ%Gr”)QŒesÇ>q<>!‘Ÿ¶ýB\\BQaWQä…i]ÊAaÑ¢EP(D†Þl…Â1sP*µŽÕ«WSµjUJ—Î|òa×®]$&&Òºuë§šgæøÝ½Ôܽû€_/Mö¸ дy $I"4ô  øÿkåÕÕË‹ûwï²âëeiäk‰$I\ ½L›ü–»wïf×®] éç·‹‹ f³™¶mÛrçÎ]ÆôhJõr|·ý/~ÚwŠW_}•… ²lÙ2ztlÂ}üÄ)ªT®”ê2CRRC† I×Q–J¥Â ŒÆj5ãDþT$+÷Ãç§ãÖ­Û(•ªd³g´Z-nnn¸ººâì으999¡R*mq‘yú’R¥áÄÉÓLŸ6.sëááó$‰}w|­äÿfƒ…¿…±åß\øã6+ÿJ÷yõi;ª‡M U«V”*øTgY¶òútïÐJ¥‚ׯ³uû.ê½^gg§L °íšÔ“y®®.Ô¨þ ?oÞFåÊð)P0[Žª”*e¦2(•ÊTDxÂ4úI eÛY–Ù”D§N˜5kÿý7eÊ•£ý»ï2vô(.]¼HãÆéСsæÌ!Ÿ—;&cfK\¤Lˆ– F£‘¿ÿþ‡ŠÊ“&½?‹ˆÀËË>!Р5ÂÉ5Õy«deä®l ÙÇgõúÒ±’ݯ…o1„V—­÷BAtL<³ç̦{×±|÷ý\æÎX‰Ÿo1þøóWf}a3­¾{/Œ‘ãz3iÜ"êÖ~“è˜Hvíýžo¼ÍÈ‘£9xð×L×Q?;¿Q2} IW¯^'00PÎ /þSš`!Äf!Ä)!D¯^¿M±=‹i¿²?Kù¼çË#SS‹åßí°Þ¨÷:¿ývk:ÞÓèX,Vî=êvÿaáááDE'g$6Þ„Nïþ„yiv¡Ö¨Q©T9r”£ÇN$oáá§xñbœKQü•‚<¸Ã/ߜů|~*4 `øgÃPkœ²U^ÿùç æ ¡Z£fíº øû=Uü´‰7ߢ¬[÷jMöÚµZÅ÷?¬ÏP†´ÈL#üX%ÙÕ‚J’ÉbdÊ”),Z0Ÿ’¥J³iË6† ŽN§cÍš5”*UŠÿ[…FçŠR¥&§ÚÃsçþ¦xP1ôúŒÉê¤ÉÓY¹jµ­¨ØŽtöÏTýÒä}óYn;ýku¥gµK&ÊUC”Êžs,¥JÃúõëqwÏÇý{aÔ«Û¿â?ù;7¯b@¿q”+S…ÞëC“Fm8¬÷îߢyÓwˆŒ¼GÉà*üþû!®_¿‰P(ÓÏe)›Ÿ%Cr›ã‹e¼`¸}ûù¼¼žN†ŒçÿM°¢Ð0Äˤì{( d•Ô*âyÏ›ìxÛÍKøø P¡‚œçH©¢[×Nœ>}c¢1“4f¸4WX¥áèÑ£\½z•÷ßÏ|Íjtt4?ÿü3[¶lÉSè„D #§†qÿaæäú¬ý9w7Á”Eþ•òX¶<./Wñ1YIˆgÿƉŠÄb6Ù×hdUªd-ZJh4œœœX°`+V¬ b‰¢Œë՜ۢøtæz”*?ý´ooo-ZôÄDÐñã'èÒ¥“CdŒ5>Ädµ•ß(à *½ŸY½ÿçŸÎ A«Õàë[FƒR©D§Óáââ‚««k*"¼gÏ>êÝ=Kƒl…BÅåÐ+Øÿ¯h’nšãÛ®°uÞq†®o…“ûãAžZ§¢ÝÈÌí°S»¯Ó¤O%j¶ bQÏ]ܸ†O,…Óêô”³›F§µ¾P(÷ïÝãÂ…Ké:8Ë*~„àAìÙ³ˆðp\\ÜÓP|2l2\ºt9C'kaxR#œRg÷l‡¬3™’hÕª%5kÖäÈ‘#üé×ÿzöþˆ&Íš1aìXþv€^½z%;Î*U2£1>ÛÏ:vü¯¤Yœ˜˜H“¦­RÝ›6SëÕš7› …•ÄìƒËøöĺ½ò.ŸÖêšúæ;ÖbÕ9¡*›!L¯¼:t˜Á•9}ö÷ÁÚõËYòÍ,ÔkN«æïsáâYêÕiJPñÒ,øj2}´gƤ¯y½Nn†]ÄËӛÇÓþí6X-O/Ÿ_-Y@ï^ÝSõ±’$±hñRT*%½{õGËÿa\¾Jñ Ù3´ ™¿È蘙Àh °û¿óú)»\[G—o»Þ.~x–C§~¬ q×=9`ör*Hb($™â¹q–‡ñ™; yÿ½öDDD>UŽ•ë¶˶ù}9˜fè7ýGbãâ²lJšÂ#"°˜Í¨TJªV}úŒÿýû÷QªTäóòÊñ3Õ*µ>Å IÉwß}GãÆñyÊÚÕ 6àééIýúõQ(D²6ËlLÄä€É-»Ã9tÜ…÷:tËRú­[6°êÇ»Y¾޼C§ƒ[W.³xÔj5m™Š¯˜2Ží;qïÏçþƒó¬6*•J\\\øõ×_8p Þž®,úy9 IDATÖ‹ÅJ¿ék‰ŠMà›o¾¡zõêDEEa4>9ÁâééùÄ>“ƒö_EªcŽçµ—Ùã'NÑ·ß>2Ÿo¾ýœØØ8 .„J¥JE‚ÝÜÜpww'$$VC£†õ³8I¤fëÖ­)îM¾¢O†Tºzò>[çÀšŽeÞUƒ·¿·/DiÀ;À ?/¶mÛFÏ]2%©Ê«B`2R6¿¶ú«TrúôY<<=Òõ àî« §OŸ¥NݺY"ÁJUÆ2ä„§•Áœí¸ífS"Ó§O§^½z,_º”÷;~€——¾¾~,ûf;·ogò¤ >|˜J•*1tèPÆŒZcs°•üZ­š©¿¹^ÏΛ“{ÍoV¬$$äŃŠ#ÙÍ¡%`Ñ‘U,þsïUlňzý@ˆÔÄÖ·huO’])³ú¨ ,, O@ΞýƒÝ¿lb뎵üyô7zõ‹{÷nqhµ:Ìfá:ºÝ:}ÊŸÇþ _>nݺe¯Ã™×ߘ˜† ؼèúI¿ÇÎ|ÆO˜ @Çïáâ₌ÿ( –=CËx)¹Ð„ !ôÀûÀ_À`Ð'+$X¡“$))«Ï‘$)ñEÈ“œxÛõt*H©ÕXsvn¦:w'öròÿ›Ñ3ñ@‹Tç 8ûó~ù œ¹µ?Óg ÐÿéEX’øö‡Í´}£Å‹æÏö»ß¸ÉÕ[èÚµ[†ñNŸ†ß?Âo£×go]jbb"õ^¯CÍšÙ÷ΫRëøó¯“ôû¸oòºNI’¸{÷.®®®øøez}DD†àAÉÇ\\\øjñªV©k+“I¢¨oÚ¶kB<5VqÈ?g0™îäYyÍñ11¼ÕûcîÝHí½¼Ã ÏpÏ—Ÿ‹'zþŒ£Û J•*•üßÃÃk׮ѾýÛ(|9¼=Þž® ž³k÷èß¿?]»v%&&&C"³tÉ—Ù–£víÚ˜Íf4Z —cÿ 2É–ÿ‰¿ÃÉ;»(ä €«&?¥=_ÇèxËC‡~gè°q|Ôcîî^ 2‹Ùó†rûö*V¬ìËÕÕ­VËHJJàû5ßfù …Š'OP øÉüÝËQ|?æ”fÀŒ fÂoÆ¢Ò(qö°i‰ »qüÄqz+2ÖF'%%rÆ^^öÁ …‚kׯãáæ–¦}ù“Û·ïä(_===¸ví¯×Ëšó0‘ Ù!‘‘QÔ¬Y-[2df4k2¨S§6M›6eÇŽ|µh!#GI®?M›7çµ:u˜;{߯þŽiÓ¦±víZ-ZD£F HJŒ}b¹GzÏ;vìŸôïûÄñ”s? ¼AçNm lG*ÀÊð3Ì9¸”V¥1¡Á ≑ÊUC(”Ù^€«R©±ZͨTjZ4y‡k×/qîïÔ¨V—QÃf3sîHÞjÕ‰ â¥iÔ²,ÎN.L¿„Ð+ÿ Vk°X̨ÕY³bqsw§_¿~,\¸Q£Çã[´(mÛ¶fíºõÉø“O>‘ ðË1‚e¼¤ø¯h‚ÛîÀvI’„–Bˆ¢’$…¥3`- ŒšE…g n‰@3 ¤â¢}ÿ¹ž Ñét”+ÿ Z.Ë䧈[;.űۙ/‹6X¸u6Õ±ëQgÉïT”*>Í2•ÉŒø>‘ãg¸rýo}Ö6Go¿á—“”+[š*U*“‘£Ù£7ÃhÙ¢+–ËÖ³Ÿ8Å…‹iHpÖÖO©ÔÆŽƒS~õÚ½æ’pd߯ÇÎÛ0›r?S¡|E¼ÜÀb!V¡æÞÃð\ÍÒ=BNÊkF(Q© ÿûó‰ãîùòsóòE6.[HÿϿȖ|OƒF£aøðáÉÔºuëÁ”~­¨X¢(K:ÌöÃçyã7˜={6ñññé8¨ÊÝZ;7;Ñ 7_ãË¿z¦›fßÕ•©ö×Z¢´Còávíþ…‰“fÓ·÷dœÝPk”,”ï¾ÛÀ€=øå—_(Uª$–¸¸Xâbcéѽ ;w´/+ÈÚó…Bpûv.>©×|FÞ‰gå°˜MÖ oeµHlžs C‚‰JPªmdÖÙKË­[avíyFåU›¥ò*DFF¡M±Ö.>>!Ç@«Õe³É‚&_ñ„ ÙEXØ-Ê¡wÒg]†G T38o2Ä3uêTvìØÁšïVÑ¥k7 )’ª,›0‘ÖmÞbìè‘\ ¡I“&Ìš5‹Oú÷}r™Ë£gÙŸgó@®¥TÉiäH]Çü|‹>>n2ròúI&]8J£ Ú|ÞtJ…Ò™¨Úþ’Þ ”õH V«…’%ƒùëÈßøúñ ü.ó>_ÍüÅyðð.‡œ"**œ+W/`4ðñ.ÌŒÉË)RØŸí»ÖS¤p1þ<º‡àà`$«åéõD’˜9s‘‘‘ìÚµ“á#Fs3,Œ_.&_>/š5kÆŒéS°˜_ˆ¹}yH‚ëÕ«ƒ¼Î[†L‚_Lt³÷R«ìûßu^v²›r@ ~ªË€@=``î§H+ì÷j¬æ•€•@Âsÿñ³émWBB)rSdr§Á{d¢¹jíV^­PŒ"<²}‹Åʦç1z<–g"È1$ Wõ§ñÛŽ!ÁïEv.G-]¯Q³±c?%qý*¼ÿÅàæFTLÌ¿R^³‹‹'³mÕ×|:k:'ç<ûŠjµšK—.qóf !¸Ëþc™»zþþ~¬[·«ÕJRRÞ­Ï÷T¢ŒwîÆÙ,8¬’•¨$[X­…yè R@hó¤à løi3_|±Œ~½'£Ó9¡V+)XÐw~;¸Nʼnc‡ »MBbE ¦`Á†©’°›©>¼ÅG&ñíàýÌHV)Ý ·+Çï±oÅ9n_ŒÄÃÇ™F½*¤:¯ÈBìß¼.¯¹™Tz‚þ+2dî@Él6P¡|Y:tèÀš5k˜?o.ÓgÎz"]¥Ê•>bÝ:w²IkÏ•RýªÕ*ü%ƒÉ¥ôe:T¼0ŸžùŽ6Þe™Vª=ª„8¤ØhD\,*šê?* ÈVNY-&5jÄÿV|KÇ÷±uû:êÔjÌ þY÷Ó7ôЀÃîC­Ö0}âRŠö'>!ŽÃìåƒ÷‡`2™¨[·îS½—'?ÓœÄÒ%‹0` !!ÿ°cÇN‚ŠR¦LYæÌ™#`\–Ã#ÉIð‹ !D1;‰Ý+IÒ#/Jë€ù@!ÄDI’RÚmNjý$IZd?¶Tq ‘æö½ìxŽ$IƒS<ó8°üEÉ#›©é9Ê—%SSÓ°¨ 4 êMTÒ=îÄ…¦:w'ö2F‹­³Ô*(蚺Áôq¤qñœ~Š9ôÓŸÀOÛ~aRŸæ9ºþà©P"£ãùàƒ²V899ñê+ïòZ½ú–hIô/?Þú5òm<ˆp÷ 2:æ™—×Ì T©Ñ¦1e_=gn^ùX:n¥_©A£w;æI~iµZ6o¶­9œ;y#'Ï#>Ñ€N§cÓ¦Ÿñðð &&ÆáÏ=wî¤råʼúê«|TqIòÄÒCÓ5&ìo @ïª p®’Lø C*™¬\ù=+Wm oïÉh4Z”* ºS  ;;woàðáý¬üß245¥K—Ì=ý’¬-âËÙ»6Ów³Ñ·C‘øÄà=ËÎkäVH Ñ6Ö_´L>Ú~5•ìøe‹ùfÙ»zfåU’$<==¸{ç^ò1gg'Ê—/›¼Þ6»0’ð)àåõÜ’$‘/Ÿ·oå\û\±Âc-ð# ôÉõšr£!ž‰'²nÝ:6mü‰î={\¢Dª4'Ž£ßG¶€}ôƒ $)1Úáõgoèa‚¿˜D›Æ¯ñ™±ÊÅ“¡ó@8öÖóÇQ¤ývÑ¢C¶ža6iÚ´ žžÄÅGó ü¿ìßJƒz-x§m7Â#°v½mh1ðã T­ü’$1Ñ$j½Ú”ý7ñþûïãâ¢')!;y`bæÌÏ™2e > @FŽ ‘ñ߆ÅbáVØ-üü|åÌ!“à]±©¹V¤èôã„ëÎ@`}ŠôõØ´À)1æX}lSÆÓÒ_ÍùVÀ‹A6o»¯<ÕÛntÒCÎÞ9DËЫ¯r×y3å·6\‰< €¯{FÔÙ@tÒãØÁ‰¦8Îßý=Õ±œà§­¿ V)hX#gä ûNÓªu+<<ÜHJˆ’[€ÜM1¡P(ùbölÄÝmàáù1˜C΂B5â!ámj“oãAp÷tÎjyU(T(„wwwî=Lý­KTªB‰JUÐ(¹;a°X™¸j}ž{;vŒ5kÖ ×ë>|8ùòåcÉ’%lÙ}€xûzÛ &P±bE¢¢¢îêæÍ›L›6ñãÇ3kÖ,4 Uª•JR© `Aw tççÍ«9wö_/[ˆJå¸nÉj5SµJUö~a[Âa5K$ÄÒU~žÙk#Ê •‚ÀJ¨Ú¢eëú>a$qçb UÛWÅj5纼Z­üýùçŸ ©Ž?r4•"E½×ëdÉ)VJ²ë„+%Nég '2d<7àïKïÞ½Y¸p!sfÏdñ’Ô]óâ… “Ëë—_~‰Ñëððo‡¯§ÿæq´l\‹±Ýæ¡N2=Öøò%ºJ=îHâ¦56lYƒÙŒ5üáM«‘_«F™ËQÙ)¯J•ýµÛ(á³O?Í0]uoWJ @ùÍ?âëªsx>I’Äøñã™2e ­Zµbúôé>>×Ä!=¸ºº2cÆ ‚ƒƒ)S¦ ÷³JÅãú”»%écæ¬ùìÙó'ݺŒD¥R£P| ºãSЃÖ}Í¥KçùjñhYÌFZ´hÁ«á<¼ƒÆIE×9o Ñ«ŠÔì¶Ý¨šô^܈›ÚðáÌ×)ûú“øÞ•(ÞŠ¢Y³fXžâT/+åÕb¶R¹r¢£cˆ{‚—/_6[ïûè>+–Çb¶d1,T¬X.]rB€s"Cf0â=z4NNNìÛ»—“'lÞ¼ïß»ÇÅ èûñÇÉñ¯ÇŽ‹Fç’+¯ÿiqâÖY>Ú4‚b^¾Œê÷5.ž……ü ¸,¸¸óã¡£Th×…ÿmØ’ê¸È6¶ÁdLä­·ZÓ«wO–}3ŽN†rèÈ~:u“¥+fS·vŠ–dæ¼Q|н1Z­•*ÖaÕšÙÔ­Ý‚Aƒ3xÈÔZ×T^ߟÞVYqsÕÑ®mÜ\´yG^Æ‹…K²S,2 ~aÑ(jÏÅØ4´¶íiê !©]=‘Ê*­—Ÿl¤}îpHÈ9,–g¦7<2š£'ÏÓ®A¥]ÿó3,èCƒ ò$Nî Z†µßÙ¹ÖûwÁb‹¡T‚Z“‚,+P•¯BŒÁÀïµâ½vM’·-?ÿDp1½ÃË«R¥Awé:”+_|ïýûé¦ rw"ÿʰl Œ‡Víð|B°qãFôz=±±±899a0<.{›7ofÅŠ¸»»‘êœ#áááAÑ¢E9räýõ ¦Ž›_À[¥‡Ð¢DŠ:•uøóOž:Kãï P(ÂF€ ø¸±â x›ùóf¦GÛ`0²rÕš·lG@±Ò/CÏ^ý²¥å ð£a£Yo[ÿœÏוNÓë¢HcšPÁ›‚A¨´‡‚ÿcÝeš5oJ‘"…2œÕòjµZÉïíMÉ’Á\¼xù‰óÙ%Â.\¤|ù²¸{ze#$ò{{SºtÉteÈΩ ™Ëg&>O À¬ÏgpéâEZ5oJËfM¸tñ -F©R1uêTæÏÿ­Þ@„ÏÝ»@· ÃñqñæÛ·çà®KfëÆÍ0víú…R¥Jpñâe>tL·oHŒaöì™|Ô§7ó &Ÿ—o·ë‡Ù¢âìùÓœûç<^ùüù Ã`®Ýá»ïçP"¨"Ý»Œføà,Y²ŒŽ;¡T9!²1ù(Y-˜Œ 2–‘ŒP9<’Œ—/»}〥±9¸J‹ÞØLœ?J’%„¸ Êà~i½³œÁæ@++iŸ+dÕ¤ôy©³!”)^˜2³}­$Áú_NÓµ[o$Éô œÁä-νȺ¥;sìÏ*&"ŽÎÛä¬ÑPë°ž;Ë>¶|T©ÁlBU²šuHüñ[$³”J4uêãúÕ*BNbî8%ðØá”›k Ê”pæèÉXžö"Y-¯J•Ý…«P?EYµš^t ˆ‹£ÅŠN¥ ¨³Ÿ[ ÝdÔ(î%ä U«Õ?~œåË—³lÙ2ôz=QQQÉáµ¢¢¢òDû››6mbÇŽ,_¾ü‰*IIj°92$™þìOû÷fÔèÏéÓk yPÀÇ%Ëf£× fLŸ”®æîØñtëÞ‡+W®RªTIÞn÷VÉÊî]{ ¹H™2¥²ôl£1Ïg̤zõjThä‡_ùü)åÅ{^cÍèCé:ÇJWOÞçü¬>µSZÏùh_Fï¿÷6&ÍÀßÏ—üÞùž ÂðtÓèû÷p3ì6={tÅdÈÞZN£ÑÄ»ï´ÍPkšö2#œ2ƒÉÏ!CX¼x1ÇŽ¥EÓ7“Ï;š¯ÿ÷-3>ŸÉA8p ùòå£Ãûïæjmð¥‡×è²~î:V½3—üΞO¤ñó-Ê×ËѤY¦Nï°÷•$+†Äh&NCóæÍ5j4_|9 wwOòç+ˆÅbáðïÛ±J:tèÈÔi£iݺ ¿ÚLÝÚ­3b93fõåý÷;²vݘ 1²i³ŒœÕƒË¡”)UJÎ2 ~‘ „È´€¤t¦6…_Ÿ…#í1~OÍ„’$]M‘¶àÜNq‹@=!Äë’$H‘Ö xå¹ÿøò^j´$á®+¼ï¥/œì$Ëqƒ‰óÿ\b@‡z9#Ðnr%ì>]»v})L¡/Ÿ»Á©ßCxíÝœuN§‡ñç¾3¸{¹fûZƉˆQ#¬’J…¦f]Ü&Î#Á§(nnnXîÞ°{3º×›"Í\Ϋ¯7áØ±c™ÞsĈ÷í!=rW^uÿ„Úplìãƒ5kÒþ­·àôIÈ—>„Ý»áСÇi:väu¿é„$z$߈§Ê—öìÙúuëøæ›oprrÀl6›RÆ<Æùóç™6mÆ cçÎT©RÿTi,Kž=÷ž½œ9{ŒÕ?ÌbäÈ Ì›?™¢E¼6t@ºxËÖtéÚ///Ö­]EÓ&“Ó™¦e¤[ÌFÊ—+ÃØ±ã˜=ås>œS¯Â.U+H›¡ÕØ8㯧Þ#üf,§cÊ”©”,QCR¬ÃÚW‹ÙB‘¢~´jÑ”Ý{öQ·îk¸ººdJ„Ó~«ØØ8þüëíÚ¶¢`¡B’ ÙÌ#› ­[5g×®½OÈ ¥˜¤ÉˆçV†Ì`µZprÒ3räH¶ù lÖ¬… fùòåôéÝ‹•ß­aÔ˜±L™4‘®]»âååEãFõ1â²ý¼ëQ·øðǨ*V¾3—B®žy/II‰1T©\Ž_öîæö»>|˜°°0T*ÁÁÁÔ®]g' ¥Š9sf3dÈP  8¨Ÿ ]Ìäi=5j4S§Nƒ ÙEèå+´jÑ\Î2 ~Á𠾓2°í‘$éšâ !ð63é…@ àk!D[»vØXšN~­z …M%Iº)„P ¯%£rëm÷FTB((hWf8Wžq¨Œ‘‘$Œ´¬S>G×ÿ¸÷$Õ^©Š¿¿/‰ñ‘¹–ÇÓÃýrúÌÙl]•< Í-Š”ÈGÃ9Ë+ÇîSØ¿ñ±Ù›¬P*ÕXBÎa:c[—çüÑ\‡MæÎÝ»Dß¾ÑhÄ©ÖÇò ?}†™3gfzO½^OÕªU0&Åä¾¼véÑéh6m‚Ó¿á!\IH`÷îÝ‘/51ˆ¥oß¾´lÙ’ &P¡B:vìøÌ븓“£FJ9øÌžýÝê˜ñù>ê݃† ß`Üø¼Ù¸Ÿôï“núŸ~ú™®Ý?¢T©ü¼qÝá‘Òj±³4QgˆeäÈϸ~ã+­ã­Q¯à_Þ› ý¹w5šß×]@©JßlôêÉûlœzŒ:tbð ’¢Þ¾ I´jÕœðð~ûí05ª¿’©F8eÜ¿÷€?ÿ:Æ«5«ÓôÍÆ$åPk4$ѲES>xø„ J¥‹Å’©Ø2d“!¾}ú°yófüüüX¾|9*•ŠÄÄDV¯^Mn]XýÃZ|}ý¸yóݺuãîÝ»Ù&ÁÑI±tZ;“ÕÌ÷ï.ÀߣȿÚ?[ÌÍ¼Óø|vÞ{ï=J—*†ÕbB†ŒìàòåPŠÊ!C&Á/™B¯|JºåvÜX!IÒ!D`p]q(‰M|pOA¢Ï !Þ6…§°y„¶¿a‹EüÜ#·¦Ñwc®€$ѶÔpÁzx†ûq×&ŸdµP¸paBB.P³óÌœÝøá‡¦nÔ¨>~ÙTh4j‚ƒƒršè´ZBÿ¹‰J¥$!ÆÀ©Ý×rt§ÄXÏ^ÃhÄUë Yô‹¬RëHܲÎFÛwÆyÈâ#ðp×ãé®Gê®}Ñuí‡Á˜@ÙÒY[KdHŒÎ² ™–×  ];ÛzÀ”&ÆiM…°kÞë¤ ¶š(\ÐË!ò¥–UÇRíÿ $0ðÙdBB.Òÿ“ÁÔ«W—éÓ&¢R©hòf£ôK·$±dé× >šŠÊóó¦uxyy:¦ ‘$ ‰1,ùê+ü™0l<åøSóí õ¬@µ–ÅÑ»iR]sïJ¬»Ìù7˜2eªg߬4+í«$AR’‘®];‘ß;??oÞ†¿oQ‚KáîîöŽŒŒ"::† .r3ì6íÚ¶J&Ÿ95{ÍLŸxçÏ—®èK—.;L†Ìå³&öíÛ ’„Á‡Åß|ó5ÑÑÑlݺ•M›I÷íÛ7˼Sbå‰ ¨ª¸²ú½yçÈÒ5 ¾˜•çuI²Z0g`"I†¤X/^HttS?ïMÿ>Ó)W¦:¯½Ú„¥K—±`þlŒ2 –‘  F> §h‘"rfÈIð‹»æv#ð?I’ž÷a0Þ~‹$Iq’$-Bü´*ÙIî2lbÏ4Ïv!Dil¦×µ€ÝØ4Äå_í„ø¹DJ½ ½íJn®®œú#$Û„/#œ?z™€Â%³¼.×hL`çŽüïÛ•ÄÇÇç虯¾ú*U«T”s“0½^O||<{ù5Wï3Ìæ%;>.'½>ËÜÊl20~Üúôýˆ`L´rôû›9’Á/ñ÷Ñk(àͬ¯Æc6eÍtQ©ÒÿåtÜ&/ ))I²"Yó¼r:–•òjlÖÍO?AûöI°Fó¨ =NX®ôï¥s' Ƹ<´?|øk×RORÄÇÇž£{ !²NÃ% WWWöïßï0g[¿ÿþ;ÞÞÞÙZOøð˜L&¾]±4CÏωIIìØ¾‹ÅK–óÇÒ¸Q¾ýßR\]]ú=­³üløZ¶lÉðφ±¸çn|ü¼(솳—I’ˆ0p÷R ¢hÚ¬ ßÜL©’A’¢³UN²Ô¾¦!2IIš7oJåÊX·î'öìÙ‡«« žžhµ:ûÀ4‰èèhöìÙGùòeéÙ£+ rùÌHww7T*%§OŸK–!22ŠØØ8‡ËiES7Œ ¬]»–fÍš%O8Mœ8‘Q£Fæ( ^xX8c›váö™0n–åë®]¿‘îñâÅ)V,ï' $«³1Ž5kV3lØpfÌîOÚÍ ¸KT”ë3µþñràêÕ«øøÉeGÆK !;Kxùaµš¥´&ÀY5Vª´\¹Æg#>#.Î1k]]ݘ1}þ…žf$Å̆=ŒKÎcI²æH+âñh5Z¾_»Ž7Â’~¼ûN; S–Žj•Z£º$ 0›1³f­Õ»‘´p&Jß@Ô-Ûeim¤£pVMöÕ=š]û ukÛ“'±–-xŽ0¼¼°8é0›’²^þ²•ZÇšï×Ó£G‡9¼R(|óÍ7¼ÿn;L¦§«GõväÈ‘[{ìææÆ´iÓ²UoCC¯P­F]êÔ®E` ?w<<Üyø0œ3gÎqðÐïÄÇÇãç[”Áƒx¨ùø IDAT>¥k×NézŠv$”J j­7oÞbÛ¶m?qœ[·ÂP()T”ªU«Ò¼ysŠ)„É%›´Ü.1Q*¨µ"ÃÃ9}ú,×®Ý 2ÊFè<=<(V,€ŠËãîé…É`Ì“õÜJ¥µV® ù¼¼ðË• ÿBpPjµÊ²ª1š}úô¥fÍšôëׇ¤„èT^ŽM&3—CC)]*ýóááø:ÞÐÈC9bè³Ô Z½ÇŸä믿&::†ñãÇè_XŽŠ #[غm'k¾_ËšïVÈ™!㥃ÞÉS&ÁÿU `¶Hè²`­TiP«õ8’y™L‰yB@òtp¡h4š'â‹æ8¬Æ<Öœ8 …µÖI²b4Ä?S/ÛY-¯ÉDxï˜=iý$¨Ÿ­A†Z­'>ÑHR’cÌïu:ÎNZLÆ„¬ƒç¤ÞþúëoŒ3žÛ·ï”d .ζFS¥RQ²d0µk×¢U‹fÔ©óZž“ßôʳR¥A¡P%¯µ|4af13 ƒäÈòšÙä‡R¥L-e“OÂjµb1[ž‰Wñ¼’Á‘$øVkœ’Û¦´®@žF‚M&'Oqxþ)\ˆ"E ?ó¶Z©Ò RiQ©u’â0›‘!#;˜÷ÅB"""˜8aŒœ2d,ã%Á³”ñ˜Ìɦ-2dÈ!ã_ĵk×ñ)èƒþ­“OLJâÞÝûøÉ™/CFðqÿAT¯þ vê g†Œ—)9¯“³ 9KdÈ!C† Ï x“ÿL´ÙV«•„øx||¼åŒ—!#‹¸z… âÅäŒñÒB%gÁ²ö_† 2dü›ÐëõÑÑÑ3‰Î&“gg'´ZÜÿÉ‘U|9”âÅ‹ÉuF†L‚e8Bˆ/€¢ÀeàRŠßÛ’ÜÚÈ!C†Œÿt:}²m2d>dë 2 –áX|…-„R0ðÐ\…WÒãG¿·d‚,C† 2dÈ!#/!›BËI°Œ<=vññ‹íñƒìä8[ÜáíûnBˆÐtÈñe L&È2dÈ!C† 2r‹ÐÐ+É$X†L‚e<;r œ´oäG$¹&Ðɾïn× §GoZÌ&9seÈ!C† 2d<—/_¡¸¬ –!“`/Av!µ¹ÐѾïQ¾Bý)^,âÅ‹QÌþ[¤p¡g—S† 2dÈ!CÆó‹ÐÐ+Ô¯_OÎ/5žË8ÁBˆ)@s ¥$I7Ÿ’vðð®$Ižl$I7^ˆ,„ËñãÇbÿ>ŠÐÐ+„^¹Fhè®\¹Jddþ+H?"ÈE‹– ² 2dÈ‘HJJB÷Œb$Ë‘]ÔoØŒ™3¦Pµje93d¼”prözn5Á~@E@›…´EìióÜŤ¢!ð#Ðx!H°$IqV‹™A¾i:àDNŸ>Ž^ïÉ•«6R|üÄ)~\¿‘ÐÐ+DEEáïïG±b´kÛ†wßi'×2dÈ!#×8‘ ÎS¾ü+ÈsÍ2žGÈk‚eüð¼’àñÀBàæs&WÀãeøð:žWªÕF§ÕQ¡BÙ'Î'$$zå*W®\ŧ@¹¦È!C† êË•­V‡É”$gˆŒç ‘‘Q!pww—3C†L‚Ÿ5$I B3:/„ÐK’”˜•{ !t€!«Þ“…Î’$ÅçDn!„ ÐH’”ð"||¥‚ä8­i–““åË•¥|¹²r-‘‘²nb0Q©”¨T*YYYY†çJ†™õ¿OƒÕjÍòr¥ì¤Íxl£@£uF¡ÌÞ7µZ- qHV«ÃòMZ£F©T‚ȸšŒ&,fË3ûž … ¥JƒR©B…]+‹‹ÙˆÕj~&2¨T¹”áòåP‚‚ŠgLÔZÔj=ᨆ“1³Ù 7 2^|,„¨lVI’4&ã$Iz3 y< œ”$é!Ä\à-àuI’®ÛÓ`Ш*„¸,!ƒfPÑx[ÞD!Ä6lÚå5ÀXI’V¦H[X€Íã²›â&6³çQ’$%ÙÓ¬šØ/ùŸ"¨(IR´¢10 ¨ ¨„aÀ.`ˆ$IÑÏ{!xšiVR’£ÇŽçøþµš5ªåøúcÇNðîû²xÑ4nÔà©éïܹK»·;ðé§ýnÆ-IÛ¶í¤D‰`J”úÏ5‘+ͬ™SéÝ«{–¯Û¶m'5jT#þ|ÿš ÏC>È2üwd¸sç.'NœÊÕ}ßx£.NNNò·x‰‘]ÓèÇÿ`î¼Eü¸n%" $dÀàÔ­]‹·ÛµÎ±Œ:½;“§Nc×®ÝÙº®fêLŸ> “!GùŸÑé´ìÛ·Ÿ£ÇN`6§OêÜ\]xûí·ÈïíÙ”·äS©Ò Ñ:z•mÛ¶qâä nÝ Há¢T­R•-ZèÑÅltü@^¥Am—aëÖ­œ8q‚[wÂBP´ˆ/U«T¥yóæY–!³Á*µ–K—o0â³Ïˆ‹‹sˆü...ÌøüsŠýˆ°ä£2 v,ÎÎ@{`LŠãoþ€Ÿ"Ÿ$Iáöã¯e€eöýüötê׎³oûþØÖXÓ!À¥ÀY`8àôÞ€kŠ´5½€ØìªºBˆZ’$™ì¤ÖhìÁ~È „xØ‚mðl&Üõ@y;±~®ñ4Ó¬û÷ïÓ¬ù[9'Á5óçÍ¢cÇ÷rt½Édâþý Æ,§?{î<†çI~½ß± #G eÄgCä$Nœ8E•*•Ò=·gï>‚‚Š;„¿LH4%qönÕ}+½Tï%Xlc ¡ÔÒ.Á§†ñFýúh4š]íÚ5Nž:ÃèQÃäŠò#;¦Ñ‘ôýdùýY¶ü[zõì’iú}¿à¯ã!øí*W*Ÿ£7J•†ßbꔩ|øÑà,o°M³b1Õ«W§Mëf˜siö-èôzNŸ:Íë7R¹rEŠôey𠜹ó2{ÖT%)O4ÂB´:7Nž:ðáCÙÿë ÏO+ÎlîlÎ߿ξ;8p õ¼ÁÌÏgQ¡| I±™H)ÃaƒùmÿA ÏO \|l–çî]ç—ù;0` Öçó3Ÿ*Cfš`µZÏÐ!CHŒˆ¦NÕÉËÇŽ0|Ø0~þycž“`•J‹Fç‚Õj{÷”– !‘˜$Yå†I&Á¹I’Õ®yí,„ðKáI¹k'¡oëíÇ›Û7ePÑkcíµ¹d/¡Bˆ-ÀïiÒúÛÉôàÕG¦ÉBˆ¯siÒ*ÅöÝ ’$ýmÿ¿Xq˜m'Üs$IúVác'Á«%IÚa¿G{@t$é¨ýú…Bˆ­@u!D€$IמǟÒ+¥iV†äïý÷©VͦÑU*•YÚFŽIxøCúõ„wï,irŸW\ºt™O •[ 0jÌvlÛ˜>ÙKL$>>þ??R˜ëß*” Àh6Ñ÷ç1½uš}Ý¿§€ËK0A`k¬KàÓÁ#ٺ釕ãððpœœéÚ7{ý߯;7òðáÃ,çÌÉž†Ã‡çÈ‘¿ðöÎO­Z°û÷°æûulÚ´…Ê•+P¨p‘,O¢gMZ½&Nbú´iTjÈÇ+š¯¨kºéÞŒåÈ—¨Q£:£Gaô¨‘$%æŽlåF†1cÆ0jdÆ2„†^¡uëÎFÄÅÆÑ z->ëÝmñB(œu˜ïEb~ô” ¡R¢ôtEá¤E2š1Ý‹„Eó8ôÏ©\›W«5zJ5HVLƤtÍ¿µzWjÕz#GŽþøãå»Ý¼ªdý·z¾ûʉ)‹chò–ãœ5þl ÛöìAÒš‘4&И4&$9ù¿ÚlEc”Эh ’ý¿„Öh¥ŽoöîÀÓ3{>)‡ì'Ÿ›7= g)}xìCn…ßÀø Ì1sÒÿÆÆÆòÇ_'hßãm‚×›÷¤[Ïþìݵɶ>6 >þt8•ë´ÅÙÕgWONÜÀ¥K— ~ñ–ñh´6mÜ̾_C¥Rb4š¸zå"ƒÌ»}ûB¡àðïGغm'ŸÏ˜„Nç„Õk“…hõntëÞ-;~¦óœ×)Z:óI“ü¾®´T…Šoú1wÒ,®ß¸Æ²%KIJŒÊ‘Fø‘ ]»wgkd˜3i×o\géWKÒ•áòå+™® N&>ž¶~Oô¸MšîÝnXÆaIGhPy{ òБ¸~%†_¶¡§+êWê;¤ŒèœÜÙ·ï?üðEŠaذ¡¨”‹%Íœ$áää„R©ÄbyLØÕj5Z­I¶Œ~É!¥úŸ—$x7`xD‚íäTül'µ ì•Ù›)ô„LîUÁþûO:çΦ!ÁUì¿§ÓI{2Í~ ûom!DzZè$àiöC«n@O ‡â(6ö¦ ä}.Sï” …"]ò›Ñ&„@¥R±þÇÕÔoØŒví;°oïö g¯_È$8å€ÎÀ”1£p·Ä1sò$†Œ‚óÿÃ÷߯Ã%2ŒoÕF’$>œ8ò5ë0v̇<{êÌ™©Y/ŸÇ€Y³¿ u‹fé ÿÕÇŽ Xü-ˆR&ÆìËŽ‹ûá>V‡ßÆZ3Å‹N‚­`MS$EI$ÅZ1ÄKXÍ ½«@¯@—¨@é-!´y?â°X`Â<–®ÖÓ¥}";VEQ"ÐLB’ààŸf.q¢qOÖ|M£:ŽÿùÜ”Jmííaëz÷îÝK¹råP«Õœ:uê_ût¾j74²z‰5_wlü²+JÍ:Ì~w±úÝÅ싯ý×ÿ.f¿»zHÑëFünð·ÿúÝ0áÝÀøHLJÄ3ÞªñZf­­YÿûjƬôÜö¿'O¡h@¹dmY!ß`®y1÷‹E Ô?UÚM?o%ìn,k¿š|¬P`Eþã…$Á ¥‚Ë¡W¨U«uë¾ÆÆ[غm'Ö4Œå‘.WW:u|—’%K0yÊçܸq“R¥K;„ku6íëÖ›é<·>OZz„»‹Õ"\£PêzV6?çÔáÛAë ðdäˆa$%Æä\†?ÓyN< :g½®'Ëð#þŒøìIB¯\¥x±À§ƒ4*·¬ fââÏÂãËUhJVÁtã~²VX¨•hü}0Ÿúƒ:c £”*Ü^mœû¾U­ãøñS4mÚ4ùŸ Ýì¸!6Sè¿°­Á)„(ÂcSèÌì¾|ì¿éµiöMû¦ç¡9­CÁGm,ž/øcv“¡7jI’„5€.@[lÚîêÀT!Ä@7I’ž3Û [Ça3ÁJ´7 ™y§”ž ÀJ¥ò©ZàG$øö;ìÙ»^=»2múlš6kñ£qqqÉæÌDÖd7}vʵ5Ïîý"΢…„\dͪ•´/íN‰†íØò×?Ì™=&ÍÞ$Ÿ—uëÖfÇw!H’Äíˆü‹ñNû¶¹Ì»Çתµj*Ö®L¡€ÇÚžmK6=ƒï#eð?%ûéº hŠ:u Ìüm)ëÎn¥_Íéöj+¬õÂQ3ç‰ ·nßaÁWK8ÿ÷?øûùòQ÷n”+[&OòA²‚dK¢„1ÞJ|”…¸h+†$ ’Zg%.ñJ\ œÌ )ˆÌ£3ÎI‚þãÜøý¨†ýë"(ô8Ÿ]]àíæ‰´h˜D§îôêÆÉáxyX$ƒí·R°žJÁ釱¯_¿>½zõB¡PðÁdp_Éqe2ü¾_MÙÊ&<¼,y[/r|_É2ý²§¬÷¿68;éIŒO=@¯^ïmV/C³& )S¦÷ï?`ÜÄÏiÓe\ª´¦¤8œ]œúnj¥ h>:MúÙeKàZ£G©z<dµ˜1㳡}œN¥TñzÝ×ðñ)ÀÅ‹— »E±b”.]ŠreKóãúT­R™’%Kä¢,d0`Vi9yê Ó§M£ËÜzéà“;¯²yö1Ú ­FÅÆ©Î{vá­Q¯0qèDZµjEÉþÙr–¥L!Cç9¯g‹§”¡í¨jL6‘V­ZS"Ø/Y†»wïáææŠ““þ©ùeM0 kØãÀhÀz'Œˆ·ßÀeðxœ{ ÅxýÆ¿ñó'·`jrÃ,4tZbM4亞«5z¦Nšj’cÛ¶m?~‚reƒ±¤°î°˜ ÄÇ=@«Km6nHŠÅd|!»ÈxH°›¦@5; > I’Y±‰Mܸ&IÒéLîs¨ ®¦9—6ˆí£óÀõ4ç2H»R’¤i¹ üQÀ<`ž¢6ÏÖŸ`s v›çéç6Ó¬¿)_¾j¦¦Y)IpFæÐi7€¿ÿá£>Ÿ<ž‰ˆ‹#:&6$ø9¢€ööYÖÛpúÌYn\»‰2¸¤­ŒÁ½{ˆ‰Ž¡l™Ò,胇›3&L (˜IŸÏ@ŸP /2L ]°|íŒzV4ÊF6mÏң߳ôè÷|P© ŸÖêb#ÇAyc†»s×f~¹€vƒÞ§Ñà6Ü ½É˜™Ó¨U±CôÏ“2,3“$âc-DEš‰‰±`0ZШ•¸º)ðŠ×`6*‘¬* .(òL#üíz=»hÙÿcòYY¶Æ‰½‡5ÄÅ <Ü$†ôާrYË?¡JÓ|¬Ú çÓîŽ]»~ñ¦ÛS›äðTQ&@‡³³3'NäúõëìØ±ƒ7ß|ó_+¯¿ÿ¢¥As9fíóÚÿV©R ½ÚÄ­k! °^¥RÅ­?¢{ïO9ðËVÔj½ú¤Fýèôû׈·¸vž6­¦åJVW’’Eœ‘$¸x'@o ³fLåÈ_G³Î]´lÞŒz÷$1!2[Ï`â¤éèô”+Sš† ëQ"8(•ó¹²eKsñÒeÊ–-íðo¥Ö:3tØ*5 ¤H)¯ô ðœcÉû›fÙÜĤ%Âþ彩ÐПÏF gÛÖ-$fƒk´Î >”JMŸjüÊç§B†6Œm[·’h¶é“Ì Ý»}˜¥{X"cÑ·ïLü‚©XܳτBÜ܉˜ÏÇ}þw`µÕó- ¿í}<€R(ÞѽÕÃ¥»¹ú& …Šû÷²uëÖ'Î-_¾œ…_~‘ŠËñ,IðlާÞŶövÕ£þHÄî¨>ðÕSîó(>O3laŽÍÁVJÀæ5ú=ûÿ”è˜fÿlŠû¦ê„… À?’$u³~4ZU¦H7›ö÷MI’¢%Iº,B„`ód]áy/6Ó¬ªhµúä™étg íÚ߬`•JÅÖ­[ILLÄb±`6›ùá‡;öÿìw|ÅûÇß³Ws)¤@€„’Ð;ÒbAª€ ˆ~;¢(ŠØE± ¨€D±€ÂOAQDlD@šô"%¤ÒËõ»ýýqÉ‘J.É”y¿8.»;;7;;e?;Ï<3å‘ÙÙÙ¬_¿IŠàBüï¶[tS&?÷ÇÇÓªSWÞœör‘üéÜ¥ Í:Ä1tÈ  *€¯¿®†¢uzö¾'ŸwA~_iáDmêDÔ÷4‹wÿÈô51¨y/^ºá±óZ†Öþµž¾ø” ÿ÷*zƒç±aëÆŒÿè¾õ¯O{‹Ÿõ¯“7¡QB ¨n—òr]œI³‘™ãɃÐ`-–<7.—'MŠF‹¢h£Ô2×ü¬,¹y‚Io1ûÕl‚L*#«Æð›­,z7EûtŒy!„9S³hÓÌÉð›­¬Þ ?/"xËþ¢# ­Ð"ÆHff&Ó§OgäÈ‘dffž·òàvÃò¯H=­¬YÛÍî­:ž˜”Àé$ ‡öiÿŠƒÞbÇfMZ8yìÅ\Œ&µŠ¿í©žÂe;ƒËœ†;;wF6îÀ\T£UkÙfÇvÆ9ÝIN–“Œ<&«£ÃÍ}Özu¹ÐlÜŒvãfĉ$:*Ù\“nðØÏWç~ÀC£î+R¯UUeöœÑjµ<4ê¾*õ¿B>ýø] ºÓàG ‹ð²Õ¨UŸèؼúút5Š%Ïn$¶i;ïyæÜ,þøþ¾þr.z½®JÙV3ÔÀ'ÛåTî!^éñ _}õÓß™EL‡ø\U7cÇ>NÇŽiÓª .WÅÌƒxi³eoѼ¿þú‡ÿÛsEËáÃGø3~ ~Ö¯l\Ì  ,!7¬sü…ãÇ“ˆ¬„Û‡r^†øÕ–š†Š7¬1³\Åñã'½i¨Å3>ö‘ªÓ…3ËFµ™óIQ(=N'¶ßW’zCkp»<ÙUèe¯ªúîœiy¨®ª™¨kuF.üÌ; |à 7ðçŸâr¹X¼x1³fÍDEz|–\x¬ªêI!ÄV<Ë)ÀïùûmBˆµù"XP†Wèbbú0I±QUÕQü¾y¬6›-ìÞ³W¶Å`ê¬YÜ8`ÏOž\f˜‚¹lªªb6›Ïé5×ku¬Vè¹Ünú¼;ó‚‰`M/+š^ž‘µŸÄ3á×w¸¾ASû>‡8¢Çù³íÈ<òï(hJÊ&¿1•羜ìÀ…¤‡=qŸL˜Í²å?0dˆ 4Zv«gq“”j%Ûì$4HÅæÎ©¦ 3(h J€@ ÷o>|÷³‘:µÜôïicÔ³ÕxqlI§>þ?N'OÒðÆ 9ÌœȧoeqU +Wëý^v a`·Réõzìv;«V­""âüx$¶Û/<\ž­<ðd{¶éó¿0†Þu¶½_ÿ‡­vlÒ1ðV+×ö±ñÈÿÂP40þ•œ*ýþUíbHÏ|7dºQsÜàBÕ¸Aã ŀƹ.•$ºT4ŠŠ&J%ºm$áþËÍÚõ^›†rì8¸£kƒªÒìø 9ªcþ®I/àêæÛê†ÙÙÙ<ýÌ‹Ølvû°÷Ø;3ÞãåÉÐÃo+býTÑþ zõ¾\ð!·x>Þ$$ÌÓŸ¶ï>ˆo>™ˆ9÷{†?2ÝÞbÎ᧯¦ñþŒ×}rtTF½B¦5™“Ù8š¹›ÈÈH‚ÃjÒqðEóX¸Üe×çÄ¿àÔ©S´mÝ´B¿ÊÞ½û0›-ùæº%©Q£::žÓ§“©U«¦ÿ–µ~üñG¢Ö(á¹T\ŽŽŒ©FdÝp~úé'î¿ï.Ü>˜âj´V¬XATÃêüúñ.þÝ‘‚ÍìDoÔúþB‡Õ‰Á¤£A‡šÔ¬Ί+xàþ‘>¥¡8Î3™Ú]MУϓ;{šWìª;®ä$O²öÂAðø—Ñ6ï€íð)¿Ü—ùóç{·zè!Ün7ñññdffòã+¸i`v ÉÁù,:)]¢è7  ¬+GL§ !€MBˆ@ž9½ËAÅN¹%_X¿ ¼•/´Ó€/;óÅkOuð,Á4Jqh‡gÙ£•xÖ&.`7žÑàWò?-ðx›îg)¥QBˆ@K<ë$/á¬ì‹Lûf‚U¤.Cü–e"]šÐ-˜¤(¾»†5 Ô«[‡3)g8“ræœa322‰Ád2±gÏ?ìÙóÏ9ÃÇÄÔóYתU“±=Â+S¦þ§#Á³Þã×øš4nÈ7ö9¯i~ñ…³bÔnw0âÎûùnÙW\v¸Àþp¢ºÝëžù{kÿÝÌS+_£ctkÞ»éet Ž/L¸– ê9Ñ ô¯ êÓ/¾ÄÝSFPf˜»'âµá/ѵsg¿>(*&И@ ÐôzVàpª:mÆ ³JÓQ IDAT¢ª*F½B@ ‚)PAohƒôøÕ,ú÷õzö¶‘pDKX57é‚  •Ñwzô²sóþÏDFVþ‘ èÎChµ«8]E¯K«õ“ÉÄÕW_MNN!!!ç¥HN}!˜èz.nê)gAÁ*¹9‚«{ž5\÷›mÜ?.rºÛÙ»CWåßÿôÓ·/šê©ÿdú·gáêÔˤçquêùÓv–®ý‚ŸçLàµ%ŒÁöÜx#‡—gµjÕ3f |ð^šLÝºÑ 2ˆ¯ëÀcÇŽ%((˜•T™þ·€Æ0ÿ³÷yÏzGhxM„¢Ð{È–|öš·o2çf±âÿ¦ñδ‰tíÚÙ/ù—œiçÆÆ£yoÓÌÚx¯öü>½z~ƨ~±Ä5 åÐ) o~{ DÙ¯Rû¢(ÄÄÔçÀƒ´k×¶ÈË$£ÑˆÓéÄl6Óªesö8èß¶M£eÛömD6ò]—#„k5 aëÖ­<øà½>>ƒiÙ¶m5S½~0Ö{¬ìÖŠO©±™ÔkU>“­Û¶2ª K…òU5Ø&8vŽÝ[±ýµú¬èuØ‹®K¢Ócè=Óƒã±Jªú -­ž]»÷°gÏïËö””D||< ,`ÈÁRKþ3ü%žQà„bK-ÉŠTU-n²8L!§Wù£¶Í›ðŒèÆ‹¯Ï§ …=™¿¶pW mþ±?€áù"8³PØSBˆkð˜OwÅã úS`…ªª?p»…½€~x–a²«ªš%„hg9¨8íu222Xµêgž{~"'Nœä½÷?$""œþýûóæÔWq:ÌUê ÓªEs¾œ?‡;GަÇÍR½f]R“Ó¨y'V¯˜O×n᧯¦óÞŒW¹¦{7¿åaFžƒ¶±WeKaÚ_·óîûóY·ÇÉ[NcÔih .oÀˆ6¯ðʈۘ¸ð¿ á&òϾED°Ñhä×_ÿ eËæT¯AóæMYµê7®¿î?öù II'ªi¬˜>‡ 7p2éŠP|NÃÉS'Œ4ÐíÖ¦ Â¯ïªÔõôÝ–¸¡ùõ£]œ<é{J½4‡ û±3„~¸˜Ôë[àN;ƒê(fæ®Õ£‰®OµY_`?š\îzÂ>Õi‘ x·û÷ïÉÀàÁƒ7ÎcñµråJÒÓ3 Ðødr.‘"Øßí‰ÀË¥ì?RÚþücË(Å[´ªª§òæGÅm*$NÚàqLµLUÕx ™3 ! Ü¢.¯;_P/òázþ¤Ø\cUU­ÀÜüÏ%CE½SžkNpáQâs ÄÊŒ_Lü×K?»\.®¹¦ß|ýE‰cCnβoKá3? Cû«¸öÚ«‹ìß±c7ß/ÿ‘W&¿ä—´Õ¯_fDÇíèÒ¥S™éŸ3k&öŒd~[õ ½úö¹ày˜““ýcž"+ç¬Óv‡ÝÎo¿JËfM«y€ŠaE*B§²?õ0÷/}ŽšÁ‘|zË4‚ gGD]š{òü^6ßxëmÆÌïSøØ– !DËú ›éæ§‘"m¨Š1‚ò4„šµDš X¬nœ. Ò¢Ó(¸Ü*6‡›ÕͬⰀÁ"иý·~°š/ðT›Àæ³E` ðÔáï1b PéÜÖªz¶Gð¿wÐ1C«3fhõR¥§§“žžN=غu«ßû˹&nèo#¸ÚY1ûý¢â®³£ËÿÛ7é°[ÝzØ ÕSØ·KËc.²… *+`, ¯MÃÙóúRp±·tØž‹’pÔ©8¯¹ ç6“w9-Ìûãžx’ýû÷±rå*5Œ¥E‹–¼ýÎÛEpeûßâ´hÞ”o¾ú„¡·ÝõFqdÿß„„ÕâtÂa¾ýt_|>‡Î:ø5.•<‹Žž îaõ‘$edâêžü¯ÕK¼sÿ 2sUì.Ï —…»&2¦sMÇû+ûM7mÖ„5Vâžååå±yón¾ù&š4iħŸ}ÅâçÑ?!Póo…ð9„pUèv›§¿ª¨î;º-q·4ñöŠ¢øÑgx1 @¨…6ªz+ eáÂ…Þ}·Þz+ªªKëÖ­Ù½{·×ÍC£îÅnËC")Òt\†×dË× „µó+‹Fq3ð°Ø!oýY<¦Y{)opΗ5‚Ë!­ÌHð®Ý{¸qÀ6oöm4øôédî¼ë~9Î1 :Àÿj$X£ÑðÃ÷ßXâ³dñ¥îÿäcôìÙ£ÄþÎ;òò¤0ý7ü–››‹ÅZºy¯Ãádîû³‰ Ê㻇ó÷‹Ù¶}'9994ÿ=zŒ-Iél¬ÓÁûÙª«Îª_Vûç9)ÔÍ1ÇIî[ò :#óo}‹ðÜðó¾êʺ¿6Õ¼.Õ"|_OõOßɫӧùõåŽ0©èÂ!0B©%²–ŽzuŒ4­H‹˜`bj¤E«¨*¸Ý*.‡ŠÛØýW¯êF¹Ù²[G·v|À]C-¼ñAÌ71w¡ ­Få‡ß Œnfù¯F’’†õ¿°Þ‘###¹å–[PU•^xÁÏ/E`ÓŸZw8ë™úÏŸ lˆ×1…þëw­;:)´4Ôº_ «^êKÍïñˆô ìt+®´Ô’£À;®“ÇÈztú˜H„VSµ:­5ð믿’’’âÝ·{÷n¦M›ÎÔ©S1™LÞý ,@« û’h/· RUõ€âàI IñgàÃ@/õ tW¸ï+þ PQïЕÀù÷§Â"2++›uë6žîÛr f³™ï—ÿÈ5×tók&&áÙç'þ§"XFSzçQ֜€€ÒN‹Î“ ÓÓ3Øù÷ßäd¤Ñýê®Þ%² xáÅIìØ´ž;ŸöøŒk\#ˆ)S¦òÀýw3`@¿ ›-M…2Ãà·{šœ›ÊÝKžÂévñåí3¨¹©¶ñÕÐ>–‹öó÷&zÖœ¹ëõ+tNhõ0¢š×cÍÚ¿¸îÚîþ*‡BˆSAuëP^¯ZM‹ÕæB‚-zƒðxŠW…gu —ÿœD÷¹ÆÆ³SƒynL.Z;x|rßk&<ÔÍú­:>ýÚĬÉÙ¤e*Œ›Ì”ñ¹úïe@\×Îôë×·ÒV/6›§Æ­R›Ÿ—+ÈËñäèŽM:¶nð€NWÛY÷›î½l¬û]ÏÀ[ÏŠ]Kžà“Y¼ùqã屺fçnÔà`ܰôpµjj2¡Ù¹gß^>õmz­ÊøñO±:>ž=z Ó¸Ëž¾ö¿ ¾^ǘç?§IÃZ„›xzòÿ±èë•D5hG¿.ýø¿¹ÉLO¦c÷´¿v(ýnyšÝ‡]´j^FãÏÏ'ñh “Ÿ¹¥Jy™gs‘‘ÀÝ0ý¯Ûqºí¸ÜNl®<ö¤Ä£Z¡àVݨª›9?ÂÃæ0´k{¾^{Â/÷³Y³ÆìÝ»èè¨ü Vbıu$`4yàþ»YþÃO€Ç¯ˆÓá`íÚõtíÚ^Ãî¨Ðoº\:´ïÀïï®$(¢ê«$'fqú`né€Ûåô= :ðÇ{?Ùïëˆpq p:!›ŽÃ:úœ†’)èë×$wÖdlýβãQív¬¿¯@;w:¦{ŸÄv¸òó‚uº€"±^{íµRÃnÙ²…S¯&.—É•KáæX½Ep~g4^ñ³èúÀOx–eŠWU5C¼‡¿¼Cûú w)›C׫W—÷f½Eã¦meá)å¾N~æ)Þ¼µ#§Òs™1u*OO˜P$Ìôi¯qøP"/½:‰h“BªÌ’o¾,SÔ_*¸hq­2¢»?,M6÷~û4–,¾¼m Âë¡Öp!j»uÏß|¤ÿ=Š[Õ£jTøÜA£‡2ó©Ù~ÁÚnŒªBA«Ób4 B2µX-.TtzA`°]€@£áç&aØMV¦}È]‡²xN&;ÿѲân7tíà`ñœ ví×qçcÕz£•;oñ¯éä¸ÇÇ0îñ1ÿY¹TèÞÓÆÜ·Ù¼VÏC­4jš¿\×g&|2—5u‘‘¦x@Kò)…5« Lš‘MÃfÎK¾]úiëw8¹‡‡¶&ÑLX7÷®2Ã&eœ,™A›[vÐMH°[†Æá°¢žcbEúß3i9<=yw éʇÓïCQïÎ[Å‹¯Ã#ò϶?¨_'­íkžO«Î7³ü烌¾»'Ó&ÞŽ‚×f~ÏÔw`ؠδnV·B×Enn3^}EQB0éùqL¼nŸlÇ‘Œ(Š—ÛK-YnŽfî¡v`¿Ý×&ñçš¿¼N-N'u¢£Ù¹s7.§‹;wS¯^]†Ýr3­Z6§fÍH¬V+yyy¬Ž_CϮϾ/ÏärÚ0`O<ñ7¿ÐÖ7Ô«ôȺ·ËMü‚½ 0Àçul]N;dܸq¤Ï¡zÝ`Ÿ…pi891‹3'2+”†’í|(ŽmëÈûàÍ" Cèô(a¨ªwfÆYgYN'¹oMBßå´uZâ<“Y‰üSÈÉ5óý÷ßû|Î_|Áä—_’"XR´ü^Æåkµò—þ&Äjµpðà?´jÝEøö椬9Á´…"ùÚ„S}<ÇFõý7|A£Ñ\ÐéTõÊ,;ÅóvçÎݼðâ$º¨Q-ˆÕ‚xsén´“o—ü_‘Ñæ 0uÎÇÜ8`üö9BT< §¡,s4U-ãÐ9Ê„ªV¼L¢‚ó‹@Ü?±4Éæþôg9šy’O‡N§edO¸6ô+S+Tæ+š†O|Á #úV*žˆZÕÑV3²oÿAš5mRåòpVD€6ÒQ(zØ V±™5¸œªgtØ(0*h ôžsªR ŸkÔ«ÌŸ™ÅÍ÷‡7(‚ÇîÍã¶›,™Tÿ«å‘ ÕøîgÏ<œÇ“æUéþœ¯6§ªi˜:/‹›t4ná$¼º«YP»ž‹«:;Ðê<Þœ—É铎ÔR3ÚÅÓ¯åxÖzV/Í|( EÝ6¸Ü.R²R8¡³—ë 3={ïÜ´ŠŽuÛ ZT„ÕŠHKÇY¡kq¹\¸\ç¶ø¨Hÿ ðí›1[íL?ÔÛf>|w/Þ™³’?V­äšvF._ŒV«aÒä©|õÕ|%ìí«ž|¸?ïÍû…/¾ù‹7'Üîóõ8vºtîÈ{ï¾ËÏ?¯ò ¿õëÖP«V-F^5‹ñ[’~â`ÚfNfï÷š÷*BK׺CèQw,¯/I(­9ö-o‹…‰‰©ÇÂE‹½K%¹Ýn¬V+-š7c÷nÏ2†ÇOœäø‰“DGÕ&''³Ù’/$]¬Ž_Ãu×vG§7`·Ù}¼¯NbcëÓ³× lúöŸl_¥òùý´­Ü8 ÑQµ0çeT( =z^ÏÆoJ¤¡,!\šØðM7ö¯XŠˆQ­m5#gÆÝC‘FC£ÅÐ{ Õf-·›¬GîÀú窳£ÄB9v$5þ܇+#ǧþ¹0:½‘¯/Æf³å¿¯R6lX k®ýû÷³sçN¾üòK¦Lyåìó¤zŽöK"E°äòÆh  e«|,{å½CWtD÷RwŒåmüÿÃ%’.6Ú¶mÍŠ—òüóÇÎCœÎÈcÀ-øwÔCe”=#Fãe“‡ÚQ¹X[ä16ëö$佨©´ÿª;<‘ Úóß«ªªÊŸk×ñú³C+G¿ûnâÃO>eæ´©þMœÚHŠК†ìಫ  Š.@  (*èý›_íZ:Xûm¯½Äkïažæ)sanÜ`cÝÒtÇ:/Ûºi0¨t¹öìC¾Ñ¤Òñê’ýµ¢]ÔŠ¾¼<§~ýÔʳ/0·mG{×,¾ê)œ>zÂ×þú¸\¸üèa¸²ýïÎŽQ=<˜èÚagÓ§ÕЦe=NNã£9¯zÛÓW^~ž‡Þädr¡ÕL…^ éhÙ¬{÷UÜ$ÙbÎäÞ{îäûï-ô< áÝ÷ÞgôØg?ã;ÚÄ•.€ìHaoü1¾Ü¾¼ÂiðÖ«°`,‹?CÍÌ·›‚õ¾‚ŸšŒé'±ÿ› BPmî´¼AîÌ)±ìvã>“ŒeéBt×Ý\ñßÕèY¹òlýîÞ½;_ý5NÇÙiZ‘5kÖpÝu×y^Š?ξ}ûi%Gƒ%…Q$W*olµ–兩te„lec]L¨òUa™LyëmVp‘[«e™¸€'ô²¹nW´§_ä¯[™Ú÷®[Ò×—&Ô“¦yMü÷_šui‰¨Â‹¥¦í›±c÷nÿ{S-èhª¹ÑEC@4E ‚¢kƒ)RÁáñ(­ŸŸ©^´‹¹odqlc ûâÏ°æ ‡ÖžáÝW²/k,)TGÛ]…«C{ 3ÞCde—^ddb˜ù>®®]pµlþŸ÷¿N—m)Ž„EA§Õ—èOL(¥ 1+ŠÀ媸KUU±Ûò°˜3½Ÿóm‡ÓÉöÄLæÿq”)_ïGäÏêoW«Ã[½Îß&Re,P—Ó…ÓåÄérÒ¬iÖ­ÛÀ™Ô4ºwïÊ£Œ"77ŽÛÓ°QÏYùm¢ZŠ×1‡ÝÁ?ÿìG[¿N§Ö­[ðÒKYúêßd$UÜ{zÚ‰–½¾…)S^¥YÓF¸œö _† &ðí”ÒÓpëK]·hã ¤ë°&¥¦á»ü44mÒ°Âið–'“ëï+Pí6„^R»áKâ ¸{,¶CI¸­vܶ„$L£ž!ü«ßPjÔvl¿ýˆP ÇœB©3wß}76k.s–÷“›B·nݨS§Ž7œÙlF£ÕR½ÁTô…¡1˜À E#Ì+9|ÅPdÉò"G|5Í*<\Ù‘ÜKy$Ønw”äYŽú½÷ç°hÑ×U޳W¯xíÕI—Gc¢ÕÒ´ysêÔ‰.7lÁ\®K¾V©*{›_­aBÇܼê›Y¨'5ˆúfdmûÎ Ÿ\µõe…t¹1ŽV¬ä¶aCÏK:…NE„ƒª¢µ <«Ã« ž`Íù.ŸP»ÆçQRðÐüÚ$L·Ätßh,3§á®[§ô~îè1žxìv¬¯¼ä›7é*àKÿÛ¢I4_-Û@jzÕÃ=SrÜn•öŸàš®ÍJ†oÍïëög¶hòˆ ‡ÃžƒIÜzS—óv-™yv\Žž¾ú+"tíxá‹}œÉ®ú°Ëå".®3Ÿ}öñå¶yó–"+GT¯Á¨ïåúë¯áСDN>«”5ihÓ¦{Å^„Ù,Ù¼øÂó=ö/óŸü†!/v¤~kß|1ü»#…e¯oáŽÿà©§Æc5WÎEÍ’Í„_äè±£ÌrI©i©a:¯iPíL·ßÐ0ö¾ ãá8Óò°>U4œÓ…ípÚ˜ÖÔX³Ë·_b[ý·Þê¨ø‹H§ÝÂŒ3ˆ‰‰¡víÚŒyVsf‰¾Ùå´òý÷ß3wî\Ú¶mK‡íP„†k¯½ŽuëÖyÃŽ7ŽqãÆñüóÏ3yòD¬æ,Ùf^ZHŠ` ¾›f-_¾œcÇŽUiwýúõÞ‡îK¤¤$^{ýM:wîHíZµŠËÊÊB§×a (ÚñœNN¦VÍšEöY¬lV¡¡¡DEÕº¬ÊRëÖ­¨V-䊩;¿^Ç®¼y¬ëÝŒlç"Ö‰¸€#Œ'Nž¤ñUM«Ï5·ÜÀ'ã?8o"ø¬ÊTä„É…Ä]·æÏ?"`Ì8oºÇÀþ8¯»w]ÏK;åØ ´ñkЭøwíZ˜?ÿwTí‹¢ÿ6°3SÞùŽ·fÿÄÔ ÿ`á·q*%“áCº–ÿ¿›»ò·+™õñÏùó‚áã/ÿ +ÛÌ¥„÷N—ÊËÿ·Ÿ&Q58xry6ÿ¼´Ùìt»º+ bcÈòa$ßnw“C³fMèØ±=f³™S§N{ç pÝuÝA(8+è%ZUU,æL>úp.1õcyå™É´îYŸ®ÃS#¦ô¾/åH¾9ÄžÕG™2åÕ|ñ™Yi˲‚4|<÷#Ož~…6=ëÓõÖòÒÀžÕÇü’Gr&ºN= éÖ·Ù†-á4jY–*8S2q¥kÐÝp †ÃQíNÉᇕ:Q5˜ñÎtTÕÍ’UêOv[-š5äý÷fâv»°äe.§³I¤–oBJñNi7—^£Ñ°jÕ*V­ZUå_×h4ùƒÑj…Ò»páWlذéœ!o:˜  @VǯÁj;·™Y·®]èØÑ711õ˜3{&/N˜Ì;o;ù寈‰©O÷«‹>`<üÈÌ™=³È¾Í›·°gï>î»÷®RßL] egÿüö[éë0[-’O'W(Ö bhÐ ¶Âi8q"‰¿~\Kh³k㦟Iã÷ßW“žÍÏ;Î. îVUÒ23Ù¸q3öÌt8~èl”©§HO¬p™\·m#ú÷£YnÝ2óã|çƒÎ gÛ—r´Øµ”Öñ ’tú»÷ì¡u«–~+*ddÊÂb^öè?ûÝâ¥è–-/šúêØF݇ãÞ;QM¦óÚ6ûÞÿB¨0&ŒĤiKÙµ÷(!Á&~^½“a;Ó£{óélÖ¨ãêÇÔw`ÓÖÃhu ¿ÆïáÞÛ¯¥S»X¿\—ªº©^½:¹Éìøy®× ÷ ³\EdÝpj5 !(Ü3úž›nãôAæû÷ã‹íßÓ´IC¬æô*O­*HÃóÏ?Í Aƒxîùg ¥!˜ pc~¬œ>˜MÊñ nìßÛ¾§YÓF•Nƒªª‡óǦ¿°Ùý3Ï{íÖÍDD×Êï³|K“ÓiÅé,ŸÃa)âyÝjÉæÏ?ã¥,Gàv9±˜3.±g2IUrŽãåÛåTórSKtÀgM°.î2°vÝz ômmÃç¾O§Ní¹ª½ok¿<éž÷˜,$>’––NlÖ~÷ùçÆóüsOý§i9rï¿ûÖŸ2 2 —r|ÆåB9tå„g­Rw(ÜÂX²­2ý¯ªªÌ_¼ŽÙŸýŠÙbçŽ!]yfÌ@t:M™á?œÿ;óÆãtªŒ¼íjžÕÆ?S‘„衼ðÂ6lÚì³pB0è¦<9îq,yé¤ßRNËŽ»hÓ¦ p8üãI£Õc0qüD+V¬`ë¶­œ… *´ì‘¤<';vìô{¼QÑQDûhz(Ó Ó Ó Óp©s©ô¿ç´Šƒ!¨Â΄\.v[îu4©ÓëÑê´8ìvœÿOWQ-ZEÑqÈåv9p:m¸ÝçßGÄ…JƒVg@§7ý¯Ò3*›§S `‰Á’ $‚%‰D"‘H$‰äJÁr‰$‰D"‘H$‰D"‘\1H,‘H$‰D"‘H$)‚%‰D"‘H$‰D"‘"X"‘H$‰D" ŠI< IDAT‘H$)‚%‰D"‘H$‰D"¹¸ÑÊ,¸2Ñép:œ:uœ¼Ü,NBQPÅófDQÐEA Š@Ex–CP4UE;~!ª@áqŸ¯‚Pj3ý|oä*ªwyUõ,ƒ„ª‚PÏn:&„'|3sÏßž¥ÕEA\žùûó7ðÄ«+´í=FAPµè¹ªŠ*8·šRÍÇ›Žü4z® épýÊ@„€Šž¿½KGäo#òCŠüðˆüú¢æË?Wù‡óë“7žüˆ ŽyÏùu,ÿw Òä=¦žý›üt᩟'yÒ]Zó/Xõlº½õÁí)ï.7ªžºàR j¸=ÇÝn··¾¹Ý*ªÛ… ¸\nàV]4‡T£Víh´-‡U0‰D"‘H$çï9N.‘tùS|‰$F‡[…ƒ÷P-¤Õ#jbDˆÂ†jѿբ{J„QK+­d< ]^NœýÿìE‰¢Û…•ˆ ”cùñˆâ¿^(QRÑOM‰ôT<ý’Ë—³/jJ¯Åë€Zö1U-½ö¨%+—Z¢2ªÅ‚ª¾¥±àž¦¿¬ú\¼¾œ#D©õ[Åfµ––BVvµBžµD‹s:%•ãI©è …*ä·ü–ßò[~Ëoù-¿‹|;mêDÕ VdõÏrà+Të 9¼½ÁHtX\.n—UuËÌ’H$öM¬(ŠVÏ©¤cX¬f4hŠÝf..ùL§RsÀí¨×ÈŒ“H$‰DR&V» „†¨È`"«G”ÁÒúŠ|èÔ™•AËVp:m¸]N™)É•Ý*ÛV/X\ªªâr9PU•ÈšQìÙõ7B”¹'“3Ðjµädç'o˜D"‘H$’r åÄéô"äœà+µÔQ¡(¨n‡Ì‰äJ•¾Bàv«$§¤‘“G^®£Ñ@µjÁÔ¨Š^§ÅWk¡ªÆåv;Ñjt¨eL'Ðhu„…˜ÈÉÈ”7N"‘H$I¹„…’‘m.¤‡¤–H$’+[+òò¬8x„„„2331›ÍFBCCiØ M›6 ZH`¹S%ü×¹Ðje—%‘H$‰Ä÷çQÆËuùDqE¢ú.9JUêYÙ™I¥î òóåïóIY¿s¡~_"¹$°P°YlÛ¾‡Í›7ãp8¨_¿5$==cÇŽsôèQróòèÔ±-ÁA†2GqýWéí”D"‘H$‰?´Á’r¨¬`,ë<)@%’‹EÑräè1þúë/êÕ«ËàÁ7a³ÙX¶ô;†Ýz ƒøø5lܸ‘ˆˆpZ·lŒªOq]Ó½5kÕòÏÍÍeÝÚ¿|ŠK"‘H$‰ä‚< É,T†Ð¨RGŒ ö•õ]|_Yq”vž¯"¼ø9ÅG¤Kû]_¶‹ŸWx_Y×"‘\l¡g¶óÏ?û0™2d0f³™Ûn»—&NâŽ;F`6›¹îºk¨S§ ‡ÈαYF¬¬¸®½¶;Ý®¾–+~Âår‘••Åm·ÝÎŽ;ÊK"‘H$‰DŠ`‰ßPñ¬Zðñ‡ÎÎL*Up£…¿}׸ý‘îŠÄ_Öy…÷ëZ%’‹MÛí’““iÓº5ÙÙÙÜ~ûpL&›7o@UUFŒ¸‹ÜÜ\:wêHzz:V›£Ø:â¥ÇÊÌ™ïððÃcXºt™7Þ1c)7.‰D"‘H$’󦇊i!ù$")Søù2Êéo³iÄ}¾‘bWri‹`ÍîÀápÉÒo—±oß~Þ{oÁÁÁ¼ÿþ»lݺ•+¦Zµt:‹µTÇÅãr¹\ôêÕ“éÓßd̘Ç0›-Ì›÷Z­¶Ü¸$‰D"‘H.rNð•Ì9F‡³2J ½ÂኟSÖ1_þ®È1€jaQçLgV†g´6+#‰jažï‚8Š‹y_~· ¾²~³øoH$3nU%0ÐDpp0YÙÙ tß/_ÎC=Ì»ïÎdôèGèܹ½{õ"7/ÀÀ@BB‚QUµD/W-gMòòòøì³ÏiÞ¼9GŽaõêxŸâ:W{S¸½’H$‰D"ñIê¨g-b‹#G‚%—YIÞOUέÈù…Ï), °DrÉtn¦€7nÌ¿GþE¯×óÑÜQU•îݯ# €çÌF«Õrøp"111áv»Ê+77—‘wßC@@ß,þŠ3ÞæñÇÇñ˯¿–—D"‘H$É…BŠ`I•(,/¦¸ W5þóyÉÁªŠN§Ðºu+²sr8t8NLJsf3qâfð>Z­–Ó§“ÉÎΡaÆôŸâJ<ò/qq]¼qô¸þzÞyç-rrrËK"‘H$‰äB!Í¡%> ¿AYx4´øÈhiñTtÄÕ׸++Œ‹_Oy¿UÖyûÊ3Ï–H.6v Õ#Â:t(ß}÷ÇŸ q£†ôîÝ›ÌÌ,Ž?NNN.½{÷&"" —Ëìs\íÚu ==S  «ÅJpp Ð£Grã’H$Ë–-ã·ß~+±ß`0H“&MèÛ·/‘‘‘Þc«W¯fÉ’%Œ5жmÛVêwÓÓÓQU•ˆˆˆór] Ìœ9“¾}û2hÐ ÿµ¯O<ñ-[¶ä‘G‘H"‘"Xr©à‹+. +û·/Ûþ¼ŽsÅ]ÑcRðJ.UTÕÑGttmî¹çöîÝKBB‡£ÑHÓ¦MiÒ¤ œöÜsNÆõg\‰äâ#--ÄÄDBBB0Þýäää°eË/^Ìo¼A«V­ÈÎÎ&11‘¼¼¼JýææÍ›yóÍ7™4iÒyÁf³™ÄÄDÒÓÓýܾª$&&. D"E°DâÅGc¥Ð”HÎn—›5›ÀÀ ââºÐ©SGÜnE(Š‚ËiÃaËAUÝ4.‰Drq2zôhzôèQ´î»Ý,Z´ˆ… 2eÊ-Z„FSõ) ˜Íç×j¤qãÆÌ˜1㼉l‰D"E°Dâ3RôJ$ÕíÂjÎBV—ÓÝ騰`õg\‰äÒ@Qî¼óN6lØ@bb"‰‰‰4nܸüöBU±ÙlEF–/4&“‰fÍš3ŒÛíÆår¡Óéʽ—Ë…VëÛcµÅbÁh4"„\.N"‘"X"‘H$ÿVÝ8Ö‹..‰DriP¿~}9uêÔ9EðÞ½{ùì³ÏHHHÀn·ɵ×^Ë]wÝ…^¯`Ê”)ìܹ€©S§¢Óé˜7o^©BôÅ_$55•9sæ (J‘ý'Nœ`Ò¤I4hÐÀ»þüù¬^½š·ß~›””¦NÊM7ÝİaÃxùå—B0jÔ(fÍšÅp:ÄÆÆ2jÔ(¯¹wGŽá›o¾aëÖ­˜Ífš6mÊèÑ£K½öÜÜ\¾øâ Ö®]KFF4iÒ„‡zˆØØXÀ3ÿú»ï¾ãÉ'Ÿ,2—º`ÿ€¸í¶Û¼ûÿùçÞ|óM†Nß¾}eA”H*€ô}å<æúH$‰D"‘T‹ÅÂÆˆŽŽ.3ÜÆyê©§8yò$·Þz+>ú( 6dÉ’%Œ7‡Ã@çÎiذ!:t wïÞEnabcc9vìû÷ï÷îËÌÌdûöí¤¤¤°}ûö"áããã  ""»ÝNJJ ¹¹¹Þãééé$$$0~üxRSS2d=zôàðáÃ<û쳜û,ýû÷çî»ïfÖ¬Y(ŠÂûï¿Ýn§iÓ¦„……¹‹ÅÂþýû  !!‹Åâ=¶yófêÕ«wΗ‰¤t¤–oEäG~äG~.¢åì—H$ÿÓ¦MãÆoô~†Ê£>Êš5kˆ‰‰aüøñeÎqݽ{7 <˜êÕ«96|øpL&¿ÿþ{…ÓÔ¢E BBBŠˆÆíÛ·I\\{öìÁétz#@·nÝÊwðàÁE¶ÛµkxF™Á3x×®]´hÑÂ+Ø„Üyç%â[»v-ááá 2¤Èþèèhn¼ñF’““Ù³gB:wîÌÑ£GIKKóæÓédðàÁ¸\.víÚ@JJ ÇŽóéz$’+[ç”þü E°D"‘H$‰äœ4nܘ®]»z?={ödøðá<óÌ3¼ÿþûÔ­[·Ìs?à5s.ŒÑh$::šS§Ny«¯(ŠB§NHHHðš5oß¾«®ºŠV­ZaµZ9xð WGFFÒ¨Q£sÆ©ÑhЬy  xÌšN:…Íf+õšëׯ_äe€Åb!55•úõë—ê8« =yÔ¥KàìèööíÛ fРA!¼ó¥ D}y#Û‰¤t¤c, iiélß±“ììÀó6SUUù-¿å·ü.òL»vm‰“ §DrQ0?¶2ddd\êñÀÀ@Ün7yyyT«V­BqÇÅÅñû￳}ûvbcc9sæ íÚµ£iÓ¦€Ç<:66–½{÷Ò¿ÿrãÓëõ%æ á.6™L¥ŠèÂû •yí99žç¯öíÛ£×ëÙºu+}úôaûöí´mÛ–°°0bcc‹ˆàˆˆŸ¼qK$)‚%¥ž‘É–-[©Y3’±12C$I™dgg³uËV:uîHXþèˆD"‘œ‹ÚµkpæÌ™RŸ9s!!!!Ž»C‡hµZ¶mÛæœ¢±fÍšlß¾úõëãt:ýf:ƒÂ+î c·ÛÉËËónרQFSæµ§¤¤xÅ¿Á` ]»vìØ±ƒ´´4Ž=ÊM7Ýx̲—.]JJJ ;wî¤OŸ>r™%‰DŠ`IeIH8Dƒ±Ä6”Þ%Iù9¼‡„„ÃtîÔAf†D")—‚%€6nÜXb4ùøñã$%%ѤI¯ +p„¥ªåû mÛ¶lß¾ììlbbb óŠÆß~ûøøx‚ƒƒýæEÙd2Q»vmvî܉ÍfÃ`0xÌÙõ>hkµÔ­[—ÄÄDRSSK̉.0k.¼fq\\›6mbéÒ¥\uÕUÞïo¿ý–Ï?ÿ»Ý.çK$U@Î – Ñ(Ô¬)3B"‘øDÍš‘(Šï£ ‡yú™ ìÞ½WfžDrÒºukÚ´iÃÚµkùå—_¼û322˜9s&Bˆ"ë߈ØC‡y—N:qqq$''ó÷ß{cv:üõ×_tîܹL/Ó•aðàÁddd0{ölï\æÔÔT>úè£aGŒÝngÆŒE–dZ¶lÛ¶m£}ûöEÌš;w~ø5jx½?·nÝ­VK||<´nÝZ.‰¤’È‘` ˜dFH$Ÿ0•9¿­8§“S2ôŽŸ8ÉGFÂDFÖ™(‘\aŒ;–W_}•3f°páBÂÂÂ8r䇃ñãÇÕlРŠ¢0oÞ<æÍ›ÇçŸNÍš5ËŒ»K—.|ðÁ8Ž""øª«®òú4ð÷¨é Aƒ8qâ?üð›6m¢víÚüûï¿´lÙ²„™t÷îÝ:t(Ë–-ã®»î"&&†ÔÔTRSSiÛ¶-“&M*><<œ&MšpàÀ"×c0hÑ¢»ví¢sçÎ¥:Ú’H$¾¡yùå—e.\横ûe‡Ý|ö͇ÎÈ©SLj¬ª‹3©©„‡‡#½Ì,‰DâC£b'##ƒêÕ#ÎÌl63òî‡H:u “)“)€Íoeð ètº’’FGrrµk×Åé´9–œšM`€ÌŒ,™ÿɦvíÚ´mÛÖë%¹<„DDDЦMï\×úõëGdd$z½NG¿~ý5jT¡AË–-½b°yóæ^R¥HPPÍš5£GÞöÅ`0H³fÍèÕ«WÑ(„ 006mÚP«V-ïþÆ—j6­ÓéhÛ¶mÐ;v䪫®B¯÷Ç'‘H$‰DâOäH°äœ¤¥¥•;ò[X(Wp^Áñ‚cÅ·Ë‹GrebµZIHHðÙûeñrZ¸ü•Ve¹;÷#00‘#ï!ˆë҇ݳf¦Ãn¡ÇõÝÑëõhƒÁÈ)9‰D"‘H¤–\B”%&S€Á’ËWðú²¿,Då9Å’N³$çÂs芔_˳¤üûaqæ”æï-[ÈLOÇh2b2B (¡ˆB"øìßn·›3©ilظ‰ûõ•™ìG\Xøß.‹™3Þ㆞=éܹ³_ÒñóÏ?Ó¯_?¿]—?ãËÌÌdÿþýÄÅÅù%¾;vP«V-jÕªå—øfÏžÍ#<â·¼‹çú믿"òÎßåÎ÷Âét’••E`` ;vì¨tÞ9N233©^½:û÷ïÇh4Sî¹[×oåàŠƒ˜„ ðLÅ&Âu¥¾¦>æºfîx莋ê^deeñí·ßrß}÷ù%¾ŠäÝ¥ÞÞY­Vâãã+ŸVëB£Õ{þVJþKÒ7òÐèGùbÁ'RK$Éù@Q!ó[¹ÄÑ{?òòÌT Á­‚ÓáÂfw  ˆ!À`УÓ꫆Ýa—™ëGʼÑÑQDGG•Ø?wî<úõëÇ<à—tdddðÌ3Ïøíºüß±cÇX±b?ü°_â[´h­[·ö›ã¸eË–ù5ïÜn÷“wþ.wþ¸§N"==:uê°hÑ¢Jç]bb"n·›F°bÅ ªU«F÷îÝË=×f³qòäIïöºuëJœ7}útž~úi »¨îÅñãÇÙ¶m›ßâ«HÞ]êí]VV‹ÅoñõèÑã²è+¥–H$— ¥ `)Š/ªÛ‰Ý¡%33—Ü\3.—›’÷™0zôè+&ïü]îüq/rrr¨S§ÁÁÁUÊ»œœ‚‚‚¼Û=zô@Q*Þv=z”zõê]Ru6((ˆ.]ºø-¾ÊæÝ¥ØÞû5¾ÈÈHjÔ¸ô‰Ê§‰D"‘ø—ËMvN]»vÃh @QæÇ`0о}ròòGŒ%ÿ9Fã·øü)¨ýŸV«%$$įèþrF£Ñ¯yçOÇs{Þù»Üùã^Œ+ŠR¥¼+n5c2™*•¾²DðÅ\gEñk½¨lÞ]Ší¢(~o?ýÙWüWÈ‘`Éy«À‰äò$5¥4ÇX ªªâp¸0a6›½l…Åoáí   œwþú}ò¬¿©È(°D"9øÃÚívûmäÒår¡ÕJ ¹²‘5@â%>>^f‚D")—V-bK{Dó|©øü†Ø3ú£=_òŸ ਨ(¿8ÑTûï¿_f‚¼EHMMõz…® 999_r÷!00Ûo¿]È‹€èèhÂëI|>B4®ZIÀv`—ªª–*Ä©ƒ€dUU7\yEV-7D\—v²fK$’rÉÍ9·¸Òjµ¥Žüßö§ ¤¤lì« ÷ä"¡Àû¯ä"¨OÇZ¨§OŸ¦fÍšUŽçðáÃ4lØðÒ,Z­ß–3’T “ÉtÑÔ‹Êk!õâ²?B… €À×ÀKÀ`#pXÑ­ ÑëeÀÄ p…¯ËjòßðÓÊU•«ªJÓf­eJ$UD£Ñœs>°ÁF|$IåÙ¿ÿE‘Ž3gÎøe$øÌ™3Ô¨Q£Bç¼ÿÎ Fß}V«µÈþukÖ0¸O?Ž$&Ê‚"¹ä¸Ø&a}Ü,zÍNÀ“ù"vµ¢÷Åœ¡BˆšÀÀ%âc^-ô¹<ècßJ÷ɧŸsìØqÙ*H$ÿÏÞy‡GQnü3›ÞC ¡- !ÔFjBÕ+X~`¹‚JH¡HÇ ¢"z¯^.rEEE EDB :H 5@é=™ß»“ÍöÝ@Êûyžy63óÎ;3g'³ósÞsLºo”½‡;Ö¬´.Ù‡®¾eaz#ÈÎJ)3 ‚ÊMQQ‘ÅãxeY6¹$ÝÚ÷¢ñÎ)bÆ ç;¾XÇþñ1_obó;óX6k.WÄ—$¨ Ï+ÚŸ*Œ–$©Jø^^’ey—,ËçeY>*Ër4ðœJ¿!¾P>ÌõzmD¥­WjŒ·Gx„¬oSÞ{ºÁI ¨n$$$póæÍRË’““ùã?„qª°xµÆýN™@Ð2îܹC½zõŒnÿÉkñÎ)âù'zâã]郞%|ìxvíØIÌ×›Xøò(ììX3f"+çÎãÆ áHT*’'¸ {eY.ÔòÏ¿øp‘4î&’$)T!Ès$IzW’¤a’$¹š"À%IzM’¤å’$MÑv-I’³$Ia’$-”$i®$I}K¬k SÍ6•$i¤$I~â2{´˜ë ¶ÆŒt2ó¨1"8??_KP­8þ<×®]+žðà³gϦ]»vF÷‘’RÖ³Ÿœœ,Œ[AÉÎÎÆÅÅÅ¢>²²²JÕ6—+W®Ð¬™ñе½¼HLùûÚR á“¿ì`áË£þ>ÇÜ\ò‹Š*é8QÁŸ(Óƒ“$i $I¶ZDÊ@Y–É%Ԋʃ¼er0Øœ$©£øÿ€³ÀçÀ`1°_’¤Ï%IrÒhûpØŒæ»$IúE’$; x_Õ¼ ðÐO\f•ƒ‹—.—›wªäؼ’‚T×2mcùJ¶Õ%jumWÃ!§M†E°1äåå c ª-j¼téR<<ŒÏ´ºråJâââJ-[ºt©0h%##Ãbœ˜˜ˆ———U¹)Bõ¹aÿ‡w‡@Önû¾”ž2tXñ|jfSÿ½žÅ¼o•1ËAµÁ²,?À/À-I’ÖH’Ô[%0uñ5ð„jÛ¦²,מœï%IrÖ#€€ÿ Ì@= ¨ ¸©„ðkÀìm[ªÚ¦=dY®4@™Àk 0S–å/oÕ&ßȲ,ɲ¼Z\f•ƒÄ;‰å"‚Õ"4;+E«˜*)RK¶ÕÖ^__ºÖUUü8m*°Žž`Au%))‰Ù³g³lÙ2“0ÀÂ… ùá‡J acË’ =™™™{qïÞ½‹···E}äææâàà`òvφw‡@>ÜöC™uiY™ÅØÔd[Á¥…ð|•=Ô&¿$IúN’¤ö"ö@/àY–çɲ|CÕO,° hLÔ³Ë(ËD=+ËòfY–óTHÒÄ IDATÓlà20U’$õõ0Àx[–å}ªýÜUãE i…þ¦«^þ+«Ò½Ü÷¡M–\fH°ê[_]“ß›V0$å8ãE°,¨^Ü¿ßl¬zöañâÅe„° bb OpzzºÅBúÚµk4mjÞ£ªwýz<ÈH+³<'/ÉÖÖâó¹’+``Y–7›UaÎC€þ*¡; IÒY–ÿ£jÞUõ™ IRFW—TŸúŠßvG-Û|?`/Ê1ËEÀÇ{h%®¬Ç6OZÄü²=†Aû—ùÔø.+D²áq6­´úW’°³³%++«øJß”‘‘­H’%¨4,X°€ÈHó+-æåå1mÚ4–-[Æ‘#Gô¶õôô¤S§Nz…ð¬Y³Êõ|çÍ›Gaa!‹-_¾™dffš-×mXGü©xžë÷œÅÇqóæMz÷îmòvê,Ð%Ç«ñò¬Aäá„Oô'ãìì,¾pA¥AQQL–å[²,(Ëò?€Z(Ë$|!I’»êïªÏ€ãÓVÕºf:~@jž(×k™^ÑØ>¸/ËrAU{RU¼ÃúÊ‚¨¯ægIþ³qÓc× Ý›V¦ûˆw7göïßGvv¶^œ““CüÑ#¸¹:ac£({’ñw&;ۢ틊ŠÊÔZ5—’á'NXý\W¬XB¡ ;;›+Vˆ/ßlŽ8\·a' OPïåz|øÕ‡X|í)¦=ökÀ©™üx(¶x¾a/æ>3Œð±ã‹_€ êYEÇóC…ñK’´h ¼ Ërž† ΢%Ij LF™lê[ WÕäu@W¥îLËÕÛžEÈ´Ú£œÔ¬ì×€@7Ï=7”·ßžRî‚Ì’¶U5É•°iÕÀÆF‡»#÷ïÝaË·ßPPP¨%ÚY¹ÀÞÎWWÜ\PØO° zàèèÈ[o½ÅÖ­[ùàƒô†C§¤¤0cÆ £DVll,9998::ZMáääDjj*NNN¬X±‚iÓ¦‰/ÑÌæà6϶ }D{ÆDŒáÓ÷>5«Vprr25kšþûûÎÝ hß¹”~ëÓµtéÕƒõ1?ñFÿ§hP»N²Ä7hÕJG *‡ªHáÐmQ†>÷~ÖÑæžêS-’Ï«>sdYþ]ã†ãt®k5„,§K’t¨ü!Ër‘Æö(“d©A$-$Iª-Ër’FÛ (½ê¯ \y±·³/OpɤJ†,j«¹¾º"lZqqvvÄÉÉ‘üOrsó$ EÉÿ+ $$œœP(äåå+²D ª]»v¥Q£FLŸ>åË—ãî§§§Á¬ÏYYYLž<™ÁƒsôèQBBB,>¾åË—DXX±±J_Ÿ>}ŠÅqe ԫW¯”76%%…{÷îѲeË w¼š V³Z0³…pBB-Z´0ùXf/ˆbî;ÓQH~}ûá{¬ùâ3¼¼¼Øøå¿Yócú=Ŭ¯>ãÅ c…T*\‘Dð*ü±$I÷eYŽÓš~À@6°Sµøg`>0M’¤ÿ©<ÆjV ,—´˜©cŸ[ñÀ›ÀÚûªìFéùõÒmÀ`‚jŸê¶]€*!](I’Z4;W†KAD–y9ÂáÃGLÚ&(¨öööE›±Ë %u2f™±ÛUv!ü¸mZÝFtÝ7íq±QŽõU(¤R!x%_4ååå“——£µ/YÏýJ`=.\¸ÈW_o”5låB¡ [·n4hРX»¹¹™ÜOVVo¿ý6QQQ¬]»–¼¼<òòò þ#€ûõ+[ݱ² á;v0xð`7n\¼ÌÕÕ•ÈÈH&L˜P¡„›6l !œ’’‚§§é¹1$IbáòeÌž2b~bø˜QÅ¥š^ñ*¿ü7Ͼ;‡ ¢îÖMüsWaY½ZYð&66–^x¶Ò?¯T$¼e"¬áÀ>I’–(Ùý€P”ÞÖ±²,g«Ë I’>V Óƒ’$½§jÿÊé뀾Es€ç÷%IjüŠr ð( 6ð¾,ËWÕ÷&”µ#%Iò@Y+¸“j?ª¾e9[’¤‡@_I’V¿È²¼»âË_ñxùņ/ñkÓš©Ó”ïLòóóQ(Å¥'rsrp(j¦žÿáûÍzÃŒ´y–!lZQî!²ÙjîO•µúC«V-Y´0 €×o ƒ”àÃ?d̘1Eå–-[èܹs)‘e.\¸Àœ9s˜>}:Ë–-3IgffÎüùó©_¿>íÛ·çØ±ctíÚÕ¬óݲe íÚµÓ*€5…ð÷ßÏСC+íwkkk˪U«ˆˆˆ`âĉBëÀ–asÆk áwW­ààÁƒeìôÒˆWyvØÿY- _Pqñöö.ŽL‰ŠŠª¤Ï-T˲,K’ô °_%jCT(½¿ÇéêòD%P—(ŠDYÇW}¦?ª2Fºö™¬Ê ý!Joð[ªUÉ(k/)Ѷ@’¤` Ê1ÄáªU—€§5Žk>°e2/w”^eAgôë¯Ñ¦ukzõêÀŸç/àæêJÆ صû7Bûö)n¯9¯ k 4!ô„MÁ££ÿþL™2…U«VéÂ[¶láÎ;F àæÍ› †îÝ»Ïüùó9räH±À4DFFááá,X°€zõê/¯Q£ééé˜5nô¹çŒË@lìqVtìììXµjS¦LaÒ¤IV¾wïqÇsóêUzöì‰EØ\!|ãÆ 5jdѹH’DZZµjÕ*³N`Ae¥¢Õ .”ey­,ËmdY–JLβ,w×"€‘•¬‘e¹v‰ö Y–‡È²|¥D»ÕºÛß–ey¨,Ëv%¶¯%ËòbY–e¶)²,¿*˲}‰¶-eYþU£Ýû²,»©Ö—YåùAT `€6­[ ` Œà5F  râëëËÛo¿Í”)SÈÓ2n}Ë–-ܽ{—‰'ÝgëÖ­ñññÀÍÍ dY6IX.\¸°Œvrr”ÞàòÈ]U±··gÕªU¬Y³†K—.Y¥ÏãgÎÐ}òd‚¾ù†!ŽŽL©QÿE‹x{Å UmôÒ|÷ÓwÄ¥Ç%€K áF#1iæ$ƒm¯]»V|Í™Ëýû÷©S§Ž¸`U [a@ ÝBxÚ´i¥ÊmÙ²…û÷ïóæ›oZÔpp0Û·ogðàÁFo³lÙ²2ËÔµ‹k×®M||<………ÅCyª;EEE¤¦¦òðáCmæÎË;ï¼Ã¬Y³, Þ²ko;Çí÷ÞUr6ÊÁ+W¯rjÚ4v®\YÊ{ûd×'ù÷ÿ&73£÷•ðK¯ôWVó¼u뉉‰ZÛ={WW×âùV­Z•š7†3gÎн{wq1 „ª¿lÑZWX ÕCOš4‰wÞy[[[¶lÙBRRãÆ³¸o…BA›6m8}ú4mÛ¶µÊñ¶k׎ӧO$¾<àæÍ›|þùçx{{ëmwùòeöîÝk¶NIIaÎîÝÜ^²Dëú¦M‰0ikÖQ¼¼N:|ºøSFÏÍQO%„¯=Ì+Ý^a`¨2¸qÚ«Ó°ûMw¸uÊ\³™d2`ÍFOmÒK„¼¼<ÄÅ$"X ¨N,Õo¿ý–äääây{{{Ö®]ËÑ£Gy饗X¿~}ñºüãE–.š5kFLL ­Zµ²(³³oooNžwîÙÙÙܺu«Ôò   ºtéR)¾G{{{†ª÷x7nÜȈ#xã7ÌÞOô¦Mœ7PТ¿$'óž,—Ê”_§N>[ò™QBøðÚüüR±p°sÀƒÇ˜JªÉç•€¯¯¯¸!„ªÂ\ùqröI°ItíÚµÔXàÐÐP^xánܸQÆËjNùÍ}8p€^½zYåØýüü8wîFoãëëKíÚµK- áÔ©Se¤¥çû(qpp ++K¯ÎÈȰH»~ŒH@u¯ys­Â²¤G8d~ˆV!¬Àƒû ~dö»råŠÞŒáÁAEàÊÀÀT6lXfY³fͰ±±ÁÞÞ^ëzsñððÀÁÁ¤¤¤2BÔ5jÄÙ³gMÁ5kÖÔZîïÆ4mÚ´”ç²2aooOvvv¹ `€\c<=uŽOöòòâÓÅŸ2fÖ˜2B8nm/uy´8;;‡JûÝ úPúùe{L…9Íú¸šóÕ 'gÏâÉ}´-×ÜV Œ¡C‡œ={–ÜÜ\«öÛ¹sg:dµþZµjÅ… ,î§iÓ¦\½zõ‘ÙW–e~þùç2Ë:d–ÍÈÈÈ(W ÐÌÍ 23 ¶«{îœÞñßuëÖåÓÅŸKnfn±~±ó‹<Õÿ©Gz­Ÿ9sÆjcÕ!‚Z‘$i…$I_I’ô¦$Ií%I^ú BEògg¥”vÕÕé>wõ¤¶‰1öѵ­@ K=Ø·oŸUû´µµ¥uëÖœ;wÎ*ý5mÚ”+W®Xܯ¯¯ÕÊ#€gÍš¥µÏï¿ÿNNNŽY/4ÇF'%%‘••e5 ðúàÁÔùïõ7ÊÉ¡ejªÁÚºuëÖeýâõÄFƲÕ~^ìü"Oxú‘_ç<ÐZX ¨ ¡UqX< tÆ>’$ª¦C²,ß3ógE5 ÌÁÜ1ÁÆ¿BLÌN“¶ÉÍÍ¡»F¾ ¨ˆ} ‚ê““-Z´àäÉ“´k×ÎjýúúúòË/¿àëëk•$YÍ›7çÊ•+4kÖÌì> öööäææ–k†`µ2dÁÁÁVë·_¿~ìÚµ«Ô²Úµk3zôh«çÀ@žß±ƒOΟ§¨ukm'HÓ¥KÙ0y²Qýy{{³~ñz.]¹Ä“ÝŸ|ä׸9µ32292Š‚‚¿åEXX{&L&n‚ @i-$<Áåk‘åY–7ȲCâëÅÓš÷ß+5ÿýw›9[<âøa¾ÿ~³Q¢M$zÒÒlÈ>êõ"Z XB“&MÈÈÈàÁƒVí·{÷îV ‹nÙ²¥UB¢ýýý9{öl¥ÀšÂÙ¸};^ ê뢰Åñã´ç¿C†Ð ~}£ûóöö~,”õ…ýýýMÚ&99™ƒ›³uëÒâiÇŽâf!¨TZ%IRà à¼,Ëç ´õz—eY>SIDq°K5!)³´Bé).é-ŽÇlo±¬1 ´QÒlè³$ƽPjþÕW_.5ß»wÏRó>>Mðñib”ø«îBXóÜ5Ç#„uõ%0öÞÆ}C¶BŸ†îIâ>%¨XtëÖ˜˜úõë‡UúôôôÄÆÆÆjI²7nÌõë×iܸ±Ù}xyy/°lllx?<œ1çÏóåW_ñçÝ»¸ÙÚÒ'0Ë—[Å»ÿ((**"77×`ض@P9ŸW*¹‚€ï…@¤¶MUmWá@ ?t—ey–$dà¼júBµw X%ŠÇ$IzXBNäçŠgG Ù¡+¾ ¶D@ ¹( ºwïNll,={ö´Z¿ÁÁÁÄÄÄ0x°å™€ýüüˆ‰‰±Hƒ2„ØØ1¢ |ûí·eÄnjjj©òJEEEìÙ³‡!C†`kk«Wh?Êä\–к5+´…DWL© |÷î]Þ}wéé)4-µþòå ¼õÖ2[0zô³âÆ!x¼z¸ ˆà$ ¸T‘J’¤ºÀOÀ7åþ]*½Å;U“Ú[Üš¿½Åã&}ú†Ñ!ÈŸÎ;йsG»Ôÿ&P‘ê—pÕÙlL2,]öÑL†%±@ °¼¼¼¸té-Z´°JŸ¶¶¶´lÙ’sçÎáççgés ÞÞÞܾ}›ú&„â–v>|Ø(±ß¸qã2I§ÒÒÒˆˆˆà³Ï>+^–ŸŸÏ±cǸ{÷®Á$^ýõiiixxx˜|ì666ZÍ[_Ѩï[Ÿ?Sÿ4Ø.¯ ~M ×ü½rå aaaFíûèÑ£|ðA ÐUµÄ­Ôúsçþ͹sùª—;‹…T*­–eù80@|…¥l"ª¦ÏU?~3gLOÙûû.>ÿâkÞœ8…š5kÒ²ESÂúõ§sÇ@l á)ÖCEË­o¾º aÍ¿uÙGØÍÚ7¬?Š¢db„† ’ѦMöìÙC½zõpuuµJŸ-Z´`Û¶m´hÑ;;;‹ú d×®]‰`'''rrreÙ`ÝX;;;jÔ(ýÂ]¡Pàè舛›¶¶?~nÚ´‰ððpüüüôŽAçîÝ»4jÔÈäcwqq!33ww÷*yý½»ö]ëý¶ªjkfÔÖ ËÁâZâ…ŒHe#xŒÏ-IK’4(eù[åƒ/à[Y–3J,ï´¶N@?à„,Ë'4¶o Tòn @Ï1øýoàJ/î3@¾,ËÛ4Ú6Pí³ påÜý%Ö7Ô±KM%I –eùÜcûÎe9µ° ®]ÔóüuãÿÛ¼‘S§NóÙ§ÿâ¯ë7 j×–îOt'8¸ Á]:áåå%þaTT$O°@ *&!!!ìÚµ‹‰ÆòÄOpàÀ‹C­ µjÕâÞ½{ý¾7kÖŒ+W®Ð¼ys³¶wwwçúõ륲UÛØØMxx8ãÆÓéùvuu%))ɬýººº’‘‘QeE°59sæ ‚*ÏãÎý*°Y’¤Ú%„¤-° å¸×¾í—¿ªÍ³%¶UH’´8rœð;Àa`²ü!ÊpêÕÀ*qý?à=`žFÛ€3(=¬c€Å@¬$I_H’ä¤þ T@Õñõ«H_¸$I´iÓš§ŸêÏÚ¢9t`7?~ÿ_&¿='GG>]ÿ/ÛuÆÏ?ˆ‘¯áãuë9~üÕöŸD`@ ÂÎÎŽ:pøða«õééé‰B¡ 99Ùâ¾ÚµkÇÉ“'-ê£yóæ\¾|ÙìíÕ"Xµ^·nþ©=¬×ÖÖ–ììl³ö«ö óàÁ3²]âUSªÎuùùÂÀ!‚UüH@ÉÁü=  O ñ抲Žî6Y–ótô·eˆôrÀ¨ ¼ ×"Go¢»[S–åº(³M?2‘VɶÀF ÔUã»ÀH`€,Ë_¢ô(|#˲$ËòêŠðEë‹^tuu¡wïÌž=ƒÜÂÛרòí&zõìÁ©S§y}ô8¼ë5&¬ß æÌâ§ŸáÞ½{ÕæŸD[ù#@ 4©[·.¶¶¶ÜºuËj}vëÖXÜ­­- ê’5ƒõ‘ššJVV–Öí5_ªß¹s§”þøãu asquu"Xƒƒ—Wúqúþýûäæä'ÆÐ«W/vîlÂÎùÏ.P·î¿K­ïÑc);w>dç·|þùaxA…ÑB[ÿ¤ú,éj ²ã%E°J(Û?hëH’$g`*pR–åé²,çËJ¾>Ö²ÉBà0R–åt•ˆ=€v¯ñr”¡ãCeYÞ,ËržjšƒÒ“þèŽÅ"áòŸ¼óÎY¿þ3;ÑÆ¯]µð O°@ ¨ª\¸p‘9s£˜37ŠóçÏ ƒXŽ;rúôiƒBÑñêëëk•ï§}ûö;vÌ¢>8sFµÉœœ¦NªU»¹¹‘žžÀ–-[ضíï‘g666¼÷Þ{Z³DwíÚ³ž5\\\ÈÈ0Ï Y³fÍ*wnüòßìür#áãÆ—Â?ÿô¿}û=QáS¹yó¦Ñ¶ %44”2ß§§wñúÀÀ@qƒ¨¤$&&2cÆ f̘Á®]»ªÄ9=V,Ëò-”1ý4Än,ʱ¼ªlË k› l×Ñ¿ê|~Ô²î ‘W¨ü,ËrŽFÛo|Í{/J/°£$IA%' pPí¿Ò¿Ñ…‡‡a¡}™3{?ýø·o_cË–oèÙóINž<Ũ×Ç{‹gÏ™ÇO?m«2Þbá tß7¬•#K[^,QżüiÕª%‹F±ha­+qI—ŠFÏž=Ù»w¯Õúkݺ5 äç+ORRR´ŽMHHÐÛÎÎΤ¥¥™},uêÔáþýûzÛÔ­[—ÈÈH¦L™RF«ÇoÙ²…¤¤$F]Fô¿òÊ+eúìÕ« 4àîÝ»&³££#999f¿8¨j8ãB‘/$<ìéb!|òäIý²ƒ÷^Ÿ@ô¨ñ,œ:Ýh!¬æöíÛHRð°x***7„*€··7K—.eéÒ¥„††VÊç– %‚UüÔ“$©­$In(áw¿©Ö÷V}~S{mµ Å[Ë:͸¤vªÏëZ„yaÉö’$ÕB™òÎ¥wZsRß©›U ¹käÛ…¿6­ym䫬ûx-ÇÅ‘pùO¦M‹ÀÑÑ‘O´x‹;^)½ÅÂ,Sprr¢eË–œ:uÊj}vëÖC‡ÊäEqqq¥ÖGFFê cÍÌÌD–e:tèPìi-**2Ëc]«V-ùŒ›7oÔŽàà.t îBppç Ÿ‰Zd‡®¤Õ´ž²@ x|øøø°oß>žxâ âââ(,,ÔÙæôéÓF÷×½{w"|~$¾-ZÝï©S§hÛ¶­0° ?·T0¬â'”™Ÿ{dYVßáv>(Ë’e9Q˜¾\^UÕó-I„FÛûÀw@I’ú—À ”¦5Ù x¢Ì&]R0×AºýÊLÔê6Îâ‚+‹§§'ýû…9wÛ~þ;·ÿâÿûo©±Å}ôI…:æŠ4&ØÉÙSï|uÂÉÙ³x2dmË5·k£P(èÞ½;±±±:ÛlܸÑèþìììhÚ´)ýõ ,(NHd ÁÁÁ 2„E‹QXXhö8Yø{l/@\\dêÔ©:…ðòåËyë­·˜0aB©mMÅZ5˜«»þ3+•ã—/–Y7ý‹uL˜=Ã$œ””DÍš5±±±ÆTl+Èqü¨˜-ù»Î.ÀN`ÐXcD?/¨éI’æ£Lf5è¡¥íl•ðþY’¤M(½Ñ¡€º|ÉWsçÕ’$ù¿¢ô.R‰ß5²,_Q ìlI’¢ ã^ü"Ëònq©é~@ð÷#ÀßQ¯¨Ç(<ÁS—ôîªç³³RŠÿÖ­k[@P½Xºt)))ÿïK›6mÊ Ó™ G°Ÿ4bÿE€Èã_()p }–dذJÍ¿úêË¥æ{÷î©ñ@П&ÂàF `ÍfÍu†„°®¾AõÀŒ7??¿b‘µnÝ:Þ|óMÖ­[GÆ ­²/;;;Ú¶mË¡C‡èÚµ«Þ¶ÆxHÛ´iàAƒ˜6m+V¬(%&†ÎðáÃõnÿÍ7ß`cccVæê¸¸8~ùåV¬XALLÙ¼Æᆠòûï¿›,‚Í ¥vvvfÇŽeD°áááDGGWy!\»vm<êzqújAÍ[“—Gøç1}É"~ß¹‹ »-Â?Äí§ß`ý/lÒÓÓ±··7Ù›øèQnúøðÛ¾}„‰0jÁc¢:ŒøhÒk—‡@—À}œT÷Phm‚¸<Û ‚ªIAA“'O.%€Õ4iÒ„åË—3iÒ$nÞ¼i•ýååå1þ|233¹uë–Îv÷ïßgâĉìÓÏÏÑ£G3mÚ4½¨5Ù¼y3>4¹N¯š¤¤$¢¢¢$‰Úµk“””¤S߸qCû¨BaÒ1—ÄœäX®®®äåå•YîããÃôéÓ ·(QXeÀÆÆ†åkÞç«øýüóL±öññaä˜ÑÐÈ› »eÅw›ðëÓƒ§‡ ÑÛ_||<:u2ù8>þùg2Ö®å³;ÅH Dðcà`5ÐX |²Vñf`€,Ëéâò@ÅÊ-(ý"@_’+ͰgmÛŠ— Aõeúôé¼ùæ›´iÓF§Àœ1cS¦LáÁƒïÏÞÞž+V°iÓ&öïßOnn®Vi&wò÷÷çõ×_ç¿ÿý/¯¼òŠÎí¾ýö[îÞ½Ëĉ­fGGGÇ25ƒÅ××—Ë—/›ìMôòòâþýûÔ«WÏèmœuŠ`M!\ÕC£mll˜=?Jëºa¯¼lTG¥cÇŽÛ­ùì3>ß±ƒÍšPTXÈÕ¾}¸>x0=§NÅÆÎ€”ë×y®Kæh$r„X ú… ÌÅÜìÐå…ð^ šÐÐPbbbpvv¦fÍšV«W¯fìØ±Ô©SÇd TfY@@:·Ù¿?‰‰‰¥°B¡ÀÁÁÁâsjÞ¼9ßÿ½ÉÛyzzšå ®[·.7oÞ4Idffoðû~å•WذaCµÏ$­‹œœ qqq1ØöÍ‘#9Ÿ”Äÿ¼¼H5ªÔº´>}Ø×§òÿâë¯ù‡“ÓÆ<-$D°PÁTÄ1Á@ xt„††²}ûvúô郳³³Åýyzz²~ýzþùÏ"I’IØ\ºwïÎO}z™ýŒ9’Ö­[ëì«aÆܼyÓ¤rT …¬ðë¦M›ò /è\Ÿ’’´iÓØºu«YY³«yyydggãîînÒvOõêEMnÝJÚˆÅË]¶oçãÁƒ Æ”¯æÑ@ˆ`¡‚µ<Í Jb¬.’eÎ_}Èõ»iäç à ª¶¶64ñv£uÓ:î–ÞCd´¿¡*XP1ppp gÏžìܹ“˜ä¹åØYk ÛÇ…%Iµ4ñññáàÁƒEðõë×Kµ‘e™[·nÑ A«Gjj*Ó¦McéÒ¥BëáøñãtèÐÁ¬m7îÝKÚ¨QPT„ýöíäõïOæ€l\½Zˆ`Á#WÁB 0Ö|þÊC2ò$:´mƒ­­îâï'£°0Ÿ‚…q•†ÂÂB®^¿Íù«i(žU”—^zIïzwww:uêÄþýûyòÉ'…Á¬€½½½ÖÒE%Y¿~=®®®¥¾wwwÞ{ï=V­ZeääÉ6ܾ=¾Ä ƒ×ñòò2«¿Ë7o2, €u‹wvvfÓÒ¥løî;îÜ)W¼*j§.ýÜ&å³nó:ÜÜÜ,ê;;;›…³çбN}¾xëþ8s’ÉoŒ#réb«d”,°1’Î|LIŠUXTDAai|0v7_ùÞ=œhÞÝuÎ&Ϲ’|&›¥KÞ¡ÿgyê™áH&Ž13Íc+oº6gç¡„R"´äüãàQÛ *QX$ #T1.\¸ÈW_oàüùó &бcGþøã\]]­6.µºâííÍÙ³gK‰`}X-  LÚÏСCZ&ÐŽ©É°JRÛՕȉµ&hùì³¥æ—D/áÆû´‘l˜?}¾QBóÌ¡34iZjÙùúçyøð¡E"øÌéÓ¬]²œYC‡ÑØË€íhÒ”áSyöµWéÑ«W¥ÿîY½z5±±±¼ð³•Z ÉB †1%;taaañrNv_mø€ó—Oà;—úe³‰Ö pµ±û¾ÿ™ãÇòÆøéÔVÝDu10¤Ûc/00Dé}Ø{¡Ìz5šë Š·×ì¯ä¶êþ5ÛiëWßñl½Pæ!ÅÔ‡–Ênƒ*%‚ …®j´jÕ’E £¸qý¦0ˆ‰ôèу˜˜œœœ„ÇǤ—/ÈÈÈ(µìÒ¥KÔ¨Q€ï¾ûggg:vìHjjªÎÒQædˆèæÞ½{ÌûEE‘‘B^žo©õׯßd̘e´iÓˆˆ—ê7;;›äädÚ·ooTûÓ·N<ÛpÞ”s[ÎqëÖ­Çò¿'Ë2ë?üˆ¤?/±vôDlmJç‚©éæÎêQoòiÌ6ìÝÇÔÙ3±µ­¼²ËÛÛ»8±Ÿf–ûÊŠÁÕ‘ÚLò—Á¿þü—n õ¸Ø8èöî š¿êÆ­øxí»ÌŒŒ6JþôûÙ2?ÝË¿øoÍu%¨6aZr[µ˜S·3Ô¯®ãц5Dpe·AåÁŠ2÷kÞ—ôÍ#îU‚ еkWnß¾MRRR©e»wïÆÉÉ {{{¾üòK9rä 6ÔY¯W³L“À2.^¼Èþ@fæ`­ëÏŸÿꀑ®]ga\¿¤[·nUÊV‹æFâÕ˜±ÿ§¿¶ñ˜þƒ9û×U¦N˜ÄêO>ÙcÐ<ºž„ `Š'¸¨°BU¸m»ÁìÝ· …½aï™$\$ѺMûâíõñÃîS¥Úéú[ÛºvŸâé^þü°ûCú–êKý©^gl¿úŽGæ¾,¥2Ú ²S$BÉ‚2¨kïÚµ‹`cc#Œb€Þ½{—Y–ÀСCñðð G,\¸èèh½/fΜ)ŒY ^xxxxT¹DµêÔ¡‘™Äש‹»‡ù¡ä,ZôÇ_aÍš‰4iÒX\XV@!L ègÐÀþü²=¦Xëû,,,¢  ‚‚B¼¼àììNú_¹Fí'íBm;o¯kR޵ϻNý·9Ûš²Î˜åæL•Õ•}*I±­888ðä“O²gÏa +аaCæÌ™CDDYYY •˜ãÇ]™xnø0¶Š5ªíχðôóÏ™µŸ­[wÓ¹óÛ,^Ì?Fòä“_1a²³³ÅÅe!Â, ¤'XßçO\) йSNœÜ»ƒÞ}d'P˜]D½†MŒ Ö7ÎÖØuÚ‚­Ñ¯¶ùáƒ;³iÛ«…BWFT ÅO†@  www‰%$$DÄB5jĬY³ˆˆˆ ::Zkù$AyÜçOêg–@ d6è#€²¦ovv’Q¸]»v(LLúùðîC.î½h°Ý­?oAðã±Sݺu¹—aTÛ£%0¼ót“úOH¸Ê¸qïLzúZ@UxãÆlÖ­»ÌÞ½3™4©cÇ­ÁýˆÑtæbî˜`€ÀöÁìÞ¹•†ƒ]QèùoK=ŸKë€ Š ‹(°·møàÎ|½õ ÙBíë­‹ûжþ•gºYM¾òL·2û±•ÉUçáH„C úðòòâáÇ¢†°•hܸ13gÎ,ÂŽŽŽÂ(åHpp0±±Ê— ‰‰‰¼ñÆ–R%’úôùŒåËß F ý¡è999$%%™å^±˜››Ë‰'Ö®t¥A~~~Í^­Úrþú5Z7öÑÙ&=+ §šžZ³bëã­·>`×®%@Ù—?EE¾œ=»šE‹ÞáÅZ”µ»új!Yˆ`À&e‡Ö(‘äâæAÝúõI¹˜NM?Ý?ÞéŠéÕÑèò=¾‹-i¾‹-Þ®ärÍuP¶G>bq¿#Ÿ )%(ÕÛZƒÊbƒ*%‚‹D8´@`ðÁ¸U+âããE a=,\¸áÇӢE ½í–-[ÆÓO?ÍŒ3øä“Oxûí·K­¥©¬‹]ñË›ëׯ×K­wu­iôËýû÷Ó½{w³ŽC-œ·mÛFDD„U¢ÒÒÒ¬n¯ç†ã“y‹˜£G› mkë U—nSSdH·!‚Å[DŽhý˜æ .*ª¦]»âNþ¨Sd‘v;‹ÆM[–ÙV…|¶yoñß%Q/×\÷Ùæ½eÚêÚVs̬)ý–œ/¹®}šKe±A•ÁÅc‚Ëã¾aL~h r jëgúô鄇‡óöÛoÓ²eK¸]»vÅž>M 0qâDaÌr½ç'WJÌátçÎÜÝÝqqq1{ßGÅßßß*øâÅ‹&{bÁÑÑ‘K‰·ô¶9|õç‹‹©Bè!‚“0Ölk#‘ŸŸr%µlÓŽí?þ—ó”cGŠoι¨ß–H …Ñ!´–†ÚŽ{©/ë6î.Õϸ—ú–j£¹¾¢!lðh±µQ—ŸBÔ ŒA]CØÅÅOOOaØÛÛÍ”)S˜4iR!¬À ÆzLÔ«WwÞiHNήâeݺçÑŒgРAfïûîÝ»deeáããcñyܺu‹{÷îáèäÈC–Z—Q˜av¿)))ÄÆÆÒgÐ Â?ÿ;{­í¼|—‹Xá¹F˜@ бžàFuÝILÎÄÕÙEI¡àáÄ’U딂W¶R¾R¬‡%£ËjlÞvÀâsÒÖ‡5ú}T>|HçÎ øé§L›ö§Nõ'3s¨jíu|}£;6ˆˆÏËõ8ªº"X 0€)Ù¡aÏž½ääÑ?,LWPe°±±³p{{aDÁcÇÎÎŽC·nݨY³¦É}Ô¯_¿øï½{÷rãÆ Þxã ž~úiÖ®]˪U«¬r]UìþŸÿüG¢’ñÑÏ?ŸžŽ,Ëܽ{³£(RSS¹uëaVx6Ú³g=zô°ê„7npñâEú÷ï_®6MHH !!bkkË]øòËïYºt,©©Þ„†±fÍ<‘gÀ ˆ×Õ‘Ú ÖÀùùù̘3›á#_äµ7_cÂÛ“ÈÊÊTÎû†ÆýC!ÙP$›WBI.Rn¯­_q¦ØØX­Z;÷êÕ«$$$зoßrµç¡C‡HII¡_¿~ØÚþí§1b('O~À‘#oðï/Ø’ç!‚ãùe{ŒÅ}\¹r•î½zòÝMtû¸>]?ªÇï×¥C×.?~⑜‡“óã»i>Î}WÄ㨊H Ì-WX$!)l„„ŒŒ 6nܨ· ýû÷çÝwßåÎ;&ïcß¾}ìÚµ‹ ”ZÞ¨Q#fΜIDDÙÙâ%¨ òü8Wƒ‚È8e7Ò¶m[³Cs÷ïßOpp0vv–E?~œ àååeµó¼xñ"·nݲŠ@×E^^¿þú+õë××Y‡ÙÞÞÞärk¼½r%c–-+ž&¯Z%^©áÐ,õoܸ‰ÉS#ðîFÐsµQçE ˜V“Û¤3à™Á¼=á-¦OZ®I„ð”'vvޏº˜– CEÝÁÎ;;Gòó„(”?®®®äåå±aÃFŽ©³Ý¼yóxþùç9{ö,4jÔȨþcccÙ¹sg¬¦qãÆÌœ9“ððpV¯^£££øRžŒE²»;vªë5))‰ÔU«ÀÅ…£îî¼¶n]qÛÔ?ÿäßK– ªñ¬k×®áääDݺu-:¾ .дiS«ó¹sçHKK³hœ³!>|Hll,½zõÂÍÍÍjýfddΡ… ÁÛ»x¹tó&ñááÄDGWûaÂ\mq…æb®'8-=—G¼Ê´Óè°¤MŸ÷D³T\ýnt]ë͆íëy²O/®^½f´¨tröÔ*0ÕËu‰OÍå%çKn§­¶~õ“³'ÙY)å&¬+ƒ ªÍ‰Â?ÿvH&üªH’„\TD«6mQO°à¢¿6lк~îܹôïߟBCCIHHàêÕ«Fõ——§S«iÒ¤ 3fÌàöíÛâËT ÖÌ›GQn.±#FðûÒ¥œùì3P%K\´ˆß—.å÷ÈH®_}Õ(œÍÙ³géÔ©“EÇvëÖ-îÞ½Kûöí­v¾§N";;›®]»–›M/_¾ÌÑ£G8pà#ÀrÆìŸ;—þááÕÐ#\Z ,À\OðêÕ{îwº®õÆ£…î7ý޵m z·6™Íï0ìåÙY)dg¥”pêåšëÌíÓ˜~um[¸²Ù ºõ__:t芇‡;6£’wZ´lC«Öåz­¦á’XM¯^½¸uë—.]2ØoŸ>}ŒÚ¿Íš5_„ RàÓ¤ |ðo|ÿ=^_|Qf½ý™3t‹ˆà·7ßdÔsÏÕço¿ýfôÿ‹.Ôµ€{ôèaµs=vì²,ë M¶ --°°°Rã-¥¨¨ˆ~:°¦Q­¯i]-ÑÌ>Sr™@s³Cú ñ6N†ß5I K„…—ÑÁ i%?uµ1¥ÏG/º„ *Æ=DI~^Ù’D]ïFxÕmHaA²,I6¶öH’DVÆòó²pptײ ,Xƒ8yò4  o¬ŽBxÆ ÅBX›V¡C‡ÈÏÏÇÏ/—@PåDƒ­-ΚEÒÔ©lÎÈ€™ }?úˆ}~hô°®øøxüýý-ªs›››ËÁƒ­ZV+..WWWüýýËņyyyìÞ½›€€£‡X˜Bzz:wš7×)€K á+5jÝoFF‡àÊ•+tìTI®ZÝ:Gx‚ Ø¿8$ÚÐgIÚøS«Fm’On’—Ç3O=- .¨´äåf’òà:©É7ÈH»Kfú=SFÚ]R“oòà:y¹™Âx‚Ç*„Ö¯_¯S«éÚµ+ÙÙÙœ:uJNPm¹"ËJœœŒí±cÜ騑óªq¹†¸wï™™™øøø˜} ………ìÙ³‡ÐÐP“ò©ìÙ½›¨Y³ÉÍÍ-³nÿþýÔ¨Q£Üðƒˆ‰‰!$$¤\°À4„'X 0@IO°¡OMF¼ø*_íYG­@ýÉ2näQ˜!Ó©SGap@ðȨU«}úôàË/¿®¶vÔ©£»ab"ªa!‚¥ÞŠO±~,­üÚ+¯±ró"êéxžÊK-äþ…túôîe²´ÆrcÛÛ¯®$Så%„+‹ ªó}ãòå+|ö¯¯xååðÓÛ/âž$x ¸¤G)22’¨¨(£„pË–-±µµeïÞ½ôìÙSUÕ­2i IDATPåY1}ºNñõet4±±±½D‹°û:ºø¨YÇЪU+£ÚM;œŽuê³bä8mþÑ5„Î-Z3uÌ8Þž3ÿ¶m>޼¼< ´ÖÛMJJâàÁƒôéÓ—Göýœ={–9Ï<ÃÂ3ˆ_ºT»NL¤ëܹ숎®VzGˆ`ÀD,ñ<7tááS¹1è! ÌŠ«üCõYXDÏ>!8;;=²sÒ¬þ[Õ…œ°Á£áîÝ{<ÿ#¹yóŸýëßüy6Ž:uj ûž3gN¬&**ŠÈÈH£„p³fͰµµe÷îÝ"ÜQ (g<=ªT˜‘Éÿ=ÛÛ`»zµjórHo.'-‚ÿ÷¿_ˆŠúžü|{Þx£##‹C¼/\¸ÀÍ›7%??Ÿèè™1#\ÁccñâÅFµ›?¾Ñ}Ö¯_¿X‡……UÊ °AUâ©çžåç_vób¯P½íŠd™{[ƒ™¦§Næ¿ÿÍãöíÕÀßÑ{ÙÙ½8z´Ï<ó)}û^â»ïV>’óKMMeÿþýøûûT¶n¯‡‡Ÿ«r„LÆœp…¤¤$‚ƒ»è¾é!IÒßáÑAâû­ÛHMK§E _Æ¿9 ÿ6ÍiáëËÇHòÃT¶nÝÎСƒ…¡U ///:wîLLL ýúõ/@Õòàú¿®“zØp¦h7…[¹K§ÎÙ´îS^4Ðnßé„„öÜÆÇßãöí%:Ö*HKË… 3‰;FZZaaa"ó¼Áýˆ43æbŽ'ø}±>|¤X§¦¥aog_*ôó/¾ä©Áƒðö®+Œ,¨Rdegqèà†‰Ö-“ŠŸ_sþoØ‹lþæ¿ì?Ç Aa88Ø ƒ ªµjÕ¢{÷îüúë¯ôïß_<  ª-[¶äÇ/~¬0ÇãR»&ÙÙ¸:éλ²ãôq"ߨI¢RRR8pàmÛ¶uÊ-ÔBB ,0€¥¡ÐüK£†  j(½À—ÏœâDÝZ xêÂÈ‚*…‹³ ¯¾:$;µ#7' €Üœ z<Ù{{{ …*ôLÜœUOOOzöìɯ¿þJ¿~ý †Y ‚òá©çžå§í¿é ‰.’eòìþT–eâããÉÌÌQ&VÒB‚âŠ@$Ñ¥c‚ 8¹ÿ7®yÔ ]»@’““ùð½U¼ÙÅ‹ßü¿î%óú¨‘ÂЂ*sße™ÎÛ©„o鸜ì‚»!ËEäåfèø…÷$Á£'55•‚‚«=\º¹¹Ñ§O¢££yçwÄxà1йK>]M7w­ë/ߺÉ}úTèsHNNæàÁƒ´Þp•WÀB‹ë@h`ÃX"€“““™;s&ÿÏÞyÇGU¬ø™Mo„$„z ½(½¼** þôRT+ŠRéM¬€¢^½½^)Aš 4Á’Ð;¡†ô¶ÙùýqΆÍf7Ù$›°IæÉg?›=3gÎ윲óyç}_èQsW˜?KÓ¦KxúéNN©óõë×Ù»w/íÛ·§Fê‚*”mŽBQÅ]\½f "‡}”¢ÆÁ«¯jBgî\xæPÑþW¯ÂcÁúõÚõ0lXùûŽžžž¼õÖDžþ&,">>•åË'ФI£|Úå*ƒ^~™¤[ƒÙÙô«R…¥/¼+ßþýû‰ˆˆ Z5çEé9°'Õ=ðò·›'=%+\áàžƒJ+ ¨ýs„pAïö «Í†ï7‘˜”D³ð¦¹Ò¾øàŽÿÎÉãÇiШÑmí0—EÑ«(ŸxyyѬY+<=½ÉHW"¸<ßÏ®J£F aýúõôìÙ“ÀÀÀ÷9{ö,uêÔ)0_BB&“‰   2Ù6#Fh"8#ž}¶n…U« 4T]7•~€GK—´Ï‘‘P»vùý¾UªTáË/g˜ïòåËô›6ÃóçƒÕ3äÂæÍdϞͲ_dïÞ½ 8Ðé>¾úì+Ư_mÚhBHQ±ÈÊ‚—_†~ýn `€áÃUÛÄÅÅÑ÷ÕWm `€äþýù¸cGî7ŽÆÓ¥K—q¢ÌškØûæ^Ro¦æJËLÍd×´]¼7ë½ gz­D°BQÅ5…NIIåƒwÞá.ÿD~Û¿¿üONççé§ÇS)üfýï S^{ƒ¦M›¸ŒÈ,‹~5;ì$&&ñÒ+oòÒ+oòÎÊr¥-Yú¯N›Å‹/¿ArrŠÝ22228uê¥o_vôëÇ/üQ¢u fÕüUüüæÏ¤%¤åà¯îäƒÙTȵÇÊZ¡(€â® –RâæîÁ…¸$n$gЪJH®ô<úG/^§N½zN‚–ŸKr¿Û%ÐÍõSÂ×5 ¬Ä„ X±b¯¿1‡Zµj2tHë¾ú–™³çðÌ3ÏàïクGʺäøý÷Ãlݺ иýñç_Äü«':wîÌÉ“'Ù´i½{÷ÆÃÃÃf¾Ñ£G³fÍþýïÓ¿Ö­[Ç™3gxçw˜6m³fÍ"$$¤Ì·Ç°aðÆ¹·™L0glߟ ¨ë¦¼ò¯ÁرhÃX§}{ÍZE'ËÛ Ì—Ú¤ ‰gÏ–x}BBBX=5N~”ˆ©˜w€÷g½oWŸ8q"g@/%%…ƒµõÂÇŽã©§Æ)¬( ¨@ÀÅ¡¸3Áþþ~<öä|üñZZv®AŸÞyƒ²?òðÈB ÝÂ|.î~®FY­w…zâHÉœ·Þ >>žÍ›71íõY\¸x‰•ï®"$$˜¨¨(fÏzôÔø|ËIOOF*§XN§M›Ö´iÓÚ†xû?Õ8РA‚ƒƒùþûïéÞ½;•+Û¶š3f +V¬`ذa´lÙ’ž={Ò³gO¢££Ë…hÝ7†cÇò¦íÛíÚiáq|P]7å‰ädÍÚêÕù(\“¦ŸFÏN=Ùÿó~jÖ¬i7oÆ yÁÂq—™éÓ§—a=t e­PÀ÷7;¥œ–-[Ø;Y·nÕÐÅDÍ»i ¬|g ÷BÃõ‰ŽÞN£†õ>ì^–/[LzçJ™C+J›´´4~þùçóU®\™¨¨(~þùgíµAbb"‡bðàÁüý÷ßlÚ´‰?üÙ³g“YŽBågòš˜#G£jÂIQöùõWèÐ! yMå®Á7øöÛo™6ÖOà¥y/‘PaÛCÍWH¤Õÿj¦8?Š:|ðÀ/¼:mz¡÷›9cºjô¢t`•.ågHAÏ ‰13‘¹sçðÖ[oqíÚUªV­Æ‹/¾ˆ130å{//Oš5k‰§§é6ž] …sñññaëÖ­¤¥¥Ñ«W¯|ózxx0pà@öíÛÇ•+WˆŒŒÌIKJJbòäÉÌš5‹ªU«rñâEºwïN§NfòäÉ,X°À®9õí"ðÜ )‚çÌÉ?Ïš5ðÓOšùlûöê:+“O| ‹kë½32_ KYѲ¥æ8M¦ôtm@ή 7oâ^‚1Æ’““s➯ùﺼޅÀ¾ȨgGñÉâOò~_¶5OÞþƒš V]VEe&¸C‡öÜÿ}T ,ôK¡(?'B¦2éùÉôë?gŸ›¦d¤49¶¿)Sy‡V”*Ó¦McÏž=lÛ¶Í¡ü‘‘‘T­Z•7’••ERR“&MbÆŒT­Z€=zä˜M7iÒ„ &0iÒ$²\Ì{”.ê·qgqô(té j‚JQv¸z ‚I“tÜXi[›FoEý©S!;Ûn·£GéýÅ îÓÇéÇÏÌÌäÇäàÁƒ´nÝšŸ­ í”¶ÖÐúš~!~ÜñòŒzvT…˜¶ÖBj&X7Fc¶j;e&ØÏ×—®]ï$2ò»yL&BD Žþ)%ј···CyM&#Þž‚!÷ #- “I=kJå¹®;ºSËŠ&„g̘PàŒ0@ýúõsÖ ß¼y“3fP­Z5»ù›6mÊ„ صk½{÷v™ïí ø}€ùÀ G„³ÐÖ.\XpÞŒ xþy-¦ðš5 (\˜èh5 ââôQ’ÇW÷ìï£Dð-"ÛµãK!¸ÊNÍ›n¹í,Übcé³lß.Z„§§ó–þdggó믿Odd$Œ~f4­'µÎÀfü«øsÇËw0ú¹Ñ|¼èãr<#œ%‚+ ÒjD¤J•*¤¤¦â‘pƒA 2gP­jÕªœtU5†¢\a2IRRS ­â°eIvv©)ñEzN´Ma%|KW2hÐ ~øáRSS ÌNxx¸Ë}ï(à{à àaà À§€}FŒpL›Ù¸Q‹)üÉ'з¯ºÖ\‘¬,xõU˜?_},Ìc6lïפ ´j¥ÚÏ’ŽmÛòo!xàé§IhÛÖò‡‘ŽÿÍ7 :MK)ùóÏ?9wî:t cÇŽ >ˆì*ÙÄ~e?€ÑßÈàƒù1úÇr«y”VäÁ×׃A””ˆ»»º$ …}ŒF#~~¾xyy©ÆP”Y®_¿N||<†|Öê=ôÐCÌž=)¥C3¶îîîôïߟpùòe:wî\æÚ¥/à dŸûÑ,_›å³Od$Ôª aGh3óf‹-®Ðœ8¡yô>p@ßÐX˜gîχmï«fmѦ gÏæÆ¹¶×}òIÜÜÜœtÞNCË–-8p`®´/?þÒ¡åM(ÅS1™ŒT äÚ•8BB‚13ðöövؼQ¡P(œ›»W¯^" “ɨDQ¢œ9s†Õ«WS·n]*Uªd7ßùóç9zôh¡Ì–;vìÈ™3gظq£K™;;BЈÖ?E›~fkÁ÷Þ Ë—¶/óæÁŽšÓ¬† Õuy»ùì3?^ýëLƑۃÐ÷ö÷W¡‘ìS¹re»!ÕŠÃ¥K—8tèõë×gÐ Û‹üýýÕ P"X••FíÚõ9~ì/¤”T ¬„›‡Õ( …óH Ä߸IÂÍë4hNVfšjE‰Ò¾}{ÚµkÇþýûÉÌ̤K—.yfd¾üòK†Êرc ]~ݺu bÓ¦M¤¥¥•©uvQ" xØ,‚lì3|xáE°™4¯Ñ+VÀëkóvœ &h&êÔVíld¶c ]¯DD¨¶,-nܸÁÁƒ ¥ÿþùZµ(”®ØXó2ðòö¤Q£fÄÅçÂù³dg›a@–ïAû€íF“á‚ÜŽ´ÿeN^!nZHóÿ)õBó©}–úgiá=Òüÿ­w¸µÔ»Ðæò¤~xsyÚg-AêÚbhy«.z¡o“ú±,?ç”™«Nú')o¥å”«(ÿÒ $B¿OrßÚG@hsÞ2çÞz~=oÎ>hy„vÏaÞYh÷0ïcÞOè÷™@ õrEÞr…¹Öܪ³4Ðë­ß“Úý«ÕÅ<õ#„Ðï9CŽ{W‰ ‹[ L·®“4É„i2é÷ˆÀdÊFš$&$Ò$5Ò~¾¾Ôo؃A‘™¡.0EÉßÃBÉ7Ø´imÛ¶¥V­Züç?ÿáÆŒ7®ÈåWªT‰¨¨(-ZD5ÊL»ôG›´6žÜ‚¶$tp§UZ×®š£«+WŠvÌÄDxäÍÓòå ®ÏÒâàA-žó±cú†{9hfÖÄ¿Ú.GÍ—)))ìÛ·___zõ꥖1Q !•®°d¤'ãááMí°úáfuuäœf¡—ç*ÊyËÇ…ÌÓë°zçÞÜ1Ï•ž[ Üêð“+Ý,¶s¶ ³ŒÈ}¼œmÂò“°°íyŽ/©s.ÏÎÖe(Ê÷ÃôÖ@JÞûäÖõ/-Ý2X åŒæ`±MZÝQ–/9-†or}Æ*öH~÷±­AiUßÜõï¹FlH «{+÷ V÷³Ðe˜•AFzŠº¶¥Jpp0QQQþøcöîÝË+¯¼R¡Ûz `–{Ð,fëèÛ‡/¾mFòÎ;5‡YÏ?¯Æ•K‚Ë—aôhؼYßÐx¨_ÀŽvL¡kÕÒ¤)ìsîÜ9&½>‰Àü—F¤§¥Ó»Koù(p+ÜQBB;v¬P!Œœ¯}”Vgõ‹¢(™™œ>}šððV¤§'Ùü_š”I«B¡pž^µjóçÏ/±c¤¥¥a4Y¹reάð]wÝU!Í /ùEõþè̆={BPÄÇÿø™™0eŠSøã!Ÿ°ËŠB²y3Œcû÷ŸúÉ.ÈC÷U4wá6¸÷^ÍAšÂ>aaa„Õ훵;Ô¶Ý·JÉ`÷k»ØKóîüÇpñâEÚµkGhh¨jD'+auÉ*ŠBãåéIxxK¼¼¼ìþ¯P(ÎÀÎ 'b üq"""hÛ¶-›7oæìÙ³®Í«ŽLì%¢9ždyÀ!ÎlmÚXÌX*ŠLV–6°0p .€CÏ€×À›ìЍÐHޱðÍ…dïÊæü/çí à÷g¿OJJ 7n$00~ýú)\B¨™à ‰ÄË;€ììlââ.šš„1Ë„p3`0¯±5p  º£ƒÀ€ÐcpÓ¼Z !ú À€aÐÜêH)õ4¡;°ÒŽo¹~QÊÜë¥åºD³C*aá< ‘ã¼JJ©¯UÔaéž¶Ìåç:X9°ºåL+Ç–îLKJ™ãÈ+_ÇXÒìHK9ƪhèK §V·œ\Iav™evHe.ïÖšvÍy–ÔÏ¡gåë®Ùâ–+Ýá•°px¥ûªËµF>g=nÎòzƒVJ®J+p÷ðÆd’œ8K@@uë4ÄÛÇ?WG^ÚsÜ“ë:²çÇÖEgåV'_‡Vs‹ü€•C+‘K<äÚ#?[6ŽmË–õ±sË‘c+Ê÷ó´ÇXÒÞ½dy9âäJZìnËCy~­ sì¼T–ÇæÁ"¯Ès/[åÉç“H2ÒR¹qã*'OÆÒ A8î^³”9}y$++ £Ñ±8зS[Ò¾}{زe -Z´ ^½zâ\EÓÐÖ; `^wð~Ò—ƒ3G„¥„ùóµ˜ÂŸ«{ÉQÖ®ÕÂ%%¡Íø¾Œ¥p+ãâ½¶“† Ñ£) '„ŸíyÎʳTk^¯îdÌ 1˜L&ú÷ïoåDRQbzH5AÅÃÃÇӧŽ@­Úõ1f¦“žž¨ÏÈ( Eé!„7wOjÔ¬‹¸t– çOS¯^c%‚+8ÇŽã¾ûîcÔ¨Q®6 Lœ8±Dò2hÐ :ÄÖ­[éÖ­[¡wíÚ5ªT©RfÎA5 =p°0ƒÄ›h¶ÔëέÓÁƒÐ¡ƒFiÔ(uŸäGb¢&~?ýTßPÍùU›"¶…¼1³t”W袱àÍ<ýâÓüoéÿxu«ôíÛW…;R"XQÒÜÜILJ¤Y³Vde¤b4ªÎ¦BQÁ•h®IëÐJ%Y–))M„V­ÉßýŽÁMý4UtêÖ­KïÞ½¹ë®»hÕªU¾ySSSÙ¾};ÁÁÁ´oß¾DgÛ¶mKRRÑÑÑ„‡‡Ó°aC‡ö3LŸ>‰'Ò¸ Mc.¤ðö†´^ÀÀ3À.çÖ))Iól +V@¥Jê~±æÀxðA8qBßpZø#¿"hÇ+tp0ôè¡Ú»($''sñÚEª4¬‚o€¯SðéS§©W¿^ù®]»†·—7þþ[©Ë°÷{ ndggª†P(*¬ö5®]KæÔ™küñ÷9Ž¼Ì•kIdg›ÓK§¬lc77”÷z€§§'K—.å¿ÿý/çÏŸ'((Èî«V­Zôïߟ:uê°yófŽ9bÛÞ¹0hÐ RRRˆŽŽ&#£àdwww.\ÈâÅ‹9zôh™9QE¸#½¼ôUÏWqÌñR!ùôShß^| “ æÍÓBL8 Å±ZR œh cȨ@Ëä*€G?7šö/´§×ô^,ß°œ»w»ÜLJ?Ϋ_Í7O\\}Û÷eëÆ­þ<¨áv…B¡¨€ 9qê"ÇŽçæÍ›¤¦¦âííMåÊ•iРÖ"ÀÏSK%œYVEÁÇ·2i©7m~.-bc²öÓψ‰‰qjÙëÖ­£mÛ¶4jÔ(ß|111ÄÄÄä‰ÿëææÆüùó™"<–+V0hÐ ›éf!¼jÕ*Ž9âÐqëÕ«Ç AƒÈÊÊbÆ \¼x±ÄÚÏßߟ¨¨(ÒÓÓÙ¼y3ééé á… ²|ùrbccËÄu:¨ûx{[mh lJ ”NVL è¡* 7j¡¤¢£õžýLì· IDATà'`€ïmo®T úöUÏñ à1“ÆäÀfîzá.–¯_ÎŽwëu’êpiÍ%^{îµ<øÑ¾ÒîH;<)¼ÿ„êÕ«3gÎæÌ™CŸ>}ÊG_H]’ [\;šëåJÂïjÜQu‚Šâ<øÝ<9wá{öì¡FõjLÿ$ýúõæÔ©“ôíÓ“qcŸ m›ÖìÝ»—3g/ƒpw¸¬Á°{ïá®;;sÏÝQŒý0Í›:TVEÇ,†Ë æ™O{BøèÑ£¬X±‚… æz¨(B Y³f 8¸¸86mÚÄ7Jì»¶jÕŠ»îº‹íÛ·(n===Y°`Ë—/wúì{IUDœÇÁm° X ”ÀRÄèhMnÜXqžÚ ø Apå š ú¿€WpŽ z*°ÍvÒàÁÚŒ¿Â1RRRöè0êü£É\?}=Ï«ÙýÍxã½7Šm]'±V]ÈÂæࢠàòŠê( Mhõ&9ÂØ,H-E²¥HµÌkKÀ:ºŸ½ãæWFAiŽˆm[Çrô;ç÷Ùz?[ƒ Jì+Jap#=ÃÄ_ý¯¯C† &9%…‡F>Â_ÿÍ×_ÃÚOVÓµk®\½ÊñãÇ©V?‘g¥uY]»v¡ËÝX²x!ýû÷Ë)·k·®Ô¯ß ß²*–³¾–·¼ áçž{Žçž{.—^¾|9óçÏw(ö®Yç7«lsÆ` }ûöFöïßOZZ‘‘‘øû;_…ùùù1pà@¢££Y¹r%Þy¦CssùòeæÎËêÕ«]úÖZæ9cimÍ üîܺ^¹¢ Â瞃ٳ˷H;zTs~õë¯ú†ÞÀb ĉù°cÜ0|8ŠB™™É >ƒ´Xb'ìçÚu(îÅ—guëpvÕY&¥L"v_,m·UX‰àŠŠs;œÖbÐQèŒýìÕ£°å;ëû¦l{û•T=м¢À,£‰Ë—/ÓªeK“’xø¡Qøúù±wïž|r?2†×|DDD{vïþ™ŒL#þ~žÈlc¾e²há|ÆOxšùóßfõª5øúù1~Ü?¹zíz¾eUT!œßçò(„›4iB¥J•øâ‹/X¸pa¡Â ¹¹¹Ñ´iÓ¢uvÜÝéÒ¥ ©©©ìß¿ƒÁ@dd$^% ’úöíKßìDO:ÅܹsY²dI™8‡Q…Á ÍÛµ¯| ÌVâô˜Â j1…ÿõ/hRW0­YO? ÉÉ€'šó±Çq¾_Á ö|4ós…ã1ñŸKõ˜!‰!ìØºƒi5”Σ…¤2‡VØk–/kQV‘VTAçl!èŠÂR‰]Ei#„ÌÌ,²²²¨Z5”¯¿þ/Çİté"üýY¾l1¿þú›6o!°R%<<>4nܘӧÏÒ°A=Þ{wOþs<]»õ""¢+ßY†»»;'Oœ¢^½zøûbÊN(°¬š5«ñè˜ÿÃÇ×—5k>b÷î=<ûÜó,Z8Ÿ  |Ë*ïØ2}¶µþ·¼‹c///ZµjE«V­¸|ù2;vìÀÓÓ“¶mÛR©„ÊçŸÎÈ‘#m¦…††ÅÙ³gY¸p!ÇŽcåÊ•%R'N°`Á/^\¦°™ÁÀ¢Bîãí퀨| ¼¼…Ý}ûô!!!‰sçcHJJ¦oß¾‘~Ýá²Ú·ïH||¾¾>¤§gP)0að gÏž–UÑP&Òú÷öñ¡sçΘL&bccÙ¼y3U«V¥U«V¥b*½oß>¾ùæfÏž‚¦M›òûï¿óÇA•*UŠ} wwwæÏŸ_¦ÏS 4V§ ±ÁžžY˜™ÝVh1…§_8YÛei‚rëVX»jÔpÝöÞ°A3å¾zmÊê)`r)õÜw‰¶“”WèÛCZZ¿ýö‰‰‰4iÒ„¨¨¼ÃRÈÃÿ÷p¾Þï‡Ü?www†7¬ðZH‰`…M¡VØô¢ìS˜íÖ"ÓÑc;KHö;6M ^Eib2e“žvš5«1fÌþüóOŽ;FVVÞÞÞ4mÚ”&MšàíåNjÊÕ|Ã9³¬ ש±0‰¶|¯¨ š5kF³f͸rå ;wîÄÝݶmÛX*Ø\víÚa49pà¿ýö;w.‘°Je(àBrRø ÑÖ O’œû=~øA‹)¼zµë™öfdÀ /ÀÒ¥š§kª£ÅW¾³+±Þöf¸ç¥ÈåË—9|øpγ0((Ènޱώu¨ÌAÕ=»ÁŠÒ±5T}^…Âå0fe’œ‡Ÿ"ï "")%!0™ɤ$]FJSé•% x.•£g‰yØzmpE7‘6SµjUz÷îãðÅ<ûQ¯^=§çŸÿü']»v套^²}¬^½š%K–Z¡ÏËà"ˆ`ooH(ª€!@;`<ð«s¿ËÕ«p÷ÝðÌ30w®kÄŽ‰Ñœ_ýö›¾¡Ÿ>\š?h3ñ6èÝ*WFQñññ,yk Óßžžo¾ôôtf¼<ƒY gåÚn¶Š9yò$ÕªU£GÅSWЯ¸]"XáYRÊé0õ&J½%!„šSý$´Õ#þ@º”2ÝÁc˜Wá\®\R3œ …«b2IJ¼ŒÁà†‡‡Â`ÀdÊ&+3Í!ñ[ReUlÍÛs–U‘ñöö¦S§N˜L&Ž=ÊæÍ› ¥U«V6;…»ví¢[·n–{òäI¼¼¼X¿~=3gÎäµ×^ÃWÅ|)6@m 0+¦‹dmIà`°pâãDJX²vîÔœg…‡ß¾¶]µJä))€ð0ç‡>*ˆ½À ÛIÊÚ1’’’XÿþzRR˜÷Þ<»ø‘påÌm HMMÍ1ygò@V¢”¦c¬JÀuàw;é}€xýu¯<¿WuñÛSÏû²Çn¥ç}«”M!ÄÃêòR(eC g“‘‘LzZ"™)Å­Î,«¢a Â›B,¤ „‡‡Ó¿ÂÂÂØµk;vìàæÍÜ©©©Ì™3'ß²Ž?΂  ¥víÚ¼úê«Lž<™ÔÔTÕÐõo(Y¶p^B[#\ÍùßëÐ!ˆˆ€>*ý6MH€€Ç×pcà{àÑÛ €Á®Wh772DÝŽRß­> Ÿ%0åŸSl àQQ£ÛFˆOqqqDGG³oß>Z´hÁÀ©_¿¾jÄò"‚¥”ñhÆ, …Õmd€æÎ ´!,«M}RÊ=_šá†ëü@Ä Y ) …Ba[a“JïÞ½éÔ©±±±lÙ²…S§Ni‰hÓ¦ sçε+€-ZÄ¢E‹r¼4×®]›—_~™)S¦––¦¸Š27Ullæ.à ¯ó¿WJ üßÿi‚4¡”¢¸ýü3´k_~©oxØ4»M'×l´Ô½;TðÕ…¦VJ­·ñ䮨N6L]ûE‰Ÿ%2åŸÚ³å¡þ¶3Œ@“¶Ôßߟ:¨5¿@ÿ ¿ße¹QQh®§oj !Z[íÛ]߬ïã-„¨'„È3d"„0!: !"…äB´BôÖgqÍæÌ5läBˆúBˆ(!D!„·Uº¦ôÓëç"©ËsÄM…B¡({øøV¶ùræÎËþó’’’\º…4iÒ„P·n]~üñG|||¨[·. ,(P[ á_|±@sjÕq¼M&ѹN:ðšéncçÇÓ§5:{¶óc _¸}ûÂ+¯€ÑtÔ{¿®°üó{;çÜ Dpq¨™R“ŸÝ ií¦ÔÝ]—J¦JªQ\@ •¶Þ ¤[‹` ¿…À5û¤hCÇõÏ]SÀ$«ÃÑÖ ÿŒ6³|QÏkë‡óa!Äyà]|_B<£ÿÿ?«¼ôòNê݃À!Äh‹l#ÐÆÑ@3‡>¥?¦ …B¡È%€ÓRoæñ í*3ÁË–-cÆ |óÍ7lذ-[¶°wïÞÔ…ê@à šC®úàÀ/yCtì¬V£E±{X#„RÊOôGñ0àk`;ð&pÜ5GBrˆ\¿ÏáÃ’˜”¬gÍk¢zWïê]½[¾øЦM ‚ƒ*—г©âZ­¸ŠwèeË–Q³fM¢¢¢xâ‰'˜>}:&L fÍšÄÄÄpóæMüýý '88Ø%ÛÒËË‹ÈÈHî¸ã7n̰aà À Çé„ y;u¸Ãé®™Dge9{D ˜ô&‰Î-~ûvM¸~ôQÑc䦧ÃÔ©°|¹û·&°\oHWáÚ´‘ ”Wèâ à_›ýÊÊ+©S·aaa,r9mÏ·-vÙgΜ¡nݺª‘ ¥}n“Öùè DÛ„îúçͺÀÍBìú !*I)Ñfrv#—^ÎG@0@Jiön1NwÄ5Ôj—l —”ò’¾ío-R³¬òÎÒŸ÷wK)×[sp x[ñ•”ò²â'=ùŠ”rGY¸,âãøõ·ÃT ¡^½0uŸ( »$%&ñ믿Ñ¡-•+ª)güûßÿ¦k×®Ü{ï½Ì™3www-ZÄsÏ=Ç„ ¸ãŽ;HIIáï¿ÿæàÁƒøøøÐ´iSªV­êrßGÁ< N¬“qC›©ø¬ûy{—€63˜[1…8·èk×`èPxê)xûíÂÍjÿý7<ø ünŽ2PíA.vR7Ø»‡”)´³0@ï½–=±¬XBøÔ©SÜ?d(ï|ø!wtT]n‡Þ ÌF3‰ÞtAs `)p7£­Žèªß–æõÀ[ò)·1Zè¤÷,°™–"Xá´>·Àf–¢¹[°~´^µÀRÊ,!Ä×ÀzyûÊâEpüÄ)ê׫C‹­Õ¡P( äÏ?süÄi":´QQD,g}-Ã#•ö,plìQÖ~ú9111´ïÁ½÷æŽRh-„ÃÃÃñóó#""B«sZ±±±:toooš4iBõêÕÕI.ç .¢.Ñ%æµÐÌ‹KЦ:œ„”°l™Sø‹/ ™œ?ü&N„ÔTÀÍ~p´‹žP;"8"Ôdc°Ì+€ÍôÐ >€eO,C1Ö¼7g²yöb&/\ćÿú }¯Äˆ‹‹cñâÅìÞ½›ûî+û##·CÿÜäÖºà«ÿ;é·e7 FJy6ŸrÍ ÎVkü¶h3ËÇò>äd²⢅`öÓ«ÙB[½³}Uò*‚ÝÜÕªVQO,…BáÕªV!1Ñq›Ãã'NñѪÏxhäpZ¶h¦ÐBÛú¿4iÚ´ 3gLàÜÙótïÞÝvgÁBOœ8‘Få¤ùøøÐ¶­6£‘‘‘All,‡ÆÓÓ“FQ»vmu²Ë!w@a¢ ¹»k/cI·tG3‹¾ x »&¾EåðaM.Y¢…T²ÅÍ›ðä“ðŸÿèÂwôwWä´E61B]ëEá/ï¿Øºi+aul[XöÐ ñ¡à™±ÏºìíÛ¶VŸ €îìÊ¿Ö~ÊÈQ”è÷©^½zŽÓÀòâ7¡ÔE°”Ò$„ØôBМbý)¥¨gIµÈûp7…8ÍÀãhc}ÖceÿE3ÁþxF]f …¢"‘––ÆÞ½Z¨õI“FµHK¹A³fõøÇýÚ#ö§Ÿ‘‘YaÛÈì ºÂwB êׯOïÞ½éÓ§¾¾¾ìÚµ‹-[¶pèÐ!âããU#¹8ƒŠrýß.7$^hæÉ«p~ˆ"³gêIÜòRSøÞöæfÍ ysu}»©©©|ýÕWx$¤P«J¨Í<•|ýhW=ŒwîT æ î·ñدcÛ›³™ÇõÇÊaižÀi+qû†b1š¿?43곺h=g•w#PMQðb€`=9Á*ï&!D8Ú:åÖºH>(¥üÍFÝÆèâ»>ð—ºÌ¥Åõñ>ü‰IÉB¤”ê]½üŽ$Àߟ6mZT<æëëǨQ£AˆèÐ’tÝóqzZ"]ï숧§'ƒ/o/-îH·Ë3tA 0 T& !¨S§uêÔÁh4òàƒrõêU¾ûî;ÔÞEé©w R ±Ù$ú¶YÁÚ yþÙ å F‹ý[©Œ¼Sö{©j¸}°ë× qŽãǤ¤$bbbˆÇ××—õë¾âÇžÊwŸGûFñÄ; ¹³kW ƒ:!®*‚¥”ç¬E©<ǰÆHO‹ÇÎ:aÝ$ÙÚaá«Û-À )å8)åi‹íýõÙ(7Ø®¿ò«·-Tûu‰)J‹ø› üvè0Õ«U§Q£ÆªA…&!!ß~;L‡ö­©\¹èBXJZjÂ×J॥ÆsGD+¤4‘‘žT¡ÛÛ,~]U ›Ã•6F£‘É“'óàƒrîÜ9¦NÊܹs©T©’ºI] ùZÕÚÄÛRRncÅk ™-/¡-z+Ê—+Ï3eˆ|¼B+\8ÒÓÓyp轌v"C‹Øx ÄÄĘ˜ˆ¿¿?ááᑚšÊ'žLÿß ;/Oâââ¨Y³¦:)®*‚]¡ÿŒÕcÿ~Š»¸°¸|¢.EYâĉÓ4j؈š5kàã£Üä+ŠðPLKÅßߟ'ÏÒ¡}ñfƒÓÓóIKPmm#F°¥‰´«Î—†~þùç™0a¤§§3räH¦NÊÛo¿­„°‹2¸,Š`ÐÌ–ŸC‹)<Í[£4ÞÅFœ‘²/‚6ÔËõ ¤¥§#$+/•B||¼®LpP õëÕÁû¶um\‘Drï޽ʪ°‹Òð@‹%é(^^.dmI#´õ²3Ñ<Ä<æIº¼8ܽ üj;iøp—Ñu IDATB]ÏŽ ¥dÕ²¼ûÏgsm¯ì@˜§{÷îeèСxxx¨ÆR"XaÕRº~|„ø ÕÊ™ÍoöÕ2-¿äÂ\ëíæm¶ŽQPE©WyÀ–Ãó6[k­;àæB<"„¨êRi+AX@,ª€´¤%!Bó+³¤í*Ø­‰Y%vË•™0a/½<¯¾ú/_|ñïüÌ3Ï[›ÉÎ6‘˜”BçÎ]ðòòFa÷åííM›6mIJI%;Û¤N– áëëKÓ¦MéÙ³'}ûö¥[·nøùùqäȶlÙBtt4¿üò W®\!?c&³øýøãU£VúSøÙ³—hE)q Øk;éÞ{Õ¹p”ÅsÞæù{òŸåíÙ¦ûØNrr²j0¤ÂÏ !¼Ð§H)³JóØRÊ 4§ü[ÉBˆ0ý7d°Tq’[³Ä?K)·«¬g€=Sj9#[Úήnç±KKô:Ô2Ÿ#e*aìêHÌ›øøx6oÞÄ”©/qîÜy–,]NHH0QQQÌ{{&S¦³žideeãååÑXðãÊÛÛc–‰2°*¤bwÜÝ #,,,gÛõë×9þ<¿ÿþ;^^^Ô®]›Úµkãéé™K¯ZµŠµk×òÈ#ê¸nnn¹ÊR¸>Á@'`w¡úaÚÚà´4Õ~¥Â& Ûv’ ä8gÏžå ¦gùóÈDvî¤M‰àÛ*x À“ÀZ)¥9DûSÀ|à>`Ýmí®JyøøPá®ÿ–  „ÛÌ¢XÏ[êX Æ’(ÛRˆ–¦IòíÍ›·`Ñ¢ENÀºƒÁ3ã«?{m~6 ØÑQα^_Ÿ_¸$W$$$„œÏœ;wŽŸ~ú‰ôôtÜÜܨV­aaa<öØc¬ZµŠÏ>ûŒ‡zÈác4oÞœæÍ›«›¸Œ1¨"4“h%‚K‰ ¶7W©=z¨æq”Ö* %‚ËïÿüËb[6Z|÷l×ê¸J£þ;²xE7î f !®pk–x—>«\"XÏŽZ¯©µ·OaD¤µ)rI mW;viu¶ Û±vtFXQ60`ÞüùÌš9ƒk×®Rµj5^~åU ç PK§[öD¯mœwÿŠ‚­õø¥=°týúu~ÿý×®]+RÉÉÉÄÆÆ@@@&“‰K—.qèÐ!’““‘R²aî]»ÆÄ‰ÕMY޼‚]¿K6ñòÒf„•QH “üd;iÈpsSMä té2Œøø‚E¦¦žâõ×ïå±Ç(ñ:%''³w¯fGòäI:th«Dp#Ô†Ø\Œ6ÓêÒH)¯kµúŒv]OZ !vqk–øømÎÚp8e)ž-ó”f«\["ÛÑ2ò+³0û•¥Žv~æÐÖŽ²lícOT«ÙಂÄÇÛƒç'OaûöíôêÕ o/7§š![–娠µÁÊ$ºìzZOOOçäÉ“¶¿“>>>T®\™ãǫ۱œSèì+Ä>B¨ÙàRavcX)'Æ®ÃSObüxIB½ùækÞ|,#GU V¬¯EM—R^B„í)噼*QRÊKBˆV€§”ò«}ú°{÷îrÑÎæÈAà}!ÄÛ€ÙÌö´âo!Dg«}¾¾B¼  !þ¥wlü…K€KÀN`3pQñ.t-ù X"„X®çßœBü!„hgChÎëÇüˆþB´·Êú°Gñ¸žç'àýÿ¾zžÃú6€'€S@”ÕñÆ£ùÐÛ¯?6Î!¶ë–ùºÇÑÂŽÿO¿!„xN”’}Ÿ”2^Jù)åcRÊZÀ0à,0 ˆëß ï¬\ELÌ1õd)×"Gµ¢`!l4f(€‹{-åçÚòe¨ànHÍö>—¶mÛÆž={”®`"¸° ³I´¢„HÒ{æ6¸ûnÍK·ÂuX¶ìijÖ\j'5ƒÖ­70fŒòdæ Œ.Ÿîª£y(® |eCÀ6A[ò±øø·ùœ¡…ÿ èŒ6;:K/ûGݳ%#€tÑVÍ9U5àk!DˆE‡j°HÓÛøàìBÔ·*7X ||| ôöèéƒQùtà&+Ðf›Ç¡Íj"ôïá£çóÔ¹70ZÏ7\ø Û2®&¥<,¥|[JÙ ¨ñÔS8}æG›vÝ?þ¶oßMBB¢Ó]Þà ¹¶ÀÉV p‰kÉÑñ?¡z¼y(oëñ•®˜ÔÚú¹¡ aE ñ`Çâðáªy\„„þøã¢££¹té-[Eˆ‹yòU­º‚wÞyZ5X1±\ì <"¥4 Úo…©@´.d·È[˜*¥œgÑ™éŒ6K)-WhBÑâáNÞ²:æh)¥ÙWÝ:=ï×€‰º ôRà:ÐIJ§çýKqø˜§ j3~ÀB)åóV.³×ÝRÊ;²z]wH)ÍŒ¿õº½LÞZ¡™RÏ•R~b‘ï,ð&.b]J™l4fpWç–œ8yš=?ýƺu_ñÖÜ%4oÞ„Ö­š3|ØÝtî|§ê”–a¼¼Ü1fñððP¡(2YYF<=‹ç.¢(ޱ*‚¸uÔûºÀŠòÀ 4Ó¸Âàí ééªíJ„õ¶7ûûCÿþªyJ³óÀsçΑ˜˜ˆ‚ÀÀ@ÂÂÂhÞ¼9ƒŽ;Ò©ÓLŽ]`±gÝ»_¡mÛ–ª(‚ã€ÿX ¨­BˆóhN˜¬ùÎês7ý}‘¼‹taÙÏJŸ´Àfþģͺ‚6ëÜøÔB›ë·Wqm=¬5ß±Mz Í0f!€Í| ¼ôÖEðQÀŒBÄ_K)I)be^í*4lP6mï Kç¶4hήíÛX÷Õ·<=ñEnÞL¤WÏîôéÓƒÞ½zP¥JˆºCÊ¡UBIH¼Ž‡GUÜÜ=Ô€†¢PH)É6f‘˜xª¡UŠU–Zœ[kém­ÿ-/âXJɉ'”®à"xFD°ò]¤Û휧AZ»+ògذ‰¤§×,0_JÊU¦M»‡>}ºå~æ§¥qþüy.^¼HVVƒêÕ«Ó¢E l–ÄèÑ™1céé‘Z?¾á"V®œªNˆ“Eð1iÛ=ç  ³ÂCJiö)'ÑÖÑZbæwÌÆa‚â2šS+KŽÚÈ+…'Ñ< ]Ü'„¸ÛFýüw!Dˆ”òºU½‹Bcýýu}ݳ5n@C½®IBˆGÑbûÎæ!bÐf²?—RþáÊ'ßÛË‹ž=ï¢Fj4lXñ)lݺƒo¿ýžÉS^¡Aƒúôé݃¾}{Ñ1¢ýÿ³wÞñQ”Û~fw³ÙM/BI€Š¤#ŠWX®Šz ¢ "ˆE±‚‚€H±‚]¯¿{ñ"r- â±€€1 Ð!›Fʶùý1›° »a“lÚîyø,™wæÙ33»ósÞsÐKîüzMX˜²²Nˆ7X¨6›ð03¡¡µsG$c‚7©œ¢(Ü{ï½rQ1Éháré•:o´±©ÅÅb?¿òÚ€BHVhßh×®%/½t9v{Çs,7–‹.êÉ©S§8xð 'Nœ@QÌf3IIIôíÛƒÁ÷h«É“ïåßÿ~€M›zc0üƈIej´ þÁÞP—èuÈ6uiKFrؽô£º$>n³$sKIFçuÀ•øl§«h“p×ßhÉ´<ápíï+Šò5p 0Í+=xDQ”{UUm0Õ´“’Z0rämŒy6›_~ÝÀš5k™øÈ423ѯßÅ x)ƒö§Y³¦rõÔÇ&3&“Y !Ô¹òçrŠÔã¡•Áf“ˆ`¿ã%Úl†+®óøÂSOá‹/&²uëB¯Ëß0xp<ëׯ'>>ž¤¤$ºv­^=]½^ÏsÏÝÌm·½G‹?ñįÈÁ¨ÜÚË2­­ªªÚÏÑ×N·å”»Ñ CKxUÞ3ÚÊÃM‘âš¿Ùå.éw¿ªªOyX>ÌÏåˆJ„ï/ªª¾|®í¹’}YTU}xSQ”h`ZØôãÀ; ñÄ 1pqß ¹¸ï…Ìxr*Gç›oÖ²æ›ïxâÉgiš˜Èg+þIB5Ã&A¬Ø“'X„±H\ ¼PÉuBM@ŽØÎoX9S¥W\ááb"ŸÎËÐP}tcÆ|FNÎ5–pбãG,Xð†ßÛ† ¹”^½îcÔ¨*åE*Æ=-UQ”žånP¢Õ¾ÝèC_%E£<Å?Dóî®)7¿‹¢(i¾3ãܶ¹mŒð5Š¢Ä•Û¿vÀ)EQö(ŠâËYQây®(üÏh^è(Š¢+·½+ÓŠ¢¬r½¿Íã<¥dUUsTU]‚.ÞH »¼Ä&¹uÄßYöÖöìJgá+/‰Á+ªªžó%ãÖÏFên D gƒ;ç©N²Dû•µ@¾ç¦ë¤ÂN¥¸õÖatíú5pv¨B|ü›,\8ºÆ~×¾øâ5†¿LB ‰`€Eé­(J¨¢(ÐJ Yù>Üð¬t]j#EyNQ”DEQ¢E¹ íAàNàÅr«)À?EéæÚæ´:¿ÀBW¿§é@#`•¢(ÝE1)Šr)ðZy¢×}ðT”Ôî­(Ê%^>Çv´1¾Ý]ûÖFQ”pEQ®^E ë^âZ|ëJ˜ (ÊŠ¢$(Š’¢(Êãhñ/¼Œ³nØ'NG]åêADp5Ä®'¯o°y‚?ûì3òóóå‚ `®¬Â:’¨Éü×óìÐP¸ê*1OeY°`4Íš-.7×ÂEýÅEõ5P¼-™Ô/hÃç¿Aó˜^£ªêNû»-+ó4à ¼ì.-ŸÝÙ%ŒO eÑ/¾@óÂUUu¿ÛrKÐÆÙv~s‰äo]ïg«ª:ËÇýû°¡•/úª¼§× ®m^ìB+1¾ˆF«ªú¹ë&ïp»keÀq— Ÿq}íÜ/§˜ Á†„CãQÜ–yšLüë_ÿâÀDDDÈEÀT¥T†ˆ`?a¾òÜ4hDG‹‰*ËùçwbÀ€ShEu4Z¶œËë¯?Rgû´s×..»ã²²²äU÷âà*àb—¸üm\¬³Ü:c¹¼]"w˜¢(]Ð<©à[UU½ejÎE+›ô7à|´š¿Ê{O]û0KQ”w€^h£ÿSU5³\ŸÓÑê çyØ¿ïEIuí›ÕõàŸ.aý‡Ûr§Ey ­TS²KÈ£ªjv¹>—+в¸ m,ó)WÛÑ ,‚à â .‹·’HžÄr]²gÏš4iBll,QQQ5–Áû_ÿúGeìØ±r±8ç¡…Eï©Ä::–%ÚjûU‹ñ:¾úúëÅqqqr€ª ‚KÄæÿ\/o76›}¸ùùøÝÇ%;Zòöï|Xöç¨ÿ«ªêçh?@ÙÄ]™®—§ewãC©%UUsËé$‚ "¸"!ì.v=Õ®ë1ÁMš4)Ã999¥Ç ,,ŒØØØÒ—Ñh,øÄUhÞ‰Ê`2‰®6^²B‡„À5׈yªJ||<·ßÞŠgžÙHjê2fΜ[«Ûw:Ì}çÞܶ=ÉÉ4[²DLuD° ‚ T ‡®ºH®k!NëÖ­iÝúì‚………X,Nœ8ÁÎ;±º)½^_F GFFŠJZEœ›+¶«2¼†B÷ëRj¶zL™r/ï¿5“'ßGh-fr[ûóÏL|ûmþ¸ùfŠGŽ”Q ‰,‚ Ôâ öŒ{¸sCl6›1›Í4kÖì¬6»ÝNvv6‹…íÛ·“—WvDRTT¿þú+ÿûßÿ5jkÖ¬©p[:uª“ðB¡f8m\ÙJ¬£×ƒÁv»Ø¯Jü„6@Ï‹ª‡Á``óæå˜Íæ³ÚV­]ËÄyóxútzöôO²¬ƒ™™Œš3‡ ]ºpjñbmÌ€P%¼yóVâµ,ÁCцÏ×&—¢%ÃAEQ|Áº ü/ñòÖ‡Ðgß6jÔˆF<—ÎËÍÍeË–-rq1CÑJlø‚Ó ÙÙ"€«ÅÞ›žzJ{È0y²h©êP^ÿµ{7c.dã%—`5Š¢¢"¿lçñÅ‹yçØ12gÌ€©%_ÂÂÌtïÞ³Ù¬‰`UU«íPUuƒ Að/§²,lݺܼ|”R1"åï9ÿ¢A—.ˆ‹­Þ¬„Cû.†ƒ…¨¨(FE||<„\é£..Ö°Ó)6«2N¼–Fíá´iðÍ7ðî»à!¸C¨ùùùLZ¸•F#‡žÌfÂW­ªúás:ÉÉÉÁb±`±X0aÚµ ãîÝX{ôƒW_ƒ-ƒ%;‡Í[¶’Ø$‘ÔÔ¶b¡Òäää°yóVzt?Ÿ˜j>m–phÁ×_=Ë—/gÁ‚Œ7N Dtš¢ÕÏôüyypú´ØªÚü;÷bß|]»Â[oÁÕW‹Ùªò;÷òûïóÚÖ­ì˜0µiSŸ×µZ­X,²²²°X,•Š3NGtt4±±±´iÓ†©Ýº1Ùédæ›oòÞ'Ÿð×øñP‰m gð-Bg÷î}¤¶I¥Y³¦˜Íab¡ÒÁî=èѽê"ØWq«“8¼:gÏž½|úé ×wÈîZÙæu×]ǧŸ~Êüùó?~¼„ AA ‰~ËC›Ý®ym6±“_¨„òÄ ¸öZxðAxñE¨ÅO šïþ™)ÿü'›oº‰âÛo÷ò›ZȰX,dggãp8JÛŒFci"ÁV­Zy[\þ÷rúèÑ<˜ÍÃ/¿ÌW11¹ÿ~­–X-pâÄ –.] À?þÈUW]Ñ ÛYáЂ 4| ‰‰MˆˆˆcU"""’ÄD'ÙÙÕ ÕõuL°x‚ëž””ÖLœ¨ Ñ­[·ÕÚv‡Ί+DžDpA–Ú媋J…¡ÐWQaÁøþ{øøcèÐAÌX“fÍâM {î\ðò;æp8Ø¿?)))$%%Ñ©S'ôz}µ·ò'Ÿ$}ûvœ8‘̓“[ nü„„&Ož\*îô%Râq—SYEÀDˆX¨6fs˜×ò6"‚kÁþaÁ“ôäÚk¯å¼óÎ#??_|pÐØ5ít‚Å99"€ýÊï@fWýzô€7ß3VÄ“cÇrÐ|Þ<ð"õz=:t M›6ÄÅÅùE»Ó9-µ¯¼ÂÒºMœˆ-#CŒ”„CŠÎMtlsó<ͯ‰m»o§ütmìƒÜp BåE°/{8´9,æ¬W°qùå—!M †V+œ< ~Jž+¸óyuEÜ{/Üt“¢.œMDD¯N™Â·×\ÃàÇ'öÓOël_®2„__xG;u"^Š?Ÿ÷phÁB¥…pÉtŽåPo7Çr¨t;å¯{› õKK‰¤s à‚ì³^‚È8pê=8uJ›j€ÿú§›O>Ñ’f­_/&õF»ÔT¾zé%Þ¥Û¸q„lÞ\'ûa0xäÞ{ —ƒâËï¯Ù¤ÙML!ø[(çXyÊžDì¹Ú¼y¡=mã\}Te¿醻÷:¥î7ãÞ–s_¦¤ÝS›P?Y¼ä5î=ªŒ‡VUU-z½AÏý£GÕ‰–p賑kIT‚ÛnƒµëÐBvcÅ&~ç`ŸÿºÛ¿úõƒ'Ÿ„©SµÚÂÂÙ\Õ¿?C.¾˜YK—òÞþÃΣ4Ä,œw1鋸D¤º L÷õ*ÓæI˜zÚ¶/}Tv¿I»{šÊ Ywìi9» øÚÍÍeâÄÉLœ8™—_^X¦mΜyLzt*& ‚ÌL1±7 Å/?̈W^Áüþûõjÿj+û¿ˆ`!`…ð¹°/í‰çò‚´¦>Cmo»¾Ý|Wf~ùv÷›wÆõ›è¨hÆŒÀÔiÓù÷¿µqKü O<ù4ãÆ#2Ò¿c2N§Ož`§Ó´ÇÆý æ1ÁB`STcÆÀðáZ4Í¡eÈüÏ0`)5âe_»V ^±BÌ\111|ðÔSüoÆ ºvíZoöëÞI÷róè›Iÿ#]’ˆ`¡> ìÚNvU—Û®MÑëëM¶ÜŒ*/Íy‘#FǤG§2þ+L6øø8n¿ý6f¿8Ëÿ[õ1Õ«Ä)aÝ*ɘ`!Ù¾z÷†Å‹]ÙŸ¯¾z‹mj”!ÀàBÿw}ê ¦=ؤfs^ûög%ý;}ú4}ú÷aå+k}S¹à™ xqÕ‹Œ:–“'OŠ–ÓT¨/B¸¢qººíÚ¼áöæì.€åf<e°jã×—0|ص´IiŪU«HmÓšë¯ΫKãtZkD‹'Øw!|®y‚ÐÐxí5èÕ ÒÓ30xˆÛÔ MO€G©‘ì?‹k8þøCL]ìv;‰ÝùìðgÜxÏdì¨Ý²F:ƒŽž÷ö¤ÙÝÍxà…˜·dv»]D° ø‹ÊŠH_Ç×Ô¾ÖÕ¶k‹ªxuϵN‰˜–öòE¯ƒÙsæÐ§ORSÛpÑEñâìÙèt5ã‰ìûu&áÐB a±Àõ×ÃèÑZ©Î¾nÛÔ:z`<ðo …ÿ»OOׄ𫯊©+ƒ¢(tº®žÁC=Dv-×¢ §ï´¾K;ÆßÇü½N<ÓõÉ-øOY˜Kæ¹ d_Ú<õëžàÊS[E}TÔgeÖkH”÷þ–®î`÷¤YrCH¨˜M!L|dß}÷ Àª¯±pd_û ö1Áž"ÕõÃ¥íÛ·SPPÀ²eËÐétèt:FŽI³fÍ0 „††b4ËL{½gAㇴìÏ p'ð*¶©Sz¡…GOü¬u àþûaõjxóMˆ•Œß>b áÂqbÉ´ð©ÿà²n—1æž1µú}Úôü¦4=¿)_þ÷K>yðžxè Ú¦¶,žcu–­h}omžÄ®/m¾öˆ¢×›öe¾û{oÓB•Áª“ؘHn¼ázªê¬Ám©>¿„úEZZ}úôáoûv»¢¢"l66›ââbrrr°ÛícµZ±Ùl8œNgéÍ›û´Ãá(3?44ƒÁ€Ñh$++ £ÑHRRááá˜L&¢££q:ìÛ·¯t¿’““1ä–¥>âpÀ³ÏÂ3ϸjÿÆó€Áb›zCðИú·ûåËaãFxÿ}øÛßÄÜ•!¶E,ŸȾ_÷qí]×òÐ1èÒA—-**Ân·c³ÙJ¿›=}O[­Vå qçååy݇vCÛq¢Ý n¸í6üoF£QD°  IäÔÞ¶$ºá a»½¸ÆÏ%_³C—ÿ‘ê!!!„„„`6›ýÚ¯ûMÛ† ÈÍÍÅn·sÉ%—¢(DGGc·ÛY³fMéz#FŒ8+ÉŒP÷8 yøÁ5£/ð (¶©—Œ@ó ßl÷ÿ¹pé¥ðøãZI%©)\9’{'“Ô3‰¥o/eþ’ùŒ5Чµße“ÉDHHƒ³ÙŒÁ` $$„ØØØÒïlo:K¿\êq»Å§‹Ùôú&Z‡´æÇ5?,ø•9—¼ IDAT`ð¨ÖoS{‚B°œK¯/Ù¡}¹†< 9ôkË]\=ÚërF£‘Q£FÉÅXY¾î¹GŒx‹d›©ï´VÏ¢•Sòã×°ÃO=ß~«y…““ÅÜ•a÷Úݤ0cÊ zvïYÃ?ô°ýÓíØÒm¼8áE’ƒð`‰„!4Ô€Ýf'$$DŒ!T›ÍŽÑX½ŸIŒå»„†FALœè–) X ôÛ4œàààa Ë¿ÝÿðƒVSøÍ7áºëÄÜçâÔžS¤¿‘ΰK†±`Ù‚RïoM‘ù[&{>ÙÃý·ÜÏ »­ÝE B€Ð(œÜS„„4Fo©ñ/Q!°PU‡ÝFnî)'4ªV_¾†C»®I*J†'U%=n¹Å­4Î5À‹H飆Êehµ›Öù·ë’Lá÷ÝsçBX˜˜»<…9…lzmi1i|8ïC¿?)Oî±\¶¾¾•K;^Ê ¯¾ôI E B€fF§ƒ¬¬â ª„Íf#<ÌLh¨©Ú‚ÚW±,ÔŒv¾2†_ð‹kà¢" -œöf±Kƒ§ ð1°­ž³ŸËƾö¬[};‹¹T§Ê¶nCÝ©2gœZ E>²ã‰&òÆo#Õ?D B€a2™1™Ìb¡nàE BÀpêÜ}7¬XášÑ -ü9Ul0èмÁc€þíþ?´šÂ/½¤•T æ@µýéûY7mßù0}è[kÛ]óŸ5è%[ÙY§½ ‚ ø _Å­ˆ`A¨ß¬]«í\±­öï=Àç"€–ÀjàZÿw]TcÆÀðáÚƒ•`$""‚g'<Ëÿ½úô½°o­n[ðÙˆ'XAð;Š¢”ŽK/™.ÿ^DpÝðë¯ølå*²²²øã­VÊyxÂD1€Ý®eù9ÓUû7˜ Û<‘À ?ð8pڿݯXq¦¦pÿþÁeZ½^ÏÐ!CÌþfddðöÛopúôi6nÜÀÁƒ™4i‚ˆ`AApGUUŸDp0—H*I\U2V·üûš¤wï^ôîÝë¬ùwÜqOƒµç¡C‡hÞ¼¹\|~`ÿ~1Ö¯wÍø°mì¨<ÜôÒý}½Â A0e ̘Q#õ’:0kÖ¬³æÏ˜1# >Ÿ„C ‚ ~Á¾ %’Îà‚l¯µƒ…s³páB1‚øä-üyýz x øHpÐÒX ŒB ‡÷#<÷ôëûö‰©Á‚ Bˆ`wﯷW0{‚=YœgÏž-²RP÷Þ 7ÝÙÙ@+à?hI’äN1¸13€÷ÐÂâýÌúõЭ›öFD ‚  ÁSâõõTΨ!“••U7Ì’¿ªüþ;ôèo¾éš1ø è&¶Ü€VSøÿw­=€¹çíŒ ˆAí»vÀåßûC`Kà'žxB.¼J_§°`\pddáÀËhõb#Å>‚¢%Ì ñ÷o½¥=Ù²EL-ˆA OpÅxóøúË\"¨k[1B.€À‰píµðÐCP\ t¾nÛ>(‡€haó~&#úôÑÐȈ¡&‘|l‚`âÃnw`³ÙÄB¥ Á`Зfq®’Ú¸!ѹsgŸ–+..Æn·cµZ}šöt~•œ?Š¢G·n¿ë ß|ÿø>Œ–ìè>`*5âÙ˜®haóÓ€û·ëâbíÍêÕ°t)$$ˆ¹KÈÍÍå…ïpåÍWb2™\¿Û†2Ó‚ˆ`A*l6;……ÅDÅ$×(Z "Tš¼¼lr³Ob6‡RõŸ ‡ö]ô–ÏÝÐ…ð7ß|ãõø» W“É„Á` $$¤Ìttt´ÇùBõ±Ûá‰'à…ÀéПû‹m„* ¼ôs‰á|ÿvÿùçÐ¥ ¼÷ ”Õ¥ß)祠Óé((((}`h³Ù°Ùla0PU‡ÃQ:m·ÛËÌ×ëµÞ%ßµžÄtùiÁ‚ ÔÛÙ9y´jÝUU)..£•&,,’ððHöíÝAlLƒ¾Ê}ùâ f¼ÕnèãwÖÑjzzºÏ^è`dï^¸åøå׌þ.,6ÁÜ€VSø~àwÿv}ä  “'ÃSOA°?3\9üJ¿ôåt:±Z­X­Vl6[© ...&//ï,q]ˆí$"X„º'7/è˜TÕIQ‘`¡jØívL¦P¢¢‘›wŠ¸Øªy%}õð»'¸¼ .ÅÁÈÊß|øá‡Ìœ9S á>‚Ñ£!7-äy 0¿×}‚œVÀgÀ,àUÀ£]œN˜9¾ý>üRRÄÜþ@§Óa2™*íåýá‡ãóË)  ‡ÃANvqq°Ùìb¡ZØlvââ‘“ƒÃá¨r?’«,îÙšÝ_åÛ:S§N•‹¨žŸwÝ#F¸pk—H¹_°PC„ÓÑ2H7ö÷¿ü¢Õþè#1µ "X‚§S¥°¨›Í&‰†„j£ª*6›Â¢"œÎªŸO"‚Ëâî\ÑK¨qqqb76mÒJÍ,[æšq#Zöç.b¡è¬.õ×¹¹Úƒ‘#µ=‚PU$Z8'ѱÍ=ÎϱòK¿%ýDÇ6/3ímÔ–mêË~ªª*BX¨[ßciËKÊ‘+B¸jLš4IŒ€VRfÞ<˜6ÍUú(˜ \'¶j™FÀûÀkh!ÒVÿvÿöÛ°~½Ý£‡˜[¨<â |&Çr¨ôU‘8®lžúro¡è_E!$Ä€ÕjõÉlµZ1„èƒ6IVùðç@‡;v¬\uÄñã0t(LœèÀÝÐJ؈êìGmüùg@ Œãݹúö…¹s¥¦°PyÄ,øO"ö\mžDt‰7Ø“—¸¢><­ãiÿÜ—«h=_>OEÛñ´^]U:››[:¯dºü{OËWÔ—Pÿyíµ×5jT±©ª*K–,Á`00jÔ(¿lK¯×ÆÏ?¯§gÏÞÆRq\>;´Õje[úV"#ÌèõÁ÷<ÖS¬’I Ùܼys¹èê€Õ«µÚ¿G¢¹7F“‘Ú¿Býà|´2Ÿø·ëâbíÁÏêÕðÎ;и±˜[,Ô²v¦‰Y÷°çÊ Xo}¸o¯|[E"ÛÓz¾~žò‚×—ý¬ JBQ£££ÉÉÉ)#bsrrÈÉÉ).YFUU¯ËWÔ—P¿ÉÍÍ- -**bܸq¥msçÎå©§žà–[n!""¢ÌùSUe";'‹ÏV,ÇnwxˆvÖfCôDD„aF§—,=‚Pl6xì1˜3Çå kŒV·õob¡žÌG+Ï5Èóo÷_~©Õ~ç­¤’ ˆêP®Ég_û-¿\uöÇ“®OÔ¤HÜ@®»èhÆŒâE‹˜>}:III >œO>ù¤T7®Tûƒ°0f³ ›=†âb-,Zç‚‚ÙŠN§Ãj-¢Øj•ƒ%•d×.­öïÆ®]"#^l#Ôc†¡…ê6ù·ë£GaÈxäxî9©),ˆü(d++ Ë{]«+<¢êZy±å½»¾,/"¸a¡ª*/¾ø"‹…¯¾ú’©S§™™ÉÂ…¯ÇСC™5k6›Í¯Û5™Œ„ëµ±¾:‚Nw&ÜÙ=$Ûjµaµå±) }ö4_ÎÅ{ïÁر®ÒGF´0Ó{ÒGBà%ð)0X ø±d¼ªÂìÙðÝwZ)¥ÔÔà2í©S§Ø¸aGfÒµWO:vìHˆ< ,TªŠ×òãwë"D¸!ØÉ_¢§$œ5&&†ìì37Ô111gµEGG—YÆ}º¤?Omå×ê/6›W_]„‡Ç“‘ñ'_~ñ9©mZ“–Ö‘9/ÍÃZÎ +ÙÅkW 5Ë_|ÁçŸNQQ………8ÚÝvãÆ +³lŸ>}6lX½þ<¹¹šø}ï=׌6À “k¡L.Žù·û¡{wX´n¿=~O ™óìs„Úè•Ò– cbI_µ†^YÌÀë†1äÊ¡rΉjwïo}®êgóå³×5111UZ§Dè–ÔBÃBUáÅÙsxþ¹g8yò7aê´ÇEðÖCj;1ÖŽ;yïýÈÈÈhpör:dggc±XÈÊÊ"77§ÓYqøqãˆ%66¶A{D6nÔŸwír͸x“ëFhÀ\ŒVSx°Ú¿]çåi ãV¯†… Á-¿g@áp8˜2vS®¼ž¦ñJç·OjÉ ÷ç³_×óÞ±eÜ~×È*oãèѣ̟?€uëÖqã ?í¼ˆ`¡Ú¸'–rŸw®6o}x·ëKµýy¼eš®­ý<ÙÙÙ¥â×}Ú]ЖÌÏÎÎ.³LI›§¾Ê· A« !L˜8‰µk¿ãÒK ÓéEס¸­/åÚ·odzÏÌààÌzi»ââb²²²°X,X, QUÕn¯#&&†ØØXÚ¶mKTTT™ðûÀ¸~µÄW=¦%Â" x¸V®+!@ˆÞÞB{°ãç4ï½?ý¤ÕîÕ+ðÌ·xî|Ƽ²ŒvçšÞ1gÅÿqàÀ’““«´ÄÄDfÍšÀŒ3Ân"‚ŸDau–ñÖVQ’*_Xùk¹Ê$̪Ê~Ö¦Øq6‹¥t¾Åb)ó×}™’÷%Ë—¬ãNEmBýÇápÁðá×cµZKÃB=C‚ÿñµR Ô ®«ÕÊéÓ§Ï:çòóóKÆeggãp8Ðëõ„……ZêÉmݺ5f³9hΛ£GÏx²è,’åš m\û…ÀýÀ.ÿv¿k—VSø¹ç´’Jô¬ìè®=´íݯÂer5//]ÆÔOʹ&"X!¸p:‰!êÞp Þµk+W®,3ÏáppøðaÌfséK§ÓѦM®¹æš =G¾üG«ý;xDîÜ„§#ZMáÇüÛµÍ>ª=Tz÷]HLløæÚ·oÉqe=À§“?öíáü”3YÁÂBMägYäü,IyO°  oÞá@"--´´49ØP\ Ó¦Á¼y®Ú¿‰À´±“‚ ˜—€~À£@®»_½Z«)üöÛpÅ ýû¢³ÑXf^AQ»2–ÁÙ Û¶m+¬)ŸPD°  ½NÏþý{IJj‰ÃáƒU&$ÄÀþý{ÑëôbŒš¸·s wôÐ熂ÓéÄn·c,w#YìÜ©%¿ÚTR?u00ˆ“ã$!×p¦¦ðFÿv}ü8\y%Œ3gBhhÃ4Q»víøøäñ2ó"øî’KË̳;$4oF£FÈÊÊbß¾} ( ªª¢×ëKó+ÄÆÆd~Á‚`èt ááaìܱøøF˜ÍfìvÂB~ òóO³sÇvÚ¤´D§“¢£þ¦ÄË ¡Ï …ÌÌLÖ­[Lj#êt?Þ~|òóPà àN¤ö¯Ü$ËÑ<ïà÷šÂóæÁ÷ßk5…ÛµkxæQ}t$'s²iíýÁêû߯áÚo$11‘Dqàî™öwíÚENNNiîEQ'66–¸¸¸€‰8, íé]4±1Q|³æKÚµïH«V­Å0B¥Ù±#ƒ¿vn§y³Dbb¢ÑëÅ\ÓbX@«ÿÛ¢|ú) ƒ—;Àþp±Ku±Û5ÛÖo>DGáÁ|:Nƒ±gõ÷YY ×4ã§Mቱñü­wcòѲuï.N†@·ݽö¡Ó鈋‹#.ÎsØÉéÓ§ÉÊÊâèÑ£X,ââþI("X€°03-’š£èöìÎ`Ëæ b¡ÒDEEÒ¢ESš7oFX˜Y "µvíÁ Aðð4Pˆæ ª‡Ñ¨ÕŠ ¤T&Sà ݭ.»ÃSµ—Ëé]JDDŸ{š©3žf`Û4ú¦OtD;îç³?Þª¦M­Ö6ÂÃà '))É«P,B­£Ó鈉Ž"Ôh$¡Q<……’X¨‡Dü Bí²x8$¦¨1Ñ("X§Ó¼ÛÁŽ ¼ ü,Ú‰IJÃû_z)ý/½TŒ!"XDÈ‚Ð0dYµ‡ÍfãСCFX§è‹ #6®ÒºRÒ%„ƒ¼œOlÙ²…ððpš6mJ—.] «‘mµhÑ‚n¸¡fD<ÐßõüÇqàÚJ®SïÇÓæCÐ\™å¸vÌŸ/ǽª¨@ ÖÌ3f¿ÿ>Å%€ÿ>F{ Ü¸‰üü‹xçÍüýïÛéÚ5MNÁ‚˜œÊ²°uë6róòQÐJ%©ª*åï¹ÿ¢A—.ˆ‹©ô¹g->‚BbÓÖ4iڻ͊Šw¬ ÃbDAG~î1¬Å§1…Å͵*c+&,,Œ®]»Ò¿Ö ¥N¿ÓèüQ‰uJK×Óõ-°ÇsÓí—Èy$xfýúTµ™Kø¾…w ìE+Â6™Ã‡ïáå—g³l™ˆ`Á‚€X²sؼe+‰MIMm+*MNN›7o¥G÷󉉩¼ -.ΧøD~·.µ­ëä˜çæ²g÷žÒã/ …++)‚A ‰®·"øsϳ#"àŠ+äx gsàÀNžláz÷0Ê%€Z6 ãÀê 7*,,dûöí>|˜ØØ(Á‚ ÔvïÞGj›Tš5kŠÙ&ªð#W@DD»÷ G÷1HPÛâ‚BöîÝh!ÈÁÀñãÇùå—_¸úê«å„kà"øÅ*ˆàzù¬§Íì+®³$żâ[Ês‡ÃQ­­X­VöìјfgF“ˆ`A ‰‰MˆˆˆcU"""’ÄDgÀüÀ5Á[×$&6áºë†°bÅçkë#GŽÐ´iSMo‘™™YÚvòäIbbb0ä–¨!Ñhì¬Ä::–`Êj­gæ[4‡®¿^޵à™äädqò$À-h¡ÐîáÐ!@PLddkÖ¬ ..Žääd5jäó¶¢££¹ñÆøã?Â~ò/#`"Ä,T_˜™ÃˆŒ”)5·šÀæ0ñÀ×ï¾û.]ºtaÈ!eæ?~œÇ{Œùóç‹n€\Ì­ôw\=Áÿõ<Ûd‚+¯”ã,xçâ‹ÃÉÈ8€ª&÷óÑÆ§¢UK†æÍ_cæÌûéÔ©=‹…ƒ’žžŽªªFZ´hAóæÍëm™9ÁBÛœË!Ÿçû£oA‡]»÷òÖÒ¸uÄõtêxžÄMû2/iß¾=mÚ´ñ[“'OfÖ¬Y(ŠBß¾}éׯ'OžäñÇgΜ9„‡‡‹Ñ C« ‚ë]H´Xí¹éò˵1Á‚à… 'ðÛo“Ø´i†KøN.Óþ-#G†” `€ØØXbccÏœ‚V+™™™üüóÏØl6E!!!¤¤$¢££E ÁKŽåÐYbÕ_âU° 6ÇŽàï7ßMfæaÞZú>lý‘„„x1 Þ½¾"„Áh4ú½vï”)S8r䤥¥QPPÀìÙ³ú&/ÐICKÿ³·ëÔ»èï<ÏM -øò]ùÝwÏpç³ùßÿ’9uª/Ѓa3­Z­a„ó¹ÿþûÏÙGJJ )))¨ªÊñãÇÙ¹sgiÂĈˆ’““ILL,ÞˆŽm~–Èõ&¢=Íìß›l÷j)Ë|,^ò÷…¢œÉÀ¬ª*‹½ŠÞ çþÑ£jdÛ…Ü?öQ ‹ˆ`̃“ygÙBÌf“\›®k±dZ®Oÿ³}ûvV®\ hõ€o¹åvïÞÙl¦Y³füüóÏ|ÿý÷´iÓ¦Æê 5ÇP`Q%×1™ê‘þ›0ÉÝ&øBTTË—?ÃÞ½{ùïdçΕ Òƒ‹/ž\¥áMŠ¢Ð¤Iš4iR:/??ŸÌÌLvîÜÉ©S§$;´<¸ ÖŠ¼ÀÞÄ®/ë×”·9˜q¿±–ì ¼nss™8Q ²[?þÁÒ¶9sæñÄ“OpÛ­#ˆŒôoÌÃádî¼% ªœß¹#wßs/o½ù6›ù/¿ÆäGÇ¡ÓIY$o׫àRSS¹ë®»Ø¿?‡âÛo¿¥uëÖ¥ÞŒ®]»Ò¾½&Lcቫª(‚ssëÁÎÛ€/=7 1’"@¨­[·f̘Ö5ÒwDD:t C‡¬]»6 쥓SF¨Š®hnO„ª͘1c˜:m:ÿþ÷§|üñ'¥xܸq~À+V~InÞiÚ¶Må…çpí5C˜5óRSÛ`ÉÎ峕_ÉjN[ØlüùçŸ|ÿý÷¤§§“@Ÿ>}ÈËË£M›6èt:8ÀÚµkKÇÇEÈàËÉù@R%×Ñë¡^<óø ðòÌË•ˆWb²³³ù÷çŸsß3ÏðÔ¢Eüò믨ª*†,Ôú µ›'÷\Ë•¼*#¢KÚ=­+Tñ.3*/Íy‘#FǤG§2þ+L6øø8n¿ý6f¿8Ëÿç\a!?ÿü7ß<‚v©Í)<Åyçµâï7ÝÀúŸ6P\l úëÒ}Z®ÓêQ\\Lzz:_ý5ëÖ­#""‚Aƒ1`ÀL&?þ8 àðáÃ|ðÁ$''³e˾üòK1^F®¨Âzõ¢ö®—ªd\sÛ`æÕO>áÂW^ᦄ^Ÿ8‘Æ1èÈL˜À¾ýûÅ@~@¡…J às‰ÙŠÆøúN-áÐþG¡ƒ\«6Þx} =4žŒŒ?Yµj©mZ“–Ö‘yóæátú_ˆ†……óÜŠŽž=:Qä:ïŠ sù[ß^Ft:¡¦Pâ§Úî×c°_›~ø!#FŒ¨ôzEEEìØ±ƒãÇc4i×®;w>k¹eË–1wî\"##ÉÉÉ!× ;eÊæÌ™CŸ>}ˆ‘ØÓËUÀë•\§ÎC¢€—€˜~ý %\…ãÅwÞá™fÍÈŸ>Ýý‡•üæÍY{Å 6uÓ¦'Æ,ÔWá\U¡-‚ÿÐé`öœ9<÷ì3œ}šŒŒ N:…Éd¢C‡téÒ¥ÂíM™2ÅkÛ#<"_ œî@"p´딄DÛlu´Ó¿'<7IVèàåà¡C,>vŒü;î€âbø!çýõ–v Fq·nüùä“Ü3{6ËŸ~Z &"X¨i1[^œzó躇K»OûâI.j-‚Ø¿7Úâ fȚ&>2‰ï¾ûN  Õ×èØ¢¢ÂÜ Úrä@™pè`cùòå˜L¦³¼¿V«• &0iÒ$Z¶lY:?//?ÿü“ììlÂÃÃéС=zô¨Ò¶5jÄàÁƒå th!ÑË*¹žÉT‡"ØK(´NÇË1 V^ýÏØ?r$­–,aÍ5×ÐfäHœN'>ÿ<‹“’ Q#¶˜La2™ÄhÕøÞ„ ñ%t¹ü|wÁëiي滯/T³¼p"€ƒV«Nbc"¹ñ†ë‰‰ŽäõäútLÜu×]äççóá‡0dȬV+<ò'N¤eË–dggóóÏ?óõ×_óÇЮ];Lß¾}‰¯z­ô¬}I IDATé°°0Ú´i#'`€qeÖ©3ýàÄki¤¾}!€J± •dë‘#v;½ h“’‚Åb¡°°gx€–ï¼À‘ŽÙüûïb°j ž`A‘#6Î-„íöb9—ê‰.?lžáQ£FqàÀúõë‡Ãáà¾ûîãðáÃüõ×_ÄÄÄ––FTT”œ0Â9¹hœ¬ÌM°A{Ùíµ¼³›ñ»}Ýur,ƒš’“Q§Ãætº&ulÙ²…ÇSèúÖ9èõz±—ˆ`ATÕ!Fä\j ¸Mp÷ºÎÌÌäƒ> 44”ñãǰnÝ: )((`ëÖ­FèÝ»·œ,‚Oè!Àû•\Ïd‚üüZÞY/¡ÐŠ"ヮII|~ä4mʆØX~ݲ…Þ]»Ò³gOî~úiŽOš@Ìo¿Qœ€Åb!66V '"X‚—ÐPv›zQüPh¨ØlvŒFùi¨-! Â×ÄÄDFåºáWJç÷îݣшÍfã’K.ÑDx9„JrUD°Ù\"ø¿žg÷êIIrƒ™±7ÞÈǯ¿Î®Ç'sôh.[¹’Ο}Æ©ÐPvÞuÄÄ@V—†„еkW222°X,„……qÞyçUk¨ˆˆ`A$ ÈÉ=EHHcô†27˜‚p.TUÅa·‘›{ŠÆ Õ¯Íñæ[Ú­èÝwÝZæ\TU•×ß|ƒÞÀÝwÝÔ6Æ0hƒÁPêµ(..æÿþïÿ¸ñÆ1òå—_2\² Uä" È®Ô9YË!Ñ¿=7ÝpƒÃ†ÊÆMyã£7|Zöo}þÆm×ßæ±­IãÆ<Ú±#“>úˆœ[n!wØ0~6ì̹¹t~ê)^}î9"""èÕ«ddd°iÓ&BCCiß¾=Mš4‘#"XŸ°03:deo°P%l6áafBC«—-&77i? hÙ~¸ÿ®Ò¶¯¼Ás3çpÓ߇Ô8XŰÕjeüøñ<úè£,\¸±cÇ’““SåšÁ‚`@ ‰þ¸’ëÕjHô½7I(tÃ凟 é?šÛâÜ¡ÉßÍüΫ¸wøp¾ù†Ç'Mbw¿~uë§NÿÓOôÚ¹“÷Ÿx‚ˆˆˆr÷€atïÞ8S?ý÷ß/­ŸÞ¬Y³*6UUq:#"X“ÉŒÉdCuJtt4cÆŒaÑ¢EÌxúEš7oʵ×\Á¿—¯,ÀãÆ#"2"h³pë˜à^ýuyäZ·n À¡CZE€;37ß|“íÛ·“––&“Pi®¨ï"x•çÙݺAJŠ?AcØÀ ¾ðB6nÚÄêåËiOÿþýiß}>œÏ¦ÒÚéV«•¿þú‹mÛ¶a0HMM%))ɧhÁ×–/çÃßçˆÓ‰S§£©¢pEË–S]BD° ‚àWTÕÉÌçg`±Xøê«/ybÆ,>Ê«¯½M||C‡å¹g§SxúTPÛ©>x~÷ìÙ˧Ÿ®`÷îݵ¶Ý±cÇzm»çž{*¯+V­¢cÇŽ´jÕꬶŒŒ :ÄÀåâ úQ@n%Ö ½5ðO`ç&ñ«§¬¦yT󳾇®zí*Œf£Ïý„……qÉÅsÉÅWy_ŒF#;v¤cÇŽØívvíÚÅš5kÐét¤¤¤Ð²eKtº²s×MŸÎ7—_Îé§žÒfž8Áî¥Kùé÷߉ZµŠ'ÇÞ/"XAÊSTÅ’Å/3qâ£ddüÉš5ߓڦ5ii™=û… Àu-~KHJjÁÝwß Ào¿m®³ý¨î8àòðÃ3yòä2Bø¯¿þbÑ¢EÌ;W.Ê Á –Wr=“ NŸ®á“Pè  6*–×f¿VfÞ´ç§á´9¡ƒõ :t C‡8öîÝËwß}‡ªª´jÕŠÖ­[£×ëytÁþ;r$ö¶mµkjãF ¹¹Ü{/EÁÒ±#ä5øã¤“SUAð?*Ö" ³^˜EŸ>}HMmÃE]ÄÌY3±eRŒ¸<îaѵEHH111ÄÄÄÔi.ê–B2™LÌ›7þóŸgÎ@Uåã?楗^’< AÆÐ*Cµ°c^J#¥¥A‡rÜê N§“{o¸—[¯¸{52¦ÙívNœ8Q/?£^¯'55•2`Àt:k×®eùòåü3?_ÀÙÙô}ôQÞ2220›ÍôêÕ‹°°0@ËŒj4Å@AÈ•ÀÊ*ˆàìe’É€ö°î›o¾¡S§Nõ®–oß´4B32(nÑ‚=))Ó¿ísåç“)"X´ú² yyyBä”Á;v›ð°0BCCÅ~Ãîˆ0®6›ôôtŽ;FË–-iÕªo¼ñýúõ+]fâĉLœ8ÑcÖh!°„•ñ[ ÓÓߎº@ºç&IˆUÿpüÙëO ¡ZÿغÒB¸ÿ“ýϚיΥӱq±ôë×ôôt6oÞLrr2:t8+Ks]лGZÌŸÏîAƒ8vË-ü}æL†µhAtXgd°ûÁaãFÁBÃÄá°ʼnãLj‹Án/Æd2ùÞ(‚àoô†Nž8JdD$N‡=à?¯·ÐgÂç&;;›-[¶`³Ùèܹ3Ý»w'##ƒE‹ñÒK/•YvöìÙ³F O8p)ðe%×3™  ÀÏ;³Ê{“ˆàú)€ß[ý!!!ÜvùmUÂç`ݺu`ÿþý¬Y³†ˆˆºvíZÉRDEE1²iSžÛ²…®]ùíé§Ùtຂ·Ý€r예`¡ab³мE+vÿõ' ‰^ª*ã‚A¨mTôdgç’}Š”6°Ù ƒâ“—»"€+fïÞ½ìØ±ƒ¨¨(z÷î]æFÑáp0wîܳ²@—dÞ·oŸ0Z_D°—PèV­ G9NõQGGkI¬Þÿê}Ÿ„ðàƒùøÓ9ÉÉsnwØ€aeÞ·lÙ’–-[’››Ë† °ÙltêÔ‰ÄÄÄ:±Ë´{îaÏÌ™üg÷n²®¿59™…ùí·´øä¸b°ˆ`¡áa·a2i“zGfrèðAœEÑ¡ètŠ¢M+Zf;EQ\c…tŠN›Ö‚¶Œêº™U”ÒûÚ3Y×­Š¢‚ª‚¢¨¨ªŠêV!åÌ{µ´zŠêjSJ–9³ªª-û2Z“뽫UUQU×6Tµt=mZ9³M×6´÷ªëÝ ª‚ZºÃªkZ9³¼êÞŸÒ T×9¯(%'yÉ5¨Jé{EÕ®%íTt-S¦Íõí"R”Ò©3ý hóJÚ¥ôï™u´ëQqµ•\Ÿ%m% –ìã™M–,ïú¯LۙϨ–\Ѐ'Š N×Ū:Õ’ËBË­:QQpª*8UTT‡§ê,½æªNO¸ÙLJJ[t ÛŠ‚N—Ì!\›ÍÆÖ­[9vì­[·fðàÁC;vìX¨1ÑAêÏ%ƒÀV‰uBCý}Øä¹iøpÎÜ7 µÎŒI3`%4¶6à§ÔŸX¹z%ÑÑÑäää°gϺvíÊû_½ÏåÝ.gÐÎAÄ9â°¯¶3áÞ ,X¶àÌwP‡Ž<3õ™jíOTTýúõÃn·—†J·lÙÒk¨ô_ýÅþýû}ê»k×®4jÔÈ·ûEá­iÓöý÷,™>ÃU¥¹ÁÀM½z±¿OŸ€8þ"‚ƒ”¢Â=Ä]&TET¾­äz¦P(ðW@Ê*¼–E—ÒHuË“`ä×#i¼­1FŒ´?Òžg}–Ù¯Í&::š„„V­ZÅšÿ¬!õX*vììi»‡ÅÓל8s •>pà«W¯&""‚nݺ•‰€yî•ç~ÎþòN䑾3‡x¸Rûqu¿~\í–c¡ôáÁ¦M"‚…}ÍZ€ÍZ ¦ª„{ÖUoÓ‚ xÆÛ˜à`÷ïÙ³‡;wÅ…^ˆÙl–“E¨WUE›ý(‚½„B7kâPkäççóüô'h–”Ę‡Ç£( ‰‰‰,[½Œ‘—¤û¶î´8Ý‚Ì2™Ä$f¿6›-Z°ôå¥Xþi!%?;v6vØÈâU‹iÒºVö;99™äääÒPi«ÕJ§NhÚ´)¡¦PÚõkwÎ>,™øAÎÁ‚ øEïÛöí;R\”ëqZu‰¡¡Uðz¯žÚ¬VkiÈsJJŠ×gA¨ —»nv+“nÏht ©îø¦ãÀ¯ž›®»N »jžß6l`Ù‚…<~Ýœ8ÎØ‘wó䋳hܸq…B82*’½oì-ÀëZ¯ãÎÉwQëŸÁ=TzÛ¶mlÙ²…ܼ\VkŸZK¸¹¬WØØØH÷QÝå,‚¿0´ïЉP£Õéyº¨PD° ›xì±Ç=z4íÚ•õPdee1yòd,X€Ùl&++‹-[¶àp8èÒ¥ ={ö”Cð;±À…TΦ(Z‚¬Âêzƒ¿Ä•4Á³jUUy她¨GO²àî±è…ĸx:$%óä#S¸â–¿3øŠ!…ðá“mȦUN«RðÒUKIJNbãÆlÙ²…>}úYËus ]»v¥k×®|øß°ÙhnnÎ’—–”Yv䤑rˆÊc2Ga·;8vôùØíN¢%ÆPtèuZB3I±´—^Ñ•ÎWQÑ¡ èt¨ èJ’éè׸?\c޵äV’K ‚-1ª6Û©ª®ëÁ ŠŠÓ¡%¼*IŒUò§v%9œg.f§ª¢º²Í8œNm_U #<"‚ÄĦèõzŠ óúÜ ôPèY³f1qâDzè!RSSËà^xdzcÇbcc¹è¢‹¤<ŸPã\Iå£Aý"‚½”FjÜ.¹DŽKMrôèQžöw\x)½zõéª,þb­š0´gæÝýËVÁŒÿýiOÍ8K7;Ý ÀctŸ>}(**â—_~à‚ .¨“ï±0ó™ñÁ§²Nñõ×_Ó¹sgš6m*'€ˆ`ÁãA1áp¨ìÙ³“Ȉ’“S0™#PtŠ»*-‘{’Kc žÄXø%1–ªRTT@VÖ öìù‹””öBLØ4CtEÙŸ%3´Ñh䥗^b÷îÝ¥ó, 7ß|3?ýômÚ´aÈ!ò,ÔC€ixuÊz$4´š!Ñà'ÏMÆ^/Ç¥¦Ø–žÎÒ9óyþæΡ“'xþÓ¹çá‡ØñçŸLÿpÝp+#/»‚Œƒû}û¼²ôͳ„°×1À&“‰~ýú‘——Ç?ü@dd$={ö¬Tý`»ÝÎ/ë¡ï%}«ý™›4n€ضm±±±òpQD°à‰cû÷î$22‚æÍ[c³RT”ƒê”:Á‚ Ô.Š¢Co0Ò´Y2Ê‘ƒ:´–-Û¤>—È ¤IF£‘óÎ;¢¢"~üñGœN']ºt¡qãÆrÒ µNcàïšÔËw“&„‹ªúUô^"_½“šD§×ÓµU Qaáü¾gïn\Çì×—F·ÝÙsÑ…Œ~t ‹G£CRKbÃÂKs¸ aìœ3 Vdd$—]v'Nœ`Íš5$&&Ò¥K7ÇŒw|ÇÕwókC§åG¨¾¨s…J "‚/èõróòèp^'¬Å§±Û‹Å(‚ÜJ´ŒŸWõÉáÿ¾TÕ‰ÝV„ª:IhÜ”ŒíéèôòÓ07}ûö­Q¯Dzz:;wc 2´’"Àl®†ö  —^*Ç£&IKK㣠58¯S'ÂÂÂ8|ø0:Ž””7Æd ¥ÈjÅY&2%11‘w¿}k±•æ-šû´Í„„† Bff&«V­¢mÛ¶´oß¾BÜhu#Ú9Úñã ?ÿÏÞ™ÇEU½ü}Ù÷MÜqCQAÁ5wD33[ÔÛlÿ~-󧶘i™–i–•ß²²2µÝVÅÝ„TÜw”}Ÿ™óûcfpÀfØ^dädàëljÃGJÄíÙ³gÙ¶m¶* ŠÂßûv1þn£¢ÖTlHË–-3f Š¢ðçŸrþüùr°‡Ú€iZ!üÉâªå¶u²eÈûC¸ÖëZ©Gß×úÊ AŠ`‰D"‘”úò·´¢°HpâÔ%þÝ}€ÿDóÏ?QìÚõ/Ñÿî'.þ¹y*,,,ëÔ–¤qà™3gÒ¹sç’²víÚ±lÙ2Nž<)HrKh˜›,F?%Úl6ÅÆ«dTèºaì½X¿' k[ÒÓÓ±°° wïÞ\8{Žð ¢NŸ XX¿C‡Œ=šk×®±qãFRSSoÀYJ}"ÕÂnÍÝhâפÔÃÑÃQ^ v—Ü„W³€›Ê®^Ž¿¥ýÑ¿¼×uu|SÊ%’z/€-,).V8›HLL ÅÅÅøú¶¢mÛ6\¿žÎùóç9{ö,¹¹½è€½…6t-Û’Ô=IIgøõ×ßJ²ª‹-bÑ¢Exxx””ÙØØ°dÉfÍšÅÛo¿]náª`x‰¤"FÌÜÇή S¢ÿ6^ìâ#FÈóPtéÒ…¯–~ÀäCYôòÌçÔÊš'N!¯°€lU¦Võ)ŠBpp0*•Š˜˜æM›GǃKð™þg˜õÎ,æ?2Ÿ^I½J„0˜65º…W ö¿½¿Òv……<ñ`µÞKjj*_~ù%ÑÑÑŒ3JŠ`Iã¤!ˆ;)@%’ªaieË™³WˆŽŽÆ·UKî¼3‚ÂÂB~]ÿî­­-ÿüÅž={ððð  C E&Ùê׿>Þ7‚åää½Ç$[Ê_ÝŠ Xþþm˜>}GÆÖ˜6†^×43fÌj‰IDóª ‚ÍŠ ì(G„®¢gYR%Üšy“žŸO3><õæß*öíæžI‰ŒŒ$((ˆ–-[ÖZ_>žÿq)œØ7‘5‘kpppàßaö½³ÍÂs^žSgcÙ´iSfÎÔþ_íÜaRK(†žbC!ª÷Œ{6l[v»"»ú2ú²öË–Ud»ì~¦Ší²û”=vEãQÑvyïWŠ}ImaaaIA¡†ã'Nàà`Ï]w&''—É“æø‰üòËz¾ýæ+ èÇÕÔ4ðm僃a®lã¶ÂÂúÒ?lË>XÂÈ‘ÃKìFÿ¶ں݄pyu’ŠÉÊÊB­Öf2prrÂÚÚµZ¥.ßLFFFɵåììlVºIãÇè5cE(45†èV Ïñ„ òÔ%ãî¿i¯¼NçÖÆ£;H:ͺÙÓ±°°àÀ$&&Ò¿ÿýÞ06:¡OOÎ~’£GJP * a‰Á’:Àæ ½òÄoES›õÛå‰ÝÊúVÑëºs÷«Š-‰Ä KŠ )))tíÒ…¬¬l|ðÙ³;Š©O=˃MáëU_Úƒ¨¨Ý©qt°B¨UÚrsseé’Å<ûÜ ,~o_}õ5ŽŽ<ûìÓ¤¦]«ÐÖí&„%Uã§Ÿ~"55€»ï¾›ëׯ“››ËСCXµj…:µ2yòäZõìH&fŠ`ÐzƒMÁåL…vt„ðp9þuI×®]ùpõ×h4Æ—àØÚÚ–Lƒ !##ƒM›6ѵkWZµjU#}8qü×_£ƒºg›œeÊ´)Œ3†´´4NŸ>M§Nê„wwo2Îdà.ÜñKóã—o‘"XŠ`É­»zÌõšš³]•c˜zìòÚÔ´® ¤Ø•Ô™V,(*.¢¸¸˜¦^žüòëzNÄǵgg'>úh)ýûßÁÆ‘ 6 kkk Q›Jm©Õj†Ì»‹Þáù¦Ñ©Sß}÷ VV–¸º¸ThK"1…Ç{ !GŽ!))‰ÐÐP<==Kê§M›&IR!c€…UÁ™™&4,@ë 6Bx888Èñ¯ ²³³Q©JÿÐjccƒ£cÅ¢ÜÜ܈ˆˆàСC$$$†u5CywíÖ•g?|–¯_üšn»Ñ5­+_Oÿ{FÞ9²äûkÆS3°Úh…»p§ˆ"v9ÈêÈÕòdJ,¹DÙ­§•‰~cÓ¼«Óï²bÜØôm)Œ%µ‚8::àììLVV6cïÃï¿ÿÉÓÏ<ϲeïóì3/гg(Æ %77GGGœŒ³*cËÇ»)¹¹y¬Zõ :pæÌvìØÉ°aC*·%‘˜ÀÉ“'IHH ((ˆàà`vîÜÉ AƒäàHLÂèœ0c íZÞJ½Á;Ю 6‚œ ]û¬]û7_|±ŸS§lÐhJç¶²²Òе«Š3Â8°g…vºwïNVV›7o¦sçÎøùùU«_cï P"„»_èΧÏ~ ÀÈ;G2ã©d|—AËÜ–%ø«Í_áãã#OªÁ’ÆNMË[%ú«ºoEÓÆ¥–Ôju1övδoßžääs´õ÷ã+>fêSÏ2pàPBCCøô“°²²$)é ~~~8;9¢QeTj«y3o}ô ìXµê ¢¢¢™öât–.YŒ»{“ mI$qþüyŽ=Z’vÄ7J,1‹3E0˜8%ú/ãŶ¶Ú X’Ú#--Ù³8{¶ü`QgϹsopð`’8åáââBDDGŽaÛ¶m„……acSþ,¦×®ÃÝÃa#G˜%„¿üôK\þq‘ø óKê¥ ®¶M ªeªýú8%[r{ „KK5]»t!;;›¤¤d¬­­ùô“xýõWøxù2¬¬,¹’’JVvmÛ¶ÅÊRm’­ääóôîÓ«ÄÆw äýÅï’“[©-‰Ä©©©lܸ‘ëׯAûöíå HªMUô¨]% Š€ÍÆ«FŽgg9îµÉ‚«9{vb¥íNœÉ?n4ÙnPP={ödëÖ­$%%ÝTŸ““ÃôçžÇæÜÎþ³‡7_y•âââr…ð#Káh íªôîºÓrCK)€oÒ,©’4Ü®i»ÆÖíVÇSZ™íÚŠŽUÞ~Æ¢aK¯°¤¦)ÌÏÂÃÛñãdz~ýzÎ_¸H»¶þ 6ŒÌÌlΟ¿HvNÇÇÃÝ™Âü4“mõèJzz&öâââŽbaÍàÁƒ+µ%‘èÉÊÊ"&&ggg†^¡×¦]»vrÀ$f´ÌÉŒma¡]T^†·]@–ñªñãå˜×6‰‰)@ÓJÛ·$.îˆY¶5jÇŽcË–- 0[[[î?ÀŠÅK˜3a2-›jSž8—̳OaöÛóñ÷÷7*„á†GØ)€¥–Ô'¡[•zsƒbU´]צl×äØTdÛÜ:)x%uF£¦ ïÍ›y3eÊâââ8}ú4ÅÅÅØÙÙѱcG:t耭y¹W+LgT“¶$’‚‚bbbP…°°0ì*u¿Áã?.Nb6c€efîcgW.g*´µ5Œ+Ç»1еkWüýýÙ¶mû¢ÿÅ&3—OŸú/–8}'{{:ùúñÑcÏñÖÂÅtØŸœ\¡¸ °ÁIíPÖ+…¦D*U!9Y—qtjBŸÞ½ E…¢`a¡PT˜Cnö“‚XÕ¤-Éíz=ªØ¿?¹¹¹ôîÝ'''9(’Z%¢Š"8˘·WDßgèPpw—ãÝX(**â÷u?ð@Ïþ ŒFÿú=Šw232ðcʰQ¼5ù1þˆù—ÿûÏ™ÿÞÞ IDAT»ØÚÚÂKßZÊÚȵRK,‘ÔèÓ]½z•š4i"ER't|sfìciYΔèÝ@ºñ}î¹GŽucââÅ‹„4oÍ ®Á\ÏÎâ…ÿ-cüÃqϽÚðßþü‹ÿ®\΢‡§rg¯~>“@nnîM"X/„õbXR÷ÈÀX‰DrÛ‹a5……9ägRT˜[-ÑZ“¶$›S§N±aÚ6mʈ#¤–Ô9cª°Ñú•/šïºKŽsc¢K—.O¹À¥´TE`×.lÚ´‰‚‚FMß–ä®*ÂÃÃCœÁ‰D"‘Hng.\¸À† °°° ""‚-ZÈA‘Ü"jBk€r‚ M›Êq® ‚‚| &œ¿BC«e¾I‹æ\Ï΢K›¶Äî?H@@ ÀÂB+«Ò/_ÁÃÙ…ãgÏÐ%¤‡<9RK$‰D"i¬Ìž=»ÂúÔÔT6mÚDzz:ááá2ª³ä–Óhfæ>––Ú`W%ì®o+£B×Ó§OÂßÿk ¢à‹Å´ný;Íš¹TëXã¸õ{¢ð²w$-- {{{lll8qâÍZ°~ß¿Ü5A·¯¯È5Á‰D"‘4BìÜÈÏ˸åýÈÎÎfïÞ½¸ºº2tèÐ ÓU…Ÿ~ú‰ &­ûý÷ß ÇÆÆF^’›PÐæ ^iæ~vvP’ öoãm,,¤®K\]]Yµj8ï½7—¸¸B4eVâØØXУ‡sæ<‹½½ ›6mbÈ!XY™/…ùâòÜßo¯M{ 7WWÒÒÒX8Y±þZQ\æ!E°D"‘H$’ºÀ·}º# XkBÔÆÆ†%K–ðÒK/•*_³f 999RK*¤ª"8;­Ó±Ü·/4k&Ç·.0 ô2©­»»;6l`àÀ¸ê¬9x¶lAZfm›·dÅ“ÿ¹©>þ\2‚ƒäI‘"XÒB V«)**¾¥ý°±±ÆÒÒEQäI‘H$’*Ÿ—QçBxÆŒ€6ÝÑÁƒÉÍÍ¥gÏžµžîhìØ±üþû籠°^O:U^ ’ é xQîŒfã7ÏVÚ‡j/pÙxº~ãêêʨQ£Ø¶míÛ·§M›6fí?~â¬XºœQ¡}ŒÖ¯ÝµYKÞ•-E°¤¾£R©Pk,ñlꇽí½yËÏ'-õVª*MS‘H$IÝãîîÎáÇIKK£GuÕPûøøH,1 `ðµ™ûÙÛCv9^`E‘"¸Aˆ ++FŒÁþýûIMM¥W¯^&ï@ðè‘$åå­h"žžžr¥–Ôk¬V“™•O‡€Š‚|}&xí\Ÿº|k;Z´ìÀ©øý¸º:aUfýXCñXׇ~J¯ºD"©i®\¹Âh×ÃÙÙÙ1wî\vìØA@@vvv¼û®ÖâããôiÓê¤_cÆŒaÒ¤I°~ýzy¢$&3º "ØÎ²ËI ¾¾r\ ¡¡¡œ={–ÈÈH† ‚u©Èg|猽SžÁ’†LvV6Mš¶FhTdßòþª‹±µwÆ£IK2®ŸÇÝýÆ”>•JEA¡Š&ž-ñrr½µã–Iúµ‹ØÙZÞä±®/ý¬¨‰äö$&f¿ÿ¡½{¿~ý:qqÇ8wî@êxûí›ëdT膉‹‹ ááálß¾¶mÛâïï[G@@€Ñ4õ³¤–4h„ÐPPXˆJUŒÐhecÊß"4ΛZˆÀ¢Äc]PMnvê-ïcAANÎ^7y¬ëS?Ëë£D"iÔ‡HzæÍ›Ç;ï¼SgÇ»|ù2àâÅ‹øøø”Zl,X–DRcÌÁw™÷Ü,‚ƒƒA¦À®{ŠŠŠB`kk[É}¯ ''gggãÂÈÊŠáÇsàÀöîÝKïÞ½KêöïßOFFéï\EQèÙ³'...ò$H,iÈ‚X+8ëC_J';7ôX_MIBSOÄz~^:ž^~%k Þõ³l---äÅ.‘H,*•ŠÝ»wcccÃèÑ£Ù´i#G޼©ÝرcÙ¾};EEE2M’¤R ˄¶€?@wð÷‡¤¤uÒ |k8Ǹ§žâÙÇcÆcÝô™BðýŸ2÷³Ï˜8t(oT« $$„óçÏIF†%K—îæØ±žäå5-ÓRCÛ¶_–ÏW_Í”1X¤–4P\®vóhe–¥Œëç«ÙÍM]ï±Ö¨ÕõF«Õe=ÖÔ»~ÞÜG)‚%’ÆŽ~š´½ƒ[½òW—‹/røðaúöí[}Ú˜Ö£_§\«V­b„ µžÊIR¿±F?™Ðv´Áë{î÷Þ+½-©{zvïN»>}x£woÖΜÉý:0óñDZ±±áÇ¿ÿæ½?ÿäxD­xùÉ'M²ÙªU+\]] }ƒÓ§—–Û.1±'/þËwnâž{FÊ“!E°¤ÁIà2Þײ<ýÂa“ì¬ø(¸äxE¢NFS?Ö.«+èG}駺žŒ•D"©;n…ð3gN­ÙV©TDGGãèèHDDDz[®\¹‚Z-¿'%Ú)Ѧˆàƒ×&ÜÁ:AçÎroó'Mb\l,qK—òæÑ£¬}ùeU*NŒEîÇcqú4ãptt4ÙæÁƒÇ¸xqh¥í ú±rål)‚¥–46!üôÓO³â£àJ…ðŠ‚yúé§+ÔÕA£V£Q×O°¢¨ë}?+ê£D"‘ÔµëÂ… 9r„þýûˈ­’ZeàäTÐÆèd°Ý³'´jçÏK/ð­f`Ÿ>­]ËŽ‰QwëÆ‰?,Ußá³Ïx}Þ<³l^½šA^žiß;ò4$ä¼H‰¡.·æ·_1ÙŠ9m+PãåV©ÕšJm;„šÔ®úuµúy«û(‘H$õ•JÅŽ;HIIaôèÑ B;v¬Fì¨ÕjV¯\Í¢W‘••%/†:ÂRI›Ñe¶冸•"øÖ3oâDš¬[w³à9uŠq­Záàà I"E°Ä˜å>ôÞàòÐ{+²aú£|4u¥ø¸ÝtèÔˤ¶ÕzTàé­õc×@%‰¤>rîÜ96mÚD÷îÝ i0ý^³fMµmäää0.hÿ>ó/© Ry´Û£ìܺS^uĘJê#Œ”¯,ÇïVÓ'$„¦‡ÝTî¶c“‡—$)AN‡–h`Qá4æoÍbÅŠÚXðÖ¬™ -* Q¬ÇFØ—ã±Ñµ6fJy•Mígm£é –H$ ƒââb¢¢¢pss#""¢Æí¯X±‚äääRe[·nåÊ•+ØÙÙ•*Ÿ2e Ú;|ø0ÇgÒ¤I7Õ%$$°}ûvž41ž|L@\Nhuu;ÛÕKV3hè yÔC{ ßH]+ ÈHyÿþðÜsrìêK¾ù†Ä‡º©üú¤I¼ööÛ¬¯Ã4n)‚%ˆòÖßðרS“ƒ¢œˆû—Ný8÷o­õ¥ªýìØÏä÷P[}”H$’úBrr2Ç',,¬ÖrnþŸR©TìܹFë¯¾Š«««Ùö‚ƒƒ‰‰‰aÍš5¥„pBBK—.eéÒ¥fÛn7û™µÉŠ`*íâãvWøº6û(‘H$·š¢¢"¶mÛFff&µ&€ ÉÎÎ&22’’TKUeêÔ©äää”L…6ÀUÉO<î‰q\´½xc|(¢C¿•îwñâE^]ø*o-}‹k×®——ÇÇ_~Ì‹o¼È‰øòb3‘Ñf–XZÊq»Õ,ùæâyÒÒh=o-[Æ+ÿM§_Äòøq®<õÓ+™ÑX–;îèŸß~Z^§[7OyÒ,1›²ÞàºôÌuñq» 쫘5û»Auú·‡€À>ÄÇí)÷umöQ"‘Hn%‰‰‰œ:uа°0œëä˜çÏŸçøñãŒ1kkë*ÛÉÌÌ,Éï½÷òÙgŸñçŸrñâEÞ{ï=rssÉÍÍÀÅÅKUÒ˜ñcˆy"†c[¡ÎVÓ²_KæÌ«8ýÔ®è]üoçÿè:¹+ª"SNå­Çßbö²ÙM ¢eDK–ý½Œ1=˜úðTyáUÂ0À(2(ózÈ¡©·³rÇš_ºÄÀâbÞ{î9¼½½x%?Ÿ+WòCB;³³9rô(Aݺ™d×ÓÓ“¾}s¹ti?EE¡å `?¿…¼þúÿÉ!E°¤!¢ IU¹bz{þÿÝ´6øíùÿgÒ¾¦÷¥"O°¢u³š+„ï! sâ况~V6Ú”~Æß«ë×Þ›^ƒR«}”H$’[Aaa!»víÂÛÛ›Q£FÕÙq8€J¥bäÈêçò\³fM©Èͱ±±œ:u V­ZUªíc=FÓ¦MM²«V«I½Š:M“ډ̔Lr²s*ÜÍßkè9½gÉ¿Œ¾/õå¾»îãîÏîÆ£µÖÓÝéîND¿ÍT¤® g´é’6”EÔÈdImq$6–oo–MZ"~õØÛÛ3ÿ…x%?Ÿ¹Ÿ|ÂòÕ«Y:gNNN&Ù^½z6cÆüÍ—_Î&7WÜtÚ”×^{OOé –"Øøxàuàœb‰‘úÀ ÝæGBˆD#mþ ´Þ¼€g€H!ĆJŽ­·½C±¾ŽÞ¯³"»ÁÉ`݆†‘¢Ÿ~úéšw7VdNTAº|Á¹['2w×ÁpVÞO½(7èµ!Ö%‰¤¾@BB ÀÑѱNŽ©O·Ô¶m[Ú´iS#6Ÿyæ™’×»wï&::šçž{Ž€€œœœŒË2…u_­ÃòK‚5Úÿ±êÔ,c9ïû~¹ûä©óJ)4k;k )ÄÅ»ôÔòB )..®–üv!¢Œ-‡¤^Ú½;ëºw¯°½½=‹¦O§¨¨ˆM›61`À“bXXX0iÒ&M#ºQ—k‚¯“ùŠ¢ßcÿê÷•VÀ[ÀýBˆtÀW×¶¯ Çnªk[ë¡E±Ve1ðIƒ»ÌЕoÏ›aôu]tFQª·Föäñ=u´&Ø”¾ì­ôµ\,‘HŸþ9QQQFë–/_NTT[¶l¡°°ððð:ÀYYYlܸ‘ÐÐP£xÊ”)&{„ŒÍ¢E‹øé§Ÿ°µµ½i°¹ü¼òg¼4^%Û–X’|(¹Â}z¶ïɵ³×J¶Ïì>ÃS“Ÿ"î縒²¢ü"Z;µ–ØDÂkƒ›È^rH 666„‡‡Mzzº)‚kY_ióælCx¯G9ß7k€±¹Q='`“nû40›Ò?ÔÕ<€éß J›ó—v5´« fîeÚ_%?4 Ÿi\ ¡Ÿ‰DRÛ<ùä“DFFÞ$„—/_Ž‚ÜÜ\úõëG```õéìÙ³ìÞ½›ððpÜÜÜŒ¶ñññ1y½nYvíÚÅâÅ‹ùá‡JÁÒ áuëÖ™eïØ±c "Ý"½ÔfŸŸ ÷{bòXï°fï»{ÙùÆNÜbÝxé?/1Ôg(‡Þ=Äîww“úU*/O}™óçÏóöÿþg4ácÇøÔÌ>7V\}‡‘€Œ{Õ¸°²²bäÈ‘ìÙ³‡´´49 ·ã5PÇÇÛÜôb Ä‚ ÚÔl¿èDò8EQ\„Yû꽸›t¢:X(OaÍJàúE©ò\ÃõDÙ ¥þ÷SH,‘Hê†ùóçóúë¯ÆÒ¥K¹~ý:“'O®4çnM³ÿ~4M¬ÿ5Fbb"ùùù|ÿý÷F£@O:Õ¬›ë3gΓ“ÃÌù3yòÀ“dÎĶÀ–ŒN¼òê+îkggÇëÓ^çòåËœ9s†~ý´òíÁ òà„KM.((`ùÏ?³ãøqÖÍ™C“&MB0ïÿã£èhæ…‡Ë YÇ`§îYÒø°´´däÈ‘lÙ²…   ›ÖK¤®I¶êžÃÃäyýÑzy7ëDð´Áù~1h3íÙÍ:áˆvïoBˆ_ u Ýþ£tí·;ŒÊEqîAû#Ÿ°í”ëé@¡b^™ö£u"¾ì–!òuõý}¦¸ÞŠ¢¬Ö!65l‚ø¼õ˜“'¸Öûb¡Ôû~VÔG‰D"©-!üùçŸãëëË+¯¼‚½½}_¥R±mÛ6:t耟Ÿ_­ãäÉ“¤§§3bĈRåíÊä55PÎÕ«WIJJbèС¬Þ¾šÃsñìEFÝ5 ’•sèÐ!ˆXÃ)ÐvvvwíÊÆW_%ìí·y-,ŒUÛ·ýÀx§¤0yŒ”|zÂÑz[úÉ¡h´XXX0|øp¶nÝŠJ¥¢E‹rP¤®%D’¢(gt¢·ì÷Œ@ëåÕÿ§¥ÁŠ¢Xè„óa!ÄU]}sààð«¨Ý‰6xÖv xx؈@±þÐõe/p˜܉60à9`žAûЮ+V‘º6ó€IŠ¢ŒB\Ð ùVº]?À¥¡\ ¢§j§/Ʊ³³C¥ªÂÎÊÚ®Þ÷³¢>J$’̬ۛ,’“´¯33kÌ®··7ÇŽcäÈ‘u*€333ùçŸ8p IoªBll,………ôéÓ禺ÇÜl{YYYìß¿ÿ&ñÜ#˜àÁ&ÛÙµkaaa& æ‰ýú±åÄ âߟ§ÿú‹œùóÁÕ•6?ýTkãÖi¢»‰”©T7Š¢0lØ0vìØZ­Æ××WJòóó9~ü8—.]ÂÝÝ¥Á¿§[ñ¹Þ <¡(J{!ÄiÁ{H/pE9©Æz‚7ø¬ˆµ@[`¬â­öÀ?FÚ.Ö à…ˆè@;Ö8ôA»ÖÏ !.éÊGÐzµïBD*Šr¸lB<а.Q<ÁÚ~ØÙ»’——@AA!Úì» j•¦^ôÒÚZ…õ¶Ÿeûhe%ÿKn=66ÖXZZÊÀm·úÆ&/Ÿ3g’ÈËË«›Ë—/ÇÇLJõë×—š]Û$''sêÔ)FUkßs‡FQBBBjÄ^aa!;wî$<<Ü$ñZñññ´hÑÓnLÇ Î Ü¿?9£uqcXO¶D;]Pr{pÇw°k×.T*þþþr@ (**")IûƒiFFF£xO·ânx ð„N€žV¥9ÐxÇ ÍF࿊¢tBÄ¢ 7‚bû§ ÚiÍé0€â´¢(‹0˜~­hïºê°®mº¢(ÿA;ÍÙ9€ xT‘aÐ>RQ”ÝÀEQü…IòcR3åac“G`çÎØ;ºàß^OÍ»Eûz×ßa#î.y]_ûiØG‰äV“™™Îõ´óØÛYËfn!>>ÞŒ?€ß~û³Æð„ €›××111(ŠrÓôäšäÀØÙÙÕX`/FæM›:thµ"6gffrùòelRû„¤$&.XÀ…_,]Ñ¡Ÿ÷îk×òÌĉòá¿g”Cp[1`ÀöìÙƒJ¥¢C‡r@t¸ººrï½Úä=qqqRW‘mhÝ|aÀ*nx| ½¼‘h=¯ýX´A±rè ìvÕ=K»£Ì¶?ÚÀ»Ê6BìU%¯Œ`î dSŒx-rôÿ>)‚kÜm@‘¢¢<Ý%£Ègù,ŸÅ3Ø;¸áë×…„SquuÂÊR á†ÎªU«J `=z!ìääDppp³¸¸˜mÛ¶@ëÖ­kí½íÙ³www:vìXc6·oßNïÞ½qpp¨–ŽŽŽ6Yü/ÿî;Þ%yùr°+³TÆÖ–ä… ™õë¯lš>oß|³Z©£$’†JŸ>}Ø¿?qqquÍ^ÒÈE°"UQ”£:ŒNgÿ4Û }Eù ìBU`Z?‡çª‘º+e¶*h Ú Wz¼Ñ®S¶§t0¯²øÉË©v(.Ê“ƒ ‘4Âϵ«{ <š´$ãúyÜÝÝå 4p&Mšd4J²^Õèñ222صkƒ 2ypUصkÍ›7§mÛ¶5fs÷îÝøûûãååUmqÞ³gO“fSüÉ’+ðéߟ¹s8Õ¹3×~%9™îK—b£[¿}úêU{ñE~øüsyaKnKBCC9tèG¥[·nr@¤®1¶/éÖà¶ !Š „rž¢(»€Þ@GÀ“ ¦BëHÔ=71RW6ÊÃ%ÝóM!àtžßf€>¯Á5´Á° !Bå%#‘H$5C~^:M<}8{&Œ§¡Sž6µÞΜ9ÃéÓ§kuý/ÀŽ;hÓ¦Mz™;†““mÚ´©–sçÎaggGÓ¦MMj?fäHƤ‹Š‹‹ã±åˉyøaZ¬[ÇÆ×^3Ù–Dr;н{wbcctß}Ì{é% †§ç÷-[øþï¿ùnÉ9pRW*‚§£]—ëñ€W‘À»ÀhƒíŠ8ˆv®]O#uAe¶OyÀŠ¢(¢t4¨þ€ /V% TÅU‘YF4?Œ6"ôwºÜÅB^V‰DR9BhÓÙ"„Fˆ¤„‹/–›ªdïÞ½XZZÖêú_![·n¥S§N5š2EŸ ¸oß¾Õ²SPP@|||•Ç ¨¨ˆ .pOHûŽ§ÍµkRK<………lܸ‘]»w‘’•‚…¥ÎÖÎô é˘1cªù¼K—.¸4kÆè]»Y³†ù“&1Ð@ ÿ±e ~ý•c­[óL«Vò$H\)»€"´ë~A˘~x8'„8YÉ?¬LEQvw+Š2D±M'R]ж2l›£(Ê'ÀËÀ\EQæ !„¢(>À‡FÌ‚v*ôREQžB¨u¶ƒ€•h§n/×µ½h¯Æp\»žÎÑ£qdeçèD¿öÆU>Ëgù,ŸMypvr&((w7ù_WbË—/çwÞ)UV\\\"Lksý¯F£aË–-tëÖ Ÿ³[6puЧª*{öì¡OŸ>„„„°xÖ,î¨áµÚI]³öçµü¼ëg<ƒ=ñºß‹P?íäͬ”,vÙÍŸïþIw3_˜ivV‚/^}•à?æŸ%K·v-AëÖq_¬Þ·Ø!CÈZ¾œ³fñæoÈ!Ep¥¿°æ*вmÔçcQ•…ÇE¹„v­­©‹RîC›ów£¢(ëЮ¾['¸Ëò6ÐK'§(Šrè†6h£A—ü?ÖÙyVe3ÚàZ#ucø¸ÞC,„Pél Våð?!Äg ñâHOÏäà¡£x7m‚ŸŸüuK"‘Tì¬l¡(Ê †v òÇBˆµµÝEQ&rsäêgÆŒ—)È¿ÔÚÆÆ””Kx6õBUT@zF&¿ÿ¹UQjÍ¥Ðׯ§ãææŠµMå_³gMÇÎÖV~¢$‰Db .$##£TÙ¦M›P©Tìܹ³Tù´iÓÌVµyóf†jT<>|˜0iÒ¤jýèûÝâïh¿O7‘ì$þê0¿÷þ®]»V;0ÀÉ“'iÞ¼yµÄ´>–©h4ºtéO\\4RKê7Š¢ðàýòàýÚHÑjµ8€““S•0À²Õ«‰Ÿ<ÙØ‰1‚Ÿ7näžXó/‘"¸ÖB¬T%môé¾haíPÉ4í$W'¾k77Wò­o¤±±s"// WWWŠ‹l(V©pss£¸Ð µº$]3EEE¸º8cc[úÆàì¹+7coLlµ§zI$’ÆAxx8Y—ä@HLbÖ¬YFohËF‡®*Mš4aæÌ™,Z´¨”>xð sæÌáû￯–NLL¤ødq©²æ—›³ýíŒ;¶ÚýÏÎÎæÒ¥K <¸Ê6®_¿Ž……nnGh?pà+W®ç­·žgÏžCdd<Á'ŸüÀK/=Ì»ï~I§Nm¸ÿþÑò¢­233ùâÃ/8s”ôôt»2iê$ºtí"§°5pÌ„„„ðÏ?ÿàääT¥”g*•Н¢xʸv+VàŸ’ÂéV­¸òÌ3äŽâ矗"XŠà%„~»…Çÿø½¶£R¾“ž–\²íäâÅáC{éD~n:§’èÝwyÙW).Î/iwòdmÛúáèT:@È¿{ŽÒ¯ –%‘H$’úO=J„0À¾}û˜7o?þøcµ—ýøûûcág¡ ©©ã¼ëyÞœn~ÄåÌÌÌRk’õkŠG®žðŒ‰‰aذa•¶ëܹÿ}šÍ›—"ÄA ~cÕªGùî»Ó¤¥e²oßò‚ªþúõ/V¾º¿~xàAiˆhÁüŸæÓybg^{ï5,--Kí¹5’£Ç2ã…¥Êþýg®^»Ê3>#¶Hdd$öööfÏlX¶z5'Fޤży„²ä¹çhÞ¼9 IILŸ;—//âúõ“Þ`)‚%‰D"‘Hê§Ž'66–ü±ZÓ#õ(ŠBÄãüžñ;ž‰ž¤¸¦à—?:šl#zo4_ÿþ59¶9890vÀXzwïÍŒ·gPìZÌ/û¡k³®üßóÿgvÿâããiÛ¶­IÁ°ìíí?>˜eËîCíZìÄÄÕ@>wÝõ&~~­åÅTM8Ì×Ï}MðemnæL´ËÕì°£ó•Τ,Oaå^ïõ’}¶ìØÂ—Û¿Ä3Гù‹çóúËÚºŸ~û‰õqëqðrࣕñÂ/È®€aƱaÆ bV «å̸!CXú ´lÙ²¤¼¿?¿-^Ì©„^üè#ÞŒ•"XŠ`Éí„«{ 2Ó/š\^Õv‰D"‘˜Jrr2+V¬(U¶wï^¢££ùÏþÃܹsKÊ}||˜6mZ•62Œ¨­QÄfÆâÑ΃‘÷™Áù‹?¾ èå!B~üàGþÜü'ÝfuÃÚN»Ô(qK"»÷î¦oï¾&ÛU©Tœ9s†Q£FUÚ6))‰>øèè+X[PTdX›KBB<2‡iÓî¡{w™ê¬ª,x~—Ë­÷.öæØÚcœ~ò4í;h×™çæåbí`M‡ðœÚxŠù‹çÓ©}'ÖÇ­§ç3=9µñ¹©¹rp+ÁÒÒ’ádziÓ&ÂÃÃM^Æwlûö ƒæuh׎¿–-#''G²Á’Û]»º›¾æB `‰D"‘R˜üüüX¸paÉv||<¹¹¹8;;ceeÅ‚ ª··DØ<·ï Þ a¤ÂŠÿ® ßà~&Mµ>tøÖíKߌ7Öœ˜•1ÚÝKþCüY½dµY"xÏž=ôíkZûåË䯿â¸|yEEþej›pêÔ=äæ®%#ãS~ûm…¼H«À… °:[ù­·ïE_~þögfÍ×®—¿+â.Š‹‹Yÿ©VôžŽ}J¦GKLÃÅÅ…ÐÐP¢¢¢ä`ÜÆHO°¤FÈL¿Xâ 6|6·e=Ååy€ ëäTi‰D"‘Ô”Ö¯‹-,«:a„³(U–g—GûNíMÚßÉɉö.í9ñÛ Ú‡·'9*‡+Œ»ë>]Gçû;““’Cü·ñ|»ø[“ûµgÏ“‚abiiIttju3\\Þ#+kMš¬"++sçË¥O/q‹ûùp1†¦~@ѯEt<בï?üGGG“ì>}???“‚a²wï’“÷3uêZ&NÌŽ0dH<‹Ÿ$/ï4«Vý ?4Õ ¸{09>•¯M±H¡ÏÐÒ9õA°º?ÞÓ‘§‰ù<†¶CÛr¥Åæ/žorð›0öÏ?χß}×`ÇR­V3ãñLê3‰ÏV%mÚhŒ8yò¤¼8+!55•E‹±hÑ"¢££Å{²Ò‰Á–ÀFÀ¸ (Bu¿-Ï€¯ Ê'¯†s‰Ïßä%^»Èé͉DR¿hÕª%?>€5Ê÷8nܸrëôáêòö'o³mÜ6~úì'‚Âyç™wPÅ,ݺtãý.ï—*óôôdîËs¶ÿòçŸéܦ }ʼ•JÅ»Ÿά§Ÿ6û}„„‘œü[·n%44”uë†1cÆ—ôìÙƒ^˜Laa¡üÐTÀ¹sçØMB|<ÁÁôéן’zÚ oGÎÊœ4å¯Mé–Â=ï)ÙþíïßJÁòMó¥•u+b>¡×3½8µñ ?\ȬÿT¾.8??ŸÔñãÉ #õ¯¿ìX¿9íMо.¢£º#Ñ‰Ñøvð%|lx®ùêå¾]ððð`êÔ©€6ïxc@ï î¯ÀË…Í…ýð{ûÌš–)û ˜ H×càÌô‹%‰D"‘Üz¬­­qssÃÍÍÍäH© 9sæÔÎÍLj!|òÓ'L6[[ÛZ•Šˆ xõÃB;;==°Ge}L M==ͶieeÅ… ðóóÃÓÓ“·ÞšFÏžZ‘­(J¤”jŒäççóÎsùùƒé§á?}‡â“’ÉWo¿Ë',C­¾áWš»l.É}’ɶȾɎ5ýòÊ'¯”º†)Î+æÔÆS´LiÉÌfòÐýÑ׳/û>ÝGqn1ŽŽ·ÍxstûQ<ÔÚzþiþ¬þtu•í 8ØØØF#îjKKKÜÝÝqww¯vnõú&‚½uÏ»n§*„Ø$„X(„H‘—wõ1\\™ –H$‰äVÐXnàîˆÀ­sg–„„0ø™gøþ·ßèóÊ+ì]²„ =pqq©’Ý“'O 4÷üóSäSù½$OL~§Œ\^¼ë^º·ïˆ³ƒ}:waö„I$Çä•—¦—´·³³cõ¶ÕØ[ïÇ<>.××Reùœ={–Ž;VÉfUsK°ü}B>/´ÞaÝl°¸ìç€ÇE™(„ب¿ö€G{à^@A;ÅúC »®N­{Þ ´EùXœr€EQÚ !®ëúÑøí”íƒÀ´ëy#€'Eé$„¸Œvº³~þ' ìtïÑF÷Þü€+º6}t}ú8 8ë¶uö­€Ýë±@?]ÿô_@À^]»-€5ð>ð€îýŸ½6ôü–÷ÚÔví#‘H$‰äÃ;t`kl,téBîý÷Ðò·ß˜øŸÿTÉ^ll,#FŒk‰Çb™2áAºû·gù¯?”áå¿þ€G“Q<ë§oKD°¡ð "((ˆ­[·š}lOOOÒÒÒð¬`êû¡S§ˆš6 |}oª;ñõל0Øv™=Ûì> 4‘?|…  ®u8æ‰xjJ¿gÇTG._¾\e¬ÿqbРAlÛ¶‘#GÊ‹»‘c!„ ,×m¿&„¸C¥(JO`>Zng!Ä=BˆpøJQ”²smîþpz ! êî‚„Ðzr·é„ð2`”"@ | Õ†?m½¥¸ƒ„½…÷èû7€«^˜ !æ£õÀ,Ò½—#Bˆ;€$ KWVYä€ñÀ{€·bÐV'’')Šâ§ÀÀ¯€è+„+„¥{OÝå¥%‘H$‰¤¶øö?øìüyhÛ¶TùÅI“õÚk$ž9c–½+W®àíí-Ó ™Aqq1–깦Ÿ¿û>®\¿Æï½UJ(ÅÅ5~ü¶mÛVÕ½™»;ï¾Kð¬YÏšE·3°>z²³éðòË%åÁ³fáif4ñÿÝÏÑ£aÌœùEŽ{‹¶-H'½TYGMš4©¶mºwï.sß"¸‚ºÿ¢õp>/„¸ª/ÔM“^ø õšr\±X‘-„Ø_¦n¹"Ng£ؤÿBl2h§÷.·Õ‰MKØ|Vñ¯A?TÀݦO K°P‘¯;V*ð;Z·¿®M´Ó·—!Žô+­gY"‘H$‰¤F)((`Ò«¯òŸ‚’Þz ʬqVwìȾ¥Kúùç|úý÷&Û=räݺu“|‹°´´D£Ñ˜µ³³399§\zöˆ]¾œC rháBV?ü0Ö±±žÎØ-JÊ-\Èóç›uüW^ùšŒŒ©>Ü#GŽÕÙXµïÜžŒ¦¥ó(§Ú¥âkÄÛ]¼¼¼hÑ¢‡’æm*‚;ùBˆÝFêôs6Ë”Ÿ¨À^|™ísºç²?a¥êžmu¢R-„øDñ©¢(öŠ¢tWåQEQ>Ö‰qÐNîIN”]ûkÐ_}ø=}N‚Föß./-‰D"©EEEr$’2L5‹}IIø8@ð¬YN›†¢óú6ýþ{­Woî\Ü5ÞY¾œŸMHƒ“––†‡‡–––r€ÍÀÚÚµå[iýè•3^ãÊõkü´óÆgaUñÓ¦M›rõêÕ*‰g•JU¥þ_MM­ò{ÿ÷ßý9 X“’òXzƒ D–{V©2­''§;F›6mBÈÂ˜Šæ=ø£ >e }y«2å-à<_NyÙPneÅ'Š¢´A»Öö.áÖc\ ã’f¤Lß^Ÿø¯cÑnÈ•Æ|Ñ„‡‡ËOŽD"©uœ|ö<;"4r@$ß|ðA©íÔÔTz|ñfÍ¢SL ;ßßl›‡bðàÁrp«€—ÎNJ êÈÁRS Ÿ¿û¾’5–66 ‰¨øÞÉËˋ˗/—Ê+l ­Zµâüùó´iÓÆì¾Wã‡F­x‰nË®Ä\ÕµÁ899ae”lgggZumEþ©|ì±çŠÃÆMÇ®]»¸ãŽ;jìÜöèÑCæ¾MEðe ¼3®O©”^¦¼¢yêªtPQG´A§Ú   µ ˆB¤ê¢?1¦u‰þ‡€æÀñ2uú“’•qI~r$I­bccCÇ€.ØÚØP/E°DRM›6Å?- §O3¢C‡Z†|÷õ7\¾p—_}å¶ÿ)SŸdòø hÓ¡Ô`½žýùǨÝ]xwÖ‹ÚiÒ¤ ÇŽ™?¥¸uëÖDGG›,‚---±Û¶ »sçðôð 99???³ŽièÖ£õÏbãÆ̲uåÊ–/^‚’KF~!ÃxpÊ#•^ï~õ.O¦>IÁÙüïðgÚìiy7ÐOeö*c' TÅVQXýúM÷CÁ Š¢lBü£ë×À³òÒ’H$’ª#§CK$¦óÄÝwóýºufO¥ÍÎÎÆÖÖÖ$»iÃFRR®ÐÂ×—óçÎ1¨}g¼]ÝX¾l¡½{sîÌœ¹küøÛnüxuþ<Î;Çî¨h¾ùóºöèÁäÿ{ѬsR àääDnn®ÉÂÏÐkliiiÖ ÄÆ¶ÁÐ ¬'%å1Þxc6ë×/5[üêéHŸ€@“Ű^ë8®(Êv!ÄÕé”B­(Ê´Q£·+Šr ízå@`?Ћ*N—H$’Û9Z"1oooŽîØaö~û÷ï§OŸ>&µÍÊÌ$)j/Mr°ÎÍáÎAC±P.Dí {Ïa²¯^!³¥×m}|}}ñäK¯¾}J<­æ öln€'«Ý;00'Nd²€nÞ<‰k׌ Ò(Æë_î¾ æ¾IöùKL¿ëÞ›ÄoY ÅðƒãÆ3kÞ\‚{ô¨´vvvtëÖ½{÷Ò»wïjO•JÅ”éSÊp·á¥êüBýJ^¯ûiYÙYÜq—ü2j@èƒL]@å8­ŒÐ{x@Wÿ0­÷÷!Ä6ƒ¦9ºý‰âd]]F™ò«ºò eÊKÙB¤£^üÌZÿ'„| (Š¢è£IŸžNhó ÌÖùÜXÓ|Zw¬lÝvnÛØ4ï›ÆH±æ¢ÍC¼¸­ S^b‰DR5 ó3)È—_£Im——‡……öö¦%ؘðÀý:;ÐÉ·5“¢]a6!ìúvîBÜõ«<ûßÿÊÅ´ÔEÆðòò"%%åÿÛ»óø¨ªƒÿãß™L†Lö –€”Mv×¢ËóTZkëÖZܵUQ´""àRDŠU»ØZ•¢O¬ìð(ZHX4İ%Ù·Yîïìûl@–ÏÛ&s—3÷ž{g2ß9çžëÕzÞŒ,]ýJVV–ÛËhÖ¬q²ZßG7)i…n»íúf×½öÆT`Ò_6¯Siyë2¿;vD½U£ÇW¢×»÷îÝ[‡Ã£ýjÊ7ß|£î“»+82¸Åå†Þ0T«6®âÄog,UaîcI7µ€aHjñFsU-ÂS›™÷ޤwš˜¾Nµ·Zª;ýÛ†e†±_Ò5SþÝML["iIƒi'%ÝÜ`ÚbI‹ë<Îja?>”ôaõc“É«Êé݆aÔ»±šÉdz¤ê×,N1ðÝ¡³kÇŽ5j”Gëüüчõú¯çè7?žUoú{k×è'÷Þ-“ÉÔnë#''G&Ü%‹ep½é§OÿK]»Ž©7Íl> ÔÔ¿7[Vpp°Š‹‹=Þ†ØØXíڵ˯;¹#**JyyyŠŒŒtkù{ï½I¿ûÝÚ³gbÍ´  êþû§·x MNÖ¢eK•–šª'_}]ýãt猫eëÒ¥Qø}kígê1 ¿žym‘W·>?~¼V­Z¥Ë.»ÌëkÖ/¼ðBÍg¾úNî« ° f—;ð¿4câ ÞTÚc†W"$­¯úwqÜM•­Õå’6SMí‡ar8œ 0(‹% ]ÿáÚ"ºCgOYY™œN§ÇáâŧžÑ3×þO£é?»r¦f/zU#Þ{ÇãQ¦ÛŠÒÒR•”ÌÐñã÷4˜ó„Nž|±Þ”žh±¬àà`•””x¼ 6›Í«õªtvv¶Ç]°%iذaÚ¹s§&NœèÖòÕ­Á?¼U•ëÄÇ¿§[oýƒ[ë7†åžÔ¢O>R¿á)^‡ßÚ/*Ìš2eŠ6lØ Ë.»Ìë¿CoÏ{[sÎÑ¡¬C KS×”®²uµétÚiåîÍU˜%L·Ì¼E—M¿Œ7Bp§qPÒ?$]m2™¾“ô…*ʺ®3 #jjìv‡JKËÙM]c"Ü^¯°0Oy¹²Ùº(0—àO†³Te¥¥Tàg;wîô¸øÍ×^—µ¤\ïo^§Ü¼<ýêG·*0À¢ßüíO µ«ox”žýÕ¯5÷¥yT°äõ—ãÞŽ5`ÀíܹӫìMh¯Û¼V÷Ü3Eiii6Ìýû× ÃOýv‰b{Åëî_?®ÀÀ@Ÿpµððp%$$hïÞ½JIIñªŒÈÈH-~n±JKKµk×.9vD‡ ”Ð?AC®¢>}úp²‚;Ù‡3Ã0L&ÓTyýñKºQÒaI”ô·êÑ¢Ñö9Nååª_¿!r.•—»?xxpp¨BBÂô}ÆEE†Ëb  BmΑ#GÕ»w¼ìv»JJJîÑúS/¹X£ÆU||¼6oÚ¤¿l\§Ø¨(ºr†FŒ¥cÇŽÉÀß@_ìÅb‘Ãáð¸EÝf³©Ô‡/ ”™™©„„·–¯Ûœ”´B³gÿV«W¯VJJŠÇ_ MNÖ‚%¿­yüùçŸ+11Ñ/½ † ¢µk×*>>ÞíîÞÍÕï„ 8±;3UàÓ\±aó ÃmFŒa# øŸÜ¾*"²›\†Keeår8nÿ+++—aHá1*(,¤2mŽËåÒèÑ—*++K»víÒH7FÙm(ièP3F={öTL·núwö}¾w·.»êJÅÆÆjÔ¨Qº`Ä*»Š·-Á111ÊÍÍõj]«ÕªŠŠ ¯Ö8p ¾ýö[Ö¹÷Þ›Ô«×Üšk‡ ¢ýû÷û\wãÆÓ¶mÛüv,¦NªÍ›7Ëårqb¢-ÁðIDT/åŸ9Öâôæ–imÞ¹àt:•Ÿ—¯> Ckn`,o5ðÞSOÝ­§ž’^zéU=óÌ6•—O¯3÷Œ.¹d…V®\æÑ@Ž ôøZWIÚôÏM’¤)3Úî D•u±U11õ뤰ð……-«7Íáh½»oXX˜[]‹7¯Û¬òœre)«fZ®ruFgêMs¸Ú¸j£n¸é†Fe L¨….ÔƒO=¨is§éæ+¯÷Þþæv]›|­n¸æBb©÷g7™LŠ‹‹ÓñãÇÕ³gOŸÊŠŒŒ”aÊËËóéGu%$$èðáÃÊÎÎöê¾Ê ç$PŸ+Þvm¦;4 -úÇ?2ärMVÏžOëøñçû–ŠŠúè»ïº«´´T¡¡¡n—•ššª¡C‡z¼ .—K¯<þŠ$iÒ%“¼ ÑçB¯^½”–¶¤Ñmt6mêÞhDa‹å¦VË v«%ØépªÜ(W©jƒg…*d—½Þ4§œ²8šÿØ>0q cuòàIÅ¥ÄÉQîPήÍ|x¦W!Ñ×®ïÇ×_|ás–*[ƒ×®]«Ë/¿ÜoÇû¢‹.ÒªU«tùå—+007 B0pî´Öê{¾oŸ@{õïïÑáÃÛõâ‹ÈlNÐÃoÖÅgé¿þ«ž}6]Ë—ÿE¿üå,·ËËÉÉÑ…^èñv¼µè-õLíYóû=ÝsÖöùÃ5kôægŸÉÜrð¬¨Ð”ÁƒõëŸý¬þ玈ˆFˆ……yu›žàà`·ZT']}ëS«'Iúô­OuÝ-שGgeŸÿ“‘¡ ¹¹Ò“OJ))M/tú´ô«_ɲo_›8NñññÒɵÕ%s CõäÍÕ×\Ñä¼—^IGºÑ Ëiû›Û52l¤6<µAÓæNSßÛûjÖC³´|ár·[<Íf³õ]F†¶îØ!³É¤ÍœéQ–¤#Fhýúõš1c†Ïõ4xð`­Y³Fýúõ“ÅâŸø¡^½z)55UÉÉÉ•_@œ<©œœœšÇè¸ >‡ÚÖ¦7\¦zôç–æìíÈÐt‡´5&“©¦ëqXX˜æÏLcÆŒª™ïÉõÀ{öìñ(”––êéÙOkÖØYºàÛÚ{Î^ðíú队êéÙOû|Ýi³^xAzûm©©™NŸ® ÈóæÉÚ†nóô»/hwŸÝ2Ôôç‰ô˜tÝúô­M¶TWTThíÖµê;¥oÍ5ÀþüA-|t¡6<µA‘ñ‘ÊÌ×Áo=»ÕPRR’æ¼ñ†nïÞ]¿8pÀ«ÛY,…‡‡ëôéÓ~©§1cÆøu,I:t¨²²²”——§Õ+Wë®Ü¥ßLù½ãQÞDÁhÏfÍú^­çé½wlÛ¡ÿ¡ ^+ШÌQ²©v=›lsxŒ ^+ÐÕî֎m;ü¿£Ò‚Òòåõƒpu~é%©‰0éOÅÅÅúäïׇü“æ<ö„V|ø‘òóó›]¾ÿ€þzá_PÚ¸4eÚ2U¬b•«\G,GôŸ”ÿè†7oÐÌÿnúÚ^«Õªw^yGŸÿüózƒ`U–õé]Ÿêž«îQòPÏZ6»wï®â’iÄYúõóº.FŽ©;wú¥^»víZ3H–?M™2E6lÐò§—ëÂÃjЩAÊù(Gk׬壣;4:½s€233Ô§O‚W÷¢ ´(33Cæ*Сddd¨Ÿ!(ù‚dM¸j‚ö|²G¶ïm RP½ù%*QFï ]tõEJ¾à,u9­Â<"Ýq‡'=ñ„4þYÀ›6lК¿~¨FOÐâÿw§L2)-3C¯<þk¹ì]}í5M®—2¬V«‚‚‚TPP ððpŸË;v¬Ö­[ç×A²UVV&Û÷µ_Øô)裷—¼­K.¿„7B0Ðñ˜Í&…„ëà4EGÇÈf³Éápÿ:)‹%@EEÅ:x Mú'Èl6Q©€#==]_|±ÛËÛl6=·ø9e=–¥gîF޵%T°”ž)Ë%-}c©âââÜ*ï¦ÛnÒ’ÅK<œ* @zùeiöl©¸XZ¸ð¬àmÛ¦'ù þüäsê[» ¨Q]uË Ï(ÀbÑW_ÕÌg ‹&Mž¤I“'—cŸŸ¯S§NÕ†Ã:#y=zT!!!5{õê¥.]º¸UîèÑ£õÕW_iÚ´i~ ¬ úî»ï”˜˜è·}ß¶y›ºv«ý|(³²¾Ïâ  #gªY@@€"##®uk×èàÁƒr¹\nÿ;pà€Ö¯[£®QŠŒŒðè+Ú²òòrY­V¯nk§e/SñÈb9«þ+U¢e/s;KÒ¾ô}Úµ{—·©N*+“¤cgw¬‘ŠŠ ýqÉR­}ù ½ôþ{ú>»6@eŸ>¥§Þ^ª•s_ÖæOW©°°°Mï[çÍÓØµkkþý#9Y UþäÉúñ‘#5ÓG¿÷žÞ^±Âírƒ‚‚d6›U\\ì—íLJJÒÁƒ½ê½×œ3GÎ(RõïCl+·5ºe:Z‚ÑéÛß»—Lf“¥ï×î]ÛÝ^7<}ZzüñÊ.ÐaaÒ£JwÞ)%%•ºÚ½{·¦ &[—.ZtÿƒšýÆB=vóm ²ZõÔÛKµèþj³éÊá#õÕ—_jÆe—µ¹ãmŽˆPî]w5šîˆ¯?}Ï9÷ìñ¨ìÑ£GkÇŽî¹ì­1cÆhûöí?~¼_Ê p6nÄtª¢¢Â/ÝÂAÚÞ›¾Ù¬Èˆpu±ZÕ-&Z¥¥en¯k³),,L6[L&ºB:Žœœ9Ò§2ºØº(vz¬L&“†&õ8XÆ_¯¬4»¥Và—^’"«Z÷æÏ?«Aø›m_몃%IAV«Ýÿ x}N§^ýùà ­XlÄ€Azã« m2_3t¨‚¼æñ¿wìÐþ•+ñÅÿ(¢[mwá)·ßîQÙ!!!r¹\*++SPPþùÏMzï½5úóŸ_ôj[cbb”––¦üüü&GÍö”)ܤ UȪÚÛ@•ØJÀ„` c3™L ¶Éf òè–G&“‰ð èpN:¥èèhŸËq:zåW¼Zw͆5ŠûaœR·§Ö„'·ðܹ•¡·îuÄ•Ó{¬r°,?³«´¼¼æq^Q¡\.CVK róójBpiE¹lÁ!mò˜ß>s¦nŸY; õ/çÍÓ~§S–ÒRÍÿå/5lØ0ŸÊ5j”vìØ¡‰'jîÜ¿)==N™™‡•ÐÇ«òƧõë×ûe¬ác‡+ueªâ+âë$wÞ:2® „Z³Ùìö?0 #Ú»w¯RRR|*#??_‘‘‘²Ùlnßb©ÚÂ% •Ý-[Q½£”<+Y7ßw³rss[_ñÉ'+G‚–¤3gêÿ+(¨l!^´H%-ܲÈ£ÇÕ×÷Iª½xÑýjÑýÖ»FxWúAž0®SžSááá*//תUkµwï$eeݯ‡zÓëò¬V«úôé£ôôtŸ·ínúö¬½V»@šqå Þ:0Z‚P£úÞÀ¾vMOO×€p—Þ_ñ‘Oaí\5t¨&?ÿ¼\ê6}º_Êü׿þ­ôôKUÝ5+ë^=ôÐKú製.sìØ±~$ëÅß½¨¢^Pα½ôâK~¹¯1Á 9pà þø§÷%Iû÷ï§B:¹M6hÊ´iJOO×%—\âSY.—Ë«[+ý~éïY5˜Uõ Gf³YÓ§N×ô©ÓeŸo—Ýno“õ¯MÛ¾Ô‚çžWßÐHî?P‹vúVûs³õÉç«Õ×Ï-ÐgÓ­3gêÖ:×ûÃóϨ¢¢×ëL‰ô¹58&&F{÷îÕ§+Wê³V¨K°M?ûå:ԳجV«ž]ü,oMÈÎÎÖâÅ‹%I[·nÕ7^GíÓàÁƒôüÜ9’¤#‡R!Xnn®}`¶^[¶Ôë{×uüøqõêÕËãõªpõïØØØzóØfë±Gzé·¯ëĉÚþõ×r:œºò¾Yº³gÏNŽ}þùFíÝ;I ‡$òµ5xí?¿ÐßÞ}O““´äΟ«´¼LË–¿§·Šò¼ Ãh,66VóæÍ“$Í™3§Cì! “[þÛ%úàWs5oÉR=¿pÏåeddh̘1>•‘““ãS·l§Ó©€€€ó†¯ös+j{÷òË+”—·¸‰9‘úúk“Ç·;ZûÏ/ôá{дÁ)Zz×2W VdÓìknTqY)a„`T*,,Ô ?œ© ¿@ÃPE~¡úN½R½CÂõÊÜd6 íÙ—¦/Rrr²Çå———«K—.>mcEE…O­¾ÅÅÅ á>7mÅ„ µqã~9 è¡ØØ3nàÿÛ²EXºLÓ§èÍY¿¨ ¿ 5†g?ù„úöíËÁ! ³ Ó¥—ÎÐÅq}uá€5Óõ£K’ŽŸÊѻݫìö=}ϲ¢¢"…††r°Ûˆ'ž¸Sü¤ÒÒÕ«!Ÿêñǯq»œÜ'erêÛ½G³¸.[— õ‰é®ÔãGUèç[c¡ýâ>ÁÐìÇÕÒõ«UTZÚhÞ +þª¹ æ{UnFF†Ï£KÛívŸ¯ý-..&·!6›M×_ß_iu¦JJZ£ë¯¿Üír®¹áz½þ‡w´WeºwÙ«Ú¶oo“˹ Cÿß&ݽì5…Œªåý³†]p’h €?~\C† ñ©Œ“'Oª{÷î>‡àèèh·–u:úë_?‘Ýî¬7=--MGŽœ®7-22\×^{Ú [ƒ=m®¨;ï¾[ö;îÐ{o¿­?,{U?žt±Æ%¥Èeúû—›õùÞݺµìɇ¨x‚ -š7_wO¿¢Þ=m«ýêº驇ÕÂ7ëq¹†aÈäF7ÕÖBp?o'äIwècÇŽiöìíÊɹ¡ÁœÏ$]]oJïÞo‚½TÝ|à@šœÎ¤ªVà7½.¯a~ï­W唿  ¾‚‚}öÙgÊ5Jýg»Ê*ôÜM?Ñ«ÿX¡S.»œv»öï߯={öhذan—{êÔ)ÅÄÄø¼}yyyõn—äòòrY­VUI£Lm4ÍjíÆ äƒêÖàÌÌ©^µ·†ï¼ûn*„`4®õÿ·¥æñü¹Ï+óD–²ÊK4ïµÅ^—›žž®¤¤$Ÿ·Ï0 ŸËðõ^Ç8;ª[ƒ?ùä]ýûTÁ8÷~zÏݺjú%Zúîï}*§  @aaa>o¯Ý©ý¤qv<ùä,ýä'?¤"@Àù£ù¯.Ò…#Gz]†ÃáÅâûGËüü|…‡‡Ÿó:0ŒIgL-k4Íå*ç„ñQPPú÷ïKE€ üÃ\{-eiI·L™6ͧõ=ªÞ½{û¼'NœP=Îùþo•äh0u·¤eõ¦¥q²„`ЖpÝàÛð1p¶dffꢋ.ò¹œ“'OjìØ±>•ár¹<¾&84t† îi05OÒcõ¦„‡ózÚ;F  !ðâ|±Ûí~é]QQ¡ÀÀ@ŸÊ())QHH!þW\\ܦBgaa¡Û÷@]¡q®:tH ð¹‡Ãás+°TÙLЮ €ONœ8¡aÆù\ÎÉ“'Õ­[7ŸË)**òh®ˆˆ%&îÒ A×›žŸLõ§sÀB08ZšV`œKþ¸¯ou˜îׯŸÏå{Ô¡M›–q B0hËš ¹-à‚ÂBÊ=U¹~Y™NåæJ’rssµsçN•—sT¸Ç0 Ý÷ÓûôÓ{~ªØž±Ú´i“Ïe¦¥¥©  À/åØívॲ²29Syl»Ý^óû¶mÛtÅ3Á íhíIǎח_~%I:súŒÒöí“$ÊÈÐ'+WjëÖÍ~ÙŽ½{S•’’ì·ýògy%%%ÊÎ>¡þýûù¥¼#GŽ(<}šßêîÀƒøàC¿ÕÝê5Ÿ+"–×­[7]uå~+oêÔÉ ñßíx†¥¤øµîn¼ñúNSwþ>ïüy,B‚ƒýZwc~0Ú¯-rmù5lÓ°a)Ô—ç?Ë4p "£" Á ý‹ŒŒP—.V¿•7`@¿nŸ?Ë ê¢^½zú­¼=zø÷XøùfBBŸNSwþ>ïüy,,‹_ë.::ºM×?Ë °XIÝyyÞù³¼°ð0…†´ÿ{p›ù³è,h š4i¢¢¢¢¨ˆ6àš™WS  Ôa ÒŒ—Pm@Jr²¬Ö@B0hÿš1çÇèÑ£¨Žê°Z­>|Ñôîß!öƒîЀNƒ @€ !€6[$€Ù‚#k~/-É£BÎqÝSçœ÷àµÀk ÎÓO>ˆžŸžà¼çµ^ þCwhÐ,>øS÷¯ê¾£!: B0p ]B€¿„`ÚÆ’Z”VàóSïÐVÞ§:Òû!´ÀÀç§Þ€|vиýá‡[•Ú;Z‚@«‚pþê–øs¯´$nê¼Ðÿ‚@‹aÔ=õŽuß‘ÐÐi‚„`Á‚ @€ !‰-8ÒïËzRf[Úß¶ºÝm¹>¦X¨€Î$KKò:TvwŸÚknËǬ=œK@]´tð\Z’×èßÙha=×áÊ›íjk­î>&B0ü€› ƒtcÐÑ€°\Œ>®þ½¹.Õ [2›jÙl®µ³:¤·ôü­msÃmmX~SÏÛT9îl¯;ë¶´_îìCsǤ©/5ZÛNwŽ7õÑÔcOë8Ÿh è䕺«¯Û•ºáô–~6ìŽÝ0øÕßðqK-Õ ·«á²Í=ose5õü­}qàî~5÷Ü ÷¡©²›ûÂílíØ¸»O-•ãÍv„`tš€Ý\@ód]o–m®¥Ô_ÏïÉ~y³/Þngà íïrü]À¹@whxÒêvùmêgðÙÖ´Ô:ëNwì¶r Üý µìαr§œöRèÜh ÀY › »R·•Ù\WeoFÐnkûÐÔ1pw¹æŽ•»å´—ú!LKA¤¥½–®Cm© w[= ÐM=osËy³LÃ::_ÁÍÓçuwù†]—½Ý?wË!ø¢= ;4@' ÂM †ÕÚHË ÌjiÔàÖ¦7wjkÛÑ\8km@ª†#7·^ÝeÜíöëiùîîCS_x²žn‹»ÇÊ×íÁ8ëAØÓåšû½µ íîó»; ’/˹3ÍÝ}ðv¿<°Ë“uÝÙNoöÍ×}"ø¢= ;4€ !B0„`ÚF‡À7}E%ÐŽÐ @€ !B0„`Á‚ @‚ @€ !B0„`Á‚ Á‚ @Fa³ÉápR|æp8DE€óÎB 911Ñ*)-‘ÕZ ³ÙD…ðŠËe¨¤´DݺES€Œ¶+8Ø&³Ù¤ÂÂBY9UxÇaw($8X]ºt¡2!m[PP]t\ £ó0›•™ù­¬A¡T€s¦KP¨23*ÀÌŸ"pîк“3™Ì  Ö¾½ÿQ·èh‡v“½¢ˆŠpVY»„ª¼¼Ti©ÿQß„Þ2™€Œs À¬ˆˆ……çkÍêÕJIIVŸ¾ýª#²$ƒŸüä'?ýüSúîà~¥íKUÝ¡€B0 ã ¶)¾WœÌf“Òö¥jÛ¿¾¦RœUáa¡Š‹ë¡žq± ¶1ø ã,r: WÎÉŠî)Ã(WDD¸¬V«b¢»ª´´ŒJpVÙlA •Í$“ɤK rs²&—ÓÑø•É©¢RÜRTêYB0*Ù+JÔ+¾¯Ò¿Ý'ÉPXX˜Ì•÷¶QAÎ!“ (/¯@yy§ÔÀÙí¥–êÖÕ¦gìŠé£Ð`+ÕšÀ%*¯p*.&¤éO†aPKœÃQnœÉý¾Þ´ [¸œNCÙÙGURZ,—ÓÉd–Él’ÙdªüÝ$™L&™L&™Í&I&™L’Ùd®üÝ\yuŸÉd’QõaÖdªù\[;ô¸©êJ@C2 Éd2d†êžzµ 2TU Œªy¦êejWaT.­ºËTΪz\5×0d&ÉTõ†Q³^åï¦Úç¬zŽÊÇFÕt—d˜TûZ1ª~7Õ.oÔ-YŸ¾¶@IDAT#ºIFÕ9o2™j.w­|ÍH2L5e2d2*_K•§bÕ2õæU=®ºfÖdªù­¶™*§UÏ3™j~Ö®Sùz4UÍ«~}VÏ«^°zkŸ²zùªÿÕ›W»Fõ Z’K.™ ÉUõb5\FõËB†á’ — ™ä2 ÉeÈ0I†Ó%—áªyÍ» §Ìæ…ØlêÞ#Vfs€ÊË ›¬óÂâRÊ/W…ó4¯K Y1QV…4qÉUTt!¸³†`ɤ@«MA5£²Ö‹oUçEÝ@Zý‹Ñ`™:S,j4j‚r͇}S½Çjða½öãyÝÇõ’@“å˜êÌ«}Þ&ž£N9õË­šR÷9êÌ« $¦f£C«ù£ö›Ú×Ñäãú¯)£™Çõ_[FÃ×R£çma;꾎ë=®»Mµ_$Õ{×{^£Îk©áW~ÔMÎMLkúõí2œrØËd¯(kæ½ÀwQÑ t‡îÄŸàe¯(‘½¢„ªÐipO !B0„`ÁhÃºÇ ñhúùܾæ~B0|ÂmÁɬýMB0Z š­áîqCjþµ¦›[®¥2š›W·Ì¦~z²>­Ç@çÒ-vp£iÜ'­ê7¤^ËkÃÇÍ-ÛÜïžÌkÔ›zÞÖÖoé¹tܼfÍѯÞtZ‚Q/dú£œ¶PÆÙ,@ûÀM!ÃïAØÛç¥Ë2à†­Àݡцx5º,ðGî;X9Ùê-CK0…Q_Zc½Y—Ö_g#7Õ%ÚdµÕÁ9寙Üï›   []_^ð†^~åšé//x£Ñz<|“e=òÐýM.×R-Ík8¨Õ#ݯG¾¿Þtw×on´oÁ¡ÑÊÊÎÓwß}§¸ØH%&&Ö<®Û%:*:AsæÌ¡Æ:8—Ë9§¬$¯ÙùMÓäãº?¿üò_-`Izù•7´rÅj–­»\Ke´V¾¯Û×Üú:vŽ‹TX¨­fY[p$-ÁAK-ÁþD++€¶€URtªfù¨è® †ÿ4ì ç3ge7îKKp'p®Z‚ -àº×ÛívuM¤%Ð1p\ldM>|ø˜ìv;!¸30™¨.'&&ÖÉE’Ùl!w.—“JÐ!å*.6R=c£Üz\­wïx™Ìf® î òóO¥y’T€NÁn·+00°¦+tŸ¾}MKpgàtª°»dwð…€Î€>&‡ÃQ•‰$»Ý%§Ó! ÕÓñZƒT({…C¥¥%2\†""B©–É$åç)Шظ^êbµ)P†þ?ƒ¼èT‘¸ÌIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/manual/html/_images/winwithgraph.png0000664000175000017500000015337014126044351022140 0ustar00jssjss‰PNG  IHDRUYÎ(ˆ^sRGB®Îé pHYs!R!RsëžqtIMEÚ(æ:ÆtEXtCommentCreated with GIMPW IDATxÚìu|GÇgövÏr’\Ü<ÁŠ(R(úm R¬·àîRh¡xB …"Å¡w×à’ˆ_.ç;ï—\.—“ݽ½Ýß›Oßcwv|g¾ûŒÁ×Ùñ"R$„D"CˆDNœÜ#XB|…\Fº9`Xú’æf!·>‡JcÒJqÉ .9•²>Bãi49ZÓçà"Rä%”`<\¯Í1’ÀÁ_éêì![='tCL!£` ýØAÚ)®¤BуÔ_NÊËv}€ô¼…†t"H+ ƒ²t¹NØîŠ‘+ý5²íQÞ¹kÄ¢+«ÕÓè5èØbÖs!Ú%I%ɈI.!êbÑ &¢á %1.ˆœP*î 1®Ó(9³ßÇaa€\.”Ò²Cˆ&º£8ÞÂ…CÇÖ79.t/ï¥ä ›ˆg\N°Ó}–øc¥KFìTrîM/½ § —1ô¤ÑÀJ…"!&Š :u‘¼–Ð$½AŸ™‘®ÓiMÿäŠä£zõœõt¨XB-Îïà⬈IüBAle²>Èæ ‡ ¶ŠÌü·“d…ň~ ñ*ÞºÜüºÆ?6£‚е‘ùÈ:,V¤Da ÃÈ „ zPèCˆIƒû£‰iµš×o^f¤§©TÊœµP(ôðxz*BBÃ$î»°¼±°äÆ„õعä!­‡i8¦i´ãsÁË´,i;§a–÷mÛêìß6,ÕagjÝd¿ÇB.~ Ð…š¢…¿¢ùeç’Â*¨h‚ùXJ”(Œq12¤Q¡ŽioÎ_X™/”JõßV6lXƒ6šù'O›6›‚a¼sgç–-ãg?žØ‡÷ÉÞ{òäIzzFv¶Š$I¡X,òô”GF–¯T¹ZHH"…¹Ž"ÅÏqÅdEнÑEÈj ­áÍÒ‚€€"Ú9¡:fXÔ, !´XÐ] «ÌWä÷ÑÁ»3ÿ˜¸+~*nfC%/JtHÉu)QÃBdB‘¸ƒ×²|ù:÷ïÇ'$d›º;„Ä€Dƒ!4mÚ1ÃFüÐÔ>ü Þ¿xvûÖõùùú5iÚ<(0Xáí­ÌÊJL|ûðÁ½óç/¦¤¦Ö¬Y«bdeÄÍ1(NªrGÈæÄ,È &´f¦Ñ‹ÚGŠ€…è Ò¶\*†@z,³Ý9Ç9cA;³n-fÙÈà *M·ˆ~•¦«þ UÁõz\Îá’’%«g…@Jư„î ˜ˆrÕ?ÆI’8ÏD~ƒƒpüÄëËWPxxµï‡5¶‹©/==ýÚÕË?mÕ²U­Oêšoy{{{{{GEE?{öôÀþ¿ôz£\æˆɱž‹ˆUÂL€E‰€4Ý~<(QZa/pº.Øís³á„6 tM§X]¤—C.ź['´ˆØIz©†?\{ÉYöëîÏŸ'V¤Da »‘Á„T®\A”KL$LM'„À@BI†œ¿ ‘ ÊMŸÖL$âÙ‹ªÁ@Æ=~øðaÜ—]ºÔ¨U›$…ÿÊ•+×»÷·ÏŸ=úô±Z£±±D!–(ìýÓ¦ûÂ.m^t,*.mº¡ÄÇùé†Ü¶”f7ΰ/qŸÉ„ŽYw%´VUxQZR0DɵeT[P^ÒAcˆ ËDœ%†/¹ŽèdbV²¨ð›ƒJR.)ð‡XoÑ .8ãp'°‰1¬§èÅ‹V1yñâõÈ8²ÿ•)LÚwïd@PŽŠùÈô!½qSúû÷M‹?oámT±Œ´7oܬP¡BDD$IÚ…P…·wÆ ïÞ{V.,<Ìuv¶¯œì´ÂÙUNvš‰ö¬Â2ÿÓm¶>h2å^4ÍÛG&ó‘Egro@Àt å™N̵ò@KK™ì¾üÐf \hhÑ4ÕЈ+DÔãOsÛs‘‹±¡5ÃaXȽäJܘ/`wÎŸË eµÓœöWò>° È›7ñuë6š@ë\½b2ûb[íËÁ²"ÐàØØñsç.D ÿ~ÈÒ¥?.YºbÖÌ©þ~¾&>±I …1ÆüàÀýVý´Æì¡ëC7E¦‹ß|öìù³gÏþyób,YËidpeÉãÑc´zdÐkŒ ¤LÜOfPáiy"Fx@ vøéxÁ' Ú$u:ƒX,ðùY¶P3Ô£çfX´¢=ûÃÐ&:É›ÿgê¼MóÿL“ü ,Ðîûü?Kš²µ§/È›?B«è)ìL’XF åj̓ˆUo?¦ù®8…n)/væÿ“:ÿgÿ¢‰%TìÆ!ºùi“ŸÅOû¦uȶÙÏÉËeï;%·¥W©D6w7¢V„æÿ!fvd«¤©|4;«ÈçÿÙ aC!Í›·èÜÙ çÎ_˜1}Jÿ~}Íb‹@¬=y¿dé óƒ&çÏ_Ü­Ë—þþ~nÆÛLµlùÊsç.|Þ¢ùÉ“§V®\ýý°ÁÔ™Ê ¢>Jy¡S ƒƒ% ?™!>ûíÝ´G2BâïÛDH«"¾ƒÝeH/…‚$¡*'[*•[Þâó «aƒ^1žT*ƒ†ŒE½4-ó¡™ç(>EË™™©FÒ8xð„ÐÂE˾ü²£¿¿…È ÌqxÙÚìë‰×ï%ßìxºåBÂ…`q€‚ÈÑaFÒQûK’F©DÒ a£»wïgd¤‘ö¥Qçܾ}·ZT´—§§½…Ê&rK¼MYÊ®cê-ý4_t5“UÏmºÌ37æ'ÙŦ ÑnAÝ󆛓a0³›ôoXÞ¤·«š“°ll´ÆdÛ6»Ñ2å.BÜ#F¡äíÿçlW=‡á2J©Ý]ø?à¶?›Á!ÒGÅ Di·DÄB)Ó®NôSjÎ7ª~ÑßrÑõ·ž^˜…E©=tü\k¶J-ü9&Ê•+Q$v1†Ý]ºôoß¾½Íq4¨ÿÅ‹§|}}(F­:ÓÞí£/OŒ;=9Ú'zbýQvw“ ¤çzŸ”r "ƒò0¤7B>n  G»výêí[ך4i$‘Ê »Ñj4×®]©T¹få*Uù8àÎÿ kA¹x˜¿ÿŸi@ån ò§ÂÜ#+òçÿåßrmþŸ“æÀæŒä²]R“E©,O؃TrÒˆ:t¼'™­ÊB%ÆÐæL0HáYÈRaÙöˆYuAÌ ¸cþt¹×DÔ÷ÿc²1×1+ôÂÖ>:û=9ÝYÚI.lqÖdA§óT m“™¡Uä°%¤’?öæÿQßAÒQì;wÞrïþlH‰Â##ÉœÌÿó*ž§?×4ÃOŽ~¯~?¿é,ÉI IˆóãEÎ$iÀ Aõµ0 ;zäxtõja¡a|À4]M§Õ&¿O¾ÿAý†MË—//àFƒŽÃ:½IÞ´>‹ù¼¼ Hòïü¹æ~æ»ùs]›ÿÇd¡Ÿ¨è6t“ìY ¨ìDãÄli5êÎÀœVÞRáWf­Q§T’бøJ±øàÊ oÉÀ¾N~ t¯ó(b)QãJdŠšÿ8• ,ùX±D•:dÄ‚€EÓ UO ,IUå£[S÷ØíÅ­‡@îˆC Æ>P" ~n%?À™þqËrý‡y39¤Ó,Ë™§|¢Ü£" > 6  €„^¯Ï½‘ÅÁ•oÊ=›Z=œçlj|÷¦ga¡ÈæG±àa ÿ裼` ¬æBY“”·r6ÿßù½ç»…ægaÁØ TðÈ%dâa^b†òcj1)¸@*‘U,ó3™ãS K-7»(”YæBÐ2Ž!Ë2±|Ö*›-Ê,FX°HsÿÌËÊ«bÖ¥R@J¢@æYVëÂæÄ‰§5[rB‹c9rË™ÎI²øô±ø sÛ°ümö°ÚrßÒ@ç»Fò¼Ö3ÿ³ æ­òC–ဂ<ÜüˆÉo„,ñ¸—Ô‚k ó;³ß¨À…rÊ"dñÏÜÿ7÷ëÐFì­Ï¶`ŒQÞÐìÈ`0 ëÒÌï( æp/Ys’p7ŒÐÜÏ,P«æÎØì‚Ç ÍWްÀ&ÐFöå÷k¹ 4 }AGÀjÉ&ÊwŒ@Ã7sà ø„Uâ…ë½@ t`T ö1eS ¤úñA}ë—L2‚ahk”-(ž‡”&¡AºÆJ–CšI€ *]ËdœŸœ8qâd·bm`1°ÇQ±bÒš ‰è&ľïˆY~ÚÏRĤ˜ ÌJ€ Ë(ÿ& feî ‘@ÏÑIj¡|Dtö³‹h¾pË€ò€t5ÊÅBR|€3ÅÍw-­;¥n¸8¸ ¸e,˜hC·×"ÚÅõ_ftfG®¹Ñsн 3Ìq‘¸\ðÝ•£YJø„?ÀürbXoPAþãôŸér Å;4wyróy±…>PèG‚B í:qô,rÂ/ï;sM¡!†T]¶ °0AÒöÑN;>iy^‘±[Ç‹8\àÜfàfàc™ù8ìãÈUáEZu9•X ´Õ¯"·ùϰ‹GvQŒòÐvŒÒóÈÂ9M_¡3¤‘pÐù| Ä KÙ;{Á©ÏÈÍ;¬|\o+3Z+J³÷ÁRbém ã®Å”s¹¿z"ÖžDÿÁ·‰“3þãô_¢@`ãtÈ Ç±j´»?½m¶‚ÌâIóyäŒ1'…£“(´Ð¶qò™pZJWg3u(¶ K'Ûû';4P3„±1·2_‘aË(…Ø|¹7®œ8þãTº:!h«\æ8öÌ”gYÁ"`A·ã ‹DèÑKÃÞ`cÆóš‹éÝaá9TŒ‘¡I{Å |l0_)Â>Àü8ÿ!º¦‡ÔÛòŸ*eªé¢ÕVd–98+7¬Ä¡ðS¦+즈VŠÄOÛ=¤ŠÙžæ¸rˆ%Šœì4ZìæÐ7¯œìtWìð™ØÃ3G•Î ºM×l/ï¡4‘ϕΠ2yÞéÄA*ž¹ݲÇ]QžsoX?ŠŽ!Ñba>Plƒ¼Àý?ŽüþãB–üÇD…‘Â}„DÝg7Å¡hà¯ÄÔ h‘ð4ó5‰B•‡w%b\Ø®ÖÔÆdÑÛ,È*ºŽiÈîšo¸zãOKa׆ŠÜKwœ:ÌšI ¹ ÄÊa§Ò/œiý°vé!õQ)S¬îzH}òH"…õÃäyžÏÈÓu©7Ý@UÊ˧òR„,“f•"«[63H¬eB,ý±™Ÿ…/Z>N?+líW„€J™ê!Q¨²SMW=$¹vÙœìT€Xâ rM€ùÿ4ßµdTî¹WÄEžÿiù—ˆ=9ª4±‡g´Ï†®×GÊ[ÓÂAF™®Ì±ë1t…Ô†ûÚp½‘K”ÄFHlBì%ÞEs+»ûå 7e˜ëAaN#÷¢q¢ÄlŠ%râ¹™r bËÁAŠ$Ðk:P×â‰lNÓòz«òÀN,ñÎÉNÍÉN5ý0_±¼ë°I¢Í–ÍÖƒÎÄŠœì4ØÃ+G•f/:gß-¥¡Zd TáþºhLµ·ŠƒÎþLŒ}Œû¤’¼R•o›"Æí¹ øJó¹û8òãäþcɰG/,›!ZºŠ^fÖ,ü_×}f|—Õr±9.œê`wX;ÀGÃ3Û1‹qA£ (¸þ”]tºD„,@¡ÓþÒŽ-k»û•¶.­ˆFwÝœ-¹!ŠøJóqØÇ©”óE¼`…ÌŠ1íñœ›RäJÜ çIQEÉÌSX­Ë)ÔfšG‡™¶l0ãlá m4´4r±É‚îÀA—‰ÐAo !«•Áq‡ãò1|ÿ½^ {F äž$–6Fn¨A¥Šù8ìãTìüWÑ­È ¬$„n‰§E%ó„HÛ h9:Ì­Y³°ì,4v/ ²ƒ€–‰ ²°k³Û¹ÐI*vPôå.M WÂúi6öàF®'±œW´F% :pØÇ©˜„M0î³Q±î3Å\KSœÙ½û¦RI©[ ¶Ò…òàÏÖt#” ¨ð¡ÓôÚ@GØ4Ò°æ{BN#‹œFˆîˆº§È¦kDË4àà¯èÀÉÑbùÏÒw6}ÎÿŠŠðØ+SûÉ “@Jéåe×VEíÖ¢pí]´zÒ¶OE^8}Œr£ýÏÞx¥‹ÜcIZÀþü?wp[)b1t*Qbœ–k郭Ì7-[öV)SM;&räm/ÈÆÚ[ÈÉNµ^ÿ[P9Ùi&´Í„Vk!hZí¹ƒ¶¢gå£a)džóTp–º3'B× 2GC³ w>?+nî@E›‹J"íqÌÇé#7þË©8«Å;ÐÝÁEú`‘ÇSöÀÒSB¥%ŠksiTä©.FÚc'H:gÑqÌÇ©xÄÿr*Q¢]Ó ÃÓ2¨WéC´ “xiZY;³×³G€Åâ=*¦À‹õÜ™vÎÈǩċã?N%³w„°Í=8ŠÈü䯣»l±­Î ²R(Ü;Q‚ ±ò(*Ý honÉÕjN%—ÿŠd¾'NÌØ"ÀÁâ#B`ÿ\'öŽá…,äMYéõàÇR…KIl>Œ>ž2à€ÓÇ×·rö?N–H"tÌ…€öäB·-ïeÖÕA÷zÏ¡¢{CB%²€Üléä€ÓÇ%œ«ÄœJmIa€²Np%ÆXî Ý8ò Ýû‘Ÿ¥œöÜ|z-ú¸ó1÷˜ë49}$üZ(qYó_V)©,}¶0ÃmÓK Ä8í­)¢½:À »smƒö•’’zóÖͬ,%Bˆbü_€T*­]«–··Â}5»ø+ÌG‡Îˆ¹ßðqúHdÚÿ%òÑôè^TtœÇÍüïÂßÇR˜¤‹>%¬<|x'ºz=ÇJm¹ÚVZZúå+Wüå2+‘ÉÌÊJN~_¯^]//¯’ÇK¥V{=âhÓ[B±'4õjU†¥QÀ`DB¡È ×pôŸÕGZ +a1ƧXê€EFƒ–rjJæ^¾|E¡PˆDbVçc0´F£ÞhÐ+Ùá”Gõ8q¢ØVXÚÿ,¥Ñ¨ãâîEEÕáY â¸àɳW&NÈÎV2k(/ZQ.Ô1Bˆa<» “IÒ€HÒµöòÑ£GÞ¹}ÓÜL¿ML  °éþmbRppÀŋף££oß¾­V¥#Ä0Æã <¦Î¨Ód“túiʼ‰O=ê‡ìì,€N¯Oùègåìýû™\zõê­®[·N•ê¸7²Y ‡;rÔ¨ììl€N§OIùhåìÃû÷2¹üúÕ«ÃÅx8Ä»wï1yëT_|ñEHHH«V­NŸ>}øða‘HÔ ADjŒ½}¸aÂÄ»wïnݺÕÛÛS¯ËAŒøL¯7<{ö¬råJV×SSSÃÂ+,]ºpð E€"B‚/ÎRªvïÞ}þü…mÛ¶†Ú²eË6mÚ@`t³E¿(pÊ…m•9ÚãÄ)_"«ñ_+ŠåmÚ¶MÊxSí“HáÝ»ú$Ô¯üßû÷iÔYú~½»té’½†¸¬ñ­0 IDATvíÚR‰À#"Nöí?óôòô”ÉB@«Ñ¦gddffU®\ñëÿu  ×ku øÊÄÎ]{?~j3ˆŠ#{tïF%ˆ‡E–Ïå?‘‡Ç3eÅúõëcbú2 Ðë Ïž?«\Éÿ•©°t þ³PŽ^}?ùqÝô¾-y8€ÄœÙs—.[*“)*FÖzÿDáåOăG×ärù²eK¾êÖU«Q"†6È"å'׎ÏàP'çüçhý¯yÐRÊììêõ*~=¸Máe¡ž•@oÒ%)_v°€„û™ŽGyø|qß¾½wýù§€Ï/|W«Ó5lPÿÂÅK–#IÒ WÓiÔ R©Tx ¦Œ 7ý;#Ó°rCrÏÞßš]\¹tqûo[pŸ5wáÎß·Žÿ>lÖ„²ÇþMëôí"’$çÌ™­UgÒmFqB¸qãÆ_ýuÙ²e6ܹsgþüùZ^À‡ôƉ Ðj5µ¢ßö3Ýüs×ïëYݦ]ûððàîÕ¬­²zóÛúóx¼=þ§ÓdÓ­ÃÕ–«Õ}Ä8À“[7âÜ)nhx™Fí;ùqí‘ß60ÀA¸y¾ÂG 0`üøñŽÓM„L&Û¼yóªU«ª” Ø17æÅÛ”.£F;¶{÷ÿ9~6;;û³Ï>3f ³—çÊ•+Ödg§Ä´ ú¡CGegggffªT* äR)BÃ0™L¾lŪéSc©|ZÉŒY³ÌŸ_£uÙï7·ö‘¾{šŽððÈ}Å‚”xåå?ŸÖ«WwêÔi“'Çê4ÙŽ¿a,êfþ @€ïÛwààáceÂþøâs©Tb¾ûèÑc^_¿~Ý'OžÍœ½°cû6;¶×j ´^œÂAܹsO*“V¬˜ÿ ªTf3 ÂhÐ 6ì§Ÿ~ 8pË–-k×®­X!R§U1¶ñSUF*:´ñì“&èÊ?æF ›“zÕëþÍJ ûJr4Øà)áO•£kÝúów‰ú÷–œüæöÝóiéï³”é¡ÁÝ» ×hÕ11ýΜ9»rå ½6»Pþ0¹¼¡Çyœ81^¸Ñw<ägO²ˆÏò;Ì‚vš†™¬|Í$F&%½›4²ÿ¤ý ßܲóÀð‰  (ð1]·nÝþýc49™,æË›ø×qTãƒ_4SìßR¥u÷õë×oýEs{¢»ã¯¿þÚ»wïnݺÙtpæÌ™V­ZyÊeêœ Ó¢×éZm¾UchLðõ;Ê­[6öêÕÃfÇϬ8 ·Mï˜ç÷îüºe‹Ípˆ$I ³4ÑÒåË—ì%óøiÂ׃3×”-[Bz WŸ={–––V·.Ý)üÎéµãäà߇ù|V«U*•*•J.—c†ã8A|>¿R¥J'OœrÊBB ‰éßïÐÑ}—7 ®”»ÉƧŒz ”Ÿ|Ò®\ûѵ¢[…-›³øõ›WëÖ®ÓiìZa5õ£Gw£¢ëà<ž³œ@€¯ß°éÎûM?kdµÊ£G˜;éÄ­¤ã{. õ¬ìŽèÖ©Yíëέ•© æ¿ô¤Wƒ zúô9†ñŠ ¿¾h¦ ‘¦§§ÓÄ„ñð—/_]ºt©OŸ>ö¬AüñGïÞ½ -»qöôôòòRøøøX^ òØkU×*ázùûÓõçêÕ«C‡-ÜçI¥ÒwïÞuéò¥Ñ`øql×@ù̵‡ïlÞ¸æÅµM»ö¡çÏ_ø…SŠ-£: U(Þ'%mÞ¸Þ"Ü¡—ÏŸuöñc––ãÇ;vL«µÎ‰Db0ºtéòî]ÒÔmêV+óÛ᫺ݠAƒŸþyýúõú÷£ŠF£;v¬ÕZǵ¼L’4ˆ™cX´†¼}›Èãá¦Ñ^‰D"d2™T*õÈ“X,Æy<›Ýʳ0òpþÍ[wÌŸßwySOÿ<÷õŒ†¦­ñáù„Ó[>¾”¸yÌ¿ýW4ï2¹Î¬ñ3;vìX©BY{ËAp4UEÛûð°7¯_<|¬ég<<Ä6áÀ³0J¥’zu?ÙàPÍšÑþ~N×jðpžÍ x<ž-­€…‚¤²Ä ×ôéÓgÉ’%>¬R­ÚW_=mÊä§Ož´jÕªgϞ˖-óVÈõ:ŠÓKC@€´´4…B-:A±Ô|Ddì±…‡âNMl:´WÎ Z „NéB,3KµtÙÒþ1Ó~û}ùò…[ÃBË]ºòï’§’’b§š=}u“F_df¥;ù{‹fÝbc§œ;÷/ÅiŽl/«à`ާ’jÿ³èÕqq÷ŒÆbx]­šZ£‘Lþjïï}J 555#3'+[§Té…"9ݱ?±°¿oÿkÏ.Óß›7¯6j\·~ýû÷JĸPàê.¸<Û¶m½{÷¶ç`Û¶m]ºt ×ùµ|YÑŽÕ媄ž¯rÎüW%ôüÏóëצ±ç-Ý:^vIJÕÐ?øšÿ PÌôyjÖf––æÍ›Ï›7Ïê¢H$"bèСW®\éÚ¢FÏ6u®Ü5Óñ  À={öÄÅÅýþûïtC¬7[Ññ”Óþm1åôçJ”èŽz.‹ôz=A^^^ …ÂÓÓS.—›(P*•’$ééåi× ‚@€OˆÆ[£uYKË_ϭH¸€Ý"|ÈÚ–Ÿ|x•õϦ{aQ>ÑŸ—™0q<Î#guàÑ£»†B Eð‰»ö” ³gù³ýeâë²k×_ß¹] ðßÿØ]8KÙ´æÁsf™B¦½qQ7wî\ÀêU++Vª¼ïïCcÇO …;vì¨T©Òæ_·ñ…RNPð͹fÏY°uÛv:sÝ»bnñæœZ¹ûþáá cÖÉ›Q­¬ä| çïÞ½[.÷~ŸœÐ´Iëð°ˆ·.î=°mä°éÕªÔêÝ}Hë–]Fï“üþm»6ÿKOO®YëâÅó¯_ÇCŒG!w$ÚÕ,âĉS±ÙÿL2Ë&ÀfRZzf«¯=yþƱûÖ­[›O?nöì™:­Šzp|;±«Ê¶?êµÖ-”‡'wWÁq—fÂñpþµk×^¾|Ù£‡íyo™™™û÷ïÿûï¿]üÍQcç%¼O±MŸ(wîWÊepî¤`*¾1¨e«FI<=#ªUÏ¥‡Õé½*3Ò='˜TP7{ò ‹Ï‹Å«V­Ú¼ysõ !Ó¿k—ø!cÄâÝ<ÿ믽¾¾¾«W¯Fl첦ԥèI Cû!€çËn ô(îþý8€Âçóy<žP(”H$R©ÔŒ€'Nœ(¸nÔ:Q†?{þâÌé³ßonmuëÆ¡WÜ·»£XžËµ„ï[oyÏC·¿n=¤Fý®åW<ŸàïëI’F{ÓBQµèº¡ÐÒ,að}ròãÇO¿øâsêðgRd…ò'NœJKM•Hä¤ýœLA<}úÌ*›he4á!‘SÙ+J¯×tìØ¡~ýú—/_þuÓÆaÃ8hpë¶mgN›vîì™ï¾ûδ.¤RÅHNÅ`ó)µZݺMG3êíÝw aƒú=È3*/=·~ËÍ=ý>ùzDØüÇŽì$…b¬|U'_ð~þü… ‘5ïÜ;ÿý I;woX»iI‹¦í:¶ëñøÉ½¦Û”¨¼ê—9CG~µpöÆÏ·ŽOx¢ðò½páÂWÝ:“F»ûLý²v=`ÐwÌM1Bhõšµ8ÎôÝÀ‰§…ÿ iOqí§¯$¬ŒW5!‘;.#è â€ÆårW9hôª—i÷RT â·u×ßÙJå¡•C)Žº[ð§2;Ò£}þJ­Ö8czØíãïÇ©DB,¢ Am‚/Ä Q^Íûí·ßZµjåogöÛž={¼¼¼š7oŽaà‹ZOŸ¼ÿ>žzþ†¤{OGCŸÿÞ³íÏ$§–?Jë êí‹gk&mئƒ™ÿ6ÏÞ⫞iÉïö¬Yù¿ác\¯¯<O"‘üûï¿£Fòõ’®ÿ•ÑH[°3C™³iÓ¦ºuëfddèt®n0nª?f+2„м‘2+oÝ›·‡;qìÊM[)•ÙAA8Ž›ùO&“Éåò¸¸8¡€ßòóæ¿+ˆƒGøz‡˜¥ðòÖûƒ+nÈ‚¶[‘”ï.K|œ–®õ-#óS:thà€¾¤ÎXØ4“_0hÐi­JáÎ{ž^žV«}Â@.—I¥’;wî5nÒÄÿñpAPD@Ë ”p ôê 4mÚtúu=zõV(¡¡aë7m>zøðœÙ3/\¸P£FqãÆM:…à½NMÏÐ+=rÀô{Óæ­qqË—@-:A±°úò¶5W¶u¯ÞqRÓaÂür-B'±„„/ϲ÷î]:þϾƒGv®\;ûÝð/““ßÞtK  úÔ´ã¦ôë×gĕ뗼½ýß¾}k1HbHVVÖØq“Z­vÄÃr!uÙ3fÎôêÙ]"‘Nœ8•J!»ö?Šk?½Ä•üêì¸7ýCN¼ùâ;å3ÓøÌ‡³Î´7_÷óï5óîÛÓ´£‰Ð–?tiâCÅý›¤ô—o?ÄÄô3PÞÁkùºw‹~z/—;oÎ22”“GúïH « á•«·†}?Ô4¥ !”””$•JÃË„ÙtŸ––Æçó#+”7ýS"‘ü²fmíZÑt¯z= îÒµ+€ÐÞƒqîêõïóõ¿ª¬¬/}Ÿü&ÝwÏÑåÞ>OnÝxþà®+4V©R%ÓOOÏW¯^}õU7 ‚Ÿ&|åë%³lOÜ«äáÇÇÄÄdee‘L÷oÔ¨‘Á`à øÏ”—Ò5ïiêÜ\ºõîX ô9@Ê÷©ìõ™Ví’öüù‹ãÆO<`¦\®˜0vÉÒãßU¯mZð!•JÁ™3g4šœßwlqjû¹yë¦_dÚ›ô,ã÷©ç´1Ú¦Ë1¤Æ+q>ÏÃSˆ”ݸycÖ¿°S[uZ„‹½zýÚÓâüÜ‹¯$&¾£˜^^ž¯^½ù¬)V§ Ö5X(§˜žžQ¿~ë l5~…G"õzmãÆÚ´isäÈ‘_Vÿ;eª©¾µi×îÓÆ—/]òûößæÏŸ¿sçÎÕ«W·lÙB£VZÎÓ°7º‰ ýhÑ¢Ù7}z!ЙÃ(¸ÌÖÔ»ËέëX¹åÌ£!€–^ ju Æ£2ÿÇ ’4à8Ѿõÿ^½~zÿáÍzušL¿tñòØ/;ö)Q¹e‡ªbɼkŸ¿xD|£Ñ@„ƒY™\>lذŸþyò”¡!!]ºtÚ¹k· þ~øáþ8qú˜ìùM‰P(¬õ‰@(tLÁ²òGžýr=ñ°Í»ZcÎëŒ{æ¾Î¸ç#©åßÖ&ÚÄ>ÓË7î¾xýöˉ](&fÏ?·ªU­\«VMµ*"ÿ^º®;³]ûN=ß¿w屢?ïoÕæÛã?þ´éSÅ>XÓ®L¶¾|êîôÓ9dЫé>U½ŒBŒF%F$§¤Òú0‰b(¬ 5j=º~¥€±ÇÛ'þÙ“½ë¾èG§áÚŸÏŸ0a€ @“&SSÓæëX½BȺ¿.¾ð Y³fK—.U©TWiЛo$“É©†W?]huëÔË­æßcn÷Ç*3H…IÇŽÿ3köÒ¡ƒæxxÈ>/ Ðû·ßöŒ5àŸþ©T©"Ÿ/ÈÎVf+•ú÷ýöÛ^†9öb011Aâ/4_I§Ú:þŒAO~Ž4¢Ë®ksô5Z•áÀC!xû6BŒZ@DÒÓ3yÇÓ©T9Ôá Ó32LU{ !´ ‚ŠÞªsª‰Ä¢A ›ó&Qáëz­jÞ¼yGŽÙñÛ¶¾1ý‚‚ƒÍcúÌY:9mJì㸸֭[/Y²ä‡áC Ì01yh#,”dÞ­°ÐÜ+zÝ­×·f?¾Ö²|ãEmbyùeçÉá?H Ë;ÙH$+F^½ü04´ü‡Ô¤‹¶¯\3ëCJÒøÛ©/^>Öéµþ¾A çl ?|lwpP¹+×NDFF"ÒhËJ´xñüôôôcÇŽN˜4%>!aÕOk¼½mÛ¶]¸`®Ñ œ8qúèøjk?@OÀ LJUž¾þdùöSááa»ví"IR£aa¢ªXÅ·qRö3‰È M2@"Pð1ÀSà'* ˜Ö¯=øñÇõÃÍ ÅÁ ðô÷—Ÿ=wX(Äo^?Ÿ˜£Î   ¼EB”׋«Ò5[ÆœÖæ¬ÃE½¸‘|jóýÄ'éžþ-¿‹6_ÇìŸêÆV õíQˆœÜ„mkÁ ŽªÚ³gÏ;v¬\±|Áâ%–wkÔ¬9aÒä~ßöäÙ˜Q¡P¨Xsu>"hÄÝß:ûV_©ž£DÊL˜­!æÇAp§É#ú–-[þºyK¯î£ÞÕ¸a«ÑÃgíúkÓБ_.\9Eü³Ö…«r²/\:Ù»ÇX½^ߤIÇÇ’ͺµ«GŽ÷èÈ‘£å#ÊV©RuÙ²eüqâô1óŸI:.î~TÔ'62·.?(C“ü.û¹ùâ;å3Q ðÄÒóu²­"Ü¡9þ›­ÊùëÐ?³‡´£èþÜíç陪޽{ë‹cÁJ±K,7øäëO›6/[¡Cæ?û©>õÞ{Ê=Ó3³˜ù鏨'¢|Vؾl¾Lá½nú¤ÊŸÔkùu/Ó(8X>g|ìœ*µV(îÛ·ßÓÓ3++ËŸïß¿îܹš5k6hÐ`põµ&ÖOÑ¿šyº `PíUe¿V­Z¹=+Ô™YD­vÉìñÓÏë:ó]ÿé8NðxX@€< @¾ÿÀöû÷nn\ÿ3Ž3Üd˜$ µkÕ>ùãai@9YZ«l¸{ò5ñ²5üj·/WµI¨¥MùÝ“¬Ú_Õ&IÝ:@’Æ2ááåo—mZ{AÓÓ3š~ÖØñLMST”˜áÏ<}–b…e4êË„‡4èçŸ^¶tñšµëÍ·Öüü³©üôÓO:­Ò•Mš.¼¾1üÀô­Në·‚Ðès­}¡™µšzU¨C±fA`1†Q2p"ýŠ˾éóíïÛ|øðôéSÀÉ3—¿ýöÛÄÄÄqãÆ©T*Æk>L’J¥ .ŒŒŒ¬R¥Jrr~5æa¹uæTk-^²òĉ+ýúÆâ8aÐ?@îàùÇ®OŸ>øeÍŒá`4èÚ·oÿîejÊ›,¾YÖŒ/Â!–x]'×´¦å¤}¿YüYÕÏ À_ò‹Œ”·mÛ¶µ·°ƒ:`45kFgff)•Ù–UÕiœMOU¯e4&ÍX½z5« (ÂÅ ì™§L™"‹O©‘2©°k—Î2‰Àí"sâÄ©xùÏ4ÜS,Û>à¹ôÌk·tmQƒ¢ûýgîø·hÑÂàžÉ%V¡L»sKú·íÉ÷IÀhF#äñÁÏ£C ª•¥ÕöîÞ±{×Ö¦¿¿÷ÿYNäþ×Î>} ªU?þúþ½ÕÝòr±ÏÖÍ`ýz0fŒ§€p%u½{÷ŠD"¥R)‹Í§€8p`óæÍr¹<--­ðÑ tåéérùòå«W¯~þyþns>D™/+m_axˆ¸ª+þߺ}¯U‹ÿa!ôûùË6ÿº*5%qåŠÅV‡kµº­Ûv´ëеL¹Êe#ª ün˜S#YÙ2aŸ·lqy÷3€w¨´Ï‚&˜Å@m™h߀òž¸ÀÆÑˆ—v=kÛ®Mpp IéÖ’$}|}+VŒ|òä™åu*øøñ“¨¨ªr/…³¤!_ßÊ•+Záþ¨a'\ƒ·×èÑ£K-|úäIÇvm:´mýôÉÓU«×ðp|Þ¼y+Wþ$Ét?ùq¿=ü%¾[º-“ ó·ìyŸpìØ?•*UxòäY ¥5[ÖÒª³–.]<ðÙE3 IDATxÈ «Æx+ü»uf0â÷ܹÿèÂ;¼wÏ1¯ÞÄýöû² å«÷ï;e˜Uk×®ïÕ«Cg_†ˆ4êu9üqâôñÉÚöàxȯÈtû^\•ˆ *e¨Y‰ÀîîÄô„”°Š{מìZw”úBެ´ìoGu¦Zx„¼;kÒ€À `Ðã«ñë5Vÿ¹ €Çã7n.ýe[ÜÑ˧óÈ]!“V¨RÁãÚ-¥½õ%Žëç ¿Íóö¥#ˆïz÷ –uFRˆc!Bÿ#Óñ»“''ç¸ gAܸqcÆ ëׯ‰D"‘‘‘á¢ÙÏRûöí;räȆ LKŒóHÛȯ@«qéð·ÃMž²hÈw3=ýüek×/ á³­lH×oÜì×È‹/+UªØ­ë—$";÷¤J•JŽìUºœE ×­['ºeXX”Op%E÷™Ÿî˜rÞj ˆ•^ÞzÿàÌ›í·ÿÖÛÙ&Ýi; Óé{tï6söÂð°P_oKö‚ß'ˆOH8 F¯u>“L§Óý¿.…ƒ -ÞñÂðG+;æ4ÕØ±c׬YsýÚµöm¾0]œ1mÊÆ_·,\´xìèQ£FòööîÙãkZ³Ÿ¦¼ê»{¬\(Ùö¿å>^–·ÂBC6nXݺmçysg0‹3B¤V9kæÔvíÚNž<åÇŸÆËå^>ÞF£ñÂÅÃ$2öìÙkÞü):u>{þ@“F§NÚ°pÉÐ=zíÜõ‡^›Å ìrâÄñL×ý錹0÷ŒW…(È´„i[†ýºÕ´\H¸rê®\!¥â˜Ï§Mþ’á8¿~Ù¬9þ!2™Ì˜ôV{ü€ð³6hñ†Ÿµ¾~ýºÍÇ'MêHÛdê€ðÑsм9P*sÿ]¿þW_~ îÜÞÞ %?ΟϽի×ga~…OÎ4i’½p ëĉ»víÚ´i“X, ¥9h–ôàÁƒùóç?þèÑ£µjÕ Ï?"Ùh4ºîÿñ'ïÞ»¾ý%±±3W¬œì;~ÜH+øûûà‘¾1 Å®ÛÚ´neº«Ÿïœ;]Tµ*Ó¦M_:wÑ7Ë+‚$åëtWgï«öIWîw}îÜy+Dh5v3Óq;`4ƒCÂ:¶osüÄ©&M>µÜ¥Ù-3P©Ì¾rõz×.µ-…¤ƒCÂ:ulwìØIË Ì'p†?ºAØ1ÅbQllì˜1cmÛ¶ Ú°aÃAßmýmÇä©ÓæÎž£P(Zµl®ÓfSñóuÆÛoþE`øÖÿ-”ú¹£©AiÔYµjVûçäñÄwI.\HHHÀq<22²Q£Fb!ÆÃ—-[:vì¸À€2‘å£'Ž[3gþÀÉ“§Ì›7[«Îœ8qâø/ÏøAoí盌¸ÿUÅ ֵʄ)Ì÷ûMKO×huGQtÿçÉ[u>©ªV¥Ó +"œøuãO'ŽþåÔe||—_0™ª\ÁûóTÓòâúû p?•Ò9=óx„1î¾þî €Çà±ÒñsÞ%%e&&êt:qÃf Gå¹aÏ;w/^lóq‘HT»v-ÆQ»o»ôí 23­¬g`ï^ë‡ÇŽ}‘“süøqáZtçÊ¡C‡vèÐaæÌ™ÑÑѽzõrÇ; ‹'OžlúÍx^—=ý¶ý…‹– 4àóÏ›MŸ1ò‹V-~>ÄÊÍ_íé?¸R¥ û÷î²ÜüÅÒéèÓK«ŒøúÍ«­£w}9ù“ð(ßèÏÓ_f^Üõ˜‡c…-{ç]ïݳϘѣ´çæ+í€N«éر]jjÚÙ³êÕýĦМ„÷É®\½Þ ~Ý6_´ÒP¶Ìé´šíÛ¤|H± ‚ÇãF›–?AØ6js†ràÀ°°° 6à8®V«·oß> _ßíì ‹Ó¯_¿¤¤$*ü—©QöÙ9JO~ÿzU¸g°[t£A«6h^âÎÚ˜¦÷‘¤‘4ê5j-„pذ!wïÞ[¶rÔ¤q¿„…F2ÑÒáÝ»w¯\©iÔNœ8qüè'e½u©4ð"åîûì× ¿bIcPPP\Üãúß.¦úüñ3ãßì !ꦩ)¬M‹D­š*¨§C(<㼜,ííã¯(>¦VjŸÜ{¥Uë¤_Ç{ÿâ„Pý÷.€è«o=ÆÎÌQ¥yÊE^r„3T3L«Ë©Z9ÂZu¦ã l×™3A×®B`~µ<‚ Úµ#gÏ "õA áZD@xæÌóo7½eË–-[¶¬;|Ž‹{2ü‡1M›6Y0Žã­¿hYØf³vÝÆñ¦TŽÚ¿o—BáÅÌð£Ug­ýå—2áegŽŸÕ"¼~·ò-F×é!’ñÍÎ’_d\ÚõìÁ™7sçÎ3z”VCiÔÏA;€Ðht11}||}ö8Y¡¼\.³DÀôôŒÌ̬ǟÄ'$víÒÑDfÔGmáïïçëãmµÚ÷éÓgÌ‚°. €þÔ©“!­6Û¨›6mÌÌÌsÈÐÁ>|ЩÉk¿ÇS5x¨ÐÃk¯üü|—ü2àw4€ÅÃùªŸdsVi4Y‘Ș d®/‚qPtm[ñÿú |õU.ÿñù¦b˽]­>Üøm­.ÛÅ>8%%åÕ«|nV©T©©©„–ç¨Úéá¥RééÓ§™-¹xñ¢¯¯¯Óɦ.\Òëõ[6¯+¼ÈW­Ñ9|lÍÚ —.]iղŖ_×I¥RÆyešþ5qÂØ:L˜8~ÍÀãþaŠ€H™‡B€R¥i“žf}HÈhÓ¶õo·TªX^«ÉtZ:T΀Fi4ÚvíÚÔ¬½k×_'Nœ’J%^^ž Õj233Oœ8Uuà€˜€À@dV8¹\†ã¼;wHOÏP*³] Â!Íâ•ÎÙ¹sgÛ¶mM$³fÍš<9–âVS© ©ÓÚôM¼›œœþêõ«+åÊ–+ÇÚÇ "]öŽÛÇŸ°péðÆÚ¥¦%edHY7{sâÄ©ä zËaSÇþ<\ðâeÂÄI³³™ÌÁ’Je ,,ht|>/„< §~úB$Åñ<ï!NHÇOwûÖu©¨ýI½óèuJÇÝ ÁᄈY³Š0èÕŽ™ˆdšŸóB˺:˜ÅÅ þý|ÿØ)ЩܺEV­ ?¤B)F±Ð × .¾á„pÇï» Àl…†a›6mêñuW½ýÓóL5966–ÙlB™L6þ|§5ùùóuê5iܨaÙ²á|¾ÀÓSîé)OII½{÷þ¹óU*UXhȘÑ#bbú`47è±›.Ÿˆããß:tèÆÍoß&`<,80¤víÚíÚµ ÔkUF –ºÓ?x<ŒðÓSSïܹ÷êÕ›ôŒ €—§g¹reªW’{)ôZ‹“)y<! ¬‚ðV(Ê” £ÄÃGq‘åËN?„· Z¿~ýaÆhr2Í«bõzóçÏ+W²Þ¬455-¼l%WR;i\ì¤q,7úˆd7nÜÚ¸qcff֌ӈý×vNàÄé?.‘ØËšÿ#Úöåá|‚¦\£×«]„vZ@ ãó= Æcö ­ÓªŠ}C ã„HVÅúªgÇu OžK—¢ÝæìgAˆTj³#Ý„B¡‡X ×å8é΋¤&ÿûïÙÉSg$&¾Óh´ÙÙÙÇ+VŒlÔ¨aÇöm7þ”-ò³ª<œa¸i˜éÉhБ¤‘Å:`“¼y8Ï´Ó !D’¤Ñ`dq¥¶ëA0æ?|±é¥³lìñŸ^¯¿uû®+é  rGÂÃù8.À ¡V“ÍàœqNœ8•~þ3èsTif×)œ8qúˆõêÕkÿ«ÓIÕMrÒû2e¸ìåĉSI–yÜRì¡À¸ìàĉÓG~~¾9.Ÿc)’$sT*_.o9qâTŠ„ÛCNœ8qú(%‰ ™™™Ì†€ K¯7xxˆ!×~râÄ©´ò'Nœ8}ô EÔw¶çĉ§RÜø/'Nœ8qâĉÇœ8qâĉ'Nœ8þãĉ'Nœ8qâÄñ'Nœ8qâĉ§‚ÿ˜mºË‰'NœÜ-®}æÄ‰“[øO£Q?~|Ÿ$¹œáĉ§’\û̉'vTàü“Œ$ „z=÷•ɉ'N%K\û̉'×%öPØØÿ‡Sã¢Ñh„¬ž’ĉE!„´ZŽópç‚à‚à‚(² ŠW´Úg’$0íÔ ›ÄøŒç<{IÒ¨Óf#¦æJ!Á'x<^áCºBzÞh0²›·†óp>—p¶Ñh:8ÛÀb8ÎÇX '!ÌnEH¯S Z®3ýÏÊî;¬Ñ¨?~õ‰Uã Ñh¯]¿A=>AÔ«W‡ºûë×o~Ýã›5«lÕ²…=7ïÞ%uíÖsĈa_ÿ¯«+ýÄ¡CG+Tˆ¬P¡|i,¹´´ô2å*/Yr̤&vëÚ‰zÐB‘|μùÇŽwê²~½º Ì×k³˜Œ" N:}íúMƒÁšdRI·n_úøúôìçóÏŸ¿áë7lùn`_›nNý{æê¸3g/Õ¬QŽ"'=w~ÞÜyß šB›6¯©[·nçNm 4G«!B‘èÎí;îÞ[³fu ³èÇÔå+~^ºdž!­€BPvëöÝñÆþ÷LP„y©‡ŸðàýëS«ŽŽ5ªy‹f‹-‰Žª¢Õ(°¬9ˆ±ãÇœ=}.(Âǯ¼Dâ/ÜO~ýÏÊ##GŽlñyóE Ó ‚ DãÆŽU§e6®]AÂÏ\¿¾âœÄy-µA?tÿÔkoïœêÿ»Ÿ¤äA- H%fT¤E¤B `|€‰O€Ð½ÄZ|ñ†§Óƒð`ÒSæjƒ !:t˜‡‡Gá[ÙÙÙ¿üòËû÷ï ‘gmºð÷½¬'*3Ój_Ãäèõz½^OÝ=†ñ„B—ƒV÷$©õj ¿ýYÁ^E¥Ò>¦NŸ[«q×rkÿ¼vJËÏ›–-[Æ:c33GÚ¾wlfú‡cbîûƒb­HMM{xÄ uÞ~þ{toJJ ¤9: !ù.\¼|ùª¯¯OÆ6àæ}ò‡¿ïÚ·ïïš5£ƒ‚Û †… D²™³f/˜?¿Fë²ßoní"µr“¯¼üçÓzõêN™2uÊäXšÍÐ bêÔ©“c)a¶2»E݆ DbBCrºáC&²Äçñ¼¤˜X€t}r:X½âü£ÛtÇŽ ¾ã‘zÆjÌZ ’6løéåË—-/®X±bèZM6àTRùÏÜ-A*à €ÐÐÐ5j`F^P–Wd2YP ffVŸ>ýÞWØ4U\ŠŒ,ðÀnOEd6s¢ôhî”Éa }ÛŠ…†a#ëÖ«ÇÌ“gÏ^ü}ø°9¯ÂºtêP”©ÐÏ‘’—øð×tT]3öÈÜó¯¯Í}þöÎ;0Šâ‹ão¶\K. I!ZB—^©*MfAÅ , ˆR)‚ÒTëE,€€ô*U@z€!Ò¯ßîÎïMŽËÝår¹î’÷ñ ss3;»³³»ß}3ofZøÙšÐÚâkNõDÌ¥–\°ê©h¡”Ë^| áª[–Çœ›GOñŸ~¥Ù²Ka¶äŸ£.í-Sßѵh\ÚÞ±mGt'/m_ÔVöé$¿ÝiµÚ¤¤¤×_½œjòÚeö·eê¿Ô|´$·×@/Ý&½ÿÓ†-[¨R  +(¬Ta¥ Að‚¤°P…ER˜©ÂBª´HÀª¾ÛšT­ZH±[Þ{vGXPõÈ(7i2òîÜÈH±”]ÿš‡÷ç¼¼¼ý‡Ž}iÒ¥ïˆF¼±uó–eíÓ¼þÖ{-: ÐV ÐV;¶û÷ .Ö¯ï#aJÅšÕëþÞ¾‹ãX‹Åz9ù q:ÚÔÔ›„aöî;°~æ9OW©4RÉGB”ê ^|ñϤµÏÎëR«¡k^[Ûïí–ÍŽ™?ý“«)W¾^ú•É˜í¡‰N.âù_\ïYó¦r5åêW_.õ¼àkT3¯ÿ9gìKAÓ©A¼£2r ïpÕC¸•ñ·åæmÔ=Ï·îîÅ©Qi‚ÿþ{çÊ•+£££Ç{—c‰(Ú½\QªÑhX–E±ÀBÉ+•JŠýÀ>öŒ²íÅv+ؽ(3\qB8Žûí×Ý{ömjÓö'0Þ‹Ïœ;7º}ÝÐù7¯O>]8 _‡ÇIù¾¦[ÔåHf“H)(UL@ ¨gÍŒFE¤}Á.Ž‚RxcJо;Ve&Ö˯ m ékì×ÓôÌèà—Þ :¶)#4Dòª ÷ÕWßW_í®{÷î#GŽdæé§ŸvÚõòt»bß¾q kH¨X6-ª[ %/®œvÆ‘âîϵQ÷¡Û¶ëß|ЧWÏF =ýö”is}nŠ-Õ¤  ðz'y–Ô S©ŽVº¯—.‰‹åj–Ë…DÁjÑgÙÊÿ•c¹.Ü_£FÄùó¯_¿Q§N\ƉM7üõ·Õ­Z¶HHhP’áôäã”ÇŽÿ;{Ö¬çæwuÇ6]^÷éaxôÝ6ͺk°¨8pbëiïNëß¿BƒØb}5Ø‚"ž×¥Xñg+bÐÄ6ÓÆMëß@ƒú1ºƒH³ªg?Ëþ`1K7¯géøÎ‡#ßµ\½„(b#ô‹fè>›)ß2ˆB¡zðÉh.ikçê™3gÚtö† Ž9Ú¤q}±À¼- f½î¶Ru·wÛlʳZ (³üEÿÙÛ“ŒçÎý×´i+— 6ýçÜÿkü÷ßÙW^}SÎ¥ÓérróŠÓ¥žhå±ÿø÷dÊ•klý`¹uëvnNnãF ##k„<3uj\½úÓç|¬ö«Ù|¬_ŠßðŸä°šà«~þ꟟Ÿ¾ïÑ·:>˜z¥íÙÜ´yËÜÏ?üö“¾óèK×>˜;«có6cG¿QÊ&AD,&ªÏ³³„Ü\Ñl<« bBõ ÁÂR‰|$)½pÙoê¿v*wüš&}ý“fë^…NOB‚èØ—õ-[¿™“Û²wØ¿«ßzÑûџ篙SïÜí≨Æ5ŠSL›6íêÕ«III?üpùµ}Û”=úâDw%¾?·lyŸš·Þ¸r6:.X–ë6à•_~kç¶õ<Ï|mL»îÃTêüûpæíé×O?ÚV‰v@«b¢(…ó7 ñÕŸ|<óÀ¡ŠéÛç•—G YÅn?##sÚôÙjºI£†={vmP¿žÍ©qã†ç/\lܸai*W¼;nì}½â£CÅß¼ÃùVÒOþ{ Û´z³ž±ïoÃú?ʼn3…2`Ü{ïÞ×+¾¨n_—Ä4 oÖ#ö½÷ÇmX¿Þ(dz’EÌÊS}VÿÙLñö- PÐÍŸ&œ<¼èG¤ìÍ»¶æ?ð†TT f¾V2£,Ã¥§ßY¿~½}ä7ß|óÅç EœA¦òé?•Jݤi+¥R-¿k:¾Ù°l±âã¸õë×FQAX¹råäÉ“ßÐ[¹¹¹ûö¬4úïñÇ÷¤ÏÔ÷ß¿¶jG“6>žó¡í¸Ú¶k—تý ýË\üuíòP€òîHùvûÝ1e¸}¦‘@+Àª“ëçîúªÞt£LNÙî½û¾øá»I?ÏP(P·iýw¾šðû•3ç|2ñ=ïƒK !„•¨(€^'ÞÎ0gç ¢åŒzIÀ°Ã.ŠB)E§'S> \<#7PCŸz#xØ£¦Ÿe3 œ8Ú´dvN³DaØ£¦íû¥Ô‡ÏÞ}ƒoRGÝ(N•=wîÜáÇggg—þ\H¬[©¾“ÆhiDMéä~ô”<HKe/žáÞ™fýbVàñC|ƒFÂu* -áÆEÞÍ·EC†”›%eåJ:ª2RÎ,dXÌ·­†L!/GÈÒ‹“¤²Jf©tSʉ"{àw๞ ­™ÜΙJ=Úæ—K¿€—G¾`ká”ÒÅK¾æ8îå‘/”èþLùîëE}û?©ðzµ°H¨ßjÆÌ¹õêÅë-ªø„rJƒ.çïµ_üòãR…‚/ÑÖQ~{ìõ›º‹ÓºýµråʹóƵê î4•Þ|ó­Ö­[7kÒ@‹·liµLzÏ9¾QÃÄ-[þ.Õ½…á.]º¼sǮ׿ïåBüÙm%`û!õ–ŒøëÚµÔˆð@©èÖ"±cûN‡"<¡ýú‹Gl¾ví†û"îÖ« 9æàË2Ÿ*(KÌÛ’îto ’(Þ¾¢`3{„,Z.dè©X²îrŽW­Xñ½lüëÞ½ûÎ;EQ\µjÕÂ… aн·òè¿ÂþeÆ"7ãÜùëS½zu[9ìáÃû“y‹~üé—?½úÊKñq±ðÇêuçÏ_t™¦oŸ‡zÈ»±Á`Ý$E°¼Z„KüÌØ}åÐØ¤ZG7ýì‘y–µþ ÿP“íç}·à»?xvúHu€Úù§g§ŒühØÚ¶õúÑÂh€Õ€BM*F¡`XŽXz1Í äM”R•‚Q0šF¡!\ £¯{·íSô{Ð|á2W-XÊÌ"ô•§ «#ßü¬ÉÊa€a€/ÝÔƒ& Ä»{ȱD¥ æþûïÏËË *åÙž=A#öd€@-Õå‘û{äw'íÙªlÔÜúâ½ìhÔ¦“åôq¾¤Ûÿî»O+¦Ù*¾]®øt¡Ø¦¥qÊx±M+à8øc÷›–Lú–6V¿4Êüþ;ÖáÊÊ!äâMãÇ¿Ÿ³o<%4Ñ1qq±çÎoÑ¢¹í­C¥R ‚`0š4nxöÜyï/R–;zìhDýÀbÄ_0²AБ#GFŒxÞí#’;zôhzÚðXí¹}©`1y4dÅl°Æ4 çÙGŽéd÷-Z<‚åê­€7'YO1ïÝž¯ù¬–»S{ð åƒ}5#Þ1_L-ñ‹ §ø÷ä©S§NÉÖ„¾}û¦¦¦îر–/_>pàÔ•Dÿ¹ïVp°ÿy.þ@6«·Z¶¼ïô©ÃÅß}n&—Éñ—Ÿþ£”Nú`ª×Ùà…þûrñB÷gMòý¥ã-D:Í“0 Ž¥žµvrý°ø¥~¤â”À½ gbE¶‡÷#Nöì;@‚ù:M\»:r<7üׯMš¼ü›¥^¶( 奖 d‚‚ØÐ .4ˆT¤dog›kTSæf‹º1PÇXó§Véå\Ia{w3<Êwmo9u–³ “W@Y ç“Ùzq¥êÐüv}FÒ»&·ÎÍÞ{*B„ÔÔÔC‡½ð ^oüßø¿Ö¨’ŽÞ‘¿^8éhó6VÙ.xp—âƒOsm^æ©棭—KúKñéBˈç-£GÙO¨&±ÌîPói³b¿ÿM9ûSUS(ÐIη‹¹sffeemÞ¼éýñ“¯_¿ñÙç_†……öéÓçãÙ3«¡D÷gM5üqÙ’§‡¿ÒíÑ×ÃkÔ¾sëZ½†m¶oXÖ¡ûà+ç~6FçN½;ä,½µyüýcNŸ³÷‰EŸ/ÛsJX8MųMâaĺ:O5›6í©Ç&¯øÏk Ø ~ÝÿΜ³é?•JµeËß7 kØ0aóæ­]»töö¶Ï¤¦^—g`.Fü¹’€¡Ê©×¸/âÆÍëÊŽC€Â–¯ÿõpß~¥yûAõ·|õïÅá¸VÑ’r;äËUwº6’2nS«];§`£cƒþ`¹z‹–|ºlŽW-_¾\÷éÓG£Q0`̘1”””™™ f%IÄßpѼìýËÜÛÿÆÿÙŒ‚.E•‡ö¿ ƒ–ó¬D¢(vîÜ1-õ’ý§C‡v1ï{{ÕÊåö1›6®yõ•—¾\²È‹Bccc¾XüÕÁƒÿ¸ÜŸ% X²nmõ`á&ïÈËË2üå>%ºözúì¹oEM•î(Î8{çÒ‹¼_CñÝà9Zeþ›:©-²ÏéAM½>é³>ùô±±O¹I߸.qûöò^ „PU5 cC¸ˆêʘHuBíÀf±Ú'JÔl•Ì&Él V#HFÞJ `1JÀh&f+ŒùÝÚ¿T5mÛÜJ)¬ýKÕ£S©Fg¾~N¼íóÞS™™™™™Ù¢E 7·Oøq©¦{³68¿ Öþ¤nßÅÂ+(;È[L¤c7KAë…3ÿrôÅ‘æÄhT~4GèÑÕAüÙ¿x™ß~S|à~åôÙPôLÅ¢`\ºô‹¨['.)is½ºñƒ \¼øs›øóüþlO£† ¿®üvë SSÎ_>ûZ˜‘~ý÷ï¦|µx®×â‘ê|:Ï1„IÍ=?y{j5öÌ{±Ñ¸A ,¢Vü;ù–yçë}ër¬—ïØ ‰ Μ9k_z½þСà …¢Aƒz7Ro¥0;Bz$þì$à‰¿®xQTÇÇÑÌSñ7¸|§b†zop8XB B^˜H¸+VÈ_‡J)oÚ´)È#û9ÞŸ< wúOFžh´(k‘›Éÿв¨yhÿû÷ä©Þ}:äΘ–vëég^ú«tC€å‹¿üì,Ëþ¹ö×€Âü¶ê‡˜wÞ~£Gnö1mÛ¶þpÊ!pF§Ó V«°ôóÅíõk&ûgýª£ÇNäåå•ù!_¹šr85ó@­Vòç¾ù¯íÞÜ™C¤ë~À«– ý$TZV³gìÙ»?ªaíà°bfw{üݧgÌãõÑP>ÂHHÉÇÔR%Ä4ŠÓÆEªµÇJA’¨h¥’Àâe ¬%>ÉwleYþ»ú™AÆY_~±L³t…†céŸ[•#‡ÖmQ¥Þb†ô){ÿÙˆˆˆÁƒSJ'L˜PŠ08¸SÙ´U¾sñÎMÊý;¶Îß½Û”M[[ƒ f®Ù³E ¥r7±¯ÁnÛA2³,¯p·”!–×F’Ûw¸»Üµj™3wNûöíëÕ«Û±cÇç|L¨Ù‹û3$m;Ñÿ™yÝÍürÙ¶ÚµcTJeÒo‹ë4lÛ¾Û ~O¼É±lbBýUë>ôøÇ=‡Î^öËn/Zûµ;¦þ £5\¢Þšó¿ãïý«Å/ç^þéäd9Áâ^U{ßìWç¼yí åyÅ©¶Gˆ1¿ÆÁó;ÁÜ:î¥2XÂná’/Ÿ™9¢Ød!áÕ¢ÆìÚ½·Ë¼ÔaTie‚†J<Ã…‚ æLf‘!$(ˆS( CPB% ¢—NÀu6¿7[ûþ(]«¦Ö·¦½õ¼!4DÚw„ÿîÍ©¹Ù̘©Úéïè¼T±í;´íÕëaÏ öf³yì;o–HÿéuDŸGàøAþÈ~´¹ß²g«²SOóžmŠ~CóÕžQO¾]ðñ×9J•/NÕÉž8IµZ)±Ÿ±I#ªÑ°'N ÷ts“TpôwÆnß±£[·n<+%ËÜߟ—ÿ²gÔøÿ5¨¤Õ¼;õçŸ~IŠªÓ¢W»^?/œy«u§~-Ôkð»'/‰MÖâYöõñË’¯¦O7¸D®7‹Y¹êÑ—ÏÝû„ YDI0‹úSé;XÂ1„‘¨D©´äŸ×^m³dP‡–¿ì¾îEÝ&&Ö?}úLtt”l—uäø¹sT*ÕK/>»îÏ T*«u÷î}:´å «¥øåþDÑÚªe«m‹’ÃJl¸º•œ“v>§ÕàV’(SD«V¶ÉÞ PdG°½ø€´ ¹­‡´v_„ƒ…O[C·pªyïß ¸ÈE-Ó¶ ÜÒ¹šçß6_*Á@žWÛrHpøðásçÎÇÅÔ(´â«Øî(´lýÝ?*|ªÿ7&¦ög ?©ŸÐ¼rW:uÜØ‡¶¾™©›?{ö»“&Ù~š;ç£K“?˜1%ZÃÜa´¿ýúcE®Þá Ò9Nܬâ_Ôç°¹Ïÿþn–1çÇÇæ× ¡ÕERS$µË`pÉ•+W%„GU÷$qÿW-»Øký\uIE Çs* ÊæLF‘Rà$@ËòjÂ*€”âjòˆiΗϼ²jIö‰ÿ¸ +% :´²®Z’õïYþé7‚õ6==Øû²1oóÖ¨ò;ã z˜—~ph·¢÷ S½V}¯ñ¶^ ^‚˜•Á$ŸãnÝdvmVN™Ÿ[7Qðµ+nã‘5çnœzùHj"1YúŒs‚Ô¬…80tºbMSAZåàA¬Vu5¦ªØûó팼w§þôäÀ_Î}aÈ¢o6OœùëÓOõûïèß±µ"8óõÝ›–5iûèºMç_y¶ÇœÉOB>Z°vö¢?‡ôoÛ4±v±»¥ÓåÍŸñÃ0„)ãÇLî²áÛ£c.g`N”¬"-t¦®fŸªàåÊ“ ê×Û¹k¯ìÌ'B­èè'NŠ‚xâÄɘ˜ÚC?Ú¤qÃ5"L&“^¯ß¾cWî]y…Âj)frQ°ôíÛwôèÑNhÕ´{Œç¶OBˆ$J;–ŸîÛ·¯ûyïDÁÒ¯_¿1cÆÜ¹–^[ë^:ˆ¿[É9·¯g[Dá»MˆõèýÛï„W0ÕÂ(•¤ì¬|wAÐ}2EÑ®3W«±p;Û³ãeòt†µk׺OöÃ?LýðÔ~iÿ³†&“ñüùÿš4mÅwâÑyü_±ÂÎæyàþZ“¥n“Ñ‚å ¼ÂDzœV+_“ÄOW't¨„'NN˜8¥n€X=8°zpàÇüöHÿ¿ÿö³Í”X§nÙK¾îÝwàß[ÿGˆGGM‹^f…R§8W§ƒRN7P~þT侘ùÞÕìß šÛ8¢¥Í¬Š¤;Å6OŠøvùÝŸòt²â°Èp.XuæìùDÇe}Zþ³›º¶6!¾®ÿ@¥R7nÒJ©T»÷èvÿç‰UÏ×ü?lïs•ãD6oÞtÃú?Æ~ëïÓ²ô}y~äËN'W¥V©|ó¹‘:S#ý›9ãNÝ:ÿYÔì–+;Áhpevó ”îܽgæ{ƒ<ÏÒë…G¾üö»sf—ÂÆ\e”„Óe±ÑB†§¼šðZ¨)(¼?Æ­»ÏøèóÀ> 4Ì!VMêÛݼçÌúñ‚ï7Z¥’¶{ ÿ9­ÒÐÖ÷zfGF‹‘ѾëTøËؤü—ɣǸg^ZußXÁ­Ã>·åoEÑ[—UÏïÏ'þK ÕF׬–_.Ç6ks3-ã«%3äkÚ‡ã_üøÆ­¼`MÁ»ß8±Öé3uÑ ÙÏ?÷ôK/>_ð,`}öù+o¾÷Îü5Íâ^ïÓ&D ·ÞÛr?Ü_{ð#u§ÍúíÂí/wx^Q§NÜßÛw*xþôé3Ù¹¹Ó§NÊÈÈLM½)/|ýúa°Z¬;wíéò@§b;‚-&Ýœç¶k×¶ÙC11MÂ=ÜŸ+ÇÓOm¿ºüè³¹øá(“î“9Ÿ¶k×¶ùÃ1µ‡ÛKÀç2ÿÛuzÙQü]>ž~zGÊÇÖyRD~ ¬¦5®úžfg$ÀvìTÍKo[®ÜB‚—þÆ}1K·`:’$ݾeücßåQÏ %Ф¤üvÞ©S§_~ùE(XxšãU»víêÒ¥ \»víÌ™³uâ¢Ðè_áÿkñÈÿ×sñûT ý¬¾˜LÿäÓÍ×E]dcgñ'3ú­×}sÏÅhË»÷^?2ûáq]~{XüQCo”å«Bò•+‰í“’¼~$´L<~òd©| åk,Xâ£A Ñ$0Š ¨ šF\e´n\°<"&Z\:+'å@ú™·/ìº}q÷íEÓrýBüUÄ÷‰­Z*çFrr‹|ÏÌÊV.ø\ìÐN,ݪežÜŸQâ ñg†çö÷^µZÃ6!2 =[‚Rj1ë†lù#÷A[áXrö²¿¯Nÿå,-"Ödæ¬ß/¤—Xü†aDADA…Ä„{öì¿}'£S§¯¿6R§Ó·nݲn½:r: …½`¬ëÿåŠB-–¦M}ðÁä?fü“•ªód·2®ç­žyxúô‰ õþÔØ±ï˜ Y‹Ù˜;iâÄ«)W—½ý›CAÕ5eRP‹UóÄ‹D¡T=øˆjà0!Co¿ÂDó¥T.®iõ]g¿ÿhÞ¾Q=ôYjõèQ°çÏŸW³fÍáß1²íoÚ¢`Z»víÒ¥K›7oÞªU †°<ÐeÏž=r‚1cÆŒ3füøñS§N6rð>á;Ï[ýç÷ ëÖ­KII)‘1oß¾}¾cÿKMMýhæÇmÛ¶®i‹ÌÉÉá¼F}÷²L»u+²ÆÝ)æ&£Ùd ‰ŠŠôÙsÛ´i“àà ÿj[.íùWåÏo1H¼@ÊÚ‚uýÆú÷%”4WçÁÝ¿}ç‹Òë¿! ¦ï?•©v-Ãÿ¾RðÈ`k¿>B—ÎRíh`R®s;vñ6I5# ÿûJŠªYV%º¹?é×vú¼5Ÿ,Þ8{Òã°â÷½7Ó³‡ ì`ŸæñG;Ìû2iá×›&¼5¾þñïœ\Ó…Óx‡ Ò>Û ªúùgôfo^áÌfKÇû;Ô‰Ë)Úžj±Xsóò´nÝÒ`0ܼ™& T«Õ]ºtÂxSJ†ì¯¾\?mÜÔ¦=b; ©_=Îñæ™~9gÿ¯Om¿:}úŒ±cß1²=ï;’‹øzéWq±ñÓÞÖ¬Gl‡¡EqáÔö/Šë­l¾M ŽK³ùBš‹µ})éÙb&Ëw¬ì;ŒZë-ô¥ÕjªU}þ¼¹”JfcŽÃ|4³¾QbÝÏ?[ I¢QŸZiÆSU)û_!aXÈ¿ÌÅ⃔eÙÍ›7oÞ¼¹¤…±,  ˜Ù–(¬X±rÿþƒ.©c({ö%ÉH¡ûÿïF»@áHû„…¶lYhC —åÙþ µk.ÔEœ-Þ!Ò>h—\·Têð‘Eؽµ?Îm‰‚cÛ¹ÛØ8–¡o‰ IDAT)ÜΩÙdÌÈHÏÉͨW¯ C@ Í[{'#óøñã¹¹yró§”â_ü‹ñ/þÅ¿%ú Z­¶E‹ûÂB«Ù?bçÿS(._:£Pª¢kÅ‹¢U‡õþq&=#×bÜ/Ÿ Š’BÁE„ÙÞh†c9ÅÍÔ£ÉP§N‚Å|w-¯Ì¬¬C‡רQ=((«AñšÜÜœôôÛmÛ´®V­š½þ+ÔÿK›“Õ¸I+A0K¢€µ†Tqë¸ #·+ñGÂCµvú﮽š˜EQÊÓÓ3re H)E+¥4¢FÔ©ÿ!¤ÐÚ .\¬['>ýŽÎ`̹'GÞµKß9 jMˆ›_†ll©‚øÅý*))éžìUøø /µmÓÚ>’§åŸ ÃPÉŠg©ººI¢·Ò3róôzA¥Rk«WQðœóàP‹EÕª”¼]ÆL9 w2óìóJ’À±>ë A{KNNî;>ºš®Z­ tˆtдào!£`PH”C¶ÜìT‡˜ (9ÒM LpÞZÙn©Òâ0f“õè±S‡²Z­±±1õêÕÍÌÌLI¹võêU^ߦusm ÒÎ ˜±BŠÍ¨RñΗÓÕWÔת(þíÛ·Ÿ2e²íóÀƒgÍšéGûüä“Ã"##çÏŸç³{8aÂD–Søê •:?Vˆ(XlþJUÐÑ#{š4k ’Õ¾ŸËUa² õR~°¬â¿³ÉkÖ¬‰©=`À#f³yõk† ¬T*wìØuôè±¾}û4m\ŸÉfÿK¿“ªU)Õ¶Œ;u¬)'Ðét{vï=uú¿¾}û4L¬{'3;"<ÈÞþÇñšOjѲ£Ù”k‹}¯êÁGÆÿÉö¿â„ £G¸ý¼eóþûãgÍšU[Æ}¶iß¾ÃþýûýkŸgÍšýꫯ†„ûÑ>/^¼¤oß¾±±1~´Ï+VüÔ´iÓfÍšúü>»›?ä^ÿkÛºñ¥Kɉ‰ l1šÀðÒÎÿå`”¿:ÿµÿêœÅ!¥r³Sí“Ù[¶ì&lŸÒöÕyǪfüÓ,ÿýwF£Q8À`0<öØLžòä“O †.]:תUëÂ…‹¹yF(|…Ûg|àNï`Æ¢(æää<öØÇO—3êõf÷·Ä›·Zz÷ã>æý÷Ç›¦ûR¥¯IÔ¨Õõë׿rùJ½ºu¾Zú刑/wêÔ¥M›Ö_.YÌqÜ¥KÉqqqZm Tx‚LI4ê9ctTÍgŸ{^£Ñ,_ö¿Ý{ö¼õÖ˜ æ…„T“3fdÞÁz.)öSÀ´nsÿ©S§ªÎ±8°Jëªv¼½zõR«ÕUçx»téR‰ÍiJë®È’Ç{ 9°cç~_ÛU¦L¶b3ÔUØFlÆ¿’n§Lv©¬×-Ï3M›6ÉÍË»x)™çù/—,žç8.-íVnn^ݺu• ÖMÆäËWÚ·o'géÖµë¼yŸäåéäŒ<Ï`%—¯<ù)mÛ¶Åã­ÄÜwß} …¢êo£FªÚ%ìËxjÿsM²ð’E˜}À9W±vµb7â¹´ß·¢6èœRþZT_3R¥°ZŒáa¡ƒ Z³f͵k×ë׫ûàƒfgç¤\»–—§{ðÁꉢÁ}Æ-Zeffi4&£I« `ºuëVÍbÎÃöyÚ‡) <@vŽ#‚Tˆþs#‰ìÅ–ç7ái¾bwÒ“H|ˆ J%«U]ó¹çž;}úô… ¬V«J¥JHHhРZ­,:{õÁ2Œ(J¢(Q®øŒ‚ Šbñ‹ 2¸°/‚ È=Ö劽‰¥rÏ‘DÁlÊ lß¾]›6­%‰2 aFÌVsžýâo2<ÏçéLÀ²¢Õ*¨5AíÛ·kݺ5¥ù­“AŸ-BžÎäµï‚ â_L™<¥Zh0À‹¨ÿ\ƒšñ5¨$š 9„0,§ „ˆ‚d¬ÎÊO&"L›ž‘—‘•'¯ Ù,Ë©Õj†aEQ0’$€(J<ÏG„i±zAÔâ«*J‚ÕäIJYÕ‰’ƒ@”€g4ªüÉ]±Û·Lh×®ý°ñ}¦N› /Ìñeý‡£©¤´ ÂCA|›»zŸX‚ø ²ÿ/‚ RJ¸¢"¤ÂÞÆ®8¼A2|Ð8>Vpü‚ ‚ HãÇþ¿·Ò3RnÞQ(Õx¤ ±šµj†EF„cU ‚ ¾¥ÿÒog¦eèyžW²Ø… e åù´ ÃdD„‡am”ôÿEÄ_ð ÿ_ÜHÏæ8®aýFx ¤Ì9sáü[Ù¨ÿJŠÕj=rä&$$`… âkètºsçÎ@+_ÞÏ"ýYŽÑjðD"Hy¢Õp¬롤=z¤uëVÉÉÉ©©8o<‚ ¾ˆÉdJNNNNNöñý,züŽCï)Ÿ ã'2ñ–¡C‡b% ⛄‡‡ûÅ= ‚ ‚ Hããþ¿8ÿ3‚ ‚ HÕ¢ö¿°°°ŒŒ ÷1"7 çHl*HéAÿ_AüõÿõP"˜Íf¥Ré,õ°Á[W‚ Rñ”¬ÿ7##Ã¥iG~ÒËØÇØâíӸυø&“éüùóž987Œ*Ø$<©+Ä ¸þ/‚ H™P6þöf—aùqn ; EþŒJ¥jÒ¤‰R©4›ÍÞ5›ªÓ$lu…ÍA¹ÇúÒ¬ð!›ÌE=§íãQÞUb, qk–±5ûÆS5›D±u… ‚T|Ðÿ×^ïycÿs)½ë°ÃžßJ€ÉdºpáBÓ¦MËdk•»I”m]!‚ ˆwÒh@,Ùš¿Ýv%’’xü¯û«`“pèÿ¥äKÒB¯e”–ø¬" ÿ/‚ þ‚ïøÿÒì#½œÿ¯(G¯7hôk,K±âÏÙlìþ¤WÖ&áI]!‚ H¹âýüÏcûdŸÍol¹ÐùïñÚ§Õ¹ÙTú&þ¿¥ýAÊ„Œÿs~»tïp9ºß“0⧸éÿ-öüºoT•¸®°Ù ‚ þ¡ÿ¤(!Åöi¢•×óºBAü\ÿAœ {¨Aõ‚ H1´k×£ñ ¦N›:zôÛ¨ÿAAŸ ˜ñ¡¡¡XGRæÜ¾“†•à²ÿ/šAÊWÿíØ±ëAÊœšQX ^säÈ‘ÀÀÀ„„¬ A| NwîÜ9håûú¯È·éöíZà¹D2çêµX ^“œœŽúAÄd2%''ÀãÍéбùÿÚô-Õü/“6÷éý0žlA*’¡C‡b% ⛄‡‡Ë÷¨Ó§Nùò~2nb1£lJ$þÔšlU_;õ¾±?¶KÌ>àðAAÿ_Aü_òÿuñXAÿ_AAªEé?µ&ÄhÈÆê®R¨5!Ζ69Ò!Þ!ÆeXا,j;ÎÙrZ£ý\ÿA¤LÀõßòUüjÌö`ŸÀ!àá6ÝdwSÑo#‚ ê?)Gd½åaJÏx.àPê!‚ ?¬ÿ[òáæ¶Ž6‡î¶I›m¤‚qÙ¹Œ ‚ H!½G½µÿeS‘=‚qR䞀¦¾JO»ví8€õ€ ˆï3uÚTxydŽoîS”0ÌÿZàp«ªŒçÖ¸2´Ûù Ðùù_Aò{è~²p€Ï¤° û³ÿçvNéœÌ‹ÁC ¾“ø)¸þ/‚ HiD`!ýWÞ ´UV:7—Á9Ò}Œ'a7¿bƒDAª¸ä\þˆ}PR— -âµ ðêCñs|Çÿ×å˜>Εöç‚Tô«*@A¤Üž5¸þ‚ ~ ®ÿ‹ ˆ¿àKëÿºàžé?œ#AAäžpÏÖÿð|ŽÀç_ùÏ?‡m_ a <Ï/_þ]ãF ñ\"H¥ýAü[ÿmLÚì¡L¹š2tèc‰‰‰Çñ<¯P(xž——/_ž1cÆ£Ù±}KttžNAAßÕ%Z#$""¢N:J¥RQ€f& @óÒ‹Ï 0xÛ¶MÁÁÁ|8‚ ‚ ÎøÃú¿>˲ ;lBçùÔÔÔ«))*•jĈW+^üaûFŠçÈ‘#çÎÃz@ÄÑétGŽ9räHZZš/ï'çµ)÷öÚ°}Ÿ>}†(Šì… çÝ5çE&ìœs¤œÞïœÒ~›HÅÔ9‚4o~ßĉ““!<<Œ¢ÄC X†uŽ *•jèСX‚ø,ááá~q›òƒþ_BˆƒýOîÿåyÞ–†RJdà"ðd…1ÏE<ë)sdÿ_A¤ôú¯¢×{SkBì?¶xyF@—órgïüá þdýÇ0Œ×{R†)¬sAñIîê½{Ðÿ[”™Gövö –íö&@ñ’$‘š\5+é>#Xç‚ âŒ?úÿúÜ*Àãÿ\ìqqý¿nԆ˟ŠJ権=¬s·/aPØúîüAA2|âØ)+¿xÐðS§M_óÿ¥öúÏç!„ØìE¥ñ¤ÿ×;‚ýO.ÕFQ¥IÅ×9‚ ‚ ¥„+V!ú{÷îÍÍÍu“àðáä,Üí»QT UºÎiá~`çx¤0¸þ/‚ ˆ—Ïê‰þó%ºvërö̹ ç‹™îÿþŽŠúÉsUš¯¬À:GAŸÅôß„ñãðôÝW‹Aô…ÝîÖ&nû?WJúRÉ*‡W±‚(°xf½ýAJ' é¿Ê†(I‚(•$þ€Ë=y°}]ŸÚI¤2UŽ(<¡`7ïOQà88‚ HùÁ«ýò+Š‚ ÀÍ×!rØkzwJ€¤=çzwJHÚsNŽqø*§”¿Ú'°A"m)K¹“>H¹Ö›?7NRÄ…V…z€V‚vVxÅ&@ñq|Éÿ×Ep%µÿè¿ÌŒ; 4Òê‘®ÿÜqÚ&Vl›êÝ)áϧA°%°E:„ÝGÊÒí¤RÞõæÏ“ÁÛ"‚ ro©œúOEQ ¾^PK×{(g_³íßG{4³mjͶmñöÛwNPl¤Ë¯•C…W@½ùcãÄûN±È @ÛþÚâÑÿAÁ/ý}ûµÂÀn`ìló EIöùRJÿûì¶°}ä‡[¸Oà>Òå×J@ÅÔ›Êbœ–²dÐ>Òb±ìܹ”JeDD0 ‡Õ… Ƚ%77÷Î;`6›ÓÓÓ ‹/ï°Ÿé¿¢†É²Ïælëÿ=´'!¥íZµÏn ÛOôm³rÃ?¶°s—¹À©Ã·òÿ«˜zóCý‡Sÿyú²ç,;Úµ+<ýô3AAAÍ›7…BñÜsÏau!ro¹~ýúž={d!xâÄ Ô÷ꛯÿ7m¹ú—ÿ•‰þ{z@÷ŠÄ!Á}Ûü¸v?ê¿ò®7lœx£ôPüAVÀ~ø«AŸ¢Q£F5²ùñGŸÞáÊ>ÿ !@Hifùß{dò¿?ö<7¨“mS¶@Q ìãsÓœ&•lþ— «7lœx£D©ôøÁú¿•PÿŒÿ‘Rz%ùB±YjFŰœëÚøfÕN(v&ÿýfÕNûQh¶öñòW°¯fÿ«ó*ßø¿ ¨7?mœx[DAPÿ•õ!±Äjµ•Q:r`wõˆš›Ö­I a! ‚MíÉáLJ¿¦Öhœ·öʰ¶ð—?mó¼ó±òõç–¬·"'c±ZY¦ªO-÷êÚÂrÀ¾Ÿ×e@ÿ_Aüðÿ­\ÍÖ®”–©Ô(†tïÙ3>>¶^ƒDHKKU)U!ÕBàüÙÓ ËéíÃάڰϋ}ð.WeëÍ%’DuclÍ J@÷18ç3‚ HCô_å€ê†WÓräqbÁáµngê€UY)Èáj±rÀ!Œ å ËØšAê„^½fÀÚð\ÿA¤L ç"žÚü†ÆuÃ× sù«mŽ@¹÷×`QË¿Aå^þ A©Ø'ŽÓª¢T>èˆ @‡¸úŠ ‚ø>¾þo•[ŠtcÒfl”‚ ‚TeªœþCûŸïà°š‚K»víqð‚ ~ÁÔiSG~õŸ¯€ö?ß<Aäžé?Z•FU˜ýÏÞ¸U5 ]jMˆü)ªBbì#ˆKdÿ_AÄ ¨Ýíå…m[çÕK«ˆø3²å\n*Ä91‚ ‚ åW”0„JjôÜþ÷øOoÞ¼¥Ødf³û1]Êß Îèw/aPôô/8 AÄßñ©õ»y«œýoø³/BÐù¯=ƒH»™"-œg ¯þcÕ¡ƒ{äðñc‡V¯^åFÊTM㟌s—nQ"Çcÿ/‚ ‚T D°šs²Så/š€ÐcG÷5nÒRŒ§.¤…‡hâcc°ŽJ#€ª¬´?j[Ø¡B\ÖL©®ËWS2sŒ ëÖPªO<Òü¾v}–í׳çÎ׫[çèñ‹÷j÷ºvéà›õÖµÛøþ/‚ þ!°€Ñ;v{Òò¾z—.]NH¨o‹ ‰ÂñH¹ Á2Iƒ ‚ HYQ ×ÿuOEúÿÊv¬ªitãöá\!ön8˜q®ÿ‹ R lwOŠö¿r@.ÃUJÚŸË qˆ±¥G÷$''§¦¦b= ⃘L¦ääääädßO®8…XÙÀõ?Ÿ|\ÿ×s¶nÝÙ¿¬ A|ììì­[·À€þºuïâ³ëÿrUíÄlLÚŒAüš‘#Gb% â›DFFÊ÷¨Ô7|y?qý_Aü\ÿA×ÿõ-ÐÿAA*Pµ¡ýAüôÿEñ»›'ÚÿAAª\± ±’ö?ß¡*/Žw÷B£…àê+‚ âoøÐú¿Ô…´CûrÏÀÙþA䞀þ¿å…ýšfUs}3µ&DþU!1ö‰Ä%èÿ‹ ˆ¿àþ¿´êt8¡ý¯ÂÄŸmI¢‚s“AA²æ®Þ«ró?{nÿ{ü‰§7oÞRl2³Ùì²Ó¶ÊmÕåæõ!c§0âôÿE)'a…¥W6¦MŸV@ç¿ö 8 ífŠüY´pž-¼úU‡î‘ÃÇZ½z6#—8w饆åø*Öÿë|‰Ñ–xÔ8‚ H9=qªžýoòã¡À èüמÇj þ”-Ü­[[8..6..[–KñgÓyöCÝH@猂 â§øÿ¯+¸ww@˜ü¯€‚ÕjŠ®ŸqûÎI"„ w‚”„R&3+++óN­Zq‚Õ„5â ²ÿ/‚ â¥ü+ð.Ôÿ+&¥J[¿^£›i×®_¿*Š”0„! !@† a‘#€–0€a`€P’w&„ÉP @€R @)¥òW[hþ@ä(b—,ÿ7J $Ë? ”%”Rù DÎ@€ä”7O)%@©.HV …í·‰³KT¨"@)!$¿é¹Éÿ ·6»´àWBä ‘›‘³S Ä!ØrË%æo‰R aÀ–XÞ¡  ù¥äï‘üÚD(ù*’¨D$ ”Šr J%J%"IùMK’D*Q (HT¢ðš:õ0 ˜Í&W×(‚ ‚”©î+€sH`6êx^U»vÙøGá®>‚ü¬¶8 ®åÒݯö¿Øžßö*1ÿy Ķÿ§àÿ‚ßmÇ­»owó’BpþJ\mÓ.+R!Í’Rûfcÿ•:·@Û´ðïòÏÔa£Û)´Í»é<Ú¦mß oî¶çÂ폑ÛZœc›¤T¬&³ÉàúREAüòÿu5 ³ÿµZV«Ïœ¿`¶X” …Ë‚ ‚ ˆ38ÂÏÏÅŸÙ|ùòe`ά¤òëÿ"â/øàú¿öàú¿þR©lذ©B¡Éâ0›,X?‚ ‚¯ÿ”*­ ·Ò® :«U$,Ãä“gy´|Á°y†CX`B2À†PBJ¡À2ùþ üaòòÀ+Jåñö´°GAˆRšïRàêaç¾@)ÿ»yå?þŸÎ…ÿÇݰ]Øû ûGÅB@öÕ(Îÿlƒ3í>î&#öºëáA‰mxhÁ&ì¼Cìý:ÙEþ—¡@B ü?ä% {1 ˆ’­qJ’Xà¸$Ñü&)Q T”¿œX¢¢(1„H’„ ÔFFF±,k6é°%x®ÿ‹ Röúã•¢(]ºt.HSW¥,pâEÿ¤Ü¨šþ”šM†ŒÌÛÉÉçêÔIä8¥ ˜±- ‚ ÷@ÿñ¼úÊåsAAÚèè:‚Õh6çRIÂ:B2‡†åø¨¨Ø›7S®_¿_õ‚ HeÂÇ×ÿ-äÿÁ0\Nnnõˆ(‹EoµšPü!U]¤Ù<)ÛŒ”J‚Õl1ë#"¢ty¹ ƒ#qAŠƒsž†aXÁ‚« UY÷1”ÂíŒ\Τ7”JeVªå8†R© 3Š¢À)4%—UšvíÚ8pëAßgê´©àsëÿR{ý‡ ˆýûg4Y/&߸pábvv¶Á`P©T!!!uêÔ©_·¶6P!IbÙfDA †+B2 †×¨oŸèέ åºOá5êËEØe»Y71H•¬Å*8yáСCV«56¦vݺñ™™Y×®]»zõª^ß¶å} 5jÖÙ˜çuF—¯e¸HQ ÿ/‚ HÉ)bý7Oî¥ö:©ÂdŠ3¤¢õ«¸v%uïÞ½1µkõïß×l6¯^½vÈA ¥b×ν m˜PØbù IDAT@r“ñþû;Ô¨!Çëõú={ö»Éˆ ‚ &ï>¶J³!Ù.h³†×¨/œ8X‹Mé°e—YŠŠt£&6h³2ºÜ—aû”¶¯žïâˆ5™Åÿþ;£Ñ¨ èg0|Øä)öŒÑ`ìܹc­ZÑ/^Ôâ0ã‹]ÆÎ;vêÜeãÆM¢(æææ>þø°ã'Ž•A©¬L™ìõùúû_2µ¾ýÃ>2:º~ýº3gÎÄ)Q®B[[[ì+wÝý‰ï?ÿk wÝÕ[¨àøßìOeiöPÑdÇÌÎjßÌê–œ¨‹vpÒ}¸ƒÓèí¬lOñ ÓµH)•H$“ÉäœÙ³ÿñŸmÿþ—^ú×€ßÿÔ“O\ýG×ìÜù 7¼»¡¡!‹+å)T0N¿ûÝ×=òHß'>ñÉ•+W<÷ÿþ?n—«µ5· JÅø_NaËñ¿¥ç¿ò&žÙ¥÷–Ž/2xò@ffÎîšoÉÜ—´3…6—½*8û’ÖÍÍÍ@  Ý|óM?üáz{ïþÚW»óÎO\yåúnx÷èhÄZ çš7ÙçÎ=‰<û?ÿ~åÊGŽùÙ‹?¿á†ë D©LÓ·Û¨v“J¥Âá°ˆˆ´Ûy?«sþ—)¦¼E²3\I­’SÛ™ñ›#üÕT¶H§¼^ÿÒ¥KÞ\¼¸ûé§¿qÇw¾ó]ׯ_¿nûö§Ü.×áCGº»»~Ÿi† \°`Þ_|ôc^ŸïÙ¿ÿö/þÿ—6þO=þØWÚÛ;òD©^yåWÒ×·­««ëöÛo§BØÍ‰'ž{î9Ùdçý4D ô —IñÖµé4ΞҋœÆ¿ÝU8‹Ö¦Ûe^²fM8>|èhCƒ{ûö§>ûÙÏ|ýë_s»\'O†Â#‹/npë"޼¹¡gƒUäÚkßõ•G¿<22Z¨ ¦fÓ¦M„?öÔÕÕµiÓ¦M›lþ²Ž4/[û_¡îÑÌüÌÌ"ý¶Ùa+ïJJ]ÏÔv;{f‘%­‡ÓߨG,îèœõþ÷¿ÿùçŸ?öÖñ%K½ç†‚áco‡GÞóž÷t´·$âgмâŠõCCÃ>¯7‹·´¶)Ã}Ýu×*¨I6¿þ¯»X<ÌDŸò¶æÌì•ÿ††‚¿Ýõ»9sfu_t!Õ”Q(þí®ß­_wY[°4Œÿ€™Í^´è¢U«ÖPG@ÙíÛ÷êÁCGÖ¯»œªØ(ÿ¹\ÆÜ9³¨ `&Ì3+ QP«qýß<½)Í>Ÿ×ëåýf‚×ëmnn®ëðõ}G#Ã.V|Àädòžæüªþ2‘.{ºÈb®ÿ À)lyýßsÜ’ÿ:Súüœ ì?ÂÆ_óM ?¬ëŒ˜þ7Nö÷ çÿ`Óðçõµeº‰-Öø_À4¹‹Eª˜±ßb’õ¯l|K ÿú2íã9âv»ý~¿ˆ(¥8€ª‹Çã‘HDDR©ÔÈȈˆˆ,²Û7θüÇW ›)Òù{÷Ýw·´´\~ùå"ÒÔÔ´qãFª @uíÛ·ïŸþéŸD$ îÞ½[DV¬8ÒÛûWöÿ«sò8ÇO~ò*€­\~ùåÖÒŒ·l±ó"]PÀŒþÓã:€õ¸ù8×ÿà6ºþo¾¯ÆÔúTš5¶73mMdóÈ»€pý_ ÿpt,>‡“ÿùÀ1œzý_Ôsyñƒñ¿œÂFãóqç †œ‚¨Ì°Bg|á_ ìß8çÐþÀ1¸þ/”ù ¾0þ Ìl>þ—ö?€úBþàŒÿà¶ÿ‰DÉõ"‰îÚµ'’ÿ8ã`:|>ïW¬õz½ä?€z¡µÆÿ”=ÇÿZý¿³."ÿp˜¡¡!·Û¨ v“J¥Âá°ˆÄb1‘V»í^¦ÿ—üÀ1Ö¬¹äÃþð7¿)]]]·ß~;ÀnNœ8ñÜsωȶG¶‰ÈÇïÚméÿà0ÍÍÍ›6m¢ØVWW—õgjóf;î^¦ÿ—ñƒñ¿0Œÿ¨;^¯Gèÿ(;®ÿ ò”Žëÿp Û^ÿ—üPȃñ¿@þ@Éÿ PfŒÿùJÇø_NÁø_ÿ tŒÿòJÆø_€2cü/ÈP:Æÿp ›ÿ¥ÿ€c˜¦944$"n·;P!ì&•J…Ãai·ó~’ÿ8Æ+¯üª£Cúú¶uuuÝ~ûíT»9qâÄsÏ='""›ÈP6›6m¢ØSWW—õ7jóf[ï'ù Ìÿ ò”Žñ¿œ‚ëÿ€ü¥ãú¿@þ@Éÿ PfŒÿùJÇø_NÁø_ÿ tŒÿòJÆø_€2cü/ÈP:Æÿp Æÿ€ü¥cü/ÿP2Æÿv‘H$©‡ mÞ¼¹»»»··—ª`7;vì‘k®é¿å–›m;þ—üØ%ü =¶|ùjmƨâúúú¨öÔÝÝmýzpË;ï'ý¿€-466._±¦©©‰ª(‚ñ¿œÂæãiÿì" ê4ý¿€Gû` Vÿ¯2¯a¨p8ìn (§T2Õìó555Q€êç¿t:ÕÒÒ2øöÉÎŽ¶T*îñxè¢fŽËÝpjðDÀ0Ó)jc2¬ñ¿›6mîîîîíí¥BØÍÀÀÀŽ;DD¤Ï1ù/™ˆ,ìê>tà5\†hÍ!€ÀLPZ\ÃáááÓ/^‘LF©‘Éëëë£ØSww·õ7jÛ6[ïçyù/•Œy¼‹—¬;}î;<§Ô¹çÏ~½Ÿ·ªÌ7¿d­2{U™å\88q6wËyŸ03õ¤7}îC¨³?xç­9ßV2ŸêsÓ™:ë·€>ïy+¥æ†Øì;ÉʉRäsnêt*‹ÇFøª™ÿDt2I&"TS$‰ÆÆÆ¼@aü/§°ùø_®ÿáøð7pô˜2<ã'¨@þ«AËW¬ijj?Aå öpý_(‹Üþ_·%•JŸ€#l}hëÆŸ²íîåùÖ1 W2Éù_PÏÁÏÐZNF¢MM-_G›Ïí6´6ËX0J646Sá€êç? ž.w,–>täŽD"§­­íâ‹/^rñsƒY ]|Ê1yÖø_š ùoÎüÙßþÃþ™Û¡9óWXë?QÞõ™ƒú †+™T{^=ô«_ý*™L^xá‹/:sfèØ±cG}ÇåkWx=yó¦\›æ¿™Î|¶Ý4êËÝtä艗^zé ºþøoŒÇãßþú÷755ýë¿þ¢¿¿¿££cŲ…¢E ^ýG=óæÎ±æŒŒ¾ôR‘‚€šdóñ¿Ó:ÿóœù+¬[öœñ÷™r¿†œ"Ù÷yW˜³Úœù…ÒdÎgZó¾–¼Óã_ÔøâpÃpÅâæ¾×^óù¼ï{߉D"·Þzû–-[o»ý#‘HäZ«káÁƒ#Ñ´:ÿ AÙÿøêï¼ö'?Ù™N§ƒÁЭ·Þ¾{÷®BpXþ³’“uË›¨²—±²QÎÂã×`´æH¾–¿"+™Nö*ôZ&³dæ¡ÐTépÊp%“úäÉ“—¬Y …o»í¿y}¾þ—¡µþðûèÈÈèúõWœ9s&žH+ÃU¨`[[ëã=z×Ý÷|ÿû?°Öp×]½… ¢TŒÿà6ÿ;Ùü7ùö­ì ThºÐœ’V>ýµMi¯ÖòŸ2Éd2™œ=gÖ?~ÿù×öïÿÚW üO>ùøo»kçÎZ[Zb±¸RF¡‚étúÝï¾î‘m_úÄ=#Ñè·¾¹Ýív*€­ó_v+WÍh·i¡•gšîrš*'³'™¶Ìñ}ÐÄAÇÓº¹ÙB¡ðÍ|Ó%—\Ò{ç'N¾ýöÇï¸ëÊ+×ßpûGG#ÍÍÍ€?wGVÁt: …Ÿ}ö­\¹âÈ‘#?ûÙÏÓétÁ‚(×ÿ€²¨æù_râWÙ×_R ›üÂ9½Û„¿š‘N'½žÀÒ¥KÞ\|q÷Ó;¾~ÇÇïz×»Þ½~ýºíßxÒív>|¤»»;ào6SÃ… .˜?÷/þâ/½>ß³Ï>ó‹_¼´ñÜ÷øc¶·wæ-@Ýå¿ì Xá•XÍxyC[ñ0GÔ«aZ›.Wú’5köîÝ{øðÀ…vmÿÆ“?ùéΛþËn·ëÄÉÁPxäÊwlp»Ò‰TÁ‚Ç6ô¼ããwü•ÛíºöÚw}åÑGÂ#£.wSÞ‚˜šÍ›7www÷ööRìf```ÇŽ"rÍ5ý·Ür³3®ÿ[’ì¡S‹DÙC( ÉpÍ…V2ý×’w…ã—ÌzL:t´x4ÔÑ1÷ýïÿóÏ?ì­ãK_üžnÃÇŽŒ¼ç=ïéhÄ£§Š¼âŠõCCAŸÏ‹Å[ZÚ•ÑpÝu×*ˆ)èëë£ØSww·õ7êÁ-[켟*™Œ °ø[æìÞõËU«×&ãaíÀQv4Ρ ?‰ÜM>ÿœH4¾wïÞ$“Idz|ùòeË–yšÜ‘Ñ·Ítª|•Ç×¶ïÕ]—¬½r4<˜™ûúë/îþݫǪU ×^s•=ßk¯ûOýýý|JØŸu°r4‘Ÿýüå*îÉÚ5>|tٲř9í9þúoÙMt„?L_* ý¡ÙßÙ³áëׯ×ZJ†JÄGFÃ'Š à˜rA*Ìñù̇²3ÍT8tÒ0\ ^e¸L3•LD'à¦\“Äõ€üÌh LÇã#•,ùÀ‘jùú¿pòÇàú¿œ¢F®ÿ €Ú0ÁñZët:H$gt'\.—⺞Šbü/ÌxþK¥RiÓ5kv·Çë›ÑˆF£§ßt)·›ñ(UÊ©t:Š.[q…6S±hHDD”ˆž{ilð,ìZöÆþ_·¶úÝ.WfªÛúX­Óð @M²ùøß‚ù/ wξH›©x,<Ó;O'›¼ŽÎ®á3ÇÚÛÛÆh*‹§:guÍñ·ÎèÖÃáàÐéãž&Wvëce¶žwÓUÈé´ †–,Ÿ…M®À~$‘ÎY³ÙÛÒÒârVëã¢ÅkRÉhp踈Ì\ëc“'° kÙ‘C{2­ÛúøM(bÆ®ÿ À¶>´UD>~GÐIùOk3§RImšÚ¬ÄÕ«LÓL¥R±x\kSİZc±ðhxp¦7‹øs²[+¶õñ›¨NþË‚•¹z©ÎÑ—i}|ûäa³"é3š5§Ûj}‘Jn={Ó.§ãŠaü/T"ÿ‰èñù¯­ã‚ ×;|æX‰ÐÌV룙NW&ÿ¥ÓÙ­RÉ­Ÿ¿iò¨vþÓ~h÷Þ³»H©O^Vê~èüÙ(mš•8ú0o+•Ùzº"/T’SÇÿ‰€½½½;ž¼¬PÜñäe½½½º=4f:m¦+Ñþ§Tzò[ÿþ^,²ª[ÞwÝô7 PÅü—'Æ}éáÏìØ±£H™/=ü™’w$_^L§ÍtÑü·lå•o¼öJöÄT`º¤­ß|Ó5yçÿðÿü<]j`%ÿ“¶zõš›nºióféîîîíí¥BØÍÀÀ€•‘¶mëÇÿ=?þåIf…š­Æ¿ݹ%3Í‚=°+V÷ìßÛ¿oÿ²•çML5þ¹JÚz‘~áR»Œón@^~¿¿¯¯z`[ÝÝÝÖŸ©mÛl½ŸÆDñOçõÅ/l.Tä‹_ج§ _d4MÓÔùoû^ý·«{òNLé–žüÖE¤ÐzŠmçæá‡>=½=Éßþ§ t¾¾ï—"*ïÄÿQ`…ÿçÇ¿(¸ª÷ö?`ò¸þ/T$ÿlš;çÔÛEDÏ@SVÅzGón¥ÐÖo¾é3½i€ªå?-º2¿µ _/®"ùH«ªm]¨5¿þ¯]½¾–ŠOªZ[Ï»i€ªå?­+4F!oÊôx<©T%â‘»ÁS­­çÝ4€¼6lèéïï§ØßÖ‡¶Šƒ¯ÿ+ºRíZD<ÞÖH$*"±X\D+Qé”Ym74(‹Å+¿õìM»ÝnþÁÔ¼ÆÆ—ËŸ€ó_…$‘ÆÆÈêU«¼Íí"rñÒ+DdîÂ¥•܇þã-ÖDå·žÙ4j^08tæÔ1¯§¸?Œÿ€šÊ"2:rJD‰ˆˆQÜs_‹÷âõµ]ؽæà¿mmõ»]D@@}ç?K2á]A K&"­í ;:»†Ïkoo¯ÛzðúÚ¬‰hdxj €Ù|ü¯Á;TX42Ô9kv0J§Íú¬¯¯-¶n™œWÒòà$ZK*•ŠÅãZ›ÔFˆœ¿Íëÿp ›_ÿ·´þßÓg†öìÙ ˆˆu6÷Ü×É}ÀX»vuG;mQÇ+!ÿ »kÏÜÙÝÝPq¨7áPø·¿ýÝúu—µµµRcugZã{z®jmm½ì²ËDÄãñ<øàƒT€êêïïþùçE$ îÞ½[DD^®‘üwðБEÝ®^})o3êÓÞ½{X¿n-UQ]/¿ü2•ÀVzzzzzz²çØü4¯%ÿçr©¹sfñ£nÍ3˘è_ÌÁCGø›/¼º÷5ªkúrÿÀA¶|nËO½éþ{ ƒKýæÊ>«_vÎËnðã´`Óü'"W÷0ühg(<ºté’;ïºgåŠEK/Ù¾ãëCáþè…?yß{©Ÿ¼°ÈœB=¿\ÿÊ‚þ_`ÚQ&íïÿˆÜzëmË–,ŒŽžY¹²ûƒö!ù·—_‰ÇTÀVÊvýßÖö…Á¡ãÅçLþYÀA|¾æ|äÏEë×­‰E†E$ ½ó®lll4 £ÉÓDƒÔ›_ÿ×]ÆueGºÖö…Å&ü¡fhm®_·FDbçõ`½cý%Z›ñX˜*ØJ…ú[ÛZ·ì9Ù9Ï΋†bÑи™AÂ_y1þ€SØ|üo9ó_pèx&Ìe7ïY­[Þ—Y€à¤üW$Ns³ãÓä®Ìfhب£üWÒ¸ÀA‰äÛoŸ:2ðæé3Áh,¦´¨¬++¥¼Þ¦ŽŽ¶ŽöÖEÝz*€=uww[£ܲÅÎû9­üþ=ï40¾Í/oû¦ñ¿œÂæãéÿ¦kÇÿ`§o.ª˜¦âý¿öWFŒÿ€² ý(Cþ£ÿ@þêÈ$Çÿê‡Í¯ÿË70ãéJØ íÕ§µN¥ÒÉd²øb n·‹ƒÉlˆãÿ*†ñ¿œ‚ñ¿(&™LE£ñ–¶Ù³Z‹/‡†Oy½M ¼kNÊ´ÿÈ8'•JË­0µÇ‹/ìóù››G^ookq»9¥ˆ½èÂhÿ+#kü/'ÒòŸƒ…ÂáÖ¶Ù¦6c±ø$ÂbÊãñ´´Î …Ow´·Q{ö¡”"ÿ¤<=S­í ÍÿT¡™õ&N‡ƒ³’ÉÔ$‹$“ÉŽŽYÁá`:¦”©¨7[>·å‰'³íîÍÓ9º§IDATxû_pè8‚¼LSGc±d2išæ$¯ «µN&“ÑXÌ45•°UÂ+ÒþÇñ»™ño¦ì¦¾Öö…y[ ó΄þßÊØ°¡‡ƒÿ8ÂÖ‡¶nÜø)Ûî^åŽÿkm_hµæ$ÂLaöt¦‡2.† ãü/g)[þ›|^pè8­}¨±üGÿoe0þì•ÿršî&ŸðÈ‚¨íüGû fó_¹‚c²RÂ$—ä#kÏüWäYÚÿ qýß\…üh„ÓC<ý¿G¨\û_æ°¿ìãÿr¦y?àDŒÿ¨˜Õ«×ÜtÓM›7Kwwwoo/ÀnvìØ!"Û¶õIÍ_ÿw|tËÌÉ~ªøÌºEÿo ä?Úÿ*Ãï÷÷õõQl«»»Ûú3µm›­÷“o& l!>/*§Œ¬ñ¿òŸƒ¹ ×Ñ£GÜzrÜGq\úÃvá¯È³¦iRE[qSU‹Þ†jnö½ñú¾ÎÎY^¯7•šà’¾n·kddô×÷-¾ø"à Ä^ù¯òÔ!›ÿ%ÿUËåjkkmokù—Þ¹lùêîîEÅ—ýõƒÞØ·pÁ¼¶¶VWÿ%ÿ@þs"ŸÏÛuÁBe¨Ã‡öïÞõJñ…[Z]]ó.\àóy©:»å¿)?‹’lØÐÓßßO=°¿­m•šÿ‹©1 £­µ¥©±qö¬Îh4V|a¯×¼^ç±Ó4‹´ÿ¥Óiª@þÃ9J)ŸÏëõz&l%RJ‘üì‰ñÃõ€üWS)lçèüÇñòPGŠ÷ÿ’ÿ qý_ ÆÑÿ pò0]´ÿŬ =üÀ¶>´uãÆO‘ÿ€šUüø?ÆÿÈ@­)ÞÂGû_qý_ ÿvÉ´ÿ„ñ¿ÕwúÌО=¯†Â#J”RJkÍ}uîEüþµk×t´·•1ÿÑþuˆëÿ¢˜¡áà®Ý{æÍ·dÉRj£ê‚Áà®]{Ö]qi[[ ñ¿g!ÿUÙ¡CK/Y°`¾×ë£6ª.øýþC‡ß\wùÏŽ¸þ/§àú¿(ú¸ÝóæÍõûT…øýyóÌááá’JOxÿ ÿ!'pøiù³¯×”ǭí+ø©³2ÓšÖ•5þwÓ¦ÍÝÝݽ½½T»رc‡ˆˆôÕ~þkm_:>ù…­‰É©Ø¾Ù(…øÚ¢‘á¼ó³æ]•W$ÿÑÿ[v}}}T{êîî¶þFmÛfëý¬tû_&eRàLshø+ôT&𠈨<ÎÿÈQ××ÿmm_hÝ233ÇGÀœgs¦ó®0»TN‘œæ]¿mÃß‚××–­éì™9 Ô§olúÛŸÎîÕZ?õÔöí;¾9Í5«ÂèÿØÍ ¶ÿew¼ZÓÁ¡ãÙíã[ærZs–¿Âñ¥Š7.ߺML&üådÄÌÃìùÙ33«­çVÃ`(tß}›D$OlÜx5óÑGÿÜ–‡Dä÷ßø§¶fŽÿ«Æÿp ›ÿµ×õ?²3Ùø|V(±MgÉ“í M×­Ö–Ö»ï¾[DøÌg¿÷½ï‹Èw¿û¿­ðwï½÷N9ü‰šÌù_¸fÀFföø¿²÷´Ú¼ëö¦¿òè#CCC/¼°óÓ÷?pìØ[_ýÚS7Þxã—é3ÍÄT²ŸR îx<îr¹ µÿÅãqwÃØ³˜&kü/-ª`ëüWÞö¶œ>ߺ}Ïù1õ¨“ßúæöO~rãþý¯ýøÇ?^²xѪU«üñ©…?q¹Œ–€ï׿þÕå—¯khhŸÿ’Éäkûöü^—‹kmê#ÿåneYÛ4 Ö-Ã/?úèÃ_øü©SƒsæÌýÌßü­aL½5Éå2Z[<ÃÁ¡Ÿüø‡©Túün^%" .¿¿9à÷.Úÿ ŽÔËõs"Wf´GæáôCaf…Ùk.iZ vÑÈpö ¥½ž†ûþúÓ/¾øâõ×_ïirMs|†Ïçñz=ÉT[<žPJ™~^%J”×ÛdF"‹'T= ¦òßFf´1át¡õLr‹ö’“ä&Ì1Éå ˆ"¢µÙÞø¯út:©uNÎçñ46»\J)ÃP†1ÖÏ›9à/‘H&1ª½,ÿ À)¸þoåd·ù9e¨/G²W+¦RqÞ@}ª©üçÄÓ»hæSÈ›‚ñ2§+Ïn´fü/ÿjAS“;•LYCGaÉdª±‘Õ\êf礨²Ù³fC§SÉW‰¨:­u*™…NÏ™=‹Ú€<ðÀ¼ÞÖ×× ëçõnß¾ýÍ7߬Ÿ×{Û‡n»÷Þ{l»{´sT™Ïç5 9sf&@;H&“Í>oS“‡ªÔ0ò_õy<^ÇK=…dŽ´d_K…†sö1þRO_ûÚS™éŸþô§öÙUúÔ…§žzÊqeó›ßðz+°ÝgŸ}vdd¤òeó›ßŒŽŽV~»ÿðÿpâĉʗݵk×àààÔÊîܹóàÁƒÎ*ksä?uáøñãŽ+‡y½Øî‰'ÒétåËŽŒŒTe»ƒƒƒ‰©ž‘~:eÃáp2™œZÙ3gÎD£Qg•%ÿÀF8þ€ƒuuuuu-üå/™™³aÃÉ;§¯oâe ÌùR_ßJ‰ˆ¬^ýÃ_üÿJ-•™“9šÈAû–ö‘9ú÷êg?™ü‡ó wíÞ3oî¼%K–RU wíÚ³îŠKÛÚˆ€€šEþ«²C‡–,^²`Á|¯ƒF ÕðO·hÄï÷:üæº+Èö•\cMƒ¾®{á“|9^_[½½ÞÚx‹ëíóì¸-ù¯Úo€Û=oÞ\¿?@UØß˜7ϦÃÑXk&LæuÕØ ŸäË™äi kéõÖLØ­«Ï³?´Œÿ¨zàðÓòg¯º^_ @‡íÔáq5 x½üS­Áü×Ú¾0ç–ýTñ‚“œ9*¶¡)ü°nNÿyQÛ\îÆ]@½…¿âùk,$Y¯”Ô[-eëÿ ωVÖœœù¶bÏ}›L³9\[üx2ܦ6'¹°6Å08ÜeþÁˬɗ\'¯ÝŠ€„¿ª}…ÍôrÚ­‡9 oÙM†…¿XÞ•Œoz_$g[y×︿‰9¿3¿«23ëçgeߨþô7¶?­µ>Ë´~ê©íÛw|sjù/kM0µIþÅóP¾Ë|1UKå¾2-‚ãs[f~pèxpèxfN‘âÙE²' MÚz¡ÝpÖˆ¼¿³gf Öó­`(tß}›D$OlÜx5óÑGÿÜ–‡Dä÷ßøKZaC£·Ùç™DLT"ÒØànhôF#CüÑÁh’¯´Îã`|’i¬–²µÿåÿW$Bå<5ɰ•½Øø"…V2%þó±ÐtÝjmi½ûî»EäÏ|ö{ßû¾ˆ|÷»ÿÛ ÷Þ{o©áOD WêU—(5A RJ›æòå« Wï“üS–¹ñ ˜ å?þ¯ZígöïºEµé¯<úÈÐÐÐ /ìüôý;öÖW¿öTggÇ7ÞøåGúL3Qêê"#§–,»¤¥¥õرñh"mæ9ÐP†¯Å×Þ1kŪË"#ƒ¼(Kø£½€]ò_v¬|Ìéóå}Eþ¨“ßúæöO~rãþý¯ýøÇ?^²xѪU«üñ)„?IÄG•¨yóÍQ*™Ð’'ÿ)1Ü JŒ‘ÐÉD|”·`ú²ª¥ ”÷uåä¼Z:Rj2¯·æ?·Ù¯·Æ>Øõözs~ª9âÃ\…Òg4ŸM¸òÚN‡´ LÈ0äË>úð>êÔàœ9s?ó7kzÊk‹ÇGâƒ#Ôjå¿ZêäuÕöQÅ_oí½ð _o½Åõöz÷ºf$ÿåm´ffOOi%µ N¸ò’¶î¸ŸÅ™"„¿IÐ^OÃ}ýé_|ñúë¯÷4¹´ÖT  ®”'ÿf1ùqy‹_Iñâ4™äN:âgS‘’µÙÞø¯út:©'}?È%Ënu«|ƪîÖ‹f>„Õ‰€©Tœ7@þ›YÕM]¶=½‹Öi>…µô¦Ê¥kAûøO²iêH42{vgñ²ét22Â1€ZÉ>Ÿ×0T8v70ju'•L5û|MMMT ŽòŸˆx<žâý_°9ÆÿÿDDÄeGhôø©# ¼š<þ£GßpüúTGþþ_¥ _³ïµW÷Ìîìôùg'#ÔPMþx<ºoïžî‹.PаMþs¹ŒÖÖÖ@KpçOºfÍê »Y±PDsÏ=÷Ó¸—ƒoìß÷ÚÞ¹sç´¶¶º\ä?€mòŸˆø¼ž®…ó Cí{moÿ¯~IMeÑðÏŸ?wÁüy>/C©6Èétª¥¥eðí“mZÇ[[[guvD£1j ( ¯×ã÷û½^RÊån85x"à˜éTÎ2yϵ@©ò^¼@%“±¡Sca°Á£Œ†C^kmë.C´æK˜ J‹kdddxøôÅ‹Wh3™Jžû•‰DcñX[k[¡s­0¦©‡ƒÃ^×›ÕéÔÞyÑyùOD<Þ–tZŸ8ñV$:j¦µR†2”¡”R†R¢”RJ†QJ‰¡ ¥ ±kk¾ˆˆ:;´X‰QZ´¥´ÖZë±mÖZ´h-¢µVÖSç{zì)«€ÖJÆJk­Dim[‘Ö¢ÆÊYψmíˆ)Z]½µ%™Ò’ù*•ƒD´(ëÓe#§”RJD+kZ”VZ)¥´¥•R"çfŠ(eW§”(k}V)QjìÑÙO¥Ê,¦´ˆ[Èš–³¥Ç6µÖ³ÿ›9¶«Úúp‹˜b*-¦ˆhѦe}DM멵˜Z+ÑiÓÔ¦õ±7uÚ0\Í^ó Ã5þr#±X,Op®uÀt¤’)§)çâyòŸˆjhô64x¬‘‰cqÊ ic)jìñØgŸ’ì'Î>³æ±h˜õ,Y_Ù"ç}eŸ>÷žSêÜóg¿ÞÏ[Uæ›_²V™½ªÌ‚r.œ?Š8›»å¼O˜Î™ÎzR›>÷!ÔÙ¼óÖœo+™Oõ¹éÌ õ[@Ÿ÷üÙ‘ç‡Øì;ÉʉRäsnêt*K&bãþ±0SÚ;/ߺ “‰H2¡vj§Ÿ ÿ€üòj%ÿÍ™¿bÂ93!³•ñ˜ÁüW­àõööO83’ÿÞþÃþBpÎüÖ­PjÿlÞ"ãgfŠçÜO¸<Í„…Ìž·<ûaÉW˜3E¦M.{züã'&œ™=sÖ\hù¼+@&üíܹsÝe‹2sŠÿ(ÒX¼TŠ”¥,@=„¿œ™Æ„éj†ºV­5Óu 0Óá/»ñO¦Ðÿ[ÞhMÐu 0sáoö¼åƒ'^Ï<5ñùÿJmœäÂ4ûT&üåtOªý/;æLY8ólÞ"®'ï "Ë`Âð'"*™Œ (×öèɰ[øË>þ¯½ó"®ÿPãá/çüeÎ4þØ-üåtÓþP/á/‰’ÿj?üYÇÿE"Ñ]»öD£QÃåj¤Öj8üYÇÿù|Þ+®Xë´©H$<` command). When commands are entered in the command prompt in the Veusz window, Veusz supports a simplified command syntax, whereq brackets following commands names, and commas, can replaced by spaces in Veusz commands (not Python commands). For example, :command:`Add('graph', name='foo')`, may be entered as :command:`Add 'graph' name='foo'`. The :command:`numpy` package is already imported into the command line interface (as `\*`), so you do not need to import it first. The command prompt supports history (use the up and down cursor keys to recall previous commands). Most of the commands listed below can be used in the in-program command line interface, using the embedding interface or using `veusz --listen`. Commands specific to particular modes are documented as such. Veusz also includes a new object-oriented version of the API, which is documented at new_api_. Commands and API ################ We list the allowed set of commands below Action ------ .. _Command.Action: :command:`Action('actionname', componentpath='.')` Initiates the specified action on the widget (component) given the action name. Actions perform certain automated routines. These include "fit" on a fit widget, and "zeroMargins" on grids. Add --- .. _Command.Add: :command:`Add('widgettype', name='nameforwidget', autoadd=True, optionalargs)` The Add command adds a graph into the current widget (See the :ref:`To ` command to change the current position). The first argument is the type of widget to add. These include "graph", "page", "axis", "xy" and "grid". :command:`name` is the name of the new widget (if not given, it will be generated from the type of the widget plus a number). The :command:`autoadd` parameter if set, constructs the default sub-widgets this widget has (for example, axes in a graph). Optionally, default values for the graph settings may be given, for example :command:`Add('axis', name='y', direction='vertical')`. Subsettings may be set by using double underscores, for example :command:`Add('xy', MarkerFill__color='red', ErrorBarLine__hide=True)`. Returns: Name of widget added. AddCustom --------- .. _Command.AddCustom: :command:`AddCustom(type, name, value)` Add a custom definition for evaluation of expressions. This can define a constant (can be in terms of other constants), a function of 1 or more variables, or a function imported from an external python module. ctype is "constant", "function" or "import". name is name of constant, or "function(x, y, ...)" or module name. val is definition for constant or function (both are _strings_), or is a list of symbols for a module (comma separated items in a string). If mode is 'appendalways', the custom value is appended to the end of the list even if there is one with the same name. If mode is 'replace', it replaces any existing definition in the same place in the list or is appended otherwise. If mode is 'append', then an existing definition is deleted, and the new one appended to the end. AddImportPath ------------- .. _Command.AddImportPath: :command:`AddImportPath(directory)` Add a directory to the list of directories to try to import data from. CloneWidget ----------- .. _Command.CloneWidget: :command:`CloneWidget(widget, newparent, newname=None)` Clone the widget given, placing the copy in newparent and the name given. newname is an optional new name to give it Returns new widget path. Close ----- .. _Command.Close: :command:`Close()` Closes the plotwindow. This is only supported in embedded mode. CreateHistogram --------------- .. _Command.CreateHistogram: :command:`CreateHistogram(inexpr, outbinsds, outvalsds, binparams=None, binmanual=None, method='counts', cumulative = 'none', errors=False)` Histogram an input expression. inexpr is input expression. outbinds is the name of the dataset to create giving bin positions. outvalsds is name of dataset for bin values. binparams is None or (numbins, minval, maxval, islogbins). binmanual is None or a list of bin values. method is 'counts', 'density', or 'fractions'. cumulative is to calculate cumulative distributions which is 'none', 'smalltolarge' or 'largetosmall'. errors is to calculate Poisson error bars. CurrentPath ----------- .. _Command.CurrentPath: :command:`CurrentPath()` Returns current widget path, as set by :ref:`To`. DatasetPlugin ------------- .. _Command.DatasetPlugin: :command:`DatasetPlugin(pluginname, fields, datasetnames={})>` Use a dataset plugin. pluginname: name of plugin to use fields: dict of input values to plugin datasetnames: dict mapping old names to new names of datasets if they are renamed. The new name None means dataset is deleted EnableToolbar ------------- .. _Command.EnableToolbar: :command:`EnableToolbar(enable=True)` Enable/disable the zooming toolbar in the plotwindow. This command is only supported in embedded mode or from `veusz --listen`. Export ------ .. _Command.Export: :command:`Export(filename, color=True, page=0, dpi=100, antialias=True, quality=85, backcolor='#ffffff00', pdfdpi=150, svgdpi=96, svgtextastext=False)` Export the page given to the filename given. The :command:`filename` must end with the correct extension to get the right sort of output file. Currrenly supported extensions are '.eps', '.pdf', '.ps', '.svg', '.jpg', '.jpeg', '.bmp' and '.png'. If :command:`color` is True, then the output is in colour, else greyscale. :command:`page` is the page number of the document to export (starting from 0 for the first page!). A list of pages can be given for multipage formats (.pdf or .ps). :command:`dpi` is the number of dots per inch for bitmap output files. :command:`antialias` - antialiases output if True. :command:`quality` is a quality parameter for jpeg output. :command:`backcolor` is the background color for bitmap files, which is a name or a #RRGGBBAA value (red, green, blue, alpha). :command:`pdfdpi` is the dpi to use when exporting EPS or PDF files. :command:`svgdpi` is the dpi to use when exporting to SVG files. :command:`svgtextastext` says whether to export SVG text as text, rather than curves. FilterDatasets -------------- .. _Command.FilterDatasets: :command:`FilterDatasets(filterexpr, datasets, prefix="", suffix="", invert=False, replaceblanks=False)` Filter a list of datasets given. Creates new datasets for each with prefix and suffix added to input dataset names. filterexpr is an input numpy eexpression for filtering the datasets. If invert is set, the filter condition is inverted. If replaceblanks is set, filtered values are not removed, but replaced with a blank or NaN value. This command only works on 1D numeric, date or text datasets. ForceUpdate ----------- .. _Command.ForceUpdate: :command:`ForceUpdate()` Force the window to be updated to reflect the current state of the document. Often used when periodic updates have been disabled (see SetUpdateInterval). This command is only supported in embedded mode or from `veusz --listen`. Get --- .. _Command.Get: :command:`Get('settingpath')` Returns: The value of the setting given by the path. .. code-block:: python >>> Get('/page1/graph1/x/min') 'Auto' GetChildren ----------- .. _Command.GetChildren: :command:`GetChildren(where='.')` Returns: The names of the widgets which are children of the path given GetClick -------- .. _Command.GetClick: :command:`GetClick()` Waits for the user to click on a graph and returns the position of the click on appropriate axes. Command only works in embedded mode. Returns: A list containing tuples of the form (axispath, val) for each axis for which the click was in range. The value is the value on the axis for the click. GetColormap ----------- .. _Command.GetColormap: :command:`GetColormap(name, invert=False, nvals=256)` Returns a colormap as a numpy array of red, green, blue, alpha values (ranging from 0 to 255) with the number of steps given. GetData ------- .. _Command.GetData: :command:`GetData(name)` Returns: For a 1D dataset, a tuple containing the dataset with the name given. The value is (data, symerr, negerr, poserr), with each a numpy array of the same size or None. data are the values of the dataset, symerr are the symmetric errors (if set), negerr and poserr and negative and positive asymmetric errors (if set). If a text dataset, return a list of text elements. If the dataset is a date-time dataset, return a list of Python datetime objects. If the dataset is a 2D dataset return the tuple (data, rangex, rangey), where data is a 2D numpy array and rangex/y are tuples giving the range of the x and y coordinates of the data. If it is an ND dataset, return an n-dimensional array. .. code-block:: python data = GetData('x') SetData('x', data[0]*0.1, \*data[1:]) GetDataType ----------- .. _Command.GetDataType: :command:`GetDataType(name)` Get type of dataset with name given. Returns '1d' for a 1d dataset, '2d' for a 2d dataset, 'text' for a text dataset and 'datetime' for a datetime dataset. GetDatasets ----------- .. _Command.GetDatasets: :command:`GetDatasets()` Returns: The names of the datasets in the current document. GPL --- .. _Command.GPL: :command:`GPL()` Print out the GNU Public Licence, which Veusz is licenced under. ImportFile ---------- .. _Command.ImportFile: :command:`ImportFile(comm, filename, descriptor, useblocks=False, linked=False, prefix='', suffix='', ignoretext=False, encoding='utf_8', renames=None)` Imports data from a file. The arguments are the filename to load data from and the descriptor. The format of the descriptor is a list of variable names representing the columns of the data. For more information see :ref:`Descriptors `. If the linked parameter is set to True, if the document is saved, the data imported will not be saved with the document, but will be reread from the filename given the next time the document is opened. The linked parameter is optional. If useblocks is set, then blank lines or the word 'no' are used to split the data into blocks. Dataset names are appended with an underscore and the block number (starting from 1). encoding is the name of the text file encoding. renames is a dict mapping existing to new names after import. If prefix and/or suffix are set, then the prefix and suffix are added to each dataset name. If set, renames maps imported dataset names to final dataset names after import. Returns: A tuple containing a list of the imported datasets and the number of conversions which failed for a dataset. ImportFile2D ------------ .. _Command.ImportFile2D: :command:`ImportFile2D(filename, datasetnames, xrange=None, yrange=None, invertrows=None, invertcols=None, transpose=None, gridatedge=None, mode='text', csvdelimiter=',', csvtextdelimiter='"', csvlocale='en_US', prefix="", suffix="", encoding='utf_8', linked=False)` Imports two-dimensional data from a file. The required arguments are the filename to load data from and the dataset name, or a list of names to use. In text mode, the file format this command accepts is a two-dimensional matrix of numbers, with the columns separated by spaces or tabs, and the rows separated by new lines. The X-coordinate is taken to be in the direction of the columns. Comments are supported (use `#`, `!` or `%`), as are continuation characters (`\\`). Separate datasets are deliminated by using blank lines. In csv mode, the csv parameters give the type of CSV file sypported. :: xrange is a tuple containing the range of data in x coordinates yrange is a tuple containing the range of data in y coordinates if invertrows=True, then rows are inverted when read if invertcols=True, then cols are inverted when read if transpose=True, then rows and columns are swapped if gridatedge=True, use top row and left column for pixel positions mode is either 'text' or 'csv' csvdelimiter is the csv delimiter for csv csvtextdelimiter is the csv text delimiter for csv csvlocale is locale to use when reading csv data prefix and suffix are prepended and appended to dataset names encoding is encoding character set if linked=True then the dataset is linked to the file Returns: list of imported datasets In addition to the matrix of numbers, the various optional parameters this command takes can also be specified in the data file. These commands should be given on separate lines before the matrix of numbers. They are: #. xrange A B #. yrange C D #. invertrows #. invertcols #. transpose ImportFileCSV ------------- .. _Command.ImportFileCSV: :command:`ImportFileCSV('filename', readrows=False, delimiter=',', skipwhitespace=False, textdelimiter='"', encoding='utf_8', headerignore=0, rowsignore=0, blanksaredata=False, numericlocale='en_US', dateformat='YYYY-MM-DD|T|hh:mm:ss', headermode='multi', dsprefix='', dssuffix='', prefix=None, renames=None, linked=False)` This command imports data from a CSV format file. Data are read from the file using the dataset names given at the top of the files in columns. Please see the reading data section of this manual for more information. The options are explained below. :: readrows: if true, data are read across rather than down delimiter: character for delimiting data (usually ',') skipwhitespace: if true, white space following delimiter is ignored textdelimiter: character surrounding text (usually '"') encoding: encoding used in file headerignore: number of lines to ignore after header text rowsignore: number of rows to ignore at top of file blanksaredata: treats blank lines in csv files as blank data values numericlocale: format to use for reading numbers dateformat: format for interpreting dates headermode: 'multi': multiple headers allowed in file '1st': first text found are headers 'none': no headers, guess data and use default names Dataset names are prepended and appended, by dsprefix and dssuffix, respectively (prefix is backware compatibility only, it adds an underscore relative to dsprefix) renames is a map of old names to new names to rename on import If linked is True the data are linked with the file. Returns: list of imported datasets ImportFileFITS -------------- .. _Command.ImportFileFITS: :command:`ImportFileFits(filename, items, namemap={}, slices={}, twodranges={}, twod_as_oned=set(\[]), wcsmodes={}, prefix='', suffix='', renames={}, linked=False)` Import data from a FITS file. items is a list of datasets to be imported. items are formatted like the following: :: '/': import whole file '/hduname': import whole HDU (image or table) '/hduname/column': import column from table HDU all values in items should be lower case. HDU names have to follow a Veusz-specific naming. If the HDU has a standard name (e.g. primary or events), then this is used. If the HDU has a EXTVER keyword then this number is appended to this name. An extra number is appended if this name is not unique. If the HDU has no name, then the name used should be 'hduX', where X is the HDU number (0 is the primary HDU). namemap maps an input dataset (using the scheme above for items) to a Veusz dataset name. Special suffixes can be used on the Veusz dataset name to indicate that the dataset should be imported specially. :: 'foo (+)': import as +ve error for dataset foo 'foo (-)': import as -ve error for dataset foo 'foo (+-)': import as symmetric error for dataset foo slices is an optional dict specifying slices to be selected when importing. For each dataset to be sliced, provide a tuple of values, one for each dimension. The values should be a single integer to select that index, or a tuple (start, stop, step), where the entries are integers or None. twodranges is an optional dict giving data ranges for 2D datasets. It maps names to (minx, miny, maxx, maxy). twod_as_oned: optional set containing 2D datasets to attempt to read as 1D, treating extra columns as error bars wcsmodes is an optional dict specfying the WCS import mode for 2D datasets in HDUs. The keys are '/hduname' and the values can be 'pixel': number pixel range from 0 to maximum (default) 'pixel_wcs': pixel number relative to WCS reference pixel 'linear_wcs': linear coordinate system from the WCS keywords 'fraction': fractional values from 0 to 1. renames is an optional dict mapping old to new dataset names, to be renamed after importing linked specifies that the dataset is linked to the file. Values under the VEUSZ header keyword can be used to override defaults: :: 'name': override name for dataset 'slice': slice on importing (use format "start:stop:step,...") 'range': should be 4 item array to specify x and y ranges: [minx, miny, maxx, maxy] 'xrange' / 'yrange': individual ranges for x and y 'xcent' / 'ycent': arrays giving the centres of pixels 'xedge' / 'yedge': arrays giving the edges of pixels 'twod_as_oned': treat 2d dataset as 1d dataset with errors 'wcsmode': use specific WCS mode for dataset (see values above) These are specified under the VEUSZ header keyword in the form KEY=VALUE or for column-specific values COLUMNNAME: KEY=VALUE Returns: list of imported datasets ImportFileHDF5 -------------- .. _Command.ImportFileHDF5: :command:`ImportFileHDF5(filename, items, namemap={}, slices={}, twodranges={}, twod_as_oned=set(\[]), convert_datetime={}, prefix='', suffix='', renames={}, linked=False)` Import data from a HDF5 file. items is a list of groups and datasets which can be imported. If a group is imported, all child datasets are imported. namemap maps an input dataset to a veusz dataset name. Special suffixes can be used on the veusz dataset name to indicate that the dataset should be imported specially. :: 'foo (+)': import as +ve error for dataset foo 'foo (-)': import as -ve error for dataset foo 'foo (+-)': import as symmetric error for dataset foo slices is an optional dict specifying slices to be selected when importing. For each dataset to be sliced, provide a tuple of values, one for each dimension. The values should be a single integer to select that index, or a tuple (start, stop, step), where the entries are integers or None. twodranges is an optional dict giving data ranges for 2d datasets. It maps names to (minx, miny, maxx, maxy). twod_as_oned: optional set containing 2d datasets to attempt to read as 1d convert_datetime should be a dict mapping hdf name to specify date/time importing. For a 1d numeric dataset: if this is set to 'veusz', this is the number of seconds since 2009-01-01, if this is set to 'unix', this is the number of seconds since 1970-01-01. For a text dataset, this should give the format of the date/time, e.g. 'YYYY-MM-DD|T|hh:mm:ss' or 'iso' for iso format. renames is a dict mapping old to new dataset names, to be renamed after importing. linked specifies that the dataset is linked to the file. Attributes can be used in datasets to override defaults: :: 'vsz_name': set to override name for dataset in veusz 'vsz_slice': slice on importing (use format "start:stop:step,...") 'vsz_range': should be 4 item array to specify x and y ranges: [minx, miny, maxx, maxy] 'vsz_twod_as_oned': treat 2d dataset as 1d dataset with errors 'vsz_convert_datetime': treat as date/time, set to one of the values above. For compound datasets these attributes can be given on a per-column basis using attribute names vsz_attributename_columnname. Returns: list of imported datasets ImportFileND ------------ .. _Command.ImportFileND: :command:`def ImportFileND(comm, filename, dataset, shape=None, transpose=False, mode='text', csvdelimiter=',', csvtextdelimiter='"', csvlocale='en_US', prefix="", suffix="", encoding='utf_8', linked=False)` Import an n-dimensional dataset from a file. The file should either be in CSV format (mode='csv') or whitespace-separated text (mode='text'). A one-dimensional dataset is given as a list of numbers on a single line/row. A two-dimensional dataset is given by a set of rows. A three-dimensional dataset is given by a set of two-dimensional datasets, with blank lines between them. a four-dimensional dataset is given by a set of three-dimensional datasets with two blank lines between each. Each additional dataset increases the separating number of blank lines by one. Alternatively, the numbers can be given in any form (number of numbers on each row) and "shape" is included to reshape the data into the desired shape. In the file, or included as parameters above, the command "shape num1 num2..." can be included to reshape the output dataset to the shape given by the numbers in the row after "shape" (these should be in separate columns in CSV format). If one of these numbers is -1, then this dimension is inferred from the number of values and the other dimensions. Also supported is the "transpose" command or optional argument which reverses the order of the dimensions. ImportFilePlugin ---------------- .. _Command.ImportFilePlugin: :command:`ImportFilePlugin('pluginname', 'filename', \**pluginargs, linked=False, encoding='utf_8', prefix='', suffix='', renames={})` Import data from file using import plugin 'pluginname'. The arguments to the plugin are given, plus optionally a text encoding, and prefix and suffix to prepend or append to dataset names. renames, if set, provides new names for datasets after import. ImportFITSFile -------------- .. _Command.ImportFITSFile: :command:`ImportFITSFile(datasetname, filename, hdu, datacol='A', symerrcol='B', poserrcol='C', negerrcol='D', linked=True/False, renames={})` This command is deprecated. Please do not use in new code, but instead use ImportFileFITS. This command does a simple import from a FITS file. The FITS format is used within the astronomical community to transport binary data. For a more powerful FITS interface, you can use PyFITS within your scripts. The datasetname is the name of the dataset to import, the filename is the name of the FITS file to import from. The hdu parameter specifies the HDU to import data from (numerical or a name). If the HDU specified is a primary HDU or image extension, then a two-dimensional dataset is loaded from the file. The optional parameters (other than linked) are ignored. Any WCS information within the HDU are used to provide a suitable xrange and yrange. If the HDU is a table, then the datacol parameter must be specified (and optionally symerrcol, poserrcol and negerrcol). The dataset is read in from the named column in the table. Any errors are read in from the other specified columns. If linked is True, then the dataset is not saved with a saved document, but is reread from the data file each time the document is loaded. renames, if set, provides new names for datasets after import. ImportString ------------ .. _Command.ImportString: :command:`ImportString('descriptor', 'data')` Like, :ref:`ImportFile `, but loads the data from the specfied string rather than a file. This allows data to be easily embedded within a document. The data string is usually a multi-line Python string. Returns: A tuple containing a list of the imported datasets and the number of conversions which failed for a dataset. Changed in version 0.5: A tuple is returned rather than just the number of imported variables. .. code-block:: python ImportString('x y', ''' 1 2 2 5 3 10 ''') ImportString2D -------------- .. _Command.ImportString2D: :command:`ImportString2D(datasets, string, xrange=None, yrange=None, invertrows=None, invertcols=None, transpose=None)` Imports a two-dimensional dataset from the string given. This is similar to the :ref:`ImportFile2D ` command, with the same dataset format within the string. The optional values are also listed there. The various controlling parameters can be set within the string. See the :ref:`ImportFile2D ` section for details. ImportStringND -------------- .. _Command.ImportStringND: :command:`ImportStringND(dataset, string, shape=None, transpose=False)` Imports a n-dimensional dataset from the string given. This is similar to the :ref:`ImportFileND ` command. Please look there for more detail and the description of the optional parameters and in-stream allowed parameters. IsClosed -------- .. _Command.IsClosed: :command:`IsClosed()` Returns a boolean value telling the caller whether the plotting window has been closed. Note: this command is only supported in the embedding interface. List ---- .. _Command.List: :command:`List(where='.')` List the widgets which are contained within the widget with the path given, the type of widgets, and a brief description. Load ---- .. _Command.Load: :command:`Load('filename.vsz')` Loads the veusz script file given. The script file can be any Python code. The code is executed using the Veusz interpreter. Note: this command is only supported at the command line and not in a script. Scripts may use the python :command:`execfile` function instead. MoveToPage ---------- .. _Command.MoveToPage: :command:`MoveToPage(pagenum)` Updates window to show the page number given of the document. Note: this command is only supported in the embedding interface or `veusz --listen`. ReloadData ---------- .. _Command.ReloadData: :command:`ReloadData()` Reload any datasets which have been linked to files. Returns: A tuple containing a list of the imported datasets and the number of conversions which failed for a dataset. Rename ------ .. _Command.Rename: :command:`Remove('widgetpath', 'newname')` Rename the widget at the path given to a new name. This command does not move widgets. See :ref:`To ` for a description of the path syntax. '.' can be used to select the current widget. Remove ------ .. _Command.Remove: :command:`Remove('widgetpath')` Remove the widget selected using the path. See :ref:`To ` for a description of the path syntax. ResizeWindow ------------ .. _Command.ResizeWindow: :command:`ResizeWindow(width, height)` Resizes window to be width by height pixels. Note: this command is only supported in the embedding interface or `veusz --listen`. Save ---- .. _Command.Save: :command:`Save('filename.vsz')` Save the current document under the filename given. Set --- .. _Command.Set: :command:`Set('settingpath', val)` Set the setting given by the path to the value given. If the type of :command:`val` is incorrect, an :command:`InvalidType` exception is thrown. The path to the setting is the optional path to the widget the setting is contained within, an optional subsetting specifier, and the setting itself. .. code-block:: python Set('page1/graph1/x/min', -10.) SetAntiAliasing --------------- .. _Command.SetAntiAliasing: :command:`SetAntiAliasing(on)` Enable or disable anti aliasing in the plot window, replotting the image. SetCompatLevel -------------- .. _Command.SetCompatLevel: :command:`SetCompatLevel(level)` Set the document compatibility level. If `level<0`, then choose the latest version. As a side effect, this wipes any widgets in the document and resets all settings. SetData ------- .. _Command.SetData: :command:`SetData(name, val, symerr=None, negerr=None, poserr=None)` Set the dataset name with the values given. If None is given for an item, it will be left blank. val is the actual data, symerr are the symmetric errors, negerr and poserr and the getative and positive asymmetric errors. The data can be given as lists or numpys. SetDataExpression ----------------- .. _Command.SetDataExpression: :command:`SetDataExpression(name, val, symerr=None, negerr=None, poserr=None, linked=False, parametric=None)` Create a new dataset based on the expressions given. The expressions are Python syntax expressions based on existing datasets. If linked is True, the dataset will change as the datasets in the expressions change. Parametric can be set to a tuple of (minval, maxval, numitems). :command:`t` in the expression will iterate from minval to maxval in numitems values. SetDataND --------- .. _Command.SetDataND: :command:`SetDataRange(name, val)` Set a n-dimensional dataset to be the values given by val. val should be an n-dimensional numpy array of values, or a list of lists. SetDataRange ------------ .. _Command.SetDataRange: :command:`SetDataRange(name, numsteps, val, symerr=None, negerr=None, poserr=None, linked=False)` Set dataset to be a range of values with numsteps steps. val is tuple made up of (minimum value, maximum value). symerr, negerr and poserr are optional tuples for the error bars. If linked is True, the dataset can be saved in a document as a SetDataRange, otherwise it is expanded to the values which would make it up. SetData2D --------- .. _Command.SetData2D: :command:`SetData2D('name', val, xrange=(A,B), yrange=(C,D), xgrid=[1,2,3...], ygrid=[4,5,6...])` Creates a two-dimensional dataset with the name given. val is either a two-dimensional numpy array, or is a list of lists, with each list in the list representing a row. Do not give xrange if xgrid is set and do not give yrange if ygrid is set, and vice versa. xrange and yrange are optional tuples giving the inclusive range of the X and Y coordinates of the data. xgrid and ygrid are optional lists, tuples or arrays which give the coordinates of the edges of the pixels. There should be one more item in each array than pixels. SetData2DExpression ------------------- .. _Command.SetData2DExpression: :command:`SetData2DExpression('name', expr, linked=False)` Create a 2D dataset based on expressions. name is the new dataset name expr is an expression which should return a 2D array linked specifies whether to permanently link the dataset to the expressions. SetData2DExpressionXYZ ---------------------- .. _Command.SetData2DExpressionXYZ: :command:`SetData2DExpressionXYZ('name', 'xexpr', 'yexpr', 'zexpr', linked=False)` Create a 2D dataset based on three 1D expressions. The x, y expressions need to evaluate to a grid of x, y points, with the z expression as the 2D value at that point. Currently only linear fixed grids are supported. This function is intended to convert calculations or measurements at fixed points into a 2D dataset easily. Missing values are filled with NaN. SetData2DXYFunc --------------- .. _Command.SetData2DXYFunc: :command:`SetData2DXYFunc('name', xstep, ystep, 'expr', linked=False)` Construct a 2D dataset using a mathematical expression of "x" and "y". The x values are specified as (min, max, step) in xstep as a tuple, the y values similarly. If linked remains as False, then a real 2D dataset is created, where values can be modified and the data are stored in the saved file. SetDataDateTime --------------- .. _Command.SetDataDateTime: :command:`SetDataDateTime('name', vals)` Creates a datetime dataset of name given. vals is a list of Python datetime objects. SetDataText ----------- .. _Command.SetDataText: :command:`SetDataText(name, val)` Set the text dataset name with the values given. :command:`val` must be a type that can be converted into a Python list. .. code-block:: python SetDataText('mylabel', ['oranges', 'apples', 'pears', 'spam']) SetToReference -------------- .. _Command.SetToReference: :command:`SetToReference(setting, refval)` Link setting given to other setting refval. SetUpdateInterval ----------------- .. _Command.SetUpdateInterval: :command:`SetUpdateInterval(interval)` Tells window to update every interval milliseconds at most. The value 0 disables updates until this function is called with a non-zero. The value -1 tells Veusz to update the window every time the document has changed. This will make things slow if repeated changes are made to the document. Disabling updates and using the ForceUpdate command will allow the user to control updates directly. Note: this command is only supported in the embedding interface or `veusz --listen`. SetVerbose ---------- .. _Command.SetVerbose: :command:`SetVerbose(v=True)` If :command:`v` is :command:`True`, then extra information is printed out by commands. StartSecondView --------------- .. _Command.StartSecondView: :command:`StartSecondView(name = 'window title')` In the embedding interface, this method will open a new Embedding interface onto the same document, returning the object. This new window provides a second view onto the document. It can, for instance, show a different page to the primary view. name is a window title for the new window. Note: this command is only supported in the embedding interface. TagDatasets ----------- .. _Command.TagDatasets: :command:`TagDatasets('tag', ['ds1', 'ds2'...])` Adds the tag to the list of datasets given.. To -- .. _Command.To: :command:`To('widgetpath')` The To command takes a path to a widget and moves to that widget. For example, this may be "/", the root widget, "graph1", "/page1/graph1/x", "../x". The syntax is designed to mimic Unix paths for files. "/" represents the base widget (where the pages reside), and ".." represents the widget next up the tree. Quit ---- .. _Command.Quit: :command:`Quit()` Quits Veusz. This is only supported in `veusz --listen`. WaitForClose ------------ .. _Command.WaitForClose: :command:`WaitForClose()` Wait until the plotting window has been closed. Note: this command is only supported in the embedding interface. Zoom ---- .. _Command.Zoom: :command:`Zoom(factor)` Sets the plot zoom factor, relative to a 1:1 scaling. factor can also be "width", "height" or "page", to zoom to the page width, height or page, respectively. This is only supported in embedded mode or `veusz --listen`. Security ######## With the 1.0 release of Veusz, input scripts and expressions are checked for possible security risks. Only a limited subset of Python functionality is allowed, or a dialog box is opened allowing the user to cancel the operation. Specifically you cannot import modules, get attributes of Python objects, access globals() or locals() or do any sort of file reading or manipulation. Basically anything which might break in Veusz or modify a system is not supported. In addition internal Veusz functions which can modify a system are also warned against, specifically Print(), Save() and Export(). If you are running your own scripts and do not want to be bothered by these dialogs, you can run veusz with the :command:`--unsafe-mode` option. Using Veusz from other programs ############################### Non-Qt Python programs ---------------------- Veusz can be used as a Python module for plotting data. There are two ways to use the module: (1) with an older path-based Veusz commands, used in Veusz saved document files or (2) using an object-oriented interface. With the old style method the user uses a unix-path inspired API to navigate the widget tree and add or manipulate widgets. With the new style interface, the user navigates the tree with attributes of the ``Root`` object to access Nodes. The new interface is likely to be easier to use unless you are directly translating saved files. Older path-based interface -------------------------- .. code-block:: python """An example embedding program. Veusz needs to be installed into the Python path for this to work (use setup.py) This animates a sin plot, then finishes """ import time import numpy import veusz.embed as veusz # construct a Veusz embedded window # many of these can be opened at any time g = veusz.Embedded('window title') g.EnableToolbar() # construct the plot g.To( g.Add('page') ) g.To( g.Add('graph') ) g.Add('xy', marker='tiehorz', MarkerFill__color='green') # this stops intelligent axis extending g.Set('x/autoExtend', False) g.Set('x/autoExtendZero', False) # zoom out g.Zoom(0.8) # loop, changing the values of the x and y datasets for i in range(10): x = numpy.arange(0+i/2., 7.+i/2., 0.05) y = numpy.sin(x) g.SetData('x', x) g.SetData('y', y) # wait to animate the graph time.sleep(2) # let the user see the final result print "Waiting for 10 seconds" time.sleep(10) print "Done!" # close the window (this is not strictly necessary) g.Close() The embed interface has the methods listed in the command line interface listed in the Veusz manual https://veusz.github.io/docs/manual.html Multiple Windows are supported by creating more than one ``Embedded`` object. Other useful methods include: - ``WaitForClose()`` - wait until window has closed - ``GetClick()`` - return a list of ``(axis, value)`` tuples where the user clicks on a graph - ``ResizeWndow(width, height)`` - resize window to be ``width`` x ``height`` pixels - ``SetUpdateInterval(interval)`` - set update interval in ms or 0 to disable - ``MoveToPage(page)`` - display page given (starting from 1) - ``IsClosed()`` - has the page been closed - ``Zoom(factor)`` - set zoom level (float) or 'page', 'width', 'height' - ``Close()`` - close window - ``SetAntiAliasing(enable)`` - enable or disable antialiasing - ``EnableToolbar(enable=True)`` - enable plot toolbar - ``StartSecondView(name='Veusz')`` - start a second view onto the document of the current ``Embedded`` object. Returns a new ``Embedded`` object. - ``Wipe()`` - wipe the document of all widgets and datasets. .. _new_api: New-style object interface -------------------------- In Veusz 1.9 or late a new style of object interface is present, which makes it easier to construct the widget tree. Each widget, group of settings or setting is stored as a Node object, or its subclass, in a tree. The root document widget can be accessed with the ``Root`` object. The dot operator "." finds children inside other nodes. In Veusz some widgets can contain other widgets (Root, pages, graphs, grids). Widgets contain setting nodes, accessed as attributes. Widgets can also contain groups of settings, again accessed as attributes. An example tree for a document (not complete) might look like this :: Root \-- page1 (page widget) \-- graph1 (graph widget) \-- x (axis widget) \-- y (axis widget) \-- function (function widget) \-- grid1 (grid widget) \-- graph2 (graph widget) \-- xy1 (xy widget) \-- xData (setting) \-- yData (setting) \-- PlotLine (setting group) \-- width (setting) ... ... \-- x (axis widget) \-- y (axis widget) \-- graph3 (graph widget) \-- contour1 (contour widget) \-- x (axis widget) \-- y (axis widget) Here the user could access the xData setting node of the xy1 widget using ``Root.page1.graph2.xy1.xData``. To actually read or modify the value of a setting, you should get or set the ``val`` property of the setting node. The line width could be changed like this .. code-block:: python graph = embed.Root.page1.graph2 graph.xy1.PlotLine.width.val = '2pt' For instance, this constructs a simple x-squared plot which changes to x-cubed: .. code-block:: python import veusz.embed as veusz import time # open a new window and return a new Embedded object embed = veusz.Embedded('window title') # make a new page, but adding a page widget to the root widget page = embed.Root.Add('page') # add a new graph widget to the page graph = page.Add('graph') # add a function widget to the graph. The Add() method can take a list of settings # to set after widget creation. Here, "function='x**2'" is equivalent to # function.function.val = 'x**2' function = graph.Add('function', function='x**2') time.sleep(2) function.function.val = 'x**3' # this is the same if the widgets have the default names Root.page1.graph1.function1.function.val = 'x**3' If the document contains a page called "page1" then ``Root.page1`` is the object representing the page. Similarly, ``Root.page1.graph1`` is a graph called ``graph1`` in the page. You can also use dictionary-style indexing to get child widgets, e.g. Root['page1']['graph1']. This style is easier to use if the names of widgets contain spaces or if widget names shadow methods or properties of the Node object, i.e. if you do not control the widget names. Widget nodes can contain as children other widgets, groups of settings, or settings. Groups of settings can contain child settings. Settings cannot contain other nodes. Here are the useful operations of Nodes: .. code-block:: python class Node(object): """properties: path - return path to object in document, e.g. /page1/graph1/function1 type - type of node: "widget", "settinggroup" or "setting" name - name of this node, e.g. "graph1" children - a generator to return all the child Nodes of this Node, e.g. for c in Root.children: print c.path children_widgets - generator to return child widget Nodes of this Node children_settinggroups - generator for child setting groups of this Node children_settings - a generator to get the child settings childnames - return a list of the names of the children of this Node childnames_widgets - return a list of the names of the child widgets childnames_settinggroups - return a list of the names of the setting groups childnames_settings - return a list of the names of the settings parent - return the Node corresponding to the parent widget of this Node __getattr__ - get a child Node with name given, e.g. Root.page1 __getitem__ - get a child Node with name given, e.g. Root['page1'] """ def fromPath(self, path): """Returns a new Node corresponding to the path given, e.g. '/page1/graph1'""" class SettingNode(Node): """A node which corresponds to a setting. Extra properties: val - get or set the setting value corresponding to this value, e.g. Root.page1.graph1.leftMargin.val = '2cm' """ class SettingGroupNode(Node): """A node corresponding to a setting group. No extra properties.""" class WidgetNode(Node): """A node corresponding to a widget. property: widgettype - get Veusz type of widget Methods are below.""" def WalkWidgets(self, widgettype=None): """Generator to walk widget tree and get widgets below this WidgetNode of type given. widgettype is a Veusz widget type name or None to get all widgets.""" def Add(self, widgettype, *args, **args_opt): """Add a widget of the type given, returning the Node instance. """ def Rename(self, newname): """Renames widget to name given. Existing Nodes corresponding to children are no longer valid.""" def Action(self, action): """Applies action on widget.""" def Remove(self): """Removes a widget and its children. Existing Nodes corresponding to children are no longer valid.""" Note that Nodes are temporary objects which are created on the fly. A real widget in Veusz can have several different WidgetNode objects. The operators == and != can test whether a Node points to the same widget, setting or setting group. Here is an example to set all functions in the document to be ``x**2``: .. code-block:: python for n in Root.WalkWidgets(widgettype='function'): n.function.val = 'x**2' Translating old to new style ---------------------------- Here is an example how you might translate the old to new style interface (this is taken from the ``sin.vsz`` example). .. code-block:: python # old (from saved document file) Add('page', name='page1') To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x') To('x') Set('label', '\\italic{x}') To('..') Add('axis', name='y') To('y') Set('label', 'sin \\italic{x}') Set('direction', 'vertical') To('..') Add('xy', name='xy1') To('xy1') Set('MarkerFill/color', 'cyan') To('..') Add('function', name='function1') To('function1') Set('function', 'sin(x)') Set('Line/color', 'red') To('..') To('..') To('..') .. code-block:: python # new (in python) import veusz.embed embed = veusz.embed.Embedded('window title') page = embed.Root.Add('page') # note: autoAdd=False stops graph automatically adding own axes (used in saved files) graph = page.Add('graph', autoadd=False) x = graph.Add('axis', name='x') x.label.val = '\\italic{x}' y = graph.Add('axis', name='y') y.label.val = 'sin \\italic{x}' y.direction.val = 'vertical' xy = graph.Add('xy') xy.MarkerFill.color.val = 'cyan' func = graph.Add('function') func.function.val = 'sin(x)' func.Line.color.val = 'red' PyQt programs ============= There is no direct PyQt interface. The standard embedding interface should work, however. Non Python programs =================== Support for non Python programs is available in a limited form. External programs may execute Veusz using :command:`veusz --listen`. Veusz will read its input from the standard input, and write output to standard output. This is a full Python execution environment, and supports all the scripting commands mentioned in :ref:`Commands `, a :command:`Quit()` command, the :command:`EnableToolbar()` and the :command:`Zoom(factor)` command listed above. Only one window is supported at once, but many :command:`veusz --listen` programs may be started. :command:`veusz --listen` may be used from the shell command line by doing something like: .. code-block:: bash veusz --listen < in.vsz where :command:`in.vsz` contains: .. code-block:: python To(Add('page') ) To(Add('graph') ) SetData('x', arange(20)) SetData('y', arange(20)**2) Add('xy') Zoom(0.5) Export("foo.pdf") Quit() A program may interface with Veusz in this way by using the :command:`popen` C Unix function, which allows a program to be started having control of its standard input and output. Veusz can then be controlled by writing commands to an input pipe. ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/manual/html/_sources/datasets.rst.txt0000664000175000017500000006156014126044351022314 0ustar00jssjssReading data ============ Currently Veusz supports reading data from files with text, CSV, HDF5, FITS, 2D text or CSV, QDP, binary and NPY/NPZ formats. Use the :menuselection:`Data --> Import` dialog to read data, or the importing commands in the API can be used. In addition, the user can load or write import plugins in Python which load data into Veusz in an arbitrary format. At the moment QDP, binary and NPY/NPZ files are supported with this method. The HDF5 file format is the most sophisticated, and is recommended for complex datasets. By default, data are "linked" to the file imported from. This means that the data are not stored in the Veusz saved file and are reloaded from the original data file when opening. In addition, the user can use the :menuselection:`Data --> Reload` menu option to reload data from linked files. Unselect the linked option when importing to remove the association with the data file and to store the data in the Veusz saved document. Note that a prefix and suffix can be given when importing. These are added to the front or back of each dataset name imported. They are convenient for grouping data together. .. image:: _images/importdialog.png We list the various types of import below. Standard text import -------------------- The default text import operates on simple text files. The data are assumed to be in columns separated by whitespace. Each column corresponds to dataset (or its error bars). Each row is an entry in the dataset. The way the data are read is goverened by a simple "descriptor". This can simply be a list of dataset names separated by spaces. If no descriptor is given, the columns are treated as separate datasets and are given names `col1`, `col2`, etc. Veusz attempts to automatically determine the type of the data. When reading in data, Veusz treats any whitespace as separating columns. The columns do not actually need to be aligned. Furthermore a `\\` symbol can be placed at the end of a line to mark a continuation. Veusz will read the next line as if it were placed at the end of the current line. In addition comments and blank lines are ignored (unless in block mode). Comments start with a `#`, `;`, `!` or `%`, and continue until the end of the line. The special value `nan` can be used to specify a break in a dataset. If the option to read data in blocks is enabled, Veusz treats blank lines (or lines starting with the word `no`) as block separators. For each dataset in the descriptor, separate datasets are created for each block, using a numeric suffix giving the block number, e.g. `_1`, `_2`. Data types in text import ````````````````````````` Veusz supports reading in several types of data. The type of data can be added in round brackets after the name in the descriptor. Veusz will try to guess the type of data based on the first value, so you should specify it if there is any form of ambiguity (e.g. is 3 text or a number). Supported types are numbers (use numeric in brackets) and text (use text in brackets). An example descriptor would be `x(numeric) +- y(numeric) + - label(text)` for an x dataset followed by its symmetric errors, a y dataset followed by two columns of asymmetric errors, and a final column of text for the label dataset. A text column does not need quotation unless it contains space characters or escape characters. However make sure you deselect the "ignore text" option in the import dialog. This ignores lines of text to ease the import of data from other applications. Quotation marks are recommended around text if you wish to avoid ambiguity. Text is quoted according to the Python rules for text. Double or single quotation marks can be used, e.g. `"A 'test'"`, `'A second "test"'`. Quotes can be escaped by prefixing them with a backslash, e.g. `"A new \\"test\\""`. If the data are generated from a Python script, the repr function provides the text in a suitable form. Dates and times are also supported with the syntax `dataset(date)`. Dates must be in ISO format `YYYY-MM-DD`. Times are in 24 hour format hh:mm:ss.ss. Dates with times are written YYYY-MM-DDThh:mm:ss.ss (this is a standard ISO format, see ``_). Dates are stored within Veusz as a number which is the number of seconds since the start of January 1st 2009. Veusz also supports dates and times in the local format, though take note that the same file and data may not work on a system in a different location. Descriptors ``````````` .. _Descriptors: A list of datasets, or a "Descriptor", is given in the Import dialog to describe how the data are formatted in the import file. The descriptor at its simplest is a space or comma-separated list of the names of the datasets to import. These are columns in the file. Following a dataset name the text `+`, `-`, or `+-` can be given to say that the following column is a positive error bar, negative error bar or symmetric error bar for the previous (non error bar) dataset. These symbols should be separated from the dataset name or previous symbol with a space or a comma symbol. In addition, if multiple numbered columns should be imported, the dataset name can be followed by square brackets containing a range in the form `[a:b]` to number columns a to b, or `[:]` to number remaining columns. See below for examples of this use. Dataset names can contain virtually any character, even unicode characters. If the name contains non alpha-numeric characters (characters outside of A-Z, a-z and 0-9), then the dataset name should be contained within back-tick characters. An example descriptor is :command:`\`length data (m)\`,+- \`speed (mps)\`,+,-`, for two datasets with spaces and brackets in their names. Instead of specifying the descriptor in the Import dialog, the descriptor can be placed in the data file using a descriptor statement on a separate line, consisting of "descriptor" followed by the descriptor. Multiple descriptors can be placed in a single file, for example: :: # here is one section descriptor x,+- y,+,- 1 0.5 2 0.1 -0.1 2 0.3 4 0.2 -0.1 # my next block descriptor alpha beta gamma 1 2 3 4 5 6 7 8 9 # etc... Descriptor examples ``````````````````` #. :command:`x y` two columns are present in the file, they will be read in as datasets `x` and `y`. #. :command:`x,+- y,+,-` or :command:`x +- y + -` two datasets are in the file. Dataset "x" consists of the first two columns. The first column are the values and the second are the symmetric errors. "y" consists of three columns (note the comma between + and -). The first column are the values, the second positive asymmetric errors, and the third negative asymmetric errors. Suppose the input file contains: :: 1.0 0.3 2 0.1 -0.2 1.5 0.2 2.3 2e-2 -0.3E0 2.19 0.02 5 0.1 -0.1 Then x will contain `1+-0.3`, `1.5+-0.2`, `2.19+-0.02`. y will contain `2 +0.1 -0.2`, `2.3 +0.02 -0.3`, `5 +0.1 -0.1`. #. :command:`x[1:2] y[:]` the first column is the data `x_1`, the second `x_2`. Subsequent columns are read as `y[1]` to `y[n]`. #. :command:`y[:]+-` read each pair of columns as a dataset and its symmetric error, calling them `y[1]` to `y[n]`. #. :command:`foo,,+-` read the first column as the foo dataset, skip a column, and read the third column as its symmetric error. CSV files --------- CVS (comma separated variable) files are often written from other programs, such as spreadsheets, including Excel and Gnumeric. Veusz supports reading from these files. In the import dialog choose "CSV", then choose a filename to import from. In the CSV file the user should place the data in either rows or columns. Veusz will use a name above a column or to the left of a row to specify what the dataset name should be. The user can use new names further down in columns or right in rows to specify a different dataset name. Names do not have to be used, and Veusz will assign default `col` and `row` names if not given. You can also specify a prefix which is prepended to each dataset name read from the file. To specify symmetric errors for a column, put `+-` as the dataset name in the next column or row. Asymmetric errors can be stated with `+` and `-` in the columns. The data type in CSV files are automatically detected unless specified. The data type can be given in brackets after the column name, e.g. `name (text)`, where the data type is `date`, `numeric` or `text`. Explicit data types are needed if the data look like a different data type (e.g. a text item of `1.23`). The date format in CSV files can be specified in the import dialog box - see the examples given. In addition CSV files support numbers in European format (e.g. 2,34 rather than 2.34), depending on the setting in the dialog box. HDF5 files ---------- HDF5 is a flexible data format. Datasets and tables can be stored in a hierarchical arrangements of groups within a file. Veusz supports reading 1D numeric, text, date-time, 2D numeric or n-dimensional numeric data from HDF files. The :command:`h5py` Python module must be installed to use HDF5 files (included in binary releases). In the import dialog box, choose which individual datasets to import, or selecting a group to import all the datasets within the group. If selecting a group, datasets in the group incompatible with Veusz are ignored. A name can be provided for each dataset imported by entering one under "Import as". If one is not given, the dataset or column name is used. The name can also be specified by setting the HDF5 dataset attribute ``vsz_name`` to the name. Note that for compound datasets (tables), ``vsz_`` attributes for columns are given by appending the suffix ``_columnname`` to the attribute. Error bars `````````` Error bars are supported in two ways. The first way is to combine 1D datasets. For the datasets which are error bars, use a name which is the same as the main dataset but with the suffix `(+-)`, `(+)` or `(-)`, for symmetric, postive or negative error bars, respectively. The second method is to use a 2D dataset with two or three columns, for symmetric or asymmetric error bars, respectively. Click on the dataset in the dialog and choose the option to import as a 1D dataset. This second method can also be enabled by adding an HDF5 attribute ``vsz_twod_as_oned`` set to a non-zero value for the dataset. Slices `````` You may wish to reduce the dimensions of a dataset before importing by slicing. You can also give a slice to import a subset of a dataset. When importing, in the slice column you can give a slice expression. This should have the same number of entries as the dataset has dimensions, separated by commas. An entry can be a single number, to select a particular row or column. Alternatively it could be an expression like ``a:b:c`` or ``a:b``, where ``a`` is the starting index, ``b`` is one beyond the stopping index and optionally ``c`` is the step size. A slice can also be specified by providing an HDF5 attribute ``vsz_slice`` for the dataset. 2D data ranges `````````````` 2D data have an associated X and Y range. By default the number of pixels of the image are used to give this range. A range can be specified by clicking on the dataset and entering a minimum and maximum X and Y coordinates. Alternatively, provide the HDF5 attribute for the dataset ``vsz_range``, which should be set to an array of four values (minimum x, minimum y, maximum x, maximum y). Dates ````` Date/time datasets can be made from a 1D numeric dataset or from a text dataset. For the 1D dataset, use the number of seconds relative to the start of the year 2009 (this is Veusz format) or the year 1970 (this is Unix format). In the import dialog, click on the name of the dataset and choose the date option. To specify a date format in the HDF5 file, set the attribute ``vsz_convert_datetime`` to either ``veusz`` or ``unix``. For text datasets, dates must be given in the right format, selected in the import dialog after clicking on the dataset name. As in other file formats, by default Veusz uses ISO 8601 format, which looks like `2013-12-22T21:08:07`, where the date and time parts are optional. The T is also optional. You can also provide your own format when importing by giving a date expression using YYYY, MM, DD, hh, mm and ss (e.g. `YYYY-MM-DD|T|hh:mm:ss`), where vertical bars mark optional parts of the expression. To automate this, set the attribute ``vsz_convert_datetime`` to the format expression or ``iso`` to specify ISO format. 2D text or CSV format --------------------- Veusz can import 2D data from standard text or CSV files. In this case the data should consist of a matrix of data values, with the columns separated by one or more spaces or tabs and the rows on different lines. In addition to the data the file can contain lines at the top which affect the import. Such specifiers are used, for example, to change the coordinates of the pixels in the file. By default the first pixels coordinates is between 0 and 1, with the centre at 0.5. Subsequent pixels are 1 greater. Note that the lowest coordinate pixel is the bottom-left value in the table of imported values. When using specifiers in CSV files, put the different parts (separated by spaces) in separate columns. Below are listed the specifiers: #. :command:`xrange A B` - make the 2D dataset span the coordinate range A to B in the x-axis (where A and B are numbers). Note that the range is inclusive, so a 1 pixel wide image with A=0 and B=1 would have the pixel centre at 0.5. The pixels are assumed to have the same spacing. Do not use this as the same time as the :command:`xedge` or :command:`xcent` options. #. :command:`yrange A B` - make the 2D dataset span the coordinate range A to B in the y-axis (where A and B are numbers). #. :command:`xedge A B C...` - rather than assume the pixels have the same spacing, give the coordinates of the edges of the pixels in the x-axis. The numbers should be space-separated and there should be one more number than pixels. Do not give :command:`xrange` or :command:`xcent` if this is given. If the values are increasing, the lowest coordinate value is at the left of the dataset, otherwise if they are decreasing, it is on the right (unless the rows/columns are inverted or transposed). #. :command:`yedge A B C...` - rather than assume the pixels have the same spacing, give the coordinates of the edges of the pixels in the y-axis. If the values are increasing, the lowest coordinate value is at the bottom row. If they instead decrease, it is at the top. #. :command:`xcent A B C...` - rather than give a total range or pixel edges, give the centres of the pixels. There should be the same number of values as pixels in the image. Do not give :command:`xrange` or :command:`xedge` if this is given. The order of the values specify whether the pixels are left to right or right to left. #. :command:`ycent A B C...` - rather than give a total range or pixel edges, give the centres of the pixels. The value order specifies whether the pixels are bottom to top, or top to bottom. #. :command:`invertrows` - invert the rows after reading the data. #. :command:`invertcols` - invert the columns after reading the data. #. :command:`transpose` - swap rows and columns after importing data. #. :command:`gridatedge` - the first row and leftmost column give the positions of the centres of the pixels. This is also an option in the import dialog. The values should be increasing or decreasing. FITS files ---------- 1D, 2D or n-dimensional data can be read from FITS files. 1D or 2D data can be read from image, primary or table HDUs. nD data can be read from from image or primary extensions. Note that pyfits or astropy must be installed to get FITS support. The import dialog box uses a tree to show the structure of the FITS file. The user can choose to import the whole file, by clicking the check box at the top. They can import data from a particular HDU by selecting that, or individual table columns can be selected. In the dialog box, a dataset can be given a name for the dataset. Otherwise the HDU or table column name is used. Note that a prefix and/or suffix can be specified to be added to all dataset names. If dataset y should have an error bar specified by column yerr, then in the name for yerr, enter 'y (+-)'. Asymmetric error bars can be specified using (+) and (-) on inidividual columns. The slice column can be used to only import a subset of the dataset imported. This uses Python slicing syntax, which is comma-separated list of ranges and steps. A range is specified like 10:20, which selects the 11th to 20th items (the indices are numbered from 0, and the final index is one past the index you actually want). A stepped range can look like 10:20:2, which selects every other item in that range. Each of these numbers are optional, so : selects all items on that dimension. For example the slice :,10:14:2 selects all values on the first dimension, but only the 11th and 13th items on the next axis. When importing 2D data the user can specify whether to treat this as 1D plus error bars (dimensions should have 2 or 3 columns), or specify a range in 2D space the data covers. Veusz will also attempt to use WCS information in the file for the 2D range if not specified. The standard mode is to use the CDELT, CRVAL and CRPIX keywords to specify a linear range for the data. Alternatively the user can specify pixel numbering (numbering from 0 to N-1). There is a fraction option for using a range of 0 to 1. Finally there is a pixel numbering scheme which numbers in pixels from the CRPIX keyword items. Some of these options can be specified in the FITS file using the 'VEUSZ' header keyword. This header keyword can be added with the value 'KEY=VALUE' (applying to the whole HDU) or 'COLUMN: KEY=VALUE' (applying to a particular column in a table). Supported options for KEY are: name provide name for dataset in VALUE slice VALUE is slice to apply when importing dataset range range of data for 2D dataset in form `[minx, miny, maxx, maxy]` xrange/yrange range of dataset individually in x or y xcent/ycent set to list of values giving centers of pixels xedge/yedge set to list of values giving edges of pixels twod_as_oned treat as 1D data with error bars if VALUE=1 wcsmode use specific WCS mode for 2D dataset (should be pixel/pixel_wcs/linear_wcs/fraction) Reading other data formats -------------------------- As mentioned above, a user may write some Python code to read a data file or set of data files. To write a plugin which is incorportated into Veusz, see ``_ You can also include Python code in an input file to read data, which we describe here. Suppose an input file "in.dat" contains the following data: :: 1 2 2 4 3 9 4 16 Of course this data could be read using the :ref:`ImportFile ` command. However, you could also read it with the following Veusz script (which could be saved to a file and loaded with :command:`execfile` or :ref:`Load `. The script also places symmetric errors of 0.1 on the x dataset. .. code-block:: python x = [] y = [] for line in open("in.dat"): parts = [float(i) for i in line.split()] x.append(parts[0]) y.append(parts[1]) SetData('x', x, symerr=0.1) SetData('y', y) Manipulating datasets ===================== Imported datasets can easily be modified in the Data Editor dialog box. This dialog box can also be used to create new datasets from scratch by typing them in. The Data Create dialog box is used to new datasets as a numerical sequence, parametrically or based on other datasets given expressions. If you want to plot a function of a dataset, you often do not have to create a new dataset. Veusz allows to enter expressions directly in many places. Using dataset plugins --------------------- Dataset plugins can be used to perform arbitrary manipulation of datasets. Veusz includes several plugins for mathematical operation of data and other dataset manipulations, such as concatenation or splitting. If you wish to write your own plugins look at ``_. Using expressions to create new datasets ---------------------------------------- For instance, if the user has already imported dataset d, then they can create d2 which consists of d**2. Expressions are in Python numpy syntax and can include the usual mathematical functions. .. image:: _images/createdataset.png Expressions for error bars can also be given. By appending :command:`_data`, :command:`_serr`, :command:`_perr` or :command:`_nerr` to the name of the dataset in the expression, the user can base their expression on particular parts of the given dataset (the main data, symmetric errors, positive errors or negative errors). Otherwise the program uses the same parts as is currently being specified. If a dataset name contains non alphanumeric characters, its name should be quoted in the expression in back-tick characters, e.g. :command:`\`length (cm)\`*2`. The numpy functionality is particularly useful for doing more complicated expressions. For instance, a conditional expression can be written as :command:`where(x`_ for details. Capturing data ============== In addition to the standard data import, data can be captured as it is created from an external program, a network socket or a file or named pipe. When capturing from a file, the behaviour is like the Unix :command:`tail -f` command, where new lines written to the file are captured. To use the capturing facility, the data must be written in the simple line based standard Veusz text format. Data are whitespace separated, with one value per dataset given on a single line. To capture data, use the dialog box :menuselection:`Data --> Capture`. A list of datasets should be given. This is the :ref:`standard descriptor format `. Choose the source of the data, which is either a a filename or named pipe, a network socket to connect to, or a command line for an external program. Capturing ends if the source of the data runs out (for external programs or network sockets) or the finish button is clicked. It can optionally end after a certain number of data lines or when a time period has expired. Normally the data are updated in Veusz when the capturing is finished. There is an option to update the document at intervals, which is useful for monitoring. A plot using the variables will update when the data are updated. Click the ``Capture`` button to start the capture. Click ``Finish`` or ``Cancel`` to stop. Cancelling destroys captured data. ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1675026363.0 veusz-3.6.2/Documents/manual/html/_sources/index.rst.txt0000664000175000017500000000141014365557673021624 0ustar00jssjss.. veusz documentation master file, created by sphinx-quickstart on Sun Feb 5 11:07:00 2017. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. Veusz documentation =================== Jeremy Sanders Copyright 2021 This document is licensed under the GNU General Public License, version 2 or greater. Please see the file COPYING for details, or see ``_. This is the documentation for Veusz. Veusz is a multiplatform scientific plotting package with a graphical user interface. Contents: .. toctree:: :maxdepth: 3 introduction.rst datasets.rst api.rst Indices and tables ================== * :ref:`genindex` * :ref:`modindex` * :ref:`search` ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/Documents/manual/html/_sources/introduction.rst.txt0000664000175000017500000011056314332253347023231 0ustar00jssjss============ Introduction ============ Veusz ===== Veusz is a 2D and 3D scientific plotting package. It is designed to be easy to use, easily extensible, but powerful. The program features a graphical user interface (GUI), which works under Unix/Linux, Windows or Mac OS. It can also be easily scripted (the saved file formats are similar to Python scripts) or used as module inside Python. Veusz reads data from a number of different types of data file, it can be manually entered, or constructed from other datasets. In Veusz the document is built in an object-oriented fashion, where a document is built up by a number of widgets in a hierarchy. For example, multiple function or xy widgets can be placed inside a graph widget, and many graphs can be placed in a grid widget. The program also supports a variety of 3D plots, including 3D point and surface plots. The program produces vector rather than rastered 3D output. Veusz can be extended by the user easily by adding plugins. Support for different data file types can be added with import plugins. Dataset plugins automate the manipulation of datasets. Tools plugins automate the manipulation of the document. Installation ============ Please go to the website_ of Veusz to learn more about the program. Links to binaries, distribution packages and the source package can be found in downloads_. For source installation, please see the package INSTALL. .. _website: https://veusz.github.io/ .. _downloads: https://veusz.github.io/download/ Getting started =============== Veusz includes a built-in tutorial which starts the first time the program is run. You can rerun it later from the Help menu. It also includes many examples_, to show how certain kinds of plots are produced. For more help and link to a video tutorial, see help_. .. _examples: https://veusz.github.io/examples/ .. _help: https://veusz.github.io/help-support/ Terminology =========== Here we define some terminology for future use. Widget ------ A document and its graphs are built up from widgets. These widgets can often by placed within each other, depending on the type of the widget. A widget has children (those widgets placed within it) and its parent. The widgets have a number of different settings which modify their behaviour. These settings are divided into properties, which affect what is plotted and how it is plotted. These would include the dataset being plotted or whether an axis is logarithmic. There are also formatting settings, including the font to be used and the line thickness. In addition they have actions, which perform some sort of activity on the widget or its children, like "fit" for a fit widget. As an aside, using the scripting interface, widgets are specified with a "path", like a file in Unix or Windows. These can be relative to the current widget (do not start with a slash), or absolute (start with a slash). Examples of paths include, `/page1/graph1/x`, `x` and `.`. The widget types include #. :command:`document` - representing a complete document. A document can contain pages. In addition it contains a setting giving the page size for the document. #. :command:`page` - representing a page in a document. One or more graphs can be placed on a page, or a grid. #. :command:`graph` - defining an actual graph. A graph can be placed on a page or within a grid. Contained within the graph are its axes and plotters. A graph can be given a background fill and a border if required. It also has a margin, which specifies how far away from the edge of its parent widget to plot the body of the graph. A graph can contain several axes, at any position on the plot. In addition a graph can use axes defined in parent widgets, shared with other graphs. More than one graph can be placed within in a page. The margins can be adjusted so that they lie within or besides each other. #. :command:`grid` - containing one or more graphs. A grid plots graphs in a gridlike fashion. You can specify the number of rows and columns, and the plots are automatically replotted in the chosen arrangement. A grid can contain graphs or axes. If an axis is placed in a grid, it can be shared by the graphs in the grid. #. :command:`axis` - giving the scale for plotting data. An axis translates the coordinates of the data to the screen. An axis can be linear or logarithmic, it can have fixed endpoints, or can automatically get them from the plotted data. It also has settings for the axis labels and lines, tick labels, and major and minor tick marks. An axis may be "horizontal" or "vertical" and can appear anywhere on its parent graph or grid. If an axis appears within a grid, then it can be shared by all the graphs which are contained within the grid. The :command:`axis-broken` widget is an axis sub-type. It is an axis type where there are jumps in the scale of the axis. The :command:`axis-function` widget allows the user to create an axis where the values are scaled by a monotonic function, allowing non-linear and non-logarithmic axis scales. The widget can also be linked to a different axis via the function. #. plotters - types of widgets which plot data or add other things on a graph. There is no actual plotter widget which can be added, but several types of plotters listed below. Plotters typically take an axis as a setting, which is the axis used to plot the data on the graph (default x and y). #. :command:`function` - a plotter which plots a function on the graph. Functions can be functions of x or y (parametric functions are not done yet!), and are defined in Python expression syntax, which is very close to most other languages. For example `3*x**2 + 2*x - 4`. A number of functions are available (e.g. sin, cos, tan, exp, log...). Technically, Veusz imports the numpy package when evaluating, so numpy functions are available. As well as the function setting, also settable is the line type to plot the function, and the number of steps to evaluate the function when plotting. Filling is supported above/below/left/right of the function. #. :command:`xy` - a plotter which plots scatter, line, or stepped plots. This versatile plotter takes an x and y dataset, and plots (optional) points, in a chosen marker and colour, connecting them with (optional) lines, and plotting (optional) error bars. An xy plotter can also plot a stepped line, allowing histograms to be plotted (note that it doesn't yet do the binning of the data). The settings for the xy widget are the various attributes for the points, line and error bars, the datasets to plot, and the axes to plot on. The xy plotter can plot a label next to each dataset, which is either the same for each point or taken from a text dataset. If you wish to leave gaps in a plot, the input value `nan` can be specified in the numeric dataset. #. :command:`fit` - fit a function to data. This plotter is a like the function plotter, but allows fitting of the function to data. This is achieved by clicking on a "fit" button, or using the "fit" action of the widget. The fitter takes a function to fit containing the unknowns, e.g. `a*x**2 + b*x + c`, and initial values for the variables (here a, b and c). It then fits the data (note that at the moment, the fit plotter fits all the data, not just the data that can be seen on the graph) by minimising the chi-squared. In order to fit properly, the y data (or x, if fitting as a function of x) must have a properly defined, preferably symmetric error. If there is none, Veusz assumes the same fractional error everywhere, or symmetrises asymmetric errors. Note that more work is required in this widget, as if a parameter is not well defined by the data, the matrix inversion in the fit will fail. In addition Veusz does not supply estimates for the errors or the final chi-squared in a machine readable way. If the fitting parameters vary significantly from 1, then it is worth "normalizing" them by adding in a factor in the fit equation to bring them to of the order of 1. #. :command:`bar` - a bar chart which plots sets of data as horizontal or vertical bars. Multiple datasets are supported. In "grouped" mode the bars are placed side-by-side for each dataset. In "stacked" mode the bars are placed on top of each other (in the appropriate direction according to the sign of the dataset). Bars are placed on coordinates given, or in integer values from 1 upward if none are given. Error bars are plotted for each of the datasets. Different fill styles can be given for each dataset given. A separate key value can be given for each dataset. #. :command:`key` - a box which describes the data plotted. If a key is added to a plot, the key looks for "key" settings of the other data plotted within a graph. If there any it builds up a box containing the symbol and line for the plotter, and the text in the "key" setting of the widget. This allows a key to be very easily added to a plot. The key may be placed in any of the corners of the plot, in the centre, or manually placed. Depending on the ordering of the widgets, the key will be placed behind or on top of the widget. The key can be filled and surrounded by a box, or not filled or surrounded. #. :command:`label` - a text label places on a graph. The alignment can be adjusted and the font changed. The position of the label can be specified in fractional terms of the current graph, or using axis coordinates. #. :command:`rect, ellipse` - these draw a rectangle or ellipse, respectively, of size and rotation given. These widgets can be placed directly on the page or on a graph. The centre can be given in axis coordinates or fractional coordinates. #. :command:`imagefile` - draw an external graphs file on the graph or page, with size and rotation given. The centre can be given in axis coordinates or fractional coordinates. #. :command:`svgfile` - draw an external scalable vector graphic on the graph or page, with size and rotation given. The centre can be given in axis coordinates or fractional coordinates. #. :command:`line` - draw a line with optional arrowheads on the graph or page. One end can be given in axis coordinates or fractional coordinates. #. :command:`contour` - plot contours of a 2D dataset on the graph. Contours are automatically calculated between the minimum and maximum values of the graph or chosen manually. The line style of the contours can be chosen individually and the region between contours can be filled with shading or color. 2D datasets currently consist of a regular grid of values between minimum and maximum positions in x and y. They can be constructed from three 1D datasets of x, y and z if they form a regular x, y grid. #. :command:`image` - plot a 2D dataset as a colored image. Different color schemes can be chosen. The scaling between the values and the image can be specified as linear, logarithmic, square-root or square. #. :command:`polygon` - plot x and y points from datasets as a polygon. The polygon can be placed directly on the page or within a graph. Coordinates are either plotted using the axis or as fractions of the width and height of the containing widget. #. :command:`boxplot` - plot distribution of points in a dataset. #. :command:`polar` - plot polar data or functions. This is a non-orthogonal plot and is placed directly on the page rather than in a graph. #. :command:`ternary` - plot data of three variables which add up to 100 per cent.This is a non-orthogonal plot and is placed directly on the page rather than in a graph. #. 3D widgets - 3D graphs can be created by adding a 3D scene widget (:command:`scene3d`) to a blank page, or by creating a new 3D document. The 3D scene has settings which control the angle the rotation angle of the plot, the position and color of lighting and the rendering method. To build up a 3D plot the following widgets can be placed inside it: #. :command:`graph3d` - this is an analogous widget to the 2D graph widget, plotting a 3D plot with cartesian axes. It contains three or more axis3d widgets, and plotting widgets. The graph contains settings for the graph size (the default is 1 in each direction) and the 3D position of the graph in the same units. Multiple graph widgets can be added to a scene, though the position and sizes may need to be adjusted. #. :command:`axis3d` - normally a 3D graph has three axes (X, Y and Z), but more axes can be added to plot multiple things on a single axis direction. This works in a similar way to the 2D axis widget. The widget has options for the axis label, tick labels, tick marks and grid lines (which appear on the outside of the 3D cube). An axis can be swiched between linear and logorithmic mode. Scalings can be applied to the data values plotted in that dimension or to the axis labels. #. :command:`point3d` - for plotting points, and optionally connecting lines, in 3D. This, and the other plotting widgets are placed in a graph3d widget. The user provides three 1D datasets for the x, y and z values. The markers can be scaled in size by another optional dataset. The markers can also be colored according to another optional dataset, according to a color map, minimum and maximum. Error bars can be provided for each of the x, y and z datasets. The connecting line can also be colored if a color dataset is provided and a colormap chosen. #. :command:`function3d` - for plotting either a functional line in 3D space or a functional surface. The type of plot is given by the mode parameter. In the case of the line, the x,y,z coordinates can be specified as a function of t, where t goes from 0 to 1, or by giving functions for two of the coordinates as a function of the other. For a surface, the value for x, y or z is given as a function of the other two. In addition, a function returning 0 to 1 can be provided for the color, which specifies the color map value for the surface at each position or the line color. For a 2D surface, the grid lines or surface fill can be hidden or shown. There are also settings giving the number of function evaluations to compute in each direction for a surface, or in one direction for a line. #. :command:`surface3d` - for plotting a two dimensional surface from data values. The user should provide a 2D dataset for the height of a surface. The x, y or z axis for the height and other directions can be chosen. A second 2D dataset can be provided for the color of the surface at each point. Note that the coordinate of the 2D dataset lies at the center of each 2D grid point. The height of the grid at the edge is calculated by linear interpolation. Normally the grid is surrounded by four lines and the surface by two triangles. If a high resolution option is enabled, the each grid point is surrounded by eight lines and the surface drawn by eight triangles. #. :command:`volume3d` - for plotting 3D volumes. In this widget, for a volume described by A×B×C values, then the user should provide four datasets, each containing up to A×B×C values (there can be holes in the representation). Three of the datasets give coordinates of the centers of the 3D cells and the fourth the color of the cell. An example set of datasets would be X=(0,0,0,0,1,1,1,1), Y=(0,0,1,1,0,0,1,1), Z=(0,1,0,1,0,1,0,1), color=(0.1,0.2,0.3,0.4,0.3,0.2,0.1,0). Additionally, the user can provide a transparency dataset, which can be useful for showing or hiding parts of the 3D space. Settings: properties and formatting ----------------------------------- The various settings of the widgets come in a number of types, including integers (e.g. 10), floats (e.g. 3.14), dataset names (`mydata`), expressions (`x+y`), text (`hi there!`), distances (see above), options (`horizontal` or `vertical` for axes). Veusz performs type checks on these parameters. If they are in the wrong format the control to edit the setting will turn red. In the command line, a TypeError exception is thrown. In the GUI, the current page is replotted if a setting is changed when enter is pressed or the user moves to another setting. The settings are split up into formatting settings, controlling the appearance of the plot, or properties, controlling what is plotted and how it is plotted. Default settings, including the default font and line style, and the default settings for any graph widget, can be modified in the "Default styles" dialog box under the "Edit" menu. Default settings are set on a per-document basis, but can be saved into a separate file and loaded. A default default settings file can be given to use for new documents (set in the preferences dialog). Datasets -------- Data are imported into Veusz as a dataset. A dataset is imported from a file, entered manually, set via the command line, or linked to other datasets via an expression or dataset plugin. Each dataset has a unique name in the document. They can be seen in the dataset browser panel, or in the Data, Edit dialog box. To choose the data to be plotted, the user usually selects the dataset in the appropriate setting of a widget. Veusz supports one-dimensional (1D) datasets, which are a list of values with optional error bars. Error bars can either be symmetric or asymmetric. Veusz also supports two-dimensional (2D) data. A 2D dataset is a grid of values, with either a fixed spacing in coordinates, or with arbitrary pixel sizes. An n-dimensional (nD) dataset is an arbitrary matrix of values. These cannot be plotted directly, but subsets can be plotted using python slice syntax to convert to 1D or 2D datasets. In addition to simple numeric datasets, Veusz also supports date-time datasets. For details see the sections on reading data. Also supported are text datasets, which are lists of text strings. Datasets can either be plain lists of values which are stored within the document, or they can be linked to a file, so that the values update if the file is reloaded, or they can be linked to other datasets via expressions or dataset plugins. .. _TextFonts: Text -------------------- Veusz understands a limited set of LaTeX-like formatting for text. There are some differences (for example, `10^23` puts the 2 and 3 into superscript), but it is fairly similar. You should also leave out the dollar signs. Veusz supports superscripts (`^`), subscripts (`_`), brackets for grouping attributes are `{` and `}`. Supported LaTeX symbols include: \\AA, \\Alpha, \\Beta, \\Chi, \\Delta, \\Epsilon, \\Eta, \\Gamma, \\Iota, \\Kappa, \\Lambda, \\Mu, \\Nu, \\Omega, \\Omicron, \\Phi, \\Pi, \\Psi, \\Rho, \\Sigma, \\Tau, \\Theta, \\Upsilon, \\Xi, \\Zeta, \\alpha, \\approx, \\ast, \\asymp, \\beta, \\bowtie, \\bullet, \\cap, \\chi, \\circ, \\cup, \\dagger, \\dashv, \\ddagger, \\deg, \\delta, \\diamond, \\divide, \\doteq, \\downarrow, \\epsilon, \\equiv, \\eta, \\gamma, \\ge, \\gg, \\hat, \\in, \\infty, \\int, \\iota, \\kappa, \\lambda, \\le, \\leftarrow, \\lhd, \\ll, \\models, \\mp, \\mu, \\neq, \\ni, \\nu, \\odot, \\omega, \\omicron, \\ominus, \\oplus, \\oslash, \\otimes, \\parallel, \\perp, \\phi, \\pi, \\pm, \\prec, \\preceq, \\propto, \\psi, \\rhd, \\rho, \\rightarrow, \\sigma, \\sim, \\simeq, \\sqrt, \\sqsubset, \\sqsubseteq, \\sqsupset, \\sqsupseteq, \\star, \\stigma, \\subset, \\subseteq, \\succ, \\succeq, \\supset, \\supseteq, \\tau, \\theta, \\times, \\umid, \\unlhd, \\unrhd, \\uparrow, \\uplus, \\upsilon, \\vdash, \\vee, \\wedge, \\wtilde, \\xi, \\zeta. Please request additional characters if they are required (and exist in the unicode character set). Special symbols can be included directly from a character map. Other LaTeX commands are supported. `\\\\` breaks a line. This can be used for simple tables. For example `{a\\\\b} {c\\\\d}` shows `a c` over `b d`. The command `\\frac{a}{b}` shows a vertical fraction a/b. Also supported are commands to change font. The command `\\font{name}{text}` changes the font text is written in to name. This may be useful if a symbol is missing from the current font, e.g. `\\font{symbol}{g}` should produce a gamma. You can increase, decrease, or set the size of the font with `\\size{+2}{text}`, `\\size{-2}{text}`, or `\\size{20}{text}`. Numbers are in points. Various font attributes can be changed: for example, `\\italic{some italic text}` (or use `\\textit` or `\\emph`), `\\bold{some bold text}` (or use `\\textbf`) and `\\underline{some underlined text}`. Example text could include `Area / \\pi (10^{-23} cm^{-2})`, or `\\pi\\bold{g}`. Veusz plots these symbols with Qt's unicode support. You can also include special characters directly, by copying and pasting from a character map application. If your current font does not contain these symbols then you may get a box character. Veusz also supports the evaluation of a Python expression when text is written to the page. Python code is written inside the brackets :command:`%{{ }}%`. Note that the Python evaluation happens before the LaTeX expansion is done. The return value of the expression is converted to text using the Python :command:`str()` function. For example, the expression :command:`%{{2+2}}%` would write :command:`4`. Custom functions and constants are supported when evaluation, in addition to the usual numpy functions. In addition, Veusz defines the following useful functions and values. #. :command:`ENVIRON` is the :command:`os.environ` dict of environment variables. :command:`%{{ENVIRON['USER']}}%` would show the current user in unix. #. :command:`DATE([fmt])` returns the current date, by default in ISO format. fmt is an optional format specifier using :command:`datetime.date.strftime` format specifiers. #. :command:`TIME([fmt])` returns the current date/time, by default in ISO format. fmt is an optional format specifier using :command:`datetime.datetime.strftime` format specifiers. #. :command:`DATA(name[, part])` returns the Veusz dataset with given name. For numeric datasets this is a numpy array. For numeric datasets with errors, part specifies the dataset part to return, i.e. 'data', 'serr', 'perr', 'nerr'. For example, the mean value of a dataset could be shown using :command:`%{{mean(DATA('x'))}}%`. #. :command:`FILENAME()` - returns the current document filename. This can include the directory/folder of the file. Note that the filename is escaped with ESCAPE() so that LaTeX symbols are not expanded when shown. #. :command:`BASENAME()` - returns the current document filename, removing the directory or folder name Note that the filename is escaped with ESCAPE() so that LaTeX symbols are not expanded when shown. #. :command:`ESCAPE(x)` - escapes any LaTeX symbols in x so that they are not interpreted as LaTeX. #. :command:`SETTING(path)` - return the value of the Veusz setting given by the full path, e.g. :command:`%{{SETTING('/page1/width')}}%`. #. :command:`LANG(mapping)` - mapping is a dictionary which maps language names to strings. This returns the string corresponding to the current language. The keys come from the locale names which are the two-letter language codes (e.g. `en` or `fr`), or the full code (e.g. `en_GB` or `de_AT`). The `default` key is used if the language code is not found. An example is :command:`%{{ LANG({'de':'Druck','default':'Pressure'}) }}%`. Measurements ------------ Distances, widths and lengths in Veusz can be specified in a number of different ways. These include absolute distances specified in physical units, e.g. 1cm, 0.05m, 10mm, 5in and 10pt, and relative units, which are relative to the largest dimension of the page, including 5%, 1/20, 0.05. Color theme ----------- From version 1.26, widgets are colored automatically using the color theme. This theme is specified in the main document widget settings. Widgets are given the colors in order given the order in a graph widget. The default theme can be specified in the preferences dialog box. To override a theme, the user can manually specify the individual colors in the custom definitions dialog box. Color `theme1` is used as the first theme color, then `theme2`, etc. Axis numeric scales ------------------- The way in which numbers are formatted in axis scales is chosen automatically. For standard numerical axes, values are shown with the `%Vg` formatting (see below). For date axes, an appropriate date formatting is used so that the interval shown is correct. A format can be given for an axis in the axis number formatting panel can be given to explicitly choose a format. Some examples are given in the drop down axis menu. Hold the mouse over the example for detail. C-style number formatting is used with a few Veusz specific extensions. Text can be mixed with format specifiers, which start with a `%` sign. Examples of C-style formatting include: `%.2f` (decimal number with two decimal places, e.g. 2.01), `%.3e` (scientific formatting with three decimal places, e.g. 2.123e-02), `%g` (general formatting, switching between `%f` and `%e` as appropriate). See ``_ for details. Veusz extensions include `%Ve`, which is like `%e` except it displays scientific notation as written, e.g. 1.2x10^23, rather than 1.2e+23. `%Vg` switches between standard numbers and Veusz scientific notation for large and small numbers. `%VE` using engineering SI suffixes to represent large or small numbers (e.g. 1000 is 1k). Veusz allows dates and times to be formatted using `%VDX` where `X` is one of the formatting characters for strftime (see ``_ for details). These include `a` for an abbreviated weekday name, `A` for full weekday name, `b` for abbreviated month name, `B` for full month name, `c` date and time representation, `d` day of month 01..31, `H` hour as 00..23, `I` hour as 01..12, `j` as day of year 001..366, `m` as month 01..12, `M` minute as 00..59, `p` AM/PM, `S` second 00..61, `U` week number of year 00..53 (Sunday as first day of week), `w` weekday as decimal number 0..6, `W` week number of year (Monday as first day of week), `x` date representation, `X` time representation, `y` year without century 00..99 and `Y` year. `%VDVS` is a special Veusz addon format which shows seconds and fractions of seconds (e.g. 12.2). Three dimensional (3D) plots ---------------------------- When drawing in three dimensions, Veusz builds up a 3D "scene" for the graph from the various plotting widgets, made up of triangles, line segments, points and text. Veusz does not use a standard (e.g. OpenGL) drawing method, but renders the scene itself. The advantage of this is that it can produce vector rather than bitmap or raster output. OpenGL, for example, is based around bitmaps. Veusz applies lighting to the scene. The lighting depends on enabled light sources, which are set in the scene3d widget. Light sources have a color, intensity and position. Note that only the angle of the light to a surface affects its lighting, not its distance. The position of the light is relative to the viewer (camera), not the graph. Positive light coordinates are towards the graph (z), upwards (y) and rightwards (x). Normally each solid surface has an intrinsic color, which can be seen without any lighting. If a light source is enabled, the color of the light is added to the surface color, depending on the reflectivity of the surface. Each surface also has a transparency setting. By default, Veusz uses a naive Painter's Algorithm to draw the scene. It draws from the back of scene to the front. The main problem with this algorithm is that shapes and lines overlapping in depth can be confused as the depth of each object is calculated at only one point. In addition objects may intersect, which is not properly treated. In the scene3d object, the user can switch to a different rendering mode called BSP. In this accurate BSP mode, the objects are split so that they never overlap from any viewing angle. The disadvantage of this mode is that it is slow, uses a lot of memory and produces large output files. We plan in future to add another mode which handles overlaps better and does not unnecessarily split objects. The plot is affected by the viewing angle, which is specified in the scene3d widget settings. The rotation is given be three rotations around lines in X, Y and Z directions (note that these are not the same directions as the X, Y and Z axes!). The X axis runs horizontally on the screen, the Y axis runs vertically, and the Z axis runs along the line of sight. There is also a distance setting, which moves graphs closer to or away from the viewer. At larger distances the effect of perspective reduces, meaning that parts of the plot closer to the viewer are not larger than if they were at the farthest side. At large distances, a plot tends towards being isometric. At small distances, shapes are more distorted (note by default the size of the graph is 1 in these distance units). It is currently possible to place graphs inside the camera leading to strange output. By default, Veusz enlarges the 3D rendered scene to fill the bounds of the 3D scene widget, so distance has no effect on the size of the plot. This scaling can be switched off by modifying the Size setting from "Auto" to a fixed number. A fixed size is useful if the user wants a graph to be the same size for any rotation. With this setting the size of the plot is affected by their distance. By default, a 3D graph has dimensions of 1 along the X, Y and Z axes. The size can be adjusted using the size settings in the graph3d widget. Care should be taken that the graph size does not lead to points being at negative viewing distances. The default position of the plot is at the origin 0,0,0. If the user wants to plot multiple graph3d widgets, the positions should be adjusted to prevent overlap. Normally in Veusz, sizes of objects (e.g. plot markers) are given in physical units. This makes less sense for a 3D plot as sizes can depend on distance. In a 3D graph sizes of plotting markers and line widths are given in 1/1000 of the graph bounding box maximum dimension. The main window =============== You should see the main window when you run Veusz (you can just type the veusz command in Unix). .. image:: _images/mainwindow.png The Veusz window is split into several sections. At the top is the menu bar and tool bar. These work in the usual way to other applications. Sometimes options are disabled (greyed out) if they do not make sense to be used. If you hold your mouse over a button for a few seconds, you will usually get an explanation for what it does called a "tool tip". Below the main toolbar is a second toolbar for constructing the graph by adding widgets (on the left), and some editing buttons. The add widget buttons add the request widget to the currently selected widget in the selection window. The widgets are arranged in a tree-like structure. Below these toolbars and to the right is the plot window. This is where the current page of the current document is shown. You can adjust the size of the plot on the screen (the zoom factor) using the "View" menu or the zoom tool bar button (the magnifying glass). Initially you will not see a plot in the plot window, but you will see the Veusz logo. At the moment you cannot do much else with the window. In the future you will be able to click on items in the plot to modify them. To the left of the plot window is the selection window, and the properties and formatting windows. The properties window lets you edit various aspects of the selected widget (such as the minimum and maximum values on an axis). Changing these values should update the plot. The formatting lets you modify the appearance of the selected widget. There are a series of tabs for choosing what aspect to modify. The various windows can be "dragged" from the main window to "float" by themselves on the screen. To the bottom of the window is the console. This window is not shown by default, but can be enabled in the View menu. The console is a Veusz and Python command line console. To read about the commands available see :ref:`Commands `. As this is a Python console, you can enter mathematical expressions (e.g. `1+2.0*cos(pi/4)`) here and they will be evaluated when you press Enter. The usual special functions and the operators are supported. You can also assign results to variables (e.g. `a=1+2`) for use later. The console also supports command history like many Unix shells. Press the up and down cursor keys to browse through the history. Command line completion is not available yet! There also exists a dataset browsing window, by default to the right of the screen. This window allows you to view the datasets currently loaded, their dimensions and type. Hovering a mouse over the size of the dataset will give you a preview of the data. My first plot ============= After opening Veusz, on the left of the main window, you will see a Document, containing a Page, which contains a Graph with its axes. The Graph is selected in the selection window. The toolbar above adds a new widget to the selected widget. If a widget cannot be added to a selected widget it is disabled. On opening a new document Veusz automatically adds a new Page and Graph (with axes) to the document. You will see something like this: .. image:: _images/winwithgraph.png Select the x axis which has been added to the document (click on `x` in the selection window). In the properties window you will see a variety of different properties you can modify. For instance you can enter a label for the axis by writing `Area (cm^{2})` in the box next to label and pressing enter. Veusz supports text in LaTeX-like form (without the dollar signs). Other important parameters is the `log` switch which switches between linear and logarithmic axes, and `min` and `max` which allow the user to specify the minimum and maximum values on the axes. The formatting dialog lets you edit various aspects of the graph appearance. For instance the "Line" tab allows you to edit the line of the axis. Click on "Line", then you can then modify its colour. Enter "green" instead of "black" and press enter. Try making the axis label bold. Now you can try plotting a function on the graph. If the graph, or its children are selected, you will then be able to click the "function" button at the top (a red curve on a graph). You will see a straight line (y=x) added to the plot. If you select "function1", you will be able to edit the functional form plotted and the style of its line. Change the function to `x**2` (x-squared). We will now try plotting data on the graph. Go to your favourite text editor and save the following data as test.dat: :: 1 0.1 -0.12 1.1 0.1 2.05 0.12 -0.14 4.08 0.12 2.98 0.08 -0.1 2.9 0.11 4.02 0.04 -0.1 15.3 1.0 The first three columns are the x data to plot plus its asymmetric errors. The final two columns are the y data plus its symmetric errors. In Veusz, go to the "Data" menu and select "Import". Type the filename into the filename box, or use the "Browse..." button to search for the file. You will see a preview of the data pop up in the box below. Enter `x,+,- y,+-` into the descriptors edit box (note that commas and spaces in the descriptor are almost interchangeable in Veusz 1.6 or newer). This describes the format of the data which describes dataset "x" plus its asymmetric errors, and "y" with its symmetric errors. If you now click "Import", you will see it has imported datasets `x` and `y`. To plot the data you should now click on `graph1` in the tree window. You are now able to click on the "xy" button (which looks like points plotted on a graph). You will see your data plotted on the graph. Veusz plots datasets `x` and `y` by default, but you can change these in the properties of the "xy" plotter. You are able to choose from a variety of markers to plot. You can remove the plot line by choosing the "Plot Line" subsetting, and clicking on the "hide" option. You can change the colour of the marker by going to the "Marker Fill" subsetting, and entering a new colour (e.g. red), into the colour property. ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.1445212 veusz-3.6.2/Documents/manual/html/_static/0000775000175000017500000000000014376700261016736 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426733.0 veusz-3.6.2/Documents/manual/html/_static/alabaster.css0000664000175000017500000002566114376700055021421 0ustar00jssjss@import url("basic.css"); /* -- page layout ----------------------------------------------------------- */ body { font-family: Georgia, serif; font-size: 17px; background-color: #fff; color: #000; margin: 0; padding: 0; } div.document { width: 940px; margin: 30px auto 0 auto; } div.documentwrapper { float: left; width: 100%; } div.bodywrapper { margin: 0 0 0 220px; } div.sphinxsidebar { width: 220px; font-size: 14px; line-height: 1.5; } hr { border: 1px solid #B1B4B6; } div.body { background-color: #fff; color: #3E4349; padding: 0 30px 0 30px; } div.body > .section { text-align: left; } div.footer { width: 940px; margin: 20px auto 30px auto; font-size: 14px; color: #888; text-align: right; } div.footer a { color: #888; } p.caption { font-family: inherit; font-size: inherit; } div.relations { display: none; } div.sphinxsidebar a { color: #444; text-decoration: none; border-bottom: 1px dotted #999; } div.sphinxsidebar a:hover { border-bottom: 1px solid #999; } div.sphinxsidebarwrapper { padding: 18px 10px; } div.sphinxsidebarwrapper p.logo { padding: 0; margin: -10px 0 0 0px; text-align: center; } div.sphinxsidebarwrapper h1.logo { margin-top: -10px; text-align: center; margin-bottom: 5px; text-align: left; } div.sphinxsidebarwrapper h1.logo-name { margin-top: 0px; } div.sphinxsidebarwrapper p.blurb { margin-top: 0; font-style: normal; } div.sphinxsidebar h3, div.sphinxsidebar h4 { font-family: Georgia, serif; color: #444; font-size: 24px; font-weight: normal; margin: 0 0 5px 0; padding: 0; } div.sphinxsidebar h4 { font-size: 20px; } div.sphinxsidebar h3 a { color: #444; } div.sphinxsidebar p.logo a, div.sphinxsidebar h3 a, div.sphinxsidebar p.logo a:hover, div.sphinxsidebar h3 a:hover { border: none; } div.sphinxsidebar p { color: #555; margin: 10px 0; } div.sphinxsidebar ul { margin: 10px 0; padding: 0; color: #000; } div.sphinxsidebar ul li.toctree-l1 > a { font-size: 120%; } div.sphinxsidebar ul li.toctree-l2 > a { font-size: 110%; } div.sphinxsidebar input { border: 1px solid #CCC; font-family: Georgia, serif; font-size: 1em; } div.sphinxsidebar hr { border: none; height: 1px; color: #AAA; background: #AAA; text-align: left; margin-left: 0; width: 50%; } div.sphinxsidebar .badge { border-bottom: none; } div.sphinxsidebar .badge:hover { border-bottom: none; } /* To address an issue with donation coming after search */ div.sphinxsidebar h3.donation { margin-top: 10px; } /* -- body styles ----------------------------------------------------------- */ a { color: #004B6B; text-decoration: underline; } a:hover { color: #6D4100; text-decoration: underline; } div.body h1, div.body h2, div.body h3, div.body h4, div.body h5, div.body h6 { font-family: Georgia, serif; font-weight: normal; margin: 30px 0px 10px 0px; padding: 0; } div.body h1 { margin-top: 0; padding-top: 0; font-size: 240%; } div.body h2 { font-size: 180%; } div.body h3 { font-size: 150%; } div.body h4 { font-size: 130%; } div.body h5 { font-size: 100%; } div.body h6 { font-size: 100%; } a.headerlink { color: #DDD; padding: 0 4px; text-decoration: none; } a.headerlink:hover { color: #444; background: #EAEAEA; } div.body p, div.body dd, div.body li { line-height: 1.4em; } div.admonition { margin: 20px 0px; padding: 10px 30px; background-color: #EEE; border: 1px solid #CCC; } div.admonition tt.xref, div.admonition code.xref, div.admonition a tt { background-color: #FBFBFB; border-bottom: 1px solid #fafafa; } div.admonition p.admonition-title { font-family: Georgia, serif; font-weight: normal; font-size: 24px; margin: 0 0 10px 0; padding: 0; line-height: 1; } div.admonition p.last { margin-bottom: 0; } div.highlight { background-color: #fff; } dt:target, .highlight { background: #FAF3E8; } div.warning { background-color: #FCC; border: 1px solid #FAA; } div.danger { background-color: #FCC; border: 1px solid #FAA; -moz-box-shadow: 2px 2px 4px #D52C2C; -webkit-box-shadow: 2px 2px 4px #D52C2C; box-shadow: 2px 2px 4px #D52C2C; } div.error { background-color: #FCC; border: 1px solid #FAA; -moz-box-shadow: 2px 2px 4px #D52C2C; -webkit-box-shadow: 2px 2px 4px #D52C2C; box-shadow: 2px 2px 4px #D52C2C; } div.caution { background-color: #FCC; border: 1px solid #FAA; } div.attention { background-color: #FCC; border: 1px solid #FAA; } div.important { background-color: #EEE; border: 1px solid #CCC; } div.note { background-color: #EEE; border: 1px solid #CCC; } div.tip { background-color: #EEE; border: 1px solid #CCC; } div.hint { background-color: #EEE; border: 1px solid #CCC; } div.seealso { background-color: #EEE; border: 1px solid #CCC; } div.topic { background-color: #EEE; } p.admonition-title { display: inline; } p.admonition-title:after { content: ":"; } pre, tt, code { font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace; font-size: 0.9em; } .hll { background-color: #FFC; margin: 0 -12px; padding: 0 12px; display: block; } img.screenshot { } tt.descname, tt.descclassname, code.descname, code.descclassname { font-size: 0.95em; } tt.descname, code.descname { padding-right: 0.08em; } img.screenshot { -moz-box-shadow: 2px 2px 4px #EEE; -webkit-box-shadow: 2px 2px 4px #EEE; box-shadow: 2px 2px 4px #EEE; } table.docutils { border: 1px solid #888; -moz-box-shadow: 2px 2px 4px #EEE; -webkit-box-shadow: 2px 2px 4px #EEE; box-shadow: 2px 2px 4px #EEE; } table.docutils td, table.docutils th { border: 1px solid #888; padding: 0.25em 0.7em; } table.field-list, table.footnote { border: none; -moz-box-shadow: none; -webkit-box-shadow: none; box-shadow: none; } table.footnote { margin: 15px 0; width: 100%; border: 1px solid #EEE; background: #FDFDFD; font-size: 0.9em; } table.footnote + table.footnote { margin-top: -15px; border-top: none; } table.field-list th { padding: 0 0.8em 0 0; } table.field-list td { padding: 0; } table.field-list p { margin-bottom: 0.8em; } /* Cloned from * https://github.com/sphinx-doc/sphinx/commit/ef60dbfce09286b20b7385333d63a60321784e68 */ .field-name { -moz-hyphens: manual; -ms-hyphens: manual; -webkit-hyphens: manual; hyphens: manual; } table.footnote td.label { width: .1px; padding: 0.3em 0 0.3em 0.5em; } table.footnote td { padding: 0.3em 0.5em; } dl { margin: 0; padding: 0; } dl dd { margin-left: 30px; } blockquote { margin: 0 0 0 30px; padding: 0; } ul, ol { /* Matches the 30px from the narrow-screen "li > ul" selector below */ margin: 10px 0 10px 30px; padding: 0; } pre { background: #EEE; padding: 7px 30px; margin: 15px 0px; line-height: 1.3em; } div.viewcode-block:target { background: #ffd; } dl pre, blockquote pre, li pre { margin-left: 0; padding-left: 30px; } tt, code { background-color: #ecf0f3; color: #222; /* padding: 1px 2px; */ } tt.xref, code.xref, a tt { background-color: #FBFBFB; border-bottom: 1px solid #fff; } a.reference { text-decoration: none; border-bottom: 1px dotted #004B6B; } /* Don't put an underline on images */ a.image-reference, a.image-reference:hover { border-bottom: none; } a.reference:hover { border-bottom: 1px solid #6D4100; } a.footnote-reference { text-decoration: none; font-size: 0.7em; vertical-align: top; border-bottom: 1px dotted #004B6B; } a.footnote-reference:hover { border-bottom: 1px solid #6D4100; } a:hover tt, a:hover code { background: #EEE; } @media screen and (max-width: 870px) { div.sphinxsidebar { display: none; } div.document { width: 100%; } div.documentwrapper { margin-left: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; } div.bodywrapper { margin-top: 0; margin-right: 0; margin-bottom: 0; margin-left: 0; } ul { margin-left: 0; } li > ul { /* Matches the 30px from the "ul, ol" selector above */ margin-left: 30px; } .document { width: auto; } .footer { width: auto; } .bodywrapper { margin: 0; } .footer { width: auto; } .github { display: none; } } @media screen and (max-width: 875px) { body { margin: 0; padding: 20px 30px; } div.documentwrapper { float: none; background: #fff; } div.sphinxsidebar { display: block; float: none; width: 102.5%; margin: 50px -30px -20px -30px; padding: 10px 20px; background: #333; color: #FFF; } div.sphinxsidebar h3, div.sphinxsidebar h4, div.sphinxsidebar p, div.sphinxsidebar h3 a { color: #fff; } div.sphinxsidebar a { color: #AAA; } div.sphinxsidebar p.logo { display: none; } div.document { width: 100%; margin: 0; } div.footer { display: none; } div.bodywrapper { margin: 0; } div.body { min-height: 0; padding: 0; } .rtd_doc_footer { display: none; } .document { width: auto; } .footer { width: auto; } .footer { width: auto; } .github { display: none; } } /* misc. */ .revsys-inline { display: none!important; } /* Make nested-list/multi-paragraph items look better in Releases changelog * pages. Without this, docutils' magical list fuckery causes inconsistent * formatting between different release sub-lists. */ div#changelog > div.section > ul > li > p:only-child { margin-bottom: 0; } /* Hide fugly table cell borders in ..bibliography:: directive output */ table.docutils.citation, table.docutils.citation td, table.docutils.citation th { border: none; /* Below needed in some edge cases; if not applied, bottom shadows appear */ -moz-box-shadow: none; -webkit-box-shadow: none; box-shadow: none; } /* relbar */ .related { line-height: 30px; width: 100%; font-size: 0.9rem; } .related.top { border-bottom: 1px solid #EEE; margin-bottom: 20px; } .related.bottom { border-top: 1px solid #EEE; } .related ul { padding: 0; margin: 0; list-style: none; } .related li { display: inline; } nav#rellinks { float: right; } nav#rellinks li+li:before { content: "|"; } nav#breadcrumbs li+li:before { content: "\00BB"; } /* Hide certain items when printing */ @media print { div.related { display: none; } }././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426733.0 veusz-3.6.2/Documents/manual/html/_static/basic.css0000664000175000017500000003451314376700055020540 0ustar00jssjss/* * basic.css * ~~~~~~~~~ * * Sphinx stylesheet -- basic theme. * * :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ /* -- main layout ----------------------------------------------------------- */ div.clearer { clear: both; } div.section::after { display: block; content: ''; clear: left; } /* -- relbar ---------------------------------------------------------------- */ div.related { width: 100%; font-size: 90%; } div.related h3 { display: none; } div.related ul { margin: 0; padding: 0 0 0 10px; list-style: none; } div.related li { display: inline; } div.related li.right { float: right; margin-right: 5px; } /* -- sidebar --------------------------------------------------------------- */ div.sphinxsidebarwrapper { padding: 10px 5px 0 10px; } div.sphinxsidebar { float: left; width: 230px; margin-left: -100%; font-size: 90%; word-wrap: break-word; overflow-wrap : break-word; } div.sphinxsidebar ul { list-style: none; } div.sphinxsidebar ul ul, div.sphinxsidebar ul.want-points { margin-left: 20px; list-style: square; } div.sphinxsidebar ul ul { margin-top: 0; margin-bottom: 0; } div.sphinxsidebar form { margin-top: 10px; } div.sphinxsidebar input { border: 1px solid #98dbcc; font-family: sans-serif; font-size: 1em; } div.sphinxsidebar #searchbox form.search { overflow: hidden; } div.sphinxsidebar #searchbox input[type="text"] { float: left; width: 80%; padding: 0.25em; box-sizing: border-box; } div.sphinxsidebar #searchbox input[type="submit"] { float: left; width: 20%; border-left: none; padding: 0.25em; box-sizing: border-box; } img { border: 0; max-width: 100%; } /* -- search page ----------------------------------------------------------- */ ul.search { margin: 10px 0 0 20px; padding: 0; } ul.search li { padding: 5px 0 5px 20px; background-image: url(file.png); background-repeat: no-repeat; background-position: 0 7px; } ul.search li a { font-weight: bold; } ul.search li p.context { color: #888; margin: 2px 0 0 30px; text-align: left; } ul.keywordmatches li.goodmatch a { font-weight: bold; } /* -- index page ------------------------------------------------------------ */ table.contentstable { width: 90%; margin-left: auto; margin-right: auto; } table.contentstable p.biglink { line-height: 150%; } a.biglink { font-size: 1.3em; } span.linkdescr { font-style: italic; padding-top: 5px; font-size: 90%; } /* -- general index --------------------------------------------------------- */ table.indextable { width: 100%; } table.indextable td { text-align: left; vertical-align: top; } table.indextable ul { margin-top: 0; margin-bottom: 0; list-style-type: none; } table.indextable > tbody > tr > td > ul { padding-left: 0em; } table.indextable tr.pcap { height: 10px; } table.indextable tr.cap { margin-top: 10px; background-color: #f2f2f2; } img.toggler { margin-right: 3px; margin-top: 3px; cursor: pointer; } div.modindex-jumpbox { border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; margin: 1em 0 1em 0; padding: 0.4em; } div.genindex-jumpbox { border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; margin: 1em 0 1em 0; padding: 0.4em; } /* -- domain module index --------------------------------------------------- */ table.modindextable td { padding: 2px; border-collapse: collapse; } /* -- general body styles --------------------------------------------------- */ div.body { min-width: 450px; max-width: 800px; } div.body p, div.body dd, div.body li, div.body blockquote { -moz-hyphens: auto; -ms-hyphens: auto; -webkit-hyphens: auto; hyphens: auto; } a.headerlink { visibility: hidden; } a.brackets:before, span.brackets > a:before{ content: "["; } a.brackets:after, span.brackets > a:after { content: "]"; } h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, h4:hover > a.headerlink, h5:hover > a.headerlink, h6:hover > a.headerlink, dt:hover > a.headerlink, caption:hover > a.headerlink, p.caption:hover > a.headerlink, div.code-block-caption:hover > a.headerlink { visibility: visible; } div.body p.caption { text-align: inherit; } div.body td { text-align: left; } .first { margin-top: 0 !important; } p.rubric { margin-top: 30px; font-weight: bold; } img.align-left, figure.align-left, .figure.align-left, object.align-left { clear: left; float: left; margin-right: 1em; } img.align-right, figure.align-right, .figure.align-right, object.align-right { clear: right; float: right; margin-left: 1em; } img.align-center, figure.align-center, .figure.align-center, object.align-center { display: block; margin-left: auto; margin-right: auto; } img.align-default, figure.align-default, .figure.align-default { display: block; margin-left: auto; margin-right: auto; } .align-left { text-align: left; } .align-center { text-align: center; } .align-default { text-align: center; } .align-right { text-align: right; } /* -- sidebars -------------------------------------------------------------- */ div.sidebar, aside.sidebar { margin: 0 0 0.5em 1em; border: 1px solid #ddb; padding: 7px; background-color: #ffe; width: 40%; float: right; clear: right; overflow-x: auto; } p.sidebar-title { font-weight: bold; } div.admonition, div.topic, blockquote { clear: left; } /* -- topics ---------------------------------------------------------------- */ div.topic { border: 1px solid #ccc; padding: 7px; margin: 10px 0 10px 0; } p.topic-title { font-size: 1.1em; font-weight: bold; margin-top: 10px; } /* -- admonitions ----------------------------------------------------------- */ div.admonition { margin-top: 10px; margin-bottom: 10px; padding: 7px; } div.admonition dt { font-weight: bold; } p.admonition-title { margin: 0px 10px 5px 0px; font-weight: bold; } div.body p.centered { text-align: center; margin-top: 25px; } /* -- content of sidebars/topics/admonitions -------------------------------- */ div.sidebar > :last-child, aside.sidebar > :last-child, div.topic > :last-child, div.admonition > :last-child { margin-bottom: 0; } div.sidebar::after, aside.sidebar::after, div.topic::after, div.admonition::after, blockquote::after { display: block; content: ''; clear: both; } /* -- tables ---------------------------------------------------------------- */ table.docutils { margin-top: 10px; margin-bottom: 10px; border: 0; border-collapse: collapse; } table.align-center { margin-left: auto; margin-right: auto; } table.align-default { margin-left: auto; margin-right: auto; } table caption span.caption-number { font-style: italic; } table caption span.caption-text { } table.docutils td, table.docutils th { padding: 1px 8px 1px 5px; border-top: 0; border-left: 0; border-right: 0; border-bottom: 1px solid #aaa; } table.footnote td, table.footnote th { border: 0 !important; } th { text-align: left; padding-right: 5px; } table.citation { border-left: solid 1px gray; margin-left: 1px; } table.citation td { border-bottom: none; } th > :first-child, td > :first-child { margin-top: 0px; } th > :last-child, td > :last-child { margin-bottom: 0px; } /* -- figures --------------------------------------------------------------- */ div.figure, figure { margin: 0.5em; padding: 0.5em; } div.figure p.caption, figcaption { padding: 0.3em; } div.figure p.caption span.caption-number, figcaption span.caption-number { font-style: italic; } div.figure p.caption span.caption-text, figcaption span.caption-text { } /* -- field list styles ----------------------------------------------------- */ table.field-list td, table.field-list th { border: 0 !important; } .field-list ul { margin: 0; padding-left: 1em; } .field-list p { margin: 0; } .field-name { -moz-hyphens: manual; -ms-hyphens: manual; -webkit-hyphens: manual; hyphens: manual; } /* -- hlist styles ---------------------------------------------------------- */ table.hlist { margin: 1em 0; } table.hlist td { vertical-align: top; } /* -- object description styles --------------------------------------------- */ .sig { font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace; } .sig-name, code.descname { background-color: transparent; font-weight: bold; } .sig-name { font-size: 1.1em; } code.descname { font-size: 1.2em; } .sig-prename, code.descclassname { background-color: transparent; } .optional { font-size: 1.3em; } .sig-paren { font-size: larger; } .sig-param.n { font-style: italic; } /* C++ specific styling */ .sig-inline.c-texpr, .sig-inline.cpp-texpr { font-family: unset; } .sig.c .k, .sig.c .kt, .sig.cpp .k, .sig.cpp .kt { color: #0033B3; } .sig.c .m, .sig.cpp .m { color: #1750EB; } .sig.c .s, .sig.c .sc, .sig.cpp .s, .sig.cpp .sc { color: #067D17; } /* -- other body styles ----------------------------------------------------- */ ol.arabic { list-style: decimal; } ol.loweralpha { list-style: lower-alpha; } ol.upperalpha { list-style: upper-alpha; } ol.lowerroman { list-style: lower-roman; } ol.upperroman { list-style: upper-roman; } :not(li) > ol > li:first-child > :first-child, :not(li) > ul > li:first-child > :first-child { margin-top: 0px; } :not(li) > ol > li:last-child > :last-child, :not(li) > ul > li:last-child > :last-child { margin-bottom: 0px; } ol.simple ol p, ol.simple ul p, ul.simple ol p, ul.simple ul p { margin-top: 0; } ol.simple > li:not(:first-child) > p, ul.simple > li:not(:first-child) > p { margin-top: 0; } ol.simple p, ul.simple p { margin-bottom: 0; } dl.footnote > dt, dl.citation > dt { float: left; margin-right: 0.5em; } dl.footnote > dd, dl.citation > dd { margin-bottom: 0em; } dl.footnote > dd:after, dl.citation > dd:after { content: ""; clear: both; } dl.field-list { display: grid; grid-template-columns: fit-content(30%) auto; } dl.field-list > dt { font-weight: bold; word-break: break-word; padding-left: 0.5em; padding-right: 5px; } dl.field-list > dt:after { content: ":"; } dl.field-list > dd { padding-left: 0.5em; margin-top: 0em; margin-left: 0em; margin-bottom: 0em; } dl { margin-bottom: 15px; } dd > :first-child { margin-top: 0px; } dd ul, dd table { margin-bottom: 10px; } dd { margin-top: 3px; margin-bottom: 10px; margin-left: 30px; } dl > dd:last-child, dl > dd:last-child > :last-child { margin-bottom: 0; } dt:target, span.highlighted { background-color: #fbe54e; } rect.highlighted { fill: #fbe54e; } dl.glossary dt { font-weight: bold; font-size: 1.1em; } .versionmodified { font-style: italic; } .system-message { background-color: #fda; padding: 5px; border: 3px solid red; } .footnote:target { background-color: #ffa; } .line-block { display: block; margin-top: 1em; margin-bottom: 1em; } .line-block .line-block { margin-top: 0; margin-bottom: 0; margin-left: 1.5em; } .guilabel, .menuselection { font-family: sans-serif; } .accelerator { text-decoration: underline; } .classifier { font-style: oblique; } .classifier:before { font-style: normal; margin: 0 0.5em; content: ":"; display: inline-block; } abbr, acronym { border-bottom: dotted 1px; cursor: help; } /* -- code displays --------------------------------------------------------- */ pre { overflow: auto; overflow-y: hidden; /* fixes display issues on Chrome browsers */ } pre, div[class*="highlight-"] { clear: both; } span.pre { -moz-hyphens: none; -ms-hyphens: none; -webkit-hyphens: none; hyphens: none; } div[class*="highlight-"] { margin: 1em 0; } td.linenos pre { border: 0; background-color: transparent; color: #aaa; } table.highlighttable { display: block; } table.highlighttable tbody { display: block; } table.highlighttable tr { display: flex; } table.highlighttable td { margin: 0; padding: 0; } table.highlighttable td.linenos { padding-right: 0.5em; } table.highlighttable td.code { flex: 1; overflow: hidden; } .highlight .hll { display: block; } div.highlight pre, table.highlighttable pre { margin: 0; } div.code-block-caption + div { margin-top: 0; } div.code-block-caption { margin-top: 1em; padding: 2px 5px; font-size: small; } div.code-block-caption code { background-color: transparent; } table.highlighttable td.linenos, span.linenos, div.highlight span.gp { /* gp: Generic.Prompt */ user-select: none; -webkit-user-select: text; /* Safari fallback only */ -webkit-user-select: none; /* Chrome/Safari */ -moz-user-select: none; /* Firefox */ -ms-user-select: none; /* IE10+ */ } div.code-block-caption span.caption-number { padding: 0.1em 0.3em; font-style: italic; } div.code-block-caption span.caption-text { } div.literal-block-wrapper { margin: 1em 0; } code.xref, a code { background-color: transparent; font-weight: bold; } h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { background-color: transparent; } .viewcode-link { float: right; } .viewcode-back { float: right; font-family: sans-serif; } div.viewcode-block:target { margin: -1px -10px; padding: 0 10px; } /* -- math display ---------------------------------------------------------- */ img.math { vertical-align: middle; } div.body div.math p { text-align: center; } span.eqno { float: right; } span.eqno a.headerlink { position: absolute; z-index: 1; } div.math:hover a.headerlink { visibility: visible; } /* -- printout stylesheet --------------------------------------------------- */ @media print { div.document, div.documentwrapper, div.bodywrapper { margin: 0 !important; width: 100%; } div.sphinxsidebar, div.related, div.footer, #top-link { display: none; } }././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1494874727.0 veusz-3.6.2/Documents/manual/html/_static/custom.css0000664000175000017500000000005213106375147020760 0ustar00jssjss/* This file intentionally left blank. */ ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1637164247.0 veusz-3.6.2/Documents/manual/html/_static/doctools.js0000664000175000017500000002263614145222327021127 0ustar00jssjss/* * doctools.js * ~~~~~~~~~~~ * * Sphinx JavaScript utilities for all documentation. * * :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ /** * select a different prefix for underscore */ $u = _.noConflict(); /** * make the code below compatible with browsers without * an installed firebug like debugger if (!window.console || !console.firebug) { var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"]; window.console = {}; for (var i = 0; i < names.length; ++i) window.console[names[i]] = function() {}; } */ /** * small helper function to urldecode strings * * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent#Decoding_query_parameters_from_a_URL */ jQuery.urldecode = function(x) { if (!x) { return x } return decodeURIComponent(x.replace(/\+/g, ' ')); }; /** * small helper function to urlencode strings */ jQuery.urlencode = encodeURIComponent; /** * This function returns the parsed url parameters of the * current request. Multiple values per key are supported, * it will always return arrays of strings for the value parts. */ jQuery.getQueryParameters = function(s) { if (typeof s === 'undefined') s = document.location.search; var parts = s.substr(s.indexOf('?') + 1).split('&'); var result = {}; for (var i = 0; i < parts.length; i++) { var tmp = parts[i].split('=', 2); var key = jQuery.urldecode(tmp[0]); var value = jQuery.urldecode(tmp[1]); if (key in result) result[key].push(value); else result[key] = [value]; } return result; }; /** * highlight a given string on a jquery object by wrapping it in * span elements with the given class name. */ jQuery.fn.highlightText = function(text, className) { function highlight(node, addItems) { if (node.nodeType === 3) { var val = node.nodeValue; var pos = val.toLowerCase().indexOf(text); if (pos >= 0 && !jQuery(node.parentNode).hasClass(className) && !jQuery(node.parentNode).hasClass("nohighlight")) { var span; var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg"); if (isInSVG) { span = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); } else { span = document.createElement("span"); span.className = className; } span.appendChild(document.createTextNode(val.substr(pos, text.length))); node.parentNode.insertBefore(span, node.parentNode.insertBefore( document.createTextNode(val.substr(pos + text.length)), node.nextSibling)); node.nodeValue = val.substr(0, pos); if (isInSVG) { var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect"); var bbox = node.parentElement.getBBox(); rect.x.baseVal.value = bbox.x; rect.y.baseVal.value = bbox.y; rect.width.baseVal.value = bbox.width; rect.height.baseVal.value = bbox.height; rect.setAttribute('class', className); addItems.push({ "parent": node.parentNode, "target": rect}); } } } else if (!jQuery(node).is("button, select, textarea")) { jQuery.each(node.childNodes, function() { highlight(this, addItems); }); } } var addItems = []; var result = this.each(function() { highlight(this, addItems); }); for (var i = 0; i < addItems.length; ++i) { jQuery(addItems[i].parent).before(addItems[i].target); } return result; }; /* * backward compatibility for jQuery.browser * This will be supported until firefox bug is fixed. */ if (!jQuery.browser) { jQuery.uaMatch = function(ua) { ua = ua.toLowerCase(); var match = /(chrome)[ \/]([\w.]+)/.exec(ua) || /(webkit)[ \/]([\w.]+)/.exec(ua) || /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) || /(msie) ([\w.]+)/.exec(ua) || ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) || []; return { browser: match[ 1 ] || "", version: match[ 2 ] || "0" }; }; jQuery.browser = {}; jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true; } /** * Small JavaScript module for the documentation. */ var Documentation = { init : function() { this.fixFirefoxAnchorBug(); this.highlightSearchWords(); this.initIndexTable(); if (DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) { this.initOnKeyListeners(); } }, /** * i18n support */ TRANSLATIONS : {}, PLURAL_EXPR : function(n) { return n === 1 ? 0 : 1; }, LOCALE : 'unknown', // gettext and ngettext don't access this so that the functions // can safely bound to a different name (_ = Documentation.gettext) gettext : function(string) { var translated = Documentation.TRANSLATIONS[string]; if (typeof translated === 'undefined') return string; return (typeof translated === 'string') ? translated : translated[0]; }, ngettext : function(singular, plural, n) { var translated = Documentation.TRANSLATIONS[singular]; if (typeof translated === 'undefined') return (n == 1) ? singular : plural; return translated[Documentation.PLURALEXPR(n)]; }, addTranslations : function(catalog) { for (var key in catalog.messages) this.TRANSLATIONS[key] = catalog.messages[key]; this.PLURAL_EXPR = new Function('n', 'return +(' + catalog.plural_expr + ')'); this.LOCALE = catalog.locale; }, /** * add context elements like header anchor links */ addContextElements : function() { $('div[id] > :header:first').each(function() { $('\u00B6'). attr('href', '#' + this.id). attr('title', _('Permalink to this headline')). appendTo(this); }); $('dt[id]').each(function() { $('\u00B6'). attr('href', '#' + this.id). attr('title', _('Permalink to this definition')). appendTo(this); }); }, /** * workaround a firefox stupidity * see: https://bugzilla.mozilla.org/show_bug.cgi?id=645075 */ fixFirefoxAnchorBug : function() { if (document.location.hash && $.browser.mozilla) window.setTimeout(function() { document.location.href += ''; }, 10); }, /** * highlight the search words provided in the url in the text */ highlightSearchWords : function() { var params = $.getQueryParameters(); var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : []; if (terms.length) { var body = $('div.body'); if (!body.length) { body = $('body'); } window.setTimeout(function() { $.each(terms, function() { body.highlightText(this.toLowerCase(), 'highlighted'); }); }, 10); $('') .appendTo($('#searchbox')); } }, /** * init the domain index toggle buttons */ initIndexTable : function() { var togglers = $('img.toggler').click(function() { var src = $(this).attr('src'); var idnum = $(this).attr('id').substr(7); $('tr.cg-' + idnum).toggle(); if (src.substr(-9) === 'minus.png') $(this).attr('src', src.substr(0, src.length-9) + 'plus.png'); else $(this).attr('src', src.substr(0, src.length-8) + 'minus.png'); }).css('display', ''); if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) { togglers.click(); } }, /** * helper function to hide the search marks again */ hideSearchWords : function() { $('#searchbox .highlight-link').fadeOut(300); $('span.highlighted').removeClass('highlighted'); }, /** * make the url absolute */ makeURL : function(relativeURL) { return DOCUMENTATION_OPTIONS.URL_ROOT + '/' + relativeURL; }, /** * get the current relative url */ getCurrentURL : function() { var path = document.location.pathname; var parts = path.split(/\//); $.each(DOCUMENTATION_OPTIONS.URL_ROOT.split(/\//), function() { if (this === '..') parts.pop(); }); var url = parts.join('/'); return path.substring(url.lastIndexOf('/') + 1, path.length - 1); }, initOnKeyListeners: function() { $(document).keydown(function(event) { var activeElementType = document.activeElement.tagName; // don't navigate when in search box, textarea, dropdown or button if (activeElementType !== 'TEXTAREA' && activeElementType !== 'INPUT' && activeElementType !== 'SELECT' && activeElementType !== 'BUTTON' && !event.altKey && !event.ctrlKey && !event.metaKey && !event.shiftKey) { switch (event.keyCode) { case 37: // left var prevHref = $('link[rel="prev"]').prop('href'); if (prevHref) { window.location.href = prevHref; return false; } break; case 39: // right var nextHref = $('link[rel="next"]').prop('href'); if (nextHref) { window.location.href = nextHref; return false; } break; } } }); } }; // quick alias for translations _ = Documentation.gettext; $(document).ready(function() { Documentation.init(); }); ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426733.0 veusz-3.6.2/Documents/manual/html/_static/documentation_options.js0000664000175000017500000000054314376700055023723 0ustar00jssjssvar DOCUMENTATION_OPTIONS = { URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'), VERSION: '3.6.2', LANGUAGE: 'None', COLLAPSE_INDEX: false, BUILDER: 'html', FILE_SUFFIX: '.html', LINK_SUFFIX: '.html', HAS_SOURCE: true, SOURCELINK_SUFFIX: '.txt', NAVIGATION_WITH_KEYS: false };././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1609484009.0 veusz-3.6.2/Documents/manual/html/_static/file.png0000664000175000017500000000043613773543351020373 0ustar00jssjss‰PNG  IHDRóÿaåIDATx­“ƒR…÷){…l× Û¶ÙfÛ=@®å œ:¿¹¾3ßú~箄þþþ¹òòrX$AðX-öD ~ñýý òóó€Ç‰(ŠP%¾€8<<9:: ãøøØP•êO&’$é Øl~‚X÷ìãûæ&ȽÖEWÀ^4µwQ}ÂÎö^ü˜Ô÷Í£¾ ‹¨iê©ïš0/H/é@F)éDzq+’ój”[žSU5¾€Ìèhš¦/ð¿oY– G&Lfs|£¡»»{Íêßøß3%¸U+S°é`AFÒIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1623615940.0 veusz-3.6.2/Documents/manual/html/_static/forkme_right_darkblue_121621.png0000664000175000017500000001126314061464704024614 0ustar00jssjss‰PNG  IHDR••Q¢¸OzIDATxÚ왃®,QE¯mcÔûÚ¶m?òlχ=~K½}:×vŸ$g’+U»«¢ˆèBN¼¢ˆq $ƒ´ì|ës—¯’†Fg©¶±‹r $nU4ÑòÚõOSA‰ö+!1µ Ǭ+( d€”ƒóŠ?8ϘÃó&¢¨Û!¸«T) dgçY^Ye/O/Qwß8Y7b•ZÝÔÛ?A5õ”oû˜R‡c¶ ˜@!‡b ©@An¡ô6\ÙDóK[ÔÙ;ÊUÅrùªhqe‡FÆçɦúÿÆ'¤4à˜@fcÅRÅH•pØþ¥¦¬\ó‡b³“ú'©¾©› Kí\‰5<6GõÍ=„–ý'>!¹ ÇìÊXEO+–*ê©’¤Êù Ø Ö§`Y=­nìë9«ÔêâF,³ä¥±ÉEêê#«âýw –[ˆe¼T± þD ̹ X€–™kúª8BÔ?4Ų 7RåÊzx_XÞBö;¬XÍb©B,c¤bÄ^Õ \ë»êÓìü: ŽÌUñs#kË,¼³§Õ‚õ¯Ëx©NV«$zQµÞœ|k$®§©ÙUjmà*¼ûBµ´º¾Gãsd²¹…XHueµº([ðgæ˜",¼ ÏP Äâ)ciÎ0›a±-Z!RÅ\0M?ÑKœ ÀÄ •7Òʺ>ˆäê©e¿é¹5ý¸$ÍÿOˆõôRÝK,“íxÉ‹TyE ËhzvZ;EÅ2Hª{‰ÅV:l‰™W“wÖ¢Yµjlí£‹Sd,¤º³X˜cEÜþj_`ƒHîv…,¼³üWd² –ê^Ë,yhtbA_éX$/7b±fïÀU‹ðn€T÷ Kè« ‹ËÛl Í“O$Ží$~Æé©`R}#`S}"¼ Õ½*V‘É¡‡÷: "ó‹ÕÇ)ßöŸ½³’e9¢¨%f–-3>ffff&1338b°Ä’'–)t…žX¾À÷F}zçÆËž˜ž®íÚØÚU¤‘KÒÿÿÁ‰Ì¬›Y·ØT(?k Àǧ6å#­;zÆJÿß°&¦7!7äÍ;eqÎ*€ÔÕ®bæâ´ÊfÞý'+zÇŬСŠ‹1«ÉÌ kg© ¾ÿß4ž÷Â¥DÖhãëßøå ƒ Ò¬ðÒÕ»}O¦ÈXU,XC£k¸LÁÞ“š÷À,5•í¡Tò>ó¹/5ÁZÖÈ– /¸ÚE?²Õ¶‡²L:ï#‡ŠˆQÞ"Ïœ»F5+¨8å••¼CGN–…*¸*X@dVˆò¾dÅÐ|ƒåPÅf,–ûG9"VAµuÇÔkÉJ9DË3°.\¾™~ó[ßEdÂæh1[…ƒÅ•/2–/ú%‚ŠˆÚn`VxýÖCú¬l¤ÓWÙS=Ì2M8À‘ÔK̲ÔßþþOA—½yû¾ö`):Ì n¯\»GÆòæ=T±Ë ‘(Þ ²’‚ÀÚ¼m¯€Ê³ÔÅ,kñý×¾ñ&TÅRX5'”òÎÎ;7´wì>â+TÑ`Mmhܸõ!’µ™Ž`©aÏÉ âô§ë¹/\’ÇoÿGÀREXµ¨TÝ J4Ùj×¾ã .S8TÑ`!Dò¸Y¦ `Y 8 6O„_æg”AÛc ® °ÈX2¡ÏzÉ+æ}¤ãPÅëX“”Ê!«É`Íò»fV¢ì (¾_Þ=ÜØ4S9!6³±+ñ§­Ûe¬%+T¢÷%B;TѳBnéÐ$#D†ˆ¡[¶ï/4é´iëB?W6C‚ kI†`ÁÊ4‡ J4Wìç,‡Šˆ^ôãDÈB_W ¢]½cÈ Y¶ºEÉË2ÔžBóþÁ¤kÍzø¬à’2f%1Í»C•, ‘(ï4ÌeМ÷ ¨™æýKÊá >÷eJa-”Ò‰pËÊt‚ŒåPÍÅ>–„ȀƌEeNƒKÛE6ŸÞ€Ü<#´³B™‚à6“±ªD`q•a/Û ¨ÝU`Ñc=((î9PVÕgþ¿K}å¡M)L` âPÅÎ 'Wnf=ï† qT[ JŸEßüÖwÓƒ•÷Z`ñëÊKôiLAFæ,‡j®•wêp›Aˆ ‹5•¼}ä“ù×ãS$ŠݪââD…w7¡‘”B‡*,ëNü²%•+ÇôXÌ ˆLEUö°ˆÙÅÊ4Ч˜:T±`YwâÐËÓÉRd+Õ ½‘,,5ïòíJd âPÅ‚e݉[•w h‹áðÏùkN, ¨hW*‹µxùvíØs$“A¢MAª`Ñ ·7isÙt2 XŠÙ @i“ôÍo{w°z*ƒ‰€LAœ ªX°¬;1¢déµxÛ+¨¶ (ô\ZŒ‹¥C•è¨RèP%’¬;qèy;3´k3Œt”±"Á³²i S‡*6cwbs*´Q‹RhB$Õš`KÙ«vÅÚ {bØ+%2q¨bÁjq'.í³¤¾#5p3åÝn^¸tƒ±_kÑ/ªyçׂ![ nB;T±`YwâÐ;„‡Žžy’µ2€~E¶ó~ª©¾;ò†Žý’š‚8T±`Ywb–þªÖfÈX¶¯²{X|=>µnf÷ýÊ-UwV¨µAêP%Zô3îÄ!Û£4í¦ *k½šh]¤„Í:[)ŒoW”?–C•pVh܉+ÀZžý…o(”Az+ÁôÁ|‚ue¾¦«­ˆÁ‘5òíJѼ;T±`݉‡ªœd²R˜o/ÐGqTv6Ê£Ì?jrlô L5Î]Jf âPÅ‚e܉-Š–Q µ&cW‹9¢N‚µ7˜Z߮ˡŠ˺kVhÁjsQ€AJ{YFÕI0nmF¾]˜‚$ðnp¨b¯Øwâ —>¹ËóA»2cÁRX¸ÁÒ¬ß.ÖfR¸Í8T±˺37¬X™¡cg…üTúäCÊU0¾ç³ c@ X”Jd†6ë3DùH‡ƒ%:~ÑÏ¡J2+´îijBYCÒëk³*³T7uøßø!Õîe?{"ß®ØYa"¨+4îÄý•`qµ pÔCÑ_Qú¤gQ5ê)ƒÌìd=|üúJ¹Àñíbë‚ûŽd¬2°(T–u'f>ð^!ÀØË©€%= c³Q:šg-ÝžæÕ°îÞ‰¹¹%¿&|»d ²=û5dÑ›Å2~? *˸­Íè{]N%C ({RÔŒP¥ CÍAŒ)}Vö} °†›¿þ% *˸3+ K·nÈX„íµ¤À (ö±*5¬Šš`=skök̢ˡZ¦ r'®Ü•ò.°Ê€2Fl5 ’)ÈFùveÙnâ¯O}Ú37s"t¨ÓÇ+MA–2–GM†ú•u›¡Ñ¯•N…˜‚±øgÿüÔ§=ký"‚ÊÁ2îÄA`ÙæÝ¥^˺ÍÔ…ŠoÛ­™¿Ä_T–u'yKÇŽtˆƒ¹«ß–úZ3U­7t4+x|»ö8ÙX„P9XÖÈBÁÒ˶ôÙ§NjBe›w‹*WÞ­;qhÆ*~ȾèÅ!Mzx°ÝàPýŸ˜‚°BS1„Ö)ÙI%O@Eg)ÿkï.p€0 /Sиd^Æ{.cù²V“t)äLùônð©ø ª+0 bÖ‰_.1 æ-õ9ü”Õ}€Àü7¡—¶ô  Vk¸™ÿÛRL –®Ï}€Àüêù XvX?šì¨ÑubP‘û(ˆ®¿ù>@@GA@å°ì:1¨Ü–®ÛQP‘Ï(ˆ®ƒÊ/~bÙub·¿±@,³N¬S‘ rXfT~«µNÜ|•O|lÆ®ƒŠüö±ì:qóT~ñ^¡®ƒÊ/~bµ×‰_‚Ê'`ͬƒÊ'`™ubPù,»N¬ï‚ŠFAÌ:1¨<ã½B»N *Ÿ€Õ^'~*Ÿ€eÖ‰Aå°tØ<@Tä0 bÖ‰Aå?±Ì:±Ž‚€Š~bÙub<m ë³üÄ:°ëÄ TÔÖéã(Êöí:qQu†UI¯¤wk×®ƒŠºÂz&R#½Gù–]'–—@EkÃJ¤'R¦¸ª(­þ±NL›ÀK‘”*®gR6ދ߬SWX}i(Š+Q`i?\Ö‰‡Á³ËUøìÆè¸çÓÆQvRœÝâ|Z˜UÜÓI¥©Òê«Ö2X=ƒk,“‚¤ü:ÇÍuOz ¸I}m õAÅuuWqÝ·À´‡ â:ÀšÅ¥À´5PqÀš‹«¨¸N°—éö$T¸Z9 â¸SFÅq—*Tž9 "Š@Et•|ÌF*ÖÙIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1645439379.0 veusz-3.6.2/Documents/manual/html/_static/jquery.js0000664000175000017500000106344614204664623020632 0ustar00jssjss/*! * jQuery JavaScript Library v3.6.0 * https://jquery.com/ * * Includes Sizzle.js * https://sizzlejs.com/ * * Copyright OpenJS Foundation and other contributors * Released under the MIT license * https://jquery.org/license */ ( function( global, factory ) { "use strict"; if ( typeof module === "object" && typeof module.exports === "object" ) { // For CommonJS and CommonJS-like environments where a proper `window` // is present, execute the factory and get jQuery. // For environments that do not have a `window` with a `document` // (such as Node.js), expose a factory as module.exports. // This accentuates the need for the creation of a real `window`. // e.g. var jQuery = require("jquery")(window); // See ticket #14549 for more info. module.exports = global.document ? factory( global, true ) : function( w ) { if ( !w.document ) { throw new Error( "jQuery requires a window with a document" ); } return factory( w ); }; } else { factory( global ); } // Pass this if window is not defined yet } )( typeof window !== "undefined" ? window : this, function( window, noGlobal ) { // Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1 // throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode // arguments.callee.caller (trac-13335). But as of jQuery 3.0 (2016), strict mode should be common // enough that all such attempts are guarded in a try block. "use strict"; var arr = []; var getProto = Object.getPrototypeOf; var slice = arr.slice; var flat = arr.flat ? function( array ) { return arr.flat.call( array ); } : function( array ) { return arr.concat.apply( [], array ); }; var push = arr.push; var indexOf = arr.indexOf; var class2type = {}; var toString = class2type.toString; var hasOwn = class2type.hasOwnProperty; var fnToString = hasOwn.toString; var ObjectFunctionString = fnToString.call( Object ); var support = {}; var isFunction = function isFunction( obj ) { // Support: Chrome <=57, Firefox <=52 // In some browsers, typeof returns "function" for HTML elements // (i.e., `typeof document.createElement( "object" ) === "function"`). // We don't want to classify *any* DOM node as a function. // Support: QtWeb <=3.8.5, WebKit <=534.34, wkhtmltopdf tool <=0.12.5 // Plus for old WebKit, typeof returns "function" for HTML collections // (e.g., `typeof document.getElementsByTagName("div") === "function"`). (gh-4756) return typeof obj === "function" && typeof obj.nodeType !== "number" && typeof obj.item !== "function"; }; var isWindow = function isWindow( obj ) { return obj != null && obj === obj.window; }; var document = window.document; var preservedScriptAttributes = { type: true, src: true, nonce: true, noModule: true }; function DOMEval( code, node, doc ) { doc = doc || document; var i, val, script = doc.createElement( "script" ); script.text = code; if ( node ) { for ( i in preservedScriptAttributes ) { // Support: Firefox 64+, Edge 18+ // Some browsers don't support the "nonce" property on scripts. // On the other hand, just using `getAttribute` is not enough as // the `nonce` attribute is reset to an empty string whenever it // becomes browsing-context connected. // See https://github.com/whatwg/html/issues/2369 // See https://html.spec.whatwg.org/#nonce-attributes // The `node.getAttribute` check was added for the sake of // `jQuery.globalEval` so that it can fake a nonce-containing node // via an object. val = node[ i ] || node.getAttribute && node.getAttribute( i ); if ( val ) { script.setAttribute( i, val ); } } } doc.head.appendChild( script ).parentNode.removeChild( script ); } function toType( obj ) { if ( obj == null ) { return obj + ""; } // Support: Android <=2.3 only (functionish RegExp) return typeof obj === "object" || typeof obj === "function" ? class2type[ toString.call( obj ) ] || "object" : typeof obj; } /* global Symbol */ // Defining this global in .eslintrc.json would create a danger of using the global // unguarded in another place, it seems safer to define global only for this module var version = "3.6.0", // Define a local copy of jQuery jQuery = function( selector, context ) { // The jQuery object is actually just the init constructor 'enhanced' // Need init if jQuery is called (just allow error to be thrown if not included) return new jQuery.fn.init( selector, context ); }; jQuery.fn = jQuery.prototype = { // The current version of jQuery being used jquery: version, constructor: jQuery, // The default length of a jQuery object is 0 length: 0, toArray: function() { return slice.call( this ); }, // Get the Nth element in the matched element set OR // Get the whole matched element set as a clean array get: function( num ) { // Return all the elements in a clean array if ( num == null ) { return slice.call( this ); } // Return just the one element from the set return num < 0 ? this[ num + this.length ] : this[ num ]; }, // Take an array of elements and push it onto the stack // (returning the new matched element set) pushStack: function( elems ) { // Build a new jQuery matched element set var ret = jQuery.merge( this.constructor(), elems ); // Add the old object onto the stack (as a reference) ret.prevObject = this; // Return the newly-formed element set return ret; }, // Execute a callback for every element in the matched set. each: function( callback ) { return jQuery.each( this, callback ); }, map: function( callback ) { return this.pushStack( jQuery.map( this, function( elem, i ) { return callback.call( elem, i, elem ); } ) ); }, slice: function() { return this.pushStack( slice.apply( this, arguments ) ); }, first: function() { return this.eq( 0 ); }, last: function() { return this.eq( -1 ); }, even: function() { return this.pushStack( jQuery.grep( this, function( _elem, i ) { return ( i + 1 ) % 2; } ) ); }, odd: function() { return this.pushStack( jQuery.grep( this, function( _elem, i ) { return i % 2; } ) ); }, eq: function( i ) { var len = this.length, j = +i + ( i < 0 ? len : 0 ); return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] ); }, end: function() { return this.prevObject || this.constructor(); }, // For internal use only. // Behaves like an Array's method, not like a jQuery method. push: push, sort: arr.sort, splice: arr.splice }; jQuery.extend = jQuery.fn.extend = function() { var options, name, src, copy, copyIsArray, clone, target = arguments[ 0 ] || {}, i = 1, length = arguments.length, deep = false; // Handle a deep copy situation if ( typeof target === "boolean" ) { deep = target; // Skip the boolean and the target target = arguments[ i ] || {}; i++; } // Handle case when target is a string or something (possible in deep copy) if ( typeof target !== "object" && !isFunction( target ) ) { target = {}; } // Extend jQuery itself if only one argument is passed if ( i === length ) { target = this; i--; } for ( ; i < length; i++ ) { // Only deal with non-null/undefined values if ( ( options = arguments[ i ] ) != null ) { // Extend the base object for ( name in options ) { copy = options[ name ]; // Prevent Object.prototype pollution // Prevent never-ending loop if ( name === "__proto__" || target === copy ) { continue; } // Recurse if we're merging plain objects or arrays if ( deep && copy && ( jQuery.isPlainObject( copy ) || ( copyIsArray = Array.isArray( copy ) ) ) ) { src = target[ name ]; // Ensure proper type for the source value if ( copyIsArray && !Array.isArray( src ) ) { clone = []; } else if ( !copyIsArray && !jQuery.isPlainObject( src ) ) { clone = {}; } else { clone = src; } copyIsArray = false; // Never move original objects, clone them target[ name ] = jQuery.extend( deep, clone, copy ); // Don't bring in undefined values } else if ( copy !== undefined ) { target[ name ] = copy; } } } } // Return the modified object return target; }; jQuery.extend( { // Unique for each copy of jQuery on the page expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ), // Assume jQuery is ready without the ready module isReady: true, error: function( msg ) { throw new Error( msg ); }, noop: function() {}, isPlainObject: function( obj ) { var proto, Ctor; // Detect obvious negatives // Use toString instead of jQuery.type to catch host objects if ( !obj || toString.call( obj ) !== "[object Object]" ) { return false; } proto = getProto( obj ); // Objects with no prototype (e.g., `Object.create( null )`) are plain if ( !proto ) { return true; } // Objects with prototype are plain iff they were constructed by a global Object function Ctor = hasOwn.call( proto, "constructor" ) && proto.constructor; return typeof Ctor === "function" && fnToString.call( Ctor ) === ObjectFunctionString; }, isEmptyObject: function( obj ) { var name; for ( name in obj ) { return false; } return true; }, // Evaluates a script in a provided context; falls back to the global one // if not specified. globalEval: function( code, options, doc ) { DOMEval( code, { nonce: options && options.nonce }, doc ); }, each: function( obj, callback ) { var length, i = 0; if ( isArrayLike( obj ) ) { length = obj.length; for ( ; i < length; i++ ) { if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { break; } } } else { for ( i in obj ) { if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { break; } } } return obj; }, // results is for internal usage only makeArray: function( arr, results ) { var ret = results || []; if ( arr != null ) { if ( isArrayLike( Object( arr ) ) ) { jQuery.merge( ret, typeof arr === "string" ? [ arr ] : arr ); } else { push.call( ret, arr ); } } return ret; }, inArray: function( elem, arr, i ) { return arr == null ? -1 : indexOf.call( arr, elem, i ); }, // Support: Android <=4.0 only, PhantomJS 1 only // push.apply(_, arraylike) throws on ancient WebKit merge: function( first, second ) { var len = +second.length, j = 0, i = first.length; for ( ; j < len; j++ ) { first[ i++ ] = second[ j ]; } first.length = i; return first; }, grep: function( elems, callback, invert ) { var callbackInverse, matches = [], i = 0, length = elems.length, callbackExpect = !invert; // Go through the array, only saving the items // that pass the validator function for ( ; i < length; i++ ) { callbackInverse = !callback( elems[ i ], i ); if ( callbackInverse !== callbackExpect ) { matches.push( elems[ i ] ); } } return matches; }, // arg is for internal usage only map: function( elems, callback, arg ) { var length, value, i = 0, ret = []; // Go through the array, translating each of the items to their new values if ( isArrayLike( elems ) ) { length = elems.length; for ( ; i < length; i++ ) { value = callback( elems[ i ], i, arg ); if ( value != null ) { ret.push( value ); } } // Go through every key on the object, } else { for ( i in elems ) { value = callback( elems[ i ], i, arg ); if ( value != null ) { ret.push( value ); } } } // Flatten any nested arrays return flat( ret ); }, // A global GUID counter for objects guid: 1, // jQuery.support is not used in Core but other projects attach their // properties to it so it needs to exist. support: support } ); if ( typeof Symbol === "function" ) { jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ]; } // Populate the class2type map jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), function( _i, name ) { class2type[ "[object " + name + "]" ] = name.toLowerCase(); } ); function isArrayLike( obj ) { // Support: real iOS 8.2 only (not reproducible in simulator) // `in` check used to prevent JIT error (gh-2145) // hasOwn isn't used here due to false negatives // regarding Nodelist length in IE var length = !!obj && "length" in obj && obj.length, type = toType( obj ); if ( isFunction( obj ) || isWindow( obj ) ) { return false; } return type === "array" || length === 0 || typeof length === "number" && length > 0 && ( length - 1 ) in obj; } var Sizzle = /*! * Sizzle CSS Selector Engine v2.3.6 * https://sizzlejs.com/ * * Copyright JS Foundation and other contributors * Released under the MIT license * https://js.foundation/ * * Date: 2021-02-16 */ ( function( window ) { var i, support, Expr, getText, isXML, tokenize, compile, select, outermostContext, sortInput, hasDuplicate, // Local document vars setDocument, document, docElem, documentIsHTML, rbuggyQSA, rbuggyMatches, matches, contains, // Instance-specific data expando = "sizzle" + 1 * new Date(), preferredDoc = window.document, dirruns = 0, done = 0, classCache = createCache(), tokenCache = createCache(), compilerCache = createCache(), nonnativeSelectorCache = createCache(), sortOrder = function( a, b ) { if ( a === b ) { hasDuplicate = true; } return 0; }, // Instance methods hasOwn = ( {} ).hasOwnProperty, arr = [], pop = arr.pop, pushNative = arr.push, push = arr.push, slice = arr.slice, // Use a stripped-down indexOf as it's faster than native // https://jsperf.com/thor-indexof-vs-for/5 indexOf = function( list, elem ) { var i = 0, len = list.length; for ( ; i < len; i++ ) { if ( list[ i ] === elem ) { return i; } } return -1; }, booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|" + "ismap|loop|multiple|open|readonly|required|scoped", // Regular expressions // http://www.w3.org/TR/css3-selectors/#whitespace whitespace = "[\\x20\\t\\r\\n\\f]", // https://www.w3.org/TR/css-syntax-3/#ident-token-diagram identifier = "(?:\\\\[\\da-fA-F]{1,6}" + whitespace + "?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+", // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace + // Operator (capture 2) "*([*^$|!~]?=)" + whitespace + // "Attribute values must be CSS identifiers [capture 5] // or strings [capture 3 or capture 4]" "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace + "*\\]", pseudos = ":(" + identifier + ")(?:\\((" + // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments: // 1. quoted (capture 3; capture 4 or capture 5) "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" + // 2. simple (capture 6) "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" + // 3. anything else (capture 2) ".*" + ")\\)|)", // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter rwhitespace = new RegExp( whitespace + "+", "g" ), rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ), rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ), rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ), rdescend = new RegExp( whitespace + "|>" ), rpseudo = new RegExp( pseudos ), ridentifier = new RegExp( "^" + identifier + "$" ), matchExpr = { "ID": new RegExp( "^#(" + identifier + ")" ), "CLASS": new RegExp( "^\\.(" + identifier + ")" ), "TAG": new RegExp( "^(" + identifier + "|[*])" ), "ATTR": new RegExp( "^" + attributes ), "PSEUDO": new RegExp( "^" + pseudos ), "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace + "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace + "*(\\d+)|))" + whitespace + "*\\)|)", "i" ), "bool": new RegExp( "^(?:" + booleans + ")$", "i" ), // For use in libraries implementing .is() // We use this for POS matching in `select` "needsContext": new RegExp( "^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" ) }, rhtml = /HTML$/i, rinputs = /^(?:input|select|textarea|button)$/i, rheader = /^h\d$/i, rnative = /^[^{]+\{\s*\[native \w/, // Easily-parseable/retrievable ID or TAG or CLASS selectors rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, rsibling = /[+~]/, // CSS escapes // http://www.w3.org/TR/CSS21/syndata.html#escaped-characters runescape = new RegExp( "\\\\[\\da-fA-F]{1,6}" + whitespace + "?|\\\\([^\\r\\n\\f])", "g" ), funescape = function( escape, nonHex ) { var high = "0x" + escape.slice( 1 ) - 0x10000; return nonHex ? // Strip the backslash prefix from a non-hex escape sequence nonHex : // Replace a hexadecimal escape sequence with the encoded Unicode code point // Support: IE <=11+ // For values outside the Basic Multilingual Plane (BMP), manually construct a // surrogate pair high < 0 ? String.fromCharCode( high + 0x10000 ) : String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 ); }, // CSS string/identifier serialization // https://drafts.csswg.org/cssom/#common-serializing-idioms rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g, fcssescape = function( ch, asCodePoint ) { if ( asCodePoint ) { // U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER if ( ch === "\0" ) { return "\uFFFD"; } // Control characters and (dependent upon position) numbers get escaped as code points return ch.slice( 0, -1 ) + "\\" + ch.charCodeAt( ch.length - 1 ).toString( 16 ) + " "; } // Other potentially-special ASCII characters get backslash-escaped return "\\" + ch; }, // Used for iframes // See setDocument() // Removing the function wrapper causes a "Permission Denied" // error in IE unloadHandler = function() { setDocument(); }, inDisabledFieldset = addCombinator( function( elem ) { return elem.disabled === true && elem.nodeName.toLowerCase() === "fieldset"; }, { dir: "parentNode", next: "legend" } ); // Optimize for push.apply( _, NodeList ) try { push.apply( ( arr = slice.call( preferredDoc.childNodes ) ), preferredDoc.childNodes ); // Support: Android<4.0 // Detect silently failing push.apply // eslint-disable-next-line no-unused-expressions arr[ preferredDoc.childNodes.length ].nodeType; } catch ( e ) { push = { apply: arr.length ? // Leverage slice if possible function( target, els ) { pushNative.apply( target, slice.call( els ) ); } : // Support: IE<9 // Otherwise append directly function( target, els ) { var j = target.length, i = 0; // Can't trust NodeList.length while ( ( target[ j++ ] = els[ i++ ] ) ) {} target.length = j - 1; } }; } function Sizzle( selector, context, results, seed ) { var m, i, elem, nid, match, groups, newSelector, newContext = context && context.ownerDocument, // nodeType defaults to 9, since context defaults to document nodeType = context ? context.nodeType : 9; results = results || []; // Return early from calls with invalid selector or context if ( typeof selector !== "string" || !selector || nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) { return results; } // Try to shortcut find operations (as opposed to filters) in HTML documents if ( !seed ) { setDocument( context ); context = context || document; if ( documentIsHTML ) { // If the selector is sufficiently simple, try using a "get*By*" DOM method // (excepting DocumentFragment context, where the methods don't exist) if ( nodeType !== 11 && ( match = rquickExpr.exec( selector ) ) ) { // ID selector if ( ( m = match[ 1 ] ) ) { // Document context if ( nodeType === 9 ) { if ( ( elem = context.getElementById( m ) ) ) { // Support: IE, Opera, Webkit // TODO: identify versions // getElementById can match elements by name instead of ID if ( elem.id === m ) { results.push( elem ); return results; } } else { return results; } // Element context } else { // Support: IE, Opera, Webkit // TODO: identify versions // getElementById can match elements by name instead of ID if ( newContext && ( elem = newContext.getElementById( m ) ) && contains( context, elem ) && elem.id === m ) { results.push( elem ); return results; } } // Type selector } else if ( match[ 2 ] ) { push.apply( results, context.getElementsByTagName( selector ) ); return results; // Class selector } else if ( ( m = match[ 3 ] ) && support.getElementsByClassName && context.getElementsByClassName ) { push.apply( results, context.getElementsByClassName( m ) ); return results; } } // Take advantage of querySelectorAll if ( support.qsa && !nonnativeSelectorCache[ selector + " " ] && ( !rbuggyQSA || !rbuggyQSA.test( selector ) ) && // Support: IE 8 only // Exclude object elements ( nodeType !== 1 || context.nodeName.toLowerCase() !== "object" ) ) { newSelector = selector; newContext = context; // qSA considers elements outside a scoping root when evaluating child or // descendant combinators, which is not what we want. // In such cases, we work around the behavior by prefixing every selector in the // list with an ID selector referencing the scope context. // The technique has to be used as well when a leading combinator is used // as such selectors are not recognized by querySelectorAll. // Thanks to Andrew Dupont for this technique. if ( nodeType === 1 && ( rdescend.test( selector ) || rcombinators.test( selector ) ) ) { // Expand context for sibling selectors newContext = rsibling.test( selector ) && testContext( context.parentNode ) || context; // We can use :scope instead of the ID hack if the browser // supports it & if we're not changing the context. if ( newContext !== context || !support.scope ) { // Capture the context ID, setting it first if necessary if ( ( nid = context.getAttribute( "id" ) ) ) { nid = nid.replace( rcssescape, fcssescape ); } else { context.setAttribute( "id", ( nid = expando ) ); } } // Prefix every selector in the list groups = tokenize( selector ); i = groups.length; while ( i-- ) { groups[ i ] = ( nid ? "#" + nid : ":scope" ) + " " + toSelector( groups[ i ] ); } newSelector = groups.join( "," ); } try { push.apply( results, newContext.querySelectorAll( newSelector ) ); return results; } catch ( qsaError ) { nonnativeSelectorCache( selector, true ); } finally { if ( nid === expando ) { context.removeAttribute( "id" ); } } } } } // All others return select( selector.replace( rtrim, "$1" ), context, results, seed ); } /** * Create key-value caches of limited size * @returns {function(string, object)} Returns the Object data after storing it on itself with * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength) * deleting the oldest entry */ function createCache() { var keys = []; function cache( key, value ) { // Use (key + " ") to avoid collision with native prototype properties (see Issue #157) if ( keys.push( key + " " ) > Expr.cacheLength ) { // Only keep the most recent entries delete cache[ keys.shift() ]; } return ( cache[ key + " " ] = value ); } return cache; } /** * Mark a function for special use by Sizzle * @param {Function} fn The function to mark */ function markFunction( fn ) { fn[ expando ] = true; return fn; } /** * Support testing using an element * @param {Function} fn Passed the created element and returns a boolean result */ function assert( fn ) { var el = document.createElement( "fieldset" ); try { return !!fn( el ); } catch ( e ) { return false; } finally { // Remove from its parent by default if ( el.parentNode ) { el.parentNode.removeChild( el ); } // release memory in IE el = null; } } /** * Adds the same handler for all of the specified attrs * @param {String} attrs Pipe-separated list of attributes * @param {Function} handler The method that will be applied */ function addHandle( attrs, handler ) { var arr = attrs.split( "|" ), i = arr.length; while ( i-- ) { Expr.attrHandle[ arr[ i ] ] = handler; } } /** * Checks document order of two siblings * @param {Element} a * @param {Element} b * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b */ function siblingCheck( a, b ) { var cur = b && a, diff = cur && a.nodeType === 1 && b.nodeType === 1 && a.sourceIndex - b.sourceIndex; // Use IE sourceIndex if available on both nodes if ( diff ) { return diff; } // Check if b follows a if ( cur ) { while ( ( cur = cur.nextSibling ) ) { if ( cur === b ) { return -1; } } } return a ? 1 : -1; } /** * Returns a function to use in pseudos for input types * @param {String} type */ function createInputPseudo( type ) { return function( elem ) { var name = elem.nodeName.toLowerCase(); return name === "input" && elem.type === type; }; } /** * Returns a function to use in pseudos for buttons * @param {String} type */ function createButtonPseudo( type ) { return function( elem ) { var name = elem.nodeName.toLowerCase(); return ( name === "input" || name === "button" ) && elem.type === type; }; } /** * Returns a function to use in pseudos for :enabled/:disabled * @param {Boolean} disabled true for :disabled; false for :enabled */ function createDisabledPseudo( disabled ) { // Known :disabled false positives: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable return function( elem ) { // Only certain elements can match :enabled or :disabled // https://html.spec.whatwg.org/multipage/scripting.html#selector-enabled // https://html.spec.whatwg.org/multipage/scripting.html#selector-disabled if ( "form" in elem ) { // Check for inherited disabledness on relevant non-disabled elements: // * listed form-associated elements in a disabled fieldset // https://html.spec.whatwg.org/multipage/forms.html#category-listed // https://html.spec.whatwg.org/multipage/forms.html#concept-fe-disabled // * option elements in a disabled optgroup // https://html.spec.whatwg.org/multipage/forms.html#concept-option-disabled // All such elements have a "form" property. if ( elem.parentNode && elem.disabled === false ) { // Option elements defer to a parent optgroup if present if ( "label" in elem ) { if ( "label" in elem.parentNode ) { return elem.parentNode.disabled === disabled; } else { return elem.disabled === disabled; } } // Support: IE 6 - 11 // Use the isDisabled shortcut property to check for disabled fieldset ancestors return elem.isDisabled === disabled || // Where there is no isDisabled, check manually /* jshint -W018 */ elem.isDisabled !== !disabled && inDisabledFieldset( elem ) === disabled; } return elem.disabled === disabled; // Try to winnow out elements that can't be disabled before trusting the disabled property. // Some victims get caught in our net (label, legend, menu, track), but it shouldn't // even exist on them, let alone have a boolean value. } else if ( "label" in elem ) { return elem.disabled === disabled; } // Remaining elements are neither :enabled nor :disabled return false; }; } /** * Returns a function to use in pseudos for positionals * @param {Function} fn */ function createPositionalPseudo( fn ) { return markFunction( function( argument ) { argument = +argument; return markFunction( function( seed, matches ) { var j, matchIndexes = fn( [], seed.length, argument ), i = matchIndexes.length; // Match elements found at the specified indexes while ( i-- ) { if ( seed[ ( j = matchIndexes[ i ] ) ] ) { seed[ j ] = !( matches[ j ] = seed[ j ] ); } } } ); } ); } /** * Checks a node for validity as a Sizzle context * @param {Element|Object=} context * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value */ function testContext( context ) { return context && typeof context.getElementsByTagName !== "undefined" && context; } // Expose support vars for convenience support = Sizzle.support = {}; /** * Detects XML nodes * @param {Element|Object} elem An element or a document * @returns {Boolean} True iff elem is a non-HTML XML node */ isXML = Sizzle.isXML = function( elem ) { var namespace = elem && elem.namespaceURI, docElem = elem && ( elem.ownerDocument || elem ).documentElement; // Support: IE <=8 // Assume HTML when documentElement doesn't yet exist, such as inside loading iframes // https://bugs.jquery.com/ticket/4833 return !rhtml.test( namespace || docElem && docElem.nodeName || "HTML" ); }; /** * Sets document-related variables once based on the current document * @param {Element|Object} [doc] An element or document object to use to set the document * @returns {Object} Returns the current document */ setDocument = Sizzle.setDocument = function( node ) { var hasCompare, subWindow, doc = node ? node.ownerDocument || node : preferredDoc; // Return early if doc is invalid or already selected // Support: IE 11+, Edge 17 - 18+ // IE/Edge sometimes throw a "Permission denied" error when strict-comparing // two documents; shallow comparisons work. // eslint-disable-next-line eqeqeq if ( doc == document || doc.nodeType !== 9 || !doc.documentElement ) { return document; } // Update global variables document = doc; docElem = document.documentElement; documentIsHTML = !isXML( document ); // Support: IE 9 - 11+, Edge 12 - 18+ // Accessing iframe documents after unload throws "permission denied" errors (jQuery #13936) // Support: IE 11+, Edge 17 - 18+ // IE/Edge sometimes throw a "Permission denied" error when strict-comparing // two documents; shallow comparisons work. // eslint-disable-next-line eqeqeq if ( preferredDoc != document && ( subWindow = document.defaultView ) && subWindow.top !== subWindow ) { // Support: IE 11, Edge if ( subWindow.addEventListener ) { subWindow.addEventListener( "unload", unloadHandler, false ); // Support: IE 9 - 10 only } else if ( subWindow.attachEvent ) { subWindow.attachEvent( "onunload", unloadHandler ); } } // Support: IE 8 - 11+, Edge 12 - 18+, Chrome <=16 - 25 only, Firefox <=3.6 - 31 only, // Safari 4 - 5 only, Opera <=11.6 - 12.x only // IE/Edge & older browsers don't support the :scope pseudo-class. // Support: Safari 6.0 only // Safari 6.0 supports :scope but it's an alias of :root there. support.scope = assert( function( el ) { docElem.appendChild( el ).appendChild( document.createElement( "div" ) ); return typeof el.querySelectorAll !== "undefined" && !el.querySelectorAll( ":scope fieldset div" ).length; } ); /* Attributes ---------------------------------------------------------------------- */ // Support: IE<8 // Verify that getAttribute really returns attributes and not properties // (excepting IE8 booleans) support.attributes = assert( function( el ) { el.className = "i"; return !el.getAttribute( "className" ); } ); /* getElement(s)By* ---------------------------------------------------------------------- */ // Check if getElementsByTagName("*") returns only elements support.getElementsByTagName = assert( function( el ) { el.appendChild( document.createComment( "" ) ); return !el.getElementsByTagName( "*" ).length; } ); // Support: IE<9 support.getElementsByClassName = rnative.test( document.getElementsByClassName ); // Support: IE<10 // Check if getElementById returns elements by name // The broken getElementById methods don't pick up programmatically-set names, // so use a roundabout getElementsByName test support.getById = assert( function( el ) { docElem.appendChild( el ).id = expando; return !document.getElementsByName || !document.getElementsByName( expando ).length; } ); // ID filter and find if ( support.getById ) { Expr.filter[ "ID" ] = function( id ) { var attrId = id.replace( runescape, funescape ); return function( elem ) { return elem.getAttribute( "id" ) === attrId; }; }; Expr.find[ "ID" ] = function( id, context ) { if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { var elem = context.getElementById( id ); return elem ? [ elem ] : []; } }; } else { Expr.filter[ "ID" ] = function( id ) { var attrId = id.replace( runescape, funescape ); return function( elem ) { var node = typeof elem.getAttributeNode !== "undefined" && elem.getAttributeNode( "id" ); return node && node.value === attrId; }; }; // Support: IE 6 - 7 only // getElementById is not reliable as a find shortcut Expr.find[ "ID" ] = function( id, context ) { if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { var node, i, elems, elem = context.getElementById( id ); if ( elem ) { // Verify the id attribute node = elem.getAttributeNode( "id" ); if ( node && node.value === id ) { return [ elem ]; } // Fall back on getElementsByName elems = context.getElementsByName( id ); i = 0; while ( ( elem = elems[ i++ ] ) ) { node = elem.getAttributeNode( "id" ); if ( node && node.value === id ) { return [ elem ]; } } } return []; } }; } // Tag Expr.find[ "TAG" ] = support.getElementsByTagName ? function( tag, context ) { if ( typeof context.getElementsByTagName !== "undefined" ) { return context.getElementsByTagName( tag ); // DocumentFragment nodes don't have gEBTN } else if ( support.qsa ) { return context.querySelectorAll( tag ); } } : function( tag, context ) { var elem, tmp = [], i = 0, // By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too results = context.getElementsByTagName( tag ); // Filter out possible comments if ( tag === "*" ) { while ( ( elem = results[ i++ ] ) ) { if ( elem.nodeType === 1 ) { tmp.push( elem ); } } return tmp; } return results; }; // Class Expr.find[ "CLASS" ] = support.getElementsByClassName && function( className, context ) { if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) { return context.getElementsByClassName( className ); } }; /* QSA/matchesSelector ---------------------------------------------------------------------- */ // QSA and matchesSelector support // matchesSelector(:active) reports false when true (IE9/Opera 11.5) rbuggyMatches = []; // qSa(:focus) reports false when true (Chrome 21) // We allow this because of a bug in IE8/9 that throws an error // whenever `document.activeElement` is accessed on an iframe // So, we allow :focus to pass through QSA all the time to avoid the IE error // See https://bugs.jquery.com/ticket/13378 rbuggyQSA = []; if ( ( support.qsa = rnative.test( document.querySelectorAll ) ) ) { // Build QSA regex // Regex strategy adopted from Diego Perini assert( function( el ) { var input; // Select is set to empty string on purpose // This is to test IE's treatment of not explicitly // setting a boolean content attribute, // since its presence should be enough // https://bugs.jquery.com/ticket/12359 docElem.appendChild( el ).innerHTML = "" + ""; // Support: IE8, Opera 11-12.16 // Nothing should be selected when empty strings follow ^= or $= or *= // The test attribute must be unknown in Opera but "safe" for WinRT // https://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section if ( el.querySelectorAll( "[msallowcapture^='']" ).length ) { rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" ); } // Support: IE8 // Boolean attributes and "value" are not treated correctly if ( !el.querySelectorAll( "[selected]" ).length ) { rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" ); } // Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+ if ( !el.querySelectorAll( "[id~=" + expando + "-]" ).length ) { rbuggyQSA.push( "~=" ); } // Support: IE 11+, Edge 15 - 18+ // IE 11/Edge don't find elements on a `[name='']` query in some cases. // Adding a temporary attribute to the document before the selection works // around the issue. // Interestingly, IE 10 & older don't seem to have the issue. input = document.createElement( "input" ); input.setAttribute( "name", "" ); el.appendChild( input ); if ( !el.querySelectorAll( "[name='']" ).length ) { rbuggyQSA.push( "\\[" + whitespace + "*name" + whitespace + "*=" + whitespace + "*(?:''|\"\")" ); } // Webkit/Opera - :checked should return selected option elements // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked // IE8 throws error here and will not see later tests if ( !el.querySelectorAll( ":checked" ).length ) { rbuggyQSA.push( ":checked" ); } // Support: Safari 8+, iOS 8+ // https://bugs.webkit.org/show_bug.cgi?id=136851 // In-page `selector#id sibling-combinator selector` fails if ( !el.querySelectorAll( "a#" + expando + "+*" ).length ) { rbuggyQSA.push( ".#.+[+~]" ); } // Support: Firefox <=3.6 - 5 only // Old Firefox doesn't throw on a badly-escaped identifier. el.querySelectorAll( "\\\f" ); rbuggyQSA.push( "[\\r\\n\\f]" ); } ); assert( function( el ) { el.innerHTML = "" + ""; // Support: Windows 8 Native Apps // The type and name attributes are restricted during .innerHTML assignment var input = document.createElement( "input" ); input.setAttribute( "type", "hidden" ); el.appendChild( input ).setAttribute( "name", "D" ); // Support: IE8 // Enforce case-sensitivity of name attribute if ( el.querySelectorAll( "[name=d]" ).length ) { rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" ); } // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled) // IE8 throws error here and will not see later tests if ( el.querySelectorAll( ":enabled" ).length !== 2 ) { rbuggyQSA.push( ":enabled", ":disabled" ); } // Support: IE9-11+ // IE's :disabled selector does not pick up the children of disabled fieldsets docElem.appendChild( el ).disabled = true; if ( el.querySelectorAll( ":disabled" ).length !== 2 ) { rbuggyQSA.push( ":enabled", ":disabled" ); } // Support: Opera 10 - 11 only // Opera 10-11 does not throw on post-comma invalid pseudos el.querySelectorAll( "*,:x" ); rbuggyQSA.push( ",.*:" ); } ); } if ( ( support.matchesSelector = rnative.test( ( matches = docElem.matches || docElem.webkitMatchesSelector || docElem.mozMatchesSelector || docElem.oMatchesSelector || docElem.msMatchesSelector ) ) ) ) { assert( function( el ) { // Check to see if it's possible to do matchesSelector // on a disconnected node (IE 9) support.disconnectedMatch = matches.call( el, "*" ); // This should fail with an exception // Gecko does not error, returns false instead matches.call( el, "[s!='']:x" ); rbuggyMatches.push( "!=", pseudos ); } ); } rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join( "|" ) ); rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join( "|" ) ); /* Contains ---------------------------------------------------------------------- */ hasCompare = rnative.test( docElem.compareDocumentPosition ); // Element contains another // Purposefully self-exclusive // As in, an element does not contain itself contains = hasCompare || rnative.test( docElem.contains ) ? function( a, b ) { var adown = a.nodeType === 9 ? a.documentElement : a, bup = b && b.parentNode; return a === bup || !!( bup && bup.nodeType === 1 && ( adown.contains ? adown.contains( bup ) : a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16 ) ); } : function( a, b ) { if ( b ) { while ( ( b = b.parentNode ) ) { if ( b === a ) { return true; } } } return false; }; /* Sorting ---------------------------------------------------------------------- */ // Document order sorting sortOrder = hasCompare ? function( a, b ) { // Flag for duplicate removal if ( a === b ) { hasDuplicate = true; return 0; } // Sort on method existence if only one input has compareDocumentPosition var compare = !a.compareDocumentPosition - !b.compareDocumentPosition; if ( compare ) { return compare; } // Calculate position if both inputs belong to the same document // Support: IE 11+, Edge 17 - 18+ // IE/Edge sometimes throw a "Permission denied" error when strict-comparing // two documents; shallow comparisons work. // eslint-disable-next-line eqeqeq compare = ( a.ownerDocument || a ) == ( b.ownerDocument || b ) ? a.compareDocumentPosition( b ) : // Otherwise we know they are disconnected 1; // Disconnected nodes if ( compare & 1 || ( !support.sortDetached && b.compareDocumentPosition( a ) === compare ) ) { // Choose the first element that is related to our preferred document // Support: IE 11+, Edge 17 - 18+ // IE/Edge sometimes throw a "Permission denied" error when strict-comparing // two documents; shallow comparisons work. // eslint-disable-next-line eqeqeq if ( a == document || a.ownerDocument == preferredDoc && contains( preferredDoc, a ) ) { return -1; } // Support: IE 11+, Edge 17 - 18+ // IE/Edge sometimes throw a "Permission denied" error when strict-comparing // two documents; shallow comparisons work. // eslint-disable-next-line eqeqeq if ( b == document || b.ownerDocument == preferredDoc && contains( preferredDoc, b ) ) { return 1; } // Maintain original order return sortInput ? ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : 0; } return compare & 4 ? -1 : 1; } : function( a, b ) { // Exit early if the nodes are identical if ( a === b ) { hasDuplicate = true; return 0; } var cur, i = 0, aup = a.parentNode, bup = b.parentNode, ap = [ a ], bp = [ b ]; // Parentless nodes are either documents or disconnected if ( !aup || !bup ) { // Support: IE 11+, Edge 17 - 18+ // IE/Edge sometimes throw a "Permission denied" error when strict-comparing // two documents; shallow comparisons work. /* eslint-disable eqeqeq */ return a == document ? -1 : b == document ? 1 : /* eslint-enable eqeqeq */ aup ? -1 : bup ? 1 : sortInput ? ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : 0; // If the nodes are siblings, we can do a quick check } else if ( aup === bup ) { return siblingCheck( a, b ); } // Otherwise we need full lists of their ancestors for comparison cur = a; while ( ( cur = cur.parentNode ) ) { ap.unshift( cur ); } cur = b; while ( ( cur = cur.parentNode ) ) { bp.unshift( cur ); } // Walk down the tree looking for a discrepancy while ( ap[ i ] === bp[ i ] ) { i++; } return i ? // Do a sibling check if the nodes have a common ancestor siblingCheck( ap[ i ], bp[ i ] ) : // Otherwise nodes in our document sort first // Support: IE 11+, Edge 17 - 18+ // IE/Edge sometimes throw a "Permission denied" error when strict-comparing // two documents; shallow comparisons work. /* eslint-disable eqeqeq */ ap[ i ] == preferredDoc ? -1 : bp[ i ] == preferredDoc ? 1 : /* eslint-enable eqeqeq */ 0; }; return document; }; Sizzle.matches = function( expr, elements ) { return Sizzle( expr, null, null, elements ); }; Sizzle.matchesSelector = function( elem, expr ) { setDocument( elem ); if ( support.matchesSelector && documentIsHTML && !nonnativeSelectorCache[ expr + " " ] && ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) && ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) { try { var ret = matches.call( elem, expr ); // IE 9's matchesSelector returns false on disconnected nodes if ( ret || support.disconnectedMatch || // As well, disconnected nodes are said to be in a document // fragment in IE 9 elem.document && elem.document.nodeType !== 11 ) { return ret; } } catch ( e ) { nonnativeSelectorCache( expr, true ); } } return Sizzle( expr, document, null, [ elem ] ).length > 0; }; Sizzle.contains = function( context, elem ) { // Set document vars if needed // Support: IE 11+, Edge 17 - 18+ // IE/Edge sometimes throw a "Permission denied" error when strict-comparing // two documents; shallow comparisons work. // eslint-disable-next-line eqeqeq if ( ( context.ownerDocument || context ) != document ) { setDocument( context ); } return contains( context, elem ); }; Sizzle.attr = function( elem, name ) { // Set document vars if needed // Support: IE 11+, Edge 17 - 18+ // IE/Edge sometimes throw a "Permission denied" error when strict-comparing // two documents; shallow comparisons work. // eslint-disable-next-line eqeqeq if ( ( elem.ownerDocument || elem ) != document ) { setDocument( elem ); } var fn = Expr.attrHandle[ name.toLowerCase() ], // Don't get fooled by Object.prototype properties (jQuery #13807) val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ? fn( elem, name, !documentIsHTML ) : undefined; return val !== undefined ? val : support.attributes || !documentIsHTML ? elem.getAttribute( name ) : ( val = elem.getAttributeNode( name ) ) && val.specified ? val.value : null; }; Sizzle.escape = function( sel ) { return ( sel + "" ).replace( rcssescape, fcssescape ); }; Sizzle.error = function( msg ) { throw new Error( "Syntax error, unrecognized expression: " + msg ); }; /** * Document sorting and removing duplicates * @param {ArrayLike} results */ Sizzle.uniqueSort = function( results ) { var elem, duplicates = [], j = 0, i = 0; // Unless we *know* we can detect duplicates, assume their presence hasDuplicate = !support.detectDuplicates; sortInput = !support.sortStable && results.slice( 0 ); results.sort( sortOrder ); if ( hasDuplicate ) { while ( ( elem = results[ i++ ] ) ) { if ( elem === results[ i ] ) { j = duplicates.push( i ); } } while ( j-- ) { results.splice( duplicates[ j ], 1 ); } } // Clear input after sorting to release objects // See https://github.com/jquery/sizzle/pull/225 sortInput = null; return results; }; /** * Utility function for retrieving the text value of an array of DOM nodes * @param {Array|Element} elem */ getText = Sizzle.getText = function( elem ) { var node, ret = "", i = 0, nodeType = elem.nodeType; if ( !nodeType ) { // If no nodeType, this is expected to be an array while ( ( node = elem[ i++ ] ) ) { // Do not traverse comment nodes ret += getText( node ); } } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) { // Use textContent for elements // innerText usage removed for consistency of new lines (jQuery #11153) if ( typeof elem.textContent === "string" ) { return elem.textContent; } else { // Traverse its children for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { ret += getText( elem ); } } } else if ( nodeType === 3 || nodeType === 4 ) { return elem.nodeValue; } // Do not include comment or processing instruction nodes return ret; }; Expr = Sizzle.selectors = { // Can be adjusted by the user cacheLength: 50, createPseudo: markFunction, match: matchExpr, attrHandle: {}, find: {}, relative: { ">": { dir: "parentNode", first: true }, " ": { dir: "parentNode" }, "+": { dir: "previousSibling", first: true }, "~": { dir: "previousSibling" } }, preFilter: { "ATTR": function( match ) { match[ 1 ] = match[ 1 ].replace( runescape, funescape ); // Move the given value to match[3] whether quoted or unquoted match[ 3 ] = ( match[ 3 ] || match[ 4 ] || match[ 5 ] || "" ).replace( runescape, funescape ); if ( match[ 2 ] === "~=" ) { match[ 3 ] = " " + match[ 3 ] + " "; } return match.slice( 0, 4 ); }, "CHILD": function( match ) { /* matches from matchExpr["CHILD"] 1 type (only|nth|...) 2 what (child|of-type) 3 argument (even|odd|\d*|\d*n([+-]\d+)?|...) 4 xn-component of xn+y argument ([+-]?\d*n|) 5 sign of xn-component 6 x of xn-component 7 sign of y-component 8 y of y-component */ match[ 1 ] = match[ 1 ].toLowerCase(); if ( match[ 1 ].slice( 0, 3 ) === "nth" ) { // nth-* requires argument if ( !match[ 3 ] ) { Sizzle.error( match[ 0 ] ); } // numeric x and y parameters for Expr.filter.CHILD // remember that false/true cast respectively to 0/1 match[ 4 ] = +( match[ 4 ] ? match[ 5 ] + ( match[ 6 ] || 1 ) : 2 * ( match[ 3 ] === "even" || match[ 3 ] === "odd" ) ); match[ 5 ] = +( ( match[ 7 ] + match[ 8 ] ) || match[ 3 ] === "odd" ); // other types prohibit arguments } else if ( match[ 3 ] ) { Sizzle.error( match[ 0 ] ); } return match; }, "PSEUDO": function( match ) { var excess, unquoted = !match[ 6 ] && match[ 2 ]; if ( matchExpr[ "CHILD" ].test( match[ 0 ] ) ) { return null; } // Accept quoted arguments as-is if ( match[ 3 ] ) { match[ 2 ] = match[ 4 ] || match[ 5 ] || ""; // Strip excess characters from unquoted arguments } else if ( unquoted && rpseudo.test( unquoted ) && // Get excess from tokenize (recursively) ( excess = tokenize( unquoted, true ) ) && // advance to the next closing parenthesis ( excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length ) ) { // excess is a negative index match[ 0 ] = match[ 0 ].slice( 0, excess ); match[ 2 ] = unquoted.slice( 0, excess ); } // Return only captures needed by the pseudo filter method (type and argument) return match.slice( 0, 3 ); } }, filter: { "TAG": function( nodeNameSelector ) { var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase(); return nodeNameSelector === "*" ? function() { return true; } : function( elem ) { return elem.nodeName && elem.nodeName.toLowerCase() === nodeName; }; }, "CLASS": function( className ) { var pattern = classCache[ className + " " ]; return pattern || ( pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" ) ) && classCache( className, function( elem ) { return pattern.test( typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== "undefined" && elem.getAttribute( "class" ) || "" ); } ); }, "ATTR": function( name, operator, check ) { return function( elem ) { var result = Sizzle.attr( elem, name ); if ( result == null ) { return operator === "!="; } if ( !operator ) { return true; } result += ""; /* eslint-disable max-len */ return operator === "=" ? result === check : operator === "!=" ? result !== check : operator === "^=" ? check && result.indexOf( check ) === 0 : operator === "*=" ? check && result.indexOf( check ) > -1 : operator === "$=" ? check && result.slice( -check.length ) === check : operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 : operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" : false; /* eslint-enable max-len */ }; }, "CHILD": function( type, what, _argument, first, last ) { var simple = type.slice( 0, 3 ) !== "nth", forward = type.slice( -4 ) !== "last", ofType = what === "of-type"; return first === 1 && last === 0 ? // Shortcut for :nth-*(n) function( elem ) { return !!elem.parentNode; } : function( elem, _context, xml ) { var cache, uniqueCache, outerCache, node, nodeIndex, start, dir = simple !== forward ? "nextSibling" : "previousSibling", parent = elem.parentNode, name = ofType && elem.nodeName.toLowerCase(), useCache = !xml && !ofType, diff = false; if ( parent ) { // :(first|last|only)-(child|of-type) if ( simple ) { while ( dir ) { node = elem; while ( ( node = node[ dir ] ) ) { if ( ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1 ) { return false; } } // Reverse direction for :only-* (if we haven't yet done so) start = dir = type === "only" && !start && "nextSibling"; } return true; } start = [ forward ? parent.firstChild : parent.lastChild ]; // non-xml :nth-child(...) stores cache data on `parent` if ( forward && useCache ) { // Seek `elem` from a previously-cached index // ...in a gzip-friendly way node = parent; outerCache = node[ expando ] || ( node[ expando ] = {} ); // Support: IE <9 only // Defend against cloned attroperties (jQuery gh-1709) uniqueCache = outerCache[ node.uniqueID ] || ( outerCache[ node.uniqueID ] = {} ); cache = uniqueCache[ type ] || []; nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; diff = nodeIndex && cache[ 2 ]; node = nodeIndex && parent.childNodes[ nodeIndex ]; while ( ( node = ++nodeIndex && node && node[ dir ] || // Fallback to seeking `elem` from the start ( diff = nodeIndex = 0 ) || start.pop() ) ) { // When found, cache indexes on `parent` and break if ( node.nodeType === 1 && ++diff && node === elem ) { uniqueCache[ type ] = [ dirruns, nodeIndex, diff ]; break; } } } else { // Use previously-cached element index if available if ( useCache ) { // ...in a gzip-friendly way node = elem; outerCache = node[ expando ] || ( node[ expando ] = {} ); // Support: IE <9 only // Defend against cloned attroperties (jQuery gh-1709) uniqueCache = outerCache[ node.uniqueID ] || ( outerCache[ node.uniqueID ] = {} ); cache = uniqueCache[ type ] || []; nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; diff = nodeIndex; } // xml :nth-child(...) // or :nth-last-child(...) or :nth(-last)?-of-type(...) if ( diff === false ) { // Use the same loop as above to seek `elem` from the start while ( ( node = ++nodeIndex && node && node[ dir ] || ( diff = nodeIndex = 0 ) || start.pop() ) ) { if ( ( ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1 ) && ++diff ) { // Cache the index of each encountered element if ( useCache ) { outerCache = node[ expando ] || ( node[ expando ] = {} ); // Support: IE <9 only // Defend against cloned attroperties (jQuery gh-1709) uniqueCache = outerCache[ node.uniqueID ] || ( outerCache[ node.uniqueID ] = {} ); uniqueCache[ type ] = [ dirruns, diff ]; } if ( node === elem ) { break; } } } } } // Incorporate the offset, then check against cycle size diff -= last; return diff === first || ( diff % first === 0 && diff / first >= 0 ); } }; }, "PSEUDO": function( pseudo, argument ) { // pseudo-class names are case-insensitive // http://www.w3.org/TR/selectors/#pseudo-classes // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters // Remember that setFilters inherits from pseudos var args, fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] || Sizzle.error( "unsupported pseudo: " + pseudo ); // The user may use createPseudo to indicate that // arguments are needed to create the filter function // just as Sizzle does if ( fn[ expando ] ) { return fn( argument ); } // But maintain support for old signatures if ( fn.length > 1 ) { args = [ pseudo, pseudo, "", argument ]; return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ? markFunction( function( seed, matches ) { var idx, matched = fn( seed, argument ), i = matched.length; while ( i-- ) { idx = indexOf( seed, matched[ i ] ); seed[ idx ] = !( matches[ idx ] = matched[ i ] ); } } ) : function( elem ) { return fn( elem, 0, args ); }; } return fn; } }, pseudos: { // Potentially complex pseudos "not": markFunction( function( selector ) { // Trim the selector passed to compile // to avoid treating leading and trailing // spaces as combinators var input = [], results = [], matcher = compile( selector.replace( rtrim, "$1" ) ); return matcher[ expando ] ? markFunction( function( seed, matches, _context, xml ) { var elem, unmatched = matcher( seed, null, xml, [] ), i = seed.length; // Match elements unmatched by `matcher` while ( i-- ) { if ( ( elem = unmatched[ i ] ) ) { seed[ i ] = !( matches[ i ] = elem ); } } } ) : function( elem, _context, xml ) { input[ 0 ] = elem; matcher( input, null, xml, results ); // Don't keep the element (issue #299) input[ 0 ] = null; return !results.pop(); }; } ), "has": markFunction( function( selector ) { return function( elem ) { return Sizzle( selector, elem ).length > 0; }; } ), "contains": markFunction( function( text ) { text = text.replace( runescape, funescape ); return function( elem ) { return ( elem.textContent || getText( elem ) ).indexOf( text ) > -1; }; } ), // "Whether an element is represented by a :lang() selector // is based solely on the element's language value // being equal to the identifier C, // or beginning with the identifier C immediately followed by "-". // The matching of C against the element's language value is performed case-insensitively. // The identifier C does not have to be a valid language name." // http://www.w3.org/TR/selectors/#lang-pseudo "lang": markFunction( function( lang ) { // lang value must be a valid identifier if ( !ridentifier.test( lang || "" ) ) { Sizzle.error( "unsupported lang: " + lang ); } lang = lang.replace( runescape, funescape ).toLowerCase(); return function( elem ) { var elemLang; do { if ( ( elemLang = documentIsHTML ? elem.lang : elem.getAttribute( "xml:lang" ) || elem.getAttribute( "lang" ) ) ) { elemLang = elemLang.toLowerCase(); return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0; } } while ( ( elem = elem.parentNode ) && elem.nodeType === 1 ); return false; }; } ), // Miscellaneous "target": function( elem ) { var hash = window.location && window.location.hash; return hash && hash.slice( 1 ) === elem.id; }, "root": function( elem ) { return elem === docElem; }, "focus": function( elem ) { return elem === document.activeElement && ( !document.hasFocus || document.hasFocus() ) && !!( elem.type || elem.href || ~elem.tabIndex ); }, // Boolean properties "enabled": createDisabledPseudo( false ), "disabled": createDisabledPseudo( true ), "checked": function( elem ) { // In CSS3, :checked should return both checked and selected elements // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked var nodeName = elem.nodeName.toLowerCase(); return ( nodeName === "input" && !!elem.checked ) || ( nodeName === "option" && !!elem.selected ); }, "selected": function( elem ) { // Accessing this property makes selected-by-default // options in Safari work properly if ( elem.parentNode ) { // eslint-disable-next-line no-unused-expressions elem.parentNode.selectedIndex; } return elem.selected === true; }, // Contents "empty": function( elem ) { // http://www.w3.org/TR/selectors/#empty-pseudo // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5), // but not by others (comment: 8; processing instruction: 7; etc.) // nodeType < 6 works because attributes (2) do not appear as children for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { if ( elem.nodeType < 6 ) { return false; } } return true; }, "parent": function( elem ) { return !Expr.pseudos[ "empty" ]( elem ); }, // Element/input types "header": function( elem ) { return rheader.test( elem.nodeName ); }, "input": function( elem ) { return rinputs.test( elem.nodeName ); }, "button": function( elem ) { var name = elem.nodeName.toLowerCase(); return name === "input" && elem.type === "button" || name === "button"; }, "text": function( elem ) { var attr; return elem.nodeName.toLowerCase() === "input" && elem.type === "text" && // Support: IE<8 // New HTML5 attribute values (e.g., "search") appear with elem.type === "text" ( ( attr = elem.getAttribute( "type" ) ) == null || attr.toLowerCase() === "text" ); }, // Position-in-collection "first": createPositionalPseudo( function() { return [ 0 ]; } ), "last": createPositionalPseudo( function( _matchIndexes, length ) { return [ length - 1 ]; } ), "eq": createPositionalPseudo( function( _matchIndexes, length, argument ) { return [ argument < 0 ? argument + length : argument ]; } ), "even": createPositionalPseudo( function( matchIndexes, length ) { var i = 0; for ( ; i < length; i += 2 ) { matchIndexes.push( i ); } return matchIndexes; } ), "odd": createPositionalPseudo( function( matchIndexes, length ) { var i = 1; for ( ; i < length; i += 2 ) { matchIndexes.push( i ); } return matchIndexes; } ), "lt": createPositionalPseudo( function( matchIndexes, length, argument ) { var i = argument < 0 ? argument + length : argument > length ? length : argument; for ( ; --i >= 0; ) { matchIndexes.push( i ); } return matchIndexes; } ), "gt": createPositionalPseudo( function( matchIndexes, length, argument ) { var i = argument < 0 ? argument + length : argument; for ( ; ++i < length; ) { matchIndexes.push( i ); } return matchIndexes; } ) } }; Expr.pseudos[ "nth" ] = Expr.pseudos[ "eq" ]; // Add button/input type pseudos for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) { Expr.pseudos[ i ] = createInputPseudo( i ); } for ( i in { submit: true, reset: true } ) { Expr.pseudos[ i ] = createButtonPseudo( i ); } // Easy API for creating new setFilters function setFilters() {} setFilters.prototype = Expr.filters = Expr.pseudos; Expr.setFilters = new setFilters(); tokenize = Sizzle.tokenize = function( selector, parseOnly ) { var matched, match, tokens, type, soFar, groups, preFilters, cached = tokenCache[ selector + " " ]; if ( cached ) { return parseOnly ? 0 : cached.slice( 0 ); } soFar = selector; groups = []; preFilters = Expr.preFilter; while ( soFar ) { // Comma and first run if ( !matched || ( match = rcomma.exec( soFar ) ) ) { if ( match ) { // Don't consume trailing commas as valid soFar = soFar.slice( match[ 0 ].length ) || soFar; } groups.push( ( tokens = [] ) ); } matched = false; // Combinators if ( ( match = rcombinators.exec( soFar ) ) ) { matched = match.shift(); tokens.push( { value: matched, // Cast descendant combinators to space type: match[ 0 ].replace( rtrim, " " ) } ); soFar = soFar.slice( matched.length ); } // Filters for ( type in Expr.filter ) { if ( ( match = matchExpr[ type ].exec( soFar ) ) && ( !preFilters[ type ] || ( match = preFilters[ type ]( match ) ) ) ) { matched = match.shift(); tokens.push( { value: matched, type: type, matches: match } ); soFar = soFar.slice( matched.length ); } } if ( !matched ) { break; } } // Return the length of the invalid excess // if we're just parsing // Otherwise, throw an error or return tokens return parseOnly ? soFar.length : soFar ? Sizzle.error( selector ) : // Cache the tokens tokenCache( selector, groups ).slice( 0 ); }; function toSelector( tokens ) { var i = 0, len = tokens.length, selector = ""; for ( ; i < len; i++ ) { selector += tokens[ i ].value; } return selector; } function addCombinator( matcher, combinator, base ) { var dir = combinator.dir, skip = combinator.next, key = skip || dir, checkNonElements = base && key === "parentNode", doneName = done++; return combinator.first ? // Check against closest ancestor/preceding element function( elem, context, xml ) { while ( ( elem = elem[ dir ] ) ) { if ( elem.nodeType === 1 || checkNonElements ) { return matcher( elem, context, xml ); } } return false; } : // Check against all ancestor/preceding elements function( elem, context, xml ) { var oldCache, uniqueCache, outerCache, newCache = [ dirruns, doneName ]; // We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching if ( xml ) { while ( ( elem = elem[ dir ] ) ) { if ( elem.nodeType === 1 || checkNonElements ) { if ( matcher( elem, context, xml ) ) { return true; } } } } else { while ( ( elem = elem[ dir ] ) ) { if ( elem.nodeType === 1 || checkNonElements ) { outerCache = elem[ expando ] || ( elem[ expando ] = {} ); // Support: IE <9 only // Defend against cloned attroperties (jQuery gh-1709) uniqueCache = outerCache[ elem.uniqueID ] || ( outerCache[ elem.uniqueID ] = {} ); if ( skip && skip === elem.nodeName.toLowerCase() ) { elem = elem[ dir ] || elem; } else if ( ( oldCache = uniqueCache[ key ] ) && oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) { // Assign to newCache so results back-propagate to previous elements return ( newCache[ 2 ] = oldCache[ 2 ] ); } else { // Reuse newcache so results back-propagate to previous elements uniqueCache[ key ] = newCache; // A match means we're done; a fail means we have to keep checking if ( ( newCache[ 2 ] = matcher( elem, context, xml ) ) ) { return true; } } } } } return false; }; } function elementMatcher( matchers ) { return matchers.length > 1 ? function( elem, context, xml ) { var i = matchers.length; while ( i-- ) { if ( !matchers[ i ]( elem, context, xml ) ) { return false; } } return true; } : matchers[ 0 ]; } function multipleContexts( selector, contexts, results ) { var i = 0, len = contexts.length; for ( ; i < len; i++ ) { Sizzle( selector, contexts[ i ], results ); } return results; } function condense( unmatched, map, filter, context, xml ) { var elem, newUnmatched = [], i = 0, len = unmatched.length, mapped = map != null; for ( ; i < len; i++ ) { if ( ( elem = unmatched[ i ] ) ) { if ( !filter || filter( elem, context, xml ) ) { newUnmatched.push( elem ); if ( mapped ) { map.push( i ); } } } } return newUnmatched; } function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) { if ( postFilter && !postFilter[ expando ] ) { postFilter = setMatcher( postFilter ); } if ( postFinder && !postFinder[ expando ] ) { postFinder = setMatcher( postFinder, postSelector ); } return markFunction( function( seed, results, context, xml ) { var temp, i, elem, preMap = [], postMap = [], preexisting = results.length, // Get initial elements from seed or context elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ), // Prefilter to get matcher input, preserving a map for seed-results synchronization matcherIn = preFilter && ( seed || !selector ) ? condense( elems, preMap, preFilter, context, xml ) : elems, matcherOut = matcher ? // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results, postFinder || ( seed ? preFilter : preexisting || postFilter ) ? // ...intermediate processing is necessary [] : // ...otherwise use results directly results : matcherIn; // Find primary matches if ( matcher ) { matcher( matcherIn, matcherOut, context, xml ); } // Apply postFilter if ( postFilter ) { temp = condense( matcherOut, postMap ); postFilter( temp, [], context, xml ); // Un-match failing elements by moving them back to matcherIn i = temp.length; while ( i-- ) { if ( ( elem = temp[ i ] ) ) { matcherOut[ postMap[ i ] ] = !( matcherIn[ postMap[ i ] ] = elem ); } } } if ( seed ) { if ( postFinder || preFilter ) { if ( postFinder ) { // Get the final matcherOut by condensing this intermediate into postFinder contexts temp = []; i = matcherOut.length; while ( i-- ) { if ( ( elem = matcherOut[ i ] ) ) { // Restore matcherIn since elem is not yet a final match temp.push( ( matcherIn[ i ] = elem ) ); } } postFinder( null, ( matcherOut = [] ), temp, xml ); } // Move matched elements from seed to results to keep them synchronized i = matcherOut.length; while ( i-- ) { if ( ( elem = matcherOut[ i ] ) && ( temp = postFinder ? indexOf( seed, elem ) : preMap[ i ] ) > -1 ) { seed[ temp ] = !( results[ temp ] = elem ); } } } // Add elements to results, through postFinder if defined } else { matcherOut = condense( matcherOut === results ? matcherOut.splice( preexisting, matcherOut.length ) : matcherOut ); if ( postFinder ) { postFinder( null, results, matcherOut, xml ); } else { push.apply( results, matcherOut ); } } } ); } function matcherFromTokens( tokens ) { var checkContext, matcher, j, len = tokens.length, leadingRelative = Expr.relative[ tokens[ 0 ].type ], implicitRelative = leadingRelative || Expr.relative[ " " ], i = leadingRelative ? 1 : 0, // The foundational matcher ensures that elements are reachable from top-level context(s) matchContext = addCombinator( function( elem ) { return elem === checkContext; }, implicitRelative, true ), matchAnyContext = addCombinator( function( elem ) { return indexOf( checkContext, elem ) > -1; }, implicitRelative, true ), matchers = [ function( elem, context, xml ) { var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || ( ( checkContext = context ).nodeType ? matchContext( elem, context, xml ) : matchAnyContext( elem, context, xml ) ); // Avoid hanging onto element (issue #299) checkContext = null; return ret; } ]; for ( ; i < len; i++ ) { if ( ( matcher = Expr.relative[ tokens[ i ].type ] ) ) { matchers = [ addCombinator( elementMatcher( matchers ), matcher ) ]; } else { matcher = Expr.filter[ tokens[ i ].type ].apply( null, tokens[ i ].matches ); // Return special upon seeing a positional matcher if ( matcher[ expando ] ) { // Find the next relative operator (if any) for proper handling j = ++i; for ( ; j < len; j++ ) { if ( Expr.relative[ tokens[ j ].type ] ) { break; } } return setMatcher( i > 1 && elementMatcher( matchers ), i > 1 && toSelector( // If the preceding token was a descendant combinator, insert an implicit any-element `*` tokens .slice( 0, i - 1 ) .concat( { value: tokens[ i - 2 ].type === " " ? "*" : "" } ) ).replace( rtrim, "$1" ), matcher, i < j && matcherFromTokens( tokens.slice( i, j ) ), j < len && matcherFromTokens( ( tokens = tokens.slice( j ) ) ), j < len && toSelector( tokens ) ); } matchers.push( matcher ); } } return elementMatcher( matchers ); } function matcherFromGroupMatchers( elementMatchers, setMatchers ) { var bySet = setMatchers.length > 0, byElement = elementMatchers.length > 0, superMatcher = function( seed, context, xml, results, outermost ) { var elem, j, matcher, matchedCount = 0, i = "0", unmatched = seed && [], setMatched = [], contextBackup = outermostContext, // We must always have either seed elements or outermost context elems = seed || byElement && Expr.find[ "TAG" ]( "*", outermost ), // Use integer dirruns iff this is the outermost matcher dirrunsUnique = ( dirruns += contextBackup == null ? 1 : Math.random() || 0.1 ), len = elems.length; if ( outermost ) { // Support: IE 11+, Edge 17 - 18+ // IE/Edge sometimes throw a "Permission denied" error when strict-comparing // two documents; shallow comparisons work. // eslint-disable-next-line eqeqeq outermostContext = context == document || context || outermost; } // Add elements passing elementMatchers directly to results // Support: IE<9, Safari // Tolerate NodeList properties (IE: "length"; Safari: ) matching elements by id for ( ; i !== len && ( elem = elems[ i ] ) != null; i++ ) { if ( byElement && elem ) { j = 0; // Support: IE 11+, Edge 17 - 18+ // IE/Edge sometimes throw a "Permission denied" error when strict-comparing // two documents; shallow comparisons work. // eslint-disable-next-line eqeqeq if ( !context && elem.ownerDocument != document ) { setDocument( elem ); xml = !documentIsHTML; } while ( ( matcher = elementMatchers[ j++ ] ) ) { if ( matcher( elem, context || document, xml ) ) { results.push( elem ); break; } } if ( outermost ) { dirruns = dirrunsUnique; } } // Track unmatched elements for set filters if ( bySet ) { // They will have gone through all possible matchers if ( ( elem = !matcher && elem ) ) { matchedCount--; } // Lengthen the array for every element, matched or not if ( seed ) { unmatched.push( elem ); } } } // `i` is now the count of elements visited above, and adding it to `matchedCount` // makes the latter nonnegative. matchedCount += i; // Apply set filters to unmatched elements // NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount` // equals `i`), unless we didn't visit _any_ elements in the above loop because we have // no element matchers and no seed. // Incrementing an initially-string "0" `i` allows `i` to remain a string only in that // case, which will result in a "00" `matchedCount` that differs from `i` but is also // numerically zero. if ( bySet && i !== matchedCount ) { j = 0; while ( ( matcher = setMatchers[ j++ ] ) ) { matcher( unmatched, setMatched, context, xml ); } if ( seed ) { // Reintegrate element matches to eliminate the need for sorting if ( matchedCount > 0 ) { while ( i-- ) { if ( !( unmatched[ i ] || setMatched[ i ] ) ) { setMatched[ i ] = pop.call( results ); } } } // Discard index placeholder values to get only actual matches setMatched = condense( setMatched ); } // Add matches to results push.apply( results, setMatched ); // Seedless set matches succeeding multiple successful matchers stipulate sorting if ( outermost && !seed && setMatched.length > 0 && ( matchedCount + setMatchers.length ) > 1 ) { Sizzle.uniqueSort( results ); } } // Override manipulation of globals by nested matchers if ( outermost ) { dirruns = dirrunsUnique; outermostContext = contextBackup; } return unmatched; }; return bySet ? markFunction( superMatcher ) : superMatcher; } compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) { var i, setMatchers = [], elementMatchers = [], cached = compilerCache[ selector + " " ]; if ( !cached ) { // Generate a function of recursive functions that can be used to check each element if ( !match ) { match = tokenize( selector ); } i = match.length; while ( i-- ) { cached = matcherFromTokens( match[ i ] ); if ( cached[ expando ] ) { setMatchers.push( cached ); } else { elementMatchers.push( cached ); } } // Cache the compiled function cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) ); // Save selector and tokenization cached.selector = selector; } return cached; }; /** * A low-level selection function that works with Sizzle's compiled * selector functions * @param {String|Function} selector A selector or a pre-compiled * selector function built with Sizzle.compile * @param {Element} context * @param {Array} [results] * @param {Array} [seed] A set of elements to match against */ select = Sizzle.select = function( selector, context, results, seed ) { var i, tokens, token, type, find, compiled = typeof selector === "function" && selector, match = !seed && tokenize( ( selector = compiled.selector || selector ) ); results = results || []; // Try to minimize operations if there is only one selector in the list and no seed // (the latter of which guarantees us context) if ( match.length === 1 ) { // Reduce context if the leading compound selector is an ID tokens = match[ 0 ] = match[ 0 ].slice( 0 ); if ( tokens.length > 2 && ( token = tokens[ 0 ] ).type === "ID" && context.nodeType === 9 && documentIsHTML && Expr.relative[ tokens[ 1 ].type ] ) { context = ( Expr.find[ "ID" ]( token.matches[ 0 ] .replace( runescape, funescape ), context ) || [] )[ 0 ]; if ( !context ) { return results; // Precompiled matchers will still verify ancestry, so step up a level } else if ( compiled ) { context = context.parentNode; } selector = selector.slice( tokens.shift().value.length ); } // Fetch a seed set for right-to-left matching i = matchExpr[ "needsContext" ].test( selector ) ? 0 : tokens.length; while ( i-- ) { token = tokens[ i ]; // Abort if we hit a combinator if ( Expr.relative[ ( type = token.type ) ] ) { break; } if ( ( find = Expr.find[ type ] ) ) { // Search, expanding context for leading sibling combinators if ( ( seed = find( token.matches[ 0 ].replace( runescape, funescape ), rsibling.test( tokens[ 0 ].type ) && testContext( context.parentNode ) || context ) ) ) { // If seed is empty or no tokens remain, we can return early tokens.splice( i, 1 ); selector = seed.length && toSelector( tokens ); if ( !selector ) { push.apply( results, seed ); return results; } break; } } } } // Compile and execute a filtering function if one is not provided // Provide `match` to avoid retokenization if we modified the selector above ( compiled || compile( selector, match ) )( seed, context, !documentIsHTML, results, !context || rsibling.test( selector ) && testContext( context.parentNode ) || context ); return results; }; // One-time assignments // Sort stability support.sortStable = expando.split( "" ).sort( sortOrder ).join( "" ) === expando; // Support: Chrome 14-35+ // Always assume duplicates if they aren't passed to the comparison function support.detectDuplicates = !!hasDuplicate; // Initialize against the default document setDocument(); // Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27) // Detached nodes confoundingly follow *each other* support.sortDetached = assert( function( el ) { // Should return 1, but returns 4 (following) return el.compareDocumentPosition( document.createElement( "fieldset" ) ) & 1; } ); // Support: IE<8 // Prevent attribute/property "interpolation" // https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx if ( !assert( function( el ) { el.innerHTML = ""; return el.firstChild.getAttribute( "href" ) === "#"; } ) ) { addHandle( "type|href|height|width", function( elem, name, isXML ) { if ( !isXML ) { return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 ); } } ); } // Support: IE<9 // Use defaultValue in place of getAttribute("value") if ( !support.attributes || !assert( function( el ) { el.innerHTML = ""; el.firstChild.setAttribute( "value", "" ); return el.firstChild.getAttribute( "value" ) === ""; } ) ) { addHandle( "value", function( elem, _name, isXML ) { if ( !isXML && elem.nodeName.toLowerCase() === "input" ) { return elem.defaultValue; } } ); } // Support: IE<9 // Use getAttributeNode to fetch booleans when getAttribute lies if ( !assert( function( el ) { return el.getAttribute( "disabled" ) == null; } ) ) { addHandle( booleans, function( elem, name, isXML ) { var val; if ( !isXML ) { return elem[ name ] === true ? name.toLowerCase() : ( val = elem.getAttributeNode( name ) ) && val.specified ? val.value : null; } } ); } return Sizzle; } )( window ); jQuery.find = Sizzle; jQuery.expr = Sizzle.selectors; // Deprecated jQuery.expr[ ":" ] = jQuery.expr.pseudos; jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort; jQuery.text = Sizzle.getText; jQuery.isXMLDoc = Sizzle.isXML; jQuery.contains = Sizzle.contains; jQuery.escapeSelector = Sizzle.escape; var dir = function( elem, dir, until ) { var matched = [], truncate = until !== undefined; while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) { if ( elem.nodeType === 1 ) { if ( truncate && jQuery( elem ).is( until ) ) { break; } matched.push( elem ); } } return matched; }; var siblings = function( n, elem ) { var matched = []; for ( ; n; n = n.nextSibling ) { if ( n.nodeType === 1 && n !== elem ) { matched.push( n ); } } return matched; }; var rneedsContext = jQuery.expr.match.needsContext; function nodeName( elem, name ) { return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); } var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i ); // Implement the identical functionality for filter and not function winnow( elements, qualifier, not ) { if ( isFunction( qualifier ) ) { return jQuery.grep( elements, function( elem, i ) { return !!qualifier.call( elem, i, elem ) !== not; } ); } // Single element if ( qualifier.nodeType ) { return jQuery.grep( elements, function( elem ) { return ( elem === qualifier ) !== not; } ); } // Arraylike of elements (jQuery, arguments, Array) if ( typeof qualifier !== "string" ) { return jQuery.grep( elements, function( elem ) { return ( indexOf.call( qualifier, elem ) > -1 ) !== not; } ); } // Filtered directly for both simple and complex selectors return jQuery.filter( qualifier, elements, not ); } jQuery.filter = function( expr, elems, not ) { var elem = elems[ 0 ]; if ( not ) { expr = ":not(" + expr + ")"; } if ( elems.length === 1 && elem.nodeType === 1 ) { return jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : []; } return jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) { return elem.nodeType === 1; } ) ); }; jQuery.fn.extend( { find: function( selector ) { var i, ret, len = this.length, self = this; if ( typeof selector !== "string" ) { return this.pushStack( jQuery( selector ).filter( function() { for ( i = 0; i < len; i++ ) { if ( jQuery.contains( self[ i ], this ) ) { return true; } } } ) ); } ret = this.pushStack( [] ); for ( i = 0; i < len; i++ ) { jQuery.find( selector, self[ i ], ret ); } return len > 1 ? jQuery.uniqueSort( ret ) : ret; }, filter: function( selector ) { return this.pushStack( winnow( this, selector || [], false ) ); }, not: function( selector ) { return this.pushStack( winnow( this, selector || [], true ) ); }, is: function( selector ) { return !!winnow( this, // If this is a positional/relative selector, check membership in the returned set // so $("p:first").is("p:last") won't return true for a doc with two "p". typeof selector === "string" && rneedsContext.test( selector ) ? jQuery( selector ) : selector || [], false ).length; } } ); // Initialize a jQuery object // A central reference to the root jQuery(document) var rootjQuery, // A simple way to check for HTML strings // Prioritize #id over to avoid XSS via location.hash (#9521) // Strict HTML recognition (#11290: must start with <) // Shortcut simple #id case for speed rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/, init = jQuery.fn.init = function( selector, context, root ) { var match, elem; // HANDLE: $(""), $(null), $(undefined), $(false) if ( !selector ) { return this; } // Method init() accepts an alternate rootjQuery // so migrate can support jQuery.sub (gh-2101) root = root || rootjQuery; // Handle HTML strings if ( typeof selector === "string" ) { if ( selector[ 0 ] === "<" && selector[ selector.length - 1 ] === ">" && selector.length >= 3 ) { // Assume that strings that start and end with <> are HTML and skip the regex check match = [ null, selector, null ]; } else { match = rquickExpr.exec( selector ); } // Match html or make sure no context is specified for #id if ( match && ( match[ 1 ] || !context ) ) { // HANDLE: $(html) -> $(array) if ( match[ 1 ] ) { context = context instanceof jQuery ? context[ 0 ] : context; // Option to run scripts is true for back-compat // Intentionally let the error be thrown if parseHTML is not present jQuery.merge( this, jQuery.parseHTML( match[ 1 ], context && context.nodeType ? context.ownerDocument || context : document, true ) ); // HANDLE: $(html, props) if ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) { for ( match in context ) { // Properties of context are called as methods if possible if ( isFunction( this[ match ] ) ) { this[ match ]( context[ match ] ); // ...and otherwise set as attributes } else { this.attr( match, context[ match ] ); } } } return this; // HANDLE: $(#id) } else { elem = document.getElementById( match[ 2 ] ); if ( elem ) { // Inject the element directly into the jQuery object this[ 0 ] = elem; this.length = 1; } return this; } // HANDLE: $(expr, $(...)) } else if ( !context || context.jquery ) { return ( context || root ).find( selector ); // HANDLE: $(expr, context) // (which is just equivalent to: $(context).find(expr) } else { return this.constructor( context ).find( selector ); } // HANDLE: $(DOMElement) } else if ( selector.nodeType ) { this[ 0 ] = selector; this.length = 1; return this; // HANDLE: $(function) // Shortcut for document ready } else if ( isFunction( selector ) ) { return root.ready !== undefined ? root.ready( selector ) : // Execute immediately if ready is not present selector( jQuery ); } return jQuery.makeArray( selector, this ); }; // Give the init function the jQuery prototype for later instantiation init.prototype = jQuery.fn; // Initialize central reference rootjQuery = jQuery( document ); var rparentsprev = /^(?:parents|prev(?:Until|All))/, // Methods guaranteed to produce a unique set when starting from a unique set guaranteedUnique = { children: true, contents: true, next: true, prev: true }; jQuery.fn.extend( { has: function( target ) { var targets = jQuery( target, this ), l = targets.length; return this.filter( function() { var i = 0; for ( ; i < l; i++ ) { if ( jQuery.contains( this, targets[ i ] ) ) { return true; } } } ); }, closest: function( selectors, context ) { var cur, i = 0, l = this.length, matched = [], targets = typeof selectors !== "string" && jQuery( selectors ); // Positional selectors never match, since there's no _selection_ context if ( !rneedsContext.test( selectors ) ) { for ( ; i < l; i++ ) { for ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) { // Always skip document fragments if ( cur.nodeType < 11 && ( targets ? targets.index( cur ) > -1 : // Don't pass non-elements to Sizzle cur.nodeType === 1 && jQuery.find.matchesSelector( cur, selectors ) ) ) { matched.push( cur ); break; } } } } return this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched ); }, // Determine the position of an element within the set index: function( elem ) { // No argument, return index in parent if ( !elem ) { return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1; } // Index in selector if ( typeof elem === "string" ) { return indexOf.call( jQuery( elem ), this[ 0 ] ); } // Locate the position of the desired element return indexOf.call( this, // If it receives a jQuery object, the first element is used elem.jquery ? elem[ 0 ] : elem ); }, add: function( selector, context ) { return this.pushStack( jQuery.uniqueSort( jQuery.merge( this.get(), jQuery( selector, context ) ) ) ); }, addBack: function( selector ) { return this.add( selector == null ? this.prevObject : this.prevObject.filter( selector ) ); } } ); function sibling( cur, dir ) { while ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {} return cur; } jQuery.each( { parent: function( elem ) { var parent = elem.parentNode; return parent && parent.nodeType !== 11 ? parent : null; }, parents: function( elem ) { return dir( elem, "parentNode" ); }, parentsUntil: function( elem, _i, until ) { return dir( elem, "parentNode", until ); }, next: function( elem ) { return sibling( elem, "nextSibling" ); }, prev: function( elem ) { return sibling( elem, "previousSibling" ); }, nextAll: function( elem ) { return dir( elem, "nextSibling" ); }, prevAll: function( elem ) { return dir( elem, "previousSibling" ); }, nextUntil: function( elem, _i, until ) { return dir( elem, "nextSibling", until ); }, prevUntil: function( elem, _i, until ) { return dir( elem, "previousSibling", until ); }, siblings: function( elem ) { return siblings( ( elem.parentNode || {} ).firstChild, elem ); }, children: function( elem ) { return siblings( elem.firstChild ); }, contents: function( elem ) { if ( elem.contentDocument != null && // Support: IE 11+ // elements with no `data` attribute has an object // `contentDocument` with a `null` prototype. getProto( elem.contentDocument ) ) { return elem.contentDocument; } // Support: IE 9 - 11 only, iOS 7 only, Android Browser <=4.3 only // Treat the template element as a regular one in browsers that // don't support it. if ( nodeName( elem, "template" ) ) { elem = elem.content || elem; } return jQuery.merge( [], elem.childNodes ); } }, function( name, fn ) { jQuery.fn[ name ] = function( until, selector ) { var matched = jQuery.map( this, fn, until ); if ( name.slice( -5 ) !== "Until" ) { selector = until; } if ( selector && typeof selector === "string" ) { matched = jQuery.filter( selector, matched ); } if ( this.length > 1 ) { // Remove duplicates if ( !guaranteedUnique[ name ] ) { jQuery.uniqueSort( matched ); } // Reverse order for parents* and prev-derivatives if ( rparentsprev.test( name ) ) { matched.reverse(); } } return this.pushStack( matched ); }; } ); var rnothtmlwhite = ( /[^\x20\t\r\n\f]+/g ); // Convert String-formatted options into Object-formatted ones function createOptions( options ) { var object = {}; jQuery.each( options.match( rnothtmlwhite ) || [], function( _, flag ) { object[ flag ] = true; } ); return object; } /* * Create a callback list using the following parameters: * * options: an optional list of space-separated options that will change how * the callback list behaves or a more traditional option object * * By default a callback list will act like an event callback list and can be * "fired" multiple times. * * Possible options: * * once: will ensure the callback list can only be fired once (like a Deferred) * * memory: will keep track of previous values and will call any callback added * after the list has been fired right away with the latest "memorized" * values (like a Deferred) * * unique: will ensure a callback can only be added once (no duplicate in the list) * * stopOnFalse: interrupt callings when a callback returns false * */ jQuery.Callbacks = function( options ) { // Convert options from String-formatted to Object-formatted if needed // (we check in cache first) options = typeof options === "string" ? createOptions( options ) : jQuery.extend( {}, options ); var // Flag to know if list is currently firing firing, // Last fire value for non-forgettable lists memory, // Flag to know if list was already fired fired, // Flag to prevent firing locked, // Actual callback list list = [], // Queue of execution data for repeatable lists queue = [], // Index of currently firing callback (modified by add/remove as needed) firingIndex = -1, // Fire callbacks fire = function() { // Enforce single-firing locked = locked || options.once; // Execute callbacks for all pending executions, // respecting firingIndex overrides and runtime changes fired = firing = true; for ( ; queue.length; firingIndex = -1 ) { memory = queue.shift(); while ( ++firingIndex < list.length ) { // Run callback and check for early termination if ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false && options.stopOnFalse ) { // Jump to end and forget the data so .add doesn't re-fire firingIndex = list.length; memory = false; } } } // Forget the data if we're done with it if ( !options.memory ) { memory = false; } firing = false; // Clean up if we're done firing for good if ( locked ) { // Keep an empty list if we have data for future add calls if ( memory ) { list = []; // Otherwise, this object is spent } else { list = ""; } } }, // Actual Callbacks object self = { // Add a callback or a collection of callbacks to the list add: function() { if ( list ) { // If we have memory from a past run, we should fire after adding if ( memory && !firing ) { firingIndex = list.length - 1; queue.push( memory ); } ( function add( args ) { jQuery.each( args, function( _, arg ) { if ( isFunction( arg ) ) { if ( !options.unique || !self.has( arg ) ) { list.push( arg ); } } else if ( arg && arg.length && toType( arg ) !== "string" ) { // Inspect recursively add( arg ); } } ); } )( arguments ); if ( memory && !firing ) { fire(); } } return this; }, // Remove a callback from the list remove: function() { jQuery.each( arguments, function( _, arg ) { var index; while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) { list.splice( index, 1 ); // Handle firing indexes if ( index <= firingIndex ) { firingIndex--; } } } ); return this; }, // Check if a given callback is in the list. // If no argument is given, return whether or not list has callbacks attached. has: function( fn ) { return fn ? jQuery.inArray( fn, list ) > -1 : list.length > 0; }, // Remove all callbacks from the list empty: function() { if ( list ) { list = []; } return this; }, // Disable .fire and .add // Abort any current/pending executions // Clear all callbacks and values disable: function() { locked = queue = []; list = memory = ""; return this; }, disabled: function() { return !list; }, // Disable .fire // Also disable .add unless we have memory (since it would have no effect) // Abort any pending executions lock: function() { locked = queue = []; if ( !memory && !firing ) { list = memory = ""; } return this; }, locked: function() { return !!locked; }, // Call all callbacks with the given context and arguments fireWith: function( context, args ) { if ( !locked ) { args = args || []; args = [ context, args.slice ? args.slice() : args ]; queue.push( args ); if ( !firing ) { fire(); } } return this; }, // Call all the callbacks with the given arguments fire: function() { self.fireWith( this, arguments ); return this; }, // To know if the callbacks have already been called at least once fired: function() { return !!fired; } }; return self; }; function Identity( v ) { return v; } function Thrower( ex ) { throw ex; } function adoptValue( value, resolve, reject, noValue ) { var method; try { // Check for promise aspect first to privilege synchronous behavior if ( value && isFunction( ( method = value.promise ) ) ) { method.call( value ).done( resolve ).fail( reject ); // Other thenables } else if ( value && isFunction( ( method = value.then ) ) ) { method.call( value, resolve, reject ); // Other non-thenables } else { // Control `resolve` arguments by letting Array#slice cast boolean `noValue` to integer: // * false: [ value ].slice( 0 ) => resolve( value ) // * true: [ value ].slice( 1 ) => resolve() resolve.apply( undefined, [ value ].slice( noValue ) ); } // For Promises/A+, convert exceptions into rejections // Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in // Deferred#then to conditionally suppress rejection. } catch ( value ) { // Support: Android 4.0 only // Strict mode functions invoked without .call/.apply get global-object context reject.apply( undefined, [ value ] ); } } jQuery.extend( { Deferred: function( func ) { var tuples = [ // action, add listener, callbacks, // ... .then handlers, argument index, [final state] [ "notify", "progress", jQuery.Callbacks( "memory" ), jQuery.Callbacks( "memory" ), 2 ], [ "resolve", "done", jQuery.Callbacks( "once memory" ), jQuery.Callbacks( "once memory" ), 0, "resolved" ], [ "reject", "fail", jQuery.Callbacks( "once memory" ), jQuery.Callbacks( "once memory" ), 1, "rejected" ] ], state = "pending", promise = { state: function() { return state; }, always: function() { deferred.done( arguments ).fail( arguments ); return this; }, "catch": function( fn ) { return promise.then( null, fn ); }, // Keep pipe for back-compat pipe: function( /* fnDone, fnFail, fnProgress */ ) { var fns = arguments; return jQuery.Deferred( function( newDefer ) { jQuery.each( tuples, function( _i, tuple ) { // Map tuples (progress, done, fail) to arguments (done, fail, progress) var fn = isFunction( fns[ tuple[ 4 ] ] ) && fns[ tuple[ 4 ] ]; // deferred.progress(function() { bind to newDefer or newDefer.notify }) // deferred.done(function() { bind to newDefer or newDefer.resolve }) // deferred.fail(function() { bind to newDefer or newDefer.reject }) deferred[ tuple[ 1 ] ]( function() { var returned = fn && fn.apply( this, arguments ); if ( returned && isFunction( returned.promise ) ) { returned.promise() .progress( newDefer.notify ) .done( newDefer.resolve ) .fail( newDefer.reject ); } else { newDefer[ tuple[ 0 ] + "With" ]( this, fn ? [ returned ] : arguments ); } } ); } ); fns = null; } ).promise(); }, then: function( onFulfilled, onRejected, onProgress ) { var maxDepth = 0; function resolve( depth, deferred, handler, special ) { return function() { var that = this, args = arguments, mightThrow = function() { var returned, then; // Support: Promises/A+ section 2.3.3.3.3 // https://promisesaplus.com/#point-59 // Ignore double-resolution attempts if ( depth < maxDepth ) { return; } returned = handler.apply( that, args ); // Support: Promises/A+ section 2.3.1 // https://promisesaplus.com/#point-48 if ( returned === deferred.promise() ) { throw new TypeError( "Thenable self-resolution" ); } // Support: Promises/A+ sections 2.3.3.1, 3.5 // https://promisesaplus.com/#point-54 // https://promisesaplus.com/#point-75 // Retrieve `then` only once then = returned && // Support: Promises/A+ section 2.3.4 // https://promisesaplus.com/#point-64 // Only check objects and functions for thenability ( typeof returned === "object" || typeof returned === "function" ) && returned.then; // Handle a returned thenable if ( isFunction( then ) ) { // Special processors (notify) just wait for resolution if ( special ) { then.call( returned, resolve( maxDepth, deferred, Identity, special ), resolve( maxDepth, deferred, Thrower, special ) ); // Normal processors (resolve) also hook into progress } else { // ...and disregard older resolution values maxDepth++; then.call( returned, resolve( maxDepth, deferred, Identity, special ), resolve( maxDepth, deferred, Thrower, special ), resolve( maxDepth, deferred, Identity, deferred.notifyWith ) ); } // Handle all other returned values } else { // Only substitute handlers pass on context // and multiple values (non-spec behavior) if ( handler !== Identity ) { that = undefined; args = [ returned ]; } // Process the value(s) // Default process is resolve ( special || deferred.resolveWith )( that, args ); } }, // Only normal processors (resolve) catch and reject exceptions process = special ? mightThrow : function() { try { mightThrow(); } catch ( e ) { if ( jQuery.Deferred.exceptionHook ) { jQuery.Deferred.exceptionHook( e, process.stackTrace ); } // Support: Promises/A+ section 2.3.3.3.4.1 // https://promisesaplus.com/#point-61 // Ignore post-resolution exceptions if ( depth + 1 >= maxDepth ) { // Only substitute handlers pass on context // and multiple values (non-spec behavior) if ( handler !== Thrower ) { that = undefined; args = [ e ]; } deferred.rejectWith( that, args ); } } }; // Support: Promises/A+ section 2.3.3.3.1 // https://promisesaplus.com/#point-57 // Re-resolve promises immediately to dodge false rejection from // subsequent errors if ( depth ) { process(); } else { // Call an optional hook to record the stack, in case of exception // since it's otherwise lost when execution goes async if ( jQuery.Deferred.getStackHook ) { process.stackTrace = jQuery.Deferred.getStackHook(); } window.setTimeout( process ); } }; } return jQuery.Deferred( function( newDefer ) { // progress_handlers.add( ... ) tuples[ 0 ][ 3 ].add( resolve( 0, newDefer, isFunction( onProgress ) ? onProgress : Identity, newDefer.notifyWith ) ); // fulfilled_handlers.add( ... ) tuples[ 1 ][ 3 ].add( resolve( 0, newDefer, isFunction( onFulfilled ) ? onFulfilled : Identity ) ); // rejected_handlers.add( ... ) tuples[ 2 ][ 3 ].add( resolve( 0, newDefer, isFunction( onRejected ) ? onRejected : Thrower ) ); } ).promise(); }, // Get a promise for this deferred // If obj is provided, the promise aspect is added to the object promise: function( obj ) { return obj != null ? jQuery.extend( obj, promise ) : promise; } }, deferred = {}; // Add list-specific methods jQuery.each( tuples, function( i, tuple ) { var list = tuple[ 2 ], stateString = tuple[ 5 ]; // promise.progress = list.add // promise.done = list.add // promise.fail = list.add promise[ tuple[ 1 ] ] = list.add; // Handle state if ( stateString ) { list.add( function() { // state = "resolved" (i.e., fulfilled) // state = "rejected" state = stateString; }, // rejected_callbacks.disable // fulfilled_callbacks.disable tuples[ 3 - i ][ 2 ].disable, // rejected_handlers.disable // fulfilled_handlers.disable tuples[ 3 - i ][ 3 ].disable, // progress_callbacks.lock tuples[ 0 ][ 2 ].lock, // progress_handlers.lock tuples[ 0 ][ 3 ].lock ); } // progress_handlers.fire // fulfilled_handlers.fire // rejected_handlers.fire list.add( tuple[ 3 ].fire ); // deferred.notify = function() { deferred.notifyWith(...) } // deferred.resolve = function() { deferred.resolveWith(...) } // deferred.reject = function() { deferred.rejectWith(...) } deferred[ tuple[ 0 ] ] = function() { deferred[ tuple[ 0 ] + "With" ]( this === deferred ? undefined : this, arguments ); return this; }; // deferred.notifyWith = list.fireWith // deferred.resolveWith = list.fireWith // deferred.rejectWith = list.fireWith deferred[ tuple[ 0 ] + "With" ] = list.fireWith; } ); // Make the deferred a promise promise.promise( deferred ); // Call given func if any if ( func ) { func.call( deferred, deferred ); } // All done! return deferred; }, // Deferred helper when: function( singleValue ) { var // count of uncompleted subordinates remaining = arguments.length, // count of unprocessed arguments i = remaining, // subordinate fulfillment data resolveContexts = Array( i ), resolveValues = slice.call( arguments ), // the primary Deferred primary = jQuery.Deferred(), // subordinate callback factory updateFunc = function( i ) { return function( value ) { resolveContexts[ i ] = this; resolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value; if ( !( --remaining ) ) { primary.resolveWith( resolveContexts, resolveValues ); } }; }; // Single- and empty arguments are adopted like Promise.resolve if ( remaining <= 1 ) { adoptValue( singleValue, primary.done( updateFunc( i ) ).resolve, primary.reject, !remaining ); // Use .then() to unwrap secondary thenables (cf. gh-3000) if ( primary.state() === "pending" || isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) { return primary.then(); } } // Multiple arguments are aggregated like Promise.all array elements while ( i-- ) { adoptValue( resolveValues[ i ], updateFunc( i ), primary.reject ); } return primary.promise(); } } ); // These usually indicate a programmer mistake during development, // warn about them ASAP rather than swallowing them by default. var rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/; jQuery.Deferred.exceptionHook = function( error, stack ) { // Support: IE 8 - 9 only // Console exists when dev tools are open, which can happen at any time if ( window.console && window.console.warn && error && rerrorNames.test( error.name ) ) { window.console.warn( "jQuery.Deferred exception: " + error.message, error.stack, stack ); } }; jQuery.readyException = function( error ) { window.setTimeout( function() { throw error; } ); }; // The deferred used on DOM ready var readyList = jQuery.Deferred(); jQuery.fn.ready = function( fn ) { readyList .then( fn ) // Wrap jQuery.readyException in a function so that the lookup // happens at the time of error handling instead of callback // registration. .catch( function( error ) { jQuery.readyException( error ); } ); return this; }; jQuery.extend( { // Is the DOM ready to be used? Set to true once it occurs. isReady: false, // A counter to track how many items to wait for before // the ready event fires. See #6781 readyWait: 1, // Handle when the DOM is ready ready: function( wait ) { // Abort if there are pending holds or we're already ready if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) { return; } // Remember that the DOM is ready jQuery.isReady = true; // If a normal DOM Ready event fired, decrement, and wait if need be if ( wait !== true && --jQuery.readyWait > 0 ) { return; } // If there are functions bound, to execute readyList.resolveWith( document, [ jQuery ] ); } } ); jQuery.ready.then = readyList.then; // The ready event handler and self cleanup method function completed() { document.removeEventListener( "DOMContentLoaded", completed ); window.removeEventListener( "load", completed ); jQuery.ready(); } // Catch cases where $(document).ready() is called // after the browser event has already occurred. // Support: IE <=9 - 10 only // Older IE sometimes signals "interactive" too soon if ( document.readyState === "complete" || ( document.readyState !== "loading" && !document.documentElement.doScroll ) ) { // Handle it asynchronously to allow scripts the opportunity to delay ready window.setTimeout( jQuery.ready ); } else { // Use the handy event callback document.addEventListener( "DOMContentLoaded", completed ); // A fallback to window.onload, that will always work window.addEventListener( "load", completed ); } // Multifunctional method to get and set values of a collection // The value/s can optionally be executed if it's a function var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { var i = 0, len = elems.length, bulk = key == null; // Sets many values if ( toType( key ) === "object" ) { chainable = true; for ( i in key ) { access( elems, fn, i, key[ i ], true, emptyGet, raw ); } // Sets one value } else if ( value !== undefined ) { chainable = true; if ( !isFunction( value ) ) { raw = true; } if ( bulk ) { // Bulk operations run against the entire set if ( raw ) { fn.call( elems, value ); fn = null; // ...except when executing function values } else { bulk = fn; fn = function( elem, _key, value ) { return bulk.call( jQuery( elem ), value ); }; } } if ( fn ) { for ( ; i < len; i++ ) { fn( elems[ i ], key, raw ? value : value.call( elems[ i ], i, fn( elems[ i ], key ) ) ); } } } if ( chainable ) { return elems; } // Gets if ( bulk ) { return fn.call( elems ); } return len ? fn( elems[ 0 ], key ) : emptyGet; }; // Matches dashed string for camelizing var rmsPrefix = /^-ms-/, rdashAlpha = /-([a-z])/g; // Used by camelCase as callback to replace() function fcamelCase( _all, letter ) { return letter.toUpperCase(); } // Convert dashed to camelCase; used by the css and data modules // Support: IE <=9 - 11, Edge 12 - 15 // Microsoft forgot to hump their vendor prefix (#9572) function camelCase( string ) { return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); } var acceptData = function( owner ) { // Accepts only: // - Node // - Node.ELEMENT_NODE // - Node.DOCUMENT_NODE // - Object // - Any return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType ); }; function Data() { this.expando = jQuery.expando + Data.uid++; } Data.uid = 1; Data.prototype = { cache: function( owner ) { // Check if the owner object already has a cache var value = owner[ this.expando ]; // If not, create one if ( !value ) { value = {}; // We can accept data for non-element nodes in modern browsers, // but we should not, see #8335. // Always return an empty object. if ( acceptData( owner ) ) { // If it is a node unlikely to be stringify-ed or looped over // use plain assignment if ( owner.nodeType ) { owner[ this.expando ] = value; // Otherwise secure it in a non-enumerable property // configurable must be true to allow the property to be // deleted when data is removed } else { Object.defineProperty( owner, this.expando, { value: value, configurable: true } ); } } } return value; }, set: function( owner, data, value ) { var prop, cache = this.cache( owner ); // Handle: [ owner, key, value ] args // Always use camelCase key (gh-2257) if ( typeof data === "string" ) { cache[ camelCase( data ) ] = value; // Handle: [ owner, { properties } ] args } else { // Copy the properties one-by-one to the cache object for ( prop in data ) { cache[ camelCase( prop ) ] = data[ prop ]; } } return cache; }, get: function( owner, key ) { return key === undefined ? this.cache( owner ) : // Always use camelCase key (gh-2257) owner[ this.expando ] && owner[ this.expando ][ camelCase( key ) ]; }, access: function( owner, key, value ) { // In cases where either: // // 1. No key was specified // 2. A string key was specified, but no value provided // // Take the "read" path and allow the get method to determine // which value to return, respectively either: // // 1. The entire cache object // 2. The data stored at the key // if ( key === undefined || ( ( key && typeof key === "string" ) && value === undefined ) ) { return this.get( owner, key ); } // When the key is not a string, or both a key and value // are specified, set or extend (existing objects) with either: // // 1. An object of properties // 2. A key and value // this.set( owner, key, value ); // Since the "set" path can have two possible entry points // return the expected data based on which path was taken[*] return value !== undefined ? value : key; }, remove: function( owner, key ) { var i, cache = owner[ this.expando ]; if ( cache === undefined ) { return; } if ( key !== undefined ) { // Support array or space separated string of keys if ( Array.isArray( key ) ) { // If key is an array of keys... // We always set camelCase keys, so remove that. key = key.map( camelCase ); } else { key = camelCase( key ); // If a key with the spaces exists, use it. // Otherwise, create an array by matching non-whitespace key = key in cache ? [ key ] : ( key.match( rnothtmlwhite ) || [] ); } i = key.length; while ( i-- ) { delete cache[ key[ i ] ]; } } // Remove the expando if there's no more data if ( key === undefined || jQuery.isEmptyObject( cache ) ) { // Support: Chrome <=35 - 45 // Webkit & Blink performance suffers when deleting properties // from DOM nodes, so set to undefined instead // https://bugs.chromium.org/p/chromium/issues/detail?id=378607 (bug restricted) if ( owner.nodeType ) { owner[ this.expando ] = undefined; } else { delete owner[ this.expando ]; } } }, hasData: function( owner ) { var cache = owner[ this.expando ]; return cache !== undefined && !jQuery.isEmptyObject( cache ); } }; var dataPriv = new Data(); var dataUser = new Data(); // Implementation Summary // // 1. Enforce API surface and semantic compatibility with 1.9.x branch // 2. Improve the module's maintainability by reducing the storage // paths to a single mechanism. // 3. Use the same single mechanism to support "private" and "user" data. // 4. _Never_ expose "private" data to user code (TODO: Drop _data, _removeData) // 5. Avoid exposing implementation details on user objects (eg. expando properties) // 6. Provide a clear path for implementation upgrade to WeakMap in 2014 var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, rmultiDash = /[A-Z]/g; function getData( data ) { if ( data === "true" ) { return true; } if ( data === "false" ) { return false; } if ( data === "null" ) { return null; } // Only convert to a number if it doesn't change the string if ( data === +data + "" ) { return +data; } if ( rbrace.test( data ) ) { return JSON.parse( data ); } return data; } function dataAttr( elem, key, data ) { var name; // If nothing was found internally, try to fetch any // data from the HTML5 data-* attribute if ( data === undefined && elem.nodeType === 1 ) { name = "data-" + key.replace( rmultiDash, "-$&" ).toLowerCase(); data = elem.getAttribute( name ); if ( typeof data === "string" ) { try { data = getData( data ); } catch ( e ) {} // Make sure we set the data so it isn't changed later dataUser.set( elem, key, data ); } else { data = undefined; } } return data; } jQuery.extend( { hasData: function( elem ) { return dataUser.hasData( elem ) || dataPriv.hasData( elem ); }, data: function( elem, name, data ) { return dataUser.access( elem, name, data ); }, removeData: function( elem, name ) { dataUser.remove( elem, name ); }, // TODO: Now that all calls to _data and _removeData have been replaced // with direct calls to dataPriv methods, these can be deprecated. _data: function( elem, name, data ) { return dataPriv.access( elem, name, data ); }, _removeData: function( elem, name ) { dataPriv.remove( elem, name ); } } ); jQuery.fn.extend( { data: function( key, value ) { var i, name, data, elem = this[ 0 ], attrs = elem && elem.attributes; // Gets all values if ( key === undefined ) { if ( this.length ) { data = dataUser.get( elem ); if ( elem.nodeType === 1 && !dataPriv.get( elem, "hasDataAttrs" ) ) { i = attrs.length; while ( i-- ) { // Support: IE 11 only // The attrs elements can be null (#14894) if ( attrs[ i ] ) { name = attrs[ i ].name; if ( name.indexOf( "data-" ) === 0 ) { name = camelCase( name.slice( 5 ) ); dataAttr( elem, name, data[ name ] ); } } } dataPriv.set( elem, "hasDataAttrs", true ); } } return data; } // Sets multiple values if ( typeof key === "object" ) { return this.each( function() { dataUser.set( this, key ); } ); } return access( this, function( value ) { var data; // The calling jQuery object (element matches) is not empty // (and therefore has an element appears at this[ 0 ]) and the // `value` parameter was not undefined. An empty jQuery object // will result in `undefined` for elem = this[ 0 ] which will // throw an exception if an attempt to read a data cache is made. if ( elem && value === undefined ) { // Attempt to get data from the cache // The key will always be camelCased in Data data = dataUser.get( elem, key ); if ( data !== undefined ) { return data; } // Attempt to "discover" the data in // HTML5 custom data-* attrs data = dataAttr( elem, key ); if ( data !== undefined ) { return data; } // We tried really hard, but the data doesn't exist. return; } // Set the data... this.each( function() { // We always store the camelCased key dataUser.set( this, key, value ); } ); }, null, value, arguments.length > 1, null, true ); }, removeData: function( key ) { return this.each( function() { dataUser.remove( this, key ); } ); } } ); jQuery.extend( { queue: function( elem, type, data ) { var queue; if ( elem ) { type = ( type || "fx" ) + "queue"; queue = dataPriv.get( elem, type ); // Speed up dequeue by getting out quickly if this is just a lookup if ( data ) { if ( !queue || Array.isArray( data ) ) { queue = dataPriv.access( elem, type, jQuery.makeArray( data ) ); } else { queue.push( data ); } } return queue || []; } }, dequeue: function( elem, type ) { type = type || "fx"; var queue = jQuery.queue( elem, type ), startLength = queue.length, fn = queue.shift(), hooks = jQuery._queueHooks( elem, type ), next = function() { jQuery.dequeue( elem, type ); }; // If the fx queue is dequeued, always remove the progress sentinel if ( fn === "inprogress" ) { fn = queue.shift(); startLength--; } if ( fn ) { // Add a progress sentinel to prevent the fx queue from being // automatically dequeued if ( type === "fx" ) { queue.unshift( "inprogress" ); } // Clear up the last queue stop function delete hooks.stop; fn.call( elem, next, hooks ); } if ( !startLength && hooks ) { hooks.empty.fire(); } }, // Not public - generate a queueHooks object, or return the current one _queueHooks: function( elem, type ) { var key = type + "queueHooks"; return dataPriv.get( elem, key ) || dataPriv.access( elem, key, { empty: jQuery.Callbacks( "once memory" ).add( function() { dataPriv.remove( elem, [ type + "queue", key ] ); } ) } ); } } ); jQuery.fn.extend( { queue: function( type, data ) { var setter = 2; if ( typeof type !== "string" ) { data = type; type = "fx"; setter--; } if ( arguments.length < setter ) { return jQuery.queue( this[ 0 ], type ); } return data === undefined ? this : this.each( function() { var queue = jQuery.queue( this, type, data ); // Ensure a hooks for this queue jQuery._queueHooks( this, type ); if ( type === "fx" && queue[ 0 ] !== "inprogress" ) { jQuery.dequeue( this, type ); } } ); }, dequeue: function( type ) { return this.each( function() { jQuery.dequeue( this, type ); } ); }, clearQueue: function( type ) { return this.queue( type || "fx", [] ); }, // Get a promise resolved when queues of a certain type // are emptied (fx is the type by default) promise: function( type, obj ) { var tmp, count = 1, defer = jQuery.Deferred(), elements = this, i = this.length, resolve = function() { if ( !( --count ) ) { defer.resolveWith( elements, [ elements ] ); } }; if ( typeof type !== "string" ) { obj = type; type = undefined; } type = type || "fx"; while ( i-- ) { tmp = dataPriv.get( elements[ i ], type + "queueHooks" ); if ( tmp && tmp.empty ) { count++; tmp.empty.add( resolve ); } } resolve(); return defer.promise( obj ); } } ); var pnum = ( /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/ ).source; var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" ); var cssExpand = [ "Top", "Right", "Bottom", "Left" ]; var documentElement = document.documentElement; var isAttached = function( elem ) { return jQuery.contains( elem.ownerDocument, elem ); }, composed = { composed: true }; // Support: IE 9 - 11+, Edge 12 - 18+, iOS 10.0 - 10.2 only // Check attachment across shadow DOM boundaries when possible (gh-3504) // Support: iOS 10.0-10.2 only // Early iOS 10 versions support `attachShadow` but not `getRootNode`, // leading to errors. We need to check for `getRootNode`. if ( documentElement.getRootNode ) { isAttached = function( elem ) { return jQuery.contains( elem.ownerDocument, elem ) || elem.getRootNode( composed ) === elem.ownerDocument; }; } var isHiddenWithinTree = function( elem, el ) { // isHiddenWithinTree might be called from jQuery#filter function; // in that case, element will be second argument elem = el || elem; // Inline style trumps all return elem.style.display === "none" || elem.style.display === "" && // Otherwise, check computed style // Support: Firefox <=43 - 45 // Disconnected elements can have computed display: none, so first confirm that elem is // in the document. isAttached( elem ) && jQuery.css( elem, "display" ) === "none"; }; function adjustCSS( elem, prop, valueParts, tween ) { var adjusted, scale, maxIterations = 20, currentValue = tween ? function() { return tween.cur(); } : function() { return jQuery.css( elem, prop, "" ); }, initial = currentValue(), unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ), // Starting value computation is required for potential unit mismatches initialInUnit = elem.nodeType && ( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) && rcssNum.exec( jQuery.css( elem, prop ) ); if ( initialInUnit && initialInUnit[ 3 ] !== unit ) { // Support: Firefox <=54 // Halve the iteration target value to prevent interference from CSS upper bounds (gh-2144) initial = initial / 2; // Trust units reported by jQuery.css unit = unit || initialInUnit[ 3 ]; // Iteratively approximate from a nonzero starting point initialInUnit = +initial || 1; while ( maxIterations-- ) { // Evaluate and update our best guess (doubling guesses that zero out). // Finish if the scale equals or crosses 1 (making the old*new product non-positive). jQuery.style( elem, prop, initialInUnit + unit ); if ( ( 1 - scale ) * ( 1 - ( scale = currentValue() / initial || 0.5 ) ) <= 0 ) { maxIterations = 0; } initialInUnit = initialInUnit / scale; } initialInUnit = initialInUnit * 2; jQuery.style( elem, prop, initialInUnit + unit ); // Make sure we update the tween properties later on valueParts = valueParts || []; } if ( valueParts ) { initialInUnit = +initialInUnit || +initial || 0; // Apply relative offset (+=/-=) if specified adjusted = valueParts[ 1 ] ? initialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] : +valueParts[ 2 ]; if ( tween ) { tween.unit = unit; tween.start = initialInUnit; tween.end = adjusted; } } return adjusted; } var defaultDisplayMap = {}; function getDefaultDisplay( elem ) { var temp, doc = elem.ownerDocument, nodeName = elem.nodeName, display = defaultDisplayMap[ nodeName ]; if ( display ) { return display; } temp = doc.body.appendChild( doc.createElement( nodeName ) ); display = jQuery.css( temp, "display" ); temp.parentNode.removeChild( temp ); if ( display === "none" ) { display = "block"; } defaultDisplayMap[ nodeName ] = display; return display; } function showHide( elements, show ) { var display, elem, values = [], index = 0, length = elements.length; // Determine new display value for elements that need to change for ( ; index < length; index++ ) { elem = elements[ index ]; if ( !elem.style ) { continue; } display = elem.style.display; if ( show ) { // Since we force visibility upon cascade-hidden elements, an immediate (and slow) // check is required in this first loop unless we have a nonempty display value (either // inline or about-to-be-restored) if ( display === "none" ) { values[ index ] = dataPriv.get( elem, "display" ) || null; if ( !values[ index ] ) { elem.style.display = ""; } } if ( elem.style.display === "" && isHiddenWithinTree( elem ) ) { values[ index ] = getDefaultDisplay( elem ); } } else { if ( display !== "none" ) { values[ index ] = "none"; // Remember what we're overwriting dataPriv.set( elem, "display", display ); } } } // Set the display of the elements in a second loop to avoid constant reflow for ( index = 0; index < length; index++ ) { if ( values[ index ] != null ) { elements[ index ].style.display = values[ index ]; } } return elements; } jQuery.fn.extend( { show: function() { return showHide( this, true ); }, hide: function() { return showHide( this ); }, toggle: function( state ) { if ( typeof state === "boolean" ) { return state ? this.show() : this.hide(); } return this.each( function() { if ( isHiddenWithinTree( this ) ) { jQuery( this ).show(); } else { jQuery( this ).hide(); } } ); } } ); var rcheckableType = ( /^(?:checkbox|radio)$/i ); var rtagName = ( /<([a-z][^\/\0>\x20\t\r\n\f]*)/i ); var rscriptType = ( /^$|^module$|\/(?:java|ecma)script/i ); ( function() { var fragment = document.createDocumentFragment(), div = fragment.appendChild( document.createElement( "div" ) ), input = document.createElement( "input" ); // Support: Android 4.0 - 4.3 only // Check state lost if the name is set (#11217) // Support: Windows Web Apps (WWA) // `name` and `type` must use .setAttribute for WWA (#14901) input.setAttribute( "type", "radio" ); input.setAttribute( "checked", "checked" ); input.setAttribute( "name", "t" ); div.appendChild( input ); // Support: Android <=4.1 only // Older WebKit doesn't clone checked state correctly in fragments support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked; // Support: IE <=11 only // Make sure textarea (and checkbox) defaultValue is properly cloned div.innerHTML = ""; support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; // Support: IE <=9 only // IE <=9 replaces "; support.option = !!div.lastChild; } )(); // We have to close these tags to support XHTML (#13200) var wrapMap = { // XHTML parsers do not magically insert elements in the // same way that tag soup parsers do. So we cannot shorten // this by omitting or other required elements. thead: [ 1, "", "
" ], col: [ 2, "", "
" ], tr: [ 2, "", "
" ], td: [ 3, "", "
" ], _default: [ 0, "", "" ] }; wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; wrapMap.th = wrapMap.td; // Support: IE <=9 only if ( !support.option ) { wrapMap.optgroup = wrapMap.option = [ 1, "" ]; } function getAll( context, tag ) { // Support: IE <=9 - 11 only // Use typeof to avoid zero-argument method invocation on host objects (#15151) var ret; if ( typeof context.getElementsByTagName !== "undefined" ) { ret = context.getElementsByTagName( tag || "*" ); } else if ( typeof context.querySelectorAll !== "undefined" ) { ret = context.querySelectorAll( tag || "*" ); } else { ret = []; } if ( tag === undefined || tag && nodeName( context, tag ) ) { return jQuery.merge( [ context ], ret ); } return ret; } // Mark scripts as having already been evaluated function setGlobalEval( elems, refElements ) { var i = 0, l = elems.length; for ( ; i < l; i++ ) { dataPriv.set( elems[ i ], "globalEval", !refElements || dataPriv.get( refElements[ i ], "globalEval" ) ); } } var rhtml = /<|&#?\w+;/; function buildFragment( elems, context, scripts, selection, ignored ) { var elem, tmp, tag, wrap, attached, j, fragment = context.createDocumentFragment(), nodes = [], i = 0, l = elems.length; for ( ; i < l; i++ ) { elem = elems[ i ]; if ( elem || elem === 0 ) { // Add nodes directly if ( toType( elem ) === "object" ) { // Support: Android <=4.0 only, PhantomJS 1 only // push.apply(_, arraylike) throws on ancient WebKit jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem ); // Convert non-html into a text node } else if ( !rhtml.test( elem ) ) { nodes.push( context.createTextNode( elem ) ); // Convert html into DOM nodes } else { tmp = tmp || fragment.appendChild( context.createElement( "div" ) ); // Deserialize a standard representation tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase(); wrap = wrapMap[ tag ] || wrapMap._default; tmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ]; // Descend through wrappers to the right content j = wrap[ 0 ]; while ( j-- ) { tmp = tmp.lastChild; } // Support: Android <=4.0 only, PhantomJS 1 only // push.apply(_, arraylike) throws on ancient WebKit jQuery.merge( nodes, tmp.childNodes ); // Remember the top-level container tmp = fragment.firstChild; // Ensure the created nodes are orphaned (#12392) tmp.textContent = ""; } } } // Remove wrapper from fragment fragment.textContent = ""; i = 0; while ( ( elem = nodes[ i++ ] ) ) { // Skip elements already in the context collection (trac-4087) if ( selection && jQuery.inArray( elem, selection ) > -1 ) { if ( ignored ) { ignored.push( elem ); } continue; } attached = isAttached( elem ); // Append to fragment tmp = getAll( fragment.appendChild( elem ), "script" ); // Preserve script evaluation history if ( attached ) { setGlobalEval( tmp ); } // Capture executables if ( scripts ) { j = 0; while ( ( elem = tmp[ j++ ] ) ) { if ( rscriptType.test( elem.type || "" ) ) { scripts.push( elem ); } } } } return fragment; } var rtypenamespace = /^([^.]*)(?:\.(.+)|)/; function returnTrue() { return true; } function returnFalse() { return false; } // Support: IE <=9 - 11+ // focus() and blur() are asynchronous, except when they are no-op. // So expect focus to be synchronous when the element is already active, // and blur to be synchronous when the element is not already active. // (focus and blur are always synchronous in other supported browsers, // this just defines when we can count on it). function expectSync( elem, type ) { return ( elem === safeActiveElement() ) === ( type === "focus" ); } // Support: IE <=9 only // Accessing document.activeElement can throw unexpectedly // https://bugs.jquery.com/ticket/13393 function safeActiveElement() { try { return document.activeElement; } catch ( err ) { } } function on( elem, types, selector, data, fn, one ) { var origFn, type; // Types can be a map of types/handlers if ( typeof types === "object" ) { // ( types-Object, selector, data ) if ( typeof selector !== "string" ) { // ( types-Object, data ) data = data || selector; selector = undefined; } for ( type in types ) { on( elem, type, selector, data, types[ type ], one ); } return elem; } if ( data == null && fn == null ) { // ( types, fn ) fn = selector; data = selector = undefined; } else if ( fn == null ) { if ( typeof selector === "string" ) { // ( types, selector, fn ) fn = data; data = undefined; } else { // ( types, data, fn ) fn = data; data = selector; selector = undefined; } } if ( fn === false ) { fn = returnFalse; } else if ( !fn ) { return elem; } if ( one === 1 ) { origFn = fn; fn = function( event ) { // Can use an empty set, since event contains the info jQuery().off( event ); return origFn.apply( this, arguments ); }; // Use same guid so caller can remove using origFn fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ ); } return elem.each( function() { jQuery.event.add( this, types, fn, data, selector ); } ); } /* * Helper functions for managing events -- not part of the public interface. * Props to Dean Edwards' addEvent library for many of the ideas. */ jQuery.event = { global: {}, add: function( elem, types, handler, data, selector ) { var handleObjIn, eventHandle, tmp, events, t, handleObj, special, handlers, type, namespaces, origType, elemData = dataPriv.get( elem ); // Only attach events to objects that accept data if ( !acceptData( elem ) ) { return; } // Caller can pass in an object of custom data in lieu of the handler if ( handler.handler ) { handleObjIn = handler; handler = handleObjIn.handler; selector = handleObjIn.selector; } // Ensure that invalid selectors throw exceptions at attach time // Evaluate against documentElement in case elem is a non-element node (e.g., document) if ( selector ) { jQuery.find.matchesSelector( documentElement, selector ); } // Make sure that the handler has a unique ID, used to find/remove it later if ( !handler.guid ) { handler.guid = jQuery.guid++; } // Init the element's event structure and main handler, if this is the first if ( !( events = elemData.events ) ) { events = elemData.events = Object.create( null ); } if ( !( eventHandle = elemData.handle ) ) { eventHandle = elemData.handle = function( e ) { // Discard the second event of a jQuery.event.trigger() and // when an event is called after a page has unloaded return typeof jQuery !== "undefined" && jQuery.event.triggered !== e.type ? jQuery.event.dispatch.apply( elem, arguments ) : undefined; }; } // Handle multiple events separated by a space types = ( types || "" ).match( rnothtmlwhite ) || [ "" ]; t = types.length; while ( t-- ) { tmp = rtypenamespace.exec( types[ t ] ) || []; type = origType = tmp[ 1 ]; namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); // There *must* be a type, no attaching namespace-only handlers if ( !type ) { continue; } // If event changes its type, use the special event handlers for the changed type special = jQuery.event.special[ type ] || {}; // If selector defined, determine special event api type, otherwise given type type = ( selector ? special.delegateType : special.bindType ) || type; // Update special based on newly reset type special = jQuery.event.special[ type ] || {}; // handleObj is passed to all event handlers handleObj = jQuery.extend( { type: type, origType: origType, data: data, handler: handler, guid: handler.guid, selector: selector, needsContext: selector && jQuery.expr.match.needsContext.test( selector ), namespace: namespaces.join( "." ) }, handleObjIn ); // Init the event handler queue if we're the first if ( !( handlers = events[ type ] ) ) { handlers = events[ type ] = []; handlers.delegateCount = 0; // Only use addEventListener if the special events handler returns false if ( !special.setup || special.setup.call( elem, data, namespaces, eventHandle ) === false ) { if ( elem.addEventListener ) { elem.addEventListener( type, eventHandle ); } } } if ( special.add ) { special.add.call( elem, handleObj ); if ( !handleObj.handler.guid ) { handleObj.handler.guid = handler.guid; } } // Add to the element's handler list, delegates in front if ( selector ) { handlers.splice( handlers.delegateCount++, 0, handleObj ); } else { handlers.push( handleObj ); } // Keep track of which events have ever been used, for event optimization jQuery.event.global[ type ] = true; } }, // Detach an event or set of events from an element remove: function( elem, types, handler, selector, mappedTypes ) { var j, origCount, tmp, events, t, handleObj, special, handlers, type, namespaces, origType, elemData = dataPriv.hasData( elem ) && dataPriv.get( elem ); if ( !elemData || !( events = elemData.events ) ) { return; } // Once for each type.namespace in types; type may be omitted types = ( types || "" ).match( rnothtmlwhite ) || [ "" ]; t = types.length; while ( t-- ) { tmp = rtypenamespace.exec( types[ t ] ) || []; type = origType = tmp[ 1 ]; namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); // Unbind all events (on this namespace, if provided) for the element if ( !type ) { for ( type in events ) { jQuery.event.remove( elem, type + types[ t ], handler, selector, true ); } continue; } special = jQuery.event.special[ type ] || {}; type = ( selector ? special.delegateType : special.bindType ) || type; handlers = events[ type ] || []; tmp = tmp[ 2 ] && new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ); // Remove matching events origCount = j = handlers.length; while ( j-- ) { handleObj = handlers[ j ]; if ( ( mappedTypes || origType === handleObj.origType ) && ( !handler || handler.guid === handleObj.guid ) && ( !tmp || tmp.test( handleObj.namespace ) ) && ( !selector || selector === handleObj.selector || selector === "**" && handleObj.selector ) ) { handlers.splice( j, 1 ); if ( handleObj.selector ) { handlers.delegateCount--; } if ( special.remove ) { special.remove.call( elem, handleObj ); } } } // Remove generic event handler if we removed something and no more handlers exist // (avoids potential for endless recursion during removal of special event handlers) if ( origCount && !handlers.length ) { if ( !special.teardown || special.teardown.call( elem, namespaces, elemData.handle ) === false ) { jQuery.removeEvent( elem, type, elemData.handle ); } delete events[ type ]; } } // Remove data and the expando if it's no longer used if ( jQuery.isEmptyObject( events ) ) { dataPriv.remove( elem, "handle events" ); } }, dispatch: function( nativeEvent ) { var i, j, ret, matched, handleObj, handlerQueue, args = new Array( arguments.length ), // Make a writable jQuery.Event from the native event object event = jQuery.event.fix( nativeEvent ), handlers = ( dataPriv.get( this, "events" ) || Object.create( null ) )[ event.type ] || [], special = jQuery.event.special[ event.type ] || {}; // Use the fix-ed jQuery.Event rather than the (read-only) native event args[ 0 ] = event; for ( i = 1; i < arguments.length; i++ ) { args[ i ] = arguments[ i ]; } event.delegateTarget = this; // Call the preDispatch hook for the mapped type, and let it bail if desired if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) { return; } // Determine handlers handlerQueue = jQuery.event.handlers.call( this, event, handlers ); // Run delegates first; they may want to stop propagation beneath us i = 0; while ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) { event.currentTarget = matched.elem; j = 0; while ( ( handleObj = matched.handlers[ j++ ] ) && !event.isImmediatePropagationStopped() ) { // If the event is namespaced, then each handler is only invoked if it is // specially universal or its namespaces are a superset of the event's. if ( !event.rnamespace || handleObj.namespace === false || event.rnamespace.test( handleObj.namespace ) ) { event.handleObj = handleObj; event.data = handleObj.data; ret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle || handleObj.handler ).apply( matched.elem, args ); if ( ret !== undefined ) { if ( ( event.result = ret ) === false ) { event.preventDefault(); event.stopPropagation(); } } } } } // Call the postDispatch hook for the mapped type if ( special.postDispatch ) { special.postDispatch.call( this, event ); } return event.result; }, handlers: function( event, handlers ) { var i, handleObj, sel, matchedHandlers, matchedSelectors, handlerQueue = [], delegateCount = handlers.delegateCount, cur = event.target; // Find delegate handlers if ( delegateCount && // Support: IE <=9 // Black-hole SVG instance trees (trac-13180) cur.nodeType && // Support: Firefox <=42 // Suppress spec-violating clicks indicating a non-primary pointer button (trac-3861) // https://www.w3.org/TR/DOM-Level-3-Events/#event-type-click // Support: IE 11 only // ...but not arrow key "clicks" of radio inputs, which can have `button` -1 (gh-2343) !( event.type === "click" && event.button >= 1 ) ) { for ( ; cur !== this; cur = cur.parentNode || this ) { // Don't check non-elements (#13208) // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764) if ( cur.nodeType === 1 && !( event.type === "click" && cur.disabled === true ) ) { matchedHandlers = []; matchedSelectors = {}; for ( i = 0; i < delegateCount; i++ ) { handleObj = handlers[ i ]; // Don't conflict with Object.prototype properties (#13203) sel = handleObj.selector + " "; if ( matchedSelectors[ sel ] === undefined ) { matchedSelectors[ sel ] = handleObj.needsContext ? jQuery( sel, this ).index( cur ) > -1 : jQuery.find( sel, this, null, [ cur ] ).length; } if ( matchedSelectors[ sel ] ) { matchedHandlers.push( handleObj ); } } if ( matchedHandlers.length ) { handlerQueue.push( { elem: cur, handlers: matchedHandlers } ); } } } } // Add the remaining (directly-bound) handlers cur = this; if ( delegateCount < handlers.length ) { handlerQueue.push( { elem: cur, handlers: handlers.slice( delegateCount ) } ); } return handlerQueue; }, addProp: function( name, hook ) { Object.defineProperty( jQuery.Event.prototype, name, { enumerable: true, configurable: true, get: isFunction( hook ) ? function() { if ( this.originalEvent ) { return hook( this.originalEvent ); } } : function() { if ( this.originalEvent ) { return this.originalEvent[ name ]; } }, set: function( value ) { Object.defineProperty( this, name, { enumerable: true, configurable: true, writable: true, value: value } ); } } ); }, fix: function( originalEvent ) { return originalEvent[ jQuery.expando ] ? originalEvent : new jQuery.Event( originalEvent ); }, special: { load: { // Prevent triggered image.load events from bubbling to window.load noBubble: true }, click: { // Utilize native event to ensure correct state for checkable inputs setup: function( data ) { // For mutual compressibility with _default, replace `this` access with a local var. // `|| data` is dead code meant only to preserve the variable through minification. var el = this || data; // Claim the first handler if ( rcheckableType.test( el.type ) && el.click && nodeName( el, "input" ) ) { // dataPriv.set( el, "click", ... ) leverageNative( el, "click", returnTrue ); } // Return false to allow normal processing in the caller return false; }, trigger: function( data ) { // For mutual compressibility with _default, replace `this` access with a local var. // `|| data` is dead code meant only to preserve the variable through minification. var el = this || data; // Force setup before triggering a click if ( rcheckableType.test( el.type ) && el.click && nodeName( el, "input" ) ) { leverageNative( el, "click" ); } // Return non-false to allow normal event-path propagation return true; }, // For cross-browser consistency, suppress native .click() on links // Also prevent it if we're currently inside a leveraged native-event stack _default: function( event ) { var target = event.target; return rcheckableType.test( target.type ) && target.click && nodeName( target, "input" ) && dataPriv.get( target, "click" ) || nodeName( target, "a" ); } }, beforeunload: { postDispatch: function( event ) { // Support: Firefox 20+ // Firefox doesn't alert if the returnValue field is not set. if ( event.result !== undefined && event.originalEvent ) { event.originalEvent.returnValue = event.result; } } } } }; // Ensure the presence of an event listener that handles manually-triggered // synthetic events by interrupting progress until reinvoked in response to // *native* events that it fires directly, ensuring that state changes have // already occurred before other listeners are invoked. function leverageNative( el, type, expectSync ) { // Missing expectSync indicates a trigger call, which must force setup through jQuery.event.add if ( !expectSync ) { if ( dataPriv.get( el, type ) === undefined ) { jQuery.event.add( el, type, returnTrue ); } return; } // Register the controller as a special universal handler for all event namespaces dataPriv.set( el, type, false ); jQuery.event.add( el, type, { namespace: false, handler: function( event ) { var notAsync, result, saved = dataPriv.get( this, type ); if ( ( event.isTrigger & 1 ) && this[ type ] ) { // Interrupt processing of the outer synthetic .trigger()ed event // Saved data should be false in such cases, but might be a leftover capture object // from an async native handler (gh-4350) if ( !saved.length ) { // Store arguments for use when handling the inner native event // There will always be at least one argument (an event object), so this array // will not be confused with a leftover capture object. saved = slice.call( arguments ); dataPriv.set( this, type, saved ); // Trigger the native event and capture its result // Support: IE <=9 - 11+ // focus() and blur() are asynchronous notAsync = expectSync( this, type ); this[ type ](); result = dataPriv.get( this, type ); if ( saved !== result || notAsync ) { dataPriv.set( this, type, false ); } else { result = {}; } if ( saved !== result ) { // Cancel the outer synthetic event event.stopImmediatePropagation(); event.preventDefault(); // Support: Chrome 86+ // In Chrome, if an element having a focusout handler is blurred by // clicking outside of it, it invokes the handler synchronously. If // that handler calls `.remove()` on the element, the data is cleared, // leaving `result` undefined. We need to guard against this. return result && result.value; } // If this is an inner synthetic event for an event with a bubbling surrogate // (focus or blur), assume that the surrogate already propagated from triggering the // native event and prevent that from happening again here. // This technically gets the ordering wrong w.r.t. to `.trigger()` (in which the // bubbling surrogate propagates *after* the non-bubbling base), but that seems // less bad than duplication. } else if ( ( jQuery.event.special[ type ] || {} ).delegateType ) { event.stopPropagation(); } // If this is a native event triggered above, everything is now in order // Fire an inner synthetic event with the original arguments } else if ( saved.length ) { // ...and capture the result dataPriv.set( this, type, { value: jQuery.event.trigger( // Support: IE <=9 - 11+ // Extend with the prototype to reset the above stopImmediatePropagation() jQuery.extend( saved[ 0 ], jQuery.Event.prototype ), saved.slice( 1 ), this ) } ); // Abort handling of the native event event.stopImmediatePropagation(); } } } ); } jQuery.removeEvent = function( elem, type, handle ) { // This "if" is needed for plain objects if ( elem.removeEventListener ) { elem.removeEventListener( type, handle ); } }; jQuery.Event = function( src, props ) { // Allow instantiation without the 'new' keyword if ( !( this instanceof jQuery.Event ) ) { return new jQuery.Event( src, props ); } // Event object if ( src && src.type ) { this.originalEvent = src; this.type = src.type; // Events bubbling up the document may have been marked as prevented // by a handler lower down the tree; reflect the correct value. this.isDefaultPrevented = src.defaultPrevented || src.defaultPrevented === undefined && // Support: Android <=2.3 only src.returnValue === false ? returnTrue : returnFalse; // Create target properties // Support: Safari <=6 - 7 only // Target should not be a text node (#504, #13143) this.target = ( src.target && src.target.nodeType === 3 ) ? src.target.parentNode : src.target; this.currentTarget = src.currentTarget; this.relatedTarget = src.relatedTarget; // Event type } else { this.type = src; } // Put explicitly provided properties onto the event object if ( props ) { jQuery.extend( this, props ); } // Create a timestamp if incoming event doesn't have one this.timeStamp = src && src.timeStamp || Date.now(); // Mark it as fixed this[ jQuery.expando ] = true; }; // jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding // https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html jQuery.Event.prototype = { constructor: jQuery.Event, isDefaultPrevented: returnFalse, isPropagationStopped: returnFalse, isImmediatePropagationStopped: returnFalse, isSimulated: false, preventDefault: function() { var e = this.originalEvent; this.isDefaultPrevented = returnTrue; if ( e && !this.isSimulated ) { e.preventDefault(); } }, stopPropagation: function() { var e = this.originalEvent; this.isPropagationStopped = returnTrue; if ( e && !this.isSimulated ) { e.stopPropagation(); } }, stopImmediatePropagation: function() { var e = this.originalEvent; this.isImmediatePropagationStopped = returnTrue; if ( e && !this.isSimulated ) { e.stopImmediatePropagation(); } this.stopPropagation(); } }; // Includes all common event props including KeyEvent and MouseEvent specific props jQuery.each( { altKey: true, bubbles: true, cancelable: true, changedTouches: true, ctrlKey: true, detail: true, eventPhase: true, metaKey: true, pageX: true, pageY: true, shiftKey: true, view: true, "char": true, code: true, charCode: true, key: true, keyCode: true, button: true, buttons: true, clientX: true, clientY: true, offsetX: true, offsetY: true, pointerId: true, pointerType: true, screenX: true, screenY: true, targetTouches: true, toElement: true, touches: true, which: true }, jQuery.event.addProp ); jQuery.each( { focus: "focusin", blur: "focusout" }, function( type, delegateType ) { jQuery.event.special[ type ] = { // Utilize native event if possible so blur/focus sequence is correct setup: function() { // Claim the first handler // dataPriv.set( this, "focus", ... ) // dataPriv.set( this, "blur", ... ) leverageNative( this, type, expectSync ); // Return false to allow normal processing in the caller return false; }, trigger: function() { // Force setup before trigger leverageNative( this, type ); // Return non-false to allow normal event-path propagation return true; }, // Suppress native focus or blur as it's already being fired // in leverageNative. _default: function() { return true; }, delegateType: delegateType }; } ); // Create mouseenter/leave events using mouseover/out and event-time checks // so that event delegation works in jQuery. // Do the same for pointerenter/pointerleave and pointerover/pointerout // // Support: Safari 7 only // Safari sends mouseenter too often; see: // https://bugs.chromium.org/p/chromium/issues/detail?id=470258 // for the description of the bug (it existed in older Chrome versions as well). jQuery.each( { mouseenter: "mouseover", mouseleave: "mouseout", pointerenter: "pointerover", pointerleave: "pointerout" }, function( orig, fix ) { jQuery.event.special[ orig ] = { delegateType: fix, bindType: fix, handle: function( event ) { var ret, target = this, related = event.relatedTarget, handleObj = event.handleObj; // For mouseenter/leave call the handler if related is outside the target. // NB: No relatedTarget if the mouse left/entered the browser window if ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) { event.type = handleObj.origType; ret = handleObj.handler.apply( this, arguments ); event.type = fix; } return ret; } }; } ); jQuery.fn.extend( { on: function( types, selector, data, fn ) { return on( this, types, selector, data, fn ); }, one: function( types, selector, data, fn ) { return on( this, types, selector, data, fn, 1 ); }, off: function( types, selector, fn ) { var handleObj, type; if ( types && types.preventDefault && types.handleObj ) { // ( event ) dispatched jQuery.Event handleObj = types.handleObj; jQuery( types.delegateTarget ).off( handleObj.namespace ? handleObj.origType + "." + handleObj.namespace : handleObj.origType, handleObj.selector, handleObj.handler ); return this; } if ( typeof types === "object" ) { // ( types-object [, selector] ) for ( type in types ) { this.off( type, selector, types[ type ] ); } return this; } if ( selector === false || typeof selector === "function" ) { // ( types [, fn] ) fn = selector; selector = undefined; } if ( fn === false ) { fn = returnFalse; } return this.each( function() { jQuery.event.remove( this, types, fn, selector ); } ); } } ); var // Support: IE <=10 - 11, Edge 12 - 13 only // In IE/Edge using regex groups here causes severe slowdowns. // See https://connect.microsoft.com/IE/feedback/details/1736512/ rnoInnerhtml = /\s*$/g; // Prefer a tbody over its parent table for containing new rows function manipulationTarget( elem, content ) { if ( nodeName( elem, "table" ) && nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ) { return jQuery( elem ).children( "tbody" )[ 0 ] || elem; } return elem; } // Replace/restore the type attribute of script elements for safe DOM manipulation function disableScript( elem ) { elem.type = ( elem.getAttribute( "type" ) !== null ) + "/" + elem.type; return elem; } function restoreScript( elem ) { if ( ( elem.type || "" ).slice( 0, 5 ) === "true/" ) { elem.type = elem.type.slice( 5 ); } else { elem.removeAttribute( "type" ); } return elem; } function cloneCopyEvent( src, dest ) { var i, l, type, pdataOld, udataOld, udataCur, events; if ( dest.nodeType !== 1 ) { return; } // 1. Copy private data: events, handlers, etc. if ( dataPriv.hasData( src ) ) { pdataOld = dataPriv.get( src ); events = pdataOld.events; if ( events ) { dataPriv.remove( dest, "handle events" ); for ( type in events ) { for ( i = 0, l = events[ type ].length; i < l; i++ ) { jQuery.event.add( dest, type, events[ type ][ i ] ); } } } } // 2. Copy user data if ( dataUser.hasData( src ) ) { udataOld = dataUser.access( src ); udataCur = jQuery.extend( {}, udataOld ); dataUser.set( dest, udataCur ); } } // Fix IE bugs, see support tests function fixInput( src, dest ) { var nodeName = dest.nodeName.toLowerCase(); // Fails to persist the checked state of a cloned checkbox or radio button. if ( nodeName === "input" && rcheckableType.test( src.type ) ) { dest.checked = src.checked; // Fails to return the selected option to the default selected state when cloning options } else if ( nodeName === "input" || nodeName === "textarea" ) { dest.defaultValue = src.defaultValue; } } function domManip( collection, args, callback, ignored ) { // Flatten any nested arrays args = flat( args ); var fragment, first, scripts, hasScripts, node, doc, i = 0, l = collection.length, iNoClone = l - 1, value = args[ 0 ], valueIsFunction = isFunction( value ); // We can't cloneNode fragments that contain checked, in WebKit if ( valueIsFunction || ( l > 1 && typeof value === "string" && !support.checkClone && rchecked.test( value ) ) ) { return collection.each( function( index ) { var self = collection.eq( index ); if ( valueIsFunction ) { args[ 0 ] = value.call( this, index, self.html() ); } domManip( self, args, callback, ignored ); } ); } if ( l ) { fragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored ); first = fragment.firstChild; if ( fragment.childNodes.length === 1 ) { fragment = first; } // Require either new content or an interest in ignored elements to invoke the callback if ( first || ignored ) { scripts = jQuery.map( getAll( fragment, "script" ), disableScript ); hasScripts = scripts.length; // Use the original fragment for the last item // instead of the first because it can end up // being emptied incorrectly in certain situations (#8070). for ( ; i < l; i++ ) { node = fragment; if ( i !== iNoClone ) { node = jQuery.clone( node, true, true ); // Keep references to cloned scripts for later restoration if ( hasScripts ) { // Support: Android <=4.0 only, PhantomJS 1 only // push.apply(_, arraylike) throws on ancient WebKit jQuery.merge( scripts, getAll( node, "script" ) ); } } callback.call( collection[ i ], node, i ); } if ( hasScripts ) { doc = scripts[ scripts.length - 1 ].ownerDocument; // Reenable scripts jQuery.map( scripts, restoreScript ); // Evaluate executable scripts on first document insertion for ( i = 0; i < hasScripts; i++ ) { node = scripts[ i ]; if ( rscriptType.test( node.type || "" ) && !dataPriv.access( node, "globalEval" ) && jQuery.contains( doc, node ) ) { if ( node.src && ( node.type || "" ).toLowerCase() !== "module" ) { // Optional AJAX dependency, but won't run scripts if not present if ( jQuery._evalUrl && !node.noModule ) { jQuery._evalUrl( node.src, { nonce: node.nonce || node.getAttribute( "nonce" ) }, doc ); } } else { DOMEval( node.textContent.replace( rcleanScript, "" ), node, doc ); } } } } } } return collection; } function remove( elem, selector, keepData ) { var node, nodes = selector ? jQuery.filter( selector, elem ) : elem, i = 0; for ( ; ( node = nodes[ i ] ) != null; i++ ) { if ( !keepData && node.nodeType === 1 ) { jQuery.cleanData( getAll( node ) ); } if ( node.parentNode ) { if ( keepData && isAttached( node ) ) { setGlobalEval( getAll( node, "script" ) ); } node.parentNode.removeChild( node ); } } return elem; } jQuery.extend( { htmlPrefilter: function( html ) { return html; }, clone: function( elem, dataAndEvents, deepDataAndEvents ) { var i, l, srcElements, destElements, clone = elem.cloneNode( true ), inPage = isAttached( elem ); // Fix IE cloning issues if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) && !jQuery.isXMLDoc( elem ) ) { // We eschew Sizzle here for performance reasons: https://jsperf.com/getall-vs-sizzle/2 destElements = getAll( clone ); srcElements = getAll( elem ); for ( i = 0, l = srcElements.length; i < l; i++ ) { fixInput( srcElements[ i ], destElements[ i ] ); } } // Copy the events from the original to the clone if ( dataAndEvents ) { if ( deepDataAndEvents ) { srcElements = srcElements || getAll( elem ); destElements = destElements || getAll( clone ); for ( i = 0, l = srcElements.length; i < l; i++ ) { cloneCopyEvent( srcElements[ i ], destElements[ i ] ); } } else { cloneCopyEvent( elem, clone ); } } // Preserve script evaluation history destElements = getAll( clone, "script" ); if ( destElements.length > 0 ) { setGlobalEval( destElements, !inPage && getAll( elem, "script" ) ); } // Return the cloned set return clone; }, cleanData: function( elems ) { var data, elem, type, special = jQuery.event.special, i = 0; for ( ; ( elem = elems[ i ] ) !== undefined; i++ ) { if ( acceptData( elem ) ) { if ( ( data = elem[ dataPriv.expando ] ) ) { if ( data.events ) { for ( type in data.events ) { if ( special[ type ] ) { jQuery.event.remove( elem, type ); // This is a shortcut to avoid jQuery.event.remove's overhead } else { jQuery.removeEvent( elem, type, data.handle ); } } } // Support: Chrome <=35 - 45+ // Assign undefined instead of using delete, see Data#remove elem[ dataPriv.expando ] = undefined; } if ( elem[ dataUser.expando ] ) { // Support: Chrome <=35 - 45+ // Assign undefined instead of using delete, see Data#remove elem[ dataUser.expando ] = undefined; } } } } } ); jQuery.fn.extend( { detach: function( selector ) { return remove( this, selector, true ); }, remove: function( selector ) { return remove( this, selector ); }, text: function( value ) { return access( this, function( value ) { return value === undefined ? jQuery.text( this ) : this.empty().each( function() { if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { this.textContent = value; } } ); }, null, value, arguments.length ); }, append: function() { return domManip( this, arguments, function( elem ) { if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { var target = manipulationTarget( this, elem ); target.appendChild( elem ); } } ); }, prepend: function() { return domManip( this, arguments, function( elem ) { if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { var target = manipulationTarget( this, elem ); target.insertBefore( elem, target.firstChild ); } } ); }, before: function() { return domManip( this, arguments, function( elem ) { if ( this.parentNode ) { this.parentNode.insertBefore( elem, this ); } } ); }, after: function() { return domManip( this, arguments, function( elem ) { if ( this.parentNode ) { this.parentNode.insertBefore( elem, this.nextSibling ); } } ); }, empty: function() { var elem, i = 0; for ( ; ( elem = this[ i ] ) != null; i++ ) { if ( elem.nodeType === 1 ) { // Prevent memory leaks jQuery.cleanData( getAll( elem, false ) ); // Remove any remaining nodes elem.textContent = ""; } } return this; }, clone: function( dataAndEvents, deepDataAndEvents ) { dataAndEvents = dataAndEvents == null ? false : dataAndEvents; deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents; return this.map( function() { return jQuery.clone( this, dataAndEvents, deepDataAndEvents ); } ); }, html: function( value ) { return access( this, function( value ) { var elem = this[ 0 ] || {}, i = 0, l = this.length; if ( value === undefined && elem.nodeType === 1 ) { return elem.innerHTML; } // See if we can take a shortcut and just use innerHTML if ( typeof value === "string" && !rnoInnerhtml.test( value ) && !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) { value = jQuery.htmlPrefilter( value ); try { for ( ; i < l; i++ ) { elem = this[ i ] || {}; // Remove element nodes and prevent memory leaks if ( elem.nodeType === 1 ) { jQuery.cleanData( getAll( elem, false ) ); elem.innerHTML = value; } } elem = 0; // If using innerHTML throws an exception, use the fallback method } catch ( e ) {} } if ( elem ) { this.empty().append( value ); } }, null, value, arguments.length ); }, replaceWith: function() { var ignored = []; // Make the changes, replacing each non-ignored context element with the new content return domManip( this, arguments, function( elem ) { var parent = this.parentNode; if ( jQuery.inArray( this, ignored ) < 0 ) { jQuery.cleanData( getAll( this ) ); if ( parent ) { parent.replaceChild( elem, this ); } } // Force callback invocation }, ignored ); } } ); jQuery.each( { appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith" }, function( name, original ) { jQuery.fn[ name ] = function( selector ) { var elems, ret = [], insert = jQuery( selector ), last = insert.length - 1, i = 0; for ( ; i <= last; i++ ) { elems = i === last ? this : this.clone( true ); jQuery( insert[ i ] )[ original ]( elems ); // Support: Android <=4.0 only, PhantomJS 1 only // .get() because push.apply(_, arraylike) throws on ancient WebKit push.apply( ret, elems.get() ); } return this.pushStack( ret ); }; } ); var rnumnonpx = new RegExp( "^(" + pnum + ")(?!px)[a-z%]+$", "i" ); var getStyles = function( elem ) { // Support: IE <=11 only, Firefox <=30 (#15098, #14150) // IE throws on elements created in popups // FF meanwhile throws on frame elements through "defaultView.getComputedStyle" var view = elem.ownerDocument.defaultView; if ( !view || !view.opener ) { view = window; } return view.getComputedStyle( elem ); }; var swap = function( elem, options, callback ) { var ret, name, old = {}; // Remember the old values, and insert the new ones for ( name in options ) { old[ name ] = elem.style[ name ]; elem.style[ name ] = options[ name ]; } ret = callback.call( elem ); // Revert the old values for ( name in options ) { elem.style[ name ] = old[ name ]; } return ret; }; var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" ); ( function() { // Executing both pixelPosition & boxSizingReliable tests require only one layout // so they're executed at the same time to save the second computation. function computeStyleTests() { // This is a singleton, we need to execute it only once if ( !div ) { return; } container.style.cssText = "position:absolute;left:-11111px;width:60px;" + "margin-top:1px;padding:0;border:0"; div.style.cssText = "position:relative;display:block;box-sizing:border-box;overflow:scroll;" + "margin:auto;border:1px;padding:1px;" + "width:60%;top:1%"; documentElement.appendChild( container ).appendChild( div ); var divStyle = window.getComputedStyle( div ); pixelPositionVal = divStyle.top !== "1%"; // Support: Android 4.0 - 4.3 only, Firefox <=3 - 44 reliableMarginLeftVal = roundPixelMeasures( divStyle.marginLeft ) === 12; // Support: Android 4.0 - 4.3 only, Safari <=9.1 - 10.1, iOS <=7.0 - 9.3 // Some styles come back with percentage values, even though they shouldn't div.style.right = "60%"; pixelBoxStylesVal = roundPixelMeasures( divStyle.right ) === 36; // Support: IE 9 - 11 only // Detect misreporting of content dimensions for box-sizing:border-box elements boxSizingReliableVal = roundPixelMeasures( divStyle.width ) === 36; // Support: IE 9 only // Detect overflow:scroll screwiness (gh-3699) // Support: Chrome <=64 // Don't get tricked when zoom affects offsetWidth (gh-4029) div.style.position = "absolute"; scrollboxSizeVal = roundPixelMeasures( div.offsetWidth / 3 ) === 12; documentElement.removeChild( container ); // Nullify the div so it wouldn't be stored in the memory and // it will also be a sign that checks already performed div = null; } function roundPixelMeasures( measure ) { return Math.round( parseFloat( measure ) ); } var pixelPositionVal, boxSizingReliableVal, scrollboxSizeVal, pixelBoxStylesVal, reliableTrDimensionsVal, reliableMarginLeftVal, container = document.createElement( "div" ), div = document.createElement( "div" ); // Finish early in limited (non-browser) environments if ( !div.style ) { return; } // Support: IE <=9 - 11 only // Style of cloned element affects source element cloned (#8908) div.style.backgroundClip = "content-box"; div.cloneNode( true ).style.backgroundClip = ""; support.clearCloneStyle = div.style.backgroundClip === "content-box"; jQuery.extend( support, { boxSizingReliable: function() { computeStyleTests(); return boxSizingReliableVal; }, pixelBoxStyles: function() { computeStyleTests(); return pixelBoxStylesVal; }, pixelPosition: function() { computeStyleTests(); return pixelPositionVal; }, reliableMarginLeft: function() { computeStyleTests(); return reliableMarginLeftVal; }, scrollboxSize: function() { computeStyleTests(); return scrollboxSizeVal; }, // Support: IE 9 - 11+, Edge 15 - 18+ // IE/Edge misreport `getComputedStyle` of table rows with width/height // set in CSS while `offset*` properties report correct values. // Behavior in IE 9 is more subtle than in newer versions & it passes // some versions of this test; make sure not to make it pass there! // // Support: Firefox 70+ // Only Firefox includes border widths // in computed dimensions. (gh-4529) reliableTrDimensions: function() { var table, tr, trChild, trStyle; if ( reliableTrDimensionsVal == null ) { table = document.createElement( "table" ); tr = document.createElement( "tr" ); trChild = document.createElement( "div" ); table.style.cssText = "position:absolute;left:-11111px;border-collapse:separate"; tr.style.cssText = "border:1px solid"; // Support: Chrome 86+ // Height set through cssText does not get applied. // Computed height then comes back as 0. tr.style.height = "1px"; trChild.style.height = "9px"; // Support: Android 8 Chrome 86+ // In our bodyBackground.html iframe, // display for all div elements is set to "inline", // which causes a problem only in Android 8 Chrome 86. // Ensuring the div is display: block // gets around this issue. trChild.style.display = "block"; documentElement .appendChild( table ) .appendChild( tr ) .appendChild( trChild ); trStyle = window.getComputedStyle( tr ); reliableTrDimensionsVal = ( parseInt( trStyle.height, 10 ) + parseInt( trStyle.borderTopWidth, 10 ) + parseInt( trStyle.borderBottomWidth, 10 ) ) === tr.offsetHeight; documentElement.removeChild( table ); } return reliableTrDimensionsVal; } } ); } )(); function curCSS( elem, name, computed ) { var width, minWidth, maxWidth, ret, // Support: Firefox 51+ // Retrieving style before computed somehow // fixes an issue with getting wrong values // on detached elements style = elem.style; computed = computed || getStyles( elem ); // getPropertyValue is needed for: // .css('filter') (IE 9 only, #12537) // .css('--customProperty) (#3144) if ( computed ) { ret = computed.getPropertyValue( name ) || computed[ name ]; if ( ret === "" && !isAttached( elem ) ) { ret = jQuery.style( elem, name ); } // A tribute to the "awesome hack by Dean Edwards" // Android Browser returns percentage for some values, // but width seems to be reliably pixels. // This is against the CSSOM draft spec: // https://drafts.csswg.org/cssom/#resolved-values if ( !support.pixelBoxStyles() && rnumnonpx.test( ret ) && rboxStyle.test( name ) ) { // Remember the original values width = style.width; minWidth = style.minWidth; maxWidth = style.maxWidth; // Put in the new values to get a computed value out style.minWidth = style.maxWidth = style.width = ret; ret = computed.width; // Revert the changed values style.width = width; style.minWidth = minWidth; style.maxWidth = maxWidth; } } return ret !== undefined ? // Support: IE <=9 - 11 only // IE returns zIndex value as an integer. ret + "" : ret; } function addGetHookIf( conditionFn, hookFn ) { // Define the hook, we'll check on the first run if it's really needed. return { get: function() { if ( conditionFn() ) { // Hook not needed (or it's not possible to use it due // to missing dependency), remove it. delete this.get; return; } // Hook needed; redefine it so that the support test is not executed again. return ( this.get = hookFn ).apply( this, arguments ); } }; } var cssPrefixes = [ "Webkit", "Moz", "ms" ], emptyStyle = document.createElement( "div" ).style, vendorProps = {}; // Return a vendor-prefixed property or undefined function vendorPropName( name ) { // Check for vendor prefixed names var capName = name[ 0 ].toUpperCase() + name.slice( 1 ), i = cssPrefixes.length; while ( i-- ) { name = cssPrefixes[ i ] + capName; if ( name in emptyStyle ) { return name; } } } // Return a potentially-mapped jQuery.cssProps or vendor prefixed property function finalPropName( name ) { var final = jQuery.cssProps[ name ] || vendorProps[ name ]; if ( final ) { return final; } if ( name in emptyStyle ) { return name; } return vendorProps[ name ] = vendorPropName( name ) || name; } var // Swappable if display is none or starts with table // except "table", "table-cell", or "table-caption" // See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display rdisplayswap = /^(none|table(?!-c[ea]).+)/, rcustomProp = /^--/, cssShow = { position: "absolute", visibility: "hidden", display: "block" }, cssNormalTransform = { letterSpacing: "0", fontWeight: "400" }; function setPositiveNumber( _elem, value, subtract ) { // Any relative (+/-) values have already been // normalized at this point var matches = rcssNum.exec( value ); return matches ? // Guard against undefined "subtract", e.g., when used as in cssHooks Math.max( 0, matches[ 2 ] - ( subtract || 0 ) ) + ( matches[ 3 ] || "px" ) : value; } function boxModelAdjustment( elem, dimension, box, isBorderBox, styles, computedVal ) { var i = dimension === "width" ? 1 : 0, extra = 0, delta = 0; // Adjustment may not be necessary if ( box === ( isBorderBox ? "border" : "content" ) ) { return 0; } for ( ; i < 4; i += 2 ) { // Both box models exclude margin if ( box === "margin" ) { delta += jQuery.css( elem, box + cssExpand[ i ], true, styles ); } // If we get here with a content-box, we're seeking "padding" or "border" or "margin" if ( !isBorderBox ) { // Add padding delta += jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); // For "border" or "margin", add border if ( box !== "padding" ) { delta += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); // But still keep track of it otherwise } else { extra += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); } // If we get here with a border-box (content + padding + border), we're seeking "content" or // "padding" or "margin" } else { // For "content", subtract padding if ( box === "content" ) { delta -= jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); } // For "content" or "padding", subtract border if ( box !== "margin" ) { delta -= jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); } } } // Account for positive content-box scroll gutter when requested by providing computedVal if ( !isBorderBox && computedVal >= 0 ) { // offsetWidth/offsetHeight is a rounded sum of content, padding, scroll gutter, and border // Assuming integer scroll gutter, subtract the rest and round down delta += Math.max( 0, Math.ceil( elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] - computedVal - delta - extra - 0.5 // If offsetWidth/offsetHeight is unknown, then we can't determine content-box scroll gutter // Use an explicit zero to avoid NaN (gh-3964) ) ) || 0; } return delta; } function getWidthOrHeight( elem, dimension, extra ) { // Start with computed style var styles = getStyles( elem ), // To avoid forcing a reflow, only fetch boxSizing if we need it (gh-4322). // Fake content-box until we know it's needed to know the true value. boxSizingNeeded = !support.boxSizingReliable() || extra, isBorderBox = boxSizingNeeded && jQuery.css( elem, "boxSizing", false, styles ) === "border-box", valueIsBorderBox = isBorderBox, val = curCSS( elem, dimension, styles ), offsetProp = "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ); // Support: Firefox <=54 // Return a confounding non-pixel value or feign ignorance, as appropriate. if ( rnumnonpx.test( val ) ) { if ( !extra ) { return val; } val = "auto"; } // Support: IE 9 - 11 only // Use offsetWidth/offsetHeight for when box sizing is unreliable. // In those cases, the computed value can be trusted to be border-box. if ( ( !support.boxSizingReliable() && isBorderBox || // Support: IE 10 - 11+, Edge 15 - 18+ // IE/Edge misreport `getComputedStyle` of table rows with width/height // set in CSS while `offset*` properties report correct values. // Interestingly, in some cases IE 9 doesn't suffer from this issue. !support.reliableTrDimensions() && nodeName( elem, "tr" ) || // Fall back to offsetWidth/offsetHeight when value is "auto" // This happens for inline elements with no explicit setting (gh-3571) val === "auto" || // Support: Android <=4.1 - 4.3 only // Also use offsetWidth/offsetHeight for misreported inline dimensions (gh-3602) !parseFloat( val ) && jQuery.css( elem, "display", false, styles ) === "inline" ) && // Make sure the element is visible & connected elem.getClientRects().length ) { isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box"; // Where available, offsetWidth/offsetHeight approximate border box dimensions. // Where not available (e.g., SVG), assume unreliable box-sizing and interpret the // retrieved value as a content box dimension. valueIsBorderBox = offsetProp in elem; if ( valueIsBorderBox ) { val = elem[ offsetProp ]; } } // Normalize "" and auto val = parseFloat( val ) || 0; // Adjust for the element's box model return ( val + boxModelAdjustment( elem, dimension, extra || ( isBorderBox ? "border" : "content" ), valueIsBorderBox, styles, // Provide the current computed size to request scroll gutter calculation (gh-3589) val ) ) + "px"; } jQuery.extend( { // Add in style property hooks for overriding the default // behavior of getting and setting a style property cssHooks: { opacity: { get: function( elem, computed ) { if ( computed ) { // We should always get a number back from opacity var ret = curCSS( elem, "opacity" ); return ret === "" ? "1" : ret; } } } }, // Don't automatically add "px" to these possibly-unitless properties cssNumber: { "animationIterationCount": true, "columnCount": true, "fillOpacity": true, "flexGrow": true, "flexShrink": true, "fontWeight": true, "gridArea": true, "gridColumn": true, "gridColumnEnd": true, "gridColumnStart": true, "gridRow": true, "gridRowEnd": true, "gridRowStart": true, "lineHeight": true, "opacity": true, "order": true, "orphans": true, "widows": true, "zIndex": true, "zoom": true }, // Add in properties whose names you wish to fix before // setting or getting the value cssProps: {}, // Get and set the style property on a DOM Node style: function( elem, name, value, extra ) { // Don't set styles on text and comment nodes if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) { return; } // Make sure that we're working with the right name var ret, type, hooks, origName = camelCase( name ), isCustomProp = rcustomProp.test( name ), style = elem.style; // Make sure that we're working with the right name. We don't // want to query the value if it is a CSS custom property // since they are user-defined. if ( !isCustomProp ) { name = finalPropName( origName ); } // Gets hook for the prefixed version, then unprefixed version hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; // Check if we're setting a value if ( value !== undefined ) { type = typeof value; // Convert "+=" or "-=" to relative numbers (#7345) if ( type === "string" && ( ret = rcssNum.exec( value ) ) && ret[ 1 ] ) { value = adjustCSS( elem, name, ret ); // Fixes bug #9237 type = "number"; } // Make sure that null and NaN values aren't set (#7116) if ( value == null || value !== value ) { return; } // If a number was passed in, add the unit (except for certain CSS properties) // The isCustomProp check can be removed in jQuery 4.0 when we only auto-append // "px" to a few hardcoded values. if ( type === "number" && !isCustomProp ) { value += ret && ret[ 3 ] || ( jQuery.cssNumber[ origName ] ? "" : "px" ); } // background-* props affect original clone's values if ( !support.clearCloneStyle && value === "" && name.indexOf( "background" ) === 0 ) { style[ name ] = "inherit"; } // If a hook was provided, use that value, otherwise just set the specified value if ( !hooks || !( "set" in hooks ) || ( value = hooks.set( elem, value, extra ) ) !== undefined ) { if ( isCustomProp ) { style.setProperty( name, value ); } else { style[ name ] = value; } } } else { // If a hook was provided get the non-computed value from there if ( hooks && "get" in hooks && ( ret = hooks.get( elem, false, extra ) ) !== undefined ) { return ret; } // Otherwise just get the value from the style object return style[ name ]; } }, css: function( elem, name, extra, styles ) { var val, num, hooks, origName = camelCase( name ), isCustomProp = rcustomProp.test( name ); // Make sure that we're working with the right name. We don't // want to modify the value if it is a CSS custom property // since they are user-defined. if ( !isCustomProp ) { name = finalPropName( origName ); } // Try prefixed name followed by the unprefixed name hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; // If a hook was provided get the computed value from there if ( hooks && "get" in hooks ) { val = hooks.get( elem, true, extra ); } // Otherwise, if a way to get the computed value exists, use that if ( val === undefined ) { val = curCSS( elem, name, styles ); } // Convert "normal" to computed value if ( val === "normal" && name in cssNormalTransform ) { val = cssNormalTransform[ name ]; } // Make numeric if forced or a qualifier was provided and val looks numeric if ( extra === "" || extra ) { num = parseFloat( val ); return extra === true || isFinite( num ) ? num || 0 : val; } return val; } } ); jQuery.each( [ "height", "width" ], function( _i, dimension ) { jQuery.cssHooks[ dimension ] = { get: function( elem, computed, extra ) { if ( computed ) { // Certain elements can have dimension info if we invisibly show them // but it must have a current display style that would benefit return rdisplayswap.test( jQuery.css( elem, "display" ) ) && // Support: Safari 8+ // Table columns in Safari have non-zero offsetWidth & zero // getBoundingClientRect().width unless display is changed. // Support: IE <=11 only // Running getBoundingClientRect on a disconnected node // in IE throws an error. ( !elem.getClientRects().length || !elem.getBoundingClientRect().width ) ? swap( elem, cssShow, function() { return getWidthOrHeight( elem, dimension, extra ); } ) : getWidthOrHeight( elem, dimension, extra ); } }, set: function( elem, value, extra ) { var matches, styles = getStyles( elem ), // Only read styles.position if the test has a chance to fail // to avoid forcing a reflow. scrollboxSizeBuggy = !support.scrollboxSize() && styles.position === "absolute", // To avoid forcing a reflow, only fetch boxSizing if we need it (gh-3991) boxSizingNeeded = scrollboxSizeBuggy || extra, isBorderBox = boxSizingNeeded && jQuery.css( elem, "boxSizing", false, styles ) === "border-box", subtract = extra ? boxModelAdjustment( elem, dimension, extra, isBorderBox, styles ) : 0; // Account for unreliable border-box dimensions by comparing offset* to computed and // faking a content-box to get border and padding (gh-3699) if ( isBorderBox && scrollboxSizeBuggy ) { subtract -= Math.ceil( elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] - parseFloat( styles[ dimension ] ) - boxModelAdjustment( elem, dimension, "border", false, styles ) - 0.5 ); } // Convert to pixels if value adjustment is needed if ( subtract && ( matches = rcssNum.exec( value ) ) && ( matches[ 3 ] || "px" ) !== "px" ) { elem.style[ dimension ] = value; value = jQuery.css( elem, dimension ); } return setPositiveNumber( elem, value, subtract ); } }; } ); jQuery.cssHooks.marginLeft = addGetHookIf( support.reliableMarginLeft, function( elem, computed ) { if ( computed ) { return ( parseFloat( curCSS( elem, "marginLeft" ) ) || elem.getBoundingClientRect().left - swap( elem, { marginLeft: 0 }, function() { return elem.getBoundingClientRect().left; } ) ) + "px"; } } ); // These hooks are used by animate to expand properties jQuery.each( { margin: "", padding: "", border: "Width" }, function( prefix, suffix ) { jQuery.cssHooks[ prefix + suffix ] = { expand: function( value ) { var i = 0, expanded = {}, // Assumes a single number if not a string parts = typeof value === "string" ? value.split( " " ) : [ value ]; for ( ; i < 4; i++ ) { expanded[ prefix + cssExpand[ i ] + suffix ] = parts[ i ] || parts[ i - 2 ] || parts[ 0 ]; } return expanded; } }; if ( prefix !== "margin" ) { jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber; } } ); jQuery.fn.extend( { css: function( name, value ) { return access( this, function( elem, name, value ) { var styles, len, map = {}, i = 0; if ( Array.isArray( name ) ) { styles = getStyles( elem ); len = name.length; for ( ; i < len; i++ ) { map[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles ); } return map; } return value !== undefined ? jQuery.style( elem, name, value ) : jQuery.css( elem, name ); }, name, value, arguments.length > 1 ); } } ); function Tween( elem, options, prop, end, easing ) { return new Tween.prototype.init( elem, options, prop, end, easing ); } jQuery.Tween = Tween; Tween.prototype = { constructor: Tween, init: function( elem, options, prop, end, easing, unit ) { this.elem = elem; this.prop = prop; this.easing = easing || jQuery.easing._default; this.options = options; this.start = this.now = this.cur(); this.end = end; this.unit = unit || ( jQuery.cssNumber[ prop ] ? "" : "px" ); }, cur: function() { var hooks = Tween.propHooks[ this.prop ]; return hooks && hooks.get ? hooks.get( this ) : Tween.propHooks._default.get( this ); }, run: function( percent ) { var eased, hooks = Tween.propHooks[ this.prop ]; if ( this.options.duration ) { this.pos = eased = jQuery.easing[ this.easing ]( percent, this.options.duration * percent, 0, 1, this.options.duration ); } else { this.pos = eased = percent; } this.now = ( this.end - this.start ) * eased + this.start; if ( this.options.step ) { this.options.step.call( this.elem, this.now, this ); } if ( hooks && hooks.set ) { hooks.set( this ); } else { Tween.propHooks._default.set( this ); } return this; } }; Tween.prototype.init.prototype = Tween.prototype; Tween.propHooks = { _default: { get: function( tween ) { var result; // Use a property on the element directly when it is not a DOM element, // or when there is no matching style property that exists. if ( tween.elem.nodeType !== 1 || tween.elem[ tween.prop ] != null && tween.elem.style[ tween.prop ] == null ) { return tween.elem[ tween.prop ]; } // Passing an empty string as a 3rd parameter to .css will automatically // attempt a parseFloat and fallback to a string if the parse fails. // Simple values such as "10px" are parsed to Float; // complex values such as "rotate(1rad)" are returned as-is. result = jQuery.css( tween.elem, tween.prop, "" ); // Empty strings, null, undefined and "auto" are converted to 0. return !result || result === "auto" ? 0 : result; }, set: function( tween ) { // Use step hook for back compat. // Use cssHook if its there. // Use .style if available and use plain properties where available. if ( jQuery.fx.step[ tween.prop ] ) { jQuery.fx.step[ tween.prop ]( tween ); } else if ( tween.elem.nodeType === 1 && ( jQuery.cssHooks[ tween.prop ] || tween.elem.style[ finalPropName( tween.prop ) ] != null ) ) { jQuery.style( tween.elem, tween.prop, tween.now + tween.unit ); } else { tween.elem[ tween.prop ] = tween.now; } } } }; // Support: IE <=9 only // Panic based approach to setting things on disconnected nodes Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = { set: function( tween ) { if ( tween.elem.nodeType && tween.elem.parentNode ) { tween.elem[ tween.prop ] = tween.now; } } }; jQuery.easing = { linear: function( p ) { return p; }, swing: function( p ) { return 0.5 - Math.cos( p * Math.PI ) / 2; }, _default: "swing" }; jQuery.fx = Tween.prototype.init; // Back compat <1.8 extension point jQuery.fx.step = {}; var fxNow, inProgress, rfxtypes = /^(?:toggle|show|hide)$/, rrun = /queueHooks$/; function schedule() { if ( inProgress ) { if ( document.hidden === false && window.requestAnimationFrame ) { window.requestAnimationFrame( schedule ); } else { window.setTimeout( schedule, jQuery.fx.interval ); } jQuery.fx.tick(); } } // Animations created synchronously will run synchronously function createFxNow() { window.setTimeout( function() { fxNow = undefined; } ); return ( fxNow = Date.now() ); } // Generate parameters to create a standard animation function genFx( type, includeWidth ) { var which, i = 0, attrs = { height: type }; // If we include width, step value is 1 to do all cssExpand values, // otherwise step value is 2 to skip over Left and Right includeWidth = includeWidth ? 1 : 0; for ( ; i < 4; i += 2 - includeWidth ) { which = cssExpand[ i ]; attrs[ "margin" + which ] = attrs[ "padding" + which ] = type; } if ( includeWidth ) { attrs.opacity = attrs.width = type; } return attrs; } function createTween( value, prop, animation ) { var tween, collection = ( Animation.tweeners[ prop ] || [] ).concat( Animation.tweeners[ "*" ] ), index = 0, length = collection.length; for ( ; index < length; index++ ) { if ( ( tween = collection[ index ].call( animation, prop, value ) ) ) { // We're done with this property return tween; } } } function defaultPrefilter( elem, props, opts ) { var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display, isBox = "width" in props || "height" in props, anim = this, orig = {}, style = elem.style, hidden = elem.nodeType && isHiddenWithinTree( elem ), dataShow = dataPriv.get( elem, "fxshow" ); // Queue-skipping animations hijack the fx hooks if ( !opts.queue ) { hooks = jQuery._queueHooks( elem, "fx" ); if ( hooks.unqueued == null ) { hooks.unqueued = 0; oldfire = hooks.empty.fire; hooks.empty.fire = function() { if ( !hooks.unqueued ) { oldfire(); } }; } hooks.unqueued++; anim.always( function() { // Ensure the complete handler is called before this completes anim.always( function() { hooks.unqueued--; if ( !jQuery.queue( elem, "fx" ).length ) { hooks.empty.fire(); } } ); } ); } // Detect show/hide animations for ( prop in props ) { value = props[ prop ]; if ( rfxtypes.test( value ) ) { delete props[ prop ]; toggle = toggle || value === "toggle"; if ( value === ( hidden ? "hide" : "show" ) ) { // Pretend to be hidden if this is a "show" and // there is still data from a stopped show/hide if ( value === "show" && dataShow && dataShow[ prop ] !== undefined ) { hidden = true; // Ignore all other no-op show/hide data } else { continue; } } orig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop ); } } // Bail out if this is a no-op like .hide().hide() propTween = !jQuery.isEmptyObject( props ); if ( !propTween && jQuery.isEmptyObject( orig ) ) { return; } // Restrict "overflow" and "display" styles during box animations if ( isBox && elem.nodeType === 1 ) { // Support: IE <=9 - 11, Edge 12 - 15 // Record all 3 overflow attributes because IE does not infer the shorthand // from identically-valued overflowX and overflowY and Edge just mirrors // the overflowX value there. opts.overflow = [ style.overflow, style.overflowX, style.overflowY ]; // Identify a display type, preferring old show/hide data over the CSS cascade restoreDisplay = dataShow && dataShow.display; if ( restoreDisplay == null ) { restoreDisplay = dataPriv.get( elem, "display" ); } display = jQuery.css( elem, "display" ); if ( display === "none" ) { if ( restoreDisplay ) { display = restoreDisplay; } else { // Get nonempty value(s) by temporarily forcing visibility showHide( [ elem ], true ); restoreDisplay = elem.style.display || restoreDisplay; display = jQuery.css( elem, "display" ); showHide( [ elem ] ); } } // Animate inline elements as inline-block if ( display === "inline" || display === "inline-block" && restoreDisplay != null ) { if ( jQuery.css( elem, "float" ) === "none" ) { // Restore the original display value at the end of pure show/hide animations if ( !propTween ) { anim.done( function() { style.display = restoreDisplay; } ); if ( restoreDisplay == null ) { display = style.display; restoreDisplay = display === "none" ? "" : display; } } style.display = "inline-block"; } } } if ( opts.overflow ) { style.overflow = "hidden"; anim.always( function() { style.overflow = opts.overflow[ 0 ]; style.overflowX = opts.overflow[ 1 ]; style.overflowY = opts.overflow[ 2 ]; } ); } // Implement show/hide animations propTween = false; for ( prop in orig ) { // General show/hide setup for this element animation if ( !propTween ) { if ( dataShow ) { if ( "hidden" in dataShow ) { hidden = dataShow.hidden; } } else { dataShow = dataPriv.access( elem, "fxshow", { display: restoreDisplay } ); } // Store hidden/visible for toggle so `.stop().toggle()` "reverses" if ( toggle ) { dataShow.hidden = !hidden; } // Show elements before animating them if ( hidden ) { showHide( [ elem ], true ); } /* eslint-disable no-loop-func */ anim.done( function() { /* eslint-enable no-loop-func */ // The final step of a "hide" animation is actually hiding the element if ( !hidden ) { showHide( [ elem ] ); } dataPriv.remove( elem, "fxshow" ); for ( prop in orig ) { jQuery.style( elem, prop, orig[ prop ] ); } } ); } // Per-property setup propTween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim ); if ( !( prop in dataShow ) ) { dataShow[ prop ] = propTween.start; if ( hidden ) { propTween.end = propTween.start; propTween.start = 0; } } } } function propFilter( props, specialEasing ) { var index, name, easing, value, hooks; // camelCase, specialEasing and expand cssHook pass for ( index in props ) { name = camelCase( index ); easing = specialEasing[ name ]; value = props[ index ]; if ( Array.isArray( value ) ) { easing = value[ 1 ]; value = props[ index ] = value[ 0 ]; } if ( index !== name ) { props[ name ] = value; delete props[ index ]; } hooks = jQuery.cssHooks[ name ]; if ( hooks && "expand" in hooks ) { value = hooks.expand( value ); delete props[ name ]; // Not quite $.extend, this won't overwrite existing keys. // Reusing 'index' because we have the correct "name" for ( index in value ) { if ( !( index in props ) ) { props[ index ] = value[ index ]; specialEasing[ index ] = easing; } } } else { specialEasing[ name ] = easing; } } } function Animation( elem, properties, options ) { var result, stopped, index = 0, length = Animation.prefilters.length, deferred = jQuery.Deferred().always( function() { // Don't match elem in the :animated selector delete tick.elem; } ), tick = function() { if ( stopped ) { return false; } var currentTime = fxNow || createFxNow(), remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ), // Support: Android 2.3 only // Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497) temp = remaining / animation.duration || 0, percent = 1 - temp, index = 0, length = animation.tweens.length; for ( ; index < length; index++ ) { animation.tweens[ index ].run( percent ); } deferred.notifyWith( elem, [ animation, percent, remaining ] ); // If there's more to do, yield if ( percent < 1 && length ) { return remaining; } // If this was an empty animation, synthesize a final progress notification if ( !length ) { deferred.notifyWith( elem, [ animation, 1, 0 ] ); } // Resolve the animation and report its conclusion deferred.resolveWith( elem, [ animation ] ); return false; }, animation = deferred.promise( { elem: elem, props: jQuery.extend( {}, properties ), opts: jQuery.extend( true, { specialEasing: {}, easing: jQuery.easing._default }, options ), originalProperties: properties, originalOptions: options, startTime: fxNow || createFxNow(), duration: options.duration, tweens: [], createTween: function( prop, end ) { var tween = jQuery.Tween( elem, animation.opts, prop, end, animation.opts.specialEasing[ prop ] || animation.opts.easing ); animation.tweens.push( tween ); return tween; }, stop: function( gotoEnd ) { var index = 0, // If we are going to the end, we want to run all the tweens // otherwise we skip this part length = gotoEnd ? animation.tweens.length : 0; if ( stopped ) { return this; } stopped = true; for ( ; index < length; index++ ) { animation.tweens[ index ].run( 1 ); } // Resolve when we played the last frame; otherwise, reject if ( gotoEnd ) { deferred.notifyWith( elem, [ animation, 1, 0 ] ); deferred.resolveWith( elem, [ animation, gotoEnd ] ); } else { deferred.rejectWith( elem, [ animation, gotoEnd ] ); } return this; } } ), props = animation.props; propFilter( props, animation.opts.specialEasing ); for ( ; index < length; index++ ) { result = Animation.prefilters[ index ].call( animation, elem, props, animation.opts ); if ( result ) { if ( isFunction( result.stop ) ) { jQuery._queueHooks( animation.elem, animation.opts.queue ).stop = result.stop.bind( result ); } return result; } } jQuery.map( props, createTween, animation ); if ( isFunction( animation.opts.start ) ) { animation.opts.start.call( elem, animation ); } // Attach callbacks from options animation .progress( animation.opts.progress ) .done( animation.opts.done, animation.opts.complete ) .fail( animation.opts.fail ) .always( animation.opts.always ); jQuery.fx.timer( jQuery.extend( tick, { elem: elem, anim: animation, queue: animation.opts.queue } ) ); return animation; } jQuery.Animation = jQuery.extend( Animation, { tweeners: { "*": [ function( prop, value ) { var tween = this.createTween( prop, value ); adjustCSS( tween.elem, prop, rcssNum.exec( value ), tween ); return tween; } ] }, tweener: function( props, callback ) { if ( isFunction( props ) ) { callback = props; props = [ "*" ]; } else { props = props.match( rnothtmlwhite ); } var prop, index = 0, length = props.length; for ( ; index < length; index++ ) { prop = props[ index ]; Animation.tweeners[ prop ] = Animation.tweeners[ prop ] || []; Animation.tweeners[ prop ].unshift( callback ); } }, prefilters: [ defaultPrefilter ], prefilter: function( callback, prepend ) { if ( prepend ) { Animation.prefilters.unshift( callback ); } else { Animation.prefilters.push( callback ); } } } ); jQuery.speed = function( speed, easing, fn ) { var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : { complete: fn || !fn && easing || isFunction( speed ) && speed, duration: speed, easing: fn && easing || easing && !isFunction( easing ) && easing }; // Go to the end state if fx are off if ( jQuery.fx.off ) { opt.duration = 0; } else { if ( typeof opt.duration !== "number" ) { if ( opt.duration in jQuery.fx.speeds ) { opt.duration = jQuery.fx.speeds[ opt.duration ]; } else { opt.duration = jQuery.fx.speeds._default; } } } // Normalize opt.queue - true/undefined/null -> "fx" if ( opt.queue == null || opt.queue === true ) { opt.queue = "fx"; } // Queueing opt.old = opt.complete; opt.complete = function() { if ( isFunction( opt.old ) ) { opt.old.call( this ); } if ( opt.queue ) { jQuery.dequeue( this, opt.queue ); } }; return opt; }; jQuery.fn.extend( { fadeTo: function( speed, to, easing, callback ) { // Show any hidden elements after setting opacity to 0 return this.filter( isHiddenWithinTree ).css( "opacity", 0 ).show() // Animate to the value specified .end().animate( { opacity: to }, speed, easing, callback ); }, animate: function( prop, speed, easing, callback ) { var empty = jQuery.isEmptyObject( prop ), optall = jQuery.speed( speed, easing, callback ), doAnimation = function() { // Operate on a copy of prop so per-property easing won't be lost var anim = Animation( this, jQuery.extend( {}, prop ), optall ); // Empty animations, or finishing resolves immediately if ( empty || dataPriv.get( this, "finish" ) ) { anim.stop( true ); } }; doAnimation.finish = doAnimation; return empty || optall.queue === false ? this.each( doAnimation ) : this.queue( optall.queue, doAnimation ); }, stop: function( type, clearQueue, gotoEnd ) { var stopQueue = function( hooks ) { var stop = hooks.stop; delete hooks.stop; stop( gotoEnd ); }; if ( typeof type !== "string" ) { gotoEnd = clearQueue; clearQueue = type; type = undefined; } if ( clearQueue ) { this.queue( type || "fx", [] ); } return this.each( function() { var dequeue = true, index = type != null && type + "queueHooks", timers = jQuery.timers, data = dataPriv.get( this ); if ( index ) { if ( data[ index ] && data[ index ].stop ) { stopQueue( data[ index ] ); } } else { for ( index in data ) { if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) { stopQueue( data[ index ] ); } } } for ( index = timers.length; index--; ) { if ( timers[ index ].elem === this && ( type == null || timers[ index ].queue === type ) ) { timers[ index ].anim.stop( gotoEnd ); dequeue = false; timers.splice( index, 1 ); } } // Start the next in the queue if the last step wasn't forced. // Timers currently will call their complete callbacks, which // will dequeue but only if they were gotoEnd. if ( dequeue || !gotoEnd ) { jQuery.dequeue( this, type ); } } ); }, finish: function( type ) { if ( type !== false ) { type = type || "fx"; } return this.each( function() { var index, data = dataPriv.get( this ), queue = data[ type + "queue" ], hooks = data[ type + "queueHooks" ], timers = jQuery.timers, length = queue ? queue.length : 0; // Enable finishing flag on private data data.finish = true; // Empty the queue first jQuery.queue( this, type, [] ); if ( hooks && hooks.stop ) { hooks.stop.call( this, true ); } // Look for any active animations, and finish them for ( index = timers.length; index--; ) { if ( timers[ index ].elem === this && timers[ index ].queue === type ) { timers[ index ].anim.stop( true ); timers.splice( index, 1 ); } } // Look for any animations in the old queue and finish them for ( index = 0; index < length; index++ ) { if ( queue[ index ] && queue[ index ].finish ) { queue[ index ].finish.call( this ); } } // Turn off finishing flag delete data.finish; } ); } } ); jQuery.each( [ "toggle", "show", "hide" ], function( _i, name ) { var cssFn = jQuery.fn[ name ]; jQuery.fn[ name ] = function( speed, easing, callback ) { return speed == null || typeof speed === "boolean" ? cssFn.apply( this, arguments ) : this.animate( genFx( name, true ), speed, easing, callback ); }; } ); // Generate shortcuts for custom animations jQuery.each( { slideDown: genFx( "show" ), slideUp: genFx( "hide" ), slideToggle: genFx( "toggle" ), fadeIn: { opacity: "show" }, fadeOut: { opacity: "hide" }, fadeToggle: { opacity: "toggle" } }, function( name, props ) { jQuery.fn[ name ] = function( speed, easing, callback ) { return this.animate( props, speed, easing, callback ); }; } ); jQuery.timers = []; jQuery.fx.tick = function() { var timer, i = 0, timers = jQuery.timers; fxNow = Date.now(); for ( ; i < timers.length; i++ ) { timer = timers[ i ]; // Run the timer and safely remove it when done (allowing for external removal) if ( !timer() && timers[ i ] === timer ) { timers.splice( i--, 1 ); } } if ( !timers.length ) { jQuery.fx.stop(); } fxNow = undefined; }; jQuery.fx.timer = function( timer ) { jQuery.timers.push( timer ); jQuery.fx.start(); }; jQuery.fx.interval = 13; jQuery.fx.start = function() { if ( inProgress ) { return; } inProgress = true; schedule(); }; jQuery.fx.stop = function() { inProgress = null; }; jQuery.fx.speeds = { slow: 600, fast: 200, // Default speed _default: 400 }; // Based off of the plugin by Clint Helfers, with permission. // https://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/ jQuery.fn.delay = function( time, type ) { time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time; type = type || "fx"; return this.queue( type, function( next, hooks ) { var timeout = window.setTimeout( next, time ); hooks.stop = function() { window.clearTimeout( timeout ); }; } ); }; ( function() { var input = document.createElement( "input" ), select = document.createElement( "select" ), opt = select.appendChild( document.createElement( "option" ) ); input.type = "checkbox"; // Support: Android <=4.3 only // Default value for a checkbox should be "on" support.checkOn = input.value !== ""; // Support: IE <=11 only // Must access selectedIndex to make default options select support.optSelected = opt.selected; // Support: IE <=11 only // An input loses its value after becoming a radio input = document.createElement( "input" ); input.value = "t"; input.type = "radio"; support.radioValue = input.value === "t"; } )(); var boolHook, attrHandle = jQuery.expr.attrHandle; jQuery.fn.extend( { attr: function( name, value ) { return access( this, jQuery.attr, name, value, arguments.length > 1 ); }, removeAttr: function( name ) { return this.each( function() { jQuery.removeAttr( this, name ); } ); } } ); jQuery.extend( { attr: function( elem, name, value ) { var ret, hooks, nType = elem.nodeType; // Don't get/set attributes on text, comment and attribute nodes if ( nType === 3 || nType === 8 || nType === 2 ) { return; } // Fallback to prop when attributes are not supported if ( typeof elem.getAttribute === "undefined" ) { return jQuery.prop( elem, name, value ); } // Attribute hooks are determined by the lowercase version // Grab necessary hook if one is defined if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { hooks = jQuery.attrHooks[ name.toLowerCase() ] || ( jQuery.expr.match.bool.test( name ) ? boolHook : undefined ); } if ( value !== undefined ) { if ( value === null ) { jQuery.removeAttr( elem, name ); return; } if ( hooks && "set" in hooks && ( ret = hooks.set( elem, value, name ) ) !== undefined ) { return ret; } elem.setAttribute( name, value + "" ); return value; } if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { return ret; } ret = jQuery.find.attr( elem, name ); // Non-existent attributes return null, we normalize to undefined return ret == null ? undefined : ret; }, attrHooks: { type: { set: function( elem, value ) { if ( !support.radioValue && value === "radio" && nodeName( elem, "input" ) ) { var val = elem.value; elem.setAttribute( "type", value ); if ( val ) { elem.value = val; } return value; } } } }, removeAttr: function( elem, value ) { var name, i = 0, // Attribute names can contain non-HTML whitespace characters // https://html.spec.whatwg.org/multipage/syntax.html#attributes-2 attrNames = value && value.match( rnothtmlwhite ); if ( attrNames && elem.nodeType === 1 ) { while ( ( name = attrNames[ i++ ] ) ) { elem.removeAttribute( name ); } } } } ); // Hooks for boolean attributes boolHook = { set: function( elem, value, name ) { if ( value === false ) { // Remove boolean attributes when set to false jQuery.removeAttr( elem, name ); } else { elem.setAttribute( name, name ); } return name; } }; jQuery.each( jQuery.expr.match.bool.source.match( /\w+/g ), function( _i, name ) { var getter = attrHandle[ name ] || jQuery.find.attr; attrHandle[ name ] = function( elem, name, isXML ) { var ret, handle, lowercaseName = name.toLowerCase(); if ( !isXML ) { // Avoid an infinite loop by temporarily removing this function from the getter handle = attrHandle[ lowercaseName ]; attrHandle[ lowercaseName ] = ret; ret = getter( elem, name, isXML ) != null ? lowercaseName : null; attrHandle[ lowercaseName ] = handle; } return ret; }; } ); var rfocusable = /^(?:input|select|textarea|button)$/i, rclickable = /^(?:a|area)$/i; jQuery.fn.extend( { prop: function( name, value ) { return access( this, jQuery.prop, name, value, arguments.length > 1 ); }, removeProp: function( name ) { return this.each( function() { delete this[ jQuery.propFix[ name ] || name ]; } ); } } ); jQuery.extend( { prop: function( elem, name, value ) { var ret, hooks, nType = elem.nodeType; // Don't get/set properties on text, comment and attribute nodes if ( nType === 3 || nType === 8 || nType === 2 ) { return; } if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { // Fix name and attach hooks name = jQuery.propFix[ name ] || name; hooks = jQuery.propHooks[ name ]; } if ( value !== undefined ) { if ( hooks && "set" in hooks && ( ret = hooks.set( elem, value, name ) ) !== undefined ) { return ret; } return ( elem[ name ] = value ); } if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { return ret; } return elem[ name ]; }, propHooks: { tabIndex: { get: function( elem ) { // Support: IE <=9 - 11 only // elem.tabIndex doesn't always return the // correct value when it hasn't been explicitly set // https://web.archive.org/web/20141116233347/http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ // Use proper attribute retrieval(#12072) var tabindex = jQuery.find.attr( elem, "tabindex" ); if ( tabindex ) { return parseInt( tabindex, 10 ); } if ( rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName ) && elem.href ) { return 0; } return -1; } } }, propFix: { "for": "htmlFor", "class": "className" } } ); // Support: IE <=11 only // Accessing the selectedIndex property // forces the browser to respect setting selected // on the option // The getter ensures a default option is selected // when in an optgroup // eslint rule "no-unused-expressions" is disabled for this code // since it considers such accessions noop if ( !support.optSelected ) { jQuery.propHooks.selected = { get: function( elem ) { /* eslint no-unused-expressions: "off" */ var parent = elem.parentNode; if ( parent && parent.parentNode ) { parent.parentNode.selectedIndex; } return null; }, set: function( elem ) { /* eslint no-unused-expressions: "off" */ var parent = elem.parentNode; if ( parent ) { parent.selectedIndex; if ( parent.parentNode ) { parent.parentNode.selectedIndex; } } } }; } jQuery.each( [ "tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable" ], function() { jQuery.propFix[ this.toLowerCase() ] = this; } ); // Strip and collapse whitespace according to HTML spec // https://infra.spec.whatwg.org/#strip-and-collapse-ascii-whitespace function stripAndCollapse( value ) { var tokens = value.match( rnothtmlwhite ) || []; return tokens.join( " " ); } function getClass( elem ) { return elem.getAttribute && elem.getAttribute( "class" ) || ""; } function classesToArray( value ) { if ( Array.isArray( value ) ) { return value; } if ( typeof value === "string" ) { return value.match( rnothtmlwhite ) || []; } return []; } jQuery.fn.extend( { addClass: function( value ) { var classes, elem, cur, curValue, clazz, j, finalValue, i = 0; if ( isFunction( value ) ) { return this.each( function( j ) { jQuery( this ).addClass( value.call( this, j, getClass( this ) ) ); } ); } classes = classesToArray( value ); if ( classes.length ) { while ( ( elem = this[ i++ ] ) ) { curValue = getClass( elem ); cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " ); if ( cur ) { j = 0; while ( ( clazz = classes[ j++ ] ) ) { if ( cur.indexOf( " " + clazz + " " ) < 0 ) { cur += clazz + " "; } } // Only assign if different to avoid unneeded rendering. finalValue = stripAndCollapse( cur ); if ( curValue !== finalValue ) { elem.setAttribute( "class", finalValue ); } } } } return this; }, removeClass: function( value ) { var classes, elem, cur, curValue, clazz, j, finalValue, i = 0; if ( isFunction( value ) ) { return this.each( function( j ) { jQuery( this ).removeClass( value.call( this, j, getClass( this ) ) ); } ); } if ( !arguments.length ) { return this.attr( "class", "" ); } classes = classesToArray( value ); if ( classes.length ) { while ( ( elem = this[ i++ ] ) ) { curValue = getClass( elem ); // This expression is here for better compressibility (see addClass) cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " ); if ( cur ) { j = 0; while ( ( clazz = classes[ j++ ] ) ) { // Remove *all* instances while ( cur.indexOf( " " + clazz + " " ) > -1 ) { cur = cur.replace( " " + clazz + " ", " " ); } } // Only assign if different to avoid unneeded rendering. finalValue = stripAndCollapse( cur ); if ( curValue !== finalValue ) { elem.setAttribute( "class", finalValue ); } } } } return this; }, toggleClass: function( value, stateVal ) { var type = typeof value, isValidValue = type === "string" || Array.isArray( value ); if ( typeof stateVal === "boolean" && isValidValue ) { return stateVal ? this.addClass( value ) : this.removeClass( value ); } if ( isFunction( value ) ) { return this.each( function( i ) { jQuery( this ).toggleClass( value.call( this, i, getClass( this ), stateVal ), stateVal ); } ); } return this.each( function() { var className, i, self, classNames; if ( isValidValue ) { // Toggle individual class names i = 0; self = jQuery( this ); classNames = classesToArray( value ); while ( ( className = classNames[ i++ ] ) ) { // Check each className given, space separated list if ( self.hasClass( className ) ) { self.removeClass( className ); } else { self.addClass( className ); } } // Toggle whole class name } else if ( value === undefined || type === "boolean" ) { className = getClass( this ); if ( className ) { // Store className if set dataPriv.set( this, "__className__", className ); } // If the element has a class name or if we're passed `false`, // then remove the whole classname (if there was one, the above saved it). // Otherwise bring back whatever was previously saved (if anything), // falling back to the empty string if nothing was stored. if ( this.setAttribute ) { this.setAttribute( "class", className || value === false ? "" : dataPriv.get( this, "__className__" ) || "" ); } } } ); }, hasClass: function( selector ) { var className, elem, i = 0; className = " " + selector + " "; while ( ( elem = this[ i++ ] ) ) { if ( elem.nodeType === 1 && ( " " + stripAndCollapse( getClass( elem ) ) + " " ).indexOf( className ) > -1 ) { return true; } } return false; } } ); var rreturn = /\r/g; jQuery.fn.extend( { val: function( value ) { var hooks, ret, valueIsFunction, elem = this[ 0 ]; if ( !arguments.length ) { if ( elem ) { hooks = jQuery.valHooks[ elem.type ] || jQuery.valHooks[ elem.nodeName.toLowerCase() ]; if ( hooks && "get" in hooks && ( ret = hooks.get( elem, "value" ) ) !== undefined ) { return ret; } ret = elem.value; // Handle most common string cases if ( typeof ret === "string" ) { return ret.replace( rreturn, "" ); } // Handle cases where value is null/undef or number return ret == null ? "" : ret; } return; } valueIsFunction = isFunction( value ); return this.each( function( i ) { var val; if ( this.nodeType !== 1 ) { return; } if ( valueIsFunction ) { val = value.call( this, i, jQuery( this ).val() ); } else { val = value; } // Treat null/undefined as ""; convert numbers to string if ( val == null ) { val = ""; } else if ( typeof val === "number" ) { val += ""; } else if ( Array.isArray( val ) ) { val = jQuery.map( val, function( value ) { return value == null ? "" : value + ""; } ); } hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ]; // If set returns undefined, fall back to normal setting if ( !hooks || !( "set" in hooks ) || hooks.set( this, val, "value" ) === undefined ) { this.value = val; } } ); } } ); jQuery.extend( { valHooks: { option: { get: function( elem ) { var val = jQuery.find.attr( elem, "value" ); return val != null ? val : // Support: IE <=10 - 11 only // option.text throws exceptions (#14686, #14858) // Strip and collapse whitespace // https://html.spec.whatwg.org/#strip-and-collapse-whitespace stripAndCollapse( jQuery.text( elem ) ); } }, select: { get: function( elem ) { var value, option, i, options = elem.options, index = elem.selectedIndex, one = elem.type === "select-one", values = one ? null : [], max = one ? index + 1 : options.length; if ( index < 0 ) { i = max; } else { i = one ? index : 0; } // Loop through all the selected options for ( ; i < max; i++ ) { option = options[ i ]; // Support: IE <=9 only // IE8-9 doesn't update selected after form reset (#2551) if ( ( option.selected || i === index ) && // Don't return options that are disabled or in a disabled optgroup !option.disabled && ( !option.parentNode.disabled || !nodeName( option.parentNode, "optgroup" ) ) ) { // Get the specific value for the option value = jQuery( option ).val(); // We don't need an array for one selects if ( one ) { return value; } // Multi-Selects return an array values.push( value ); } } return values; }, set: function( elem, value ) { var optionSet, option, options = elem.options, values = jQuery.makeArray( value ), i = options.length; while ( i-- ) { option = options[ i ]; /* eslint-disable no-cond-assign */ if ( option.selected = jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1 ) { optionSet = true; } /* eslint-enable no-cond-assign */ } // Force browsers to behave consistently when non-matching value is set if ( !optionSet ) { elem.selectedIndex = -1; } return values; } } } } ); // Radios and checkboxes getter/setter jQuery.each( [ "radio", "checkbox" ], function() { jQuery.valHooks[ this ] = { set: function( elem, value ) { if ( Array.isArray( value ) ) { return ( elem.checked = jQuery.inArray( jQuery( elem ).val(), value ) > -1 ); } } }; if ( !support.checkOn ) { jQuery.valHooks[ this ].get = function( elem ) { return elem.getAttribute( "value" ) === null ? "on" : elem.value; }; } } ); // Return jQuery for attributes-only inclusion support.focusin = "onfocusin" in window; var rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, stopPropagationCallback = function( e ) { e.stopPropagation(); }; jQuery.extend( jQuery.event, { trigger: function( event, data, elem, onlyHandlers ) { var i, cur, tmp, bubbleType, ontype, handle, special, lastElement, eventPath = [ elem || document ], type = hasOwn.call( event, "type" ) ? event.type : event, namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split( "." ) : []; cur = lastElement = tmp = elem = elem || document; // Don't do events on text and comment nodes if ( elem.nodeType === 3 || elem.nodeType === 8 ) { return; } // focus/blur morphs to focusin/out; ensure we're not firing them right now if ( rfocusMorph.test( type + jQuery.event.triggered ) ) { return; } if ( type.indexOf( "." ) > -1 ) { // Namespaced trigger; create a regexp to match event type in handle() namespaces = type.split( "." ); type = namespaces.shift(); namespaces.sort(); } ontype = type.indexOf( ":" ) < 0 && "on" + type; // Caller can pass in a jQuery.Event object, Object, or just an event type string event = event[ jQuery.expando ] ? event : new jQuery.Event( type, typeof event === "object" && event ); // Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true) event.isTrigger = onlyHandlers ? 2 : 3; event.namespace = namespaces.join( "." ); event.rnamespace = event.namespace ? new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ) : null; // Clean up the event in case it is being reused event.result = undefined; if ( !event.target ) { event.target = elem; } // Clone any incoming data and prepend the event, creating the handler arg list data = data == null ? [ event ] : jQuery.makeArray( data, [ event ] ); // Allow special events to draw outside the lines special = jQuery.event.special[ type ] || {}; if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) { return; } // Determine event propagation path in advance, per W3C events spec (#9951) // Bubble up to document, then to window; watch for a global ownerDocument var (#9724) if ( !onlyHandlers && !special.noBubble && !isWindow( elem ) ) { bubbleType = special.delegateType || type; if ( !rfocusMorph.test( bubbleType + type ) ) { cur = cur.parentNode; } for ( ; cur; cur = cur.parentNode ) { eventPath.push( cur ); tmp = cur; } // Only add window if we got to document (e.g., not plain obj or detached DOM) if ( tmp === ( elem.ownerDocument || document ) ) { eventPath.push( tmp.defaultView || tmp.parentWindow || window ); } } // Fire handlers on the event path i = 0; while ( ( cur = eventPath[ i++ ] ) && !event.isPropagationStopped() ) { lastElement = cur; event.type = i > 1 ? bubbleType : special.bindType || type; // jQuery handler handle = ( dataPriv.get( cur, "events" ) || Object.create( null ) )[ event.type ] && dataPriv.get( cur, "handle" ); if ( handle ) { handle.apply( cur, data ); } // Native handler handle = ontype && cur[ ontype ]; if ( handle && handle.apply && acceptData( cur ) ) { event.result = handle.apply( cur, data ); if ( event.result === false ) { event.preventDefault(); } } } event.type = type; // If nobody prevented the default action, do it now if ( !onlyHandlers && !event.isDefaultPrevented() ) { if ( ( !special._default || special._default.apply( eventPath.pop(), data ) === false ) && acceptData( elem ) ) { // Call a native DOM method on the target with the same name as the event. // Don't do default actions on window, that's where global variables be (#6170) if ( ontype && isFunction( elem[ type ] ) && !isWindow( elem ) ) { // Don't re-trigger an onFOO event when we call its FOO() method tmp = elem[ ontype ]; if ( tmp ) { elem[ ontype ] = null; } // Prevent re-triggering of the same event, since we already bubbled it above jQuery.event.triggered = type; if ( event.isPropagationStopped() ) { lastElement.addEventListener( type, stopPropagationCallback ); } elem[ type ](); if ( event.isPropagationStopped() ) { lastElement.removeEventListener( type, stopPropagationCallback ); } jQuery.event.triggered = undefined; if ( tmp ) { elem[ ontype ] = tmp; } } } } return event.result; }, // Piggyback on a donor event to simulate a different one // Used only for `focus(in | out)` events simulate: function( type, elem, event ) { var e = jQuery.extend( new jQuery.Event(), event, { type: type, isSimulated: true } ); jQuery.event.trigger( e, null, elem ); } } ); jQuery.fn.extend( { trigger: function( type, data ) { return this.each( function() { jQuery.event.trigger( type, data, this ); } ); }, triggerHandler: function( type, data ) { var elem = this[ 0 ]; if ( elem ) { return jQuery.event.trigger( type, data, elem, true ); } } } ); // Support: Firefox <=44 // Firefox doesn't have focus(in | out) events // Related ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=687787 // // Support: Chrome <=48 - 49, Safari <=9.0 - 9.1 // focus(in | out) events fire after focus & blur events, // which is spec violation - http://www.w3.org/TR/DOM-Level-3-Events/#events-focusevent-event-order // Related ticket - https://bugs.chromium.org/p/chromium/issues/detail?id=449857 if ( !support.focusin ) { jQuery.each( { focus: "focusin", blur: "focusout" }, function( orig, fix ) { // Attach a single capturing handler on the document while someone wants focusin/focusout var handler = function( event ) { jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ) ); }; jQuery.event.special[ fix ] = { setup: function() { // Handle: regular nodes (via `this.ownerDocument`), window // (via `this.document`) & document (via `this`). var doc = this.ownerDocument || this.document || this, attaches = dataPriv.access( doc, fix ); if ( !attaches ) { doc.addEventListener( orig, handler, true ); } dataPriv.access( doc, fix, ( attaches || 0 ) + 1 ); }, teardown: function() { var doc = this.ownerDocument || this.document || this, attaches = dataPriv.access( doc, fix ) - 1; if ( !attaches ) { doc.removeEventListener( orig, handler, true ); dataPriv.remove( doc, fix ); } else { dataPriv.access( doc, fix, attaches ); } } }; } ); } var location = window.location; var nonce = { guid: Date.now() }; var rquery = ( /\?/ ); // Cross-browser xml parsing jQuery.parseXML = function( data ) { var xml, parserErrorElem; if ( !data || typeof data !== "string" ) { return null; } // Support: IE 9 - 11 only // IE throws on parseFromString with invalid input. try { xml = ( new window.DOMParser() ).parseFromString( data, "text/xml" ); } catch ( e ) {} parserErrorElem = xml && xml.getElementsByTagName( "parsererror" )[ 0 ]; if ( !xml || parserErrorElem ) { jQuery.error( "Invalid XML: " + ( parserErrorElem ? jQuery.map( parserErrorElem.childNodes, function( el ) { return el.textContent; } ).join( "\n" ) : data ) ); } return xml; }; var rbracket = /\[\]$/, rCRLF = /\r?\n/g, rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i, rsubmittable = /^(?:input|select|textarea|keygen)/i; function buildParams( prefix, obj, traditional, add ) { var name; if ( Array.isArray( obj ) ) { // Serialize array item. jQuery.each( obj, function( i, v ) { if ( traditional || rbracket.test( prefix ) ) { // Treat each array item as a scalar. add( prefix, v ); } else { // Item is non-scalar (array or object), encode its numeric index. buildParams( prefix + "[" + ( typeof v === "object" && v != null ? i : "" ) + "]", v, traditional, add ); } } ); } else if ( !traditional && toType( obj ) === "object" ) { // Serialize object item. for ( name in obj ) { buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add ); } } else { // Serialize scalar item. add( prefix, obj ); } } // Serialize an array of form elements or a set of // key/values into a query string jQuery.param = function( a, traditional ) { var prefix, s = [], add = function( key, valueOrFunction ) { // If value is a function, invoke it and use its return value var value = isFunction( valueOrFunction ) ? valueOrFunction() : valueOrFunction; s[ s.length ] = encodeURIComponent( key ) + "=" + encodeURIComponent( value == null ? "" : value ); }; if ( a == null ) { return ""; } // If an array was passed in, assume that it is an array of form elements. if ( Array.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) { // Serialize the form elements jQuery.each( a, function() { add( this.name, this.value ); } ); } else { // If traditional, encode the "old" way (the way 1.3.2 or older // did it), otherwise encode params recursively. for ( prefix in a ) { buildParams( prefix, a[ prefix ], traditional, add ); } } // Return the resulting serialization return s.join( "&" ); }; jQuery.fn.extend( { serialize: function() { return jQuery.param( this.serializeArray() ); }, serializeArray: function() { return this.map( function() { // Can add propHook for "elements" to filter or add form elements var elements = jQuery.prop( this, "elements" ); return elements ? jQuery.makeArray( elements ) : this; } ).filter( function() { var type = this.type; // Use .is( ":disabled" ) so that fieldset[disabled] works return this.name && !jQuery( this ).is( ":disabled" ) && rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) && ( this.checked || !rcheckableType.test( type ) ); } ).map( function( _i, elem ) { var val = jQuery( this ).val(); if ( val == null ) { return null; } if ( Array.isArray( val ) ) { return jQuery.map( val, function( val ) { return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; } ); } return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; } ).get(); } } ); var r20 = /%20/g, rhash = /#.*$/, rantiCache = /([?&])_=[^&]*/, rheaders = /^(.*?):[ \t]*([^\r\n]*)$/mg, // #7653, #8125, #8152: local protocol detection rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, rnoContent = /^(?:GET|HEAD)$/, rprotocol = /^\/\//, /* Prefilters * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example) * 2) These are called: * - BEFORE asking for a transport * - AFTER param serialization (s.data is a string if s.processData is true) * 3) key is the dataType * 4) the catchall symbol "*" can be used * 5) execution will start with transport dataType and THEN continue down to "*" if needed */ prefilters = {}, /* Transports bindings * 1) key is the dataType * 2) the catchall symbol "*" can be used * 3) selection will start with transport dataType and THEN go to "*" if needed */ transports = {}, // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression allTypes = "*/".concat( "*" ), // Anchor tag for parsing the document origin originAnchor = document.createElement( "a" ); originAnchor.href = location.href; // Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport function addToPrefiltersOrTransports( structure ) { // dataTypeExpression is optional and defaults to "*" return function( dataTypeExpression, func ) { if ( typeof dataTypeExpression !== "string" ) { func = dataTypeExpression; dataTypeExpression = "*"; } var dataType, i = 0, dataTypes = dataTypeExpression.toLowerCase().match( rnothtmlwhite ) || []; if ( isFunction( func ) ) { // For each dataType in the dataTypeExpression while ( ( dataType = dataTypes[ i++ ] ) ) { // Prepend if requested if ( dataType[ 0 ] === "+" ) { dataType = dataType.slice( 1 ) || "*"; ( structure[ dataType ] = structure[ dataType ] || [] ).unshift( func ); // Otherwise append } else { ( structure[ dataType ] = structure[ dataType ] || [] ).push( func ); } } } }; } // Base inspection function for prefilters and transports function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) { var inspected = {}, seekingTransport = ( structure === transports ); function inspect( dataType ) { var selected; inspected[ dataType ] = true; jQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) { var dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR ); if ( typeof dataTypeOrTransport === "string" && !seekingTransport && !inspected[ dataTypeOrTransport ] ) { options.dataTypes.unshift( dataTypeOrTransport ); inspect( dataTypeOrTransport ); return false; } else if ( seekingTransport ) { return !( selected = dataTypeOrTransport ); } } ); return selected; } return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && inspect( "*" ); } // A special extend for ajax options // that takes "flat" options (not to be deep extended) // Fixes #9887 function ajaxExtend( target, src ) { var key, deep, flatOptions = jQuery.ajaxSettings.flatOptions || {}; for ( key in src ) { if ( src[ key ] !== undefined ) { ( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ]; } } if ( deep ) { jQuery.extend( true, target, deep ); } return target; } /* Handles responses to an ajax request: * - finds the right dataType (mediates between content-type and expected dataType) * - returns the corresponding response */ function ajaxHandleResponses( s, jqXHR, responses ) { var ct, type, finalDataType, firstDataType, contents = s.contents, dataTypes = s.dataTypes; // Remove auto dataType and get content-type in the process while ( dataTypes[ 0 ] === "*" ) { dataTypes.shift(); if ( ct === undefined ) { ct = s.mimeType || jqXHR.getResponseHeader( "Content-Type" ); } } // Check if we're dealing with a known content-type if ( ct ) { for ( type in contents ) { if ( contents[ type ] && contents[ type ].test( ct ) ) { dataTypes.unshift( type ); break; } } } // Check to see if we have a response for the expected dataType if ( dataTypes[ 0 ] in responses ) { finalDataType = dataTypes[ 0 ]; } else { // Try convertible dataTypes for ( type in responses ) { if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[ 0 ] ] ) { finalDataType = type; break; } if ( !firstDataType ) { firstDataType = type; } } // Or just use first one finalDataType = finalDataType || firstDataType; } // If we found a dataType // We add the dataType to the list if needed // and return the corresponding response if ( finalDataType ) { if ( finalDataType !== dataTypes[ 0 ] ) { dataTypes.unshift( finalDataType ); } return responses[ finalDataType ]; } } /* Chain conversions given the request and the original response * Also sets the responseXXX fields on the jqXHR instance */ function ajaxConvert( s, response, jqXHR, isSuccess ) { var conv2, current, conv, tmp, prev, converters = {}, // Work with a copy of dataTypes in case we need to modify it for conversion dataTypes = s.dataTypes.slice(); // Create converters map with lowercased keys if ( dataTypes[ 1 ] ) { for ( conv in s.converters ) { converters[ conv.toLowerCase() ] = s.converters[ conv ]; } } current = dataTypes.shift(); // Convert to each sequential dataType while ( current ) { if ( s.responseFields[ current ] ) { jqXHR[ s.responseFields[ current ] ] = response; } // Apply the dataFilter if provided if ( !prev && isSuccess && s.dataFilter ) { response = s.dataFilter( response, s.dataType ); } prev = current; current = dataTypes.shift(); if ( current ) { // There's only work to do if current dataType is non-auto if ( current === "*" ) { current = prev; // Convert response if prev dataType is non-auto and differs from current } else if ( prev !== "*" && prev !== current ) { // Seek a direct converter conv = converters[ prev + " " + current ] || converters[ "* " + current ]; // If none found, seek a pair if ( !conv ) { for ( conv2 in converters ) { // If conv2 outputs current tmp = conv2.split( " " ); if ( tmp[ 1 ] === current ) { // If prev can be converted to accepted input conv = converters[ prev + " " + tmp[ 0 ] ] || converters[ "* " + tmp[ 0 ] ]; if ( conv ) { // Condense equivalence converters if ( conv === true ) { conv = converters[ conv2 ]; // Otherwise, insert the intermediate dataType } else if ( converters[ conv2 ] !== true ) { current = tmp[ 0 ]; dataTypes.unshift( tmp[ 1 ] ); } break; } } } } // Apply converter (if not an equivalence) if ( conv !== true ) { // Unless errors are allowed to bubble, catch and return them if ( conv && s.throws ) { response = conv( response ); } else { try { response = conv( response ); } catch ( e ) { return { state: "parsererror", error: conv ? e : "No conversion from " + prev + " to " + current }; } } } } } } return { state: "success", data: response }; } jQuery.extend( { // Counter for holding the number of active queries active: 0, // Last-Modified header cache for next request lastModified: {}, etag: {}, ajaxSettings: { url: location.href, type: "GET", isLocal: rlocalProtocol.test( location.protocol ), global: true, processData: true, async: true, contentType: "application/x-www-form-urlencoded; charset=UTF-8", /* timeout: 0, data: null, dataType: null, username: null, password: null, cache: null, throws: false, traditional: false, headers: {}, */ accepts: { "*": allTypes, text: "text/plain", html: "text/html", xml: "application/xml, text/xml", json: "application/json, text/javascript" }, contents: { xml: /\bxml\b/, html: /\bhtml/, json: /\bjson\b/ }, responseFields: { xml: "responseXML", text: "responseText", json: "responseJSON" }, // Data converters // Keys separate source (or catchall "*") and destination types with a single space converters: { // Convert anything to text "* text": String, // Text to html (true = no transformation) "text html": true, // Evaluate text as a json expression "text json": JSON.parse, // Parse text as xml "text xml": jQuery.parseXML }, // For options that shouldn't be deep extended: // you can add your own custom options here if // and when you create one that shouldn't be // deep extended (see ajaxExtend) flatOptions: { url: true, context: true } }, // Creates a full fledged settings object into target // with both ajaxSettings and settings fields. // If target is omitted, writes into ajaxSettings. ajaxSetup: function( target, settings ) { return settings ? // Building a settings object ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) : // Extending ajaxSettings ajaxExtend( jQuery.ajaxSettings, target ); }, ajaxPrefilter: addToPrefiltersOrTransports( prefilters ), ajaxTransport: addToPrefiltersOrTransports( transports ), // Main method ajax: function( url, options ) { // If url is an object, simulate pre-1.5 signature if ( typeof url === "object" ) { options = url; url = undefined; } // Force options to be an object options = options || {}; var transport, // URL without anti-cache param cacheURL, // Response headers responseHeadersString, responseHeaders, // timeout handle timeoutTimer, // Url cleanup var urlAnchor, // Request state (becomes false upon send and true upon completion) completed, // To know if global events are to be dispatched fireGlobals, // Loop variable i, // uncached part of the url uncached, // Create the final options object s = jQuery.ajaxSetup( {}, options ), // Callbacks context callbackContext = s.context || s, // Context for global events is callbackContext if it is a DOM node or jQuery collection globalEventContext = s.context && ( callbackContext.nodeType || callbackContext.jquery ) ? jQuery( callbackContext ) : jQuery.event, // Deferreds deferred = jQuery.Deferred(), completeDeferred = jQuery.Callbacks( "once memory" ), // Status-dependent callbacks statusCode = s.statusCode || {}, // Headers (they are sent all at once) requestHeaders = {}, requestHeadersNames = {}, // Default abort message strAbort = "canceled", // Fake xhr jqXHR = { readyState: 0, // Builds headers hashtable if needed getResponseHeader: function( key ) { var match; if ( completed ) { if ( !responseHeaders ) { responseHeaders = {}; while ( ( match = rheaders.exec( responseHeadersString ) ) ) { responseHeaders[ match[ 1 ].toLowerCase() + " " ] = ( responseHeaders[ match[ 1 ].toLowerCase() + " " ] || [] ) .concat( match[ 2 ] ); } } match = responseHeaders[ key.toLowerCase() + " " ]; } return match == null ? null : match.join( ", " ); }, // Raw string getAllResponseHeaders: function() { return completed ? responseHeadersString : null; }, // Caches the header setRequestHeader: function( name, value ) { if ( completed == null ) { name = requestHeadersNames[ name.toLowerCase() ] = requestHeadersNames[ name.toLowerCase() ] || name; requestHeaders[ name ] = value; } return this; }, // Overrides response content-type header overrideMimeType: function( type ) { if ( completed == null ) { s.mimeType = type; } return this; }, // Status-dependent callbacks statusCode: function( map ) { var code; if ( map ) { if ( completed ) { // Execute the appropriate callbacks jqXHR.always( map[ jqXHR.status ] ); } else { // Lazy-add the new callbacks in a way that preserves old ones for ( code in map ) { statusCode[ code ] = [ statusCode[ code ], map[ code ] ]; } } } return this; }, // Cancel the request abort: function( statusText ) { var finalText = statusText || strAbort; if ( transport ) { transport.abort( finalText ); } done( 0, finalText ); return this; } }; // Attach deferreds deferred.promise( jqXHR ); // Add protocol if not provided (prefilters might expect it) // Handle falsy url in the settings object (#10093: consistency with old signature) // We also use the url parameter if available s.url = ( ( url || s.url || location.href ) + "" ) .replace( rprotocol, location.protocol + "//" ); // Alias method option to type as per ticket #12004 s.type = options.method || options.type || s.method || s.type; // Extract dataTypes list s.dataTypes = ( s.dataType || "*" ).toLowerCase().match( rnothtmlwhite ) || [ "" ]; // A cross-domain request is in order when the origin doesn't match the current origin. if ( s.crossDomain == null ) { urlAnchor = document.createElement( "a" ); // Support: IE <=8 - 11, Edge 12 - 15 // IE throws exception on accessing the href property if url is malformed, // e.g. http://example.com:80x/ try { urlAnchor.href = s.url; // Support: IE <=8 - 11 only // Anchor's host property isn't correctly set when s.url is relative urlAnchor.href = urlAnchor.href; s.crossDomain = originAnchor.protocol + "//" + originAnchor.host !== urlAnchor.protocol + "//" + urlAnchor.host; } catch ( e ) { // If there is an error parsing the URL, assume it is crossDomain, // it can be rejected by the transport if it is invalid s.crossDomain = true; } } // Convert data if not already a string if ( s.data && s.processData && typeof s.data !== "string" ) { s.data = jQuery.param( s.data, s.traditional ); } // Apply prefilters inspectPrefiltersOrTransports( prefilters, s, options, jqXHR ); // If request was aborted inside a prefilter, stop there if ( completed ) { return jqXHR; } // We can fire global events as of now if asked to // Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118) fireGlobals = jQuery.event && s.global; // Watch for a new set of requests if ( fireGlobals && jQuery.active++ === 0 ) { jQuery.event.trigger( "ajaxStart" ); } // Uppercase the type s.type = s.type.toUpperCase(); // Determine if request has content s.hasContent = !rnoContent.test( s.type ); // Save the URL in case we're toying with the If-Modified-Since // and/or If-None-Match header later on // Remove hash to simplify url manipulation cacheURL = s.url.replace( rhash, "" ); // More options handling for requests with no content if ( !s.hasContent ) { // Remember the hash so we can put it back uncached = s.url.slice( cacheURL.length ); // If data is available and should be processed, append data to url if ( s.data && ( s.processData || typeof s.data === "string" ) ) { cacheURL += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data; // #9682: remove data so that it's not used in an eventual retry delete s.data; } // Add or update anti-cache param if needed if ( s.cache === false ) { cacheURL = cacheURL.replace( rantiCache, "$1" ); uncached = ( rquery.test( cacheURL ) ? "&" : "?" ) + "_=" + ( nonce.guid++ ) + uncached; } // Put hash and anti-cache on the URL that will be requested (gh-1732) s.url = cacheURL + uncached; // Change '%20' to '+' if this is encoded form body content (gh-2658) } else if ( s.data && s.processData && ( s.contentType || "" ).indexOf( "application/x-www-form-urlencoded" ) === 0 ) { s.data = s.data.replace( r20, "+" ); } // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. if ( s.ifModified ) { if ( jQuery.lastModified[ cacheURL ] ) { jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ cacheURL ] ); } if ( jQuery.etag[ cacheURL ] ) { jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] ); } } // Set the correct header, if data is being sent if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) { jqXHR.setRequestHeader( "Content-Type", s.contentType ); } // Set the Accepts header for the server, depending on the dataType jqXHR.setRequestHeader( "Accept", s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[ 0 ] ] ? s.accepts[ s.dataTypes[ 0 ] ] + ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) : s.accepts[ "*" ] ); // Check for headers option for ( i in s.headers ) { jqXHR.setRequestHeader( i, s.headers[ i ] ); } // Allow custom headers/mimetypes and early abort if ( s.beforeSend && ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || completed ) ) { // Abort if not done already and return return jqXHR.abort(); } // Aborting is no longer a cancellation strAbort = "abort"; // Install callbacks on deferreds completeDeferred.add( s.complete ); jqXHR.done( s.success ); jqXHR.fail( s.error ); // Get transport transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR ); // If no transport, we auto-abort if ( !transport ) { done( -1, "No Transport" ); } else { jqXHR.readyState = 1; // Send global event if ( fireGlobals ) { globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] ); } // If request was aborted inside ajaxSend, stop there if ( completed ) { return jqXHR; } // Timeout if ( s.async && s.timeout > 0 ) { timeoutTimer = window.setTimeout( function() { jqXHR.abort( "timeout" ); }, s.timeout ); } try { completed = false; transport.send( requestHeaders, done ); } catch ( e ) { // Rethrow post-completion exceptions if ( completed ) { throw e; } // Propagate others as results done( -1, e ); } } // Callback for when everything is done function done( status, nativeStatusText, responses, headers ) { var isSuccess, success, error, response, modified, statusText = nativeStatusText; // Ignore repeat invocations if ( completed ) { return; } completed = true; // Clear timeout if it exists if ( timeoutTimer ) { window.clearTimeout( timeoutTimer ); } // Dereference transport for early garbage collection // (no matter how long the jqXHR object will be used) transport = undefined; // Cache response headers responseHeadersString = headers || ""; // Set readyState jqXHR.readyState = status > 0 ? 4 : 0; // Determine if successful isSuccess = status >= 200 && status < 300 || status === 304; // Get response data if ( responses ) { response = ajaxHandleResponses( s, jqXHR, responses ); } // Use a noop converter for missing script but not if jsonp if ( !isSuccess && jQuery.inArray( "script", s.dataTypes ) > -1 && jQuery.inArray( "json", s.dataTypes ) < 0 ) { s.converters[ "text script" ] = function() {}; } // Convert no matter what (that way responseXXX fields are always set) response = ajaxConvert( s, response, jqXHR, isSuccess ); // If successful, handle type chaining if ( isSuccess ) { // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. if ( s.ifModified ) { modified = jqXHR.getResponseHeader( "Last-Modified" ); if ( modified ) { jQuery.lastModified[ cacheURL ] = modified; } modified = jqXHR.getResponseHeader( "etag" ); if ( modified ) { jQuery.etag[ cacheURL ] = modified; } } // if no content if ( status === 204 || s.type === "HEAD" ) { statusText = "nocontent"; // if not modified } else if ( status === 304 ) { statusText = "notmodified"; // If we have data, let's convert it } else { statusText = response.state; success = response.data; error = response.error; isSuccess = !error; } } else { // Extract error from statusText and normalize for non-aborts error = statusText; if ( status || !statusText ) { statusText = "error"; if ( status < 0 ) { status = 0; } } } // Set data for the fake xhr object jqXHR.status = status; jqXHR.statusText = ( nativeStatusText || statusText ) + ""; // Success/Error if ( isSuccess ) { deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] ); } else { deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] ); } // Status-dependent callbacks jqXHR.statusCode( statusCode ); statusCode = undefined; if ( fireGlobals ) { globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError", [ jqXHR, s, isSuccess ? success : error ] ); } // Complete completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] ); if ( fireGlobals ) { globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] ); // Handle the global AJAX counter if ( !( --jQuery.active ) ) { jQuery.event.trigger( "ajaxStop" ); } } } return jqXHR; }, getJSON: function( url, data, callback ) { return jQuery.get( url, data, callback, "json" ); }, getScript: function( url, callback ) { return jQuery.get( url, undefined, callback, "script" ); } } ); jQuery.each( [ "get", "post" ], function( _i, method ) { jQuery[ method ] = function( url, data, callback, type ) { // Shift arguments if data argument was omitted if ( isFunction( data ) ) { type = type || callback; callback = data; data = undefined; } // The url can be an options object (which then must have .url) return jQuery.ajax( jQuery.extend( { url: url, type: method, dataType: type, data: data, success: callback }, jQuery.isPlainObject( url ) && url ) ); }; } ); jQuery.ajaxPrefilter( function( s ) { var i; for ( i in s.headers ) { if ( i.toLowerCase() === "content-type" ) { s.contentType = s.headers[ i ] || ""; } } } ); jQuery._evalUrl = function( url, options, doc ) { return jQuery.ajax( { url: url, // Make this explicit, since user can override this through ajaxSetup (#11264) type: "GET", dataType: "script", cache: true, async: false, global: false, // Only evaluate the response if it is successful (gh-4126) // dataFilter is not invoked for failure responses, so using it instead // of the default converter is kludgy but it works. converters: { "text script": function() {} }, dataFilter: function( response ) { jQuery.globalEval( response, options, doc ); } } ); }; jQuery.fn.extend( { wrapAll: function( html ) { var wrap; if ( this[ 0 ] ) { if ( isFunction( html ) ) { html = html.call( this[ 0 ] ); } // The elements to wrap the target around wrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true ); if ( this[ 0 ].parentNode ) { wrap.insertBefore( this[ 0 ] ); } wrap.map( function() { var elem = this; while ( elem.firstElementChild ) { elem = elem.firstElementChild; } return elem; } ).append( this ); } return this; }, wrapInner: function( html ) { if ( isFunction( html ) ) { return this.each( function( i ) { jQuery( this ).wrapInner( html.call( this, i ) ); } ); } return this.each( function() { var self = jQuery( this ), contents = self.contents(); if ( contents.length ) { contents.wrapAll( html ); } else { self.append( html ); } } ); }, wrap: function( html ) { var htmlIsFunction = isFunction( html ); return this.each( function( i ) { jQuery( this ).wrapAll( htmlIsFunction ? html.call( this, i ) : html ); } ); }, unwrap: function( selector ) { this.parent( selector ).not( "body" ).each( function() { jQuery( this ).replaceWith( this.childNodes ); } ); return this; } } ); jQuery.expr.pseudos.hidden = function( elem ) { return !jQuery.expr.pseudos.visible( elem ); }; jQuery.expr.pseudos.visible = function( elem ) { return !!( elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length ); }; jQuery.ajaxSettings.xhr = function() { try { return new window.XMLHttpRequest(); } catch ( e ) {} }; var xhrSuccessStatus = { // File protocol always yields status code 0, assume 200 0: 200, // Support: IE <=9 only // #1450: sometimes IE returns 1223 when it should be 204 1223: 204 }, xhrSupported = jQuery.ajaxSettings.xhr(); support.cors = !!xhrSupported && ( "withCredentials" in xhrSupported ); support.ajax = xhrSupported = !!xhrSupported; jQuery.ajaxTransport( function( options ) { var callback, errorCallback; // Cross domain only allowed if supported through XMLHttpRequest if ( support.cors || xhrSupported && !options.crossDomain ) { return { send: function( headers, complete ) { var i, xhr = options.xhr(); xhr.open( options.type, options.url, options.async, options.username, options.password ); // Apply custom fields if provided if ( options.xhrFields ) { for ( i in options.xhrFields ) { xhr[ i ] = options.xhrFields[ i ]; } } // Override mime type if needed if ( options.mimeType && xhr.overrideMimeType ) { xhr.overrideMimeType( options.mimeType ); } // X-Requested-With header // For cross-domain requests, seeing as conditions for a preflight are // akin to a jigsaw puzzle, we simply never set it to be sure. // (it can always be set on a per-request basis or even using ajaxSetup) // For same-domain requests, won't change header if already provided. if ( !options.crossDomain && !headers[ "X-Requested-With" ] ) { headers[ "X-Requested-With" ] = "XMLHttpRequest"; } // Set headers for ( i in headers ) { xhr.setRequestHeader( i, headers[ i ] ); } // Callback callback = function( type ) { return function() { if ( callback ) { callback = errorCallback = xhr.onload = xhr.onerror = xhr.onabort = xhr.ontimeout = xhr.onreadystatechange = null; if ( type === "abort" ) { xhr.abort(); } else if ( type === "error" ) { // Support: IE <=9 only // On a manual native abort, IE9 throws // errors on any property access that is not readyState if ( typeof xhr.status !== "number" ) { complete( 0, "error" ); } else { complete( // File: protocol always yields status 0; see #8605, #14207 xhr.status, xhr.statusText ); } } else { complete( xhrSuccessStatus[ xhr.status ] || xhr.status, xhr.statusText, // Support: IE <=9 only // IE9 has no XHR2 but throws on binary (trac-11426) // For XHR2 non-text, let the caller handle it (gh-2498) ( xhr.responseType || "text" ) !== "text" || typeof xhr.responseText !== "string" ? { binary: xhr.response } : { text: xhr.responseText }, xhr.getAllResponseHeaders() ); } } }; }; // Listen to events xhr.onload = callback(); errorCallback = xhr.onerror = xhr.ontimeout = callback( "error" ); // Support: IE 9 only // Use onreadystatechange to replace onabort // to handle uncaught aborts if ( xhr.onabort !== undefined ) { xhr.onabort = errorCallback; } else { xhr.onreadystatechange = function() { // Check readyState before timeout as it changes if ( xhr.readyState === 4 ) { // Allow onerror to be called first, // but that will not handle a native abort // Also, save errorCallback to a variable // as xhr.onerror cannot be accessed window.setTimeout( function() { if ( callback ) { errorCallback(); } } ); } }; } // Create the abort callback callback = callback( "abort" ); try { // Do send the request (this may raise an exception) xhr.send( options.hasContent && options.data || null ); } catch ( e ) { // #14683: Only rethrow if this hasn't been notified as an error yet if ( callback ) { throw e; } } }, abort: function() { if ( callback ) { callback(); } } }; } } ); // Prevent auto-execution of scripts when no explicit dataType was provided (See gh-2432) jQuery.ajaxPrefilter( function( s ) { if ( s.crossDomain ) { s.contents.script = false; } } ); // Install script dataType jQuery.ajaxSetup( { accepts: { script: "text/javascript, application/javascript, " + "application/ecmascript, application/x-ecmascript" }, contents: { script: /\b(?:java|ecma)script\b/ }, converters: { "text script": function( text ) { jQuery.globalEval( text ); return text; } } } ); // Handle cache's special case and crossDomain jQuery.ajaxPrefilter( "script", function( s ) { if ( s.cache === undefined ) { s.cache = false; } if ( s.crossDomain ) { s.type = "GET"; } } ); // Bind script tag hack transport jQuery.ajaxTransport( "script", function( s ) { // This transport only deals with cross domain or forced-by-attrs requests if ( s.crossDomain || s.scriptAttrs ) { var script, callback; return { send: function( _, complete ) { script = jQuery( "

Veusz command line and embedding interface (API)¶

Introduction¶

Veusz uses a common API, or set of commands, to control the program via its command line (from the Veusz console; click View, Windows, Console Window), the embedding interface (when Veusz is embedded in other Python programs), from within plugins, within documents (VSZ documents contain commands used to generate the document) or externally from the operating system command line (using veusz –listen).

As Veusz is a a Python application it uses Python as its scripting language. You can therefore freely mix Veusz and Python commands on the Veusz command line (Click View, Windows, Console Window to get access to the command line). Veusz can also read in Python scripts from files on the command line (see the Load command).

When commands are entered in the command prompt in the Veusz window, Veusz supports a simplified command syntax, whereq brackets following commands names, and commas, can replaced by spaces in Veusz commands (not Python commands). For example, Add('graph', name='foo'), may be entered as Add 'graph' name='foo'.

The numpy package is already imported into the command line interface (as *), so you do not need to import it first.

The command prompt supports history (use the up and down cursor keys to recall previous commands).

Most of the commands listed below can be used in the in-program command line interface, using the embedding interface or using veusz –listen. Commands specific to particular modes are documented as such.

Veusz also includes a new object-oriented version of the API, which is documented at new_api.

Commands and API¶

We list the allowed set of commands below

Action¶

Action('actionname', componentpath='.')

Initiates the specified action on the widget (component) given the action name. Actions perform certain automated routines. These include “fit†on a fit widget, and “zeroMargins†on grids.

Add¶

Add('widgettype', name='nameforwidget', autoadd=True, optionalargs)

The Add command adds a graph into the current widget (See the To command to change the current position).

The first argument is the type of widget to add. These include “graphâ€, “pageâ€, “axisâ€, “xy†and “gridâ€. name is the name of the new widget (if not given, it will be generated from the type of the widget plus a number). The autoadd parameter if set, constructs the default sub-widgets this widget has (for example, axes in a graph).

Optionally, default values for the graph settings may be given, for example Add('axis', name='y', direction='vertical').

Subsettings may be set by using double underscores, for example Add('xy', MarkerFill__color='red', ErrorBarLine__hide=True).

Returns: Name of widget added.

AddCustom¶

AddCustom(type, name, value)

Add a custom definition for evaluation of expressions. This can define a constant (can be in terms of other constants), a function of 1 or more variables, or a function imported from an external python module.

ctype is “constantâ€, “function†or “importâ€.

name is name of constant, or “function(x, y, …)†or module name.

val is definition for constant or function (both are _strings_), or is a list of symbols for a module (comma separated items in a string).

If mode is ‘appendalways’, the custom value is appended to the end of the list even if there is one with the same name. If mode is ‘replace’, it replaces any existing definition in the same place in the list or is appended otherwise. If mode is ‘append’, then an existing definition is deleted, and the new one appended to the end.

AddImportPath¶

AddImportPath(directory)

Add a directory to the list of directories to try to import data from.

CloneWidget¶

CloneWidget(widget, newparent, newname=None)

Clone the widget given, placing the copy in newparent and the name given. newname is an optional new name to give it Returns new widget path.

Close¶

Close()

Closes the plotwindow. This is only supported in embedded mode.

CreateHistogram¶

CreateHistogram(inexpr, outbinsds, outvalsds, binparams=None, binmanual=None, method='counts', cumulative = 'none', errors=False)

Histogram an input expression. inexpr is input expression. outbinds is the name of the dataset to create giving bin positions. outvalsds is name of dataset for bin values. binparams is None or (numbins, minval, maxval, islogbins). binmanual is None or a list of bin values. method is ‘counts’, ‘density’, or ‘fractions’. cumulative is to calculate cumulative distributions which is ‘none’, ‘smalltolarge’ or ‘largetosmall’. errors is to calculate Poisson error bars.

CurrentPath¶

CurrentPath()

Returns current widget path, as set by To.

DatasetPlugin¶

DatasetPlugin(pluginname, fields, datasetnames={})>

Use a dataset plugin. pluginname: name of plugin to use fields: dict of input values to plugin datasetnames: dict mapping old names to new names of datasets if they are renamed. The new name None means dataset is deleted

EnableToolbar¶

EnableToolbar(enable=True)

Enable/disable the zooming toolbar in the plotwindow. This command is only supported in embedded mode or from veusz –listen.

Export¶

Export(filename, color=True, page=0, dpi=100, antialias=True, quality=85, backcolor='#ffffff00', pdfdpi=150, svgdpi=96, svgtextastext=False)

Export the page given to the filename given. The filename must end with the correct extension to get the right sort of output file. Currrenly supported extensions are ‘.eps’, ‘.pdf’, ‘.ps’, ‘.svg’, ‘.jpg’, ‘.jpeg’, ‘.bmp’ and ‘.png’. If color is True, then the output is in colour, else greyscale. page is the page number of the document to export (starting from 0 for the first page!). A list of pages can be given for multipage formats (.pdf or .ps). dpi is the number of dots per inch for bitmap output files. antialias - antialiases output if True. quality is a quality parameter for jpeg output. backcolor is the background color for bitmap files, which is a name or a #RRGGBBAA value (red, green, blue, alpha). pdfdpi is the dpi to use when exporting EPS or PDF files. svgdpi is the dpi to use when exporting to SVG files. svgtextastext says whether to export SVG text as text, rather than curves.

FilterDatasets¶

FilterDatasets(filterexpr, datasets, prefix="", suffix="", invert=False, replaceblanks=False)

Filter a list of datasets given. Creates new datasets for each with prefix and suffix added to input dataset names. filterexpr is an input numpy eexpression for filtering the datasets. If invert is set, the filter condition is inverted. If replaceblanks is set, filtered values are not removed, but replaced with a blank or NaN value. This command only works on 1D numeric, date or text datasets.

ForceUpdate¶

ForceUpdate()

Force the window to be updated to reflect the current state of the document. Often used when periodic updates have been disabled (see SetUpdateInterval). This command is only supported in embedded mode or from veusz –listen.

Get¶

Get('settingpath')

Returns: The value of the setting given by the path.

>>> Get('/page1/graph1/x/min')
'Auto'

GetChildren¶

GetChildren(where='.')

Returns: The names of the widgets which are children of the path given

GetClick¶

GetClick()

Waits for the user to click on a graph and returns the position of the click on appropriate axes. Command only works in embedded mode.

Returns: A list containing tuples of the form (axispath, val) for each axis for which the click was in range. The value is the value on the axis for the click.

GetColormap¶

GetColormap(name, invert=False, nvals=256)

Returns a colormap as a numpy array of red, green, blue, alpha values (ranging from 0 to 255) with the number of steps given.

GetData¶

GetData(name)

Returns: For a 1D dataset, a tuple containing the dataset with the name given. The value is (data, symerr, negerr, poserr), with each a numpy array of the same size or None. data are the values of the dataset, symerr are the symmetric errors (if set), negerr and poserr and negative and positive asymmetric errors (if set). If a text dataset, return a list of text elements. If the dataset is a date-time dataset, return a list of Python datetime objects. If the dataset is a 2D dataset return the tuple (data, rangex, rangey), where data is a 2D numpy array and rangex/y are tuples giving the range of the x and y coordinates of the data. If it is an ND dataset, return an n-dimensional array.

data = GetData('x')
SetData('x', data[0]*0.1, \*data[1:])

GetDataType¶

GetDataType(name)

Get type of dataset with name given. Returns ‘1d’ for a 1d dataset, ‘2d’ for a 2d dataset, ‘text’ for a text dataset and ‘datetime’ for a datetime dataset.

GetDatasets¶

GetDatasets()

Returns: The names of the datasets in the current document.

GPL¶

GPL()

Print out the GNU Public Licence, which Veusz is licenced under.

ImportFile¶

ImportFile(comm, filename, descriptor, useblocks=False, linked=False, prefix='', suffix='', ignoretext=False, encoding='utf_8', renames=None)

Imports data from a file. The arguments are the filename to load data from and the descriptor.

The format of the descriptor is a list of variable names representing the columns of the data. For more information see Descriptors.

If the linked parameter is set to True, if the document is saved, the data imported will not be saved with the document, but will be reread from the filename given the next time the document is opened. The linked parameter is optional.

If useblocks is set, then blank lines or the word ‘no’ are used to split the data into blocks. Dataset names are appended with an underscore and the block number (starting from 1). encoding is the name of the text file encoding. renames is a dict mapping existing to new names after import.

If prefix and/or suffix are set, then the prefix and suffix are added to each dataset name. If set, renames maps imported dataset names to final dataset names after import.

Returns: A tuple containing a list of the imported datasets and the number of conversions which failed for a dataset.

ImportFile2D¶

ImportFile2D(filename, datasetnames, xrange=None, yrange=None, invertrows=None, invertcols=None, transpose=None, gridatedge=None, mode='text', csvdelimiter=',', csvtextdelimiter='"', csvlocale='en_US', prefix="", suffix="", encoding='utf_8', linked=False)

Imports two-dimensional data from a file. The required arguments are the filename to load data from and the dataset name, or a list of names to use.

In text mode, the file format this command accepts is a two-dimensional matrix of numbers, with the columns separated by spaces or tabs, and the rows separated by new lines. The X-coordinate is taken to be in the direction of the columns. Comments are supported (use #, ! or %), as are continuation characters (\). Separate datasets are deliminated by using blank lines. In csv mode, the csv parameters give the type of CSV file sypported.

xrange is a tuple containing the range of data in x coordinates
yrange is a tuple containing the range of data in y coordinates
if invertrows=True, then rows are inverted when read
if invertcols=True, then cols are inverted when read
if transpose=True, then rows and columns are swapped
if gridatedge=True, use top row and left column for pixel positions

mode is either 'text' or 'csv'
csvdelimiter is the csv delimiter for csv
csvtextdelimiter is the csv text delimiter for csv
csvlocale is locale to use when reading csv data

prefix and suffix are prepended and appended to dataset names

encoding is encoding character set

if linked=True then the dataset is linked to the file

Returns: list of imported datasets

In addition to the matrix of numbers, the various optional parameters this command takes can also be specified in the data file. These commands should be given on separate lines before the matrix of numbers. They are:

  1. xrange A B

  2. yrange C D

  3. invertrows

  4. invertcols

  5. transpose

ImportFileCSV¶

ImportFileCSV('filename', readrows=False, delimiter=',', skipwhitespace=False, textdelimiter='"', encoding='utf_8', headerignore=0, rowsignore=0, blanksaredata=False, numericlocale='en_US', dateformat='YYYY-MM-DD|T|hh:mm:ss', headermode='multi', dsprefix='', dssuffix='', prefix=None, renames=None, linked=False)

This command imports data from a CSV format file. Data are read from the file using the dataset names given at the top of the files in columns. Please see the reading data section of this manual for more information. The options are explained below.

readrows: if true, data are read across rather than down
delimiter: character for delimiting data (usually ',')
skipwhitespace: if true, white space following delimiter is ignored
textdelimiter: character surrounding text (usually '"')
encoding: encoding used in file
headerignore: number of lines to ignore after header text
rowsignore: number of rows to ignore at top of file
blanksaredata: treats blank lines in csv files as blank data values
numericlocale: format to use for reading numbers
dateformat: format for interpreting dates
headermode: 'multi': multiple headers allowed in file
            '1st': first text found are headers
            'none': no headers, guess data and use default names

Dataset names are prepended and appended, by dsprefix and dssuffix,
respectively
 (prefix is backware compatibility only, it adds an underscore
  relative to dsprefix)

renames is a map of old names to new names to rename on import

If linked is True the data are linked with the file.

Returns: list of imported datasets

ImportFileFITS¶

ImportFileFits(filename, items, namemap={}, slices={}, twodranges={}, twod_as_oned=set([]), wcsmodes={}, prefix='', suffix='', renames={}, linked=False)

Import data from a FITS file.

items is a list of datasets to be imported. items are formatted like the following:

'/':               import whole file
'/hduname':        import whole HDU (image or table)
'/hduname/column': import column from table HDU

all values in items should be lower case.

HDU names have to follow a Veusz-specific naming. If the HDU has a standard name (e.g. primary or events), then this is used. If the HDU has a EXTVER keyword then this number is appended to this name. An extra number is appended if this name is not unique. If the HDU has no name, then the name used should be ‘hduX’, where X is the HDU number (0 is the primary HDU).

namemap maps an input dataset (using the scheme above for items) to a Veusz dataset name. Special suffixes can be used on the Veusz dataset name to indicate that the dataset should be imported specially.

'foo (+)':  import as +ve error for dataset foo
'foo (-)':  import as -ve error for dataset foo
'foo (+-)': import as symmetric error for dataset foo

slices is an optional dict specifying slices to be selected when importing. For each dataset to be sliced, provide a tuple of values, one for each dimension. The values should be a single integer to select that index, or a tuple (start, stop, step), where the entries are integers or None.

twodranges is an optional dict giving data ranges for 2D datasets. It maps names to (minx, miny, maxx, maxy).

twod_as_oned: optional set containing 2D datasets to attempt to read as 1D, treating extra columns as error bars

wcsmodes is an optional dict specfying the WCS import mode for 2D datasets in HDUs. The keys are ‘/hduname’ and the values can be ‘pixel’: number pixel range from 0 to maximum (default) ‘pixel_wcs’: pixel number relative to WCS reference pixel ‘linear_wcs’: linear coordinate system from the WCS keywords ‘fraction’: fractional values from 0 to 1.

renames is an optional dict mapping old to new dataset names, to be renamed after importing

linked specifies that the dataset is linked to the file.

Values under the VEUSZ header keyword can be used to override defaults:

'name': override name for dataset
'slice': slice on importing (use format "start:stop:step,...")
'range': should be 4 item array to specify x and y ranges:
    [minx, miny, maxx, maxy]
'xrange' / 'yrange': individual ranges for x and y
'xcent' / 'ycent': arrays giving the centres of pixels
'xedge' / 'yedge': arrays giving the edges of pixels
'twod_as_oned': treat 2d dataset as 1d dataset with errors
'wcsmode': use specific WCS mode for dataset (see values above)
These are specified under the VEUSZ header keyword in the form
    KEY=VALUE
or for column-specific values
COLUMNNAME: KEY=VALUE

Returns: list of imported datasets

ImportFileHDF5¶

ImportFileHDF5(filename, items, namemap={}, slices={}, twodranges={}, twod_as_oned=set([]), convert_datetime={}, prefix='', suffix='', renames={}, linked=False)

Import data from a HDF5 file. items is a list of groups and datasets which can be imported. If a group is imported, all child datasets are imported. namemap maps an input dataset to a veusz dataset name. Special suffixes can be used on the veusz dataset name to indicate that the dataset should be imported specially.

'foo (+)': import as +ve error for dataset foo
'foo (-)': import as -ve error for dataset foo
'foo (+-)': import as symmetric error for dataset foo

slices is an optional dict specifying slices to be selected when importing. For each dataset to be sliced, provide a tuple of values, one for each dimension. The values should be a single integer to select that index, or a tuple (start, stop, step), where the entries are integers or None.

twodranges is an optional dict giving data ranges for 2d datasets. It maps names to (minx, miny, maxx, maxy). twod_as_oned: optional set containing 2d datasets to attempt to read as 1d

convert_datetime should be a dict mapping hdf name to specify date/time importing. For a 1d numeric dataset: if this is set to ‘veusz’, this is the number of seconds since 2009-01-01, if this is set to ‘unix’, this is the number of seconds since 1970-01-01. For a text dataset, this should give the format of the date/time, e.g. ‘YYYY-MM-DD|T|hh:mm:ss’ or ‘iso’ for iso format.

renames is a dict mapping old to new dataset names, to be renamed after importing. linked specifies that the dataset is linked to the file.

Attributes can be used in datasets to override defaults:

'vsz_name': set to override name for dataset in veusz
'vsz_slice': slice on importing (use format "start:stop:step,...")
'vsz_range': should be 4 item array to specify x and y ranges:
    [minx, miny, maxx, maxy]
'vsz_twod_as_oned': treat 2d dataset as 1d dataset with errors
'vsz_convert_datetime': treat as date/time, set to one of the values
above.

For compound datasets these attributes can be given on a per-column basis using attribute names vsz_attributename_columnname.

Returns: list of imported datasets

ImportFileND¶

def ImportFileND(comm, filename, dataset, shape=None, transpose=False, mode='text', csvdelimiter=',', csvtextdelimiter='"', csvlocale='en_US', prefix="", suffix="", encoding='utf_8', linked=False)

Import an n-dimensional dataset from a file. The file should either be in CSV format (mode=’csv’) or whitespace-separated text (mode=’text’). A one-dimensional dataset is given as a list of numbers on a single line/row. A two-dimensional dataset is given by a set of rows. A three-dimensional dataset is given by a set of two-dimensional datasets, with blank lines between them. a four-dimensional dataset is given by a set of three-dimensional datasets with two blank lines between each. Each additional dataset increases the separating number of blank lines by one. Alternatively, the numbers can be given in any form (number of numbers on each row) and “shape†is included to reshape the data into the desired shape.

In the file, or included as parameters above, the command “shape num1 num2…†can be included to reshape the output dataset to the shape given by the numbers in the row after “shape†(these should be in separate columns in CSV format). If one of these numbers is -1, then this dimension is inferred from the number of values and the other dimensions. Also supported is the “transpose†command or optional argument which reverses the order of the dimensions.

ImportFilePlugin¶

ImportFilePlugin('pluginname', 'filename', **pluginargs, linked=False, encoding='utf_8', prefix='', suffix='', renames={})

Import data from file using import plugin ‘pluginname’. The arguments to the plugin are given, plus optionally a text encoding, and prefix and suffix to prepend or append to dataset names. renames, if set, provides new names for datasets after import.

ImportFITSFile¶

ImportFITSFile(datasetname, filename, hdu, datacol='A', symerrcol='B', poserrcol='C', negerrcol='D', linked=True/False, renames={})

This command is deprecated. Please do not use in new code, but instead use ImportFileFITS.

This command does a simple import from a FITS file. The FITS format is used within the astronomical community to transport binary data. For a more powerful FITS interface, you can use PyFITS within your scripts.

The datasetname is the name of the dataset to import, the filename is the name of the FITS file to import from. The hdu parameter specifies the HDU to import data from (numerical or a name).

If the HDU specified is a primary HDU or image extension, then a two-dimensional dataset is loaded from the file. The optional parameters (other than linked) are ignored. Any WCS information within the HDU are used to provide a suitable xrange and yrange.

If the HDU is a table, then the datacol parameter must be specified (and optionally symerrcol, poserrcol and negerrcol). The dataset is read in from the named column in the table. Any errors are read in from the other specified columns.

If linked is True, then the dataset is not saved with a saved document, but is reread from the data file each time the document is loaded. renames, if set, provides new names for datasets after import.

ImportString¶

ImportString('descriptor', 'data')

Like, ImportFile, but loads the data from the specfied string rather than a file. This allows data to be easily embedded within a document. The data string is usually a multi-line Python string.

Returns: A tuple containing a list of the imported datasets and the number of conversions which failed for a dataset.

Changed in version 0.5: A tuple is returned rather than just the number of imported variables.

ImportString('x y', '''
    1   2
    2   5
    3   10
''')

ImportString2D¶

ImportString2D(datasets, string, xrange=None, yrange=None, invertrows=None, invertcols=None, transpose=None)

Imports a two-dimensional dataset from the string given. This is similar to the ImportFile2D command, with the same dataset format within the string. The optional values are also listed there. The various controlling parameters can be set within the string. See the ImportFile2D section for details.

ImportStringND¶

ImportStringND(dataset, string, shape=None, transpose=False)

Imports a n-dimensional dataset from the string given. This is similar to the ImportFileND command. Please look there for more detail and the description of the optional parameters and in-stream allowed parameters.

IsClosed¶

IsClosed()

Returns a boolean value telling the caller whether the plotting window has been closed.

Note: this command is only supported in the embedding interface.

List¶

List(where='.')

List the widgets which are contained within the widget with the path given, the type of widgets, and a brief description.

Load¶

Load('filename.vsz')

Loads the veusz script file given. The script file can be any Python code. The code is executed using the Veusz interpreter.

Note: this command is only supported at the command line and not in a script. Scripts may use the python execfile function instead.

MoveToPage¶

MoveToPage(pagenum)

Updates window to show the page number given of the document.

Note: this command is only supported in the embedding interface or veusz –listen.

ReloadData¶

ReloadData()

Reload any datasets which have been linked to files.

Returns: A tuple containing a list of the imported datasets and the number of conversions which failed for a dataset.

Rename¶

Remove('widgetpath', 'newname')

Rename the widget at the path given to a new name. This command does not move widgets. See To for a description of the path syntax. ‘.’ can be used to select the current widget.

Remove¶

Remove('widgetpath')

Remove the widget selected using the path. See To for a description of the path syntax.

ResizeWindow¶

ResizeWindow(width, height)

Resizes window to be width by height pixels.

Note: this command is only supported in the embedding interface or veusz –listen.

Save¶

Save('filename.vsz')

Save the current document under the filename given.

Set¶

Set('settingpath', val)

Set the setting given by the path to the value given. If the type of val is incorrect, an InvalidType exception is thrown. The path to the setting is the optional path to the widget the setting is contained within, an optional subsetting specifier, and the setting itself.

Set('page1/graph1/x/min', -10.)

SetAntiAliasing¶

SetAntiAliasing(on)

Enable or disable anti aliasing in the plot window, replotting the image.

SetCompatLevel¶

SetCompatLevel(level)

Set the document compatibility level. If level<0, then choose the latest version. As a side effect, this wipes any widgets in the document and resets all settings.

SetData¶

SetData(name, val, symerr=None, negerr=None, poserr=None)

Set the dataset name with the values given. If None is given for an item, it will be left blank. val is the actual data, symerr are the symmetric errors, negerr and poserr and the getative and positive asymmetric errors. The data can be given as lists or numpys.

SetDataExpression¶

SetDataExpression(name, val, symerr=None, negerr=None, poserr=None, linked=False, parametric=None)

Create a new dataset based on the expressions given. The expressions are Python syntax expressions based on existing datasets.

If linked is True, the dataset will change as the datasets in the expressions change.

Parametric can be set to a tuple of (minval, maxval, numitems). t in the expression will iterate from minval to maxval in numitems values.

SetDataND¶

SetDataRange(name, val)

Set a n-dimensional dataset to be the values given by val. val should be an n-dimensional numpy array of values, or a list of lists.

SetDataRange¶

SetDataRange(name, numsteps, val, symerr=None, negerr=None, poserr=None, linked=False)

Set dataset to be a range of values with numsteps steps. val is tuple made up of (minimum value, maximum value). symerr, negerr and poserr are optional tuples for the error bars.

If linked is True, the dataset can be saved in a document as a SetDataRange, otherwise it is expanded to the values which would make it up.

SetData2D¶

SetData2D('name', val, xrange=(A,B), yrange=(C,D), xgrid=[1,2,3...], ygrid=[4,5,6...])

Creates a two-dimensional dataset with the name given. val is either a two-dimensional numpy array, or is a list of lists, with each list in the list representing a row. Do not give xrange if xgrid is set and do not give yrange if ygrid is set, and vice versa.

xrange and yrange are optional tuples giving the inclusive range of the X and Y coordinates of the data. xgrid and ygrid are optional lists, tuples or arrays which give the coordinates of the edges of the pixels. There should be one more item in each array than pixels.

SetData2DExpression¶

SetData2DExpression('name', expr, linked=False)

Create a 2D dataset based on expressions. name is the new dataset name expr is an expression which should return a 2D array linked specifies whether to permanently link the dataset to the expressions.

SetData2DExpressionXYZ¶

SetData2DExpressionXYZ('name', 'xexpr', 'yexpr', 'zexpr', linked=False)

Create a 2D dataset based on three 1D expressions. The x, y expressions need to evaluate to a grid of x, y points, with the z expression as the 2D value at that point. Currently only linear fixed grids are supported. This function is intended to convert calculations or measurements at fixed points into a 2D dataset easily. Missing values are filled with NaN.

SetData2DXYFunc¶

SetData2DXYFunc('name', xstep, ystep, 'expr', linked=False)

Construct a 2D dataset using a mathematical expression of “x†and “yâ€. The x values are specified as (min, max, step) in xstep as a tuple, the y values similarly. If linked remains as False, then a real 2D dataset is created, where values can be modified and the data are stored in the saved file.

SetDataDateTime¶

SetDataDateTime('name', vals)

Creates a datetime dataset of name given. vals is a list of Python datetime objects.

SetDataText¶

SetDataText(name, val)

Set the text dataset name with the values given. val must be a type that can be converted into a Python list.

SetDataText('mylabel', ['oranges', 'apples', 'pears', 'spam'])

SetToReference¶

SetToReference(setting, refval)

Link setting given to other setting refval.

SetUpdateInterval¶

SetUpdateInterval(interval)

Tells window to update every interval milliseconds at most. The value 0 disables updates until this function is called with a non-zero. The value -1 tells Veusz to update the window every time the document has changed. This will make things slow if repeated changes are made to the document. Disabling updates and using the ForceUpdate command will allow the user to control updates directly.

Note: this command is only supported in the embedding interface or veusz –listen.

SetVerbose¶

SetVerbose(v=True)

If v is True, then extra information is printed out by commands.

StartSecondView¶

StartSecondView(name = 'window title')

In the embedding interface, this method will open a new Embedding interface onto the same document, returning the object. This new window provides a second view onto the document. It can, for instance, show a different page to the primary view. name is a window title for the new window.

Note: this command is only supported in the embedding interface.

TagDatasets¶

TagDatasets('tag', ['ds1', 'ds2'...])

Adds the tag to the list of datasets given..

To¶

To('widgetpath')

The To command takes a path to a widget and moves to that widget. For example, this may be “/â€, the root widget, “graph1â€, “/page1/graph1/xâ€, “../xâ€. The syntax is designed to mimic Unix paths for files. “/†represents the base widget (where the pages reside), and “..†represents the widget next up the tree.

Quit¶

Quit()

Quits Veusz. This is only supported in veusz –listen.

WaitForClose¶

WaitForClose()

Wait until the plotting window has been closed.

Note: this command is only supported in the embedding interface.

Zoom¶

Zoom(factor)

Sets the plot zoom factor, relative to a 1:1 scaling. factor can also be “widthâ€, “height†or “pageâ€, to zoom to the page width, height or page, respectively.

This is only supported in embedded mode or veusz –listen.

Security¶

With the 1.0 release of Veusz, input scripts and expressions are checked for possible security risks. Only a limited subset of Python functionality is allowed, or a dialog box is opened allowing the user to cancel the operation. Specifically you cannot import modules, get attributes of Python objects, access globals() or locals() or do any sort of file reading or manipulation. Basically anything which might break in Veusz or modify a system is not supported. In addition internal Veusz functions which can modify a system are also warned against, specifically Print(), Save() and Export().

If you are running your own scripts and do not want to be bothered by these dialogs, you can run veusz with the --unsafe-mode option.

Using Veusz from other programs¶

Non-Qt Python programs¶

Veusz can be used as a Python module for plotting data. There are two ways to use the module: (1) with an older path-based Veusz commands, used in Veusz saved document files or (2) using an object-oriented interface. With the old style method the user uses a unix-path inspired API to navigate the widget tree and add or manipulate widgets. With the new style interface, the user navigates the tree with attributes of the Root object to access Nodes. The new interface is likely to be easier to use unless you are directly translating saved files.

Older path-based interface¶

"""An example embedding program. Veusz needs to be installed into
the Python path for this to work (use setup.py)

This animates a sin plot, then finishes
"""

import time
import numpy
import veusz.embed as veusz

# construct a Veusz embedded window
# many of these can be opened at any time
g = veusz.Embedded('window title')
g.EnableToolbar()

# construct the plot
g.To( g.Add('page') )
g.To( g.Add('graph') )
g.Add('xy', marker='tiehorz', MarkerFill__color='green')

# this stops intelligent axis extending
g.Set('x/autoExtend', False)
g.Set('x/autoExtendZero', False)

# zoom out
g.Zoom(0.8)

# loop, changing the values of the x and y datasets
for i in range(10):
    x = numpy.arange(0+i/2., 7.+i/2., 0.05)
    y = numpy.sin(x)
    g.SetData('x', x)
    g.SetData('y', y)

    # wait to animate the graph
    time.sleep(2)

# let the user see the final result
print "Waiting for 10 seconds"
time.sleep(10)
print "Done!"

# close the window (this is not strictly necessary)
g.Close()

The embed interface has the methods listed in the command line interface listed in the Veusz manual https://veusz.github.io/docs/manual.html

Multiple Windows are supported by creating more than one Embedded object. Other useful methods include:

  • WaitForClose() - wait until window has closed

  • GetClick() - return a list of (axis, value) tuples where the user clicks on a graph

  • ResizeWndow(width, height) - resize window to be width x height pixels

  • SetUpdateInterval(interval) - set update interval in ms or 0 to disable

  • MoveToPage(page) - display page given (starting from 1)

  • IsClosed() - has the page been closed

  • Zoom(factor) - set zoom level (float) or ‘page’, ‘width’, ‘height’

  • Close() - close window

  • SetAntiAliasing(enable) - enable or disable antialiasing

  • EnableToolbar(enable=True) - enable plot toolbar

  • StartSecondView(name='Veusz') - start a second view onto the document of the current Embedded object. Returns a new Embedded object.

  • Wipe() - wipe the document of all widgets and datasets.

New-style object interface¶

In Veusz 1.9 or late a new style of object interface is present, which makes it easier to construct the widget tree. Each widget, group of settings or setting is stored as a Node object, or its subclass, in a tree. The root document widget can be accessed with the Root object. The dot operator “.†finds children inside other nodes. In Veusz some widgets can contain other widgets (Root, pages, graphs, grids). Widgets contain setting nodes, accessed as attributes. Widgets can also contain groups of settings, again accessed as attributes.

An example tree for a document (not complete) might look like this

Root
\-- page1                     (page widget)
    \-- graph1                (graph widget)
        \--  x                (axis widget)
        \--  y                (axis widget)
        \-- function          (function widget)
    \-- grid1                 (grid widget)
        \-- graph2            (graph widget)
            \-- xy1           (xy widget)
                \-- xData     (setting)
                \-- yData     (setting)
                \-- PlotLine  (setting group)
                    \-- width (setting)
                    ...
                ...
            \-- x             (axis widget)
            \-- y             (axis widget)
        \-- graph3            (graph widget)
            \-- contour1      (contour widget)
            \-- x             (axis widget)
            \-- y             (axis widget)

Here the user could access the xData setting node of the xy1 widget using Root.page1.graph2.xy1.xData. To actually read or modify the value of a setting, you should get or set the val property of the setting node. The line width could be changed like this

graph = embed.Root.page1.graph2
graph.xy1.PlotLine.width.val = '2pt'

For instance, this constructs a simple x-squared plot which changes to x-cubed:

import veusz.embed as veusz
import time

#  open a new window and return a new Embedded object
embed = veusz.Embedded('window title')
#  make a new page, but adding a page widget to the root widget
page = embed.Root.Add('page')
#  add a new graph widget to the page
graph = page.Add('graph')
#  add a function widget to the graph. The Add() method can take a list of settings
#  to set after widget creation. Here, "function='x**2'" is equivalent to
#  function.function.val = 'x**2'
function = graph.Add('function', function='x**2')

time.sleep(2)
function.function.val = 'x**3'
#  this is the same if the widgets have the default names
Root.page1.graph1.function1.function.val = 'x**3'

If the document contains a page called “page1†then Root.page1 is the object representing the page. Similarly, Root.page1.graph1 is a graph called graph1 in the page. You can also use dictionary-style indexing to get child widgets, e.g. Root[‘page1’][‘graph1’]. This style is easier to use if the names of widgets contain spaces or if widget names shadow methods or properties of the Node object, i.e. if you do not control the widget names.

Widget nodes can contain as children other widgets, groups of settings, or settings. Groups of settings can contain child settings. Settings cannot contain other nodes. Here are the useful operations of Nodes:

class Node(object):
  """properties:
    path - return path to object in document, e.g. /page1/graph1/function1
    type - type of node: "widget", "settinggroup" or "setting"
    name - name of this node, e.g. "graph1"
    children - a generator to return all the child Nodes of this Node, e.g.
      for c in Root.children:
        print c.path
    children_widgets - generator to return child widget Nodes of this Node
    children_settinggroups - generator for child setting groups of this Node
    children_settings - a generator to get the child settings
    childnames - return a list of the names of the children of this Node
    childnames_widgets - return a list of the names of the child widgets
    childnames_settinggroups - return a list of the names of the setting groups
    childnames_settings - return a list of the names of the settings
    parent - return the Node corresponding to the parent widget of this Node

    __getattr__ - get a child Node with name given, e.g. Root.page1
    __getitem__ - get a child Node with name given, e.g. Root['page1']
  """

  def fromPath(self, path):
     """Returns a new Node corresponding to the path given, e.g. '/page1/graph1'"""

class SettingNode(Node):
    """A node which corresponds to a setting. Extra properties:
    val - get or set the setting value corresponding to this value, e.g.
     Root.page1.graph1.leftMargin.val = '2cm'
    """

class SettingGroupNode(Node):
    """A node corresponding to a setting group. No extra properties."""

class WidgetNode(Node):
    """A node corresponding to a widget.

       property:
         widgettype - get Veusz type of widget

       Methods are below."""

    def WalkWidgets(self, widgettype=None):
        """Generator to walk widget tree and get widgets below this
        WidgetNode of type given.

        widgettype is a Veusz widget type name or None to get all
        widgets."""

    def Add(self, widgettype, *args, **args_opt):
        """Add a widget of the type given, returning the Node instance.
        """

    def Rename(self, newname):
        """Renames widget to name given.
        Existing Nodes corresponding to children are no longer valid."""

    def Action(self, action):
        """Applies action on widget."""

    def Remove(self):
        """Removes a widget and its children.
        Existing Nodes corresponding to children are no longer valid."""

Note that Nodes are temporary objects which are created on the fly. A real widget in Veusz can have several different WidgetNode objects. The operators == and != can test whether a Node points to the same widget, setting or setting group.

Here is an example to set all functions in the document to be x**2:

for n in Root.WalkWidgets(widgettype='function'):
    n.function.val = 'x**2'

Translating old to new style¶

Here is an example how you might translate the old to new style interface (this is taken from the sin.vsz example).

# old (from saved document file)
Add('page', name='page1')
To('page1')
Add('graph', name='graph1', autoadd=False)
To('graph1')
Add('axis', name='x')
To('x')
Set('label', '\\italic{x}')
To('..')
Add('axis', name='y')
To('y')
Set('label', 'sin \\italic{x}')
Set('direction', 'vertical')
To('..')
Add('xy', name='xy1')
To('xy1')
Set('MarkerFill/color', 'cyan')
To('..')
Add('function', name='function1')
To('function1')
Set('function', 'sin(x)')
Set('Line/color', 'red')
To('..')
To('..')
To('..')
# new (in python)
import veusz.embed
embed = veusz.embed.Embedded('window title')

page = embed.Root.Add('page')
# note: autoAdd=False stops graph automatically adding own axes (used in saved files)
graph = page.Add('graph', autoadd=False)
x = graph.Add('axis', name='x')
x.label.val = '\\italic{x}'
y = graph.Add('axis', name='y')
y.label.val = 'sin \\italic{x}'
y.direction.val = 'vertical'
xy = graph.Add('xy')
xy.MarkerFill.color.val = 'cyan'
func = graph.Add('function')
func.function.val = 'sin(x)'
func.Line.color.val = 'red'

PyQt programs¶

There is no direct PyQt interface. The standard embedding interface should work, however.

Non Python programs¶

Support for non Python programs is available in a limited form. External programs may execute Veusz using veusz --listen. Veusz will read its input from the standard input, and write output to standard output. This is a full Python execution environment, and supports all the scripting commands mentioned in Commands, a Quit() command, the EnableToolbar() and the Zoom(factor) command listed above. Only one window is supported at once, but many veusz --listen programs may be started.

veusz --listen may be used from the shell command line by doing something like:

veusz --listen < in.vsz

where in.vsz contains:

To(Add('page') )
To(Add('graph') )
SetData('x', arange(20))
SetData('y', arange(20)**2)
Add('xy')
Zoom(0.5)
Export("foo.pdf")
Quit()

A program may interface with Veusz in this way by using the popen C Unix function, which allows a program to be started having control of its standard input and output. Veusz can then be controlled by writing commands to an input pipe.

././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426733.0 veusz-3.6.2/Documents/manual/html/datasets.html0000664000175000017500000012021714376700055020012 0ustar00jssjss Reading data — Veusz 3.6.2 documentation

Reading data¶

Currently Veusz supports reading data from files with text, CSV, HDF5, FITS, 2D text or CSV, QDP, binary and NPY/NPZ formats. Use the Data ‣ Import dialog to read data, or the importing commands in the API can be used. In addition, the user can load or write import plugins in Python which load data into Veusz in an arbitrary format. At the moment QDP, binary and NPY/NPZ files are supported with this method. The HDF5 file format is the most sophisticated, and is recommended for complex datasets.

By default, data are “linked†to the file imported from. This means that the data are not stored in the Veusz saved file and are reloaded from the original data file when opening. In addition, the user can use the Data ‣ Reload menu option to reload data from linked files. Unselect the linked option when importing to remove the association with the data file and to store the data in the Veusz saved document.

Note that a prefix and suffix can be given when importing. These are added to the front or back of each dataset name imported. They are convenient for grouping data together.

_images/importdialog.png

We list the various types of import below.

Standard text import¶

The default text import operates on simple text files. The data are assumed to be in columns separated by whitespace. Each column corresponds to dataset (or its error bars). Each row is an entry in the dataset.

The way the data are read is goverened by a simple “descriptorâ€. This can simply be a list of dataset names separated by spaces. If no descriptor is given, the columns are treated as separate datasets and are given names col1, col2, etc. Veusz attempts to automatically determine the type of the data.

When reading in data, Veusz treats any whitespace as separating columns. The columns do not actually need to be aligned. Furthermore a \ symbol can be placed at the end of a line to mark a continuation. Veusz will read the next line as if it were placed at the end of the current line. In addition comments and blank lines are ignored (unless in block mode). Comments start with a #, ;, ! or %, and continue until the end of the line. The special value nan can be used to specify a break in a dataset.

If the option to read data in blocks is enabled, Veusz treats blank lines (or lines starting with the word no) as block separators. For each dataset in the descriptor, separate datasets are created for each block, using a numeric suffix giving the block number, e.g. _1, _2.

Data types in text import¶

Veusz supports reading in several types of data. The type of data can be added in round brackets after the name in the descriptor. Veusz will try to guess the type of data based on the first value, so you should specify it if there is any form of ambiguity (e.g. is 3 text or a number). Supported types are numbers (use numeric in brackets) and text (use text in brackets). An example descriptor would be x(numeric) +- y(numeric) + - label(text) for an x dataset followed by its symmetric errors, a y dataset followed by two columns of asymmetric errors, and a final column of text for the label dataset.

A text column does not need quotation unless it contains space characters or escape characters. However make sure you deselect the “ignore text†option in the import dialog. This ignores lines of text to ease the import of data from other applications. Quotation marks are recommended around text if you wish to avoid ambiguity. Text is quoted according to the Python rules for text. Double or single quotation marks can be used, e.g. “A ‘test’â€, ‘A second “testâ€â€™. Quotes can be escaped by prefixing them with a backslash, e.g. “A new \â€test\â€â€. If the data are generated from a Python script, the repr function provides the text in a suitable form.

Dates and times are also supported with the syntax dataset(date). Dates must be in ISO format YYYY-MM-DD. Times are in 24 hour format hh:mm:ss.ss. Dates with times are written YYYY-MM-DDThh:mm:ss.ss (this is a standard ISO format, see http://www.w3.org/TR/NOTE-datetime). Dates are stored within Veusz as a number which is the number of seconds since the start of January 1st 2009. Veusz also supports dates and times in the local format, though take note that the same file and data may not work on a system in a different location.

Descriptors¶

A list of datasets, or a “Descriptorâ€, is given in the Import dialog to describe how the data are formatted in the import file. The descriptor at its simplest is a space or comma-separated list of the names of the datasets to import. These are columns in the file.

Following a dataset name the text +, -, or +- can be given to say that the following column is a positive error bar, negative error bar or symmetric error bar for the previous (non error bar) dataset. These symbols should be separated from the dataset name or previous symbol with a space or a comma symbol.

In addition, if multiple numbered columns should be imported, the dataset name can be followed by square brackets containing a range in the form [a:b] to number columns a to b, or [:] to number remaining columns. See below for examples of this use.

Dataset names can contain virtually any character, even unicode characters. If the name contains non alpha-numeric characters (characters outside of A-Z, a-z and 0-9), then the dataset name should be contained within back-tick characters. An example descriptor is `length data (m)`,+- `speed (mps)`,+,-, for two datasets with spaces and brackets in their names.

Instead of specifying the descriptor in the Import dialog, the descriptor can be placed in the data file using a descriptor statement on a separate line, consisting of “descriptor†followed by the descriptor. Multiple descriptors can be placed in a single file, for example:

# here is one section
descriptor x,+- y,+,-
1 0.5  2 0.1 -0.1
2 0.3  4 0.2 -0.1
# my next block
descriptor alpha beta gamma
1 2 3
4 5 6
7 8 9
# etc...

Descriptor examples¶

  1. x y two columns are present in the file, they will be read in as datasets x and y.

  2. x,+- y,+,- or x +- y + - two datasets are in the file. Dataset “x†consists of the first two columns. The first column are the values and the second are the symmetric errors. “y†consists of three columns (note the comma between + and -). The first column are the values, the second positive asymmetric errors, and the third negative asymmetric errors. Suppose the input file contains:

    1.0  0.3  2    0.1  -0.2
    1.5  0.2  2.3  2e-2 -0.3E0
    2.19 0.02 5    0.1  -0.1
    

    Then x will contain 1+-0.3, 1.5+-0.2, 2.19+-0.02. y will contain 2 +0.1 -0.2, 2.3 +0.02 -0.3, 5 +0.1 -0.1.

  3. x[1:2] y[:] the first column is the data x_1, the second x_2. Subsequent columns are read as y[1] to y[n].

  4. y[:]+- read each pair of columns as a dataset and its symmetric error, calling them y[1] to y[n].

  5. foo,,+- read the first column as the foo dataset, skip a column, and read the third column as its symmetric error.

CSV files¶

CVS (comma separated variable) files are often written from other programs, such as spreadsheets, including Excel and Gnumeric. Veusz supports reading from these files.

In the import dialog choose “CSVâ€, then choose a filename to import from. In the CSV file the user should place the data in either rows or columns. Veusz will use a name above a column or to the left of a row to specify what the dataset name should be. The user can use new names further down in columns or right in rows to specify a different dataset name. Names do not have to be used, and Veusz will assign default col and row names if not given. You can also specify a prefix which is prepended to each dataset name read from the file.

To specify symmetric errors for a column, put +- as the dataset name in the next column or row. Asymmetric errors can be stated with + and - in the columns.

The data type in CSV files are automatically detected unless specified. The data type can be given in brackets after the column name, e.g. name (text), where the data type is date, numeric or text. Explicit data types are needed if the data look like a different data type (e.g. a text item of 1.23). The date format in CSV files can be specified in the import dialog box - see the examples given. In addition CSV files support numbers in European format (e.g. 2,34 rather than 2.34), depending on the setting in the dialog box.

HDF5 files¶

HDF5 is a flexible data format. Datasets and tables can be stored in a hierarchical arrangements of groups within a file. Veusz supports reading 1D numeric, text, date-time, 2D numeric or n-dimensional numeric data from HDF files. The h5py Python module must be installed to use HDF5 files (included in binary releases).

In the import dialog box, choose which individual datasets to import, or selecting a group to import all the datasets within the group. If selecting a group, datasets in the group incompatible with Veusz are ignored.

A name can be provided for each dataset imported by entering one under “Import asâ€. If one is not given, the dataset or column name is used. The name can also be specified by setting the HDF5 dataset attribute vsz_name to the name. Note that for compound datasets (tables), vsz_ attributes for columns are given by appending the suffix _columnname to the attribute.

Error bars¶

Error bars are supported in two ways. The first way is to combine 1D datasets. For the datasets which are error bars, use a name which is the same as the main dataset but with the suffix (+-), (+) or (-), for symmetric, postive or negative error bars, respectively. The second method is to use a 2D dataset with two or three columns, for symmetric or asymmetric error bars, respectively. Click on the dataset in the dialog and choose the option to import as a 1D dataset. This second method can also be enabled by adding an HDF5 attribute vsz_twod_as_oned set to a non-zero value for the dataset.

Slices¶

You may wish to reduce the dimensions of a dataset before importing by slicing. You can also give a slice to import a subset of a dataset. When importing, in the slice column you can give a slice expression. This should have the same number of entries as the dataset has dimensions, separated by commas. An entry can be a single number, to select a particular row or column. Alternatively it could be an expression like a:b:c or a:b, where a is the starting index, b is one beyond the stopping index and optionally c is the step size. A slice can also be specified by providing an HDF5 attribute vsz_slice for the dataset.

2D data ranges¶

2D data have an associated X and Y range. By default the number of pixels of the image are used to give this range. A range can be specified by clicking on the dataset and entering a minimum and maximum X and Y coordinates. Alternatively, provide the HDF5 attribute for the dataset vsz_range, which should be set to an array of four values (minimum x, minimum y, maximum x, maximum y).

Dates¶

Date/time datasets can be made from a 1D numeric dataset or from a text dataset. For the 1D dataset, use the number of seconds relative to the start of the year 2009 (this is Veusz format) or the year 1970 (this is Unix format). In the import dialog, click on the name of the dataset and choose the date option. To specify a date format in the HDF5 file, set the attribute vsz_convert_datetime to either veusz or unix.

For text datasets, dates must be given in the right format, selected in the import dialog after clicking on the dataset name. As in other file formats, by default Veusz uses ISO 8601 format, which looks like 2013-12-22T21:08:07, where the date and time parts are optional. The T is also optional. You can also provide your own format when importing by giving a date expression using YYYY, MM, DD, hh, mm and ss (e.g. YYYY-MM-DD|T|hh:mm:ss), where vertical bars mark optional parts of the expression. To automate this, set the attribute vsz_convert_datetime to the format expression or iso to specify ISO format.

2D text or CSV format¶

Veusz can import 2D data from standard text or CSV files. In this case the data should consist of a matrix of data values, with the columns separated by one or more spaces or tabs and the rows on different lines.

In addition to the data the file can contain lines at the top which affect the import. Such specifiers are used, for example, to change the coordinates of the pixels in the file. By default the first pixels coordinates is between 0 and 1, with the centre at 0.5. Subsequent pixels are 1 greater. Note that the lowest coordinate pixel is the bottom-left value in the table of imported values. When using specifiers in CSV files, put the different parts (separated by spaces) in separate columns. Below are listed the specifiers:

  1. xrange A B - make the 2D dataset span the coordinate range A to B in the x-axis (where A and B are numbers). Note that the range is inclusive, so a 1 pixel wide image with A=0 and B=1 would have the pixel centre at 0.5. The pixels are assumed to have the same spacing. Do not use this as the same time as the xedge or xcent options.

  2. yrange A B - make the 2D dataset span the coordinate range A to B in the y-axis (where A and B are numbers).

  3. xedge A B C... - rather than assume the pixels have the same spacing, give the coordinates of the edges of the pixels in the x-axis. The numbers should be space-separated and there should be one more number than pixels. Do not give xrange or xcent if this is given. If the values are increasing, the lowest coordinate value is at the left of the dataset, otherwise if they are decreasing, it is on the right (unless the rows/columns are inverted or transposed).

  4. yedge A B C... - rather than assume the pixels have the same spacing, give the coordinates of the edges of the pixels in the y-axis. If the values are increasing, the lowest coordinate value is at the bottom row. If they instead decrease, it is at the top.

  5. xcent A B C... - rather than give a total range or pixel edges, give the centres of the pixels. There should be the same number of values as pixels in the image. Do not give xrange or xedge if this is given. The order of the values specify whether the pixels are left to right or right to left.

  6. ycent A B C... - rather than give a total range or pixel edges, give the centres of the pixels. The value order specifies whether the pixels are bottom to top, or top to bottom.

  7. invertrows - invert the rows after reading the data.

  8. invertcols - invert the columns after reading the data.

  9. transpose - swap rows and columns after importing data.

  10. gridatedge - the first row and leftmost column give the positions of the centres of the pixels. This is also an option in the import dialog. The values should be increasing or decreasing.

FITS files¶

1D, 2D or n-dimensional data can be read from FITS files. 1D or 2D data can be read from image, primary or table HDUs. nD data can be read from from image or primary extensions. Note that pyfits or astropy must be installed to get FITS support.

The import dialog box uses a tree to show the structure of the FITS file. The user can choose to import the whole file, by clicking the check box at the top. They can import data from a particular HDU by selecting that, or individual table columns can be selected.

In the dialog box, a dataset can be given a name for the dataset. Otherwise the HDU or table column name is used. Note that a prefix and/or suffix can be specified to be added to all dataset names.

If dataset y should have an error bar specified by column yerr, then in the name for yerr, enter ‘y (+-)’. Asymmetric error bars can be specified using (+) and (-) on inidividual columns.

The slice column can be used to only import a subset of the dataset imported. This uses Python slicing syntax, which is comma-separated list of ranges and steps. A range is specified like 10:20, which selects the 11th to 20th items (the indices are numbered from 0, and the final index is one past the index you actually want). A stepped range can look like 10:20:2, which selects every other item in that range. Each of these numbers are optional, so : selects all items on that dimension. For example the slice :,10:14:2 selects all values on the first dimension, but only the 11th and 13th items on the next axis.

When importing 2D data the user can specify whether to treat this as 1D plus error bars (dimensions should have 2 or 3 columns), or specify a range in 2D space the data covers. Veusz will also attempt to use WCS information in the file for the 2D range if not specified. The standard mode is to use the CDELT, CRVAL and CRPIX keywords to specify a linear range for the data. Alternatively the user can specify pixel numbering (numbering from 0 to N-1). There is a fraction option for using a range of 0 to 1. Finally there is a pixel numbering scheme which numbers in pixels from the CRPIX keyword items.

Some of these options can be specified in the FITS file using the ‘VEUSZ’ header keyword. This header keyword can be added with the value ‘KEY=VALUE’ (applying to the whole HDU) or ‘COLUMN: KEY=VALUE’ (applying to a particular column in a table). Supported options for KEY are:

name

provide name for dataset in VALUE

slice

VALUE is slice to apply when importing dataset

range

range of data for 2D dataset in form [minx, miny, maxx, maxy]

xrange/yrange

range of dataset individually in x or y

xcent/ycent

set to list of values giving centers of pixels

xedge/yedge

set to list of values giving edges of pixels

twod_as_oned

treat as 1D data with error bars if VALUE=1

wcsmode

use specific WCS mode for 2D dataset (should be pixel/pixel_wcs/linear_wcs/fraction)

Reading other data formats¶

As mentioned above, a user may write some Python code to read a data file or set of data files. To write a plugin which is incorportated into Veusz, see https://github.com/veusz/veusz/wiki/ImportPlugins

You can also include Python code in an input file to read data, which we describe here. Suppose an input file “in.dat†contains the following data:

1   2
2   4
3   9
4   16

Of course this data could be read using the ImportFile command. However, you could also read it with the following Veusz script (which could be saved to a file and loaded with execfile or Load. The script also places symmetric errors of 0.1 on the x dataset.

x = []
y = []
for line in open("in.dat"):
    parts = [float(i) for i in line.split()]
    x.append(parts[0])
    y.append(parts[1])
SetData('x', x, symerr=0.1)
SetData('y', y)

Manipulating datasets¶

Imported datasets can easily be modified in the Data Editor dialog box. This dialog box can also be used to create new datasets from scratch by typing them in. The Data Create dialog box is used to new datasets as a numerical sequence, parametrically or based on other datasets given expressions. If you want to plot a function of a dataset, you often do not have to create a new dataset. Veusz allows to enter expressions directly in many places.

Using dataset plugins¶

Dataset plugins can be used to perform arbitrary manipulation of datasets. Veusz includes several plugins for mathematical operation of data and other dataset manipulations, such as concatenation or splitting. If you wish to write your own plugins look at https://github.com/veusz/veusz/wiki/DatasetPlugins.

Using expressions to create new datasets¶

For instance, if the user has already imported dataset d, then they can create d2 which consists of d**2. Expressions are in Python numpy syntax and can include the usual mathematical functions.

_images/createdataset.png

Expressions for error bars can also be given. By appending _data, _serr, _perr or _nerr to the name of the dataset in the expression, the user can base their expression on particular parts of the given dataset (the main data, symmetric errors, positive errors or negative errors). Otherwise the program uses the same parts as is currently being specified.

If a dataset name contains non alphanumeric characters, its name should be quoted in the expression in back-tick characters, e.g. `length (cm)`*2.

The numpy functionality is particularly useful for doing more complicated expressions. For instance, a conditional expression can be written as where(x<y,x,y) or where(isfinite(x),a,b)).

You often do not need to create a new dataset when. For example, with the xy point plotter widget, you can directly enter an expression as the X and Y dataset settings. When you give a direct dataset expression, you can define error bar expressions by separating them by commas, and optionally surrounding them by brackets. For example (a,0.1) plots dataset a as the data, with symmetric errors bars of 0.1. Asymmetric bars are given as (a,a*0.1,-a*0.1).

Other useful functions in evaluation include those already mentioned in the LaTeX expansion description. DATA(name, [part]) returns the dataset with name given. The optional part, which can be ‘data’, ‘serr’, ‘perr’ or ‘nerr’, allows error bars to be returned for numerical data. SETTING(path) returns the value of the Veusz setting, which can include, for example, the best fitting parameters of a fit. ENVIRON is the Python environment variable dictionary, allowing values to be passed from the environment, e.g. float(ENVIRON['myvar']).

Linking datasets to expressions¶

A particularly useful feature is to be able to link a dataset to an expression, so if the expression changes the dataset changes with it, like in a spreadsheet.

Splitting data¶

Data can also be chopped in this method, for example using the expression x[10:20], which makes a dataset based on the 11th to 20th item in the x dataset (the ranges are Python syntax, and are zero-based). Negative indices count backwards from the end of the dataset. Data can be skipped using expressions such as data[::2], which skips every other element

Defining new constants or functions¶

User defined constants or functions can be defined in the “Custom definitions†dialog box under the edit menu. Functions can also be imported from external python modules.

_images/customdefinition.png

Custom definitions are defined on a per-document basis, but can be saved or loaded into a file. A default custom definitions file can be set in the preferences dialog box.

Dataset plugins¶

In addition to creating datasets based on expressions, a variety of dataset plugins exist, which make certain operations on datasets much more convenient. See the Data, Operations menu for a list of the default plugins. The user can easily create new plugins. See https://github.com/veusz/veusz/wiki/DatasetPlugins for details.

Capturing data¶

In addition to the standard data import, data can be captured as it is created from an external program, a network socket or a file or named pipe. When capturing from a file, the behaviour is like the Unix tail -f command, where new lines written to the file are captured. To use the capturing facility, the data must be written in the simple line based standard Veusz text format. Data are whitespace separated, with one value per dataset given on a single line.

To capture data, use the dialog box Data ‣ Capture. A list of datasets should be given. This is the standard descriptor format. Choose the source of the data, which is either a a filename or named pipe, a network socket to connect to, or a command line for an external program. Capturing ends if the source of the data runs out (for external programs or network sockets) or the finish button is clicked. It can optionally end after a certain number of data lines or when a time period has expired. Normally the data are updated in Veusz when the capturing is finished. There is an option to update the document at intervals, which is useful for monitoring. A plot using the variables will update when the data are updated.

Click the Capture button to start the capture. Click Finish or Cancel to stop. Cancelling destroys captured data.

././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426733.0 veusz-3.6.2/Documents/manual/html/genindex.html0000664000175000017500000000554314376700055020007 0ustar00jssjss Index — Veusz 3.6.2 documentation ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426733.0 veusz-3.6.2/Documents/manual/html/index.html0000664000175000017500000003771214376700055017320 0ustar00jssjss Veusz documentation — Veusz 3.6.2 documentation

Veusz documentation¶

Jeremy Sanders

Copyright 2021

This document is licensed under the GNU General Public License, version 2 or greater. Please see the file COPYING for details, or see http://www.gnu.org/licenses/gpl-2.0.html.

This is the documentation for Veusz. Veusz is a multiplatform scientific plotting package with a graphical user interface.

Contents:

Indices and tables¶

././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426733.0 veusz-3.6.2/Documents/manual/html/introduction.html0000664000175000017500000013335114376700055020726 0ustar00jssjss Introduction — Veusz 3.6.2 documentation

Introduction¶

Veusz¶

Veusz is a 2D and 3D scientific plotting package. It is designed to be easy to use, easily extensible, but powerful. The program features a graphical user interface (GUI), which works under Unix/Linux, Windows or Mac OS. It can also be easily scripted (the saved file formats are similar to Python scripts) or used as module inside Python. Veusz reads data from a number of different types of data file, it can be manually entered, or constructed from other datasets.

In Veusz the document is built in an object-oriented fashion, where a document is built up by a number of widgets in a hierarchy. For example, multiple function or xy widgets can be placed inside a graph widget, and many graphs can be placed in a grid widget. The program also supports a variety of 3D plots, including 3D point and surface plots. The program produces vector rather than rastered 3D output.

Veusz can be extended by the user easily by adding plugins. Support for different data file types can be added with import plugins. Dataset plugins automate the manipulation of datasets. Tools plugins automate the manipulation of the document.

Installation¶

Please go to the website of Veusz to learn more about the program. Links to binaries, distribution packages and the source package can be found in downloads. For source installation, please see the package INSTALL.

Getting started¶

Veusz includes a built-in tutorial which starts the first time the program is run. You can rerun it later from the Help menu. It also includes many examples, to show how certain kinds of plots are produced. For more help and link to a video tutorial, see help.

Terminology¶

Here we define some terminology for future use.

Widget¶

A document and its graphs are built up from widgets. These widgets can often by placed within each other, depending on the type of the widget. A widget has children (those widgets placed within it) and its parent. The widgets have a number of different settings which modify their behaviour. These settings are divided into properties, which affect what is plotted and how it is plotted. These would include the dataset being plotted or whether an axis is logarithmic. There are also formatting settings, including the font to be used and the line thickness. In addition they have actions, which perform some sort of activity on the widget or its children, like “fit†for a fit widget.

As an aside, using the scripting interface, widgets are specified with a “pathâ€, like a file in Unix or Windows. These can be relative to the current widget (do not start with a slash), or absolute (start with a slash). Examples of paths include, /page1/graph1/x, x and ..

The widget types include

  1. document - representing a complete document. A document can contain pages. In addition it contains a setting giving the page size for the document.

  2. page - representing a page in a document. One or more graphs can be placed on a page, or a grid.

  3. graph - defining an actual graph. A graph can be placed on a page or within a grid. Contained within the graph are its axes and plotters. A graph can be given a background fill and a border if required. It also has a margin, which specifies how far away from the edge of its parent widget to plot the body of the graph. A graph can contain several axes, at any position on the plot. In addition a graph can use axes defined in parent widgets, shared with other graphs. More than one graph can be placed within in a page. The margins can be adjusted so that they lie within or besides each other.

  4. grid - containing one or more graphs. A grid plots graphs in a gridlike fashion. You can specify the number of rows and columns, and the plots are automatically replotted in the chosen arrangement. A grid can contain graphs or axes. If an axis is placed in a grid, it can be shared by the graphs in the grid.

  5. axis - giving the scale for plotting data. An axis translates the coordinates of the data to the screen. An axis can be linear or logarithmic, it can have fixed endpoints, or can automatically get them from the plotted data. It also has settings for the axis labels and lines, tick labels, and major and minor tick marks. An axis may be “horizontal†or “vertical†and can appear anywhere on its parent graph or grid. If an axis appears within a grid, then it can be shared by all the graphs which are contained within the grid. The axis-broken widget is an axis sub-type. It is an axis type where there are jumps in the scale of the axis. The axis-function widget allows the user to create an axis where the values are scaled by a monotonic function, allowing non-linear and non-logarithmic axis scales. The widget can also be linked to a different axis via the function.

  6. plotters - types of widgets which plot data or add other things on a graph. There is no actual plotter widget which can be added, but several types of plotters listed below. Plotters typically take an axis as a setting, which is the axis used to plot the data on the graph (default x and y).

    1. function - a plotter which plots a function on the graph. Functions can be functions of x or y (parametric functions are not done yet!), and are defined in Python expression syntax, which is very close to most other languages. For example 3*x**2 + 2*x - 4. A number of functions are available (e.g. sin, cos, tan, exp, log…). Technically, Veusz imports the numpy package when evaluating, so numpy functions are available. As well as the function setting, also settable is the line type to plot the function, and the number of steps to evaluate the function when plotting. Filling is supported above/below/left/right of the function.

    2. xy - a plotter which plots scatter, line, or stepped plots. This versatile plotter takes an x and y dataset, and plots (optional) points, in a chosen marker and colour, connecting them with (optional) lines, and plotting (optional) error bars. An xy plotter can also plot a stepped line, allowing histograms to be plotted (note that it doesn’t yet do the binning of the data). The settings for the xy widget are the various attributes for the points, line and error bars, the datasets to plot, and the axes to plot on. The xy plotter can plot a label next to each dataset, which is either the same for each point or taken from a text dataset. If you wish to leave gaps in a plot, the input value nan can be specified in the numeric dataset.

    3. fit - fit a function to data. This plotter is a like the function plotter, but allows fitting of the function to data. This is achieved by clicking on a “fit†button, or using the “fit†action of the widget. The fitter takes a function to fit containing the unknowns, e.g. a*x**2 + b*x + c, and initial values for the variables (here a, b and c). It then fits the data (note that at the moment, the fit plotter fits all the data, not just the data that can be seen on the graph) by minimising the chi-squared. In order to fit properly, the y data (or x, if fitting as a function of x) must have a properly defined, preferably symmetric error. If there is none, Veusz assumes the same fractional error everywhere, or symmetrises asymmetric errors. Note that more work is required in this widget, as if a parameter is not well defined by the data, the matrix inversion in the fit will fail. In addition Veusz does not supply estimates for the errors or the final chi-squared in a machine readable way. If the fitting parameters vary significantly from 1, then it is worth “normalizing†them by adding in a factor in the fit equation to bring them to of the order of 1.

    4. bar - a bar chart which plots sets of data as horizontal or vertical bars. Multiple datasets are supported. In “grouped†mode the bars are placed side-by-side for each dataset. In “stacked†mode the bars are placed on top of each other (in the appropriate direction according to the sign of the dataset). Bars are placed on coordinates given, or in integer values from 1 upward if none are given. Error bars are plotted for each of the datasets. Different fill styles can be given for each dataset given. A separate key value can be given for each dataset.

    5. key - a box which describes the data plotted. If a key is added to a plot, the key looks for “key†settings of the other data plotted within a graph. If there any it builds up a box containing the symbol and line for the plotter, and the text in the “key†setting of the widget. This allows a key to be very easily added to a plot. The key may be placed in any of the corners of the plot, in the centre, or manually placed. Depending on the ordering of the widgets, the key will be placed behind or on top of the widget. The key can be filled and surrounded by a box, or not filled or surrounded.

    6. label - a text label places on a graph. The alignment can be adjusted and the font changed. The position of the label can be specified in fractional terms of the current graph, or using axis coordinates.

    7. rect, ellipse - these draw a rectangle or ellipse, respectively, of size and rotation given. These widgets can be placed directly on the page or on a graph. The centre can be given in axis coordinates or fractional coordinates.

    8. imagefile - draw an external graphs file on the graph or page, with size and rotation given. The centre can be given in axis coordinates or fractional coordinates.

    9. svgfile - draw an external scalable vector graphic on the graph or page, with size and rotation given. The centre can be given in axis coordinates or fractional coordinates.

    10. line - draw a line with optional arrowheads on the graph or page. One end can be given in axis coordinates or fractional coordinates.

    11. contour - plot contours of a 2D dataset on the graph. Contours are automatically calculated between the minimum and maximum values of the graph or chosen manually. The line style of the contours can be chosen individually and the region between contours can be filled with shading or color. 2D datasets currently consist of a regular grid of values between minimum and maximum positions in x and y. They can be constructed from three 1D datasets of x, y and z if they form a regular x, y grid.

    12. image - plot a 2D dataset as a colored image. Different color schemes can be chosen. The scaling between the values and the image can be specified as linear, logarithmic, square-root or square.

    13. polygon - plot x and y points from datasets as a polygon. The polygon can be placed directly on the page or within a graph. Coordinates are either plotted using the axis or as fractions of the width and height of the containing widget.

    14. boxplot - plot distribution of points in a dataset.

    15. polar - plot polar data or functions. This is a non-orthogonal plot and is placed directly on the page rather than in a graph.

    16. ternary - plot data of three variables which add up to 100 per cent.This is a non-orthogonal plot and is placed directly on the page rather than in a graph.

  7. 3D widgets - 3D graphs can be created by adding a 3D scene widget (scene3d) to a blank page, or by creating a new 3D document. The 3D scene has settings which control the angle the rotation angle of the plot, the position and color of lighting and the rendering method.

    To build up a 3D plot the following widgets can be placed inside it:

    1. graph3d - this is an analogous widget to the 2D graph widget, plotting a 3D plot with cartesian axes. It contains three or more axis3d widgets, and plotting widgets. The graph contains settings for the graph size (the default is 1 in each direction) and the 3D position of the graph in the same units. Multiple graph widgets can be added to a scene, though the position and sizes may need to be adjusted.

    2. axis3d - normally a 3D graph has three axes (X, Y and Z), but more axes can be added to plot multiple things on a single axis direction. This works in a similar way to the 2D axis widget. The widget has options for the axis label, tick labels, tick marks and grid lines (which appear on the outside of the 3D cube). An axis can be swiched between linear and logorithmic mode. Scalings can be applied to the data values plotted in that dimension or to the axis labels.

    3. point3d - for plotting points, and optionally connecting lines, in 3D. This, and the other plotting widgets are placed in a graph3d widget. The user provides three 1D datasets for the x, y and z values. The markers can be scaled in size by another optional dataset. The markers can also be colored according to another optional dataset, according to a color map, minimum and maximum. Error bars can be provided for each of the x, y and z datasets. The connecting line can also be colored if a color dataset is provided and a colormap chosen.

    4. function3d - for plotting either a functional line in 3D space or a functional surface. The type of plot is given by the mode parameter. In the case of the line, the x,y,z coordinates can be specified as a function of t, where t goes from 0 to 1, or by giving functions for two of the coordinates as a function of the other. For a surface, the value for x, y or z is given as a function of the other two. In addition, a function returning 0 to 1 can be provided for the color, which specifies the color map value for the surface at each position or the line color. For a 2D surface, the grid lines or surface fill can be hidden or shown. There are also settings giving the number of function evaluations to compute in each direction for a surface, or in one direction for a line.

    5. surface3d - for plotting a two dimensional surface from data values. The user should provide a 2D dataset for the height of a surface. The x, y or z axis for the height and other directions can be chosen. A second 2D dataset can be provided for the color of the surface at each point. Note that the coordinate of the 2D dataset lies at the center of each 2D grid point. The height of the grid at the edge is calculated by linear interpolation. Normally the grid is surrounded by four lines and the surface by two triangles. If a high resolution option is enabled, the each grid point is surrounded by eight lines and the surface drawn by eight triangles.

    6. volume3d - for plotting 3D volumes. In this widget, for a volume described by A×B×C values, then the user should provide four datasets, each containing up to A×B×C values (there can be holes in the representation). Three of the datasets give coordinates of the centers of the 3D cells and the fourth the color of the cell. An example set of datasets would be X=(0,0,0,0,1,1,1,1), Y=(0,0,1,1,0,0,1,1), Z=(0,1,0,1,0,1,0,1), color=(0.1,0.2,0.3,0.4,0.3,0.2,0.1,0). Additionally, the user can provide a transparency dataset, which can be useful for showing or hiding parts of the 3D space.

Settings: properties and formatting¶

The various settings of the widgets come in a number of types, including integers (e.g. 10), floats (e.g. 3.14), dataset names (mydata), expressions (x+y), text (hi there!), distances (see above), options (horizontal or vertical for axes).

Veusz performs type checks on these parameters. If they are in the wrong format the control to edit the setting will turn red. In the command line, a TypeError exception is thrown.

In the GUI, the current page is replotted if a setting is changed when enter is pressed or the user moves to another setting.

The settings are split up into formatting settings, controlling the appearance of the plot, or properties, controlling what is plotted and how it is plotted.

Default settings, including the default font and line style, and the default settings for any graph widget, can be modified in the “Default styles†dialog box under the “Edit†menu. Default settings are set on a per-document basis, but can be saved into a separate file and loaded. A default default settings file can be given to use for new documents (set in the preferences dialog).

Datasets¶

Data are imported into Veusz as a dataset. A dataset is imported from a file, entered manually, set via the command line, or linked to other datasets via an expression or dataset plugin. Each dataset has a unique name in the document. They can be seen in the dataset browser panel, or in the Data, Edit dialog box. To choose the data to be plotted, the user usually selects the dataset in the appropriate setting of a widget.

Veusz supports one-dimensional (1D) datasets, which are a list of values with optional error bars. Error bars can either be symmetric or asymmetric. Veusz also supports two-dimensional (2D) data. A 2D dataset is a grid of values, with either a fixed spacing in coordinates, or with arbitrary pixel sizes. An n-dimensional (nD) dataset is an arbitrary matrix of values. These cannot be plotted directly, but subsets can be plotted using python slice syntax to convert to 1D or 2D datasets.

In addition to simple numeric datasets, Veusz also supports date-time datasets. For details see the sections on reading data. Also supported are text datasets, which are lists of text strings.

Datasets can either be plain lists of values which are stored within the document, or they can be linked to a file, so that the values update if the file is reloaded, or they can be linked to other datasets via expressions or dataset plugins.

Text¶

Veusz understands a limited set of LaTeX-like formatting for text. There are some differences (for example, 10^23 puts the 2 and 3 into superscript), but it is fairly similar. You should also leave out the dollar signs. Veusz supports superscripts (^), subscripts (_), brackets for grouping attributes are { and }.

Supported LaTeX symbols include: \AA, \Alpha, \Beta, \Chi, \Delta, \Epsilon, \Eta, \Gamma, \Iota, \Kappa, \Lambda, \Mu, \Nu, \Omega, \Omicron, \Phi, \Pi, \Psi, \Rho, \Sigma, \Tau, \Theta, \Upsilon, \Xi, \Zeta, \alpha, \approx, \ast, \asymp, \beta, \bowtie, \bullet, \cap, \chi, \circ, \cup, \dagger, \dashv, \ddagger, \deg, \delta, \diamond, \divide, \doteq, \downarrow, \epsilon, \equiv, \eta, \gamma, \ge, \gg, \hat, \in, \infty, \int, \iota, \kappa, \lambda, \le, \leftarrow, \lhd, \ll, \models, \mp, \mu, \neq, \ni, \nu, \odot, \omega, \omicron, \ominus, \oplus, \oslash, \otimes, \parallel, \perp, \phi, \pi, \pm, \prec, \preceq, \propto, \psi, \rhd, \rho, \rightarrow, \sigma, \sim, \simeq, \sqrt, \sqsubset, \sqsubseteq, \sqsupset, \sqsupseteq, \star, \stigma, \subset, \subseteq, \succ, \succeq, \supset, \supseteq, \tau, \theta, \times, \umid, \unlhd, \unrhd, \uparrow, \uplus, \upsilon, \vdash, \vee, \wedge, \wtilde, \xi, \zeta. Please request additional characters if they are required (and exist in the unicode character set). Special symbols can be included directly from a character map.

Other LaTeX commands are supported. \\ breaks a line. This can be used for simple tables. For example {a\\b} {c\\d} shows a c over b d. The command \frac{a}{b} shows a vertical fraction a/b.

Also supported are commands to change font. The command \font{name}{text} changes the font text is written in to name. This may be useful if a symbol is missing from the current font, e.g. \font{symbol}{g} should produce a gamma. You can increase, decrease, or set the size of the font with \size{+2}{text}, \size{-2}{text}, or \size{20}{text}. Numbers are in points.

Various font attributes can be changed: for example, \italic{some italic text} (or use \textit or \emph), \bold{some bold text} (or use \textbf) and \underline{some underlined text}.

Example text could include Area / \pi (10^{-23} cm^{-2}), or \pi\bold{g}.

Veusz plots these symbols with Qt’s unicode support. You can also include special characters directly, by copying and pasting from a character map application. If your current font does not contain these symbols then you may get a box character.

Veusz also supports the evaluation of a Python expression when text is written to the page. Python code is written inside the brackets %{{ }}%. Note that the Python evaluation happens before the LaTeX expansion is done. The return value of the expression is converted to text using the Python str() function. For example, the expression %{{2+2}}% would write 4. Custom functions and constants are supported when evaluation, in addition to the usual numpy functions. In addition, Veusz defines the following useful functions and values.

  1. ENVIRON is the os.environ dict of environment variables. %{{ENVIRON['USER']}}% would show the current user in unix.

  2. DATE([fmt]) returns the current date, by default in ISO format. fmt is an optional format specifier using datetime.date.strftime format specifiers.

  3. TIME([fmt]) returns the current date/time, by default in ISO format. fmt is an optional format specifier using datetime.datetime.strftime format specifiers.

  4. DATA(name[, part]) returns the Veusz dataset with given name. For numeric datasets this is a numpy array. For numeric datasets with errors, part specifies the dataset part to return, i.e. ‘data’, ‘serr’, ‘perr’, ‘nerr’. For example, the mean value of a dataset could be shown using %{{mean(DATA('x'))}}%.

  5. FILENAME() - returns the current document filename. This can include the directory/folder of the file. Note that the filename is escaped with ESCAPE() so that LaTeX symbols are not expanded when shown.

  6. BASENAME() - returns the current document filename, removing the directory or folder name Note that the filename is escaped with ESCAPE() so that LaTeX symbols are not expanded when shown.

  7. ESCAPE(x) - escapes any LaTeX symbols in x so that they are not interpreted as LaTeX.

  8. SETTING(path) - return the value of the Veusz setting given by the full path, e.g. %{{SETTING('/page1/width')}}%.

  9. LANG(mapping) - mapping is a dictionary which maps language names to strings. This returns the string corresponding to the current language. The keys come from the locale names which are the two-letter language codes (e.g. en or fr), or the full code (e.g. en_GB or de_AT). The default key is used if the language code is not found. An example is %{{ LANG({'de':'Druck','default':'Pressure'}) }}%.

Measurements¶

Distances, widths and lengths in Veusz can be specified in a number of different ways. These include absolute distances specified in physical units, e.g. 1cm, 0.05m, 10mm, 5in and 10pt, and relative units, which are relative to the largest dimension of the page, including 5%, 1/20, 0.05.

Color theme¶

From version 1.26, widgets are colored automatically using the color theme. This theme is specified in the main document widget settings. Widgets are given the colors in order given the order in a graph widget. The default theme can be specified in the preferences dialog box.

To override a theme, the user can manually specify the individual colors in the custom definitions dialog box. Color theme1 is used as the first theme color, then theme2, etc.

Axis numeric scales¶

The way in which numbers are formatted in axis scales is chosen automatically. For standard numerical axes, values are shown with the %Vg formatting (see below). For date axes, an appropriate date formatting is used so that the interval shown is correct. A format can be given for an axis in the axis number formatting panel can be given to explicitly choose a format. Some examples are given in the drop down axis menu. Hold the mouse over the example for detail.

C-style number formatting is used with a few Veusz specific extensions. Text can be mixed with format specifiers, which start with a % sign. Examples of C-style formatting include: %.2f (decimal number with two decimal places, e.g. 2.01), %.3e (scientific formatting with three decimal places, e.g. 2.123e-02), %g (general formatting, switching between %f and %e as appropriate). See http://opengroup.org/onlinepubs/007908799/xsh/fprintf.html for details.

Veusz extensions include %Ve, which is like %e except it displays scientific notation as written, e.g. 1.2x10^23, rather than 1.2e+23. %Vg switches between standard numbers and Veusz scientific notation for large and small numbers. %VE using engineering SI suffixes to represent large or small numbers (e.g. 1000 is 1k).

Veusz allows dates and times to be formatted using %VDX where X is one of the formatting characters for strftime (see http://opengroup.org/onlinepubs/007908799/xsh/strftime.html for details). These include a for an abbreviated weekday name, A for full weekday name, b for abbreviated month name, B for full month name, c date and time representation, d day of month 01..31, H hour as 00..23, I hour as 01..12, j as day of year 001..366, m as month 01..12, M minute as 00..59, p AM/PM, S second 00..61, U week number of year 00..53 (Sunday as first day of week), w weekday as decimal number 0..6, W week number of year (Monday as first day of week), x date representation, X time representation, y year without century 00..99 and Y year. %VDVS is a special Veusz addon format which shows seconds and fractions of seconds (e.g. 12.2).

Three dimensional (3D) plots¶

When drawing in three dimensions, Veusz builds up a 3D “scene†for the graph from the various plotting widgets, made up of triangles, line segments, points and text. Veusz does not use a standard (e.g. OpenGL) drawing method, but renders the scene itself. The advantage of this is that it can produce vector rather than bitmap or raster output. OpenGL, for example, is based around bitmaps.

Veusz applies lighting to the scene. The lighting depends on enabled light sources, which are set in the scene3d widget. Light sources have a color, intensity and position. Note that only the angle of the light to a surface affects its lighting, not its distance. The position of the light is relative to the viewer (camera), not the graph. Positive light coordinates are towards the graph (z), upwards (y) and rightwards (x). Normally each solid surface has an intrinsic color, which can be seen without any lighting. If a light source is enabled, the color of the light is added to the surface color, depending on the reflectivity of the surface. Each surface also has a transparency setting.

By default, Veusz uses a naive Painter’s Algorithm to draw the scene. It draws from the back of scene to the front. The main problem with this algorithm is that shapes and lines overlapping in depth can be confused as the depth of each object is calculated at only one point. In addition objects may intersect, which is not properly treated. In the scene3d object, the user can switch to a different rendering mode called BSP. In this accurate BSP mode, the objects are split so that they never overlap from any viewing angle. The disadvantage of this mode is that it is slow, uses a lot of memory and produces large output files. We plan in future to add another mode which handles overlaps better and does not unnecessarily split objects.

The plot is affected by the viewing angle, which is specified in the scene3d widget settings. The rotation is given be three rotations around lines in X, Y and Z directions (note that these are not the same directions as the X, Y and Z axes!). The X axis runs horizontally on the screen, the Y axis runs vertically, and the Z axis runs along the line of sight.

There is also a distance setting, which moves graphs closer to or away from the viewer. At larger distances the effect of perspective reduces, meaning that parts of the plot closer to the viewer are not larger than if they were at the farthest side. At large distances, a plot tends towards being isometric. At small distances, shapes are more distorted (note by default the size of the graph is 1 in these distance units). It is currently possible to place graphs inside the camera leading to strange output.

By default, Veusz enlarges the 3D rendered scene to fill the bounds of the 3D scene widget, so distance has no effect on the size of the plot. This scaling can be switched off by modifying the Size setting from “Auto†to a fixed number. A fixed size is useful if the user wants a graph to be the same size for any rotation. With this setting the size of the plot is affected by their distance.

By default, a 3D graph has dimensions of 1 along the X, Y and Z axes. The size can be adjusted using the size settings in the graph3d widget. Care should be taken that the graph size does not lead to points being at negative viewing distances. The default position of the plot is at the origin 0,0,0. If the user wants to plot multiple graph3d widgets, the positions should be adjusted to prevent overlap.

Normally in Veusz, sizes of objects (e.g. plot markers) are given in physical units. This makes less sense for a 3D plot as sizes can depend on distance. In a 3D graph sizes of plotting markers and line widths are given in 1/1000 of the graph bounding box maximum dimension.

The main window¶

You should see the main window when you run Veusz (you can just type the veusz command in Unix).

_images/mainwindow.png

The Veusz window is split into several sections. At the top is the menu bar and tool bar. These work in the usual way to other applications. Sometimes options are disabled (greyed out) if they do not make sense to be used. If you hold your mouse over a button for a few seconds, you will usually get an explanation for what it does called a “tool tipâ€.

Below the main toolbar is a second toolbar for constructing the graph by adding widgets (on the left), and some editing buttons. The add widget buttons add the request widget to the currently selected widget in the selection window. The widgets are arranged in a tree-like structure.

Below these toolbars and to the right is the plot window. This is where the current page of the current document is shown. You can adjust the size of the plot on the screen (the zoom factor) using the “View†menu or the zoom tool bar button (the magnifying glass). Initially you will not see a plot in the plot window, but you will see the Veusz logo. At the moment you cannot do much else with the window. In the future you will be able to click on items in the plot to modify them.

To the left of the plot window is the selection window, and the properties and formatting windows. The properties window lets you edit various aspects of the selected widget (such as the minimum and maximum values on an axis). Changing these values should update the plot. The formatting lets you modify the appearance of the selected widget. There are a series of tabs for choosing what aspect to modify.

The various windows can be “dragged†from the main window to “float†by themselves on the screen.

To the bottom of the window is the console. This window is not shown by default, but can be enabled in the View menu. The console is a Veusz and Python command line console. To read about the commands available see Commands. As this is a Python console, you can enter mathematical expressions (e.g. 1+2.0*cos(pi/4)) here and they will be evaluated when you press Enter. The usual special functions and the operators are supported. You can also assign results to variables (e.g. a=1+2) for use later. The console also supports command history like many Unix shells. Press the up and down cursor keys to browse through the history. Command line completion is not available yet!

There also exists a dataset browsing window, by default to the right of the screen. This window allows you to view the datasets currently loaded, their dimensions and type. Hovering a mouse over the size of the dataset will give you a preview of the data.

My first plot¶

After opening Veusz, on the left of the main window, you will see a Document, containing a Page, which contains a Graph with its axes. The Graph is selected in the selection window. The toolbar above adds a new widget to the selected widget. If a widget cannot be added to a selected widget it is disabled. On opening a new document Veusz automatically adds a new Page and Graph (with axes) to the document.

You will see something like this:

_images/winwithgraph.png

Select the x axis which has been added to the document (click on x in the selection window). In the properties window you will see a variety of different properties you can modify. For instance you can enter a label for the axis by writing Area (cm^{2}) in the box next to label and pressing enter. Veusz supports text in LaTeX-like form (without the dollar signs). Other important parameters is the log switch which switches between linear and logarithmic axes, and min and max which allow the user to specify the minimum and maximum values on the axes.

The formatting dialog lets you edit various aspects of the graph appearance. For instance the “Line†tab allows you to edit the line of the axis. Click on “Lineâ€, then you can then modify its colour. Enter “green†instead of “black†and press enter. Try making the axis label bold.

Now you can try plotting a function on the graph. If the graph, or its children are selected, you will then be able to click the “function†button at the top (a red curve on a graph). You will see a straight line (y=x) added to the plot. If you select “function1â€, you will be able to edit the functional form plotted and the style of its line. Change the function to x**2 (x-squared).

We will now try plotting data on the graph. Go to your favourite text editor and save the following data as test.dat:

1     0.1   -0.12   1.1    0.1
2.05  0.12  -0.14   4.08   0.12
2.98  0.08  -0.1    2.9    0.11
4.02  0.04  -0.1    15.3   1.0

The first three columns are the x data to plot plus its asymmetric errors. The final two columns are the y data plus its symmetric errors. In Veusz, go to the “Data†menu and select “Importâ€. Type the filename into the filename box, or use the “Browse…†button to search for the file. You will see a preview of the data pop up in the box below. Enter x,+,- y,+- into the descriptors edit box (note that commas and spaces in the descriptor are almost interchangeable in Veusz 1.6 or newer). This describes the format of the data which describes dataset “x†plus its asymmetric errors, and “y†with its symmetric errors. If you now click “Importâ€, you will see it has imported datasets x and y.

To plot the data you should now click on graph1 in the tree window. You are now able to click on the “xy†button (which looks like points plotted on a graph). You will see your data plotted on the graph. Veusz plots datasets x and y by default, but you can change these in the properties of the “xy†plotter.

You are able to choose from a variety of markers to plot. You can remove the plot line by choosing the “Plot Line†subsetting, and clicking on the “hide†option. You can change the colour of the marker by going to the “Marker Fill†subsetting, and entering a new colour (e.g. red), into the colour property.

././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426733.0 veusz-3.6.2/Documents/manual/html/objects.inv0000664000175000017500000000167514376700055017471 0ustar00jssjss# Sphinx inventory version 2 # Project: Veusz # Version: 3.6.2 # The remainder of this file is compressed using zlib. xÚ•˜½nÛ0Fw?…€thH€.Ý:fh´Eׂ¯e¶©’”cûé{EÉᥤæÒSêœOü“HJtªòA~’¶®¶•èÔý!´ºú ½¿Tµm[ad¥•jøí¤T¦©” àö¢†êýçç§› ½uPÖÄL-v iêÝm'h›,)9‰Œ¯{lË[—¹ªí¬ Þ'lʨµ5ð¢dI dæ{àMdˆã@8(lNã×ò9MrzçÀ”´ž’É—"¡Ó}£¸ÎÙ”Fì4kõN8&#gIÆiN¡dí•Æ‰;ÕË3ö &)ÖÕÐwx…EJ&ŸŸ7ù|ÁÿêƒÒ‡ƒ÷^ÉÜתþS G,7­¶®]|%3è?ÞÔÂ+$J.üpî Ì$ñ;ÍyH$~|Mà„ánGÀ5ûQûr5¡öÇâˆ]ËØ+¶ÛgðZÊAî?§Dx-Å”÷ˆYï‘¢WÕ_&ÃøNð<Å7,Ÿ%ºžP8O^áõsKJÞ»>®O¬Å’©qMb¬ˆà î>IFk¸bt¢áF‹€ÉþÛ+®†I†ƒ¡/:R{¨kFˆZF´¼!jyuÁ ‰‘ö…u š¼`ëb°«ÏV;üO˜ „VÂóËœÎrð'n_4Aó1ÎR Ö/V°©„}P·ââþ‡Áó[ê5ãͼÓùr{ä ­¤žÎûÞÔ¥q½ÈöHA±SzN/rní³·zÌŽžY='LSؘ]$8…²€Hf~°ö€Ï]P g)ãÎ5öŽ¢àšñYÖÜŽ?öØØEÁCm<*à^\s:åÑî*)I|Ëi–Ð/B…aÿ_pØËДp±ì7"¯Æÿšõ®z2ÁYÙÇ“÷&ë„éì-?|ÏùCéF‚¯êp–Ìò3çNɬI— 8åäµtL~n6Uã,ï[<‚ŠXkEšk©üšOÛZ¹R¡î¼½^/(à†m¬žÙ‰éÛȲ7ñêv¸úÿúpFËî~CÒW‘ ‰gîû|lOv{ÂÕ³ãùX6:ßÇëϸoÙ þÞšùŒ^t Έnþ]w”././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426733.0 veusz-3.6.2/Documents/manual/html/search.html0000664000175000017500000000623414376700055017451 0ustar00jssjss Search — Veusz 3.6.2 documentation

Search

Searching for multiple words only shows matches that contain all words.

././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426733.0 veusz-3.6.2/Documents/manual/html/searchindex.js0000664000175000017500000004403014376700055020145 0ustar00jssjssSearch.setIndex({docnames:["api","datasets","index","introduction"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.viewcode":1,sphinx:56},filenames:["api.rst","datasets.rst","index.rst","introduction.rst"],objects:{},objnames:{},objtypes:{},terms:{"0":[0,1,2,3],"00":3,"001":3,"007908799":3,"01":[0,3],"02":[1,3],"04":3,"05":[0,3],"05m":3,"07":1,"08":[1,3],"1":[0,1,3],"10":[0,1,3],"100":[0,3],"1000":3,"10mm":3,"10pt":3,"11":3,"11th":1,"12":[1,3],"123e":3,"13th":1,"14":[1,3],"15":3,"150":0,"16":1,"19":1,"1970":[0,1],"1cm":3,"1d":[0,1,3],"1k":3,"1st":[0,1],"2":[0,1,2,3],"20":[0,1,3],"2009":[0,1],"2013":1,"2021":2,"20th":1,"22t21":1,"23":[1,3],"24":1,"255":0,"256":0,"26":3,"2cm":0,"2d":[0,2,3],"2e":[1,3],"2f":3,"2pt":0,"2x10":3,"3":[0,1,3],"31":3,"34":1,"366":3,"3d":2,"3e":3,"3e0":1,"4":[0,1,3],"5":[0,1,3],"53":3,"59":3,"5in":3,"6":[0,1,3],"61":3,"7":[0,1],"8":[0,1],"85":0,"8601":1,"9":[0,1,3],"96":0,"98":3,"99":3,"boolean":0,"break":[0,1,3],"case":[0,1,3],"class":0,"default":[0,1,3],"do":[0,1,3],"export":2,"final":[0,1,3],"float":[0,1,3],"function":[0,2,3],"import":[0,2,3],"int":3,"new":[2,3],"public":[0,2],"return":[0,1,3],"switch":3,"true":0,"try":[0,1,3],A:[0,1,3],As:[0,1,3],At:[1,3],By:[1,3],For:[0,1,3],If:[0,1,3],In:[0,1,3],It:[0,1,3],No:0,Of:1,On:3,One:3,Such:1,The:[0,1,2],Then:1,There:[0,1,3],These:[0,1,3],To:[1,2,3],With:[0,3],_1:1,_2:1,_:3,__getattr__:0,__getitem__:0,_columnnam:1,_data:1,_nerr:1,_perr:1,_serr:1,_strings_:0,aa:3,abbrevi:3,abl:[1,3],about:3,abov:[0,1,3],absolut:3,accept:0,access:0,accord:[1,3],accur:3,achiev:3,across:0,action:[2,3],actionnam:0,activ:3,actual:[0,1,3],ad:[0,1,3],add:[2,3],addcustom:2,addimportpath:2,addit:[0,1,3],addition:3,addon:3,adjust:3,advantag:3,affect:[1,3],after:[0,1,3],again:0,against:0,algorithm:3,alias:0,align:[1,3],all:[0,1,3],allow:[0,1,3],almost:3,along:3,alpha:[0,1,3],alphanumer:1,alreadi:[0,1],also:[0,1,3],altern:[0,1],am:3,ambigu:1,an:[0,1,3],analog:3,angl:3,ani:[0,1,3],anim:0,anoth:3,anti:0,antialia:0,antialias:0,anyth:0,anywher:3,api:[1,2],appear:3,append:[0,1],appendalwai:0,appl:0,appli:[0,1,3],applic:[0,1,3],appropri:[0,3],approx:3,ar:[0,1,3],arang:0,arbitrari:[1,3],area:3,arg:0,args_opt:0,argument:0,around:[1,3],arrai:[0,1,3],arrang:[1,3],arrowhead:3,asid:3,aspect:3,assign:[1,3],associ:1,assum:[1,3],ast:3,astronom:0,astropi:1,asymmetr:[0,1,3],asymp:3,attempt:[0,1],attribut:[0,1,3],auto:[0,3],autoadd:0,autoextend:0,autoextendzero:0,autom:[0,1,3],automat:[0,1,3],avail:[0,3],avoid:1,awai:3,ax:[0,3],axi:[0,1,2],axis3d:3,axispath:0,b:[0,1,3],back:[1,3],backcolor:0,background:[0,3],backslash:1,backwar:0,backward:1,bar:[0,2,3],base:[1,2,3],basenam:3,basi:[0,1,3],basic:0,been:[0,3],befor:[0,1,3],behaviour:[1,3],behind:3,being:[1,3],below:[0,1,3],besid:3,best:1,beta:[1,3],better:3,between:[0,1,3],beyond:1,bin:[0,3],binari:[0,1,3],binmanu:0,binparam:0,bitmap:[0,3],black:3,blank:[0,1,3],blanksaredata:0,block:[0,1],blue:0,bmp:0,bodi:3,bold:3,border:3,both:0,bother:0,bottom:[1,3],bound:3,bowti:3,box:[0,1,3],boxplot:3,bracket:[0,1,3],brief:0,bring:3,broken:3,brows:3,browser:3,bsp:3,build:3,built:3,bullet:3,button:[1,3],c:[0,1,3],calcul:[0,3],call:[0,1,3],caller:0,camera:3,can:[0,1,3],cancel:[0,1],cannot:[0,3],cap:3,captur:2,care:3,cartesian:3,cdelt:1,cell:3,cent:3,center:[1,3],centr:[0,1,3],centuri:3,certain:[0,1,3],chang:[0,1,3],charact:[0,1,3],chart:3,check:[0,1,3],chi:3,child:0,childnam:0,childnames_set:0,childnames_settinggroup:0,childnames_widget:0,children:[0,3],children_set:0,children_settinggroup:0,children_widget:0,choos:[0,1,3],chop:1,chosen:3,circ:3,click:[0,1,3],clone:0,clonewidget:2,close:[2,3],closer:3,cm:[1,3],co:3,code:[0,1,3],col1:1,col2:1,col:[0,1],color:[0,2],colormap:[0,3],colour:[0,3],column:[0,1,3],columnnam:0,com:1,combin:1,come:3,comm:0,comma:[0,1,3],command:[1,2,3],comment:[0,1],common:0,commun:0,compat:0,complet:[0,3],complex:1,complic:1,compon:0,componentpath:0,compound:[0,1],comput:3,concaten:1,condit:[0,1],confus:3,connect:[1,3],consist:[1,3],consol:[0,3],constant:[0,2,3],construct:[0,3],contain:[0,1,3],content:2,continu:[0,1],contour1:0,contour:[0,3],control:[0,3],conveni:1,convers:0,convert:[0,3],convert_datetim:0,coordin:[0,1,3],copi:[0,2,3],copyright:2,corner:3,correct:[0,3],correspond:[0,1,3],could:[0,1,3],count:[0,1],cours:1,cover:1,creat:[0,2,3],createhistogram:2,creation:0,crpix:1,crval:1,csv:[0,2],csvdelimit:0,csvlocal:0,csvtextdelimit:0,ctype:0,cube:[0,3],cumul:0,cup:3,current:[0,1,3],currentpath:2,currrenli:0,cursor:[0,3],curv:[0,3],custom:[0,1,3],cv:1,cyan:0,d2:1,d:[0,1,3],dagger:3,dai:3,dashv:3,dat:[1,3],data:[0,2,3],datacol:0,dataset:[0,2],datasetnam:0,datasetplugin:[1,2],date:[0,2,3],dateformat:0,datetim:[0,1,3],dd:[0,1],ddagger:3,ddthh:1,de:3,de_at:3,decim:3,decreas:[1,3],def:0,defin:[0,2,3],definit:[0,1,3],deg:3,delet:0,delimin:0,delimit:0,delta:3,densiti:0,depend:[1,3],deprec:0,depth:3,describ:[1,3],descript:[0,1],descriptor:[0,2,3],deselect:1,design:[0,3],desir:0,destroi:1,detail:[0,1,2,3],detect:1,determin:1,dialog:[0,1,3],diamond:3,dict:[0,3],dictionari:[0,1,3],differ:[0,1,3],dimens:[0,1,3],dimension:[0,1,2],direct:[0,1,3],directli:[0,1,3],directori:[0,3],disabl:[0,3],disadvantag:3,displai:[0,3],distanc:3,distort:3,distribut:[0,3],divid:3,doc:0,document:[0,1,3],doe:[0,1,3],doesn:3,dollar:3,done:[0,3],dot:0,doteq:3,doubl:[0,1],down:[0,1,3],downarrow:3,download:3,dpi:0,drag:3,draw:3,drawn:3,drop:3,druck:3,ds1:0,ds2:0,dsprefix:0,dssuffix:0,e:[0,1,3],each:[0,1,3],eas:1,easi:3,easier:0,easili:[0,1,3],edg:[0,1,3],edit:[1,3],editor:[1,3],eexpress:0,effect:[0,3],eight:3,either:[0,1,3],element:[0,1],ellips:3,els:[0,3],emb:0,embed:2,emph:3,en:3,en_gb:3,en_u:0,enabl:[0,1,3],enabletoolbar:2,encod:0,end:[0,1,3],endpoint:3,engin:3,enlarg:3,enter:[0,1,3],entri:[0,1],environ:[0,1,3],ep:0,epsilon:3,equat:3,equiv:3,equival:0,error:[0,2,3],errorbarline__hid:0,escap:[1,3],estim:3,eta:3,etc:[1,3],european:1,evalu:[0,1,3],even:[0,1],event:0,everi:[0,1],everywher:3,exampl:[0,2,3],excel:1,except:[0,3],execfil:[0,1],execut:0,exist:[0,1,3],exp:3,expand:[0,3],expans:[1,3],expir:1,explain:0,explan:3,explicit:1,explicitli:3,expr:0,express:[0,2,3],extend:[0,3],extens:[0,1,3],extern:[0,1,3],extra:0,extver:0,f:[1,3],facil:1,factor:[0,3],fail:[0,3],fairli:3,fals:0,far:3,farthest:3,fashion:3,favourit:3,featur:[1,3],few:3,ffffff00:0,field:0,file:[0,2,3],filenam:[0,1,3],fill:[0,3],filter:0,filterdataset:2,filterexpr:0,find:0,finish:[0,1],first:[0,1,2],fit:[0,2,3],fitter:3,fix:[0,3],flexibl:1,fly:0,fmt:3,folder:3,follow:[0,1,3],font:3,foo:[0,1],forc:0,forceupd:2,form:[0,1,3],format:[0,2],found:[0,3],four:[0,1,3],fourth:3,fprintf:3,fr:3,frac:3,fraction:[0,1,3],freeli:0,from:[1,2,3],frompath:0,front:[1,3],full:[0,3],func:0,function1:[0,3],function3d:3,further:1,furthermor:1,futur:3,g:[0,1,3],gamma:[1,3],gap:3,ge:3,gener:[0,1,2,3],get:[1,2],getchildren:2,getclick:2,getcolormap:2,getdata:2,getdataset:2,getdatatyp:2,gg:3,github:[0,1],give:[0,1,3],given:[0,1,3],glass:3,global:0,gnu:[0,2],gnumer:1,go:3,goe:3,goveren:1,gpl:2,graph1:[0,3],graph2:0,graph3:0,graph3d:3,graph:[0,3],graphic:[2,3],greater:[1,2],green:[0,3],grei:3,greyscal:0,grid1:0,grid:[0,3],gridatedg:[0,1],gridlik:3,group:[0,1,3],guess:[0,1],gui:3,h5py:1,h:3,ha:[0,1,3],handl:3,happen:3,hat:3,have:[0,1,3],hdf5:[0,2],hdf:[0,1],hdu:[0,1],hdunam:0,hdux:0,header:[0,1],headerignor:0,headermod:0,height:[0,3],help:3,here:[0,1,3],hh:[0,1],hi:3,hidden:3,hide:3,hierarch:1,hierarchi:3,high:3,histogram:[0,3],histori:[0,3],hold:3,hole:3,horizont:3,hour:[1,3],hover:3,how:[0,1,3],howev:[0,1],html:[0,2,3],http:[0,1,2,3],i:[0,1,3],ignor:[0,1],ignoretext:0,imag:[0,1,3],imagefil:3,importfil:[1,2],importfile2d:2,importfilecsv:2,importfilefit:2,importfilehdf5:2,importfilend:2,importfileplugin:2,importfitsfil:2,importplugin:1,importstr:2,importstring2d:2,importstringnd:2,inch:0,includ:[0,1,3],inclus:[0,1],incompat:1,incorport:1,incorrect:0,increas:[0,1,3],index:[0,1,2],indic:[0,1],individu:[0,1,3],inexpr:0,infer:0,inform:[0,1],infti:3,inidividu:1,initi:[0,3],input:[0,1,3],insid:[0,3],inspir:0,instal:[0,1,2],instanc:[0,1,3],instead:[0,1,3],integ:[0,3],intellig:0,intend:0,intens:3,interchang:3,interfac:[2,3],intern:0,interpol:3,interpret:[0,3],intersect:3,interv:[0,1,3],intrins:3,introduct:2,invalidtyp:0,invers:3,invert:[0,1],invertcol:[0,1],invertrow:[0,1],io:0,iota:3,isclos:2,isfinit:1,islogbin:0,iso:[0,1,3],isometr:3,ital:[0,3],item:[0,1,3],iter:0,its:[0,1,3],itself:[0,3],j:3,januari:1,jeremi:2,jpeg:0,jpg:0,jump:3,just:[0,3],kappa:3,kei:[0,1,3],keyword:[0,1],kind:3,label:[0,1,3],lambda:3,lang:3,languag:[0,3],larg:3,larger:3,largest:3,largetosmal:0,late:0,later:3,latest:0,latex:[1,3],le:3,lead:3,learn:3,leav:3,left:[0,1,3],leftarrow:3,leftmargin:0,leftmost:1,length:[1,3],less:3,let:[0,3],letter:3,level:0,lhd:3,li:3,licenc:0,licens:2,lie:3,light:3,like:[0,1,3],limit:[0,3],line:[1,2,3],linear:[0,1,3],linear_wc:[0,1],link:[0,2,3],linux:3,list:[1,2,3],listen:0,ll:3,load:[1,2,3],local:[0,1,3],locat:1,log:3,logarithm:3,logo:3,logorithm:3,longer:0,look:[0,1,3],loop:0,lot:3,lower:0,lowest:1,m:[1,3],mac:3,machin:3,made:[0,1,3],magnifi:3,mai:[0,1,3],main:[1,2],major:3,make:[0,1,3],mani:[0,1,3],manipul:[0,2,3],manual:[0,3],map:[0,3],margin:3,mark:[1,3],marker:[0,3],markerfil:0,markerfill__color:0,mathemat:[0,1,3],matrix:[0,1,3],max:[0,3],maxi:[0,1],maximum:[0,1,3],maxval:0,maxx:[0,1],mean:[0,1,3],measur:[0,2],memori:3,mention:[0,1],menu:[1,3],method:[0,1,3],might:0,millisecond:0,mimic:0,min:[0,3],mini:[0,1],minimis:3,minimum:[0,1,3],minor:3,minut:3,minval:0,minx:[0,1],miss:[0,3],mix:[0,3],mm:[0,1],mode:[0,1,3],model:3,modifi:[0,1,3],modul:[0,1,2,3],moment:[1,3],mondai:3,monitor:1,monoton:3,month:3,more:[0,1,3],most:[0,1,3],mous:3,move:[0,3],movetopag:2,mp:[1,3],ms:0,mu:3,much:[1,3],multi:0,multipag:0,multipl:[0,1,3],multiplatform:2,must:[0,1,3],my:[1,2],mydata:3,mylabel:0,myvar:1,n:[0,1,3],naiv:3,name:[0,1,3],nameforwidget:0,namemap:0,nan:[0,1,3],navig:0,nd:[0,1,3],necessari:0,need:[0,1,3],neg:[0,1,3],negerr:0,negerrcol:0,neq:3,nerr:[1,3],network:1,never:3,new_api:0,newer:3,newnam:0,newpar:0,next:[0,1,3],ni:3,node:0,non:[1,2,3],none:[0,3],normal:[1,3],notat:3,note:[0,1,3],now:3,npy:1,npz:1,nu:3,num1:0,num2:0,number:[0,1,3],numbin:0,numer:[0,1,2],numericlocal:0,numitem:0,numpi:[0,1,3],numstep:0,nval:0,object:[2,3],odot:3,off:3,often:[0,1,3],old:2,older:2,omega:3,omicron:3,ominu:3,onc:0,one:[0,1,3],onli:[0,1,3],onlinepub:3,onto:0,open:[0,1,3],opengl:3,opengroup:3,oper:[0,1,3],oplu:3,option:[0,1,3],optionalarg:0,orang:0,order:[0,1,3],org:[1,2,3],orient:[0,3],origin:[1,3],orthogon:3,os:3,oslash:3,other:[2,3],otherwis:[0,1],otim:3,out:[0,1,3],outbind:0,outbinsd:0,output:[0,3],outsid:[1,3],outvalsd:0,over:3,overlap:3,overrid:[0,3],own:[0,1],p:3,packag:[0,2,3],page1:[0,3],page:[0,2,3],pagenum:0,painter:3,pair:1,panel:3,parallel:3,paramet:[0,1,3],parametr:[0,1,3],parent:[0,3],part:[1,3],particular:[0,1],particularli:1,pass:1,past:[1,3],path:[1,2,3],pdf:0,pdfdpi:0,pear:0,per:[0,1,3],perform:[0,1,3],period:[0,1],perman:0,perp:3,perr:[1,3],perspect:3,phi:3,physic:3,pi:3,pipe:[0,1],pixel:[0,1,3],pixel_wc:[0,1],place:[0,1,3],plain:3,plan:3,pleas:[0,2,3],plot:[0,1,2],plotlin:0,plotter:[1,3],plotwindow:0,plu:[0,1,3],plugin:[0,2,3],pluginarg:0,pluginnam:0,pm:3,png:0,point3d:3,point:[0,1,3],poisson:0,polar:3,polygon:3,pop:3,popen:0,poserr:0,poserrcol:0,posit:[0,1,3],possibl:[0,3],postiv:1,power:[0,3],prec:3,preceq:3,prefer:[1,3],prefix:[0,1],prepend:[0,1],present:[0,1],press:3,pressur:3,prevent:3,preview:3,previou:[0,1],primari:[0,1],print:0,problem:3,produc:3,program:[1,2,3],prompt:0,properli:3,properti:[0,2],propto:3,provid:[0,1,3],ps:0,psi:3,put:[1,3],py:0,pyfit:[0,1],python:[1,2,3],qdp:1,qt:[2,3],qualiti:0,quit:2,quot:1,quotat:1,rang:[0,2],rangei:0,rangex:0,raster:3,rather:[0,1,3],read:[0,2,3],readabl:3,readrow:0,real:0,recal:0,recommend:1,rect:3,rectangl:3,red:[0,3],reduc:[1,3],refer:0,reflect:[0,3],refval:0,region:3,regular:3,rel:[0,1,3],releas:[0,1],reload:[0,1,3],reloaddata:2,remain:[0,1],remov:[1,2,3],renam:2,render:3,repeat:0,replac:0,replaceblank:0,replot:[0,3],repr:1,repres:[0,3],represent:3,request:3,requir:[0,3],reread:0,rerun:3,reset:0,reshap:0,resid:0,resiz:0,resizewindow:2,resizewndow:0,resolut:3,respect:[0,1,3],result:[0,3],revers:0,rhd:3,rho:3,right:[0,1,3],rightarrow:3,rightward:3,risk:0,root:[0,3],rotat:3,round:1,routin:0,row:[0,1,3],rowsignor:0,rrggbbaa:0,rule:1,run:[0,1,3],s:3,sai:[0,1],same:[0,1,3],sander:2,save:[1,2,3],scalabl:3,scale:[0,2],scatter:3,scene3d:3,scene:3,scheme:[0,1,3],scientif:[2,3],scratch:1,screen:3,script:[0,1,3],search:[2,3],second:[0,1,3],section:[0,1,3],secur:2,see:[0,1,2,3],seen:3,segment:3,select:[0,1,3],self:0,sens:3,separ:[0,1,3],sequenc:1,seri:3,serr:[1,3],set:[1,2],setantialias:2,setcompatlevel:2,setdata2d:2,setdata2dexpress:2,setdata2dexpressionxyz:2,setdata2dxyfunc:2,setdata:[1,2],setdatadatetim:2,setdataexpress:2,setdatand:2,setdatarang:2,setdatatext:2,settabl:3,settinggroup:0,settinggroupnod:0,settingnod:0,settingpath:0,settorefer:2,setup:0,setupdateinterv:2,setverbos:2,sever:[0,1,3],shade:3,shadow:0,shape:[0,3],share:3,shell:[0,3],should:[0,1,3],show:[0,1,3],shown:3,si:3,side:[0,3],sight:3,sigma:3,sign:3,significantli:3,sim:3,simeq:3,similar:[0,3],similarli:0,simpl:[0,1,3],simplest:1,simpli:1,simplifi:0,sin:[0,3],sinc:[0,1],singl:[0,1,3],size:[0,1,3],skip:1,skipwhitespac:0,slash:3,sleep:0,slice:[0,2,3],slow:[0,3],small:3,smalltolarg:0,so:[0,1,3],socket:1,solid:3,some:[0,1,3],someth:[0,3],sometim:3,sophist:1,sort:[0,3],sourc:[1,3],space:[0,1,3],spam:0,span:1,specfi:0,special:[0,1,3],specif:[0,1,3],specifi:[0,1,3],speed:1,split:[0,2,3],spreadsheet:1,sqrt:3,sqsubset:3,sqsubseteq:3,sqsupset:3,sqsupseteq:3,squar:[0,1,3],ss:[0,1],stack:3,standard:[0,2,3],star:3,start:[0,1,2],startsecondview:2,state:[0,1],statement:1,step:[0,1,3],stigma:3,stop:[0,1],store:[0,1,3],str:3,straight:3,strang:3,stream:0,strftime:3,strictli:0,string:[0,3],structur:[1,3],style:[2,3],sub:[0,3],subclass:0,subscript:3,subsequ:1,subset:[0,1,3],subseteq:3,succ:3,succeq:3,suffix:[0,1,3],suitabl:[0,1],sundai:3,superscript:3,suppli:3,support:[0,1,3],suppos:1,supset:3,supseteq:3,sure:1,surfac:3,surface3d:3,surround:[0,1,3],svg:0,svgdpi:0,svgfile:3,svgtextastext:0,swap:[0,1],swich:3,symbol:[0,1,3],symerr:[0,1],symerrcol:0,symmetr:[0,1,3],symmetris:3,syntax:[0,1,3],sypport:0,system:[0,1],t:[0,1,3],tab:[0,1,3],tabl:[0,1,3],tag:0,tagdataset:2,tail:1,take:[0,1,3],taken:[0,3],tan:3,tau:3,technic:3,tell:0,temporari:0,tend:3,term:[0,3],terminolog:2,ternari:3,test:[0,1,3],text:[0,2],textbf:3,textdelimit:0,textit:3,than:[0,1,3],thei:[0,1,3],them:[0,1,3],theme1:3,theme2:3,theme:2,themselv:3,therefor:0,theta:3,thi:[0,1,2,3],thick:3,thing:[0,3],third:1,those:[1,3],though:[1,3],three:[0,1,2],through:3,thrown:[0,3],tick:[1,3],tiehorz:0,time:[0,1,3],tip:3,titl:0,togeth:1,tool:3,toolbar:[0,3],top:[0,1,3],total:1,toward:3,tr:1,translat:[2,3],transpar:3,transport:0,transpos:[0,1],treat:[0,1,3],tree:[0,1,3],triangl:3,tupl:0,turn:3,tutori:3,two:[0,1,3],twod_as_on:[0,1],twodrang:0,type:[0,2,3],typeerror:3,typic:3,u:3,umid:3,under:[0,1,2,3],underlin:3,underscor:0,understand:3,unicod:[1,3],uniqu:[0,3],unit:3,unix:[0,1,3],unknown:3,unless:[0,1],unlhd:3,unnecessarili:3,unrhd:3,unsaf:0,unselect:1,until:[0,1],up:[0,3],uparrow:3,updat:[0,1,3],uplu:3,upsilon:3,upward:3,us:[2,3],useblock:0,user:[0,1,2,3],usual:[0,1,3],utf_8:0,v:0,val:0,valid:0,valu:[0,1,3],vari:3,variabl:[0,1,3],varieti:[1,3],variou:[0,1,3],vdash:3,vdv:3,vdx:3,ve:[0,3],vector:3,vee:3,veri:3,versa:0,versatil:3,version:[0,2,3],vertic:[0,1,3],veusz:1,vg:3,via:[0,3],vice:0,video:3,view:[0,3],viewer:3,virtual:1,volum:3,volume3d:3,vsz:0,vsz_:1,vsz_attributename_columnnam:0,vsz_convert_datetim:[0,1],vsz_name:[0,1],vsz_rang:[0,1],vsz_slice:[0,1],vsz_twod_as_on:[0,1],w3:1,w:3,wa:0,wai:[0,1,3],wait:0,waitforclos:2,walk:0,walkwidget:0,want:[0,1,3],warn:0,wc:[0,1],wcsmode:[0,1],we:[0,1,3],websit:3,wedg:3,week:3,weekdai:3,well:3,were:[1,3],what:[1,3],when:[0,1,3],where:[0,1,3],whereq:0,whether:[0,1,3],which:[0,1,3],white:0,whitespac:[0,1],whole:[0,1],wide:1,widget:[0,1,2],widgetnod:0,widgetpath:0,widgettyp:0,width:[0,3],wiki:1,window:[0,2],wipe:0,wish:[1,3],within:[0,1,3],without:3,word:[0,1],work:[0,1,3],worth:3,would:[0,1,3],write:[0,1,3],written:[1,3],wrong:3,wtild:3,www:[1,2],x:[0,1,3],x_1:1,x_2:1,xcent:[0,1],xdata:0,xedg:[0,1],xexpr:0,xgrid:0,xi:3,xrang:[0,1],xsh:3,xstep:0,xy1:0,xy:[0,1,3],y:[0,1,3],ycent:[0,1],ydata:0,year:[1,3],yedg:[0,1],yerr:1,yet:3,yexpr:0,ygrid:0,you:[0,1,3],your:[0,1,3],yrang:[0,1],ystep:0,yyyi:[0,1],z:[0,1,3],zero:[0,1],zeromargin:0,zeta:3,zexpr:0,zoom:[2,3]},titles:["Veusz command line and embedding interface (API)","Reading data","Veusz documentation","Introduction"],titleterms:{"2d":1,"3d":3,"export":0,"function":1,"import":1,"new":[0,1],The:3,To:0,action:0,add:0,addcustom:0,addimportpath:0,api:0,axi:3,bar:1,base:0,captur:1,clonewidget:0,close:0,color:3,command:0,constant:1,creat:1,createhistogram:0,csv:1,currentpath:0,data:1,dataset:[1,3],datasetplugin:0,date:1,defin:1,descriptor:1,dimension:3,document:2,embed:0,enabletoolbar:0,error:1,exampl:1,express:1,file:1,filterdataset:0,first:3,fit:1,forceupd:0,format:[1,3],from:0,get:[0,3],getchildren:0,getclick:0,getcolormap:0,getdata:0,getdataset:0,getdatatyp:0,gpl:0,hdf5:1,importfil:0,importfile2d:0,importfilecsv:0,importfilefit:0,importfilehdf5:0,importfilend:0,importfileplugin:0,importfitsfil:0,importstr:0,importstring2d:0,importstringnd:0,indic:2,instal:3,interfac:0,introduct:[0,3],isclos:0,line:0,link:1,list:0,load:0,main:3,manipul:1,measur:3,movetopag:0,my:3,non:0,numer:3,object:0,old:0,older:0,other:[0,1],path:0,plot:3,plugin:1,program:0,properti:3,pyqt:0,python:0,qt:0,quit:0,rang:1,read:1,reloaddata:0,remov:0,renam:0,resizewindow:0,save:0,scale:3,secur:0,set:[0,3],setantialias:0,setcompatlevel:0,setdata2d:0,setdata2dexpress:0,setdata2dexpressionxyz:0,setdata2dxyfunc:0,setdata:0,setdatadatetim:0,setdataexpress:0,setdatand:0,setdatarang:0,setdatatext:0,settorefer:0,setupdateinterv:0,setverbos:0,slice:1,split:1,standard:1,start:3,startsecondview:0,style:0,tabl:2,tagdataset:0,terminolog:3,text:[1,3],theme:3,three:3,translat:0,type:1,us:[0,1],veusz:[0,2,3],waitforclos:0,widget:3,window:3,zoom:0}})././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.1445212 veusz-3.6.2/Documents/manual/pdf/0000775000175000017500000000000014376700261015115 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426737.0 veusz-3.6.2/Documents/manual/pdf/veusz.pdf0000664000175000017500000203147114376700061016772 0ustar00jssjss%PDF-1.5 %ÐÔÅØ 1 0 obj << /Length 843 /Filter /FlateDecode >> stream xÚmUMoâ0½çWx•ÚÅNÈW…œ„H¶­ Zí•&¦‹Tàп~3Ú®öz¿™yóœ87?ž×Ûö¯nÝkõâNýehܤü¹=77Uß\®;?:׺vÜ==¨ç¡oÖî¬nËUµêöç;O^uÍû¥u#ëÿ¤Â½í»O ú¨Ûû=Ù˜‰a³?¿ûkLy 6FÑæ/7œö}÷ Ì½ÖÚ–][öH<Si£¦cãݾké¥^Ñ90¡j÷ÍYVôßü¬H^œÎî°êv}0Ÿ«é‹ß<‡ÒrLŸ†Ö ûîͯ_®/Çã»Ck¥ƒÅBµnç«øy·§¦Wý×øæãèTHkÃý›¾u§ã¶qö{sÁ\ë…š×õ"p]ûϞќòº¹KÏÕµÿ u”/‚¹A² )`JbD>`´öØ2ãš™$`¤TY'`”(ZqŠÇÁ¼BJÅŒ )KÒÌŒ%553<Æ,£è(‡hþl™×wBš6„‹0¦Ða™G„+L¤gıè«cŽWÀ c œrn œqœø9çÖÀ–ã°MÜ—8%Ç àŠCMq.â†5„Sâhr›ê›®®AƒáúI‚Öå皎­ú\SåþÈ©¿ÇÀ á]8 é`Y‡7ÑŒ1OÊyeäµñÖzlÃë,d mYĸ”S£SJfß-›1i‰:C&e c4ÎRÆÄÉØˆËÄ$D&™ Ë Æ&+ü¬bLõÉãaÉjÆ çÁbôÍy°üœ£‡+çÁbèÉYB¹ü‘þœõ§Ägý ñYJõYŠYrÖŸb–œõ§x(rÖÁèœõGT“õÌ›ËÁ`F+ƒÙ­L ,C9ô²â?d+þ£¯ÿ¡ÍŠÿÄÿ1£ÿ1—ÿ¡ÓŠÿðÄŠÿ˜×ŠÿT_ü‡~+þCg!þ£o!þƒ_ˆÿàâ?ôâ?åŠÿÄÿ‰/þ?ã«„°øY ñ³â?^ŒBü‡Ÿ¿\–jò‹UPñœŠ{Åð¡âxᇻLöó^U}9pQãóq½÷›Ë0øO}cèÖÇ}¿ïÜõ3tìÈ¢}¿Æ!VOuðÊñË· endstream endobj 3 0 obj << /Type /ObjStm /N 100 /First 825 /Length 1408 /Filter /FlateDecode >> stream xÚ½XMo7½ëWÌ1¾ÄËonšæh vÛ‹/²´Ž…Ú’ ¤é¯ï›ME.µä®,9˜Z‹â›™÷f†\JªÈ’ªÈ‘¨þH(EO¶&¡Iò—†¤“$<~§IÔ¤jER’–f"éZ´d¤ÇÏÈ`àlTAË•&¯°Ö÷˜óTãת¦Ú8@P]뉆ÉÊÒ¦+ Ãá¸#+ON(Y‘y…eÆÀ)˜6ŸøÇÀW‹E^ZWO,ðœdçàžž¾ž¯ir À"uM!HeÉÕ$ü🪞xÄ«µ'oñé+òޤá*|¬eÖÀ³ ªfÆ€S3%N!F’ö86阈 ˆ5¸@Øx€}Q9ðÆÄCðÌ"€;fA`%¢ço 8ÖBU°Zãz(ÐhQ†³l3dg@ þQÎ3‡‚tÕj­ñ y äKdø¤%"<­80­•5Ÿ´aj!“6ˆQ€rmBiÇ‚LxÁ²ÙËVÈÇÎÖQ±r5’q ÈýDÔ(ž‚`F¹VEˆ-XFVó€ÓA;TCÿv Èœn²N8hÏ© d'À”3ΖÙ"y ÈžâÏQ@=ž!Ÿ­Oå¶éš›/Ž(ßu¥Ô£Ãò›Ê´Ÿ*侽ډܕ q˜¡(ßcÙÄb9Ì}I¿ž¾ Ù¶…dýÚ+ÞEà46ÕRÈÅ .Ó ~O‹c>ÐÎçG5^ŽLæëUÚ–)ä¦×´vG¥ß‹´NËl¸AÈüî›k^‰_Ó6¼í¹²üŽË‚ãMZƱÎ×Áz4³5£¾‡™C¸‘…iøpŸ îÈB‡½ ‡¦~•œ‰óCöæü.™*—l¿’6yÎnÓš7R:v<¤ÿD—3¼ÈN·Í·‚îÜ&-ñÏO°­Gks\W}ŠÿC%ÚWd(å²§ª!ÿ2ûÍ»p|¿–ÎÎkû¬¿ÊœQ6§*?|ÌÜ–÷%UØcÅN³/½ÍŒoX'Jÿ§2[½¤g•³lö÷í}€‰¨ƒžÉ3<‹é¾NhÛÒùkÛ+™U÷›Y sT¤ÉY´ g¤ï¥M&e~Mƒÿû™™1ül…£ =|6òÝSS~ȦÚéïR#sqg™<::ùõ9î÷Ý»PËâEË(³ö¬—Õ³kôÐÒtáä2MLûô,uŽ ‹æÄk¥¼PiÇîß!<¤N6'\;Ä7ÜÛxë3¶-Ò‰;Ð]°4ë9px/l_Š?…í”_˹a~Ì…Ÿ)žb‡‰?åb§ïàáÊä_ÉÞ<%œMÐæ¥«½t¹\Ú§íãa£àzücñ5,kî~Ô )üö©æ÷‹&´;2³¿Nb W*næÒ{¦]zÏOüãÚø‚é}úZtt÷dE곺þ§b·¯®ªðªo²nÓSüu 1ÞvÞý.&ÿóãò3 endstream endobj 204 0 obj << /Type /ObjStm /N 100 /First 874 /Length 1132 /Filter /FlateDecode >> stream xÚ½XMo7½ëWð_l’3ü‚AR§܈7 rIl55jkËIÓüú¼áa¶«HâJV{Ð,Í÷fæÍ’ôzKÆo“¡ŒG6©ïœq.áé+èvÁxŠxFCÖãY 1Vyk(¢ß“aËïÙp’þd ¼Ï&à‘3¡¼‰‘ð &YW1K1)ƒ˜9 ŸÉä\&žÙ” ýÉ”‚uœ³ ÷˜älÀʦ9à ~Nð v>bu´ÆÔŽp#Çèö1¡!F  =9Jì È1c(9y ' ç:ä,~e ILrIÈ@f$‘e(I6á³@8úâ$aÈ^ñ’ I«Gw%‚ìU ç>“•°á3Y–°eHbC&H2-¤prDÐË't“–j9ñ;˳† ™Ï¼xÕÈ‹sI†0Ï:BCБ|"ñ {4ðs‚ éÈ 2U*²ÒÖŠÀ0V@>"èGÁ²Bœã„nñ;D¬yQª ’!¡$Uq4 ‚‚”%dHEÕg™W}FBÙÖ¡$¥T(ÈN¡ ×z{” !6®¡@A$U† B9@‚è€ÏP£„‚¬qL@†‚œB‚œ‘c‚‚œ%(Èé'(È%NP0X„ÌPra ŽÊäñcs25'/ºYgNž›GËÏ–óËûënqŽý±sGæÉ“É£wð¿ôÎZû“˜¯b>‰éÄ܉¹?jÂùáNÅ\‹¹© bæŠù\Ì{¨­¥N©}Ë6-m í}¿TÌWÙÕ{Þæáy^ôζׇ­ëÅ<óç0eWE·hóÄq<7ÊSÓóW8î½WàV³ý©Í“›<«…ÓÆ,;cŠ™‰ùGk¦]$ÞîųsÑ{·ç\ÌY{ýšwõjõÕ_ó&H=”BŒ¯)k“ñ!ÈjùNÅ\´Ã!OuY-µi›6‚ög-Ä:Ú´é´¿3‚ì\ÿü,æ£Nio¡¾ìåÀ¿tÜë!»+íT[w}x5Ú6™;Ù/*ùÃÒŽ,)Ú´-‡ça7ܯÚÀk6ž3õs9îj@aH§'ÄOÖì ¿*Èi¦}çŠþqd®Ù^*ðÍŠÇ{Ô”·Q,îv¤ÇeÜíJzšpl·Á-U÷oÚ÷û°f¯”ñï6Ùš7tª ë±ß2òÖÊ´u½˜§ݽûtxÃ|?LÏÈ-йÉÝ_8ûý£/·3Ü—ÿM›64iw.kŽ;c®ùoìnXj}B»qç§½¼¹ÇrÞ ý¥¶;lE\ö"yJûôÿ@¸àþWļóFÌÛ¶{þîõd§za«^\¶¹i/þd¼Þát ¼÷L§|· ‡öŽÔŸêýyôÇðkK‚^Ž ¯½imþž¢7¬Åš?_tr{;íMëbˆþaå&צشsõš­ÜGçšÆnx¶_h ÍÇòaÍF6^ÌòÅ Ú <ÝÑä;GiÕ¥ endstream endobj 455 0 obj << /Length 586 /Filter /FlateDecode >> stream xÚmTËŽâ0¼ç+¼$æÀà$0Š ‰Ã£­ö ‰a#A%áÀ߯«›ÀÌjDÕå²»«ífðãc;ZæÕÁŽÌ«Ÿ¶­®MfGÑÏ}í q•]/¶ìÞ­ÍmÞ¯¶o⣩²­íÄ0ZÇë²è^œx]fçkn{ÕÿE+{*ʧyÄpg6;5’PìŠîìVž¤pH8$hù—mÚ¢*ß„z•R:")󨺠ÊÖß3‰qŸûX”ysO'Hî)-ò"ëî}³‹³‹ÍÛ[ÛÙ˺s á3 4†{´¢p¿YôdšrýØëKæ‘+ˆ™ÇÞ a }ÀõàíÑ« W€‡Œ{ Fvm734…4˜‡¢´A­«»èGÞÿc Ú¤Þ_86 endstream endobj 456 0 obj << /Length 770 /Filter /FlateDecode >> stream xÚmUËn£0ÝóžE¥Î"±y$UÉ6 É¢5Õh¶)8¤"’,ú÷ãc\W³Ýsß/.7?ž·3ÑôozÆï(yѧþ2Ôz¦vÇèæ¦èëËAwçG­ÝŒÒÓ=yúz«ÏäVmŠMמåMW\=jý_Iê÷¶ó*ˆCn_õŸÙÃfö ¯íùÃ&1yØ+ü­‡SÛw÷$¾£”FÙ5ª? ÅS4¿†!ó1ð¾íšá‹¼!r3Ò´õùŠì»>˜Za¼ý<õaÓíûhµ"ó#<‡O›ËÏhþ44zh»wrû°1p{9?4B“4Z¯I£÷Æ‹©çqwÐd>å?ñ¯É»Ü=ûõó¨‰Ã±K«î}:îj=ìºw­(]“UU­#Ý5ßd¦kò¶u¥Ñ¥¥y že¥ÖÑ*†ƒx12+ƒ¹Sx¦æ,öÌÒ09Ì9Ô)5t´J N¦Š'†™™{fSÉ –2Œ¬Rà̼   KÙÀÒV i‰X¤¤†BÆRs>–^ÿÝ ×.¹¢KäCc†2—ÀÜc4‰&WÀ©o"²¦™ÇÖîq¼ð8^zlã p5u%†=c¾K(œq/‡?–xŒQ±Ôcøc™·/€s/G|¶°£•¨•-mõ„¥•鯝P/S8+8èÂÑ 4fÁR§SYZ"?.ì‚0»1Òшŕ[KŽþòÒñ­¾õÃúPKS6Ò×0ÃÔæ—eÈ;Uކ}Z8~S›gÈ;­ _™õÇàg®v»ói;K¹æÊcÄÌ g‡ÝÌ­oZ ÞÜú¦ ú¶ø’'ü êê„LÄá^ î¥àá^Š$ÜK‘†{)²p/Eî¥X„{)–á^ î¥(½ߎ‡¨> stream xÚmVMoÛ8¼ûWhÒCj~H”\HÉrhSÔÁb¯ŽÄd IJ!Û‡üûÕ¼±Ã¢ØƒõøÞ¼!9ÔÝ_?7¾?¼ÄûUe¿âép»øPßgwwÍ¡»ìãpþcûÛÛÓ·ìçxè6ñœÝ×Íã°;™‚‡îýÒÇ[Ôÿ…ø¶Rêd÷ÏñŸ‡§ï›…ˆçÝù}z“³ eÊäõßq<í÷LUJM롯{°<Íæ×JÙüVûu7ôãµ\ö‚â3m²~ׯOòßí§v1yóq:Çýãðz˜-—Ùü×ôòt?„Í—Ùüiìã¸Þ²û‰Ïô¼¹ïµ35[­²>¾Ni¦ž~l÷1›§>_\é“}~þ8ÆÌȳ&±îÐÇÓqÛÅq;¼ÅÙR©U¶lÛÕ,ýï g¼¼^Cs=…~úk*[4õ¢^Í–¥™žåO×mT·I:/nYº·ãµž1ÚLs*J`#¸lœ ne¼ÀÜ¢ì8W—Ìi+Á‹xAì€=±Ì ÄpM¼n˜?¯™SbZbÄhòÏ`-؃6‚+ÔÒ–µtΘ¸ 7 þÆûXøû €ÉßB[Mþ98hò¯ ›&ÿ ýjòwÐJ7Äà¯É¿”qò/1n„¿^ –ÑÄÈi 1z1–ùMN þ¦ F_ƃ›¡þ¹Ä ÝHþ±ä÷Ä’?K|M,ù愆fý[þ«þÐÜ e‘ÓRÿ©Õ S…xKýúµÂ¿¨e¹‚ä‘ýc­Ä íQ×Rþ–ú+™ëe¿y¬‹¥þ ëhÉ_Ë8ùkôh©¿G_–ü=âsêoSsƒ¹9µµ¨›S[‹<9õ”^rê©%æZ:ä¬kÁ³`Nø‚<åÜ'{¸à>© [AžkZ§&ŽûÜ#¿£Îùä· 9%F-—ËÜ‚µÏ©ì=WC'}•k‰_K—óRV³ᯌÔõÄèQàV ç$¾!–6n/xzjgÿu › endstream endobj 458 0 obj << /Length 1026 /Filter /FlateDecode >> stream xÚm–KoÛ0 ÇïþÞ¡@wÈbK²EÉ ‡=°î©­v;p’C¿ýLÒ2­b‡ü™z”é¿n>ý|ܘnxvù%‰¹óp[·)¿íOÑÍM5´×£ë/ßë\ç½ç¯ñÏqhÝ%¾-ª‡þpù< ~èÛ·kçü¨ÿ²îõÐóØ'¾}r6ßê?›F<.o“‡Æ“OVŒîßn<†þkœ~I1=¨û®Žå9ÚÎ;Å[¿÷Ë¡ïÆy»ø6Rw‡ö2þ·Ç)]˜üø~¾¸ãCÿ2Dwwñö×ä<_ÆwŒæs´ý1vn<ô¯ñíÏÄ×ÓéÍÁÞqÝßÇ{™–™rú¾?ºxË),Ž9|Šž?½Ÿ\LœR`íйóiߺqß¿ºè.Iî㻦¹\ß}𥹢9Ï/íßý8Öß5õdNœžrf=KâʳšXÈÄxΈ—ñ9ñ²¾&^Ößázz_/ë¯ëe¾%^æ—ÀI%À®Ð®s°k°‹f™×ûyé*ïx•7²`?¬Jö#+® rÆuAι.Ț낼㺠\dÃuA¶\är® ØÕ\°Wyã¸UÞÀb•·^å¼:oäÕy#¯ÎyuÞÈ«óF^7ò꼑Wçl8/a9/Qr^8®â¼WyÃù‰†Þ…lf™`…;%»[ mpŒ$[MyX[RŽÞ+Iù¨¥¤ÜL6§Ñ`ÓYÜË 9HKvvI6ä)+²K°k² Ø Ù§šã‡¹Šâ7ð+Š¿€¹Šâ/°×Qe\G…ñ›$Ÿû@if¨Â<„¨½¿`F¿¡ñ‰÷[fô—Ä©÷WÌ诉…÷7ÌàÏ0O‘úùæ*’Ƴ xü÷"ÜE)=+b¿~–ÑúÊsN~¦‰—ýv¼?ÆSðþȆ÷G¶¼?rÉû#W¼?rÍû#7¼?p>çïãËSfôcÊ¥~¹dF¿b†w4ψ}}òœÇkf¿ãþGÁýl¸ÿ‘-÷?rÉý\qÿ#×ÜÿÈ ÷?°žó÷z¢Sfô fˆWKfèUM}k¡5õ­…ÐsßBohÍ:¡çï0οÁÐÿšò¬ ÷4}{ÆCùU¸NµzŽçšVcC6¬¹û ¯&á9&ýà¡öj¯Q¡öš,Ô^“‡Úkt¨½fj¯)Bí5&Ô^S…ÚkêP{MÃÚk®©MCíµ"Ô^+Cíµ*Ô^›…ÚkóP{­µ×îBíµE¨½Ö„Úkm¨½¶ µ×V¡öÚ:Ô^Ûð·µLøÛZ¦¡ö–"ÔÞR†Ú[ªå=™njó îlpÅ\®†íu§[#ÞCñW¿Cï–«êi8Á,üá×ß™~4Ñ?„ãªs endstream endobj 460 0 obj << /Length 244 /Filter /FlateDecode >> stream xÚeÁJÄ0†ïyŠ96`Çd’L’«è ½é/Ëê6аí¢ÝEôéM¶Å=ýaÈ÷ÍÏ(x÷BýËw¡s*Ðà ¼Vè Ãn›­‚>ÏP#Ãçù×–CÎ=¬ÅÃ…ë¦×+c€,úà5´/@P13!im›êIZW¥Óô-kò¡º=ìNC²vUw|;ŒrÛ6Yä@û 9[DÚÆ"…L`È}΢ǴOÝ”fAFZPó­s.¨v£Ñ&}”}i¤ª¯Ù°îÆ~O¿Ñ9*Ö¹- ³TXÉ,yžyâ«å¡ÈÃÅ…îZñ‘tWâ endstream endobj 467 0 obj << /Length 19 /Filter /FlateDecode >> stream xÚ3PHW0Ppç2ÀAc(á endstream endobj 508 0 obj << /Length 1256 /Filter /FlateDecode >> stream xÚí›MsâF†ïüŠ9J”ù–´·ÄØŽ·âMŰ›ƒ³ÉXI”×ùõ134Äå5cg. ‰éâQw¿Ý=@0\ zþi2øá‚€¨G(Ç`r(G 9à{8D`ƒ[çÌeίŸ&çŸ&î9c÷ëäãzzħâ‘”âK‹7—b Æ@è…óf…! ÂÕC‘ÇQ(×@®8‡Ð¹ÊêÒEÌÉãå´NóL.¦ æŠ@ù!òݦ¸i ¥}&LA^(¬”–x-„Aç‹0'YVÿlq;_çxâ·öþ_Ÿhv…ÎOŽ|ìkÞú6~6wñöb¬_eUs·ÕÑ|™·Ûísf¡¾¨DA½Lê:Ífî‹Å·lΜ:‰»6ø˜Z¦§Ë”*¦“U,n(Bg‘fù<Ÿ=()±^zjD1óBH ¬«$Û,÷{ãŸi)»Ù³ã®æÈŒpËð™ Ã6í‰jÚ_GYZ,›íåF×¾Jš^Oa§{Ñ!º÷¤íÞ®6 köŽé Òr–fÆí…[*ísÏaÔSÜ mƒjƒ ÌöE™Tͨ]uíë\>OËD;µsB¼:[ÜM9ŽˆÅób<º½ôKšýÕu±™.¶·6T¸§Ò‡´ªy\ÌÓz+PG†&ÕT'K´u>­˜GI£”³éVÜ›æúï_™öH]!Ý-³ÕÿÍV!Ä–U¿¬´þ=C~PÆ­ßõÎ’PS¥ƒÏ¢b¥v—åwn_ÁÛŸóÉàï‡ àcÀ¨‡¹¦‹ÁíWbqùccf€‡Õ›€ra8˜ƒñà·ö?Ïk£ñ=LÅBX®˜vüóຠendstream endobj 569 0 obj << /Length 1258 /Filter /FlateDecode >> stream xÚíÜKw›8à½KXØz€´Ì8¦'3'{ÚÎdº †ºœááÒvúëG°Á§IJvî&ŽŸ(äó•®®$¶Ôv1BÕã#®¡ ±©üJ¹¥%òÊ‹7£_æ£WçŒib",lióš5ÛDDlmîj·:3Æ&BHkp¦{÷é7cŒÒq:‘[< üÈ+¾Û¼ä…wžëúѲxêG™—ä¿Iÿh˜LwåûÿF \_ÊÓø0³¹ívŒ1&TÇvñúƒ¯èÕ9AµË1éDPªMs"äu—41åŸBdó—Q–Äîý"óãh·}Á,}bŒ™¼öc~ BüÜvþ­&ÆöFõÑŸWùöJ\RN‹dºó9”®Ý¿ÀæðzÁÃl"Q×ᘷwbÙ³´#eÂoÈQ¸ŽÃ¡ë*A‡8t£?Ë‘ÿ¨£µu$MÇé}šØYî6m™&¨õªV‹>ÚT» Wq’€zvm`9fŸÔ€$Ö+Á¦AyïòóÝ¥!Á¼l·qÎlˆ°ÞÁ¬-Xê)D6†a­s>Ñ!Ÿ]ñ%ž“y¯ýrT[®ç¤‰£ŒnpêÁ‰WN÷Åø•xÑÞ!ŒY¬W¸ZÞ(J¸S'sR/»î—¾2cDUï1f¢²¦w9w77Òã8¸s¥' õ€—Yy}ݤõJä Óù¥ˆKÅóu¶d^Rö•©:µ©'Ô%Ù€Éü#NÞùìzåÊRé(9ƒH -á.ÔÉô±¯ê6b-Ÿ4ÙqúÉ\9PW,LÔY5°À_äæ?»Í$ àêg×üâ`h"=tVJvÂ-àꟋo¹ò’©ËÔn™¦q¸r²+/úŠž4PfwœÓs1Õ£‰m™Z'r„BG8P:«Iwöu•xiÚrk5[ÍóÒØMu=çPH^orÝ8Q{ ’2 \ý§¢É…[VKa·xj´ËÓl íªí°ÈзÛй_åýŸ©gk´”góÑ¿#S~‹43¿Í6£lÙÚ"Ý~@š+_~“£®}Y¿)Ô¨%™´@›~/îÔMHóNÝ4¿9 .À|¿Ñªlí¿Æ’U endstream endobj 405 0 obj << /Type /ObjStm /N 100 /First 895 /Length 2615 /Filter /FlateDecode >> stream xÚ½[mo·þ~¿‚“åq†¾F€Ä†ÚmâÆî[d¥‹£ÖÕÒ Múëû 5Zé|’v“Ú=îÇÃáðáp“BrÁ¥P]¬(šËÍ%bG¡ ŒŽ SvŒ‰Šã„çÔcr1âmN.f^%'Iï«“¢õš+ÀO‘]I„2ºZ³k¨›bÑvØ%¼D„Æj÷'ÉQ¤°JIðGÕŸª£Ä@MÍ‘D<Ðå+à™  Þ*Š“SµiA媜rvÔÐÍ”Åqq%è!ÌÝÒ~‹%ã­¢ xRÈqÝNÜ”X‰.vãtšÁ%ºQ"쀾Ç\GÍJè)¬›à­ªÆnx«’Ú —Êjý)‚.Lž*ÞÌjçªoêã °Ø*Õâ$dý &fí)L#1¡N 0¾Ž ¨H&ýƒ1 °DjÑI Z'¹`ÑÔÄeR -»©¬R+.«!S«. ÚI`™ ãU"WRÁ=ðª (†DW8+©„!Æc§"h¡€?ŠÚ9»’ñX`ç’•fWΡ½…uµrrU«æ˜ðGvµÀ¢§« ¡êZPè[ã@+À5í»À›ÚO˜]Ëê†àÝŠƒo¶¦­ã)…Ÿ†+‚-„ÕcÔjð® £#àE!3ˆÃ%0ÒpAWដW†§ ºŽ>uÐ%ŠQë¡ ÒAÜeÐur*ð:Á à Aß@R^={æÖ¯ÜúwÛ×[·~á>»º~wµ9Ýo/¼xö™>w_|±úìM,ÿÊ›Ÿôr­—s½ì>áC¿êåäD/GzÙêåR/Ïõòaxv¥—Íxcñ°±ï~ù× Â¯¿ê-ëåtèúå>õŸŸ‚L‡zÔ1.ôò^/oB Zþehóz¨úŸû~XÜôéþoÛ×Ìåý ÷_~?Üž XW#–Nþ×øf€ì=úíà.»û­¿ìÛçx÷Ò¬ð¼o·:{Â8'ûôzOÞ ?\ ožÝón,wûÐ? ožNñâô~3@þ{`tuç€C¯6žÐyÿc߉wËð~ÀÕ_ïÜÅÀûþ™Ûýáº}¼~»}r±oŸÛÇšèá~ ]ùÏå°#wn{èÒ¿ÞYï7ZGgÔÿc þxòq·¹ôùÍ×CgÃv¿ºßöÉ~Õ½q;¼òÎc‰«š î;·>:ß½U.Ïž­Ö¯þ¸që—'ï7«õóíÅns±»‚Z Zsµþnsµ½¾<Ý\uáÕýqsv~òÕö'w¬u2¤eiüvˆK¼«B§×3øûÍþíïßC\à¿à.®?|x{[çÍ:%{„%8e6’X{¤„Þ âúååöôÕfçŽÁöÅ‘[¿Þü´sÆ#Ý(ÝÀºý+ºñIãO7+P¥Ÿ4«šé—4»þòâb ¨ã.fÕªe{Y‚•d%[­LVŠ•ÙÊb¥áë†W ¯^5¼jxÕðªáUë†W ¯^3¼fxÍðšá5Ãk†× ¯^»ÁS±zS’•le´òï“!éö[­_]¿Ûõû?œ_üsµþj{y¶¹ì¦o׿_½~~LýFëã[ȇAçu‚ Š*'Sõ°0ª}é›ß7ë÷,,ªxÈ_•³¾@ S,¾ªæÙcÛô ‹ÛUƒ–àAâU6“T¯bÜc·1{Ì¿&´A3Õ_ î¡ ê#aÿvMž?Âê6¹ bkÖ“¦Ü|å§÷‡qm;%x‡ŠYµŒXßcm®#<æõ)³$"4Mªà9ÙcqÐóFÊš)‚WôMÆì1ÿ¬ÕF*0\îKqàóÏZ¸')¸‡H?õ!•óOÚ‚•_zӃ׊ XkOÎØ½yáŽõàÿ.ÁLzJ ?çý$óA½é‰hÈ!ºÍJM;ý/YiÉí =|›¨þÅéa=zïiP²t(%+oŸg+‹•ÕJK¯²¥WÙÒ«léU6<6<6<6<6<6<6¼hxÑð¢áEˆ /^4¼hxÑð’á%ÃK†— /^2¼dxÉð’á%ÃÃÃÃóà ÃÃÃÃÈ— ϼFìäB²áÝœ;Ìœ¦.ºþWloÄ~œCðüøôz7É­øPsß‘‡VÁJ|‰ï²Àz—QêG,ºéƒ¹s‹PŽu„ÆÂ9¬æzx þí°oã[aYfcž3i’ZSy2ÄHß Ë¼»¾LjXz5Û—!X£ËÕ­M2Í{ ìÅû ÈXùRg—õ´g ›Ò²ò„*dA ¯_Éå˜0­x ›ò²™ }ún+aÙÌ(Ä“,³@VV TXO{u,<ãEe’eÈÊJm^O;Õ‡VhÑÌ5M²M]€ ‚LÄ¢£[QŒØiBp’mÚl4Êô –H)šÌ“B_X€ŽÀ}aDc=ñÀâ ©I“Ø,‰¡a|Î7»ãÝ-âc›fœb±ž.wݯÛÔ¢@VÄiÖY C¡úuu«" 41ͦYgh,*b°I#ˆ›–õ > stream xÚí™Ks›0Çïþ:ŠDoеMIm“ô‘ÉÛØ¡ƒ!¹iòé+ ü‚ÒŽÛ I`¯†ßüwW»L'=4¿zyÔgú›úFkñâ¤÷.ìõ)Ò“‚ŽÆÄ ˜|Œ$Fÿ¹¸ø\èHó ‡htcÃ..âlØÒ˜@AGìïˆáMKbWEð~¤âi¦âÂqµWüeøEis# É×ká+¸ü%®kë‹A^¶Døüpâ>D³J,˜33i†ŠŒ°8T—ñ0ÏF×6õˆòZ®QŠØ.€ÉXèhE“‚”±*[©%Êöš@ h&ïhi‰Èƒgõ¦pâçù,Qm˜¤£¸-Šd“çÕ/N€`”¨¾ wyñ>}&iTvÈvƒl%ÃóúÈ÷<Ÿ6ÍùwŠÛ|:ô$¢MÝ‚”›3ÂpVâõØ4M¤ÿânhoÙ±²ðU™dsš@°: Îʧj:.´xí(Wwö(¯‡÷E>1â†E4m'³{+í£õ¼&™gcï£ ™{®**ŸÕ]ž½€“¬s›ÛÑ“Gj8ŸÒÑB-‘ºsúà7ªæÉ¢&6¶5±v)Ó—AWñ2dèÉÐ…l°í˜:‰~ýniæ:¬é…4®]ÝàGN{7·Œôò™Ù« Àƒ}h ˜Ð»)¸ì×wº²sN±'$Œx“Êd’$M›M",Û endstream endobj 596 0 obj << /Length 113 /Filter /FlateDecode >> stream xÚ3PHW0Ppç2@£ ¹ ´‚¡‚¹‘‚©‰ž‘™¹Br.Wt¬B PØKÁ@ÏØÒB¡¬(WÁÄÌHç(sr9…pé»+XêYš™)„¤Œ01Ò344RIQˆÖÈ,ÓŒ ñ‚[åÂXˆ endstream endobj 601 0 obj << /Length 586 /Filter /FlateDecode >> stream xÚTMOÜ0½çWøhK¬ñW¾8–ÒUQµPH‘*Ê!Íš$j’M§+úë;ÞÉ.,´ROÎÌ<Ï{žgG’² ÞeÁé­IÊÓHE${$:J¸†Ä&á&Õ$[“{zÇLHí4þf 'ôý¦˜ZÛ9¶iîêMw‚ùÛØ|´hqŲËà" ~ø‘$VÐÚðXĤhƒûAÖ¿$‚ë4!Ûª%&J`mÈmð9GZÅ ­¾—\èe^ÚÁ¶L úBAoónm‡Ñ‹€ óT+„žoúp¤ uY9Ü¢„’GøyYUˆX¯BI÷Ù¦.l7Ú5F“çE€«,æ–«/ó‡íì7X¾ž¾ÃV,|Â'ýbf>Œ0^„*Ìo\K¶‚6w@1g ­ ½Þ[;F;sD|Ú4sõœÁþ«ë¯W F°<œZò4 ñÔÌ<®­Ëëf<9–á9¼É‚+‹F§ÞË$!Øö&y³ Èýncå\vz ªcºÝnY G(»‰CcÒ óXGŒÊ¾YÀ—¸à•kdžïôa ÿ4O&‚â:»â{7w×k‡CûúKðæûñÊ1b÷}s Û©qußäîyp‚¶‹xjï@è¾Ù8Ww%Öû¼ð>üÈK¦€!ÛÚUG ³ëy_Õ…¿C¾4v˜åtÎ"é£o’ö¯ó8ß®sãÙÑü^?ÓÐpý÷+}û'Fq)÷/Ž…ôj•]¬2ÿÛ¸Ýé2‘â&òœ;ˆ|­çU¶) endstream endobj 607 0 obj << /Length 200 /Filter /FlateDecode >> stream xÚ; 1„ûüŠ)Ð5¯KîZŸ`¡¨ÁF,D£ž"*‚¿Þx§…`a5ì°;;ŸÄÖ¬Õ7N;„-¼†·9Ù l°àsa3o—‡hjŸóîi}+ãñ*š_]÷§c£ö§ñW—X†i± CÖ ìÌTz%¡êhK^z¬K¶XJl’?„$Sä¸W[%¬Ë“0c&ß5?ú••YÒî﨟¤V“Rº­ Ã*CZºtV™‘ññ(ôFá<«˜>eÛœWHZ endstream endobj 615 0 obj << /Length 1780 /Filter /FlateDecode >> stream xÚµXKsÛ6¾ëWðHÎX Hð!Ó<wR;•t:II[hø* ÆV}w±K‰”Õ&Î$ÜÅ>°Øý°°n-a//<…åY±oÅžpCYYµøðIX9е„›$‘ugVUV­`,­ëÅï‹_Ö‹'/¥´7‰üÈZßXAâ¹+áYQ⻞­un}°Ÿ9ËÐ~õôÍúÅ[çÓúW#â® "e¼Øõ<ÏZúÒM`4"W—/péâÅzî`Æn,ƒÇ:8±HáŠ$°"Oº»¸\¿uBûêù»gë‹«Kcx p=Ø™pýH¯Œ<«ÆâÛó…µ”áʨ^FÒ#Þ‰çzs…Wüa a¿w‚Ð.†þŸ™:Øž˜Ä_@Wnúdü½³b™¥z¶êiLiðŸógÓD2¡ÏTQkõQÈ CŠ°Û²ÑZÕ·ÄoÓÌñ…ý9½u|Ðï:K)#ûBÏ­äE¯në‚uë†ÆMAc‘ö»9g苳=O•¨šWŽ í{]Ô½Ú”ã¢ÍÀöÚÙwŽvÑIØ7CÉ>­·† ãâyÎȶk`+ž°»´‰ÕʾAEª‡®@÷W‰ 0ÆuíVeiI,ð´#®ªõhýM³‚èE(Îß]Àà‘ÌÈ;^hoiÁÚkºÏll¨óQå;ÜH­îŸ¼VõpÒÉÊþEUóVÁ 6,õ[šÑäêÚ%Ž9 diÍ*ûæT0̉ÄÑ<êq Y@;S­6‡Kp[zËëû=ýb—“fLÉì'äž°«T÷´"íFiU©2íèäpßìô¶©yÁÁ|q$ªQ+áا´§±jòlÇ©^ålˆtBPÏŸ¬ëŠ4ïOÅ$OuJ™Ó5͘PÕÆœÌ›s¬YtP5DлÖäÑtÍ^%EéŒ>KÐ1Á„ cViy(ÈnL¶"gÁ†}ÈšºÇìЮ!£Óš¹ÞÀ¡u7úB÷î~Û±›D¢Q4 SÛtä@Ï›l¨h“@6…ÔÍ JMSU+eEÍæ¯"ÓKND㬠zé·ª©qC±€ )Lr øCs›‹§æ†–I˜‰;¢±ìþ˜€mŽhw*'ÄÒ¬ Ü=qø¨!†JUE—v\´F?1ÄÊ~‰øG¹2<9iÕÒÁ®<»J­ZÊÈ ©Î´¢ÜY2°ïwô=w ” 0Ù°|[¶ä4?dw8úz@©c…ì a

*›xÿõÛ$4»Ë‡lD‚ÈLÛ¥‡rÔ۱ÊKœ(tCž ºôÉ‚ªŒõ8Áó’">Üœ9*5>}œ›ºÆ ]hF`r /Os $ÎÛr¸…<„À„"²¯''Fü=ú£Ò<"—°gãaÜ!ÐD‰£Ûãî”Þž:UÍ|ð'>p>'à›±è#t7”±äAñ±RT;”)•-R0Ñp<`¨Ñ¼vØkSöt{3ÝþWtŸØ!/Â6C¡ûÝéq v$4Šþؤú?¦I½¨{Ý>\\´·oïUß”{¸Û$²oõ8Rá?¾‡¦™ éÕŠü9&’?(H]á¦Wº˜¹ÂlƒÉü¾›˜jú®šŽL7i?Ù73™Âf\iЙo¢s£ê=€!H™rPÓ\AgK7*·Ú¬Œ0ë˜ã´é›¡Ë8sŽ4üG·Aõ:Ô =ªþŽx›45 j]6ÜXM"n›ž\NîN˜zª¸‘“çl|{pbàò¢qóÿ¶wqyĵ†öÓׯVÑÈS4ç¼>ÇçU¼²¹„(´cÚëo¨#ïá›//@Jj`0-ÔRqŽéA šyáÀ‚ék%Ádž9—É DNüÐ`xGK˜£ªbVáñ‰Ž±n[M‡%öŸÐGAƒ4“òWã:–fS)†SnwžEö«¢lOµ3€¤ƒéä=“b9¶±?Ð÷ýÒãëtµ†JâŒNœÞ?Òî·üÀ3³¬àè§æØ`ñgxöÄ48$Ó¬‰ZrìErÞï¤sõG@ƒU[Œ R§(íÀ‹H£{é)¬ù½hÃE9M¤³CÅ~”lùìæòs 9ø1…¼vbü¢RuS6·»Gí+zúÀ¶éÆâK¿ÀÒªGìkªü¸ö†&θz3à_4‡în¸ãÕ¶ÿ©&“Õ7þëÊÀ ïzU[üSä"| endstream endobj 619 0 obj << /Length 4050 /Filter /FlateDecode >> stream xÚ[Ýsã¶÷_¡>•¾Z4ÁOññšæ:ÉL§iê&ÓIò@‰°ÅE*$u¶ó×w¿}“ë©Åb±X,¿]PÑæimþ~óׇ›ûI²)Ã2óÍÃ㦈7Eº Ó2Ù<Ô›Ÿ‚nÓ,Зñ÷Ûm\ì‚¿õ‡ËIwÓí6 ª©é»;¦¯[]š$aÆ·¿<|{óõÃÍo7 †Š6ŠE§a›Ãéæ§_¢M ôo7Q˜”»Í3q6i¾ƒg»ù÷Í¿n"QÓ>CZFaœ'Ø+W›®ˆßÏS*,³,63SQ%ÏL…i¨HËÿ˜ÍOÛ,Š‚›úév«¢@ßfÁäÉ-"ǼÑf§Ð;cÞƒÁ’]P[«ÆIT]Íäf™Â‡ê|¹¥4¿ì/M+Ý.g&=ý‰ßžQ­–oÃÛm£õU#UÇ‚úÇIw"þ6‰‚W~?·ÕA×ÌòÜLÇFxtu¸UYp”ÎÓPÁp›F:YªÐ~>E«‘X³¦­-ÃüeÑtìG̳¶›Y²Xž%¾7ôT܉ˆ‰¦,Hg”z¸Vw4z¡=?Ý&@[³EöÚAw9íõÀïh|ÖÍÏQ’è½£ž&0éÈ¿ž]…]œúºy|å&°^#ÂöZ4húËp›Ehœ¦©u‹+±ìg4ü§¦¦Õ‡M7õüvú3i nßè×»Ì}e@i~˜¼ç<ãçc…óÉÀ–8d†nÖODÞ @=öh´ga˜È]JÓ}~™ÉÃ3vê/­HkºC{©¥œ ©u5Aä-öÝôZ‘~‰G £«£‰y¶=,<8 2F ïñÔµeÉÄE*¶. ®¶cϤGÜD= 9U´0Ü`V ¾S21ÛÊSIÜŸ<É"u/­—‘f‡Cwõ¢gÛtÚ`1aü1Œ¤Q|Ó‰¦uÝà!0w–p¿<_gîò‚Î+vp]ü’*ò ÀMcÒæM<ÒN'ó©™^…ÚñS–;òb1 üä` /n̸cRÛ|Dˆ„Ÿ£8—N!"ÄŠI³ž¨€a–嘳a™ÈûGŽ2ö'0o5Â^áU ‹ÄË Í<hâWçÉ6ž´6‹ÑÖ, [Äy…ü ^Ƴ>`TIÉ @.Æ;ááÎô\MGœ¨ˆsLaøršj«"üü.×¼0¯aüˆÆmºZ¶3èEG“š&`Æ“hÅGÈoÓ<t ÐÃzVZ°gC [^v —iî/;tÁs –n]/L#j7U³[¥Ö(Ð¥¦¶xÜ1™¦ôj?öíe Pþµ¸ÂŠË¯Ä¡’8øúåÎúêtnõÈäØðÄ•YŠD2ÚJ÷òÔG®ÑîÏÕA8uO!i ï8Õý wöàIžÂ+ î»&v±aXQ„±Ú ,×2Tî ;J¸"$ª<†Í¶Ìà vŒ·sÞÚÕ"d?›¨ï¢²‚²…0. 4Giì‘,b»Ö .€`øÅKÁÏøw'6å­ ‡Wš½&³bÉÞ ‡quí¦Š¶Pq™qþ£týF˜œ \trÎ]GO9TØÚ2 Ï—ž ®òéèÄS3°Ääæw½-÷:w[@ÂÆÓ÷‘:ƒµ\`¢›<ð(èYU.(r äRß3Õ3@‘‹@Ê^Ä>ÉùÖ‰8~ì+†bxBˆˆþbF¢C¸e Ñt쇚àjüÈ<ƒþ å\š sª hL>Í9“rà4ƒCí©éîÖá¼…qªŒ„1"AÍ0[¨ ÜBh‘A% ’X(—ÅvN+¤k³þHƳ©´ HàLŒ‰î¡@2z¦ãš,¤îûúÕ—(MjáÄ*Á5ôéÜÖL\^0€p@^ÚwIi=çN~Nòì š†ç~´a¼ ÌSðg@˜¾‘67ðóæIKßïR»ñJÌ|eø—lrÞŠ%‡Ä´´FÆw_JÌÐ\›Ö鸚õ›,*sÃ%N:ýCB):Åq¼Íü)dfëd²uà9×|ÞߙӌO»,·qDÆ$‘9>2áPa=c1HUÿzaxg†¢“!JçŒ6só!ho›Õ”Öpö{ €NyYÈn”¹æ•ØŸ~Qìoêõt—ænè/ãàúËXÖh@³(þâ¦9c`ñ£33£^³œ¡ÐF6‚gµÖÝIJ€…ãÊxç—1ÿ  Ü—=)’øT»·@–4OØòɪåÅ$éçb׬±ØDB† @&7ÀFª#Q`ž.üY ,_¹;“š¿£l¤AšÝkܼҹéÖ9Þ@Tk»*û‚]Es_ÝU*÷`iœÍè:6©>z¸ƒ¼Î€:ÎVXv,aÂJƒ÷“Äê( |’ÌI Ù‡PAÓÍ-äÙ.ÊR¥Ø uGƒf+ƒš~+S]Mä±ÈTIöÌYt±Z9“D»‘Œ\­|YbJ±7ÖÜGwõ¹o:>›œdÝÊXÛv)4§V“>1Yjën©aÞžÀi",…UÄR+ۉ…¹âÊ HVÙƒ'lX$µÕ^·ÂK…ˆ`HšaqLÊu.»4YþS…Óû•‡q䜚ÎíˆÁâãðq4ðG`ŽÑ [-dS´¸øÄÚÑQJwÍïVZª—­*O§ÔE°‘””Ò‰š9ŽÂ /RÎgv j%%ž¥  ”^¸¢Ã‹…-ðîÁd<úœ5¤IÎ!Çà'û¹Õ@~سÖÄÝÙ£†¸$—­ÀiÚ(y6ǹ<Ÿã\Ž8½e"{cž-^î×âsSüË3èT«znöxž¯dP%.é¸arƒ0‹ 7îm÷CÿQwkU¦È­y¥¾Í+QGŒ ”ñ²ßbaG BI’‡Ešù¾„Û.‰øn ‰¸F¿Y Rä~)¢bþ …h^ån i¿^NçQ¤u– —‘F·TÑδ•4^E»·ŒµSa•ž±/•Ç×*j*TѪ¹h´¶õ€ˆ£Êa½ ™$‹ÃZd±ÕCº¢TVȱÛc;7fÂF96sºîÛ‹žÊ v2LÍÜ{þ ê>õ]?õø$q˜YßÉEŠ™‹Tf°4Ûmí1‘™¼zRÃÊY±z­fig€Ê›ÅC‹3$vèÂPSPÇÔûE"ï–Î?Ÿšj=ÌäÿèÈL|ïlŠ XšOGÀÔ>á•txúwHp¢‚J$!Æ79ñ•`yxB)IÙ0¹"Dr'|üX”|”½á‚¶Fºt½t1¥"Qo0<}—êâêZû8K,Y¨œÒ_Mñ‹*—‰¯Óï¼´ö*ä ©ðìZàš;™^Žw„fÇtƒš@HÿÎë"=@¤Ê¦(…`ã¼4îóä2w¹ ÁÑ{ÒgÝ]nø?••öJ²¼äkwe~®ñ¥‰æüêÒŠ ÷e¨W¾Ìðܵ Ó<ýâj{bbÞg‚cš†jç×&Wcǧ€æÚ~šl涃Ñ<¥*¸,ÅEðªgÜG$É'±Ô1••)íä_Ðü"?EµW~ u¢T'=ID;ØZ<ÎÑ[dWrKü…¾Ë‚—š³rx{%Ÿþdî¬â,–ÛÏ­ôÀOÂðüîu:öò®QÎ ÖÎÇÆÐÆW€/"Õ51ÊÝfHǧ-}¯œY`Í€wÿâ`³âÜ-$¶ç®#‹rX‰˜13y¬¥½C[»~ŠDöz)y÷òî]Ìÿ‚"ˆß½ðï-?ÒõS9ŠâùŽŠ4yÏüæ|gxP¸ æ Œ] 9 n©Ð:£ ¾ŸÔáÉ-‚ë­àu`¹~”·©24Y®ÈÂ&S0½da¶E)Ř‹G Ô·H5/`ç„/€`´¾*ø8ø[0 ç§³¹—ÀΛE¥h€³9ü1¸KÝz.ÝSP' Ü•QT&îÅ×Ԯʾ¯L E¥×¦ ×@5ݶSøÆ<‘t’rüM ø…7¤n<ÆÏ¯ÒyÑðy|’ÎBä3 ”K¨“¥«„âyÌÔƒC‰Ù¥®RöË `æ`’É¥µ>› ¬f› ë7 ˆà!^9.pÞ‚˜>Ðí}ÛÚ‹3‹«.gë æÈ©ötJòî¿·‡æ}«§{ pOÇÅÇ -.nã/8J^^Wö2°”¥wekêÄ©sˆdþAœeö6@–Ä&_½e\Ý×^º›¥:³DU  JÈ’€9ÂVhõÌhµ0XBØMüEôæƒ8eä™ï›îfÍa‚çìy‰ÏŽâOÆÀX£”©7 ½àÛ}5ð“—¶€åå•›œjÎ{ J@PÊBi†Ð䯹RÖ/T¹Ìw€û(X³7pã4r¯Iä²°zˆHœüÚ ójZ›;J¼ÉÖc‡æÿ3~"D †ƒŸReTÝt¦Ü/{ÕmE“ƒvšäUxý7KèV¶¼¾d×Å]þ–º¸š9?™ëB ýE¤Â® |ýÖP+Ö˜]9S&NÏ0váð}B¸=è»ÍÍÍVÎãê„]Mçp˜Ôù"–·Å5°©Ê0›qbW­%1p˜¥Ifx®¯9¼õÖn1h›3¸®éŸŒËÏñ³4Œó?ü5þêŸÒ8TJ>Ø!˜¼I@ê.²³ùêXé«xÉŠ¦~Û<…õ릡¯/6µsõüx˜ endstream endobj 633 0 obj << /Length 3645 /Filter /FlateDecode >> stream xÚÅË’ã¶ñ>_¡#µYÑ >tŒ³vÊ©JRI¦|±}€DHb–"e’Ú™Ù¯O7ºAg3S•ªœðnôûR¬Ž+±úóÃ÷ßý˜e«m¼-ÒbõxXeE§B®JYÅr›­ëÕ/ÑÏk™Gú:~]oÒ²Š>õûëYwÓz“Gjjúî#ÍÿS·ZšY\Äéú·Ç¿<üðøðûC÷‰U²*S-ãR”«ýùá—ßΆù¿¬Dœm«Õ“Ùu^É¢‚¶]ýëá‚qÎÂÃ9Eœ•;±ÈJÂ9‹ÍåöÔw?¹$ežÁŠÙ{h&Ü| ¶Š QØ= k›F¿ŠLNØÍ"EÍáÚí‘ ´>õ4[«IÅë,DôxjFš¼´ý4évÚIEöù¼NE¤ir:išö¡;RDÀóLdÑî:ÑFÕ¶ý:Ë£§ušG Ú ;5Ý‘¶ô‡øêÀ„Õ†éÞ$I¼Ís¢žÉÉÒÂ’“–DAZEj¿NòèÔh¼ú "¡kÚ±[g"z¡]û¶Ù#…Ÿ X5ãyþ*Ra0†NB+@ÝDê•úí»Ž ¡bJ–Ï*KÞtöWÑSS[=ªr ŠWˆgšïšIÅRj8$BÞx\” )´VQdíûnRMGXãst®Ý玄ÖH¤Ì"cÒÅBúºXVq™¤VÕ‡çRòjvžé6ï4ºLÀ¶ „oT]M'éQ- ¾ wT{5”Ô꜑€OíÂY5j×Òn$>'=h:«>’b¥PI²{;<\1ÐÙÃÙ…’TÑOÍÁ}õ WÇy;¥QN»œ‹®Ÿ´Ý µ¥=REçr )ܬ•t©·–hgÁõ•¹ž!ÁÝ4÷ïëˆ6q{­ÃÔá¶WÝ’VíŒM£QÚ¡×sKРꔈhP—ò ç2gq°~‰ž¶ÿ Ûëfü} ®jÐ5r|»~²w µ!¾dVf3s`ê2ôX¡·¨/ë"7ÚT–îŽ:Å—©‘MÏ0Ÿywsð`O3¢j 8R°ÒÃbxÄé‹î8bâ}Ýë^}+ç<ÒfŸ[Žæ[éö8‘Žæ‘3wK!ßÌ^ ·ã-3ÓÌXYmoæ¶ãëL6ñíûÍnÁb[ºžüºw;E¥›<ƾ_XÛ¯6Š^;Ò!´ÕÙ´Åù~´)8µTØq®oî –o€3R¤„XñŽHѪnbEZÅe<–ô´)˜gùC0]#+Î(ã3Ù;,3&-ä`ôù7’ ³³ëµ}|#ó´/œEær5òi3*:’z^Xö#ÜôˆI„’½+—,Ð%ür¶jÐEïMåi%gAøŒÐØRÎã+EÙÞŠš˜3Žk7JcßÌQ¹ž襚oQ“òj‚I5 #CÛ¶¹Œzé9ZÄi–ù:cêhm>!¥* Æ+>Ñ‚¢!ƒ¨ZÞCæ[̧à€F.Oœd…”é–?@Ph¾jnTà ýd+æô&ùƒÕG‹\î{)R ¦&ð{,|NBs¯ƒ9*=Ü£"Émú‹¢;x™_êh3†¦’§¬¹°Bþœ6ߡ⧠9¿Ò@kÕ£¼©Dr~ÿOQ¿]À¼E«ªwhUsVG}hÚ%eÂo A®Zm}ÂR³£YöFl]dn0íØÈ¥©ñ¯š{>ˬ¿›6Sż%†š¶­L¢G ¬kÐ#]ƒ3ž®!DOפܲa¥h”Œ¨ ù}ë`Á:÷²h÷¡—¸õ@ïåö¢¿_dVÅU&¯® #IB»$I˜÷ªåE3Ì š;É™çl˜é?'f¡pqÃÀïŠ0yNgã­ìLl¼ŽïL²%gBBeŠCÏ1›®øI¸Œ¥ÁÊ«)ñmÓ›*` ±)¤@eàõEàêtÐp "¤å²Q\fôq£ÍuLžÒÊB‚³ a“:è"7 µöj¾8–Ñßíš¾GÚOpŠ'dÀ|ÁÏ0ˆ 1Ox̧”(µþGIÞ!¬ûëÒ#«PÎ&žL0Œ`¥@=>8Ò£'~óQ4L?Q;¿š˜=µ†ÿØ ‚TÙן˜æõÈt®SVæUÕFFƒj÷×V™”Ç;=ÑÍiSp_udIFB¯gH²N3 "›gýG3\4D&ÒÁðP€8OÉc?¢>à|P.™q6‰ûI©qgðjõÊ­çù­OÅø/H€ Œ¡öi¾4µW½eÂÒ/ØÝagÐGã¤Ìÿ$c ¨ÃÀZí£Ö!8";ÅÞxRTfll«¿Ê-«Žî|)ð’Ü9W‚à xÍü¡·â¤®¢"†@(Ì@s,<*<ëpð\ ópì=Aðžµ¶D` Ÿ|¾9c†wSñ-ôÎá#±†T"ẟlñÀ»¦,4oO>¯…7õƒ-(m±iËÒ¯M¼2Õ¤î ’ JuŒ¾‡òýM-}‡C3ùàr1*³$H!¶ìΰ§(t£öáÐ=÷âÚèíÙ’ÆÒßL•¹niqó&mwSw$cÔgÍI¦é–dŠÿCÍÖ:ÿX¥íY¨qé{àöÞÓ1qKO"Tf_¸óŽ™ˆ·–§jt/‚j~âÉþˆï!ö÷Ÿétnö¼ä¾o†Þ¾WÌ/óâ›"{‡B\úöåH•úmV¹“à3b.­F@({¦ æ–$õÅÊ¿éÈzæ¯(¹ ¬Š?È)gA˜=;)ÔþÞˆVJ[‘e·Ët†eÀ)FžyU¢¼«9·Émºš»†³ICé}²QeîÙ¹¢w–ê&.Ë,…¸ì§Ž¸‘¾Ð¥‘nø]»Ê¼×lØÇ…Êâ„§(ªÒùrÅðlÆÃCré; …5ÕL6‘†ÎI7ÇÓ4xý·q÷Ìí¿æ½AÛä;´m×?ZÖ6丹˜Õ ürã{ófwußè­“vªçå÷ßü”qž•aE–äï3žÅ/ðèpÂÏ@i5{ÓŠ™.íH¹†Öþ¬5Þü> stream xÚ½Zßo·~¿¿‚ñC¸gÈ „N µZÀ°] ©áY>HB•;AwªÝþõýfïœú$¹KYÚÈÝ?ç'yRRHA *Œ6‡Ü-‡’ m R3Z •­†& m ”¡ÓíFZ ]ˆ$°Ê5ˆ€§T0—¨¸j6R™2ar 97Ì&5äÝðòn¸…\‰¢ à@(J!Ã5&¬@”ç>Z— <*ÐYpM˜]+:X n#†’Z^øKÎV±nVp®%!p®Š¸TWÃ쵆b áTÐ%Ÿ´â!g€oÀ˜Yü-¾-¤ùÄ„4gaNƒc6 šA pÍ ÌZ ÊâŸZÐbÚ,¨2ûˆ +KA[ª 1 o Ã(söàŽ…‚0%tdTɇbý•!MjIÁÐè!T@EÄø¾Ð„ÍVì©‚5>¸1æDª9:¢ÐëRìkàÕ(Xn†d¼Dƒ-ôÏ€±ð¯ÊØÒ„¶:­â­(+„¢þ©A”d3‹ACt|ãëÅYbï(:U M1"ÓЉ '†Œ-;1&W“ƒ±‚3—`ÅÅÏ&É;`(.¬Ò° kŽI±Õ¦Ð=Åg«É;„ŽC›¬6ïp°æ˜a0†£Î8»º(lƬÚâèh1¼ù÷Õ2 ÏW«õv1¼¾y¿Ÿÿr±úçbøi}ýayýÖí2½þ<ü2üü–ƇÅðjyº o‰(6ŸkŽ„µdÒȘ‚Ç” 螇££0¼ßÖoÖax¾Ûܼß`ðÅz%æ˜õYøñÇþžަH¾Ibör¥˜´uÁ©3À)-¹@:5qw`‘ˆ»à´à°Bêž¡©€W#IŸtl8¹D†æç”b®3c¦Ô%N3À!ð-.Ý7pæ˜K—t˜f€©°¹î”Øà~ï³õI'?=œl RAðäèÁö^»Ðð hj‹ ƒ"-°oDðV#jœ2ÕˆtDa݈¤pôùC™ŒäèY„›Õ¨ÏʱÔ>ÙÌà’‘JExdÄÃX'd¡(Ô'œéÌà‘I±I­Žñʲ8kë“Î .™ºShÔ™„ZÀ7 iyœ\2ynã¥!,+{±'È«tÁ™Á)CwØ ¼DA¡€‚›Ö…fŸLžÚ ãrC BŒ|Pûd3ƒO¦d;_Œ¤¥ å3ë3ƒGö¼Æ÷ÇÜhÑÂ&éÍ ¹±)¤¨ŸMc—\d_\¡1~T"0«êu6¬««Ì“Oü"¼m˜áUþþë?b^˦9¬n./ß}¦;^¯¶#çc?¬!Ú8öC ÔóûEw5¼¼^Ÿ¾^r^¾8Ûå§mxw(…—'gËÅð3˜/WÛM‡ûZ7ë›ëÓåf<Ý_ýuùáâä§õ§0JÇêh°/O®16xí>Ò‚Ý`V?Ëq,~”³kyß–}+ûö3]Ý·mßÚ®mißÒ¾Ýók{~mϯíùµ=¿¶ç×öüÚŽß»'VXkr?Ÿ%š1v°ÆÚWbË QP­"Ü é&‹Íð¼òï*“d†(¨°X¸Sø$è¯û„3CTX­[«üì‡tÈz­¯Â–‚  TÇÏRáá›@:(˜¬¯Â–¢ ‹Y=cT( xÕ5º Î aP*CãY‘Û•EÆÐU(É qP‘"§qPd¨XÂκ2™!*¡ˆEç)¯ÔæH}¶Î I‚VÏÀI‚ û©c—lt†ºŽ©íÊ#R?sÇ–õIgŒ¸׊ͪüÙã̬O:Oè‘áˆá[ü^µië\Æk•È_«°‡2AÑŸ—Ýéø=úéMà˜!&Ûî ¦xÀd¿$Blè(‘ñÍ€&CY\,‚maè.7”ƒÔƒfÕEíêi”¡ù…Šdxë’Í ¹„¸={D€×«¥#w‰æ ÕÆ/PR ¥!‘i»×â‰7ê#ýJ88=?¹Ú.¯£ÞNü’øäú‡UÀ$þz7ñ/Jü¿\—Lÿ6PÀ-o6ÿ‰gÛó›÷ñb=<ûŠ+퀅ÜÙ´Á$¹´ì®BðH^²>²ë«ËõɇÇ@l5ªÿà‘Žý÷.h‘õgÔ"YÚã!.?üvu ~ÄRbKu¼-äËý7~Á)?ãùòòêûÍÍÕÕúz;Üò.Tú¼ËÝ=ÞåAqî¿Yš¢cd¬„¹§è2B2rîi:¿nÿ£|Ù]ïQ¿Õ÷Që܌ֱ‡4^&xš>Içe°Ò4Áäó4¿RRô¼hŠzôƒÃ)ºìWf°çI:AyOe’Žü.Ñêê2ûO›òç„MýGQü(Eb¾£HLߪHœûé€î+Št‹FZ‹|Ÿ`oÓbA­“t…3Ê´: )Ù$CÑ™§ù1‚h›¦K~´8I–áì´N‹Åï€j™žÖõ²Ýg‡·éÜ^iz¹{Mö…žÿœ…÷ endstream endobj 651 0 obj << /Length 3352 /Filter /FlateDecode >> stream xÚÅÙnä¸ñÝ_ÑÝ€­%Eò°»³ì ¬ìù ·d·2j©£clÏ×§.R”ZÞy ƒRY¬*ÖIµÚ=íÔîo7ßÜß|õÞ˜]äI˜ìîwi¸K£,ˆr³»/w¿îÿ}ˆâ}5 ŸwašíßuÇé\µãá.Þcݵ· ÿWÕTÅPñ‹ ’ <ü~ÿÃÍw÷7ÿ½Ñ°•Úi&©JwÇóͯ¿«] ðv*0y¶{¦Yç]”d06»oþy£„Mµ`Wyìj¥aõ.Õ*P&e–uÐævÕWï“Ø_’‘‰C“Ǫo‹þ¬H›<ˆUbçÝh¹Ú_šnÄ'½/‹±`X÷ÈñÔWƒ>BÐO/j_M50üùT:ÞŸxEQ– Ÿ.B¢ãw­”ìWõŒ9‚ÒƒûS-„x üÚví]‡3cà¢{êÚ¢Yó[´¥[ ÂîîD¾;­ƒ<ŽYÊKS+œ«}Y÷ÕqlP’W†t-ã©â‡Kñ„hyë @ôvJ!“k žw§^NËC~¢À¤øIƒÜˆõ¥«I¿ÞÅJíÍ; eôþ¹.yÿµa’™ñó^‚?S€y¨ÐWÅH#ðWFÀÉÔíË%ÕŽB–Ï 0ê7+¶¤…Å…YgI´Þ”[—Ihì< ¦y²Š™‘‡¦h?0Äz¡‰öd+IHDO>{8ô8Ì—‡R¡L81i“})îL˜ïïéè=¼ÓF²?ƒÀªw”7ßæáõصcß¡yšT,  EûÔÈ£ƒõÝH!æj9Ü<3%+'d¬jZ«¥¤ì `Ç®éÄb‰(ŒMýt}¡ÕÚ™Îæûª-+ñl;ë\וÛʳàûFžö0Õ#‡Ÿ½‚´;wõ÷{ÛO1ƒ{*:?‚ ¶ºæ˜ ;èw BK¤ó5;×âùþE¤%É­gûO<Ì&¸ì2r ª~ék‰çkFqÇqŸ@•‘ F% Í’ ‰ÏE+ZÇ{¼¼P$ÂÒJERZÁ$ŸÈî äfè–|P_ÁŒÀVÇc×s;‰¯c'«„ƒ ›ù µ¶ü uîS µ¸šæªÛÐÀ㹸ȒsÝÖçé,Iù„A¨¤žï¸âíy5”E?IŠ,Zšf=³Ró©ëE§©PÛŒ H Js² HQ¯üÊÌ©,C9ÑÉ.´”¹_øLGß q >ßq‡‚ÀúQvôp‹=NaK]ÉŒôÛr›*~31Vº¡j?'úE_ý§–ªˆÍGðèÇ?¨zçóJb?䪪%%1I†³…<Ùc[e†‹ìXjthü/ÄÔ“·h ëŠÛ†#å´Ì!À¯Ùƒ+ýØb¸«C–l¡ã§ú#S%Ño¾qÁ(£*ñ­è¡)A\HLz¾oWÓ|­‰ÝÛ#%‡BEHds°—Û×p{+¡íØ‘³£ ’§3ÉÓГ]ªcý›2Q%A±¼Ð;Í9¶Ü‰¸€Ž®†xõSǾ;ó“1: ä´8”¨{JËQŸru43bé9Âݸ^eÌJOùZ 9‹©-7–s˜”#ÞÞcî6'EÁkëB CÛ êdN8<Ý _1G¤#LµàOÁ¸eU¶a@üº;A˜t'aš:ªR5×4ÂQ*1ÆS ©À˜ ”5'¾l‰sʽL/ÜçÀÔ»ùÙІsòÐÆ14ªéüÀF*‰Ïˆuòoϱ°‘!´% ºýù2B¯¶«æS ÕÜóŠÙ B0lú²õËÜÑíÚêšd¨É7‚]ø¶Õçdäø 220ý¼n&äjx¥ýŒ¬|—ƒRÂËÈÊØúb±ÊÌ}åSÀnRå˜xé÷”YÛsQÚÂæ€mMtS Ï^x‡áäBË%JÉ"Ûöí@˜Zû‚‡S…÷ìüLö•ò‰§j³6Èð xŠÐ)÷aéLú“áV3UŸ±1×pHC"rêÙPg”2^GŒ}-lWP•–[†ÆÕ‰WYæöò ˆ.Œ«8œûeZn?vàB §¹ÔF>nà ZÈ–žïá~ØébðÙþAao¬,9^‘ú›ÚþÆÎ ã†äžÄX7ògPËP쑯ڑ¿tÆŽ´Ïm,:¼¾ZH’ØÖ1çsvÜzû]S‰–FK¡*Ý×Í\2?[sœùjpW.剽ÈÙPD-òAÛ5…\ùűÍ_]”š0’+ùÐ\q‹0d'ñ‰cã6µd8ˆt.L`#ÂYˆ‘|„þ¸šyŸkëÁy313!âÏ~߯«ÍAäùþ‘g<燰UŒôÕÐ5“ü¶ÇçLj¬Š+ür^RÀlõ”-úËôú$uÊö°¤u¥&º£Cªb-¶9[g¶Y¶Žà-< æ•=]À>·oÞ*ÚWêûó ”|Aúê=¿‘€¢ Í (üX->˜ùR†7…xöH–>‚A—Cõj¹ozfýí-^Ò-Ö„ø½¬†£(ãÝÊxnA€åoêÉâ›z ªtßÊM˜lõ¾A¢ÝW‰o6¨$A}‘o­6‰Š˜`-3nKÎ;e°ruYÇ9Ö¨ÈåX\½È±ˆôœÞì-îµp\+_øäz)¢/Ë8ò5S¼­<ÊËÌÿC{ÈšåŒ,ʧÄ^„—{µHnÓ0Ù6<5’K=¶A—¾ºc‡± ²du%yšF`ïðüÚÁט±Ô¶‰»ªÎýûLÛ>qËFvk5'²·°ü™g5Ͱ¸ ¶ín¢¼³§_óøXbAš)õ‡WkàK¸ õ•!}³à’dy9@À,ÎüÑ lþÔ3—ùžÊŸËÁP>3ø§¿â©©[þÓüg?¾A}þ³Ã#FFÿ‹àõ­÷Ïø­»3”šW03áßÀ$#¾\Ž8R Ì⇴Ñ.­âÅ ÷CRº¢7µqº®xS®xaû¢.Ð\µÇW†x7³@Óoˆ ÒÛÅ~§…§Æÿ‡|<±û©‡E@è`û …aùë÷ÅÅþ¢„®ä–ycý£¼8 Â䳓·ù“Á( ´–ߎPØ š)¾=AçìÂ%}0žTáÛØwåt´?Öñùücvâ endstream endobj 664 0 obj << /Length 3613 /Filter /FlateDecode >> stream xÚµÙ’ä¶í}¾¢ó¦®ìȺ¼­3c×&NìxÇ)'>Rl‰ÝÍZ]«cŽÝÚ@€Õ«ÙØ.çaF" âR{»ÓÎÛ}yõùÝÕg_„á.wó$HvwÇ]˜dnàE»4ÊÜ(wwåîçŸû(vä4¼Û_iæÜ´ÅTËfÜ_ÇŽUÛ¼ ø·²’b4ÝÄ ö?Ýýåêöîêí•ü¼¿K ¹©—îŠúꇟ¼] ð¿ì<7̳݃ƪwQ’Á³Ú½¾úǕDzÎO×Q=7HB\•ø»&>~»ìÎ÷Ý<ŽÜ²÷=× SÚ™ïF,åog³ûá:ö<çµÜÇÎ8ªæ4üi¦¾Óõm'{P‡çŒJ¤Ñ”ôrÜûžÓöµÐkV2€Ôžu&Þî:ˆ€[L2ßQÅIêÜï8b Úi è I%N{$èh=¨ò„ëäÈøE[KÂU A=š©>hñá}&óÔÉA·èE5•(;¯%Qî™ò^ìI÷ä‚6²Èñ=ûz­SaÜŠq1týhFõRŒ`T#*5A‡IšhD­Õ{š¢|öEÙæìÓY~ý„Äm¥á ×êe4ÃÈÊ};]/‡ìüÓ¼°‹(2Dÿø´ÁÈÝ$M6Äiü$‡ ƒ‹˜ÕgÅKÑÎpR!Èû‡ ¦!ÜÅ0Ú`ZªaïƒÑЦ°õ8HIqhQª{ü'­um7þOmøaà ×sÛ«wm3ŠjCÀ(tÓÈ7¨m¿EÎsÓÜ`Üë­‚iúx³ŠMš°iÏŸi÷^6ÞÖ£^?àŽ\mWבŸ¹IÖ•ºy8{½löz~ꘫ¼òœz 9¼ôV BϲØÃìžmÆ:ËÑ:уíŽpUÐèƒÀyuœqP¸'‰žñÕB‚^úV_UAÃYeËc¢!r¼ðá,Y2`ж„˜†‰ö0³í/v0 ’Aµu!y)ž©¨iGôgÄBnª‹¢IØq#ôÙòÜUÚV6uOßäÂôØx,bxâxŽd„Õ£=O×:à•ÓLŒÓÁIûÕ^tg/ƒææ-š90«º-Dô”¹¥o}㈷ÖW›×ø/•¨Ú½S8zÄAìL¸cß!Cˆ×ÔoÁ¿-$ WÐGžó1ÛE)0"«'0½´,¼ .hw _—s ¬åƒÒÇgÎab i g忏UºÉ:#œïUjn)Þ"Œ£$ j¸’4ÃYdàT­(µŽ<ßyI°õÉ í]ÃôB8d©x`N'E264Oè’°Ø@¼˜+ëh0âcf1š­2¹ó¦rÀ5WpÐsjB–0íß©_VÀÒ„, —b ü}ŠAÕÑ ‹‚áWd÷7˜¡^™ þð¢ê®ew§MAd*ðfg)¸hà'=8yFûˆ"m )éÉ“cßÖ+jd(hèyJQÌ BœŸä °üiŸÄŽÆ1×æï“ kš¥sr°qú&U;Ñ"%‚Þ`J¥ùÁXïžòô+ïŠK b˜`½EÏu&Ï«×KiÐUÓI5ºIœ[A±|ï,«\ÊÀ©·˜‰O’ÆXœÐ›bv\ƒeóÍpW»O–€ÌÎ8ù>‹¾ð„äœ!ŠŸD^ñŸ“$<> °¬0ò(ËØ$ƒÈ8·”'"m㆑4¹a4*ØÌÝ>ÀÒjeµí 7DcP»Þ‡TÍ0}ÎP„N`;Ó€AV²‡‹ÔsQFïËÄ’H!¸p&ÿ{Vö‹%Îq•«.1p3öÛ—’ùaêæË4¨mäu©àÐÑú&Ö¹Dÿ=!Öq6ƒFÍÖ³äð…WoÌàHOj T“öšÀãA¼žª6âpÜ䤯ÁµHäÜnLÑGþБê¹\“âØÜS ë¸ … ¦ëI½²•SÜÃÐú¥:ar|@l/T ¨ÒÀ¨4%ÃÓôsŠŽ±Ü,3bò‚)…yr Dò•,ü‘ž‹‚ñ˜²€4¼¡ Ö”P™¦ëçÚRñY|èDÁû xmÛC¢†I–ÀŠƒ>L $úƒ{nþ<Ñl§ˆvÅ´Õ;IG:/™ts¡1¡Æ£1ßvrÀFëÅg/ŠÏØæ˜ø³¦·Ô`2úEo..w\ÃØT/ô® (´Ós–ª‡[¾Ž/aÄÉÌÓ}?Q#&¿"5 \! íhdzŽH¥R/žšQ<š©v ÂXr6¶G®VZÂôohL•ж¶¡sÍŸ-_ƒ.y ¾—k߀Às€0­Sµ8Äþœ´îW¼ö€`_(¤H*þØ?ÑRy=*²,JxTß}±—V`69 Uñ:NCй;pþB-Jnsn©ƒ[/YDo%â\£õr«Y¶Úµ·òšö"ã.‡µƒ_Ó"Ö*$ÈÛ•Þ’i„¹±¶l¹ï$ËÃdBè[ ›?ÌеÈ×þƶøafêðœ%k)ã ÉÒ\,/‰ª"2f˜ÛM%@b!WÉ¢·ô4½d}@rh Éíâzޱ«}aàîÊ9ÒªãE@ž+«Öî%Õ6¦çØ/kx/ØbÛó)[{‰ùîâr>Ë^XN%>Ñêmû|‚2ÄáÿX…D¿Or·Oq_ ŽÇñW” –ßLl±Î.±­OÍâr  AJÕˆ ¸E–QÖ/­î•åÎWâN“ü~%ôu¥è„g³…„‹æ Ä2·üDœä:z^/è.ˆþŽ ÝŒçÚ'1È­r¢¼@úb£åEp*éÜBö½Ÿƒp£Ñ|mðÖì¤ ,7Ož9©t‡qHc.å>”\°÷éF»P Cì‘pS§Â^õ¨Ñ9-FZªVÄi0WL oùl2‰‰Ö çvªX ­¤Õ• ÉÖpæ}@ùØV•Î4›^ÍÀ7´+Èl:—Ûýô÷„8tã|þðóÖW7ʲ¯˜üb.‘ëÇ©!òŸ .1Ü´­/E‡^PÓ_Û¶a³úîÀYe;us™Ï’Á W‰&½ñ$†KžÍ²½ß-q³`V×—T'‰|ØúpâæÙ¼Aþ<…(7å0ÐÜëË ÙrÓuOòüC«S˜£¨Ä£°äG?Œ^¾ä+kòFV«ÙÛnP}ˆfŒÛÕü—¢®mâ¯ÚÕô_¡"´§¿õ¡/¶NÿmÂk‰½FüoˆØ×5~…c´¾®UÑkù ä½³æeO öèÛsk!¾V§Ú& .{6äLŠ3+¾Ã=«Ç`}osÿ·YAs‚Obc¹¬ý¥µFP4x±u³iþ©îø.Ž|œfH݉QI8Uu™ñ1 a“ ¼HÙÕöp²ÑKqâïÑx WÃùC£Å©|[žV£jµR‰ºmÊä^•ö®Êv”oŸµ¥’¿e StS׆kœ(ÔHr1o¡^“š÷aà$ÈÙôìÒèýE@ZgM©f58ŽO‚©f…Þ®¸¿1·ŠÇߪ WƒãøI%TçÒUϪ´ná”èW d«lˆt·ëÉšiðdæ©FÙS“5Ó–ôŠçZëŠÏ(ó_°T3 6 d޶\íP)ÚXÙØÿ‡;QY8æÓWg£ñ­` õ¬jºZ7-Èæ!×-.†¤ŽÌg@Û­¡“õtóÈÆä v:?s¤Œ6°73!kYÍÖ,ßr´YÁ¨ôß­ö‚ÀNã=£ƒ W…9é•3^ãÂ<±ÀÆ\#ÇÀôxáT+Œ¢Xóc­É4’·7#ãíy1 3?Õª´‡¾EÏè`jøL2¤©Û>½„‰sžÑg/Åû’íÛŒub)-Ô [œcBd¨Jð¨¬Uï$µ ÒÄùÆüæ,‰ däüÜ i¤è~Œùã<¤k#ÿR)¢‚4‰—âr#¨ÍÃEõ¦ÈÄdrþ€L•ÅÒ›Ýj@O*ÀIq k 4·¢é;—îd¡´ø85§T[å/çX¥ùbfuÍ(¥O:Kc{ƒy-ºuÛƒó½¯M ®Ò¼80ßršdE=w3õ ]Òi8ZüÛÈJ37æ_>z)ÞnÄ ¿éf•Å¡âæ«'dõ诖%A¬Ä|ÝUÅ¡¢%Zõ½.JÆ­ßgE9¤ÉsÅø^˜ >ñ÷…”6KI?w½<»¨“ÎÖ—œ-®‰›.•Ñ|®?>ƒ iùñ™õK’Í\ÁVò¹P8°AmQ Ü(—‚A›ìÝåo€6~.»qÙGìu1[¼Þ¶ô%ð:/YëÅ6êU‡Vÿ>Œ_ËωÄg‡uçòwªP ‚¿ù¥?Sýø§´@" \ß–¾Îþ:‰rnËô´U{"g% Æd6ôR²ÿÞïE´ endstream endobj 669 0 obj << /Length 3512 /Filter /FlateDecode >> stream xÚÝ]sÛ6òÝ¿B/ÒsM HöÍMœŒ;mÚ&ºÎݤ¹–)‹S‰ä‰dœÔ“ÿ~»X€(ÊŽ'o÷`‹\‹ýþ,nÁâÕÙ÷«³‹—œ/R?•¡\¬6‹8\Ä"ñEÊ«|ñÎûí\D^Ñ·Ÿ/Ã8ñ^Ôë~_TÝù2ò²®¬«gS슬-è…ûÒÏ߯~8»Zý÷ŒÁVÁ‚jáÇA¼XïÏÞ½9ÀX>O“Åšµ_™Àïnñöì׳À!3˜É?à1‘y¹kkØ<^Û7M}€çÈëŠaÜË ®ëý>«ò–À^²>g‘·ÍªÛsXTÐØæ\^]uþùRHá­¶®1 w/¥°H £Àgi +Š~g\lιBr_eûâó}‡û»Ï´zÂ/£Ð,v)j‰Ìn;¡Mƒ‹sy;+õä;Aà•]WTz¤ÒókÜ~±äaè'"],óÓ(¢‘P`™‡XV¸É>C>>ÑËMA¿}[lú=—úÍè§ý´¿©ÍÁQ¶m ü¨—Í¡ÞÓñëžtvPÆ¥&i.ÑÂBéþ­?'õ4öc³R':>ßßÎ \¦>–µÛºßå´os¨ó~]8à4ïkÙIéÇ!se÷ïsD^ÝÆ’¡¼Er_Ð7!¼¼p^•©Âô¶èh:I!åßê AôPh€ïÊn;'ÎüXD¶dåý?‡-1Jýh4ãg3˜…Ÿ†ìïò1¼ÜcDk¸?FÏ"_òø<‚?ö“ˆ›ehÄ`¯ÑúýMqhIs"ŒüTpWs¢€|~›º¬º–”ÀÜØOùS0í]uæ-RG# DÆNO¸é»BOÑ‘!Àqòü;¤Øèö@SɵÁ®Àøš]1§ŒÂ`ȹ-®²Ëvåú¾­÷z'ʇD˜rˆ#ª ˆ½}Öù`~bom°—Ý zý8{^õÇŽÉûf;‡Jø"°)es²Iü0q ÂAnÉ_µY å$>$ª(eᑨ¢àQų¢ºÙÌ¡—‚™Í!?‘z y$ŽØú*/´veUŽ‘8žì!6>ÊP‡? -,â®c\vªñމ ÞÖ:Â*/[ïú|NJ ÄÏÅ Öˆò"£eôƒì5¥~¹³à?{øg½Íß>+‰Í°Ã@®°£…¢àdŠÛiÊÁ‚fŠà`9r*©$ö#NCH2ÔTàìÍ®î0Fð#¼*¢„I¢®B¼ÿÚ¡H¾Åª¬%H_•ë:/h¢]ýèh§¥@G!˜™QÅ$Fu‚¦X—ÙNO¦uÈÖPËËC±îv³>ˈ"9ónL‰€ËêF½Q¾ƒÕªPjùW“µ¸AGódhêÉTÞ€C쳆Ʋ¦ ¦ŠPäT&Þõ†¦|R!TˆÃ­,`Ü Ö0ž×*B¼ª5h ƒ™Ê2tF¼rö#ðX,Á…vUótSSPŸˆË.Xæ‰ 4˜K™V$KCGù- ª’Ç ¤äþËv½MÀÚÇ3zýåS·5Cä¾Í¡€Ê`¡w§˜V˜ïFx©÷sËNéj‡Z'© Ò˜pv$;~_Yµ%ÅŽ©ô¨<â»bŒû ÿ]«½;²5µkŒoîï¡¡¢>þfƳ¹ô“1«ò8ÁÊ”Þé-»mÖ™' 2Œáóœô¾#.*åäÔ:÷L?f+¥òdJ/YÕxT• ¿y]š¾•Y}(ºž¤¨':HˆËDúQ˜¸¢T'º¦B‚éab !Ó›Âx šüœRØ"¨õï˜ `e¯[{-®cUÁŸNÛ0êŸð!¤ütÈ›¾Z›ø2ï¥RÙÁæÈ*­ ÐO2|L‹È-²L(„ÊzÖ~ÀØÄHÔbVÉ*ÈB„®ü³/æÂ}•´˜+…¡"´Í5Þóžb-X1ˆF3®"´‚¯„³ª3cÊ åLk °;ùŒ£LeLE5LÍò¼Ô¦/Y†4MD£èUÞXÕï›!ŠZ´j^®+“\}Lj6³‰Nívª…×¼ø=à¢R?2ÝgdzÍÝN…æ;2ÎÈêqqŠ%0]ˆ©‡Á›¨]Î,,ôÅ´FbIኡ8¹zýÛõ›Ÿ_ÏÅ£ÄOÂÁž¨Ã&Ó7–±íª[¿¨>”cÑ®Õ?¨¼\w„Xø-ÈÍqõ^wéL³¯Í5»Ùi1qÎ"mgÑܽӓc·‘‹ø †ogÐÙöýÏ·Wof@}žŽ2z ÉûyÇáYg £ã*q´[²;p€@œrƒ ¢ÀéÚ)˜ÖÁí9¡Žû81¡¥¶džÂ'ØÐ‹ËÕFËw›}÷þDÈ”Prƒ¤¬lÑ¢·%Ä>¸…„ /Ï: œ‚¨©ÿpb‰ ­¢ßu@ñ÷úíÏ´plrñt +՘ũç·4-Óëê=£¾MPÕ­èÜ(VPŽ9VûRóëhéÊ}áãƒ)fƒo³ g4øÓ)¨H‹”öH¡<ð6‰ ü ]]ÿô¸FŸ ÂÕh(¥ ¹ÑQi,• .w»Ó±¬Ç1[­¸œ»$µ"àX­< H­j¾Þ_µ ð>ª¡Ç² £V\sZ­Äôiµª‡‡T au<žxºfÁËS>ñUñ4_½DÍâì»gT6ÙᤖS êI-‹1±Ú9$²Èè´Ó75–ðt[R§Ó³9Ž¥U6!¼ß:Ú¯ ¢ñµ„½£Sc©ËCLûÃB;§gÚòt·G¦cÖl9z(àLN(à7F pœXB¸.Fõ¡}†½0GyRùBSG}¶´‚b“£:Y…• ‚-‘kô¥2ƒ~ßû  }{žþ³5!?ÎHsr¤rGl a >e¦š©míjg_dÕ¤xÑ!]Üèji°÷üæFO7Ð$°®òì<µ’?€¦nL~&Kð¢4úÒüýq®Œ€qö¥ÐÇðïD }Á™s´cy>—xå:~ôÇyýãÕëK ë'|K³±$Zb¥!¦.—‡‡ém v†æâßÐæwÅpÙ#†Ë¡ˆàa<²1ÓñŒŸ.táœ+#…aª‡ù\ï¤v‰ìž9Ô=³òyÍÞL7¯Îø ­º^ÒxÑ®³Æœaê8OWoŸ£Q_þ2Ê“Œµ6^`¢¹ÝVGöz€¹ 3!ÜÎtÝù°'µ>¶#|Iý&Ÿ`ß_¾ýÓÏgÑ2¢djQl¤9-âbYL¥­*€&îstW”\ñÄhúCS¤iÀ¹FÎÁ‰B–u‰„å`ÀÞÑåÿ‡)ÄOiß>׌|µ G†f9å/4]éU¹¹Ç…è“LoI.+»˜Ü~—s×NêÛytídBÓý\ídõXhnÕcW}B~q+ôÝ×öR/ýú¯¯NϾ– °§Ñ–4\ú’ñ¯•ÇcëBÁK¤þ0§Áìn£„¾jx袒ùRžèSŸÁ$ð"Éñ‹K˜v€#à›WôE(Ùy¨ŽÖ8@ιŸÈá&z6wƒ'o´x·Œ‚Àû©ÈZL.à—Ø‡´“”îpÁ;°^{à‹Ò\V­ <ã £ý9`ú– ¥¹ ªº…_û`,uç pu¾¿ãñPî.Ìè§R–ѳj|á7ǼÐY°Þ© 6fBŸ‘Vú«…Õ4Úˆú¦­w½êŽ`qnó7—½\A$&Ük¶ã–åZ±Âh_•’~€9c) رõþ}#Š©`¯ÇY°7aZž€žM§5 Ï#vY§ëÝãíì<Ž˜TLÇ«Té‘˜È ;(®`¥ù2'‹¼óÑ×ÓÖaÖp`>> stream xÚ­ksܶñ»~Å}Éô4•`à3ßìØNœ‰[7Vív’t†:B:&<òJò,+¿¾»Øø;qxì.ûÂ.$7·¹ùöìÙÕÙ“—Zo Q¤*Ý\Ýltš %ãMç".ôæªÚü´}w'[s~?¿TY¾}ÞíNÓŽç—ɶ뮽 þMcÊÁÐ-R¡Î¹úþìÅÕÙÏ"À'7Ñ&S:™Ì6»ÃÙO¿ÈMýßo¤ÐE¾¹³³›8ÍáÛlÞžýãL2­þ+" U •j\•F›tþ8í.ŠD‘$ ·‡è#)¤Îhg‘ˆEj©üÿÑl~ºL¤Ü~Ó5]O{÷æ`P9ã²Ü\ªÖ'DÅ˾;œ_ê4Û~8×Àé~¦bGªØ«‹t{WW·ç †ÇÆÊÞЪ¢6÷žÆîDz+›§ßÓœÓP··ÔòhêŽH澃ç—ižl¯ö5c Ø Ô•m‡£ÙÕ?K;|u»‚z(¡ 6»$ÖÓ.+/6*™ï'ÛÁŒ#P8 :‰¶ïÏ£d;ß0αÆÅ·51ª¥Ÿ56ì†xr̓]_™>°,™–ͦ¸U%MŽErÛ—ÇýšjK§^1ŒÊÜà@yjFO Áš»ÒâÛkCßK±£æ L Ü{€n%ô;3PgU—MwË :þ(<¾Lšµ÷ê¼ÛæåÙÖNc!Õ[ü +Cã¸íœÏµºpÌÍQ‚ì¦@סlO“˜aÝË ÿðK붪?ÔÌeîœìØjòî4àá¨8¹2È›¶FKÃküÖ¡í·~ƒ•"-.†kÆX²Ï6`k# ‹f\j-òTO¦2û2¦òéGËT°”-X„¾ÞÑL÷çÛMR>©¶wVõε´bV¨p`Àá\öôÐ]+xðƒ¬ 4nðx:Ò°œ£=ç’È…SH£ü%øÝ`Üìö7K¶h-¢lûò\9LÌ LÙVe_yò +äΪŠEŽÛ2s¤@wq§ÍÉÌ6°1ÃÞjÅҔ·‘)ióCéKµˆs'P_½;ÏÑòo¡k¶Yÿ‚Ø~–‰Œ!„צ!R 7B6ÀAOl€ U9Z7ßjZlK&¾<ûîÈ|áÉóeÒaO¾¬¹°hè¨gÜ—£k1¼º™÷ÌbËÖËâƒX3sÓÌÕŠÐh…·MªÙ¡wH’|û”FVÒ2kD±ngͼvûEøÃÍ%QÄÙ5÷Û] ‘”¯ Ì™ƒDz5Í‚’”)IÖ”Œ khM½«Gí{#}è6€%}V„ $h½}Û9;IÀÑ앇cã|{|¹tÝYˆpk’|ðÑÙo=NŒõ»®©VëÝɼö‘³Y+"×;Cìf,ë&臿¹$¿G)ÇžÓYœL²« ©¤ÐØW҇„|G3¬SÌŽã>ÆØÑoÚÉhZ 51èJ2‘Bž¸‚B¢¡)VÁï¡&%}@ÇCŸc£{–¹}νI$=©mW®a«-W‹\O¦+`´]EnÆPß¶*q/–Ò¨ºú>8)ì › «nwÍ©2_‡¼zž Åž<¡nBfU ™'nZÏ Øv `IyA\Žj;Þá9uôc1ÿØ”;Ãì†.±Ì—\7âÖ†KñV ¡a¾'BÊd¢]›GhOâ9íî† ßÉFhp.ó»Áà¯7þÍö’ù½ØHÔ‘Ù‘ÒæRªÇhW©)D3Žø7‹R-(§È¾5½Ã œI€t\܌崎S‘'Ñ’Ó×Ï ô%ôéDèÜÇ|_…d#J„*¼Ë…`!$e€8›À˜GÀDg]WžÕ¹h4̆/°°øXÆå9ÅvëNŠíæ~_?y‚Ž~ÛMË7¨îtÀIàØ-µMÝšãéz ßRf…̳¢ Ÿ‡=5n}íx#öã¡Yći2Áƒ`®ðfaˆg¦Q†¥)¤>Öé³%_Í‚¥ mf€å¹©šGéºXØ;M—jü6õo…ð%™HâøS‡+sOû(ø³3Ç‘ñð·ªÐ(Š“AÖ-væ¥ÆÂ¼¶mb‡~•LåŸDÈ-ï‡T=A$ÔÇHþGiéKðš=AT(P•‚Ìú–—š¿‚! ¦`¼UôY‘i>É÷¤f s=$Ï´¾qŠ¿X¯ÚrïÚ.Xe—yV-¼ 5% ¼5++¸Ã¯³`m¥·Ðñ’q_½{6ÄqæÅ³=6fioAÑܽÂõ¾}ʇì%åÀ›£Ž¾½9öfà„\ïÆFJ¬q¼lN7,{/N$K˜”HJÉÑG¿‘Å!OExLSu”BPÎw ^ìÃ{7‰¹Ðëƒë³±+ܼlü¥Á»öÃŽ8ŸèIÿÞ=Gÿz$k  7ñ„?¤Î Üqîã•hMw±š·ÑµL?†(v_ûG6DA# ”}¹I¬£™Ä ¤´òYÆçK!‹b)sîJ÷§]‚Nâ/îô :«#Á~\ ÑÏØCƒ|'"I}TŽ,)\‹¬5q „®××  µÐÏV1±ˆäJ»ÙLýV¹t†N!,10©Ðiê0? JS  @Þœ¬ýIUcô(Æ"©öù:ÌŒ)˜] \3ÁvºÖ^!þ'x‘NQô³à6³8ùÄ>?S^•{~î‚»‹"jQÂn­åíLzG\«Óõ6•ë&A§"dU€„ šd"Áe½€¯öþ_Þ)6e$„†Èy,Tâ}Š+¤ˆ<3öÝ©'6@ÐRt÷=H‘M¦ðU4Èí¤1Ð@u¤> ú×hÐÖ(_Dº0Ȧ{{g¶·MÃvUi”úŽÒ‡‡ &úÖÕ9„wtCD©“b™cz:æÕŸü¡nOVübŠÐtœÛ#IŠ–L‹¢ð*t Jv{Å~úúÉ›×!8º™ðBñ6'› f×YÕˆ3K\E¸¬Üš†/ñz²ÁÎb\ŸBX÷}ÓÑ:̉¦6z²·§v2v°ŠØ—-󸨱˜å`;ìÞ=ã"˜±·sƒšk0 lú•V|ϯøz–€° ¹´š¼‹߇™šNÆlbê§Eà;ÓÀ‹Œ|ݵAb—¤~>ËÁû$#e.¦àÿcÐÊxiŒî§,„8ÑtñGaÑļ™QO¤õÖ¨KÐ>/÷AƒOMŒŽ Ê’t§@ThNúÜÓ0 wQPû‘ü€èS ìßa§=]2=zÑE0&“1äˆøvÈ€Æ'1žµ„Ònl~…ûfÁ¾RUx«ÂæƒÜ"®]¥qŽKÊóÕÀvYã3pX›€aÊVa­uÛ6‡‹a2_ÿñbsƺ̀Íò·—/Pt“«mù—©¶]í{|©aøaFÂlSÖ˜@îK?ǽÐï#\² >ÿL%îýžŠŶ꭪ßq¡ßÀ§øìGföдÎïy0~}ª›j å§#õ•ôÑÏ©ûg©äÊ` ­Òç„ÍÐÄyß΢·ó)Tðá rwhØàË%ÅüñE0‘}(©„®-Áø¥d²v•ºloNeF[¼èÐð`nñQ„8vukŸ;`¾ÛJ'æz9Ee×j‘¿‚iUgxAÛLÃ`\Ê|žWw¥Æ\Ï„!þneßþÀ"€ 燈6¨Zîœ#•ëÓHå¡Þ´Ý4•»Ÿ*L.™–ËJõ8˜æk ‚_¹ eEüóé3%Š/º¶¾å+^tÉkþúÖ±ïªÓŽ!P g7ºg¤ WóªÇCydœ<Ú—Ä07¬ïñ4ŠÐ¹ç.• U­èb™ú¸.§çpvvˆ¨‚õ£ù±Ë“·MMeàäévÏyu²ÉŽöl ºpEóõšÊÀN*g3ÐiÚòº¡r8Ïgx±s^>Ê–EöÜÕÕ |ÒC=TH_Ó£îüMM€Ã?0Z|#DhéÇÞŠ(2?¢ÏòÅEf+»`mÆ{žE¼N@Õû¦D ú›-Jƽ *i×ú÷-ÓS#sÛp“¼E25É”Ló´ ì»é­ÐÎÁ‚xIƒ¤º—KÔHý -)»ÍÇÔ¨j§ç;{ØJóaØÛ,ý¢+lªÈS¬XB¦ÿˆg<'§UÀüš+ŽÇõÔ‡†e×뾤°:Ó‰V¿t2ËLéäˆ%rŽÒÓÁ±v}U·”îñGž>ŒSÖŽ+{ü¸(Z>èÊ•%÷wGi^€õ^­Ä ÷Î2F“Mf«ä|ä$S¬2–+¼ÌK)ˆ±ÅÏ®©+˜°·áµ%‚:@²]Zw°h o!ýy±®°¢© 0Í>EÃÔšMÛd¿‹:m õáû$•œøuÃs\)ƒN Yu¥E®ÒÁ‰‹8è̽DÄ™Ãóc3ˆ ĆÖ*á´Ž–ùéÞyÌ–X²¹sÅ»7ºõ낟 % ¡õ¶#SŒè'­s øb:äÀ$vÍÀI÷½¯Í1ô¾l‡c‰ïþî]L:÷.â™ÍpäóLjt[›;ŒªÒ¢ÜâO[Îô.GmèM ´þ‚€yÁÓæ¶s… ýúÈ2ä>nàÞ=CóîLÁ«q5UyÈš-V^ó^JAÔÈlå.¦˜cö+H;2®«½ Çjôæ°Àx¤‘ÒW£ Ž9°¯\oFÝ»èöå‘b°‚ D!mˆÇ}‹%hÕÀw“ã-ø) L‰´ø¡‹ßW¤–ð…[È ¿b*øýaîÜi!ýÒœY]Þ´„ÄûúWezdEo¤ðIg³;5”–µ¯FêŸy¿´ 2vÛ0¹ (_µ¼¤ªœ‹Á…É@Cý·†± ƒöÙx¼°P8ÌkÈg ®¾;2ßf¤Œ½Aj- ¹§Ÿs>¬DÙÅBn"÷ºU)æ>4¦2"ý&YS¤2 Ü­uÛ=UÈ”âxVgS˜t¶÷ ¶¡P ÚÏÞ¾Ào×öç+FÈr‡(v»SO   §{hKÂÕŒÑʽiDÚ!8d²À´„Ü$8±…ħ¿ZÊÐOÏŸ’øÒ\VXªsL \XÀÅÆ˜b%f¥îÁtŒÑJ ôDz¬±cG’8.bfpcŽüzœ€1q5Â4¡0qÖ)¡OÓsT€À:—U 0ËWù‚Áå´u7rWjc ®|xá üþ<“nÖ±±×ˆŸñaeî4žz3¯Yâͨ¢Át®.ÐK¼ÀÖLqp\iªÆÕ=g6¸Jè8:X~_t‡ÄaT»Nmk`߃»&O1±ô²†N‘„q™YÿH •~öÿ<ü+›Ÿó©¬çÁÕÆ²¸?Ô-xû[:É8U"N}ò«XSö?lJn endstream endobj 691 0 obj << /Length 2616 /Filter /FlateDecode >> stream xÚ•M—œ6ò>¿¢÷F¿7ƒùnúèÄÙ<ç°ï%ž$ëµs A3ÔAñø×§¾‚ÁÞÍëRIª*•껃Ãã!8|óÍýÍ«Æñá쟳(;Ü?NÑá”ä~rŽ÷Õáƒ÷Ë1I=5™ÏÇ»è”{ot9uªw©WŒîoþ“jUaOb?ó£ão÷?Ü|wóÇM¤‚CȨÿœewóá·àPü‡CàÇçüðD»ºC’åðmïn~¼ Vl6ÃÀâ³y_#íüä][=ò¨1ü->q¬ÊQU<¿ãÀ{æñhýÙ(?5ý#2¯è[…—;Ÿ¼§º)aêÕkÄæªÊ'Œ9óš~ƒÕ”ªW±Ð}jªÇcÂþŒG güã]’$Ë =’d×Ä›?1ðE¡|A8waèŸÓ”¥0Öƒ,qÏX N¯ôÔW¼Ô6½2¼Äòç5K Z½Æ­8_^iÀhT}edHúÅ 2XàE±´aØÝ©QŒ¹ÜáÁthz_  n¹.®JвLaÐéaî!ïøâ‰éŽ`*Å2œZt‹Q&¾¦ùL£©Åji1 ž£­âÆP¦ý¼ßȉµÑâÞ©oF#ž1ÍBïíÈpÆ•yåÄ7 º[ï‡ð«6¦¹´‚UO]Û¢|Áœ±ìà믮pòJpúC±'H*~=0aRuø2÷Da«*ÔÓxöÙ7ä'RW¼ôž$0ù’Àd@W:hø˜ØæÅoR¨À *†R—šA÷YœÓ ²‚’l{õŒ,sRa–]oúÂçf^]Þ^øª§BϬÝ€u+ÊfË]B#Ã`™e (À.á‰ßv”… »XlOÍÈ.ŸÌðÑ9½p§«æáyF4Ó|'ì„6”ðDœ< ùD¾ÛkD6€> ‡æoÁ|ûÂI?u \Éd,™×ìÇÖÇâØ –H™Œz˜Z=0löƒ“øæXQÏ="¶êìâÁc–`lƒ5Ò¥\A–ƒœlp8D„ýì—¤Îg›úß kË\#L,Buy^pØq¸ G»£G„D¹J¡SçSÊš‡®Ö®­4r¬èm¬4f‘¼_,ÚªªÃãr•=!IKò¡åÞœÛâÚ{žr’sn…G$k™ÞÏ/3‹‹õ¶^PT¿O|S«>“y»O;#°™þžB’ïN$ÄÁru,²x à1 bï[N®aÉÔzjeÛE`cñ_ŒvjFLÙù> Á‘F•¦ÊFœ¶Ãݳœ×ü½ê†ô=NBxlÉôêéK~„P·ÀÚ ‹n$Ƨ€¬ƒŸ"‰×13‚Z bR#%R":ÐÑî—¼@¤À¡D&±J 6ÛlIp ?!üv‹PÌ@®¹#>½¥Ø“͵•ƒëÇ$ócR‘p€Ø‘ˆ½£˜ }i2?‰‡=tÂç$²Y8Vë>—Ä|Àj‹ën,ý.Š€:§J"®p'¨Þò­Pƒ /ñkÀ÷ò;x bv¤üG‘¯•VèVÖRrÖ·æuˆƒÚ’û¶ ÖQ ¥üfÖœÆXŒ_¦­222àF„Ìâovà‰8¢äËž‘*Õ µÇ!¹ TꪨP…±¶°•k¼KÎgï­,üAŠø]çšå…ðE¦ØÁãÌ‘¡ ´Ä¹ÄhÝXÛåA€ŽxqÚÈ7|A€ãl¦ø]¹iTLÌæ\îB ÷‰'Ô°ÝÔÙ@!^œôonó~e‡À²›BYx`áð§ï¹i&~œd¶ƒ€¯8÷ÏfB?]ãýÛøîÒÀv ,ì R>«ô1ÄâË%±iO?ð“ Cïá<ßôÒ”Rsµ‚"Ri ¤¨Øáy­då™4VÐÙ–ÏÜt7 ÈðV»9˜ÁÀº!ÿ|Ý2ÂÊ1c*u×q섉eñg´Ä¾ùÄuÅÜñ‹òØOOqN-½(Èü4=%س óˆÛ¯Þváá¾ùq¿¹fg?‰Vͽô¼¾Üy# ³¤+¹g®m3 ¨g—eŸãräöú ˜Îe"ŒGKtÔW½³J<1Å ×Ķ…C§´ÐÀ5nN ‰{®Ñˆ}äEƒñ §ì“™,›n;d¯í‡WÌ! ‡³ÈG¡á 2( {¹J±wXƒáÞ¡¯6ºä¶yðS{ÏP{ÄÆ¥I€Ò«Á4ŠÏÎ¥›¯º ˆMóVnIÀºcžYœó.²·"¾SŽÆZÔ&µ Ú…l’„´Ó“Q;Á£§x©iµ¨ó –õNb¨Ý"&[j¨ònwLñ©¡’FôxsäLoiý"j¡§ÈAB-ÝÛŽï–‰'î¡ÉÉ—S46å¶µ¿°æVó@¨Í §ý‚Yµ³éD61Š"ë~xX¯#©ŠXð‡eÀKÎ>·v•õ‹êxvQ¥T% ½M¦gæÒ‰ULîäM¼ˆº©û ÷­z ¥¤Þl.ÖˆüêN詪¿ƒ²&˜¹–¸àÁªå0ïßìš‹ÜAýqbR³ŸÝÁaËÙùÔ^† åÖ`;hš?mgÊ"×SžØÉ wİ–4êÖ`óMaÍve6Á@tp”ºk›ÙЗnŽÕ‚iPÿK'%é vVYÛ&8T‘HzBûlV_’Ó˜ÍN=9%Úˆs2NÝ“OÜ!'&jIœÜ7’Œ¬°}ª%Oûêjþ 76f·‡Z3\îçn±T¥‰S¬ ßäEÁŸl ~‘†¬NÑŸ D›>kêÎPƒÃQ9êA¬Î°ƒ ½Ñ/¨RûI¶H䌥s-dÄ‘ Ý‹›mmÿVLHßþïwÿôL"? mþÐsÄ€6R8GÐoëâzD)Ûr{©Y‚©ü8èjbƒÛ0ú endstream endobj 687 0 obj << /Type /XObject /Subtype /Image /Width 961 /Height 700 /BitsPerComponent 8 /ColorSpace /DeviceRGB /SMask 693 0 R /Length 97907 /Filter /FlateDecode >> stream xÚìXIÇíÞÙ±gogï½ örv=*н¡gE° ¬Ø;Ÿ½WìœÅ¨ ‚ŠÒ‘–ÞÊ÷& 1¤lv7›`ÞçÿäÙl63»³ïÌüvöÝÙ¬¬‚iEŒ™æ6šÉBFµ¨QQä÷zA-ATª…¼Ö=Z< jiéú‰8ªÞbD®‹ü Õ#„Ш¡“EE£óŽjÑc¡ëb jó¡‘ë"C§ä¨“e Þ óŽjÑÃÁÙC†\Ëz ë"C§•P£ü«¡‰\ßm"E0CEêT>ªøM¡jÐKãÔÜ•ÈE´9vƒÈ¯zK;ÿöD:¯®Åhoókž™Z×O‹›õ\S¨AæàR€ `×#üQh ÷ñÿBáW‹ýÅh‚F?äùuˆA™~ö-Yk(-µ†ÚŽåG¿2ÔVò1£[lçQƒ\d ¬kÔ  9üM÷'SüÍ”Ý@þ†PÁt„&õÈ ~$ÞZšþÓ[lâ­:ª!³p½ î±ÔœœTFo­1G-£ ¡é}ÀÓª\ ¡)<«BüÞºõ7Èȵò¡‰»‘Ò³f£Ñå6T r®uß1Ö\‚ƒ*Äs$Þé]ct`‡x ²@>™OÚ¨‡¬D†.‰$£àÀ¤NɦP°k Y„6z~éBh²ãoh‰ì!jÍÑõS®•¤E$ÕœšÞ4ü …ÕNެP!4YüÀßZˆ…¸·gx–ÇL ZS€ÿÆ µìÖÚ«€Ñ˜d ÕДZ£þµx½Í)„6ŵ jƒŒº~Sª-ím…@o ù½5C¨`J ñÈ"ʨ@W "^‹ô™Þbg¡P¨‚‚ÐD†…ɆÉÑXk¨U mÔ«i¿ðÌ¿U†ZwLù®±™\‹ö™rC ²™º~ó!´YýìÕ=å&.„F€º !´Ñƒ¢¥ÅF•(ŸÖ ÊñDÆÌÊ9fEhº†³¨•vþõ.j¢=ó/B£!´…šl“žElRJ¡³L›’Â}Ã>`z,´ùšZô éõ®Ð"4q¯#˜Z„ð[„Ì× ÓèYfˆ°EM#B›5š.„6¥E5= d… ¡‹Ÿ‘£©ÈÆ ™ƒL¹oHá qä“ÖI8F/ñˆ 2|æìÐ7ÁÊ,€Ðdj#X÷ 6ù×ÁˆŸn"ÜKÜ¯ÈæeÖ™,¤¡Ù¬M\J“™æ,Bi. BSnQ)b€B…ÐYôÍ M0µ| …¦…,|MœiM¹ánJ­1B[¦Ö-´|äcÔ®˜èEèŒ y2äNÈ!C¿È¡Þr9dÈG!C†*/2dÈ‘!—C† y2d¨ò"C†2ärÈG!C† U^dÛ{‘#Cm&2äQÈ!Cõ2äºÈÐU2ÔŽ!C† Õ_dÈë"C.‡ º(C† u È!×E†\2äQÈ¡«`TÈPïƒ r9dÈ£!C†j12té‡ j*‘!B† Øâû‘?…"aff|…ÏŒŒtSäâââé¹ÉÄD †2Í¢ ÒÊ4¢û÷ï÷ïßÏèfy§<³,‚Ê¢¬‚jF\&“–+WN"kÿD¬ÀóÔ2ò·(4 fhÇÌÑÞΜ9óäɨß)týl¼‰ÅBž€/‘HÙZÌ#r)œ™D qÄB¶‰ºyý²]/[ÓÓ)Äâ”(—$ÔÅ¥GbMñt%5.¾Ið%ДŒˆ¤˜„†´Î}íêÕ+ ü*’kI†#1A)ä2’ê—"—Ò³%#,¹RéxÊø%ž2´DêŠè•ÎÕ„IîÌÈ‘Ãõ¿…€¢ó¤-…ÓyˆÍéêÈg‡U¡B…BF7<#~ÎCÐÆšR;|ö´Ï?ãǦ(ZЪø„žA£Ð–4eäŒÑ­Ûüråþö9é -°…üìõBKIÔÖð¿wÙØ,Þ¸á†ÖˆÎá¹(º—mO¿G÷‰õÅVBÑfŽ&:"MK+Ì6M"Íó•‘ŸiJßÁæÅ–Í›—/ÿ—&r¦Ïf|.Xü,ÈGü š4q©ÿ/$Cд …Uñ ;ƒÚJÚÝíQõêÞóçÝãó²k Wµ ä³Ùii]ºÜ­UëÆÍ?ôþw÷.¯éÓ|γ§÷W._ø‚ÃN5¤a«V,ö{x‹ÍJ1k½Ãfž·|}§šoDc»Md¥ÑpŠÏšŸ¢Å"^ùòåÒ˜)„{dsQ´™‡£)€4ÑAiÒ,MQÓ29M³³â1³–Fuåò%êäLqØ™,<›uð¹@ò3µ§y¦ó3¨K—Î/_<-CÐ:ЂcM|¢½3!‚´v[CdgB[ BŸ<V«–﨑<žòz'ÍÉ ä`ïØþ£~ý÷'|ðôÿ7äC`ݺuâ#wíð‰t%Ñ• [brk«V­Z_#"„bqnIŒKÿ’˜ Dú$ÖLJ¤+}ë I(Ê% 3°ÚPR"­­´6*R¹Š?û§ÜG/Ð’H[|CR5Jä¤?_â©%2.®Ž”ëÅBžMJR,¨ÄÕ–ˆD¿–qøKS$Ò.›4`k:Zà$âë{ÝÂ|¢µ3>B?ëîîªÞU+—-Z4<,”ÈÎ „¶„þÏ/©AƒÏ={Fp9,[ùÕ²%³iSVx^E€nâÞÝ[+—/üþžÁø‰¯äĘM×¾ € || U¿‹YM‹h˜Þ5º?ü#Î »aèï†ÿ¢lsÔËÙ ­VÙfS±ú«f"š?i­¤€Ð¹ÑøI…Ð9ËJlε¥ •µöAEg )Ç‘rFzÅryÎ möȪ,güó×è¥FX,Ñ7ß8qbúô馼fî×ë9ˆ½f™u›ÙKLLüùÇͦ6~NblÜPH ¾r‚IðEf¨\ž-…RR’Ê=6.3$±¦H ëŒkHhH„ÆÉ¥zG‰Ž'%ÆU­Z•`0 ±Ar££â&bSN(¨°Ï4Ñ"8øµQ¨×B ÝD0Íž=z¥%K‘⥻3nnk`7à–W¬XË›6m ¸3¡­¡¿}e7i"jÞ\’–öËáù<ζ­2€Ž«W$B^E˜ê8eùr÷µÿþü•’§©¨¨¯Zk@;¼6¼ xb(M]ÖåO:ÅYOœŠ‰À<þ–8¤m õ9šD­EÑ꯺œ¬Õº˜OÑzZ9kn©Ðº,­9­¡-8G‡*¨Ãy¦Ó¾}{¨Þ&YS\‡±è:<È…Lë‹÷ õA1,„¼hÜ%-ÔÌÑׇjž gÊR ÎfæÈ ë Þ 9þ™žø LÏŸý×½{7KÅoäñƒÿp–_¿z¦F‹  —Ь]»JÍË—/-Z´hhhZh%¢þ#$Õ¿_­ò ½G„ vvÃÎÎ>=<Öß„ÐV‚Ð{ëÖ¬ýû³M¢’ÆäGFf%'gˆ„ͧ uõ?Ÿv½znß¶!9)FS‘?›6mýUkýñ£{üŸýÇå0ŒÆBZÆv6:Ld`Ùè.á¯$…ÜzZkDZ—¢u‡ u[KëP´ZÆ_)æjŽ?kEtæg‹RtÛ6mÞ¼~ÿîBÒÑÑ´‚´Xšœ–‘ÅiÃ\M+Z[BrC´¬WkÖ¬Þ°a=}á͸Ølä,&5¨k<“˜üÙZæ¯Óó@÷ÉG§L* ü¬ {ø?{¤‰®®+¡7OX^þ¯‹’97ºã£…n"šÔLŸÐ~D˜zõê »Ñ¯Ÿ)XB×ÍRK¦¼ %ä(žYщ<¡€ljýÆü–ÊM€5"Ksc )·OHˆ©P¡¼§Çš¸è¯‰ QšŠú®µtpÿŽ ÀWªðu"äPµZoÈ„¡?ârä%B "´ÞáhÃül¢ !´Öˆ4~P‡Hãó³2Z3Z¨Š…†ON,4_ Í' ý3…Q¶lÙd&›†XèìõxqÎDb¡Yù;Z¨!c¡…RED uEc,´n¸ªži5å„¶wp¸é뛄¬È+&-ýAÎ*& M<}ÐÆc¡U 5E: ZôÄBÞØ@ ´ð—ĘU"½ŒI˜K”c¡W¯Z±qÃ:=!Ðb¡µT®Ô uÖæg¼gsÌ Í‚+¯÷ïÞlÞ䪉kV¯€>¥—­’97¬w3†Ú‰¼yí¯õGH°hÑ¢Þ½!Â'¦Iÿý»l‰’Ÿû:À'ì qXBm=šôÞ?ÖÿGÊX~þšüérøåßïq8Ê!h›ƒÐ2© iÓ&sf;} Nˆûޝ˜È°CwýòYÞC¡IÅcàŒcã?h4²ÚlÍ6ˆÐBƒ­Òø­¡ApZoȇ&Bk´¡ Ž\’ðs-4b¡•Q‹9ã«zb¡ÙS1‰…~ùòe×®]¾}ˆh,41åϨ`º‰­(&ÙâïdQE/§+*Uª”Ædd’Ÿ9D_´ù¢PŒMB_ð³"[‡Í ¤ –ȳEfÌœdä³±øgN¨ åXè±cF]8Æäøg•D˜¸ÔÞnþXh%ZDGGlÚ¸V -æÎu†neÙÒÅÐBO"ï‚^ja‰zQ>1¡uwfÙÒEp,ë×¹ÂòêUÿÂ2|Ü„ÐGhCƒÉ¬wv¼Þñèû"+‰‘²ÁÃÊÇ+£S¿àüE-©˜;oÞÜ1£GÞñ½ó_¯]»ráçÏ8Õû+õ¤–—®4Óµ¶'˜ÁÔô%b¶Ex/úõU"bK4–5Wæ^«ˆáZq#Zë{ÆP°¥xÂmÿ%†dðV¬,·vîØ6þœœ¯º³Þ‘Á¾ROÇ*Ã$¢$C1†$15üCï#™©J7$¹ÈÀ¾>ºððÏ52†#…ñ jg\¿ÿP ÉÀ“Êó)?ggT¿(”oH¸AZ#üi°á’•Is(éQÛ¶m‚_ª–ÙÄ%Ö•a̳A ³XŒS>GuÑâÞÝëÑ' |Bï¼øºÈuîkÔ;°jå²¢E‹¾}Ndgàj‘­• ôÕOÿ¹öÏ΀°¼ó•Wÿsý÷¾ÞÍå(+T›#à©Y·oßìÚµËfO·ÐWÑQá†ôíËûƒûw|û&RÞÌbQChM %EÂZÔýÕè6zs1š—î^Þ%#“x¨ÛÃܱ¿XZk¥Q6 ‚?ˆž-uB;Ô+ó¤ÿ?ö>ÇswµJ,-´b–¦ŒÓƉšTÓÁÕ¤yÛd™g‡OýÏgâÄ ™f–ช³9^xÆT¾\93Ñ$xÎ'üŒ |2â[¸‰hAK"f:¢7ožií¶†ÈÎ „¶„¾ñùR£ýF]ó¢úŽê÷5JfǨž"dñyÊw|s¹xõ‹ÅL.W®¬ß£ûû¼·…~xùã“®Â?òÙÿöÍKc¦K<3I³)üËá“áæN§a”Ç\"пätCÙ÷ÅbÕ\©BžjRhe´@‰Çç«b¡ù\ÅXèú ¾ Á‚¦ Ÿ©Eb¡Å×/9é‘Î m’ˆÅBŸ¢ô„L J„'(Û¹óæymß.ÐÅ‹Sm8Ì׸„ú”+w=ÿ KÊúcŒsm£'5=)"$ƒs8 ³§”×›” ñÅÓ‰&>¥34e\µôF,ë uÆrÌŠúV«VMÜ †+gKøK".p{îF¤!\27qØ:Á‹çOLA Z¡o š¶Am=ýü‡_"µöÔêr¼,œ >’Æb< ,Žr²h–êÝßxŽÑ«WÏ7®½ x¶móºûw¯„}|ûý[ȈPPø§À§}÷yo zÃf3eRA>âg ­;þlhÀ™°ˆRt>i /{I*+•=`«ø57EÎÀ¦æ$c¡ÓÒÒlllT[RÆ…ÎÓpå $JáÊ4¼ ?z¹k×.T&s&7îLÎ"UÒ“QÏ–D[&¥+¨M"Å‘°gœs>IÉ){Ìü?¿{}úØIÜË3“™š—–Æø‰Òa ™B0Œ@Ú íîîºzÕ £Z†¥Í‰Ó"c“N[ªÍ\­ G´Ó¯q˜,âí›WíÚµÍk`›ìN”±9Oȹ Ã3¦¥.‹¼¶z*xþÿ@ZXŸ˜¾3¡­¡M—€Ç¨X±b|l„ræ Úå,Frizº–¡Clvå{6K<ðÚÕKħïÀÃi©%qÚ¼DM ªÍŠÖäßc Š›>…aíßç=k–3¨L ˜écf `3ᇭ—œ-Ϙþþ{赫 äcƒE ZXŸ˜²3¡ Bƒ† |úÔq„¸Ö6m] Mà49–®V­Z\ìw£Ów˜™¥)á4ÔD_˜H˜«-O×ùFS§?v„'¦e1M.a™Í‚ÍÖMÎÖ1ìl0 ¹y³¦CƒLƒg6ê= ŒBçB§‰˜˜V²JI 6+1GIì4Pb¶˜?YÙJ`1”JS*>-”Àe'3Sã™)ñÌÔ8FjÜÖ-“'ýÃH‰MU+9”¢úT*I©”¤h¥AQɉQi©qLµRb©9J‰IÕ”2h¥°¿'E)•ŠLÆôóGòÏÈ$¥~`JTê{b¦ˆŸ xÐ7PB|DBè(û” úŒùŠ‹ W*ô>c£Õ ÅD}V+:ò“ZQ?0}E~W*êG(¦Èï Ј*ÁBÈ÷oÔŠøú^¥w o_0c _¿g+<è—¿„©øås`x¶Þ†zúüF©O ×Ÿ•zóù#èu¶B_>)õòSˆR• øøA©PLïUúð"Óûç ïý?¼Ãôü=(ØÓ»àg ÷AOß©øŒéícø |ô6[oÿ |“­·oüÞ¾Æôôæ•ß›WÔzýòá•^Õ«WÕZ‰„dVÕ«Wçô©ƒ¨òT÷°6k°¶k7 Q6#ªö$»mQI£ÙÉn‹²Û¥7~êÆ .u# šºq V5wJå4€ªÆPÕ*æ4’Ð`~PJÕ~¾÷ÇZÔœ6§½U k‡• ²ªeV6Ñ¡/aýï¿ÿòîù¯fšthØ?½SêMN›¯ì”ªG€®áKNO]Öw|Ázœnå[x®î냰þèû·÷ê ë³°þ ëË SÓèà°þ“²Ôì5{̘¨0U7šÝ¥ª;Y¬ÏÅú_èˆc"?cŠŽ„ŽéW_£”ê¿*aÝ7&èÙc¿$Ä*;úŸqßT‚…ˆ%|W*ÓÄ "Õü™” Q€%iJÅö`Ä‚f<›™­4ÐO¥r JÉTlÀªDL\v’JÉX"iÙ‰$(™JW@Y¿ˆ èKƒÇ0<ÃPËJlÃø @!´ŒBë™{¨„¨8Ùo8RÍN\·n‰¾!IÅ|Ã2z/žø€!ñABcÀGÿh#†ž»Õ$&ãÕ÷ºŠ ãÒxäßà,zfÀ›©€Ä´ ú-{ =³dàÙ•+WFª?2‹Ç«P¡BFF* k2ýSëÐðÒLão–$6 ‹±‰V¢"4jÔPß\+Df8Ç}.€\äñû&&Þ ÉðdìþˆD¨Blê{!µù„Ôü'º7Œ3UÎÛØ ½óBç%B‹,L滳P«VÍÏŸÞ¡;,(œÃ*B£Å¼¥.‹==7’z! ¹ˆóuˆë +´CD,f€l€G!ŒôÈ>d¿G÷íìzѰ!¦ï\ MŽÜ0=x#¯â7¬?øoN¹»wn èß…p ©A!tÁChÇ)÷zï@N^€@:³´­mÏGîR{¹¡¥pÚ¢–šƒ¨É¡µÉŒmÔM}ÿ7{z,[æB’iGeB¡Îfdfš±¹ð’³Z{vo_0‚g$„ÐyŽÐæ“ω##†³@FH:bë‘0—Ä&‰C§DzÅÕ’„Šxj ìòåË1Rõ‘ 7Ò‘ž^^@M:°!Ô#)5‰Èê×;&h죑#G\¼pŽ"$羌Š(yˆ^gËíRêÒ©#dªÁjûK"M‘n:Äz¤¯™¢·%$ÜÏŸ7g÷./Í5ZÍ»þ.õŒW¡ BGG~µ±±ð˜È½­ˆ¥éi¶ùAš6–zݼY3u¬>)™ŒÓf&jêP-”Q$4÷¸ÉfëÁãZµjEþøJä½x2êÒ Ìædfsc³ÅÈY”7ä¬Ö€ý|o_' ϨD,ÿ!4¨E‹æ/ü#÷FƒÒyÎÒ‡íwœ2)wk~œ6;Q›ªM¥kƒ˜-µ\$ ] LE9U½Z5¹ÉÅh'“æ¼ef:°9‘3‡r“Û°Aƒð°4쌄:Z‘3]ÁT$·©Wj-hiÑÂyÖ»‘u†":¦w‚û`4/½k¨¥F˘-Mã ­UìF[rmLêPT©é¬1ÌÒª_‰²ôÌÓ÷zï2æa!œ¦›¨Is5=hM`¥n:9œ(ýâˆø±\»zyÈÁ–ƒd#¨L/-ÓÆÌy…Íy­Á1ñÞ—“Z¶l? Á3’äB[?BSøõƵKvv¶æ JCèKB[LDhã,­ü£Æ ´QŠ6¼}mxhZÐD†¦Û¶móú¥?‘¨ij8M+QóMf’\M'Z›³ó‹V­Z±~;xL•ÍA˃¾jf¶06[9«:BC‚š5kŠÈ !´u 4!©¨ÌàJÍ_5†ŽÓRSâÊ•-›Æøiz^š‰ëf­™©)‡fôˆ m¿ÛDr×<ÝC6ºR«ˆíŒ>ö²Ô Y*ˆÍ~øWctÚøW }„.k®ù•~öSç¿Æ¨±…œ_u‚ê‡ÜÙiÉåÊ•ås†Ÿ‚7ÜízN_/QS¡ H Ÿ«‰É}ò M›VôŽBÓ‹ÐøÃË80o„6³Aðú‚êÎè—Ε©á0Ãm§ñG¡q¸Z°½b »ß?~ÌÉ“Gõv©’< jó@µ…ÐÚHÀ¶ I%Ÿ“Çþ?ŽpL²ÏšÉ>f0ÓÊÌ›…F_{÷îõð/‚F$„Ð;“R±bŸ˜ˆü‹ÐøÛ›¡Mš6ù,ëŸðD=4æAöuŠ9†yh¾“±aÃCƒ‰ô¶45 ¨6'W[­)>#™_ð˜È“wóçÏÙ±c[^–6nc*-‹‰<âgf¶6[ŽœÕª]»Vä÷0H¡ C,4hèA§O·ÚXh½'õð éôN6ìÙ< !gù×X4K“Dh­’±ÐcÔ†`;1!ªR¥JªwÙ³u¨-MÔä ÚÌ\m]€mVb·tî;wòöŸõC2´,&8-F~gfSß‘MŒœõ7ÑiŒŸåÊ•CĈ„º0ÌÈi×ÎmÓ¦N1=gF½sYÐHzçİB“‘ÃÄ¢0T칓eÂi ¤Õ8M ¡sN럑ÃKšËúöÍ«}úèï I5%¨¶W›…® 8f›E|^Z¹re9ìT+Ácœl´L˜-ÌÌ–Áfã¾yN60 !4²Ö®]ËŒý/U¨6™«ÉÓ5 €Mš´ {cÇØ¬YÓàà×ä ‡¦³#²'S¢å¼f6-M af¦ùí'Ý»u}úäêYB*„ŽŽübcc#à1«#¢¶T¼‡’¨Ïý߈á[º6«iBkòtM?fÓßùAÜÔ”„òåË ,³”åÓJ‡S‰ó-›™…bf-U«V5!î;êJB*„µhÑü…ÿÈÕ‘ÈP›BÔ.KnòXGámãÖÆÕ´ÒµÉ˜m9ÞÎzpß×Ö¶‡E¨˜N<6“­‡–Ù4]}“bf ½h;91ÚÆÆõH¡­¡™9²Ð)^¸`îÆ nÈÕ‘,IÔ¶={<¸ÛÄhjëGkó6}¤]P9\ßálòXï²dM…c–*6UV‚Êt³u2³–ž?îÜ©#ê,4” r¡ 5%ŽÞ9ôò#]›™±ó¼­U#Fü}þì)ËÀ°yÙ 9™~`Î̬¥ÿ<:aÂ8Ô; !„¶&„¶RSbË•-›ÆH°|ÖHùVÚ¡‰UzмYSqÎWòbY¯DlóIb.q ƒjÕªñõ£9 Ь'ݪ½zþ%½ )JÉs­u]éî¶õ HºB·ÍbÆ[à,÷ìÑÍ÷ÖäíÖ)Ëø€Ù‰ZªÚ;eÊDýoþàj“›ÍJ´2ê¦M q?nߺ|öÌ Ð¹³'Mùݾuåg|¤n.1Q_«U«–÷<œÏ™fZ6ÈÌ‚|ÆÌZ?~ÌéSÇQW…„ÚªØéå‹{<.ÃÜgÙmí*—% ‘·['?[Æ, Õ3gLóÞ³¤ºpq5.i³Ó~‚ðyibËž™™<1!êúµ ¯^> ûLMŸsëåË'7®_Lü¥µÛW.Ÿ¹ß¦M+äíÖ)Ëø€%‰ºmÛÖ/_yÈHð™´’‚Ÿ=}¨•ÑÊËÜÜVb*6/*ÓÌiù·}«X±bjr êªÔRƒ\F:Bè¼Dhü»ùR /=]–‘.§ ø#ü=Ò8ÉÐÄÇF䉳‰E,…‚Ÿ‘NX¬,Qf¦H"²ÒVWu^ŒŸ‚ÌÌ 8éð©ì}èˆè0S¾G!—(R"JWÈ i@ÀãqÓa\"s5SKc$”+[–ËNÒì=¥~:%7Vy²\&áÓ…ŒÔxë:vìЪUËÖ­[uéÒÙk›';-‰2¨HÅ\¹LÅ’½· |…2¡–;í'á|ÙrœAFºR°_%b6.•pär^®,ä<‰„C<…çþR’c²Ç·U­œM©T` èB‚¬ÖJûÞ·n\†óÈç¦ZS¡îÀéVDA€ËaÚŸ¿³$'rZÖUlô×?þ¨Ž  !´U!´¦Òª»ù†æJ©˜ÿéÓ§ÁC÷²³¥ øcXX˜DÌÃR:dÐéÿ×ÍZ¤|ÁˆT³+˜"p6¹ŒsúÔÑMî˜6nX»lé"øÔ+ø ¶™>m²ÛÚ•Yh)g ð ¤!AoÛMŠ%""bè½íºƒºwïôWã†v½ºi©YÓÆ]º´/R¤È¬Y³àÔ ˆ^ÐÍwð!½ìì@]»uoÔ¸qÏ^½´Ô¤iÓN]ºÏW9_„D|öìÙÃÄ,::Z.—÷éÓ²¸ÿþ³gϤR)£:Á'ÿÝïÜ©£®':´7%ƒ?‚'„›þõ£‡w5jضmÛ®]»vêÔ©sçζ¶¶:thÕ²ÅÇÐ Üiôv ÚO8)»víš¿‡·S“£22°H$¥Ì"C; X€¯¤²zÉå¤bËéË—/0`@JJ \‹÷RÛ7Hð]ð+Í5àä+V„3>¹k—™Ù¨ š…\Êb±Ž=êè8µˆÊæÏŸóæM¨2©ˆÖì,1É€ÐøFÅ,Àzìw¯gÏîû‘( !´5 4ˆËaH%Í5xýôkÝ¥ÉÄùC)¨U§¿€¢!±ÔvîØ:}Ú]|âñx>|`À †©I*a¾y6o®óÙ3Ç1ò92sÆÔÇè•““#l°Î}PôÕËg2|j ýNzzº»»{£Fê0;;;¡€O6eè7g̘Ѿu…õËëƒfNþ³zuÇiN˜¦Lušì8}ÊÔéõêÖügdõjUJBÇêããgÓèèú€n¾ [¶þgñrP¿ñ“«T«®›oíºõl‡¬P¹ Á|fæÎ[¹rå¿ئM›À-Z‰ÿVºdÍ?ªzïÙ}þüùt…\ ×6Ϲsœµ<À©gÏž+)\¥EC"º;)Bxîïü »Ñ¾}û¦M›6nܸE‹]ºtéß¿ÿ!Cš7o–’CpÆ?ìê,((¨w;(ŠZªµÔ ×Äæ¶›µØ fê°²o?‡÷ïß+2ؘ8,ñT†±•®àGG~Þì¹*ˆ‹Ë‚ ëÖ`| Kσ•^Û¼{]·Ní,²ñãÆA¿SºT)]ÁúÝ»Án+ïòçH5º’F¡9þOï/[º(1á;¦Èïg9Oÿ¬–ïíË«W-s]³<äýK kèa3ø,çP4idžý}Z.—&œïä~ã'ÝŒJy]»ß´e+Ý|»÷ê½úÈ)Ø`öÆmÅŠÃÉWí½{÷RM3fpµÎXµhX#ôâš;gÁòòåË5{ÜØÑ'ŽÒòä=z¬Y³&’Á¾ÁªG¦O› zóꉡ1І•ÒáéÝ»wl3t. 7à ͡ß5Bƒœ&Öèë`§·ÜŒÆoDhu¾j„õ;ÑÞÁÿ|é"4ƒÁÐåX6›™™ùæÍ›R¥JÙT(ûôè’—]Û6©™fäô»/;9.9°ûÒÖÇzvïW¯n“Uÿ¨Zå+VBý²bNF¨l\#F »pþ*$„ÐV8 sï¡SqÏ3nÕ ^Ì&‚Г'MðÞ³ƒ8B¿}tƒÆ¨Öè¡}¡“úúõ+ñbS´dñ¼€~¹(h'22võË—/zO„\.¯ZµêùóçeR!½í²l…Måñ&i"ôZ—z}zBYüø ‚­ÎW¡Ç.p!‹Ð@¶cÇŽÕ‚X ¸Q‘˜˜øçŸ5Š+vÆcê×ëëF;´Ã®°2•–Ð qß+Uª$à1pÚ×רuÏž=TÚðPaì˜Qݺukݺuíڵ˕+W¡B…ºuë¶k×®oß¾ãÆ›3gŽ««kÇŽŒ‡@q¹¹»?/97DÍÏ f=k5ïU»vó*%JÇø°i÷š+¯X|z0P´‡‡œ>œdUñÜ|•ƒÃ@­—/ÖËϘ4ÇŠaã[7/)Dƒ%ôf¡NY—¢5²àAh\&Æîb”/_~ô˜±XAÁEŸŸ\ó*¾ „Ð;u|òøB ·ÌžÞ¡¹†Ïc̼° ÆºæÇN(YtÓÕ(´qjUÈ%k]×ÖªYøùÏuÎäÿðÇÊ¥[!ëÔ¾u9¾z¸¨^­æŠ¥ûàÁßßß”0~!=œŒP™ºZµj€Ê !´5ÇBëÞÍÇAhŽ8Åóù ¡·¼Í%AèÇÁ5q„ÖUrøè)‚ƒƒÕ- ݱÛÚ•ëÜWir`rqY@¡årÉÆ;vìhèDܹs§lÙ²B¡È!à#ô·]«V-?q²ã¤)SÕ‚¯µjVº&‚Ð#:´úÐÓ·6UªNœ ÙMS ¾Ö¨Y èšB_¸paÚ´iÿý·ÄÊd2‰DÒµkW8ûî΃¿ÝXçæ<–»wï.•J=ªÌ¿uóŠƒ}]OÖDè+W®?~\ ¡¹\.\&ó¢x<U„ÆS÷n]{öìÙªU+ ç5jÔ«WpºW¯^ÇŸ>}ú²eË<==»véŒ"‘ðƒ‚‚J”(®9þ¬¥µwGZÝŦf9(Ÿjõ+¬¾5Òi·=ü%44Tª¬5F‰ÅLÐ])³£#?;99ÆuGk þûþn4_¨bz³ÀF¡ Q´F"­ŠQ´hÑ Çmý†‹W®þÕ¤ Ò“&MR>f(—ˆ ÑŒÉIyüRý•ÃJ*[¦LãgBoSÿtÙ øHôùµz½€ÏXxå_àgï§û³78å%¼¸—H 8äo¿ý¶`Þ–Ê6ÕO{À¼uã±bŲ¯›Z4kwýâkXùïâMmZw4`b¶ª×Çcr„Œ Ù,ðe•ïöý‰Š©À ´ú> ©íiLÐ23rÐŽÐQ?ÂmlløÜTÍ,zÙöÔDhNäËAw éãó«PJ>LVtyé 9>…ê"4t¸óæ:ûœ8µ–`å‚ù³â¾™ˆÐ7H3t"Æïèè¨~ÖÒ„ù]i»iu-Ý:ÝJ½„6Ñ¡…Р §¯LZ¶ZKkŽžVo@¡á„&&&j!´H$ÊÌÌtrr‚S?¦o»¯××ö˜Z¼X±š5ÿLJJ2ìÓ§¡ÝÖ®^¹b)>Bƒ9sF ¡‚„9¾gÞnð“ûÕíàЧK—.íÛ·o®2X~6lØ”)S-Z´~ýzàS fï>v†5Ö%g·ûc4¿ºÞÕ¨S (±ÎÃÁ׃ 4þn”ŸsÞ³“k}Fº`ë– 7¬Åág]„mX·¶ÉH7> Ylö\¯›…&Bë¥hü,‚ƒ€x5×È¥¢›7oBÉT®\ùç°ðˆËW®(…5•*U:vì˜ê1C¼ÖBè€çU“Þ§é"ôìY3R‚±`ûá…=ÙàÊg®ºåü¼ùáö_4ûî©(ä¹ÑR’I…GŽùãZãFÏ=b* ò®­§»tìµl‘G«¦L˜ uë4º|Æÿ郈:µ.Y°v)::Z,☆Ç’óF_?ê>C„„”ºHn+mhFzÔ¢Eóçþ~ZíºÔãçØš4ª[„Œ­Z¹B.“BhPpàóÇ9ì­%Xù>8@sK -óÞ¾}[¼xqB½gËå–.]ÚÏ’囂ТØ^Kf7˜8ºŽæN¯ÏŠèIpÚÈŒ:}úÝ×·ýÔ_/~ŽžãáµÐËûZÄOÊZÍçó¡ÄöíÛçºm“ÚŸ.¯}rdq¥òeJ•*…¬P(ÜÜÜàïj„|8”ç‚ Ö®]»sçÎÞ¼qwŽDNDD”öü ¦†¹t„õ+® ×\¹òƈ’¿•¹?3ÿø@Ø &&FJåW'¢C"b%'F¾ê>?¨ ·zúü¹“°ž™#á DÊB¡u)Z…X_º WÜéݺuƒYì²4"*ôØÿy/»ÞX“Ò³gϰ°0pK±}ÖBè=»·ÏpšªFhÏMë{ÙöÀdÛ³{µjU?†ª9²yã½-ÀÏ®¾Tóöä ´@­³£K§Lqìe;¬É_möí¼8ÏyU±bÅû; –:p܉ƒ¾°P²d©*•«Áò”‰€Ù³*ÛT;{ö¬ª^dã;¶‚4ß`Ùk›ç®[¢ä­îݹaoß•Bh«AhFŽHÌÈñ6în ?–+a`‚¤4Z‰…9?¥ðcÞÄúBèMë49A ¡=VϯYÝæÞ¾ù÷÷RƒZÕæÏŸ§ÀðA ¡?}|òþ¥QÁf¤¨úeLêG …“'OÖ¨Q#===33û‹Œ@(².B_:Ö¢cÇÖ;víÁQï>¶ÞžñšÚŒþ{Õ²K÷Yë·¨zÀG¯ëVò™è²’„æp8™™™OŸ>…ë‘j6å_œXraM³ú`ÓåÁOl6ã[5BOšøOÔpRÍRY4û#æÏáŒl ]ýÜÿ¿–-ÛîÞ~¥UËN­[·T:tè˜1c¦M›~âêêº}ûvggçÃÿ6æcÂ]»vÕjTM‹Ÿ§nÏf¿/ÿ­õSͦ•aýÒ Ã`ùº•8 Š½×QiŒCCʤ܇÷oBEÀçg½ Z´pÎc?_H¡å2=YBh]ŠÆÉBBà üýý¡dÊ”)û&ø=FÑß"£½÷¨Z­¬/Q¢x‹X,’ËDFzòä ‡zëŽBCÑíÛ·{þü9° |$üü¶ÿ·øÙåú*œSM<>å%¸¸×è(qºBÞ§ýða3*U¬2lð?Øy¯P¾R“¿ZU¬`S¯ncXÀ&î³±©úïâM¶=†üÕ¸Õ¶mÛpž¹Hú…¥³Ùsƒzå†õnØÊ”¤D)y¨½Þ;gÍšÊIGÙ —¿Zwc|„ÖÚÀòMpFŽ—17¸’ÔCAs7úUkî¦rÌ»ÓLsýáàù\)óEÔU½­›…¡yѯÕ¯½ðŸÞßn¬#"¿C‹ÔqÑúêå3ÐÛ®\ábT°Ùõ«ç"´T"xñâEë6­4¬ªß Þo¿—®V½jÝzuôª\ù²•«Ø`ƒà¯^½’¦h5BŸ=Ø|ÄÈAQ±ñQq èj¦³ÓŽõpšúŒ×¸<¯‰Ð§‚层 œ)#tRRÒŠ+0²‰‰©R¥rÉÅ/o›ñõúº!=[ÂI_´hü„-k!´!7ÓBèèèèïß¿óüIžDŸ] ߊùó¹nØš Ÿw•£±¦!ôÃû·[·j·Ï­3>/ÎþÏ¿]ÛÎ@ÑS¦L™5k–‹‹‹»»»§§'uß¾öŒÔx£óOž2¹ý š<çpÿ’¥‹)ª¡×ÜUºLÉ¥Šc1mûÖwšá¤÷zø9Çô`›B®œ%cú5jdu]³\k !ô:÷U'Ž€Dp†¾ í,ð{ó‘,‚‚8ìÝõpÝ ¹PhÓœfhÖ—à“¦8bÚ°aÇ*‰…lÍÿB‚ÁÁ/Õ_›6møö,Äå ´ºè¾„‡ð8©° ؾDp~ÏAÿ#Àϳ/.æ)ƒÙr²àÝSá‡çFC) ²ôë7`Ø©U«Ô8²÷z« GÝQèJ+Þ{}ùOûÞ#6hW^x- Ò,X€u@gN€5'Oƾ.^¼±JÞjÑÂy^Û1„Ö“ Žèä›+cËe_M„í{ÐmàÐó#uÚpé˜ á¨S§¶r|lÁp8ã˦(çc±··—ËåB¡Psˆ8Ø›é:†ó ߓùšAJׯ]lÛ¶ÓáýwŸ/ž{õìIxØçx@ ?ÿüÓÞ¾ÏÀ{öìѶMëý{wñ¹)FS±wèÝkbs5$/>3ä÷ò¥Š+ª; íþplËÞÊÙÛÚ ¨­é1®é€ýUá÷ä| ]ÁÇÞl‚ñêåK§õ2­!„Þì¹~ÇvOH÷G ™„ÆÞ|d4‹ À+YÏe¯˜‚Ík÷ìÅK­Zsùڦ͚a¥ºsçN­P1H08( g9©mÛÖ<œ>f\L„ ¡õ?6Ï{±e*ð³ã™Y\n²n! ²vb©’%•Ó5Y…¡gÍrö9êᫌB_6:µCÍô¸(F‹2Bëõ|„öºþ`á¶=ê¯mzô²6Ò~ô?ó·ì6¡333wîÜ •bïæUe/­|iÈo¿…„„( Ý@eRíïï¿iÓ¦»wï*_ )ŠTÇ W'éÍ¡%ªÉÛK”(—fw<Ò¬5¯\ýý÷ß¡ ç΋Mcb Bß ¹Þ½ÔÊõöl¯E|';¡ÿMÁÎ¥Ú ó ?½$àL™LZ«VIÿ,iØ …ûê=Eÿ3Ö;é+—n…¯Ï|Øoô°!SÛ´î>uê4Bw¸L[ù"<(Û•+–q9iBñIÞŠÇI.óûï\v* ¤‚‡ÐÔÖX'B뽓«I†¯bn%󣉥 nå^O¡>|8uêÔ9sæDGGƒSýõ×_P)úõî†Õ///ìBÝé2ˆ#4@øÀß¼y3fÌ???’3rjÓ¶mÝlg;ÀçØ%?Ÿ~ùÄïsøç„-[¼&MüÇ”ÞP&x{{ÿÙ  ç\¶Riu‡¦+Q¬A»êcݺaoúV«Zm›Ã‡C"d}@&e?¼sÉâyšd«—¢ =Nøôñ]™”ƒ{hl¨˜ZYà ´&?ãgƒÐ˜ïaaÀýúiÖ»Þ}°ÂLOOÒÖú)„~ôùAmæ¯ï“÷Qsð9áémíáhÂnpõêÕß+³ê߃üQ{ñ¼uOïµmÝyØà”ãÏ×??·kÓÃiêêâÅK€ÏdefŠð0\)$''^¸p>Z#™_Ÿ?5nÜ•R@h"øÑÑ8æ!BãÜ»§oR;<¶éÙ£; tçö-'éBŸ_ùü[¢xqÀ-"¼ ¡¡„ͤO¤v¬•\¯Tr½’J~V«n‰Ôæ6™~dL)„ÆßPŽ×‰¹YaaYK–ÄGDè"4S$Íš5+ËÇç=ƒg B3™Ìnݺ%$$Ü»woöìÙ C]/¦M›–””ü,ôò-q„ŽŒŒ …ww÷³gϪӉå|Æüù+ãµ)½~[_‡á§Nø?Ÿ;ðøÑç°O î¦ xÆ X²°W^.89x¡Ï ÒeKjRô˜µÝæî¿öîhÝY£çí_´hѸ¸8±»68> ¦AÐqN—¢ MjÇbB¾i¸‡ÆÔ›…^„Öâgü,ð. “““Ë”)¥wéê5¨/¯ßÞ¹ÿ–K—V滺ºªÞK¤†Ð/¾>i°©]ïýCQš[úœ} ‰]°`ñò—èò³ÿ³‡ 6€*߬YÓ¹sœgÏžQ¿^Ý ·/ŒÞøðáC‰ÅvÛclÝ .‹/1{æ: èmž—m*U5r”\.¡çü#h¼woG倔ß'\Ùè@t~‰…Æ™‘CS±ûga}$xa2?š2BA—/û»û¬Áúâ§œWÖ²­ ¡g,­|»Ù?Í 62ÁŽ Bgf¤§ éœR»xrýR¬ ýßÃy<œSöŒ‘€Óœi³©:u2t‰·fÍjüGÉôú@Öû÷Y+f+–ÍÉ Q£²6mÊ:t(ËÃ#ËÖö×úää’%KêËw ~¾š}ñâÅQ£FÅÇǧ6²ýüùóF=zôøñãïß¿'žA„^µrY™2åôÿÛÿÙ''gw·5ºü|ñÂéÒ¥Kýùg+—Ϫå°A*”zxxT¬RnÑéÁ!ZÕ¡ú *_©¬———ѳÑ¡óo^¿0o®³n¬…&E«WÂfsfÏ€ü µ²¸uó’V8üL$ £­œ)N.ÞµkV†C† qvV>š÷{™2WoÜZë¾#j Rõ¼F:<>¤µWO,ÊÔD„ιîàA ƒ—.]Ú¹s§··÷½{÷ Y€:•™™±wïÞ’%K­_ëíµùJùrW¬X¡PHuäõuès×÷:*¤ƒÐÄgºÓû«‘Cƒ¦ cÍ94)JŒ»G¡›5kZ²Dñ 3+ "ôh‡v;uĹÀAhŸ‡\×,ß±ÝÓ¨`³Ó§ŽR@èZMªº™®«?Uv^5–HAIDEx(°Áßæš•™™””ôõëW&“):±—=¡–BþîÝ»gLõ.l9~ˆ£^ÈjÝú$c*ZT{ hùò¨¨(jùª:&&ÆÆÆfêÔ©3g΄ÞßLì“c>| ¡V¾ˆ|îçkWÏ÷îm·eóFÝmΜ:HÖ²esR3ÚiÅÃÏtž=}wŸì9ŸÇ7UÎÆp}„îø3ðó¼ùsÓ•gI„Ÿ EtˆŒ ïı€¸†Æ¢g9OWÜÂfrñaO½Y`zÇŸ‰dA¡•o‹á;::Êd²ŒŒŒÉ“'+‡v+UºûðQ:ua¹zõê™™™Dz§k‡}šmí„“)-­`–Jx2©$gÏ_—í'3Ë—¯¸Åã"Pôꇊ+—bG¾P½ºu¾~ù€Ê©ð t¾{µ Á9ôPtüƒd~4H/?Dh…\âà`ÍýKP`—/_6:±€^„Nˆûöôñ݇÷ol“zµJ÷~íz êhS£Üˆ ªRõ²vC:uµoÓ¯_ü‰§  €œŸ¹K°Y¶ ®–ŠypN32ÒáÜITk Ió}FÄ} ëÆ %3kŽBëâôС‘DÄ¥–¯¡“““?åØ÷ïß̈́Ќ B¿ zY²dÉ>}ì M»!à¥îܱ¥X±bíÛµ0á&¾2vÓ¦M%Jo?°á¼ã€–—œ¢õü`Û¾ `//¯tcW1#:€Êqoݼäää¸aÝšóçNjQ´ÛÚ•°rû*ØÖâgCYÀŬ?Ÿ=sœxD:{8êQº\,b‹…l™L:lØ0Í–yÆ jÀGèú£›6öìid†º÷¯ÍÝ·ZËå²±cÇ–+WaÍŠC@ѽz3g®Ñ¹ô‘¬A,æÏ²eÊèÞÃBBÊ_m”o ¾?…Ô ­bF…lÀÀþ­:ý5~Î jÙ¡ñÐaCñ_å läeÒcÇŽí!lÊM9‰{‘@¿ožÍ™=ãô©£4Ëyúû੘¥ìïïß¼E³ªÕª”-W¦fíU¦l™ªÕª¶hÙ< v‘ÌÌ l:S$ YôÖAI…Y7of•(‘ÍÌ¥J)¥FèÖ­³ŽK—IL °ÄzÆŒo(ü±OŸ>Fíؽ{÷e”¬[·nÿý·Ñ—’ìݳª0p”îOLFü™SÇ»wï  èß791ÊT:0áª*44tà æu+·í[¿Ç¸¦ÝÇ6iãP¯z¸Ò2tðçÏŸa3‚ãÏŠr^\ì—Û=§O›¼há ÙÍžëA°_a%°4\~*Èó³Þ,–,žgJZ;@ZĉDà–X³ìááW©êË|„.ߥêŽã[oÞ¸DA´¿DC¬¢h—bÅŠ÷¶Þ¢yÇþ™  ö RÞê]P@‹ÍP9 ŒÇ †‘š‘C"æ…‡‡ÿ=üo{‡>4|Äð¯_¿JÄ\#> `ª†+¹%²ÉöÈé2ÞÙ3DZ^˜¬ÎŸ;™.çí©eRt²™”4:¨®PHÞ›Ä×ÏŒh%ÅÏø³1À¾eݾÍÌ!!rifbbVLt& {eüü¿Æáûøø+V¬%ƒ?ž:uJ&à1‚'1Â’9’ˆ' y[ªT©¾}œgN›?o¶ëšÛ½NhŠÏÐ?­ºg8{ölàgðdü—}#Y‰.]<3|øPTH¡­¡ <‰ÏMWÈÒÓ)I!3¯hº¡ÉTÈyÐ#SåÁ4ÚG“€W•“˜agð} ›¢ïÞͲ·Ïd™eR,`6›•””HAðG™THàN½%<ùÎíkmÚ´ªZµJ¹rå0(*Q¢DË–ÍçÌ™yïÎuáYË7àÁµ•ò2X€¯doUõ}ù¦É¤eÍRðA°_Å´N›fz”£h¬< ¾ÃJ|úä)Šøj¦º©D€¨#_ÈsÓúeK¡r@BmE®ðR1!ßCBB*Ø ûÌdÄÓ›&$öé*[$³jú´)‡z£r@2ôd &„С‘Ì!FJl\ÌWÇÿ!)H™‡Êɬ²µíá÷ЕBhëDh$$$¤/fjlB\DJR-‚¤Òq¨T‘Ì­5þˆú†Ê _¡I½!4RVJRtùòåQ9 !„6ß+Å)p5Bh$$$$$$kÖË€ÇíÛµE倄:O ÚW#„FBBBBB²f>ulÜØQ¨B[W#„FBBBBB²f¹»­^½ê_TH¡­Š«[´h>tè Å‹æíõÞqÇ÷Ú—ðö»þ*à)põÆ k«{öì\ýÛo¥›6ýkðàèB )ø9{ñ:*ŠÂ¦Ê•m~ÆG倄Úš¤|±¯˜§µ259æõ«§çΞüïÑä¢HHHHy"½í3RÁV|lD•*•Q9 å¯Xh5â"^"¬wS´Ø«UÐCkŸ›ÂLç°Q( ”…%³ÈGFð(Dè ùL¹Lœž.7*¹\"0) ÏI9é ~zº¶ žX”F{‘Š,©D KÒ2,ÀWXIo2òY<}|¿k×κë%b®2çB2‰ˆ‹zR„ÐDÖ¯Dæ…£¶¡ŸÌôÚSÚÐCèžîß»I\ýî’:ûÏž<¨^½Úõkp¶ùþícëV-M )®öâùSïƒ_åÓjý½! Ç©ŽÞÞÞF³8vôÀäIÿèòó§OŸ†ÒÛÎŽ‚àaaaf£hBÙ‰Ðz–É"´‰˜ã )æ…Ö{Ç0üó;R“æ•*UòÈ¡½ÄϾßC_øÀ-Î6Ø>lÛºÉD„†D\׬(HýüÙ#Ý-gΘö.èeA"CFZÜ“°GÖ||ƒŸÌà'1) +_"ôàA·o÷òöÞCP..KV­ü!´•DtÄÅ|kظI‡nýwíô2´Íí[WZ¶íÖ°qÓÐoˆ£æÓ§OK•*í¼ØuÖ’µ8‚ *V²¹xñ¢„|؉ Î0Ëyú¡ƒ{ŽöÖÒ&÷eKeeL‹ÂWÈ¥AAA}ì{ƒçÔlTµýÀ¶›`¡fê°Ò¡¯ýû÷ïr µËuv}zaY´X_+‹¾ýp²X¹béúu®:×22¸D²ëÔuíœÅdÛ± P4$B—CgO¨L&“a ér!Ÿ‰°6ßrà0->Bãó0µ pö‡ø°¹Åÿþ †¯'NÜ­²½{÷8pàðáÃÇŽ;yòä©S§Îž={áÂ…Ë—/_»v­I“&UªT.^¼8þ¨²åúûW¶¶= BÃAén9iâx½hšžÆ½Êp•Ë,Öϱ'§Öóh•øÅ‚“Ê‹g²¿2Y¡ æ;fÚ&;ŒÁbRæ.¨4&#è=ëå[VBÓô,† $ õ6`ÇŽ+V¬ˆŒŒT¯|ùò¥9úg,3*‚Iù(Øi?S“cˆ‹™O0£I[ûNØbODq‰_ht6‚ñuS§:ŽuZ³rÛµ†5û¨§`ã¿7jÜtɆÓÓ—ììmoO“ÄÜ«W¯V²©üêǨ5i¾ÿ~©„O8¹Ïýzmóp]³<4äµ®üÞž>mòÍëb£ÃdRŽ üÌÜssw+Q¢x§aþoÐúÿÆiiÏ ŽƒÁ6lHWBRYlܨ?‹1£Gœ9}\¡Óå=»÷X7©øct†PuP‘–|އDêü$ÿ™–Î(R8ð èÞvv©Ã³)—Kä2‘nðIffF·nÝ´ÆÐ¼½½ac„µù¡qŠŽH›c‚„oÁX蔿?ˆáëÊ•+Ÿ>}êïïÿêÕ«ÀÀ@¸|þøñcxxxDDDttt|||RRƒÁèÔ©SŸÞ½Ú·k[æ÷ß RœÅF¡¹ì$Hd­ëʂЫ9¯žØßy„Ã?_ÊY„¼ã±É}“ç:L§Ïœ°0B³&ʘõ³xþl.'Ééܼ뚟œ|•÷„c…ÍÿÉfNyÍHø/5ö^jÌÝÔøGŒä猴÷Ln4CÀ1KA=Å>Mú{ƒÌbµ²0Ù‘½xÍ2¡¿ì¹ÌPëÞk4b±.Ÿ=<<̇Ð_BÓ<–ŠšüžuõòQÌwÞ^¯^ÿºMìë´²­Ó¡kínjÙµ©Õ¯yÍ!ë høWŸ-{Ôkß±n×Öuz5­Ý¯AÍ~ÆÇFɨ޴âÕâÞG]]êÖv,ò#.Ä’ñ ¤Ÿ‘5kéºó¶ë._'—]:wæNk›‘£Fcයx÷ÊJZ.ã^½|fÞ\çE çÌ™=8ùÖÍKZ:tp““ãòÏœ1•ÅŒQЏV²ºBæ8uJ¥jågîsÐ%[MÍð¶¯X¥œÓŒé*ÄeÊb ™,fÌtÒÍ¢m›Ö¯_=5„ÐJ$¾ä“\»˜è2Äby9Ú7%ùƒÎä34—ºt¨l£Ì«Eþ/ÙI‰ŒÈ(æÿ.ðZôVüV?óÆ]މò]|óW­ /"h4|}}ýüüž={¶gÏÿÙ;°&²-Ž»ê×]·—§kÝ·«î³®®½¡+`ï½+¢X±wbo€ˆAÁ‚ ¢H‘Þ{ï„4B:ï$£ãH2 Îùþ_¾™;·LŸßÜœ9÷l­öB¿vâvÿ²"#Eý^èîÿÕíÜNÿ†vXùü£›?^?þ­«þ׉óÛé–5Xçÿ²{˜ü÷êúŽ.S~‰ëóí‚ßÚÇņÒDèÃw”\P7ž©Y„¦‘Ã驃†ö<A<¸ŸšÁêöµCÿ%3hÏZ{áü©‚Ð¥¥ùÆÇ ­n[¦¥FŸ;k ´Ljù²E  ëׯžfeÄi‡y©ç]R\¸ÿÀþï~n·ùÎDš]lø9Ô|ëšeó ›zM,\6ïF Íó¤8~>ìl,àæòƒòà·šMÄÆ„¬ß¼vÌøÑËV-~ëóºú[‘Ïfp£˜ÙnŒx»œ ‹Lé.‡R^¥¸›¤˜fÆÜÍÉxÉ`‡1 Fì(xWZ²QôûÒØ2/“¡½°ðûžeiiLõš˜8AKž#¤/\¸pñâÅÏŸ?ÿ¡·ª¸«Ò‘3‡WgG©…Ð!tzЊòÜxvú=B×ü Êû3!÷×φŒÔ& y× ‡ÿþù?¿·îÄÒ¤„ˆnÿí¾õˆ ™aܤÅ×®™Ói´J„öOàes 9Å2zíæž’’RVVRRRH¨¨°  _ÉÉ_ZÊ'ðø®Í #Ã}«u–C⣇÷ãÃ`°ôc„Vm\ÿÖ­[é\'ñS· $¾Ówü#³hù™1­Zµ  9J›½oBiÿ3U+Îh@‘ÐÐP² ¸“·oÿŸªvÔ;„.ÎÌÞ¸DàqNÇÖ9Z Î)ƦÆe” NÈéØJ¢ßZævûBdsµ8“õ¡‹hî1hnêÔ©T8­“~ùQ¶â"!‰ÐÒ·§\T«–ZžGGÝ8rÐ Ý@šÅH‘þcX5¾îÝ»·2?§¥¥QùY$BËl@KAhNž¡ìßÕúª¥é¬ÉZ¾ç7Bßܱ@OwìF"›«Ëc­á?3å?p&Bs°ºTððˆÙÓ¯Î?owØ“ÏË©‘&ìl­dòèì£ôç¦n–ÿÎo`¸WÕÊ+#4'JâÂi•ýæTÚã=IVëã¯®Ž¹½.þáîD êˆ[Yé/ìpF>“Qý­¸x•ÿKŸ²˜8;qÆ<ââÂQ3Ц.+”ºpäff2î]v䌠:—^è, •"&‰®®®Û·o¯U„žøwÉéDhú÷ç÷ïV9cÇ-Ûx‚„äÕ;.öêÓ—ÍÊ€EãÆÿ»@׈\´v·yï¾ýa‘Jžš_TRVX\ž&ˆŠ<¨5a¢–¶BM˜xéÒ%é÷kÊúÜY“5º+õõ×_½rÉÛë%l/Ÿ›EèÉãû—.ž®&BŽ3jàäÿVÁÏŸ¼\}RE÷×ꦥ­I‡<¡‰1£+7¡T¿kâÝËcLtp•Ï)¡Å)åæßí H–¨Ëg\å"!¤s–LÌéüÙ»ôN­ƒ»”‹Eâðd•Z(ȃ‡;ÙM˜®®®´·šnÿpmûB×Óç„U7WúaøzàÀÊüœ••Eåçââb˜…ôäääøøøC‡AÁxÉŸ¤õÐpïµ»o•ØÝÄÌMY¿|ÞÔá}öꯑáÀÍ›Öy¸=¯NU"ô€~}F þ‡”‘Z/# ˜ŠgÏck•ð$ý«×¼®?ëÞÝÈçe×HÎÎc¦h<Ér!7êËMgÿšÝ{·Uk+x¹Ühfæ+ ²Ûñ4›ñgæGL Á̾6N…E²Q;ØÕØŠœlÆ÷=ËîÙs32˜Ú oßçñ8’~iÏ·ì>%Þ~’ý¦@8nNQuÚÑ›ðZ);7Ü4¸\îš5k¼½½uttªÐÀVæü³WNå?²æÞ*|×ùÃú³M…ëSÎñÝóÇl²rªnÅ݆wêÒa¤Ë¯ó­ÚvöûÓ{ÛÝ×ùÊ{Ú©C;õö¸×³?·ìírry{›ñ?½éÙnfû_ª…М,‘óÃbƒ=%+—"tf,˜ôyBr Ož8 ¢^¼0 w9yoUÞŸI¥$Eýõ¿>z{¯¨¬5må–-›LMÏ=™LÔ7²ú³g¯ oº·ïšÁ+2ó×;ðz<ú»wï~ùõ·YôטŊ4zaË–­|}}¥>´Êzû¶M$6S•¶qÚê 4!<¶à<‘ù¸ï#~–CÑz–šœ’’"uÀV¹ :Zg©E§‰Ÿ†H\‹Þ¼ü€Ð¿µÌíúsH7æ Î9]¿ !C‘ß›âLQ ¡‹ Nž ÖaР+W,­RövÖŠ[ÕxnJMhĈ¡•sîÞµÍÃýñDÎÍNª)„3p@…­-¡Ò{÷ÆRÃŽïußÿÞþ5ÿæ '+?$k\ ÈbT§‰¤„ˆÁ#=L{Fn©9kçÞ¶²¬ÎVð’9Œhëlw“´;âO ÓüvnoOÝ¡~Gg„E{œH½—“ëÉà§Tk+̯ó•™ç¯6ßwàž4Í7>Ÿ¿n—Ðé%gÎjIïÐÍ»¼î#JjÜ‘C(®X±ÂÀÀ`×®]ÕDh6“±fV¡í É oÝØÿ\~dÛ;„¾eÊÿ«]Åé‚È <Ÿ×ì~?•nªºsf-7nÖ¸ñ3ÆiO;iÊØ©5fhk̯1oܸ9c5gŽ0McòdiÆÌÔ=gܨógç1ÓÕChÑS‡²¡C*:t¨øý÷²Q#ÊF/éÒf‹† ={¤ô¥ž¸á9|L4<¸—H¤ú¿±hÿäógÿmØ å='ý·GŸö¿uÞ~Ì–HÙrØúÏž½]ž?QÁÿá=BóE%ÇÞÌ\ù¨S*7ÜÕÕõ—NÝ—ž µâ| u–Ô_~ýðáCq¥ÿ+#ô­›«u–ÆWIÑ[·l ðT¡‹Ä‚Ó§Owøý'%ü,‡¢îø½©©©b>, Μ9Óþ÷»kÿù—­%ñ]¿hýYEúô I¶Ï¿ü´çÈß~éôý¥K—7AEhQhb™@$0Ùÿ¡ÃYêKåçΟ\8V–/$|¤UBhà„^½zûãþýûcÆŒ!¦ád(ó¡¡ë2.tƒ -ƒÐŠÿ$úСCÀϱ±±4ùÌÌÌ ½(>únÏ;uüM¬n_Š üR¡2Ú¯ô4ƒ¥ä]À`OíÉð4T[¶÷n×BS7yÜØ1 ¡9¹ìyEœõïþt{ÒѨ÷”+óXì4‰wÇV‘ĻÚW&fÎnæ~µ2?ƒžæ¼ª1T鋞‚&òsÌF¢CŽÏù Û­‰Çf…/àó÷O/†¶¹zˆïéyw'˜f&?ÉÍ aÒw稼³uÄ{…äéí>væ8¹¼ëÙƒkÑè”àß¹’'ãíû¼^cª…Ðâ¢r¨ŒÌ—óÕ«WáyíÚµj"ôÑ¡-ïÀ8"0ïÏ6nÎï6dõŒÂÙ#‹yœ\rvÎèây)«É tÑ™@Ë¥Ó§ˆž?°3ß½<=¹`Ò碉š°¨ðâµä3Ö¯_OÜóoݼBxg³›6m"¿Rz–ÑÛ·ntÿkÝ>K‚™õöXüôk§ÆvDÿó=z;>±SÍ…ø=BÇg Cr\¡·<(,æ/Y¹–€äeg¼còÊÊKã²+/ªÐV·-9èþÚ™Äf±UQ&()âÂôõ«fÖw®©Ð%ÅâE‹õ×Ÿ«¢è>㺬\¹²¸X¤¸‰Å‹÷×ê:^·O MK¯4±bå ÅM|„ÐÒÏËÅ…œÅ>êv¦tJsug•‹‹ÈÏ é#´HÈ !Ö­M›6p[€kŸ˜2e ép‚Ý„Z±ƒDM >¨8ƒb¼o9”ÿ?H ô‘#G€Ÿiò3¼SCÁäÄÈršmxpo-ÕŸÏËiQ ›5sš¨î¯Øý[c̨†ŽÐ¹ V¯ò¼Ñ¥0ý&Ƶë¡~c/MÍf¾ë…ËdñÎ ÚM<{öhÖê9Uò3!sk3æL«ÎVpb$îÐaײž¦\^½E#@³«[vÎÓ{xìŸrkmœÛñ´›ìœ7 ^²ú=P³øš5Ïìÿ¾÷(Åá9Ÿ—{äŒ`ââB˜Þo,˜¾¼°:}Éž5iG2©ãw’ð³%%ð}áÂ…5kÖT¡½_±ûþXžþî`+ÌrX ¢wºÏåv7?¼+-›P¤;³°a"´øÞmIo³á~ÁÇ>Tï|¡S‚Š ö@±ý]… Â_¸pá?|ÿŸÿü ôøë¯¿Àô’%‹Å¢|ú÷çÊòóõøãÏžº;M›ç¬Ü?TcÖÀ“7ÜøýÏ¿œTþ ï=Bû%ð K…€Ð ƒn¸"¦£ö³àÍ–aü´·K³Yi«u–'Ƈ©Ðïù–?LѪ"4}Š&ø4töŸÚ´JÔDèßdºë¬‘J:CU„.ÈgÀcýçŸ&ÖðÞ½{ee¥p½÷îÝ›HWé¢B"4"´zÎ!õÒu\ï9LLLRSSeø¹¨¨H?ƒ? ¦¥Ä(>úÞ^¯FŒêúò©bOæiS'KGuì¹óC¡KŠye¥ù…bÍcWR,^²tI­®³÷QõÿÁy†ÃúŒë²jÕ*šŽ¤û‡RŠ&ùYâ+2¶óÊU+Uwä(â,Ò®Ú‘£ÛÜU3Ê Uvä€#îääD®ä¾}ûŒ¥6xð`"eàÀÒшЈÐÕ8]Ñ že„èGä8uêTff¦ ?—Iê˳sçÎAÁôT%=Š9’î[)Èò¶šOI¨A[{¼Ä©›†×t#úœÞP¦hjl^·ŠûÞ“ÐÚ5«†ôë™e}úƶùÿŽÓ¸gs³6úÇ!-t ßIsþ¡#FjlEbVäÀÓc{ KñçÙó$£¨œÔÈŽÒš¬y'ÜN)BƒæmXøÔñAuŽ7N :ænŽÏ¹ Ç}Éw6H¢Û??Øžèz,5Ô2+Å‘Á dæg«‰Ðf×ø_ÿQžÈÜaT0qqá WN@PÞù+üñs‹Â#YQ¬Ÿz•AµÏ¨C‡Œ1|Ô¨‘45xð ;…|(Óà_÷/+.‘YO603 tL뙽„¯Æ÷.9èÝAgf3f +ö÷d«},j¡‹wn-ïÑCP‚~ÔŽ›]þÇÅûv)ëôcædgÚØÜÉÉÉ’‰u@ßãÎôʃ?Lþs 4Lô¾øß)K·±ùOÇÿjÎÐÝ{úÉô%Ûzš‹zXÛôz˜ØºÏT¸Ðé,q27TïiÕOºØ Zý¸›Žª d99樇ÐW,.ØÝ¿MúB§¥FÑɉy¡¨a‘4ŒgN¡˜ÖIhÏ£öÝ~¹°§ª=féÿ~îø™™™²Ï ó!¡ êwˆ (šÊÏÒ/•7QùsÂüã{sº|V™ŸÉHw‚óGÊòE*!tiIÑܹsï“èèhQº~E‚\iƒGèzt]®„¦‘ãÌ™3¹¹¹yyy4ùŒø!3=¾! 4fB\XCè|^ÎÊ9“¢-w¸šèìØ ûgnÏÊã,ÒÒ[2›fTçºDh¾çp ›‘ÉHyaÂïG¼— “ÿ†7´”gË«þŽŠó?S“?ƒ¬#ü«=¶ZqE8¹œXf¶;#áANðÉ0+/ŒRž¦?û^̈º“þ‚‘¬>B3™Œ.ÿ”™TœžÎt|ÎÙ´O¸aÐúËÎõðfwü»tÍa>¯º/eµzÒ®šRØëÛò%ZE6|ks> 4€tv:“ÇÎÕ›]h¸YæŸçò˜³0Ô/¯ál‰ÐC·tYlò¯ç¸¿X=%•5vwOj\èòþýŠ7¯§rUT((ÐL©ÿFrr—f.Ð9ÊçJ¨þèé[@È‹7]Öž©3dè°‰'Ž?KoŸUËŸ¦¬Ýz–è|Þmdy|üè|YæííÝúÓOg/Ö»tí¼ezѱñ9‚¤#SW=ê¼úÉï$9“zeâ“§B»¿v62ÜG 4rY ÿÉãûEx9‡y±Yi\v¤À"¡€A§/Z(ÈKHH€ódÝU-ž¥&MAæµ’¾—´´4¥Aíˆ&Ö_×VJÑ2ü¼ÖBó“O>QÚ„LP»BÙ vw`ôÿlP;_âÌ<š /q\.÷óÏ?WŒÐ{öì).!B#B7C£"4ˆ™+ùÇÍ¥&R.AèóçÏ«ÄÏ`§OŸ&Z^Í„œžJÚö¾•‚<¡ÁR„>qLqUŠ•›,EèÕ©¤•’MÝ ž/G޶\k0ËÖ¤9¸÷˜Ñ#Ù¬Ìnê€ýáÁªj —Ê"4—5Z¡‡ñö’Eh£ÃF4›`o³ºTdÝÏÖ2ŸÙéPŸW‘/j|GéoÛ`lš&Bƒ´çMô÷{£Æ±ø  èxF®3Õ)7ænN赬 ‹Ìˬ(«ì¤‡¹@×ìHf~.Cí&•¿ëQÞ¾_™ñù|/ß¼Ðp–ýî=q›®åOøÜjQupÒ²Œ—O8©‰LÉÉ™ÍxíÄá°>ìø(Ö‹‡ÜPÿ<•6¤¶‚Єýý5÷öÝÕþoIÇ“wõ!f++%=Bò.“›ZÑ©SáQ£ê4ªôþ :yÞx8&&†˜åäeýðßùí»O›7Üàò××ßüëïÿ¶þeZzZò»j™m;ÎÒÛ~ŽÎ:”–™››O›6}êÔi «W¯>}ú4=33.Ï×:Üà ›6Ù­ó¸Ûµàmì|ñ¶ëáT„ ¹ ëÿ€Ð©É‘ÔÐv@ȉñaB?zxàçy¢#ˆÄ§ŽvÒ¾hŽò­(-÷ïØ~W5hs¿ñÝ&LÒ†@§ qc*7!CÑ2ü êûo׉“&(mâã¡U ·ÏéÔšŒ_ÇÕ].• ¸Ë¦|èšîÔš1¨³dh•ˆ”w­°``8¾Äz¶lÙrîܹó(Ö·o_bQÇŽK߃DQáGÝH¯ZˆÐõˆÐ .'W,â+Fè‹/òx<úü vêÔ)(˜™Ø úð!ƒ¦Ð„Ö/Ÿwß’óëfž?Qõ“zÄð¡j4QÍ`1Ìóf]YÜÁ°—Õ§œýÂüBŸ{a¾Rwyõ±—ÆÌ eäx2Ò_0RsSž0ÒžIø™Ää&1ò9Õ"ÃÈ(0óWÿ-oÙ¡ôS¯²å›DA!y5uFÕÁIÛèš‘ðõ³ŠDwo+Î&¶º.q™öz]ÍæߟA‹×ÿøÇjŠÆ´=¯¢¾;™¼åt¨yßNp cr ŠÉÏ oïÈã‹·¿çg5ÓÖw®ÙÝ¿mh°G_=²ß[7˜I–¦Î-±o…¨€Ôºu«g5èó󲓣¡Hxx¸°@9¥“M¬<'ÛÄ_£~#àSs,?/•6¡´‰ø¾~1—໓d€ï‚‹Æ’¾cÒ c¥|Ÿ6”tP€Ýõ ¡µå‡¾"4ßY³f«:jÔ(I4žb1!˜öðð _$+,`#B#B#BS;-å!´™™YAA}~;qâ„tŒ€¤‚а&M¡9y™+—-K¿ŽÉlfHà™Á~æ35B†œ¼Ü¸fRSÕžgDè7§tꔲAÿÒäþÅ&H‰-ðwéì™ù´ÿ¢Ñ#Zeú|£¿ö\LM7cwïázu¡ÏÙ×}ðjjÊ-ýáÚ[ÕX Âé—Zeëµð6„ËÎðó ]£I=w~(²DB6îôÒ’â•«Vâ.?3Fiÿ3Àíšµº%%ÅPæÎ!šX±rym4A"tI.Gìh`,²¹Z.ãw¤P‰³t¹°@xû2gÅT±³¡ƒÐb!/>>~ýúõGŽ‘®óãC/ ÒÕÕ555…•)/+1bDnÒÅbÄÚ:Ñ;C„n-ïC¡'Nœ¸wïÞ}ª˜††”×sRÇê7sÆÔAƒN›:™Ô˜Ñ#ÇKM<øꬦæ¸Ñ£FÀ„ñ1£‹ÐÎNeBkêN~>úìxíí¨ß:wxÆrS¡m¢ìÇiEøÄ&”St€WÙ *ºt.Þ '²³)ðõ‰l­‹×­©èܹlÈà‚ ŸšmQžGGttô§¿N_·ý<1kj)‰ÎñÈñ£{‚`È'?NÙmdAÌ?ky\Ý|ªÐ =ó³ôÌ‚å ð­¡ó%Ý›üŒ´ØÈpJKðs*ÊTi‚Ÿ•zqP— ˆ{èС֭[õ×ê¶ÎR«2Ùê]Ñì7¾d066®Œ‘4›022jÕªUMMtUµ‰Ÿ†%—²ó‹3XâðdY~~/qD Ð5d+ÉáˆÂ’è ´Ô…[\$**,¨²3–KÃ:——•Ž9º#´DÌÜ™ªàÞÕªÆd¤*¨äôÔ®»iS'mÑßP¥¼Þ¼ ö<“&j9lP¥^¿rRÜ ˆ‘“¬³j5ÅÌô¬³“5eÑÂyÔÙW.ŽçΞPZsÝ(%) vl‚Ãõ»‘f£ÆŽÔ1ÔÛnº‡ÐÿûãíÞþñlï^BN{öôíÙãô)ãv=ú¶˜°øþ½yË&:M|9ð»9 ìí¬ko+ºþÙõèýT¹oòA¶'>ÒýêÙ¯§·×«†s,°‰zoBžY‰EG–÷é]Ñ¡©ò¾}  ²“jêÂW|&ddrxÄ„­çîoùÓ”ÙËñ¹Ù2y¶î3…<SwŽŸµ&V¬WóÎ&ñ¬¬¬Ú~ým-¾Z«¨¦N«V­½½½…l¥Õ¦2±¤ABòˆˆÎNöR~ÎSí¨IGß ÕÒÖ”ü/Ùñû>㺠›Ó?wüî“O>™8iBDDtBCÚDHH¥‰Îï›è M@℉Úááá*5QRR¤­¥5bÀ ]:ëÔаþ§Lž\RRXSg¦¨€C8rÈFA>³<4›‰¡ë¡)ÿÖÏÑ'ZYZ\"ZÜÛä/ªc{vo«í&–.]Ô¶›À&T;³ÀÏCd0[ƒW=Íû3ó ÛCVwê»l—áeidž*ò˜œ³úãŸU]û¯+>68$ÐÍß÷U€ÿë @÷Pð›ð¯ðP¯ˆpŸÈð·Q‘¾1Q~qÑ „¸ øØ Ä¸à¤„Фİä„ð”ÄðÔ”ˆ´”È´äÈôÔ¨´ÔètPJS“#@)IɉáÉ aɉ¡P01>”MK+ Œ‹‘(6: &Ê?:Êš‹ŽôŽðŠð…€ÕˆyG„zÁŠ……x…†x†¿ yÀ ºÃš¸ú¿ðw ðs ð}åï÷ÊÏ÷¥ßÛ—¾>.¾>/|½_¼õ~òñzæíùÌë³÷'¯7O==Pu'Øá^’Ýî ‡ÀÛÓŽ84ù¸ÀÁ‚Cæïû2ÀïÄ@ÿëÀ· @·à7É™ä =øMhÈ›°`ÏðOÉY 'œp®FøDÁéá-=c%'R´¬DpvÁi&=Ùà” &Î@8“%çp˜ääL O‘ž«’3YzöJNã4©R£3Ò¢ÓàÜN‰’œÌÉp&KNþĄЄXÉ9 A»Q’“ö-¬¬[Xˆgp œŸA¯ƒ<âBù,±d°6¼ó£P( º±"´P'ÈÏò–à±³Å"~¡Xð^ùïÅ/ñʼn÷NBª¸¢%–ˆ÷!³´l¡¤ >¥rI[E…„ >¨HXüN¢w*‰K>¨³YB }YZL¨L¢‰Ê@¥„Ê%*+/'%± PE9žuk’}þÞÞ84ï”TÒc'9ˆÅäa•‰q*œ”³Br’'Œôü©¨PH9µ$gZ¥3<¿°ês[ö”þøÜæ¾;óE²'¹œó<ŸÏe$'F„»ÃE—žÌm0>>ÂÕÝíÍ[_©Þâ/þâ/þâ/þR_»¿†'"tAhx¬ÇDú%%„Á„°€-à3ð……ª ø¹€Íp¡¥$EFGù`S—&$DJn’Þ^þoQ( …ª,xF¼ñy›˜‰Ýº¨PøÖûy>ŸU `!ä š½r)ª•‚ù,aÇÏçEQa5ÝÝËÓË÷í3444444ùO w¯7ˆÐõ‡ÐÅù¼lBB ìÚƒ…jD]Ä|nN|\T` ¿‡»»ŸïÛØ˜Hv^¦ÒëB‚"!Ï×ÇE¡=}}£¢Ãñ逆†††¦ÀàIáåë+}p¼9DhDhªÞø9Ÿ™›“îááqõêÕS§N:tèĉW®\q}õ*3#Yw“zå!t\|4>ÐÐÐÐÐ<)¼}ý¡BH:OÀÿp8@-*u)™GéD¨rm5[?ª9 ^ó˜YÎÎΆ††ûöí»rÅâÑ£‡×¯_#f?~œ•*suT³ ¡?$"B£¡¡¡¡ÑFèlD膌Р‡l¡Qµ'¡ / À ×ÂârnnVZZò¹³g23ÓX¬\;;Û={öxyyò¹¹Š FG…³ÙLBPƒõ+¡ÑÐÐÐС›!B“Ò2}ÎÔþê*)®„>ES+—©YÁ45§ÒvTóé‚f2²oݺuôè&3'99aðàA_ýõÈ‘#€„!ÅÔÔôÆé)ù_ Ô‚11‘ß~ûííÛ7ÉvìØ&¯ "4"t#5ØÛ|n6!UZ†BéxtÐ\ª*B˃jš‰Ø›ä333ÒNœ8áøäqbbÜ AÿhhŒ$1b8x8ÀßïôéÓ ñ‚|†¼‚99™7o^oÛ¶íåËfD ©©Iò "B£¡¡¡¡U¡IC„n€]eW­bFUìM‡ik¡Ñ!õ±3+))ñèÑ£~¾oO˜ÿúë¯##Ã23ÓBCƒÚ´icjz1>.æÂ… áááÀÌò B~™Ù¥V­ZõêÕ+))fåD„FCCCCC„n:/(L[Rg«L'§éL(M$g “×4µª)®¹Êjåm#ªùHR#7X×ÅåElLÔðáÃ@AAþÿü3pôèQ€ÁÁÁ×®]KMMðò ¦¥&GGE@àç¶mÛ^½zRä‘MMô|뇆†††¦ÈàIáåëG}| B#B+Ue„¦¹zUf@~F$qø\¸)]±°HNJˆŠ 6lh›6mF )vv¶®®®l6KAA(5pà¢È•+—¢---äD„FCCCCC„nÎ]e߯ª-¯ÃY1E« çJQÍYb?33ãÔ©S../âãbÂÃBŒFF„%ÄÇúx{I{’S ŸlذŽ(²°0?sæ´‚‚ˆÐhhhhhˆÐM¡«ô” r¯$¦éY¡*ÊÒñúP°ÎŠ@P͵#:·P,LNN>sæ pï÷À@/Ï766Ö.ðù_Õ,ˆÖ¸LWW·ÛÇÖ³gÏ.\¸ðÖ­[d¶;w¢ãÇÓ¯ÙÚÚúÎ;Õ_à .@Ózzzj×ðäɨaÊ”)x¸Ñ¡Ñª‰Ðu&$XTCðˆ.*s8OOÏëׯøúúBŠX,¬ìÌ\Í‚ˆÐhËfÍš7êvíÚýüÞ¾ûî»Ö­[C"üž}ªB/^¼ò×BÛÛÛŸ={ööíÛˆÐhˆÐhͧ…jPNÂŽHȰ•³Ú¡ÑšBÖ­[7XtáÂíììüðáÃZEh¨ÿäÉyKaÝ#´ƒƒdÃÓ  …ª_!B£5„ÖÐЀE{öì©¡O:õ¿ÿýï³Ï>ƒôŸþyöìÙ@ªÄ¢aƵmÛÒ¿ûî;XT™rÿþûïN:SS §©©)™2þü_~ùåÎ;gΜE«V­"Ò} åßÿ… „+HåFD‰Ù»wï~òÉ'¢££Cæùõ×_»téò¬’/4ó?üôÛ¡C‡ Œ?¾¥Ô®^½Jd°±±ùñÇ?ÿüó¹sçºõë×ïË/¿¤"4 þo¿ý)cƌٸq#°:?ÀöáÇaéÙ³gaÑÌ™3É5éÕ«¤ôèуL÷H![DC«„~rˆÐˆÐ("4>ÐB<65 Ò»wïNø9PÚÎÎö«¯¾²²²"KÍ™32,]º”˜UìÈqòäIXºpáBbv×®]Do0I¹–––„\%BÃìôéÓÉÚV¬X)@ÂÄì?ÿüCmÖŸ |²ò3fÀìÊ•+Ɇ?ûì³_~ùèòÃÖuîÜ™Ü@×°n­Zµ‚i"±“ÔðäAC„nýáp P¨Ú“HÈ•"´€š(Eè(|: 5X„®ÒºtéråÊ"¡ `zÑ¢EÔz>|øå—_vèÐB;99µk×øœ˜ÕÔÔüùçŸ544¾øâ Â{yõêÕPüâÅ‹òúÆdm.\€mmm˜?ÿüó¿þú‹Úœ©©)¡üñÇï¿ÿžhˆ´iÓ¦Až£G´––LùŒŒŒ>‡_CCCH¹uë•ØÑÐj¡£¤…B!B#B£5|„.úÞÆ·páÂ;wR0¨MôúHËT•´lÙ’@S¥ŸB+ÙÎΦúé' è7’Þ}ûö¨&rVFèV­ZQý¨oß¾ ÆŽ Ó×®]ƒi``j[°!Ÿ|ò Сÿþ2ë³mÛ6H‡Í$ß¶lÙÓÓ§Oÿúë¯mll †3f@ÊúõëaéùóçñäAC„n>œaÿàÎëæ ›7.ã/þâ/õ×þurR$"4Z3wä¨Ò¨ T Ó2_ðõë×ÒïÝ»G¡÷íÛöîÝKølìÚµëúõë0±dÉÂwbêÔ©òºM›6Ôª¬¬¬H„‡i‚u©Ö¶m[¡‰VFŽ)“ÚµþèÑ£Ï>ûlÔ¨Q0ݹsç#F<“Æ'#E~øáŒã†Ý|:%9ÊöÞM7ç / UYpuØÝ¿•š…†­¡õôôª,Ò¡C‡O>ù„`K¥Mp²¶¶öºuë § $þòË/½zõÚ¿?¤11TBh{{{X‡1cÆP3PƒÚ9::¶jÕŠúm uaeˆÙÁƒ·k×îÎ;¸aÃbGAÍ·nݺžLõ…†æƒ©ßB>“FÕ#ƒ`ƒmÞ¼™ˆËAFÞ *!ý;v Ï4DèæƒÐ®¯3Òb‘ÐÐ\#p¥(†ä@ÿ7º«Wx½qA„Fkž Ö§OfÂ[ø™4ŽÜ_ýÕ²eK2ƒ¾¾>¤NÁÐ'„Sñ§Ÿ~J†×سg¤@ÍãÆ#³©ŠÐD'¹¦¦&á• K;vìHEh‡˜™ðÄ~&üL¤uZ[[ÃjÀºýôÓOD 09à=$¶mÛVæSD44Dè¦Ð¾o_ç1Ó‘ÐÐ\#~¾n ø9.6¤ãoˆx q¡ˆÐhÍ¡¯^½Ú¥KbP•îÝ»öÙgÀ–Û·o'ó_¸pˆš¸RnÞ¼YeÄg€d¤ °û÷c¸¨ŠÐ`S¦L”o¾ù¦G_|ñÅ€¾úê+êÐ*3g΄†`døñÇ!sß¾}É¡aƒí‚ôñãÇ“)D°k }ú­[·äU»fͨ–Œ·L¦PÝ0€À!j#f7mÚ´|ùrj%öööJÝÎÎÎ'Ož„·ƒ‘#GºÁªêèèȼ&ÀÍŸ?È!°’°*w,9rª…l2ûŠtö@CC„F„FCCSŠÐœ¼týÍëF ¢1fä;·á¦·mÙÀeg B£¡¡¡¡!B7„nÑ¢… ?TNAkJVåè ¸[h"ô•+—/[´bùb?±ˆïçë³ k–¦ˆÐhhhhhˆÐÍ ¡e ª‰Yvv¶<–ÆSå¾’‡Ð9Y 0¿xî,,`KQ™ãìü”Hdæ&#B£¡¡¡¡!B7«^h*MÉLË06™ŸL¬±o³XVV–»»»b„®òø6Ã#Kî+y WÐk×—¯_¿ yd¢XÄ{õÊÅíõ+>7 Z^¢¼i¥ÐêÓ-!/¯  @U„nžG–ØW 9DBàqåEtä@CCCCC„nÍãd¢é ]%)ÑäjDèÆîÈ!ó&Õl¬bGZ ­Îš9DèŽÐòz¤eþ»§ƒÐøZãrä ÐMûÈ*uä@„FCCCCC„n>]X("4 Ç[W#µ6º"wb£5dG5}ÓÞWpÀË&y©®,a¡ Åjz½ ´XÄC¡P(”ª_„¦>>¡>B+p‚EGަíÈQå¿ÍÖ‘…B¡PˆÐˆÐ*!´<”¢ÐlŒÈÑ9”~TØŽ,¹¯*#tfzìËŽ7¯›]±8wÕòÂkoÞ0%t ~¯›]¿véöm ëë©ÉQÍ¡É3„š˜˜íôôèîÝÛGŒŒ( U¿Ú»w×ÊË@‹/ÔÖÒ$ÄÎËA„F„VŠÐhÍÖ‘C©_G³ÝW•ú¡ÃW/ܵ¹b{ïšÝýëöv7ìozh‹$^6?u׿z³Eh*9S§+#ôwß~;kÖ,µLCCÃD]S»ìž={f̘¡^Ù lÙ²E½²;wV{c'L˜Ð¸6¶:GVuôèÑ;wÂëœJ ¥vìØAL¯X±BOOOAæ¹ÓæökÝoاÃ@C?JLêвüöëÖ¯.wÔÞ½{»wï®^Y¥ÛЮY8²4ˬ–ÚòåË'Jíû￟={"4"4"4Ãáu¨V¡ïX]qxpóÝÍ{6×nÝ´°ºeaeu…,²¾s=~xÇöžå«ËèÈ!ƒÐ•Õ©cGKKKõnn»wïVûƨvÙ´´4333õÊZ[[‡‡‡«WvÈ!jo¬±±qãÚØêY5vTvvvdd$ÇSic“’’ˆé§OŸzzz*È\XX˜ôÞnݺ•D±µk×Â/‡Ã©Ë•žž®­­­^Y¥ÛЮY8²j—3f "4"4"4Z ´Õ-³{w¯_6¿pêäq“ãÇLL¨2>ab|æÌ‰+—€¥­ïX B#B#B7|„NLLLNNV¡}||ªTYRRâææVï§1"4"4"4Z]"4Ÿ›}û¦Ù‹‹’’á1Œ‘’’’””bccma~šÏÍiæ­˜ŸAýúö±··WïæHí£Úeø|¾ze¸ŠŠŠÔ+«¯¯¯öÆr¹ÜƵ±Õ9²jì(¸fY,VYY™JûâÅ rZ(ŠÅbš¸·‹z?9ÎÁƒÕ+KcÈ5 GVí²sçÎ]¿^ ­ú}ãÚ¥S§ŽçädgeeeddE§¦¦&'''$$EÇÆÆFGGÃï©SÆ·o™#B+Eè÷ôèÞ¨kµûw”bóöö,Tµ”‹‹‹«çêê /&õ¾—x<žÚÿM4+[¸pá¦M¡¡«DhÜ?hh ¬Bç^¿zÑØø(<€²³³333¢‰ŽèÄÄD h¢#Ò½uÓŒÏe4g„VÊψЈРaG½|ùRŽÍW¯^©±zê7"4"4"tDh7444ùV¹Z‚ÐÇŽ Íd2‘"tNsjG'۔ɓ<<<ðF­ÔÈ/×Ðj|G©Ð #44TÕRùùùoß¾m{©¤¤îZx¶(µ;viæÝ¢’©W¼Ñ"t¡ÊñÒQ(’‡Ðb±8'''++ (šðåHJJŠ&|9x<^3GhyAí*kîœÙ *К†Á%YwUK…„„Àû5£FdZm„~^³fR~Û·oŸ¯¯/9»cÇܪ"4\ÅªŽ¢HÚ›¾Ñôý°»{JÑ2üŒ_#"B×»/´R—y³JñXÚ¡«#g§Ç­Zµª‘¾S*ûÉL+ͬ¸TCFèºÙü¦‡ÐB¡PB!B#B«‡Ð,‹&?WHÝkwïÞMR4ÆŽV¡ášMNNV©uhoš/ÝôÝr€¢/íØGåg¾³;ò3"tÝ#´J=Æò<=”vJ+ίti­#4;ƒPÓCè|>«¦ºr7¬bङØXºV7¿©!´±$.´„†Ä÷C« B#B«€Ðººº4ù¹2E#B«Ðaaa C¥"j8BÇÆÆÒ÷aöôð0ÒÛHEhÆ#—Õ‹–¨1„"ZÓAè÷ WZRT÷ûf§q•yª™_Þš BÓŒ…E|]Hý%Åç1[·n]Û Yy•šBWó›BKø6aHMÞç„@ѧN—ðÝ|ÚÈÈH¥üÀÏ¿ÿþûƒ^ʱ€€Å]}„600Ø·o_³BhŸ‚‚š™Ío˜ëlÑ«Iµ*++£ÉÏä÷ƒTeØ9é.^Š]/-¥UEb:¾ÍŠ ¹>Z,xëõ\Àgñ9™o½›B/´™Ù…O?ý´V’~†&‰Ð5²ù¡}\É+ˆÏɺ}ÓìŠÅE‡©©©Uµ ¿wׯâòyë;|¡ÙE„nâ­*Ð?ŸãœE/߸œ>E³ÙìÀÀ@:9ï7ð2»NòóÒé³.;o±Ç€H)wóß¼hYll,’m3Dhä,BÓÌ †/tE}„³£ t:¡¦‡Ð\ã³Ï>«¥tbV(í°møHY›ßÄÚñ±Í“G6ö¬l¬¯Ýµ¹~ÿîwºwÃöÞMÇÇwï?´¿…­*B{xxØØØ¬Y³†Ïç«TV(®^½zÞ¼ydX<• Ððï%&E'&&Rû]á="..®ŽšÊÏjP´¿¿¿LøAÿ&ìÛ¾ÃÇüðó¼‰S'më›·€¢Ÿw¯ÔõõñA¬m®ýäê¡Ь¼l*!´R_èúýœP¡óù,ž¡™M¡?ýôS÷—JÅç1k0²q“ŒÜÌ7¿J1¥M¾þóÞ#´Ëó®/¾~õÈýõã7<=ž‚EBó(Í¥t#¼yëÓ¼:4ÄÛ6}PŸÞ½¡I„‚MII^»vm~~>}~ÖÑÑÉÌÌ„}‹ŠT{Â’üLEè†CÑfffiiiä,PëÆôÄÖ8BWægU)Z¥¡ ¢÷lÙ¶xú̇’‰@ÑÓÿÕD~®3ËÉÉ!þÜ>|xý"tŒ¡¹õÐj‡q®¨^P;:Qïê¡óßz=“"t†¡“;áœ9s¢oŸÞÿü3Ô¯_ß¿ÿîOLÃs™˜ §³2“•~ÀØ ‡iæ›O¡“}}^‘W¼{ªˆÐY„N'…Ý${¡/]ºDÅW„~ðàå!4L<þxXOOE¬^½:++‹h‘Ãᨴ?a­ 9r–ŠÐE;884(„+..Þ°aƒ<Š®Y„–ÇÏô)ZÑ¢½½½óòò¨‰j»è 5ê^è÷^÷M‡fg£ÓíLŸÉ•v#B«Ôî™ór˜•„ø(bÚÑÑÌCF¡¡¡kÉíHЦ"4êÅ‹‰‰III g777&“ «¸ˆ@ ÐÑÑÉÎΦ¶èââ¢êÇnòº!Xe„ƒ »ºJú¼Ê`0ž<nfnL®?Ó¤èÔÔTÅž'UšA?СѡQ(DhDè&@Ñ$B?›ššªT`Å;wî$ù¹â}=‹¥ vGÓ@h‚¢×¯_¯BGD ݼù?.´twosïÞ›Nœiû'öË/,WÌÏ$E¯Ý¾V^[îîÖÀÛÍÏѡѡQ(DhDè&CÑ›6mj"øÙÜÜ\ÕJÊÊʪƒ²ÏŸ?/--m}éÒ¥ððpNU–››»téR¥ýàåËöçÏ·(+kQQAªUrò˜Í›©ÉÀ±Ót¦™d˜(Eè…‡:¿t†"™™™• ÞžÈišc¾~ýº°°éºŽ%3ö …]÷½yóæmÛ¶?_¾|Y½J’’’Õ+›““Ò4ÞDôõõ˱aÆYXXÐGh.—Ûc÷n*<“j¯ú´LoðÔUSS4ÉÏ` Æ.XÚb©<Íj1Ëò‚%·'ªw:"4"4"4 …Ý´ÚÎÎÎâ½íر£M›6£G¶ ­ªÉªúPËÒÏÏϺ†@þºººÔÈP¿{ÕÀÀ@Þ:X[[Ëð³R„607o‘ž^%BƒþÜ·Of˜Å üüôŇ7ŽåZË [ÊÓ–[è t|||bb"¢ "4"4"4öB7«`wˆÐˆÐÍ¡322’(æïïoooOMQ5¨ÇsssSoeÒÓÓ#""”fc³ÙÔ5ŒŠŠº{÷.52Ôï^=zôh•;¡J~VŠÐ“÷ì‘ÇÏ o¯_OHH)Â`0¦¬œR™¢eø¹¦Þ}hŽ–ˆ††B!B#B7I ®®N >>>,K½²êEuhhwòäIgggšü¬¡Ç+DèÏàŧr©ÜÜ\Š^phãsG™lÕGh‘H¤öK"4"tcé…n2ƒñÉÄ…®¼]2)ª‘F„F„n¶Miu> +))qttT¯lrr²ƒAÇÅÅ%%%ÕìN&—Ù 8è4wË… lmmiò³R„^sìX‹‚yÝéÈyÿH(zÅ;Š~~òìIå<ÕGhx™pÐhˆÐˆÐêY Ž½ÐµMÑŸ+OËï»Iá]«&‰è !­À¢¢¢Ô+[¹ÿV©ÕøçlÀÏ»wïöõõ¥&óx<:Å_¼xñàÁr–ÅbYZ*QÅíö“¥eÕ-ÿ»c‡‚²999@ÑsöÍ©’Ÿk¡14"4"t-!´z8]ZZÄe§Â^hª¦Nü9 SÀŠM¡«Äi:½ÐˆÐˆÐ4-55544´:5899©÷]¡z]Ê5T­J~V ¡+hŒÁM¡ÁôNžl#ËÏåå]Ì”ò¨˜¢ßx¿‘·´šM3´@ ˜5kÛ´i»]ºta©y ô;C„®YœVLÔÍ ¡IŠ–÷Kêæ K.‡AÈâ²)9íìô8,4€˜Ž‰{øÐ¶ijWåß ¦Ñ‘ZUóòòªÎô\.×ÃãÎ:¢ FPPPíñsý"tiié¦3g~63k‘—'çÒÒ–ÁÁý7oöU+ ` "´››NÓÒÒÚ·7ƒÇ>¡©Sw# !B×;šª¡ãtUÍäqÒßz¿d2’Ð9è÷B7Ã0pHúÝïž*"t¦°€íëó¢PÌ'+I:ºù tYY ¬zîÞw…‘‘‘UŽîWãàMŸŸë¡ ‹ˆ‰Ù~öì¤Ý»çïßÅÖVíà5…Ðôýg¡›BGH: Z¦Îº!jØÛܼ4BÍ¡ÑZmç ô…F„F„®=btwwW»xII‰zƒžÊªáa«ô»¶ÄÄDê'€ÄÌäì±cÇÆO˜OÆtuuë¡kêƒÐJÃAçæænÜx´|ù ú¯¿fé––öH¼M¡ßƒ\3GèZíÖ®ŒÐ£FÒߤgmeŒ½Ð‘Cž#‡¼øÍÞ‘ºÆ,::HIíâPV½ï CBB²”yùʘH$R üÅÅÅÔ±¶SSSgΜIÎ2ŒÙ³gØÊ1--­ôôtš+óúõkúøõˆÐ{×ï7dž<Í8ãÙc¹ï2J‡Â¨-œ[´àHUB"t‹"qðàíH¼ˆÐ ÍBWn뙳Óî[ÆýÍ7íºví¢¥©qêÔq7g/çÌ\ì…F¡"tn’¯÷+òÞÅc«ˆÐìL¡@ŠÐ">Y ºy"4Aƒ@íâÀQÀ®j¸‘¼xñBÕR*ˆæñx .,))!Sz7nÜYeþ]»vЬÜÏÏÏç7|„VÛ脃–"´'…œe5dzt4]„Ϋ;„® ¨•©U± ±RcU3Ðl·6Œtäà°RC‚ý÷îÖ_ºtQî´iÓfèAÛ¶éÛÚÚ¤¥Æc/4 …]Ûììì¬öØ%\.W=oÀÀ@ƒ¡j§7ý‘¦¡×®]+ýƒ è*{Î>Lß½j ß‹ÞÚßß_©£;"4"t]"4I§*¡,Ïôª“¡ú#_hvúËçîß½±ßîñÿŽûæ›oºví2oÞœ3gNøx» òóP(DhDèÚ°ÜÜ\yÙѱ7oÞ¨1èvII‰‹‹‹ª}×ôDBïܹ³rW*AÑÑÑÑ2鯯Æ4+OMM¥ïÓšÎÛ„¡¯¶h(ϱDâ€x¡ë¡«dZš­‰U­¡nNØÛœ¼4BT„~ëõ’tä ¹ÁA¾æf—/_Ò³g¶m¿1bX#í Æ^h"4"t·ÀÀÀÌÌLõʪ=^¡ŸŸŸªì­ @40³P(¤ÎîÞ½›úÝ_vv¶ŠV ¡óòòBhGœkøíãíM Âd2=|Hî.yVPPðRjÖÖÖ¿ürDèQ£–éaaaH¼M¡Ik°­Ø%C©OˆBVÚJý"´ŒrsÒž<±ß·o÷¿ÿŽý¦]».]:c5 ºâ/é >½{5C„&:Õ¾$Fjjø¨:N¢‚Á>rssõôôHŠ&Ú××7??fîÖ7oé®_·b%IÑׯ]Û´h©î¼…tjHKKûá‡3Ô®V-''g—Ô†ÞܺâcwhÞª"´JŒ­Ô—£šËN÷ñzÉ ñ9¡°€äkfvaÙ²Å=zt':¨·nÝl{ߺavPc/4ª×È[ïWäÄU¡¹ìÌ)B‹E|åˆÝÌ{¡+¤_©ñ‰õo}â»B.—+ãF«ÀÙÛÛ›þwyJ} 3Ö®]KP4Ѐܡ¡¡ÀÏ—/_VZsdd$ý®øj’ÞpøÙbA…{@‚ÍC‚¢awéΚWúÚOøÂ“&EÃõòãÇ߇æàLž¼‰·É÷Bsê¡C¬„,~¸:7 „N%¤BWî ~üøÁÞ½»ÆÓ vP{{¹a5 𾥤¤¨ýç;›Í~óF2Ò´§§'5^ôªì°-(((//‹Å¯_¿®ú9ÓìW (ZWW*'R ÌÌÌèÔ äO¿Ç¸ 4ì«U3f?Š^1Áúù‹€Ÿ‰îÓ×s§NWZ££ãöí'‰XРG\t›B¿¹úEhú~шÐJ;¨ßššž_ºtQ÷î¶mûåðáC뽃{¡k56"4"4"t `°Ú»»»HSZ?î €¸@Ñ --&è*·d¸zõꬬ,¨ÿÁƒ›7o¦o0ž>7^h‹K¦ÖFÆ$EóœÜH~.zå³nÁâe_MÂÞ©ö@ähˆÐªRt…œ@sµçÈ¡*‡×-B§ùx¹0rkðQ˜“úè‘Ýž=;ÇŽÓ®Ý×]ºtž;wöéÓ&Þ^nù|‚(ªq"tâ[ï—äïž*"t¡SI!B#B“éääTå¸!áááŠË<“ ÏzÅþ¾¾@¹ÀÞôºâãÑqqq•׸nÑ¢E¼téRdd¤Ò/ãH£ïÊÒ4º2E«ÄÏÄ«Î0ñh¡Së¡å¥TTûkA:7d/tÍ#´Lu@€ÙA}ÜøŽNØÀG'T0Šwsº¶M^¨gÂ/B±EEEݹsÚÈȈÎwE»ºº ÓGh2@4ïÖ­›¾¾~eŠËÊʺ}û6ÑkíååE³fúqöš Bƒíßµ;øª5¡õ-’3Œë ýñhСë¡Õ­jdé&‰ÐÍͽ¡ñ"e•[!CÎ èº"´±±ñ®÷¶}ûö!C†¬X±bÅrrrTª022²rÜc: fbb2~üxú+ƒ·nÝjggG¡‰ÑPpÏž=°uáááUR´¸ uòx<:9ûÝX,<,LÉrÒƒô‹¦ÆèP°ciÆ0AC„®„®¨ÞÈ)jd@„®¯^è©S'NðbåNÚ¦ñR@¡±{¡#7mÚ4aÂ--­”””êTõêÕ+™¿i"´““S»ví€äwɱ³gÏVWMMÍ .Ð_=àm¨ª¼¼œX+Åíáá¡” ƒFsÌ8Iª30zCægšÍår}||i¡ë¡k„À«L—ÇêJžN)D蚢hy¿¤nÞ°är„,.›’ÓÎNÃBˆé˜è°‡m›6BSOT¥}ìèÈMòóÆ###*sssµµµÓÒÒÔ®­¸¸`X „öôôL¿¯xÛ¶m„ ¹V (öC\\šE"W„NG½ÌP,nnnb±¸0p’¬š5‡äg±‹÷º‹o8L¥è :«ôÃÓ|1é1húK#B7d´VÜݰîóØ ]ËݶÝš~/t3 Ó­ ÿ9**ФÊÔÔÔI“&Ñ£JKOO§î „–‡OÄç„°&[¶l¡ N÷îÝÛ»w/MGàgƒòòr"@4u­äQtYYðÍ­¦ùEarròÚµkez°!¥Q4쨭ëÖ‡\³!øyíüE° 7®X’}róö'VY6??Ÿ¦¯Ž_@ÀWsçº( ¢‚†]ï­ÀO¾5Fç ô…F„F„¦c%%%6l G¬&©8vúôéêQ4òªU«^½zEŽ6B…U&“¹zõê*ý`Ɉ4)úþýûæææô#r@åD8Ž€€‹%ö@ÑUz°ÐÿNfNØ+W®¬ìÒ)ÚÇüÁÏD"AÑ'6mszüD^Aú]îËlÁdÎÝ»éº!týf±š†#‡¼øèÈ-c[·n%ùY†u}}}çΫ^¨g‡£££ˆK zBV ôéò>»£Æ…ŽŒŒTü¡Ÿ­­­©©)ákAÿsBÂáähº—oÃæÐÉéêêJç9¡P¸dÉ’Êé‘¢”yï¸guÇEþ(°í4ëï¿màH¯­[iFçFC„FC„Æ^h"4"tݘH$¢ÎÊPåË—/Õvçì\¶l™Y­b~ ¡þÅaeeUeN¨öâŋĴ]! ½k×.:9¹\.Íðk°Â4ãHÏŸ?¿ÊôFGѪðsAA¼¥ç--ûΙ3f×.ШíÛ¿uv„nçê:rëV"±ß‚‡+}RІF¡Y©„°ù…]³V¹cP“Íf«WÀçܹsÝÝÝ¡Z¥üLß¼¼¼H~È¿v횪•$$$¬Y³¦Æ=4hó=eÊ”@9öàÁƒY³f5Uvþc²Ë³’’=cã¯]r®¬ï¬¬–ÒÌ­A#ô{C„®s„N!„½Ð("4"tm#tii©£££P(T¯B`fÀÅ©S§Ö?ƒÕÈßúeeeóæÍ£™™f$gúÃ|CÓ¶rÌÂÂbøðá,«é=Áá݇Ïç+ÍæèæöÇæÍ-¸ÜüÌçÿ®¯ïã0/h¡ß"t½!´HŠÐ<&7OŠÐ9Ø B)DèœÄ·^/É×ÿj!4ëC7‚¡c¡›,Bƒ>yò¤¸¸˜~g#5èܺuë ´~ýzjb½l¹¹9u&L˜°sçNjJLLL•ãââhFù£Ù_-Ï ›Ë廆zþç ÜŠŠŠèSãíãÓîæM¡ÛÞ»çÒ„†tl¾#Eh"tC@h¾¡ܼT¯Œœ„æFDB!7(2ù¡k¨íó`Jž^…Áyg \#o½\È+ˆËNS¡Ó yR„æ‘•€¤ŽÝ„ŒÏç;9951õÔÿ*.'ŒJ×/^¼ 㨺Ÿy<^Såç éשô=‚Ö·`0Z”•}öôi‹’’<ÞrCCD ÆÐáR„NA„F„®÷^è ˆd ”4fQ§´²œ]ý]¼«\„jVJgÁy­ÔÂÃÃå-b04‡i’&¯{ÙÂÂÂÚÚšœ…`ëÖ­j 4ðóªU«š¤ÿF…ÔÉ™fÐlÂmÝÚ"'§çêÕWîÜ飫ûIZZ¿-[¡Ñ¡kJ_…&çˆã³Ä±™)*M``|näøñ£&jí08žÄ•É€jV‚3·—¡ˆÐˆÐÕ´äääÀÀÀæùôñòò’‰^R™Ÿ‰]Dç+E„&ø™Éd6™Ý•ŸŸ?aÂF-­]„6l8¯`ôO³o&O½já8- çíÚõíÌ™!aa m3>x°|æK3sDhDhDèÆÕ mû<8%W™Z@Õk¿„é k.¼úÑ\]Çy“ÖNÖš6ëéë™lÕÑO?ýXƒµÉÔL¨–ꯃMh˜‚óÎDhDèê tlll3|údggGFF*æg‚÷/^¬´6™¾a¶)ñs…Ô¹¥}{³-* ²R…ÿ7otwï–ùhô†½ýƒçÏkdÝN<µLk©…Ú øU­Þ§ölÙúàØ© ÷KW7¯^£vàDh´:Ch6+…öB%f C“ø¤Ìo9 ûï,Ã)z.ó×½|§ùg§?þð)ó.5³Úþ¬‘zT[KMÔYý Mpž BמBCü·mÓõéÝ«É#t…4´/wß&f@tÔ¯áªägÂäÅ|nV&ƒÐššúôË+>ÁŽ9¦·COž6ìÜ ˜f—k-7laHj~ûù4¿%-"<|Í‚Åi¶ŽÄhæ ¶£ëæ¥+<äXä999ÄײÇo M‚\ "4"týõBÇeäƱA^¡kôwŽž¬¹ìÖ,žIéØÏÕ\£===Û¶}J’se ¢dPuWWW¥çU="ô¡}û_Ÿ¿RžIE޲ݬ»úÿìt×¶†'½N éÉMn’›žÜä¥@Òn %@ ÐL³M'”PC3=Bc1îÝÆ½Ë²,˶Ü$˲lYîí¼- Be<êmÿë_Z£Ñô93óÍÑ>ûTž ¡k¡¡£:W Ï®Ÿ Lüè«ÿiÇoè{ÀÌþ³—¬¥§×7p þ0óHz€åÄÝŽdÃÒγ Îf('ˆÐˆÐÖUKKK@@°´ç<€üüüèjç²²²ñãÇ#=c‰¡»E芊 6íUˆÐ[6þÍ;|†¡ë£þ>›ýkoo_¼xÛÀ¿—”m}v¡¡=­š¦hƒŸEY’èô2Ú_ 2|× „þ¤ÿ×ÏDh¦×1p þ0óHz€åÄÝŽdÃÒγ Îf('ˆÐˆÐV—\.õ¤/4 *--0a‚AŠF„6¡á¥ŒMîq"´X,^é;¡.ñKNJb¹´óçÃÞ|Óû–[Ò)Jñä“˽½Wêg}A„F!BÛ¨:+ O.¦½`Ŧþ¾ýñóècCú|þ¿Ð$fzê3¤XNÜíHƒ_M²“ì‚Ê "4"´-TUUÔäMT-怢õ™ÇÃúöÛ—ST¨ÊUZðœL|ã /c󦧧—••±YË×ÿö>çmÌýfô³Bƒ¦Ç€Ð3F{±é€¾°°è‹/¦Þ}÷QŠêÒ¥oä¿òÊÔíÛ#B£l†ÐE´1 (%·<8Oûd`Ò}?ŸxÙ0B^<ÀkêlÍÄú¦ƒ{5Ã:ÝŽÔ™ÀÂ%˜ggØç4”DhDh‰nsç *))™8qbss3"4­¶¶6ºÅe@@€vFŽÏ>Og„cȲot¶CCCaË—/ÕSXXs|‘…½mÓfîÁSÆ¢8æÏœÅf!ß~;¢š VÔ?ñÄïtBl·Fè« ×ÞÞ‚d‹í¨ZèÄìÒK±ù?lÄÏo¡¿ü¹ß†í'´'Ö1p ýIh×ilX{viØ,A3™þ6°´ÃwÁi åÚvr×dÑK—.-((0†Ð«V­âp8@Ñ7nÔžkóæÍø°ÖIj7p`7¯À½ &­Ú¼°‡Á ¶¡%ɲISŒEq$²»À1ëòÌ3~3½ B£lƒÐÅñqAU¢¬…ŽÏ(ñäh¼xõޝÇôÓççñç|ïãOOghO¬cà@†_M˼¥Yh7Øʉ ¡ â‚5Wé-ÔBè"¡¡‰›&‹nmmõööæñxú ü åÊ ýÈ#K)J@»_?¦ºÙÊÊÊääd“–Ÿ’’R\\lƆÁÙüáÃ,Aèúúúßý`¡§Ã&ŠÃãºÚáµÐgC3¢’ùþ9gB³h¹ø½û¾ûá'`PºÒï~øñÐß¼4“4#óÝ΢]‡lꢬb7Ø[JHd2ÿLH"4"´MT[[ë~íëëKS´¡‘ŸÙDt¬_¿wÅŠ´#"˜®‹‹/²iE¨‘X,†W63¶ ÞòbccýüשÔTû?ÒŸ=BC ‡­Ý¿kÏ´ßFÏ;AÇ+/a¹DhDhDhÇ:%[p1*;<‘™\ qxb>8ì š§ô¥á«ödhÏ1”('©9DhDhfM›6Í’TÏpjZZÜí™=yòäüü|¡‘Ÿ­«ŒŒ “*ÎýýýMBnZ555Aª.ÂÃÃþZñ—Æ›×n†e²Y‚T*½té’UzNA„F„F„vl-tcc-pÑ™Ðô“Ah´QŸ É€rÒÔX‹ͬeË–œ( “æ‚Yv¨µeË–)S¦lß¾}‡–Lí=Ùië¢GŽ9oÞ<äg+ª¹¹ÙÔãjÆŸðnxñâEKÒ˜WUUZ+úÂ…Ûî¿5Eµêðóm·]y÷Ý‘PÞ¡Q6AhIm¬…F£M2"4"4³üüüÚÚÚ.\¸`R%XEE…@­Ý»w?ûì³_ýuNNŽf¤{tbGfذa—.]±…JJI6s&=fÒ+‡ÃÉÍÍ5ãÿàgKþ©¬¬ 2£êÛ d2\eqqI|0¡G³j~>ÿü´µk÷Zk-NÐjC„F„vT-4³/ùŸ÷?…܈6†ÐòºJ“Z^'B„v{„&ªîÒjjjL=** žÑ°€œ‰'º}÷ß(ó4rñâÇïêê‰D&]/ðfÇ>ñNŵ%iâJKKõ­µû………ÁÁÁšhýûϾôÒøG]4bÄ[7%@„F„6€ÐÕÅñ±AU•X }Õõòê©3|îyèÎû¿k̸5R´¡+U­¾‚òªC·²DècGv)ä’†zB7ÖiF„v3„¦kí% ûy£££.\HÔmî€:¢QõæÌ™w:{åÊ… Ø×¸Â”þþþ,ƒ–µUeöÖEFFZkßáþ ŸD½µµÕ>Ùlœ¡%ˆÐˆÐNZ ÍÉÍxõ­—Ÿ|¿çW§ŸÿÆÿßÿúê¡§Ÿ2!>ÊŠ[EQ”ívÙ¦ ·óZœ¡ÒƒØ"ô‘Ã;5ˆÐî„Ð …âÈ‘#š&–©S§VVV²YTLL ÍÏD+m…±ÎûPž¬Ôôô{¢úOžlRV:(cb±ØÔÕ¥§§›½µ<ÏZo'ÃË’vpÁNY»ÖkÕ*ÚS×­3õk¡¼g÷ö»ï»óµ‰ }q`ØU¿³è±{ì±pñ<@ 'çOJ%Dhû tkKÃÙÓûºEèÈðó€Ð§OìmmiD„v³Zè}*Dè <„††–––v[˧ágr}òä’’ hÎûPž¦£G÷ž:µïœ9àWÇŽ¥êê(BzÍŸO¿5p`‡Ã°€í””S×›ŸŸmöfs8k]Îtðs}}½%üü¾—%Á¡£}CYYŸñãM¢hDhD艀6ÖB_GGUeƒ‡|à©»?Ùö´ž5þßñçžü¿žo½ûZ'“™*õ!–RKJ}"ÕL©ó«±%0/Ö<0và.¸B··µäsÓ.vƒÐ0òì©}9Ù)0="´ûrhS´¡i~¦‡###™ëñÂÃÃuª²µ[#üëÓå!*.)ù`âÄ›óò4øwÍÿš3gÏéÓ ³755˜ºÒòòrórGÓÊÊʲV·õ|>?$$Ä’TxúülE;B_9DhDhgð¼y³~åžo/ü[ŸŸi}ñ…Ÿ|íÍÿ°©ÖÐÉ@¤ÅfËÚvÁUº¾NTeEQÒ•¨ð á¡:>&0=-*'+±­­µ¾NŒí–±ÐЦZ›Ÿ5õÌÚý\3K¡Q(¢j£ê½bÅÃ{÷jà­99L˜PÒ]lƒykR@›§´´´ÌÌL«ìx||<,Í’%tvv~`ˆŸ5ýñ„ ˆÐ(ÓºN…ÐbYu‘ ¡yž\ œ_¯»´ã7ôýÂO͘5…Mlþ4ˆ¦.Áêí »àÄÍS!´@c…\ÜÙÙÞÑÑÖÚÒÐÒ¬Ð7Œ‡_a˜R>} ¡¯-D…ÐYžŒÐåe‚KçÁŸ}Ú×E›Ò ô«ÏÏ´`¿8Œµ#B£ºÕ3gR …ÿ^ž4©Û4Ë©©©¦väÝÒÒÔmvçÄÄD3òæé«µµ500°Û8¨nWÓ3~~ù™ösçv[‰ªÒˆ#ÐY*„ B#BÛ“¢}jû¹ÿ<Ó{Ó ýà3÷FG…"B#B›kDh·Ehš¢Ÿ}öY†ÆS3YYYˆÐ(³õÎŒJê«©¹9- îß½;—ñ½¬ªªÊÔ` ö]dF„…-ž÷‡Î”qqqtgîJ*•ZüŒB„¶gFŽ¥Ký{ÀÃÆøù³}ÏÞÿà= 2DhDhDh äЗD"yûí·™ódffvû¯4"4Ê  ܺõލ¨Ï½½ç¬[÷ØÊ•”Hä½r¥±é™;ònjjÚ¼f³v?Ý11„] èöööe n½€wøìØŸ~ÉçréñQQQV‰Û ³V?†–#´FNÈíHµ··J%ÚR ÍÞüÎ÷ÞÑÿò úÕ ûí'+›'l„v†]@„F„vE~ž8q¢ÏÒ¥K™):77711‘a‚sçÎa:h”¾¦¬Zõ°·÷’­[»ºº”ñéé¯zy½4t¨±é™;òÎÎÎþþþï§RS5Õo›Ð%%%c–µ÷‰J·„&,7iß®]½Vé‰>...##ÊÇÍ-ZrˆÐˆÐΓúß|wÉãúÉ·H¡Pü6m”¥Þß÷4}¶ûûöÓÃßþô­A„ÑsÄj‰Æ?|üC~~>ó6œ:v|Ö¨±Á±4?kì¿ê¯ñ¿´¤C¢ŽÁ¶z')ïŒMI$†Z$úÀË e6B×TÅʼn=¾¼eëßÏö}HŸŸ¿>óüíwÞÆÜM¡yhl.‡P¥ì‚M ×H|\°Tëö¥ïÄ„P¯±¿EE\4ôk‘B…ÐMuÚã¡]¡5ü ÃsÕÕYð¨e¦h@…$”å‚’æsÂg£l£1Ÿ5œ%B3¯hö”i'–­Ñg+Ï\÷ã/¹ÙÙÝnpkk«þÿ,ÕÕÕ.\hhh°úñÉÊÊ:þüÇŒ1@Ñ"Ñû^^ð&âZ-E„F„vÊZh±Hxëm·Ü|ëÍà[n»EéÛ•¾ù–›>ÿê«ó§±Ê^GÁ§ì‚cš“så‰'§wŸËIB„v{„~?~¼&ty®Ö? .d¦h¡P†O%”“ ôØc™W4sÌ8cüL;jÓNÿ³ç˜rò䥗_öú÷¿½×®Ý£‰ÓÎÏχk}gå,U__H‡gÃEú®—×um"?#B£°º[ä€ëåÕ`y\W[†¯xp<ÜÌ]Z’ûQŸ{ö|€vß¾• 9ˆÐîÐóæÍÓnú7÷ú ÊE‹UWW3Ì^QQlur@!BÛ¡Ï™[Í€Ðó¼&2¤òÈÉáôé3þî»OQßqGä;ïxEF&Àö[+‰´¶222ÂÃÃ[[[5càR½páOsæÐ»h‘IüŒÂZh4Ú]%âO<±Oï÷?íûÑáÃá†gLó–ˆùˆÐ’‘C¡Ù¨ªª N‡µ’ ¡m‡Ð)ÉÉG—øãçÎÈäß½}Ö`ÏÜðØc«(ª‰ægµ;ï¹gû A3­{@•/]ºTRRbõCµÐúÎÍIŠ 1øScƒ¬©±éÍŒÐÛ·o5ò×Ñ£†'''5*¤I‰ ð¼kÇ&DhDhfI¥Rxâ[Ò1Ê“ÅãñŒ0|æpcžôû$« 4s,sGß¾s¯‡çk~ùå¹V<iii‘‘‘mmm¶8ԈЈÐRI!m¬…ÖxëÖM£F¸ŠIâRYXóÓæÍaˆ š ¡K…940Ö׉`Œ¢¾*00€YQÆE„F„fVmmíÅ‹môÜG¡¬…ЋfÏQ\Ž1ˆÐŒ›ÄÅa„†‹^E-ïÍÐEú*È!BÛ¡« ic-´A„>yòè•„hMôÔ £Ï<ˆôˆf@h¸‚"ÂC""ÂõÕš‘ iX˜r$3"4"t·ª¯¯¿pá›^áP(G!trR’ÁXŽÎÈäYÞ> 3Ú¡»ººRRR¢¢¢lýWŽ!´ä¡¡q±—Å•ùX „3ª×šE¿75Ö–— æM÷æí™³mÚÏÿü³ ×H|\æõ_ÛŠú*°ÞHI½\¬5FŒ­BèZíɡݡ'MšdÉC¼¡¡ÁÏÏ[¢œ¡Aã~ü9týo›1ïÜé3Aèšš[d“vn„.D„v}fCèÿüg–Ù•ÏIII111vkGàx„ÎS!t"4"´3ÖBr²`ÂÏÒêJú§¿þZ›™‘l‹®ýØL騤Р= "B#B#B3¨µµ5 Àìl–„‚ØZEEdìXbƒ¾/PVPF™0Áy7ïÂ…ˆ·Þš|ÓMmx¾ááK/ÍØºõ¤ ”J¥p¡UVVÚs/¡¡±š9úRÀù°Ðk€\*ä76È’’âºEP jêèŒd9¥C(Ú`÷ÜÈÏVG芲ŸÇÙÔ¿˜¡—/WV­³¹¡.‰„ôïO×è’²2ØàêêêüãË/§ñx|#{$y×Ëë¥9sh¿8kÖäU«´ ‹Åfo@߯û~9êËAÓéû›ñßü÷Ãÿ"B£¡u(ÚØ§>BƒOŸ>žžž¤½Ý–Mý¥';Õ¦í ½c 8Ax¶E-tMu©B.ñ„fYªÝ ¡A2™ìܹsÚÝêK(2 4Ì qž=ÊÏ¿ö/<ðÊ #>zõt¼ÿ¾;ì°ñëãÆQuu׺á&ä®  ï+:;;ãU²°½mMMÍ€QV­Ôé€fuÙê£0G† B#Bc-4s-4x颹ÇîÕ|]³zåæÉC«Oþéõów qÑV¬…v,?c-´í·b¸ZÌ׌áåËæ¯Z¹9<³Zóçõ¥K—Š‹‹MpàÀS§NDhàç‰'Âß©öè•W®Q4ðPÊþjk#óæ‘o¼v.Ö®uù‰D¯yyQr¹6?Óîòíøñ+½³Á55pÔ@mŠ^S¾¦ß¨~ÝFV#B#Bc,4BK«+7­[±Æ{ûôŸìÛ¥é—ðÀ–µÓ~ÀËËô¨@äg–]ÄÏ kYÿ\}9"ÂZë‚+kÀ¨~Å~ìù…µÐÌ]-©Ø²qí¡¹#VŽtñâYí®½çÏŸkF,4CF6S:6„š%BÃäããCŸ»Ý;7Á˜í[7Ð_§L™äŒËR╘åË–€gLŸò¿ÿ}~êÉ'Ý¡A»±þ÷íÛwâÄ Àæ§Ÿ~zÈ!‰Ä9ù”•e /@€X{èèQrÏ=ºÇÿí·Ýa×úÎkŒŸ•ÎÎ>`ÅÕÑýgÞŸýG÷¯¨¨ÐŸ °°p•J .üF¥çŸÚ³ºEZŧµÐÆ9¶oÛ|Áÿ´Î4ùÜl<2ˆÐ,9õÒaÆõìùÀ£>òç’y½z=Ã#F oPÔ` ÖBÓª­­=þ<|üõŸþùì³Ïúõë·eË–W^yÅÎÙºLÒ¿ÿm€¢ë€îP¶“BAF6œZyùrDhs”œœÜ㞇õ_0ÎS }ä¡¡-:.6"+3‰ùÙ”æ„y]µ×ØÑ}z¿O{ü¸±ò:©V4r¸?B755%$$0LÐÖÖX¤÷§»\.÷òòÚ°aÿþõ¯ÀAðõõmmmuÎÝœ;—ë&cÔ(bz–2T÷JK#/¼`ô°çç#B›¦ššÿ¯~üjvÌì£2·ùE„FBèZ5BÆÅŠ+¸ž\ ýê+/Ïœ9‘$=¡¹ñ±—5WŽáU´FZ5kæ´Q#ýû YÆ\?M¡V-4¿¦Z¨WÁ€ ¡3¡Ý£zéÒ¥áááÌÓ$ª¤ùZ__?nܸªª*ž5kÖÅ‹a€ÇãMž<¹Í¾AÆ „°É´›’b”åÀ@zÀ{(k©«‹lØ L$¨<¼wêÝþê«n²§O›FuvCècbÎ\ºdÊ|E¸JƒF ú“óçFÙÆü,)Ú :S…Ð|DhG!tuŸ¶' 4ËZ褤¸eK³4’$"´1˪‹++Ë= Ÿ²ê"½ ®Ch¡Ý,ƒ E!?{yyiòÜÄÆÆÒÃùùù¾¾¾ö¤èFB~"¤œÔ=ó Eï­_‰£­ ‰„|óúÀ¾J¨ŽöâÅn²³‰ééÏΜIutèóóM<Þ—ÞÞþ/³ÇÄÄDFFVWW3˜ægÚË –³¡hçAh È!B;B§¥D” s=rsÒ£"C þÔØ ÓnTˆödÃ5’–É€ÐJŠ––46H¥ ýê¹Ͳ©¬ÛÄB³¡hx^Ÿ?~ÿþý"‘H3R¡A\.7̾iãÆòlFw“͘Á„дýT5ë(3BzõRÌåE¨BÍ3pœ³³Ýg—“32ž>]‡¢oÊÏÿÊÇÇ~îèèHNN†‹®±±qÈØ!Kr—èä…ŠþnôwÌ­9òM*„®«K%…Ââl7¹JTP­ujÐh´ÆpuÀ5RZ’cÁB®!´öx@hŽÔB{Tß,)º½½=((H •ÌB¡í¯3„<ªòï„4Ÿ,!¡{„¢LU[™=[ö¹'¡ªRå× „͸™R23Ÿ›4éÁ;®zëÖo&O6›Ÿ»ººrrr«Ô¯sßþö«ñ_ýòç/úî7¹_Ÿ/ú83BsT]íd _Ë„9…©%E™h4Zßpu”—æZÆáˆÐî†ÐR©”Ïç ŒhìØ±lê“““5ŽÐõ„<­¦èOÉ32Yg'yüqV øûï˜8Ú’wßUÀ•©æçD‡wÞ<7<µµµÚ×QGG‡¹G².¨’’í‘ …Bf\õõõˆÐ(6Ý ¨ÎÍI(,Ȭ­)Å:F4ÚÖ–Õ‹Ùœì¸ô¡Ý¡ÓÒÒ|}}×®]»Ã¾úê«­[·²Y<å[[[ŽÐ ßÔ ~†}„ jöõe…д QÝêðauÚç[5ŸPåj~/2p`SRð˜Pee%\P\.׺‹E„F„ÖùZYi]­(59œÏ˨ ¤BmJªŠü¬ô”ˆºÚJ—VDh—äèêêJLLŒ‰‰Ñ©+;~üø¶mÛØ/G.—ûûûÃ\GèãZM{$!2½É"#M@h:qô¡Cø6*…‚üö›úp=C¨KZðLû¿º‡ô™gð°éª¦¦&888==½³³Óê G„F„®󯺊_/×É*óó’ÓS#S’ÂSS"ÓS£3Ò¢3Óc³2b³3ãs²89W8¹‰y¹‰0Y>'…—ŸRŸÊç¥Ñ.,H/,H+ä§ øéE…é•‹T_|ø5µ— Ÿ|^jÌÈM.ÈOæq“òóh'r9à+y¹à0''!7VŸ›—“›“››“•™•™[•ž› @’¦4lyxJrxjRXJRXrRhRbhò•¤+!‰W‚‚¯Ä©|9!îªãcãb.)‹¶£U\yäáІÓ§NPb¼òdÁ)Kº¬<}pCSTç45'N·ò¤Ã©O‹ÌHÌL‹R eÁˆB’I;6'+NY„T‰“åJUÀ®@aƒ".P¡@ªŠeJ/…¯.®…ü4eyVip± CU¶3ü p¡²`§ñ Ò xiÜTžÊܼd.\&œ$¸^r³¡_ÉÎŒËJÍHk* ®¬´h7¥VV^/é6"´ÄBÃ;  ¼üj6‹“'O²¬¾þþܾfÍšèèhÿNÈSzý!q×Oo ?lEƒÿ*÷P¥¤huX3ˆP<=~NW5*¼þ`ΘGîšÂÃÃáבVáD­¹ö6Dh‡!tuUa¬¼AQÝØ S¹Feiƒ\M[Q/Q»Ji¹ÒÀÞ×[¤t–Õ?)§WΨ\Bøêb•«€©×(kj¤]«ôµGª¼¹YÞÒ\Õ- pkKƒÒ­àÆ6¥›ÚÚh7·ƒÛ[Tní ÝÑF»³£½³ÜîêêT» ó.9 ÎN©«§€>#ªSÓçH}¾”ç®]iÕÙTÙ6¥›”§»µ±•6]T¥¢¥YA(0Êb£*?P®–(¥µKx ]¯–Fí®]¶U%Y®õ©.Û"ò¯.äUš‹Esùh—sø —\tˆÐnÙœŠurrrTTÔñãÇ·lÙâÒ—éÏz ~œ?xˆhM6~¼É VÄð­bCÖ­#·Þª:8=õ·<Ó^nàH2vããAjmm…K¯¹¹Ù¦+B„F„¾†ÐhtE)ÇØÚEíp„ÎÎÎ>wîœUµÿþ‰'–••¹ô“â!„¦ÝŸ¡z²à`s ĸv-V`±˜|õ•ú°¼A¨x#ü þ@÷>þ8±A¨‚S¨´´tÈè!cg5è_}~Ý{d¯ú¯e¶ºÐÐP–Ý º B‹¡ˆÐj#½¸˜Ëé^¡%¥úxp¡¡ÍæçiÓ¦™Ýê_[MMM»wïVý/Ÿi»?”m­jBž0NÑ/r^5Y[¹ÿ~3) ô¨îRƤ•öy"¡„Æù9‹P7é=__w>8ÓNŸ:K'u3xuÙê£ЩÔsrr‚ƒƒ%‰Ý¶Ê™ú*È!B#B£Ù[*Qö mpí@~ÖQmmm@@€P(tчÅÆšötUo†£F™ÐàGQ’¤§ ^=fÍ"7бÍê¨qx¦½ÚÀ¡‹Œtó£¤OÑ~.,, ,--µó&!B#Bk!tA}¨¶¦œËIJK KJINR5Ú«je¤EeeD+[ieÅæfÅåå$äe'(då&äs®ð¸ªÖXÜ~~raAŠ@Ù+EpµVš  M9F5ÌW6BTµÛ‚¹T •æ$rU-¼”M½râaùœœxes¬8Xª9¡²iXvFÌÕæ„à´(zÔm ¯6'Tnðµæ„‰¡ªæ„!LÍ c±9¡ó5'ŒÓjN˜@7' Q6'LÔ4' KSµ(¼Úœ05BÕœ0RÙœPU6TÍ £³3èæ„±ª"wµ9a¶²tA1S•Þ+PzéE±@Y†•­\Á|žª¸ªÊ-`UsÂ4¥ùéÅ…ªf³`^*Ÿ§*ÆÜ¤|p®² s gÃZ”…V¹öÌXUYU6xLMV¶xMM MMŠÈç$+›ÖUj_ƒ`Dh[ tppp·‹²?k”––Þæ‚i‘÷v‡Ðà>„lŽ´¡Á@’À“–uÝìJ*( ï¼£Þý¾ªæÊîü‘W[['¢è™!3µù9++ n_ùùùÙ§AèDh‡#tmMi¬˜™ÇM–V7ÔW7*¤´5ͬô*”§®5¶ºÞ•*‹ÔŸ"UK+ÚÊ%Ð „ÑË¿º:UK«&¥¯µ(ln¼Ö¢°¥IÓ¢PÙj¬õZ‹Bº9¡¦Eas»V‹B¦æ„ØœÐq2Öœ°C«9a;ÝœnK¨iNxµ-aÛõm [µÚ¶\mK¨jNبՖŠ–¦-áu%\SȯïëËv¥¼¶Róy­`_³øºB®n<Û Õx–^]DÈÏOMK ¯•UÔÖ¡mÐÝ&X¶?Óª««ƒ)..v­+U¬j?Ø-E?ÕEnŸl Y„©ª¶t{K¨Ë,à™ö_Ž•Gu›î;Ç÷Ã~:¼q"4"´æÈÓ|×Ö”×J…9hOw_ª¶v¤™g”IK䵢ĸ ¦F"´cPÖÛÛ;::ÚX?¿åååAAAÉÉÉV¬¦®¯¯‡­*ì®—>àŸ'¨“ÝÁ¡ïoV‘^&¡>¶”¢ÁÀ™@›n¦ädòÜsê}J(>k~¡{ˆxÀƒ:LW(ƒÇ8e`Tl”³3¿«*êˆÐ(³º®V¤zô#D¡=·Š¸Z\Èåd¤$_‰ŠŠ¸r%Ž“›.® Ç[wF¾¢^’Œí ÀÆÓ¦MËÎÎf f‹/]ºÓXñ¿ã¬¬¬–¦Mø<ϱϋ2BcнºÈ "ì•j¨S ´ Ìéêì$kÖ[ècr7¡¶˜Ïà|Bݪ{|Fö$~ö¼¼`ùFÙÆ!s‡˜AÑŸ½õÙü)ó þ$‰Þ|òÍs'LÈf‰Fk\#)*/-ˆŽŽÚ½{÷ºuë–.]ºfÍš;w†……•skŒG7™5£ë!4¥’þ°u™‘@ëv}_ÓõàÇ#ÔVêþT%vIª;@¿‘P>ŒiŸü­î1¹çÒâÐüüø´ùYCÑ‘1‘&!ôjɘ{Æ,œ¶P‡Ÿÿ þCÁZh”ÕÚžäi£å#B£»umMYJJ²’·o«¬ó7lX[*T‰ËO<1oÞ<`0©¤„yÆÜœŒjI%mXÂáCÏèòmS~¶±ÖŠ…ÖP4Ð4?w›(š}eo{{{|||XX˜B¡°Êm9$$dêÔ©sŒhèС£FràSã 3b94NPõ[mqâh RW©zåñÈÛo«7þsBå˜ËÏàŽÆ™3î*2™lãö ŽKŒ3¡iŠž>nº†Ÿ¡Qf!4¶m0è‚y3¦46‹©õÉ¡å’V‡üì–IKJK‹×¬YsÁÿ|AAÞÿ½ûNß¾Ÿp8Y½{.äs“’Ö¯__P_S]dlÆŠò’}{wõèqç¶mÿÐK(ðŒÍˆÍ íÓœ¦è7îÝ»×ÇǧÕ6v466FFFFGG·Ø’튊Š&L˜ÐâP|Ü`^,‡ÆBBy[!q4p©£û׾}ä.ºâýVB-e—ö™ÁuBPðdL6BÿNýþî³ïì5ðT»0B_¹ö¶f<ËΆÐ«[»¶ÖÈng1»Ú¼-Ä€7â(-,,X±bEâ•øU«VÜ}÷]ÙÙé¥BAFzòwÜñÏ?çss7mÚ”%«.16#LÞ²eÓM7Ýôꫯð ò૱Ý¡¼ZCÑýúõûöÛo[mÜé]]]]HHHbb¢vî;kÕN ‡ó³²Z•B?ÒÉHƒÇT! –Q4Ð)0ªsJ.'¿ü¢ÞÔçb<ƒ‹ ÕC÷üðRŒ‰ýÉp ?|o \›çOœÿᱡQæ!´DÌ£­…Ð×NX…ˆ<}k78lläõ@Þýìgѯ¿aÇk–iÆÆ[¬±ƒƒv9ˤÅ"Q9°npðåµBC UgK˜Hþõ/õþ¬Ša®´Øû ìû±cH1lÕÜÜ 7“o_ûPy65ûû÷¿×¼Ûž?~~ÈcC\¡3TÍÓ€"´Û#4ËE1ÏbÇê#4ûýb¹/hµ´Š_W'…›ÒŽ; ùÜœìô>xÿŽ;îøè£>œÜLsêä‰ððpiµ˜aÆœœôwþû6=ËŽí[€¢wîØjlFWAhæjgWAhÄbqhhhtt´ÜàuäÈc? …ÂuëÖM˜0Áò$Ò………ÎÃÏ 5ìúÞÆî°°‚P‹ $:6ÕÀ«@­Î ÎNâç§Nû|¡¶[žiÑÝëÛn#õõH1Ý«ªª .y¸ Ëd²á}‡ëð³6E#B£,GèꪉÖG¤öWƒã Ó5Tú# NÉ0’ý,lÌf³Í‰vЖ—•ö„åss23RV®\–•ÆËÏ‹‹Ù³gOIII]m%ÃŒ/øûøL¤goßöÏúõkÏXP¯BèÆF™öxgFh}`v9„¦ÕÔÔ” §Æ’åÌ;×xUd"üš——wéÒ¥²²2 îÒí3gÎt~åZ%–Cã`BýË ‰£]›8º²’|þ¹z“þK¨Dëñ³Pä×ïòÀˆ0̯3\.®¾””Íå3ðÿê󳆢߽ï]WDh "´ZÄ£m BK´ât&ÐÉ0¥xëìv9¦"t·KfØÿ²‘?ÝÀRIaSc}QQц €{££"R’¯ÄÆD=zdÇŽ0¾^^£suX6£K"´~\‡+"´æ! ˆ”žžn^t‡1„¦ù™®†µÀòá WWW»Í³ãv}«”"òUuÁÇ:D䡇ÔiŸ§ªÔzü >b`g@„1ú‚Wœ@ ÐùiÛ_ÛÚ&œàæš1Ò‰Z rˆÐΆÐfÁír–I‹[Ze2YllìÞ½{€88c’¥UgtÕZhýOEhí¿z⢢êêê,Ghm~Ö®LNHH ±VëBÇj™µb9´½MÕçµe  4kOµ´©SÕiŸ{ê”Uá™ö/jÝkkat%‹á‹ˆˆ€¯V‡m¡Åš‘–X‰ÐÖXmOK«Íuím­ÍÍÍMMM-ÍÍm­- õÒj1ßÚ3ÔËUÝ Ó¯DhŽóÆBÛ!~ÃþM‹np\\\l B¿ñƾ¾¾³:Ïœ9ó—_~‘H$®þìȰn,‡Æ‰„zÛ ‰£i퓹„Ë%o½¥^õÿ•k~.%Ôºûøõ×îL&À‹_Ìpþ1ýý¿“RRRzMrC„æ¨ZdC„ÖüÕnl<óO'èváˆÐh´‹ƒt¡\VQ_'ª“•w ÏæÎèzí®µÐú!”AAAiiiúãèèh„åååeee&Lht댽]„¼kÝXmbœ¬ ‡° ¤ß|“غÇ={”™™•«»P+,NûlÌ' ìÝ®]îŒÐB¡ð¿÷þwÖøYùyHß!?û1ý®²¸¸¸ÀÀÀ¢¢"ûo'"´"´=™vœ]¡Ý)šY‰$,,,22²Vë/s8V~~~šÏç{{{Ó —€¢'MšäÞ½˜BßÓ`.7>b)EßîÞm“}¯«#?ý¤^Ñ¿ nx¦=Rw¿nº‰¸þÿÝ ô†Œë1N‡¢Ÿ‡~:túÓ½3TÂ?¦» ½{»¹ÒFèÔ‚oÿóí¾û¾â{Dh‡ ´> w ±,ç²îŽFh™ ¡+•EŠò¹œ+'ŽíÞµs#x÷.üÄOü¼îóı=ùy‰šËÇ,óêåU‰ñA 5Úã]¡í ü|úôi???©TêëëËåråryRR°t|||MM£;é=–ŸA„¼jëXmï4ÐIŸ©ö÷7a››ÉäÉê´Ï´gíÏ´/Øþ <¡i~–adX`˜†¢MBh { u„η'B3p2›ŸŒUY3×Z³©wP,´„æå%9¼#,øtÒ•`4­o¸:ŽÞQÀMB„¶)BOŸ>ýìÙ³p³„®««koo§)š¾ƒ544¤¤¤KÇÄÄTUU”Ý5Ë>±§¨‚(,N TÌ&D=/¼ñ†zÆoű#?ƒ½ l¹ÍxÐéZ›Ÿi…_§)š=B½ûÚë)IɈÐN‚Ð,Ë€Ðì·ÍQ}éâq–×V Ñhc†k$0à„G!´<ÛˆŸ33’gΜ~ýµW5¹/h„Vݵ®£hZMMMÀÒÑÑÑ"‘ÉÖnв[,‡vâ誀 Ë@úõו„Ì ]»Èwª&¾P~ö…gÚOënó»ïzD¡„þþþïuøY›¢Ù#ô¤Qcd#Æüô‹No¡–î0tOI½{÷F„fhúg9Bk/“êN΃ÐA')ÈHh4ƒá+…™“áš;fxDØ9·AhGeäÐ ´†¢ù|¾Á(嬬,`éÈÈȲ²2D\›?Dy‰Eß,±*^ž5'lª öQR[K†UOö¡"ÁÏ!6xõjOAè}¡TXjð׈ ˆWŸy•Ír"ÂÃ÷/\F¢R‚7l=rà ÖB[…¢ÍH‘áiPY–‹Œ„F3®‘¸èK üœ“ûÄÑW4';ÚZMStCCÃÍ­­­ÃáK‡‡‡ÃÙŠuP(Mc‡ÐwÕ[29ªà ‹ÛB´§ÆÇ“§5Õ¿# Uì~O5°©†ÞÝPpµ2wK¤P(º]HGGÇè¡?wE&Bƒ'þü«Õ»:B„¶5B³ä0,F»"B—2úôù gÏh÷ý¤°(ÚZmÊ]®=???$$$,,L tZ’× eH!ìúÁ6Û ¦Ÿ*ÐÂ2ŠfŽ‹è"Ë–©Ó>ßO¨=‚gÚÏè²Å^Û6o¾²}?ÍÏà‚Ãg—Î_€íp„ö„愈Ðh´%-*Ï›â;¾Oï÷?íûÑáÃᆧO$®à"BÛ¡µk¥ø|~hh(à4 ÀWÄ «¨•ØQôMU¶¡ÍU¸…ʼn£_]ýõB¥:”Ÿ£ láÒ¥XÖØª¶¶vÊð‘~¦½Àk’P(D„¶ E›4Þ i[=©óÆ B£Ñ®‚ÐÛ·m5ò×Ñ£†''')ê%IWà+xçöˆÐŽBh:;;‹ŠŠÂ€¥¹\n{{;"‡…òf‡Ð=ä6cÎbUÐ…ÅAÔÍ„šE¨2‡òs¥jô¶ÃÁ‚ÆVÌœU~:P¡åQ>cÆ"B[ŽÐ,²[×*ˆÐh´Û ´°(ƒæà À:Y9Œ©¯«  G–•d»AR;—FhíK¡Pœ‘‘!“É=ÌÓ%ÇÆrh¼W€a6??N(GÃ3í—u·í?ÿÁRÆJgNŸ^ì5I‡ŸiïþcILT"´£š˜ØÁ·Iq#ˆÐnï"AîùsÇÜ}èàžÃ‡öâ§SÚsþ܉â"Ž©]-.ˆ‰ˆ«—‹5#òª°0åH‰˜çÒmëN½!4 ®í:1ioo2dÈ'Ÿ|âðÄ]TM„<çØXÓTafðsBå;?Çؼ <¢ I¥Róf„+799Þ…cccGÿüKsH¼A„îŒLóãÏÖjáimk±„pç"´=]RœwæÌÑø¸ˆÜœ4´KNÖÙ3Ç„ÅS9êë*Áz#E0—Ût­bÖFh[ÞÛ§NzæÌ™7Nœ8Q.—#›¡qåиŒP¿«B2XÂó„ZëðLû™‘áþE¨¹¹ùË>;}šý,uuu‰‰‰!!! ô¿HãFŒœã3Ù˜Çø­¢¢ÚišM55"´:<,0+3¹ZRÖ ¨A»„ádÁ)‹¿l^R;·ìZÅž•Òv@hàç)S¦ðx¼ììì#GŽH$’ & E›!vݳÕ^ êO¨'XðóíLü ~Cw#Ÿ{Î#Šß’? ŸøËð––æ)kjjâãッƒ“’’xµ"BÛ¡vƒ¡íéè¨*±Ð9Ûm¡Nœ8DhæZhQ´­ZÃÏ0L#4 Ðmõ¸k·—‚gØQôb{±h>¡‡ç5ÆqiŸ9Iµa×oêï¿»ù)//_4Þ›D¥p^·ÒÏà4UUU111@Î)))lRC#B»:H;ù¦"BÛÓi© õòj„R×2œ²ô´+ˆÐÝV;Û‚¢mŠÐÀÏ“'OÎÏϧ¿jš¦èqãÆ!E›ª‘ìúÎ:ûBé:U¨†??@¨ýNÏ´— ý¤$÷/<ÓÆO”FÑËxM‰DšŸ*++£¢¢è6¿MMMγ͈Ð.Sš~zûj¹µ¨=`ݵ89BÛ9éÚ*9\¡Ã¸\®æ«6BÓ}üøq|F˜¤Sìú»siÌõ9.ú*Ý)ùüŽ.??ù$qû®5¯ÄÇïþc‰¦Ñ_m@Ä,ßÒÒÒˆˆ g¸6» í@„F„F„¶Ã’¡Ñ¶CèraNzJä™SvîØô÷ßk6m\³yÓ:ÿÙ¼~ÏîÎ=y±´8 óB;IsBƒ2CrBžr¶XíÄÑc u ¡æªÜYù9ƒP7ê"ô´in^lºººÆý<¬SÝ7í¿§Ï9yòd[[›3o9"´+F‰86C·)ר¯ÚÁ- #õÃÈõ«¦ ÎÂrNˆÐ:ÿŒ3Õ¶}"QÝÞëׯ75ÖjÆÀðÚ5~6¬1¡¯Ä]>°oÛÆ¿Ö¬ò[¾bù²+´½¼zÕ `é=»7ÇD]D„fƒÐ;vìHHH(--5©x(!BÛ_Ü3–Cã,g…gÚ+ DqÄÆºy™9°gOÌ?»u²ÏuD$6¼Ë¹ëß¡]¡­km6B£SƒèÛ-ñZ> ›Ù¡ b°þ€±f\œF6Ãbq)}0ýV.ÓŒ\úç"z¤¤ªÜT„–VñîߺsÇæãÇ …B¡°¤¤¤¨¨¨°°Çãåçççå奥¥íß¿oǶ¿Þ!­*D„fS ÝØØG/"""$$$<<œËå²iI´O%Dh;ë¨ÓÆr¸„{ëòó£+å0vRÕ××ë÷ÄM;âï‡÷@„F„¶B[ÈÒæ5'd¨Ý5}™+±-äjgä`ß,‹«¡ÍµÜÇLJ.'‡íƒ1ûöN™2ÅŒZh@è}{þY·n°syyyii)Ptqq±@ (((ŠöãÀ-/#cÝ:¿ƒ¶!B›ÈÑÞÞ6!!!88ˆ:55µªªÊXU ôþýû¡í©BždнºËáäÎ&ÔMºíííæfé „'/Dh𔣜!ó"´C(×ùqÚFµÐl(—}T†#]7C’õC;0pÚZnin6lXÏž<úh/¿•Ëzõz†GŒÞÚÒdBïݽÙÏo…X,f@hø\å·âÀþ­ˆÐ–ÇBK¥ÒÌÌÌ•¢££áPëô`¸gÏžƒ²¹©9uê2°åÊ®"úŽZÄæë½Æ@GX˜›—¯á¿Íñö5æñÆ'&\qÚG„¶3Û?£Ù,m»XhöaÖŠýèváNÞœ} ÖB[Ñ r¯±£ûô~ŸöøqcêÍkNx¡W®H$eee@Ñt,ŸÏЦc9€¥Wù-wQ„ÖÔwžæ„---pœ###aw€¨³²²èÞÊ€¢>Œdk7íg‡Ð÷7#6_ïOtùùÁIG( ä@„vÒH«gäpT,´I\ír±ÐÆj¡¡­ÎQ[[3kæ´Q#ýûŒº:Œ1¡k$…4BWWWWVV–——EÓÑ………@wtE4 Ð]#¸t×*¶û¤¼Lp)à<ø³Oû²Dh…B‘ª¥äää   lÙ²åŸþ<³¬£F›ÎQ/U=zX,®li–›ÔNS -•JZ ¸t-´^ßÌ@hxm9i\cÆŒñõõEÒ°›¾ÇXSý—(ŽË—±(±Ò‘#çî½÷¬±n(_~yBs³5ÁÒùZ{ÆèTgcèÈ<—1èe`Ný%èOÌ0£±•ÚºCpc[kõÞ Ý2Ÿ3öNè  wø´$/´¡e2™ ¼¢‚Žˆ.))lЦc9€¨]¡íËa•¼ÐáááK—.Ḛ§va,‡©þRüî»\×bÒ'ŸL€[‘>?÷èá¿oßO äè¶•™]ÙÏÅ̺ì—ÀŒÐ–o•pú³Ï>]²hvLäEDh;85Ú%»VIK5 ¡kkkÅbqee%- ‹ŠŠ€¢éŠhøêÒíZ]« ?;D•„<†±ìÍ#Ô­ºì7b–#”ûØc«õºåƒÆ{`,43£šŠÐ sYqcÍrb»!´6KŸ={zÔÈ_žzê‰G{=2jäðËæ Kò-Ah4ƒS’c¡]¡SSâLB躺:„.--u'„væZhägª»ŠèÛeˆÐ„Új üàüy,DÝ n¶999!!!ÁÁÁÿûߨn¨Ð>†?¼>##Ç“ÚX¼q·˜1s±ykév™,wÄFÒr\‰Z·Öïý÷޹뮻þïÿÞö;üò¥u²rä^+:;ëŠL*B(u-×HEÙY‰&!´\.¯ªª‰DtD40sqq1ÝÇJAAŒq-„6–eQ?Œß©ùÙ±ÚÊ¡ïkB„&Ô·ºü|×]¤»È0¤ÎÎN¸…ÂmÎ Ÿ””·ÙNU÷32™ì…fhFÑСslº1.„Ð:aÏ– ´± º ¶¡»]©C$êÇB‹ÅÅ'íùqÈwÏ?ÿìƒöüqèà;6 øÙÀ–[TQX\”«K´{”F;­á4ÁÉ‚S&®,4 ¡ …D"‹ÅtDtYYYII šÏçà ßÕc¡¿º««kçÎÈ”Bc,UH¨;tú§ŸÜ¹l 4å›oVóÇÏ Öž¾©©©   ***44^9N}}½Á%¯X±íöÛécøÜs³¥R©'#´± ^“*o™šMl†IHÌLÈìƒC…ÐڱйÙI7¬îßïë{î¹ûÍ7_Ÿ5sJpÐy™´aØlW‰ …ÅœÊò´KN–D,0v6ÍChölNˆr”þÇŽ¢o«ñl„Þe ŠÃ½;ù™3gýÍ7çK ñ >@¿!!!€ÍqqqB¡°½½½Û%wtt¼ýöxŠêºùæ”… 7ÛzG\¡8Ö…ÚÍ2#‡T"¼pzú4ßW_}ù¾ûîýî»~›7­ãrR‰ÑžlcÝÐÐÀ€ÐUUUn‘Ãù9P×F–±žÐßé2äw†w.---¯¿îcŸo½5Ì×w`szzzuuµ ¿|9¢gÏo¼1‘ r{ B³ ɰz ‡Ù×ì—©ÏÒ΃ÐÚæåglÝò×àÁï¿ÿ¾—ÿóRaA¢Z¡~rƒ¼ÐX êVvýH§ós ¡îÒÅÈÁƒÝ¿l>|îÞ{ýõºã­·ÆvuuY¸ð¯¿ölˆöÂÕ›š‡Ðæ5'´¼š=·Û¢-É ][Sv 9 ­Ð Í «««Ý ¡<©ʱúc9˜½ß@M¬‡tGÿÉ'>Õ¢½ã={nOq¡]põ¤vìC2¬>±õ×Ijg!B£ÑˆÐÆš!©T*Åæ„ŽEh…B|k­c‡Ð÷zl,Ǻü|Ûm¤®Î#ÊFVVÎcmÐÚwÙ€3]k\½k–m‹ د×*¾ B£Ñ®‚ÐMMM ]SSãrIí˜åZ}êÔ©Í›7#ÜÚGyËÁ`!¡îÕEè~ý<¨x >Ÿ¢DôŽ?ýô‘Hd»uñøü/~û n¿‹ÐÆâ¢@š c3/Á¤F‹ì;=ìvvû`Dh4ÚÍÐÁ·L&s¹ZhN¶5B9r^@jkkéÔ¯ÈÏ.§Þì(úV©ç!ôQQ{÷zPÙJ¥/¼0öú¦›ò¦O_k£µ(ŠÑK—> ^¿^(zB[ýH:$÷²3 ¶BÓQÐttqq1ð3]ÍårÝ&ÚÖ¡Ñ€Ðaaa€Ðiiiáááa*%$$À‘‹Å­­­ÈÏN.?v}Oƒç!ô0]~¾åbãLÆN§e˶ÞzkÊË/{·´´X}áðÞ½vïÞgÌ „B ¿Ç¶nE„F„F„F£¡›››º®®3rXÈ/)999111ajEFFfffÂ7Øíò³ÃB^Ù!ôÃÆÏe„ê©‹Ð_|áÒþâ‹_8pÎêK޼råí n‹Œæ£íö]"È@„F„F£]¡é(h:Š£¨¨ø™ŽâÈËË“Ë守ÐÎ Ïâêêj8Ή‰‰¡ZJJJx:th¨qÙ4õ;оYâI}Ò@DzežX<àXgL@d䋦¤˜™£´¬ìë©S{îÝKuvjøÙíøùÜéõr"4"4íºÝÒÒBGAÓUÐ¸Ž®‚æp8 …“ÚÙ³9!¼³ìرÚú“EsBËk7ÚBß|3Y¹’X#êßUUPXøå´i÷Ÿ=Û# 66ÖŒ%Ìß²å‰E‹¨ÚZmxöZhaQ&] B„vK rÏŸ;~ðàîC÷>´?úóОóçNqLEèÖÖV„nhhp§¾]%/ôéÓ§1ÃQJeäçZÈbãçrB=BŒõpýù礢Âã ‰B¡˜èç÷øúõTSà®IÝÙÙ)“ÉàN›ššº|ýúç‡ »55ÕZÈB„v?—ç9s4>."7' 톓uöÌ1a1ÇT„¦£ é(ŽÂÂBàg:Š#77·±±Ú!IíΜ9ó÷ßãmßþê"ämCðÜ«‹ô{d:;£üLû¡‡È… S<ººþ:xð¥Y³n¨¬Ôà®1„†»«X,†{i||¼¦}qDDDZZš&uO{{ûÒmÛþ={6¥µ@ ä@!B»ŸÃó2“«%e Š´KNœ²ˆðË&!t[[B777#B3›“›±|Ùðß~˺y¡Ïž=û×_áßþZ Çϵ“[ª=µG•ñÝ 4ø†È”)Äi*œKQW®¼?mÚmW®èÔB‡„„À]4333***\-àj¸‹VTTèGPëpzÔ’%nÜHµ¶Z¡%É*•¾øâ ä@„F„¶££BªÄBç¬îC3œ28q&!t{{;ÝŽâàóùÀÏtGNNNKK "´»V9þ ›Ù¡ b°þ€ÎH E#B[b±¸”>˜~+—iF.ýs=RRUŽ͆¢±ŬóçIOº'k@èsÐ[-BhÚð>RV润¶¶vØ¢Eþü³ÝnÔˆÐ(û 4—š‡¾Ì•Ørµ“rÄæ‘k¤‘‡Í²ÜÇLJ.*‡íƒ1ûöN™2ÅÂXh: šŽâàr¹ÀÏtGFFFGG‡K×Bc,4Х𛉷·29›ü'ÔyŒâPy/¡î·”¢á­ÞMÜXyùùvkóûé OšðSvn6"4Ê%š}T†#]:C’õC;¡­å–æÆaÆõìùÀ£öò[¹¬W¯G`xĈá­-Mfä`@h7hNˆµÐ¨nÅá×^S#_?Bå#ü·ß~5jTtt4ŸÏ/..®¬¬”J¥ð`…W’ÎÎN¼™;ƒbbÈSO©¸îB&T1B2 çj€‚:àÍEæ¾½jhšöâìÅ&Ø´c“U®}„¦í}Ø{¸ïð~"4ʺíiùœ¹wBDhkQ4ÜyàÓ*y¡[ZZè(h:Š#77ø™ŽâHMMmhh@„6µº­­­©©I&“UUU•—— x7ÉÉÉã™\¡’f 444\%ˆ‰‰)aú•¢¢¢`!b±Ͱ|x Ôbù.J[dÉrÓM*œ»ŸPû‘Mô:UЋe ï/ðã M{FÐŒþ#û‡F„êOoÖ …îð®- áºæp8pNII‰‹‹£oõß_¡Áó“ç¿þÞë­­­ˆÐ(Dh‡;5ÅÊülŸ®UÒRMCh€=: š®‚Òƒ[7] 7p¹\Žmÿ@ „oÛ¶mõêÕ+V¬ˆÍÎΆ³¿ÂSr‡ZØ÷·© ÉG©A®7¡Ò‰Ír4¡^¶”¢á-fñb7Lm¡ÁIÿúeÝ/ý†ö£a8L%€«;11^™áÌãñŠŠŠ€¥««« þo¥_ ½ºlõO š»t.óÝÚŠfvJr¬Õk¡Ñv@èÔ”8“º±±‘¡áޱÐ í6:s†Ü¿:íó\B•# [àbBU…ÁXÒðFï5ž€Ð¾§}¿ù]JZŠÕ9j6Žß=~ôÔÑBGÚnÎκ"“ŠJ]Ë5RQvV¢IÝÐÐ@GAÓQÙÙÙÀÏtGrr²L&ÃŒˆÐn ÆF2q¢Ûž$ÔEd`+ù¡°”¢á½ÞnÜ¡¦.ü~Â÷ûìïêê²V,ô¬ÐYƒÇ 6‚B„v¬E…ÅE¹ ¹D»Gi´ÓNœ,8eâÊB“º¾¾žŽ‚¦« ³²²€Ÿé*褤$©TŠͲÚi•M^yE l1í³µA¨>Vhc8a‚òMÇÍÚ¯ØoèÜ¡‹W-njj²Ê¡—r—™>dËî-&µOD„F„F„¶§«D…ÂbNeyÚ% 'K";›ÆZ.—3 ´D"ñp„fß7="´sjËrûí*H»“PxmãrBͳBâhxÓÉÎvù"G#ô_Ò¿Æn;fê¡UãTúöï;}át3²ä!B#B#B£ÑæÙBÃÝž¡Åb1"4"´‹J*%ß}§Æ³W ƒ¬kc_$ÔS–R4¼ïÀ[ÅñFè·¾|ë‡ñ?Ä%ÄY}áæ6¿D„F„F„F£­‹Ð2™Œ¡+++¡¡]Q‘‘ä‰'ÔiŸ½U‚ˆkóõ‚:àÝÞ€\T@¹—._êr²×DhDhDh4ÚêÍМ°¼¼ÚàptTèÌ™ÓÀ£Gÿöÿ÷¸W¯G¡ãIA,P§}îI¨CH¶v÷_„êa)E?þ¸ò=ežà–>G%__ß÷UzüñÇ¡¡¡Ñh+"tMM CR»²²2—Î m°ßyO¨…†wÏ|L””?TcØGª–n´q,¡^³Bâèùó v„µÐ(Dh4Ú Z*•2 ´P(tƒ®UŒõ8ïÆ=wî\|Fœ8Aî»OE_·j>¦}v´K5Þ ‰£á¨¸ …F;BWWW3tð]RRâ6턵ÐkÖ¬A„¶Š‰——ºž!Ô%$X§ñaU8e oFð~„B„F!B£ÑN…Ð………tD4‡ÃÉÎÎЦ+¢‹‹‹Ý wBKb9lŠÐ¶Ý?ÿüÓs ™™ä¥—Ô¸5HÕ¢ ÁÕ©œI¨­ÐÆpìX7IF»BK$„صŠíºVñÌp +ª«‹üý7¹í6bõ ÔßÈ«Nœ8z*ÀÆ2Іw¥Œ ,øˆÐ(Dh4Úñ]UUœÌçóéˆè¼¼¼œœ h:–èÚ 9XV#Û¿ƒïl7èFÂq’HÈ€j¸zƒPñHªNï@U˜e oLðÞäÒ‰£¡¡¡ÝÞu²r©D(ª(D»„ádÁ)3¡‹ŠŠ•éˆh.—›››K'ˆÎÈÈ€‘nƒÐf'å°B3«¥¥¥¡¡A&“‰D¢²²2xÓ îÔÔÔøøøèèèÐ릀×÷~„…‘ÇS§}žH(!ªë$ŽþÁ Aýû+ß¡ÜFr¹|ÓŠMpWTTH$¸ê›ššÚ­š‹Ún+Èåµ](‘\.ƒS'Î$„‹Å  cÜ&©ÖBk × ÇÆÆÂ˜áŒäççÓWx塯mmmžú óæ‘oT¡ÔC„:Š\ê‚ÞD¨»,¥èGU¾I¹‡Z[[ÎÃ}˜ÃáÀ+pRRR\\Ü ¢¢¢"##5pg€Ïˆˆ€O†Éà.wl˜î¥¥¥•••p—P(ÍÍ͈Ð(Dh;»¦º´ŸÛÑÑoÁÍ(œ,8cpâàô™„Ðp߆/ ¨÷aº•ÌÌL—FhûT>;gR;w )*"ï½§†¨¾„ÊBuY'¨Âo,£hx“‚÷)O}›Tª³³nþr¹\*•9„pZ£GF„F„F„¶ƒ‹‹8ÕÕUíím ”K N™D"†Óǡ黮1„ær¹n€ÐN m;¹eCÅ£GÉ=÷¨Ó>/$T‚¨‹[H¨IVH oU"r ¡o™´43=Þm›ššJ]KpÊ:::àôÁIdÐ%%%EEEt£B———G÷±’••î…ÐTwr*„¶èºB+dôh52=K¨ËÈŸnäc„zØRІw+xÃB!B£¡}%!¢¥¥¥±±¡Ôµ§¬¹¹NŸ~D4B …Âââb:"º  €ËåÒ}¬dggK»\-4'{BÛ®Óû+-¼ð‚–†ŠØévÎ&Ô§Vhc8j”òm …²¡õ+ L…Ií¹´ÌX”µl‡µkº¡¡¡åR2¡ýVTTT0 4|®ò[ááy¡]¡ÝC]]dýzuÚç» õÒ¦ûº‚P‹u«¥ o[©©xé B£¬ƒÐVOÇb3"4ʽoÏ?ëÖ­x.---))¡#¢ù|~~~>ÝÇJNNNzzúºu«Øæº½Ú§ Ú<„.//Ç»1UU‘¯¿V£Ñ[ªÖgÈ™nï BýË ‰£áÍ G#B£l„Ы¦õG¬Çf^ŽÁÉô·ÁØ™·Í^Ø¡5+Ò|ÕþÉà4 #Qfh­Jr¹\3†W­ZµnÝ:óúàþ­;wl>vì`³P(¤#¢ y<ÝÇJZZÚýûvlÿûÈáصŠk5'tu…„^½TDt#¡¼1í³'™O¨­Ôï_ð†B„FY¡»%^ý‘¦ÎbŒ¢õ5iEÌ$o „–«¤\¸Zšaz@ç«Áiô‡Q¦ª¬¬Œ>ËË–-ÓŒ„["=²¢¢‚§Œ=B9´ýı½;¶o^¿nõêU+W¯Ö¶ø¯ kvíÜrôðÎãÇv!B#BÛGmmä÷ßÉ t–†‡ u©Ò#½UºcEÃ[Xp0^RˆÐ(;!´Aâ5ºšaØZ+².BkËl„FY¢úúzúDïß¿ÆìÚµ‹þ:eÊÍd¦"ôEÿ£Î=súÐÑ#{ŽÝ{âØ¾«>¾ïäñýý]ºxâÜ™ˆÐˆÐöŸOÞyG@Ÿ*aÒƒ}…Po[JÑð.odžœ8e B3ÄZ˜•áTm‹Xƒ}ÝŠ U,ënŒÞxÄ` ÕØØ8lذž=xôÑ^Ë—/ïÕë1bxSS“%t:<ô\DØù¨ÿ˜¨‹´c£hÃO®‹Ðú9î<§kWÔÁƒê´Ï·êOLûŒVðøª‚y,ix/ƒ·3W”T* º|yßÎ]vHŠmI-t·k,ÖÂùk¡mÔœP¡PÔ©+ªSK3Lè|eP· ºU}½Ükìè>½ß§=~ÜØúúzí è]¡]%#‡=èíí=f̘_~ùå'•&OžBÓ+ê¡™G¢Ì–\.—ÉjfÍœ6j䯳ŸQ[+ƒ1ˆÐæ%è°–33’gΜ~ýµW¡;;;kjj “““ÃÂÂBBBBUJHHÈÏϯªªjs²µSRÈóÏ«QçgB"4¢õœC¨/­ÐÆÞÔà}ÍùÕÑÑ1eŒWå™Ë$*EÛþkþ>¸g¯I‹‰Dô;rïÞ½¡¡-GhS3r˜”ÃB„vªŒ„Ö†grÖlT68eAEt}eeÅÑ£‡E¢J~F„ÖÏbçä½Z(¸H+++9N\\@2MËáááiiiEEEµµµ€ÓÎ|Kïê"kÖ[nQáÍ=„Ú†¬ˆfL½Ô ‰£á}-9ÙÙigÓšuGÎéð3íµÓg …B¬…FÙ¡Ñ"4ÐZ-Êùä œ Ÿú?Á)ÃZh†jgWAèÖÖV™–jjjà¡™••íïïöìYøZމ‰ÉÉÉ)//ojjr¹û¹HD¾ÔÔ+þ—P‰H‰h%Ôó–R4¼µÁ»›3¿_þ1ÞÛ ?ƒƒcW.^‚B„F„FYWˆÐŽâgë"´²_u-­X±ÂÇÇgÖ¬Y .\¹r%Œ9uê”KßÌ/_&?¬Nû<…P¥‡hÖê+uÀ¼Ç9¡Š‹‹·Ï]¤a授¤¬½Ç´)úÉS¡QˆÐNŽÐªÈ[”+ “Ú9¹ZZÈŒê´Ï½T-Å Ñfx»*øÇ2І÷¸À@§»Fòóó,Z®æúÀè3K×h#´÷ðß迟¡QˆÐΆÐɉÑ<·©© ¡ÔµÔÜÜ”ŸŸ§ÏÚ2.Dh}uvv¶¶¶ÚaE<y[“é÷„ÊED[à$B½c…ÄÑÓ§+ß윩@×ï)Æ9ÚÃÏ™+‰èFt øì¶"4"4"´,“–rrR.^8#•V766`BfJ]]]}Áÿ4œ>8‰X mëÈ ·Ah¡PxäÈ[¯eß>r×]*n¹P+0í3Ú.%ÔT+$ކ7;x¿s-›7¿Ú?Ô Bï[´<=5Íà‹0Š'%%…NÅCÓuBB—Ë­ªªZ´h"4"4"´\QVzâø¡ŒŒt 0v¥§§Á)ƒ§OÿœbR;Dh"´\NþŸ½³oêlûøæì1—wÌÙ;{§ßÞ16&lŠ[‹V¨{©P£XBR(V¤h±*u×Ô%M5uM›&©k¾'9…4r¢MÒûý¯^ÉÉsÎIÎsÒó;wîç~bb8>—Æþ¼“ýÜÀ¤óS=jÍ¢ÓÚ4øØþÐÆ¾–tï“ÙjõÝíîî¶Ù°¹?:M€Ÿ ®ìß±SªMõôôÔ××ZXXBBB«À] µ5¥i©±7o\8ëÖ£ÎB]†:u 4 ´ºE¡‘Ùì·ÙìW&¥_cOiQ_„žÎÔìÃû6;R»€§±±ÑÚÀ(tï!zhüh‰r!h¯¥Ýу¾2Wª„D@h@h•™Aoliªª(Ë/ÌÏk„Qg¡.C'´C¡¡'2 ÍfLVxæùñ.õEèƒx_e³Ùì-bž±±±„øxo¯ÎÖ¶§NQ©Ty¶  ­zîêlk„EÁ3 4 ôÄ"4‰ÍþjÒó3ò³ýjÊÏS[µç ÿÌf—-Bƒ¡Á`ÅZƒêB«FCCC555ÉÉÉ.\8zô¨2v1Âf`³ß~Vï\Ž'Zuœßf³/0Bƒ¡Á`å tWgTÝÕY¯)|‹— 4™LŽŠŠ’m]ƒQ\\™PQQÑ××§¤(t›½ÈùA?FWG„~n@ µ>:Û›¡A€Ð`°¢-¹xÁ B_¹tŠÙÕ¬)Qh'kîì„âUTTF°ñèèhsssVVVtt4oôF$)¡#¸#¼€™üLdq¨Î_±ÙY@N€Ð @h0X¡ÝÍl»pž(B_ ôGíavBMAèÊÊÊ„„Ä̱±±ÅÅÅ Ce¹Ðè¢è´¬9¹OtióÍöá&i¢JKK}}Ï›˜ì¹};‚N§Bƒ¡Á`u@è~ÖÍ ³:!îBè kgP{@huFèŽŽŽ‚‚Ì111)))555CCC7¨@„¦°Ù?*kT.‡Vfqx1›Ý¨Q´ÓÙÙ¹páÖ3ÎaX9†1§MK{ÿýíÿ} O8B õSÈÙa!—Ä#4Zx+( ¨ µ×Äá„*K„V=B×××§§§ãÓûæææÒh4Ù6ØÐÐ$ÿ;Çf¿¬Q¹SZ8ñÉpØ?d³Ã5uúûûÿû_ DÎS(>ùdš³ó@h 4<±Í 7 /TSCEfzdb\H\Œ„NKŽÈ͉/,H`С¨š tffæÎ;ÊÊÊz{{Õåÿ3›];¹M"Ær/N0W°±·ÙØ›x±Õäê£1M@Í›wO™ÒÄÅæ óÂ0g ;‡aýhÉ«¯ÍÏ'Bƒ¡ÕßÔê’;·¯^¸púâ…3ÏÂ_µþ{ñÌÛ×j¨d‚ÍQHoèïîïgŽ7ZŽ^EmPËö–r-H䘄à AªÔ/Ä(úÑΉ@èl¨&òÍ›Ðij§Y³\¹½Ó‡aŽ6À}LÅ0oîƒwBƒ¡Õܵ5¥7o^NK/)Îk„Qgݺy¥®†L¡¥4 ´p·¶Ö§§%"ÿþÛ¯€Ð“\¾ÄúéÞ‰@èìq‰ì¾>è4õR]]ÝóÏŸàvÐ «æë¯Ö‹üü³‹TìëëËáÊÐÐZ5Ž‹(, ÑÚzº;ÁaÔY¨ËâãîB«r8a µüRà9äf¯AÝÖÖ—ŪBms9¨lì A„^±zL=ú¸„þñGG©6È`0®sµbÅ @h@h@hÕ8)1º­µN=“NÁ¢Œº u ´˜iV&y"Gss3ïJíçç‡?¦ÑhÃÃÃp‰Qˆ~$FÑt¨¡O Éâ¸zºKõá‡â9,°ŠáJÚÄÈ ­2çæ¤³˜4€RÍ2ê²¼Ü @hQag@hoootùº­­ÍÀÀ §§.1 Ñ~õÌåX*ÈÏ=Æîî†îRGî™2¥ŽÛM•\röÀ°‹8K¿öÚßÅÅex3:^XXG¤Ž% 4 ´T.——H´ «Bƒ5¡ÑwJ³^|ìm­Ah­N888(O!Ž={öDFFvww“Édfhh(~âT"«a.G-û— Bëè@_©©Ðü‹/,1Œ.Ðeӧǹºú‰Z¥ºº:99á4‚j¡³)BBK…æàI ÀЀÐDº¸ åõ×_ųÈEiZ…Ö¾DùÅKç@(ü¬p}§n¹ç…dq\¸¥¾b2™K–¸Î˜qý3Æ0ÆC%¼ûî6?¿kDÖkmm%‘Hx¾ú§ÔÔÔ4::  ­p„æ]XEµXÂßxR!4?{¨¸V÷{‘ûz»xKÐãýûö<¸O~„®­ÎŸ=û3f<‡{î³ë¨Z3œ 5S«È%“½¹ D×Óªª*taEËÑ{Æ—+dvÒNbýTªzµ ??ò»« :JÝE¥R½hiéÃb±dÛHww7…BIHH077„„–6z< ‹löbèz²E¡UÃ!`Q•ÓðÛ·=»wðzmwǶ·5ʃÐ-¥–æF³¿ÿö§¹?^@Ñc+“Ö&Š6!´ÖäBËüëp{{{vvö;wbbbB#fs§B£sÕ ©± R1„~qD%ü\ÇÆžDèùó¡—& -ÛpB"Ä+BOÎD@è 5ÓÌÌ æÀ‹hIÀÙ“øSKKK9£Ð'ŽܸAwÓF=)«›Õž•‘Žž"Ÿªol|sï^3 ¼xöìÎΟº»?š—ÇYÂb-qs„© B© ̓g¡õ7 ‘*r¨_:«¥¥éòåÀÖÖæ~&L­B¤¢†"ô™3gxÁg¡?›™™ÕòýàËb±²²²9§¦¦vttß8âðªª*¸¬(O.Äú_ÝÊDèM‚ü‰ÐJJäð÷÷Ç):11ñ³……•JÅÔh_ˆœÑ_ÈÁPO¥C膕ÆÏlìeA„þá虉ԂmÛ8çáá•»v±¹3 öôôtvv¾éブ?vçNzf& 4ZÓ“ ­‘S«äæB‹ Jk\.t]]þ`dd¤¤¤$55‘sVV“É„‹‚:k„Íþ„E?Ô®„’Åáë =3¡íèÈAèÑÑ%;v § }£¯_¿þâþýhù7ofegBƒ¡5ÝÙ¤@hMDèœìT@h¡Qh ªÈÑÐЀOwâ{ŸxRRR¢££ïܹãåå…–Ÿªdš bý$K9½EŸ§La××C·L¤\Åš›-¿~ôhV~>›[9G×ÅëêB _uqINN¦Óé€Ð @hvQa½£ T³ÜÙÑRT˜ ­é¹ÐÃÃÃøt'¼$ÁÁA6·Â3¾BС¤‰ÍåxC¡¿ùúd‚ÕÚÖö@ôÈÈS·o¿}û,oï©UUœ%º,‹D"EEE¡»f©F7Bƒ¡ÕÇ-MU5Ô’nf;ÿŒÒ`µ5ê&ÔY¨ËZ›«¤EèÝ;]‘Ûšÿ™‹=Þáå¼g—äBOl"ÇÀÀÀõë×ñÇ}}}¼)Q@šqÍb³?œ¨\Ž»B²8öíƒ>Q˜²s³ìÄøâ‹BWV1F0XÙî¤Q©U…ä´nf›Æµ› ‰]]] ÑÑÑ---lný:ÄÌü‘çñ5:@ªÔ&býC>„v‚ÐÙÙpø¥ãgƒÑÛÛ+ž¢¥ª ][[•––ÆûUHyÚyòäãùùxEŽ)uuÓ(”{Ïœ„„ÆMï¨í¢7ådÅV–çµ6WÒZ+rÀ`帼­¥ªº² 7;}éÐW*r¨BS©TtL®Î%%%ãë×!Ц@i³ R1„~n@>„þRŸgÎd‹‚øY?ã/‰§èJ‰ënW1¹2>Dœ˜˜ƒßç*Iccc›wízîÆ þ Äÿ÷áï¿BBÿ3£¹«³‰BÎÊ͉ÏΊË!%äæ$æç&䥿§¤¦‘‹ÓÉÅ¥%eä¬22©œBª *˲+8Ω,çº"§weNU%çAU9ú›]UŽZÞs%«¼9³¬mŠc m6R’^ZŒöÂuQjI!Úi rQArqA2ú[˜Ÿ\—T˜—X€œ›Ïy‡ y9 yÙñH8&Åæâ²I±ÙY±Ù™1¤Ì˜¬Ì謌¨¬ŒèÌŒÈÌô¨Œ´H®ï¦§F¤§ÞMO‰HK‰HMç8),¬Bs8çÈ£.HKætêÔ5©œ>B…º,+=Š”:‘”ƒ:”Ó­¤t¯‡:šÛã¨ßãórâó9N@'çÄàœ!I…ùIEÈÜ3?‹JŠR8'UQ*:»ÐiÆ9ÙÐ)GNÇÏÀ²ÒÌrJ&:-ÑÉYQ†Ì9QÑI[Å9uïÏÈÔª\jenue^uÇ•ÜÓ»¹,§¼4»œ’]Vš¾D”t>g–g”¦¥å§ä%£oS^NRzùI奤®ÎzfW“`kP"‡–Uä@„œ““^ZZªšßˆArýÂÎfÿ[Ù¹¹llŠ BÛØÀ±'7[7ƒG ðñƒ?¼ûÎÏèo^^bQDѳߟ¿j:ÍÔb£…"H†“Ýg[ÿæVTTĈF#²—ÄÄ?\]?svþØÉéwW׳ÁÁ0Á7 ´@p ]Ó{Xí½ÝÈ=Ý´{fµ#w³Úº™¸[‘Y¸-\7ãfâîjW¾ ù~N{| ÷¶Æj÷ï ßuoO'rÇô¾^ä.äûV&ò@?2‹ëîÁäŽ{†{¹îBîæx}Lä‘áÁ‘ä!äÑ‘áÑQÜ#cÈc£\ApAÕÃÅ=þèßè×èƒðžâtÙ0ÇœND]ÉíSNç¢.æöõ 2ÞûÝèd¸V°¸çɽs†{þpO$::£ð³ë“üÞÎ;ɹg8ß¹ÍwJ7Ž?·9æžùü'9ëÞI.òµšªÀ]×ÕÕEFF¦¦¦òÿ~´ÁbƒémSQ^wrÝÁceÛ 4 4üª®Ñn¬+õ¬¡Ö¬\hMO䨮®Æs6úúúàŠ qº¢ì\ŽoùùÕWÙð…€º»»­mŽ88v?%Š¢·Ûo_ÿäz%ñó??Op³;Ðqss3zjä`$&¿Ú£È=9ù959œÖV;þ@èI[ÔN( ,ÌÎÎ ƒœ Í~ƒB¿<ÆžÒ"=?°±©‚mnGýåHfzë[nEfù_0ݰ©­­ME#~æÅŸç¾5÷\À9¼À²Òðf8???""bµñj„ÊZ,4Y¸Úv5Ïë½×Bƒ¡'³iíu,F‹Ð`@h$r¨!BÛØØ”——ó/éìì400À)=Æs6x×zFk%±@ôã2ärx É∇C~Occcï÷9dç4š@b'f#3#­×mŠŠ¸;ž¢¦õÌõ*{×zÛó/ßh¿¤@„f1šé ”’Ì\RlVz4)3&›„ÚŠç ÜËM(ÌO,ÄÇg¦”¥‘‹ðYie%霔̊ҬJJVe9©ª<›;+§ª†‚µj8!z@­ÌÁrNæò,üäG«s‡¦“K8§.¹ˆsÒrÌ=c9ï-'™¹¤øœ,ôþã(䬮ÎzCc†ª8‹Cf„477¯¬¬äçgô·ªª*<<<==½¿®2Ú£óÄúÙ~éúA~~ñEöÈò{xl¶i3éäEDΡ9º†ûÁAúì6/'g¼ü#?E Íß@_ÆD®”÷­Ä9B¯Ø¸"** Ïî„)¡9Eí:›Ð%!­•ÚÍl‡á„ U2&ápBV{G{mEY6§¨]g£Fµ Ìj› .ߥ¥¥øcDα±±aaa r6´OmlökÊÈå ³±‡ÚÈŽ7GÅEE6ë73#07Þˆ0Õ]Ÿ—“{åb «‘itZH¹xcÓÊÕ===ü-&ÿ™ÅbEGG£/»¨¹¿ä–áÔ¤TÚ|«9žÝã: 4HÍ™Z¥0µœ’…®ï]u´6¨ +'ý¦µa3‚êÊòœ’¢TõŸZE *«sEt¡Dð 9Z¯¥ÄÑÑ¥AèƒB²8¢¢à`sD&“Ï»ïD¨\pöŠ­©¯üEuuõ†e+z£RÐK¶õyw¬8EK?ØÞÞŽþ!ÄËB ¼vþÚ¿žûëØþc2 4ÿr@hŸà›ÞÙ³‚Áí­å´û_wN!+vÒ¨Œ®&˜à[C]mõëpQQ\/ÔV§•‘Ë1OŸŸ}–=njÉ«­F&œhó… S~ÇÑÓ¦¦&|r{³ÑRtš“•µ764Ù2^û®¬¬L?[N³ôÄ<×>¿– Eã½·~ïœßç:qˆçBƒ‹ÐŒ®fî¥ z± ·€8E+I…„–¡ÇÇ¥ñÇù©X`S[_uvî o öv6¢VÔ,„Ö ºÐ “ɤs5ÄB6r¿pWW¾\QA6¢ô;1Š~´SBŸ’Åqó&`A­_ ãmf-àü…gqäää$&&ÊóMÌ߸ߢÐÐP^í» §h@h@hÙZ ˆJ|,~ b|UZ„ÿN$.„h¶v¸“F­¯«Ù·o_HðŠrò7_5wÿþ;dÄÃYY騨à¤=‹Z±©±&àì©éÓŸ8îwßµº\ÔŠ‡Ðš2;¡BtæÌü·Úòòrôbccñå¾¾¾ør…DØ@ ÔßÄúé^I½HŸ§Ogß/Ûz@ ƒ>N½| Ýr†‡‡ó ”ŽÒ ‹~ùw|ðà²ç—ݺv -¤Ñh¼ªï—m´šb…^uÁ\æ}:Z š`–`Wªh™™VÙ !ZfzGmUUÅ®]»22R½½wýë_OæÖ×Uååe=þøãG*£”>|¸¨¨1³¨Q{äcGÿž6mÚÇTYQŠžŠZZÍ9x£™Ð%.ê¯jbýÒ¨X~¦²±é‚½lÝÄb±ø™ŸBEŒòòòâãã‡dª |=xékKqŠÖy]'2$’÷’½‘½ÁtœŸç<¯ª ç§æF¡¥Bèñp®@„“\1>EDÌ;ŸÈü¬=M«iiiD¬u·”\øÝwÿCÎÎNÿú«/çÌù¡ŒRœ›C:sæLMMµ@0™ÅjyIq>ZñóôéOœ:y-µ" ´:#tYY2gbb"\/Ô_?ËŸËqVHÇ•+phïéòåðyó¶¿ñÆž×^óæùÍ7w/Xà•”D³"“É ¯©©QEO8?Bƒ&¡eHäPHZ(Bü€ªùV}9hFWú§äïï_UI).Êûßÿ¾}üñÇøa6¹¤ ª²4èúµ¸¸¸Z«˜ÑZ_}ù¾Šÿ‰cˆ¢Oúû‰ZZ=º¾¾Á³@)i(j§ò‘?—c™ ??ú(›Å‚CËÆ3(Þ|óïñ·¸?ýÔ7d@” Ð?ÃÁÁA¡¯^¿|%&2ŠE¯ücå„ó3 4HZ!QhiGóÉIø€ÐZénV[cCƒOtÔÝ2JqA~öîÝ;Š sËËŠSS“Μ9S[[Ë 7‰Y14$ØÌÌ_ùÄñ£ì½" ´z!4>¿0ºÊŸ_Z#D‘3—£–=%H†‹Áq½'_t¹…Ð?œvåJ‘$ˆˆˆêêjþ…ÝÝݶ¦fw¼}O»l÷tvšòÁOѶ˜í„ó3 4H9¤MäJ¢*rÙˆ ÕíD¥gýŒP‘C‹‹rôõ²¨TêÁƒÏœ9”ŸMÊHIN¼|é’¿¿?ZÎbv xHÖ¡Õ¡™LfLLLff¦¨0ÚéÓ§áz¡šMŒ¢é†Ð…á¹spPïiÑ"'QüÌu««ÁM¡oÜ·ÖvnvŽáªµ AáxM¼Ò A«× 0öxŠžp~„iÓì„@°`…dDô÷Òéô”””³gÏ">þ<"+´Aò¸df9W„žx„îïïOJJJNNFàŠ ò&†ÐOõCèÕã#«ìû3ï‰ÐH===Û·¹î1·‰ÏBðœs*°,ð&zжÍÐäÊÅ@Q­ü  Òt„†0X ±èªþÞ®á¡AÄT}}}ýýCƒ=¬¡óÊ·" ôD"ôðð0^­®»»®Z£"býâÈ8~®gcÏ báüùpD•…Ðt:ÝxýÆÄ#§3&ö[ÙûìÞã¶ÕŸ79dßß–ãf…D=÷Ó¹ÎπРmŠBƒÁŠMê`ÒYŒ½A"<˺" ôÄ 4^­.**ª££®Ú§ÿ“-—ãš, €Ð€Ð€Ð`0 ôd@膆†ˆˆˆÊÊJøÏ¯ÝÊ•!—£‘½(È„?ÿ Çò¹¹ùaXƒ(„~챸;wb¤ÚàNWw•­ô ÑÓ¾¾>¼Þõ&}´|þú™þ€Ð€Ð€Ð`0ZÙ-ªô\{{{TTTQQÑøju íêã/ˆQôôû}S= Çò1Œ·ßÞ‰acÂz胬²²²¤Ú`IIÉ™mÛ-ï2·æÍZZZzÊÅ_¨æ©V€Ð€Ð€Ð`0 ´êñÃ0 4‹ÅЉ‰!‘H'}¯   ñ ƒƒƒEMšàx)1„þW÷}„Öd©SÙÍÍp •œœµp¡ûÛo;Μùßßyõêí¥¥å555è^uxx˜øm6sr9ª.ßÞ¢»ÎÑÔYåjZp Zhkd¬æG „V=?+¡ñju))) ¡\DËà_r‰[ô."ê©LbýÂ0—Ÿ›ØØ+‚ýý÷peŒT‡„„ ¿Ûïr÷ÀYÀ” A§üŽBBk.B·5SšJj«ó•j´ ´#*0 4D¡åDh|ðþððpVVV||¼b«ÕñS4ð³šk”ÍþŒE?ÔÎÆB…dq<GQf®ŽŠŠ¢R©DS(”Ff9'/ ØnÝ&^j 4 ´Æ!4"Û†:J_7³L‰îëë­¯ã°:0Z„Æ«ÕÅÄÄ(©NÑÀÏ!'â¹&‚ü>>ãó¢Aêxuc³?"€Ð¿±Ù| ˆÐ{÷ÂñSŒ˜LfhhhWW—|Þ½¹¹¹ù·\½öÚk€Ð€ÐÝÚD!eDŽŽôõvu³ÚTàþ¾®‘‘!´Ó–ÆRÁrcàý=ÝôNZ-×uÊù[‡vvÄWÙÞÇï ­•Ý—²9úúú”ñrtt455uûöí'NœÀ—Ek„l ô!6{Û6A„†Úá ÅŒáèèèêêjˆBBO„ni$''†ö÷vw²-*0Bˆ>´S<$‹ÇÀŒö¦² ÌdÐøcàªÜ»À®Á€ÐÈ¡ŒºÐò¨¹¹944Á³@þ3P´ú+žB#°ËË{€Ÿÿû_8rÂ588800 êÕ±±1‹%êÕœœœÌÌLÞÓììì>ÅÆÆ2™L@h@hmBèÙÕ¤÷tw𺥱·4W4Ô«À­Í¼¸Š÷οk@J@h@hµBèáááäädtÝGl)„Ðâã¡.´:kˆÍþ@,?ÿt¿åÛoÿƒÐ^^pä„‹”—÷ê×_ï<~\à´G_+!!,Xà)vôA}}=ú]½óÿçõÄw1,‡Ï¤wÞ9´aÃÍšüZ,B·3è ÆhüZâvÄChd|ïM ”ºšB¸©¡l¢öοk@J@èÉVZ"EO B766†……É\Ù# @±%õ@²ÉB,BûÜoæàðB“ÉpØDjŽ…Å´¼¼¬­½üüp¾þµ‰ÉôÐÐYöö===âWg2™ï½g-zŠð´7"¡¡µ¡»™mBÚØ¢@Œe@èna]_[RS§×ב'jïü»¤„† ¾Õ!zxx8111;;[ž€Øž={ˆÏ.Rž¢Ä"téýfYY÷(îÃᘉSRFƳ.`lö´ÂÂ-,¾Bð‚M-/w"P'!!õ‰'BE!4òüùNt4¡¡Å#tWg½€ÅP4ç%cãñk‰·P„®­.¬®ÈQk©Eµwþ]RBBˉÐò«¡¡!,,Lþ€Ðj¢6û=üüý©ì7Þà œ«+3 ški‰ #Šæ÷,;»ÞÞ^‰ë^»†a)bzî\@h@h­AèV¡Ä+¡¥ågB3ÛÆCluE~…$Ôh/¢^’ÁÕ•ùRí]I»¤„„ž@„NHHÈÉÉQÈÖdF袢"Ö¹xꢷ‹·&ŽÉR¶¶ˆ@èÝ6³¶æ \~>0 JÎȘqñ"??sBЇYz!4!tÝx‹ DßA×Ik¡]Y–SFÎe´/1¯Jåʲ\i÷®Œ]RBBOB×ÕÕ…‡‡+0n,3BËÎÝÝݽà£&™ØavKß\š›—6~…Š@è2Lf¿û.-ÉšekËÐÏùûË „„ž<Íb´Ð;j…ZB‹j/Þ,fëxˆ-/%•–¤‰1Úø]N!ɰw…ïZõx >>>//OÎí?~Ü‘O_}õ•••ÿ …"jÝüüüK—. teeåÉ“'‰ìÚÛÙÛ³÷ĉBb¾ãÃ[t¶,~~±Þ³zëæ¬£VS…63v1>ÔyèãýÍû?þúc·|7ü)òz§õÚ}±[χÐÛàÚ/“²óòVÙÙñà™_¤·úø88HœQhttôÒ¥Ðyóœ¾ýÖ‘çÿýÏÉÂâ@[[›fɀм}šàºmmm±±±¼§ù¹ùa·ÂºˆYÑrxx¸˜6ómm±ÎÎY¶¶·nýbañxZÚLOO­ImE7£îÀU‰Ð-XLLLcc# ´Tä ˆÐŸg`©[ݺ«£žÖZ®wu6Œ‡ØæJ}M ÜÜX6Q{çß5 % 4 4îÖÖúô´DäßûU6„>r䈎ŽÎø¼hù…x2$$D!TY\\œ“#c}b&“)†…*..Nü<2çoÜx(5]xž à ôà'mbž @[Õ*!!¡®®NË>º1ÏáÊÐÐpR!´ëŠz,QKÛ€à.&¡ëTÃ]õˆ$IYÉUåÙÈÑ‘7ûZÊj*óTà–Æò^´SÕï×µÕù`­7ºWjk¦B‹w µüRà9äf/B#~ bË‹–_555QQQò'?³¹“zË<±ËÀÀÂxi hP(”²²2‰d>ÓÑñŸ‰›‹Šv;¦U¡Q€Z•+99¹ººZ›>ºƒ¾ÎÕŠ+&!B‹¡Vâ/ÉÐ@æh=B#÷vw ‚ÁZì®®ŽêÊüû?:B+>‘ƒÇϼŒEQtVV‰DRȦrrrd.2::ŠøYÚÑ‘è¢/¾MeuõWúú•”üƒÐˆ¨ý._É#ô-.//‡D@hèWLž†˜\ŽÉ†Ð¼ptWgü…¿Zú·~ Ÿ5<ÒÓ[a`’Gyyy…f„Vg„&R"C--BƒÁÚm½~ddˆ”ÝÒH„VñßÒ ñª¢’ŸÙÜ¡Uò„²‹¸’v­ºººÜÜ\âíKJJ¾16FW ×÷ì‘8·8$•Š‹‹ç¬X‘(âK³V£†¯B+¡ÅT™†\h0x’<Ë-ÃB„V„Zz+333;;[!Û—¿À^ZÚµúûûÑ-€TaüÈÈȽ§NM!“°·ä h``àÎ;vŽvz&zëÍ×›Ù˜JU f¥åô}ûæXX$ñ}µCbb¾55¾w¯ýÁƒ€ÐÐbbÂÒܪ"‡ú#4…œqíÊéS'!Ÿ>á/ü•ðùÚ•3eœœ @hµFhþ MØÜägtL•üŒO3ÑÒÒ"óJ@Ú/¢hâí“’’Ñh´ôõÝŽbñëòËˬ–m Øâ–wo¦x/Š—ÙU³Õ.«÷ü½G`^K1'ó+îîØðð³.̵²ò;þ;só§nÝÂÆÆÞߺU³ˆB+œ¢ ¾¤ðºÐÒŽV„./ͺèu#+# 4úÊ\ô¯ dBk BÓét&?Ë?Ù±l% ‘rss¥*É‹Þ$/ÐýÅï¿k÷¤ iUX\¸îÀ:œœÇÛ2ÄòRÐ%‚›Zçé‰ÑhœÁª##Ssrݶ¢’ŸÑv“˼…ÁÁÁ;wîH[Z€‡ JbÕÐdÖ­[ÖáÖ¢zWå®í>Û‰ÿªò†——@á—÷4-= ZÙ"áj%âq­º"p –Ö苃¾>€ÐêЈ9ež.P(ý"~–vÃlR6oRr¼ ñpDÂR®KKKå)Òz¡û¸Í¶›­ïZûvø ð³s–ó óRýÔ²ÐÎü¡ÛÚô·o׸c­ì(·Ö tJbXsC à,­Ñ'5)ZÚÁÁ1§œ3ógƒô÷÷‡„„HUK9òv¤î׺ºÓuW}°jŸË>¶L% qÅÇÇKÞxî·Äf@’“Yccc¯^\¢»ä×å¿ê˜ë,³[6wÉÜ9óçøúùJ•rnñ>±²z =6ö¹9 4 ´Ä< %íB698Ø[˜â¶³µÒÓ]ammfnª¯»v¹½½µ¥ ïU´ÄÌT½*Êm­T€%0Z#zÏž=Ž|úì³Ïlllø—ýÍ öò:??ÿôéÓ¼`2A­û~'æ‰{í+kƒƒƒe(TÆ•T«$''wuu‰oƒ>æË/ÏêìŠq400€ç]äääH{¾ùZ‹šM ÕY­z×®®.¶¸½¼ÜMŒ7yx¸¸8Ûl1Ú°sç7GÞ«h‰‹“µ§‡3Ï›THHÈ]Ľ BktEâÊÍ͵··Ç)ßZò×_õôôHµªªªÕϯæ!´=fom`-Ãûa±X'ò¢âÔÔTQ¯æä{vtt„…Å<ö˜ÏŽÇ8yx¹z5lr¢#ƒÁ8àu` ‹¾_älî\\T 8””D|ð)'miÉÁ掎×vîüÁÂâå}û°înllìkSS@èIŽÐš%y9P÷A€ o@èɃÐü6B"‘,X müÿ‰|íWky½êéUeB‘=þ\kônݺ%íTŒ¨÷ÅŒ"DŸåßÿÖ}çmo¿ý† ½óŽî¬Y¶Ï?¯_SS; ¯˜a·Â¸Ø³¶ÁlþÂþrœV¾¼ÒÓÆsdd„¿Ydlä¾Ãûø—ܾáwÖO‹Ldd$Á_(| mûöU..MMœÿ–•ÕÕ‹ìì^Þ»÷‰À@Í DBBBƒÁ€Ð€Ðò¬ŽSô®¤J åWàñÀ•ï®4bºì™e$¶OÍL5t1\³}þ6ýàÈàÖ¶Öu–ëV»­ÖsÑÛ{d/ÁR(”ŠŠ ñm¬­÷O™R‡aìûîÓÑqœ„—Ëüœü¯¬Àïqp„Æ›úÈjýz·¼¼‚Iu¹\ñí ÞÏü¼âµå÷îDî„ßAÀŒz§hœŸñ§{þÞ£ÅÇg`` $$DbFñcl¥  ­5ÍOÅOÁ`@h@huFè}ûöɳ:…B177ÿóÏ?yyÑ2Èè#7Ì G²åï.Ÿ ’—ŸgtΈ‡Ð[“·Î]?—÷Ô·Ã×ÔErZiJJŠøQ„66Þo¿­÷øã6̇Ðc?œX§·]ÇÌúÇõo^Ì{ê^à.1gÁsrr2‘è<~8‘¡›þüs½Ìù*ª[A·¾œòå/Ø/¸gc³ga³xO‘—þ´”¿=¢è û7ÜûQ Èb2ð3®¶¶¶¤¤$@h@h@hi9ÆÿÈÙ¿ž¢Á€Ð€Ðš…Ð<~fóUä¢ûúúVÍZÅChƒÇ ¢B£Ä¯²Ýwû–€->->æAæ¡Q¡º»twUírNs^b¼DbIñ£ùõÝwæS§–?õÔ>ÄÏ3f<ü0éã­¥´¨éJKMÛðøQQh7ÌÍBÏ•JUàE€Ð²!´òêÂɯñSò?Vç¹TTÐBS Å6 =™š\’¿s‡'ò—_|®æ}ûömˆòªEWWWK»)Ãé†<›f³üÛåcccW),.´u·MIOÁŸÒh4ý箜“˜ZQQàŸÈ»ÊÌÌyõÕo=·lÙ†a+V8þý÷Å·ßþËßÿâ¤BèÞÞÞeo-…ÐFS.\šÈ±vïZ‚‰•••o.[ö®™ÙßêóÁGFFì7Û¯ù¿5þûý‰¯%C±h R{{»7W¿üò‹z"´Úò³¨ù¡Å 4WBƒ¡¡Å›Å¤µ4×"/Y¬£þ‰<ÉYÖ).*Îd™‰¿¯ÿÀÀ€¢ÞÕ™72rsü·?lààPE òQc|îBÄçO?ý‰ÄÙÂ{mM䨫«»zéòN7÷Û7o L¯ãhäh?Õ^(BëüW‡×eüà ½{{ô^»k-‘á„EEEO\º„ÕÕ¹ú©Qù;7s7Ëi–è3®~ýÝ`)*ÎIU,Z³„n+è\mݺUÍZÝ ´Â9¡Á€Ð€Ðš› ÍŸŒ¡†ïêÔÕ«Ï.[æò÷ßxX]÷ÿOOïù$>8•JÅCÖGŽhqœußnwƒ6[óN²"’2üv›Ûó=Ä«ùŒî–·Ünª?B»an‹f.ÊJÏâm‡WÔn·ïnô´©©éˆÿ"EíÔ¡ÑÝ“ÎG:¼;ÝùºR­N¼X4$rBk¢^ÔNü@h0 4 ´¶"´zŠÅb½åæöXjê[¶\½sç}cc¬½}ž ñ-ÜÕ´i—egj›%Ë[Ú³³ùí°fýVK+^³gç¥ï-]üÔâ¯úzÉëKô~Ö«7ËLdläþ#ûy[޽rSâÔ*jˆÐñññ«^ù'Eÿ§Y?IõëñbрРDhQd‹™8[ªY­Å'Šˆ™¡[ª-‹o/qªÁr 4?<Bƒ¡¡¡U¬y¶¶œù”»º¦_½ŠMÍÍ=ráÁuÚiý! ð?•wöò+‡ íÞ<~ÆŸÞØí}7R€ з±1‘ÇÄĈzéflìl›¹ŽŽÈÿ33{$) £Ó?\¿_‚ìvìØ¿#~FSx½ìÍeÒf8, ­l„Ï™˜Ü’¸%!4AÌVs„ƒÁ€Ð€Ðê)ï'°âbEsýow÷ŽŽâ!èÉPæ×ÕÜŠ›ù ;š[ ]‹ BçççÓh4áûõóÃêêx]3Þ‹ˆ%ØÏ™³º @ñw:vFv.˜ ¡×?±>!!AÚ0™ÌÈÈH@è LäϺ¢ÔD"ÏŸŠjÀ› -Õ[µG@h0$›.„„¼½mÖ×Ç£²iee_WQ©×miiÉËËÓúC444äabÁ|ÖÿK‡?í´ÅD„f±X™™™B_:våÊGffÿutDþÔÞþáÂBŒÅzßÎ_‚¼ÙÕUâöÓÒ²Ÿyæèï¿[)üÈÜ{Ð3á!ôÊ×WÊö“D[[[JJ ô„#´Ðü" ˆ,!²™Zž·  BBƒ¤Rÿ—g®_ÞìïÓÙÙïêUñ[ˆŒŒä ¦„¯„„‚!z"°ÍË…¶?xPª÷ÿãæ6ôÒKLj ]óÂ?s2þôîO C¶MQ©Tí»Ó,„xó GhñÉò ´œo Öz„n¬+„„V ÖYY½»z5ÌüÈÊj •Š.*/\½Ê‹p¾1{ö°0Q«Óh4‰4IŽ•„D3á‰%%%…ïD Á¶Ä‰lx½ÞÙ™ø;熠OsgìWx šÅbýõþ?µû~üèGyn©rssµ¬X4 ´T¹Ð€Ðœ„JZ„FüœšNk«„„V†ÚÛÛ_ß³]TæØÚ\%::šàô…Z ³'üóÏ^:œðÖžƒQᢎjaa!‘íWUUQ%eÎðz´!h|îuiÑ]]]»Øx™±#æˆøÙø cßݾ2äBóKËŠEBO¨„@h0Lģдö:£ZIšcg‡UTìÁ·­™yÀ™³Dn7ˆ€1.t&'Otl%Þ•TVVΘq€ŸŸñ@´ŽŽ5Axæ7ÆÕßß&:…^⩵uÇÖ¿6üµÈn‘É5ëhë ¾þ2økõºøäx@håÍN(mвB9$ŽóR…µ5®.4 †D@híS||¼øÉʃ®\õÔ7¾»ÿÈ%Ï=£ $`A;÷‡íýÛÏÎù¨¯¯<L¤efffww7‘–mmm§ñû‚‚‰áÜO>1@è'žˆ ßx—‡§Óf#¡ð,Ò«þZ˜Ÿ›+~×õõõ¢Êô‰ÏfYj¸t7u÷!ú¡ñ6:it'ü ´ò&ø&2A‰<Í–2Z!ÍÖØÙ Á`0$rBk™z{{%fí"9[ÛÖ^ ᧯ÎÐ8³MúcccZph4AÜE°M<7˜xÈšMl^õÇ/>òH ?Bù¥‰Ð. —”Xn9lçÔ•*ŠŸ+/ݲßd°çn"7©©©Ò&` ê6¾h,”Ÿq:B+¡'‰  „†D@hõQRR‚Bøä¼ÙˆÀZ9dgg«Õgioo÷Ýųf9òüâ‹?ñ?ýÏ‹º 8𲝝/--M€³««Kª@ôcE AKi©à×èèhHHˆT9ð¨ñÒ-K½ë¼…ò³Éy“ à @h@hy¢Ð 4ƒÞØÑ^×ÒT%Þ¨ j ¤†D@èI®þþþøxB)©ú†!±üÖ•b´VO­êàÕÕÕ½úªßƒ©NüOßyGäôÙŠ'ˆ«¸¸˜àpNã‰ÌèLj~÷ݵDê6óƒ4‚gÓ•k¥‚gžd˜¹ÝX¹Y-4X¸vÇZóÛæIúÇõuÌtô¬ô"ã4op@h5Aè ÉâÐn„F`ÜPWÁdvI“IG-Q{€=ð"4ÌN=áJKKC\$±™ß߇íÖ¬?lïìn`2›>–@ÚibyÈÖi·±…ëVGí@h‚ÕêØÜÚ[öõõ¥¦¦ÿQQQÛðÑO<sà€?ñ ¸HÛ™˜"xF«P(ÙŽ0ZÝH»º¿zýêÉ€“è3¢nÒÐï ´zR´Êö®­ÝI«¯ª,Fç“$¡6¨!jÖÞBBO6Õ×7°¹ó\ ¨–’ÉYYYMMMW._>çº#òÀÑ»¡a---999ùù“- O<ö.U.GYYYmm-Á@4ž.C:zdd¤Ì? O$1áD[=É¥­]C%Óhmˆ»‰ ý÷hooEkï¡¡'•FGG_|qVss3¢biç¼@ødc`d³É@=Gª& ]TTD<=#))‰xþ0ê"È=22òÖ[¿áYÐÕÕÕ¥¥¥Ò(ƒA$iDE £·   -Bc&jÉø—D-T éõyéèÝ××G¡QKô_­…ÖäBO¬ òIvvÖÈŸ~ò1 ´’TTD^²Ä¼¶¶öîݸÇ;fgwàöíÛ––»OŸ¾Fp ]]]$énXø¥sçÔó3"„~òÉß0Ì‘Ïßò?1c®œQhtï€àÓÍÁÍg»OfF¦D|,1*yB>`cc㫯®}þyž}ôWþ§o¾¹DÔº4MLÅãk×OY¼Û‚ñóÏØÏ¼§ú˜¾™®™L‰ûÏÇG„Ÿq/=ÍS~~~SS“  áº->¿-ÿ`»òòr"¢޼lLJ‡yÙÚ2Ÿø{hhZ£s¡¡Á€Ð€Ð ¡*((ú÷¿¿óñ9{ðàé©S“tu=n܈øä“¾¾'%®KdÖ<\~>~[Ù‚Œ(äm_¿{÷' ‹ß…ú›'NˆYø„)l±E9V?¿ZT"‡ñã+篌_kÏ¡=¦—M?›^3=ÐzÀ-ÇmÙ:"M°@´€²³³ÛÚÚd8Èeeeò$º£Kª as@h@h@hµªÈ „„ ÕØØf±XÏ<óIVV¾\b"NGlFd­­­óß›S%z€žÊÿ¶]ýü°5k°âbŒÍtg'fl<ßÊJ´zöjwÌ](B/ÿh9º¬´÷>ìó³î.Ý‡àˆ¢×›¯'³MLL¬¤R®_?D0v=<½sgQQÁ€¾>ÒÎ8‰ ­%ϸBöý‰¿#nGèü[g팵›¡¡¡¡Á`@h@èI»–ø}vFö¼wçYMµâEeyF ~çgÔ@.„®«ÃFF èûüŒ+¡{zzîܺe²i³ÇV§›×ƒÆ‡”q¯øvŦÇ7mÀ6,Àè?¤¿ôã¥ÁAÁ¢r?æ-Ç?~Qô‹~ŒŒ%𱼨Ø}Æ—.Gh„î2—ï–s\áÐÐЭ[·–~²ïúOmŒ¹£e_@h@h­DhRfRy9¥¿¿NL¨eYY)Z    z­®®¬¬”‚¶r[ýoÍÕvb6Ï-·"ç}õ¡0oƒÁ¨¾¯u¶¶8BGDDð ˆß‚À”âR©´´Tâ“Y[ZcÖ¼{¨?ùZýÝÔP‘šsíêÅüü<‰Yyy¹¨%jÖÞBBƒ„ ÑñrиVÎ]醹!¯úi‘öŸ}ÿY\|Q„îìÄ 1++ŒLVBš¯ÛЕj¼h¢?üµ¸ûn²“¡‰RƒÌBµÐÉéyÜÏž9ƒîjhøg‰»û±Ë—%ÇÕfK$®ððp™Ç®ûkÿÏóߟ¯þÓñBƒ¡»:jkJÓRcoÞ¸pÖ_¼QÔµGkï¡¡AB•››K£Ñ¤ZånøÝ%/,Yþòrr YbãÞÞÞ?·üé¹Ï“BãüÜÕʼnEÛÚb¥¥ò#tVVÖÍ]>›û£ÓpŠæñ3Z˜|äT”L•–å‘Ξ=Bjð\TtøÒ%‰Aü,í½O¨ÇÓÓÓe[wãüü½ðí…ýýZx€Ð€ÐZ‰ÐÈ zcKSUEY~a~†x£6¨%j°„„‰’ SuÄÇÇ›¬21]mJ¤qZZšÑ£-N[$#4ÎÏtú?÷)Z„öûûpÝõP<øŒ(Úhá’Í.Âù™‘´ÛÃSÅÇülpð*GGܳæÍú»Ÿ¾ukþæÍ¼……ee;Çר¨Äµk¤zIII¢TŠ×¦•›\0BÏûh$rBBkHwu6ˆ7À3$^ËAó+&&¦+"Ývºyz,·X.&VÉAèü|ÌÀà~æQ´¢hy:àÔ鲋7øó7ø3:ÚîDûîÝ?]`µg à q1™Ì””6gJJÓW^ÙQ[[G|ÝÁÁAÙÆúð5xÄà„þ BBO.%&&Jû+<ƒÁ NÝŽ0ô7().žØ^¸<ÇÞ~¶‘QKK‹ «GF&<ùäÄÏ\Kˆ–m\áàà »•»Ér“êÊjíû^BBBƒÁ€ÐjEÎù$;;käO?ùzb•È-)%m92 ÇÅiÉ›Á`äääð– õööª¡‘Z[[·ššûmu%8ŸúÒ)O;#ã*UÓ»rölS<[†@tBBBðíÛ[t×Y‘ÉäIû¥@·0Ž\}ÿý÷€Ð€Ð€Ð`0 4D¡Aãß|òYfFb'i×mhh(#V,‚'Ô¾±±QáH,[{Ò¡ÁÁwnÞjjjÒ‚®ŒŒLàfA³ù,] :&*ÚpîE·£ ¤žÈäƒ6['9HC BBƒ„jçöš«![Öm¶4Rrr²Ä‰ó”’’244D¼ýÈȈ´l/-rkæÍ³àAã~ýug"Õê<­Õ»²ÝÁ3~ €4 4 4 4   ÂÅb±~ûqî6 +GsK›u›)í4¶p²´v±°ZøË¯%%%Dƒ–Ä¡ùE0ñƒ'&“I"‘¡‰ÈÍíð´iäz쫯ŒÅ¯•šœ,ž…‚tMM 4 4 4 4  =iµçî¼3—H©éf„±)Á-ô÷÷ËPÿMZ„njj*--„&¢¾¾¾ÿüÇš¡§O¿sㆄjÏw‚nlY­›q<@?##º¾±ËGÕÚ¢‚@h@h@h@h0zÒjddÄHw¯ªnSÝõ===·€ÈVÚâ¡¡¡ääd©V©¨¨¨¯¯„–)-9Íë—SÇ›¬ÕÒ8<®Ñ»19) 4 4 4   R B#R“j§Ò?ÌÏÏïììÿAo\çÙÁÁ“ÿéíÛ‘“§[ùÑDBÐb@à BBƒ$"‡ ‰Ðyyy¼êv•’’288(¦A]]Ý /8aXŸ7ò?}ã ýIˆ&‚ ÒÆkôž¡A€Ð`0 4 4ˆ_L&ó§ïfo³°r±²qÛb†àù½³›­½‹…Õs&2/^GGG~~¾´ûç –J³2B¿úªßƒcèœøŸ¾óŽÓ¤ê\<-m „ƒ¡¡Aĵ×kGíµG +©ÖÊÊÊb±XÒîKÚ±„D¨Zh úÓO×À¹  „ƒ¡¡AJ>µJ^n®TkÉÅ![Z"uBWuu œÛ€Ð @h0¤<%JI¶ÃÃÃ2Le(0µ·ú•W|0ŒÎgkþ§o½e] „BƒÁ€Ðš‚ÐØ}Bk™jjjªªª¤]«¼¼¼¡¡AýÔS‹1Ì›ÏsùŸ¾ðÂïÐe @h 4 ­ÍOÎâ)Zó¢Ö‰‰ÃÃÃÒ®%íÔÞH£££ÃÝÈ„BƒÁ€ÐZ™È­e’-Z†±„ÝÝÝg÷„Bƒ¡Á`@h@hš«§§'==]5ÝÜÜ,qvo@h 4 „Ö>„†\h-SQQQ[[›ô—¡ai§öFªªª’8»7 4 BBƒÔ\²eq455Q(i×*((?»7›[ècÎùsyþüs=þ§óç›C¯¡A€Ð`0 ´z"´ÐúùZã$qº@¡’ajo¤´´4ñ³{ƒ@€Ð @h0ZûŠÚ_ØÖÖPJ.@ÎÍÍŒŽ Cþù§¹ÇŽK©·þóÖ|öùʰºŸŸŸÊÖdVddä®.\¸ð7W¿ÿþ; 4 4 4 =áEíòò²Ž=„¼ÃËcÍš•È3g¾ùÛ¯¿®Y³JòÉDz­(Ϻ:: ÿïÿ¾‘mÝÙ³¿ûóÏ?d[÷¥—^”ùÃ~ñÅçšõaåéÙÿoïÞzÓ¾8ç%t×ëËXÕË©Úr»‹­}Óv9iZ×i•&õrR+-·m¥uS§ªÒ”-ÒÚ¤ÍÙGNÆØÆÆ€9Ÿb;>äì¤û©E Œ æùêQä:Æ`ø>¡ÄnùŠzûí_¶üžõÖOOŸþyWÆ¿xýõ÷ÈnÙ&Oø7ÞøIî2á¦àG¯½öᇕÐZBƒ„nóÏUiøÓUÞyçW×®]lí\Þ{ï-_–O›Ë¦Ïœù¨µÓ~ö÷Oâñ¡ÖNûæ›o´üņ¿°t×{˜[¶å+jqñVË_ìÙ³_^¾t¡›ãÜäéÓ?ë‘/6ܲ-Ÿöý÷ÿìYh -¡ABw -¡%´„–ÐZBƒ„–ÐòÁ™O¶vÚôD²åómù´ëkK3ù©ÖN{c>»²\hí´¿ýͯ[þb§3ãÝõÅæ–mùŠÚÚ¼×ò{çöìâÂÍ.:Œ wæÞ}÷÷=òņ[¶åÓþã³OÏû·„–Ð$t§9sæ£\6Ý™—­£æé;WÕO̶üÿ&zÊîSîZBKhÐZº¢$´„–Ð&¡ABwoB'“Ñ–ÿwOéï»ìJpE•ûËÑH¿ë¡™pc>+¡%´„ ÀAIh -¡AB ¡MBƒ„–ÐÚ$4Hh ¡%´„ -¡$´„–Ѐ„ÐZBKhÐHh“Ð ¡»+¡O}?Ü5¯W‚#ÇÔæIBKh º‹Ù=Ê×|dw=8rHm>$´„–Ð ¡=QæÉC «è@×’„–Ð$´Gyå#¡qIh“Ð ¡OdB{ˆwµHhR‡\EZBKhÐâ•„ÆU$¡MBƒ„îê„®ù]<¾»f$´„îœëGBKh Úƒ»ò‘иŠtåHh -¡AB !å#¡qù¦v&¡ABŸ°„®œt?:ÄõãŠ:ö?‚$´„–Ð ¡8 -¡%4Hh$´IhÐ@B›„ -¡$´„–Ð ¡%4€„–ÐÐZBKh  m$´„Ð&¡ABKh m$´„¦4ü¡xõ?àX~¦^Í3mÿ%ñó%´„–Ð ¡%4íL¯ù±é‡¼Çrùý,l$´„–Ð ¡ñ¬ï!Ÿ>ÞgtÛV³•g$¡%´„–Ð$4^5qŒ/–ÐHh -¡ M÷&tåKvß>Uk•ïßóvõ6üüu^gRÝ®5?s3—¡æYÔ¹„ /Ò~—¤Î¹×¹Òê\¼:W{ÃsDB›„ -¡yÕÏBïW§ ŸŒ­óÁ »·þåiò²5¼0u.vu²6<Õž®yò&Ͻ™hø÷OKh“Ð ¡%4ݛР?í‘dduO¶öº”†_c whòµåÍänÍrnòšAB›„ -¡é„ÞÓrûlýçu6¡ë¼dâXº™ïÚÑðwk~]õ¯F!-¡MBƒ„–ÐtiB7ÿŽðYèý³Ä6$t“¯I ½X˜Êe¢×®œûò‹O?ùøoÀ‘w¨p· w®p“Ðff&¡O@Bom.§ÇóÙѵ•ùðŸKw37fGÓcýñÈEàH„;T¸[…;W¸‹­®ÌÍÍŒMŽ nm,Uþ8Œ&âÌ̬ÎÂ#Ex¼ÐÐk÷n¬¯ÑKùlrñn~e1ï_~Á«‘]Z˜™Í§Fâ—Ã.Üõ*7ŸKD£ñd<3=ÕÂcÄ@$2;“’ÐÐÁæý»ë«…Ìdt$q%½œˆ]I\¹žJöö§&Æ''†&'†§ÒÃÓ“ÑéÉX6Ëebùéx®(‘Ï–ä³eùÄL¾øÆL6üŸÉ†|)—‰f§‚ÈôTøTE™Éði‡2é¡©‰p.%ãé±p¦ýÁxªo"Õ~íK%¯%¯¥‚‘«£ÅKx5™¸šŒ_ AR»”ˆ]ŽÇ.Å£—â‘‹±ÈÅhäÛèð7Ñáo#Ã"Cß ^(9?4ðõÐÀù¡þ¯û¿èûªèúÿúi£Ò^¼æÃM0ØW¼!Â-nšáâmn¬p“E‡¾‰ nÄØpé¹Üp³Æ.†¿ë…ºt‹‡ÛýJ2qe´èj8ŠFñ¹>6z}<(9å£(=Þ_<¨ÆÂѳâÁ¹É¡ò8=Éf"á° gn:(¨á )º/ç`nfd.?2›OÎæŠò¥Ã;L'²Sñl&>=w¢L:Ï‘ôÄpzlhb|h|t •ì ÷¦dâz"\à‘ëÙ©Øúê­õBucÏÎŒÆF"áG¨‰ÍÏ¥ö¯òY?Ø^ ­=|¬Þ/Ù? 6K¶ž<¶‹žl?}ò äáÓ§Á£gE×ì<{²³< žï<{þ¼lçEðâyÉ‹ïkç^”WºþŸ‡í”< 7Pù–*ÞdÏŠŠ7b¸)K·iñÆ 7qé¶~”oýÇ[á`øþ¨Ø|\:N^3¥ã§t ­…#ª|týà y„ïä¥#¼âØ®8¤ïTÛE¥#¿ò ß|yï{œ‡÷¬¯Þ w:OËpxúX m@B›„@BKh$´„@B÷DBŸ:uªá{^…Ýs©~ Ýá ½§]Ûœ²Ê@Bwã³Ð•»çíêÆÞsÂêoæ•'¯yê|¼;ÐkBËIè®Hèýººúéëú'©ÿÎæ?‰—|=ÛÏçÏŸ—ÐøZè&Sv¿'«›|gËç[ÿœì~–ÐûÏ ÷<#}T ]ç…à@ý,¡{'¡ä…èÙ~öZèNþ¦vû½ä¸^ -¡€žíg/äèä„þÓ·ûžðv¥êVÿnÍ“Ô|ge—ßYÿ|%4Ð;¶·Vòù|ÈæÔèðîÛºsºº+ß³_?ïvlõïÖ?àÛSÁmëçð¶„> í©`€¶õsx[BŸ€„ mý¼ûZè­ -¡hØÏå×B‡~¸ððÁ¦²mÛvvž9>º±ŸË¯… ¼ðøÑCeÛ¶=}êYh€NLèÉåç™ë¼]Nè­ô“'•mÛvÿþ½å…G)@w å¼û*ŽÂéõõeÛ¶­®­Ü¹•+ÜÎ8º¨ŸC9ß½o ô]¸1?uïÞ‚²mÛ6·· …ùpµÏäFòÓ $@W$tdðB& 7“ŸX(ÌoÜ»û' º endstream endobj 693 0 obj << /Type /XObject /Subtype /Image /Width 961 /Height 700 /BitsPerComponent 8 /ColorSpace /DeviceGray /Length 12169 /Filter /FlateDecode >> stream xÚíÝxMçÀñ7“ˆ½7EkÖ,¥ªEkU«tÐm”ÖjÑ¡jEµvQJÑ–Öµ j¯Ø3f"!‘yÿ÷='7¢KÿhrßÏóôæÍiνç{ï{ν9”º7ª:½®ž|S©Õ T²x*ðåBš»`ûÊMÝþtÑ#Éô+ô ,x×?ãÀ÷œÃÁ5›6N‰ûòåÀú÷þ‡VH\Qó:ÏëXA¹NÓ£tÿ‡Ëã8F¹¬'%"ÈÖF½$*uþPòü_”ήt?|'烂‚ãE‹ÿá’ù»’éW˜,Åïúg<(¿9׺°ó^䔸/ÛK‹{ÿC“ë +jP~çyŸIMå&›”*rtÀ¸<¾²Ä•ž™8Î^=ß}°yÕð*¹]ŽûÞzIXj X­“GíÁk2T婞3 <ãO癀Uõ²JÕvrìãþ‡kfLeºy¦›·½ˆ‰g¤³¦ Þ^Îï=“äàã–äZ΀3»RÀz)äcûœôéþp¦?Ì®Ý28GÔî/ïÄ3Ò[§oœÁóæ•oÞÎ'1`÷Œw³oÉWö`¥úâ¯~‰Œý¥ˆyˆÿ+ç~Ô7ËÔí…À¸°æ'¨æ+£B¾{ËœcJ¨„o|Ü…VUd¯>Í6%(>>hTFU9È4P©Êþ—対·nÞ ñÜKrúS³6×ßå8ÖϬî'T ˆºü½wá±þºÆ²A/t>à8ÒY=¿;þúWf})0÷ŒÄ뫇/U$g†˜ÛyøírœøÀ ø‘5Q<;ß/G†°‹ÖjV Þ_©7ƒšéa¹µárb—rô7Eî9‘[ùöpú„[TœrBB¾Êf®¸,\ÎM6£  , ‹XY Ãw—ûŸÐgüޯіØs£Ý^½0éà«ãqŽÓ“²ëU#è­ÖâCfd7?ìmÿ˜‹cß7œ.¡k+þW´9þì€Áf 4O},Wƒê8›°%6zmuól4äŒ\ß`Fõƒª÷?îØÓ\µ=$¡ýôÃsÍ \S,Ý7åˆõÈ·Øu]®n0«ü’…%Ö\Ù^ËÚòžq)j}e°[“s “K|sxõýôXÜ ÎKJ‡ÅŽë°È±ÇG¿=ºÝø¸ËÅô£»·ßJÇÁE¡£ÆÄ\ÓIŸ?r}ß™qêP¿åò‹5Ÿ[ØmÐ^Ù¬TnÙÐ{­Öψ âû¨ûñ0ð¯±ßuÿˆ ¬ÎI6•áÔéÆœÉª _T°_cU7æä¨Ž³ÃåYçõÛJp¿vË¥ZÉ©ÞWÈzý¬òèµEýÉÌGüËz]½ì8*Ô1"zeŸCò^«C®Nî0)Xú*ÕRvEÌpTFé6BV´z#L\8ôܨö?Äž¾óçú bí¸ê!¯+em×½3§Ã Yç®fJ!¥*‰ÉËûÚ²„ëW¿qcD§•²ÞCUй>´ÝTÇé\JÍ =±¹ïzÙpá‹oôŒË±?ræÀ“2éòî>ëLIûâf½÷åùY?KÉ·È¯Ö¼}OמçÂôÿÁó@ÄäöcC¢‹ý7w—_; ¸–° \wЬóK˜pxíe¿»^^yn“…íû]ˆ{U©¦²;x䤈£cçõ?-/ê‡;òÈŽ~«%pù•ããBs(ÕSv ø`ul”~rÚuæÂ‘ÓââôÌ{&bH‡5a&à>²¦{¯Ýò©ë|f¡¥n’€_–‰zuÌröŒs¾±@žÓ§ßË›j½<¥GÍÌ"Mmz¢±JèIÈ`³Vœ—þz/#õKø~Gzõ„Ì3¯æÁ’Olq÷—ÇTÖ³Yõko°¸ˆL1¯e‘}\)àíRJu°¦dyâCœSèUŽ*ú´|ëœ(‡]ֵϩ¸<®ž1š¥£X>×gÆÈx7å¶K2ë€cj™»U(UTÖ(5DÚZ/ò&à‹z½É¦TC™£Ÿ×žpyY_alÈOJªÚÏȇBÒÛ{ 5õ“v:/ýïsc¢ùŸµK¸þF‡yÕY! <÷ÅV2û±Íc2OVê¹E üêmfözÕp˜§Û¢"=õ¢Ÿ 3Ëôµy¹pxé€ãõ}㨧ì…#êu¡P¸^ªš»BµºÞáÞ|!ÀÖU߃ñú)®Bœs'V’)ô»2Öz&™®zÉf*råb6pX)¥>˜òfŸjî zê³Avé{i¤4Q>W‚3Ykxk° W¦hý#—‹ž~¸/4kûáSúÿ˜ã²¿ëœ U’€W‹™%©ÑV¶Æ…íæ4ß«ÅòÊrëŒM’]ü¶õ—ÌÄl9ž3ÚcmÊý$%T–êÖ™)¥uÀÖ¦u_iªjK/3üT¯YãŽ×rs­m`½FK9•ç‰ Öl3Þ-!à’f"¦ŠË|åœh[kÌ£M²´–÷Í(Gì°™ûn“²útš>­,[õ(¿½gøêQý \Ûly\ 20çn–tê ©l†ô×\Õÿã»Y’½‘zU|ÔÌ ¬€ëË0sn!Çz•-v¶R¿lXL¯´ñy^°¢—š/Åš|X¾³6zD{è€Í#?^Ì&Cgi©Ž6 Áb6×H•£¦™iëaNðz3«cjn?-ŒÔ—=UîñN¬˜«¶a&ÅFæ¼9ð÷ó|êöÆ£*0<£½Î½ªÖK®jÈj}šÅœ~'¯éáP1Sâ–zMôªPÆ\·•t3›Í¿j2A¹GZ‹fM¡7F·ò¹ËG&ù¦Ð'ã¬åíÒÕ¾ ¿ýØjud°²®ÇtÀf먫uW4”OôM¯˜‹$ƒ5“+©O ¿2pÙ‘ò:à¥öÓã«ê}±fæÏšçôa"Áß<“Î¥¾ 湸LËaþa"ÎXµ;OÞ#‹gÐÎw±¿kcI¿ªï·ëöî£lÖ³_yýÈO7¯S²Îœ}ê¸UþÛc6FÈY{µÑJVýdœ.!`÷ qr}u¿_¬€g)k~öª¾éÓöbVà†ÓôJpö1 8‹\R*ã2‘+?t01àªÇEŽMéšð@y&ñ†å¬¯»žêäïvÀ™a¼ÆpÞ-úkö{—¬€[Ù'Yõ“ð3õÔ%ý;Ë£Erßù’äˆ^­Ò…lQ &ûìÇr­RݤúÓòxmiU¹«]=/Îí—÷ì_H}#ÕtÀÙ­¹nbÀÖsÐÁ0gÀÞ3¶¼ç+`3gÕÖ§õMËÛ?Ó¬/ü¤Ÿ•ÿO^fý~zùþpøÑ„AVûn×—}¥îb<õfÀE¬€›8n*q;G²¶–²°¸V³[¸Ù ]fèQ‘˜÷REÀG"n}© Ì±žÓžÈ]Mì¥|¯åÛü±,«ìi^d*% ¸…Þ’Vf¿‚ý6’çÓßÉA ¸£Ì5ÏðJëÙÒQñ¶ö¾ÙVÏ9ËÙókk¸ù’çß~ölN]ÒÓ?<üÖ€×Ê€bæµáü-Oë‰}bÂûÀYÞØlÝîNÍŠÏÿ’µ­müv’÷Û‹KßϯyyGLïšøS%o½ÅR3Gã„”WÈ·øKù©¼»Ù’*4àÎfcß<ÊöÛHÞçÚ“{ðçÖVŠðï¿foã”P!ögZ^“¾pá[®Ô0£yìÓ¤gµfPÊÇù>ðÃý¯Y·sù€çˆµOÞomí„÷ÃÎ¥³šŸ%ú¨™¥?‘áö¯‘‡L¡'¤FÒ€KÈOfø•^±ê®km†âÓ¹LÀ¹.™OB\¸a–2[œ™M_ 4Së¬e“ºRÛíDy®™]@u³sàvgˆ³¦Ñå$ô–€ß³¶5=ë€?ÞQÜš¾ýr‹Ò@:ϼ–Ñp5{¯E±­&³ë·/Ó‰ž_³?ñ½Ï˜ƒnÖÓ¿ˆÃl°«ìáçÝoð>kíªå$?f?½ÏÔ«D³Ï›e ýOnn^)•úÕp ùÌyÑkrœ#âwom×þ$ opw{OÆ$ñK°:vÖlÜ4ÖçX6Ùœ;üæû®p…¸#¥ÌÛ=ײ%\ÒCF{¨‚[éíþ1ž*ݤnð<³ í5]¤vҀݖ:ÞPª^´¸„ãt ýd·Ù^;T¬X­YÏË2AwØlýeÙ$’K¯ôWòx•³“²êUqn:ªu±Ï›·`‚Ó»ïŽyQ']÷ö»_/­Tþ#rã–€ó=SN¹ 6{¡;ËÜlÊýc¹›ýòî'7†OR΀õtóc7•ÕßzdHLüJ}(ŽÄõ]¯’úÿUüpLi5EüÜT¦f]¿mÀÌž½¡Q6iÀ^£+õ²C¯5d!ý(Ë¢{𲊠rª,‡Ck˜UÏð²È'á&•ã7çR¾ct‰uds^¥ZÇoöº}ÀïÈ}û·fßy’€ß—É^ªÐó |TžsWÙÆeOïw¼³ó¤DÔs^’nžœÛîpôÐ[‡‹åÒÆ­þEÀÆÈÿˆ#c¥uÒ€UÆ=rdwÜOfj×[äÐ ~Ô¶…ôs³VZÇÎÍ1¿ÎÒ ê‘ùz¾±úhüWÇN;wC–<è8ø›„ÕÔÏv¿É±mQ1fU¸íº—ÄmÜÿó*½é˜$`UùzÌö °¥:`¯‰Û*ëîjgI1¿·3à";äÌÖX™ëiíÌ ú7¹ùÎ{–_ää.‰m§'¼1Lz«p£xÙ·!j÷iœ4`•ëwÇþýq³Ì*1Fdï9^öÞœHo‡¿·ë·¨ù΀½Ï‹´N¸â1×6GÈ ½¸}b#·œmYÔíÎtL.¯¼ÞÛ1ë–€Õx¹°9bÙUðãQrqw|¬Ë}’£ˆßK‰ã2~úií#ëW|°÷ìÙ½’îIi2jÉÈÊön‘‹zYoª<ë—ÃÌýÌcT¯¦ó¦­ü<œ–µäÛöérù½¨|íÿM?³Ç'ãKÓ¾y.ŸŸYɪþù‡.ù\à~hê§õi×0áƒu5',÷Š[¿ZJù¾?®£òx{úσQ/úårÞ }Ç) úZ÷O‡ogµ·>°ÐÕ¬&ê ?ó ÖÐ/Êçg}ÀÚÏúW73I{fòґϨ~åU?ëSJ-üÌ'¢ vœ÷y¹'üô„ÇãµIËÆ¶ôº«e)à—°‹ªªŸÙ‡äÙrÜÒqö‚{Ÿ>úÈ­w¯$×vk1vñ—¥íÑW »[rs?3u¬ë÷€>-ïWI©~Ö³M§‰¿rűK'¶ò(ê×Påò³öçÕò3wAÖ×gŒ{ª„µJÔ·dJ§{÷zUÈ/‘Yqr¿={DµÊ~úUÞϼ™Y²Ï¸ÚÎk–°hòË֨€#›%)åg^#rú=om¶4w³!äWÒya–^sg÷* ºé©ù»ÖRfñkjíö6«³÷Çæ–‚ýg-è[EÀý'[[î¤!kÞ_ËÛh¹ ªíÍ}pg^›-o¿ÏÒØ|< ,„Ûµt¤xgò„xÜWË»¤I[ Ž_§…(t‚ïÔÞj÷Õâ^Ì›ÆhZë4°uWâÞë~ZÚ¢§ÒÚ,›¢ýXB¼Süï§¥m>/-Pæ0÷´ð*ò>!Þ)ßköI[ ºia)7"Ä;¶®Á}´°ë뤱êñEZXŠÃÅéðŽõvÿ,«Gx¦4¶Dó^J Ëu:¼cÕïŸe- ­-ÑéÂi`!J&ûxú Íuß,ëÛSÓØå;Ÿ–¢Ñb2¼ _¹oub‡4¶@Ïÿœ–¢Ëp*¼ ¾½ouwZû»îA½ÓÂRŒmO…w¡äÉûeI}®y¥±%ú¥~ZXŠUu©ðnœ~ð>YК[ÒØ¹…dO ‹q¢Þ©î“í6&-PÉ£ia)Ò]s#»qßüIáOo¤±zsFZXŠ2{ið®Ü7Rxü¡4¶@cº¤…¥h:—ïÎ}ò'…9BÒÚTmK´°&ÁAÜ5˜€@À0@À 0˜€@À0@À 0˜€&`€€0@À 0˜€&`€€0@À 0 €€&`€€0@À 0 €€&`€€  `€€  `LÀ0@À `LÀ0@À `˜€W øçÀwnù~é²Äá„@\9àªuÌ-鿟Lþ"ž ¸rÀ_Ç”ú ¤Ê€}®n,èXømú›û0àê¿!½Ôº¸‚Ö8ÿ„“ñu¬€}‡r~€×xm|aÕF˜aº-ñÞù1æ†Øm®Ì|g|\8®p1Ç*¥2^?gBýB:êÓÁ¢~W†ëáÛBÀ€+Í©žåÈ©‡î'pá€ÝOÇ·oÕªÕW²F)ÈMÖy‡uÀ/Øo 0àÂ7Lü%UVYa·Q|å¨5üž€x¶¼VÊ)#•:µÇ:ï˜Øÿº5\IÀ€ëœ#ú´»5(êñQ c0»µbuÀÃåI³9|…€× ¸‹ IüÌUkU/nmV•iµÙ ].|!åõ{¡x”NµmJu°MWöí5äx&îÆæà³ëpÙ€3ùusÓõë—Q©Š}ç÷ÈѲ«9ãÁæ÷/úœŸ;®ú Ìß €€&`€€ H+ž7´mín ¤Æ€K7ï5õ×óûæÑ®NA7Rá:S¥æ=§n8¹oÁïÔ)äFÀ@*ÜÎTéåžS6Gî_øå»u »qש)à+¾üé”õÁ7¸ëd xP`!çð£À’{µÜ…ÿ޹ëd ø)᎔Šw­§Cñ6àz¯žî_Ü]pám`Ÿ›§Oò®ï­{f ` ®4Ð:]ir<0] *¢”[Ïmñ§z²n·6úêŒÇ‚ÞÒÇV†É©áé•ú1D.eQõ·Æ8NMÊBÀ@Jì~é°>ýD9”zRºÚÛÀ~âßqе0ðë²·kÏÓ¥“RÕ¯Ç-ê0Õ±ÝKµüE¦û¥$úèçæÉRl =M +µ:Üõù )jü¸c¹»îÕ¡.¹GÏ’ó\Ò{ì¾^F_ÿù a =Tªêï—\,JÀ@Jü‚´Séo ¯Ô@{/toëpuj©ø yÅ {ë€kÈDë w± "ßäÕÓm¶” 8cÔ\UOÛzD?;àÙ’Û\ò¹x„}D¬Æ:à–r`¡q- ¤\ÀÅü^×§ø™X5óË®Oó½3gXåGýòšÃ¹×îÒ"WyÙ|è㵯–~ý¬u›'‡Œ*®Ò¿;uéˆ—Ø ¤dÀÿ¤|¿òæËD©ÌAí€TpI ̧<šÆr'` Õ¬†‹¸*Ç pXY ¬j˜÷e³lH•s`w€€0@À 0 €€&`€€  ` 0 €€&`€€  ` 0LÀ `€€  ` 0LÀ `€€  ` `˜€@À0@À 0˜€@À0@À 0˜€&`€€0@À 0˜€&`€€0@À 0ÉðCÍ´Ôçgº7­AÀ€Ëœþ{ëšçûÃÙ²üïnñì`\$à•2ëéRt»]ï_œGf0àpö0_Ÿ”9 ¤¶€Ÿ“‰ö`ù27³éûlïA-2Þ ¸@ë/>L˜\g¨7°ÏSJ_¶¶*CÀ€+œ#þj#Ï›¯Çë$⠸ùU –)f׋×äRœ,óji~nW\b¸ŸÈ…1u¼ìoüãúRŸ;•Á¸\ìÁæÞÞƒä3¥Š:[Kå™)}™B.°j¾É!>¿’6‘‘朥»ðr)e¾?•Kõ‘—ô(ב© ¸RÀzâÜéçp‰|]©ÁÒ¹¢ÖD~² 6ßVüAžT â=Ù‰¸bÀšW·È˜ÌjŽóv[­€s&þœÖêÄyöB.ð—‹¼íÁH=Gž.mj[ªZg’ýö·µ ¨ßÂp¹€WȳöàSi¢zËkf˜©A1{ }6ÄÝ|_¾f&½9œÓ §}ïAÀ€ËÜBN?j¾–9é£*Æï6»£'È;àñÒÙ칺ÿ€ê,ýô°š¬S>ò3®°ÛO³aìÐÅ7¢[éïÆÊŽ×žŸä8™Ç8ûÅøÑ:í”QJyîѰ÷‰ØZJ…D Š€WXyt>¤¯¹©–•óû—E ‹9?È‘A¬È•žæ3ZY¿ù­¡u¹&“p‰€ù{`€€  ` 0 €€¾÷¾ü¡c%ORgÀÅ[MÜ0¤InRç:óÓ}–…û¡SeOR,à\MK9‡Yš–ûÿnëVªõ7û®%¾s×Ép=àV´®óØ=s½¾ËCŽO×/ÅÜõ@r\iÅ›ÿ"àÛü=°[é6“ö_ã®RpøÎ¶gàÜõÀð+æH“ê™VæHîUZeËߪ¢ù¾BOI¸D§MÜš6v⽦âÀî€Ë¼Ì‘S)Ïpy^W‡y[ÛÀîË%òŠcšð8‰½ sߦ‡/‡šC¼OõQ-ÍÏåÀî@ÊÜ^^Uª¦Èh¥2FÿhïÄ*C½ÜZD™€ÛÈÌLê±`Ùfñ~¨¹·÷g2ˆƒÚ®p™¦T¿È]û”j&Í­€3ÄÚǨÔŸ=“Þ:j–x™}ˆ÷ߢr0à"«ç”úuÕ—’GMŽÊd\Õ~+©º8L°Ž¹£qâ½6®p?y8Sì'äuv™ý>pkio.(¤®/=­+ئr$þÄ6 ¸JÀ•ä£ç¤Šo̤JòŽpéf.(ª~L†[WººMeLrˆw\$`ujå¨wµîDŸø¼vÀäks~]p.Ç3,f¶Ï„z؇xÏLÀ€Ë<.òÈ<¥úÈéÎRþQ@—˜Xs¥Rî³LÀãä=ûïÅ8°;à27éhvYÉÇ΀«Dœló̬ppÉ ±? ÞvE¶(•ý‚}ˆ÷ÑŠ».°w¸<¤”ÇUy0ñmsÈñZÖ9 Í º¸ ŒüróïîØp€ÿRÞbö×Löw2Ën½Âƒ ïëžÛ€W Øéä!óAŽÏ¤ ÇÄR_À£Ä¿ÓëSc7g"` õì=2BäÜŒ,•H…sXY€€0@À 0 €€&`€€  ` 0 €€&`€€  ` 0Ì]0@À 0 €€&`€€  ` 0 €€&`€€  ` 0LÀ `€€  ` 0LÀ `€€  `LÀ `€€  `LÀ `€€  `LÀ0@À `LÀ0@À `˜€p›€=²úZ_ݲfu·¾Y=<³¦¿yqz\6àlñǬ¯õD^´‡c³Ô“΋+ÊÈ¿½iþ7Há)ôvÉk¾ ‰Ÿl¾æ‘_ÕSQ}ÿEÀÙÂg0±_y¬ßyÆ|}Yú&½ôÎ# ¤tÀO[‰–~C¥¼Œ•GUú¢YÍ%îÕõv\ö©l*>kcùgª˜íbßGdqÑÌ ¤hÀéol×§í¤z]ùDö…x({¸Ç‘ËïY¿qF$îýƒÛô°ÄVýãÂ[*ÕÒüÜ® ¤hÀju¬¯RóC<¼¯û+•Ã1GÙ7—uWøZLÀÕ¢5,Ý36^œãòµñUkûË[*O3Y[» )ð§RWy†ÍVjILfÕTÚÚ{^ öÑ.0ï0“瞢ž Ïê¡×åó¾l®pU髞·•zO«‘Rظ´ sn!gtL7ÃŒð™‹Öm¾Ñ[Ê ¸@Àî¡«Ô`Ñ“á‡d ÚyHÙ·÷Í…ÅuÀK?ëŠg¶)_‰»jDÊk ¸BÀj~¸ûÎýfpbUæøÑ ¿&¬k耟’AÖõÎoS9%¨Ÿ­.pG©?Ü ¾¾Ú@Ï¢í€KÉçöüz¤*"³Í0‹Ù9cïºvã}`À5.)³¤¾4•ÙѾ »‡Ÿ6ïöŽ2;±vDÑþ&àÅRÏìÄÚ]Q=€XŽ‹´þd!slÜZ•°j)KŠùvŒ1×?ývýáq²U©2±ç›e(;YüõÕ"ÎÊûJð[¥_Ø%OÝn6‘»¸Ksë(Ïßê€åc=¬m…ÃO>Õ[‡²k*£•×o—ÍKru™«–á‰ÛÀ&à|×öx[ÿK?UÅ:âÝ#Ë^ᣔ@²lMwOš€KY‡¨k`jÒ_|Üújõtj›Jx¨=AÎàØ«ÞmM¡¯ø«ªf#ÙœmöBÿ!à6Ò%ñ²t^zöÝAŽ0,Ë#:§§d¼3àçÄúË:ɰ£Œ6‘/•oÈ%s\ʇnüîé x¦ä².¿Ó¼?ÜX–ª–q}ÌE¿‡º0,©–®î©è‡œ+Ç ¼™Û\?’×ì…ÞW)]Ãàˆ"&èÍ•Ó×Ù*=_‡KŸ'ì·‘&Êœâ¾MN;žU"B[å*Ö[~äH–€ƒ–‰CΛ=Ï ç](úœ½ùÍ9ެÕófNíÞ#Jc¾¸9…®#7Ü­€}Ç;ôeaïè3_5?ui’%àƒîOt©a}D²Ò qUhÝÎ>jûõížuºTK˜çkòÑkÖîç²µí? ,ÜôÏ‚µsYÿØh‹_Ìj™ùÅ[=ìÆ^h ™þ‡Ê®oç˜X0@Àn ¸Jù¨¬j9\9`Ž 0 €€&`€€  ` 0 €€&`€€  ` 0LÀ `€€  ` 0LÀ `€€  `LÀ `€€  `LÀ0@À0@À 0˜€&`€€0@À 0˜€&`€€0@À 0 €€&`€€0@À 0 €€&`€€  ` 0 €€&`€€  ` 0Ì]0@À 0 €€&`€€  ` 0 €€&`€€  ` 0LÀ `€€  ` 0LÀ `€€  `LÀ `€€  `LÀ `€€  `LÀ0@À `LÀ0@À¸Î1êëkQ£Š[ƒ.£²•ÕÈyqQMÿþ¶™HÙ€Ý.Exš¯Dz˜¯ž×‚U=༸¢Œü»[z û€žBÏ’jæË¢3—×™¯Õä;U´G­p™IÀ@ ÜNºéSïkß͉ͬËëI/%`À¥.&óôiyãyA;r«²Óš™Íß.+–XÅ 8[Û9FdÔ×\¿ñwÛ÷òQªæL91­>)°úý¼>êÈ]D&)åºKÙÛÀَů^¾Çìõ«l™uþèùmúŠ£$ni@ü‚ªÁF¹ð)ð$yP©½;•:|Z©J2$!àòœR›€GKWôVÑ7‘ù•jà˜Ãp‰€[H+•_›×rª‹Ô±Î!KÌ…]uÀnWwšá£&à±YÍx£#`ÀÎ嘬ÚÈ“J5’wÕüëÞvÀµ¥—s'Vqe]1b›r‹¼ÔÕX) p…€Uàa5;ÜK© QSÝ.™×]p[ig.Ë«n,=íåmú[§ö ¸DÀÃÙ®,2ƒ_–’÷®c®£¤¸’Œ³>òqc›òŠÛÁÛH€KÜPºJG3øÈñ¡”L8‹Ã¼»¤šë€3FpÓÃÇÍ6ðo7²˜³ßêUTå&`Àö>!ÅÌàa9qR%¬Ö:ê*•y¿Ù ý¥ôwSyw™€»Ê¥*Ä\Ë¢<ã×0â«urÔœ•oÎy<æû/Ž0g]''7]ß"›”ò\'»†Î w¼©¯vJv¾CÀ@JÜ6 »=èPÏ|y$ µ>}à‹C§¾ÍÐÉüÝB‡i³»äzèÞe]èÙE›«ÕZz°')ðí4²&ØÊþH}ŠÈ«OÈ« ¤¾€ÛJèœI'dìß^áÕÏÿw=Ò«ç9ôS;·¿½¼I¿Ã]¤xÀ ` 0LÀøÇ€«Û¸Àãÿ¬/“óä¥Q H¹€ †È¹Mÿ_{—›OD¿~XŸŒ“Ê ¤\À-ä«ÿ·½·Ä¼÷Š>©ß#)ðûÒü.fHIS·ÊÚiz\mÊæÕÃÍölái5ÛlS¼é4Ÿ7f­”[5úaû¥¬å Y¸ké°üJµß ¿N+9-$zZ7õæ´"*ç´gʌٴ¨£õÊÒ=ý—tÎ7­1ÉÀÿ¨ìx\õp\ž·"*´¡9Úä,‡8Jô—oã6œ—õíâï+Ù•zôbìÖy!r5ŸêsHT¸ð¹µ ü€Ì _.Óu–¥Â#^ý«|JÀ@rL¡»HS¥ªÆîÌ­TåÐàÌ:`ù(Ó#ª¿„—UÞk$²¾R#¥­R¿ÈcJy~'ß2…¶–O}T® GQ•áÐÕ úÕ<‚€d xºÔ0Q}"ï逘as@w}ÆD}Ú@†(Ž”5þ5³ç1RWÕë_IBÀ@2¼+ÒŠê™ žkü–ùs^1‡Ô©,#ÌY>•ZÛ-ãÿ"àŸ­#WÊsú¿'Ͱ>ÉðÕãVTd©x´p+`s4èJ&àæÇ‹Zü—[GÔé&MÔ$)c†å HÆ€…[QU–éÎ÷·¿ó¿yæ-y—€äøžÊ['›ùò±y1&` •\RÖ˜übTVR]Àn‹åØ× âó×H@ê Xùvßqyר'øsB 5Ìß €€&`€€  ` 0 €€&`€€  ` 0LÀ `€€  ` 0LÀ `€€  ` `˜€@À0@À 0˜€@À0@À 0˜€&`€€0@À 0˜€&`€€0@À 0 €€&`€€0@À 0 €€&`€€¹ë˜€&`€€0@À 0 €€&`€€0@À 0 €€&`€€  ` 0 €€&`€€  ` 0LÀ `€€  ` 0LÀ `€€  ` 0LÀ `€€  `LÀ `€€  `LÀ0@À `LÀ0@À `˜€˜€&`€€0@À 0 €€&`€€0@À 0 €€&`ÀUýž3É— endstream endobj 698 0 obj << /Length 2744 /Filter /FlateDecode >> stream xÚ•ÙŽãÆñ}¾By£—ÝMRd€(Þºúeš ,*1¤OHÉ2/Uw`ÛŸáÖ2AñéLO:c™”…3µâˆHJÁˆ»÷̱-”ÞTmÕ\ÙmQcŸ§U櫾–ýÜ–¬û>Wâ V¤ð—“mìLvd6ô,Ò|޶úSw­ Þ»ž ;”ã^DKÁ§›kV®­ªO‰°d6,& Œíù\Ú‹m‚”„ìSö„ Ë“W/ ¼Ñ£…GbÇúR”Kw†¢„¯ÉîeeºLXq]׋3Ú';J2 9ÞñWn·K‚õ§yvV qÏ-^X %Ã`/g?F:*.öÈ"(`ª„óK׌¾Aø±U{ƒ{Æ1bû™¤³Ã„i¿5Qàù?®|Âó£äÚ­þp)ËöW]’ÊEé*Ï‚}ñ¯áETÃlÓg7ÐÍ]Ûwu‰æ¨R¬˜Ìƃ,pVNÛ­p!WÅ­¢|$½\ë£]”s´Ã-ÒÁ—¼P¶èñ áN6…»bâ– @»¾f­@+NÝx‚lë˜ãu<¡0e/ƒ÷/ÉAç›F6’ ®Ú9Z”Ñ£&pçRZ¶ûŽÂ:,;„®Ь”NUK¬‹9ÚcÒA–aV´‹á7ÎÒÍÒ ›Åï¿‚¤(½¤(Ž ïJ0Ýb_åˆRI¥yäcà’r¯·îcp‚ 2¬E6AâTQྖ?£ø@Õ"'T¼Ê<Ÿ¥Ü„¤"ä@ù:xOl-›hVÏçKÙ÷!…úÿ2<’æW×»4L£ñ"ê:Œ~èБGçêMŒÍ®ŸÆa’dî%qzx92ÅOSr”»œE‰'!ŽAŸ. Xt¯$Cƒ Õy,=•õ ˆÆÐuyý NBÙT²‹%RÃÆµ¿¢Œpˆ.³r“ÇkKÉDϨ8#0âQp€ÞÝE3GÈþz>wú˂șàŸ[%#_¤2:T÷Œ@/GY®á‘ áõ\kæ¢Ñâ)š%¿¦Ñ²{=*Ôþ Tº¢@Añ` ÄSàÉ•ƒ4€ å÷ x Ž­7«èJõ,]ÁµÉ;x”?¹P迳Ô/õ –ÈÝ)àìÐ&Ȉ/àsÇJ7ÆòÑeñÁÙê"§+ˆ°ÎñN!`^ÎüTðWâ–³‘¥u%q¶éøáÁp;…Æ(ãô¸Øˆ«âqat¬ϦàB”Wœ¸UòÍc 1ËU#±p*£P¡ uj0ð¦Šãðr‘â0$g*MœjôJÀ€ÉÂ\ìV…éïÿóá>‰¢ào/Ü_3¾`¦xj‰­’êÿµH<³Ì!= ¦Þ>Rô5:ÅÈÐJ¡è%GT&—§‰+@Ó±øM¥øM§-Nq´RÌzM†@u√HÂòܵ˜ä¸æðŽ Ô{tm–Óv|:U®6D9د½D¢òà«‹=#´Ê¤­‹¹Øg´—’Še“KÐñgÒøJ* )(çÆm.õUvÛ/ñÐã;ïê=ÆJâaï=>m‹Â1ÈŸÖÙ5ãžjfÆ6ñ²ò6¼Z Q¿„ì/Þ=ò†]îó|ìÁ˜ò - ‡ŽÍtú5Z<¯Ü·çoQõT'ß¶¼<«ÎC< €ÎJœM¹þÊåíj&Î:§þ_$ö ÝÖw¾á ” b\ &‘tÊB,Iò/OîGØ^-ù¦tŒ«OîF®?ƒ®)!1wuµ—ªÿãÔŽÕ™ÌÊpS6Ï!±ˆ¨7 Yj˜B’qhîÞ¼kôæóîî»õΫŠ!ÙÎä)ý@ZJZJ6­óà™çØJáïmâÆ‰7+@Ì„ÂÙ ¢éxIÐe¾Naeë÷^ÖJMdPÜŒÉáóJú¸ £H;ªîý[xÏ×§gëúÇàeÞµ ^otó£œÏA’¬%ssôšÀjT²vJVlzžK—à orlâ$…Êe45¥–ÌþÅÕ endstream endobj 695 0 obj << /Type /XObject /Subtype /Image /Width 853 /Height 601 /BitsPerComponent 8 /ColorSpace /DeviceRGB /Length 50554 /Filter /FlateDecode >> stream xÚìXÓZ€UpëÅu½îuÝ[TPdª¸·×=@Ü{+*â@EÜ[¯{ï‰\Ü *¨ ¢ìÝ–îÝ2þ/ ÔÒ‘&mŠE“ç}ú¤i𓤧ç¼ùÎ9I² •ÎËæñ¸yy¹ùùùðš››CAa"òLB.aòJ:?mÊÇI¾Áüª“¡'ß ÿ©S ÿ7P€˜ £j ÓV¾…Ž'ñÙ,—– î'—Ià#©˜/²E…ùÁÖ‰°bÃáƒH®&ýð´ Æ†¯ŠAejH1áD.A¢yr âF†ƒEîäXäªA袀¥ãÐT#ŒË(çÑa ú ꢧû<þØ¿ZÁ/K ' 9G-;éÌuD².þÖߪèPŠ`ØYQà(1$ê`–HZ 1}EŸX;*%*Y¥´¡Õ„ZuƒU1Qµ¶Y?"dx(dàoËbÒ…"Ì‹)ñû%ôODé_‰Õ?‚(Ác€ÄõOªWÿÌÒsI Z’ì2÷Ë!ê~ÚôOF‚þú;PúgVú'¢ôï’@(jD"SHܯXÍE\-3-žÃÊ,ÈTÔÏaŒš›þ‘`€èq”c€B"(*iÀŸf€dH éZÆ kL$Úºg®î÷B""î'4Üý$d»ŸAúWŒîW úg¦u(bVcøÎ@þGÛ‚‹¡Í²‡•õ1òõÓ{÷ï^¼zùß»·/„<¾ñþ%ƒžJI è,qÀb€$H`Ùý6MÐ{ ³cÙâ÷»ú3“–ߥ¤ˆYiŒ‘;+ôÔ±BÍšÝÊ—oüð‰€¼j¬U­ÚðêÕGEG}ÅT7%é[Ðýk{vmÙ°nÕŠeó—-™»|é<¯å;wl¼sëÂ÷oŸaÊñ~‘ö_áOÑ¿bþøS%°¸Tð'*_1ˆå~% ô§_ÿ„T˯!2 Ĭ4†œAÇùêúÔÆfn•*CN¿ ú'ä³¼‚å>±A>sè+«…Ö_ÇH2vtÔûsg{®^¼+`sHÈÃØ¯Q FfB|ì‹çOŽÚ½jÅ‚O싌x%¦: P@ò PJ v ”’$&Z—“­Éûw¯×y¯8rxwb| äOJó~¹`‰h.éhÒ0 ÞH (7Ù­„H¾§ñ/È‹Ëú ?ý~-÷+é;¿]è1+!qg°õÏÛëaíÚ»æÎ¹Çãü¦ÅŒ€Çbegwï~·^½ë7®ÇÐ>òäþÊå ÂÞ>c³hºøµjÅÂà ›,f–®­•RLºÞj]_sM­ ±Á³¦Öuð'ñkõ58äw2@‡ @¼Á@ÂHž ’r·I’n´e°ï·>Ã}DÅϤA¿_Òý ñaF;%9ôGŠ©1¤Qć0µÝ@—àÙlý;~,ª^½Û#†?çrÌf± YÛ·}oÜøýøq1|.–¦¦¦Äl÷;vd/3;›[7.îØ¾)öË']²JHÿôú¹úg€’d€p®ØB>G(à…€Ë(^ùòÊåÂåq9È+*ó\.›Ëeqy“ËcrxÙ0ÆW¾ðtÁT…]€úòëãM‘‰.?g†Ë7žvØ"Їo¸êÆÂCáB(Ô†H±*|céD ‰6ÄxêG¤D Ü›c#ÒŽÊhLÚ?Ô½)¡VDÚèD¨‚b‰¯@ D„ ~BˆÔàiÀ×µAáÔs±HE²6÷BU8Ú(øT$À†S€Ð0ôº;.!T¡x¢ˆ¤ÆFnß¾FTcÈ=¢Þ‚fx{{*w`ÕÊå¥K—ŽŽŠÄ³3Øú÷_pF“&Ÿ{õŠå°Ùhã/º<î³m[FË–Ìè(¬ß®ž¢>X¹|þ—è÷tz6™é‰7¬yûæ9\Fò+]3Zßj®¬¹¾®í¦šÇž×µDeã?þ …×tp©ˆ†ÅøeK*”*bMrYaIíÉ‘¡•<ÅÍÀÑáŠäšþ¹Eo°V\O.È¥(9Ï.1«£SÂâºù¿1IÚâ†D µ#+‚MÏ*( C).ðÆ$µE& ¸¤ü~äIpu¶ÁNâ‰F !šXÿ4 $<ü•šx(—è2]3sæt¨”-Z@HcH?"/¯5°ð ó+V,…ù×ãÜlýûÃjÑBغµ8;ûÇoÁã²·n‘N›–å²XÀgcßXæÕËïµËÒÒâ³²’U‰Q[l÷_ÿâùc]ÛÔëWºœÍ˜…šZHHÿŒÜ ݱDöoÖ \\cÉh6§¶`}-Âd6 ë"¨­˜`K±MÉÄ!q—ôŠùú nä5D´LÜÚk~ ¾$÷÷+¹m¾æ8lSÍ@ÂÂ^@5ºví*¥r,_¾¤téÒ‘‘a¢Ucà‹°©¾}]Ô6¨WcÈ="ØØ {{;xõõõÁ¿3ØúÇç²¶lÉß»7?=ýÇâl/..?33W(`«ŽÑ¨ä‡†<ܶu}fF¢*qߣ[¶l‘˜£¶üèáÀÐÿ8lºaÑ?S/Äo€§¨5!ËK®rÌݽ% ¶Þ€¤J`1x *(%ª‚ºT-,dF™ž±Ýù0•Ï,¬OD<˜&0õÍýÌå/”û‘ÖTªn žž+¡2…W˜_¾l1âK¼± Ds#ª_TÝ !ýˆPz÷î»Ñ§3!§Ò¡L%Rül¤ƒ3!+à3“ÙI__iœTX"ä3UWVYþÈïß½Þ´Ñ39!&=5^•øïÑjK€ý{·‡½}©h§Vn¤˜ôOoÓ°1ú‡sãØmÐ::ªôýp|¤×úÊöúCùé}ÿØÚûþ©õ$µïŸj¯BªïŸ™ôýÇþ¾EàƒH'ø{ßáFd4zûþv§Ãì×§ œôŠôý …ºúøéîû‡¯›Ÿá]éÔ=ì¾zú Õáiëì§ÒgOë¦}ùt££ïŸ®Î~FöýãhGO?Õí,Ôï~l3ëû§Ý@Ö¬^Ujo;Ä—Ö¯óÒg êyý*Tí‹°ÁÒ¥Kx÷Ƙ∖-]„¸Ÿ‹3¼ÂÎàw*½ú™ñ>4)ô{Öw˜÷‹Éüt)úÒƒo÷Øl$ôÇd±0ô®¹b7nXû%*<5ù6‰qQöïŒùòYÑN]ÜúGhˆ®HvôϰcëŸzß?à*Ò÷O&Ì ï_ÁƵôý£:û‘З¬Dlö·§X»ó¼‰4!ŒIâèãgdLoO?Ñž~Úâ“ JˆÆ'uwö3¦ïŸñýý *Æèèb±÷ýÓi ³g{@­ºtÉB¢e#ïÂ^¨Ù‹r‰^!ýˆ–.YDzÎÇæW¯ZóðŠsg õOWù öÎöWÛ~ûOÈgfгև®_ùheí ÆW”HD&“~òÄá;·/&%Æ`óòùë—ϧ¥%+V¢ek…"¤þVu9é UdŒ‰µõño\ï¾a¢#·Õƒm*Dl$X`–]b]è,3¥XhvăÎr^¦‰EhºÚ…u!6¶ÉXŽÑFŒÔXrt!3tì›ñG­ïÄÊõ7ì1DBCšq±Pä|®.|xøÑ¤«óŽiS:J=àÒ[è™°¼%RìkÖ6bæ`Ƚ»×p¹Cî=ö‚÷å¬Z¹´téÒoß<ų3hü#¹+Ÿ.Œ½:vÇó0¿ã¥ß³}w¿ÚÉa#?}6‹ÍçéÉP8Ä~Þäçñ2!>Z_¿¼ß¿wûט(!¯Ö/WzËëã—DõÐÆu>Åk€”.br$Ð AÖG‰ŸÑâW’ÝD!WcÈ=¢×¯CÔv]‚ggôêßõÏ›ím6∷‰Ïjo¯Ý|O³LV¢bÄ“ÇEžûÆá°0e•+òŸ=}¼g×ÖÈ/â¾Ò$úsØÉ{ß¼~Áå²MäÌ¿(ÿD!y³b$‡Ï/xåñ9HG?>‡Ëãr¯>‡¯~Ýhí¨ó>|,„zêD ‘áhvn#жÍêèc'4ôH‹Nj§AeµMÅž*¾«£kŸV4~Œ¾E¶Œ§‘ˆ[€PhÏ=-aôßS_YÑOG§>½ ]é ;é©wóÃ;6P­c^‚t7ËâA¨˜¤PzÉ")\F‚˜•Ƹ3zõïé÷àR¾¥êÖë~ÔfއÊf²@ü|&¹ Sñ<8lYÀ>¼x²u“Ïý»—£>¾ùö5â{l$ýéí“G·÷ìÚöšÅbÀµ%u„ôïGtNû¤RD™ CCоâ‚ÈLa«Ú;HÑ÷/Çè¾xïõGö]þrK|?]ÏËS‚ñ]¢9+ü(#…¦%iû±$>Ê-Ç|(ÞÎêˇÑ!Mž®}†Æ0¥ªÛÇO[”¾|]à TâŒFâTâEâ NâêéÇ2et‘E^¸Œ1+!kgôê_ ãX  —›ÍÈf¡Ã@иDZ·B©Dœž–réâÙ€í·ûo8|pg`€ßžÝþ7o\NOO‹„”û‘,I½q´ÕlÒaò:b¶ Ü4¬çÞ2˜mÄF¶ë»ùŒ9%œ‡füMW hÏÕת+2.§ LÞ«åF.ÅÙÎk\S¯i[{M×ÓUrëDR Ĭ4†”Ñ«BAvƒ]õ«û[U÷¯þèkH6“­„Éb±ÙL.‡Éçaܦ0b)æåäH%‘€Ïc0h©©ÉÙÙt>Ÿ'#G(JÛ( 4O üYhJ껩`q ¡¾;ÊÉ|s#¬v¤ Y²'2:;¬|?Åú(ñû]Ä\1+1~gôê¹À¿Jª¹ŠÁœÌÃ?ŽRµŸ Â/æç<#<ÐH4­ âB“j!ñ»X£‘D·\¬Gë‡0ê®Ë„|¯”÷€óµ>3?á¯,~¤ˆYiŒ1;SÌúGaæa@ó’@‚%Ñ RA2ƒxD‚Û ‹ß K:N¬±Ø #Ägå3oë3p»Dô¾£0OTô/[ÈGa°™™ 2PXÌt¬ì fv:K #‰Ê¤’MKá°2´„,xM¦£dI4%™‰@–â!!+#!ˆ‡ídÓ’(Y@VHV"Md; è×3âÒ8 Hûž™—QÀw áB*›¤ |MM‰MM¾¢¤$Å© ùÄ/@rR4B"ð^“”D%ÆŸ•$Ä}Rÿå#÷ !þ{$JÜ7 øûAÌD|ûúA…÷±1À;”¯_€pÅ뻯Ñïb¾„#D‡_¯ÈLÔÛBÞ|ùü6º€7ÑŸÞD!¼Fø¯¯>_+xõIÁçÈ—À'„Ÿ"^|,àùÇ‘(ï|xòþ)ð!ôÃ;àé{„Ð÷áïÂCÂBÞ‡=y‡òx „o…¿AfÂÞ> {SÀÛ7ÿ½}üx…òðõ«à×/‡(¯^¡¼†×ç^÷_>G¹¼xv_ÌÜ{þ¸KAAA¡Á=´”@K EéQP’@‘‚,ϼDJ˜ ÅNaA„JŠª ¤züAQ‚½ùOY¬A§(ñ…ž¢TPP**ŠÇ´´DKN¤}÷ôB(R´*ŠYE© Åoa9Œ€–ÏHA”ÛP€”ä/ ÊöŠÒþRÚG!¼.¨ >!URA(jŠ/Ÿß ‡¢‰T+´º (ú]A¤@Y=AU–²òB«3Hí†ÖtPåÖ}ÊÚ©%UëMÕújX®² Fkd´vFëëÄ8¨|Ñêˆ ¿õyMDP|jó˜R“¾¢€9€ ¤%U›Z`ßRÒS¿# .—®´ T9ëˆÏL{ÉFH5*4¥&#…ÅH- HC(-6 Ô+…ÃÌà°€LD®è?t Q/Fh˜RÉz–Á*t6¥Â¡FÇaf¢‚‡š(ŸŽèŸÖAâÁýœAn"=èxl"_ p@G¼ÅÀH éwèÕÞ°eÈÖð>zUã¬:‡.jBÖN¼£e±¦Ï)5Q5Q“±74 íaCºÇ¤~¶‹a›Ö?¦G·XÂýð‡¯KK ­Ì0µX OñªëyÐúË¢Ec ¾ÖŒôêñ.•Çöéz¨ K3ú'ä3Q¨p(Õ\B›€í X ­À¦iÆÑLVs°_;#ÑFáß°uØóƒóä“÷[ Œní5¾Á÷gµùšg?ªÙ—Â@”¾Gé%äIàoíÅ¢‚FØ Ä6HL öCó4FrŽ…è94Áˆ%{&ô=’•²>Jü( Ñ?Šß–E0îÉÔl2Ñþ¬pŽbCàâ»Ç‚6´ÔP|ÃШ(Z†(?vOªRà¼Â“/5ƒrˆÖÌV4CJ Gã?Bä/Fôÿ[ä¿O¼èiA[1EnIhD™¬V¼k¯¨šñ7ƒÒ?ÊM&,ÓKàÏ÷@2TÐÄ6h¸ ¤Ú…ŠâòC!¥vºìÎÇ3ÂôtÊž)}ÏÔÊWlÖ'4ëÃ'~T=Hé%%7h,4¹ šB5CŠ()¾Öçâð7|^'3ú4åxeïçúÊW‚¬ ÷QƒþÉ où’ó[¥ŠNÊ…j3¤PJcÒº)û ù-t ¹GDhŠq›ê…ƒúi×WàÀ:$z bkz–¨¼È§dzàÏPA²m°’£…äÈ!^c$Ó! ››i\Î4‚§GóÈ5=Ò|ïg)ßÏká-†p%~¿9¾g°þ›ÃàÙš.m#KÿŠŸªê¨øâ` j€Á@úGÀq韊ªèé!ATTä]/tB2µÐäŠX1Á¹³éñuæÕâñ½bV>Êú(~AýÃ…B t.TýT%d—mßUnY-icUÛy½G¤u}ìÝÆ“ºêh²Þ…jçÁˆÑ0Iä1ÐÊ-£ƒ‰°ßƒ¬C&U—¨l¿è§BÅŒ°`Ý-ÅDFÛé®2pÔjƒkä#!°¦Âü;aühY¼àr6ƒ1(Wë0:<Ãl±ï=‹ .ðŒ™5#rª‚YÝSP¨bRý3^‡0¾¨š vÒ$êŸVÅ2‘þá<Ÿº’w*t4²«x RùÔfÔæ y †þi±¾¢3j*ˆ§x'G‹ßM"„ZŒRã‘ůeq¤ªîhži2‰¡™Ö4¾Wâ”ÏÔÖG‰…IôOWÄÉú§Ñ÷˜§™TÿÔ5‚6(2ð!žÅä„&1Ã_\ µÃáxfazDd¯˜}¯x”²>ŠŸ¯øÐQˆTA¢cFLU“ ²ñÞ¦Ld?à )WüyFgZÇ#`zÃþ fì{”òQPúGAAŽ’¡‚LêŸN,!d¸{­ˆ|3,n?,)&i~'ßM’9¦Ô<ŽÁ™ÜÙ+9¾§Eù(ë£(Qú§õŽ&Ú½R:¦âL®Ø~‹âOÑ€3OÆîéWAŒÔ š§ç„lbÏ5 þGœP¿Ô¡v†8ǘ|+*²G)¥Å$¿øgØ Bh´7Cä°%þnÞ(6 ’~añ9žA¦÷seEJQƒÛ÷(壠ô‚¢XÛˆŽ í„$i![lðãE¦†ûKcâ³gøS­Ù?Có~ºé™Ì÷¨¥& ’gƒ?OvBRÍÐhE,>Wü 0þW 5Wˆ ÇLEVY!¤B|¿ˆþ1 ¡Î eƒæ!„äi¡iä…“lêúµ éiñæx®J`Þ+Ó£d‚Ò?…þ x t!ÔûR Ÿ:9¿3¿hÈ6!,ZÈã0¤™´8“È“Ç"#ÞÒiÉ|ƒ`S°Á'A”Ñý\Í#Cö(ߣøÅQú^nŽýÃn”ˆ¹99ÒÜ™Àáëæp •Ë%v>7'???//O,d›çoªø]ôH^^®â@r‘r’ŒV`¥ çY.Ão„‡¹6Íçó¹\N,‘‰Å"¾3fpN–IÄ<²œüÁwƒw×®]ÚµkÓ¾}ÛîÝ­ý·ú±²3 ®R%"ŽL*„ÓR°·r)¼…sbp$wº,™~~nÌÀ[±ˆE¢@JÄl™Œ[$ W,fã×§§¡³2 ¢ˆŠ<€üš¾1J„Íj.ÂÙcfò¸ôâ”7øïÀÏ {¾b‚\Ê‘>2âç:ezäêŸ*ÙtE ›®ºP"â}úôiÀÀ½íí ¾%qµ¦¨b¡LŒ[§B‰Šýu½À_"Ï;«WÏn(=m­5ª¯ZA>êi]ªT©:€Âîœ4ÂPƒéj"X‡èfá´ÄÆÆèê`o ØÚZÿݼ©}o5ZµlÞ½{g83f@½ àgcoVkÐLwÀÀ½íí6¶Íš7ïÕ»·-Z¶´îÞºÈ(T±èÌ™3ñM 2™ÌÑÑ’¸ÿ~HHˆ~`# 4'4ÈÁ  ¾ˆäd19–B ‡õ0èN³fM;vìØ£GkkënݺÙÙÙuéÒ¥]Û6#Èzæ3AJáO ?J@@ÀÄIœœ\'O™¼k×®ïß¿ÃGpàØ[PƒÉHSô`èK— 2–™tÿÆ¡ƒ»¶l^9¼'8è-3>’ˆØ£³ñ€$‘«žÌÀ[$‰\>¬€g;áa/8l:—uË—/ïׯ_VV\G Âf°Áwá/5—§$ƒ<à¯#|€¢C.“0™ÌÇOž<}Nâܹsoܸÿ©DHJ*?wô«@<½0(((ðèÀaÓ%b¾ê“¾ýú´ïÞbüÜAÐÎúo0@ð쪟Ëå=Ð1Ñét½‰ T‘/^´ªVaãê&(k7*_Îrš»‡VÊ–µð^Ú¨W÷? ,õôôÌÉ‘f€ð­œœooïfÍš5Ò1ÙÛÛ ø<¢[†2ßÝݽsûÿ­[Þ˜>ñ¯Úµ­&OuC™4Åmâäi“¦LkÔ°îØáµkÕ( râÄ ø5…úLL3h¦Û´mû± —}þ™X£VmÍtë7ld7xøÿª×À™.TijgÏ®^½úß8¦7‚R.X°6^¡|ÙºÖܸóܹs9rF°Pé÷êÕk¥A6 " •úEGÅ„Q—= ÷ƒÝèܹsË–-›7oÞ¦M›îÝ»÷íÛwàÀ­[·ÊÊHÄY-ŠLøg………98Úé¨×¬VçþMzom7¾Ug×&u›Ö„….}œß¿/—KÁðWë\E+°nå€ty qŸ7ù­›6uââÅóÖû¬AÝ f-œ ý·ú&%DÉå|‘À0«)H¶©+ ˜Ç™¢,:Ws¥K—F5éèÑ£ð׆ÜnÀÂýÓXž’¤Ð¿þ„¶Æ`¥…Ä<&ºÈÕ±X´Ösm… j×®Û»×àF [tîØ»»µsåÊUëÖ­…ø„~úŸxo#42= õ/›ž‚QiÚô´™´`Èèš¼K}Hã'ÓøIá)´®ØÛÞ6‚U/Ë¥ÿŒefùrå4å=mm ºGZ Q\ÕfÑ?>õÍšü‘OsDa³«Z¥Bð“çJ6nòoÕºM»ö®ß~P±b9~BoX-èb‡òå-W¯^­0@Â… ì'\•7hÐàŠŽÉËËËÂÂ.Þ7¾4qâ„éþBçõý.íÚ5UËŒÙsá¼ 4ؾw·'ÛÁ û·þ]¦LéS§NÉdb]q?ÜéNìóÏ„ñ4Àÿêý–mÛi¦kÛÛaõ¡“°ÂÌ [Ë”)ƒ‘®2888€eeë›àJ2(%$Ô¦iÈ k®ï˜óË—/Ǹ®AsrÏž=׬Y“mÐû{¨ÈÉ8*#›•Ù¶Mk;;»N:5iÒ¤víÚuêÔ¡íÖ­›««ë¸qãàuåÊ¥øÜ%—˼¼½,--¬7Ÿÿoÿuÿ™y ÏŒý}Ÿ´.x ¼w¢×Í`… 6ä ÀÖ÷ÃnÊ•ó®]9ëæ6yÃúµÎÿ{÷Î%Û·ùy®Y á#XáÆµó°2QýÐLbõª¥;6«&D( Uýƒë—ùóç—*œà·ˆŽŽ«×{rHпÔo‚CëøGý„ÏTg¸G6,Ú2hýÄ¿2÷¯áo_‚ßý²³ÖÖÝêÕmÕsâ¸%+Vš3g®9:–™Ü¶N@i…Ùèv{†þûeñã÷¼™¾÷C˜–rÏ@ýË‘Ù÷¶[³x:/ñ•&{·®†âtzÑ œ {›èª.09E©¨›7oJÄ„ct¹¹9¶¶¶ ù:&¨‰ ? áè¦þMs÷€}vîÓO©€Ûø:.ÎöZÏ›Þ6_œú§LW©€ËèñNÎÎz/ÔôN§k:‹ÅÊËË{ýúu¹rå¬þWùÉáE/yvlQÝ¿^^.!ý{óæÍýû÷‰ëŸ®$ôW^gNïÜ©È^³fͬ¬¬à(jÕªÕ²eKÈ$ƒž2eÊ¢E‹ºtî„'îuú¤)“¬jÿÏc¯ ˜ŠEÙ2h®P¥l[ÇS·;ÀB·@§?jTqŸî¦0@õ>“‘Z8ú+(®uèà®9³=N<¬êc¨ûM›:q†Ç4ôíɇ`µcGö)ôŒ@ÜO3‰éîS`Ëjˆ? UýÍ‹ÅpE¦4À²eË®]»V$j*5@ÿø>îü~ û½ïBø+ÐîÎegæZ;/lî9B˜™BˆÓÅb¸_‡ö6 çn©nU{Ôðiûv^r›¼hß΋[6éeÛ§Që–í«YãÏ+VÂÿ«D9¥yÅýÃhïÃÐ??ÄÏýfCàPø¼L^‚)ôïÍóc‡÷ÿg¸«’‘ƒ\ €‰‰ÁßeÎýÖ¯úï¿ÿb4‰êjÔŽ‹‹ƒ ~ùòE«ûÉd²š5kž;wN*«‹—®°²ªþϸ ªú·vq#çÞº~ ì6_œú§LWUÿFÏ[LTÿÀÊF­&`L&8<==ý¯¿êX”)sÚwJÌ5Ÿ‘ÎЫƒŒZ[ÑæËÇX!G”ãºtñ”V÷CQÑÁÊ7o\”Ëñ6°jMB¹eMTI‚‡Gÿ™T„F«V­:rÔhôDÃõÒÙØ4ú'Øýü¼:>­ýV“4NŒ)ôÏÙÙ±{÷î;wn­˜`ÜoðàÁ“&MZ°`Áºuë|}}]]ûb7(Ãa:8Ú[n®i}^÷G©¾õ¼3¢™u8c݆6ƒ·]ú7síß/Î’>÷+l.²<7‡¿eóú ë×b¸Ÿ¦þë}ÖÀ:¹9ú£OÄ&¿ušI¨êŸVÄN"<ì9‡•¥ºD&Þ¸qÎLõêÕ?|ŠŠŽý¾|å**XR­Zµ#GŽ(†„`í0lð]ø <ú7s†ûÁˆÔñ·-œ,P,cÕM/p¿MAÛ~x×»'ˆ§zÏ’T"8tèПÖ3rîÈaS@ó¶œêÞµ÷Ò¾íÚt™4nÌ4lÐìÒéÐ'bÔoºhÞvØ¥„„‘M¶ÚQ‚GAñ+ü-ýó\âº_Ò‡-š5,EdZµr…L*"¤@Äc륳/ðh¤,üb­º¦ú'qß¼ycaa2£Õý8Nùò僃ƒ èR¨ª¤ދf6?²³§5fÆöÂýÓ3òWCÿN½‹Ùq+XùöÂç„Y¾þóýw]M3¸ñWMÿx<œ±={öÀoݱEýO—Ö>>´°ZÕJåÊ•ƒ“,—˽¼¼àëÆë_<3ÍÏQ´g¤ë_øÛçµk×iР!ìF=àÕÙÙyèСp>çÍ›·víÚ;v¸ººÞ¸~ ó>BìØØX8èXU/î ËW\ªºpåõae+XÞFÍ=ê +$&&ÂF0ƧC"á«. ™™éq ^šc=TÅL«þ;{–3h‰b!VP¬# MýÓ4@e"mIhê\-æææØØØÀ Y¸xIl|"ð(ôio{´HéÕ«WTTdK‘Ž}ÆÖ?¿ëzÛõD±ëe[«VÍo¿²·áÞfp?ÏÛëÑÛRè_Aão¶¾–_ɤI“{Û nñw‡=;.ÌñXU¦ŒE_ç¡àƒ\ÇÛfÊ–-W£z-˜Ÿ4qFu«ZgΜQü¯uZÜŽí[>÷ÇEÌûoõ ر…ª7)(~!ý£B`äï›ä»Y¼$Ž˜Ž5²ªþ!JSøQ/ñuÒmÃôÏwõܺµ­îí™{/.šÔ«5wî9æÀR5ý‹{ÛãóÓnzÕéŸT‡:E9¬CWèïøñãuêÔÉÉÉÉËËE¿"%¢—Jý»x¤M×®í·bààh·Ë¯9¶þ6òwß/Ûv·±n³Rÿú›ìíÁª'Æ/^IŠþ±Ùì¼¼¼'Ož€KײªúìØ’ˆókZ5þ½¥ |Äb±P73Fÿ˜Š)õÍÏÑôçè²ôïièmÛvܹír»¶ÖíÛwÍ4hШQ£¦N ùÄÓÓsÛ¶mÆÑ—ÇõšÕRs¿)Û ¼eÙ¥!jÕmY–/9?æÿlX}ß¾}о¦Z ›žªË ¤NÐý‹ÏÃv?­ú,˜?ëQðm؆ÕȤZ’Ð¥šˆ‘„6ýƒ#⇆†Â™©T©òëð÷¨~Kصg_ÍZµ`¹¥¥%ä‘H(“ ‰þíݳsÞÜYÊÆ_pémÿ‚û-¾¶Š¿©ªxŸôç_Ø­7:—#—9:: ì^탌E÷ÿU­ÖâïvüϪQÃæ0ƒÞÜÆÊªæ²…ízü»y»­[·J%B]ñºŒ´xt;›üÖ+®_ç….ÌÊH¤ªN ŠKïiêΑ¿/¯sÄ´a³7„R2ûNK´ºœs§•êòƒás9Ƴø+Dõ›ð²YãúóÇ:|½îƒ‡à ”ýqêßÎ-ëüiÕ²E½üY»ÚžÍ-qê|úìÙ³öÚ5iÚhܤQ…ŠåkÕ®Ù°Q­T©Z¹z +te¾øòåKüF¥þÙßzØðþñI)ñÉ©h¦Ét·íëšaèŸá#¯=ð:~NUÿN†E£CBÀú Ö¿ŒŒŒ+V Vªœ˜˜X£Fõ²–—¶ºÇ\óØ«-üè ,€ÐNz†é_BB·oßx|Þ‡Œ‡NW¢· ùùìG/tIXÚ]d,„qútÿVûvöÞ<}âÙ™C;uì8iÒ¤3f,^¼ØÛÛÛÏÏlÐÅʼnNKÑ{¿Ç‰“&vîßDUðfì[¶¼E©ÒZôoÍ­å+•µ,g¶ wtiìæî¦õZI[ø¡r2w½Ï¥ny®Y®©dºôÏÇ{Õ±#û`#·Ç‘ËÕ“ÀÖ?ÀkíJ-Ih(SXØs6+Ks9\sÁœ´©nîªÿ—ðˆ&MF ªiÓ¦AAAHÇ9«è=|²ÂÃ_hn3¹Pÿ”K¾DGpÙ4$˜¶mÿ\àþÐCà~3/,ärhjŽÍ÷Dðá©ÞÆVø³ôéÓoðÀ)5kÔ9´ûZ»6] EÍè_µ?ªÜ}mù"?'‡áM›´‚«¬!füìy󿡲wúä1XrüØAôíÂ… © ”‚âWÔ?›¦h‚¤k¢Ô¿Dæ§ Ÿ7 •#®DoŽÏŽTÑ?º.àS»^=Qý{xå ”º-Ä©³FÙµkÛŠqŒíptJý3¬áÎÝ{t™’*Ûvì?²‘Šþñ0BêèäÐù   ›Cû>}ûÀF°D‰ªþy{¯ÊåqrÙL—‡Oÿ´l#h¤[¤ñwó¥ÛªúìyøÜÆuйqú§ûìé¸ïÚìÛ A}$.1o(üâK'!㾜œd2™@ P ÍåêËfZïû—Èþ„“£éÏ‹ê×®^èØÑúàÞ»à~ξ yõ9ªï¿þúËÉÉÑÕÕµW¯ž;´ß»;€ÇÉÒ»5È!NνǷV ÞÂÓ+V-WºLiÍèŸwÐè¶ÈN:õkŒ.é9¦e?×¾Šî¦Äò@Žœ‡Þuu­KOiõ1]ú·ÉoÝöm~°L?ç«&Gÿ€+—NëM"ìís63SÛƒ`¸è½_Bž½Pû×\ºz½e«VèYݱc‡Z÷Ø`xØsÍm&'Æ*ôOKƒ)Óœg›§€ûM>=“ƒüÖê…3ßw&ûb½yöT­[W§Îì6úìt7fè ñ¶=œìºÒ«‡³çòí0S¿nãs'8~Òø¥•*U¾}û¶¹FÖ¹Y‘ˆ7a¸Îúë¯:›üÖשó'ÌOž^òÄ©}mÛŒ= OüËé~D+¾s…³h*£OGp¿Ì†–™ËÑ:ÿ•“§f€„¢-€ÈÓ¸räsçÎUÕ?”{IŒX¶ðS6ÿfÑåè_PPД)SfÍš•™êï¿ÿ†­ƒ Zµùûû£Ã=4‡åâ×?HWW×ׯ_5*88˜àÈ_\´­[6ÙÛõ;qä1â~§^<þý9uófÿ ãÇrXÿ¥þ®]»þjRí×W¹Zye³¯êTƲL“NµG{Ù OSR«¾ÕÁƒa#Dó€T ºcÑÂ9ªV¦Õu ýxòè®TÂÆ<4VpÐ-µ$0ôOÕý°“ÀÐ?4ï¡ÝÞœûôQýר;8¢'3'',Qí[„ôïáç 6t˜»Î1+ù£jÐ/õÉ-õ0 îlpåÊ•Š*­Z¶ÿÏ?ë/œãóäþW cûnƒŒEâ~×>€ûuêÐÓmÊj KÈ3ùyyB.–›™™~þüYxÕ-¤  (áú‡ÑÞGÞ_°êå^=mAÿºun;q`wœî÷òÄ2K P<=Ö~%ýƒ2V“JfÞqWйù'ú—¯\VÕG­µ™u°ïÚ»#5ï 8ûpßÒ¥K'''‹tDË1ò€HMˌ׼+‹¦êºñ “éfcCkZõOÍý°“ÀÖ?¸¨ÉÌ̬T©œ½‹W®Âÿåù«7wîÁ|ùòHÕÓÓSqÏd†aú÷,æq“öJ§Ç«®yâøA++«}{w– +.Z´¨ºUÍåKvwél_ï¯FãÆÌX0Ç{Ñ\ŸAýÿ±ªVsè iÓ&¯²´,ëä0¼L‹¥K—ÊdìÓ§Obb"ú 6©bRkð5RÿŽ;6jÔ(ÐKµM±æ3õç·ÇÿÝ·éáxêøÓàŸ>F$Í›·pù²EšîÔ´i°…V­ZΞå1s¦{ãF ÃÞ<Ó†ýðქ¥…ÛN'Ôë&nî­uä¯Úá+QQQší˜8G‹E̤„(7·É'OÂ0@5ý;qì|%5ù«XÈÔ{Þt%K0ÜOozõO$`B6«Q£†jº……ÅÉ3gwì ,¸ÊéÓªCfðè_DBX«-=ºîpüž¥5];»žÆæHC€\òòåKGG'Hô?¬š5mݸQ‹ å+–+WnÚ47¸À±°°œ9Ý p«ß%«j5F !“I…T> JÿpüÕT;?iïÛ¨þ ŸŸÉK0XÿÀþªV®è=cNý»°Ù­ð1F,sÓ?÷å#‘§Œm…Xyà8{œú——›“=°[V}‹ÌÆå˜ãúÊ¿Es¹Üüü|–ûpPAöÔ!,:ÍÚÚZ×ãQÖ¬YÝí_kÈÿ>ÿ?òË”)p<`ĈüóÈ÷õÍ·³û±<3³lÙ²ÚÒ]ƒ®ªþ]¸paĈ)))Ù¸'¢ú÷ôéÓfÍš>|rÅû÷ïñ'SÿV­\Z©R•~}‡„†|psóðöZ£é~Ο*_¾Ü_Õ¹|éŒòS63À1DâëëûG* N @ínĪîú7ÿDÿªÕ*ûûûëýõ±[å2ÞkççÌöÐlŸU5@åBXmÖLw˜Áô¡–ÄÍÕ’Àp?>Þ°t•ú—˜˜hee5eÊ”éÓ§CÍe"ý ?Q8}øð\ý;ty8ÝìYW¯œsp°ß¼iƒæ:§OhÛ¶5¡»¾¨õÿœîá8m§cÁ=ýþi‰Œú¼6L3îî7gîlÅ£±xÜOW+°OÏ•sÙz¦+8Ãcš2(b«åʸøÃMZ“@µÆýð$Gÿ§Î‰DðOž½£Î-…™£ô=Jÿ(((~+èYIɉ1$Æ]aS°A-™:·%Tÿ((((~y´¤Ô䨬ŒxR€MeÓ“©³JAAQ‚ ô‚‚‚‚‚‚‚‚Ò? Jÿ((((((((((ý£         ô‚‚‚‚‚‚‚‚¢déƒFb£   0G¨ò™‚‚ÂúÇ %¡{¢N…™¹U>SPP˜*ú‡<ìIÄ¥N…¹A•ϦîûGµ2˜3@ųÅÙÈÃsԑ˹"a6é§TÈgJÄE– oa!¹IHÉK¢ðÁå†<¼yp¹CÕ¤”þáoe€¢õþ½øy|—Ð.…<~P»v­kWÏc¬óíëÇöíÚ;zÀÈj⹓ïÃ_–Ðß.)!¦T©R;¶oÖ»æÅó§㿘4‰b8 *‰bNþesAËLüNTIiºÓµ_?(è0ÖqsŸöï‰#„’ΑËÖoØ`Û³—^–,Y"•JTŸ3E,!78èÖ&¿uÖ¯U#0`KjòW±ˆ41 Ù`D±±±;wîœ4y’“‹#3ß¿‡`#“&0qâDGgHbò”É»ví2, p¿OŸ> 8ÐÁÞÞà‹QQQ&3@:åW%:ú§µ•!úó»RD¦råÊ:°ÿ.݆o˜a¬ƒîÃÖ-Ô?؈çš¿’þ= y¨¹æt÷©ïÂ^üJVCÏN~õМ‚G§ó2é¼ :?‹Îg–HýÐßuÛ6ÿ]»q²xñ¢U+—Qúg&­Àɉ_›6oÑŦoÀ]ëܺy¹mG›¦Í[F~x_“ž™g2ÓFŸÒÈ·c|ús< 6›Â`Å0˜‘tÆ;Fö+ŠÎ‰§óitSŸ¨l=ì=óÅfj*Ãø$è/òµM|>ûöí+V¬ˆ‹‹S.|ñâ…)ô/-‰Ë0ø(XÙi´ÌDü0h)8š°ÅeÜf'<$§!1³áì“3eÊäÑnkVn½ÚôïVŸ"ßj9±)ßš5o¹hý©i‹v889á8]¹r¥šUõ—_ÙziÖ¢õÞ½{%bqYâ< òßêë¹fydÄ+M‚ƒnM›:ñƵóI QR Û÷c€ªxy{YZZXn>ÿßþëþ£Æ¼ý»h+¬_¿>GNXf%±a$rrd½l{úÌ]"ú˜+ÃPžÅNEÄi>’¥eç°øò,6| ÐÁÞ6Bèpà×”ÉÄ2©P³Á://ׯÆF-þ³k×.X™r-3Ö¿¬Bô·) êµråJ¸ }ùòåÛ·oá²åãÇÑÑѱ±± )))t:ÝÚÚÚÑ¡wçN+U¬ˆÓ@Š-úÇaeÀFÖz®üµõoõÕãûz s~|Ûà$"Þ¿öÝè½ÑÏåÔécŬÌñRFã|n(‹ÃÎp;;§ŽOëã¯p³ÍPÿxitð½¬WôÔÿhI÷h‰wi)é™OéÙïœ:Ÿm’õô%kèTIÅ&yeêå£8’>{Å4^ÿ½ã^¢+¹÷Š µŒH$‚K?___¨ÜM§_"³}—[TÌ¿r’kðQÌõØÖ¨Q߆-œ´³kÐ¥G}›.õì;ÔëÓºîÀæú5ýÛ±IÛž:wmØ£}ƒÞ-ë÷iR·Oó¦)I±xj4բ˂:½»`ÐcqÃú“K}OŽ(Î6_ #-îïVm=wÜò ¸í¶8Àº[w(îÔÖ>bø!¬tìb WÄf¢2)çÊ¥Ósf{,˜?kÖLwp¼›7.ªq` ›ÛäåËNwŸÂd$ êaˆx¦\:yʤjµªNßã¬ieª¸ïrú£F7÷i =£Jb‘$ܧ»áLB©ˆÎ]<‘Y¿Œðß}¹"‘,…®î~‘q²ôì<¡@xêkÊ ñÝ« ŠèŸ\.yøð¡›››——Ç XEô/7ÇÙÙÙÂÂBé~eË–=xð TBéŸYQà{¹925ýÓÛ¦ Ô?p?(ðÕÜ/>>^é~,«[·n}\œâ¿G5jÔ°fÍZ/B®þy­]õk胖²xæäA¶|VÌG{û¼yºháܵ“ú3.o _Zßß®ëŠå‹ Kb̸‘‹w­ð½°¥½u{ÍÚĤúǽËf­ñ²h ¯¬÷Ûpl½—ovúǦq¾ÓioèI÷i_/e~<‘q$#òXú—s™ ·³2ŸÑÙÑ Nâ‰â°hK|„•›åÍ[- }ÁÊH§ÇÅ3þ=Ïmã ¯Ð8ïú]¶‘úñMtãGIØ!˜ÞíÛ·ƒƒƒCBBMý{rݲR~j¢áÑ¿–Íí›þÕ°Od=÷ ?7œ¬ybkµÇ‹«Æ«(slšÞÃéUç©Ûøø7?6¯Að?c;T_¿nì×Hœú·ñ¬ž?Ô¿v’«8GþÞ»{Ý©ÿXTí§Ö­óR]áÌéãÖ¶}”+ô5{Ïîf¢99¼-›×Ÿ9}49éË®@<0=%Ó¦NÀ Ÿ<º›žú ,1âý Ã:Êe/o/«Úÿ[tv š‰MÚÒ{‚ŸÚÂ…§€žmذA.JÜoÑ™Øî§š„¯/®$”ú—Ãâ3'öýËlRÖ½±4ìyW¨ Š£sù"éóÇ´®õ3›V„ÕXnÃr˜<¢ú'qß¼yS¦LTí ”››£Ö1 /7Š‚E‹Á háC5þ–ý+\ij.Œþ¿ìêÕ«¡´‡ÌðîÝ;]îÇãñºwïÞ¦M«C÷lò[W¥J•zuÿÊLÓ•JpÐ-…þý‹±º[·øbo 63M¡+ÙÈO$)áKa5—þöÙ’ù/çƒéX>n½÷ê7¯C¾Ç~¼võ¼Çpgp¿ÈƒKgM «–Ä„©cÿ}w>(;¥‡£ ‡•NúQ¨ÃÊâEdó9?–øÜñ÷Ûx ŸÅ}Ÿ ¯F&ñ5&bÞ¢ÙŽ}¦NŸôúÕã‚Ǥ±£é!´oW2ßN{º-%Ø7ñá†ÄPÿäðýi12Sÿ£1?Òø4)' <òQ3›œp8j^:­ÿIõÖ¹ÉÉtÃ’8ÀUWã/,Ÿ0a¤I“‚‚‚ŠêßRÃnmø­Œì%3æD¤x*Ô?¬uþ}P¨ä—ZËg”Ð'lz÷WÚݪm×›·hûöu(úiü÷ÏM›·\êw^¹‚Ë IÇÄ“¨Vý ûÎÉ`IX™OBBssår¹E*xz2NÕ?°;P» çÿݰ~í i°ðæ‹qß> TðiQý#vöÄBvXX˜¥¥…Ç^5ºÌ5œá+º©}4m§£……EDD„HÈÒ›„¨0 ½q?UÜv:ÁW"##õ&¡Ô?YZ¶ðß}¨Úe6°ÌlhÉßí—'–J¾¦HbSó$Rþ6ïÌõËd5­ :L–Æ(Ô?)Î3É :TµaŽN1\¥Èj2©P© óÏ¢0O0ôAKT´2hW/OOOM÷KNNVu?‘Hú§Ö*\3Ñ?V6¢Þ^«~ý;vtÿ¨Á®ov/ý;¹büœ™Óá4¢«=¾åÚ« ¸]weažúÇÚ(`4Îç\å o‚û-¿¾†ÇÉ$%‰+—Ït·ïî3ðfJÐþ£}FôõYïItãšúÇŠFš}£Îd<Û‘|kMü™yߎ͈9=÷ÛÕq`ƒŸO¥§<¤1?ÑxtšñG±÷÷Ϲ1± f6mçAÞÀIûÒ¡S%Šf߬´4zíö¹~;ùÆè_lŠ$ä_It¢•½¸¸¸Ç/_¾Ü¤ú7°‹<À›Oéþò¹ðº ÓÉÙeê‚mJÁ›±bo»™ŒTøÈ¥oŸñ37(?š½ú`ûŽá#Bú÷)‰'•çJd¹Ÿ’ù|‘tݺu®ºöÇdÀÀ}ûö)Æè׿]þ³fº/^<ïØ‘}/_üÇËe§£Ü¾uißÞ#õdÆÁÑÞzps-îWº°º*­Å;»6uíß5AŽNšIè¥KA2œú'þœ˜'àÓ»ÔE¡q9¶Çˆ<‘–³&ÌlT®`yCKZÆyb‘øS!ýò³¡rW†þÐiæÌ™Š(%¥¿šþv–¢•A‹zy{{kº_zzºªûÉd2x ˾}ûæëë _ü†4¬ü|ýƒrãÊ¥3°ïÕ¿€þô¬ÄyÓÆíÕÁsñ,5‡Y´pîÓ c’Ъ];u°ïÑMɃDÃ8×8LW97‰kq Üoæ…\N)IÜ¿ÝqˆÓíô`åA=`„xxÍZí¹Ì¨£àd±¿ÐÓÑ@óB¶&Ÿ_ðmç¸Ï>ƒ"˜·O¶$ÁG°¬¦Ø4à(23hÕ[ç^¼ÆNM¥÷/9}‰Ãa!ñÀ篙œä/ß"çm±·ÐeŒÔý»ó’»îx¦’+!0=6›=kÖ¬—/_zxx¯à0gr×ñìàÝ<ÇÙ¸Tˆ.ÿÃhQ1ÿñ]ÖÖÕ‚qÎRŸùBF&èQüÝ´WÃ&õz×w®Ö²Àêžÿ»äQåå° I¶ ßwîy«Ý˜-–x6Þ>­îù¾µžµþßȺ¥¬tÑý2Ÿ5r÷©Àgã•ÿžðÏ·oÛ¨þyaJ9]¶¬µ|V’ݦm‡9žG”šç:Ì}É’…û÷Ú8 V.\¼áL‹Öí"Þ¿Ä4+Ô?Gz lŽ÷“¾ðÓ_¸p¡RÕjm'¶qœ„…Ä2e,Þ¼y£è3¦_ÿ–/[¨T>Uâ¾}\0–1ú2ÕäµEÜO‡Î9Ú'&&*:NsºâIâÇФkŸôÙ?ô¯~™¬&è6MéÝe6© \+Hß>“¥1à+„ôO*lß¾=%Ê~ÕªU‹EŠnŠ”þý"úÇÀ ¡ê×z‘‘‘QQQªîG£Ñ˜L¦ÒýòòòTŒ<_üûþuíÚyРþZ¹{ç*ºÝ»[»»MÑʵ+ç°SÝñû•ôÅÎÎVsÍÕ«–= }ˆÖ&Yñd韣u×üË—Qr.^tîiCrão!—Â.þµ®Í¸“n,V:/"›½EÀO§“Dü÷Ï=zw¿‘ü@yDJÆÌþçô™£Æ'ž–ù”öå\F¨òÙùß6ûèÑãõ?íŸÏ´}»iÄG0À§ÛR¾^ÌÌzNã&uOpAóÀ÷ÆÍƒò]ºÎÞ¾Ÿ·e7oî*á½ÿXcf Wå'/pZÚÉIoü …nnn>>>«V­2Rÿ˜tÚ¬Q’Ëÿ"1Þ×!Ì.µóü–èß©ýÜ6ÿËðæG½Ï~õ„Ù©VÞúEB¢G1fÔD—Q.}G¸ôæü¹Áú'óê5«¥Çýt`íÕ÷ïßí61çÎu›ÕlÙ³nùJ–È=Ð*X–«ˆEÙ Èjå+•mÝ»þŸ «ïÛ·; UýEÆåòE|¯>EWÀ,U÷kTN°gs.Oˆö $¤à íÚµCÏÇ¥K—ÑyÈ 1—Ò¿_Cÿ°Û”úçëë î÷õëWœîÓà‹PóbïÒÓ † êcpæô±è¨w•0'ß ^z yÄc}Ö˜îôBIn0—/ž&KÿTÙÅÙÑÜõ•Å+eÍ+hS¸ÿñvƒ í‡Ë`&#-ÂKEH‹ð9Ž1IŒügøÐcšîÜÍ|dëd«÷"# ^&N‹»žùjwêå¥q›G}šÚõU—Zmëþ7ÃæMÀØÏ7VÇ…ïOK¸•AÇ߬y£=Äž›ï#²ç¬޺Ϻ\Qÿâ†ü>ÿ ¥úéKœvŽFéŸXšÇå*·èßùرcP¼?~ÜHý[á!ò]R uŸße·¨˜r¿à@fŒŒî-ã°²”oÇ8ÈH¹  5ý“îܦ—3|ˆ(蟙V`°w·T^4°|$Ù»ckmÞ¼yh•zêä´GúváÂ…ÊÛzËg5^¿ù»e›¹k¢¾7gÍáZu®ØrûýݪýÛWˆu™+Ô¿oˆÌ`п%¬…2îd÷Ù¨àM “›—›ÎwßóÎ`ý;súè&¿u¡Oî+•O,däçòåR6ÌŸ8vàÜÙãëŸ\&ž8ibçþMô»Ÿ6ìàÒØÝÝ]&a'1iҤήMúÎìPŠàä:§$áæî†DýS ñÈKX“ ÷©Ù3G剥Ê!!øõO$dEDD ûV±bE(࿾2dˆZ#5¥%:ú‡Ý¦€êŸŸŸ¸_\\N÷ƒ ®eà‹ qQfrì¨þÁõµ‰¶Ïãd–2b5r˜Õ\Ô§0ìîŽNŽöæ®Y4F»¼l‡˜ó¸‰o'ç}C3èÑ^ƒ³›ëœÄƒ7GÍ£ÕýP>=>bÌ0cŽ‚ƒtÿûx<=h}â!·/KœÂû5 iõ¿ûÃ[=õqjvlÈÖä˜ó™ÏhœÃõϺŸìø9ÎãÜK×Ù›T:øñ8Y~;ù'I`Þk ø4‰1ú·ïcЊ%[ÏÒÛ‹Éåp¸gÏžY³f£/1;ÖÌËH)h<º~†oY ìP#ïÊÉž?u€tæH‰yêŸøâi$Ê·Þ‹_´ßEAß¿Ä÷2Ÿ5°‚øÚÌJ–;a„5ªÿõW0Ÿ:uþ„ùÉ“'‰E<üå³&oß<ý»Eë™+÷ƒòq÷²uem7xÏ¿ÍZ´¹ï:á…ú÷ö;G’#ýÖ… `‹èwÂ2fø°èèG®$>N8™Æ© !ý»réôýJý÷CG|HÅÌ×/¯÷Yc°þåÈ¥NνǷÆå~ØsLK¤ož\¢' G»ñ­`ý¾3 ëìŽhý\ûêI¢¨þÈ@ŸnÝ KÍW`صÌ‹$_S”+ã×?°Ð%K–TL£Fååå&$$ o---étºj#5¥¿Fß?Œ‘¿[¶lQs?.—+ u¹ßÿÙ;8©ª_“1ïÍ3Žo2“IÞ̘Äh&[\PDp€û$&šÅ¸áF4‰F¢$ˆ" ˆ,,¢`E‚ìÐ44½TïKuWU×Þ{í{Wïà;U·»,ººª«·êZ¾ï÷ÿÕïö­»TÝ{nݯϹç^ÁªU«ÄŒâÇ9I¾»ÍÒ0®úçr4OŸ>Õܪϵ×^3`Œ8cîøð½ð1÷ÿ]ü¦oî:’ÓÜ’Å ³ïäJ!gË¢?¿pÝeÿ½kÇ{㤭ÍÚ™÷Ü3åæ[¤\9mzQqîH:´6X}­–R}ÁwMžòÆŒzSÝXµ’ '¿þ–éÛÕ¡"?œ}ï¡á´ˆ ø^“ÅVfÑÿÝ\´ªé“?èßøYí¯¯/½ï’¼_|¿àÅ™ëg«„Vmôq*¬#î¿|åŒîµ›<«7yÞý›û/¯ù,ýJüþ÷еÞù¯û„^rSϪ žÑèߠDz8äŸ}öÙ¼¼¼‡zh4ú7ç'Ï=Ø.xOÞÛw¾ËÞã¼à¬ÏZú»-»æ«Ï9ùþZOê_›Ùxê’‹{ü…/¢ßÐç]?ܦޟÝwêû—ùb·,û\Í~dÚuS¤<ñølŸÏ=‚ž¿RUQxþ}÷áß.»jêÌ›ïxè¼ï~ÿ?¿þÍ£ÙûFð­Ã{þ:|ÝÛäyl÷·ßýí_ï»$¿a‡¿«³ÅÑaó7IZXÞz Bï 7Àa韼ºè×Ï<ù¹þ}æßµóá[Ãã=¬ÓT\ÿúÝ,.÷;݇«ñ ä~"×þø»³n›Ù3Býûú@ý;ïÿئ7¨MÃÕ¿6¯EœÖ¿öµ¯IŸðÃ?IdäßÝj©ŸgÁüyãWûÙ=Vü»:ðc˜úÜŸS`ñiîOóþÙ #–ùÚÂyG_›cÛ±à¥ïÌ=~H¨Ú˜ë_aÁѯLž>éÁ?ôå¦.øëü‘} ECÅ%¯]÷ý¥ÓÕÍr¯vx½$b¬bÿ¾O~úÌÏc»ŸÈ‡u»¦ß2-þ^À‘ßÂm°˜ó·þË_Ѹó÷º·©œWÕ¼Y¯Þ+ßôDÝ—ë›{Íö kœ7‰\Åÿ<Ü9[üðWÛnþq—Vk}öÏþ%oy—­ñþm§ë¦{»Z[,[?rå{'M­–1×?p¿'N¨Õê런Ó+¾vjÓʾÄÞí®ïžùÙ{kúoÁ³þð¦^ñîMôÚ-–$Ô¿Žm›?;çÑñØ=Ûó²€;¶Æ>Õ:¶žöá‡~ñ‡ßÿÎå²G»MÊ­À;>9tÓݸê–ß¼þÖ6‡­ù{]òÿÎ9ÿ¾Ù~iÙî_ÿeÓ7Ï=Oüm|÷µ³ž»fƳo¯ÿ(ÎÒ®UF¯¯Ëù›}—ÎÞý-!{í>oΞ W>¸²èIÿÄøÒ–½U÷ìUå#Ð?ñ ÷ܯ•µ¥¡Ú¿ã9û…þ‰1'{<Ë—½zpÿ.IÿzºÝ'{½Î8÷]OwÇ/üåå3ÏûñŸ¦ ·]æþùS/½å[³gÏŽ³ñ7Ôd<¤†Ü/о|ó¹Î~tø¿]Î_̼ñ÷üÿãšýÃSÃnü{|ß¾}¡9oÞ¼ÅA®¹æiÌUW]¼ ú—’ú'~‡¥ÄßówÙ²eÍÍÍÜïdð–ÑxóÍ7ÅŒõCÔäˆtà‚Òíïǘ¦ºR6Ê_x±„Y³n \ÄÇU‚)ÔõCØõ]3núí¯f»ú¯>’òÔ“³§|ÿ–mú·ùùŸþà–›>üàÝñп›rÓ¤'æ÷eÆO¾²`ßB×R{Õò›/\<¥ÚXâÞéÜáy¹oL6ÔÌ;gl•4¤þ‰ÜÿÌÏ÷îùx4ûÂ¥ÜPõ7Sá›M{æ¶>¸Œp¿_Ð}µ¾êã‹­Ìêm¡þ­Ùè9û;§´:ëï´Ýþ@ç¡£ÎÒrûÊõž[ïë’×Új¶¯^|RL3âµp៧M»îúë§Ç™k®¹ú£˜n3`B]þûKŸ­z%°gó;„ï ýSUÛì ¸Á­—ô¬\Ø·Ó­­–Ní.ÉsŒx_Œ«þuÿáw§.¸À7˜>vãWë©ï|§{ÞÜ¡*[¬¦Öæ>Øj2µ èSÿU:«×<é+w~÷êÇ„þ‰Ë¯{àw=ø»W>øoü׌>ñÒòOÿç—Ï_rõ=â­‹§=uù O‹ßÍ[=‚ûþ5Ú: ®ª9{/xüÓó%åy|÷ù…PJi˾}e¦‘éßú¬·>Úþ^èÚ¿†z¥ThÐÕˆ1b¡ÂÅ[Á[]™:;â*$BKÄùè?Ïÿ·é?¿p¸úwãƒ}íÿ²fÍš¡º~x…ÿˆU„÷‰a€áîì]2ô*"»~x—¼dúÖÿŽt¿ÐÝ`|+_9ém–þõötÝwß}±·‰R©los )‘ïõ¦ñôü]±b…Ùl¶ÛíqºŸ@ºX´¹Q“ ú'ìH«®N3ýÿ¿?ú“;”ïüþèksþòûg6•>úÃ[ÿü‹™s~ùã8ïÚ—Hýó”ØmóµZš-ÚéoÝöíW®”i7©öžpدíuïp~CÕTßú£ñ¸ŸÈ¶Ú0ëæQõ_všuÖÖãíǦŠõ[@Z`<8ß(ܯhU“bkkã!‹½bäúgµZ¾5¹wÊÝÖ=¿™çæEÿ¶Ý.‡9·Àñ+zŸü½ßëí?ãZhgßÕyñ—Oýrf×Yžmk=Bÿ„¶6ZÝóœwÎÿ­¿ºÄ~x·óO¿òWÛ“ç[„ôïÚç¾õÀk?È»å{¶ ‘¹ù†ß÷ïÔåßïþíÓqÜ–ÄÖÕék‹rÓ!Û| í—ÎùÑÏ[äqŒtÑò-ÂîøÍºY?zlʵSo¿ýöé·Þ;gÞûÿðÕ»žúÝR¥ßd‰i ‹KãéPPPðÅÿõ¿~üÀ÷=øÔýÍQÖiL>ý+¹wÏþû¹úíõ…ò±âµ•}dúw}çÖ_yååâ¤0ÜUüüÁúçr´Ü0@ÿ®R?PÿüuAœ«püºÃö­ÏZ¶·Î\û£o.¼4»öИo¨gŸfñÎåqêŸÈ¬ûo/)>1‚}ñy„j,æBký>³êo¦ª-åYÍ•ï´(ÞoÕï2 3tÔZ½fˈW!4ï_.8õŸß?¹x¥7¿È^%·íüÔõ³9gžwêå¥>kT%*…Öf±ùÔY¯³ g«%gŸÓiû|kh¶C»\U%öa}‘| )·ýéò/]*ò·YÿÕósîœ{©ôgdŒ57×öÍov.Z0š•ùû,òúÊmÂåT*•ô§ÓÞò•ÿúéþ÷=÷ÿô~ñƒ ÿgŸýí¿û_ü÷46úkm:ë÷ÎyáÍx>CoO×Úµkï¹çî¾û‘ 6ìÝ»·±¹Ym/Ú&ÿËËÇf…ªþÛ}þÆŠçÞŽç7ÉÃõ¯ÝüÏõ¯ÞP~ûaw:Mµ¤ÒÃK‹sÅ4ÊÚRiäÞ=ëC‹Þî[~pó•·}{¸7åûþ­çßvÇ,±âYÅM·Ü¹Š8ÀýD.ûÁy·ßqÛ«8ý¶Ïm–+þÓôÍ/†îñâzâǧ:ÚOùÛ\Ýõy•à7¿h¹úÜÀmŸkŒ}ús-ÂßÄþ•>ç?üÃ?Üwß}÷‡qÙe—Io}ãßè퉮ÎÓô/EO¯™Hýq9ÍížØú·jÕ*·Û¿û –-[&flmÖ%•þýuá_ÒCÿ¤<ýðýÛçýrå¯~´réàg™i×];‚U$@ÿ<56ËZû½ë8gþÅŸ¬ßëü“ßk·Œá†zýµE—_ýýÖœøõïÍCk}âáÑ+‡»Áj¯²˜ò,‡,Æ=fã§–†÷³•[]z‹×9*«©UØ„ïýÓú‡s>ùêÅ'þM{y¥}¬JT mÊ­b@ü9>;çœö¿½{²Ž÷7.ÌÏåêbÿ>‹<ðäâûÎÏÂÇÜtÏ.¸fvøÿ}7ÞùÜw&?>ÍÕ·þöú;^ˆçø<–Î_Ow§q'ú¯ŸÑ»µG«­®¶îP×Í¿·{:^èw¿蟈Þ¶uãGÛß›ÿ—Ÿ}öiawŲc’ì…<0üOÉ;Ú±¿E{›³¼¼ü‹_<ã‘7nŠßýzý1‹\.÷· m˜¡U<úæÀU|ïú¯Kâ4ãÉî÷`p555C®â´‡¾mZe–úöÍÀCßÚV-<ôMÕØY|èÛòùŠAIÏû?þmï|þз˜ú'öï½÷Þ+}Ô믿>Ðë¿»CŠÎÍÍ Ilàûè_ªë_xeQ4ý[³fM[[[üî'Xºtiðþ¥ú$Ñ?ñIÒOÿœöæGúù¢…Q«4?Þ±-9õÏélyð½'ÿý/¾/{Ï1£Çö­Ï<Õ¶1ÜPsæ<þ³_ÿ"~÷“žrŵWZLÆÑ+‡Ç¸Ç‹³Ö*”ÏZ?GE¸ŸÇj«qÚÍj­U¯··Æýƒ¸L½wßuòêɾ†¨M>cÝ©+¯èýñ¼q×½ÇQX?èøŸ>¶èß/| |Ì-?üã%×Í9­êò'óþûšÇÃÇL™ùìu³~7‚!]äºíóï6Êíþfá~«Šëêîy>ÌýâÖ?ïkK¾»i]C½RºØoÎS­YýFöáOušjS‹îdG^])~¡?ìéñ ùÉ»»;,XðÏ_ù§ßl¹-÷{fó¬ÿû/g-^¼¸»«=Î#V1þ˃®â¹îxîƒ;G³Šþõ:}Ž_Ì’úwX®ùVWIþI¯?ÔÅC œôµw³\ùuÓyEt>rO¯Ã—þõtÝqÇ’àmܸQhø===_ÿzŸÇ‹wO ø@HÿİŒ6¯ ×Jbý3õgèVIÿÖ­[×ÙÙ¿û ^{í51ã'ÓÄèŸÝÚT^Z òµ¯}õ þ{¸ùõ3s’SÿD^[ò×m[7í*Æ[ÿ^mÑ3;~'Üïíck²Tiwïu톚2õê·Ž¬–þ‰ÌYøô† kÆL9œ{Âxš^n–úç6·Õ”ºè{'o¹Y ònuÉÉ›nÌ©“'§M›6ÈeݸV2¥Ï÷bè_´VIÿn¿ýö—^ziÞp¸é¦›ÄŒÑþcM°þÉ«Šôû¯¾úª{î¾3”o˜~ë­7‡¹æšÉáΘqË ×O‹_]´ú·ß.¡a©¥3ž¸M¸ß¢KÆoC}ýÜsØŽ Wÿ>Pì¼eÖ͈«ÚKóO^=ù³oÛýÌœö>h+Êiß±­ûWO~vî¹'§\ÓV^8¶kŒÖ ¬T*ÿ׿ÿϯ^X)ý¹ú@/à¿ï9í7¡¤¬ò ÿv×dI.yã}1ÍÑc…£×?‘9k+ߨ­³¦"ÚCßbëŸ7P­äij¨«•—ÄHC½Òç1}vÒ~A ä~C¶ü†é™UèÙÂ… ¿øÅ3.Ÿyþ¯Þ™iesÖÏøþ­ç‹ /^©@q®bÁ‚gœqÆå3b¬â¼á®âó®Õ¡s½ow“­Cnè~ýé¨1 3“õ˜œíÕúxô/Ø„íêîjïêl´Oø¡xWx øÌ§NöNŸ>ýKYý Dü_9`LxÄqwÆ(°Zêc,\dßÞ¢ÌÜs÷Ï=ûÌ É?q¤ª¢PLsÇí³^ùë_MNö¾Øk±˜ Í~(|ÌšÕoìß÷Iø˜_üüþð?³ïyó¥C.911êb#ˆ¯ðÉÇŒ,b3ƹŠëožþØü9/¬~QÊw.úÎÇ;¶^òÝïxé%)û^|ñ² /X¾lñÿ½à²I·=З+nøís¿‰g_ºê_~ò—ŸíühÛø}‹ó¾{Þ¢íKÃóÊö×>ÏŽ¥§eûç¹ðûäg'Ͼ`¾Šhñµèº^yùÔ¥—ûÛŸS—]Ú¹h¯U?V~ìßg) ^Û$tnÚm¿»ý¾?ýÃWïúñC =®ÖÓünÞj1ÍMwÿáÖ{ÿ(yz„¿líî÷ßÿ¬³¿|éÌÇ.›ùxŒ\:ã±3ÎøbAA¿Í1äbÛ|›u¨Ø‚‘íRÏßýûvÝÏ>¼½|ªEUUÕÌY3íAßø×KoùÖÔŸü·ˆøÚ7þå _øÂíwÜVSS#unIÁ®¢²²2lçö¯â\± 1ò¶ÛgÉåòa­¢§§kÖ̙Ӯ¼zîc¿A¦^~Õ]wÞÙÓÓ9V%³½Í)5þ†lüµ&ÉI“„'RÿÂÚ&æ#Iúƒw²Þ–ô/ó_~)í÷tš /þñùñ^Ńþ" ¾«`È£¹­8·}çßDÄ€øs ú8Ÿ…콕µã‚)󲇿Î_¼À Ó¼öæûß™<û¼Ë}yñF—£e„Òë1wuu>ÿü S§]?uÚô¹núõ¯-]Ú¨nË_Â6¯¥«ÃQ,;p?¿}d FÚÛÓe4ß~ûíG}dÆÌ[gÝ6söìÙkÖ¬ihhoÅ£¬q®bõêÕbBEýèˆWÑîw)Š{î¾û–›oAþçž{T*U»ß‰¡¡ÛÜõ‘Ä’ÓÞ#ng‹xU)+b¤¥I“öûÎak:zdïh"6«`¬b¸«˜ØLìïóàèµvwµ 2]m#«@ªÒÑÓãi÷ÛFm’¶Îø.=="fÍvÏØV^í*„¼‰…ijå##floÃýÐ?6!„BúG!„BÐ?B!„‚þB!„ôB!„ „B!$¹ô¯ÃïöylšºŠÊ²c%EÙ¥%9åeÇ+E*NÈ+óåUù5òÂZ¹LQ[¤R«•e"Zu¹¦®\§®Ðk«ôºjƒVnÔÉë5 ÆÚCmc½¢¡^Ù(bTˆˆ‘õ†£¾Æ “´Õ]•˜Q§©Ѫ+Ūƒ ,S«©S–ª%JE‰X²¶HYS¤¨)@|Œšj‘‚šª|ñÁª+ó«*óª*NT–‹äŠ\Qv\|òòÒce%9¥%GK‹–e—g)–)*<\Tx¨¨à¬à Haþ‚¼ù'öœØ—bo^.I\ÄÏlöýbäíûBì±k)<,v–Øe%EGJ‹³ÅN,)É)+=V^v¬¢ôX d–çV‰^q¢ªòDuEž¼2/PJEÁÅC”ÕšB…(®5EÊ`‰ $eI] ¥¢t‰b,l¢ÈUH%PEC  W §^n –Õ@I–Þ@1n¦^ÙÔ leÛ¨fƒ(ɯÓViëeX]W®V–Љõ*…V&>ølÕ•ye¢|æ–—æT”æjÕU>¯­#ð~Ž!„LŒþù}vŸ×.¬IœÝŽÖŽvOg‡¯?Þþx:Û=§ÅÝx\í§§#÷ççí ¬Â¶ðÀºº:¥´}ž.w_ÚûÒ-ÒÑóy:¥Û(õ„ßÚ¨·[ÊÉà× ä¤H¯”Sœ±ŸÑ–T•’á‰ý{5Q?éâ„’}dO„þu{Ý­R$ýóùãñ\BR%¢ü{\&ZQVV’{üxq‘¬NU+nÐãB©Rµ‹gF1™˜xÀìí~wQááú—“½·¹Qþ¡„ôoôˆŠ8­Ï/}¾‡þ2Ðý¼V³©177wÆ Ë–-[¸páÒ¥Kׯ_4;»¹É0àŠ—³E­Q Á‹gF1™˜XÌ2¤þËŽ9lMèŸdw±N›ýÈ¢WBÈÄæ¿þÑGJNý'”’¢ã1õ¯-¨vŸçóiD"¿Bø»¡i†“D.ml—O29⻵eÿþýóçÏŸ7oÞúõYÿû®M›6JîÞ½»µ¥>üèp9…Ñ)ö¦xft:„+*Å,ák Ó¿ÏGõ¯1Ãõ/T¹7i> åµ ã1榛n§%ó™ÃÇœ{î¹)÷™o»í¶ ¤Ögþáøâ‹/¦ÖgþÙÏ~öÜsÏ%ó'|饗üñdÕ¿Æ þµŽ@ÿ’ÇÊÐ?2~ñû쥥%Bز²Ö™Í- †7ßXÑÜÜ`³™?úh‡øÁÌÏÏó¸Ì‘ú>£R!w8¬RĶm}_šÑaoEÿƼö/üçWb<Æüñ§%ó™ÃÇL™2%å>óâÅ‹Ýnwj}æ5kÖ444¤ÖgÞ¶m›\.O…Ïœ)úª P×^O8è[±¿†/|À’c ‡O9dÅ&Éœª?«¥uË–-‹½bµš í5×\}öÙgOŸ>MXœ³zõêÍ›775½ýˆ¤NGKhF•ªöË_þò{ï½ZÂïÿ¼4ccƒQ£U¡c«ñß`HÒ¡‘1QóJ:”ZŸ9¿¯¤p‰ŸwÖ¬Y‰_¯¤‰Ÿ÷§?ý©L&Ù¼’þ%ÿ¼)¤"W«”áêßƒŠ§8Îw‡«Ñ„0ΑÔ"‘6¯µ¹©aéÒ¥{>Ý­Ó©¯¾zòM7Ý(tnÚ´ëD„Ë•–/_¾\«Õø¼–pýs»Ì¡M¦æwßÝtÖYg­[·FZB}½¾FµÞ Eÿ&Jÿš››G¬5ïÓO?rŸ9¿¯ÉdêííMü¼/½ô’ÃáHüz­VkWWWâç?’:ndóŠ ÕÞÞžüó&¹þ…|/~ý´Š,¶_ž0oý£™œÞòkÓëu‹-*.’-}mÉÙgŸ][[ÝÜÜPUU~æ™g®^½J£V½õÖ[â?A!Šáúçq[B3ŠéEÖ¬yûŒ3θøâ‹õzø34£±^‡þM”þ¥"£©Ñâû&?£©ÁKEFSs˜*¤¶þy Ÿ9üÏALJ†ãrdèO‰h«_H8±—<èb£}G’9 tÝ5· O;|øPJqÝuSEÊËK&O¾ê†® WQQ¶qãÆúz£Ïc‘fq:šƒ—ó™C36Ô”Š1‹p¿³Î:kÆõbŒ4£ÑhÐ4b–ð•†ô/|d‘ì˜ÝŠþ¡èú‡þ¡c€8¡?Ë$¹þÅH¤þÅùñ÷#"Nñ—8RÖgeôZE­|êÔkÏ<óÌ믟®RÖŠ1}´ãèÑ£‡-4‹¤¿ôÏ(æºêª+¥YÖ¯_' ðw²¤ívkðBAôoxúž‹.º(£ô ¸¸˜ï›ÆTVVޏ!5Q(>Ÿ/s¾¯Ô%Dúí:0¡ŒŸþ Zç6\ý‹VÑÛ‡+–CŽ$™œŽvOssÓ²eË>¤Q«äÕ•‹/ª­©Öjê òƒUõm>çý³ÛšB3îÙóé3ÏüJšE$+kíŠË¥=;ú7Jý»æšk>@ÿ¥ƒ¶®†;[ ‹³5v¸OKqŒÏ»á˜dj ¹³Ão0V¬X!œíDîñ²²’ü¼|°-++KŒ÷ù<ž°£#¤ñ̼í3ú7ì›çŸ>ò³toïô/Yô/aÁ¾H2\ØÕÕát:óòò6mÚ$ämË–-EEEbLG‡?tÕ_(JU­ÅÜÏŒb21ñ€ÙÑ¿a:!úè_:è5o$éê=–®.OOwggG{{»xíîîêh÷zÝæÈ‰µ:µN§jg·59­mbÆŽŽÏgô·yö1˜LLŒþ¡ ¼ü—¿¼ùærô”kö·9Ûý.›cPñ 7@¥ªV­QJÑé5-­M&sksK£xK)&ˆt?ôýôý#$uãt4ÇH´¹Ð¿a…®@ãïØé_‹ôýCÿýK”þõùúGúGã/úԿϧ!„Œ_Úý® þùÂGÉrìÖôýôo,ô¯¡¸èXøYý#ýCÿÆœdêú1<ýÓ¨åÙÇsNÈd„1ÌÑã9ju5ú‡þú—lú§ÕÔœ(”åä—BÆ0â°Ê-”iµrô®@ãoRéßñü¼ü"™ÆqpÏ?þ 7W\qEYºº:N.„ø|>ég*Eõ/¯¨¨VQÍi`<W¾¬ýYãïŽ;rrr8Ë@b³ÙvIUý“Õ©œ¦Æqpå£\û4þ¢èú‡þ@¢]?Ð?ôýÈpý›4iÒ€SXä©`DÂfAÿèù 4þ¦¢þ 8‰sN‰ÖÖÖhÈÆt[¡è )Tû~B0<ÀCÓ‡F*T ¥:---Ç­ƒŒ ,¡m…þÑø è_ªë_´‘цcÌ©ˆÝnokk®þef‘¶ú‡þú7±úçv6K‰óÚ¿AOÖq:!ú—±¿þ}ÈØ"Aã/ú™@výùÞÈô/ZMà€f»xô®Òø¿þ¥w‘ ñýô/Ùô¯³ÓÔ?›˜fXú7¬šœØ•‡–¿#(3é½­$ýs;[ümýëìð…CYáQ›¥ý£ëÐø;zÄ ¥H–~–±þŸv‹Æ_c”™!ËOF5þ¢è ©¥ÑÎæñ럃ž¿™Ôø;dL(Ñ?ýKrýnãïmÁ»­Ð?ôÐ?ôÒîú‡þ@z“<]?Ð?ôý@ÿÐ?ô®4þ¢èú™úÇîÐ?ýKZý;ãú7ý+++«««ãäIˆÏç+ ’ ú×$%Rÿ’ö,@HJýþíØ±#''‡³ $!6›mGûï»/ùº~ôù^oo×hôoçÎíœÇ Aÿhü@RöüRÿšƒúW;¦¿Û“8égf’m×'ÃçWPÿšýmΠþyC‡¡ˆ¬0Ûf1¢tý€Ô%™E²£ágô èú€þ‡þá~™i}Ò~ßû¡Gú:edi ‡>fÐåDÎ9ׄHôÆ_@ÿÐ?’®5~Ô+š× :c9#›‹Ú?ôýCÿHXãÔ¿Ì;¬…£è@ÂH¦®QôÏÑ$%~ý›t:úGöFÿпè_d™DÿÐ?ô¯Oÿú}¯·g„úGíIæÚ¿L‰þÑõ Í£é_‡O–Ðç±yœAý««ÅýHò\û—V¿uAýs„éŸãóSV€þ¡€þþ ?ËHúçr4IAÿH2ôüÐ’§þÅèùÃHÑ?2DÿB¾×¯RÆIÿ!èúèßDë_Ÿï ª^Ííl>!+R¡„ŒOTAýs…éŸ+ìÿ2¡Vôý€T&yº~Xƒú犥^Yþ þ5¡„Œ¿þ5…é_c(Aý3 è c¡†¢Âìð³ úGúG×€4nüM*ý‹¼7 !èú‡þúGíŸÈOzß·¿}~(ÿÕÏw¾È÷¾waY™ è¿è_ÚÔþM½vÊÿøÇwß}wëÖ­Û·oßµk×Þ½{:tìØ±M›6þù_ÿú9:­£ èú€þ¥GíŸÐ¿+Vœ8q¢¸¸¸²²R¡PhµÚÆÆF³Ùœ››{É%¿ºháEß»Ðlj˜Øg[‚þ¡tý½þ­\¹²¨¨h€û9ί|å_Ÿ|ò±+¯¸ü®;oŸ¨Û‚þ%RÿÊÊÊêêê8¹@âóùÊ‚<ùÄèß(õoÍš5’û544˜L&á~mmmb@¼µjÕª'Ÿ|òæ›oŠ]GãÑ#xVEä4d¼·9ú‡þ]vÙe;‚äääp–€$Äf³I?S4þŽ^ÿÖ¯__[[r?‡Ã!ܯ»»;´µíº}ûöÅp?Áßÿþ÷;î¸ml›hQ»Äß;s¶9ú‡þú—túçH.ý{饗þ“çŸþÎè·}Ž_*Ò»»Arê_fnó>ý³7ú}Aýk÷„CYþ«ý£ñп±Ð?³¾¨ ;ü,“ú÷ç?¿ô“ß;d¿úW¤‹ èú—úGú‡þ¡Z$Q×(úç´7HIý‹¼7`xü~Wy­a×Ѫ+Iª|’]- §(¢èúè_‚õ/ä{)ª±S^cÈ-76X»Zœ½ÍŽžÛîú‰ $Òhë…S úG× ñ7Ùôϕʵ»²« ¦MKG]sÇšM_yÍt1@H2DKQ8?9R%éŸÓÞØÔ¿Žv3ìÀ,Ì?bAÿÐ?@ÿÆqB‘d;Ñ¿z)©¢±³ã`…ÑÜQ[ß&"7x¯šr½4<áùêWÿmo‘4Û8¢pŠ"ŠþÑø è_Âõ¯Ï÷ÒUÿt­þ*½G¤Rëú' Ox„ÆDí-c»¥hDáDÿâ¹­w”§l£€þŸþ5¤´þ©›¼ej‡ÈžœªÉ×Þ 8’žI¡1þ M3`‚øGŽòC&aÆu»¥nDá Ó¿†0ý«¥0ÿ°Å¬Kcýò¡~Ñ&@ÿ UHž®â„"+8~–IWýSֻБ-e_uí ÒðÈ"”#4mxȉcÏùg$1Û-# 'ú‡þú‡þ¹þÕêíòV‘•MWM¹AY„oD‡tâ!ç°„h LÝ$f»¥bDáDÿ†Ô¿ðÇFÓõhüÍpý›t:úK¯âÜZ­±æV4‰ä”'_{£4<²߈)ýJœsE.a42 “˜í–Š…ý‹Gÿ}ëòË/?D&“éƒFÎ20áx<éGI©TJ?Sè_âkÿ*T¦£%F‘Å+ß½zêÒðÈ"|#rxБCNm®È?Ó ‰Ùn©Q8Ñ¿×þI?§<ðÀ¯~õ«¬ ›7o漎B¡~”^ýõ‚ ‰×¿ÒÚæC…Z‘OsäBÿ¤á‘EøFh |xÈ "'t®AÿLƒ$f»¥bDáDÿ¸öhüEÿÆ\ÿŠäûòêDv«¹úº›¤áGri 4&ž Bã#çŠ\Â(?d&Û-# 'ú‡þ@ÚC×Äë_Aeýîc ‘Gª&O½qõ–=Cæ“#ÕÒ,1"ÜcÈi†;e&„íQ8Ñ?ôÐ?ôolóÉ‘Êã%ÚÝ95;T¿ô×U·ÿÏÏîº÷—"wüðçwþèiøö{úF††·î–‰é#Þ=aÐ ¢ÍÿÄi¶Û ÅòX‰vçáÊ ×¿Aïêq™ß ·}¦ç/Ðø;fúg«—’úW*×ï9.?Z¤>V¢É–©ÞÙú©ùÛ§Çw*’†³ÞÛ% &d\#Š¥(œe5zôgþú—hýë÷½~ý3JIýóû]âôºóHÅŽƒ„$Wv®…³ÝïBÿxæ/  ׿>ߨíAýs[]ö þ©RRÿbGº7 !qpôϦ¶Ïÿ/ èŸ ýCÿý ý3édùG‚ç—húç êŸÅe¯ꟜÓ4!ã£ò þÕ·ùìAýs‡C‘ÂüC“ýCÿ uI¢®&­,ÿpøY&õÚ?‚þ¡èµd¢á‡þ¡týÑ?jÿú‡þ¡€þ·þ9lF)Ôþ%þ¡öé½ÂïÛ¹AŒ‰¼Éú‡þÑø èßXé_È÷z2OÿYû7è3ë3Ù~lfˆþ¡è ‰Ñ¿ŽvOaþÛâ êŸ2³kÿî¾ûÎŒƒº’Éú7¨ Æ£ePÿaúç;0 Ð?ôRœ¤êúQ˜Ø‘Ùú÷“ŸÜªŒ| Ï»›ßq9-R²Ö­ ïß·»ºªTV)«wíÚAï†Ø¿ÑŸßš¹¿èúèú—Ƶ^4þYû—ÂŒþÑõhüEÿ¸ö/|¹öýCÿýK>ý3H¡öž¿cÞø­Ÿ/¿è¿€þ%Vÿú|¯§§3Óôûþô/ÕõO¯×·´´pr€$¤££C$5õÏHí!ã¯Æ0ý3„RÐbÒ Ñô/++k÷îÝœe 1™LYAî¹ûî¤éú¡)Ì?~–É@ý£ö 4þŒ7ÉÔóý#ý£ëÀ¸“L¿èµýCÿп.‡Õ …Ú?BÐ?ÒSÿú}/õÚ?‚þ¡èß úg£ö$ôÖˆªVc›7¨~wè0)È;hiEÿÐ?Ha’¨ëGkPÿ¬­Ôþôý@ÿ¨ýã©ã÷ÔOvã©è]?€Æß‰Ó?½jÿпqýú<óýCÿý›8ýëó½ Ô¿øs÷ÝwþcÄЕÈ:® ¯Gÿ¨ýCÿhüô/±úçêŸÙi3õ¯:ýN»/¾87Tùžw7¿ãrZ¤d­[Þ¿owuU©4¬RVïÚµý‹Ýø­r/³«ƒúgÓ?}(AýS£è c¡ê þé3Yÿ_땱þÅ_û—ÝÑ?ôÒ›dêúþqo“ hðåÚ?ôýô/©ô¯§§ËnÕKAÿп1oüÖÏ—Æ_ô®@ão"õ/ä{èúGÐ?ôýúç@ÿp?2þúg·|Aýk÷»íaf~ÞA3úGã/ c8¡ä²£„ èú¡…Ųâò2NÓ„ŒGÄÁUX\ˆþ¡®$O×aéŸ^'Ï/..­,¯S×BÆ0â°Ê/*2jÑ¿‘éŸ^¯oiiáäIHGG‡>Èoó›TÔ?ñ§ÑPSZQ’_TLÔU”6Ô×:ôox¹ôÒK³‚ìÞ½›³ $!&“Iú™J…Æ_¿Ï®¨‘é4UngSød„ñˆËÑdÔ׈ƒ®ÍgGÿèù éDRê_ŸïõéŸE'Åílv»Ìe%GµšJ«Ùà°9A2>1Ø,F½N^QzÌã2‰CýãÚ?@ÿÆWÿú}o€þ !ôy-§©NYRQv¬´8§¬ôXEYneynUež¼2_^]P+/TÔÊ”µEJE±ZYZ§,ÕÔ•iÔe:u¹6 &m¥AŒ^¼V´âµB¯-×iÊtšÀ«V-æ)ѨJÔªbµª¤NY¬RÕ)‹T ±ŠBe­LQ[¨¨)¬•‹õæ×T‹ä‰WyU^uå‰`r«+r«Ês++ŽW”¯,;&N¦åe9å¥GËJs„Ç–g—g—)):R";\\t¸Hv¨¨ðPQÁ!YáAYÁÂü¾äíÏ?±/˜½y¹$q nðÀ–»@¤P$ÿ€Ø5²‚ƒb7v–ìP±ìpIÑáÀN,:"vh©Ø³%Ùå%GÅŽ»»"PJU–RU~¼ª"WŒ*Q<ªòäU'jªòÅFž_H¢¦@Y+^¥K³`a 9u°Š¢(u¥Zu™VSª ÔrQhõ¢ k+úʳ¾²^_i Ttè´¢`Wh5"åU¹8"Ôª2q‰%«ÅŠš¢Z¹LD^•_]‘WYq¢²,·¼T|ÚbJ·«Åç1…þ#“’Ÿ'ŽÖ:ôýôo,ô¯® ÿ`àüMÿÑ{œ-~Ÿ½½Í)âosôÅgi ÄÖæ•b•âóXN9¯ûóÇôOÓ?o`9>›´p¿¯o]ÒªÛý".‘èÇß#ÒÙáí¯«SJ[ ]þî@Úééè‘øŽgÛõ¥·[ädoO 'EzEN:ÙŸSŸ‰@"9%Ñ¿ ‚{$¸kûHÚ_wŸ´7{º;¥ØÑÒïò‹ÐWñ‰âL°¨KN_)Å)X® /ä¾P!ÿ¼„ûÅ;TÂC…ÙÔŸð²Jd!ï+çm}åÜ*çbØãlÝéÇ .ÿÄs ú‡þ@ “D=[ê ò†ŸeÓ?’biiRF )ôýôý#QݯQ‘bŸÝÖ9ÀÆAÿèú@ã/ú—–qØ}ë ýCÿп!õÏ籸-uŠâŠÒ£Å…‡KŠ³Ë‚ØW”….ª?!¯Ê“W.¤WÖÈDê×·ËÔŠÀeóêºR­ªLWWªÓ–ë5ô÷ûvýÐVˆ1:u°ë‡ºL[WªQõwýP«•ý]?Äkû»~Ô*äa]?ªÂº~T„uý(ëúQ½ë‡,¬ëGA”®tÇHp×Üøº~Ⱥ~‡uý( ëúQÖõ#P<ú»~‹M_×y²¦¿ëG­Tzƒ]?”BØ×õCUª­ tM týPKr°ôú:4êõ•ú@y®öc*•  û’"P†• qh*å}…¶*O|ñÙDA-+ |à²À‘•S§,u;[|3úGã/ ¥ng“Ûig%q.³[êÛ¼vº~À¸“™]?|v§­Q«.¯(Ëq;[ÝŽ&ôýôoBô/pÛgy¦®Tœ =ÎæÀ³?h‰#d<šì­ñß–8âtšŠZy¡Côý€t"…º~tø}s9[\:¢wXûyo–1™ÑeoðºÍEÛý.ôýô/ú×i·h¥Húxæ¯UÏÙŸdrÕœÝbP)«JKŠŽÏ‘É µ•–ViüØÎ¨÷ymE‡Ð?º~¿ã¯}¾‡þ2 N[}K“67÷ø† –-[¶páÂ¥K—®_¿>;;»Á¨vÚŒc:#ú‡þú7áúçê׿ϧ™t:áoGB«ÛuE.-ß…¤Vœ6ƒ¹Õ°ÿþùóçÏ›7o}Öº]»vnܸaþü—ÅŸ»wïnjÐÿ9«uaú÷ùøüûÍ-*ôÆ_@ÿÆBÿTyÂÏ2’þÙ,Z)1ô/‘Ö4NËGÿÈq;›KKK„°e­[kjm¬7jßX±¬©Ñ`±4´cû‹/¾˜——g·ÖÇž±¶¦Êfm•"–°õý÷¢Ïˆþ¡€þ%HÿB¾7Jý“ÂÿP=š r 1¦ ½5`‚x–¿ù±Ÿ2Á•¢d¼ã°̦†-[¶,ZôŠÙÔ¤×Õ]sõä³Ïþ§éÓ®'Ƭ^ýöæÍ›êuð•Šê/ùŸ·¼»)´„^ø]´Ñ?ôÒ•dêú1„þµõÏí6Û­:[ØdÂmýSÒžÈibO0‚)£ÍíFKä,ñ/9Æêâ\;Iò8 Æ¥K—~úéß5åÕ“¯ºñÆŠêë®›*¢ÓÕË–/_®ÑÔ9lÆh3¶4×o޴ᬳ¾´víÛÒ M´maú>^èŸ ýCÿý Ä %?ï€mDúN ›±GÅ9ä,qf¬ô/ÆbIêÆålÔé4‹-*’,YòêÙgÿ“\^ÑØ ¯¬(9óÌ3ß~{e]]í[o½%—W;íõÑfÓ‹¬^ýÖgœqñÅiµ*ñg´Ñ?º~¿É¬qÚTü}drHý‹æŸÆÄi}ñ˜h‹ÅýÒ©öÏdjžvèÐ¥R>uêµ"e¥²ÉW]yýõӅ•——lܸÑh4DÖþ…f44µµUbá~gõ¥wÖ¯c¢Íˆþ 7“'Ovñz½œ\ ééé‘~¦Ð¿xªÑâ¯ýeý[¤þÅÿ½Æ¤’$mìV½ÛíGJVV–N§ª©©¼öÚ)gžyæôéÓŠjVõÑŽíGµÛÌ1fs]uåÒ,YëÖ\Ÿµ6ÚŒèßÈ—,Y²uëVÎ2„455- ’úgÖJýÍ…|c~í߸¶Y“4H›ÏÖÜÔ´lٲÇÖÕÕTU•½úê_åò u]mAþ‰7Ö××{\¦3îùt÷ÓOÏ‘fY·võŠåˢψþqíÐø›(ýë÷½žî1Ó¿AÛFCUmqN9@ãixÖÈUaì%Çø Ñš¤I WÚ íí^ƒÁ°bÅ ál¹¹9¥%²¼Ç?ø`[VV–ïõ8£›ýCÿ =IÆ®±õÏe¶[t¡‘£I@ŠÆb9„$,N{Cg§ßétæååmÚ´IÈÛ–-[ŠŠŠÄ˜v¿Ïa5ŽéŒaú6>?w¿©ýCÿý ýkVåŸ8~–é×?ô¡jížžîŽöööÎŽŽî®®6ŸÃnÑõŒè=€Æß„é_Ÿï·þ’Êhð¸Z}‹ÇÕ2¤øtFôýô/Iôϸ5tÿHBȸEëóZƒúç ŸŸ»ÏÔ¬Dÿhüôo,ôO™bøYý#ýCÿÐ?ôôý ÉÔõý#ýCÿÐ?ôô®4þô¯NQ¼ãÃÖ¯ÙøÎ[¼òÊëè_E¶¸I­,AÿÐ?@ÿ’Mÿ4ªÒ¶®Ï>üI‰ì!d #«¿m{G[WŠþÑø è_Réßþ½Ûe‡<®BȘG\öí@ÿÐ?@ÿ’JÿøÈ -ç4MÈxD\âCÿÐ?HWR¡ë‡ZJ¸þI' NÓ„ŒGúÆÌÕ¿IýÄ3úèßXè_Ÿïõtw „  Ö¿ÓnR<“Ñõhü[ý³šÕRÂôO:)8M2>ú§È?±OŒaú§E:ú2\ÿþú7|ý“Î8êï¡„ I¨ÒÈÈÖaý?ý³Y4y¹ûZÑ?BÆ'­ÁƒÑjÖxƒúç÷;­a¦tôe¸þ…ÆG^ûg0A\.g˜p:;;¥%«Õj’<ú×ƉÐ?“Z úGú—<µÑôï¶Ûn»ÿþû—yã78ïÀ„SQQ!ý(½øâ‹·¹à‚ ’¤ëÇçú×ï{è!è_Êé@ò“<=‡¡fMÞñ}­Mè!ã£MŠüÜ}V“Æë ê_›3tŠHGú9L×H’¨ñ·ïŒƒþ‚þ¡èúGú7‘·}Žèä;‰ž¿€þ¡„ <ô ýôý#ýCÿ’$êúUÿꤠ„ è@šê_Ÿï¡„ )¤týÇAÿœAýkµ™Å hokS-§iBÆGÿj¥ƒÑë±ô·9B‡¡ˆtô¡è c¡Ò§ý#ý£ñýCÿAÿÐ?ôÓ4!èú0\’©ëúGú‡þ è!è]?2¢ñ·^_‰þ‚þ¡¢Âýv}¼Åëq¢„ 4þdHí_ƒ¡ŠÚ?BÐ?ô€Æ_ôôý ÉÙõƒÆ_BпÕ?§Óéõz9¹@ÒÓÓã 2÷HΞ¿4þ‚þ¥–þ]|ñÅK‚lݺ•³ $!MMMÒÏ¿„ôž¿QÐó—‚þqí 4þ‚þ¡è <õƒôýCÿ à¡o„ôýôý#ýCÿèú4þ¢„ èúèúGú‡þÑø èúGú‡þ è!èú Ðõƒ‚þ¡€þ¡„ è]?€Æ_ôôýCÿýCÿAÿÐ?ýCÿAÿÐ?ôý#ýCÿ’º~BÐ?ôÐ?ôôý£ëÐø‹þ‚þ¡12yòdg¯×ËÉ’žžég ý#„ cØø»dÉ’­[·r–€$¤©©iIô‚þqíÐø‹þ‚þ¡è¤+tý „ è è!èúGÏ_ ñý#ýCÿÐ?@ÿÐ?BÐ?ôÆ_@ÿÐ?BÐ?ôýCÿAÿÐ?€d€®„ôýôý#ýCÿèú4þ¢„ èúèúGú‡þÑø èúGú‡þ è!èú Ðõƒ‚þ¡€þ¡„ è]?€Æ_ôôýCÿýCÿAÿÐ?ýCÿAÿÐ?ôý#$¥õ¯¹AŽþÅ£sçÎ]»v-'HBŒFãÜ 7Üp]?!±õO¸_þ‰}6K=úGí¤ôü%„ÄSûg³6xÝ&ô®@ã/úG¿èúèúG¿4þ è!4þ¢èúG¿è@‚¡ë!„Æ_ôÐ?ôôÆ_º~¿è!<õýCÿýCÿAÿÐ?ýCÿAÿÐ?ôý#ýCÿ’º~BÐ?ôÐ?ôôý£ëÐø‹þ‚þeˆþMêgÈÉÐ?@ÿÐ?BпT׿p©‹a€‘~Hã/ è!è_ºêŸ4ýôý#ýCÿ’º~Bпaé_h$úèúGú—öúãÝóÎ;oJ™3gÎ òòË/s–€ G&“I?JO=õ”ô3Eã/!ý–þ €ž¿r „ôo=iüôý#ýCÿÐ?@ÿÐ?Bпô¸ísì> è¤tý „ <óÐ?ôôý㙿@ã/úGú‡þ¡€þ¡„ è¿€þ¡„ èú‡þ‚þ¡É]?!èúèúGú‡þÑõhüEÿAÿÐ?ôÐ?ôôý£ñÐ?ôôý@ÿÐ?BÐ?ô HÑ®eÅÙÆjNÓ„ŒGÄÁUV|ýCÿýK*ý«×WÖ)eæUøô„ÑGVâàj0T¡tý“JÿÄŸÆ*m]‰Q_AÈꩾ:xСè ¬>¯µV^ UW:mFªhï8lƒ®ZQ]àóXпøçλvíZN.„ƹARHÿœöz—³¥¬8[«®0·jmf-'hBÆ'j‹I§×V•—8ôÐ?®ýjÿ&DÿD¼îV—£E¥(./Ë)->ZVr¬¼ìxeynUE^uež¼*¿¦º@QS¨¨‘)keuŠâ:E‰ZU¢Q•hëJ5”iÕÁhÊôR´e:m`@§¯¥:µ˜²/U±Z)RT§‹ D¥‹-TÕ*kÄZ‚‘ç×V‹•æ‰È«NÔT¯Õ•'ª*r«+ŽW‰”« |ÂceÇ*JsÄÉ4’ì²’£¥%Ù¥ÅÙ¥EGJŠŽ.–*–.’,*<$+8ÌÂüý…ù óöäíÏ?±/ܽy$ nðÀ–» àD`Gˆ="v,?°Äλ¬¸ðP‰ì°Ø‰%²#b‡vkÉñŠØÑÁ=.ö{NEYNe ÇDaŒ@ É­®Ì•‹KŽTŠjåyB%Ï¥K³@aENQ(•À:e‘ZU$Š¥(œš:‘@A…V(º}åYÄ +7hËõÚ ½&m°xkDêÊÔÊRµª´NY*"U­(ÏEµ5²ÚêÂy¡¼2¿ªâ„8š*ÊrËÄ.ÏU+K\ŽF«e€¢è¤:)ÔõCª”ç£6¯Õﳋ´ùl}ñZE|^‹Ï#Å,â•â6Ó*Å#ÅÕÑÛ±µšÀôÒú–æµHË—Ö%­ÚßæiÄÙîq‰ôŸ<""Þ`|]"mtµuwùƒiïîé|ÇîNñ5Ez{ºz{EºENööœ<)¥÷”È©“ÁœúLÉ)‰àö?)è ¦Gì iOvYO (vepŸv®ØÅÁ}Ý%"íýNŸ( ý¥ÂÛ,'}e&X~‚É)J”TºN+ä}%›¥>r€ƒþ¡èú—–±Y¼nÓ ý£ñý‹§ë‡ÓÞ¤ª-*/É..<\Rt¤´DºÀ>'ÐÉ¢üXuåñjéZúê<¥¼@!—.ž/¨«- tâPi”ÅZU±V]¢S—¯™/ÓièúAÒªë‡0hˤ‘¬.– ¿˜=ØÝ£PQ(º y Ð,±ÏVvL”Ìò’œ²bñùªÅ.G£×M×ôп ½ñ‹£EœžÄéÏf6ø£Ñ ®­©³÷;ë¬/½³~­mFôÆ_@ÿ2MÿFÐø;&µƒê_œ_0‘½THâo÷çvÙÅ‘’••¥Óªjä×^;åÌ3Ïœ>}š¢¶J§U~´cûÑ£Gí6sŒÅ\W]y…4KÖºÕÂ×g­‰6#ú‡þú—±ú7&µÃíy1J;EÿÒ2>¯¥¹©iÙ²e‡¨SÕTU–¾úê_åÕå꺚üüÜ7Ö××»-1fÜóéî§Ÿ~JšEdÝÚ·—/=úŒèßHôoîܹk×®åäIˆÑhœä†nÈ´ž¿ÃmüÔâ¢õüg!#¸L´&ÝA¿#=Ó¸óo»ßk0V¬X±qã†Üã9¥%²¼Ç?ض-++KŒ÷zƒÞ}¤3¢Ôþ@z’=S%Ø“+;;üN§3//oÓ¦MBÞ¶lÙRTT$ÆÁ‹¸xo”3¢týÑ¿‘(5od¬ëu~WOwWGGG{{{gGGwWg›×>ä3‡?#ú‡þú‡þ’D Ág³×mr;›†¿‘ΈþÑø èúGHFýCÿýCÿAÿÐ?ôRº~BÐ?ôÐ?ô‚þÑõhüEÿAÿÐ?ôп‰Õ?K«JÌU¯¯׈Uˆ!ýCÿhüôobõOLßÔ êhoûì³SãšövcCÀ3ñ‚þ¡è ¥­Í •¢ôäÉ“½=]ý¿½žñyõˆUˆ©Åb¥áobë°vª=Ñ?ôý€´$E»~¨•EV«Iˆ™ßgO@z{»,æ–ÀJû?Œø´]•Ç-Þê׸\vƒ®z@ÝcbÖ>èª ú‡þ¡€þ%^ÿÌ-ªÙá“'{Ûý.Ÿ×’€t´»z{»ÅJMÍÊ€}ë;;;Ú|N‡­>˜†ñym«+ ¯{LØÚ#WMÐ?ô®@ãï„蟩Yqâøž®®¿Ïáu›qúëìl+•ªÂ¤ºG·ÛÚÒ¤H@`ÕýCÿÐ?@ÿ&VÿÚ¼6«%ióÙCúgjVJu¦VMSCMbnÕ„ê¼öðU£CèúGã/ I V·³i@&ÅAä\±#VÒ?ií-MªcuÒÒT7Qk_5:„þ¡è ®>ePý{ê×U12ýó ¦õµF}EÒØ ˜¨µ‡¯BÿÐ?ôÒƒTìú®.Gã€<õÔS1 0ðÖSOEÎ;ƒê_½¾Z¯)K@ê òø×¾ìõ×cd4«F‡Ð?ôýô/ ôÏ<¨­ÅÖ¿áº_@ÿ<–HÓk*5ª’'‚#‹^[ÿÚ…ãE[NŒ·âY5:„þ¡±sÑEÍ ²víZN.„Fég*µÝBÿ"­°¿ê¯a¸Tÿ´ueu Ù ›4ÚÀ¢­+íÂñ¢-'Æ[ñ¬BÿÐ?zþ@zÒúçu›œöúAMÿ¢M;^9RÀÔÊemA´ˆ­m`¸Q«Jâ_»p¼hˉñV<«F‡Ð?ôÆ_@ÿ’Yÿ"+¥ª¿1Ô?ªT¥(Œ±a Œ,šºÒø×./Úrb¼ϪÑ!ôýCÿý›xýsµ:mÆh‰Ô¿ÇŽðÌÁš_KÔø«.‹ícÜø¶jtýCÿÐ?HRºëGlý ¯ì«úSýÓD¿öol P¬(þµ­þ…¯BÿÐ?ôп ×?«Õa3ÄH¸þÅž2v<îÖAêßÔåuÊ¢ øÞé#‹XQük8^”åÄx+žU£CèúG× ñ7 ô¯ÅaÕLjT(UýÅž2v„gÞ÷V)4Aß|`\ÿ¢¬=èx²á¾ϪÑ!ôýCÿý›xýs¶ in’þÆý‚ú×)`:u¹ZY”€è4ñ¯=ömŸG³jtýCÿhüô/ ô¯ÙnÕ% ƒêŸ^S¡Q% zmÅD­=|Õèú‡þ¡€þM¸þ¹Mv‹6q;›£Xq¢×TNÔÚÃW¡èúéAJwýp;šlfM2¨þ´•Úº’Ä «š¨µ‡¯BÿÐ?ôп ×?—½ÑfV' .GS¤€µ6©U HksÝD­=|Õèú‡þÑõhüMýkHÌyÐåhTR|B§.9|ðã®®vSSQ[‘€˜šÕ~±Òį=|ÕõúJ’ö‡¡¥U…þ¡€þ¡"~Ÿ]äÔ©“„¤q\.»^[Ù_Ù‹þÑø è_Fë_¨Ðåhà•×4}mììðöôô¨Å­Í ôýôý#$ÒÕ鳘[ÔÊ¢LÖ¿Iý kôR…ïúþ2Æq;{{»Kd‡MͪÌÔ¿p©Ô£M€þú‡þ’Š‘::»{+ÐõhüM¼þ©²íÛðÎú7E6¼Ã+¯ôºýoë͵èúAú§VoÛš•}èãbÙ!B2-¢ä°5K£*Fÿ©ƒ^û7eÊ”™3gÎ òòË/s–€ G&“I?JO=õÔ” i£ûö|(Þõ¸ZÉ̈ò¿ïvôoÂõ€Ú¿„éßÁýÛõšR€dlDùGAlµGÐìGÈÉÞ…þ^ÿ"ßBÿ UH›®Ò)  ›È#h@jªò¾þõÿ”nW¢ £Ñ¿(=‚Ñ?@ÿÐ?B’Eÿêõ•Ó¦]û•¯ü«”o˜Ö`¨BÿÆöÆ/tý'\ÿ¤5âøSÿLÍÊß<óÄ´ë¦Ütãô­[߯bø¹ßÎ1·¨Ð¿8ïê<`8ôп¤Ò?j„H'~ý[·vÅÃý⑇())öy­Å²Bñ§Èúuo¢<ô Ð?ô4Ó¿C¥${‡îw;›Å¯»uÿþ½ÒȦz9ú‡þú—–ú7iÒ¤§ÎÈ1ñ¿KH éŸÍ¬É9z8''Ûë1‡Fú<–ììÀH«Yþ¡i¤q×úntþ$$½½îV‘ˆ‘&1¿è ™©¡K¸#kÿ¤t‘¤´þqÛçÄ„®@ão6þF¾hç.~ AÿÐ?ôп4пA/ù‹-‡„ è¿€þ¥´þ…ß ý#èú‡þú—á¿èIQýkn¨©(=¶ó£-ë³ÞZ¹ré[o.]õÖ²PÞ^µ|ㆷw}²5÷ØžFc5ú‡þ@æ9]?â@ÿH:éŸ,ÿÀ–Íkß|cé’ů,z寋…ç‘×–,¸qÃ*q@¡è ™£áâ‡þ‘´Ñ?»EûÞ»kÖg­úðÃôz]CCC}}½Á`Ðétjµº®®N©T–——¿ûîæ¬µ+·mÍÓ£týyê!)­›7¾½lÙá}ÍÍÍÂF£^¯×h4ÂU*•B¡¨¬¬\¶lñ{[Ö¢è è!©®›6¬Z¼x‘ÙlŽ¡âuÉâE[Þ]ƒþÑø èúGH:èß«‹¬VkKKKSS“0@©ýW«Õ ”ÚÅÀ’ů è è!©®«NÒ?»ÝÞÚÚÚÜÜ, PªÔétÂ¥ @1,韘ýý›;wîÚµk9¹@"NsƒÜpà éÚõƒ½ iO<µ‡#†þ jÿ¨ý€L#{þ’Q‰¦N§Ód2µ´´HWÖ××ëõza€Rû¯øý£ëdiÜøKú'ôÏív›ÍæÖÖVé À††ƒÁ PªcÐ?ôÐ?ôtÒ?ÇCÿš››Ñ?ýCÿI'ýóz½‹Åd2IW666FéþÏFŒDÿÐ?@ÿÐ?BÒIÿÚÚÚ¬V«Ùl–®ljjª¯¯—n¨ÕjÅxôý€Lƒ®„d²þ‰·Ð?ôÐ?ô„Çíl¶[L-ºØÓˆ)Ù\I¨~¿?†þÙl6ô®@ã/úGBR×Ô ñx\§†ÂãqŠ)Åôl´dÓ¿öööúçp8Ð?ôÐ?ôHqØuÚÚ“½½=bO …˜FL(¦s±é’Mÿbtýp:è¿€þ¡DŠÑ °Ù,Âë|ñÑÓÓcµšÅ\lº¤Ò?!ç1nüâr¹Ð?ôпôÓ¿I“&EùV´‘™§½±ª¢ðäÉ“íííqꟘ²··WÌ%æe¦Šþ¹Ýnôý€L#º~Äп8§ÏÌ«þd…9mmmÞøðûýÂ4Ä\\˜Tú'vbŒ‡¾‰‡þ¡€þelíߤ ƒŽÌ@!DÿÒIÿ¤«þ¤ª?£Ñ(ÜOªúS©T>Ÿý£ëÐø›™ú>M3Vÿ<ñ!¦Dÿ’PÿºººbèŸØkèúè_Zê_$±«Ñ?ô/mô¯»»[ºêOjù5 Âý¤–_¥RÙÞÞŽþÑø è_†×þEÖffû/ú—6ú×ÓÓ#]õ'Uýéõzá~RÕŸB¡» ýCÿýCÿb÷ Î4ýóù|îøS¢I¨½½½1ô¯«« ýCÿ Ó ë×þ¡i¯ÒUR˯N§î'µüÖÖÖöôô è ôü¥ç/ú—NúwòäÉú'äý«\tÑEsƒ¬]»–“ $!F£Qú™â©$¶þy½^W|ˆ)Ñ¿$Ô¿S§NI>BÏùî'µüÖÔÔˆwÑ?zþ@¦þô/íõOºê/ôœ_á~RÕŸ\.Gÿhüôý#!ý+)ÊU«UíÎøSÖÕ)Å\è_²5þÆÐ?Ñ?@ÿÐ?z毢¦tϧ;ív›ß?ô½_Ä46›íÓÝ‹¹xæo²uý®ú =çW¸ŸÔò[]]ÝÝÝþ¡idB×2²´4iòOÙþáû••C¶üVT”‹)Åôb.6]²Ý÷Oºê/ôœ_á~RÕ_UUUgg'ú‡þú‡þ).GS½QYŸ½óã6oÊŠ1˜RL/æbÓ%ÛS?bè·}¦ëÐø‹þ‘ð¸Í¦¦®²ºR;b1¥˜ž–lú×ÙÙ)]õzίp?©å·²²’gþ¢€þ¡dP t9šbñKZýëè舡^¯ý£ñÐ?ôtÒ¿ööv©Ó‡Ôò«T*…ûI-¿n·ýCÿýCÿI'ýkkk“®ú =çW¸ŸTõW^^þÿÛ;·ç&®<ó7„‡Àfó´S›©ÚdvØ [;ûªüyÈPI†ª-¦¼Ùܧv';68$ÀÌTv À‰mlXb ¹@¶Áø"[[’%Û²dɲ­«¯’llýIM´ËjËòE-õ÷«¯ºZG}Õ9-}:§Ïéééiôý#BoA×€òÖ¿D"¡¢“““èúGú‡þ”“þÅb1宿ôs~Åý”–_³ÙFÑ?º~Aã/úPNú7;;«Üõ—~ί¸ŸRõg2™B¡ú‡þþ¡å¤ÓÓÓ*úÐ? ‚@ÿÐ?€rÒ¿ÉÉI宿ôs~Åý”–_£Ñ8::Šþ¡A èdâv\l<[]}²¦úTmÍi¦E›ÖœºØxÎçu®Vÿ¢Ñ¨r×_ú9¿â~JÕ_ww÷ÈÈú‡þ¡· ë¨0âëoh¨ëhoqôY èHF\h¨÷ûœ«Ò¿H$¢¢^¯ýCÿ‚@ÿÐ?HÓÜtÙf5NDÇæSPt$#$;Zš¯¬JÿÂá°Šþy<ô®AÐø‹þAšÖW#a¿fmuˆd‡dʪô/ ªèŸËåBÿÐ?‚ Ð?ôÒXÌñØÒ¥$;z,†Ué_ Péú!fˆþ­oãïÛo¿}ìØ1~\‚Ð`ø|¾·S¡ýÛ²eKþ³åÇØ¿Ú´­¯þÉaçøùû«ÀÖ4¢*¿ˆ¢ÜûGµzÖ¿ô’·²âê_>j‡ûiGÿÆÆÆTôÏáp èAz =týÈårK*ú¶dEöF²—W¯9L¯µd•lÏÌÞ¾6õOñºÕêßcLo$Hm¡pøðAáÖüL:Eæ?ú°òÈ‘ר*}DÿÐ?‚ Ð?è_¶¤©×þå¿eWYqÉ<K®ñ7—ûeÏäš×­û…ãÊGQy`:ñ½?¼«$F#ãëßèè¨ÇãRît:v»] P©”yô®AÐø‹þåÒ¿çÕ‘óßc¹êß²)¹æõGlß¾}ŠìÕÖTIJÕéÊËŠŠŠÂkÿ*ß÷ûý*úgµZ?¨|ýCÿ‚@ÿt¢Ùí¼kÔ?• ¢èߊ,.ÌïÚµkëÖ‡¶oßVy`ÿ¶mËüîÝÏß^¼U˜þUúŸC‡Šø »ÝnåÀþþþ¾¾>1@¥ý·»»ûСª??†þÑøKú§«Ú¿|º~ä/r:¯ýS—=ôOù¹ØË{^Úùä…Wö‹Üõ£ú³£'Ž\WW;00àñx”;eÞáp(Šû}Vuúø'>S{ýCÿ‚@ÿhü-XÿV¬ýËÿÖÁ2Ó¿eïñCÿ–4ÏÌL½ñú«/¾ðÜ[o¾6;;-)ëß™šOÎÕ‹Ý}|øÐÁƒ8x0“JáG>üôÄ_êjOœ­ÿýCÿ‚ÐOè¤ëG®¦Þe;êæêÕ›g㯊F®Øó·DõoE…[¶ç/ú—£ 8 êêjÃáàâBl-¿ˆþ}u©îË‹u _ÔÔ9U_wú\}ÕÎVýïÙϾºTÿÍWç>GÿÐ?‚ Ð?žú¡óÑžyêGÑ P ¿L×8W¿ý¢ùZcKÓÅ-—äÂQhkýZAÞBÿèúA¿è߯)ß&?Rdí˜MèŸæ†}¶˜Ñ?ô ý㙿…ÉØ†þiMÿ̦vôOí¼Ë<ÙÆ_‚ Ð?ô¯ °Û Ó“!¤K;LM†ì¶.ô¯èî—cý#ýCÿJžPÀãó:±hæ“È (HHFHv„ƒôýÓB¼óÎ;ºú¹ÔÛùVVVÎÎÎêç|=ê÷ûõs¾»~õ«ŠŠß ‹HÈã÷9ƒãCPt$#¢áá\9…þ¡èç‹þ¡è€®@ÿŠ¥*q¾èú§¥_µ@ÿÐ?ôo“õïã?.ø+½Xë>õÔS%wÌ¥x¾UUU‰Dbó×}æ™gÀæï÷üùó¡Phó×Ý»w¯Ùl.l]ù^r»ÝÚ_ý@ÿÐ?MéßZj–еîŽ;Jî˜Kñ|×R ·–uŸ~úéÑÑÑÍßïZjáÖ²î³Ï>k0 [÷Ì™3v»]ûë¢èú‡þ¡èú‡þ¡èú·¾ú÷È#üâÿ t Q—šJùéOÿVãGÈ1+åÑGýùÏŸ(­c~챿{â‰ÇKë˜ö³Çüï7g_èú‡þ­Ë°Ïê‘Ù#8s”-RH!…”ÍOAÿÐ?ôo<ñ* T¾¯Ð?ôýCÿýCÿÐ?ôýôý@ÿÐ?ôÐ?ô¯Ìð;.6ž­®>YS}ª¶æ4Ó¢MkN]l<çó:Ñ?¾ÃÖúKñõ74Ôu´·8ú,Pt$#.4Ôû}NôÐ?ôoƒhnºl³'¢cs‰)(:’’-ÍWп’h^)×f#œxž§£Ãó-SÖ[yV/´è,¡õÆÕHØÏ?#í Ù!™‚þ•Ä÷j9ýp¬x^evâyžN9¹PžçKy.ïEÿ@‹¹3›@º´ƒdGÅ€þ¡Z>/蟒®ýãï µ%§ÙÝ[2ßR‘ŸeßU_eÙ´­Vÿò©3ÇÓŠ®3SþUéŸ,þ¡èú§¢Cºªí,§üÕ³þfVÅÕ?mÖþåó-þiAÿ$¥¦úhžúWæSYýCÿÖ~^ºÒ!]o9²Þ»Ñ¿ì”%5ÊË%ïfVfת,¶l döZê{_vûšÕ¿\—–8aöI¤Q8|ø pk~&"ó}Xyäȇè_"©þ<_ý;S{\–GÿÐ?ô/ÿ/:}ê.µ»è_™éß²æ¶d^ekù¯²â’y&j¶ö/;=û?c.ñÓ³†Ã£ÊGQy`:ñ½?¼«$F#ã«Õ¿Å…xÃùÓ+êßõæ‹¢çÏ’åÑ?ôÚ’<õ¯ÌÆ÷Fÿ¸÷O·÷þ–¨²ØŠmÇ+®µâ’%§+nD߀±}ûö)å³¶¦JRªNŸP^VTTPûwç΀Óôõ—gÔõO/œ¯²[»dyôý£kµèúW–µ˶Ûn‚þeË'ú‡þ-aqa~×®][·>´}û¶Êû·m{Xæwï~þöâ­ôovzL.ŸÀØPWç·7š¿l¾¶Œþuܼl1·Ø¬wî,ÊòèúÇÏ%úGþ¢åÚø»ùµù'¢:¿ýo~.öòž—v>¹Cᕽ{æçâ…uýHöþ˜¿w÷û»wo/.$bÙHº¼+ËÈ’]†Ñ¿uVKÃ>/™/³‡«ŸoY¶w«ŸoÙë]Þç«~^èŸÊvë¢ùl¼ŒõoÙ{üп%MÀ33So¼þê‹/<÷Ö›¯ÍÎNKJÁúW耮 ço®¾·¹ mµ¿*¹bÏ_è_žšòéù‹þåhއBººÚp8¸¸+xàôô¬¥5Þ²¦Æä©Å2@)ü2Í~ ýCÿпõÒ¿eûo¦òqï*˜M蟶찘Ñ?JúÇ37 “± ýÓšþ™MíëŸ\A{~ý|KS#úè,‹Ýf˜ž qih‡©ÉÝÖU˜þõYÛ~ò“¿Q*™öôÐ?È&ðø¼ŽD,šù$2( ’’’á §ýîݹó·n}Há—ÿ¼Óïµ¢€þA6‘ÇïsLJ èHFDÃùrJEÿBãý¿yeç“;þå—ÿT[[-S™ÿ÷û×p`ý@ÿÐ?€EEÿ>9väÅž{éÅçÆîD<Úm蔗‰Oþ„þ è@™éŸßÛ«ÈÞwß^žM=Ý#>¼|ùk%qlÄŽþ è@9éßDx¨¥ùjKKS<N'&b‘¦¦db4ìBÿÐ?ô Ìã³A!+1$kÑø €þ¡å§ û èú‡þú€þ¡èú€þ¡èú€þ¡èú Yý;ðßÿ)D‚ÿÿŒ™ßÿÞo+ßÿú€þ¡°ï°ãbãÙêê“5Õ§jkN3-Ú´æÔÅÆs>¯sµúçq™¶¤â÷ユNüß¾¦$zÝôýCÿ ͈¯¿¡¡®£½ÅÑg¢#q¡¡Þïs®vØç}ûö)²÷éñ?Jʱ¿|¤¼¬¨¨`ØgôýƒLš›.۬ƉèØ\b ŠŽd„dGKó•Uû›Øµk×Ö­mßþðïÿëímÛ–ùÝ»ŸOÄ'hü@ÿÐ?ȤõÆÕHØÏ¥¡$;$SVßõÛxyÏK;ŸÜ¡ðÊÞ=±ÙIIGÿÐ?ô2±˜;ã± . í ÙÑc1Ðów"<49yãõW_|á¹·Þ|mj**)ôü€²Ô¿-Ë…vüJS“§þ¥?Æ\Iå-(–þ “O00^WW ŽOFÜ ü¥®æî¦QŸ­tE«Tô/Sí–Õ(Ï‚×cñº-Ãîžá¡$îTñÍ®~“kÀ4Øo’‹hÀ!å¹ËÑgpØ:ûìöÞvkÏM¹šzÌ­f9`K««ß835› d_° ±ôÌ‚lý‹†\ò{4Î'&…¹ÄÄâQ!$b a!®0JTˆ)̳™üq™äòÊl-Q¶¯ìKÙõüÜ”p+Éô­yaFø±5&,.ñ‰Û‹Â\’Ûswnϧ¸u现<Ç;‹ršÂÝïoß½+ÜîÝýþÞ=…»÷…û÷RÜÿA 63î+‘úüïIÜMñ½d’SÉ,û>I2%+SyšÌ\ÉâT^ß”Ü_LHaø±TÄSåäA™I•ŸTAš–¥”®¿*äJxº§JxFÙÎ(ÒãÙe;IªägòøƒBž³œKÊÌ”_.:þŸÀ¦±œþúè €þ€¦õoË–-+¦lé½dÏÀ†êßïÚd Ãú6¿ö/ÓÁ–Ìgûá’³í1ŸÄÌÕ—=•åÉM€eùá‡Ö¢¹œ0»ÚP}õÄü7B31€ºû]¹r%ÿ{ÿòÔ°\•„y&¼_õƒÀý®¤"ýË® \/ýSiÌEÿ6ÂýŠ®ëÒø‹þ¨»_þ÷þ©ßѧ‘{ÿÐ?u÷[mão>¶ÙU…kéù›¹…<‹Ñ?€\î—þ  Y÷Cÿôà~ùÜûeã~Úø Zs¿´þ ÷¢úq¿Æ/>Ǧï߿χPÆî—¾÷Ï﵊ûݺ•às({F†{e:?DÇ£á>€2¶>¥å×ûÅ'½‡d€ üÜO¬oÔg•y×`¯oØ15=់Ä&¼ÞþÞž›fã >%€rÂ﵊ã‰é¹Ýý†þ¡}'¾ø?e#7 endstream endobj 702 0 obj << /Length 2272 /Filter /FlateDecode >> stream xÚÕ]ã¸í}~…»‰O²%èËíÝ.öÐívpE±½'V&Æ:vÎvv&ýõ%EʱÏî6ƒ>Œiš¤(ФHFxžðÞÝýøp÷ÃÛ(ò² ‹ÃØ{ØyIè%* Ty…÷Ñÿu¥´oNÝ¿Wë0IýŸšíé`ê~µÖ~Þ—M}Oø¦2ygè% â \ýöðËÝÏw¿ßIXJx’D« ‰·=Ü}üMxàñDe©÷d©žŠSxVÞßïþv'&jŠ™šR"JHMS” S˜ ¿ßª²f¨ÙÍ>åÏe¬ÖJGþ›ªÜ®BábÒžiæÿK„âO ž¶ Ë]Ñy¥€òD/Û¼¤3thŠrw&¸ì;¦kªæÔ®´ðyåŸëÞ´ô W{\­¥ð[cj\“™ën%µß›¼˜î6UNš_èóº@³ƒÍÖR™Ödœck:ÔÖ6vQR"Š"ÿaÔwe)ù§²~$˜ ¦É`UùÆTnšª†õ’ ‹Øgþ‚j5«HûO@)ÕÈ`ðB“‘ß_Öô±júžV†·œ»S½E/£·Æ1ZµÁ6Ë{ÜN(ý÷;ú°@Ž MK2è\P´ð¾¬ŠÖð2yËÌ8õ¶7³NvñTVÕ  3n˜/ßT õ /2xÙÂñ²ìtnÇ|¨€ÝœúžÜ2…#ÜÀÒ7GÇ«END­)·=‘…?ãQ0ƒsp¦½ØHë™ÂÿçJ M;JÞ)wÆŒ˜3Ÿœ³ÍËÇ=ëÅ1´¨ÏùÏ(•yŠÂée­2Þž=®­2:A@9c/Ø‹Ž}POL&9XCÎJgäö„àÉ'ÕhP7éÛ$¢ÿÀg';g;+—Ìz ”u\»5`Ä$¹N鼊 ve£ˆÉfCV‰ÿfŸC „t^c9£P µÁ2?¼Õ()ÎìôüÝw!QMRg(ƒTc޵DxNÏëîw8rÿž_ Ù×L9‰í¬ásVpv~=D;fI>Å5¼yŸD;å˜i0Cnz×0?ùL[zÛ¡‘r4«uï†}½ìY<ýÜsÞƒû¡aN>#áwv3S†Î¹ªh_ êç[†8€O°wž°Yûèðá\€ø1“›2Î!¥§ã(iŠ·%âUY’z: ¸0[ãíàŽ¼ånÍ«g #¸lµÀײÌ0ø¦…xrÓÆBq˜‘HÞä·Ëô>®Ã ¾Ìx¹–w‚!^©í¯oX oÑÖ®(ƒÛv*¡T·ð΢7 „¾Iy襛­‘ùV[«›m­‘ÞÌ|Û)_Y;K_aí+õÿ÷Ö¾Ù9a«¯qìWxvL¶†Ó_ckõÿck©ƒèHLx—2ýüª™^#iÊp|¼Ôt w©Pßu¡ñ¾F¨Ãc(#d±÷K =LôÐÿ]ÉÐ1jößÈøb©¡M5÷öòc¨‰"ÕÒµNˆ~ßþmÜéPwôBBœpݘgzp€¬ =± rЉ٩þC9Ýùp0\7A§`‘¶9Ô~Û´Ø«Fi8UJR\áÉÖ?/«_Ô;ÏÕsÊ$V™¥b{®Y*gš©Pùïkúòë*¥iÁ=· á©âwõ °nÿ ´pmTÓ¦>Ñ7ªÏ ý”:Þ÷‡#Õp~|vm -,FÚùh®–ˆTeêüÀïe½ Å˜;Z[3Þs«ÔN ÂÙëd§™3j[Õ~l¹…:¬å%Ó‡kÓ“KG—±À³3yK­(½_éR¨0n< Çm|âbÜŠb꜖ƒöÕú\,wŸèMF¢Ù':Úž€Ó‘”õŒ–íÄ/†«dì X5šm|½C¹ÿþ~RpD*Þ¿^hX”B˜#‰‡1sM…é¶ì¡G¨ò;º‘««lÃS7½q2r&Ú6‡CάätÇ|kIVxyYfmùk^š!‡Xv0 °ëð¸ Í4ʶoub¤!¦€T)¸bìŠ*òk>VøgZîâ£HB¶°35QtcG»`ÒÑZc ìɨØ;zÚ—ƒŸ¾ ‰;Ó“ŒŽgö}¥\ÂQ®ûà:ûr”c0•~i¸…òÏ,ßö¤ýž î®Åu Ã~pš\¡Û´ƒ=îÍûÚíhT¨3Òý‚ˆK“Lqi5£çÞ5‘åEŒ).&ذ[¢(I(Ï !“¡Z|6ÜLŠŒƒ4IÍy)îaÇ#%â@dát&ð°ÂÑ$˜Q&|Ï!d}'’.³ j0 ¾tûæTvÆ—‘ñµ©µX ê?"}k'ǽ\ØK$•]RÈDCìõŽºB«_L²™ŽÔ(Ñ"±ð™Ò1O”¬°æ¥mLµÁž‹øV É‹PÔ$sO×b}ZúUÓ|ê,?áj†ÞŽ äû%¨$]¤½àq5ÿ‹¢d|±‰s`éXN&1rŠÈñJá°ÏTä|ÀO2s³Ê_ð~eÒÙW¼?̾îýiö%ï_+(yu2;ƒ ¦Yžl†fP§ªçÀ‡#\È4ðF`’ý‡‰SçÒÂ|"vl›#'ª¾4œ+šÝŒjìGÃÀÍ ù¦ó#o!{³Îe0¤nÓtŒßµÍi ñÙnŸ«éÏ„E‘è·ä‘x!åºi/Ô‡c]pÁ5VôÒšƒ/7ž³öæ"‚P4qFœ;ĪÛÉ~eÖК믻ûg±ô=mÀqviäreAœ]B›ƒ1Õw*1Íò÷eaø\äˆã[týLŽC åYA`î!±›’'Ã/H$l7þÀÅÚD<8*|{l=©ɦzþyÆûµ€¨ÿ6ÃŒ'ª†ÓBgæ‘)ÏKë¡øÔ£X÷ÕÂ| óúÞE„›ýÞ>fÇÇy•hò÷¡ã›ÿø¨Uηþö¸øÓ(Ôg:j„Ú!†ØTh—JÞìóã ‹>ÍæL}L«1þ´Q÷mSœhŠ?Sô?¢u“ endstream endobj 708 0 obj << /Length 1353 /Filter /FlateDecode >> stream xÚ•WKsÓH¾ûWhoRóFÒ1à ` vƒbMb–ä•dBö×o÷t-;®e÷¤žžž~|ý˜‘ þþ5“ð 2dRÄ©6Áª™}ù&‚ øo… œT$&‡ï&ø0{7{±œ=¿Ò:(âÂ(,q.d` K‘Ë*ø¾Œæiøúâfyù>ú¶|ãŽÈ$Ö‰QxH“æÁ\鸒Ž,£¹JÃÏ‘áïxfv¹<öÔ¤Yœéäÿz:1›hgI©ã„¬¾¿¼X\¿æR„¯À,‘NË(àQŽù/&!ϵNÑ]ÊYÕË]ïBèm;n" #ÌÂO¨Æî†¿i9ì¶ÛŽ$ÇX½-«º½§EUŽ%Qw}×õUèdcYú¡×HåáhÑןã3X&|ù­~Š á3’}½¸Jy÷êzù¹jA_žVè~Ϩy·¸‰ ^åámÝ–€ð–m…(ôs)ã"å"x{óÇó·7"¬&¼‹áLÀ±¦‡8š'R…‹ûàËÚÒ&™ -!{*Ó Ùi\ 6N ¶RJÅ&+¼Ðoçô@âeê%®—Èùx&»ZÄÉÞbU—›îžB;rÓEÌ€¢rM¡¡Ðšª›}š]nqsÕ5 €5°D{tÄ„7×´³*yë–wvƒ­b‡ñ\æ"Ev õ5ÈkU„eUÕcݵ˜©$'ÍZåx¾' §‰M‡QàfÇ[”zäC“H`»ÙÝ×í@‹º%©›Çqݱ·u½Šd®iË›(|Q»c#îNûb¢ÏûWö·õØO x'EŸ«º œ è°È8~ š®®$zRÌœ³ bvľ|qqè@éYí´—mE ¹=õš40‚ÎS‘„Krʸæœj'ú$FbzE“€z<‡ÀÐmÑ2n׫ÃME†jÃoo± m[YÞ8؆ìm74!ˆI,¶®7šÅLXgôÀ§Œ+{‡ã£Ümp,)c8÷Ê( …¾ %6uûSe+XIâ»Aê'HÀ =)Gç/Èá„Tu&UÈ5¶l™×à‘FïöÞ¨ N† n]O&45©SÅÒ“²EþPFZ„?&„>“ª-ŶµRlËlžøJûÎÕ¾jh¼rCg|3àAúam[>²µ-Œ,·TòhPÇ£A øÑ ýhPÈ:xñt˜ê n=¡~5”u,“É å^â=âîÀ87’á‰q˜ÉP±;š…I’ƹÑÇ w[ “j Ê0ÌH§û 0 7R‡b¤5·;Ö<>bŠÛÁnìjd½T ONSFzr˜tâZÓaõP ¨/‡¡[ÕåD§›.^fZb†/,ŠÚuß;ÓÖwVá»/sf¯í¡ÇyH´'[ÓÂG '…‡»Õçìñ€Pü@˜ºq!u& Sbl{‹ÿ丿îµ\Ã\º _‹°{_“ý_îÒ¨pðמ5@WøÔù„0øîýÕr¾24\®0Œï$ÐÝ×–þÖóóÆ$‰´esv 3ôOkw1hw¹”ùܬ ÷{¤ÛÚÝcO†õ½{ÎôÝnKv”Ê^0` .!huXÇ“÷u‘ÇZ¦¹{@+…ÏÙ"Å×¶Ì3hÏ_Ûϯ,ºý›zÚ™(iŠX%œåÏQ&Bv|×ÐIýp÷µnÇwÑø¸µL:X±§ïdÜB# h„‚ðÿ4§? )¼Mvú¯ ‹ü?þÕ¤* ¥‚~j$Ç&õ©É®\± endstream endobj 705 0 obj << /Type /XObject /Subtype /Image /Width 471 /Height 541 /BitsPerComponent 8 /ColorSpace /DeviceRGB /Length 22951 /Filter /FlateDecode >> stream xÚí½y°Õç«þkþ™?¦aÚÆÏ=3žŽîèèvÄÄë~ýLžîžñŸ3ñx/ÂóÆ6 ¶Çnºi„ÜØŒ1ûj°#±‰ÅHˆEíÒݯt7Ý}©ª»Õ¾ïUwïW•UyóæròäV•Y÷›ñ‰Š¬Ì“'OfåùÔ¯N<92: ‡ŠÅ•+›Ÿ}ö½nnn´…+v²É˯Тé3>3Ч'ƒËq[8yäò毰öY¢m¢kš¶T*dó¹r¥J^_«ÐªµJ¡\Ê”‹i=2–(‰deTXäT(3È‹TÙT F(®É¨ªRâa}­ÌGE…õ-6T9XÛØ`±Ù`]“M)œßªœßzÌïS24c'µ*ϬY’Â8oõË>ùµO‡ëC¬}ÜÒ @ý Ỻ8¯Uõë|{]¨Ö0T›êYI+ÛЮõª–жJY…¦,ZN×¢¥ ù–®úŒ2¹,ÅÀ4_áÒo%œu“„®š÷p;$¬ãáÍ6{xÓj n18tÒÀ›ö¸-.êJظ–pÖ¥®CÖ¥ë§TÊÓUW‹y lÍÃõcÏeãáP “‰Òy+¼*vF¶ÃUÏÃíòð†ñ† þ*×øÍ Ë.éb!‹,ç³ÉµJ©ŽQ×ò©hx)—‰×–” |Þ^Ç+ù|. -f3±F[ \2k¶L< dÒ‘J#}—’{…Ö‰²0ؤ„©„Ùttl´ÿÂÙ}ôÖïßÙÿчΞþpd¨'V$*¶IÂ.i‘p>VñpµMvTÅ<~¶¥MÒ”~[jà*Ÿm”pýJ^+‘ñ. \8'­Â÷¦aJÆSq(Ÿ|6qyT–ɇ£C½ÉDh­Rà‰©¶æ2±šLä™ÔdRÝRq+Â`–Ùb+ú- ¥ŒÐ>¬•àþíÿñ¯þÕ_žpÿï¾ëïúÑ?ì¾óöûîÝýäã~xôÐÂÜdoÃmlvÌÃ\íÃFT¼©û/j{þ 2ú— ¿~ímn›)åÊò« ÏOêz˜¬,±3™¨EÔêÎ7 \X^šgË„âjã6#a³WÊY¶‡…¾Zk¿ò•ø×ÿú¿íß÷a¡.ÒÅ|cy±¢Ð’ÿþßžüÃ?¼ãŸa–3?91ôæ/þä_~øô“¿:wöÓÙÙ‰D<â÷Ïötyé·ÏüøîÚ¿ï×£#½åRÎSÁ°›%k—pHÅÌþ0v÷`áû‡ï¯m»õëH+„ýžšnVá½çΘ›J&¢ÿ\O÷Ù—_«p_­UAÛÀ’L~UÏd2‘ˆú…L$¨–4Ã`Êgjb[&³”IM&s=]Û2iÁ_rf û} ³1[‰…K«¤±ößø 9ö—¾ŸÏ¥j‘p!](l­}ÿðèç>÷øúO/¥IÆ7E8¸ôê¾çïùñÏžú$—I*ºÔwÿÏî~éÅgþ1¶=î,ë·Ûó6P¨ØxÝÖnŠötd2Ò§hÝ„{íÖ¯"¶ÖlÈÀ‘ðr£ Ÿþ$ŸM ÌLOÐk®ÎðP³ ÏÒ&ªŽ„¶2Ée“J†/I2©T -É3Ù.“a‰LêíN…ÁfKHÙ2›o¦¶_5Ç–ô$ü³{O|îsOÿÃ>Îç&ÏÖg($N'“ó7}ñ‹‡ß?¼ ]Ôl!Ÿ9{æØžÝÿtqàB&Ób~nâÇwßqâøûéTT«QbW}rºQ‚vÁP®P†‡i­9 9ËT,,laH\Wñ:¿ŠõllMÈV:“[îÌiT¼ëÒÓÂá^cúmy¼%áR1ߨƒ]Ùtœ8üûwþò/ÿ‚®Ìk¯ýJw×¹L:N,ÌM U˜æ•§X̉™dÒ1-ÄLÒé˜RÂÅBVž‰ºL&E™8ËÍ6:|1“ŠJ¤W‰Ù"ºVõð+¿›üâ?¸ñÆ®\¶æÞd:ÓlŽH?þØÂ¿ÿ÷Cÿßÿ;Sȱ¾,V–}O<öËW^z.•ˆ°9zä­Ç{hvú²V0,‘°Sn:6oP 7Dj6$–yXÏÀ6¨x}­º¶V)W*År©P,å Åt®˜ÊæM’Y‚HJJ./%+4È6gò52*Ùdk”²99)E²@^I©F¡A¥°5_£XnR’R!Je©T£Rªl£¬B™^µ¦jµÜ¤Ò¤\®•% ÉÖZë šKšÔÓÐÂZ LØêŠ¿V…_~.Œ <ÿëg¾õ­›ß}çÐßÿýß}õ†ëSɨÀÑ#o UX Sn«ËLRÉ1“j#êo- nÈD̤©Ž?8¬%e0lWS°Ôl#ÃTUïûÙOR‰°À÷ìþƒ?øƒ©‰Qšß2›".qHøÔÉÐøã×]7›Éd„æa¹o>õÿ³?KNMf%è¼MŒïÙýS“ÃñXM8´øà÷ ôwUk÷Œ°$ÜœÉíjNâ¼`]q^²°fà]’Ij]å$ó°è^©„·§ßövMâä¦Zõ=,•°øV´±ÔÉjó5ñnO)_B“RÅhvsýJýFžFG\‡n+ã»ÿ®Íwiëà«768i­pºÚ€'óDËM!èFùLNÔªðôÔH<’±ÿï袚™Þ†CKB®©^R}è*md2I™‰K—ú„qÉV&Õ¢4”¢RMŽ ™ ×R6½ñ¿¾÷*ÃÿùŸTeRkÖp [šÂl«÷Þ{ƒ^i~ÏÝwÒü/ü9Íá`Ól^êIXéáÙéôŸþiñÏÿ¼œLn5,çs™‡^»å–ÏÞ}§R,dÖè¼õöœýÙOï ®ú£‘e)~ß´l ñØ#?ïî:]ËS­EB&a†‡·ªyËÆUÉ̶Hx{û°R³Â¼–¢·Ú%šñ°š‡‹œVu/sá–{¥Qqc‰É6 Þ– &‹5nñ·iÁâÞ· ç0Þæ Ñò`¹ñÁHûƒüŽ *’P…CÁ@,º•ðÖ[þê¯þ÷¿þë¿’.ªp©”Û&áõrÃÁ@4º|ñb]Š?ýé¿Ð¼ÀÝwÿˆâƱ±‹ÂÛF&ŬTÂtÍL¶dr÷îQV_ûÚid¨I©©4MbcÇàíf[øéOLÅøêW¯§×qŸ¸œhšMÅÀJ —ŠÛº¢ré½{?{î¹Ï‚¡œ¸m2‘_Xø,Þ,3…«óp¥\8wöÓGþy$´(Å7?õgö§‹þÙò—_|êÜÙ“™L\õÞ E$,]˜SJX#*æ“°ä¯:eô+Ó¯"NÞÖD¬ ëxX9Ã)ámîm²µ|Ýb‹±!khÙ²™aͤr-‰×¨{ÒoIy+\µRnTá𒌿ø‹?¿öÚÿóÈá·¥ _~ñiªÂÙlrû q¥f&‹?ýIÍWôJó»wÿæñ‹ûĵL2‰mŠ•¢L&»ïªoøÀ}4¿•!S&vÝš!1[@ÊWo¸®ö¥ð_ÿ^¶¼Q˜t¬,q,CÂuRD¹NµÖºÎц©@0[,¤–Ó‹3ñ™Xv•–”j}Õ´îæHÓÇ:t©ï¡²äŸ ­ø¤øç'eKˆçŸ{lp §~ݶûšI˜£iB²Ž„Ë, +Û(¶+z«‰X[ÂrkIX³›&$KÔ¢bI‹ñÚZ¥ºV.UÊÚ„3´ÕmÂ’FãÂÂÌ6Š5¬¶ ë4‡óJJ5 Ê JjÔ›‹ÊrJåR“² ùT)oo®5—%Tªbãñ¶4UjIÁ¶¶_i›ðVšJ©¹¹ÿ ú‚hTáÀlh5 2>6ôGôoÏŸ=ZõKªpE¼¹~óÅÆZ¥™ÉŒ˜ò'÷ì¡Ëò†ºµøùÏT2©ÅKÙ:Tg³t=oe²âïï=_ÛðþŸÑ¼ÀOþe…Ó#—ú„·Z2±áæ8 ³Ýuç?S‘þëù{zýɿܭb¶RVPkIU  Ÿ[<·§ùB!5¾üöäÛŸÌœÉÔþžK¥ÒuWkH¸Rôûg|à§S—V—æØ&_xþÉé©ñª0Žâ¼Ù'ᜠoÿ·ŽÑ8¬±Pý;­¶bF$¬tµV F õ˜ª†QÈWï´påJ}|'ÃmÂÚm¿ö7ö:~‡¥Ü(4BhUÔ›U©ÇÏÍX¤*ƒc8ˆF\ +Ä*<=1´º¼Ðdž¸<: ̈|SB^_+mý–,ç©0‚¦É’ô?øþwéÊ$wmϤáz›pSÂ¥,•V"“ybh°G˜—ˆ™hÈÄâ*f»óGÿDÇòóû~Bó÷üø.š§×¦Ù&„ÂT*y D ×bZѽR>™ýð±ÞÇN̤¡xäs?ßsj?6]n†ÊÃS”sÉdìÕ}/~øÁÛKi6=Ý'~ÿÎÁÕեƈүª:MÇnÍHæ5ËY化™«Í·Õú|yÛ… d‰™óŠ…ê13Å[TEä¿ÌÏjó*q2]öâŒdÞx‹u­& Uª&ÙÐb­µhÃôq±õ¨ÙÚP6HICî¨Ó¼&›W©Ð±!™Œ7ªðâŒÈôÔðŸþéŸÌÎŒJ U8¸º´ýîã½Ýò€$=qìãò%b&ÕJ-®UíúkUšI`†Í–L¶"aÆj`™­ûÂÉzïˆ{D›ýxÏ–öŸ¯›íS¡0´S¹`ëâÝ&á‚dU3Ù»ã‡þÇïÿÇ]“fŸèyäk¾ölßSÓÛd:]Èëx˜¾ygg&úå½£#½ôõ¤ÅÌÔ0Eì3Ó¥bVzW5·„3ªíñfE«ÆÉLçämÈ÷nïP‘×ê>!.\“¡P±2HV4,«4\HÝ«µ„ÏÆ,!ë9Ùš™éÚ8öŒ'(µS¼†ÜkJ¿Û¯LI߆ªP…ÇFûþ)‘é©éÛ™é¡ —k÷»mÅ0 r#ò€d+b&%éýnåÆÌš4ß”3Ó¢L1°Âl=d°þ¾³2§ KD³‹Y¹] .HÖÖSžxû?>÷o<ô.v}î±ÏýɳI/ÖÿæKåsµû—3Ù4#$®Ö¾‰ Ο~öé‡G‡{|ó—•LN ¾ºï×ý}ÝÙlz[W:­XׯÊÅ’RŽz¿âª&ÊÛëtѸ…S]Ńu§¨qÛÊm*Õj­ëk­G~±˜Ë×i“Ú„·HiSë\GµMx;µFéŒzâÙÅlANN…Fq¾Aq‹bBƒ’ykp±Nm¾(P–#m–´ËVÕ©4z+(º7ÞVšÍ¼õ…Å:ÍU5ŠÕªµ†…m›k…¾2ý ×0¥«ðØHoa\ÉÔÄÅfÎÔÃ`EÝ‘f2¬žÉäV&iÕ›Ýêm ’LæÇ•l“‰jlY¿uRÛÍÖ­k¶F,s¬–„· ùüÂÉ]¿Øõŧ¾ø7/ÿ5ͼrñÅD*ÝÐo¦¡bvÓi!—Mww}ø¡ûŽ}ôÎÄåþù™‘…ÙQbr|àÌ©ž}zïà`_*WQSÛà «KØ6çìR±Ó6ær=lÛ¨÷–v¶Ö7øŠ±1~•£¢9ñŒþ[í,õ…Ûh ×b<ÆÖî ¡!‹¨É ÷né·’§>—«ð»“—ægÇæjLJªp¢Þ¼­²Hû˜I3™¨e2*d2¹-“x­5X¥òÖª6å¯ ™dŒË¤¦}‰umÓï–îhœf« ­ÁšÕ‘p!µŸ#÷ ‡³¹dGWV–‰X>Ÿ£ßmµn3åœî¨›æ¢âÖ©Ø6.2 rZËwU¯[ŋӬ]²ÕQ.Óº%³€%÷J!=ÖžV)+ªp©~[t±ª°îö·µúEÉ´2©Ý£])¨¹7+«Ô”LC&µ>{TTÇô+—p­]¢f¶ª–Ù¨ðl“{…¾Iu K=œÔjQ6€ âB½š¬­¯Õ~Óµ­¼•ÏÍ*n§m²'Û¨eƒƒ`˜s8gnŽT©åÖÕ¯9÷nï±™#7ú±PÞ\ßX¯ úeÞ"¯_½xL6ꙨëWŽ´²S„YoLd²^³ ­Ô¯LÅõð 6K½He:p-ënŸ—IXTq’±UZ§bk-Æ6ÙØ1!õÆÕä¤ 8ϕɇ¸9(ÞëšlŠ—ž{Öyޤ¾{êí`Z¿eµž½Œ¸w»c·$\Ì'Šùx!—¨‘'¢+ñèr<º#j7b×ßQ ˆH¸v/^8ä _˜X]Õ˜®.W瓱åÕ•¹Õebve‰˜Y&§Wéuf90½´(t¨›Zô L|„a¼Î„o~¼¶mmó™•ú¶ËÛ7©ÏL*6¬ÿ/¹py¡öïäØÂÜ(1?;Rgxn¦Æì414;543uifòâôä¥é©KS“§&''§ˆñÉñþÉËý—û&Æú'ÆúÆ/÷õ^&F{ƈ‘îQa¢ktèÂqé<1|éÜðÅsCÏ—ˆAâÌÅÓÄ`ÿ)b ÿä@ß©þ¾“ý½Ä‰¾âÓ:Ç{»?©s¬§ë“ž®c݈»Î`ºêÐ¥U»º„+.¹¾îã˯÷D º8k×']¥t­ö*Öö÷ N óàÀ©Úµ=x†.òKµ«}h°vÙÕªÀ¹¡Kç©Ö ¯ÕŽá.¢VYFjP é¹LŒöŒöŽÓëXïx½¢Õ*Ýx?1Y«†Ä Uá©zÅœ®ÕÖ:Ts©þNó3Cu†çfGæf¨š7ê{½îÕ%p™ ™ÔX™ Ö˜«ÄBM\‚ÁÈfDÍoþšå"Xt1YŠGÉ„D"ºœˆ-'c+Áºè„miÃHú¶¡@}óÚ¶uU. æ$…Æê:%©’Z)ŸB®&Ûºuk¨4GÔÜ^0sû=&9æÐ‘ƒ¥‹]9§ÑI?g„­=¬Èm]@5ÓiBd f®>¾Ç ¸òÇ<¹Ríaî˜094ÉïmÔî²bä¦ÅfÅM…Š{ ùAÒ¸gp«Î®oÁhƒ’õÃT“ ë—‚ø[@#þÒh=¯nÈò6š­Ý‘©?“H¥9¢˜O lo—° ý6Ö5eXë욎niIÞ­ímg°µuW³±×hSƒÚ5oc C«šÔXÍv"Z·%æRqÙÓ*n[ä|;Z’9!m·¨Õ¸l­7í:,^÷ÓoÉÃú-·I¿l ;Lj…-J†I›¤¨$#Âÿp“-Jú¨<DÿÉ yN¶ÿy]؆‘'åñ`Ës¥; õ¡oª¼pL²ÏWóÑðl¶_i'ÏE¾­RðÕ£Ò6Ót7(©ˆäŽj‰[+aר¸ÀR±—Úoc!— ?ÀÔ°™+VƒgÏhv»lø¶hìS(Û%^ÇÜ[²èÞŒ}îõž~Û'a7«Ø\`ìŒí²u'ªÆTcTÑ-“¶‘2˜Ô¬YåêY·âuνN†¾^Õ¯DÂëbg ¨ØZ`lØÆfÃãœÁÊÈád3Z6/g–«-©[_§2ªö`êÔ•m·n^åR±Q¼6¸ú‘vQk£„ݤbOØØr„¬ýÔiµl³¢ÝåSÁ¡\SÖ5ñzܽގ~™n#ÛKXØÂj ¨=…Dö$>&W&ë¯á¬ê“õôѹkI†–µ±| g1Ôý@Vkî †õ y_ÍGK0(±`ßMfî~R4LØFÜ$aUœlŠK\]eŒÚØ‚mprN/`¶ÅÏ®2¶©?3•kĺÆÄ[2#^=÷Ú«ßdÇè×­Öh1©b×ÛØ Ûád›äl«Çò¡Ù,[{¬kN¼^uo‰åÞ¤ÛtçV 머=±=-í²ýZÖl”®v.\ÿ…µV¹-okÛl }“î»%l{EKmlUÈÆlRËN™™÷ßCWzÕIÁZömEó4sÖµ.Þ6»×+-^–°í±6n¯í •[jfÝî…ÒZø8 +·eâu¯{“ž0›§$ìzó…Ç%÷¿g¬i9kg´ì=?{Ï´Ì(7kM¹¼#3”ÚôîD÷z\Âfl¼¼8wôýwÞxýâÀûðŠW¼Zy%޾ÿîÊÒ‚žºùd6MÄV%¬".%ªd¹]dRáB.¾#%ÌkãÕå…÷Þ;ÔÓ}fb|` T¡~+¸âã10é7\Ìå2W:qÊe3¡Õ©xKXÇÆgN¤oÏB> °ªPT­ÎžùT×À¹LlÑ?»¹¹±±¾^îÄi}}Ž-àŸÍ¦#;^Âê6>þD4²Ä÷߀ªVT¹t[zé§h"'Så;w¢£«=myiVµñÐ¥Þ\6Ž*€½PµêcÿÅ–ÏÆ&._ÚÜÜ,•J,a:ºñ±K¹LÔi ïÚ>‰ e3®B*a*¡øjs[ñlh:çÖ”¿õ;õJQ.'OþÖÓ˜>Ц„Y=èúÅÁîJ¥R(r“Ì09LÅb±\.tmnJ8Þ„K¦׺GÂ-–$ÜÁEmo‘Su˜„o;H ëÚ%aÕHX-‹ke 9Sòl¥+añb“^ub>Êk[–Œqå32ÑÝjÎbhe+ 'tóïZ¹F»NµKŠÊЗ¹=êž]ÝŸuœŸ¾ê^žxâ¢$y#Í?öèÞ'Ÿ|Ô„3éÈ f¤o¥¡²t+ÕyÕÐÚÆxÛ> ëS—žæBåŒl¡¹”œ[iÁ°V¥f,4š CTW™(›²J*-륵Ðú©vCQu%le<ŒÑ8Öè(%Y¶Úû«Å…¿xà>aa,ºº] E ™t˜Ô$H8Ë1Qþªo…]+ÓóÊ%ºkµ617ÑÑI$lÀ¨æ$, A KبÌMgeBÂ쫚±‰E[Õ O‘,šM÷Àí5ª¡=¶«¨œ§×ÆëÁ. ›¸¤Ë¥ìí·ß.Tóoì§%û÷½$¼½ãŽ;‘°\¼5š!Iɨ„eÛ™²ÊW-ÇzZœ‘°R× µò§däoBÂ&~#[”°òg&CŒĜGÁYÕš×ü¿T÷Ë8Õ®*jgH˜}ºD*åâM7ÝtõÕW}á ×P<|Í5Ÿ§ùo~óæj¥$“°Ìº2LHX+6-a©Ûµlß^ rq‡š#LÄ´†"a]Ø6-Ø ú¡m=¼áÉÖœL„—&‚vWÕ»6ôKªXÈ~ç¶[¯¿î+ßûîmÅBNùÇ»ÙS”p>ŸÏpLTÕ·ÒåªóÂŒòU+Õµ¦'::C­»¹Ñ s.4 mްR ¬üÐfGh<±«½uÙPC«ÑðÒz›°k‹j]ÂVÚÉmoækyΦÓÉÝwýð–ocÏÝwf2)Ù8B «Ô¾–IØè¼V‚öJ˜*-c¡t­ç«n«LÉȇ±•jyd0$ÌÙ¡ÕíÁzuËÆß;‚ÿ蔕Ôh°g±w„›‹j=¶ÞGWª›³2öR)çÂáàÁƒ"‘P¥œUí¢Æ®}édx°¿&á\.—æ˜d×­t¹j2ÙB£éµö¢œaOtt5 ÷wÑñ2ª {ås.ìÚx謶¾¨Þ½äÈÃëkezÕê'l¯„=:A†$ Ã3F‹ºKmjÙɱ¾wGo[†„[)aÕ‹Áý¾t±cGà„„‡.öêJ˜*àììL¹\JéM»4¦”ë'2ðÌÌ4)"aU&._J%#¨2Ø U«‰ËCìÚ—MGf¦F?þèýD"Q,²8‹Åx<þáGèHéx!a%±ÈÒR`¶O”KiTì ]È%–3ñè²nŒ„½ÝgßyûàèèHG¶EŒŒ ÓÑÑ1Ò‘µÓ‘0‘ˆ-¯.ÏGÃŽcQŸ‹h7ìˆë#nǵG*_á©}¹Lm ÝþÞóG¿óÚ«¿ë<è¸èèèéH!a !ÁK^Ÿ"0ω5ð1yùjÌgcôƒta~r|ìRçAÇEGGÇhâÌ4%kqAÑVuÝ‘ê6zà&Oo§_u¤)Š;SúmXŽ¸Ú²½Ý‚]‡ ðJëì”ê€u a€„ $¬K>M'C^ìOŦÂã£xWÂä±hd¥R.}æÁ‰Š /Ó!àÓxQ™TÈres“6^+{*6ÝiWl¯·ø÷EËŠ_Ø(áåÅ™D"F[U+BŽÇ#t ÒØ>¸âËfÓë- —KWdÑx‹ËÐÊb¨î`BÂÙtøòèIl­ZªVòem­Df ¡Ãcûjµ\.çó¹D  U*ei4Þú2´²ÊÌI˜‚™ÁþóTI×*…J9çQªÕb¥R¢b3!¶ÏçÓÉÄJË(äÓÒh¼-ehe1d;Ø áRÖ£T©ðM ‹±}2¾ZíNŒÆÛU†VCº#Ô;¬K¸ZγŸ„e×sÇÌmÎÞJ*añˆbáÅHÈ×2b‘¥¶—¡•Åîõ€mÞXÏg£V$¬õÜmJ¸RÉ+Í.Wg•ˆ_+ZËÅUªiTó$B!OdOÚ’f«ú(.­²Y,†êyPÝ5ÏŽPï­kA¹r1-¥æ=ÅÛ­À¸¹PúV–L¶¹¸J¶PusÆVJT%¼²4³´8)ƒòÑßʪ.YYžá)ƒjª{ç|k½â¼é¡ %a]R‰à@ß9ª§•r®THI¡:(["[.M ]¨LÀ^˳¹VaÊå „G<¢¥ÀdÀ7.…2ÑZ"[¥º\¹¹”ÅÀ¤¹20öÎóÖ\1xN{_Òñ_ot<æ%\Ê©úVœØrÖU«•Íß —T$ì›[˜‘B™È–è®’.glNÐîL—A¶ý– g1TóWkéŽPïpHÂ<ž”YÚ„97o„…µâ䨄Ù{Ñ’¡r+[$Ì>@H€J8[,$¥PT}«œqz¡²02Ê¥¬u ³Õd—ýLD†ŽÀÃÎ'¥Ô¼§öVuF¹?%Ïæ²ÂÈP•°aÜ7?*…2ÑZ"[%}+Ì+·•A»3WöÞußš+gÎŒ}Iw„z€u —í's Ì™Â<Û¢ª)u7×ÚÊ€„çFeÔ¬¢7¯ûVMûiÀÜÞÙ…á,†j>¦w„z€Îx÷ñå¥ZWa¹y¾ úɬDüZÑZ®ºJ5+)´;ž2¨f%[h¨l¦‹¡ÌSu!ÏŽPï°AÂÅŒWbN.ªHxÑ?á_¸Ü2þ‰¶—¡•Åîõ›$Ù¥1IÓ¸ O¶Ö~“m/C+‹!ÝêvH8]ÈÅ=J©vÓœò…)Æ <¨~ iß¼0e± †vg¥¶ïõ›$ìÕU%¼˜¦Ÿá-c)0Ýö2´²Ò¡Þ`]Â¥B:Ÿy”bAE±èR+‡/‹F—Ú^†VCº#Ô;ìpÊ»G],¤HCCÁ•yâü¹ãtDÉØJ8èk‰ø*•vÝÆ2´²ÒEÃ: rc.± áH“!aBxØÜL˜0a²cÊfÓ«+ F~è5¬»¹±¶3%,Àþ8Y_«ll¬û&ÓÉ 5 ëJ¬ô­K8É¿t<ëë•x,²˜2´$ ¶P*&)íˤ‚0´˜b!Yït–< $ 0$ ;A²±Ä…²™ÐÊ}€{$ 1 aÎe"¶KX5–EËÊô²µâBÕÍ)ykmÎIX´îFË%¬¥A©3•›ð+—½/¶„ ½Ö%_íï­I¸˜OÊVI„¥ µfdóŒµZ›ÈpîKšX¶!˜†¬H&C’'ù·²WÂÊôªbTÕ5¿„•›3$ÌN v „ùŠ„e 9÷ Ü'áp“–JX5æß„³™‚Z%á†u[/ai+#LexRus†c %Æ…h«„uHÆWšNðoÅO]ƒað ¯ðo $ 0$ 0@Â0@ C $Ì–°ß7yø½7_Ýÿ[âµW_Ä+^ñŠWw¾‡ß;ðOu’„Sï¼ýúùsŸŒ ÷€Ë!Y½ûÎëK©Ž‘ðÉ ]ì*—2à HY§N~Ø1>sê£ÕåY|¬¯@Ê"q±¥7t±û}ïvwrRÂk¹L¨‰y ôÕvàHYƒýçÆ››ýwüÇÂHŒ s—m•pú0V%ò}õ«×_}õUÿw_†ýÎKX‡d|¹¿÷L]ÂqÙªº„—ñ±¼#á庄U\—N®üèŸÿáúë¾òw{ïÓ+Íßuç?eR«Zz¤Ð´.á3”-¿T!a$¬äå—ž»åÛ߸õ–›*åì@/½%öýî/Jx×®]â«l¹lrúœ›Ø{þ eÇh¨$ŒÄFÏ›Ó'ÙÜà* GB ‚r?=~¬TLÑ’r1}ìØGÂÂx4`¯„‰l:$Ðz ·øœ·KÂVŽ¡YŠî á|6|æôÉ3gNQqa¹”=uêÄÙ³§¤-º¦%,Z×Q ïR›t+¬t¡4¬’m.Š]–†‘@™9ÛoÊïe4Ëx«º•j È(‰Ö÷ÏÞU·•Àè Ôý,´ŽT+x¸³9‚Bßr)-_XʱsÖ%[î$œ‹ËVõ÷¥µF5Â93´¬:Ï^ÈÈSw/ŒÝüÚs¹î)²ý:Õœkh1¤¬þsüdSÈÕ$L†¤lù·j»„Uãdo3â[i¨.”°s'Ðâ©æ9j a‹6סºJKÔVÌÀøCP·ƒÝª`TºMBÂ@Â.lް+æo—vº9Âè¿]00[Âì^ŒJØh$ìP›°‰FN6GX1ª¡Ÿ$°p‰„ãÑʼn˃G|é¥_?óÌ£Ï>ýèsÏ>.òëçžxå•>8úvoÏéhØßVþg Áh çDïÝ¿· IX·$œrÖê´`1æïaâ“Bïà6 _ºxáõWûôS>¼÷—ýòÁ‡’òK⑇"ï{å×dB¯4G ÃªGiÙ Ä'\"á\&òú«/¼ôâso½uÐç[XZZZ\\ôûý ³³³333SSSCCCû÷ï{ñ7ϼyàEJ £j{ô¶ò6Iø%¼ÿ•_?þøÃ‹‹ÕÕÕååeòp ðù|sssäáéééÉÉÉáááÇßûúk¿±UÂÁ&#a0*á}¿{nïÞ‡"‘CÂ?¼÷¡×^}Áš„Ö…„ð6 ÿê¡h4 WVVÈÃB‹ÄüüÚõ>V€w$¼4ÐV”˜(áX, …(& ÁðÂÂyX†ÉÆ o9°‹×%|š²å—*$ €„› ŽÇã ÓLSÂa¯H˜¿ã–‰?†Úø'¾õ][¹‹Ät1Zü_˜Å2ãŸ;Ðz '“Ép8 …–áÅÅEŸÏGZ$h~‡Hx§õ€„!aà §R©H$BÁ°Ð2LÁ°ßï'÷ Á0Í{EÂì±#”7h˜»±ÂܘZcYqQ÷¾Ý{"dƒ@²³2}¢Øéùo]±>Ð¥‰2CÂÀmÞŠ„9‡D³åcv2‹÷Þšñ’SœY™;Q†fÊÜcÊÙ8Ð¥ÑÓ€ÓÎd2Ñh4 -ÃËËË$^᮹¹9rrGJØz3©‰1yÊfïí5‘Lùj£9¿\´>»†3²øábxà g³ÙX,FÁ°Ð2LÁðââ¢Ða˜‚azÛÍFk¢-ͪcÜÆÕ©ælŠaœ.Ó£}j5ƒðŸvÚ+aŠwZ$l¢‹‚•qÚwH$lã¶kŒ5þ G%œËå¦%’0çP–öÕkHÂü#UšÞµÑ½mÙnW›0ÿ9D›0€„]+aöð•5GúGÞЕV$ÌÓTë¶ÞZ([S½#@{%ÌøcŽz®Ÿ0xKÂŒ.j0´QÂ!Û.áLjU@Â$aÆm˶HX´.$ €„•f àCA²sÖ%]ìí9E.dc²U´kZ‹àHY=J¢Ð á|>Ïp4$Lé¥Ì×%L†¤lù¥  a¥„ƒº{Q¶÷22ýxb[òçïð¨„7ŠÅbÞ’°íýíy:åZÙ£¹›>pg#áB¡Àp<÷„èoÏ0$ 0'a¡5XùÈû‰‰‰D"±Ã›#xh½„q{#áb±Èp2™„„!a€£þ’Ç‹  mããã©T v›„½õœ&€®„…Ö`q¼2°_¾|v§„µÆLxNÂ¥R‰!áL& »°9‘0$a¡5X/‚ ,´EŒ9#á•&^í'Ìx²›íù£Ÿ0-ár¹,´‹ãE…0xtt4›ÍÚ!á†u76ª-0tŒ„s¹œ“Ö! ôöœ¬K8*[Õ×K»àcxGÂþ¾Ó¢Ä²é  áJ¥"´‹ãE…¶ˆ‘‘‘|>ß”pPêÀ|.V—ðIÊ–_ª0–I¸Z­2$\,!apTÂÂ_râ =d`¡-bxx¸T*AÂàœ„×ÖÖ„Ö`q¼2° •ËeHœ“ðúú:C•JÅ~ 'W8#aö˜“ÖïqàÉ߯îjIžä—ª átrEÀv ³õe×x ®’0š#𺄯\¹"´‹ãE…¶ˆÁÁAR´u ‹ÖmJxY õ¶ÅZºÛšÎœ³„h “$üÙgŸ ­Áâxd`!  EÛ!á†ueNKü¬J¬)á|6*[EŽÿc´‹X]Â[M%Lé¥Ì5%LžÔu©¶„uˆEüM Gd«êö»PÂΨÆX à ûû{Om5¤VÅæ†„ÅæJ/u`.mJØÏ/ÕöJ¸Í6¶6’-$ €w%LšeHx}}ÝëæÒ´„ík1¬%#HïJxccƒñÇœØEÍCI˜b]F5ñf Hœ0ź ‹·-CÂà„·-‹ø@Âà„„«Õ*cq“É8)ab_o÷‰¦„·­êë9‹úÚ.aëû27^$ €%ì«K¸!±LjEp±XdH8N7%¼"u`.©Køy’_ª5 ¯WÓ‰¥ŽI¸•†„%¼¸¸è÷û…¿çfgg¥ãH¤R)$Ü´.$  Ë$\(–––(Z†)–Ž#‘L&”°±°¯·«.áLD¶ª¯Öâsƒ!a—„#¾þžS¢Ä2I. '‰†„“+Ræ2u w OòKµn½!a€ çóùåååÅÅE¡ex~~^:ŽD<÷„mL’'O{G’d _ °$¼²²BÁ°Ð2LÁ°t '$œJ, 8Ô#áX,f]¢u!a$,“p.—[]]]^^Z†}>Ÿt‰h4꜄u‰†}=u Óîd«z»OF!a€w eõõœÚŠBù$‰D Sz© “!É“üRmJx± $ €„sÁ`peeEø{Îï÷Kó ‡ÃvH¸a]H +% …(Z†)–Ž#á°„uˆ†zº>­K8,[ÕÛ}"YÀÇ ðŽ„úzNŠK'— g³Y†„iUSÂËR6%ü)y’_ª-0Oÿ4‹Ýzù[ï‡a-ئp7 -Ë‹‹Òq$¼%aά<žS†æva-Ø™ŽD"$[¡e˜‚aé8´Ð[‘°£æH0†µ`J˜ÂãN’°ÖjK$Œæ:RÂÑh4 -ÃËËËÒq$<*a¶Á¬[‹axH`T±XŒ‚a¡e˜‚aé8$a­‘ a€k%Lo='aÝ® 6>X”p&“aHxyyÙs]ÔL[ÔŠ!a€^ZZ²_ÂñÅtQÓvÒŠµtów¢Ÿ0†µ ³%œN§ÌѼ nZ·)á@Ü1ØñN&“Œ.j4c‡„Ö•K8¾ÈfKÂé°lUMÂaHà ‡úºOŠã”0ÅÃ[–8p›„õ\ª-a¢áùž®ãu ‡d«z»i×óøXÞ‘ð|_÷ Qbéä’ áx<θm™^›^’:0— ×%|œ²å—*$ €„eŽÅbŒ|è§$¼÷¡h4Ê0Ãï}Û%¼ÿ•_?þø#$^Æ î###?þðë¯ýÆF 'ã'$ÜÞ¡&­ß b®ü襀%üú«/¼ôâso½uÐç[P}¼Ñððð«û÷½øÛgÞ<𢠋Ö]wXÂnjÒÊgd®üÍJøÍ7~ûö!rìsO<þÈ#ÿê‘G¤ì%žzòÑ—_zþà—Þ:ô²Ö%žïnJX¶ªGOÂÎÝ4çÜMü_²[E aäo%¬uÏ2$ €ë%<[—pCb©Ä¢A /JØ”ð'äI~©¶@Âl‰‰³(I÷Dºã' a÷Hغ$Ïh—„­?Ѱs$¼¾^MÄ|-–°]̵+æ_ €„¥ˆÖuZÂe燚dû°CeBÂ@ÂF%¬K84ÛU—p6”­ªÝ¬§&ap'¤¬žîO·¢Pƒ¦ôRfê&C’'ù¥  aH aH C°ó$¼Ð@Â-pú G8 aÝNbÖ{ëŽ6iKþüåGç4 ašÖUHX‡ph¦ë±º„We«º»>‰„fŒÞ.a½“°îl; -?n”À;žéé>.J,™”p@êÀL:X—ð1ò¤®K5%¬G88Óu¾)áí«j]”ƒÆ$l} ž[‰“°2 Ý€—$œéé:.J,7(áx@êÀLª.áóÇÈ“üRm¯„­ÿxç¥ÁÑHÍ@Ân–°ÓmÂ-<$ $ŒHØJÓ$ €„!a$Ü‘mÂ06Ô&¬ú0 ûñ¶=HHØ=H˜)áJ":ß@Â-pú0v“„u§»Î\—ðŠlU÷…c‘à4>V€w$<ÝÓõ‰(±dÜoPÂ~©3©Õº„?&OòKUp<:/  áHX´.$ €„Ý#a]D gR+²U$á0$ ð¤¬î®OD‰™°ÔR óK@Â0@Â0n„#ó a$Ü 7­»¾  a×HXðêt×¹º„“+²UÝçÑZ|¬ÏHxuºûÂ'¢Ä’1ƒŽù¥Ì$ë>÷1eË/Õ¦„çš@ÂH¸®)wÉ?  á¶H˜ |ä½7rÙôv ë^jJxY¶ªû<íz +À;žê¾pL”X2æ3(aŸÔš6%<ÅiÔåÀeE$  áIX­9@­0š#0š#Í0îÔæåÓŠM¬•=ìX¹‰Å…e‡&ól¾kûdKžVN‘ÅòÝ\«0ü»f¸Œ<@s„®„OŠ×]Ë¿‰Å…bM7·#¶‘lÌ“óY,¡Í_ º), :O„›%¬ë»$,Ì&OÙø é„—,–‡½9;CÝ”ºF…„Á“ðlwIXõÇ©‘°! sÆu­‘0ëŠÑ°Ù´yê¶0•6^“púëke7K˜aQs ÅZ›j/µb-ö¾8#žµÖËã´„ e ƒÎ–p,2+×#¼:Ùu„·­ªKxÒÞ6avû­Åæ_Ó‘°Ò³÷¹_ÂF³…„3žì¾ð±(±dlÁ „¤lJø#ÊV×¥¢u½(aë-›#ø o¯ŽŒ¶ÛÒb—-­´„ÀÀ`çHX—Ðêä…º„ÓÉeÙª®ó‡l•°sÿÁµQ¶œݵ¶G¼¶KØPÉ!aࡺ„E‰% J˜ÒK˜®K˜ IÙòKµ!áðl»%l¢¬Ó]‚mï'lÈ<ü=Ÿ-ž"‹åiA$Ìß%(á¦u[ a€„y%¬Gh¥)áIJlU×¹i->V€g$¼2Ù}þcQb‰¨A G¤Ü’ðÊ$¿T!a$ $  aHvž„gš8"a7b˜èÅÄèNæDJ{;È™^ëPß<Ó»f÷…³x~è 7¬Û ³ëç.æîS°rwC‹oiKyÊ|Tš¸íÅÆ1—ØaÖ!´2A…©KxI¶ª«¶ë Uu°5ËSÝìh—Q÷P‡]C[Ù5csCÃNš0É!^Ðr OÔ%ÜX":oPÂóR¦“Ëu HÙòKÕi [lŽà¹éµ¬1Â$ÿ`‰NŒ™é s6G˜¸ƒÛŠ„Ñ a·IØÐC,=f&ÿBC­£†$Ì?2§éáz´$ÌÙfnôÇû¬ {BÂFBΆhÕìœ íj¯æü²K¹eæpÇœ? øÿ­C›0€„].aë‘•<¦Áâ¹&Ff3$a‹%·ø Å#aþ}â9 »_¶?ý³ÅléïáÜ;Ñ&l¢Ù°«$¬Vi ÊÊãémï‚kû¨•KnåAöû [?ç´FÂéä’! Sz¯HÜ/ál:øÆë/pJøÐ›/SzHì’p>}ý5^ ¿yàEJ €]®”sï½»OWÂgO¿O~÷íW(=$ vIxm­<=yñ£ÞdK˜~wÿåÑ~J €]ΤVȇÁ•¹þÞãçNpú¤Š„{.ºtfl´gm­Bé!a°KµÿæR«›ëÕJ9_.g•ÐrZKi(¥Ì®•°n§#CCY–[ø å²åG0;4”¥éŽ^öŽCýýh£„­àN söï幃ØÜí Ç¢1½¹íCYÚr³†½‡£[r \ aW5GhU^‡$lqTFÝa6íZÍÄýt&¼­{6ìú.Ð=E†îævTÂüËMÏúиî‘0çx›ü·k j%OöW€Ñ[ª€„í’°]mÂüÃN:*ažQí kM¸íC€r¶3³[BøoâÀ îíþä¶ÿyó™SGv „Í5x¶^Âeã£2ZüyÎ9ЦígÃú÷Ú„·$<>ÚõÇü¿ µlòrw%ln5'a‹„-ŽÊhî™zæJå´„ù¿¤ aà9 /úF®¿þÚ«¯¾JàoÿóõKþQ/JØÄ˜ínnvh<ɲÃãmZ<V!aàE ‡W§îøÇï]ÝWþîoo8pàuz¥ùýó"ÁiÏuQãÖg›aû ;7ž$gxÏÿ0˜¸t€„û›'oùö7n½åæÁÁ|.6Ð×Ko‰—~û´w{G€'$¼ä”ûéñc™úq¹LèØ±„…+‹—!apNÂñÈÜ™Ó'Μ9•ËF¤]ž:U[‹ÌBÂàhs…¾„baX6;$ ¸Y@Â0@Â<Ý®ŒvR²>n¤£V.[{±õseKÇ3λ‰[óìitZpk†²ä¼÷Êô °¶ßò`×vQ¶c¸NþbXù,ø‹žÃnñ(jöJØâz&ò4q'µ]cGð·iî9K^¶{äaH´]¿úå½D4´uÍ?ø‹{ö>ô³%ae•d×\­ŸÀ¦¥ú`eìGÎÁvŒ¶Ï˜–0ÿ𘜃?[¼iÍÀ ^˜½(Ô‹Ÿß·G\øÓ{îú燼8€•1|xÆ44$#£Uõ-çŽ8o|¶(asƒIÚÕ¶£›gÙÈ=à<-*´åfÛo¿]¸2_~ñ)Zò›çÞÞqÇÞ½Yî_ÍFÇ,[~„é4M·Ÿ8$a£g›ýÕf1.s@ @nÖÈÆoºé¦«¯¾ê _øüÏïÿñ5×|žæ¿ùÍ›ó¹øŽz²†îp7¦[e9›[íÝûˆL i®IÜœ„-~v5°Ðª?æf³™øwn»õúë¾"ð½ïÞ–Í$hyç=èS÷DÙûÉÖt™°¢A£çÊÞñ6x¦§‰nðh{ïˆxd.‘ˆî¾ë‡·|û{î¾3™ŒÑ’ë'¬_ñ'ét‡U'vd´Ÿ0O,jïx›Nô.3Ÿµ~ÂÀµ]ÔÑ…PpõàÁ¡Ðj":ïò.j—N-Æð±¼)ëÒÀi¶ô’1_!OÄÜßOxÑ723ÕÇvÜÉŠ”Å~b‘·nÖ –£ó3ƒß0¸’ÕÊâ˜Vwƒ„`Ç $ 0$ 0@Â0@ C ï4¦&OŸ;{¡¯€Ιsg&'ùëN44MÎYô¸*ŒôY°'˜žºx¡¯¯«·çÒÐEv8T¨:P¥à´~4“N\¹²éÒé„o~T˱°;9ßÝÕ30Ì%“v8T¨:œë¾ ¯šÕÉéÉ‹ë$)×LT˜õõõéÉA*$ìºú¦g§ÒéF¬€*U‡îþ~ÝŠ3;5‹…×Öªy—MëkkÑH¨Vv,T¨"t÷÷ûFu+ŽaøÌ©£ìJ»fºtðÀ+T0*†²ô¾…‘Á¡~ºöØá\ øGyjM$857=xîÌoÚ÷òKϺ* ‰ FŃ„M44½è™ë¾ØÊ%Pa¨HZ™ƒ„©âHÐ-0žò y0$ 0@Â0@ C°$ MS²EßJÃît€•Î¥¸ÁΔ0%ðÏfÒ‰+W6Ù¤Ó ßü¨¡ÒÀy•â";S¡ÕÉéÉ‹ëkÕ²ÞDiÖ××§'i+||À6ã";X³S±Xxm­šç›Ö××¢‘Pm+|‚À&p‚+áðêÔ`ßÉÍÍÍR©ÄyýSJ Xh+åÈœ1ŽghÚŽ¡=r>]´'.B{ÀÎÁÊZ[’=@\ê®’°øD’B¡cN£££»wï/‹Z ñ´„A[ƒ9/Bq2zZü”[ a+%„w‚„Àu×]÷¥/}éþûïç¿þµ”Ìù8æ˜â)ÏZσÖJ¦úüe­§<›(dÌÈœK$Ìÿ9ª>Oœ½V÷‚ÔºZt/?ÆZΣÓJ¿Ã¯dWIXëá ±Xìë_ÿú—¿üeòðää$¥ä¹þe®ê¼î%ÁHÀnOP^Òü›*$¢ {%ÌùÀ΋ÐÐEÂs=˜¸PM\ÆìË•‘3gŒ– n¯„ÓéôîÝ»¯½öÚn¸¡»»›ÿú7qµó\­‘°‰BWIX«MX×6Fi(Ó—±nkè*U àÑá ÏÎÎ>õÔS333âÕþüóÏ­>}øá‡†‚{%Ìø“Eù{ÊP½3™«fŽæ7GÂZÍZŸ£E ëæÃs·@ÂhXs¡„óù|&“yá…n¼ñÆ[o½uzzšÞ=zôÆúôÚk¯eš¥lc$l.ä°7ÆŸIX¸y&΋ÐhÔj— -6G´&¶ëo>HØ^ ÏÏÏß~ûí7ß|3½?~ü[ßúÍ?óÌ3étÚ´„ùÍ<Ý {NÂümÂÕm¹µ"a´ w¶„ïÙ³çûßÿþ~ðz}øá‡‰„¹ë_«wÏ_ºü¿•ø{Ghõyà÷?~ÄyQ†ú°/`›¨þ1m1F”p.—K7§………{î¹g÷îÝ÷Þ{o0LoŸ(%ãúÇOu`ZÂÒ‹=™¸ð„i{á…ÆÇÇM_ÿ6Þ¯ aHt°„{.›™™*•Š)¾©\.NO×¶b”y—Ú„h]ŸN\„€³nBÂm;bdèÜû‡%ñB!¯Û5¨XÌÇã±Ãï½I[©Þ¶€Qp‚,a¿0|æÔуö éþ ºtðÀ+”ž¶ÂÇì!ØÉާæ¦ÏùàíCû^~éY6”†RRzÚ ° \„`'K8V¬Ì¢odb¬ûbÿ)6”†Râá2Àvp‚,a±D‚:àÊN«!رHH a%Üsáã¹¹ËÅBçDJÅÔìì(ÒQ ×;ß=zø@:,ä“éäŠKÓ©à‘ï“! ÝøcTÂÍÎðï:ð»ñѾl&R'ŠW¼â¯;ùul¸çЛ/‘ÞøcBÂõÎðçÎ}ûÐï^~éiäC²"¹Ñè?&$,é ßu±ÿ$ò¡¹ÌI€-@ $ H€Ë% M‡V&}#°“!šÕ´„i§þù‘L:~åÊ&ìdÒé„o~ÄܳbÍI8´:9=yqccc­ZÌçâ°“Y«–Ö××§'È­‘ðìT,¦ý¦S«È‡ÑH°æFç%^ì;±¹¹AþÇ™"Ÿml¬‘ ¡fNÂâ¸îùl gˆ\.nbDwH a€„!a`…]Í©Å;µ¾m‹Ë aH8*ÃV:Í  ƒŽ1°ª“e²0¯ ›)Ù tcrå¥iì*-€„!aà ³#d™ ¦d·$˜Ø£‰2´+ò0$ tMkÈœFkZÂŒ…6 @Â0pUsÄ®í“nÀÉH)KÓ^ £9@ÂÀ+æo£àÿ¿Ï Fs€„û{GØØ¡ÛPì\›° 3H.é'ÌîÒÀÓ3A–€'~æéá`¨wš#€[%M§Vp9uUâ<gÉåb00€„†„HH aH a€„!a€„†„HH aH¼(áTr9 WçØPJ‰ñ-Œ9òÖë¯ÿî×_9ðÆ>¼ÚòúƯ9ü–ß7î “Z—g²™Ô•Æ´©õJi(%¥GÅÀþÉ÷~°§ûÌÄø°:«‡ß;L¸\ÂñØâüÜåuÊZo¢4”ŽÒÓV¨>XçÔ©cc£ƒñØJ!ŸöBg•ÎíéÓÇ\.a ×ãñ(Ù5Ï7QÊX,Âòüœ?w"Y*—2À èÜÒv³„ñ¥á¡îÍÍÍR©Ä)aJIa3mEÛ*KõÁ4ì§Õp>ËÆ–L,îÅÄî$Ï—´³œ cºÔ›ËÆaK‡ s;<Ôçf Ç¢ÞžS•J¥P(ä˜ÓèèèîÝ»ÇÇÇ‹Åb¹\¦­T[†MH¦ƒ%¬L {‚]Û'sÛB°×]wÝ—¾ô¥ûï¿ß„„eq ìÕš—^ÒÊd²ð’ñ–!O>æ’©FÂæê8h„MÿðA$ ›–pVcŠÅb_ÿú׿üå/“‡''')¥ +uÄø©ÎÞP7+ u¿Ì%ãܸSÂʯT­¯cÕȶ—'žx„(ÓâšìѽO>ùh'I8NïÞ½ûÚk¯½á†º»»i‰E ë^ØZ¹ñçlt-ç7$ ›—7$l…HdYø8öþêAqá/¸OX‹®zT³³³O=õÔÌÌŒ(áçŸþkõéÃ?–8!a­_åŒV Æ^ª­yŒ%ºù8$aÓ­Ž ]mºóp ÉÞ~ûíÂtàý´dÿ¾—„·wÜq‡k#á\6’J.K‰Fü=Ý5 çóùL&ó /Üxã·Þzëôô4½=zôèõéµ×^Ë4'JI¦­h[YnÆBéZåBå¶ìôº™ð†sÎÂðOuGÀ%h}:²[:½E aÓTÊÅ›nºéꫯú®¡xøšk>OóßüæÍÕJI&aÕ3ŸËF](áùùyúr¹ùæ›éõøñãßúÖ·hþ™gžI§Óí•°Öuζç~MÈÜ^ CÈ•0Ï¥.Ì0>bHØ ÅBö;·Ýzýu_øÞwo+rÊ?æ<$aÁÃ{öìùþ÷¿ÿƒü€^~øáD"‘‘LºVF&d(ËP5a(WkYþÊ…Ê|´êg2öÁjm¼%aÝo[HعF‰t:¹û®Þòíoì¹ûÎL&EK<*á\.—nN ÷ÜsÏîÝ»ï½÷Þ`0˜Þ>QJ†„Ø!Öú×r¯Vž°åF‰\8qÛ€„¤‹ÅÅ™L&u¥1mâÕú+ÏÅÅi÷ ˆ½0ùÈ‘·^ýwo¼þÊ7öáÕ–×7ÞxåÈá·| ã00M,˜›½¼±±±NŸ:&û¦õú47;Fg¸íŸ²ß7ñÞïötŸ™öBgõð{‡þ H˜Ã·p9’ó˜ìžè¬Æb:Ãmÿ”Oúxlt0[)ä“À^è¬Ò¹=}ú$ L-]êÚÜÜ,•Jp¦íUú‰Ag˜Îs{?èóçND#KyÒ!èÜž?÷)$ ̵ ÿ+‹ ™ìÚµK:/}«LÉN°£&:«.yT"ž1çô“5Ü÷Œ¹%%’¸l[¨šØÍÜJyÜS°hÄ×Ó}’$\(rÚX6ÃN¦›r‡LM Ÿ¤óÌ®<—„˜ŒH¸%V9óäC—HXzÁhÍï »¥„•"U> ¶E†‹ßàð—°ò²‘]Qª²l¡˜’Wk%ÐÍg׌Ýñ”JYtsvÚÛR OY¥=ŠO\ç•3ª“ê¶:=ZŸ2™Œ¸„æ÷îÝûØc‰K謚°Öµ' ›•Wãj„MóÄÒÇBÑücî}òÉG=-a-m2BeÕ” ³Ê¥³ É_*þ…ŒºYÂBaêl¯¬¬‡ùàƒŠ ï¿ÿ~aa04!aÝ‹=þT asD"çbïýÕƒâÂ_Ñ3ÍIœWΨNªÛvêT,oºé¦«¯¾ê _¸†âák®ù<Íó›7—J%1 U¶„MÄ æ®HØ4•òÖMñ°øAW+¥Nj¶¢&£‘0gàmÈ®ð”0M¹\ö;·Ýzýu_øÞwo£Yš€-aþ6aDÂí¥XÐÅB®#{Gp6™ÚÞZk—H͵ snÒ2 þ'éµÊ6ìì)›Í¦RÉÝwýð–ocÏÝw¦Ó)áï9H¸ó%Òé­:“IÑ7Jxu²·ûx¹œÏ¦C‰x@‰X=e µæ…·âB冲҅ʷʽË2d”S·ºÇ¨u,ü‡ïáð|W×§$a áÒ˜ŒOdÝP(xðàp8DÖ•­¥³J¦3Lç™}±i]HŒkFõú×ú !a˹p¸öAG"¡J9«ÚEMõÌgÒ¡R)Gn$C¶@Â}ŸÒîr©`2¶@ÕÊÑü#áùnãÞ¥6íd“iéU¹J0a:Ïí½ a[$ gÉ­‘ðÅþ“¥R&›\IÆýÀ4R³9½¯Hx®‘°c“DÂsí½¨.]섽Yƒ¾æTÏ|:µR,¦É-pxujhðt¡Î¦V1?ðáÐ\oÏÉ™™©R©˜Âd÷T.—¦§'é Óyvè”ýÑJ68pvTÂ.¨žùtr%ŸO‘É-ðð¥3ù\2“XF4ëb‘ùË£=Gß'‘ˆ‹…,&û&:Ÿñxìý#oѦóÜÞzd¨+™Ö‘L„jgX5N.çs rck$<:|žvG;G€WøÇΞùèà›ûGF†Ð€`ã4<|‰Î*[:Ãmÿ”—ãs3CÙt˜~ñÀ™6Bç3“ѹ]^œP=óéÚ@jqrck$<>J?ybéÄR"æ^‚´…¹á 玽óök¯¼ük`t>é¬Ò¹¥3ì†zuyÒ7?¼¸ ì…ÎjpeJë´§KdErc $ NOŒuç²Ñš„£ ÀCÄ#óËñÉñ¾Kƒg]Ðù¤³JçØN&_Ìf"äF2d "áÉñÞl&œŠâÑyà9b‘¹hØO\T •É­iŽ˜™êˤkNDç$k÷kÉ-iŽ˜š›¤Ý%c>|ý‘ˆùÒ© ¹‘ Ù ûæ.¦ëwjÄ#ójN®[#aÿüP:¹œ¬ýÑ3 Yë ±Lnl„ éÄbíßöè€ús‹äÆH8š^ŒÕîÔ‹ÎÚ:•z‹„ŸÜH†l„W/×þ•‹ÌÇ"³„ rck$Z¯·EP$< ™#+’[ a¡«0í±¾kü €™z<â¡ y×Tžç  a:ÿÂð™SGØ72<䉟íÃC—x…ÊL%ï˜Cã?(H€#œš›> stream xÚ­kã¶ñûþ E9ë$RÏë§k.i/@šæn‘¢¸‰ls×ÂÉ’cÉÙÝþú΋Ôc¹›CqûaM‡Ãáp8/*ZÝ®¢Õ߯þv}õò­WeXf*[]߬rµÊ“"LJ½ºÞ¯>?®“40—þ¿ëÊ‹àM·»M;¬7iP u×¾`ø;Ó˜ª7ÜÑaªõÏ×ß^}}}õÛU KE«˜I'aå«ÝñêÃÏÑjðoWQ¨ËbuGXÇU’ðÛ¬Þ_ýp ›î7ŒË(T™ÆYY¼:ÃÀ#à»qcqê$SvgQ&IÎ;SaL<þÿ‹¬>lÒ( Þ³4Ú}uÞ³†5Èl­¢à~`@}D”Sw†nÃÓuÏhrÑj£Š°Lsy}@¡¦I°77kË\šƒYë”W€^}dêi €îdÎÕ`zéµüÛ^c|~ŠtÒ˜>\o4œø¸l5TܪΪút`/D:þÝÊ`- íºærleõÞœ*dFæl×: ¸}w¨ÉSµ3!J·ǰý”·ÿuµ[Çip@äHˆÚ6o÷ ³»vß3”Ù‰ˆíÞ Üù)J#ÆŽ‚zL#ÓíÀ¶:÷€£´^,|îPTwBB(T \>×øÀ2tÌŒÌÃRëéùf1ÇÓµ’Éìt‘#€ŒMµg1¿·ÄáïøÏœMK¢D'jœÍ?N2”ŒŠö¦ß1ÿõièÎ"d¨–úŽöj'#§Bs+„„vbVAèu7<8Ûêh„ꨞ“wœQ@úª™(¼½a`Ûñï‚ãð{[³HÈN¹µˆ&ú –k^–Õ¡2jÙ”åx3vf»_p+ —´]ØßËo²drÍ“¨‹L ï؉kf @SâÔ!½ðÐICê õ•t¤B’0ÃŽr“€½O“¹ô\Î죪ƒ9ž†Å%«.Cw/°«§¨îf0| Ǻ5‹»0<œ¤EÚ±¼&Þ;òïJSÇ)é}ÝÞr§&`Fó^à­§l#gÏmÐ`V(ìŒV‡IT‚$Gí–-ÍKUÁwÑò ξãß¶d¥Ýp%BCuŠ8ê˜ÜÎWM} W¯ŸÒÁ7ë8 .bÔV¤)šÂëüXÊ$Œb{Ð?Å:ñhCfpÚ‚Ó?·]Ãù’Ã[YáÔ€€ö «†ñi)´z{†Ð9*6 M@+¤&9Vç3”]ׂˆ/?È^§úwuÓð±tÓ•ÛÑoÙõHË2̲…Ó.ÁÑ(Áüsÿ•Á(¡ç6ZÊF“—+íFKQØÒ*, ì.ÖµB™A3•‚™j…Þ~_ãF¹·ëŽ>õL ²¤·MÕ~IÓlSëÛŽ]pÑ›]ZpÕvk­¥Ñí0æøèÓ¬c·7Ö»&5²¡ó€mv5†:ƒÜòéY¬t¨"gwþìQ³$,‹ø9Ë•€ýSᯠ:ÔqñÉþä¡…iQZp žDpÜ>þâ¡Q„ª,§¶SÛsÓ™ÕdÃr¼@§áÖh‹JÚ£óqDtE[ÃB'q2»º¿SDÐ\Œ‡o¥ò0‹œtZ¸º^»¯J‡Ã×[g|½‘ÝÞopSÙ€ÊdùÏT‡xºÛ^I°×òã<Ú©þ8ÖAÏ­c¹@:*!Få›AÀŽa|áÂq¶ÈÒØSñ^àòkÚjÛ˜=:•Ì@4:"@÷ ÁrϰiãCĘ€çׂ}`@aÞìñ^b²()èØÞ§§qªìlnÛyÎ [Nñ¦2Õª_ì\ R•狃bçÕ)ˆKp 0ƒsð÷c@ ½1$ƒadUG!U‘æǪ̀ôÜcs‹¢ sƒ³ýL¸Mñ ’„L´ø§…DCÙ1¤¿@¢’Ýsb-œ1µwË£ਠ·Æmƒ÷ð6ô9Ò8,bxý?qbêyóTáõG$Ây6úÉY(繤”炲0WjQXdÊe»Ÿ+ß}SqÂ+¹.t½d¹íçI!gÏ2OªàôO.Í¥`4CBgc„™ÚNɆȞ å4•˜@r‚ r›ñ*¡Î±Â6@[AïÎYí¸ö¹»´Úž+Q> ˜˜cT7§6¦¦ ªeò8òåÕ'2$°BiHÑÇìTKÂã·Ž Äî'±[‡{+m·m%îBŠ ã2Ì ?âDÏRÏ­fÕ3Îu½$ñ*Èæ?•ÏBûÌèõ¤Ü”$l—&i`‰`.Qm¦¹prN‰ÔÓ[2ƒ†ý É,Ç&eõD vÉì Ÿqk½°‚2ôHbòŽç»+'OÃO¶ÎÀa©&¥µKãÒ%¶ØÁ¸ ©<@…ÙøÒñ¥÷Õ.Wéó¡}Yº eóÇ/‡ ÊãþËÃt$õ¥V Ä={Dýne«“KC"èø··æÄAvt"¡xQÇù*WÐ@zÜe~êúzÅx`úbl+yØ è(.ò0Ó‹'¢ÖÜ®é1ßRi¹øª$BÔ°€GÅ¢ç&·8µ¯èЀ ‡juwéB=v^jR惎« m4ÄŒV뙯m×H%ËÉTpLm¤Z>ÿ…‘T<_j‰×r¾Î~#¶ÜD4~?ÎÍEíÖ¡‰©˜P¨ìÇk`1¦üï¥TŒÝ'/ÄõÓw ‚óf¨¥KÃ%I5¹ø0ä$SÊÃÀ&Ö„Nm,ƒ“º§{š(íëÇ„ÈS%Q5)‰Âò\D`3_z^E¼†‹*qü°S²Üàç\µœAÊ&ÚéeôøàQ’„Eä×Õ«íÏž;Xñ˜Þ’.£1äDQŒòuÌY¼-‰3zÂâ(FÚ^ùÖÓ0‰ÔÓëcž{ÅO¾SJÀ=¾7"Ÿ­iœïH‡ìƒ*’0]$O‹¿üPËÖª.½™\Ëï|Ób OþÌ×ûr±W,aXLß1­t 4b—D~u¨8œ’jj^@¼¶Þdk¼s‚ÜÛ÷ÊÇÿZ1³ endstream endobj 720 0 obj << /Length 3108 /Filter /FlateDecode >> stream xÚÅZëoã6ÿž¿ÂÀ}‘±±Ê§ûm¯/´À¸Ý`»tq§ØrlT–\Kn’þõ7ÃQË»‰Ók &©áp83Τ˜ÝÏÄìû«¿ß\}õÖ³4L#ÍnÖ3%¡f›$4©žÝ¬f·Áǹ±A~¬Ÿ/TœßTËã./›ùÂY³­ÊkjŸyVçTÑaªù§›¯¾½¹úõJÂxb&g±Ö&ŒE<[î®n?‰Ù Úœ‰P§ÉìÁQíf&Jà·˜}¸úç•È*z²"/)B¡có›¬áA,•DA9_È Ûå5U—YÉ… ?”M¶å†ß¶(Ø 9fE1‡ÂµC-¨˹´Á&;dË&?ÌpÊiäØá·¹õ0»c¹]V«|¢[Îƨà‡5}l69‹ b2}åc™Ëª¤æ¬Øo²E JGQE°]¢bA+ )ÃÔZšþp0쩃Ÿ…SíÕ±©·$%TÖôû'³ø÷5Õ²Åï\(WX0X¤ÀOº©K¿$žˆV´Ÿ•êMu,VT¾ã6žiÎÍÛfC1Á]¶œÃ$™G M³å õâ© ?.¦tÐ)ÚÊàc˜‚‘À>s)ÀöEN«¼^²6÷M…¥Š52ýê»(î¹™Ô:L:¤â¿Lb{$6Tºý^äå}³µÊD…P ±CíM ÃR³Ñsù_¿YLðP"L•z.zŸ£æ½`ûúŒh6­6_b+;Ù®Y¸ÁBuÂuD¨ë4Xã2rŠk4h£Š¬ÀnTÓ't *ÕûléÖ3РS¢ýZ«0ŠÔÐ î­Á?âdÁº%ý‚¿ÒšÎIÁ]ZOŠÃTsÌûV!8[“gè¢ Ü*_ÐÝr»~Ú–÷X—ìýðáÔ£4©EK%ƒvûŠwÛfEuJÑæ³Ì$1øzÇTû4²:396ý,´)¸Ë±fÉA‡L7jbY‘*²&§°¯l¸Ø¿È$­ä{ˆ0MN¬lœQ$q¡×[êOcß5uúY(1š$‘E…žñ€±ØÍ¾ÜµÊ4[{ºžÁ¸4HðcÑliÝŸÒÕÔJšEÞ9‰ÆšÐEëEý :‰w«çkªtþ •Qzë6Fáv»ÃýŒ ᅦ]ÿ … “-ƒí4JC!å̤qh´Å-ÛM +NfRÙЪtvÈgkØIOyµ{ëÉo¨,lÉVà¿È‰8lyÏûq<Ú#ÐT$x?þE˜M~È©~à~«’ê|‰ùkƒÆ†ø’ô˜¶Úˆ§3/ äðxMCƒ’µÿœÀƒz¿ŒôÌN‹A§Ù­÷éãºø‚Þ‹‘ÔR·–Ð’: Z°ÓÈgåË9Ð4¡í’®6•@]>¨¼ÀN®ëªºïå~ÅdõÅ6—ªþb 9¾Œ‚ËHß[vOô[æ •îŠjùËsŠ(.×fVy›½Ýg»]ÆKö¾½rõ]ìTúÕþ|±kÙK;F¯–9¾tèäÒŽéÿÇ«óf†á€÷ÔÞ=Ά™A&Rõ3ƒs`[ø<wÇÃÊ$y$õE xEú³¨?6a[üOx êórŒyœf64v‰Ð¢²}Gﻳ²âÇD0˜1‚ å8z¿xô$!‚o( ÍHÎãÏD›7âq äŽõä€#Ä%@J=[(ã´I@8‹vÜÃ#½Grħ 0'ð æ:àûѲ*Ž»’ÑVvà¬xÈk†  6‘3ck›Û @~EA¥;&>ëñÉx4 ¡š>úŒ,,…ÞÔNçn%=Àgh9â"£0‰=HŸRŒ ò£ u 0,‘´`Lõ‹ îçÔse[FV' 7f‰@<Ùóåê¼Ûç?;Bgz®=Ì5²=”z\kØÜˆÌTÜ;°s_”xdøÕnd¦ÀG¼DÂ_:‰tëŒn¨$¸™ê䤂u™ÚÑYšëLP&µ> …ßæ.Q8ºÃˆHð Y$; 65Nõ¯Ÿv»¼ñgy®-§CC厯tD yb…Db¬HxÝlyÞµ+ÐÁk+ʪŽŽˆœ“™ñîùálw°gº‚²’§õž¡tºU(4­ ^wPæ ÐjZ:Ý]Sƒÿâuå}Uo›-¬²'J²žÒ˜›—Õ³m6Û·•ù=ÆÓÌsž:A<çÄ8à]Ž{13pwÐÃþØôc[éh÷ƒþ)`|Z L˜å¡¿ICË™‘abô%ÈÿËÉÛ9u…) ~ðÚPA¾ÀÛ¸ؼ]”4+)Ä¥¸Óz!,R—'½-¸xB¿hüVͯ1Q¾ø³ñ§þV¼ãÃ>q9âêO…T•GË×Áˆj±LûQí<âàwµ¼†ˆaQŒRGc> 8 à&½ëÊS F$ôKxœ¿òl­´¡(ïÜò†.â,…QÞÌ›ÎD:›ÀÚ7i›ÊÉ7 ¹ã›~qÜÝÜœ2‚´¶CŒ“šà¤°ð‹œp­!+1ÅË©T]ªívä§çO0œHýe˜"ò7è»®tfÃQŸ1í å9OiÙÆ¥=—³X>CMCDb4ºÀ‘è— ’[ùV}bìpûöÓ„‘ÛaÅ>æë¥Œ¢—2º;ØaRåî±&™ˆé{DöøŸ)HÀ¿IÔ¿yìsæŒsBݰ…îX«/²öiá]ÿŠxýè!ï4*î l6Z¥Æî÷t+§ô+1ntú­&ÕVîñ)'ùÄ¡´ö¬§å¦:ðóOAïx3(1BÇ^ÏJòŒnúù!k¯kâ9Qi=¸ë!Ø™¡Wµ—ÀŸOïÛ§8FV|cé\f7¡\-À<ÇJ‘¢³ °5À>24’}‘ÖUu}=m¥$Œ::¶’°¼Ž„­ghðëÊÎ<}jºE”.ü¹ê\š þe»ç^}Fü•Œ ­"´(ïÌàd~(œ˜Úzæw·Æ£¼ç™ytXAÁDî°p»Œ…O P_ yo ê9/üú"õtJH8³ÙZšÈç˜(Ç×îI×Z"¥GBîPÀUÛ«üU °³Æ²»"wOE¸#»Ð’#¶Vë,>p·Æ·¬ÕŽÉÀv*î¬3àqÈväµW8¶!)2¤Þ£íëMž7D¨s/‹ãÊ­T¤øö¡ý2/&Á}¾ï?¦âØýqžøWn(áóKº‹Ù>$ÐL88ÔƒÓÌs/Jðü¥}÷…íà)H”ðSúH³¯èŒêxFâx&äžÜùGXÐwLŸµÝP ~‹…ƒWgÆÆé "s*(K„þP£Oq¬6¡ä{AÙ=¢ ^H9a~£¢Âo¾%¿Àòß~àKj©øKÿpÏ ,9„ÒÑi <ëîoÂÔÑøðÑÎiMµ‡JP(òuÃ$ëAïVäA7~2ÄÒm²fĭݲú bxß¾¢“½Wt2¸ÃT£">…ƒ6@Ò>JÚÉCKéÕ¸Ò¾‰”ÁúȰiû®Hú’j[þív[¨TLÊ‹ç~Ó ‰G6ƒ§œ€×T2’qµwÒù’¥DNªÂvª€i[\?¹˜ä&¢A ~anUC…M†3n‹$ “Üq”³Â¢S ØÖs#$%7ÂY]oïKj]åk7ø±h¦îWã3ÐÜÔFna?Õ_¸nˆCëo$8b… üaúBF'£•­ZÀ$kß«åžÏ=KVã¿ QÆG"sŽƒdYQWÝã:»Ïð1˜·c—tAXƸÐÐͶŸ¿µ=íór•s nª©do¾±÷ÒåAÜíGÝÉ {3O…»Àw¨êÓD_ˆzo5¹¬î¥$©rG½ÆK˜Þ$“I•dŽY}þ)­é=¥ÝŽŸÜ–ô²Œ }ìÂW½,v» c÷ ÎÀF÷îtîz0wg{%+G÷"Y9¼‘ó/W-ün6‰M(:@õfBi¨¤}Æœ×êäÀ6¿jN®ý¦ÑϓƯӭ|ëÙÓOÐã± ¥T>á­G&=›±ÍŒúow¥Ë÷?Þ endstream endobj 730 0 obj << /Length 3039 /Filter /FlateDecode >> stream xÚ½Ù’Û6ò}¾BT­Å¼™7ÇGÖyØÚµ§²qÙ)%aF¬H¤–‡gÆ_¿}5;©uíËh4¾Ñµº]©ÕÏW?]_ýð:ŽWeXfQ¶º¾YåÑ*OŠ0)ãÕõ~õ!øu¤û/ëM”ÁËv7žL3¬7iP uÛ\oâ¨ø:+»ªáÁV¼­?¯ácš9«Û®Ú­#üÌ`Ù¼LÇÃN ƒx6Z‡eš²víqÖ»zàû[I$‰ž•XcÌž €õÍLˆ²Õ½‰Êœ3ŸkýضbÇš-gQP1pƒjÐo Àœ†è`¨s2“Mš”ƒAã¼¹̉áíÍ‚¬"¥Â¢gqÂð®‚+tö2@b!ÖDaœ þÐùS1òlš}ÝÜò”o¡¬(gÜj}¹:‰VYÑRÄr9@…ãMe1fŒL¯:Xx|û3g4ðÇ8c‹¶ã",#Çõœî_¦¿ú°I• þþòuÊùÎêÆ'{aõÀC<¤Â„ìMÔ=+þ©”m¦Þ ÃÄ[at¡BJ8qðÖ{Îxn³gä¡Ú²ÁÀ˜=[¡Ùc$ÚÎrÝÌØ8Ô¦«º"0Ê"›\Wák°Úþ‚ÁÖ»v<ËÂ]=˜¸öîâ —Lê×uáª4Ù9Ùvt¦²6–ú%)Ä“TêÝ3ÙÈEÓœbÊf¨9!ªH½ñe 8°Ùk"9IÜßMáoÕ '.uSÉ[Šx=~´MÂE]qžh+¦D2@BÞHOˆXI)° ‹… «cß2h+Kóê¬h}ʺ‰µ…Ä9|¢<1#ía1nÇÁ†«Â¯˜ó$, m#ÑçþË'bqá}€õ°«Á‡vÆ__âD¢Ëª­¹ÈþUlKu`„B¦zF“ÁÀí·9ß•¾ùÃŒž0”¹Dy|Á3!žÝe9ôFÊ…Þ¹€úEžPDzÂ~ÿ•S§ Ä9OeSdí ý*Íî¢d[ž>ñ‘OèÄ«Â$»(dmpÁa~±ÿ­ò¢s\å‡E»Ò+Ôß§øzÕu$qðÙ-f"¨¾U~AAb F^I!Ã¥”F=Xcp€_z_Á"…Tøw¨Ì–'wX U¬PQº×™¸0¬£cv.1_l`²=9E0kȯ²JøZëò¯×‘­µhÑC’ƒ¦‰äåj:0 ·Çh¦5U  3ŽJl4Réœt"7H-#ð@LxÒ\.*£á fÇIB3j3W˜=9S|r¦ÞkRýmóDÇBga–_k$a¦‹­§H¥a\fßjÄñŒ±§ø‚Qûû…>˜ÔÃéd¿¾ŒsË6%…1y(ÊÜ¢}TóUOïx¡H ó$«ÚÔÈÁÌbiH;,O¹¹aßëPúöf×R†10zh÷\ÿÖR²s°Él¹™R2GR½Ov›l ’y^æªr¬®:#T$Ò ³“Ä£™Ä檋ÅsŸ9H”;™Äú«2ñ‹c-m;ÚHU:|%¨çÞU#éõÍVíÆòŒËge/îrØíYZ—·ø•¥ˆMî‡äøCÑdâC¸¾>Ô‚&ª\ɤX[‹`ÖàZÄ{m˜s®à¹4‡¨û©5`·OÏŽoÃ,.ýd=ܵûOUÿ jµý‚[Y¨sç£b_ÓÛGŠè¦m6_L'ÀÏš£\Ƴ)¿Sae÷}r$„ó4,tú8UFß'U¾›4*;Šªß¯5Æ’¯A¼vZŒÁ;ûƒYŽ8Ä~ÜÙ®—{9÷¼@Ý”û‘ðñ{t"f!â™°LäRôØQm¨c—3^mãÃŒ\åÅÂÒ0ó{Ì=‡P¼ ·Ìx!-¼$š…g›«ÿ>P­ðù}0Œâú…5* b9*¼W€H4£,T²Ë»Ót¾¥n}œ!V¡ˆ£È:9žuhÇãžwH»>9f JAéd¹~ú–"$<I=ÀÄ©(.$ð6‰~¶‡É¡´ÉRP2%¶PÏUWqÉUx¯<C]tª°J@ñÏ›‹“-R% ‘ N60íAøGaEn¢•CɉÚvß‚þÏ•Uån<Ò$ƯÚ;ž´d-"³˜=Ú÷iS]äB¦_h+†[«ÝfI§\ùºfÿB¼,˜kûnùqûãÒ/ Ø“œž@®™=“tOq-×CY©ý¦ÈäÇ …7d¦Ó˰Z Ý¡R.Ô[«\…ÛY³2„w¾´‹ŸYÀk4w nßIYæ¿«ðÓ¼v @+dè•” û#M’Ûžêù,ïíb≧•Ý©Ûýĸ ô2‚ˆîd°¤:¨Ýf"š8)„s–YýÅP¸Œ¨Gƒ‰0”¾Bîú …ôŠË¾Báõ ¯—ãnË” NëTaê² ¸Æü1ñÍ&C–yê§zæw¡ÉP†iæ~Kúÿ¤ë"ó-gëïô«Å9ýlJ¿±óŒ^¸ØvÇÞ_JæD¯Ð¶S £‹_èÀ敪ïÛ]mƒ¯~³Ë2Ï×ÿ§Ì’?=Èɱ~$ök/ehI:8×÷ȇ9ös¸Ë?õ©âc„‹NØ'Ô–¿^>$uÿˆÑ…XþœŸ1 §û·˜y-ˆàxgë}îc©#Û¹ ì;%Qâà¢csq„+§º©OãI`ÿTÝOÐß.ˆ½ÖÛ¶oýõáRâþJÊRŒÚ±Žü-¶±­#•¥Tëºð`‚MÎW–¶®ü¦èBA_&‰ï娉E/ÏC•û/däsÖýWSMSrê$IÝ6VJΥĿýËjRI5WÚfÞØ1Ô=zùMÿcB_d |Ü;­aȹ—†ü h…L V›3løà~Hq~~ù¿4)ä´ìOÿ+Íâú$e´ü$©3ºbœ íRå‹Cu^cM,íˆE¸}–”Á[÷Kœ®.8þ/3: endstream endobj 734 0 obj << /Length 3297 /Filter /FlateDecode >> stream xÚíZÝsÛ6÷_¡Gj&bðA‚dfú×—»t&ws/7´Ó¡%ÊæDU’ŠíNÿøÛÅ.H€¦8íãé…øX,€Å~ü°X\/Äâïgç—g/ßh½(âÂ(³¸Ü.´Éc%’E–äqRèÅåfñ1ú°LÒ¨:u¿/W*Ë£‹f}ÚW‡~¹J£²¯›Ã jÿ±ÚUeWQEÇ&VË_.8ûÛåÙogæ ¹È°NâLd‹õþìã/b±ö"ÖE¾¸µTûEbrøîïÏþ}&x­Ã7–°T+£q”‘‹:4þ8îNʸHS…ÛÃ饈…Îhg*ÖqbWùíÓ,>®R!¢‹²_‚”º€Ì/<éŠÅJ%0.¥ÙaHõ²¯÷(²46eâë;ª­Ë®¸{_n¸´m›=•JúÈ üÑÎ¥…¢ˆêuÀ“*MûÈø¾Zê4ºëƒ1ñr¥Ó,z³vndSù3´¨FD'{ú°VtK™àæé$hóÍø‹,êªusØtTi«hÔg\ME-}ƒ_žÙÒ/eõ¥]PÔS›ã5Ý[H„5%DA¥ŸE*ú›º#ž5Ïúa™;ýÆêv™ð޽‡1’§iŸœF™ Æþ4Ù0Í–ZD‡úîÑY@â©H¢·‡qË3‚«÷ÇfØ= {S—»æÚŒÖ;8z`ù‰úšCpp "åžK(4﬊PWÊÆZ×(™­%wœŽè¬¾Ñå²€}QGw¬Öõöž*e8,ŸJ€ºëÃdš\¼I©ô³ÐÉ®zÈÄLxÙ à˜z¶„«Soåøò x•ÑMË¢F–Áçî÷_A?Wmÿ+®ÐZ¥°Y,ŠÜꚬªaÞvfÆ™4Ã$VÇrUylí¨š9F°Y‘óžP‹føˆ¸PÊÅVP YlŒyeq¡õ F­¥ñ¬_ËlðB OZ+{\õìOd{4 Ý~¯Ù\T­DL6 | ×7pgÃëbVÃþæ, mµXeÑkôÂ`®VµŒ{À¶HjHåÉfPhJ'ÑZú=‘lªíÖ]žv=5xÞ«à3y®·ïÿEM¹r–¿eŸF·75Y%Û5ͧŽèwõ'ܾÓ÷$PEˆ[yê´C ©WR­”ºTò•È_‰lF£òÉ!€J¢ó{ê ±×H.,yë4|n‚K²¸¯ªþÖRV¼AÒ.(Øð—çNÅyŸ3¢Yƒr¡ˆµötµ*"§h¾=ߟ®ºê7îÉ*!öú‹´£ìpèT¬ômU" ¥eVÿ´h¿gÚþÆN¦…ó H²ä=˜½ö…0™ŸºÉ¯pІ«¦‡¸ºÚU[f0Ø=Z\ÏÏéJyeÍÁCAàài­õÐ5úÔã\Eÿ%8]^ʦêlèRßÁe&².Ó"O=Ñž > ü€™ÀVc,¨òŒ!ŸaD)„qÙàßfõ‚aL7£óÊ91çëvì «©Sówþ*ˆ[ q4Õ¡û’ñ$¶™ÔÇ8"qxஆiRÀkúœÏ€ˆ4‰“­Ðs`úН&Ps8šm@–~¢JbÞÀzCéòÐä«"v´ž+êkfÛPõœ>VÚþlw«òβ¤$ƒ¨@óšZÉŒ‹‚å-]&«£¬w ½„“Q܉¢)‰DRͳAl½µ·Ëj_úœÉý Éëï3½aáü;É£q>ŠûØ~S.­Ñjæâ­;˜V¾ ih’}—–‰½³ÍdiëërÙu§ý È :ÃÅ„*ÎI,Šø`ól+<ôÐpÔæ„¤`Ds=ÊÌ¥bC"Ò¾QhD¦rPð»js]=–ÖQÒ:é4­32B©~™‘½ u¡ÙâÝ ˆ³d’çQÏ0îû¯7îÀ¶-úhÛŠÁ¶ô‹J ¶íѶ õÀ¶É2ëTÏ©ZO¹ÜãÁ¾‹À¾¡›=Ù7Ô™Méìjßžh‰‹$ ݦ~ŽÛ´  Ö~¾ãxFÄYë"øOˆ”‚²^ÑùG²,g£— ì êKÝjî”KdIè{A]׳ä!*’t1(`«öèxj¿ß:MÞ[à4ƒõÉAÒáC(ÛF#‡J !£Ü‰‰»¾`ùЇÙà» ¢³ti˽­L× (ðõJü˜Á£íÀ2ÆÕÇsÑÜú$“³O‚ ڇî )â\ÊI´}¨.È£v=æXT&¿Â±äj`Toiì+MA˜×[²M¥´};PròjÄdœÝ"‘!â[íX±2å†ÌcN8Ÿu¸¤²—`K* û Qa¦/DÆ{¸ÒjLïâÅ´ãÇzK”8„v—"Ë òv†»ÉÚükéËáZÌ&2˜´‡ù•j[ƒ2uÇnrsŽýU;’çÄŽÿ{¸y7‡|E.qÆàÓÉšX¢FŠÀÄ`(™˜åå›X¢Ç!³&í‰+ßÄ!/²ìƒ%H¾ÞQ£ÓÑÌÞ2§+æ ]_SÊÍœZ²Uœª· `mú¬×7Ç'u—£súœè¼¦ÿ2°â»å̦à“šé¦:{åñѳqÏ3ímòØþøÎàº^“,§xzkYœŒÎüº­ñåvÞï§i,µö÷–;Û†Âä]!öi+üFXç¹o|:Ú4•=¯âóaÛ¦ŽªôFâõ^g®7ð:°Yð:5Óº/ÿEÂ.”Sœ´Ùð{Ç~xg®M›ü9Mðu8?wùh(ˆàÿ; ׆i¼x…G:ýŸ)óÕ3}øWX`‘¨XÊñ va’âO½!/’ÔøÒ’Ùtÿ &Ø endstream endobj 748 0 obj << /Length 2586 /Filter /FlateDecode >> stream xÚ­ÛrÛ¸õÝ_¡·PÓˆ&Á»gö!µ6Ûmvk;Ù¶ÙLB‹´Å Eª"[ýúž@P¦Uw§/"pœû 7»Ÿy³?üñæäômÌ27‹U<»¹›%j–„©fÁ즘}r>ÎÃÈ)wÝ¿ç •¤ÎE»Ü­Ë¦Ÿ/"'ï«¶yÍð«².ó®äIàÆ®š¾ùñäòæä_'>òf>£ÝÄKfËõɧÏÞ¬ø3Ï ²tö@»Ö³0Ná[Ï®Oþvâ ›æëúÀ¥çª8ÀS±?ÛÂÂàÕ ˜ºA+-™—¸a˜°dʈÇßOdöiyžóöÝ ªãš…ÿÍ ÂºìF¨ÏÒ±7[¨ÔÍ"ÅŒø¨Ä4uÔ~§Ýò¼Y(»5ç5ƒŠ¼Ïy´ÌÜ–|j[æCî¶íšGÀÚ5„-w¾ÃH2”)%BùF_­óû¹ÿ@²ÄÙ :Á<ØÛTR§Ïoëƒð}Ð@ÄøóÅÍYó'‰p’Nr¢GÉÀÓ˜ö3¬•ó r{V²æáý6´½Þ¯ò^pÌ8ˆšì»1ö¼›û‘Óo[ÞÂ×;†Úz5 Íëº1úvJ),žŽ £œ—6¹ì¬–»šÆ°±"Œô‰ÓAú]öÂL.‹!dì¡H·)ªïU±£D‚">‹Ë¶Þ­qc‡[Ñ.*‹IÏ{‡›³L´ãp0½[ï“„¸„ïÈÇaÂÄp«¿¯¾ã™RÀr¦Éײ~7=0K-¢Œc9õœŸÎîùPuå¬ËL´„+¤æ†ôpH²êø ®jéÀRŸ•;(NòÞ ,ÒP‰^ù(À¦8eoÀ¸†…øñ9½oÊe…')g˜¸6äEq¸†ƒ–a‚²tÓæÃ˜ÍÛ(Š `þ»º`Ð*GÏcÓð*N9¾Î–Õ8·ä´°0fW´óÂâ é@ˆUРyÑ_¼M&;*¡%F Œq”íÏc‚楮¾Šp¿y‘÷‡üú¯æà2è9±ï¼éöëu)¹ 2Ä„±Gò¢1òm÷Rî:Wʈ@ɯà‹Þ ʪ©¬XFb²Çª¤Èr4L…X•ê ‹èÙ a?‚v¤©±íyý ó&ìÙ)øï­øX"Ù_çÑ(µ=0±1`-‚(6)²`U×¢Ôùe߯Úfà^ô“}Óç˜ITŒù¾â,=e BCúm×ë|Ñ•Qóžä‹#§®L}†-Ä3@·yÕW޲5`7—ìp“7¼nöó.Mqlo¢ö SCÉ˾w¦<êm ˜¥XAèï÷+µ Qž†T}¹–ýè2xfJP–$U>F…:…Ô¶[ß–[KO— s˜tYbNà Åýh†¾X”ºâ´ã=mS2`“Û8Ží)pw´˜ºÄå`÷Žó¦ÇPÀàŒ)öj›l¸•ÊFÖÈt nÛoSJ±¬5„¬r¦¨F틃]2ìÈw“b$—çK¹-h5ºDQ5€‘aÅIç2·)‘+rIã’•ˆ™„87nzºÃ]Ëà3@ Ȉa.ÂV7¥ ^†šenÔ¨)ç-Õ6Éub? ›¯7u9ê ½!ÛxÎÙkP«ž)˜†6Wv‰úN&®wº%fÂl@ˆ^·5¾d3÷Zí®×GïØ$€ìüêý8kÄ)OVÎ5h¹1ªÇê íÊîW®WЄZÙN˜âë6äÜû í«oz`¥3³Ï©änÏ“‡U).fºa…íznú`N¤>ÞIèKw=Ø´©w—-ß”-EéÃ(¶3?—~”~€(>¨&  B]Ÿ0|ÑXaÄNßA4Ø–óÇa˜RðÀ—tßn““gÁiVÀDD y“À¤LøÎÇyjÞ0`ÏCE^‡k õ`óM/x¸ëÿ¯s(Qçך¡¡Ïðœ5½‚ŒY¾"}Õ™6«U1­ŒÏ2`”ÅÀ…îÜ´=¬âBù0•2Ÿé ¸x¾•vmÝO'ôZž³|6ç—?Í(ÇøóšϯpòqîCo~b˜T8põË»¿3L)öu¨ÿv[t¼‰é)cí } ùâÒqSRϧãšX‹ucscAõx«{ÉÅ Ø„]Àd‚áL¢C,ÖÍ ü ›ê¥(kžrêå.8N)NžÂ]?aäñF.Ö‰ó~áKõBVÁZ[a†ûÈÏ“^²…bÈîùœ³=ŽSK*3­¤â;’—A%Àˆ);*†¼>S5VÑU”8‰G%—•jä¶~TöT?°³“‹óZ0Ø¥Ô黈dÐ \tɬLiGû^äMùžôʘÊ'ãë–˜ƒAÚáRÑi©zÔˇr/Å6êíBÁ<}í@¨¶“½ó+ªüãå‡ë¾bÀªÌ R'Œ'Ä¢”è~ù¿ïD˜z'Ô—Gh *î*­x1µ™w|ýËå?~0é~?\¾âùfÃ^db‚C ðéÂ\î7ØKT~=Ç®âgÆý×÷g }†j|”j2WOVÌ-J_±F·vzÐñ Ú¿¶Þàô}nä2CxÂ8lÛòìà]8½ ÛJÛ#ÏÈ*u• a…eÚr髊r¸èOp3z ÐrŽ{ŒÇ…PqÊÝÞ1VW…fõ€sÒ=iÍ;†6®~à+›'€æ.­Å;*s33&FÏ112×|-†dÍ“§gšº½sÏ÷ŒþGrpú6-Â~ºq’hÊŸÖUó(}/ ÷È…žæÃpÿù¨"ü$pS/·®F§ûi%Ž]ÏW/Њ%¶~À° «•!o`Zqû£"ñ‘-©Ž,˦?Ýã¿W8:Æ¤Ü 1qd˜Ôîg=Xò^XîA íƒKzcêÆ¬òvLa橸äùpåÀHn‹ò¥)Ëápe •NÍè‹°|Êm·™ê¶“J³-Êáß¹QèB}鿹“6‡Êõ}ýGhJÅ:ˆ‡oÒìù*ßÌÑOå­%Iu8†~ç zö΄®ô¯ô!Çÿ¤§à† endstream endobj 648 0 obj << /Type /ObjStm /N 100 /First 860 /Length 1590 /Filter /FlateDecode >> stream xÚÅXßo7 ~÷_¡Çõa:Q¤~ A4]»ÛZ$Ð-ÈCš^[o©mØÎÒþ÷ûxI×ùœTg;Û ñî>SÔGŠ"™Œ318Sƒ7” F6Þë(ÆÇ€1vú=“á¬c6âu,F¢Œbt&(NŠ Š‹l"gŒÁ$†ÎlRbÃÞdW G“Œ:i̦$Ø‚¹F1‘!r˜ÿ!BV!ò^…AMLÉwà ¡d(ÏFtŒ 3 N¿@_$Ì™1•Z3(ÞCˆÆ‘Á2<ŒcNyïÊ4ÅâŒgÉ£˜P 0¼]>UV àm, „–j3ÔÇ‚OE ZJVuàØa‚äÈ0‰Œ’SʸàƒTÿ V’Ò( .Šáà@¯Ã¿•úDx£|%ØÁ $§t ’#ð2(ŒS\‘¨¿zv&yÀàT «7•Nq*Q!@Èj¡/x}}`°,Q±”5Lô ô&8*±‹…€:)˜‰Ú6"4¢XÍtÉðR Ø‘8Àˆ¸À¤0 _%„Và¢&¬>IR¡àò„h!¸Q‚PôzL L•’Ò £C5˜”õ 4炵h¬ü@ttJ–À¿.ÆÑÞÞ¨y6,ÍÞžižÁnA¨;s¤˜œ>?hø‚ÏÛlOÝÃãÇ£æå|zqÜ.Í©i^>}fš“öãÒœðIµŸ|šµøpþ®5˜©,ØÝßGÍQ»˜^Í/ÚE·!»W?µoÆçO¦Í©ÓmRñg˜æ|ŽÿÂlép·êŸšSÍ a¯~ýÍ(!ÙŒeL®./ÏîÅA­wUL,ÁÂIUG‹]Å…ì-ÃóUe›Ñj8²Nêú˜‹Äz ç%YM+¸ÍãÁw‹(kñq3q=>0{/>"‹Ü=ñÑÃKw9 ‡Cþ´mNìî{-–u.ÓÖ\æ\æOцÌUœä }©Ž Ñf€óÑäËŽs°.Å:.KÈ­Uœ¶¾ZvÉò€Õú”-—ºuÞ¤ Ù)Êú{Ç}ò;ÅŠ¡~üeÞ(þšýÉd U§]¤¶h¤coê7jžLçoÚy§Ó5?4‡ÍP?©0ßß&lÉq¤£‡ÿõd'‹Ú¸ã«×Kèl~Oþhö÷öºšý‹åx:iŽ›_Žõ÷Íûårö]ÓLgíäÝ|z5³Óù»f:¹OÚÙÕëEã\*.§Rš‹÷ÍÛÙ|¤îáó>D`=ÒmÈd‘K"´ô/Þ¢l¿cãØ4ϧ'S¿Y´Ý&´8E™Õ=TÒ@—¥U—Áí>wûUÿu•ïCø/9ß÷ŸöˆÛUÚoV9Úü¼ÓžTvIÚ­-rX&¢µE „UÜÉtc"Ð'r÷D„vò´Vh7¿ Y_vt¢ÝꢛÝãS´œRWi…b|ÆÎNqã£ôúúÚ^swŽž5?¿8ùþÛ7çËVÍÕSï>9™ê'fœ³åަµC޲z RÅYê7£ÿÍɪË]‹•¼íÆ¢2óÒëIغRê¸àm±ŽCí¹ŽcbëÌë zT×çqRs'¨¤Ê6•Ô—^¡×E$½ŸóëùöAb„×cÄo#~`ŒøU΢ äPÅIò6Uqy¨Žó’- =hÇ·ûqÈk·7z)¹¥GxØíÍ*îžLÙÄ ¶Üq‹ÐÇ *;¾kg÷pŒ.R/í«8õn}Z_²Í¾>­_}ZO(;ë0ÊemaŠÉ2ÕaRº£µŠc²"Û\^Ü“OVâzÛP–õÊN¶®ìd`e'PÙáÀD›fÙ¿%rpx endstream endobj 755 0 obj << /Length 1551 /Filter /FlateDecode >> stream xÚÕXßoÛ6~÷_!ôe2P3ü-)@6tÙV X׆,ªMÇÂdɳä&Þ_¿;’’-Åι@1°Äuw¼ïøÝQ4¸hðÓè‡éèêFˆ !‰æ:˜.¡c© "™ˆ`:nÃOc©B³­þOx‡oËÙveŠz´K‚»OãØ¥õk7®ŒqˆÎg)Ä9Žø}¡_\Öõºº¾º‚Eá}V/·ŸÉ¬\¹±Ã¬>deîî—Uëì{»ànzصF$~Oþi¤Âr ohÎRŒ‚åUéD„|kQ„A‹-ÎuØÂäÌKÒ¢yC»ÞÖnØâª|€Ì§Ü! 8Í@±O0ݼṩfÕÏ^ì ƒàk~Ü®×eååÿå…½ç4+˜†;v,feQ§; ìAw³KȲ<·»åÁmTåÖpíÃŒ?ÄÙþ[à$îæ¨¤Cm:!”±@E‚È8AzC¹„aÅ$†Û˜`¤öTÕÚ3²¢˜u J¢ÊܳðœfŠ4κ$w†JÈl¦"ò—¿ÙC„¶-/¶-ÛN†ÛÖζl›ukÒ±\é'k7c3~˜ˆ§ê,mÒÒ•Ú½ %aÀq—è74,Qs¨·ñóå>‚Ž RmÉ¢ÝàÉKTÐN‡C»[C)E˜ŠN¿aŠ0Çvãš¼aK H}Ù<ÏçNh™ ®ž áá¶òÅŸYÎñU„Æèe$±lÄÚW‘žðV~-d°ž`¬¾.`Gqƒì•åæ¹¾A*¢¹h^†*´J‹9Òm…?;úsôÌ›¶aƒÜh[¸šäÉm‘ܯϗ•Κ³ÚI àí—n=¥[¤ê gà'“Ý=ÚVað‘Ea[.Ö5 4p¾¢çxÇð¡ÀY•íqÜ‚ü#,YxM=®ŽXQáçäe:wóµ[ø p¨ƒ€r ¼›ÚGÔ<šÙÂcн$I7´ËÒ€©d£íWpô9Ø9#T´NÞ :ÁéÒœªÃ­ótf*?m·Z™ÚO9Ì G#JÊ.·רlÊ/´¶Ëƒ+š½ ü¸¯¸Ð’¯\t%Ƕ\ö‹.£ ø#yyÕ=ZQºæ>m=ºù»ù³Ðv$þ„ÁzÓmçœðöîX³ûŠºA µó¥«8VMGâROuχî,šTnS¯}Â[ºÊ³Â µ ©ÆàÀã5AØ­ gé;ô : H´ž•kSôâdÉ¥Ù¦ªÑ¥½öŽÄ;|Õs鬗\Ç:äÍWGüe×ncJFâXt‘Z§›æTyiòœ!&Ðh},´ú;4IœÓéùI¸O¡6a‡K}"ŸM®ƒ´?'ð!釫ZçY1Ã9V˜0ÀŒu ~¼ÈJº†M0G36U”ÏéMCÚWv× Ûo}wßÌGvÚljç©N4?šú-T¤ÑÀÕMÄ«>ìCÙ6\ß½x›÷ÒJ‘}÷ö8@YÇ7TÆŽ»öŒYè‘ýº³Ù¼Ò7Ž>¶u8Âv;%äÿ »Ý7Ån×ïÐÓãAGuúä×ôW§Ž)iÎ~œó‹Îè}ÞSÈæÚù„­à„¦Ïþ‚ýô+{„ñ%Œñö+4tìZ&?#OPhȺ-Õ;T endstream endobj 764 0 obj << /Length 222 /Filter /FlateDecode >> stream xÚ=k1 †wÿ 6äT[þ:¯ýH![[Ó%d097 ä.Mr¡Ð__çÜ …„Ћxõ>’° ì6²›¹Ö08rßÀxÓ¢ bKþ*Œåù|ú ù–ßï×ç>£h,Oãv?̪þœw9r4:$±Š öÙ©rJ‚ªÖ½ô°îÙr%¡+ú$êÐÂç´Õƒqmé;xaOLþļö_^Ö ¹[ýIj•¢ Jò’´-êrfRïÞÓ‡°|,••ŽP4΄‚œºí°©b—êK&êkÜBÿ þQy endstream endobj 770 0 obj << /Length 1545 /Filter /FlateDecode >> stream xÚµW_“Ó8 ßO‘Ç„Ùf;ï ØËÜq{Pî˜7M·Ò$ÄÉ-½O’¥¤i)30s÷;²,K²ô“,œG8/¯_®…8‰t’@ø‘Š|õá“p6@í?ËbçÑrí0Na¬œwW\=[]ݼPÊÉü,–±³Ú:aø©œ8“~ "gµq>¸Ï½Eä¾zz¿Z¾õ>­^Û-Aè«0–¸g!üP: ©ü,hÇêÕÛåy¯–«S ã(ñþ¬†³ãT$}•‚ŠòC:î·§oîîßÿê-á>õRá®îÞØŸ—ÞB&©{멈¼fï–+4é[#fXÈTXñ T4åîömÓ¬Èí‹ Œ*t7º×¦è þ)7×5‘ mÊÊÆ-¬ ¢ï›MùQ¨pÜ^Ö´Þï˜áäi¹){{žRêªy ùºA3¾úÞBÉÄ]íJsΣFZ˜”Ò•iNÕ ) 4ÌܺçÕºð”pÑ=p‹ ð³ˆcafv¹Û®ÙÓÌäîs/ˆÜÖ(â@óþЖ5jÅh0o)k4%LÁ”‚(ì˜=µùdì>Ú‡X 6jh  ý'*ëqdÎa_ ¯…[溢CLñŃàŠ:/®/9¡ÕÞýqßtãièÚ«KÁÕšÔBRM¤Œïˆ4S þʿѮ‚ù kdÛÆ”MmÀM!ÜÊÝ–˜^(Üf ÖGs¾õB¾ 0C•a$¦)…ç9‘ÂӦ߷旛P>8ëwÃÚÏ›=ýÓ•Á­^ü},?—4㼿Ë þÿ• ò?OPˆSh„YzD$Xè±®44ÏiNˆ ¤úñR’ÿLb¿ÀÓ© !âŒÃ^ÛZ¤Ä-mêeÜz¤7sïl Âš®´7–qÖý¤bÿÀ¼aÁ °¦eÍø Œ'Ù± Iã㮜2YÀW%©lˆŠlxòD"JHé.gH!ÎuWœÂýý¡ß5<‡‚ßΰßê^娷‰ [¸ììx2˜ZAs„ Œ•–ë õ¿Yj{[)¡«VqˆpÄ~ ðÍÝ>tn›©Ýß-pf¬)™¶<©qïGij¨ho©1e­;C+Ü ÆS+q+{žgƬ¶-ê Æ´í’ãh¦ìó H©¿,V~ÛKËØ¢`亾 'Ä“Ãî{bä‹i¿#&õC{„…Ý9ðzÊÂpTÿˆ âxlä¡£„ÖëÅ–(¼OYƒ1»P1øPF§¡K+ÇX;o¯‰È«rÌÜh|€ ÛΉ«ìˆx*…–ÞÐjÎí2‡Ö 3oÏôšw¬@?â¬}‘˜TÜë’D6Àö³þùRCÙVT,X)ûrÞ`ÎxˆÐtc{ù€¨¿ËÜoþÎE]`q=Ïô¶Ã‡`6ôûcîæŒÉÐ…#û‰×¿5?TWV:×y[º.øyÂÚ"ç‡âi½;HG!T¡äü­ 0ì¥aÉÒ ’®28?ò_/10" endstream endobj 767 0 obj << /Type /XObject /Subtype /Image /Width 484 /Height 543 /BitsPerComponent 8 /ColorSpace /DeviceRGB /Length 20763 /Filter /FlateDecode >> stream xÚí½yÇçËùkÿÙ?v¤› ï‹ØðÄ„g"6vfçÉ!y"ÞìúÏ}ñü6bö--ÙRÈÖÚîF¢è[¶De>d{lÉ")‘&©ƒ¤$J²x7Ù÷}_èÐènÜGá>»Å÷ @W£ª²² QÀ·âˆB"+++«òƒÄ‰B._H¤’Ùlæã·oß¾MÛÛ[{ÈÇV²­ƒmDë–Û<Ü6€Ýý‡ÌÑ’­]ìsÁëêÈÖ dMXr6›â1A“¨KÅ<½ŢsÙx.#p7EVJ¢<‹¤9©:Mò"idŠR jdy(s|ä(í°U¥ÀGqk‹Åv•’*ÛRøß…9ß"µÞDôÛÒ¸¾”lÀìq’–a4`¥…Ùg¡|šxOhùìK¯å †ïbã¼tU¯|Iï(”ÑÛ¿*½R«óæw¡.E¨ '§€Ä]&5ÈcÚlœ´L¯˜¥5­çy-m…«3†]0ìê|Ç»ZA×Kt½Ýl]o›ý(aÅ•h×Qo[&꟨;ÇÕyS®Ntu¦%®®@r¦Ë)›MÑuXQëµ ]WZ û½îx<˜Ï%r¹„Ù¡u΢¡µ%®n›¡u©)Ck tmÎØÖ†€ô~×õÙ:QëT—Z=¨V¹ÚóÙLJù×S‰(­ʤ NÆ‚>I£ü4—Ö?¢Nåó©T2ð­%â¡jNQ7ÅÕ;tÅ…@¾Z”¶oIÑbH$§oPmÄÕTÄœžºuãƒß?ûö›ÇßïÌk'Çû#áMjRn]# ²·‘¦®[jl“[&m†¥›"j £]]Ì’g¦†oõH{úûSшŸ2ðô)Ê–J„gH» ¹85N…øŠù4«©/'ã¡i…BÈ9Þò¶†E­ßÕ,†6´ÃÙ¸»VËðGÿú?ý‹ñçW.ßȤËO³2]OOÍÿ«õÿÜqÇ[˜s°ê™K®¯9>úðÜÏúô“ßÿÆãý¯Çþñï?zð‰ï~ñù£ß=³ê˜£¦ÆÐz¯uÝŒvÉзÉ{ô/ó+ªm]–nõpz¯D½ËÕ´ÕÆú*«§¯ÌÓ&Z¢ÎnxV˜…Ì•#*Ì蕳Î.Ä1ÇÖµ…ƒjΖƒ L]‹³>²*¯Þ}÷ßÿËù_»˜N Ù´@ŸhÄôL:VVwZø¿ÿë‹ø‡‡žüÁf=Sósã¿;ù›o󑟾ø£ž—–—ç"á€Ë¹Üß{ýå_ÿìÿÃñc¿˜šÈe“2´n']—¬ÖµÑ1vÉÄ, &LÚá›?°m±¢¹-m2F½G¢^˜Ÿ¨õô§{z.;–"‘ Ëåèï»ñÊoê=}°ÊPµ¤U ™ß)D¢‹|¶ÁÒ)©¨æ$…ܸ¼L…s¨Þ†B’ÍT«Я @õ 6)Z¼ØÔ\ýÅ/þ3©ø‡GßI%«rN§w^}çüä'>ñüø/Ç"QÆŠßë9qì—ßúÆ#7®þ>Êüþ÷ù7?s»–¤£ë½ZwŒ®›<ÀÖali—,ÃiÙl.=SªJ:ÝDK[ûe¢aQüëÕž~í÷©DŒH&b‹‹sÉÊ 11>TëéËŠÁ*3àÛ)$™ˆÊ™Û)„6Q }¤ý>ÏN!JΙ8GqtmÕ ZI€‘vè\*ïZËÕŠºþÞw/â?ýû¯JV…Ÿ¨¬Ð[ˆFÿú¯ßÿԧοs~U½ª‰t*~ãú‡GÿÃèð­x,¤ÆŠcîºüÑ;B,Èvõ>Éb^×Tˆ^]‹»fèš^µJ×T”f·ëÓÐ+wK¦m­´ÍyÛä„|ÓS^ øY¯¢ÍYºu³>ÃÔÙLªÚÓGzB8.„ϽýæŸÿùgè:üìgïîëí‰WWóbO§uyÊd’õBâBH•Z!‚’÷ôL:±SË9óuç4mPÝ(À©‰‘x,(EL‘0 (jMW¿úÛùO}ê½/|¡7™(+:*Äk1áùçVÿí¿ÿÿßR:)0ÞS6Ö/<÷ÃW_~) °y÷ÂÙçŸû§åÅÆÐº¦héºq]W­«stÍtuõUKF×Õ¢8Ø53çEÍ ‰è2vã0»T*K…\¡ÉåÒÙl"’éX"‰+IÔI׉ÕI¦¤ÉL…t•T•x#6‰2TÃF’R2"ÔÏs©*Ù²eÒUr dÈÓcV$—Ëì&»C>›¯Aë9Ù’Q\¨ísùòeò9‘‚H¡N¶yx‡Bq‡ÄòTú¶:DM×Âæº«ÜÓ_yIˆc~ñ‹Ÿ}éK÷½õ晿ýÛÿëo>wo¬–þî…7ÄžÞ0´¦§›¢.^y) °©RZïToÔ Ùm˜‹ïWsŽ8´ÎYýØ%Àɉaê˜O|ïÛ±ˆ_äGÿÁüÁÂÜ­ïP6´–»Z®ë«W|ÿîßÍÞsÏr<c bºs%ö™Ï„ÿôO£ óqÆ´j·¹Ù‰#‡ÿ×ÂüD8äeã÷­}ò[ÃC½…òOr¢ÖRQKƒ!#íÜî”ÚIܘ’>-HÔ½Kà]×-uõ®Mv?-ÖÆØ;)µ {wâ.3×åyø\½k¤--D4vu½´³.ªXšSžRO”J»>®Ï¾0ýkÄ ³—¿àS °ðÔ·¶øFæZ¿šQçÕhŠÉØÅ]2×1C/Ÿ¡æçÊ=}qa2ö5püøoéZZšŸú}±§Ó¥ó¨K…ì|E‹óTˆ—WêÔSv )d¤®.î²Ë9ÿóá¯Pùßÿ èœânçX5÷c·7‰ï~÷[T z¤õ#?Jë?<úñ%¿·&@¬ÊD-wu6³k¾Çò¢ðéOgþìÏrÑèNÐ;•ŒÿøÇŸýÖ›ùL:ΘÅGí6Ðã{ßyÌ»é Ö¥¸œ‹ )ÄsÏü ¯÷Z¹ÌÝ¿‘aººq€-Ut}].íüîqµÚº¨k¹Åuù`[bò]Áº®¥Þn0sÃpºAæ c+ºZ:ºn°·ÔÕŠÒ–öwyŠ®ðˆRœ¤¨_P<˜¯ƒäˆøÛA Ã@¸£¡iõ©Ôù Õ°ÚÓ½î`pCÊÙ³§þò/ÿã_ýÕ_JÅžžÍ&w†C¹UFRÈúèh?]xßùÎ7i]äñÇÿ‘F¡ÓÓ£âÓj!™„ÔÕ;…Hœóøá¤¢>ÿùÿ\-PÙ9ÖÿJq·="ßùÎ7¨ó7÷Òãѧž¨§µÊìH8ËtµTÚé¤ðôÓ·_zé¶×—¬;9I­®Þöû·³™¸ô«F¹®ó¹tÏKÏþøßšçÊŸþé§×\K é¯üæ'=7®ÄãaùOMºš1´Î³]-MQŠ(­¥ì†Á¶|˜-•¶¦«ÕŒ]×µ|EÁÕR—ò’ÁsclD]ÔF¾‹dÚÛ 7‘¢A3ù®°жÆÒ…ú¯sÕžî÷4ð™ÏüÙg?û^8ÿ†4ñ•ßü”zz"©þ&±ú˜­²&òo—µF´~øð#´þÔSOÔ_­ìŽsfœsø±Ê†O>Aë;*8ÇúŸ“Kè–ò7Ÿ»§üÞñ_þ¶!½Z!¤(dWÇDr™X¡<ï<-”ƒÒ1·7‘IÇÖ…µ¥ðR(±I)Ùò佘Ê/e:ÅãcƒÿtôÛ×’oÃ)ŵ2ßBüò¥çF†û%­´«ét¹Z‘ޱw¯¤B"ê®Þ5ÆVN+š¼nlµÀˆ|ïlWË­æê†1¶â`»1ZRû˜Ìu©X(˱Ñr¼:“1¯NÅê4Æ«+aêDZà:ÞH¦Œ©xu&™)G­Sr˜ñêôÎK»òTc×»‚ÕÙL-Œ]!×€d)'dó"µÀuC0;¯J-æœÝÍî¸tA åxµÆÇé:§K¢ÚÓÝ˾M·oÓ%2;=öGô¯oÞ¸\O{z¾þ#IJ«“[Å\­¥zÎoë]„Ÿ«ÈíÉ|O©꿉 åÙw%i!®¡›å ¿ÿ=Zùö7Ðà|rlP|ZuNù·x Î1ße>öèÿ¦*ý—ÿü·ôøío>®(Àš•\Vv51å›èYëY ®“Ó騢æù7~¿òA<^þ†1*®–»RÕ|ÆåZ>úäwæÆ6=6îÕù_ýòÅÅ…Y:qâïttºzWøºáÛF¦´Sy­ïw^•ÅC4£Ùjß9Ju-i«¹Zè¥ÍW+O‘)Õµ$6¢üEdu$,FhMÅ«›ˆnúÝäŒÏ!Ùæ»}S‰ö˜|WŒZm€]§1^­}‹ÑÕtñ¸\êé‹ÔÓ×W¤ÌL 7¤¸ bO/Ñ»C¹%ÅGª‰¨‹†B¾þµ¯ÒuHŠÛ]HU•xu¥ïW\MÕ–8g…éWêÔSê…ÄÛÖí8Ç’4I8*ZîÑü:–<ñmZÿÖ7£uz¬ pN¬L>ŸRpuºîêX•L#¿_¾øÜÀs—WèU_8ðdÏŽ\=â -JSѵ@­†NûÍÅ÷Þð¸Ùô÷]~ûÍÓ››ž¯A³ wä‹×<ÏKÖ%‰jsEj+•÷_ù[º^¨­W.¡*uWKŠƒmÞ8}X)Ö× i¥ ¶¢ÀYÓH$ãg²wVi]aÔÝ`uÅȶÒ5 ÙR£ØrTjbøÐ˜-Vb…8r:É*¢/¦¡JºL~ÒyÑ;=}m©ÎâÂħ?ý'ËKSÒD±§{7=Å|ªÖÅÊ+T b!ćœoH©RÈíú1KAZˆ{‰ÍŽsvÆÕRK &i`ß­+•y ߪKïG¥AþÈÐÍŠ/‰•¡]ï’pMήN×^­å|köÌû¿?ßû<©ø…þg>êó?ü ªéiTÒ) ]ÓôòÒü?ýð»S“ô.¦ÆÒÂÿ—ç²™„ô'ðjºV”vƒ®Æá²ÀÈ.o7D³¥¢VÔµtŒ-¸¢®¥mÙt‘´ÔÛŠ3F´:‘Â[ªh©´ÕÞ»sæä!ùÄ?>u›°·n«Âòêi5HÉb?·DÑê–®ß */öôé©A·k¡Îâ¤ôéÒâ¤ØÓsÙ”¼—ë….$[5P/$›QøÕá®Bœ j,-ÖÓQט­ °ŸD74x£A}bJ]€™LbGÑQ+»z··ÏϽñï_ú÷_8óÿ¯õ~â¹OüÉÏÿ$ ¬U¾©Œ¥’å›Çc€](¿a¥oݼöóŸþxj¢ß¹2#g~näı_ ö%BãÜB%]×É«¢þƒÇœ"Êó± ªÈ§ak¢þ£Úê½Cw·RŒi3È¢2Å«/rÙ|9›ªÆ«SÜñê¤$p-‰WïF SKf_W)OÃŽ+Ì»®’(S®aIÊáëÔ™*™2é*ÙF²å¨uF$×H9R]]v‚زPv…|u¦vNL>/E2S»|Z*ì$VóªßV((Q~©µ®<­„;ŠÞåjÊ\ïéÓ“ýÎÕY9 s£µž¯Üi§OU{œ´ åBæw ”~r/Q¥…¬ÌÊÙåqP]ŽE–M¸[€}š,ªUl¬áêtìæê•}OíûÔO>õׯü­¼:ú›HL¨Z:^5¶Š«cõw–dBèë½ñãzâÃ÷ßœ›ZYš\]ž"æg‡¯_}ïç?}zdd0 +ßš•©ë=5vR¿±÷LÚV{»2JܪD­Å_y¼]¹í¿‰µ©ÿIiâ-›´~ ©kr ®ù$ò‘¿ÊXwZˆÊ¼ŽBDš¡hÉý¥Å¡u)ŸLÖ{ú[ó3Ã+ËÓ«Ž2 ³#’ž¡îRôîIwÒBæÊ…L‰…Ìï*$\ŽTËD-BåËœC™&Cï–ÉYÁÕí‚S€Ô† kºz=ì E‹®iLŽ–«QQ§R WWu]þ!Ÿ÷n®¿qöÔ Ï}î™'óÏ/þä…þügϼsáM¯wƒ†¶×ƶz˜Ýig˜ÓH,r«ß¢¤¤ÁVÛ£yf¦Ïé n¨Ç7ŒE98ªŠ–B ÅîéùlùÎ!Ì'J¥œ¦.H)2E'¤¿TÌ™uŽE®&JåÏ,9ve¨U®¸ºTquT-C&ý?~úoîxæïxöŽ«K7"±xXLâå[²¤SõÉ{jåó¸U¤béT2nlx"‘P*•¤Oså B¹$ç?Ú´ÊØ-fë‘vÞŒ´ ¹­²·ú¦Jf±F¶ºmœ·´Y4N¥rVýºÐ˜¢¥ÝB^*ÿ`>'ëéÙB9t–QS´”"»|ºÁÌ ˆ6(O&TvNV‡sÌYºNE€5Òá°EMŠ–¸:*1v”Án §¡2“:N±T,|¦«½á•{fl+‡Ù­”¶õÞÞ {ë¼ 1Ûó—ÖŠC3lf+ül¡¢w,½« и·:‡zúvi«T(*[ºÞËv÷;ñ[ÂB¦òmr¥­J!LK+Ú P¨8gKtNÉ s̉ZjìÊТü …J•Ê1Ôä,Y‰*¹º¦ÛŒÛÊav‹¥Ý4o[bï–9ÜFp5ZÓÌlÆÏiÞËUåâg:dkGÑê°Òy¶š(g.KËÉB+"º:“Šˆ¤“‘t* n„ƒëáÀz(è)Sþá|å땟výn"à/ÿ(Òïs¼„ÓOl®úʬÑðºwcÅ»áØ\'–7ϱ¾¶¸¾¶´±¶´î^$V$Xÿá[Qhn5ÍŠâ­üò±a¤]WGEÔƒ!&Ѥ´:„bpò¶fnš-±$T’íøÈF“ƒ&oð‡5¤è q(u‘\ë\Úá _4Ežu9·ÊÕ¼¡ïV뺣~nÓ¦nýß+«¯¡©[ÕµIع ÝZK ÖY:Ö-ÄæÆn®´sí mÓÞæR·A{w¸¶Õž×ºVØ '«šÙ¤œ ú¹ÙŠÎµ™¢ÛÏÒÒ9{{ëj›Û¸´›áí¬Yoë°·)[lòvÂt›äšdfãñ £~6£hXZ¯«÷–Ý•Lï`Íœ½(ý“NÃ_Rj¡r¡²¾ì–{›‹i°7+¦©Ø³,4Ðë‚ûúÑøÏÁÆ)ªÿ‡Â&Ë‚=×B/z¦[HQ±åÞÒf®VÛ4v[I»åÞ¶@ÝænäÇõí#v£ÕÖßDVjY§œ[æç¶Ut–¥èh[‰±-]­aì=fsH»™ÞŽ›ò¶eêV¶Ì“ocL]¾N6$ç¼.97ÑÏ–+ÚÂt´ •ØÆ®¶<0b+iëô¶u7EàÊ1óBo¶ iÙÈàYãaí­h[„;lëjˇٖJÛJooÇU¾ l{뛾Үîm¦„›kæ„ö%dBÎ{ágkmÚÇÕ6’v“½Í¥nKíÝj‡[ø`“:›8/ÍlzðÌëg(º{]­>·°}¤m½·P{bo[šÜ~6n¾™uÜgcül¹¢£¶“ž]íq;ÞyçÍ“¯¿Jœ:y xÄ#Ûÿ‘xç·Ö×]âê Ïê¹sgúû®ÏÍŽ€ q?vs}¥\}ýÚGÓS#áÐF:Aâ"}ݸ~©\}óæå`ÀÞ€ö‚ôEëW $aœq€!}MŒ¶ÆÕûöíÓL±µ«ép ¿jÕ^pµ’«Ã5¸\Ý g¸®4ÇÕU9suƒŸÖd^Ï_OT´½<‘ÓÕ¢ôÄÍÒ¥‰ÒW×ë™^m(„ñ”?Q1ÀÖ¼ðÂ3DVò/®´þܳO¿øâ³Mpµ6£V¥)ŒDµuÆVj(ºZ.d¹Ù®–›¡tžWu%ìN °.Úãé­'>õäbb(¸¹ÛÕa½vµšl9n­«uéQþÈ09§c9_…«è\Í|êäqJ9~ìeñé¡C‡dãê–ºZmŒ- hðºZ¾•yWKîV+DíUÅø£2€Ž!ŸË8pàÎ;ï¸ë®ý4ºÞ¿ÿ“´~ÿý÷òY«\N†ELºZ×°™=,·p\­îàqµˆ±Á6 3Ȥ_yèÁ{ï¹[äá¯>”I'•¾[ä5^]ÎÛ[¦\ÍA·a D×7Œ<‰zC܈Ðñ‘Aˆ~쑾üÅ#?Çn®e•«y É0RDqI^el%/Y§«ó1ÔF¶Œy 3kNaFpmÐq‘¤ßï=}úT àËçŠsöt)×°«÷ünÐþº.sô¨6¿®€öÿ-L \½O}i«ÇFûáj€}]=>:Ð ãê¹™±X4€3°#¤¯¹™ñnpu(àñ¸—Ó©H.+à¼ìƒNF<î¥pp½\MDBë›ë+A¿ÈXã"À"Úö™â=Ýèm‰+Þ0æ=;º"¢ƒ”6`žÖwÊp…w:5W‡j M s‹­ÞÁ’7pøÛ×g÷R•3\ Z¡t‹<ß.Xظ¢€AW`9]×­°¸àjp5ÀÕàjÍvu*¢>ü¸ x a’6[ìjÚ©wÙLcÁ‚ Ž%™ˆ{7VIž-su<æs9···¶J…\. @&IÓå\ …¶ÆÕëkK‘Hhk«˜IÇpBÚ ‡¤Ð¸:!øg¦†iPMohyà'O£ë­)”DÚlW QßÈÐÍB!—Ï&ÐòÀO.›Ì糤P½Qk¸ìáê­R*« }\]—3\ öíÛ§™¢ø*;ÿî9킳VÎÙ\MÝ è6Wó‹x‡{àêNrµÔš†l«›§&ËK†«^W“BI¤ºÄ W¶«÷ÕùÓúcƒF6i(VÑ9Œ½°«ÚðÞ¡Yyý5„]ç†WÙÂSC] àj¸ºÛb òG¹…ä+Љœ›(ŽƒvÎ èª Ï°ëÌ_5lFÄÀÕ  ]mF>†]ÍÞ1 6 fvgàU¸®†«§«¥K›»Z^Õ†ô¸š±;ÅWãìfp5\ W3ÆÕV}~oÁ¸š³ä¦Ö™s/ÆÛ®†«»yΞà³_Y¯æ×²™ÃÔ¯æ€#^ WÃÕÀ¼«ŸÐyâ†çhN½PÌù_µy jb`ÃÌšSG4›ÀÕp5˜Û àjl7í£YW\ W\ W@Ë]¨W@û¸º*çí­"\ vsµ6±Èæðàš«£8ÉeWß ‘ê/\ p5¸àj¸àj€«áj€«ájh¥«“ñ€\ íã꺜·àj°›«yˆ†7‡Ê®ÎeéT'ÙLÙÕ¤P©.ñšsu<Šà$›‰ÃÕÐé®ö×h®«“‰ó‡C¡à:=Ò:¥àôàjªrn™«ñ`Àï 6S©ÄÖVéöíÛôHë”Béô*N"®ævµ6Ñð†^WÓøycÝ™Ïç¶··óù|¦¶Ð:¥ärYz•òà<ºÆÕºÄÛWÇ…€ÛµL£èB¡VZ(½T*®¹”S±„}ûöi¦°Ó®f¨=G&“¦!tJ}!]§RIÊ©¾†«puS]m8W—K¥RJkÙÚÚZ]Y¢üš®¯ï«-Š/©mÛ°IÃ^ lÈßÈØJ¾¡¼@v•pu³]J†Ý®¥H$œÍf“Z å ‡C”Ÿ¶âq5[Ѻ®ùv ¨tέW8«€«[àêD<8;3V,Óé´¦«)O±X üŠsB85Û WóGZ ì®®ÞsW 1ÿèh©T"'´ÊCV§üjBÑ~WË71ïjF5LV W·ÄÕ‘áÞT*ÅéjÊHùi+W›Œð‡Äùù&ÇÕ¸zO\ããƒ.§3Nǵʳºâ üj3÷Œ‡›áB#^ hÛxõÂüäÍ›×9]ÝÓsò3~è9­‚!1<Äd50Ðæsö6ÖW¯\þ`ee%™L êK*•Z^^¦œ”¿ÎÌ \ÝV®bþ©É‘ çßbèšÒÇùsoRÎþ¥9¾C´óoÌý>÷àÀͳgOõõõƒÁD"Çc±YšÖ@ooï™Ó')åÔ´\èVW“q_ ë]L„67œCƒ·Þ|ãw¯¿~âƒÞ›¥Ç÷ß¿øÚ‰co½yš^¥<¸?*®ÞMUÎ-puºòÆ€mnvüúõKçÏ¿qêäñ'~K´N)”N¯*þ\àj%Wk ¯ \¯¸ZH§ÂüÄ¿ßçr®Î/ÌOÌÎŒÑ#­S ¥ë*lJÍÕ×I¤ºÄÛJW‹¤’¡D< Bë8w¸º ] pµW Á'W@û¸º.g¸lçj"¡õAÑÕi! àDt5)”DªK¼p5ÀÕàj€«áj€«®†«íÅškñü¹ß?öÏÄ‰ã¿Æ#ñØþÄùs§=î%¸ºKX_[~ó쉛7>œïØê¶o½ñÚ†g¹%®öÖ€«÷†+—ß¹éÝXŽEÖ6‚º-uÞ«W.6ÇÕU9ÃÕmµ«7<‹’° Ôy© ·ÖÕÚDBžÁkWÇÒɰ„¡A:w\óØê¼ÃC7xzz6#T\}Mooª«Ë¶¥•¢ “›3ŠÕ,¹I»Ötõ‘#Gä)⢙€«9]Ý ¸6t5g™{âjE'Ë×pµ®qµÔrõuF¢Ôð ¶—gfSÌ©øöÑP¾ÞlŒÝiVŒßÕ¢uájö–gŸ9JÄc›õZúG?xîÙv³«ÕÖÙ‰ì¢ÇÆŠ›ódã©9#§É\ @k¿4\{÷ѧ¾WOüþ߽˯æ7¿Wù͸Úò:ÀÕØˆdÜwðàAÑÌ'ŽýšR^yù%ñé¡C‡êó4:é»Å†1¶µ®–.æ]͈rðì®aÝp ® Ȥã¸óÎ;îºkÿ>±ÿ'iýþûïËf9¤©®æü*ÐÀè—ý‰€]²®¯&ájÚ–T2ö•‡¼÷ž»EþêC©¤ÐÁsö4¢<®6NA¼`2‹…?öÈ_þâ‘Ç„Håßµºe~µ®H‚±y º‚šÙZ<ó«h#]'>ßæéÓ§ü~R·¿Ãæìuæg_ãw‹´{$$Èç’ôØyó«áj=®¾W`çßÂôÀÕÝÀ0\ €]=ÒWÇc›"põ^173ô;qÍ`G¨óÎÍŒ5ÃÕu9ÃÕmB(°æq/Æc^é]mº-uÞpÐÓJWó® ô_%WgÓ±T2¬"òl¬;~ÀFP·„×9»y¦âjR(‰T—xájhp5ÀÕp5ÀÕWÃÕе®Î¤cÉD'¤M¸àj¸àj€«µ\½Q®€öquUÎ[[¸ìæjmÂA÷@ÿ•Š«£ÉD@qÁlî€ßE´N)z ›BÚ¬¸ú ‰T—x[æj!æõy~ÿz*™ØÚ*ݾ}›iÝï[§tz'Wï­«iüìñ8òùÜööv>ŸÏÔZ§”\6C¯RœG\½W®ŽE½.çâV©T(ÒJ ¥—JE·k‘rª²o÷²'¬¸_þÊìUµ÷ŠfoÃÙ×»­a\Ý WÇßš{1“IÓ:¥¾®S©$åT _7ôÇ=éžfv Ÿ4£ýë)h^Ð-®ŽnT±ÚÕÁ€{ue±T*¥´–­­­Çå×ëjù`»a¸ÅÈÐGq$/*T+„³Âj‰<Çȹ‰Zûèm:þDÎsÄ_y g€tuMÎ[¥&º:÷»œó‘H(›Í&µÊ)?mÅïjE9°Ű´æV<›0†š%óo®vŒš{Ñ< ÎFÐÕ\ÖŸ§aè|Ws¸ú*®NE“ñ!êž.ËajMWSÊIùi+yQñj¥ÝÕÓueP\g'jn¢¶_½6pš5ä? þÃd'êÚ‘®]³   !m–]Ýw…DªK¼¢«…膈µ®Ž†7G†n•J%RqBk¡<Åb‘òÓVüºkиbfv5-0¶2éjÅ7Í·!ÎC`¿µé}“â¯*c_p5†]]—sÍÕë"–»zh '•Jqºš2R~]®6?840z4ãjM½{“†D3 56œ†«0áꪜ\-H4®FHâêD<À ñŽŽô9«ét:®µPž•å§­äEQOTÜE=]ÔÉ3óghÈÌHäÕd}Ìo"¯»4“-c ¹ôÖ_3íLºæj)oÕ]­M(àâtu,êë鹯éêׯP~ÚŠßÕRç¨ujvƺÔfŠå(nÂ~Oa”ÃÞœóÔ ”ç¯?2ŠR¬g¢fc꪿š«å- €M\íÒ%Þ¦ºšXs/]úè" ˜“ɤ ¾¤R©åårNÊß‘'¨ eÒI~ƒ«\mÒÕ‘ðæÄøÀ¹so¬¬¬¨éšÒÇÛoŸ¥œ”¿SÏQ»ù¤cüQ¸Ú¼«‰ÍÕ¾¾ëgN¿Þ×× ‰D<ÅbdiZ½½½§÷塜Œ€|ÁyÀÕV¹Zˆùøàý±±±ÙÙYz|ÿý‹'N¼úÆÙSô*塜8•¸zO\MÄ¿wÓ9==rõʇo¿}æõ×_=vìez¤uJ¡tz•òà<àê=tu} ßæÆêŠ£<¦žž¦GZ§ÅIzWëcìXÔ+‚±4®nOW\ W@‡ºº D=5àjhWWå W€ ]­M(àè»\qu$÷à¤æêË$R]â-»ºT"ž*p5´«kr†«À~®æ äwôÂÕ`ÔÕ½—I¤ºÄ W\m—sþÜÛ§ŽûgâÄñ_wöã¹·çr- 1јÝÖ˜p5¿«cH[¹Úí^xó쉛7>œïëèHßzãµ5÷Ù= W³©Ë¹]}ùÒ{c#7½˱Èz7@GJÇ{åòE4&³{®6æj‚~gK\}íêÅ ÏbBðvt¼tÔhL4f÷4fwºšJ"Õ%Þš«×j´‘«‡¯GBž®êt¼ÃC7ИhÌîiL¸Z‹ªœ›êêÊßlYÜ#ŽÔ–®íÆZUM/Ú’mÒ˜Š—«¯aî6)v±z 7PþM8sZçjm‚þÕþÞKW‡qƒJå}†‘÷éåÝ‘’©õë[•ñÆ×é®öYgc*^®6½† 7¦I X[f3*£·üt*Rqõ%©.ñ6ÏÕ’°…«Ë<ûÌQ"Û¬§ÐúÓ?úÁsÏþ¿G4´*#«5¦M]mIcJ;—¸bmcÚÅÕV5¦æõ)¿\Õš}a7œ5ÍrÊ×Õj¨XˆZùörµ¼æJDÞ-®Þð,‰‡|ô©ïÕ¿ÿÄ7ÅDïÆ²a½p^$iRc*6¬™Æ´…«›Ñ˜ ò4;ûÂ6Peoâ<öæ¹xláênW'㾃ŠWÔ‰c¿¦”W^~I|zèС„àƒ«;¯1máêf4& k&ê}G`—c`¿jÒ†«;8’IÇ8pçwÜu×þ}bÿþOÒúý÷ß—Í$Ì|lïBWÛ¥1í±ª1ÙaÅÏÔü±ˆ¸Z³þš‡Ó1®îæˆH*ûÊCÞ{ÏÝ"õ¡TR0üÝb7»Úi£ï-iLž2xÙ㽦ºš'$ξH0®î WÓçÍX,|ø±Gøò<þ¨ D(®îÔÆ´‘«­mÌ=‰WóìÚd@Fﺽ\mí<˜_L|¾ÍÓ§OùýÔAüÆæìY2¤¦>ZÒ˜M}ã³Ñüjó©ChÙ<µ˜;ÜÁa :`H3f±v©D ŸKÒãžO Fc¢1÷¶1åš=Mº­çW‡×ªÀÕÝôó 4&so³mÕÒ¼*évuMÎ5W»«ÀÕÐ ÙÂÆì6ô»º*çFW‡×4Ùqu2\™~Ù,f¦ƒ~gWõ:Þé©!4&³{³ÛH'%®æð­º«µ úWú{?j«ýÞU·sNˆntIw #¥ã øœhL4f÷4f·ºú#©.ñšvu³ßÍW=îyߦ£ # œhL4f·5fW‘N†;ÒÕWÃÕ`#WGÃn¸ÚÇÕu9—àj°›«yøWú*®¦Æ/NRW“BI¤ºÄ W\ ®€nrµ«\ íãꪜK¥<\ vsµ6¿£æêP\ØÀ‰ÄÕ]âm±«cÑõphÍï[ñyWè‘Ö)§W·‰«£ÏæÆ²Ï»–LÆ·J¥Û·oÓ#­û¼nJ§WqpõÞºšÆÏkîÅ\.»½½Ïç3µ…Ö)%›ÍЫ”çW³\rUi‚«#aÏêê\©T* i¥…Ò‹Å¢sužrª²O¶ìI;·f¿ÍÞ »üú«VUƒsw¶85´ÚÕ597ÛÕ±èºË9›I§hR_H×Éd‚rª…¯Ñíû~W`½«9ø}·*®N„â±M6~ïÊŠcžÕu-ÇãñwÞyç…^x÷Ýw‰D=}kk˱»{¹té’øå) ”Ÿ¶bŒº¶ZΑ¼®Þµµ{akÍ‹j~ˆ0Óœ- ?ƒŽvµ³†•®׆o”Êsó’‰ÊrüøñÏï^Nœ8!¾DyŠÅ"å§­øÇÕzU¬(|1 õeù^ÔÐðÞ›q°šg‡]CÎr``WWåÜlWô_K¥’uW÷ôôü·ÝËÍ›7뮦œ”_—«ÍŒ« Æ[<Ô4¹žVâŒXþ!Â@ìÂÌç :ÎÕÚ|Ë}·~ÏãêHÈ32|Óé\M§ÓñÊ"ÂóÏ?ÿ@myñÅ)E|‰ò¬¬,S~ÚÊòxµ‡´›¾ö$^m¸üß XõýâÕÀ®þ=‰T—x›êêhØ33=ÔsãJÝÕ¢®‡††Þ{ï½ááẨEW_¿~™òÓVœñj]ó@ô†; Ïaó8?ãóDš1D±p3ÕÐÜD>ƒ' Á¨6b ®ÖëjÂíšûè÷שּׁ8’ɤ ¾¤R©åå%ÊIùÍ´C·uÏ69^X€¸ºT*DBNË]®öž{û C×”îp,¿ýÖiÊ©¬†44ç][ :ÛÕu9puÐ縚ϥSñ@,²®‰Ç½pëæ¥ß:Ñ×× ‰D<ÅbdiZ½½·N~âÄ«ï¿qlltvv–/^|ïøñWΜ9A¯RÊÉS Ø”¸Èe“¤P©.ñsõØè\6‘|œÕ‹F<ëžÅɉþË—Þ}ëÍ“'N¼üêoE´N)”N¯RœG@g“|ÙLœÚWý+ã73éx2î‹‘`¹ \÷üÒÂøôäÀÄX/=Ò:¥Pº®rÀ¦Ä_:%BI¤-põÔÄ­t*–ˆycQ^¢‘µpȹé‘Ö ”6%.xÓ©()´5®ž™ê] ¯à¤ò÷¸QR¨QW¯Öàrõüì`*‰Ç6ñ‰øbäê)”ÛÕU9W]\­Â±m(°2?7”J†±Íhd 'Bl3™‘BI¤\®®ÉYæjm‚~Çâüp2¢ëºþ/ º!¶Nò$…’Hy|«êj‚>‡cq4Æ#p5èqut=BI¤ºÄkÀÕ!¿cuy<÷ÇhHvàf-!øI¡$Ò¸Ú½:™¼BÄ£ë  Ë‰•]í%…¶ÈÕÎiÚ],ìÖ5纜Xd-ó’B[ãjk&Û Wã]tAò$…¶ÀÕáÀʦg>ñDÃ.]@·*ßRƒJ"m«½ëóå/C.®9'*D+aRhk\ð.F+HÐ €—“äI 5äê|$¸RƒwŠuå5N|¢=TîÔ¡cruUÎÆ\]yG€¨Àˆ®õ ªÕ\  í]®ˆ A }¨Ë®Û¹@W\ `o] 8üÞE{€&$LÒ¦)WVªpoH;u9gâBäã·hBÂt9§Iž:,]“s©hÄÕ~ïÒÒâøÖÖV±˜M§Â4!a–J¥¥…1R¨YWóáX …ÅB6óà¤Xȃ^R¨^ëÖ\í¨¡½IÀ»<:tm{{+ £å€]omI¡$R>KWålÀÕþÍÅÞž …\:W€RÉp>Ÿ%…’Hù]íqMË\­s®s®^àT.‰ú¹“É„W@ÛºšXwÏ`\ÝÙìÛ½ðä·j¿-Ûª“N®X¸Zmh WwU÷×´\ b  †jÒ”†ñ6û)¢<â:#c[Î*1^×[¦á(7a—f¸Ñ4Tq«íîj¶$ùª™Èð^“öÎóÁ™SmCv¢ÉcѬ6çáÄ@àêÎWk:V׫ìœj£Y ]m¸nü®Öõ€sw¾'Ä@àêÎŽ¨ Añ“¸ZŠZ9Œá´ÚV옉f•ŒÉS­pþÒtÕPoHW\ Wws ÄØ`ÛÀÕØRWdƒ k&cl8mlGÐu»Zò»Ååpu·Ìá „šÇšÙ{“âÕ†c üoj͈W›|§ötuUÎ¥b®îÚùÕõD51šç5CåŠ{×1<D3§®y jhlb ]îêP`Y$Ìs¾·çýŠ«CñØ&]BŇh`Šš«ß'‘òø¶.g¸¸ØÎÕ<ø6çoU\J„„Ø&N’W“BI¤ºÄ[uµ¹ \ íãêšœáj°Ÿ«9ðmÀÕ`ÎÕóºÄ W\ ®¸®€vrõR ¸ÚÇÕU9ÃÕ`CWkãÛ˜»Õs®£®¾H"Õ%^¸àjíæê}²…Qgö«m‹-ª­Ùøü‡ÙŒãå©^3*К Ò@9-¾¨Ì_b <ݼ•5·EßlWw˜ôºöݤyg‡³äîquÝ{¶¸Bšú&W﹫¥ï #pŧŒ X¾¡â&ìÒÇœ‰ ëj;â)\ï®y^•¦+V›]CÍB8—q¾4«­XþS£V8ûXxêÉ“Èy¼lW³¯aþvP;ÅŠõѼÔÕ>8³/6½¶æHÞ–gïN×õÆÿ†Ûþ®–Û•á[µîÏ–{_š»Ó›¨YmvNžƒÒµ ýyÎ…™ãå?4Îv¶äšá¿šz…pºÚªv`—cà"Ô\1Ðbü#yk[^sp®«9wÔæñj“]C¯«ù¯þÝYÒy›ñÓ€«uùÓL׳ÊÕfÚY³Ûrn®÷‚ä<‰V½/Xx¦ôážhFžÆÎ‘á0‹Uï;v‰°ßèzW{/Ð<›j­ªVˆ®ˆÞ7ž@ÉMºÊÕü× ûŒh^$싳ÍÛ†?ú™Ù\o D× VWG3àjgÐp „¿;ÞÕÞݱh“ï݆{„áaƒU1W[5"2pM^ºÖŽ–­6#bÉ·Ì–GŸL~ÎírW[ÑõÖoy¼Ú°Ðøß²ù#´VuÀˆ›üšÃð»°ùx5gü¿âÕ‚óMJµ««ƒBlCŠR¼ºš.Í#Íܰ¡<›Ú.ÔJ®?2J“ïŽ?±aý*»ð†WÍoÂØ/û\(¶O•4Oç™U̦X½%³…}AòœFÍ ´˜æ5làå¹f4N~ý4¬0ú8OGccÉäߣ1pî%™ µƒ«Û]×v¹†qaÛ p5\ àêŽ?jµæÍhÕ&í®€®¸®¸àê.wuë¿”±ã×@j“úÔ¦ŠµI™,‡=+² ëϘfiÕNÛäÔ´§.Ì\ W[^gSíåj3½rÏ]½WÞå®îìqµÞ9üòGέËço|«ê)ÿí€æOZÔj®™b8‘ýƒöÏš­Áy‚Ôê©·ýÍ4µZfž_ÁðÅ“¨«þŠÇÎs9µÃ¡™9źº€®.£ye2~ÿÂ,ör5ãGOš?;b|ä)Ÿÿsb3êÉó#5öÏÁØ+Æ ´¡Þöç/Ü|û›ojceɹି®Ê·Û¡YØÅ \ØfÔÁ.ÐØIlÿqµy±èò¡®¢,¯§jpöA]]C×§]kß#Œud3­jæHMÖÁÀ¹àyó2i«C³ê{k6eë ö(¾+qÞªBí×F­qµzêÊÉ(œ=>Q»ÿ‡2®Öl 'H³{꺥I3dÂÔìOÜœåv5ã'x{{hžbv°ÖÕ<·CÑ{m=®6ð¶»'ãj ‡†¢÷C‡™ ˜sìgþ¬5ïsM ê`Õx•óüšìá¡™?ÅÖ~¬02pvU ÄXÌ­ñjk]­7\Ünñj«b œß;˜üPl8^ÝŒ6#^­ùJ‹l`y Ä’3b¡ìèjÁÐ 6­[òßÒü<Í¢&¿šßÛy šŸ ­[âð#¬w>ÿ Hù+ÆyFöðªü16<4½]ÕÂû ›¹2yzG'Å@0¯ ýhW7û–†:A±žp\ ~c®¸®¸àjûºÚÀ÷MM½;0sîì~jôþ0ÜÚ[áñìÔÌ-RÑqàê½r5€«[&íVººyýºîW+þœÁÀå³Ê9gž36ἓ*Ï&ü9ù«bò'-&ü *·uÕ[ç­hå§ÆÀ­Kš};MöQËïGʾŠÌ\Œ»R0~o¾u¿Þáênpµµw#´ê'¢œÐûS;ÁôM;-üíªÞV2ÿ b½·¢5y—ËÜN“ÇÕº®"ó—U+zÇêÐu7Œ«ÍkÖ€¬¬µŸÉ›Žš¹é™Ï¤&oxeíÔ{6 œ]—Š®©}âhAÕ>ÄqÞ\0t'^¸®n¶«ynZØTW znÂyßHþûšŒ´›«›qKOc;jª«u]z]mø¦¸p5\Ý^ÝTWøk3“ÿwfU DW fb솿²A¼®nÒ<Aÿ_{°§…pÞÑÑäýW9o¡i`ˆÀwT]wtäÜ–óû5KÎ ÿßÎêý´Þ‚Ûir¾s†¾ \ŒË©Åó@ íŽ`jqgìtᵊK ®†«ájÐæ—+®+ünàj¸àj¸àj€«áj€«ÀÕWÃÕW€«Ûçêì… g_ý·'_õÔÉcxÄ#;òñäÉW/œ?ërÎÂÕvÄíš?÷öéþ¾ës³ã€Î†zúùsgÜî9¸Úv\½úáôÔH8´‘NE õtêï×®}ض®æ¿;n·ÝæfÏå`À“ËÆ v'2^âOä|•]åÈ3×oËÉÈ ˜ßªúÐJ¨¿S¯‡«mÇøØ@26ïX[¸Z.XéS¹®þQËÚj°'PŸlçç­ÎùÿE±K\-CÊ_åO”kPm/œ‰üC\y•4]ÍÈ@ò ÏÙŒPO¡õçž}úÅŸµµ« üRçý'…ÜÕ -³ÇŸ<‰ìrÌ'ê„s¬âHfmE °.^™Oÿèh=ñ©'ŸCÁM[«ájK\­™¨X¾™W[æjž Ð$<(šùÔÉã”rüØËâÓC‡Ùh\­6œVû«>v̤c -s5;ð«8^e¤0Èìq¯IW7#Þ€Uäs™ÜyçwݵŸF×û÷’Öï¿ÿ¾B>kkW›Œtj¼º®6PޱÁv³ÇÕp5hs2éÄWzðÞ{îyø«eÒI{}·¨9ZF ¤ñjµD½!nÄ@P‹„Bôðc<ðå/yüÑxlgW7ˆ±Åžl-+r³çr0à1vWgÿ~hÕÝ¡ÍüŒµåhþM nˆ Ú êï7{.ÙÎÕÒDiŠtìÝ0×Ì ÀËŸÊÕ Q+M±Å}©©ùÿ-ÂÕj6VüC1ÍÖ€«A[!þߢ\-OdKX-Q1ƒ¼|ÎMä•T+] ZfNW[û‹ ª¨ö”?‘ç­ªÿ“â?9b\ ZÉ /”I'íõÝ"c~µµ®V›Œ¡6óÄð<µ÷ Ff9c£MW«%ê )[¯æ¯\ ì „èáÇyàË_<òø£ñxŒR\M#4›þn±m'?·€‘‘ÞfÏaxRsª;0blˆ®úðÏèS“3\ Z IúýÞÓ§O¾|.!Ÿ³7:ÚkGWw³¨‰©ÉhÄË€Ó5ù“å/Q§^ß¶®Þ§²à~ ›ËÎÕ:GÒ9™vAñœ¢Ÿ õqêéÎÕiï¦÷n²#>ï²Û5»±¾èl¨§û}Ügpÿj¸àj€«áj€«áj€«®†«®W\ W\Ýå,-M_»yãÖà ³¹~óõw¸ÚŽ,/ÏÜìè%öíÛ'®:êéÔߎ™vvµù;ìñü‹í¸Ùß×?<ìv;¢ÑAG$®:êéÔßoöõ¶¹«OI»è^\^„nŒ@ÇC=ú{ßÐM]­öÇ^І%Mgü-{Ï(<¦ôw½ŒÌæ]½â\«èWS§¡µ]mæÿmÕ\Íþ»C†Û×Ù™áj€È /õäbb(¸iÓq5Õ¬ÎãjÆ÷˜Š¯ÂÕ“ÿ`~ðàAÑ*§N§”ãÇ^Ÿ:tȾ1M1ò+š=®æüj®˜þKÜÌî¼óŽ»îÚO£ëýû?Ië÷ß_!ŸíTWëNó¯#h*™tâ+=xï=w‹<üÕ‡2餭¿[dÏÊÐŒh~‡hlgQ–ºz® “"!‚=üØ#|ù‹G4Qн\ àjº#’ôû½§OŸ |ù\Âvsö€"ƒ#CcSSÀ&D‚\-®ìK"ÍåÒ‰D¤!z:õwêõ¶sõ>¥¥«\ív/ô ŒOO9ÝN—ÛI‡ïª¬: êãÔÓû††ÖlsWËÿoÅZWÛ‘›=—ƒnÏ@—@ýýfÏ¥6sµGJŨÕGiJ}½&sOC";§ô)cŠå3ö./Q”|¿üŒ $a\Àt Ôß'Æm@ÚlsW³ÌÌΩ˜Gí ‚]¦® 5\ @'ñ ÏÙŒPO¡õçž}úÅŸµ«Ù+š‰º ä,J×Þ53ÃÕt'@5ÒûôŽÖŸzò 11Ü´«QÍlCf~WË·R,®þóƒŠ9uò8¥?ö²øôСCvW³Ç½†»ºÆÕìñû®ÈþÁ—ÏÙíí$W3¾ ì$¦&û£?.o:L×äOz”¿Dýz}ǸzŸÒÒ‘®ÞÜXr®NSse31\át0ÔÇ©§;W§¼›Ëél|Þ%·kfc}ÐÙPO÷û–ÕTW@ûW\ W\ p5\ p5¸àj¸àjíéêhd-pnn,±¡<”§W·ÞÕd൵Åx<öquÙV{¤<”“òã àêVº:t9–§·¶¶JT´ÖByJ¥å§­ppuË\í\‡ƒ¥b1Å·®C!?m…“€«[ãêpÈ=>Ö»½½Íf9]M9iN[ѶòãÒüŸD]¯òÿù#'†kbr/œ%[òd¶ ãÀÕÖº:pö÷]Éçóét:É\¦¦¦><;;›Édr¹m¥µ¶ÖŸ–» ®t°«Ýn÷=÷ÜóÇüÇßÿþ÷ ¸ZþWæœÿrÛð§ì 5ÿº‘½ û)¢â??j–Ìs¼fjÅØWLýïìÜ|iž;]‡@·¹:¡²„B¡¿û»¿û‹¿ø Òõüü<å4ãjÆ3†£üê-„¿@c‰VÕd­ØoŽjml¬ùÕ^Õ{–èrW ‚pøðáÏ~ö³ŸûÜçúúú(Ť«5-¡wC]‘ þ½ˆ™[ëjÃï V¹š¿ò¾V°êHèNW///ÿä'?YZZª»ú—¿üåç+ËŋŔf¸Z탭®­YˆÚ&ì5?­³Ë±ÖÕfj¥ùª.óW†Ñû¦€èrW§R©x<þ«_ýê _øÂƒ>¸¸¸HOß}÷Ý/T–×^{-^[(g3ÆÕ&ǙƆ‘Æ‚*fê`Õ¸ÚÌW“Œ:› ­»ŒíºéêÍù¾r¹TBðEÂn)~ÿJo梁«WVVD;àb™Œ@ m«ý› ã#×Òi!Ûˆ„\Rü>Gï­FWÓ2==ý«_ýjvvV-¢«i+Ú¶¡4Ð1”ƒ hB.!º‘JÅH¡$Ò¸zbìz*GÖåãêÁþ+ËK Ùl&Æ·ärÙÅÅyÚJ>®Þ§´à}`ãqut=•ŒB[ãꩉ›´;Úi8¸*%àsLMô¾sáH$œI§ZK&“‡CΟ¡­hÛ†Ò Ã m&aRhk\=;u+™ O$äl`Í5Ósýƒ3§OLNŽ ZËÄÄØéÓ'(?m%/ :ŒXÄCò$…¶ÀÕïâÜt_2,»:¸Ú@ÈïX]¿uãƒ7Ïžxõ•_°¡<”“òÓVò¢ Ãˆ…×ñ)”DÚ‚qõüì@"î…ÝáàŠœPÀáqÏÌÏŽ\gCy('åW,:ŒXÄMò$…¶&²´0Ê®ŽWÔ4ZfCy%@‡-ÿÆK mI dÁ±8B»‹†œx—~"!§ó’BI¤-pµÓ1*T~¬à¤ìêè)´5®v­Œ Ñõhp5pà$Zž ²N m«Ý«±ÈZ¤<]Ѐ›’')´®ú×ÝÓåßKWtm]N% â"…’H[àêµ™ò‹•P`'b„ÚWû6f+W/à¥þxÛ.BĹ2E5ï¤ÔuPp5Ý%êÍùÅùÑ­­­õvû,TÛR©´8?Bõç=Àb¡ÝªXà<(¸€ncya8ò‹…”Ý–R± øÊõï $]ó\ @Wáß\¼²½½Ífmçjª3 –©þts€<WÐ…‘ê[=ïçóùt:ä^öÕ–¤éÅL!™L&—ËQý^ Ð’ãµä àjàj]v5¯¯6tµÚÂÕ»¸Zî«zЏ"}ª84•&²Ÿî‰«5ÿèšwPp5ÝìêÇBÎa¼TUš3QñUöBuÖåjóhøè¬=(¸¸Ú¼ÊxÕÙ®æo¸°·®–.Šér×)nbWKA³àj€1W§R©8ÇBÂQK‘¾$Ϧ–AqsÎ…êÌïj ÿH›tPp5pµ.›éZ—®`k\­ë@Œ%ÂÕîN&“÷RÿPßÈ“GL©§Kó(nÂX¨Îü®¶öGÇ“hò àjàj-Ísu›\ \ WÃÕ€6tuÿ­—–²ÙLÌÄ"íkÕ’ËfËõg»šÿ÷©/­;¨\Vó àjº ÿæÂäxÏ;çÏD"át:•°Ï’I§ÂáÐùs¿£ú³ïÝd£Ìd¸ ®  q­N\¿úîéSÇ&'Æm™;}êUª9Õ¿cÿ àjº€wÁ±8Òsý½7Î{ååŸÛª-Õ™jNõï˜ä?(¸€.$è[\sNÎM÷]µ T[ª3ç¿Úåu\ @×;ൠ„Öþhøqáj°p5ÀÕàj€«ÀÕàj€«ÀÕàj€«ÀÕWhÖœ“p5´¹¨/¼ýZ2ûøãÑжx\S$êl6…¦€¶WÓc&“ 7C54´›¢ÅˆÇ³äóyB!Ÿkuγ¶ˆÆ€ö‰Q¯»§h}yiÒíœs¸Ý«ó¡ßå\˜œ¸56ÒƒV€vˆQ“IË«« K®µ·?ºöÿsØS endstream endobj 775 0 obj << /Length 2313 /Filter /FlateDecode >> stream xÚµYYÛF~Ÿ_¡·PÁ¨Í>xûâ8Hœ­xÌ0%Q#©ððŒòë·ª«š"%ÊñÞõUÝ]]õÕEù³û™?{uóÏåÍ“—ZÏ‘„*œ-·³HÍ" “èÙr3»óÞÏMàe]ó×|¡¢Ø{^­»}V¶óEà¥m^•·4ÿ6+²´Éh E(ÔüÃòǛ˛?o$\åÏ$mDäG³õþæîƒ?ÛÀü3_è$ž=XªýÌ„1´ÅìÝͯ7þˆMÿŒMé _GÄæëí|¡ÃÈK©Ù¤-pÓÒ L÷õÖUÙ¦yÙð|Uò¦â°KKxW üû^¾fê¹ ¼]Z§ë6«x¨NB/o›óS›]Õê¯xîϹô½®j3;{9_Õî˜ ›ëÀ{<ÔYÓäŽG´J×sàãÓ< ¼E›óä ÂXH)’  W_p¨ßËĽ@â'/Ãh ±P‰D8ÁîüÈÁ€"J»õ"+ïÛhYÞüÀ_ïáWND"ÐÁ×û½"‚‘.A&”ŽÄòÏ4R€r2‰f,.­ð€#ÐÕa®}ïˆÃÐÛv屘y{$м¡ö¢N¤ØÐIsóήɶ]A¤Û¹ñ½ª¦…M•—÷4¿¯j¾v]íE¾NI«@5Vb#@^Aâ½Ä[è `ÐJjÓr!„Œ±…ÍÆMNlOéö ¨ÚuÊ„¶ŒØ¶Íx%m&T ¥ 5–ðÃ.«3Têã?Ž··Ç“fÇ&ˆH†n¼gê\áÇñŹy³Í˼¥;ðôÛôv…í•›¤ò…J’3h%Eé1þ» ¼ªƒÇƉWméÝÐÝTÔ–U‹Ø+3ÔNµ¼´®3PõS¦ÎF|„s¸S‚> ˆ´×'‘ZкSªT%@£±ØËv|Ãã‘Ú ©ånQ¢j¾ ßÜ#³Öž‘$ü2Ò42•×ÙºeÌNÁ¤¤`·$ò9‰……m‰= úÝíÙPçjN2è´`•ƒñþ½Ëø´«0¸Ï?ã…H[‰í‹3ý3æÐ"|9>žŽû@Ú”ÌpF†\ÏŰ²v?¾¡É; ì7ø„´µæcÈþ’ L}ŸZ…,$˜­d¯Î…Øó:ÇXöüåSWµóìð“µ(XŒ)'€õè6auFƒkŒ{sF+Ko}qͺŽ~$0ÄbC.㤟€ô0^‡&âÃ`‡^sÜï³ö5møéõÄG€j¸Wm©^ñåZ{ϦN8mHk¾ÝaìKNN‡à°’x,–ô{¸ìva›+ò‰!]‰Ã3çcL"LlÆÎç°*cÝì»ðÓУ¸Œ(ÄðÒ¢³¹’[_Ý&£A»«î¦ø§Í‘˜cÁta§35©ÿ)]ÎcÈï4ϨO˦¿f“5k–«E­˜B’ D˜ôoþlù ņ©Í-Ë)Fع j?\§ŽEà÷ଳ¶#.¬xœ’C·€”;§¼J úa-5…\pfH£>Ä#<}ž;§¼ˆ–­;ÁÎ*£ >âÅèp¾›G¾Ç›>6·h‹£•Ãx…8¨©ýX^ÛN¢Bîüô3¶`Q;2 ~Ca ZŠõf(JÙ`ªOYp0L`Q68‡OR¼ B!UŸs½{±\¾~ó uHÛݵ„À §5kÞ1§ô<$³¬¿·Ð¥š†f¬w ‡êÃENyŒ3KuJÖ¬• Eh¢©üi¨cçÏ¢¤JyŽŒ‡¦u1Á ¤…˜S±}Ad3·žzR¬Q,¤é³ÝoÞ¿~ûË›)#I„6}Öœ7tnÏÜ¿ŽàJšŸäs^W%^8Ifm§«‚÷mrʃiáˆõ¿»‡cÿÆ^I !N9À™o¸wP1÷žõ¹¿ƒQ" ñæ¬Ã5Ì(W`pE]aU`.Y©V‡ƒõN0‘3i»³ÞzàÐwÕÆVj9u‘rÛÉ®!¦éŠ&u„‰Ô7ƒöÙÏãôŸ*ÿÄ÷0RħHÁ\ crœø,…A9¥ ]@LÙ„Á(8•‘{AìIi†SµÊw3P±ï‰*o‹@8¶\Û»'¨‡€†1eîÐéCìhŽe›>Þ:SÜœ‘þ•ÕÕÂ>=.ÒÞ <²{”äЧJ¿–A¸£ûb¨×º². ©âz ˆ¹±§úà¥]ðåZ†`†òuZágcj¤Ãcàð Úk>åŒÀà @O¥°Þt§À‰K endstream endobj 772 0 obj << /Type /XObject /Subtype /Image /Width 471 /Height 450 /BitsPerComponent 8 /ColorSpace /DeviceRGB /Length 16857 /Filter /FlateDecode >> stream xÚí °$Ga¦0vp„$#-­#ìXa{mƒ9lvÁáÕ†7ì]o€mlã¯mŒ,Ð…n FBBIFh½Bƒ®Ñ9£ÑŒ4ïÍ»çͼkÞ}ßÝýú>«»ß{#mVUw¿ê:²2ëêªê?ã‹õª«²2³2¿ÊÊΪÎåÒÙ|Fʯ¿~á7Þ /\Øo ¯;ÉV^ …7Xxƒ—@ÎÌ2 ‡! Õ›½Á:g‰¶‰®aZA(÷æ$ïíVÉG»ÕREÈUÊY3r¶šäUTit¨P(6©Ñ©Ê”x(直é"°°·[a£ªÃÞûuj ìîïÓ¸PgÏ J¯ªŒW=êuÁ’ ­ØI¯ÉS[–¢@(å&,½ðųÃtÅÓ­¬ú5„­v1ÖUýzÞÚj"\­Ij€ÔFZmÁ¸ÕëZÂØ*v²i9S‹ 9â[RsÈ9ÊäÒ¤L–«Lúm£„ó~’°ÆÃ5ën‡„M<|¡Í¾`·£n³sè¦/8cà¶H¸l*a~»-á¼O%,A¬Kê I­ûÀ¬¶ça)ï…|2]ÍåvH¹U¬*vGÂŽt†kë ·ËÃûüAÞ•ÜóÂÀª*].eñb>½[$x ,n\*fvbë…\R\S)±I¸µW‹ÅB:]Ëçõ 1°`Õl¹dl{5—W둘»”¸W¨ptƒ-J˜¤0ŸÝ™êé:z쥟<ýä^záp×k/Žô§’ÛU…Š’°OF$Üï ëx¸Ö&»ªb?;2&iI¿ž¸Æf`%,Õä]ïüÄ™žne~i|t “Š‘ÍX‰§˜OWEòâøÈ@:Ý­–XúÀ¤µr Q&êHD™ÔTìE7˜f¶Ä¦ùƒ“LJ6¸ôø™ŸyÿÉ]äÂGþ4žŸ¾è¢?¼ä’ÿ53µ@Kg¥°±¶püØ3ÜÿõC·]íÕÿtõ—þñš/áÖ›¯¹ïÞ;^|þðÒÂ)ä`w†Û82욇™Æ‡yT|Áô[Ôö|Äû• »~n›É–›K´&¼8mêa²Áæ:=’)±G­oàbÃÀ¥õEºLH¿šßÀV$Ì`¶Éj%O÷°<ÂèÓ}èßñŽ?øÑ#/–JY¡”-ëëË¥ IYó?þྋ/¾òÐíÏRÓYœžùñÿ{ðƯ\uÿ}ÿÒÝõÊüüT*_Y™ïï=õо}ýµ_üÑ#ߨ…@u†ý4(áÚ¸„K*¦Î‡qz Û7ìl_m;­_WF!œ7ðÌôh£ ½»ûÄÂüL:µ³º²Ðß×õðƒÍ&<(Ž*XÉ¿H‘L§R;+r$ ÔÃn0‰gfª%’y‰(“…þÞ–H<øJÎÀl±•eÙ¨£ÄrÕ >ý³?û>qìw#37;Eþ$FG†Mxžì¢kàxô ’B>­eôœ"’jI×À±èº:’V™Œ*d"K¸Õ 60[JÉÙ–çÄãê9V0“ð-7Ÿ¸ì²ûÿñŽ u“ç¥Ò%ΦÓüàK—_~ä¹#KÆIÍ—Š¹®SÇ®»æ‹gÏôä2 #¦®¿öÊÇŸËfvèƒE°0(AörÜÃrb(Ž´£:ßü”T{² ·y¥W]bIÅ{ì*6³±=!Û™Ln{2'¯x÷”ÅÂà^>ýzÞ>°P.Ö›ðpo>›$yúÉ÷¿ÿ}¤Z~øÃêëíÎe“„¥…i¹ “em)— ÍHrÙ„ÍH²Ù„VÂåR^‰¾L¦›2q­¬6ÛøèÙ\fGÉøè0ù«0[ÜTºþá¿M_~ù ôG½…¼èÞt6׎ÈÞ{ÏÒ/ýÒÈŸ|f®T ],67–¿yÏ?|è;™TœÎóÏþäÞ{¾6?{žÒn¸Wì[𰼋ãýaµ„[UÜP+G—˜*^T¼·[ÛÝ­’P®¥²P(•sÅR&_Lå IËä›”3uÄ2…²"%‘¼‚¢HN I@9+ý5"/"äKj JÊ2™¢¡N©NU¢ùo¥\Q ÈT ‚LE‡J#ˆÿV[¨`jµŠ‚ª„¸\m®Ü­´n#n¶[GúTY£@Ú†¬cà00©`[›+b~ø;ÙôŽÌ÷¾ûí¿ø‹Ï>õäáO|âãûÝßɤwdžö ¹ «:Ã$¶­z$™tœN3’Z½3,·_±\—I3’†:^|ሑL´a§†‚•f& öÖ[n̤b2×_wÍ›Þô¦™©q²|`6MgX`ð«'£¿üË“ýè|.—“‡#äõË‹™÷½/ùž÷¤g¦s”ɤܦ&G¯»æŸf¦G“‰m:±èÚ‡n83Ô[ŸÑ‘°ÂÀ-ƒ6®4–+Ë5E念F¯Xw ‘ðÁú†cÜ«XÝÛÚãÕÿWÙéUö#š ê «>R~ÚX¨¸eK½Šz'öÂ^ýÿõ Ò£îö»/ Ÿü„j}=1ÙDEáXŠ„%2„ŠDMœ?]ÊÈŽ™Õí|¹”ÙÈ®Í%çù-²Fçª=Í‘%§uäÜà×î¸q}e.º¹¬deqZµ†ð½ïÜ3|¦_z†®å¹fª„óºÖ GØ‘p‘KÂ-C ëI¸Ì8FÁ%aÍÀ…ö¶´ZÛ­Tª•rE(–…|©Ä?&|@F‰Þ˜°4\Ü  ’U)²ûcÂe‰úàpQ‹P§T§¢AÐ ËTtD‰Š P­´Ž ‹ƒÄ•Uiø·uä¸þoM¦&h8øU lS»×W2¿¢D.õ&¼:ÝZm291ré¥ï<Ýu"ºµ¢DnÂÕæÃÈÒÃû»ÕF$sÍ-o¼á:R9W²Ö¡ÛoщDl§y Òxó¤VD²¹24pZÜñ¶[ȲÌ_¹Žt§ÇÎ ÊÿÉćã Ìvõ—ÿ™$é“¿÷ ò÷Ư\«c6!/«UЕpIG²‡Ç££ÝkÝK;‹d¹TÊÌÆÎ?1ýÄË‹Gs9ñë¹L&+¹Ú@ÂÕòÊÊü‡nš™:·µ¾@guiú_¿wßìÌdM~¦Ü8$¬øªNéaS!ëšY!dÆžpË6Þ1 º„YÆ(šP<,÷f¥;ýúk^çfþur¤×‹'8lMŸ¸ÀÑÙ6èBkÑþÕ¥Ñnô›´|CÇö:ˆz7¸DªÊÊÊi³S#[K  çÇÏÈ MV—gä&¼·+|Í])’ÄȘ%PlÿÿyR9‰»Z#©{@nHXÈ“Ô*d²Hî—š4×4#1‰ÍDè˜íË_ú"ÉËí·ÞH–o¸þj²Lþ6Ì6%'¦Z-êH¸Ô”°Ø§mºWÉËó/Þ3pω…“dƒh2~¨ûöë^½n%1[it•h^OQ)¤Ó‰GyðÅžX_¥Óßwâé'ßÚZ¯‡¨¼T5h86WU,7嬘ºÖ0³t›Ëz>X®)Ëê^qkßXgY×̤S±«Xnµ¤Û=æÁ užÐ\¦›ÙdŠÅžÑ….5‹ì±ë-ɰœ/SCê6T8táxåŽ>¥:Õ:òĆt:YoÂksMfgFßýî_™ŸW®”›ðöÖzëÓÇòïÛŽ=¢ZÓŒ¤V;ÀbGKú[SF²:Gç@&=a |/j ™­¯ç¤4;↦ͮ¿îˤ[>ïVhP_&Y®GB< ØKE3Aù¼[¥¾°«Œdyƈ¹Ù¦L\1°ÆlýÄ`Cƒ]*§Ékšf+—ój»– $\R|*mydê‰ÿôÿôG‡ÿçðZïe÷\ö+üJ<»&}Í—)Äç—sù,¥K\¯D¥žÓ¯=pÿ]ã£ýË‹çµLO ?úÈw‡ûòùlËT:£l¸WãGí*Zôç× ÑN'6ÅàNÍN_Û)j M:Ö ×Ñ›e\ÿ·&Óæ•V–%‰Ÿ–õZv7êúªô+×a²e³ OŒõ//Mj™™:ÛhÂ9©¬i;ÊHFõ#™>ˆ$«û°›4¶ ˆdqRK‹Lt»Á¶õ+‘i5[Ÿ©ÙêÝ`•c$Ü*äÓK'#_\þ­Ë?øðo‘…ž}0•ÉÖõ›««˜>4A´PÈgûz»îúÚ­Ç^zrêüÐâÜØÒü8azòÌ©W_xàþ¯f2I7j{¸}*.8¥b·ml,äŠÜeÇ'¥GؘDŽM¦ë¾õ×»a^Û¿Å`s.Üþ~ꈥ>¶ñìƒrN2ݽ­oú­I¾Ph6᧦ϟYœŸXZ™™V4á”4ÜÒX”sÌ”‘L‰‘ŒË‘L·D’Gƒu¯Ø´Iü™“LÔ2µ¯°®cú=Ð9£Ùjòh°fM$\Êl$ˆ{eˆ‡I'(™“Ñì‹F>Pñžømu{k㉟<öÍ{î¸çîC~ÿ¾o}óξ}÷sÏ>¹½½I:b¡¼êÍ’Šóœ*¶Ñ1®úÊÆ¼Bné$Û JÇàÓh'¦é·6[ŒwœÁx¨A°T+JÌîUK˜@Š…Þ„«‚øxʽµÖ¦´g ñq…‘®0ÉÄIëêK˜°'ÞhT艩ÕJÁ*$œ6Ú \Jÿâýÿñ’»/¾ä—¼:וÊäšd2ÙlN|}G©(ÏUÓJø W,žÇý]r÷T*’ÉÍÍõT*Q,È­›8s¦R0}ë¦'½boÆ(<³q™ú² ·µlðTõž]°(Ÿf’­‰r©Ö¬V[îUBô(þZµ¢i‚ôXt¹¦±në¿bû"›E">¦]-é¹7¯jÔd3™ˆsöHR]Ó¯ZÂ⸄h¶š‘ÙHâé&î•ïF% +=œ6PQá@VqIj&»{»â½0©ÛÚGùü¬âvÚØ!Ûq²ƒZæ| †5‡3Ææz¦Ï­k(^kîm}¹J¨¸>…4á {û{5Y¿Ô—·¨Û—ü,^=’})}ýªQ6vÒÃe²/ËdOêf—¼Ô¯JÅR÷@|1‹”¤ ɸ‘u[—Unª8MéÛW±]¼S±½c‡lìšËfïÕd¤ËÊ⸹(Þ­N6ÄKÁ̽›üޤ¹{]ší`Y¿½™½”~o«c$\.¦ÊÅd©)&S;›ÉäÎz‚ >ˆ-=-=Q¸[%Äcâ³x±èJ|›°#l-EE··–¶·Ó‰­Í…­ Âüæ:anƒ°6»¹FþÎm¬Î®¯ÉêfÖVd¦W—§+K“SË‹“â¾âîs›Ò¾­»H Óš¥ï%—Î/‰ßNN,-ŒçÇ$FæDæg #ó3#s3çæ¦ÏÎNŸ›973}vfzxzjx†0yfzrhúüÐÔùÁ©‰¡©‰ÁÉóƒ“ç ãý„±¾q™QBïøHÏáÜiÂè¹îѳÝ#g»çÄSgϼFz•pfèä™ÁW‡O N ö^‘8>Ð÷²Ä±þÞ—û{õõŽöž&¼€HE’ UK¬]rM#Un°ïx½ú œ!•S¬Ÿ¤–’º: ùthPÞà¤\™‡Ï¼*ÖíáS¤’Ÿ;#Öö‘a±ÚˆM {äÜiÒjFGN‹­c´— 6–1Ò‚&ÆúÏÆû'Ç&É߉I©¡‰nrˆ0-6CÂ0iÂ3RÜ[«i¹¤ýÎFççF$FæÇæH3¯·w©íOH8O 2Ù\ØYŒ¶K¢¸dƒ›D¿­ˆ–‹¯&vÖñõd|˜ÚÙH%6Ò‰ÍmItò¾dǸˆ´otUÚ]ÜWRåšlN¢Ð„¤S"U¢VO© ÊV²®ˆÎp„èvñ…™­Ï˜dï.3xYz³GW)ôè”oz¤t ä§{h=·=Ýž˜É"íeæúï7`x)®úÅã<¿\©÷cî.õŽÆWxæ´4f¡hž+Ô¹=-ü2’Ü£ígptt×p°—w¨A¯Î;8ÂàÕ0‚þ`mÁIšÖõDÂL*®ZÅm›\lÇH2ãOH[Æ/jå—­ý¡]—ÅËà^>ý Öo¥Mú¥KØe2-”¸ÉZ¤¬%ׄýÇMÌÑù]<ó_Ê+2Òúåu©ž_ÊcÁ‘ß•ú¯¾‘©±Â|šTç×ð§áé´Ö4†ÊÉRÉ[[;ZÐ4LËmœS&J©å‰½•°oT\¢©ØŠ…öÛØDÈî0å6sÕnç90šm•-oË|g¡â”x]s¯`Ó½9çÜ<ý¶OÂ~V±µŽ±;6vRÈö\ªñ©†WÑžI›' 5kU¹fÖõ@¼î¹×Í®oPõ«ð^s²Tl¯cÌmc«Ýãgcdp²-[—3ÍÕ¶Ôm®S5g°TtÇ­[Ô©*Š×÷B¿M”SÔÚ(a?©86¶ÝC6p²³ZvXÑþÀvQ0(×’u-öxîÞ`÷~©n#­),`w†ô~…DõK|T j&í«á¼î/ë™còÔ’)-cûÀÀÂ5ýÀZ– æ Cû¡õ\ß–  Р?MÆ ó<%&l#~’°ƒ*N{£biª ¯mÙ'Ì:ÌŽøÙWƶ”`þ’©:¨\ëò‰W°"^3÷:«ßthôëW ŒŠXT±ïmÌ)äv8Ù!9;ãj÷±5‡eëŒu­‰7¨îhîMûMw~•°‰ŠÛÓ1vf¤¢}Bv^ˆƒÒµðÂô]˜·ÊõX¼ÞŽ98ØõMûStþ–°ãcžÚØ®ùlQËn™™õÛC_zÕMÁÚömÕð4kÖµ/Þ6»7(#A–°ãc7lÜ^!;×UöÔ̺=©µq:¸•ë™xýëÞt ÌfGÂ¥B2—‰I/½ô˜M5‰RÜl9IRfÛ!¢4R¦ÄtI;@c·xS†˜qz…q¬ZJ•ÜÙ†ÃÙl•M^GžK‰˜øÐc “ƒF·V …ìë …ñ!±¢gÎgã«+ó.ì‹¿ôT)ùœšpkzõù‚;…]`š ̧ÉíÇI8ž1ñÿKFzòÞêÊq£7Þ\_H¥’丂Îs1þ¥b…¼+îQ0¡ÂK‘N˜‘g±›žG÷ªKuž¿õK/ćâ}®/x áBngrâ,éÿ A+(6vMÈî:™AËåÌj逻‡ÕÒc<;®Ö²Ä[ ¦RUñg—÷ˆ‰!Ý–p.>Ó#þšs¥(¶Äü+d×Ì)g[~¶eìvã\®ÈÖ ëv–x[$L®ÝU¸‘wdö»½s²%?»"ê@a¡¬¼?¡eˆ×ÿN6èh ;!d÷Ü-ÛStP¼íTÖÚ{‚Ê>µn%¼º°$áºu!a—…쉓}af&]GZ‹ÐX6n~ª]pÿ•°gµËFèK8'as.æÏÔÏ„ì9>“†äFÃM·ç?Tªâq, Ÿˆ<0‡Q!á²ü¬•¤r¢Ó«þW¹²ù‘*ÝíµÑE¢»%L ñBÂpr˜üL‘°V’F ôO£eܦ…u½‘p©”„r¨œìœ¨‘0×fôíVB°îvx%Ü´î…}HØ#'‡_Ë Ð%Üú×VGtüÉ`ÝvH˜…l:6<$IX(”KYÐ gHYЩ¿­Ñ~¤û©r3ʧŒÛ›·ÑVWZÝFÃoP$ õCr†–Û(a#Z–ª ›šÊE£†„CëäŽÑ²jÌÁèS;=ayYµ™Q´¦[v¶ra]H¸³µ¬gæNʶdkî[(ÖÍ 9C¶ð-$ Úifc9ÃÏ¡5-“lá[HøÚÏP´ß5 ÓBÂp¸ýÌ`i¸Ú-»r8¦ ½„ a(Ú®®C©nÞŒ[,^TË’pݺ0pÅÕ¶ííœÊ>*$Ì*as²éèðÐiIÂùr)€†Ð·8œb ¦!áÓÄ\F…„HH aH a€„!a„#‘e¥î§ô}¶dߨ4*§N„ýT1”¯°T掫úù!›6ì`#jï©÷Cuò„åÒЖ‰³•ÖÙ2÷•Ìä^H8Ð nW á¶KXùQó‡ tÿµ¶™îya?¨6òfŽTÛP©{hm<ÚØ(‘˜¦Š^8¦] ˇ°\€¦'Ô4BÓz¢» åT²—*ýì°œ}›‡Vþ@ %ºÕI·¦Ùo,g½¶X>0»„)¦2ºÆ±lÆ?û.FËŒʾ\ ì±Ñ«¥ã‡p$ã\gŸeKv8že µˆëÐÉž6Gš€îÈ‘æÆ(„Ž•0¥BÒ ÓB3tjGkÞ¶&aÏ®&vîL-ÂN©²G`9 ì§Òæ…›·ìŸekUב´¹'aÆc…JÂû{ÅüŽŒ} kï8؇#<0ý A—0ãp„ ³ß›s¥ßôvž¥Å™\¸gBÆáW}ËXònKX×öÓÌ^Ç‚"á¦u—0{O˜ñSÇ%ì î|(a®ákMϽN»ÛúH¬«&tOt¦Çûž°é¥+ÍáŽ0’0 ™Ôö™Án­„y[P€Æ„=°…1a ÚtéŒ#œŽ [h¼Œ ܽ1aÇíà˜p€†#G§Û%aâFbH.£¶QÂF÷¦ßz³Oz4º3¢”ñNŠ%¿ì÷Yºÿr8XVÖ¡m¼ß¿ð2°liA®ΎpéÐfGP.jvšã›Í^Ç:Y 4“x‘}¤@­»£ò CÂ0@ C $Ì%aÊs¾}Ø÷áYËñkC ¾Žio ¹ŽîjRyO¶ÿFÓÎy'j_ßêg ³ÔÛ”0oAÂA—pÛË3C á²Áˬtß¡gùµŠôIà,3ùŸ,`‰‡¥.{j¹íFÙ²?¡`¹è(/`¤,»WÊloCÕ½Ç1}…©éK&¹ë0ÄÕw¢š¾³L}‘©åB+ó¼y•ýÁ“°J¸ìÜëûèOl•-=ÔéàsÍŒvï9e7ÊÖ“ƒ–Wò>þæRuâM3˱ì,4ŸK°éŠ%Ð…æÿž0„H a€„!a–„ ¹¸Œƒ¦ž;5´îê=eNãG÷²†ï:´„›Ö݇„y"gœW  [“0 éäÖЀ(áJ9_*¦UȽDyAµ²¹†þ/ûJ–x(6Ó©{UT1(÷Uå^¼ñ;[€/Ê¢„‰‰!¹Œê¬„UZP­Ô ÊôSö•ºŸê®¡'R÷S–ãÒc°¿#t¦„)Ý<ûŸšºˆŽÕ[–°åøí PŽ5pEªvÓOFã¡GQ ào ×­ë„mÞM[èû±GBÂŽ “$lN:¹imL˜}ŒÔ½1a®±VW%laLØÂ 3Às orÕY ӿܧøÄt>}Œ‚}8‚ÅÛ”Ù õ9¿Sбì@•@Âö$œ+S€‹Ö/ÑP „¡œƒ„HH aH a€„!a€„†„ÀÞ-ä¢ að@ÂuëBÂà' ›“Nn œ’$œ-“>E ÉeTH aèX òÙ¨ $ H¸i]Hü#aR‰AYÂ¥l© K˜¸‘’˨0@ ۗp¤5°¤œeãæ§Ú…ÐÕSÞ‚rª<ýv:œJù²'û.º[²7FËÕ,§Æfüþ‘0WFxsÚ9îµ™eHö !–p {”5ªN¯ò_ÕiU]»•+UÛëö¥u#1íuSâ±¶»n–uk²ÑŽôëšQRµ¥›l–ÍX²lz:ŒN¨n‹ÖÖÆsdzšxë Ë%ÌÂÉ¥oOo&j‹öó–¤ƒÕÆ4/”êÊ^åØÛû…†ånÂÿ¦×CÝóεÀ ËÅ‚×îF>§¬1J{cÉ‚ƒ%Æ"" gÍ©smy_z»sääZn&ì æ:MWöDråÅ´°ôä“V smf¡&[»Ûb—0ã…•7ýFt åc¡Ä,_wlîëÆ¹¶“kÆÎ<ïp½]ìœb›µÝñô8[åèm„]ÂŒÍܶ„·¸(aíwv^J˜}<Á(úwŽôኄMÛF S²Ü 3–ý9%aÓ“K?¨i-5êëZ¨-K˜¥Ú@ÂMëz)aû×zGúöµ`§#M©\MÀãž0WWЃž0ï–6»Öìóœ[`Ÿëâçž°³·!#asR‰õÁ×$ gJ…„)‘úÿê.S7£ooºRw3Ó](»%’%*Óí¬i®Ý+1;gÍþ¹¶“ZÝÂg¯ôƒ²ÝN‚m¯«Õ†ýìØl¤ìYãÍŽ¡œ•$ü1$—Q—pëˆþ§¼Òоj3vËQZ–6rí5ÅtwÝ]è§’}G ­Þ´EÐ7ã-1ÓìèV®VÃr®)ÕQ;”Â7Í)×Aus¤ÝEµÌ^[Ø+3—„-Wz^šÑ:Rå,tZB a° Ýr>?.$ €„!aèL a€„†„vu0œqž˜ýñvú$:›¤ÏDeœ»ÄoCì”j'|OD™jÅUgèÚ½¯iÎ6H¸6éF#r\ÂÒb ãËz7c³‰yYÖ¯ß$L™€má Ê£ ”Éçô‰ñ\>(gk×XžONÿ—>¥œþ, ïóŒ)ÑnÃûÄŠö”SÆþØ Ë‰`©fôšfó±®x(ûò>cú ‚éCUJ@w] X¨„ÖJ˜·ŠZÂ\Ïl²?ÀÈÛæzz—EÂn/2 Ûi§ŒWËÖvzíGe9ƒö%ÌûxfÉö+èØ›—X rêlÚ)Ë—WÇ_Ý`³J8"Wb¡"y&á\fK¦]¦¿I dðÎ. Ó_já¶„M_•Àò"û.±½ÁÚ„"§äÎ~dyÇo9[8›,ÃÖª=o­öF¦­‰½J°7 ¦¼¯Ããሦu}"a®ù6{Âôñ ·{ÂvÔ爄ï„XøfÇñFGn ï8Ù¹²\«=î Ûéö[¨0–ï5Ø',µ]Â,$wÖú_%J™b!¡„dA»l´ÒtUäº+éûÒa…¨,dÐÎ.¼é´5Ó’±vö­¥Á´ˆ)gåËÀôˆ–KÆBY±ŸV;UÂB¡9U íxÀTŒ”% 7CrÕY {£|5?Umc´—†O?¯„u“mTì4Ý…½}éµö¸ºkÓÉ’w£dèæW•qkEdtNMëKíbÉK`ŒÇ´!˜–€nYY)ýtPú3,`œww–FÁ~B'a\ÅfKAš‘Y—€„A¸Ûµ#}x ™…„†„H€PJ˜>ãÃøHØ ã»T$l&áÍÎ<¬Á>·ÜÎÌs¬„ëÖÝ߯9(aGžÓ,2?ƒ ¡“°9ÉÕþ“ ï(‘<©^V®¤|jº¯n<àÊåŒ$á“Ä\FõX­>AÂHØ; Ûù@Âì¦÷u-ô„•»$¬+a¥-)æƒì@$œÞ¬c[Âî÷Â#á†u÷÷|-aíyf 3Œ¯ô5$œßP.Iî;I ÉeTYÂÙô¦ $ H¸i݆„7d aðDÂuëª$œUøÙˆDCÂä …ü€¦„‰!YDj,asñH $¼ÂeTH a€„‘ðÂâôkÝ]=ƒCƒø‹¿ø‹¿aú{ª»kaaÊ·^\š“Úß7|vÂñ±ÜÒÒ´?%ÜÝ××74”F@@@o –ëîëñ§„{‡†¦g&qŽBˆåˆ‡}+áù…Yœ#„b¹þ¡30$ # @¶%\˦×8)áˆ^À4 ÚÂAqQÊŠ·R±lÜüT»€€à´„ëÖuU %D£Q]K ÜËŠ« xK%@©Š.KØœD|y ï„$át!Wb*aeÝ–—›µÍ*Ä=çíííîînÝRÒ‘Qh‹.”ÅH)+£5ª\+ÿUUEJ‘êžÓS€âÐ¬Š ·ØøP’ð bH.£ŠÞ«eSëuÚ!aú=`X«w*•*•JŒ6Zi´²b4*+Æ:f´@ÿÔÂ)€¦BäªèŒ„ÖõXÂZÕ°;§sn±éíÚ´”ÂWŒ¦ÃÖ$̵YÇVTãáw$Ì@"¶<Ð뺄Ãý]žé-6å^˜KÂ!(FÞáÝ\C Gôž †ä2ªo%Ü!÷5nÜ/„¯-G0Þe@ÂŽ GAº< Gè–ãH&†#Ø‹Fpw8ª„3©u™¶H8Ùf½;e±K8êÙ”‘£i \fŸ c8‚„›ÖõF¦£{_ƒŠ²BèÌá# ³°[î·!a<€€€è@‘0q#1$—Q^kຄ á¦u!a?IØœØRï+’„S…|L‰$áœ#„PKxF’p‹ý~…’˨nHø „ðÿK¸ !¼Áÿ®9+0@Âí’p$ñ`—àÒ9™m>¿Æ[Úõºk´ñ›@Â0$Ü×ÝókdKízÝ-ékP£ á`IبÚkkµé–ôuã PïÅ(ñFÐ-´ôƒ‘0Y$¬»¥ÑŽ0¢„µѭ̺¶1ÚÒN<þ¿¿6ʈéµ¶,g£K¿‘x!aHØy '×ê¸&aze6]ÉØKa'@·ØF6tf¿l9+aúÕ†„pú ¯Öñ“„)F=H=aSµ²ŒSêzÂÀ! ×­«–prÍ” S…\L‰ã¶0 C¦ƒ ,ƒÀ¼·c ã$Üj¿rQ!a‘KØœØbïq^ Û”'%žÎé uÌ:PÂ,#´–§¨Yë'HX’ðqbH.£º-a®ÙŒÃZý²[2 wòìz-rjž0×Ìd ûSÂÀã  ~B„FÂéäª $ H¸iÝ=H|#aâ±Å¾†„ó¹˜"á¹…™'@È8òêÄÈÔJ¹œ%–ë:£²_I’0q#1$—Q!áö²•Þ‚õD­{d•x8p¾ôÒw옪¹»Íx|ÈìVÅ HAQþÕ]Ói•€ã%#GˆóÛ•åXåÈÉñ`IØm†Ï½M&׊n@JLwÙh›NC7ïro¡‰7Áb%.f뎄WpH¸THæ²Q%½ƒCsó3ª>°¬P¥HU=[mWY¹†‰jG£ØüÌØbV‰œxy¡¹FõosÕ^FÛ¨bÐ]DL˾R·LŒ JU¶”-µ Óݔŭ¢(áyQÂ*û )N ×­»·WuOÂF# *Ámɲ`›Ï9;—jBÒÜ\0ZÖݘ²Rû©îöƒ%§ì+U1žÝxÊÜFÞY o®Ok$lN<¶ ð¶IÂÓ\føe—pàF0§âMHšµËº+UË”½´»˜F´)7-=Ê–Få`ZøªÝ¹Î "Ó«IÂÓ’„[ìW,$^`t)1ðóÏ>^(d!á6Ò3¶Õ„¤Y»¬Z©Dw=ewÓ„6庥§, …@‰S¹`t²è‘€ 2±˜tP„­ô„ÛË©³kMHšµËº+Ù÷Ò~ja Цœ½ èe§**úÉ G™Ñ¹¸³öùp„…1áÀIøÄÐr’ææ‚rY»jcÊ^Ú]Œ" ,9e_iT¦…¯]fL(gg¢n G$Vê¸&aå|Smj§=°ÏŽ–„õÎ+‘s$/4×h7Ð]©ÚKƒríš bTŒ+uËD{ ˪ÃJD†Îo:&aI¹[ëá×$ è¼Ð5­ i°Fñb•ƒ‡./=ÚN.ðÐÐ?¶æ¬„7צÕf ]èë‘$œOæ2ÛJ a O£7QÞ)(×ÛG¡ã‡Ž”€*Jœ(ððB×d÷ÙÅgNŒÕ%Üj¿º„{ŽC2º”Xg8ö–®á@ xmhþÅîóç&—’°þp$ z>01°PÎ:(aBCÂË 0^7 1I¸n]Hü$asâÑù¾ž—!a$¬‘ðËÄ\F…„€Ž•ðÞ^-•X–„À 7­ €$ÌB,:ß  a„‰‰!¹Œ $ 0$ 0tž„—@Âà„ëÖ­Kxg©$ H¸a]„͉Eçz{ŽINä2[J a@ÇH¸Å~ #†d©¡„ˆmÏõž†„°F§CrH aH a€„!a€„†„ÀM WS;‹ að@ÂuëBÂà' ›Ûží=}T’ðN.³©D’ðÎ Ôž’$Üb¿b!!Iø(1$—Qe 'we að@ÂMëBÂà ³Ð”p1¿“Íl*éš…„¡fV’°Ê~…„¹Œ $ 0$ í‘p|±$ H¸aݽ]H|#ab[³½Ý §7•ˆžƒ„¡–ðœ$áVûò’„»Crµ!á…0x áºu!að“„͉mÍ@ÂHØ@Â3\F…„HH aH a€„!a€„ ¼žo €®[wo· @{%œˆÏË$ˆmM÷v¿$I8žMo(„#áûò;’„_"†diÓº0øGÂ,D·¦{$ òñLzC $ è «ì'K˜¸‘’˨u Çæë@Âà„Ö…„ÀGf º  a oNsH aH aè< Ï5€„À ×­ €Ÿ$lNtsª§ûEH k$ü"1$—Q!a€„†„HH aH a€„!a$ $  aH aH C ã aH a€„!a€„†„HH aH a€„!a€„†„HH aH C CÂH¸M^W"Ixçj OJn±ñ!$ 0$ €„!a€„†„HH aH a€„!a€„†„HH aH a€„!a$ $  aH aH C $ $ 0$ 0@Â0@ C $ $ 0$ 0@Â0ø_ƒÃCã#8G€C,7xfП^]î;sæÜøèüâ „â·¾¡¡µõYJ˜°¶>svì,é«@ø876²±1§UŸ$ $ 0@Â0@ C $ ‘tjm'¾¼µ9tH.H^:*Ë!.¢Î<›ô\C¡„œôµµÙ\.óz=\î_’ ’’£ÎÉrˆ‹¨#ϦI®!áð‘ØYY˜ŸØßßß#')øäbooäˆä«C²â"ê̳IÏ5$>–—&’ÉrÞ‹a $/‰DŒä«s²â"ê̳IÉ5$2’‰Õ‘s½.\!4˜ä…ô‹H¾Hî:$Ë!.¢Î<›”\CÂá îï;Y­VK¥R!D"Ó5mår™ÜÓ‘|鎪ù6Ë^–¤³Edš~ÝóëøÙT…‚/%×0$¬¬·þ¬Æn4[²h ˉ7Ê‚¯$ìÿ^$ [6’ªw¡úHw£æ Š„K}^JØf–•òF«R_‹ÈH”¬ùSÂÚ3¥-[m9Û¯0$,×áM%WÄb‹½½¯X¨Ã” ËôúÌ[™å LòEr”,eÓþ!Ü."£Lѳ¦\Ù–³iDZÎÖÞ\ç²QA(7Cz á3ƒ¯Ã2Ûéä*pƒxl±OªÃ…B!ËH2Z—å » eí§ªø)»hÉ ©À$_$wAÉ2o´,ËÞ‘öˆÊ‚2ÊZ[’JO­n±3.Û¬\¹Î¦‰„óÄÞHøìÐIAÈåÓ›éä pƒxl«{Øë­^^b–=*¢Î<›”\g3›år–¸Ñ ǶfF†_+•²ùÌf*±Ü ]èí §„I¾HeÏÚx Ѝ3Ï&%×Ùôf±˜!n$†ô@£çN é\j]V÷zƒý'ççf¡œ K¨T„ÙÙi’/£¾Sø²ÜÆ"Šè…%Õñ»ëlz£XH7z#áñÑÓäpä É%àñèÂøhïsÏ>‘J%ËÌ3óýÊåR2™xöÈa’/’»NȲËETDR}•kâÃB>IÜè„'Ç{ ùD6µžJ,—X[9ß}êèáÇ Á}Üèè¹Ç”äˆä«C²â"ê̳IÏu&µN¬HÜè„ãÛ³S}…üŽ(á%à‰ØÂÒüHO×Ñ'òèþnÐ!¹ y!9"ùê,‡¸ˆ:ólÒsI®åsqâFbHzÂÓ“ù\,“\Mî,÷HÄÖWÏOOž>tH.H^HŽ:'Ë!.¢Î<›ô\gR«ÄŠÄÞ GÌÍ æ²¢„S;‹Àm’ñrå :$–åQgžMz®ÓâóÛÄž GÌ,̓åËè¬!•XÎf¶‰‰!=ðòÂÙ¬ô¤F2¾@”pz“¸Ñ ¯,ŽdÓé%Ò?'Hl7z#áÕ¥ÑLj-%ÎŽ[ }7·FÜè„w¢³«â“z;‹\;@X‘F$Vˆ‰!=ðæÚyñ[¹øb">@‘ nôFÂÑÍIi,‚ô„ç$Ä lKÄHXž*œçþÍãDÄþðï$aËU‡ ÅüÝ`Ëà0@ €„às KOmL­-’TÆÙ#ÁÊW¸³æ^Qo}•³_ñ,K˜teq<—M½þú…@ͦ–ÇI²C–¯pgÍ¥¢ÞÐ UÎ~ų&áèÖôìôÙýýý=²@IêÞÞÞìô0I|˜òQÀ#7«Ün­ö@òh¹âY“ðüÌ™D"¶»[+*ìíîîÄ£bâÕ¯pg¿(jô¢Þ`¹Ê¥£ÑÉǸýöþ›oýÁb³³Á¨x{»Ö*žµß˜ðÀ#‘Èðïbâ¶+…í©{®_¼ù/—¾ò¹s_üëÂââÔ]wüñ~Ë[žûô§•×ez-í ç)Óõò2Ë;$˜ÑT–ó¥›`úJY,>Ï{^è›Ñ·lR¥¿ð…/ÈÛ?úè£dÍÃ?,ÿ{å•WÚ) ངMë[&“ù÷_ýÕgßòæ±Ï|äÜ·½ñƵb¾ï†ÏœúÛÿ’Yœ!ÿ.}áÔ‡~û•‹.úþOÿtleÅf¥Õ¶8ö•nT<$¬ÌŽ©Uî ‡„Ùm柬©ûUÆòÅHH¿âOÿôOþç/ù…_xé¿ë]ÿ,ÿùŸVH8dÞZZzðMozåg#Ÿü™ÿ}qß7ñVò™ÄÂY˜=þÜó¼´ÿ—ÞqòÍ‘G#‘ñÇãêìqÕ@;ÍÓç¦4OU3×JØTà°QNý}1êå…q3S “P,þöoþêw>ú!™¿ûüß‹E÷Úh—„z{‰]_»(rþS‘…¿ŒœþläØ7Åþ0 “§^ùñ}ëù+"g-Òõs‘ÑÈÐ7¾áž„Ù{S>‘0i9†@² û¯r½j¥î6öI0‹©¬åË4S,+ý™5Ó¤jWZ+UnTÓ×\}ÕçþòÏ®»öËÙl†¬±YÀc ³T¹…Ç#‘S?ÿxd泑ç?sÉæäˆ,áR&ýÌ_ÿÆÄŸD&>é¹,òt$rö¾ûØÛ#c£kö´kTëݨx~°6ûìÍ?XVæÔ(û’°n^ì\Œ´¡P(D£Û?þX,e10$D o®¯?õ¶·½üS‘Áÿ9úß.‰Ïˆ^|fä±ëÉ‚KŸüûß8wE䵋#ÏD"³G2¶GÆjiªkGÚ K'–°å5E»^^P®ÔÝW»vH‚YLŘ/íÀ©Q‚)9U­ôOÖ(kèd9qª ÒóHÜK²Fþ2V6zQJ8‘Hÿýß>yñÒȹ{¾BÄxæÌ•oº9²ðäÕäߨðñW~;òâ["/¼ë]±h”¥ó`óžÔB÷ÏçöIpÖTÈZ‹x,a–*—ÉdÆžþØOýÔ‘7Gž¾üMã_ý»®?xëè_E¦þ)2ú‘…ï¶ç/zþ¢ÈK‘ÈСCétš¥kd¡ Á²ÒŠ CÂ0h¯„IˆÇã=W]u"yêÍ‘'>òâû#'?é¾"rú¿GŽ0òôÛ#Ç"‘ÓÿøÖæfø*ž5 ÷÷›››„r&P¡"”ggÅÄ™* ù wÖ¸‹¢"PŠøSÂ$lllŸ~ë[_ˆD¿9òãŸüøí‘Ã?y6éŠDú®¸be~žœ_HX~5ÇØH÷sG§RÉR©˜H(—KÉdâÈ3?&‰7zËMó%f­T kÖ/ à™„-\÷···‡ž~ºûŠ+N]rÉÉH„tŒO½ím§?ò‘¡ý×õõõt:íï«ÙÚÕßÚ«,W–FO½úüã=26:”»ÔÑ‘s?öC’l’ø0å+ÜYs£(€7oQ³vÝ''1NOO÷ô Ÿ:599¹¹¹Içû>žõ«¿5 Ç·gf‡»O½ðÄáG~è@@’JL’M¦|…;knð†¹îÛ¿ú[þy£èìÚòØÔDßÙ¡WI*I°éï@._áΚKE< C®ûö¯þ6m™Ôöøv0àj˜ÊW¸³æjQ~å3ô×}ûWüä=Àm‡øºoÿê @„H$ 0H a0„Œµå1HÚeàgŸþ¿…|æõ×_Gi€÷¬¯Œ BEÞ÷„Éßr¹Hl'âk(ð̽òXÄúú1p6—YYšZ_Ã;À‹qàÕq²> stream xÚ•UKsÓ0¾çWè(ÏÔª,É/n@¡C/@›áRzPl%ñÔÛ ðëÙõ*Í£N–V«o¿ÝýV–lÅ$»ž½›Ï.?jÍr‘'*aó%ÓI&”4,5™0¹fó’Ýóo‰¹ûßA¨ÒŒ_uÅØ¸v˜ۡêÚ ²ßºÚÙÞÑF‹D¨àa~3û0Ÿý˜EO²ˆ¥  HeÊŠfvÿ Y ö&…Î3¶›¼f’ ¾5»›}É®òˆ+bERHÍ÷cD1º&uœðÒ}—Ú´RìÉd·éþÌ•dïZNŸÛbÊaùœ)ÞYؾê!Wi¾r-¬¿ºpôím % 4”¬¤‹Ý–ŽêΖûˆU;t'1‘OíD&±âo÷,EkO¡8¤¥…º„Q$ò8¦œ%¬béQi=QÅÅÂz7ТòÃÚŸl¶3غ¶p«¬lÝ­ ì7tÄMuƒúö=véÂCÓçiê6¨EAOÜð‹Pºå 6möiLZ‘6&ÈŒïÖUû5¹4ö1TçI; ζò¼:м%á++¡Lìµ9NOkÞŒÏà¬ép¸Ð^a„Wžç ­`ˆ@ÚZ¥üÎ9ò'±;tÉ"iòÏ„éÚ‘œ–‘Ó ¡ÙÒ§ö“ÇT¦®9ôð5›ˆd|¾?öÎãÒ„ÀÞ±ªÆË¿^›³©å~RZ‡iîüØ.f:©L¨jtŽ Í2’í¹‘d‹0ëaØôo./&å«jX Qt í©¢ð¿ºÝU­®¨U_^‘»s()·-Ôýé@Ÿ?ݱ1ûç—ûåß ŒQt˜s|ïLþ·Ae&NàuP=]Túœæãk·Q endstream endobj 784 0 obj << /Length 226 /Filter /FlateDecode >> stream xÚ?OÃ0ÅwŠm‰ǾøÏJ H•‹¥ê`5¦TJÒB!ñé9Õd@b`°N÷ì{÷~Vp÷ì&²ë;c È`µ…ø NƒC/1ˆ-lù‹À†çyü•vž¯Oû¹ÏÃ$ª†§éx®Šþ”»œÆ\#­Ôb7ì6²wVÓ*u±F锃}϶;-éPÒŸ—W= õT;xfLýÄ\ê/¯¥¶ÿ¶ú“µ¬k]@5Røàá«·t Ÿèä…HTHÃñÊM›Ê_;Œê%.Ñ<ƒS endstream endobj 789 0 obj << /Length 1503 /Filter /FlateDecode >> stream xÚ•WI³Û6 ¾ûW¨7y&VIQë1}Yšº¤N{Hr-ú™YTµÄI}”-?g¦½X$bù´¼^ þþ½’ð ò8È¥ˆR•ûÓêÃ'Ô@ˆ¨,³àì¤NA’ðm‚?V¿¯~Ú®~|¥TPFegÁö$¥Œ !ƒ¬Œ#)Ò`[‡õ& ~þÛöå»õ§í[wD&‘J²ÏäQžË`«¨”’N¼ZË4üõ½_½Ü.ÌR8¡’ÿëä•ÅÖ"MƒLª(ñ>*‚‹ïß½ùe½‘"|½ÞÄy¾X«4|¾.D¸]¸¢ÄUÌ•ÄNÝ+Xá›È,¬êڌƺ]Ž–¨ãQÓbÀHǪ­«¾&‘º+â™Sg{X‚À3øÄꊷ¯XãN{B7N½®Ùê@\3²ª¥z]š-z{bqV¦1Ú¯£F«"l«†Ø]o(}ubOØVgšQ]µçý »ªÇKôŒùf<Òʶ,òÅÓL¼íÜ}‚‚2hvàÑ|A0|:ÌvÙ Ýðy >šCΣº™ Ù§-Ž¥Ï(mл¨¥iÔriªïs ‘ï¬Ã„k;¹ªV© h©¾Z.N¸¡º|œx¡î© hº,ñPu.KPM oÚKG±˜ÍbV Ù<'Çã+ wö@!0¨Q‡£ššÖ;xFšÕm†¥é+68j‡É—‚Š’" z˜’Oˆï^¯nÃ,’(-¼Ûà¦àRÄ8ÙZûÞ(ÅGw¼‘€¾²¨æÄòi(OòŽGö dqù²2 ŽÖºÌç‚3Ÿ8Ðóö¼vðåòÂô5“gXò{tóH‡èÑPé®”V->Ôc°m³r–âFއ±‘³z>´œνÅì ÷,}÷¶mõ~&²&!C°@­‰ï³¸ñmÉ—ëd7þ€xoüûzüaÃTò¢%¢˜nëô˜Q[ ÌÀÑ4fúV‰$R8µKN#Ñ?ŠT,¾ëh²pÔëèïõÊôJÜB?€A‰Œ˜G²ô]9v©nÍp$ònGÛ‡æ(¤ª1WÊ܈)òðÍHRîá‚b¶ÃgQÕ4Ø,¿M·5IUÒ*>§ù)TVÐN§ ÅT¤ù±#/CòÙ ~JÆãÛ¸òMnØZë&‰ î=•ú é N•$á/å> stream xÚPÁNÃ0 ½ç+|L¤ÕK7i® 6i7 â2íP­aLZ;¶µBâë ; qà`Y~¶Ÿß³†=hX‰» æKcÀ£·d!¼‚#p\#{¡…|Q\É8^?UA®–÷§ÝØÅ~PE%›ápêgŠÇØ\c. Z$µ kñÄY”锆2S3:í`׉ÍVC›ð5h4¾†iª¶uÊGxBÿȼå_\#ÙSýé” Ë’²Q²ßŠÁ$ÌRZ›ÀÅ[ó®*9¤ˆ—lŽQ–½\äÎx9ôûÜi›ü–ÉùMrúÀV­RÎ endstream endobj 801 0 obj << /Length 2085 /Filter /FlateDecode >> stream xÚ­YÝsܶ×_Á·ò:>~L'Š,»ÊD®ë¨ö$N¦Cñ ‰-dŽ<Ÿ•¿¾»Ø¤(GþxÑàb±Ÿ¿]@»õ„÷òDðïï'!ü /ôé%¡´Š½b{òþ7ám`ýOY{Kµõ¢8…ßÊûéä_'ß_üí…R^d±Œ½«/Ê ¡g2…ö®6Þ{ÿlµÖþ?N__¿YývõƒÝFŠb‰{Â8P"ñÖRYÒ–oÏ‘öäüj*a¬“ QÑçJ8>NÆA(/UÑioÏÿýÓ/«µLRUûÿ¼¼<}õœæ?^¼:§Ñ°t~ùýùóç¯VëPø/iíâ(÷bkÿt¥´Æ{~Zœ¾¾€ŸÐjãŒ.@‚Ä–±‚¿*½|x°øæå‰·Ö‘w« ‰Ù<:˜ñû|¾ï×Zÿ¢îwÍf_ôeSO8‚ÕÄȯÜ“™–l°Uª}³ïþ5eæï;ÓÑ(§Ÿ¢Ùn¡ƒþÏ`¤„ßìh¥3= š›#y^o:K§ü¾qË(]E›û;C«í®¹µ¦ßå[ZùPò±eßMÒ¤*kÞŠî¸Ù5¼mà8ÖN‚c»¦2G{ âaŠs(UY¬¤ðÿ·Z«w¸4+Øu@çƒ*Qþ»U¨ý²Þ4 ‡•Ô~g¿DþñÆÝéŒ ƒ„©¬dÈßl¯ÍfSÖ·´¡¬{ƒ6þ 2Í &C½w¦vB êà´ìÆ¼ÌÆ±¢ÕÎÚÑðõ}×ð2y½¤ÿ`ùΉ+BŸMš…þ¡ìï3ŽÛj‹ã”Ó¯›¦ØoMmSÔàí*Ò¾ÍÇß1r·×… Í ø64²q¿·hS›]Þ£‡3É®±u9×φ¨¾A—|tÖ®óªBž÷ô‘õÕ.(aдxšuN»{ëtôoo˜ö“0ᘄj¾ïp§…Æ8eŒtDˆfV¸g§v§ÔxÒãI¦ft'®È”ã€jVo°†Ò(õ“ „´ßO­Mõ$#`ZÚåØf7LùÇÅ‹]j[ÈŒÜÂméi CܼsT̹+ÈÒeËF„U^ßîsrf°Z¬û?ƒ²Úoö´©È™ư¹YE1†–nvÆ >ƒù¶ü¸ ¨YˆƒAX©Æá&¥ïV=ä Õzä=ʺù츴R¦€~ÀYÏÈH¦†¾‘ÍzZÌ‹Ât,< Â¥› & ì/k¥ÔDMŒfk{äU×ÐhgrŽî’¿ VÄ”8z¸›§Ñ¯BE•áe·aÈ­O$Ng̑ؖ¯@Š«\Áß(©Îß`›¤šRš $)ÿc“o>U¡WÑP”™š%e—Òidœ\\4ßBËdQ8Ë1fø× ¼[€†Õ’i©7ÑðyÛö´íå¸ÀôpŒ.QÑšnß¶„}~ïÄâ/åR=D’¥‹1ÃiÓÝL´p/ýfåïÀ×»œCþÊzéSÊVIlj/'ø.|·¦c–ŽÄ­2HˆÀ¶‚¢È4טY÷4îZXg†%SO`~*FWÝôK‰1Žj·i”(/PÅiAˆÎÁŒæƒ¼…R¨’ RÚÅÒéãH0a2Ž9hseèèþ²À BxˆàÛ]ÞÞ-qîÚ¸?á2&Öè„︩8ˆÃ§s»iš&¡âìÉŠ¹Ò=/t#’gdümî"&׌C’YðêKÒ •c|±/¯w\È¢Ø<æ…ÏôégxáQ3ÎE:RHŒ Ð]Ï5IBÖûm{¿pÜ2âh8¥eÔà.€«Kç*Vv/ ”Ã/3T¡¾yZ)Yê«]‰BdÒ˜Á-4#'æ_&z³”®ZÞ[ìÛÓdˈ840N §ÃHA^èÅsG­¦+>" ¢,š¶vW‹6puÄJ6­¸tWㆬs?nYÍ̶û–ÝâxsÑqH¹ßu© PrÚ>y¢éÎØo³|)>”;[B\Ï#E/’Ð:F¼bª˜/{¸0ª½0«XA[Û€ìÚT®¡²ÄXYppmè;]6pÅVÝ1ã²^O¯¦£Óˆ”Žh燥,K}º Xf<¾.TÜÇB×™ú±«E"2²ow³àâwv,¢Q­)lëPL=Üæfe±¯r–tÛl\ h;" !º®ðšCµ@¹î8àC) 8‰ƒYÃzìS˺¨ödz\ÂQNÆ»þ¯)ú5G}9à‡Ùu¥kìÆ8 ø¹F‡»’¤œÂÖú¯ì\£(ÕàÊÚþ“·å§šW"L'Hþ/Hówµµ‚Âê)G÷P%¿ÍCÕ(°’”1å^_<åÙŠŸÍÞ­᪈Ëü™ûr×ÚŒ`уÕÈÛÅ$Ì ñ5–´I-Yj¥‚4Vƒ ¿Õsß)ª¼ôØ7©Ôh5ðkÌýî©ÝðHSj@õÔÞ-·¬°Y`¥e DôTVܘ‚'Ú¦†tjóþn©7JU§ñS¹Kr{§/ìN×aBM¥‹ºì˼7öÆ%Ün„›tål7‡™½O¨åf¸ðã=5˜ÅÊc—oK¯ùö1oô ¹Ž¾c –®êLÄå0›>†ñ> stream xÚµY[sÝ4~ϯðöLޱ-ÉfúP eÊ@)m ”că/_š„_Ï®Vò-Îä“¥•´Ú˧ݕ8×Nà|wöõÅÙ—¯s2?‹£Ø¹88Iä$<õyÆœ‹Üùèþâq᪡ûÛÛEIê~Óì‡JÕ½·®ì‹¦>'ú{U*Ù)ê0?ö#ï÷‹ïϾ½8ûë,„­'$ÖÜO‚ÄÙWgœèß;ϲԹճ*‡Ç)|KçÃÙÏgsüú!HøQÌpU:- < ¾Ÿ C?"²š…°„4~d¤ü÷Û8w"Ü—^(Ü<_0ûòu,fv œ]Äa™ Í_æùopLLf£ÀÏ"4™ž÷…™1g‚³qÂm‘_«¾¿?ª ^"òYÀŸâeÇÁ•"n-+õbƒ‹ý8d§2C.‡¦%ñ6¸Å‰Ÿeâ3E“CßÈ<qÑÊš#¢P–²½îÀ¢!1bÁŒÑ.ÌR?°)3À¾¸A´ t Ðyº³oªJÖ¦[u¦EŸkon+7Ô/꾡Vo¹í‡n« RÐP”é£ß?(5­Ó¨ñ£ E\%à.Ÿ§1AnM|¯qÅçp™Ÿ¦£!/¼l²âÂaä‡ñ8¡¯Ufp¾‘5‰ý¤‚Ǧ+Ð h~·¨'‘ˆ-ƒ§hÆÛ÷@IæÊ;×&°à”¢£‘Þ®Ñפæ@”…YqjCtpšïíxá†YTÔûrÈÇý£`ò$ôB bi¢Ž’¸®Èò®èV¤»{$ ´ —¼Šä8É߀7HèÇi6?/ØÄËØNÒfIGÔ8;Îcžhhçf¬@¬˜l_2c’¸µB°ßuiÁX³0+êÆ¯‹Oƒ9:ЧÌ-z»¸,©ue6#^µje¯rÚîÐ6ÕB‚xtäáÖò$î±:‘F¨¡ºR-ÁlÇÃPCjò,ôYšX£™ ±ìÌ…ù޲öª5gü@ßNõç6FÔ„^rñ°ï»ÕÉÕÁÓáª4G¤®v“zãô¢Û7²›bÅÁãÛi:ãÎ|ÉêX*#‘¼C·ªÎF¥G‚Öt@ƒåÑüÉÑ…¸÷b7åÙR‘$ÊÜOº[¸öGá°£õOØ2NâØ®/êk³¦’(í=u=øã w^0^i½ás&Rk‘õùé5:5ïà±ÿÏLž5¯Þo¥ùÙø“ù‰qä'+äçE«öˆ„ÿ¹–ø¤Ú¾ØËrƒý”Ÿ¬ï#9}¡’I:a©¥Kh®&ô Æ&ô Æ5úØáÉÓ„q¹C«¨™7ÃU©hÊPçªíöM«:ðlð «8õi¬FÔ’qòÜX½Û‚¼<?©?ÊöOÕ¾†y¹oʦ}±É™û1–'§±nU¾ÅDøq>v¿mÛ¦ýZ¶?µº¼¼)r¥«ÄGàFÂQ¶¡.ôžó@Á¾î¾òv ÜüVÂÊüæ°È!ï¨Ü_^2N¾\¬/0´óSˆrãý…=ëýåÕÐõ\HÚ'Üd⾸®©ĘÝgáÎ4?aÂxÄ6¥fŸ & â¤t«k èç +ÈZלD™¥È niò”œ&‘„9 G8¾ŒuPJ0žB)Aɶ“õbEl­06ùK*…ÎÑã] Á·0}*#·ê–B4+¼sŽú s>¦hô½1³I懡Þ[•&Ø…¦kŠ„ bµÈ ¦•ºóåÔM¶Eu¤q—*9œ@•®¨ç•ˆÕŠsд¿±¼ª&Jµ¬:Œ¯÷¦¦ÞT>ÏíaKn3dÅ4…÷L‰=ÝëJ§¬Ý²~pˆçœ?ÜfBwfÜÖLØ@A Y}Я¥&ãLrlŠl  0 b-5~—g€Étpx‰R¤Ø‘ÉÓ¸u¸,Ò˜DØ`ãr^ßbê¼$\îXd÷HFQ$}ÊÂ^éôvúv÷ÕUSv"šeÖØÖ' /¤4½SXŠ÷”8Æó`â}Ñ«j»Þ]ÉþhÑûÝÍ#”@QKC¾ÈãQÕ¹,oµé©$€V‡òá%v5g¦à‡‹ý±L^2&¾úLAOßXñk¹¨ÚŒ4‡ÕÈd\="œ.—ÍÓ‚vµgSÂm~^°íûÐZ¢ofgm¥8³V‚–f§î­:–r¯o”£QN7D˜g†ÍlTYáÅ£“.²ºŠë¸UM‹I` ¡E[ÏfÙǘ>³õaåÎæN€¹6cîî&ƒ,X*½>ƒ<”Q{ºÖ[r¡¬¾".“ØrUÂí3·W»ñqÆ^.§;ñdùîÅoèðÎW훣 kÐӾ愒”´œŽñ|©©;øì‰ £‹ìòi…ò„" ôí›÷b·5WÊ.“"ÛI” µ¾ãlšõÍæGk‰Âõ¿Á'ÿêÙüÅ#? Mµ¥€$‘@©þêF5ž@š–þ8 0]̳õߪéu;Á¬P›ÿS#IUW*ÏÉ­Ð-ê‘'3Ê/@F¾|÷Æbk®ð? Ç[ endstream endobj 817 0 obj << /Length 2389 /Filter /FlateDecode >> stream xÚµioÜ6ö»…ý è(”H] xds´ýPxo¿$¬qfÔêŠÛébÿû¾ÇGêËÍdáˆ)>ò‘ï>8Ì:XÌzñúæâå;έÄMB?´nöc×gŠD슄[7™õÑþÅ-‡îgãG±ý¦Þ ¥¬zgØiŸ×Õ÷¿–…L;IïüzóÓÅÛ›‹ÏÜÇ,ÏŠ|8Z¸‹¬]yññWfeÿÉb.Obë^í*-Æ0Ö‡‹]0Më8ºÊ\?äˆzV €×wžç&Aà#{x½Ç\Æ#â,p}7TTþÿ×X7cö?‹xŸõò]ÌDˬ/) «ÕþO,`ðßC< •-·{‘›p>ÛÞlf÷GIMQ÷÷y•Õì{'b¶ël8çöÍ1×{ÍXW…ãöšuCÓÔ-~Û½ÌôΊFYne–hYgÒ]JèlÉœJXâÜC~ôLÂoÑeÚ;ð÷‡¼ëX>(hZž£•P‹¹…CÔ €–¨Ÿ¼’M 6€´ê¡ßæU—uÓü.-¦9,6) v—?וœ€eZ i¡@ŽR¯’ Ý[ÊþXg—da´ðH7ô€cÚ÷Br×wõPõÝÚ1žËcÿkÇxfƒ¦}(ÀÇï$Í׌ Rçž\VNñ™›øÞ¹ljòdÛÖmwù4 Ÿp£CDƒH¶ð&P°ãí×g– ¿ñ=;­h_€åfèi*Ñ¿Àd×A¸ D{ Xãtçâ†ÚŒ2…á˜Ê¯ñ£JKýUïO–²´‡«ÏîkwÊjéûßåÕ†;ÖŒ­©»ãv‡ÔpEÍeÈ€éÅDŒš/"J2“½#ÀÏZšàmj«>ltA¤VP&Ê3h¹àgÇÇà$ifŽB¿«†]í{ŒhÂ.áÎÌÑ Øeú°ä]Q ­Á]ã}ôE@9‘㌠˜)2`Li(´µèÅ=Ä.|,Ø #®yyÁ­öL× ÔHpâÙ·™¬@_æ0sûí¾MwJO„«ðFþä–h[Šf1^¤lÆ]Zìp“\“Âéé3Í%¦ÈÛ®Vk÷Ç|‡‹ÇeR¹UÎÌ'–°+Ó¢èë"må€ÒÑ›(µzßbC_+4Ã%&1I ]|y-²ˆãÄ¢š^áAuÞuµÉdã4ߦm÷ܹŒO¹,~¦\6´”ͪþÊÁ ëø-U #"`_[\“Ò¼ÑùnÐâS¥ž²‚<ÓÊÒåÜ¢•žj¤Î¬mQã_ˆr¨(cd3ðWÄ!Ià¨„Š™^àCÒJLпqbÐï‰0|%.¸ŸÙþ\šÞx¡ï2(Z)1.d…BdÚõKìyŽðiÙ8¿dÎ÷üܵb,m•CU¸*t%¬0—ˆ‚ßý£u$S…TºÓ„¯ýT¾+ç Ïiuø?ƒ²±‚—OÜA_SÂRUºLÛŽš™GÌ Z3,ôÿ²Øç±çñ…·Uº-ä§×ìopKxèR.oÚAžé„— qÄF6ÑÍd¥?êº$«@¨¦NMT盾 «}™€âL÷e°wW—P‡dú€ŽÆY“¯4i³«fM@±IÓ'´´¾oëR×Ðâ„ß™¡ß¡i鯬äóUë+è_²ZYísâ?{ÕÇ>6,ï™ ëd‰¬}ƒI!V¶´Ï 9 ©»º¨[eYФyÉLŒmòK™YZõyZäi7ßÿJP¨û.ã`µܦ»ß鎕^ Ó"çöJßíÕ?ÆVN‘Ë"þ­]a“í‡á°»; §y/ á߯´g,qcŸøáÃhøôš4yVªëI>è¶2Ny²ó©íd?º#´d³ì30¦æW¨zóÈl,Ó&à]Ò8÷}ÞOèÚÕ¦´Ú™ÝªK챨O¸™J®1TW釣> †ÖF,À˜øÒ¨TZâ ö{*uú‚iaÒñ¬‰.Søá°…#€-ÈîèDJh°xëÊfÑðø’o]°(‚ÔGèÊÎîa‡åÆßšÃr×owE0š02£ræoÆ–œš*¡ka¶BП…¸Ö”ÓóÇÌa*ùJªáºÜ ÆÄ&ì'®}ÁBÈ v%|zwÀ QhËíèƒ0Ôÿž6"ôíW´4õô8SÌÌ:šîð=?¶ú†yÀ9%:ê>ŸÉk±%ZÚw†LHvÊ ÔÕ<`|´8Ñ$‡0°Q“jWéÅ‹¼…"ç²U7ã6« IlIè< ]ÈÈ$sý&šWcï‰O¾ôP,ÓÂhБÐQ¥[cÆó—'cö“ãZxMÜ(ÙÞÐÑ#‚RÐ0¿W•ØÑ‰®S9t|µÔÙx…ž@.HbE"èêÏX*iTW/\Pi·+²Â85—ÔYî…£'Šõr,Ã9}<0Ï…êÉc‡ÂïH¨õ€AwÑ™êszÈC$­U\Кħ©(œ¿qÝ^ঔ¦ºË ôÖ´ðÝõ5þ„ôþýëר˜W¯hulÛhúE+3}• t²Ò€m1è·ófz!¤´hŽé“ä¹¥DõËš²…ë|©ìxʹˆDš²ñ`~íº§ø>&ò1Þé†!¶ß^} 2‡Ø¾zóŽ>þÄW|ƒ£SS™õÝâ/¡ÛT!PW¿8!hQG  -†*t¡„?ãÅw…ÎX™*ÄŽ"|ݳK§tg$%°×.Ûñ•\ÄÓn]´,® T¿gµéìøcZÍŸÄð“ÀÉ[âéFäìŸ9ÿ Gìf¿–9›P@•F­£Ö²n"cûÕÕJ3"£ñÇÍON©ü+Ä endstream endobj 827 0 obj << /Length 1854 /Filter /FlateDecode >> stream xÚµY_oÛ6÷§ú2¨R$õg@ téR´ÝÖ¦ÛCÛÙ¢c!¶¤Ir’îÓïŽGÉ”c¯N—Â@¨;’wÇãïŽG†y×ó^O~¹šœ] á¥A…‘wµôâЋeÈTxW¹÷Éÿs*•¯·í?ÓY'þ«j±Ý貛ΔŸuEU>'þ{½ÖY«‰A„Ó/Wo'¿^MþžpPÅÍcþe±î¦à§æUF®W(¿kGÒÏ.#åxšy³P‚Eæ 3ævíg¦ØÒpô}Ý€“U¨üÜvZ²nô²¸?öÌÒív9¢‹òV7Ýùe¶nõs´U’CHe£ëu¶ÐóuVÞ´4ôr Îcc[y¤Â‚ârÊA: ­ SÿÍrÐ ŠÈÛ8Ýl ÚЛs0ze¸çhjQ•yÑ vÑ<~H°ÎGÊùZÇü$#Dî¼›SÏí$gë­¶#3ð»ù(«Ž>½©Ð 2%·ræÛ¡ÛØ`ÅJ„H­È0¶Ñ':ÛwFå»=ý°´ˆ…þÕª·yQm6\fn¹Æ_­4¥jnÚ¾“Zþê ýÆ.p'”ÙOM_Ðv‘nèÏh¯Gyëä|µŸÁ"!‚$NNO”øU³Ð1#Ö`9fÈÇdD3'bZb§¦¦­à¯DZdÃÇ]Qæ,w¶£¢vnû·FO>î4éDéE·'l±%Ü7æ$D%>Ú< 1÷fäöÜ,I0â·e§K«¸%­`ÙªçÕ=,ª¼X¸öµD¬²]Ö\Iˆ—¢Íæk£Aax+Öj °ºûˆbŒà7eŸc,ìÑÛÓBXàã”øHôÌ] Õn뺲‚iÑ›¹¦ì‹Ô¦Ê÷ ¾lª íp$–Œ‰Ša‘fq·h´­HÌšBeÜXùC(8÷Ó°—ðTÁ3“ 7•é’OC¯Mñˆ˜y­;ÜdëÅØ‚©!ï]ð“áŠÃÅ0’LÇMAÖ|(LÅò[Âúþ#‘;K’ åÑ8~ß#–t·%0–íÏ=-V†¬l¡³´Y²ï·v1DÎû“×€+ì?Üóƒ]àþ€C9£7Jƹ'yˆ$Å2ù2A'^˜I’xö–PÜ>õ.l`2Bþ0I˜qú‚w´PïJ!aÓɱ/^¼ØÇQrŒ@{¨@„í¢Fûˆc"#æûÂÂ<œÅœ"nd›‹¥³:»ÖüìºÉê?»?ÛåwˆY›¦ˆãÃÖ°„ïÃu2o÷‡tºœ‡:gÒk”p›·£q [üË-œLfÈÉî>„²}˜!œ ]»©±ÐtYÛ‰PRøÿG˜qáI2ŽþóÂÃ2VÃ¥ñ¡ 0ƒ§ñÔ÷N‘àU3qÎõ”çÃŪXç VYº<嬈† §™ºÄ`‡ò£Ñç’}*á<‹OMöÁ¡ãÂéÿæÉsì´à "{\„§æúv䨸+òkšnGÜ­Šþ^‰¤¹p˜²Ç0ÉSGd™srïÌùqzô¤èYc©ü›Ç•8íæôºü¯i-Œ«#ç:F±õ"p¡îYqhìì ±ÍUØ5pÌCÙ‡GuSm ‰=uÕöwZ ÌFºÝÇÖuSÕ¶*§2õÝ›ZÔܼ“пÊc”¼+‹aäî^xè.|´>†áß(‘bå¿ÄÇ7æ<„1Ç+|—%UD@wÛzm¾ÍÚ‘gÖ» úpƒ³û¢E|›§¾È½ ИÝ4 vO3HáÔ}ÙÀvmg9‡MÖZã¤w»¤¨E§§‘ u°« =˸»_G–{ýÖråZîö¦þÈ›xü¤q^­«f“Õ s; €ÉôàÛ¢a•·@œ‡*:-!ì£.M`C³@­„C0˜zÆ#܇4äÚ yæð ¾9Þâñi( yŸ/àvls€ù  õÊÊv_žÆµ#ì(Š€a.ªæ‹QcÒ´¡R6.¸´/N¦Û †¬ž›ç˜Gáªëƒ©Áy.u·mÿ]]IØø“ŸÕ¾úKÀ·§ª€eqËÄ¿Xÿ1›Ø·¾8dNg‘L÷ÿ3°{b]”ö‹’›MD h !–-ìptõËßßìJëÝ‚ÿ—Ní^ endstream endobj 838 0 obj << /Length 2355 /Filter /FlateDecode >> stream xÚÍ]oÛ8ò=¿Bo‘gU©¯ú°w¹],Šl×·/mqUl:ÑÕ–|’¼I÷×ß g(Q²ã‹»-p0’Crf8œO*¡wï…ÞÍÅ߯®¥ôò O¢Ä[¬=™dA*/UY ré-VÞ{ÿ·™Š}½oÿ˜Í£4ó¯êå~««n6ý¢+ëꯧ7ºh5 dÑìãâ§‹,.þs!€^è /µ Ò0õ–Û‹÷CoðŸ¼0yæ=šU[O%´ï׋_.Bæµo¬†A”HÜ•¯‰à»átByGx<$/ ”),¢@d†Í¯§ã½ŸÇaèßèYìwWÉe„óÕu;B½y¤`wLLÜhÜU|ã°*¶Z»÷p¼I¤A.ùNÞÍ"¸“n߀¸C¿jªaì_Ï`TPʘ0¸¢vDZÝÁmÉ8³“Ý~·ÑÔ]ÖUW”UYÝóÔƒm¤ÁcÙ=Læ‘kêÝ—¿Ï$ðUÀN.ü…]ò;²[lö<,[jñ̈yj¿l5(ö›™ }†VúÞv42"1wK"ÙÕ­]ƒ2D­„>ñ‰Ü×År&bŸG5Õ~»›ÉÐÿ‚C #(zXî×kjÍy±Óšóš^ù÷Pæˆà­¹€Jƒd$è˜^£'hz™´´õ€ÎpaxW8Ï`„%[Ý‘J”Ëc2²ê‰¦±¹ §‰´¬à²è@ìfyQ­¨ã›6÷3f_ˆžta´1Áådj¶Yv‚ÑØ2 2V"ôß0´ ¦Óˆû©#<Ž 3á7ƒÅ0×´g ªÁ{à"ŽˆÎÁE>ø:ô­¹gE<˜®:½ÍàÕ=m(ú9=ïÊíx©¹ælÂ"Ló&‡EÕLïöK÷PW„ÑXë»ëåYüõ¤¢«¡YsDc.;ƒH¥Ö¡ ̱nœiŠŠ4ÊÈñgÕ&tÃ(Ùˆù l š0ŒÂÐ5bœ1,%ýƒÉ1¯ú-.ûL¼™q†þ §ûÍÐ\Ï»rJHNOÈIÈÔcâše]7«²‚ k `Ð@Kd ƒgÆ»“’î@eÇmk‘RûöjØÂz£ñ 9Ë«ù ”¤j!pž "àø…?Œ{æ±NxøuŽBF?ɃP/†¼"…‚>ÂU*ƒ<ͼ(²,óí­!Ô¢:ÊnâIÂ!²ÇYDJàΘ3 (öLA8‚Ãù_‚6èÌø¢7*øY€Á7‚¼ÃxŸ —7È¥@!Bâìrœn¼Ý訴H‹ìé+xs‘]N“–)UaWÚÅ›ç**;‡_ÿ¼È”2%ÿE&^,3»ÌÕ õò=KE`£J›]º£˜~8QJÿãjíÿerØ—‘ Ä”(sÿAHõõäÙ,Ï:þ'?|´ÊwÔ_LÖØeA&"×=W„Ö5Q2 ˆ•„Š!ûS8`kGs@ëOB)ÔJiÜC‡8 O³1Åñ­ ªX*0–Ü)¨òïQP-fĦ>¿°ZÀ®óŠ«“eY#AÓ3:˼ \[@J ì¹%ŠÅA¡F«>‰Õ%õÖXϘê!£¢±ȞÞèÔžèøž>k…È~b·“Ü2ŽÙ\øýA19’~êSNƹĀ‹>3±™é§S×ôB혪 ð$e%rÐÀ(üØšQ{¾Âa[TÀ¯®ì1 \ØÌUíTÖˆÔ8Q¬&ÓË='zæõÆlà·œo}‘sâ]ÆíÏ/='Þ°úå"¿åÚÓJ¥ÞwÉݼý'un÷wS£Bÿçr©«¥æ„ûñ¡ìß`øÛ,ëÍœ¤}C{¸ØW+(t¡ó=å}ù¿Ù¢ìj’Uw]nô÷ñf ;Í&¼–e½ÝrJ±ª´Ít»lÊ]W7 Ø·únS/?·¯¯‹Mk—mÊê³^@»F¯Ë§×tÛIê&“a¤2ïS¶K^ã²+ kI†\Íä¶J@¬Ïó±Ïk÷ëgÈÈÄ„ä3¨¾Ëûª†bM?u£ã€–ÔP"Þ£$b$Ù8PrSÏ}·þWvM”Ôæ`~s]íë·uõ\8G2†«OÇVfTÀøë ¸°Ç¨ÑÔÛQÈøJµÑÁÄ÷A¡ vo\–­‚=±UÚÊ'j6½ºX kKôÁ™¢*’c@}ìÍ´÷ldÄÌœÐú[ 4>Úήš¢5@ã¤y•dê>ö8(èÁ÷wFh‚ÄÇ#°‚„Cï.Ùe½Ùo«ö9¦ø¹!ʇ'd„oë†W”Õäx¥yw‚™Vk[æ…ºK'•%\MM€T©‰7v,ìŠ\ @’ÐÆÝ‘Â©$H­šl¼ëŸyª±o`*2Nk¼±’þ®h@”yzTü*-eA¸±¦vª@rØﯔ_Ž‘Ë>²Np™'ÊW¼µçǾsÁòÁTˆ¹rÍ͆0W5#½ÓGÚÕ&3=ÆÐÑ·ó;ñ˜ ôî´}Hj´5œÁ\žµ¶>ÿ¬«† Á}68˜Û 0'^Ö;]éÕÔŒnÆîÍ6wæ•kl¶#um€AtŸ[•ÜrMR¬v·)€¶éšWšÛRö4ÐyÄÓÖÍŠFŸªÇ—4âÇFCšjÅÝÆ<󹨬Z˜¥¶\XŽhBÿª¯KÔ"º´ŠHr¥æñV[rz$T%&í’¬_åöùÔz €ôаÚoïÈp2óîKþ‹ÙÁ2V X$øïÕÆ:š!éç)V.Å~k˜ÊܺÀ¤‹4cq2 ŽZ´®lIÁ+å’up 2#®`@„Ø/÷P[*S=dèÅzPÊÁ¦Oè£Ä<ÏñDŠ‚EÊ%!õ€‰ÄN4l×VIU¯¤ŽÑ ;…©X­¬ÿ =“î73å~4@7§d峬¬8âŽPŽ--ûµ#w0PËÑÊÓ?[?·ø ¡?SlýÈTù[†y±>Ž:iЍÕcS?~P¢f½!9ø€øàá|¹oÖk“ @B½:Y‹VßÓoô±‚àÅŸèÿP¨(Â)Cfó,ïïøÃ™[ú'þ(˜ù?Þ¾1·£â$È£>%•bÊåúX endstream endobj 758 0 obj << /Type /ObjStm /N 100 /First 887 /Length 1696 /Filter /FlateDecode >> stream xÚ½YßO7~ß¿ÂI¼ÛãW( J‹Ôª¤RZÄSB“ÜEÜѦýëûÍ-÷ƒìÞrÊì¬÷³=Ÿ=ö gœpp”Or‰ì]΂gq¬ÉWbÂ{r…«“[ìÉN%ã]¥ÜH©®+/Ž‚âƒ£ˆ¯­‡`F†‘þ’ “# ´Dœ¬ª—XñJ© %”H@IF;’Ñ…À-ÑÚùA•̃UWr1Ë[ƒ £Ú§äb‚?¢ìbfiD#ŒŠÞfûT\,ÂN*ÚQBxjp¨m Sm\*£±OËf—b²Z †p£!¸”’}8#tRÕ%†ÏŠ@$Á'b3Ä T×`ãF-Í -+ÜÔ€+Â&µÂ(¹1\­†ì2Á_ êrŠ-30@E°rB‡$6—Iœ“*(Au&+!ŒÅ'®Ò(\ †`ÁÍ ”Ôq° A)4¦ˆ>ªbÈ)BİQŽúF#Á(6WàT‚w w1Û“p²°€bœ£•0Œb%è‚ L(ál%¨^-„m">³Í•¢&k í(8¨1WD+b´\³•Àj3 JˆVa+aW(X XN™ø ÃÆV•_Ô0±X‰¸’0±Š)/Œ±k¸@4ѪDA‹"ѰiD3:Åä7{{MûúïÏ×¾:{7iÚ³éb2]Ì¡0†šöh2Ÿ]_]Læèº¢Ÿ'o/ϞϾ¸“€‚‚>¥ÆÓM\¡.põ·?ÎÐÔI'k”t²¾yÆîyÚ<{vÏ…ß´ÏgWo'W]Ûá´ý±=l_àú=5o.úŒØ•’|2Zö IÉ>ŠáޝÏh³ýérú¡ÝßÛëzh÷/—³i{ÜþzthOÞ/Ÿçß·í»ËÅûës1ûÔþ9¹žÿsûÿ¯Ë—íá§Ï³«Å«×ï.§ó§px“Ï·ý¹®ÃÍC îånмոD\Ž5øÀ½jlßíí¹öص?Ì^Ï\{àžÌ'ûßùÈOÝ®üHR<$–@¡T«çܹY¾îGÒû~¸éñ#×¾ùíw'¶|‹WÐmzýñãéƒ8Ð*]¼ »~_‚ùܰ/&æ»,0òÝ‹é‚î^¸Û$n^nÜè^Ðxûêjvq<ÁÀÁøƒ—®}=ù²XåáªJ^“ÂKƒ¥poè%õ‡hãðÇz/aÝ{+d,O.G-'Çì5`‹/äÛTNìe·ª=8[œÍ'dÛÍAFÓ%ÜšnÀpˆtëƒe Þ6úíYÿ?·o~9ÿÃ"kµ?YÔCu À½¤Y_ý%¥¼ \dyUàD>êÅ!…ðc[¼$4ÛÇÜvÍA€¬KâN&@×U+£U+ò8ÕõÈmJHÞa䉾–.5Á–AßP·2P·²,6d:¾ÚvâÇ.¸º¾]èèíB¿õv¡uÝ{æ}«ÄÓ›í’⇠¸u΂EÁ,¨i`á.u©–ÌK]zr§´»ÔIà…{´xÁ9‰“bÙÄÎ#Ãß‹nšu³—pc§ûéÑRâ„SˆPXϯÆr©®ï"5mÅ¥{C¯ùÛ*Á”5ïëX%T¹U‚îT ¡øˆœ l¯8CÇÚ*2#»u›ìý‘~{ÊÉn |4G°%ÛýÊu³×ç·®xöyMvi1D˸Í9Ú*†%ø¢½°p&€‹È^Kî‡áꘔïÁ³Í½Äd4Ée•ävã2Žäz»\ìˆÜ); ÛeRjœ2RkÆø„é9š–u>•|*ø´Œ)XúsSœpøíÇ!Ï’ÐK©øñ÷âòµÊ½¸Xìby¹Ý6 !òCt}˜âc‰LëD¦ÑD¦9ÆäSµ Íì»[E,Õe9EÝ–É4É4€É4ŒÉ«°îÄÕøcé…q¬Ÿµ—á\ܤŸU¼Ë:÷ˆ¤—no{q6­zqç§ûý‹¹x»wßZg_9¼>^gq]g‘Gætv‡>ˆÊq•ã0*¯Â‚m.¥Ƕé¤ÚC&TjêÅeh.`Óà~\ÂiÄîq{q ½ô‡Y¤OÜÃÖ¢›¤¶‚#P>åòX*/%BK¼¾üø_MºFòT‘\s^ÝLïr3¹=uFdþ¦E¢ ¾u?,y,¤Û;íÇ£Aú[Â= ¿ÌCú[1#÷îÇ·ö Ù¸$1V endstream endobj 848 0 obj << /Length 2221 /Filter /FlateDecode >> stream xÚíZmÛ6þ¾¿BÍáP¨YRõR`?´IS¤Š»d¯8 ) Ŧw…È’+ÉÙÝþú›!G/´•­Ý ®ÀaIQÇóÆáŒ¹wíqï§‹®.¾})¥—²4 "ïjãŇ Sé]­½·þ¯‹Pùzßü¹Xq⿨Vû­.ÛÅRùY›Wå7vüµ.tÖhÛ‘,bÁâ·«Ÿ/~¼ºøãBÀRÜ–tÈb{«íÅÛ߸·†ñŸ=Îdšx·fÖÖ £ž…÷æâŸœ`öO&%gA$ñ«Hx5¼8|=lL–*t;œqÛ)°@˜ó×ñÞ.çþ«-2dWÕÀî·/óB/Òß¾ŒÔˆÍÜ[!QË«-|KŸ½ãŠo Uf[ ÜUò×Y Ìmq¤¡¡»:+¯õå/UÙMº?É˺nëê¶¡Q„+[¦Ø•íœUU4ã/[ ÕìªÆ!w]çD¯ÝE¶ÕZ_"eØa<ÚaÄ ¸]ækš1æ@ŠnB«ïÚ)*œ¥8™ aZ5׺ȷy«ë)l1(80àtªÇ$pÂç8ß{ËPH&ÒÔå?@Å­?7IX*¢“á>{4ÜŽ‰EµÊŠIéF‹#u*E]þþ¯7SÒ˜ã<×®Ö›üîòÙ3ê7ûÓ×åªZçåõl,â'sbßn~Ož÷„ø#û®ÈËz}ù2+ †/,)É]W!b–Ê`ä*ÀÍ€‘6èn#¿½]HåWËuž¹Ÿœöº ÛÚÔÕÖ¶hà—a¡ÙP ÿêFÛÑZÿ±Üßçµ^Óôz!ÀòÏoº!šÝvŸYbèèEeŸE•­@R®è››rSä Å}»{nv"obK/7öi\¥m4ðÜ7°ßŽ42”N¸Wåb r„l/dzèÖpA`‡Á‡cvŸ¶½Y„…ûÛ Wç8À˜×«j»5ÄN¶Zé]KopÎÍhÕ)áYk©çwv·†Ïr¿}¯ë†ÀÝæí Qê`‚3ßoKZ¦Ñ»¬F¯=ÅÕ÷ Éý{˜D~³ËV†eÐ6ûB ËÞ›u¤ i´àe]!òÛš ‘è×2Ý1õRcçÖ~ J¯Ð= m«{0ãß ¥ü媪j0^ bGs"ÝfÀ ]°Š–覕àÖ Â+ŒOhCç}Ôñˆ9\!›|²#u—!©;4šý®·<³EØ=žÕ Wä±§“+œöß& ;dirtƄ΄Dõ¾š 1•ôn°MÀà,’½§úû„à”hº #ðØÏ»Å~ÿ«ªlórŸWq ïD¾‚ƒ‹Ø…™Â!“ÃõNÈp‹„c9c1J’øoH±ìä&åcÐ2ë…Óë¼Ü7p"X?¤ÜX€k EV~è i§”Æ7àœ…¶Ñ¹EnÁy‰ ·šxýëü#šˆ>˜ßÞï´ë­ž¿A+úÕv:/ƒíæ~¬sŒ"JüÀÔüA*<üƒÛ˜q"ñ(e\O©K Æq8Œ%KãÄ ¤4‘n­½ ÄàÇ¤Ž¢åñe¢wç2¡BeÂ{Ãe´Ú]0‹²0ĸZÚøÚy}3ˈE¢Wwð ñõxe¡X”öê–¼$ÆóÈìý®Ð}zFå%*“x£Ï¥=âKµ¡‹öçòH¤’©!ô¿ø0“âÁ&ï(ìë=pCö ¦TâÚËýÿ%ù¿+ÉûIIÎ1-ü|ó –œË»»‚„Ð,Hÿ gÄ0׿toåçãV1S2ì@\Õ{ýb÷’ùM¯¥mô¦eΚáf ön‡©:[Ïæu²0Rd5Þäÿº¬6è¿4«£³YݧG¾,§&ù“*õLö¹—¼|Çàšú»‰#ãæ6Ûíô|qâµ™k:Cfë¯f:xù°’­v½`çòÀ ˆfɵЛ¶7aðÓ¨ÖÆÞiNãÈ.¿Ó¥ˆª&ÇkJÁÄh9pˆA¼ ¡„™ü\núçœðEÃm]ÓžX ºU"Z×1ëÆâ“aÓ×êw 9Ú8GÕ¥_ϤçÀ›ÈÕ>Æ:àêF½Ý>ž+‰'áÞàÖà ø_„w°ôRÀÍ8JÄQ&¹Ï"Ï6¿˜¥©š£ÙævKic ~ iƳ|É”&,V¡{ÒæÜçtóòã–1À§á¦žF9yŒ àÞžñ‘ŠÙ’À\hnsÇh]:ë?7*ì¯tƒ*Ò=Ì[’‚O[Oxš«ìYg¦-\„B€f§Ëõü`Hð”%2™…£0³¶Ãæ.-o:6±nm ô_†13»âË\ôaÌx<+3ЯlEߥ%ϽÓSýá1×Ò1!ñEœÚšÐD]-þl$ŠñÏØ—•C ÅÑ˜ÇøÕx–—°¬sÔ·G…EõNs%“IàhîkÝîë²ùî\…)ò¦}(”›Ò~ªÏ]ãS©ÕÃÜ®›·MX"‚QÞöS?¢à}×þb ¡BO’GѨ-JEæhxèÇqÈâXõ?è8¢0By 'ÛìTbà ‡°¬Ë6›ä}$ül½Î©h=S:§IÇGÜ-´á“•‡ç¨Ð…Ãü ã¯í'Õ¾¡vmWy…žS 0‹åÔê ƒf˜ªZ¥¼Ê:ÄEC(M žÍN¯r¬ hú4/‡mLTö¨àÚ—¨žqu£›®jaP©¢¹©öÅÚ¶ßk·|A5ŠžÍPŒéª%ÝwT=,x¸Wi-‡p]ÅË»µþε+°PI·x+Ø‘íqnë (&ð½}üàÎ=(¬“¤îH=·Ó¤•œ$"“¨>ÈSªé85Ô‡(†§RòŸ ¤&)d´èåáÏ·TÈ‚èä_oMþ¸, ˜Äq,à*‡‰ÿü&Û-°ˆO‰ĹŒÂôðhƒý@•϶ú! µ¶qvó²§ÉýM¶¢éX¥üþ¯º_\Œ7ü_8v endstream endobj 858 0 obj << /Length 2813 /Filter /FlateDecode >> stream xÚÅ[mÛ6þ¾¿Bè—Ú@͈¤^ȇ^7{—=ô’mCä´½¢W’×É]ï¿ßPCJ¢,;¶¼É5@%Säp83œyfȵ­˶þzõ—»«g·œ[! =æYw+‹{a¶cùN@œ[w±õnöfî¸3±­þ=_0?˜ÝËm&òz¾pgQùØþJ¤"ªþàÄ#lþþîç«wW\Q˜Ï¶¨å3 íßö­evõî½mÅÐþ³eÖ®é•YŽÀ3µ^_ýãÊV¼¶OBU›0ËQµJø°×øª[¥$t]&—'§§6±¹+s #ÌiØœ>õnáÚöìe&²)J€=«o“TüôzÎm_Ÿþ³[Ïí ܶÌJ.2ô2jì›ßm×–caˆßâs˜ #›ß«}¢°,Nu‡Ë£LŒPr( þ%Jú;¨Ùeî¬Q\»êùm”VB5Æ"M²¤åó‘i¨ãçt†!ÑçãD>«Éf·žªM´š[ |äh8ªŸê£«8Sìß=Í*D¾,â$ãÈõ‰Ë“9ÚÖ«Áæ Ûã<¾Ö`¢Lò¢Ïmm`ƒ¦û4Ê?VQ)⨎ %Ѐö‘¡…´fz†I¢•GµXeÕc¬y> C÷T9þþ[üòËâææÏ»?×ëë,»®ª±Íc‡$àÁ$õdE,.ç4Û¦u2ÙnÌmm-›Ÿ‡Jí~‹«M)Vɧ1fŸØ~·mÆæ—îx{ʪªíêÍÁÎ9™¦âòïE.Zo(}kÕoJ“ü£ˆÑÖÁ…S$Îíñe.q™”¨‚3œänT2zº³e‘eQËÎ,É0¨¸³Z}–{ ¿­Ê"ör ãõuîØ3Àh±Çï6wRAæ  ov£(ÁøRà‹ôïCâõZ`ÆÆm~ið]rV 5S#lHç\z35YÝ“Va|q±ï›+|"}xÁù%рΒ—EºÍòJ.‰…³_5 /•Ú¬Ù†V%ǦãR"™á¬>à ”±R|ï„ ä²¢T3$ù@Ú@Nqt§¹/6²UÑ”ï¯]m!åôi“FI.¤\{v/ÒB¶îæ¾=# MÈ‘4ÿ…PKþƒ|m1 ˜›R‹Û.ñÂŽÉvlè  mf•ÂZ Û§µ‡—ú˜ð[Ïe3Ë…€ËŠ+ÔâWBl˜—8ŽWA–Ñòj3¹Œp»Ý½Éjˆ¯ú“SV©»ÖåVt®<·Æð5°QM˲gŒ­ØN‰ïõ:ÊÕðb—£?ÀÌ©cÚo‹#®±÷r•Ñ~O]ñ @ :¶ff“µ‹VÌ4Fo®\âËm†~VŒÉÈŠlxŠ1£¥a̧}ƸM|ψ=} 9ƒs3’OÌàmm’—¦´Ç”èƒÑRS³&¨œlÁ}¼À»Ì‚6Ô•ÌàëªHÓb×)[[âdË â»Ýf«Ž²*]IË+"Á… {„P‡ÁÜ{{—¶-Ëb›ÇíŠä˜'3_æyÄw¯b¿ß=…ýÒ“ xÄ~&©›ÑE¥×fv¿¶jk’(@£uŸÁN|3AU)$¤Ðð‘~¢¡¸†$á^Û‡ŒÕ t å±ëŸ8FyôUkQH°gL#¤KdŽL);™±Öß6æ°v¹ƒ9LIM[CLª«^&Õ_ìTM[ 8Ÿ¢©eõØ­¡º(|·óGgx”žº(ö¥[dLÞ£Äuƒ#9åé.[–u‡*ó=ƒGõEk¶Íd]¸×[$ÛÙ§’õñ»™˜¤Í]ŸBÖ†„ûþ9KeÂî…ÜË1Zçú²pPvùïõÔØàAžê9Oè^J}I|É¿O ʵ4,lRÑwŠÊÓDB\ ¤g—D‚)ÒXÐ× ñ§U­êK•f:´s•¶Jʪâ •ÄGƒ\Fësª0•m}EYæE..Þ†C<ãë ^ÂR¸ú¢IÕ 2SwÌŒÜÉjÎü]¯R[ ßWìSÅnSNÁ8ç¸Ã}xl]¥Õ7ºôÒõ5mèFäñ%»_Ç?eE­ˆ68µ® Ö5:¬¨Mæ¶“í“„¬ëƒª. „ð` ”çÉÊУÀ÷¤idrÙ"ÌS˜s2¬ûhùq×êwYd›¨Nî“4©•|‹<ý¬Dž(ˈâX†ªe€÷ë_ªµPøl ˆ4’b0ñ®V_—s¨ªiß.U…ôÛK':çdÑf çià^¤ñÞæÒ’ÈÅîà7€VÈT90îîµø©) ïa2é.%$ ¾:®4ZäJXØÓ*R:zyz«ÛSWÁ=âÑCÚê ¬†ûlõpÓ̧þ×p`´4hkÀÊL ’o|õ·Ý+Qo˼:ì§IUÛhx"î Aõ8V$–©Ít@Êú%èC7ì¶ ·:®Ã ‚ˈ#Ò,]Yì‚Ç®&øñ}·½ž°GCòáœG㩯80Ÿ‡{½+îW»âpûòN¶½>厃7¼ãp›Ô•ŒŸúŠBªD¦Ñ˜l¿üü?ÿÕÇúi²U÷»Þqåªmì4 z|ˆª8ãç`¬rÆwïeÌÒ•Ôe%3ÅÑ瑌†ÄëU¼o#<‹lÎ7³ êƒÇ–çSŽÛ‹òÔ‘÷ÔÇ‹xܤNÅàM›jm¿Æ7}ЍåÝ;ÆlÔ‡½’ʾeNÛyšc65_ãCš_2jâ¡—"ѱ'b2_pÎû3à±¥äÕ<}«õáYš|œC“ê…ç€m÷T¬5ѧ=W£N@lAƒs5gÎ>V;%;j¼‘ 3 ~Àÿ îgÿŸ÷SºLPïÔáK‘ æ‹Ë @‹û_#o5¹Ž·úŠØ% ¹Ovb>>590î†|S•þíæ·î*É¢‡ÉE`ó2Êñº¨™áÔÑ}ÚúúiuDúßÀ¶žá-KM ¼™ãzßÎi˜×€.³°Q œÌC ÆSfv<4”£vÅ)ÌôûDß ~‡Á¸ò‡ý%4§!H$p.Âó|LpœCxѹ=ˆÇ,”ºÁ Eš"yœ7e÷­Ð¸)WÏèTëb›Æ&6Òׂ8à››–¥FQYã¯ä•%}+ ^בŠ7³°¥A_ð4á¶Eøx3ð6øBÖÆ —-eRÍ¥'O– Ñîn^µ ¬£Ê ˆ˜0Ê㨌;ñM:WA4Í Â;ð¶øò;éËXBJQÝ3k ðYJòÑÌ ¹àÅ2>ñ&s=Ú,€3u·Möi _šÈOþ~ñr XÛ¯°A!Níçd§ S´rìÒM­–ûlèr©ê[˜c0+jØ´g?*‚xo¬.£Qª#ͺ9ä}ýd…OuçÍ÷µä· ŸyQãË6Oþ˜S{¶m®R¥ìf´‚ʆTv3X=1Ïc£¤aŒë&m.#4o­åS÷êë¿ ª¼ý^Þ‡S|°[‹R}{kr}àŽ!r;FK ³HsÍÔ¥ÍÆŒšŽ´4³$3ü›×|úä?yØÿ³ á0B)ërúùÂsÂÙOxQT-U] f?þú²Y3„Êþ9*çC.ÿ©€½Ù endstream endobj 864 0 obj << /Length 2873 /Filter /FlateDecode >> stream xÚíksÛ6ò»§_BM-„IÌL>äòhÝksw‰“Î]’Ih Š8IIùq7÷ßo,H‚–혲šIëÑŒˆçbw±Xì.ÏùìxÎ9>xøÂ÷„$œqçxáD̉‚˜‰ïÏwîÛIºbSÿg2eQì>+g›\Ídºi“•Å¡.%V"­…Îø„6ùpüÓÁóãƒPÊs¨È‹œY~ðîƒçÌ¡ü'Ç#~;gªUî<†ïÊy}ðÏBÓ I=âù‘F³Hs‘§k9~âB¢Ö©´Ð߬˜ÐÐ]o§ ‹™÷^èmê¬ø¬³ÍRèD=“}–"GªÒ“râ‡î©üÃ&‹Ià¹e…c4"¯E8%¢ ?o'qÇÇy2™Ìs_¯Å,KWˆÁæ½çóó‰ï¹ šŠN„d0pgJ)IÂP³aS‹9Ô‡€U¡¿šHô€l‡d$ؼÔ߬˜g³´1¥Ë´€³ú×Ër³ÂO°A–¯gB·18Õš¸Õ /&Qè%$žšùê³£¯~‰‘?(щ­%–hñ„x>'qHñ’åAä“$Š€’8ðJ8 ªË Œ˜]ú‚tüq_ah—¼BÑŒ¨-š<ŠˆÏõ”<@¿äð:x!a>ôUÀ%ÌOì“Bû½¶ÛC·°õ9á´…o#{ "tCây:Åñ¬MMØBCÂjÀ(!i4xãÁ_Df¿`:ïÒzÐ3PcãŸêi•lá-#¾l¾·ÀAÁ©ÐÜU²<’b{Œ…´ÇÌ# kÙÓ.2‰„œ{­'yJã˜0P閲؟dNï%ón%sz/™w¤3ïD4qCùRѤ»Ë&Tò½ˆæµbW_ä¹hªlvƒUó»¶mÛøÐŽ°m„˜Ä”õm„«LPÏL°¶B;aàØ`R­qû„^o G`,Gak _†hphp ×ZÔœÅHĹ_e3euÔÍð«ŒÏ€¹åZšþÊL…R°RÞâBÛÒЮCY–ðUö¡l ÃL›†Ðòl) «³˜Å>˜¿/& mh!Rm™ãè­! `. "˜K%ðÝu¥ øl޵)vÚ¬W[­ér£S &¿\7«¨’Ï"0®…¬a ›uxÉÜ<?©6 !Ýã¥BÓù:PWÐ2‚íR=„ôLVX”øƒÆ`è>V•Xè´‘”vศ-,©Ù¡ÅLöâ‘5d?­²B¤Õ%d J×èf³²¬æY¡£¯q²”2ËurRz& ÑÉdz3­—d5¯‰E•Τtö‡7e)bjÍ*{Ãy8j¹Û•0¤Ó9_ªAa­ÛÅ[šàYö…"íìŠPQ}h·6!ˆÑ‹FT—BArÈ-$ÀôhŽö#Eï=?hUé (CöA±í%®» 3¡ÎÄk'šn`û¬†Q´ço^ÿK'— Mýq@=hæÁð¨‹ÐÔzQEÔz³œ:»¥W?ºã€KÀd‡ï `F9+2ü#fA ÛÄ{pÿ”¾ÝÑßSîŠPKy Ž“šN™ëðù=|(6ô¡Fûé~H’dnº2Õwž(NhÈö阣}[¬qwùÕNºÒ°&öKÿ¶ÃÀçisk®`ïïFttkpšG5Øüð'Ö‡„1`¾F¬º¸ËéÃXàþ¤OF_Qú´Lá)ŠLŸQ‘PJéð1®c•t“l“ÆL4*ìSUé…N6Co]gÎG‡¦’˜Da2B{ö:¥ÔŽc+æë½Í™2P4~ÙsýÝ'Ù’&©Ý&L^|-_oÚŸ|߉€ù°-ÇWÄGĘ­¨âÃ]‘SÐèUÈíĽ‹½sïæ]\žˆžfó4¥;¡Ð ÷¢Q[ùùNQd:r¥Ž^Z!',‰qmíãPô|&/$ìQw]Zô›X[ûæÞÍKKíMµN›ÐœÚ¨–h3K+-dTV~Áù«z´\ªø;ß§Êóýšl±Ü7÷î@,%Šß˜P6g]ðxWîrF"Žå® ßÖÈeC¯ÍeÛ»½õƘ$Êä4ãððþfô†Ë̺J@÷ƒt‘ÐoíY^»ÃRHÚ¥ NrÇ‹)‹ñè>£g:üÿÕî¨ ’{ÏS2Çà¿Ê °ò9Z GØb,$!KvŠå´‘…Z ¢§¾Têë¤<Æë†©J|0°çìx) ꔢG¬@)Å(¨¥ø0 *“& *Ó¿‰‹3ùÉÆ9‰‚–%YqG`‰EyÚb&&èGrJÂ0¶éýëó"v7oÐüñpå¾}òó›çcé›â,Z–ð`ÞoºŽA¶èëó¸ÛÐ~éÊ‘½PÒ«·Egžþíç7¿¼|ùä—縘îŽõco~ô‚ÝWßÚ0¡ï«®~ìïm!¨O/Üéî‡ÄƒQwu÷C©tŒ¿¿RG„ÍFD5ž2¯2}F†Ç‹+ïù¶¦ƒm¤¹Ü;}nvÒA¡Z6¾ïhYb;$Ì'1dz"PÔÐÞ†}ë1äò<÷HFÇ\M€ç6/²•øñÙ‹p¸®ú«°a€A9?Rq^ÓQ*ã¤eSêZøaûÏÓõãÿþ ô™./Í3XPeÛ†{Üc`²ñݼ¡|¥²8Uó&A4Y.:àëJ,²sµ°€¦ÈÒ¼ +i«y<À6W^A3èoW@ "âEÁ­âQfKüÔg `æÛ:Sòõ/ÒUÝnp‰íÙGþÜÜú€½B ”@*jÏ Aü¨žGÝ"«{¢þº€Bµ.à ÎõܪܬMëbÞmîp÷l™u×™8BB_aŠìõ…¸-,Œ»¡°‹Á³ßõP×Éë÷}±B–j2uÌ­+Ü\`àô2.<ê½¼€x †ãM N­—¼[‹ã•0®ïaqŠg ú…gvS|"ásÞ{"åÃ'P43CŸ Öxä Ëâê» ·úüQŸH$œÄÉW AY×ý ‰›£´šþî®Ðn÷Ð}âñûߪdNï%óþ…ÄŸí…ÛË ‰ÖDý>b<ôn©«Ë»xÈ€„ ÂŽpÍ×zºàA~ñËå­«F(EÄÀh£ vŸ.Áz–î^Œbpq'S$ÃÇ׳2ϵy£&›"‘Ÿˆù_2Çòr½é¹‹t†Íå"ò÷£K«Dáÿ0®;ø endstream endobj 869 0 obj << /Length 3011 /Filter /FlateDecode >> stream xÚÅkÛ8îûüŠ _Æ&®d[~è‡Þv»˜¶¸kç8t‹©+c;g;óXì?R¤üŠ;G‹ë‘DK$EQ$%JÌ®fböËÉ?.N^¾óýYâ&¡Î.Ö3?Œ]O³(ˆÝ ñgÙì“óûÔÍ^;oËÕa§‹f¾PNÚäeqFðz«ÓZSÃwC×›¾øõäç‹“ÿžH 'fry€:p#ÍV»“OŸÅ,ø¯3áúI<»1½v³ Œ¡ÜÎ>žüëD x=^—®ð#b³Þæ+]ù@:9—i¥ç”{d4Ý4ËW Õê½^å뻼¸¢~}MIåRs_˜ßªÑõ¼Ùè‚iíöeUå4€Ç/|_8ïæžp zèt5—ÊÙ0õ´15„æˆ2¡DßÙWåÜWÎužñ×”ö[ÂÉ,¤t¥Hå¨Ké\Ï›t{Ð5`ò½È) _ôQïa´D+ëXiª6®€r#RáäF’Ú>½ ñ'Z{á¼7+^h·%¹‰Ï[¨¹Ái•Y•4E™žb‰zŠe§§~"XO~•_Å:êÕÆØºÅ…†—1\,R¹V6RÊ9g¬»tÏ#‹tg‘˜‚q(á]^àR^è@uz}7•c@ ¿m¿¦·w(TwJêvò—i} Ê^áñû{ÄG;*«²hÒ¼ - mœ–¼mXêfßàÂ4Þí›!°Ò)J¹»Ì¦VHᜮ‘=Íjt tt[›¨ë¤çX_2,¥Â–,‰2²Ü3ÏÒÙdkª \©F¼µ‡Q­—± Kõ,IGZ2GbÖÔU‹¥dD¬œÜ°»nŠ6±2ÆLFŠ…)â2 /$°ù§óHà‚{±$4¦•!o'Kà ÔÑ VpfIäÅJÓ Oˆd!$üg¼98Æ?bL9_E~ÛñäQ÷ñ¶z Ñﺦ<°ß]ÝÌÉàÙú¹" ¬oOW·#fùD\¦4†¹1n›l‚e{,Ð.t˜ ~ñ„N ŽæU ' øÑû3×uŸ‚æÅH8(ùd T‘«üà+ ž6þ HjÅÁÖ—V[@#„«PA|I< ÝzS ™Ãù¦U•ÞÍf± Ö±qûd“˜Än¤ÚI§Eö-“è·&‘iÙ“ŸF{‚‰Mx¹Cêø‰Ïjتw¶Jg4®Þ}~º‘CK-°Š57Ý)ñ¹šûn‡Oq­¤pˆl«aÞxW³®>Ó±%‰ëGQ«?õH4ßfïØù…I;aùc˜f›ÄDnòfs¯Ö‡®LZ­‡`¤¬ê§ëjâ¹I𣕒5õ. ž©°Rn(â§ÚƾÂ>3tiؽڃ³gª¡Á?†êBŽïåXÛèHûÃÙ‚#Yq†pÖ¤4=ò Xæ•?}DÛü;u<ºÛ'¬Jsq Êujækà&uƒn6°ê}ºÒ‹ÉD…Þ§UjL9f<»<¶:Üè°Úo¾pN)A·P¡rÞ´iᱜ¢¾œbJP°ç±™28¥^Û1X×TRþ¥¶¤#Ú$1€`ñõKJuß`fÇð±ÍNJbÀ»'ú¹u!(!dŸwl.)iº¤â!’<&À-7¸¯0k #d{4›J„†z„å4aÑ#,G„ÙU#zží×fVOæµÍéj!cPÆmZü‰U³§0Ú1Px…£‘üÚ»sÛÜ:v!E=P˜3 ŽýÛéa×¼&`oz†O?1ÒvNèI?w±vêfÃÒ 0M­?û°M¼hζ &ŠûÄSe?w/10‘—ey›ƒŽzy±ªð=K=ÊÃñî£ ´»,c—´ãUÀjŸ9»þØ K¡ófÛp·¬$Ñ-*žMµS>qò½G»Ã<èJ©¢PQª(¬6s.ÓÂòŽìЂ´“ 9uª!±’‘õž¶@‹· Y4¢•Y¤ž0Tø[^[¾VÛC¦¹£É_…¡SiÓ®ÐÛ=§lÚWW6Ü5¸&és³9m&*dòQî2`É„}¡e^@‰Š°Ó áË^ÖÍ`P^ 7I†‹›F´’>@ÍŰþÂ冈Rfy©§˜3}ögWšý¡™´¥} FHlî •Å%¾nN¥í.zº‚æ°!³Ö•,!gk…8RøŠÊÈg9ìÑfÓ?Çè¡·n‘ t~ªÙ0¯­kÆÆÈ5õùÊùšVÒ\*˜Êº]ÚšAÝ|%+6” ó¾ÁÃ7 FX²}áµÖÇäźŸ³5‹ ` W:}’½× 2h9ê¿ÔÂ6é[TIqË€ãá€Í7ÛzrKÕ‡ýÑù1¯’ÛžhF¼~æ5ÕúÞS©áËŸ´B rÅo éMVÞZóœ§Å¹ìZ)—U¦«á·3½9öŒãG‰*€³çƒß$¿›Äk Ï•²wþ/ q~¢ù×ô*’$•7ÿ<7’TØO€újÌåÿUk=Ä endstream endobj 875 0 obj << /Length 2344 /Filter /FlateDecode >> stream xÚ½ZKsÜÆ¾óWàf¬K;<Té KaB—²´I²+XÉØà!’Iù¿»{ºìb奧xØAÏLOO?¾î([G:ºúnsõò:œT¤‘9›ûN&"Lg“;Ý¿®BåC÷ŸÕÚ÷m³ª¢îWkåf}ÙÔ/ˆþ¾ØYWÐC "á¯~Þ|õÇÍÕ¿¯<8J:±E,cg[]}üY:9пw¤ÒĹ׫*'ŒøÝ;®~¼’,æø+™a«Mؽúï/à¢m ¤µiíÉPDæk/iXþ ñ¡\@? Ý<ë3íڦ‘r’A¸/ˆ:t`3–Ç{Éì4þ‡åãå'Ò«uGîæŽyeíÊSî­Æ®ŽH}CGöfÍ3k™x[~^èBtQ‚‹xs@üËöûˆõÈÛ˜e{zmf9·¯qFäçÅnVçˆ Ú/ÿ€OéDî FLÕ"ÓÚCA+R—@'q³ÃD3 QÅ]ÑQ[ ã¥Æ†ZˆÈ-w´–²X‡¶Á+|.ó¢#VµVî½ÅŠè»U(Y†Ôœ×-]<Ûõ…¶¡´Í)æ|1ð£;"‰ ÜÓßÜo6øü‘úéð~³ÑÜYY¨KŽ,üx—<Â¥Ûf¿`Q$â0½z^/¥¢/DÞî±*ÚöŒL‘/â(¼8+|wF¦'$&-Ó¡éž+“™ó|5Ä©”Ç‘Ñ\]Üž—Sçä‹å|û?RgÍM;/íÔùÛXħСÞ'¦›»²£Hß6UEX†aÏļÛf}‘#ûÎ8ÙÐoÝô4ÌŒÆfœ‘H£¬8ü4ôfa‡hßY~ÄÂÊA׸â #RŒxeå+¾DZ—R›‚Éýt€f:eÁäù8^ZÉŠ0¶y¦:ñ¼:âÍ¢¹nvXÂx$ ´(8˜¤Í‰€: <Ùâã­&gžíG)ô¶*»EGdþ\ÌuGýnàÇxxM³Ì»¿ÇUÍ:/+ZˆWÉÑ/&TCiï1‰æqœ8ëA¾ŒX@€0ÐA¿/À³tE¬Øâ³m\•у9ðX Áôô‰wÌ< h'4 ø Nº ÜõHéŽÓò„TìŒD\86VúúÓ‚y88”²ÌJÕí˜C ¸NÁsRÏæ0'O>×fkƽ9ûcU©ing“Ù£æ8lç!™ˆÄóí<÷±Yš¥ïÍ BŽO’gñ1ð{4³Â÷¢/~óŽCÇjüî}ÂÅPƒ<Ç1¢Ì¾Ã«nuñgøÅÿ€:Æóø}oi¿Æ²Ãa…0ÍÍgœ@A½ZGÐÐý'ÁôR89Ãh$QA¹Ëzä 9+ÛòrD¾×ïnF_1·øFáÚ endstream endobj 885 0 obj << /Length 1547 /Filter /FlateDecode >> stream xÚÍXQ“›6~÷¯à­0S+BB`:“‡6éu’In®7/—

S'ù[‡/œƒU:A¸€wá|˜ý9£hkÿ&>˜J ¹žúN 'Âëãî|ŸÄB0½=½¼O å‘Ý™ Œpߘùøuœ›¹ Ô}Sj‡lU  nû¡­ójÍ^”¿¸ÅÀÛÔ™³ÔkÍ›f÷?QA³¤¶ xX0á6¦ _ê¤ZË——ª’(¹;‘äÕ^Öm­ JÁ½ªu‰]ÕŽIUÑ g¶ «ÙªÆª[Œ—ÀŸtl¿‘˜óý°{˜ÝÀ‹37Ñ/ßm®šg9à¦Ä$…íÇýÙÆªV¥ýj7ÒNl<_›b< ;·½ë|¯ÕÉŠxsÎ"w¹Éq9û†iy™IÊÔQ©‰|¡£ð ¡ ìTxm¢ Ïx-äÐÑn}ˆõ…¶'/äI´GÞ D?=Ue™T™>;0ù·›ÑÞ™Û$¥1Ø™ëC¹ˆƒqØŽ®[PwåÔEä• µÎ¼²ßV+|L< . b·Ú¶]x µ÷ –I±“m'5KŠFÙ¯"·eÖ/TË©V«U;Ô–ª  Y6° Ø&5칕u7 Aëoå9àÚÝ‹ÁFE·Qqn£œs÷ƒ”Çq?„ß‚ÓýGCÈãnz#SíxkÛ1šÐÈd›äECÆ$uorš2 XNbŸª8Y„|Àƒìyðò±b÷;'ךÉe»³±¨:ÇÚ×­R€ŒMŸ;0D²#úa¼Rp»D(6R£d2b[¨¶í'ò*Ã0™ö&A n¥ÄuS³#Ò'Œñ—جZù‹Í­­ô k UUè-Üa:Ùm{†=Œ&ÆÊòVfYom^µÒ:jeœ‘ʧ†À(x½Ë›ö> íÒz¸†ÏAð—@pøGyNð>Mþ„#†ÁzÞõ“s ß¿¯‚oÀxY11ÆÃ;¬] D~ˆQ„Cž­-ÌlòTÜØ¦­‚ ­ ˜$¯ å»™õ¥Èy…]»ÝL†l“NÔ' ]2]jõ¸b{·Å †úÆÆš YNÛi_·È›gL©ô91)ž“*É‚I®1yK,$>˜{O0­ =VÈî¾§ÊBF"˜ûƒÈŒcHà"“w Ë‚P`Y®……¹…kù ˆ¶ÿåA!mç°Ú£ÈVâzÐd–Ì l½­…·(€6dÃ;+¼ºk7 ¤*“FuØ©¶2;-GÓ¥¶á‹I¨éΰ¦îÝ5¶(:îM¸½îmXç‡ÝÕÒ(•µNÆPë˜ßÙóð{ÒNÓÕPOaNþ¨®¨T;Î ˜^ïî!G šS&èkÝØ5ršM¯‰À)Ìëþj)¿ÈTC÷Úº¡£êlµ«×¼Â+]’=gÙ> 7¼W:Š{m±\z‘pÕ•¹vmŠ\ùÖx¯ör©®’µ¾2Ð-¼«]ùUï/œ-Ü ds¾N1ÿ 46#iÜÄr8¢heÖAýAþFÁ›á¿¸ÿi½ƒškÄìðbwgÅýxohÂþc„)Ÿ(æ×¬fB[‰‚ „ÆãÒ¡õô¯£=÷þéxúcTŒøþ »ÿ±ûÊú²±¿=­Wáã׫7&$IÌúŒÃ£©•ÿCõU endstream endobj 897 0 obj << /Length 1640 /Filter /FlateDecode >> stream xÚÕXß“›6~÷_Á[a&ÖIèз´i:éC§ÉyÚ‡$3å@¶™Úà|wÉ_ß]I`À8çKœ‡ŽçÎFH«•ôí·Ÿ–z+z¿Î~ZÌn^sî%$Q¡òK/ ½HÄD$Ü[äÞ{ÿÏ@H_êÏÁ<ŒbÿU•¶ºl‚¹ôÓ¦¨Ê¶ýÞè´ÖöEÂàãâ·Ù/‹Ù¿3SQYÓ‚D4ò²íìýGêåÐþ›G ObïÁôÚzBÅð½ñngogÔ¹Ù}^R*Ž£óöðâ¤ñÝqaŒ‘Dʰ]£„òÈ®L’ðȸùõóxïç’R\~•æ¯R»/›7¯•ìí/õæ¡€ÑÒ:Ñ L?PIáá`pǰˆ$ÜÉ» „#Áq°Ý’úipê²9˜ªuSÛ§‡u‘Lúkû¸N±ç}Àa¼m¹Óº´¿6EùOR_;«Me¿?P.6º&è×´'Ía]©_Ö?sιÿÒY8ì6nš¬*›´(‹rå\nç¬Ñ»Æ>UK7níFÛ]…¦¡GëÕpyi™†”‡íÞíÁäÇeïkíôî,q5i±içZŒì»ùÉ6ÃeŒIØOÎI¬Â$ãkA²L·ú(ªŠÛê^# -UÔëËQ &±]p=úÖÀ÷îýC‘¯t³K›õ„) k¤âRS/&,@ Å.µPê‡v'¾iQg‚sΤ" c.2Â~d˜y[€ªÄlû"mFÌ®™¦Ua![º•íÚÇR#¨ÜLD ø’Ð_¬‹Úv̪íÖFôÈ+]»¾Ucßo+4ß±¼::W;k·ÚAˆ„4FŒEprDÄÊÂoÜh ®D)€Ýmâ"ˆ¥_P9ØOðPm÷cF6Áí\×™%œb‡ÈÓ\ÐHÂ)`t9HŸ0ŠÛ\øUFz$–°þ&¢ó¥eËöûP9±†l—5#ÛÙÁrÕÞ¤GÃ/Ýv~O¾H®Å€‡ñÀÿwÞ8­Ip¦‚uý£mwþ-*u—×@sàúæb @<+‚ìËIõ²Ø8„¦óïi´\Å0± ŒJf~³ ×s]|Öe^ Yò9Ьú€ †³oÖ r%œÿZ«u󕆶Zµa¼t= Éäî²v»ïz‚ÎÎé¤xÄ7z3-Ç~GýV5ÚɰÆf£€ÚL€ªÊ5Vå]tÓԇ݉Ø*Ê 4ˆ«<ïÐ^”¶0²Ò)sÝÀŽ Î>ŠÃ¤’´°¼7 ±÷ £2CiÔ Ìf¨œØa ê=é"üjhäpüqN ‘]·)ÌåÄêx›ž¥ÕPõ“êS\¸MkÂ=l÷©1’èÈW!VÞ®`|ßøB¶Ì»«¥!Õ2ou|7Æ^Eœ¨’=ôÓ«¯„àEçò´z«›s‡OI>)»p]i dÏeÕˆHþ 5nxð>ÝœƒAƒVÃüz‹y“ÃI™“ä\µ>ÙÖžÎÅw-ù ØTdš*Ûâ^aÆFîÙ\Ï(æ2Nü7ËQÿæÓÎu…„wºÜ0’Dôx*ÝL,“%„w -eVµ¨ÎØ+.#¼ŸN¢‘ªS¹oJ˜¥ÈèØé\Š’8êúj\Ü#þË´ËݸpÁÊ`ð,‰äP7ë½M<¸'¾­Ìܰ7O™H§¾… ûI['0 È †fJL‚ùF–ŸL]îZKmF4ñì°¿ÓY´\2èŹ²ÁÑLk è»eË)øÁØ6ˆgæáZìÉ–AÙKVàzÈbˆ[úÂvq8¨Øst¹×ÞrövÂÔ ñô+w*VîX"@C†'‚ÚS¢¾D‘ äd…g¿ÅaľÌ2=ö»ÄÜÀ»%íÒ•f7«}º[³›Ç›mQ~…ù·°p&¢io'<T`>A½ã?3ß ÅÑ8Àx>Î4Èô»ñ6ô[Ì@ŸÑa‚êeÑÉCn§˜ÄpÏíÁé\%•¶à²ÅÔ£ )8aqüM6À ¼Ø…T&_,è¢ð‹dWÔ=±n> stream xÚµXKÛ6¾ûWè(kEõšÃ6"Al£—$Ú¢×DôpEyÍ¯ï ‡zÚI×Åúb’3$g8óÍCö¬{˳þXü¾Z¼x˘•¹YÄÖjk±8u/´’0uÃŒY«Üúlÿí„‘-ꇳ ’Ô~]o¥¨ZgÙ¼•uuCô¢\ Z07vçëêýâÍjñÏÂyžå[IW‡nâ%Ö¦\|þêY9Ðß[žË²Ô:ê]¥Æ)Œ…õiñ×Â3ºö£ëƒªžÄ OžÕã„øqxï»Yø<ï{®ÇzYänÈ´šÿ_ŽõyyžýI8‘ÝÞV­¼-$W²ºŸÜûâm íYË „"R䓘œüâE^]Á¯wÀ+¼éQ?q3f¼ó¦âë­yvÝИK59\lfbz%+ÛÙ¸/ê–fGYåµÃ"ûèÄ‘}CÄFà†¶?ߟ“%¿w€ˆ;µä“-8w¼17ƒ‘—ÂçôÒ«ºDôîyû§pÏ~p|P¿xŠÃâÞap‰¾àAè¯ÂLžà28 –ó}cB?°ó>¦¼Ñ7˵,dûHÀ™`áô‰(\gÉ@ëw[‡#Q~”¢A¤Z9̃3¿ygôb`$?éö¢Ÿý •ªHèͲ«kÔƒº¾]ðV(d¶´‘ôj$£Û­¢œ6(™›£â‹Ç˜Ø´½0©hËQîEw¨Biq”9¡«Uø°dš¹>Dò’CºŸ€ydQyb…™p(h$„µº&~£çÄïkNÙ÷2ÀÂ)ŽH­x)ÀüŠf¦KÑ4/?ÔUÇ«ÄýŒ²$Ê%@Ï2ã˜ä ƒê¨¨Í޲ÝÍv> ÓyqР€õ½$”!ÂÂT£_Ó?`ƒF´’óÝ´Ü:¡Éްà†([QÂË€L¶0[› ±5¼uÁ«oZ¸ß)7•Ù«Î7í¡câƒo4p½)bµÁ6þ&pª4¡{ ˆÂ–R´È†$»!fw¦n†P£Ÿt|L/Ó€‡‰öÙÀI޶¢ð‚ŒC6›Üâ rÆúÅÐHÛ«NÚ€fmûD›÷ŒMÆ^Ã5ZHJ6jZåªC¹§Dø}îàe£à¯¼o¾ïœ…yó²fCÏÓÙç jC)dõMä/ßòB‰³ÐÝó†£ÿåæ‚\ðªP5Às,ÔU1PÝw$Ú€³†iNôº"Á!Ò¿]qœXìßÍL¨÷î±ÝuÔcÕòï¿8u¢T·ÏÀÓ´|sk™‡@çVÑYLC¼ú†‰L˜:% ÖW-hq3¯q½ÉtÏÖ•3*Û¼¢¸ž†Òü¬úI/xj€“‹Ï¾çaà1¤‡™ÈCJ¬@ ÅaÒÖÄàfyØfK½%â»”º)0‰÷†%ÿ>&D˜0«+„¤kº£q$QäÂçixÚ3¨MÜ8ê7h³„öÂ9.ˆi 3ÝÆaë¶Á&ÉSÕ§^@ÍMnœ…ç››îu´ ä5û–ä©ïÃëË;—€;qšé.iD¢Tƒ †j™KèщÚ#@SBî¢+Œ&.ÒiWëIÅ‚ý]ã:lÅ„Å#ïKíêC‘OEðê'ª%£BG;M¥å#š•‰~qW,Sêç©©+¬¦®ngåöš¸J¯+Ĉ³ô1}= ¾Àðª{u…Âza=ê›SBgߣ¨aÙŒR~f qÒH§£^Ÿ§= O$^¿Ä.ÉÆ}n:ô¹&C©ä¹éyû©T“³ey(‰Ñ«aZnÈ|s¤cŸ¸Õ.C/oJáiï;þØ›ö¾Èiº?Jöm_=ÈdÕáKaRûæ–ÖkÞü¼ž3?žÔs\£íØv^ÏY×Ù ³w2žÐ'kA£âTE0Ýt·VtÓrøæÅWf¤asm2-<°kNú¥2’dK×Jsƒ©z`×N0"P;sd²3Î;î$õ¦UÁûº èÈT¦1Ùè°Ÿ¦ŸùÿˆQ áÉ#žþÕ W„ëû£¤ä,ã0³_Õe OU“Ï¥Ô¾½{§ŸF±›A×"°l®å¿@ý`m endstream endobj 917 0 obj << /Length 2222 /Filter /FlateDecode >> stream xÚÝÙ’ã¶ñ}¾‚o¡ªF4@€×Ã>Ø;ž”]—íU¥v3»3bÂC©É_ïn4ÀC¢Öš+NRS»¸ÝFŸ™sï0ç¯ß-.¾¹ÂI¼$ôCgqçD¾ÉØ“‰p™sãþ}&Wm›ßfs?ŠÝ«z¹-UÕÎæ›¶y]]Òü¯ªPi£h ¼Ðóg_?^|¿¸ø÷RÌá„Zz‹œeyqó…9Ìÿè0O$±ó¨¡JG†1´…óáâ— fØìZ—ÌóC»Bîl`áhò×þ`œ{IøödœyLDt²ÀóᘚÍçÓqnæcî5 Üö*%¹øW#¬ß\‡Á@ÂÌ™ûöÄÆ…û`Ïg0ÜàÑ<ð=Á$ìÒÐ1C„pa׫´TH|æ%¾.¸ÓÀ܇´0½Ý&­îÕ;äðÛËï áfaß/¼¿¼,ìî7yöî†_ú—Âó¼/ž¦åepâ4î f03A…âЙóÈK„ÑÄ÷•¶ªãÂM©ig"pëy–ƒR6 Ži ÒÍ@¤j ê1oW~¥¨£å¤!ïóÄ¡*o6>sfÀ§E“r 0¨Íy¤«m¹ž æî 8n ÜMJsa€âõP½Ó0x sP&Õwdg›Kêi6‰ÆPHW¥K„3£.à5¯h–„p°,ÝZoT¶W÷4“Ò¾M'}œEÌÕ2ŠÀ @UÔVˆ4­ÕÅhÆù™¼œ¹xnææ™YlÝR­ÌJ6¦"GTŒîMPÙÏ枦$‘^ˆ5© q>äKÄ 2 ½M“zÜ@#Gçd‰á:ûÃ…éÔë¶Óæ¶Ûu¡Vàl$wèÓA'¯–ŶéO S˜µ~ ·|²4>ÑxY×›,¯ŒMmD‹ÁëåÉÄ=iŒ0éÚNÈxBtn?žÔg Ìp ¼—Bn¨=0è€ÇUÞ©8àè,Òi 3>/Àéó!TFr´tï®[_ç;$­ŠF+}à.À˜µfUo‹Œ6ÜÚ#V¦SÖ¹y«Ê)±hCŒF'Ösí*5°CvF!ëìPu)!¼8}8¤ôúáðûÝzƒ]Õ £|NpD ´ûD˜äLz!dâø9’ŸÅ„5Ü™n‘WÿRÙ»ë´hÔ©èÆEà%ÉTtÃü‰"4Fè¶e0¸…nFݺ¢V¡tòAu•ŒÛëÚïE6øA4Téq{¿É"£H'IÒÜÐ0aØÙô7ªÝ’Ÿ¨ì 'ÌBŸ÷„! Xg°_ŸÆÍZ-óÏLHm¿0ñ¸R&D£ÙÔÆhQ-Ó âZö>ÄgLÌøú^ Ýê‘ßÎùÂ?~úÇËìœ2E0"ôûRÖ§Xâ”OðdÈÏåc‡V<ÅHèñà ¹óKùØÿÉ|t¿}‘'ûÈs£Ÿø^Âø Ï(Cí¡ÑžêÒÞdaÒzF’g„õv…¡˜ëì†üŠ–¦>ÆwÛaZ"#í*Ž¡ ¦R––ö K&*¶ôXÆ+i2h‰lhɮ뼢 XÑ þ„Ë4Ù s±<‡ÌíÈ/Ã\Šh¨oꟄ$ØW;[3Χ!ïhiF³¡3 á¾ßÏ3Lø«ŠÆ"«õÏ{Í«HFœ-™ÑƳ$rüÎñZI×ú§Š— \Qüÿ!5Ôú/–ÇÄÓÖÿª<šuZ¾XÇyÕ9âè~MŸtà‡db/ß5ˆ§>Ï`6VÐ=Š@ ˆñ‹pè(@<_~õ#‘HzQtŠ£€,*aÉSpƶч+„œêìïV&?«‘¾ÇAÆúª$›ÍyÉØ}¿Jט—ÍL‚ÅôÍæ¡L?½YÖeI% ð‘zÝ”*oU–Q} CH/,NæÞ¥K®¿áøù‡NUìiA~’Fšj endstream endobj 845 0 obj << /Type /ObjStm /N 100 /First 878 /Length 1431 /Filter /FlateDecode >> stream xÚÕYMo7½ï¯à±íKÎ9Œù€Û-Ä9´5rp¡H…íé¿ï›u›X++\ËBÑ qÉGrøæÍìpM’C &$ æO2ùc ¹¤PñG ý\Ðçã5peü¶ Å)M6˜¦ "Á45Œ+…BþË¡ÿ•P“ÿj¨âóK¨®†– ~±_Ê V44†s²¨ä335Šƒ‹é=°–§! YÓ§€\V·¼lhޤ°µbå è`ÓÚ`EÅÊÆhìn~¾*!·iˆÁ4Àሄa"ÃY+Œc'kjhÃÊ`„[ d0E¸ƒ©ÞÀ,Íh`&¬$4|¦sàà†uÌ(pf%pnš&–Á@ 'k9ù:†Ü@°’Ù¼CBÞ°àpÖR`˜SFàZ¼áÀ„• Á憞â`˜ÂÕOÚ°»eèÁWnNL‘T½ÇhÆ ,*8z¼áÖeâ¾h ]°âÀ¹‘ä= xœÉæ=’NÑ(‚L/IÐãÊï—xnÀTòžŠ¬”>“ÖC :$§¤¢Q\UPdÆ †Ì5CÞ-{ÃŃy¡Q¼ÓAÉÐp õqva³9F lƒ1•¢“^U!Ø–-h²>Ó’¬•Á:xÖ Vݯj© ''Ãø"œìKáUúù—mI)‘°ÖúÃû÷o†'OöâXcÅÆ=·¼ÔÅi‹ª ÖË•©‹#ãÈpÔît³¾ ''a²„üý€ ¬Zÿ©¡ÔO0ÁyzÀNãË«ÍåÙê&œ‡ñå‹Ó0¾^}¼ ŸŒxýç+ \ü¶Æç0hµ¾¹Fþ1Ÿ>Œ¯V×›W—«ë)%M]?®Þ¾»x¶ùÎ: Œ«Þ`›‹+Ìn2ð.r—‹Éêèig‡3Ùæ¬B=Li-J)j9flÝÅUŽÈP}œjäTú8†ŒDû8ÊÑ™|°<¶ü¾­•Ï"Ø/œCå¡»òÐƒå¡ å¡ ä¡Ëä¡»òð”ÔÅ•-·£ºéÈž)²ã™[“ñLáežÙÂÝFÇ}9v£Ë".·ÛÎ{wéÛGùÁ\¶].ëÁ\ÚB.möÂÊÑKª.®Pô‚ä?L' ¤9•Dçøt½Þ`©ó©ît[f[NãÃxöá×›éù‡wë߇ñÙæêíêjZ:½¿¿ŸŸçéÁ¹Ä)šÄœP¤%މQÚ"m'T/(ÚbcìéDãY¿Ý¼Þ8à«kL|·Yƒòäk§äŽkª,sõnOB›aö%´9,£B_§VQ–ôqìeXY€cÕøó³]IÚBI6šKÒÒd‹ßWn*Q6Š‚Zw#” ¨ô½´À¸>FÍÚÑh¹«ÑÇ‚ 2’Á+kò{¯DA°TÒ¿h®QTŒx‘…; à Œ ýeC8Í£ÖF­-ˆZ[µvOÔÞe¶0jç8Áªuq¸"NíâRSíã’F¿Höp¸.:î¼1QG’£.pnèXï±w±­¼ôø·c«;©¨é¡©¨Ýšì&Ž˜‚¤à…:_kBà™uˆF®G”ϵ~9à /ò ÅNCM ȉ(|pmäDè··’b‡«£•e¿…Ûø3̾ÀŸÃXèâXL}²!Þ ¹ËH幓²èx=Ť]×e§`)±iG Ù¿{vqmmå±q¿çKËÑ‹“–v2‚c{HFøÌ…\"òmÜý"Ÿcöˆ|¦Áׇ‘q¦SÙ#}ã]$}œLECß<ÿИjÿ´ŒÐªÔ_ð.Ï÷„ê޼ºª]\†3RÑã½ÜUoÞUo>X½y¡zóõæeêÁŦÿG£‹ƒiz÷Ëà_«kÿO endstream endobj 928 0 obj << /Length 1747 /Filter /FlateDecode >> stream xÚÍXKsÛ6¾ëWðVr&‚A‚ ÅÎä6IÇ™N¦_œ`²Øð¡’ç×w R”,OäTéE–ûÂîâ[@Ü»ó¸÷Ûä—ùäâ­^Ʋ$J¼ùÒÉŒE<öÒxÆâLxóÜ»ñ¯ƒXúzÓ} ¦Q:ó_7‹M¥kL¥¯LÑÔ/ˆþA—Zuš‚%, >ÏßMÞÌ'OB°Ç½ÐK#P³”§Þ¢šÜ|æ^ôwg"›y[ËUyq2ƒ±ô®&N¸óuY®r%¥’ÐkáÃ#â‡ÝîÂeRF¸=4rÆEJ;“,bRZ7ÜŽw3•œûW:¾™©ô›z Ýbˆt½Ð{.Þ&rrîM£tIréJ›9Êë?qÉ;mLQßA”e$ýV/ïU ô•Âù¾®0e™p‰û½¨¿@:$÷ZÜ÷@Çhi³B±£Å,«’íGêä¦Ü‚Í’h”…äœYøˆ_çÊ`.kã’qÿ>q'§$$òU¡ÝRìy±›Ÿ‡y0ʲó‘øÛ¢ÎÌÀ–Ö60n¬škŒ8¥‰@ºô­a·›b¯Š²,:½hêܽӗ¦Ã-Lã0ôç+gÀ‰o4éåDÍ‹NÝ–º;Ô/jS8kfU8ârS/hÕSª,uŽq±‘°‰§Hl ³ž8ô‘_7õô›npOîÜúØ=àž†4EึA%TÂ/ ‘‡ "­×¶qøp4ºÀgŠêP4ÐÉ+å¬/0¨+g4é|p߆·â¬Ô—,ècá€@Öw !¸ô»²÷Ppå’¨­^kØONÔ}«NPµš¾V*×DÂ`Øqå>õ»À*È2ÿµM³=áÈ6äYU;jç’^ôßâVšv¡?°]jëYSU(y4ç6€$PCxlŒa²ézàé± Ù´Û•!,ò¢Õ SbkÙ`rtàÞ[7þÓ"úzµzÉM»è‰MíÔömÖëÆºãÛ¸[ÎúÀc]Ýê< rw*—¶nŽ ôXpHâ8D)4À,Ÿ­¯÷IWÇ ò‰GŽr‚5Ì6 ôc|‘Ðà;; ç‚å©Ü›e‘Cg1BçôœèL÷‰ö¶éžÙ¯Iøþå¼ÝèÓà÷ré²0Ö3.v9x¬$eiö c*B‘ôèÎ-gÙNÍ‹¡Œ\Ai<_M«ú:Z±-¬¥J9hÕêš>aÁ¹Úl6†&·XH{uÞ­4â”%³ðHßž©2è:I»3W¶“]X.Ûçôj£Úð ¥VéxszéR˜ŽäCÈO´;‹?É2ìr¨ÛG¶¤Î¦ÔGT&Ká¼GãPO”ð4Ì“Qì*ÙEü«!é»SíáÐãV\÷,•6«&'i‡Ì@mÖÚ©V4Ô«iK|o¾gÅ)©-|ƒ€ó/ô;}œõÈ9Ôj³!µÓKRãþá’ÚÜþˆ6Îú+åÈCXì5x™À1±«û"׎]Ñ@w$bº/Æ*œ÷Rö(/Ç]m_’[(ûäÙî´Â¢¨é¦¥j ;ºÕÎ)çÞ±>q!ð~oˆ¾VÔÏõ†Ø£á`°€Jín.pà‡½¤ÜgÔõ¨òÇàáPf?XÜU²Ž64êv£PïI[[ÿËöû_¾T²ó ž})ª»×Н³­±{ØÍ­0šîßC‘:<‘’%Yx*BºWêÍ+ò.<ƒ7G4p''kÈ»è)/¢Su0Æ>? óIÊDíÃü+Äv#¶«G&=¯¨3ÚZèÆ¢xKPŽ{'m_ŒQÿð#>ºµâEUë›û¬ 客¸¸Õ$~?áÀîvÜ69ôùűևà€ÙV­Wa¯Kf¤»o£áňéâëÀ6³lŒ ö%³ØÅ]¤~÷Põ•æv0Â塸«íãV6J0VEU,pšøö\N sá$‡>Š h÷q©;gqˆ}„~«;¸ 8IÓ;t«º£×¡qbéÁ(ùv¥[}€ }8ºþ_¼.CX’î2ôaŠ ¦”¼"îW{Z­×îÓ¿Ô!«Õ½øðï`œüoðã¬AE±0uè`šÀmíW÷¢ÿ£i·0yõÇ¥*œ@x™ ‡‡^þ’5¬Ï endstream endobj 937 0 obj << /Length 1942 /Filter /FlateDecode >> stream xÚ­XK“Ü6¾Ï¯ÐQ]åV(JÔ#·¼¼åÛ3»®Z;µÄžÖZ-vD*ãɯ_€€ÔROWjâÌa¦ù Dpˆà_7ßßÝ|ó:I‚2*3™wû —AžQZ&Á]| ÿ³IU¨Gûçf+ó"üÑÔãQ÷n³UaåZÓ¿¢õ÷ºÓ•Õ4I¢,’›ßî~¾ùéîæ÷›D‰ &Öi”‹<¨7Aë?"JÊ"xðTÇ Í øí‚Û›w7‚Õœ£´‘Ì<•ÅÁOߟ/ÇQ©”œn‹H$9ÝLE2Êb¯æ×Ë >n•á»±u+Nß¼ÎÔª"ØÊÎ(䟄ðçUÅš:Σ2IÎÔ,«x£ oD›m’$áÝ¡åé×ôÝFªð‘fv<Ì€ãÐé†){™¥ ‘±R‘ÇùÇ&“×áÈ'!UbºM ôW´V`ÛRN¢µaŸmÐK¯m¥ÍÊ2€ûFE&¾“/ã»xתu¯ñffø¡3ÇÏðeFª|À£|ìù>ý°)¼P²ïØ»¶£¡;hœ:ã\ÛßÓì¡í³ITø@óCÅþÞip†Õ¨Aãí>Kcsý²‘NKQãæ¨©ÍñXõÍW„ÐZY}Ü香µm{§ñˆ÷È©ªõK…ƒà8Hq¼LüטãßÈa$Gï«Ú™áy^¿Õ>‘ÓŒ-Њn¦¥?Q¾±Ñ€í&á+Zt€ûÆ€f†~+âÓÜÖU®ð!—ÌÐfgê‹=Å{YØšê‚/ibתOª 50¢p<èŠë) ºb¨ÜíiìÎFÃï+Û.í§“`¨ùž¬<ZŠqšba¸©ŸièQ/NÎYFË^qtR–÷´µÆP\ñÚ Æ5.xÏ‬Ó;Úv¼½c±;@0h>¼ã\ÀX·LDˆäÓ¯PKýKrßRbDó!àuðu„¹rU¾há–´Ý޽­özë‹ùÓ œC /ÔT͉í…ê03_—áôeÊð¿-%;¼Å/ÞïûÁ÷d9::öè<Ðô4˜ûÁ¿êö*q­g‡YÏ·Œ^èÙý ÔMlá¶ïÝbó¿ºÑ•~dÑ×/P%‘9ž¤& Ü54Â'˜ÿ%‚I6.Q1¢ñÜ6àäüªÃ#Må*À@•¥Ð™jŸ¢°J¹ ÄîÃÛЄò‹Ç£‘:3ÚéÌA/U€_Zd!FL˜âyQž î¬°é}µÈœ*wØî*iYÈ蔘³²lYÄT?žÒÛÎ1Çfþ¤„3ª–&ïü¢’!¦#‡7ˆ©X Uî­a¼vûkoÑm*ËEã‰d O¯®¡EðþˆÚ“cãð¨Áá¼Íf¹â‘¥QÅ }ûe‹ö¤)”ŒSK³ïÞ¾aN†~{²TKõÅé 9ðJš{¿1hÞ!ˆÆAÃÃÍ Ã6ºvù¥…X4zš=ÐäÂ.äúK‹ctå™·ŒÅÓ[Ú•,É×Â¥‡Y‘§í,úŠOð‹OàZùŒäïqWà^&Q.ãî}D1SÃ’§ŽÆôM¥ÑÖ‡SŽ ¼6^àwyÌvåOFO ´~“v-½;–ƒ3Ó÷~B§§‡õžúžÔ‘žJœË誫i òj·0T½Åfrúˆs™ªþÝê“s]/¿ñª°úÙŸx¯~NeÇ\S ¯ò´8T§ 6Í W-ÆÏÒò²Ê?kÁ¤k{þ.=/-?WÁü1ñ—;`QÒrú´³¼ðÿº\Ò endstream endobj 945 0 obj << /Length 2035 /Filter /FlateDecode >> stream xÚí]oã6ò=¿B·}83¤¨ÏúÐën (Úks[ Û¢PdÚÖ­$ºµ‰÷×ßP$e‰vÒÈrv‹¶0`S45œï;k;_]üûæâêšR'FqàÎÍÊ¡A„\ì9¡!/¦ÎÍÒy;{3÷ükêó…F³W«GX0`퀅 ¥! ]±ÑÀ¿Û‰ ׈K‰ªÑŠW—MfauÇ«wjô3öqSk85Ímw0INÂÎ1…ÜM·iRfE"˜yÒ[eßœ‹Kƒ'Ó“«¬Ìê ¼2•E Q Ææ ¢a fÆÕuà÷”Ä¥éÊŠ-¯„ T¢v‹Q¨­o0£MO’˜l4B6QÓP(›b»ûÄ8¼omfüË3tÊK­ùާX¢Ì’úœD¶úêËü §Áf¦Õ¾‹ÕgʘÙKàóðC±< ’¥s0ñZsWúN è÷=È•ôH‹cDà ¶”ýs´£³8åC45À´¸5‡EÎN>Àbu.ñ(®àa¢1tQ€Ý¡:­§É LnsvÃy~›TRû˜õa/D8¤ÏBEÆ6¼ú0C €ÐÑʬYúMËÒë,Ïý5å9ÿ¸Ü%؃˜= {׃“Þ'ô'æ 7 QËögìZðmÝòYžgkU’™ï½YÅî+Û’ÂÇJ%~`âë¼®’Fð×-KÎ’¬z'ØœâËèò@ë6;J®“¼~ôH3ÔÚ^ŠìäºAyÿÄ*>UæEA䟻>¢ÐÉY<,œ‚® kRÚ}à¼Ð§îæãQ~‚]{Š&ã"€šBtFÁ(²Áœýü–s¾Õ‘4Ý$åº+ßv'¹÷IÞ˜²d¯–¡÷¦V¡‹ºd±LDR3QŸ¡ªØÁÊD÷hpºÉΣ¶Yy }´ˆÂ½5UÀdvD¬£4ƒàcŠñR9IiG±;ÌèïÏRêEO4ƒ¤%´!X"xÒÞÿ²÷ÎÆ`~emù$<Ýz/GÙ²8DZeMø!g›þî¢ÀuVJí½ÏÉÙÈ+pS2ßE?Síâ~j ÒÏ%Çôö,_!ŠcÿÏÏxlw¾“S¿›”ŠY¦wI&†®úÔÊ1+f_€ìïKNµñœ±íØåž3U[èTæXÂÆìR{S³ÊÜLÛ¼[ee’«aÅê&S“ËÝm+Ù 1úþYyã'¼8û´¦KR»Ë{‚ R^.ëS±9è"ø$Ju<Ï{rbûé¥õŠ—ìÓ¥1á´c]Wå¼¶m¤(´/R™ß’ Sµª²Tä;ÓÈ’²ºNªÃNç IwѵP(¶Œo³¶–’Rdš»½hÚçÖZ®Ëm–’yàGü }ÅÄ—y–¾{„ ?ö,j*&eQZõc,JkÅêˆR&Ç~¯T‰åÅe¯`ö[Á°¢Ž­¢לº éT’uºR>fé0}W]  ZM€ ;O¶;u  @OmÔ=l&ž‹q÷ͶóEàųÿÖʲÂÈî-^U²Ú*G|NZÒLO­lm;Ž ISèEtæQýÿEžê• endstream endobj 951 0 obj << /Length 2277 /Filter /FlateDecode >> stream xÚíÙŽÛFò}¾‚o¡«Ó¯‡7­}¹km}mJäwqlÏrY+–ˆ —ÛRãàÀQÛ‚&¯ ;SvÃôÜ6ô¬jzò±Pò¢1¥}”"’L$™ç€úü\]ÛUõÊ\Y$}OÏ9²ÓNŠ'dŽûÒ ¬îh ©žWÅ5j›õã ÍBDakÉa[ì®hê²®¶ÔÝùiйè 4¿l¾/«ÆæˆÏÔFà2=¡vc¼ÄÚ#÷Âv”®üG©ˆ“±z¿UÕ)¸4붪 #Ž˜Œ¢‡”õCÕqô è i•GisU†üÍHWÿÙS²ÿf‘ð𙟠O¡'£ÞðÝâǸ’€mIý‹v’}D°*c‚« Cœ¸î¹ÈÇðÔàÖ v|¹ôÀó<ßµÅó²0 Xblwhïy)Y’fÄiËX4ßpgÆãžD Дô ½p¸¬ªª¼0õ‘žïVõÁ~NÀÒ´/«¶óŠîã4è˜eú)Þð x¦ö]W»üma]ôÝ™­ýŽp¯?Àg,…ðîw~3úÀöT(Þº„å> ~5’ÓÍ?ÀÈ„%jÌGŽ=-þ‹Ðø)G!µ¯ gÃ7´ ÚQø‘“aÞ§WnÁådz} j\ry ²HD7^l/lž“kœÐi˜ê=Uuñ/»n.c»EèËÀ›Q’äÜO{ »óžÙÐcçiša&Øÿ‘UAG©|V?DO?AûÞûG]×(GZvþjo'Ai(0îœ)ËnGN®»íxFªM ùrÛŒÉäLÀùÜE+H‹cÔ0qoðõ”¶“Œ¤ãH”‚Ï‚< ½3ðu ÿ³Ï Þ/#ÎÃ_œäíÂ¥³‚‡Ë¦½ƒNé3~µ!ƒŸŒAÀœfU#>ó`)I.e .¦'pëHû[tLjßÃÒç} )aÒ+¡ë5ÞáHé—‘d’#¢Ð>¦Œ—.e\ûµEC‡ì!Ѻ°š…7›bp7´hkþX G¿ÇÄKPá€B›¬;Áþ #:ìÐï•(h‰Ÿ¨­e‹¥ŠtøÂøCÑ8ùØ*ÛE…WN4uuØSß­SÌA0ûkühMO?JG3.uˆVµÍiÜøM†¿ ÍUni11óÙlÑú-Íáb]š¦ñó.‡MRG£RájãáÕ•‹@0;0+èøýµÙÍñãÂ)#8ÞõÚ6£z7E»¡ò{æê1.Ž×ADaæêWZ9õOK•Åy€ž;Ü¡QímmZÇèsÉæ8ÐÝÒ»¼¡‰·(óÚå³ ^Yš"÷@+ÀÙÚÛ¨3š t›jk;¢‡~ñ,[¤ÊÆœ m (îÏ„æ  Ç|Ô›œ\“>-o|ß+¡Ùo&#Nù‹¼Aë$/ÃwHüôŒ2%‰è@È0cü^Óz#+.-±ëÁcæ•È”¿ñÀÛUoZÍØÕw¶å“odüwÛXb¯ S,;<Á칇`‘Û· 8Ül÷]ª†Æãïr˜ýwÙ¨™‹I.¯ê2»u…@Z{¼dlÝ]î%Uõ‡oäܺ`Wtµüa¤p?ˆ"ÀŒPcvdTŠ3°6˜€ìQñë@8®á*’AôçÇ¸ŠƒÚ—g¿ÎÀºÇF…¡t\ÇRÈ5ÕcÞÊû\(MÄ1 ¨ô.ŽF\0„T`¯¿`†TÐD¼ÿƒ„à2 »‚UžÐîl_y ÀƒdRx¼ã?ï+´m@<Õœ´Ë <Œ¸<† ÀÌ舴¹Å7ƒ3?tï¾t¯ËÃna‡%!=š"¾<å ­.rTêÌ#ö?®Ó§aŒr±ŒÕ§£8~ßÞ·£$!nßÞ¸ÿp(ÿw6‰±WúOÏï¾D_•Uû÷înäð¸.¼vCÂu¢ LµWלáñ§æc7¾¹ÿÕ¦åûÿ,ŒO-z@f§^N?Tß} ¶ËÓ27×ÔWèðYjˆvJxç‡U’øÿ*ýßVéÙûäôF;¾­¦,rx[}è«Þß]éË…#ŒH+&Òôi@‘X¨@sÅ"ýè׉fTõ_PÜhŒÑ%{ü*x#¸ºûKößlm±äQmS©8<4XL¡uu(sjRYd²Ò§W8Ö'ØÙ¹z#¶°æ‚+ýŸDbcX!¤Sý;¸IU@ñ”ÉH «}ÌÝÃ%Ò 2BdîcÁd_d bi®+ÿîDgL'ÏcÖíß’J‘„µ59µ\ážÛ*/.ݬ'ýw ßu'AoxxaÙI*€Œe ƒŸÚ§±}¬›ŽkºùЍL@¤ºùqmÊ9f$,=¾JÛ×Xõ¤·_wc|{zŽ¥õòÞ×@ð¢\îˆ endstream endobj 955 0 obj << /Length 2567 /Filter /FlateDecode >> stream xÚå[[oã¸~ϯÒ‡•1Ë®úТ;Ó.ŠÁ6“¶(²ƒ¬Æ¢µ¶ä‘äɤ¿¾‡7I”eOd9ÓDE~'ëixÁ€>1ƒS/Z=ðâõ›tPKŠˆ'Ί܋ïN gQÖP£Ûz2> âì Ö¾®°”踈Ю*8¤ˆ°Q Jµ$|!ýShaNk‹HpT† 2C¿Ñ‰{4þq6ú4, ư­Á‚ „—C%í73ŠÝ¢½îc7Ë«ñÝ:ÉüJuÕY¥Z‹B?ƒ±»[ÔúA¢.U¶Ù®¹j™WŸf%%h5Ùµ…ó§ZOÙBzÔte;ÉW3¡5ͺ0„;PŒ7§X ÊPx,D¿o((A 9ÚR`„±8Ñ ·zn5ñ{{á…ȃ«Ü `QöOgǧð/$šp·§UŸ¥ÿrOG½ð¥Ž½!Éjà&ÕYùõi{Öhš ëlÇTž/fõƒŽÊ3=Jåu!0DsDñó«Ùœ`@{±åùLΑ¨KΟTã)ËÓB·“(˜›ä|gÂi¼RÍ»ZIÓ Ôyw¼fœ®¸(´¼¼>ꇥða»Ã^€XͪœáÄÿM: ìàt`e½‚¿×Êùt€ÃaŒ)y1Àσo/@ž? oì0ºUØòuÜî å8VÏ6ŽDýÙ¡E`Ä‚×AZGJ  "Lø7…U»eQam¹Ë"Ïò”I Õ¾3z%òcÃëÇBϱH4ݺ¯À×Y¥§)–êZñºµ]vmúè6+5üWfAɲæåþ:%—™&½²ßóÒX”K#‰}³×ÝY?@4ŠÚc¡ÕÝ ‚¸ÙÕ/ßO‡( uDǺTü‰ÐHšŒO» {•6S;7ZˆsŸò4‚@MC$Z½Ð[DûhÜŠF‰æÐ š“œZÖÓ² ÂÏ¡ð¦'’¦W ?‹^Å“´%uºÒƒÝ<6Zé]õ4Ò)OÎQù!ò™ÿ*R5Ðþ†ËžKÇÛ'PFVÜ×F’'b¹Zs¾í Â]­U˜Ža­E…ö©4Lö‚ÀS€°ÇâYˆü[²¦ÚŠ¿$ÙY I²7Îk€9`Ë­3ׯ+©’neËÞ#eåõ ÉgÞ{žòe²[k£™j„ýŸRï g9äÿóQê¡ÿ•‡ìÔÒD'ù|¤¬ Sчj“ˆ˜Â‚#<®°°GCðág«Mx$FŒFJÜ}BI ô…h¤Mqš_$êD”,ä³D]àPË:‚º[$ëµ,@ÀðŸ1Åæ)ÒÏ•ãk‰âÜØq¡lP£0z|ûòü&_—U×MòUv–|[ò – dÖâ o1JÜ÷Ù&['¥(ϬEÿó,ðÁCÛç”D"µÉ,N•ËáI?0²º\j5Wo-ßÍ“ªÚ§J<à| kજˆèÖâÝç)QZqüÐ\Œu“Y®ˆ*ø¾%/pÿ6Kä;3u®F%ëªP];ùy4ÒL*ÃDªž‘¹*]=ψSÓÏò”Ϙï~Q{!¦.Ì:żµžIÖ§²uªn…MS«+%f«%Q/èáh%âYŸº·bØ”û_ô}÷áþ—V–p+‡ê…Àen]Ñeñ¤ÊDÍ(• ‹>¹t9h©®Rˆ¢¡¬ªlúYgŠŠ>Hzæm²hÞ(mªí›]âåþê1I ±î'UÆS9 ]Û3ÕÆmYl¹lƒ#l ‚IUwÔ¥Äw²@™ê;u–tm2CL1(zžgÖÁ -Ô57…G±Î²X÷&è.J‹BͪÉL*óW±)–(O´$$÷ä™!•\?)€½¨íĵb·Õï›Ý3i97[dº%’°ûöÈ›šŸD³a¸ØF ú¸;‡úû†žn’[‚NÔyÆf™j'RnÞi]?6fKÎËÞ'™êÄà¢:wm8Œe¤_ÅèEì–†AH(ðô‡F‹uR\4}'ŽÏ±ˆ•"†½NÈjÂÉ—t‡j‹:¦¼“c±bÀ°Àxyy©4†P7£;‡`á¨ôjFµÎîÏ÷+ªíC“È4†\Æ:z”qItîD«}h]KC{­ŒßuÏÍÃw/(¯Ÿ·Üâ¹í0™\qÌntU…`—&¡ªðJ¨Ä,JûÙåé,j±æMD8oC;›Å6žÌî ïR‰m:+‹FãvØÑ)ðÏ…j1ë7»lUÕ×ë^ȺPêЫêвÞõ–u\{ÑøÒðº°A(}>³Ô›ó̵-3“Î^ yF“ë¬ÙàŽX³j뼿÷ÌÖ¯)gÉÅ °Ï¼;½vFÞcû|+:g9œÖ^™ûéRß‚ßk4ì—Í„žj닲äÕ¶ÈÛÏk¾Dh©võãaß)`<<ÀI]—=EX[²îYMÞq°Zÿ`•}æùž;`g_&I]rœÕ|óúßÔSfˆdLe¶“u²K³Ö— /¡ôáÎ<&ê}O|ô'˜½øÆÀHã(åË>Eňä‚HQìöìg~)A´‰a–e±ù©ï³œÛT|½ìÓ¸jÃ6È95Ü›G²¸:ô<” žBCgq™ç#Ч}¦ŠÌ­?%,’†˜Èvpƒ&ß! Û¸T$²|×$‹tŠ!Wy<}0i¶öž½­èéýŸ1ù¢Á‹Å´ÿK+‘ɦˆýa7ÈôóîŸ+•l £þ¯dU«_Îë¤ ÜBл*åϱ6bÙ!l£ëù*ýŠ6mÛ endstream endobj 960 0 obj << /Length 1864 /Filter /FlateDecode >> stream xÚÕZYoÛF~ׯ`ó*ˆÖ{ñ à·MÝHÐ*Fò-®$¶É’”e÷×wö EÒ²-™RÀ€Iwgçøæà®°µ°°u9úñjtö cV€—ºÖÕÜò¨åqñ€YW‘õÅþ4æŽ-Öå¿ã õ|ûçl¶^‰´O;¬â,}­éS‘ˆ°ú!Ññ·«w£·W£F–ÂѬ9ò°gÍV£/ß°ý… |k£F­,îúpM¬£?F؈‰Õ»baé›éeóF+€-&RÎäú¾åŒ\êi-¾bϲ´ŠÓµˆ@HÛó"[黼cêØ7q¶. %\HŠ€iDéq_bÉ? è›”Žön€0!¥ 1¸‚${ $÷-îsD|nšƒâ÷y5¦@Ô‹qÿ\¦DêR¦Æ(ny5ðq(Èà"Â|m“/^LEµ.RPÚmC}IÅFß|È"¡ïfYQˆ2ÏÒ(NšTeæº4cò°Zê»E|#$,ä½@ $ âð–8Œ0äS ï0ÏŒj M(4cÎÀ'‚œ-Š0_’,]@@àÂô7¾­-‹qmGb,Û¡€eÏ~q¿ '9ŽcMÀ«xU1ž%aYöYK0òˆaݦk닲ØGQJÊøm°²ßZÙ÷a=w«®ƒå ‰×7zÚ0égbL8Щ6Ò…ÁE‡Í2ž-ûÈ(»¸0`*µ6H?½½­ ó"/²\U,Ê7=K=-7 ìÈx&šéÄPTú&+)zh5r阿ÞéqÙßøa 8ˆ2ÒUbšeRGã(óê}X,â5žï@>ñÂ.;út¶ÚÅÈAn@ú|Ò¬)ŠäAzëcjpàQŒJŽw—E¶ÎŸ >–ªL1ú(Ü{:úh¸Ü ©ª3ºí®8DGw˼ò9Ž šŸL†ÐpøÇN†yn Ý!îØ(ž‘%T<ÒŽ1»îž‘4¡ân^Z²ê.»óç'Ý÷)šAÙ¼­ÖárLŒ -­Þ‹j™Õ$,ÌB×"É6GAeÇfÍHÌû|%údM…æ×ðmS¦÷`G ¢¼É—ŸÃäo ×.Ú " ŸÆ—"™÷y¼n[]yC3äjºù§v(šáùP‡@ˆ5º~ÈÒGÒ¤m@DâQSz‰ñR¤¢«ºÆ×A·7tªß *L£Ê7Æi[е þÐÞ¤•À:ѳ'Õ.£g-Ô ¡~(Çݦ¾É³4ãÓp%ºM“òqÇ´Í´0Ižo·-ð«N7Q=¼/¢è ë×ĵšúªÏZÆr —=ÓÊÎ¥ÿÌòjXÄcø@î7BQ´£¬ö¢ªîï{áe¬\¨ÏÝm®GoÃ3NË*Lg ü£ãúTÀž û§Ãv*6r…S`BË^îHlY?­ H³íEßÞÆå¶¹–À)ŸìgË8‰ ‘öú›Ô¼N²t!ŠæÓ2޾Ÿœ8“;€'„N¨8I6Éó$®}§—1©$ítíßQ¯²›“„ñiWJ[>˜Ð›.-®³:ˆ¾ÓÞµ¡ÛßRînûÈ'´½]üІ9n6õ¦ù–‡ÃÐýaL@ðáa>¢ø£;÷Gžç4»÷÷xH9Èãrôyô÷ù;sxù&Slg•<‚pÔö°Òwš®œ,•ï¨ËíJ¬ò¬ÁkðþN¿Ì®ÿ³ÊŒ”ÛœcâØËÎDfÏ VêAÎH ·¥yû3çnì96O˜Gí M†9‰)a®Œ|qª¯ŸÆ~sÐ"W }޶oÆ ÞjJ©+¥¨ÙF1¬ÌD!Ïfx÷¾C¤&ÍʵM@DLj­A`"\-kr®¿¯JùˆíósMV¡)o~8×/”¤’Pa•J?m–ðU/ƒBMÒC»ëæYœV¥™›éU½z©*·bÔˆ U¶ÝßRRšjâÝa$Á¶Þ«_{(`æ„ëW¡<ë`õÑ$¯ÊôpÒÄ·c˜®òÄ ’’Ê«ÚTV£“Äœ(­SUH —ØpÑЀ›¨9;kó¹z+¶›Û!r9öêä~ûêÕ£:!` ‹ôæÈ'U¢Õ÷Yÿ¤Š@õ÷8¨ê_÷¨@*Ê;Å¢œpŠ8áZÉ9ø{ï‡tïÒ×ßî[T ›8}t3ØAÛ–á,«Ù™AýjÛÚF’Åû8û={•mÒVŠ»ˆ;V/ŸÁ¯c$yàQ3«Ãd¨Œœ Ÿ³Ý">²|ÓÎ@CF¡~ô7EÓAîë*÷L&ò¸çÀï÷ÁWŠÞI^g¯!âuSÝË£ôV­÷p[dÒÝC­Õ¦+"ŽL¬dPg%Åp}þœÎª¾v~§ápDݽ¦±óW$µ Yù‹»P‚ûöOË0ËAö.ú×"4.ú¿4™e«•ê5äC§æ·% I¬®E¤;uù­DÍ*q83Ãe½øý·Ö9´¶€‡ÿû endstream endobj 964 0 obj << /Length 1847 /Filter /FlateDecode >> stream xÚí\ßo£F~÷_Ô‡bé¼·¿J÷Ъ—V§ö¡¹´/é=p†$è0¤@»Uÿ÷β`¶SÛ‹ãØgY °†a˜ýfvÖ|³Øºµ°õÓà‡«ÁÛ Æ,y’JëêÆbÒEsËá.â³®ëÚþcÈ…>äGÔqíÓñÃ$LŠáHØ~¥ÉÝ~Æ¡Ÿ‡ú€!‰èðÓÕ‡Áû«Á_÷ñ ¢9r°c'ƒëOØ  ýƒ…ó\ë©~àJ×ùP#*™ºJ+ƒ/–/OGò„ êñÔí F˜9úÉ∗Zî~ëz$0¶¯†¶³Ò&Iƒ]’[m‰4ôN1$ØNõ~…ý¤÷óbqØÒ4Ç~ÁÖˆr¸£ÐzÿfÊÎÛQ®·~¢·á {ªîäOîãꤻTµ>éƒÙƒú`ÝÞz·È´âÕ5Å]µ£õW-©Þ‚î ×Òò!6<´Ôw‹’"CPlß )˜c\µÿ‰.îj…ëmá©a¥ÿM–N €EÞ^ur:J;äQ‚—åy-ƒ1Àqu^Ç*  A•¹ÕGumùî$–ú@‹ÞYÙÒ‚´ô&ÄbA\(T«fî0ä9®Å0G®p¬,´nÌË¢–p7Ç€1Õ?©Á×j©î4Ÿð-%¸ëÇþà=Pö ÚQ=  ¬Žrÿ1¬¾. G7‘6Q­~@j¿Òwú>”p}…V”ƒõ8ÊBõºåRIsHCÅÈ£¤î­oÛ¹‘¸–rQ6—vï߆;ÜX¿çîýF4ñ'• ˆ«î«ÿ•·nµ”ñÄ~gª/“Hº?{cƒJDÝØ õ‰5*|T A½ …R}•š€$½~AxH›‘e£ Š çÞfþýÝvPÏe{aiNc2‚˜Kw…þC‘úA`bSŒkI¥r«EA4õP°Ÿ›áÂóð9µÛˆYx%,ÂßrŸWrzìmf§…ƒ;žãO!/=' ½Ùsjª\U»¤ K˜l‡Ïöb-b`®*¸·¬õ1,^«·Æþç0>X‚°+~àKif±®# ãêÏÔÈm£Â£qGf}1F€šš-ú±ñÚ¼áŸé¿¦ý~èi ðÂd ±ÁžÞfó‡*9=æ_ç`>;æ[8ìì<˜ŸsüäQbš”ÝE÷’ì!9`}'Âd¬#0sÅLûQŽÕÛ8SÓqxn‡í2â™øÐ~ŒòfE4öà 'ÈåFCH ôœjžjª9½°ÉNøwêéŒôþ×:Ç)þnÔ“ÅL^ÈU!òX†Ë_ýìK˜]DqüvœÆifj?—!éÊ“H<Ç3?éeÚlô~WHär$x1·vÀ›‡¤Ÿtu·ÔìÇÍÚ¢äP3€†÷J1çXòÝ~ Ç ¢žÃ`– Žf=¸¿Ê_mToM—øs‡xùÞ&I½~<ý%a?éXÅt:DeaðÂÓ¡UºzÞ93JÇÎ;¬/ƒ­ä’wÉìm¢º‹\BDõuåxN[×% ‚3D\×H¨¡úY: ,Ÿ-q8r1/Y’¡Ô ‚l#cÁ³ß…ø¿Äú'0Ðp‡tiÿ{ˆñ‚´&à¹Y‹öŸ„O Ú”èýûYq—&+²“­Y•¸ÝG“û4+ºBKÕ)üsªšVKU=j=–åEÛ_l£]. 'Ÿ;ƒêóÕ ó7š&–Ôž*.?çfNÔ‘²µ.ËÞ+ A˜…V‚¤»ŸØú%AZA·ˆŠØ¸zCRäHaGSÊ‘±jDÁ½I·¬Äæz™¦…‘߉ ´Xº'S¾³4Ôn•;!yD¸D]²x˜Ó"ünA‡ë¿Ó¤t]–U¤÷¹ÞÕó'~ù23žUMAP–%^OU|÷§a¾ˆúy]áUÇÿFÑ—*óÊ·¬ój”dÂ~Kÿé´® ®,O¶på`u|»:‹Š!ʺ^æ´Ðm ßÞQWýÀw*tÇS~ }húÞÊ7`S#ð6(v;Jxôc3G<ŒÏˆµ³éWΉ;a¾Ã-Fë9ŸcðËÄàÙ«ŒÁ³s îÕgú":“sÔÿEõUœf38whÇGi#½ĭÐŽW2Œ§§2b»ˆ ¹'ê䈻‹AÆós:TÓ©™W.ØFb¯âȱ ÈóN9"’BêÔp)ÖÍiøõ>ƒ;07iMéÇn]¸løöÓ“sVÄú}e’ý’¯èco_]¬ÈP_côÞçˤ=s©v¥d4Xëù5§`'ÃHHM¨í\3R†Òƒ:t7R†Þ¶Ö Q¹ñr¡ËKš‚£(˜y¾äçp$¹gÿžÏ×èì¬pZ-B©ïTkFwåz–pxŸ¥·zωZ¾Òá.³¹ÓÂôï-¡Ù endstream endobj 969 0 obj << /Length 1755 /Filter /FlateDecode >> stream xÚÝYK“£6¾ûWP{ Nµz©\’}¤²‡dβٶå1µÀóȯOK-0bì©™ñ¦*I¹f„ÔÝúú¡VCƒË€?M~œOž¿æÔ¢€g$qxþ21V%búö¶ÝtíÇâ«à‡ýnW™Í$ð?‘°gjì”–|¢¬`а²rÔ†—ÊÝ33\YÔò"[Wçe÷Ú>Š|›·z5æGÃ-èJð4|uÓi ÌŠLU¸µÜnñ½6ˆßX,÷­ÆÁÓ¤÷'hí£cçùk°¯&BÂÂx‚ÅäÊ®€iÁ¬{3cŒ¤ÒÙälVäM«K¤ä¡k¦'¼#d,/J<)¸¯ó¢ÀV­³¶ò¶qÒXçnßbw]W[lµÖ|¡12ßácŒ<áã„æ­[ZíÛžr["‡³œìóMÞIæž™“lßí™â…û÷àò5“[+JEø[Éëª41dçT9Ùáu30̇2Ë1í°HeØ,Ýw-z/¼\VÛ-Pqk i`i ä¥óƈ&ÆåbÿE¢ÐǃÖ•è—³„(Ù+øEÇ뇃 œ€ûºv›ÆîZ!ã„ ÕM|·ÏÛ?¨¤ðÇŽf¢›ìöìˆxî’Ý0_1¯Jã¡óª*Y}¯„’4N;^¨!ÉO°`¥’Þ•~¯ª­¡¼Î–mUŸ ¯$‰’t´äŽfíÓêO‚ ,l ÅðjLTððײ0çW€®±q—+•íR<>¸gXÚ±ÉZœS•K}Í…uxÂ`˜9)‹c€Sù°bø˜I`pO¤ˆ%‰e¯íqtƒsãÝ ³ðÏ®^|rL*G¤#)çOê¨ûF»#ÐÅ&hµýѺÑÖG¡9P#5–nÆb@rUõGnSmu»é»Eþe n­¿sŽe~ÆCí¼’æ#Ø8:âeC*%Ì_rEx"MFdÆEÌÁ²“ÀUë` yÐ]R}f4zÚü2(/ÿ‘"‚.; »í}ïâ¥&Ö˜€Ã8!o#ÐP»IBRÖ«¨‹g}èñ¤LLRÖŸFWxªÝàa½„$,¢w*Ÿ¤–˜RHHÑ âÂ94@ ˜H)ˆd÷§µ1d¾±ìSÛ»4@ þ4<¥û^ÐÀ¹@¥@ ¯mÎz×1#ERšT×)dÚ9¤{üË6ËËæk»‚ 1Á»ç Â7K¿’+ˆ4&œG.“¯ÌAðÃjeÝ),;[WÎú½ký1b£¬ú6ßxÆÿ0ržŒpðôÄvÙ¥~=O¼Nʈïë~¦=m\èŽÈ`¦À Ré-ÿv /ël·9DpM=Äû0«Ž¢†tû2k³s´—‚Á›sÑóìêÁà] rY•—z±8CLhìn¬Ã`‹#ê±qº8hAÆDrá´ þ Z¸ýßhÁQ6©pÿ,o)|;Úõ“=LÖS¢ŽŒÅ¹ì™ᄄüDCé©Ýœm*¤ Åžîú;·ݹ»{×c ú'ÕBG7ǸBµÒ ¬zöh¨`ѺªÈnµ~ÊÒgÝÎø®ýä ùTݓܺëT†|.»¥ ܨÏÉU†²¯–!s¸¸Ä¬MJö·ûCÁsO%†GVö5‚Ò¯$8öE'Þ°4ÐW.Âöe=éP°2ŒE;âÞ»|§‰ Æ_JàF©(9úÙnýŒ¹«ŽH@g2Iøb“í¦¦´n¿ØB½ ”HÇßzõè¸z ´ú¡á7 è‚ot4Á¼œk$¡½¼ýùpò6ü7ëº G endstream endobj 973 0 obj << /Length 302 /Filter /FlateDecode >> stream xÚRMO1½ï¯˜c{Ø¡3ý>ò©Cz0A†E4ŒzПo—Åö`„Ók:ïõ½ÎŒ‚ (¸*Ôß Ê¨€À3xRhµƒÕ¶X,Tù~ ctðµgmÁ¸ñæÅ]ÑKEg¤5DŒŽ¤'0‘0(IYH,D_–V\woÓp&—i²—Am×¶¨¼†’5F¢F2ß×Ôb˜N:ëÑksnÀ#7ÚLw¤Ñ4fãé`ÜÎeÉ>ˆîtÐ’ Vt{7¹P'ùíWgäÜчKŽÉ(ëdáðâ“j©´:R4.æÂž¼‘lÅz÷²«ÖR[ñý§]£,ÉcÔ|Ùö­:ßH_`ô¹~üXI²âùDÒ¨5Èηç©cøçÂY™Áä}£CCLl[þö£– endstream endobj 992 0 obj << /Length1 1385 /Length2 5981 /Length3 0 /Length 6931 /Filter /FlateDecode >> stream xÚxTTkÛ6Ò ]ÒHç HK·t—Ä0ÌÀÀ0ƒÌÐ )%]ÒÒ! ÝJ H  ’¢”€ úqÞóžóÿk}ßšµöì羯»žçºöÌÚ܆&ÂÊN(G¨ ‰‰eªz&V ÅH¹¹Máô/;)·9Ô G!eÿ ¡ê c°650 ÔC!·½8$) ’’b@ Ì_@”§,@ ì wè‰n£P4)·*ÊÃÏîì‚ÁÖùëÀá€dd¤„~…”Ý¡žp Ðc\ îØŠ0`‚‚À¡¿¤à»å‚ÁxÈŠŠúøøˆ€ÝÑ"(Og~!€ã0†¢¡žÞP'ÀÏ‘ú`wèŸÑDH¹¦.pôo‡ †ñ{BX"ÑØ/¤Ô€­0ÑÖx@‘¿Áº¿B€?›‰€þ“îOôÏDpä¯`0‚r÷#ýàHg Ž€ 4tE0¾!éôF QØx°7Ž;b¿Z4”`ì„æCC<á´Žø9£èÏ4ØmVG:©¢ÜÝ¡H šôgjpO(»ï~¢× ‰òAüµ‚Á‘N°Ÿc8yyˆš!áw½ Új0Xéß6g( ”‘”” wP_ˆ‹èϦ~Ð_Î_fì A( ;4ƒb¿HÐ`o(ãé øoÇ?W¤ À Á¡Îp$éßÙ±f(ì÷{þžp_€ K?øóóŸ;[,ÜPH„ßßð_G,ªlb­¥¦&øgäÿ8UTP¾€a1€°Œ$$RR€ æ1Ãÿôñ_±ÚH ó»]ì>ýÕ²÷ðý?àŸ¹ôQXæB|ýPÁ^@ÿgºÿ ùÿ±üg–ÿ•èÿîHà øåçû øü`w8ÂïË\/ Vz(¬ÿ†Z@KWê÷rÿ·WƪAéŒe´0è¦ðæo;­÷…:Â1—߬ùm7û©7 5D¡á?Ÿ0Ø( ð_>¬È nاKÍ_.(VCÿ¬«Ž„ œ~ŠMLBöôû‘bÏ»’€°ªt‚úþ"3@T‰Â`C؃0”'éσˆb£P>¿ ë#ýG~ˆ—§'Vl¿ˆ€-þ×ú—²¡P_(„ta‘‹p}Ñy^§Ìâ#ü~Œpeµ;&Éj ZÃóúQ€‹.Q¶æô]§ÆÑ‡†ó‘Ss,ÏÇ}ï<Ï ]ÎÐ*Àਬ«9~î ewB1;OH=ŒY§þ”lÄFé`ƒoÛj1wq_ªW|ëÉfñe7zËZfà(=¥âÈ`ÁÄ+çwïá>°âàZÅŒXÝ¡J ñ´Éô2Õ6›¸Ä}O8SéŒcúâ·n“5òöí‹ÜÁ‡âGE:}µ’5‘´Ltþ·9òGS†˜è“so· qxT$NU+Ò“8™JÜ#y–ñ¤–¿Í v$‰{59뫆^5¸÷²Ù«%1'Ÿß»|Äj¿‘cúE”œ±5%ÆE¨î!— w­ÎéHæ§ZqDA>;€°¡{é‡Þ ª¬üÌJw±9Žè^¸¸Ýæ$ã¹C|v2HÌ6]!=ô¤!‚Ýcf±xq+@ËÌMk¨§Ïáºê5zCHäóãx•åõTäÉvë‹Î‘Þ¨×G6úéÐ$Ë®ì½þÝäm‰ÓWÔæê’˜zר{þÄüÄ™`ã‚||ÃŽnM9k%™ùIÎDsqÊBSêצº[8™ú$V²÷•Cf¨(hÝ>V°=Y¬–|ùH>¬U>]:xoiòàŠšÑ‡Dªúõ«F½_ì’=Dňít º­]Êôyocn&Á›÷’.¶U¬¦C¤æ– T¾›ÛÓ–ß»S‹ÿ–ðyë¤éS¥rC´5"&­g:xÝþñK¶.ëÁÖÌg“úºxÓ·|µš¾žâÐ:ŽhÊqF” ªš%ÚUßÒǘ٠‚u;OZ‰={_šO¾lÎänn„zØm7éòøVyWE @CÉ;_F|½F/„G&Ÿ,ÚâVoØ,*\6Á˜«··½!è ¡È XŽæüXcl\½i[é¹Aõ ^¡Si0<À¡}5îéÌÓo[ŒŸ©¿Ûcf,ä²z^fy)ñݨļ,£¹jö(7 pýóg£ °ø{r^z÷±´/~5 Qñ4&EËB¹¼·fM®cÑ|yò;¹jû]¸9ªáá’w{þ‡ÅÞ†´ëri¹õò£o„"×˪ºïpV}iNϾ6e¼Oàm¬š>_‚Ÿk¤æBÊD1£d/”?Ä0šKÙåFÃïCl)kŸÚáV6dù,dÓ–:ikù»ñAÎÄÃ}¿%±Ç‡~013Ôn€èŒWŒ¡™ï“}³ªí,Üýàý‡‘ÇÉó$–³6OɳÎçr% ÖÛ=ƒÞóì2nd~Ô MZ)~rÌjïש®Lû ÜIÙãÛê·9ŽþšªŠœÜaз%>Ûõc’ñ£%ƆÛ\›-m²?º^ñw%¨ß˜ß.qâ­î{ßÃ"ÜÖLöB G”eÀ}˜µÐÃ7ÿæ™ûèýZë æþ"] é‰g' ñÑ㦠ÝnulŽ®VÉ«v7'ÇÍùü™Ÿ‰îæ ¾^‚Xù¥Œu”ä\!¥µ×{wé ¬Ô@¤1'¼dá=ɨŸ<­À˜”S:)¾­·¤Ç§å · ¿ßæ¦oÑdõl_cþÖ¶JPCÆŽ[ÃRÑŠñ>ßâì„Ø<7Wùâòƒ{DNÜ8å"Ð=5óâCÅM&£÷íô5…~y´©‰‹Þ×i> ÞK*.`ïOSo‚$¼zº€—¢7¸÷Z´æ”a3ïB š¹`¨Ú¸ã­ÿq‹SS2ˆ¬ôùG¢‚|Û&P¡òµ¤gqi‚[u|m泇+±šåÕ©0‹ÿ²gý¾ü7MÎÞÊ›£‘–z€R¾ƾôúÈOLþ¢ošü§uû¬#ÛbÔ®°Þ¦ü² Tß÷hŽe¶6ùÚz¬<´UMÝðb•i¾Uy#­íyÑ]?®uYhƒcê‹×+b»o#Ðø ­H,…•vãø¸-F1²Ÿkø¥ˆËáœñ“}ŸÂ¸€lóßC«úÌá=441þÇ[Òƒ=% N?\ýL³ãCûšÌ݇6®2Ý-{é¬:”|œüiþY{ö‚Ž÷¦ÑªËÁ¢ý˜{íÉ™‘e(6ý‡2qƒž³Ú Q®µfû:§´¾®…í"$B„c炎 º¹§‡d}Ú95ÝOFÖxâ¡g͆ÂHÔIçQï­I«®B¨ðè9E\Thœ€ºÄ‡NQ‡Å¨„Œ[ÕJ®ïx$þΓÑQí83®±¯„õ¿…î•ŒÕ Ž¤t|ŒœßÆ{ä €ìh)ÂDæb£óÆ{÷êÉtÍcî¼øqqîNN‡“ÛrÓ}á,uHꨰbÔg fÞðxv:À>BD„NÁ•ð± OÄc{¸ÉZdZ¸SzêÒ)(r«ªzëú6¸ªˆ˜ ô¿V©ù„mõúݘ–Ä=p……Ñ·Ä ãí§mó–ÅÌE½âm?`÷cü™16©7ŠÙÂÕn¨¿ Kñð¨Õ¨*ÿ\¿œéýÉÓ`Æi)…¼ZL=“ ¨eù`)û¹{Ka¨3[V`lY— †;Oß'“ÂNq•d  ïF‘ðO.*§8÷Õéì†Zêôâ.™7óú/X¿Tf[ä'A~<¸Ú0kÚ™FÝ—•´¤;¾Bq{ïÓÑŽ¼üÒ¦ô@}+ïM«X/Ç!ݲYÔ×ÀœŒ„_$Ì#ö`Sf±»w CƒÎ.¦åÄecÿÏôJön£³eËØ‚6Þ§ ² :{(‡Õ =—t­“ V“Êù8¥¼¾òlyêfQ,{TqÒäGÐCã+’êc¡9“É“õNÖGžÅe6ÉoŸ{;¼#ëlªÿí¤'Ø÷L“ëGKDÉî„HPaÛøÕ—i-å×ÞLtkŒe¥Aê곓ÃäkžÃ8®]¹.0ÚU)B(ºåCØc,ÝΧ´°ð ÛŸÒÚ¥Ô§Ï£íþ0ÿícKŽîéÐÃ¥q…ÅÎisU­íó<éWn×f“ nùçê{‘ƒÓˆvKÊ»DJ?ábôKú£bO©ZÝ”µm£ø¯éS7›mþ°ÊX@61‡Åf%Îò” Ø%° %ó^@”p(×/xZ†o­Œ?<ëfŸbÞ¯£ù±»P)˜¡¨ i¾UxÏ×ýúV–ÙN¨Œ‡}7n™Qçâç ÞRýÍÆO«™ ¸åcÏ\miÇâ– · ýÔöCäõÏï_érD’³ÅܽæhŧÀ¹ -°ý {xÌ­ÜOüµ{Žór£µÞKž¨æ³Övn[BÖÅ’D¿çô(@=…~¤¤ïOèÓjµ½ùê– 3&÷ÔßËÍËöæ^-=þÖZøµ–ªCß"Céhôø›xÞéCë£ÚG©F›Y1øŽ«åô¢ÇWšŽ±š¦ÞíÖ˜’Æ·ÿ>«L҃ܣ5zEô£È]'!€Ç_îÖlO>a¨ûѺ \êåCã^îãC^†Ë»–!¦WG˜[,³qnG¢ÄŠbîLüù£°“¶ÚýôÕµ¢s¿|ëµÜ‹•,TeFì¹¢@ôŠoÛ lK¥J°zÖóÁ'õ•O6˜©EgÖx£Ç\_¹žÊÓ1¿ {«¸ë¤$á§²¯dΠØeÅáÐ ÒbícÎÚ)É—Suz¼šI0ìéÑÅT¢s½,Рf¦ê‰†ÜG³aÒ÷5yÏÖTïd´{ðã×ðŸ~ϵ¿žM]Ä_?Ë×ö5§¤éªž^;iSCùÝAožæÚ‘3Õ•÷âú8ͺÖèSC¯€dtgûDݹaþAἚŠB³ë5>›rvèŒGF VuN[uC¥hU|é§Äp'–lÝF9g7"™ç4|VÚÂIq‡'Ÿ?Ê9ÌÒom*OkÉ6>y´j¥ÅæJmZëÐ hõ 2¶³šÊf¢"}Ä¥Qþ*CKmáÈœYÑãˆÈoêaá2·†|GXïРJáéÂi¡¦Î¼¡KÃ=ýF›V|íûÝèUâSÿåiÉÉ­™Œ´¸‹Ð+7±¿Êê ¹Û¼—«o¹‚ŒI)ȃP¯é‹¹ÁŠÀÇ(¯ÛRâyÁT»GÞ«»='Á:K¹z3Ë⊯ã+ôŽl¿ÈZ0ÉÑQ{_OºO•I`¹&G¡r=…$¦Ì’6QÄpU[N±€Ã´8 rµÍðïÔÌvãIxŠü”eì÷«—)ÏbCåäÔ t0Ò zWôbýÈK-275†"è˜'ä²_ZFär®¬cË‘Ù["¬Þ#¨H6,Q̓9±l3T˜D:ŸhklÉ*öbÒæ“MÌ Æ!ƒ®bªî6%ïª ¤BÝ,¾º•UtáŽZÖò†?ýÈVÊKIß{ˬìéký%i]”“ëú5…8U”YÖ æÃŒ) ¯eº½Œ ºTýþ!q–SœtÀ€íQœ{[žhÓÕÁCªüŽ× ô%NÌÞL¬p# ­2N¿_÷AyОìdqd©÷æIi(¢'ú] )eÖŽj8sž;§ªÄæÅ,~L8‘S±3J4¨HÿÒ# rU¼!Ü ÙÇÕ²¢=H±û£ÀÞ€úÝáéõL®g+aAÂ2ôF¢ý%ïõ !ùŠóχ†w§ëš®°S}pÙÀ³-u<è!¹Ü騭²ß»5u>–1(ˆOõÃÚ[Yg3‘[Ít»ð{…R1·^²vØò9¦´iÞ›0ƒ¼ÉqÓDïϪŽî…®Ç’|9Üs !.óHÉ h])×–¼¦š¡s©Š'êS—çNGTõfÄä×£oìSªº'EÇÉ­ ¾™>$ïºKÙîk´.çðßãŒØPOU‹ l–sÀ§ óþÆ}~}±ÖÔf2Ghû) ŠË©ùÐŒÙ5~¥Š0Â/öãí;+ëåd”ÌàeígO÷ÔÔ‰3µò±£àÖsƒHÛyD­ï;^IŸ£uI˧ªT=j:ìDLÏ£`9|ÎJ>¶°Ró¬Ñ^›Ýà{{q /;ìv”ÊâÞÕ$Ck9ÞÓµ¬ÍbW¼ÉHý¿¾7m]þ: \xKçxã4çŠMŽ¿ßDÊ,>T½ä6+ñÐÉXùƒßÀ}¥€$y? …žƒè …¯Éµ[~J›?ÚÌV¿ÿz¥Ð§%7 È8¸å§â(UààñMl? Pªˆzõ)XØ©©Ëkc÷Nïî&gfð¯×Ç‘@z…%ñoÀÆøk}ífŸ¤1òÏf ´$¶ÕÌ}£2.ïm¤ô}±½G|=Úh€øÄGÅy2y­óÒä²#?‡óu%"ÇñàÔ_®­>SÛoöŽúk‚磻1žånzd-J„J½PžgÄÓ3}#1“³Í~n¶Ð}þmQã¡óå…g•œŒbM^¤™êЉsÁþ…:t™õ/31]}[ÙçÌw[ŽÑFO™OêL4®§€$&f"o&ªåµ{Ü"´:þwôé c#¶.ÖÏÔw‰„Ö¡æbÓÔòz×P´üt¡·!CæïŠe§™ÍĦZ†Aѯ_¤rRöY´? 7¸ü<•|SÀÀÿ[»¤õØ’VeÅs±òf~~‚6ñîüžMšcVãéù‹ƒ]!e äˆöŠFlºh®âÅËØ¬Ur[0Z¤Q_`ë©i{`J&éÇX³¢¼)û4ó;Îm÷{µó•Gž•GÞNoõ}1ý|.BjËy9t½öå½ÛÞ¤c~‡¬´«™‚; Š(|'¹ª'¬Í<ù8/ª”ó´ûܨëÏO~>¾9LÃ:%zúãKg„_M!hñêüò¾g~%;7¡!`²þ²“²8„@´äf„nÖÑåΈËW¾w“LXíuµÄS»Üû2H û\¿¤ôÍ\_·1V¦)ó žcò ­öй#ÓÑA±¼4èö$‡Æ¦©D€!Ùç͘X„ѦäÓB:ÇeY®WÓ„ VòóºŸÏÀ›¹ ÖÃýâ Õ>™L¬–±³ÄŒ{mCĚϞ/zߨ‘>[M¸÷­ÛŠÇÌ[Ü9~±CèŒÀgˆe°H¨¾{”–k@ÁžeTDIBÇámÖYß/A×ð™Yàö?–omÓ endstream endobj 994 0 obj << /Length1 3016 /Length2 23299 /Length3 0 /Length 24935 /Filter /FlateDecode >> stream xÚ̹eP\ÑÒŠCpwÈàînÁÝÝÁƒ[pîÜàÁ‚wwwÜ no’+ɽ߭zïç+jjfuïî^-{ïS*2u&Q 3 ”È•‰™• Ô‘örÊ\˜Äì,ì̬¬œˆTTâÎ@SW„©+ÀÁêj P6w;ØYYù©Ò@Ьµ˜y®¦^Ž@6­éo âàâÊdfêVAV6 ØDÜÁÑËÙÆÊÚõ—¦_Ž–οh~ñ=] pX—_NŘr¦æo<\ÞÚLA9fEf€’ƒXh uÌ€Ö¦v–Ëß.4Õ%ÕÔÒjÊš*êtÌ- +ÈÔè˜[›:›š»]@pS ‹ð–14¬à)ÈšLQÝÍÑÑÁùŸY‰«khJ3$D•4$@-F€´¦º#@I,ü­ùE ü ²°1ýe®(©!ª¡«"ÉÆò«6€;8¦Í/¦ÿ•58ÀŸlÀ¦–Îö¿h­]]ùYX<<<˜­Ü\\™œ­˜íè~а¶çààüþvÚ—Ø dnŒ+8‘ß~5 `c®%ðwR@ào¥¢¨’¬”¤º¸ZL¿ Îô»óÌ®ž®¿SQ“•P”üÚ_ôlì€.¿»õË“¸Å6v.ÌàPÿ؃û æéúïœÁmqýE×îL.@ ØÑÿNŽÅÌÙ…åŸK]X~åÁ$¥¬¤Á¤ +.©¤.ù›¤ƒó®nV¿lÿ?þGá¬M]~SVPQQ؛ڀÀ3g 2ós5uusÿ–?@ ò”wsvþ•šâ¿TÎÿÎî_Ís§c`çíkêñßck rsy÷W·ÿ³‘æàq·qquù‡Gà?+m;kúíܯõ¿<ŠJ(ðx¸Xìà+xK‚,ÄìíÁ¼]„„ ¸A®Î^,ÿwß¿9x€¼ÿ‡ÂÒdñ«Ä 7GM“PVâŸËÁ"Ä?2+ +€tïbsk–_ï_b¶_bp)|½–¦v.@_K ø ÑÛÅÔ<În@_ï¿ÿ‰Ùx6æ®à>L{—Y:øþ!3ù—êŸÓGûû$£c ;/ðÄZ"²(9¸‚ç„öÿïçб–r³³S; ý?Ýùï…¦ö6v^ÿgé­ÒþJöØÛ¸HÙx-Tl\Í­ÿÑ¥Èe]MÁûKdewø·Hó׉cÞàƒÞæ×E`bcÿoxÆÍß‚€..n¾ß* ¸xÿEÜÈ_„,bâ2’:² ÿw¯“™;XØ€¬ÀÃÍ 0uv6õBd;À› ¼K,€ž¿çÀ rp›Ý\}uñ×lpsXD‰þ¸Ááþ ‹øÄ `‘øƒø,’ÿF<¬©?ˆ À"ý±Xdþ ‹ìÄ `‘ûƒÀÑþ ptÅ?]éGWþ7âGWùƒÀÑUÿ ptµ?]ýG×øƒÀ•ÐüƒÀ\´þ 0í?ÌEçsÑý7âsÑûƒÀv¦ØÎìÛ™ÿquævàqù—„“ó—ÄÞþ=+عÅ_œ)ð0ãßü×pò– ;8¢¥ÍŽ_Ðý/¿–;¸9ÿå¼Äê/¦dý‡ ¸`Ö^ŽÖ@Ð_+À2›¿ ˜“í_\Ž·ApÎvA0=û? œìÏ\`Sxçü¥gïð‡ ØØá?Ôàdÿ¨ÁÎMÁ7•ÐòO8Ùþ)uþºq‚Y;mþª58õ¿ ÃÎÓå¹_èþW!¸ÀË]l<ÿ2ûü ØÕÚøWíÁ]=þ2'ìö×Êý/N×ã¯Î‚­ÿ Ævïõ—âÝŸìÀžÞ‘ß‚ÿ*Ç}£#—³˜1ÑJ„/‘·E. l Ȥ.tPá7ôK éP½Ç±{^kJ®ÿi¡*²mê§èG„*):œ«Å¬”©¸PÚFN·/—ûQ·˜s*³9¡™ 9| Î×Ú~Ã>ö‚qñÜ ´y%ÖãÓ [¶³¦ç:á7¢…‰o®/wØqѦ]¢‹ôÓ&Cq‡åà;Û±~L8݈—šbltOm!@,}ë"ðhJÇŒ“Áï˜Q#”Ÿ;ì´"Œ݄ž[Ãee‡¥ †‘qm/ ‰b£Jï£9û8|“9¬ÝYnáøtc,/$Ú.X±å”èNkâ[s¤¨2ꊓø1ßßîÌz Ä7Òè/k4…{‰9«þ⃮ZGØ7—‰:ň,©`=ÛÀs݉Œ…gÁd‘gJ&•Ý@Jb1º›e)œÜÑÖpk"ªË„[•ØWá8KƆóTrƒ6Õrœ7Q÷ƒmBªQãâ3Gï…Á,r΄R-•_ár¾–¥½wOy1N¥ñ}ÛάúÕƒ‚±ïû0ÃÏwâM$ÏáY ÏÓD÷Æxå6­h(êhúïvU}'éšb»#O^F’s´¥Ýð«BýŒ{OÜS›Ð_/†aÚ"LÉw§?ÛÐeðx±?r„!5Z8Ñø÷tó½4êŠøÛ¹êò ¾ºêTµ+ ðpÙ1Ûžé«PžÙ<àÜXà¹ëÍ%:q‡1¹3±tÝ:Dìà‘´ðîK ´ZlÞUÃE¡ƒGà.†j¶Ø/÷V”‰û¹Þ?´îÃùUUå-ÌÚa¿G™ÛçÏ”õ/Fëœú¼ÉS‚ Æb‘ü³m´ªæz˜[{8Ìø®nå˜Ý’GBbßúxTËWpòÞt…¡"¤·Jã²Jc*åú²‚ž õŽšq’TrûKlRÜ^N€t…¯KõÛAŽðL7_µN4—3 _î3yÙóÈ6¨`ÓìQo&_TÔF÷j—ç6—z% w!˱‡Y_Z7WòȈJÃsdê\Y«Â nUÙ ·lvùÔuS¾”qÊÝh‡;‘†·­GiTÍx.îóM̤XK™hG•Uí‹Ú~Ú°óQ0AºŒrðÓñ3ÑšÒ´øðèÐêGˆÜfø¿1.ps¥'b¢æ¶ú`æûŸçµ¼)«d:¶ê§x6ê§€o²Ü4žŒ”Çèø‡¯tˆ·‰ˆàç•{o_8ZAêÇß%W1^(‘®ìT)Š ¯D´ß²4E¼”^š?Œ¢«Tȶu~ù1Dϱj¯¤Rryí³ýį$œÃΣ¶R8i÷~C˜|°õªKœäd°O€–çCIÅ{Wʺ•©n3Š‚j¯¢Z“æE~fQåží{úªwš5² /W–»E·(â„X“·Ž»™‚ˆáðL›Gd%bigÁ «"ÝÇÒ½Ÿ ñØÏa#Î^rI èE“?g"mÝtØãnP£ÕÁhAÝôET¹B– I‘tñó’e±éCAïßã]dw &CSH ùĶ‹Séf»éíª#¢–-é–›?f¡«z£!cD¶¸"†­s¬OöÛjËäbo¬\z—M<ø^á7æB߉&€¶¿6Vçð¿…ÌËð½¥  ÿ’IáÈùÓ¢;=Hÿhˉ¸ˆ¤€)!9ؘ]äÞfæ%{ ­Oj†cã Úµ¤¢†&gÜyóÈ«`{ޝ]þô%I_fBàõö»]rDª-›>’Bó‹ýŸ ©<¾©{¼P3#‹´8yC±TìÒv ¯õ®à‡CøÙ÷º ܶjYøÊ“ÒUg“¼ònŸ>ÝÞ袥x‚6Î74g ”ßœöM7Cúˆ˜CΉ.ÂÐñû¥¯#8Ò1¬C€¯®ƒ“`æR_ý·\0H1•Ë2Vü5Lm¶/*áqM|N6»Ì‡qB6϶—ì© EçW䯲 úÓð¶Ëä›Ãkn|çrY7+©›:"“Œ#¾ /Ø­+§æÍ^¢ÏOÅŽTó"óÕx²ë~\º,¹E¼ ºƒätuÿ€þÊ©ß#.ói9Ùtü™q×A|—uqzBa^Ó9+ôÕž‘üøÞ—¤À2/nB7 Ív–Ýt=·™5H¾Ô¢}žxù4ˆ:; ¨¡•· ÕZ‰„•PôJ%¾—r­@<žêŽLÕµ»Š)ß1T’šélÓ8ewSWyŸ/ÎáÔpd:þ«QÓ¯mpÄÊD`úpнÖ:`Ü¡vg= !ªySÒ"§&®°Ô!ˆä q“kfHëº' ¸RÀÂÙãjÉò}øXD‡¸ ›Ù&M³Ð÷,ê s&ýʆ–òë"ê®­Oºߊ³4‘'Ûá@EuÊÖ=”®÷ æüºÁ“<›3)1êš|4ëæh€!è–ó½w‰¬ÕüXÛ& <ÄVfB„j×Ê©Åû]Öôd!w&@YÓã¸ÒĦêÊÊÛêÎ>6Á³Qºò„©iW±€Šê#yÚRúÞÜy%âC%.@u™¦ÛíÞP_þJؼ0Ú_é±êò5È´˜}³úc‡ ±öUCµ“$hñC_ÓZw ‡¯R6ïô©í›\†A¦@â¾¥š…"É·ÚãE]VFhÍ_O}ýbC•k¿[Åò4d ð·vö¬j¶D)s(“¼‰}GBŽVŒZ2|Vc_Šºë´YöáZþ iúî>º=ƒhLI¢a698! ǧÐ)“A" ~OÄf»¥!¹Ë2~¨³‹â]ýô#%Ô Ù[{jR‡`ácl )^›íWF|n³8 —^³ðЗ`‘)±-sØ[òß zÅõ¥3®ëW{-$nàèž§X†l”NÄ±Ö Šhaè#+9ÎEß<ôªìe«ÛÐaS”“¾µøx–•Á«šTÈ[Çå‹`y O£¢ Ó™¾ïÿÓê{*ÓÛN€í¦ÄSQà:‚Pùù§Þün8>éñDŒ8cjøwUÇH¨"%0OË(a/‹‹#f…ÆO®êg¹ù¶m ÏN9, y^åö.Ù®L%oy¶ÂæóÆgõj¸•Ë•ÑÛTŒŸ ØaŸó̾ìNË ^„ÐO¨éÝ+¾˜»ó³ q˜GÃiÁÞ~ä/Ä)wÖžö;êÇq/VKÊœÈrÖ8ì"Æt¼Ì‡¿{»¡|Då=Dþ1*BUæ‡pä˜Ï¯ÇüÒé“£™ÎA;jÑ‘£ü•V—kÇŽŠP5ˆ}9;ÍYêb•Çã^Ätün±ó3Uÿ–2öi%Ì‘Z/EðydŸðLJïúr äx7Æ5%μªù9¿]Nm€Da½S£‹?—ÆÖB]¨cˆhð¹Þ÷ ­i u›úñ)à}Oì?Kx«€(»øo)-·Á^?±ÚLú†¨*£ésÊ…Ñ!„ý×>ûPw¼¬ AÜïÚÌ^Æ,X2(!èw¸}s+_b±ê²nŽiÐnÔoÚäYTôÓýŽÌ]ßÑh·Å=¿HÜÉ•¨-Ì~d…šTÊ…™´=×Â<Î艺F~ 9E8,rÇãÀÖÛØ÷+m¡IñZ·RfaGâíIu¬¤Hsˆ^!&üÞ…ÍnÿÝ.ƒµe{oŠ,QŸæ m«U7•£âÉ¡ûÒÇšæ=l×§ÄÉ=•Åt I³¼=ÁCŒ¬…­‚@§AÚ0Õƒ£ß¢hB£Ç©‘þƒÝ+iKy öì‚,_Ëw ¯Xe¶ÏEÆ×ZœáˆxÕä!¬’ZãM {ÕšÕ‚{¶É“3ö¡y$r³4WBÍß‘Òd&J.ù†43EV%1ÊD]„&4é’‹®bYxéÂ>A˜ ’¼¸ÈÆ-bþèøhÕ¦ìè7–T»¹×L¤ÀyGÅjˆÍDlJ*ÊœGøÙ£'_¼ªg9+<J Œí2²ßÁs,™ {+= ßìí©âD¬öjb€X¦9AX1rCÚu‘Q ç¡Ô™Rd«±"·;_™mWÚ;6"!ó)†Ÿ€GV¦dhñãϰÃ÷šâ•k…|ç|ù¶šœÌûo…?©‹°¶Uso­Mé4ZËåõEúaÁzW潟‚ÞLUÁ¶0Yã³Ô@¤Â‰ìÓušsà¡Ùø!D;|†nÖáoÂ&ºÅ,ZàדA?1®™ŠŠ6røÒ”¶Á<ñ@ç¹% `«oV.„Y{FJôJ5ìÔï\V´ªÅéÑyp`’èQ)o˘1Ú-å–R/Ÿ½K¡¹+Ÿ‚ÍC10£-%?ï;Û?àˆ¢!Oµ†|õ³2CX úi‹ )dÂÈPšµ·C-ˆÝµHÓÕ' p—¼±7³ò02~_㜫ëk6EÿöKûí]¨¶‹ ÃJˆÇrýkå%~õÑÇEü¼ „ÍmÈÌ'5üÃÝ϶šAHìÚ¾ž¢„•€éì™À©Õq!ðsIÐh/…aQf ኹ±N¿;÷äŒ<ãJ\G/{[M“Žï[•›ºý¥I/ö4 a„pK_'=ýL«>ãy3퇪êd@~jáx'÷·êL¨j¤Q9–}Ã,¼51'ÁËti·aòJÌÅX£Žï²…æhʈßü‰Žç¿]wP‹´LÄ«‰p2;ša*+ÇXÎÚ›7ÁLî(%n'j¼ß¾—äT🞙.Šò¤lgKö©…îý{ç”ëþÕýÀæªÝA丂¹ï‚R±•[ôPµ!”™Œ14ûD¿Ùx,üÞï5t¼ÑŒõÎh-ÔãuhõóA¯»»¢:©€Á¤7RDÉÓR§ðÁ•3Þòëëˆ|H» ßqØC½Wæ†Ì*æÆêã„?äJõ@8둾E}ÜâÇf¸("†§'¿›¿¨ŸezªiúÎ8Úÿ!®'Lr‘Vb¾U"T¯l:ÿ>ðБ&ó3RÕë‚ÚwŸZ 5ºSÆ.1ŠŠÕ;ÅÔ>ÈŽúÂߤhëE¹ j;“îÏyë~6öhUfw§ªOTVwÜïF´ =H¨|}^é™ Ê0PêŸ?èù[2.ïïþL NèÑ•á¾ò[¶"uÕaÚ'm£6Äin:H÷Úz)›([Ì+Ê•Th”gÞBÒbW…!%·ï&-øn?²EêlUÑE˜‹¾Ò•0RîAr¾Oß~x/rô6˜8qz;×éµù¦^ÐÏ™rÍözž¿·ˆÎ³;Hå¨LUbN@qSV¢VUGÑÆ2Æ©2„f¹-åS«1Ò•P¸½ÖúÆ…´)XTz½ ´*1‚^æä®iŸo¶v£˜—\ƤW’†—à©u?Þ„¨4d_®Ú°ÂÔUý@ÒæGgD|ETIÙ9øáŒËó”táØG9/˜X‹[;IâÈ„¦,²t øžùe”Nª`U‹¶Ý.F7-àÀÊÐÉ= ³÷œ¦“¦_wÌ(¬Ã¢¦F{·Ñß­àÍóOöü­Ï?¥;œWZjJ\÷Ò®žãÏÙ ü˜†”Å7…ª9= ¬Ýç,“·×GVåŒsv‚Ÿva’P>wLØjó tABÐöf[†÷²–t»½ë.µ„ÛK¬ùNˆÇÿ)þë 3@îŧó$§ ±gRé#Ï“LÒ¶Ýr,½üo•{‰ßªHÃõݤQÂÈ]c ‚eÆ($àg0êó‚ ^ïØKÆúd4ÚÞ왜*²®è-þ.о)5ˆ·UÏ.ÅäüùU”/%Iñ,%iáNÓ…ÛK¶qŠbض‚Q̇¥%™c„0.”–jDLü©e³hÁô‰Ãr4¼E¼0ý™K퀈À¨À@â+9UÚ-Ujäè™×eç¹ÂÇ_:=›Æ­ý­k‹?—¹Ùú™É¼Ü½že\+¾¿3…¥|³.QËøîöC(!"û …ºÒP5UV˜ÑÂ[Ù˜Ä`P{œ(•sÿgJ‹P]62µQ—*&F°p´´¡÷ Ÿn7§ÛTÅâ竚¶h²yN……½¢~n‹²KH Äú‰4Xïš—.¾ì\«âB^âÄ`uÑ41é—Òö ãn^”JO¹ =s¹K´¶NǤºk±ùÀ`V,¥wóŠeû»9WŒãšw_óó(·Œ¹$ Ý6ñEj€ düÔ»°@Éͱ/_ÖÖ°žlʤ—5ì{qÅHƒH1MIûƒEíí¡x‡UœŠB\`œXi)ÉcÏà ± –ZîT\i‚F°im¤sÖùκyîÎ뫈è›3ÆßÝ%31~òYÒ Åá}Ù‡k_ëàŸ*e“^¹!^yÜ¥Ê__ÉBï2"Ô§tÔ” ”’J"ûv ûôÔ¦½aÒÝNúù<;S‘£BBËŒ…8 I£hyYVNJ# 6ŠFÅ2赕à£t}œÕƬÄDö4,âwÛýÌÅ™6Øä]U,â¹¹nßC$zÅ«_”ˆ²<‚»¢TüCö1h$Ó[xÆ9çf¯©ñôxÇm¾brØŸ¹°z|Àù¢öšÀlÇËx«ñúfK¼Ô÷Šs8VéH‹Üã Ï—‡ý]Hg妈Fº«iÿìƒ!ÿm†øi@|ÂBQ±Ã‡ÄðêÁÀˆn(F•—1‘ªIóÛºz‚LSÔ:ÒÄCu‡]¡Q5® ÂTv·¯òB:žÜ|ö˜.fâ6_gÞMFæ,ý(Cÿ=E‚†°bgDh¡˜E°G'MVB‘.*¡,†øtpâ2·Ç¸ûÓzµíØáFô¹•ƒ—9JJ7–^†Ÿ^”5Šæ>8'Á¿ÂœŽA"ÒëÓQÁ-ŽyÔÞB )^úwÉ­ t¶vÆÀRÃqš=ŽJœ[;§MrL>ˆóƒq­ ¬£×XÒWɕƧv<.—\Å#¯è—’ð—v¨ºš²Pb猭f`Ç2Íâ½Ï¸àÛ*¼Y²­M±Œy†œ˜DšgSn,²QÆVjçjw.áŽ0¯ÉM 6A«îÄ»ÍX¶p(J>Èó ^ëÕ 9›Sç³ ÑþoP ù·ˆ¯Ãeyq°èìy&jÏQÂRjýÅØò#Õ_v¯·ÊeGe[Ç¿ªK?áY­/;„pø{ó¥Ñ4¡O¾„Jžµ‘R‰ÈßbayåiS[cv–Bôõkkƒò¾œKaSÒè°5Ãæ¿˜Upì¿‹÷Æ:–÷Õ)T9Ì…•öÌJéL]õìØ–%×±v”=Î%ª“ͬº7ÝÍ$îÉÓRÊ~'}í)ƒk€#㊬+ß‚ã!–à,e'žœRY[­ü$$À½áЇfÆ‘¢n•ö*X˜À%ÍÅðÏÿ¬à$|S@W›8¼•7; Ü.Ëä1¼•Óç#ƒêszæMì¯*#SÏĆ ‘Æ›üùæ¥[¿ õJî„9–£|óxº9ÏÃNÕÇ«<«qp. _¨»Õmª¨#ˆv|è1{±Ä.®‡R]0ÝÁ}Ñ$èà.¬òóZ„4 Ÿ£Ø{ÓMâ1‰®šµlxÞýž;8"fžätÓ*DJÕá ›^"nÆžÎtª löíâcn+½ WmR}N wf‹¦åEc¸°vL1WI òð"{a/^³”ÂnÂþžÙQDxÞ­ÝÅýt†“%~Ì2ÞíB‹•ƘçIÆ>湫22: EcÛô•'S惡£Üþ“RН<A”¿Ö«ê%4G7³Þûwh1xªc!ÓV~t‰é¯#0yôhQ±.w©nM¥Üe'‘dœO»j´Já5³û¢ÔÖýS7¿UkÊ -x¹‘¥]œÃlqneyx¯‰&”R)-%†{Á¶<:ÝÙ€ŒÝØ‘äXêºÉ3ùÉNP ¹âÈi»¸Þ„7„Þ™·¸KeÝ$y&mëÙ:ešÎ{äOV«Ì‚êhgóD‡~þ²²3á0ÂÌ?ßB‰²»þí5Þ“av!:û7¥dò{¦¬¹¡¬] Étú®lwØ3$¤GF¾’¨p,ãÓ>úT_Äï)û³‡¶K©”.ù¤Ü¼w†°¶v {"GÕîîÌ{~_DœLß@Ãéa·zÓÔ½kÜ08Jƒß"tظ†„<<ÐP®êèv6Å\Zhkµaz5ðÒ?.´³½?ZÌ/–(}ß ·8sÐáV%lÌ—¡É7Ç&ÞÉ-e`àVañ\«x-jÕÇ©ËæÙsÀáx÷^lÄÉc^sõºƒQÆ}4ƒ¹•:ýýVå¹'s{Ê0øêԾ߾$áùB¯HÜ%0Ä!K<¾;C¿¢~í]K«4ò"ÌúõHµ#&SYÃ9mÇh{òѨ…Ķ+mÓâº3¨æÙß vK_Ùfbob¹¢ó@Dé¾*jSÕý»Û¾áO>Ó¹à¶ûÓlËà”¿}ˆדV´<ü>(¨±’á ð®ËÅÿ¹‚:¢r{ŸµíEtÖˆiŸ°=p œöKÚrü®Æõ0Aßu1„#Í[<£òòÁ&Ÿù9‰`Ç#hv—…¹&–ÐÔ\+h;:Þµ*ÓyÃÕLFùÎǹÚÓk7kÃBê² ïâzà( f ¾'A\ä¢+VØýq»|‚õƒúÙC]Sô*EÏ|!¾6yá(ÉÅi«yé{:5h»ò½[1}È¡’ô]Ѝ÷8Wþ$yrl”‰®Eïj~¦ÖP‰²\ãzÞ²Q„/|˜5rþÅ,õ“;_âPžBz;ŸšÜü˪‰f÷qNT{ÜÈst‡ÚŠŸ%›€2,Yîud_/õ›UzŸ>}c7Æ·õËgÓ6q ´@~ ÓØ}©ß÷Nè¶\wL1Sƒòà ìb]¿ Ø¡ðÆä!d"iN?ë¦ÑÁTR¤Û”ëqIj8ãMütX¡›ˆ±›'Ê!ÙìE& ª#ÊLóØ-“U",T.^{Ú1‚ú¼#wuÈ;üY_§Ç[ë4ˆ÷YØ |Õ#ø¼Eɰ7‹NË$‡eLø?ðþ‘>m°ÍNÚ~]á;+F®3ï6v uJu¶öÙEöµUvjiHñf?Ù™Ãûòº ªåsMr<>\'MøûÎZ_ìü ,Žè‚ð‚‚ Ã‘v¥DÃ7#Xéô•ÞöÛ:” LˆB…Ü£ITâHv,DP/ŽÇd®ÈqÝ/–Sa(<†n“ZãeìQHx¸1>sŒù<«Ñb ‰êÜ;'û%&Qz.?B~æ¢dÁnš8 0‰yAM9UÂDjÏòŒu!P¸·ýú]…ÃNžµ³èÆñÔœáÏ ³þ³¬ˆÎŠ Â«,CÄÒöÁŸNšîhª=Iã•m™]!D[0iÛR$æÅbfBJë‘çOÕ‚°/¡iJãC°½ìº®Õ¦r û“ø?  ¤ ´Ø7 ‡oQÉv‰ÀÞò’}SÒgþ&­”5e¾Ê$*`µÙ8¼ª`Ì0CW%ùµM‡ƒç©–Ø“'åÕÍšdƒ*4Òö ™}ÍùÉëW“Ìg$õ°*¸à›¼¢WmØ·W(m½dl¤S7=¤è’ƒnœ³£>«ãïB‘ ‡U5²r¾-©ßkÆ…çy¯}8Â/üY¾@ôIRy+cò¦4;·$\†‰üSH¨?Ã{›Oë=¥»ŸË „ÙV?æs]`^³ôŽ ñ‹Ý3Œi™a¿æh~ÈØU˜. ©Á\Z'$50¿ŸúÐJ„c⤫àëµñÙ—cÀI7C^.ãZŠw£gŇ}Ã`œPRic‚—å€ú$Ëp9L.| `W8Q_‚ê™Ý8¬¸æ+—ŠÈf¶}¼Ž(Wyø”õI8̛⬟îÛ‡Â\ Sc¤ ,©*O` Ž?ÜbíGh”÷oRGûp›s ?2:ŸÁyÔÝ̉dWêk§(¤aÜsÑ999'xbìÊ–ôÎá~È'£´Û‘ni,V6kS¼V¢^BQ wST ;NÊçäOŠ]·G©‹î>bÿ`ЧQ´y3ð2êˆî¾°ôW£ve¡”Ùh}îð¼Ü my, F2ëTs©å"²‚ÓU¸ «ã·.)t¾HÏ:¾IpŸ– ïW[Ê6Ñäà†ÅôÉgyU]ÚÒ" \u†é¹rôF¼-çnäƒ_å±{sÔG Q›í°Ø‚§’ðíWÿv¼03ë'*CjN.T¶¢öVš 58ØÔò:~Aä .ýÇç‹é ünŒ˜XÈ ×lžÂˆÊO%/Oî\ìÒð%âI{¦zðÞÑaé&d•{Ù]ל¼„k»ú™¡ú×eW%kË;ã¬-'Œ*ËRkŒÄû“ P~Œ/ ¢ `F–ÆOÆÎ®´¡«i¹ÓQJ šªt:ù±› ‰o[]ûíÑB¿ÃñÅF¶ÈÕIî¿…ÙRòJÏÇîÆá¼,šçŠŒ3K¯¿ñºcq‰ƒí%ªR²ª¤£¿¬½÷báÌ&ÉU},(ؼ~ d€x忹»?ŽÊàì\ØÑÞ1‡#eÉh¦Ca@±ŽhŸ®4‘x^¨¦¨éåµÐµN4o‹lÒ(¢Â×Ô²"û¬”¿%ù8»ð8Énâeñ#†`ÍÛc¥Z¬º¸®³0­V0ßt,þžs@‹{7Sv/(˜q a¢c‚É’O³Wµý]”¼Eè˜è~âæüœp !{Á+3òN¨°Y)¸à)À¾Ö`™¶ ¼lûÀÞ¼tHò>•¼æC¸ŽmÍmZÍîy°gÛ÷ñX¢þ¼Òµ¶’ÉÂn4ÕýZ·)E„œSå-”Ë·×¢.¥$èv3߈Qr¦‘â;Ëvõií»b² ­fOS}iR³ºß@ð²ñk¶Ä§Ù X#S:q—rzúvÚ×k h×{•ê<½¥÷ìh¨º”`#¶«~z³YÁZ5ÜPž|Ú?ÎÔ-Ô5Î}ð¦{Ëu8Ç4·-ÁAoB&I:V¤ÑkÉ|¿¯ÂøÊ[(b ËT·Ùw{oV´4·}õôõ YƒVoôñ4Âd 2¥áL æ¥:ú‚0¬ØÝ•Øä:רž(ý"Ì)—ßÉMûÔ|ß嵫Г‹;µÓŠw€×°Ý6H ë‘H°"òiíÀÄëùäãïË@§ Ø!h;.`ÝG;;ÚŽ«v“‰$¯vTÇÅê¶™Á±ù……×iß* Ûxƪìå¶N¹-k¬äQ!|ícbmTïÑÌú‘Ö2?Έq1s¶vŠs‰y pZ¤g?#.²;Ä«Ìöšb¥ˆ-ñàkÕIV[«k´ì|’ßãy£·Ý|†”i⾺´H> š·üŠË9Ë%.w‰Â ÏâiÒ{óS]/aó(Qò»0nÇ9¤ø §å¸nÁ¼ÁèÌj2Ð’w÷+qʱÂ'½|òÖ¾c3\ä…œË*ÿºÕ· ”ȯ tÑÆ‹‘wê:͆G¬’9o{áõÏ|[`á¥æçÄÜÐîQŸÿ33ðVBÁóØW¯^ïkY*q}(7vë 1ÒÄ^×.; ÀŠÂ•áñœªV5¡®«Šš8å"p'MCø6—©™TjŒÙ½;ºä]œÚw‘>©qxÖñÝmì›Ú+2,¯'V®¶8O³%9cÄfï|#˜Ö¶Ð<˜!Ч{„VÏàñJ”uyw}‘,<äÃG( ®µ ïn£€Æ¬ €2œ¨MzT’biL¤ˆˆä°c`¯Ž×y¡&¹q÷näóùYkP&0kp_Âq\‘bV N€íÆ„ê)WõýܲÒ!•%29wÙØ|Ñ0ãÁÄúæ ´:)ø*~vFî¶DµìiïQP¬¢ÍØERÞ…aŠÿ@i3,ˆq„/â}ðç¢~M ªMÔ¼‰\ÄËQF©çvoâ10ëÈÇЇ¥ªÑôór[¼jvììD}ÁÝoHµâïs×ãª[’ª^›ëHü~4£~^tŸ `qG‘ÏÒ§lËÜ>XìH"Ni{Çf£ž{túaV€;wDv¢¶óþ „®JèƒNHÞƒÎ,…e(¤ OÅ #Ç+Yz¡ZáØœš7‡0eIøÊŠhwrHHP~2Âß0“—Î!‹ÊôOZ¨® 朥ÌéaòåüJä\¶…ÊȾ¿‡òÜ_Ö+Ô'Ù«QÑ*"·ÝWÚnÎôkniIP¤oŠŸëóE%Ÿa žTÁ·øgÀ°p*£!y8^Ó…o,®Ÿ«ú`{XÖ@ûã@/ü•©ÛÅÝLª°0¿è¯[GX̘†‘ûÃøàñ$a‰t×7ø<P9pvyH+óð6U ò³…ÁÆ.®ní)v^gb·=e9£S66&|}èêŽäOÙ«nqé†ê7CÛórÃj‰§''áx(…µ-z«ä¯.Øê™uT)²2êæVµ½y»&UMx™Ù|áðªø‹Ôà¬Ó-©éXŸŸ›MúÛ#Õ­ õÅ­«¢­Ø=4%v0£z°“•Ì/õìnßr\Æâ¶Ã¾r,ÞnÐþŒ…tÙ …§‹b¶ï;E'EíûÙ„ÓXÉÈú³Br…+ZÏÝX‘׌ÄpŠîÏB*Úש~VÐ"¡ì`àbÀýn<ŸE¨™ÞtŒæH)ÉâY}ZiNT?¹XKÏŒ+¬²×H¡Ì“ü14½qoW°¦zΆ’F+h¤ý–¸¢´dàÜw‹5+LšÅÃÙHÌd9 Çlù®?òUq@à«'eÜLSèL—¡åBiµg¨æ÷§À„û×Ãvö¥YœÎ½„ š†ßv#?m’¯Œ\Ïá:IKžÆo%lB<3()wP‚hQ0žàƒò'€åðÄVu?¾àK1n:ñ–ÂópbÖ‰P4+d0ÉSËIíÖ¢©mn¿8e‘UÌ2íKÏOÆy`YP¸]nKTDù¼p@®5Ž\¸b΢‹ `â®z…˜G½©`§ä‰Eðþ_ï¦nä û¿¡Ø2OßcÞ½µ8㬑JÛÿf¿G²zËö¹“¤ ˜,Ñ‚ý¨ ;=Ö¥â‚@×K ðnÀ®½·ðp™NÂK*Ö±•¾mž_*40Ö+ôLÓB]@‹ó]oý ‚Ÿœ»ØnÁùiy)u‚“(ûNl—ýŠƒÑÔŒ¿¸ƒ) b Eñ¸lì´e#æ›k—Ë"’âO¥‘¾¸~1A«Åļfsi)yR¾«Ž]~ 8–±ÖSlèR7GÑ;qKœé]ÔÍ£Ê Þœ–NF …0†³â ¨#x©Úú°þ;J(nìË}»ãÏîSüh¯^Ò“ÈQÊ«”>NŒ+§¯yÕw²­¸EЧ¨\XëÐq°ž«Z(é² ]’­÷ÖÅ9 EÒ¹ÑÆãÕ¾z&ŽLáµãÕ?]ëæv3®8-ýÀáõXT®ù|ƒº$%ª‹±þöž=r®©&ÿ#qøZ厅±¸#&ÇGxuÂ|8¬¨˜ÌZæëʱ6U­ð¥QÚc©‚΀èlv›Ÿ%µ)9êo÷gÑtÙzブqè˜>.›­ÓT·ÎõÈQ>Kï!jò@¼²§7%eíûf~œ ÊŠ%Üñ©çÀt)q\KPheOñˆÆ©µIAü سõ¢*°Òâ[ô¬õ ±Ŧ¨üÃjh&ÚÅøAf¥Eëü5ªmôaÖÁÔ:ÌFˆ²Zݨfж„}t½ ÑNäWâ}øªÊóuÔF.ç£$ßxüΩ¯âI¸«_.)Iwåñ‹ÙÔB¦´ ]shÚ8묷a8h0i•=‡ÆÎ•NÝ®ŒÜcÝO,á«¥kì”OÓ%èäfÑpùJYmœÒ²½¨XÕ¾Æ÷¢f4{­H3v`¼¡™*aW!× …õ4bpaaJõÝ»Óþ~î‰ñ!Äݢȗ¶@~Ë•›B.?­d[,Së¯/Wa¥<ú‰þ¢ß”Ð:[ g0ÈÔ½ÂýbÎñqƒË<ˆÜ.±IÝ÷¶çÒ%8žA ×D¡ 3µØÓm$?Grœç3Ž@ÒÈååĉ¹Ú¥æñckLšÂÛ{Ž!G]جÉ"ì˨å¢jñÞ…‹Aí1ã“°UÕ?J¤£."$‡ýš,Aû‰¨ÌwLÚZaß.â¨ÇØP‚l`jµÊk~<v Âî6/Rñ¶ªš¦1¤Û Œwlé2þ6…¹þ ’m릺»©bkêIÖpKå Wé€òli:b×±~hÀ¬`Z¤¯¶ùV·„ÄÐRúiÛÆ9¾[±JG÷u…·vSÀ®¬¼b\X×6•œ$bÞm>”®eMü›¾ž’°­@†èB(¨×µp:9|«£­øsª*Û’èÛ”B%‡úËS3”ÌH.«Õm…à*ÈY9ÆþÊãDY¯û3Ö|Ä6$E+,Ä]X~Frïs±#ñóò+®tÍï”Þ0CÊ!!¹­WV×?±Ã•ý¿êK»PX V^¿¯íÅ·ÎúÈÖWU¨å¤©K"Kn¹P‹ˆ‹’âåÆÕU1Ò×ðÈ%ú*§55%b-#Yº*Mªs ¦Ã_v|—ì\†°–ÕlcNÒ•Ý:ä9Ù‚“§ðæÐCpÝ”ð#¢ »K /‚¥N „YB5+kéÕ÷]oŽE¹UBž‰KT⸚ì/ô&û2­H2{<Þ¤à3:í:±Úûø« ÐÍuè![ÎØ÷ôÛq|ÔP¯]ðÓ/F,¿|_†ÕÖ[5ÎÔétÄôöµ¦võ m!À­(?Pök‚Ja&qB…¦øcèG§Hwº!õ7}2#ñGS:<ç¤+Šs÷ ->JhZ‘UTÏÀ÷Aääˆæ&Æ€>×*wèÙÄEh9ÎWw Òº=ÉŠ³úb1xÌ’íÖƒ¦gÜs¶’Œ€_~—ZjgWIÈ4ëÅÞ¢›{^úF¨m—²£Uˆý‡¶è´;¥’ÌÆÅê5OBHYäÖLyÑtû<¤ë´€@Œa¡/»:uݕ֣…«/©©‚šXÐá‘ßäŠa¦ÐX3‰kÓõÅJƒ™˜JÕ þ8]b–BÞäBs E×l•›¿uÇ^ÝH˜âƒŸ 5j~í`,`s—hÄd¥î¶µÆL‚ þ‹!{ך,¢r` …†‹t 3î§³¤~Û7w2Ùè’ŸHç°7úú9´®e·=Çú[ð½ëM™ VÞµ•#P¬ï_Ewý7‚ ¿r…ØeæXýüR¸Ö”¦¨{ûmêü(yMY"«î;rw$|+a±«ø3®C´Ø*ý&”<«ñ‰¢ß×e^ª2‚V¦!ÁªüU¥g+£ =ój¥oýšÐT‚dªÁGYˆ6©Ì_­;6¼¹¸ËN¢G3B5Hª5 «C‚%039Ês\TµÞkÖÓ¢üÁûÝjTÔ< s‡‘ÏkJÖó9ÇåÍ~‘L¤Hdºm•ÊiÍP6ƒX%ëKµZ=ƒ7™‹ðÕT΃øgUh^Jö“ãÿW¨àVgÉ£`csqý㆙Kr0pþÞrºúé h_^)7É[PÐ|c«À„•ï1œãÀcFƒâkÑ™Á™iŸ|þþóeëdÍòÎüä/¢vOÄë¡î$²itlã}‰öÖ n—MãGسäÈQØyÛš)í ©nD04Iˆë”…E§a‰.H.j¦1îzN æÓ>×kö’û"ñ’Õê:aÎ`ñ¹Œ´îÌË•~R`Ôê_ý}žØ’ݶ7r×<6à(ŠÍÛÞ\Ôôÿ5 /Pý—fk]‰©{Cb“¯ nxíŸ>4‘øl,špº5¯kР‹¼¨= ¡ÈL¯†è¸ÅœÞB53Xz îÇ=R\ƒU! ‚ÙÖóKÉg<;›ö ƒsO6¢šÙÃû@VCÜ#A¨‰~ƒÝ²«ç…­t"ÿ×·&ŒìngöK6ÅŒ6¨`–švKÃe^²ã ÕbÛ1hC Sø,Øæ×êØKO‚«ROŽ$«ÜmóVÁÝ„MœeÃ¥°Ù-|”ëýa2/¶ž\]¤˜¡8ÍZíDøOIT«¬è°ÚþËú#a{5Jã+=™õŠ˜ ß-h߯U<ˆØtìÀ0ÜC²$_$Ó1ðn¼ep~„: 8ÙGŒ«C#}õ–‡Uøn[<úo©÷oÝEüÅÁ ¿&@b‹¤ÖÖE» ;ká\°U‚>Y§³à&þtÚ[ [øBñÖ¹ý&7~7þÌ&2K¬ºµK`8Í"ÌUÃv c%SîþX|ƒ¤ÐnÕ`"Yæ95œñ$OÉNTôبÇÃGÇn±È^¥³ -%4:õš©þ­×ü ôчÜ2üÎÍ‚¬“Ñ5ûÝ}Ïïù3f¯&ó^ÏZ§:z³T‘¢%™,hh2Ú«öÍOÏ.iœÿ†ÖýÛÒH1 4ÊÀœ$ÝpÖ§û\ŒÞj̵Ùa%ÙSO,hÞQ™þ]•Ñe‘ØÓ++Èk —ÅK!Þgé$Œë9ö!±:QXqé3smᗲʧ"wÐîš[Þªúø ;O†w뙩ZL,Pj-hÔgo9·“úÀ£{ßõ0„XaÕåÂì~Yx<¤Ôø£¬¦‡û³ô*w»Ö‚;°†"v#BïJ·Í —z×z£±š­ Ê­ÙVI‹è±ó5 ã¨æ‰ÁÛéIÕŠú4úžTé.uä‚‘Y #BZ}º®gTGç‹AÄÓ¤uQ>vôpðÇóc<ÏržŽÏj[Ú—÷ŲoœÙ^Wô¬Âƒp¯Ð8–òxÛ!t’HÙ²Q«G “¬1çü™(Ÿµë‘š’²ñ†)Ø 8!ò&$Hà/²„W¾¸¦\æ»'ùþtt*s¸Ë˜*éñžŠ[d›;Ø ¸I úõ×<õkÍ·E«¡b¶iµ‡›½Ãä1£_uªŸ.²¨qõˆÔÉ;¿cêÒr ÙgN*í ålÆÓ¿”쉵ÌÌÕýNýäLÒ"ÝK6éÒbÒ¡ú»ò;÷n½-º9vë>ˆÏ-'Nfð™»Ó¾¢.éÄ}85À”*ÖHQþœò°ÓÉy%š>b¼¨|z  #¿JºR`qâBŒ¯ÒÒzçÛdàÒ·8±cÓZh4|HF?7n¢ÙÈb^í[s»öÿ— öµ±ÂlQ/Øç«_ |B~Ž òl¦A™Ò·c#yNþoŒ}EœžÎœ?’›6®{ž(Š~²ncê˜òë—qýâÕ+ZÅ¡8¬—^ YþItOqPÇ¢(Ózí$¦·îñe°ùH>svCgÌf·´;+&N X*´£¨?ÍÇ«*@B'@yW&Q?úêlkµ#û{zDh=ãâ ÂÄ'pyÒV'ÜÕä> -qv“@r€qg’[ùÌ L³XêXpJŽÈ’•XÚT97L@鳿Z¥àÒ0&[2ø9¶¹ø` vÃE0Šœ¾iÒ¶ö×¶-Ð5œ'Q¥Q‘#h &´A¤¿Ð£­gÛÐyhs+”ÆN»p z†=M¾½¹ÌŽæÄH™c?ÒäÏf¼¸6^òš<¾\b°àÄTÈÅw5zXÑÌ…‹Ç´×o¦­.ˆF>§5¨¡G}ö!lG9ç1´Ëö¤€°sÿ3é)ù¯ù"öÝh€Å¢˜ñŒîÞÙ‡ùúy P6–PxO 0šh$…”Žp*†WoI~°š–0 ÿ ê•Äÿ‘ |acÝ[Ÿ43Ý}•ùO‘lQµ,Q“9ð-/Ð?Zå–¬…@6ZÁ¸2ÕS‚á";B¡Ãgú¯±/ìY’8€Tå{®fÎDq#ß\CIV¼{RïôƒâyWL¢ÐÖ…Ç×õbH©‡îpš8GÞâ<Òìôäœ{lÆiAɲØUÛ„ÁÈœ p÷eM¹íø0R(ºŒÈ “fxÇÄM‘Jq‡ÓXòœ,Yïuä=±  DÍãÓŠ¬œïÞÇö É–‰&€â¹²¤!ˆÁ‚EœƒQäfVG *MJãŽGóßTm†K¥KW`lë$¥(Œ§»‡*DP¬J„8ÿÖN$õí2`0üªo2bÜßÊé;œ¶ ¤ }x“êHkVõï…Œ(—,ë:n·!R˼šI@…€×Vó§«–,|QS>}c½-&c5 ï˜¢›ÙŽGwôú´nœ¤Âè¹TŒpgmîèG bž× 0=”l6yhϼ-Ï(-æbÆ?„® ÿ\y¢8¢&ñXÿäɤ$Ì .eÑá’” P• ÛÖbÆ{RT}ÂriÁL°Í`kî0 ¶[¾•)`—¬a$" (A{ÍâAðÂUköЗÌlŽ¿ê8H Ïe/`.#õ—‘Nº4†ã…s¨²Å°ªßŠóáÊ,Z+ÏM—;n¥ÿDü%Ûè§ÛÑŠ‹š¶ØïèZ½¯C’¥ÈDßZìÕ;IeƒÆ…AÚÿ1š¼ieÖêûUiÞÿ§ò]x|e.3gì‘k£-¨½³€?B@žúöµè8]kRâÌurß× À6Šøièבþ=ÏÃá ~Méârq ï@†”@)`”}£¶¿TÚ‚ÿí©â" ÷ËEƵòÊã}Ê…YA]‹lBe*èðG#§2-8¯^•‚©=¿Ô ½kùâ ÎöÈ <ú÷õ%Ö†e  ™Ú¶_þ_‹ˆ K®c'bÆç„jéí½ýüªªCP²þÞ–8À¸êº6 ºÜÓ,é÷.5bJÆŠ2)qö ¸Âúˆ{ý_;,#üêu(ÇT&(í͆‡kšÓ+øqB÷bá\ce‹!Ú(UR¤ð—pE dKk?|À-²Ÿí'I›ð¥Zž kƒ"U‡oSpCt-_Æ0X‰ ž4v'GÅѸÆeo& !Š‚‚­ª…ë^~ÐnP>¹Ü/À·ÄT&p,šÎWbá¡›&òânø=£ÿPSÕÑi²ZcÍñr¸7|ëÅ$sN ¢½•~Ä ì^×óe”ªVd©8ÖH×dv¿PåâQ¤%‘)ëá!ì -‘t%µvn~ Æ@öÇÏØÏm5¤Ž%öÙa›žoyíC…´ºm>=¿p w8~¨ìA„V<+Òex5T°5þÂÉ£®æð·§ñùæíà2Ñ$(€¯ÓžÞøµOàL<5XN"UîƒæÝ¹Ä^s#$¬Òノ«í;"¡$uÚ íL=/PÔñ·Q•y-¦¿n YJB£oÈ&¨âJ˱’¸ŒÅ:üâªDÓ=fyZÌ]Ï` Jë¶™­Ó+FˆÂª!¾O =¸ÊÇÂÒØTʔѕ<ûl,k–éíuoʃüùT 4–ªÖš£4“IÉeÙZSçöí'Ží ƒ<5÷˜Ök0­ÿw š_É=c³8”o´¥è.Ù7)‚½âËÌ&žÐ54ùòñ9z¤ªÓKcÜ]OË'AƒMž]¾ƒVMbΕTn¨9D Tp´gTÛŒ9†íÚ@ê—ºFÇ:×|º€¨6]&Ž#æÁ ÓèɾG@÷;·p¯›Zt~°!m¯ÜJ˜(°K CþªµÍ̃¾ö%X®sµü g«ÌäC+æè´?ÓÇi±Ðg0q1àìQqDÙÿFÆè93 dyB%ë”ÔCi%Ø$º! üáÑ8Ú @©Íˆ×9Êü‘¬j—ùcu£õGj~ï–6ØØÚäAbE0ò¿ò,ês„.m¨PñøDë–W¬súɉVí à*¨WÆÿ_ŒáŒPC·õœã¦)¦ùüžÔ,Þù—¦*ÄæˆKþfAÀÓMÅ÷ë7•C|Í̳!àÛ±)«ÃAœšZ7PkÂv&ï~„6‚…R;M6–']Ô»2Ð9yji¼½0An‡A”¢ÄªGZ`–y>ñeý …Å~r=åZ*¾Ù´ {æt‰hôOà˜kØk¨e»ûðÑ:tL­jf)+§²¥k,+N­„[é©5?›Uë°–¯dž<ÉчéZGÿn“>!ðõåš¹?GlŒ´vó!ßAr[¾T”š¦Mäµ#³‡¦oñ+K LJ°Z¼þ‚Ó)Ô_m¦f!AÅLPÒcö¾•]ì¡°Žêù‡˜Tþ›JI‰#ÚÃt2•ó¨•]U@0Žc盃Ùn݉ý0ïy¥ùK–¹‚W׊­v·¹xå Ì­@ˆgn¹¡^ò+üÝ%“+}t†°£(žM kXòÅèVžý'tlË÷5KÜ csnRCÇ'HÙOG ¥ÏXe†e@8ìV/¸Ã@§¢1Þ-_UÞ‚), 9H·&éÓÜo:¡ž„Ãç˜ÿŠD'°dÒgCbÆïöaÙbžHwÜRjËÞlă¡`“ V¶¼oŠ€‡…íF² ]›Êê…Úùß±OPùSZÔïÙþÍ\y]ª”¡¬«?Q›5I’‹ßûîexïkÃŒ.0AÐC{„§y® ÍíѺ´µü¦¶Â¼pÞ]ª-aÉ 0Ì¡ÆòÓðN—“ÚE‡°¥-L<8Õtºš#{Ð s> ]a3Ö¤Ðé°õo¬ÌWˆ(UÓœ¶úšÚJkŒ5;áÜ÷Û´ëmÁ?aÀ© kÐþ7wV~ÒÄs‰Oùv¿Ž¥BR’ÂAEfI&Fn›û¨êäè3É¿'}›3 J>0f²- N·$ò»§!¶°ÇÛáªkCµ—U²w±'b÷¿ 0É÷ }ê‘·?iÐÇ Yõs?Âg X•·lŒn«lÌ"“j\¥`räH’´Pþ=²=–ƒAIŸŸÇ.éIMkúU)Í96 ë¢w^µãfU„/\Ãs»P˜”ÅRP_’ O½úüwOŠùK.º^-œ^wÛ[Ëʦýóšß(…9gÞ¥Ü"û E^cªi3vNµ¡°Ê×øŒLgœçÏéµô%ðXyöòÿ]p-—Ò‹ùé R÷õMQ±±R21é\³†ìzë]6¿4’1¢7nžRW- DdµF³Ó±'÷Bú¤*¼b3jû[…0ÑõŠŽ°°1#BͪÕhIy×XÍ­Ýtf¹¿.;”A}-m !T»˜LP‚üŽ&É`)6ô_lì‰W„-º¡e7ÒØ€wë‰vÔÓÛðS7o˜ÿÜ“Òò)¨ G‹}‚œÑ^ÍÛ”„å¶,Y¿ß»Ô2.j·íâÞjQ¶?ã"×™bbê…¯ ´Á8‹ÇAÁ+â¸0‰¹F¸ë$äu,…¶æ„Æpm)ßÍËÒU;Ú(Šõ«Ä• C !ɳbz(ÇýQ¯8äZ.ÁàÙ(ư&¬Û³ ¤w W\±2£¢T^Qú6°oD+bLñV Œ.&\Šˆ3:$üÙöa4ÙÚuY£XŸ‡Âê•ô*A&Ä…ß9_z<(£ÐHÒF„æt`S9Û';”cDjÏï‚õ\f´ãt÷¤—Â6™‚8j®÷‡ÝL¨ª¬¤ýÐ}23ÝÌ}ßSŽöGD¡JMwn,¡é†ŸÛ> N„LµžÌBw#µüú¼9ÞN°:MÁ…!Ù ýr­Êû‚JΫúUóy¼ƒñ¡ÂgóI€Y‰7ìªÐþú!ì±ÂŽÆòÆÉ"ÜÞqùØ}ç^l‹{YØDJu¢‹’,Ö×á4»CVf‰@š÷9Ælä63ú¯©;Ê ­wÖúè—g‘c¾î8È"©ç¾@JcvB2­Þ¾©Ñ¤ÃQ{þŠLÍ‚RÈòƒ_´ZÖPôºÃédˆ.õoTœV ¸`ª•kÈæÀC*™S$Bûd¾_‚ÖC–Põ·x^º‰›EGbàŠß=þÝi±Žó®1oÕ—™üû4kXÛÉÞˆô¹Æ$:è‚T¹Vûgû0EͧïçôZlìF$h­£ö釠"›”£¤òì&¢|½#£sqžÐÞŒ4ÝZÊvÒ°"]s.¦–õÍã#ϽuÄÌ®5Vú±ù?D/_(ѺEªÉ—ìÑZ#;óóœo‚ýƒ»®~!$;½$ßã~0¥žf*èÕ±ƒo+O9$¦ëɇ"ÕLF A8n$lo@vgÉJ‘®Ò Ì—¬ÂwØçN©áÐ[r¤Ú£ |ÂE¿Ó –:gkûcs[àY§e ~ó ¢7†[äñ5¯w2 žoÿU†­,.sŽð¹€Qßâ Ê0#7‹ž$>Â}[EÆõ…qá·¹…‡ØÂ}Á;ŽBäP|-Ã+SèCU‰ŽÄ£ZÓ¶ùJöÌÃü–ŒSo¥B.C3ÌÔ‰h:)«&î"5lîcÂöB¯Ød€ „*…à·Û!éc1‹ì0ú`ã·ÿîÀó7¿›¦<æGÒö›L²$íͺ¾œOn÷yQrø—Æ¢O›¾ûõ×oŠÙG"‡¥åq*võíU7åÊ>Ì=vNzñÅÍ:ÒšœöVj>Â…»SîÄÖw¡DŸltYxäýAüqdÕU|7I8)“sÒ)ä)y‚ú]¤™XÀêéÇÐkM=O+FïyýÅÏeLŠÁ”*º`Ͼ› Ϭ—£¥°Ë ÄLž "Tw|oFÙ¯Í!tUJ\¢YêH6å> stream xÚ͹eP\Ý.Œ»»„0ÜÝ ®ÁÝ}€AÜ]ƒ’àîw÷àÜÝ ¹$ïñïœúîÏ[S»fº{u÷ÓºkÕPS¨¨3‹Y8˜¥Àfv6€PGÆÓ( tvpaw°³ƒ˜ÚÌ,ll\(ÔÔÎ@SÈ,i  8Ù ÖesÈ‹ g? 5@:¿H-fžE ÄTÃÓÈ 3ýC¨8¸@˜ÍL]^Ä@° ¤Q‘ppôtYYC~Ûàeþm`éàü à7л¼¸uùmTœ ojnëàîb ˜‚-ò,Š,%÷&@瘭Mí,–LhªK©©dÔ”5UÔéYZ ljtÌ­MMÍ!@g€;ðÅ©…Å_¸eMÁ kàËc ¶fy¨îêèèàü·¨$Ô54e˜’bJR @FS]ƒ  ¤ñÂü#ù êå@l2ý­®(¥!¦¡«"ÅÎú;v€Û‹OÐo¤ÿÍK0€Fó¢jéì`ÿÇ€Îq`euwwg±ru°88[±8ÚÑÿv a z‰ÁÁÙðòí ´þI±+Øâ¥0—@þø]f€Èü%—À?A„ŠbJrÒRêÌ/Ùbþpæ?õgx@þ„¢&%&©(õ_¤¿áì€.ªõÛ’ÅK‰Av.,/®þbØ¿ÔûÏ‹KÈ?b~) ä7\»¿\€ÀCÿ=8VËÌ.¬;êÂú;fie% f9 )%u©? œÿiâjõ[÷ÿJñßgmêò²‚ŠŠÀÞ~é9S°ù >ˆ)ÄÕ@ù‡÷ò-(ÿJ9 áêìü;4Å¿‹œÿÝß‹!îðŽ·¯©û¶­)ØÕÅë_ªýï…4iw Äå/‹À¿eÚî…õRYøÿ·r¿Ïÿ¶(&© àåfp¼ÛKdz¿ð_>ÿeøo¨ÿ9¬ÿ¢-.îàáÍÌÍÅ`ædã°s½L;;§ï¿éšÿµ ÿLÛKùþNÿ^D Ðh޲8ç`.bó¹!¬ÄO*o²žšŸåä Á[ù¸ÅÔÉ6R"Éì-J H~`S@M¾ƒ‚¬€¡ßÇ@p¡u¾ÝÓZsRùĵ…ªè¶©Ÿ¢)†”ØH–‹fPšâB@i%ý¡|V®n×tZKBËk€æÈ‘[çÝ{ŽñgìËO”¥-+9ðî3ìxÎv8 X$í¤ “íÐç;¼¸Ó±E†o&¹a#òŽÝ¸»“N·¥¦Ø½Ó[H0Kí=ÄîÍ)8qºfÔˆ…ÞÍwÛH“DoÃàÏ‚­RI3B “…ÂÉòI¹·ƒ†Åð0d1}Úek÷–[9 nß ‹u •Fn¹…F¢~p£3ñ­9QTƒàÈÍñ·;·ÞD‰Œ4ÊšLžßŸWWù`´¥¯Oîj”»RéhÀr¿Z÷ý±ª8¹w(ö+ åW±Í«¾¹iE5jÛ\öëžäIfÐQ½yÒŠÛAâlÄϯÝèi6ûkƒÛÕ;æuû´Çi'1âüŠ4œô+ñ) «Ç¤k­R&ë´­Ö=©´_\z`\àûXº›+þCŸvÕu·xÃÞ+× ŸÔÖÙa0P«ÅvËÚE…שÇ6t+JgÜ kʘlåk”2¦ÜT-3Qùw„d¨ãÁOw»µŒZHD%òQjF!œxµ¹‰ÉØôf=H¿‘›6é@YfW¤­-¼…m!röLN¬xŽOÒ×\O2øÀ/_¹‰g%ˆ¹Yöàú3=j”Taâ¢V.¤Œu‘2]vÅßÁ–[gYýRZê#Ô"*SÀ±ÑÞ9ùÅΉ…ñ¥®Ra®â-–Íuqmaeg^lrqÂdhB¯ðJžâEN‰f|’ìâÍÒæ·×úð²<Ç×|8 æ…`êeˆ¾¿ÆÁ{Sš*%,l¢šóqh”~f¿èýÀ^ª|™¢ïvÞÍ!ýlloX°T•õ,.=§/nQIuhy½*ôfS,©½Ïy…Jÿù÷cÎÐjlPò’?ëÒHÓsšüŽÊ7–7Òz²¯Hrß´¶lÐeÕ½Y81Váæ€Ï’IÛ“­Mî”cªÂ[´ÍØaÆ€Pñk®ú²4ë÷µÓ¥½.6Fí&Øûä"“ÇÙ% ]Ó®M åŸU¹…ÇId“–½A\‚YbQ?õ·–ì¥Ë2'íGÎ’†Q¸(Ž>z€´á|î² òèJˆ$¦åÓ/NO¯TçÊ´­á/åQðîV×b4h=bÛoµNuíöhõß.®°m }FÉÂdl@3º®Äï•ìê ¾ý´*àCiòð„5ciÓKªÚ]ýíGœ™m´©è˜A.R÷{^ÚÓwŸHÏeÅ÷µ Ã>s*a›l4ê 9é Á•¸#«„FoÆÃL«ïÈoÞÐú?&¬Þ©h_Zßâz¡qÅI¡âžÁÌKù…lÙü¸ù)f¹ÄØ«ÖÑ”®J&}WQV'öæü~P—v»cjÔÞ–½“Ì¿+¨»n–€º„‚Ω ¤ØÎ“:[Œ>XRPæIt_市ÐÑ…\»òPÏ–‘#U Çde¾±Ð…zMeiæG½M‚n}^~-Ra .a劦½üŒWº¼0S…ýrrJЬ'"feðÝÙ«eC+Ä—‹“ƒ;¥þD²_DO€9Ö 'uou0€Ÿ.ȽTƱuÃ5 …k'¨éâ¶5£7ÆŽ„ubP!Vù-¡y4T„¼´pÒ¹ Æóü|Ë©ÍóöØ.¦[âlþ\§m1Vc@¹°Çk¥þÁÒ¼p(?Í£¦¼ÃŸ o±µS•ä/ºlú楙äÓ40¶S5Ân$B¾Ê+;-|¡Ñ §ÆÁ*Çq O ¿$ñjè²ÚªvWKÀ›ä–Ð<ô­OñcÇiý±Ê¿.ƒMµÌÀ@ó«yÞú†͕޴bÙ ²j@ H‡úÍQ0"û"{À î­YžjNÄtœ^œTóve/‰Ø©ö6%]¨U¹d,½á¢âgEˆlëPÊÐÓÊ•Q¢ž©(ˆë- ¼ý7•¼ñ5IúŸÌ^ä¸@ .¾)åXB2í[5Ÿ_„öŨT›suxfRĨќŽbðUßí|Kž.õj¨òFDt»ÙIH¼qUžtçGŒ¿T¤Rᇂ.'ÎÚÑ®VtŒ#¥|w¿¿©Kº$ÛÙ]•$"ú RCo‹|‰Ž‘üˆ0PšÀà”j=µìé¿^ô•ê(BƒÐ8bÈ0ü5kˆ¿"Ë{gÔË«±ýçî!}}ºÈòÕ ^¸³ªK~ßñWñ¨ÇœŒZl¶Ý‰7«f‰% ¿xÅeœåù¡5ì¥õååÄyôSY!ªªq²$p×t¹ïM$âd(Ç?yØõЭÚ.¥)G¬P*rd‰º+ÜdW%iUVjØß¼OQááóû|EŸ÷« S_dÞK4:ÐLBŒ—Í?"uf½Œ~yùŒl¤à+ÖÛ,œÔ øsjSmPå=§,šƒE¢ÞlI›€p›·†I‡šax}m3yÌŒÎ@xÛ¯oÛÓI.ê1fm‰‰¶{ãºCЊ+M3^Æ€-²õ¢L§wù0UdF´Ò+Sõhz1èk]æHâTŸ[E}ªÔmµš#«Ÿl3»fÑZpmáŠe Uùˆö›9z{ »aÞR9¯ôœ:ººb_ñ穤§8>ŽDýYŠCתñû‚R·QÝãú»2ùD7?¼¾\Ý“I¦Hzñ+ªèß™µü˜žlJE⦈Ç:ä]g:„-ê›ëî Wž¥Â¥V¸„ž!Jd(_ªDrÿàÛ)ëÄ®hõòÂÔUgâúБa–ˆò…> …òÑ&¨·Ft4e÷äCsZÁìi@o«þñ!œ6LX¥Ò(Õ;” «Þë~ ‡™µR† \ä-iïÝ;žcy2ië·ªú´ù\û@=Dª&ƒ”‚Ãh©¸ˆÒPEVüÛòÀQĶ•f•Ù¾zQ­v®d?UL¦fÊ[ÌŠ‚ÐZ÷K÷K“¬ãAØÃ´AF? ¿ˆo_RâëëЧìnò“Ù›SÆ4uL)nq¤¬Q2*°?Ÿ¼¿LÜϧ`±ñ‰-íÎô{½^^±Ö™‘åIшüðUFŽVZ¶ašè»ÞçÂí–:&R.²å7:Íbêp‰Åâm,å_Q( Ó†#<)« 1<È)Š4vpû µq‡¾ªɸ:šïoÿ¼= •3^urCFvî¯ÖɇÊf¨å< $¾B5¦yÓ¹ôÃÚÚÝð*ÙézZ樠“ôD}:ã¡-¥lDÅ`Çßï¼ÌgoAM~ù(®b7µ\)•«öðéiÏ0¼–YÓûð°ywyʹ"Æ«ÓÎy­èûuê E©éHÎX¾¬m-¼´ÌÜ3`¹'1O§i+8pëMÔÚý½ŽjÆOùÛwðˆH´.¶ºgvêQø–@ó«Ñ¾¡Jœö^ Ò»J~¬{¼ Í`ÆÍ°í­“Ï" t½¹Øïd£‚Úi*&Œ@»üfÔ«ýêÉ+@v;‡{ì&Þciݧ3žm‚)t3º¬é°UïnE=¯ðI¸i±°›x~Èç|dµ–=x¦fƒðöÅë¼1ãï@™¼‡°1g}¤9Îð:úÜðJ`œ(Ö÷]ûä¸~©£r—'hžÁNBÊŒ)©ß< è3—Ð"óÑ¢ æ·Û¾Þß2ç^B§*½ôy]<)FóšuJ¦à›3Ò †Ä7å©•¯DWf)ÙRÌß#P€D½»¡G¤*U64š4:}éÉŸŠ:Å [¤ï;-L¨Ën®ÆåÒÅ wä’D¨[¾º EMcy@KÔb~t¾{Ø k\È€*#Ç[éÞ×ãão«Æñó “ T ©Y8;ìZuì E9X:Ǻïñ$—?¡D”´±ÐFÇvà£ÄP! Léðy£»ÒýŠÿ©ºbÙbæþ:ÞE±Ëõ-@Ñá*†<ºBÑ!á?q5¬ó:cìÓp}oB"âW#~.ËäA:ì±]Õ“ÚÁ•!6ª;ê…)$1Æ‘€RÄœ!k<©¸T¿.¿úsñž ¾Јj¢EhxŒ¥ß¢’7Ri’³ä”­w}E_ÛIìÿj#J1Œ»-ºü›±Ê$a 8ì4χCkÐ b—Fòô x[UwÏâë²ú—ýà¬aR¸µêæ½”T»5mqž>#c¨Õ}Ú} × ’¡­.§qô³‡ùˆ&©ëÄXbåCmZ_Íxs¿êFD›ËºÉ6½]Ù+px¦•ZÑNØ )5ÕÆ`p4ѵó.h3Ûúðëëb·ë§"æ UìØtô'aAAÔ#lÓ¹Cûš_{:üPRŒ7/ßNU‡ÌÇ^òg†1.wAÚ¼éÏíò…”íé*ÆÄP¹üßn"ýBÌíˆïµÏµ¾­Unñù°DÒgÕ 3¹M¸:Èt8‹ŠÀò$ Ã-–K`HLÑ=Ћ©¿pùmò­|̤\­`áÎá¶âËú™ni[Iðéi§½»–¦õeqÅäE1xŸú’Ô£Z¬ˆ²|P¬©“ÑÊ´fic†Í°ì*F«ðHP°bgœÖ*úåר>Ã0âFˆ§Õ æcØU¿b_ìI÷ÊkÄSi?ê«°9ÈO¼Kßú¶~žL-GK*žB;ã®ÀîˆMžhó-€_Z!,Ï µÒSÄwªà!½Ë«¸AìÞ-¾qŠÅÌÉÇ’»¯5Ž»´pCP%ˆbG¢;Ý0¹‹K^Š­Ë<æBð~´÷jÞ}ðý¾I{BTF3¢Q¶ø±Ú±-Øf©8)àŒžO^¯LV@?3¼Ú—¿J˜™`¹½Ð\%†F­÷"MÍwŸû#{´Äò½‹è™€¸6NÜäÑs³æ±k{L4~C‚¼v‹xÌ‚3õÀ3Ýã˜rSr¶Zvu¡q¾>&\w¶…™Bät×M ç9ò›w¦ª\;+ƒU$u}BÄL?œ;6 …ÐãK_ø¢lײ/¬9ÛGá$õ‡^CëK®g;v&uš‰Œ LÙ±—÷©C'݇åjT ]Ú·°j˜TÁ%»ØÕ‚HQ‰TÈœž ¾½¼3œ¼àÕw2"„ãox¦ø- üpŸŒS3I*Š'Û2gäðs¤ŠÚÎÎ=ê(ž…°U)XŠ-R»Tö¡° j¾†„hÏqTb’Mü²åŽ0mç6E üZ`¨÷-i:g­Ì^R"›)ðè¤Ö«ÑR‹€E…h‹³-|Ê}i8ž\{C¿¸n~]:dâ¡É[Ÿ'÷h.¾4ðõnÍ>ðµÝ^|À¸¦vr¸`ã¢Nih^Ø÷9‘Ü&¾QT+²µ» ö.¨¾Ý×ÊÙ øÌ‰¸§¯¬RåW5Œhžäö3®‰„MôšnÒ;Ä’×9¬£WãÃЈˆ >7C?¦ù›]éœM6î70pA·e{ï>á SâŠ& “H§òÃ~– LüÆõIôåÊ®˜ ÉÅ@Fô¼ãU|VâðÍý‰·uÝc·Ã3ζJ¦htÿãÞF† ˆj„?ÿá§Ü¼ sYvêšËzSw¬ØŠ Îöò÷¡ÒÞªÒ¬3~]½mÜhãr­ß*ýÀÖE®5„ÚS>õŸ¢ødÇÕpÆZV¤dHïÑû#‰ì©f¼/"I½äßÊ¿[²¯M³Ny‡Xü˜ûg‡‹¡ZäL]úв.TŠ÷alìÙPrçí“Ú·Îä o žI”£³õéCwß)»L Ø1¦Þˆ¬ ´~Üè'WÍcóž–8ÓÊw¯]o¬ôvhð3ƒªê¼ünd4xHž»ó+ †n@”pº˜¡‘âÉ’R0ÌœNÜšqLé”Ö²0ó¦ÙM³¬úZÑ–B„+Ìzõv©dîËÅÐ_ÏcÕpÜAB„Ò(€QÌdÅbu.{´g1æ>–¥DÕ«ÿ™$“³\ÍS‹Ÿø^дHw±Ý·ù~Äsèkéc¥×à^$ßË…£û°úú}"èCž³ âã„8å1WÝö*³í¼¯øÌ……Ý4ù¹Äý+ÒÊN¢xt4…mÝÔwDV¦©„ –èò²Õ„³3ÕIVâ&™}…óÑ}V™› d½‡E‹­e`[ó]Øf¸ ã(̧¼ãHú3 1™!=QG•ÂlðŰ–æ±‹qÃf…ÜÃu×­DqëÕYõÎØ×±¤‡Ï„Q€ïÁæøú³JÇ#ÕYé’DZ%jºgð°ô÷t÷`Û¯†-IÚÐ,êÛÊ1%뽪yõ‹žq”„âOäàS/£©#S91ó@=) ⯅ü‰?7Ñ!bn@ŽåÌçHQ½Žwçñ)R§ÉÎð |Ž<$ÛÖ´µ<Ì=ÿ:ªZ^Þ•wÊ­oú¶Þ…‡Àu¸² Áz©úù+~(ó'.ì'öÝFB…Év‡ïŠç,®ã`C+Æ4ìHCJdäõß<Ü“8ÄC=Ñö ~·Gn/j)º†U¾óQeb¾c"!•A13ÐWÕËI3ÂÈ*9ž54ñ°±+]•Ò×–…7ìã±|.œ¾å¸€Ê•(úäAó(úYÐC¾æ²®-,ô¢îp»&5È«Ý`mi³%¤NñÞtÖw÷ËÉýáÕ禦‡ë€ñ³‹˜pkûW¹`®ÿ,åø‰¾OÉÉ-› œ¤½¾ï¦Ž>þÁ=,U(ËÃ’œDˆU7iæo4ê aÌÎ=JO!"”ô Þ3m8GºÅ’Åtþáj‹ñs5“ãó)¶TË";äÝë‡åB¦ èé ´w öÔ¡DdW6!‚Ÿñ… º}¦ ~Æ‚VnéÚ’E_&›>kJ J;­ß^5ù!ñvsÏ9‘¼ËAajïÜíHìFŠÞaî‚ÁD wå$ÑXÜ›ý"ÊŠ™}Iè>ϰ†a ‹Ö¿[%€ ËzBè]çyj<ÉS—c†ßVJÏ-Ʀqr>4Z¾á1„àsú´…lJ-¨„ýœl†âh4›'ݘØLiÌßêÕa‡M¡jñJ`~Q¾F9y%ö.¥9‚¶Ø †Šzƒ9àC?É’ñâÏl HVÒ§Y>¨ µñ³GˆL‡j ~#z4Còðdò«Ô’¸­vÉÉr“ùÏQ¸xÍg—i䢅¦zhˆéa¢Ÿï‘.ò;ê­·¶vÄauoÖ땊'ìsõ޶‚£öËÜDou-W`ï³Ï˜'o½7x¼~f¯Üýä™’$”0ÖzÍô……ƒÆi!òCÞÜ­€¾ôºš“­÷™:ì’$šÛ»œö,Ëiö²•Ó•ƒ,ùarЂ­e,ðó2¥•¤½¹Ë£­øey6¨Ã‡ØÔèSÏäCQâ43{ö_ß6ÁßI¡=~·x•%5ú¬Š—+‡×­Gñ5}%Dmòª¿2rNFcñ½©îÂL­mù­ÖÙR'7îm,^ò›2ÆÃ“GÚ@ý¯¥Ü¥¹R²g!‚â )ýo¼HáPTé_UcèèÌIb˜Þ2q¤€¢ççzô>%¤!¼é« ¿öXìχŠg¬3²|[;(CÆ–S ß$Ÿ¸q`¦ÊãúµR]JCN9æzvþ˜«ñô|–À#{\N1{GÁß~Av¢¢O Ø­ŠY̸u!FòA#Sýj¾\ÄÈ`íùõ‡qÑ:Áa»W;Dh¥‘P_»ê»×Öˆ÷B¬„Lja›€©ÛÃÖÂDKh3ÇéD¬°";bFøú W°Š>.Ç3j]ÙøÍŒk!éùM¦&>>7œÀ8XŸbr%‡ÜGruÃÙ6ÛQý™£ë¥’} vƒÛ0œ÷•·ýÃAþ1"‹³¨´nî4ïÕ£·ñ‘Q°±ªä5LT2š~¾U´v‹àr¦_ORúTå˜%hTB@@¾MÀYxšC´kÞÞÝÇ**x<æ”-RàPa jý~øV#×íò„SîY{ÐÏí#õ¹ïgRóRáš9RÓé\êª;–÷4—Y Z$SVs?90ÄôTÕ5v7”Jʲ#â)36»ßãCï…j·UŠ4׉Ü“éPÛwnù¡æ&ïÙ·²Lá¹{Ž'™ÄÚ&]OûföªP*wXÐéBpÔ‰#>f"v¬¤Ô”“ååÁ2Æ’,ZPY¾CÛµÒ«Z Cv“V[¥h`X ê%#áJh?ÉwÅ û£Ãåø¨qöŒ 1O ‘Dwîþ<çðù6 í…Ÿ\ìvJÔ`´00Ig"µ>ð†æzËx3 |N>¯‰¸mq6TãskªÒˆáÉçÃU4 ‚2ÿdm!yÍ4Àði9Æ›ht¸0ñ¿üQdÌ›œ‚´óKd‰v¯Í¯-F$þdwi{?^äG¸ûÆêJ´JNSd2Úøý‡¤WÅr‡i‡Î§¼è ä ÷{¯ò 5ý´õÔwJû)#7Y/=Ç2Çkõ¡/tµ•ª%¾"зU£ )%*¹ø˜ò5Ø&…|ÆzG¨„†žÒ†½)‡ÊÇÚøQŠÕèD‡>ö-!Ë LkeóUÅuUajuW8‡¸- »¶†ËÛvmk[Q&M…e÷ª £O£P¬‰Ñ@Ëö@»Oópy˜IŠ ÏeQªÝ“x'¼ºº$•iŸ•ν11òù¸·‰>þ¼ã6 ¨@]w†žé —¬‰½Ê„‘|B:CÎ}ºK»×éžSîfcÆ¡ÞMPPÐÛ=a°n=: ½²Z:³qÀ"Z6™ýÉ ÖÔH0»d œð"á#¿q–d°,„^Cù1 çXRV2h/¦UÌØt‹[:ZoPèñ#¡ªuͤßë×Ê“ÛÞS]$…@½²j<ËÇêâûEHç}{,å²ßÏúíܸà3!1LɦÑãä[™Ò4fL+ª’ÔÄÐÍ&£?0”¨3#+öô]®K.ñ(&ÆEeÕ°>USa¬eƒÆs¤Ý¡DˆMJ&àž¨™;L†©÷æ÷&9bç$žað_ YÕw.·ø¥ ›hK#—|SÈR,Ç[oÖ³Î*0¾k]%£ÜÜ—|B8 Ë9Á¬à|ŒÓ§Ï'XŸ}ô•½Òéh¹ #æŸ×·5…Ó$"<ÂÔÒ]MÊàë0¿üÄŸõIê0CC²®œJp¸þÉšÛì)„i|u¬EÍ|<'¡µ5µðÝŒUU~æ‹]5Eû©‘³:ðq­Ÿ{Ò]›g¯Óibây£û{’xDê´*ÒVn]²ÚÇîí‘->ž›ާ³ˆŒ ÷Õs—Û8™[Ui·Ïð·4C¹Û#ø›÷¹¸ÕŽ}›#*X&£;>km i È×o˜½Y¾r¼$ëúì&´³=x¬œ¢‡þyy ïDzÚãå+8.@ xW3V\ÓaC2 ¸Ø×Ø„Ê^ædÞ NÉ‘âû¬Ðõ›‰b®qì·XÆë#žÅÈ*XÆÖbM¦¯cͽ𩄖O·]&weŠ`ùRÍ5áLÝJèÃÃ*ÊH¯˜¹ôÞñes5Ç=;S é+¬@/ÜPž<‰õ2jÐFd࣭ôE¶å,%U:ðÂ@¸¶X†¸Z›WF˜òëOsMôƒÞôcÔy|cÿk/cI`H‘1–[:ñäòž»…‚ÒrŸž#IŸ=‘TMÄ4E:ÓÑØ p}nGM™XŠ8‹Ù¦ Çqkn í(—$¢¾_õ½ôòª¨P{Ø^"‚î%~;½Ab¯Ó7cáhœx†ž*@ùnª¬Ç)í.þÓä´Ã÷½O05í:Sâ1»vZ¹#0Ÿ÷†2M”ŸÍc2êï6d±ïÙBÖI@ ‚ý„ç阾& M2u†üú³þxÞEúfhŸ1=0ªCÆòï»S×ò6ÊxÅÆÉÎô]É%‡[tCÑl&„§%{2¥‰žEûâkœ² °°[rŸtY&#*MíQ`öÄ/YêÃr)“)z0e—•„k?êrå¹×í9¶ì¤î&ù)›îŸXMx¼ö@á:溶Vœišö"”R3ù,²Î¯Èg¸òÓØm÷%2C¨8¾ ðàz¹n@ÌDµ$±pÞÙͼ ëá*‘ôjWM3Ï/?Á»÷ôn!Û)và׋×â³×a›F‰Cƒ«_=ålŸ9ˆVBýõSŸßòñÖHœ(C%+q6$ É.c -Î^;ni'ÃÉÊÎýxk2ž`³Ìi~TQ»Ž›k$Ḇ¤h™Œ²Âbî4]ˆðúj›¨9x×ÍcV­`Àšsmè±ã„¡ŒQÕ*¼]B¬™ÊsŸáËÝ—>þÛh'‚Œ/.Þl–Z‹WŒ¯=ú\¬)$×7ƒ¿_¥žZ*9¡ 1â›Ä.,šKñu°B¥²¶TZÛatÄmvÏOh9ËÖ¥òï©Ç¬ÅbŒ<7ÞšjVœQvÛ+|É©ãiç[OÑ_ŒqFA—m+>í¬Mýèx s{TtêŸ(*¤‚·pUͨÈPܸXq@2è)¹a&ÂÅé‰uª`ÕEnŠ»ÆÞåYn9êÜ› Åî'÷×(õñbŠ8íNêæâƒ› ¦¬¤ún•ÜcN42?t}«Ñ…Üß‘ xG•Qò¯=6[4çevŽÈËbÏS‘Gý[» b.‹Ð 0»ÈØ Wˆ};‹N±këð‡\ð¦#"+¾6çªÜ…dèûM- ør›8iì5ApÙvoê‰ù–å›~ZòtUô$àWç@m$‘¿ÆTÙxÝ ½»t¹ODKW"Vßð”.µø€`×pýŠ…Ém„1øƒPx,@ó¿ÜrÅgŠºÄªL‰£9î2t¶HQ<Ø4ÆtZoC¥¦(­Ù`:\Äê¯w§PòÞó¿F~R¿ÏËŒqÿà2ã®9Üð|.>Jµc3À‚kÝÂÇJ23QBCÇÈßqmZ±ýÂlH¶÷Áé³×—SO¢íLèÙàšäœ/B€×Ïw÷])žé“ä–ó·B¯&q×ä$ø0¸e=´µhp8á2ª†Ð"r·ú%8¦qÂ'y;­¨˜ÛÙO %¬€+ü…µ/ÖÇ%rúˆôØ£ ij‚× œ¶óùçÔ ³ðš<Ö–úsÍÑk]EsÜF.enÎí‘н[ÚúmzD±)jÀDéØu¡&¯gÎ~ɦ•U>^ C_´€cŽ,Œ0‹^¹‘w&f3±Ç' wZa¯s¼¬Ž×Uß]NÉÍ—K\ª'УŠçK B%¥ST&q¢tÍ7i æ®›7 Þ>§ãËr¯GùÔðÐÖ§ŠjÐA¨B#ßàl•`|²P – K%ÐPZá{; %Yàb÷d'匿f¡5 ÞD5¼Eø:yh&ºÅªbaTªJ¤XªZ+yw›O“wâòÅY*#—}Ê*A½dýGù…Ñ)ÚÚ+”Â6ä;œ4Lý†ÜÑAòõdÕ‹ *ˆl1½¶§E´ˆñ !~eÔ÷#Žq¹·}üÖ_’5x ØïÂýœòI û¤õ®‚°`+¡.¨ež¼vpÍ…'ð¯¾oB>ùŶ€Ë«æÆ”MíFñÎ%uPW#­é+7ÏÆ!»È;«lsAy¦f.?JÕáó8CžU­ï·>§\hm °>üÕ”öQ¦•ñP~RÿÌsŒ*Ò§*ýÁãtŠ‚à(ûö ·­)3òÎùœ§åòˆ¡™Þ^0À¶èéB™jí¢rŒŒ|l½ ~–"©Ý.üqA£Þžß…+& Ǫ-ß­mgijóöc‡ Ð9Uúé™u†`%ö®ü…ö‹—iٛ▎¾C§p£–P˾iC5UêqŸj"'¹ç¹ß°%–Þk< ¹ëK{¢[¢ŽPµÃª¡ò}L h8W-kGnOŸ…R–¸/YŽÈyµ+ Úà™ƒ6‡ƒ,óñš÷ÜÝÍ`¼XLBFÏI¤ûB’îy­èæIm‰R¸ý‡pï£Ø9œ‰¯‰¾õ7ªiÒ=HSÒôã ‹9S²2"€ EO§\3µ­R˜ðu.¾>oû+õúq>@JòÞ —«¾¾déÜeÝæNëbIáè£7¢NfÞ\Ñó“ W…©"7n¶¶ÚSûê7~G†–G5Ì1uø¡‡kRçlÚ‡ðë7ÉF;hïS÷JÁ·žR&Â&øgRÉoË åøë§&9‘¾b9†Þòðãg¯ïÔh­.ø*y§%Jqüà<] 0MJ5†fÍ1ª²ýB¯íä[q•l/>TêæZ<äÏðÌ‚ùœ¬ úÉ,,ÕÉâšEþ÷}~Ëjcµ*­ß‚MÇÇíÃ)Äbà)K¬c¶Òá`¿;ìÕ·ý¾“_XŒSõ!4œ»v"M¡·Ó›Þ¸i;!fÎeEH·¹jý Ù%Ÿj(.6Þ ý'æÕnqëÔðA7òæ}eÉûîß&·ø"Ý­r¼,o—öc´aÖ¥ØÇ!q%á$ÿ·‰ûÖÛœðþi!ßRñénw£ÒkÞ¾]“^¾šf…£3sªª’Ùçô¶<æß¹q>a¼úàì`¾Zw’“±YŸsÁR¿Çƒ²6T™!ÕÄË|yÓ ¸­ç&núER¿S*ƒö,ÆE_;²FCW—ÝWñýÆ.%5nˆŽ BâjøßSÊé3ë¢p;GÈè=¿‰z|º‹û•1 ¿[³áíjs­ÊUv2¬Ÿ´|ÓùçóKÀEÿñ„Gê=)a¾¹¦÷þ¼=‹Ó2Ÿòž™ÍÂ~Å¢Vb‡^C}ÈŠ›g€0c¢U]%9ß½Qô¶ÐX9^ì«ë÷ÕmJ ¥½ÉL8ûŒJ¥\`*k¨\V½¡KåG Ζ ·.`àtì ¦U4ÛÙÿÚm…KÂÖ—UãQn‘&‚K°sEíhùs Q„0Ãà*f»œTqåüø‡Èγ»:Ÿv¿nM6ñ#ká užI/ÓÈu¸ª¯ò¨æHܦ¥cUm¡¼ÎÚ-Tà_9¥p%fÔïÛéÂhä=¾À³ØJMÖrøžøÁ:lP-ÄZ¿‡¶<…ý4ɧ8ìÿAî;5LúÀ“ ‘UøùÑ0Ì$91 åÌÏâ¦íÍIdµŸÂ¼þ%_Ëàü±)>^{izü€ÏÍ¿¾""¦ö$O+˜óë¤Ðz\¶Ù)£Y4¿«"âc]5J$êÁ”ºŒžX'cgíz(æÈÊôúTª/`Á¶Ã·ðN¥Ð‰˜£è†¶_Iõ‰šÿñ™Z[FøuLù(ð&iµàWìˆÐµÐÒ•Py–ù^p> stream xÚÌúePœëÒ ãî®a€`ÁÝÝÝÝepwwwww .Á .ÁÝá›díw¯µ÷ÙUßùyŠšš¹ºïî¾Zî~† R%Uza3 „ƒ½+=3@ ¨%éå T:Û]èElÍ, LLl¢Î@cW+{1cW €ÓÕ hê 2v°01q#P$ö@gÒ `⺫y9™ÔÆ€’ƒ‹+½‰± H ´·°²Ò€LD½œ­,,]ûà ÿí`îàü›à7ÐÓhïŠêòÛ©@ÆØÔÆÁÃÅÆ `loag(8x€„Vj{€ ÐÒØÖà`þÇ…ºª¸Š*@REQ]I•† atµ7%˜Z;›º]@Pc3³¿xKÛÔ, —±½%ˆ¢ª›££ƒó¿²UUS—¤ˆ +¨‰€tIuU5:€‚HøGó›è@ÚÞÌÊø·¹¼¸š°š¶’83ãïj˜î ˜V¿™þW:” dg25wv°û@méêêÈÃÈèááÁ`áæâÊààlÁàhKó;€š¥(gèÝh üSb7{3Pc\A‰üqð»Á9+SP-’ÿ(å…¤%ÄUÕèAÕ¢ÿ]pú¿:Ïàêéú'qa1yñÿ¥þMÐÊèò§_¿}™šleë ö—ÀÔq#PP×g jŒëo¶q¸ Gÿ;=FskÆuaü ½„¢‚½œ´¨¸‚ªø–Î;pu³ømûÿÊð?Jgiìò‡²œ’’ÀÎØÊ4uÆö¦ ~®Æ®n.²?2Ð hFöWÑQ7gçß©ÉÿŸÊùßÙý_;D@éèÙúø{ü÷àÛ»¹xÿ£ßÿÙJSÐÀ[¹¸ºüåø¯JÛ‚D ÞZÙÿÿïÝoƒß.…Åä@w• Àz1n±¸½™¨ƒˆ¸ Â侀uÈÕÁÙ‹ñ\}{{Ÿÿ¥1·²7û]e€™›#£º½•“PZì_çA"„¿e@WèºÊ¦–Œ¿Cþ¹¿Å̿Šjøù8:8Ìm]€~Væ@Ђ‹±;hDÝ€~>ÿTü'B`æ˜Y™º‚®=h£ üñ.moîàþK bòª õŸmFZefö¶^ ¡5G`Tpp õÿחѱ–p³µU9 þ¶ç¿OÛYÙzý?Ïþ×1Màïä©ÿ‡+ +O ™’•«©å_}úK.íj ºdÂö¶@PÿˆÔ/[Ðmí{«ß =3Óë@ƒnjctq°ÿ¥‚Ê÷_œA­üÍÀ¨¢¢#¦-Jû?†ðÏAq{S3+{ ЄsŒ½˜@“ÅÂÎðaÝ3 çŸÑ02Ø;¸‚LŽn®~¿‹ð{<8،¿E!N£è¿'+€QúoÒÉÿq1•þF, ž#£Æ¿7ÈÎøoÄ`4ùqMÿ~ŠÑìÀü1ÿ7d‘3·rÿ[Ïþ[íàæüЋ@PªVÿ€ &¶ÿ€ *vCfû¿}ƒr°5îz7‡C6±Ã¨AdÿVƒœ9ƒ¶¥-ÐÜõo)ó¿¤]º¿mÙŒÿÈ‚DÛåo&¿Ðøn ã.Vž»qu±5v±ü‡ PCþÀŠëjé üGé@ü\=þaòáöw—@1ÿcÉA?ÿ÷Iÿ?Pü½Šÿa-"âàéCÏšTzVP˜YAÃê)—ߨšþõˆû³KAWôÿðï‡ ôš",ýp0å ¶Nk ­ð/šª„¦àf8®ÆÐ’I€ZÊœê"ÄËß" ¶dQ;ÈIñèû§Ú—jQcÛ¾®N®™¼6SÚ6ö—÷'Dþž§Á þ)K~1 ²‡ŒæP&¯P»Œm&«#¡ã@ýû/Qî®Þ‡–‰7ôËT2½ÊŽÕh’9æ6,g[ ÏE4‚nÂÅ©np×·¬¸hãᥳF…¡8ße`û{1÷r;ö5©M™0{²ø?"™Kƒç1* rD’8»kà>wžPóGnŠ™›)¢p"p~Jªé˜=Ú=)›ˆâNšàžÎ{›8 ž·½þìxI!cÓ˼zw3Ûð¦%@fæÆöI'0H’)YÅö™Œ0™“<¸V»º4ý-1á/äl,¶ _šë£ž‹»ÔpÄE‹YL†â…ÛiªþwÅk÷ÔB‚6W˜ñ»[e¡Ù ªjƒ3ñZJ'çºÆT”‡÷½7„¥#Ÿ¼a?Á™{wVl̇Eà%#[†Ý"²—"1%/3¤n½Â_×}‚b“G]‹xÓs¡Žuý¸oÜiU[ŠƒÍe¶ÇKlºÚÂJ@r–÷+«Çr¨#»Sa²†$R|híáO©gýÕøIV.= mïl ¯Ç×S»‹ã£h¶@¶-QûÁMŽF‰lYuê“Îû±À—/SÆGBÖ¦*1ûH¨w0T£*Ð9=Y—ãÙ—ä-ÑÖißHÒü2„ƒ~8®eqÅóû1,¾~!!êj?jA/×*^˜=s’$Ý&Yø¥C»>Ö¹OШïó…¬$u8£Ž8S²Íbj(¨žŸüD?ø ?±|b«z&›ðfDŽ£|”4Ãm7ä Œ¶•ì±øDÖªéÃÑöpåìÕ˜¼þÒ7Ç¢Ä$«„”Î%¸ÊÌJ-e}#5WS‚p±0Œ.Š)Îo#Äiî9šUì:ó~KåÖ&oB¹[2šµè®¯‰]Ö%Å‚‘sk³òÕf¸•, ˆÁºW8+·ûÜŠhPßé°Aà´kÎBètÉšWŽ{ñžR\Só¥´Âñzٿ‚Wæ6¹ìË!¼ÛÛ’AjÔyOÝ›¿åk¨‘åÕLÞ_ï鮩ÝÎGÊN—À[Dì‰m~$á}MfĵGñÀùê}\ÄxÐHU±„ËFVÄ:¨gƱ’mý}þž¡º‡¤šo)êªæúrk3þ™Ê£…õ$ÿ fÌ’¼wùÆÜÒCÿ*÷æ7áµD|sÜŽÃ+ž¡Ÿ‘Ðû%x›I½ÒªU¤'/£Zm ¬ä"îp ¸¼4Ž¢w®•p«Yæ€o‘ý ˆ>cï_¸fOK-¨C (ê¹JÙí‡(?@» Áœ.xºûô(jãr2ÿbNC÷ÆÙmj|¸nö•–‚Dmšw[ t#\Ù üN$j3÷aDÓ JEÆ[{ôv9f$î ÉÇÜ·5´ÙÎ49¤DÓ¡Få§ÄKÝoá>Öà';o+dËÚ¡›~PV@)nv ¿W†êÁ-åÝ9éZø¼ý0ÉNS£ò_+Yêå³ ~Õ¿+Üö€in¤ykU]ãô˜{è½xÏj* té:É=kkÇŒ0„M¦½ð³¦ó #å+®6M‘Ñ‹Ÿ`ôA,d¨`©ï↠p´XyÊ £ÂÀ«±S¯^ƒÀ@”vR{V*–Búde#ê8N(hòµë™ î]åÏÇËé¢.´R§•rG¾ Û5¡’¬eµüº’S¯øé­Û.˜$©áû3ïÞïi¨_x˜ â’PYˆåê©– ¨#ß°ò©ý=Ãú!®LÎôk¹|‡ÌâáHÉ5zLK²±Å1jZ£3=L¶Ï¤9²Gä Ø2†äÎ’ÖÆ/àGT7’L[{YçäZÜËaG¸ “æyÏ=èÄÛGg/Øu™Ä©û˜Nižæƒ‘¡öDÓU¡ò&Æ…™®|Ô¦3ý¸Ÿ¼d«æeóõf†;{ùPõ"m‘Q={3ü#ÍͲ `ðfïzÚñ I“ÞÙô*ð>Ñ~þu“ K~‚}NFö˜ß›—U€|•{(m2À]ï¥q¦k€c#¢8V,Âí2õ 1“£›ÑÎêäfôúå(»I/‚;ÄdkoûÓ6,¾q¡ó}¯¿µ¢_<ÿ ›W‘Ö;ßè³Þ±S®›c\d^Ÿ†nUÓ¶2\o~¢}ü¥¢”5üÅøl¬ÚvTñ#w[A£÷KI¡$m{Ôw÷|«¶ñû9u¾ ž†ù™…[Z©Â1˜hQ@MeY>Ú­¹ÖÒrêm2E@ÈÔ:ø”TÛ9úå¼.d‰W„nèÆ¬i…¹yNLÇŠgƒnt—·ú;ÑE)Ž¡?.[k…•œ5îU\ÛŒîTû ÑÓ`ƒ™E…Gÿjïåœt$L QÒ­p‡[|óuWBÅÏ>>Áîæ¦Üøb(踺z-_éÊx½)ŸÚÒƒ>?¾Ì×RQBîÌ ø0+I ë¯De!Ç»› äEµê¢H¬Nן©žmŒ–B±<…ôSà£Ü ASJaJ0öJï©uš¡핽êhXÅ#”¡9rʧv×!Κy-JÄÆ¯ ’;AšJXÛ¼¼r¯‰Ç¾³Uå:àokÅ–‰¡<­‘·¾D™iHifJ+ÜE&µaO`·RÔç“ú@Œ8èÃ[’òÒüèÉ¿@Bñ¬=ÓÃ~R~`±IÿɆºÈ:qKÖÖÁv©T—ýÔŸüƒÜD­¯ÛÍí*|A³]Ïê³©ÏæIˆ‰gp¥J¿ðêŽÙPÒ<ÕpK˜ç˜ß !ÀRbˆµ«C¯wÊ(®ÈVHÙjatmä¡ò3Ô£Ûûaªã9fÎ);°KeNw^œ³Ê%hbæ<ßž‡¿6”·çƒÒ.¾µ%€P½²ÁRô-s;¨jG”·rêCHN˜ýš‡-†>}\ mZ¨HÓ²u0ZçJT±ªÂç´=\»W Dª2kñí%Úcþ*)…í5Ò%iç2¶îá–Ÿf[Çû³{Ü­ä=ùÒ¸÷äsöíà÷Jï¥-Åð¤ù{m×ò¿† ¨óù’ÜÑ‘Ð@¬`>È‚+”˃ãÒ Žùšr»>›üZn÷¿G€á@9_ HÐ÷ÆVøXiy´“°‹\•Qju‡Ò% þ3[Íê›åÙ\âÇÛ€¶ÀÐ…«„ñ„V2†ð¾®7s@8Þ"g²å:)UM¸`Uxµ#Ý#—ªÍnjÝ_¨o؉œïå¼1å«îßÌ™ «X¾Ëjè› }pÌ;G_ÿ&\ìÆS°Y”¯öXõñCZ™l—¹ô²Ùbzd˜+/rWS+¶µ þR‘àŽBHJ‰Ä—2ò¢7¢càÏò5Éà¯I¿°¾dHK¯…ŽÕË Î¦W݆W*bGu«±S³®3íPêˆÕC°S>±ïš&T²ýÎÿ2QuôÒm:Ô6÷¶9;åóË' ŠÚÏLÍy'ƒùfpr……¿ÛÂ’®¼}£²^ëÚ:—€|r7g0bΜGëÀA%Šë4“ޱ9î\ν™EK~o®àq'"»ÃìùHrpék®ðFùS÷öbAVï;’‹¬©&*ïõf}ûZÜ­|^kX¡ÑïKEkÏ–«“Û0œZÜ{»ZìËß‚­ŽõpÌx6Á·e¡‰ƒOwòl¨Ö¸+žNìGl‘ž6DÏ|ö/‹+s¯Y\lÉ‚œ.=­ËbûTÜà¨ÑÖä1´8XKÇK  ˜èaóæ1¯f2i‰•!‡….PÜ0¤F£“GêÆ#0Cæƒr>ØÄöÕ@pá²ô4~Öò³QÚ»k>\žöb>Ã/-ˆŽŠ£‚¾üEƒ¢8WlÍ;c?ŸIÃκNÖ˜!ü‹Àz›æëá7XÒ>ÌœG‡;’Ý'¾‚Øgëçê•ðØW°¨ÝÁ;ºLÍ-”xüpN‹ÅpHÍ]p'É]NFµ6³òõöî|áà 𠌹Q“zCîÑM<Ø¿6/kšˆDi½mÂïÔu܈:îi2&â6Z_OßñŸ[¹¬ôE“8Sç0"h`27K"ê@Êu€y½ÛM|’¯R¦FÎiš{üB¥¿_ðݬeºå1"Ç_'ÁìÇÃmÛ—­ù8vr@x«OO"^Ïyóò‡@y¬ULã±µ‰ã}jù”¦yÈt*¯nŸ‹Å°If{ —%(Zu¾98'…X_pûüÅSâïk>¥FÕVÁ»±$À—ÐÉ+Ó¸‘u¾O_SâÊŒý™âN&Ä%z»–®'Ô²¼¯á¹ë·y·Eâ˜)ë„m½_³Šé[[¢UÖc—mPN·T­ªÖÒÉ_ô J²ÈÛ™$À$µóAD$ ŽÉNªêËÍ–Àâ3{ëex,x9˜©“[˜@ªK›DÕñ©Ð*Ø‹¡.E-ΜlÜœ½BçÈeýœ™™$UûCºð¯³‹iÌœHöC%í·Û&ö!I°²hßTèÞúsÎìñ‘/œÔÜ„…Ô¤D0•h©äôîùÖë*¿Ô,,;X‘+êÆR;•糓í¡9¢OKy4}<î kÒõ\êu¼f¿™d¶BÉú †v̪ûFjk\Ÿjß¡p’ºÒJ÷;¢DlžrÉ¢ZÁ.C°ô*«Ö Q*KÔödzÕH_Xãp[LÕ›h0VQwÏ¥ Õ’Þ¹x‰¸ßk*%oõûq¬¨&;ȫݳød1´‚*ðÞÆoF-HÇo±[ï[cg¸§“Ù8»4ûˆ·ýÅX¯¬.XÿˆÌîÞ,¨›´ÚðÊÍZì&õî¥ÑsrÃ0Ü€ç«ï²-ûx ov{Äy¡íöÇ/tÇÃêï+!dÞMp,Ûӫ矞'³«X::¡–“õITë5v ­‚Á_‡¥ vD³ÌÙ¤lͦdwG8Ž1´[£`lRØÛÌ©Ð6Ãa÷¡}ÏŽëˆÐ Ø9©«àÔÌ ;ŠŽ^Ðp:a 2E¹& Áφá«Þ½Œ"ÂQ?«>¡umã"b.!1X¯á4)lìú#M5·„S¾T» ³~P/ßaP)]õèÀsnëšU£ß Ú¦sHZE¦ëlä[¬aq@óT­Åÿ‘ÌM*bÆj­ Ü"f™%Áçkˆ_£Ú©x¨žI4gí´ì„¿Á4ÿP^Ç3˜ Û³lM.M-ˆpKuí¢ˆ åÚCg~µ[Ìì¸T5Ϭ†Œ@·a‰ë©‚çx€ôëCXåü˜aÛá”På1¦è‡i¨ÍÝðb¶ˆHF¦w#Ÿ#nÎ+Ð7cC€‘„mÅ’b1¯˜íºqí-ëÝÓNEhÈòV‹%@ó¾Gj­Cd±9â<ÁÇQõŠÛ§ùB¯¸{—Vbǵð¨XoEÒôø÷"hÚS·p’úÈЊw¾§””9†Ô‘ÍhÕåƒï\_Ỿ¶RÛ,ñöc˜âV/½Ÿ/%ù‚&õ^ó j›ýjUÒpç>^E‘n9J¥æìRx'7góÍqó†Âf¥…ÜDHÁäÙév æÎ-gã:zÿÆõ„½ÎÅ'+3Ž6ô8÷»Ÿòæ,©OÒÓ=ߣµ+®Ý)ÌËJ0KûIT\ŽY+tº¹†0ÇÜlŸ–<óïÚ}ª³Y+~D6²aì›Êg¥¾“7 ¡~ž Åh?Ϊu”v|¼è*Îv"±AñÒV$*àl°ªäu„o%]nÒN\ÊÇf¸®G%ˆ³l*¿r¼ÿàŒUŒŸmÞ8rùA±Öø±}ù™Ã}xXqR"ò ÇÏHë@€0·ø $ÄÄ3DØß“j¥ôãYU3 ?s®‘sZüg¿~o–”çÿ*ΫD,QÄ—MÈ QRç•¿‘µIÒË7Ö+B*]Mô2?†b¹Þèj…‡aÊN*Ês“‹+’1~Ðø£=µCµÝ8òJþ£µÈžÐjr"~8¥Ró9¼l,s,±4~Î%Ë»`ù#Pªç"m=]ø§3Å¿^=¤{ðF0ñxi·jºå×ÝÔß•%GÞ5­f4Ö@ÒÆÌ:NÁJÖéÕ¿îZÆ ôT¿I¿ßZÿÌC<]«,+‡S1³ ª“OiQ[/Ÿ _Óß.£Šûëj寋:©Y%ÐXEúû¾Ü§ ¡‹ÕþÛþ(•ŸS6»Ô¥F½ÜHÓ¯ 1>ÝPv9Õ•5QäuíØÏÏ­ p4JÈ…í÷Á=˜õ¤+¿WtïÃe…ð>uK­_’EÔ ¾C{’ô²9° D°®Ò…ZÅ­†Ù<¢Ò,ùÉo’ØX$ùÈŽ3…Q8”áZ«ˆj8îye`ÆÿH[ꈖæÏEá~ iêñ‰›ˆ‰bL!õ8@ø\¢1~qñ‘nw£ôJZý€LÓs$‡žŸ%¹·J=0'boûæ ^‘¼8ÖTîô)¹\nT˜"ä5¹x®ö¬K?„ =á³H;"7ý2f¤;Yó2 /j@JEøž&É€ªWñ²žÄé€Î%ûÌ™N >êHã­lµZŸUèÞÓ4û×öÖ†à›Ñûc¢HtcW¡è%ùúʘÅe’Ú®DÓ•¦!º|¬;“Ê{Ü0¼:‚¦{§Ö/ñ=I}“_¬½6¼ˆ‰mªŽÈ~0i^ÉKXO[—Ç©OŠG…¾¤ÿ¡¾!O¨ËX¤ôH‰ätxV¬Ã㎠äÃÏÓ¥¢Ëž„|T ýÙ¨Yá}åO’8"/,]Ò£šúˆÔ,aê2åîÇ8í·QƒßÈßÝç—å­¨|X0èèp“9JcÌ æDé¤"„IïlÖMØ ÆÿA•? NQ¹“·5ã˜VŸ°Š”ò‘_zùç:M/MV$î™ŒÜ Vy#:„;IoìO>ýÂá }f-½zf¯7ÃlÁO:ZÔOI¯w{ðRáƒÎ>«˜R’Ѥ+º°®ä`0ôò¹ËCÃuÛh›ü4ªn°Aú9E~nÁaúGXX…£ò¸`ü¯†k&1Ñ•Ç?äü‚-—í&©,ʘ /€K¬YK¦~`Ë·”šZ£5ö¥#¸¿#…¼(6T±¦»ê· € ¹iÝ/‘,H ¦ÞˆÔÒ¯ oO×F[ ÔQÍcJ¯ƒm¿55\ø_ÓÏÜëÎùóy7׸gvrÊ:êÒöM´6dô®Ø[O]†hï!2 1¿oðTG»‹,Þ1R§b\¶·ÁÞÚxò<¦¤2$s=ó¢‘ç}ëñD(é>_—#ã˜åóŸ’Íé` p¿ß?rL=˜—sU×åg[âÅÁ|ÚæDšja!•Tün¹8gTLhÌ‘µ| ICçhôiÞÐTtkë"+ê̢;å³àuã5‡îÙÓ¡K" e`©’WPóÕ>fÃ=òC_¿GŽ‹ *É­1ñHÐ:µÖ~Âs^xцÍ»ƒÃÍÜYœ7µ¢ñpßYq÷‚Ëï"ÇØÃÛÜó¯bŠh9›~´;}ÃEZ4ëã7j lùEdÇùÅøßÅýÄÓ¨o¬×S&‚£&¹ä>‘ßš"TÞ\÷ÒJGlŽü8*Â阫Åe°ÂSü4˜7'¬Wí³ºÀj¯é§§­¶o~†ç¦XªÏå@ôS"‘8<Èì2ˆŽÚJ)Uh ²¶w–G!Ž´bæaÀ‰Áuzz9Í÷Géb=醉´0•]¥R/Ÿ3¸Œ-Q§-CJ"î’úì—¼R%°í±vUH¾}OÐZÐôѨO@¬Øty!#[;‰–mäOoáßèBâ“Bˆë%æUð–ïÝ=‰(fPà´Çƒ`À§±µÂT’às=b$ecC^¹K?äø³òs®¢‡Q=ë”r|Ä"‘‹é Äí ˆ `US )tw#'eu¸˜Æ'µ£>&ñHdrC¦‰’%Ͳ¥ uKÞ¨«6RëµÜj˜c>‹ø0cISUï¡ãM@݈88IuÆ•Á×aŠQ¡»¨$9×~vŸŸòNFo=ˆÆ›\jd›d¤7â‡0¢µ‚åÖ¢xȵ≽6b™¯ kå*ÄløRß²3 H͆Y?¿™vµŠøˆtîèµQSÑHw¤D*(h^œÿà&Èib0¼ £K  ¼˜šr<åP˜Uuš<ÁAƒkƒ&Ýùru6w/?Ì4–[ÏÇ?•Û,R[^~yÁF%šáÔ.ùªÝ&òýMÈVë ^ë[èÌ;˜%~o/;_øŒÍµhÁ|èó°ÖlÅí¬Çõ†xjšî. Ÿk»÷ï66t®Bêí®ôè¸Ï¿Û Áx3ÚØW{ëÊs/—ô* y©„yÎò•®ò˜ôЛåkM%!ûð|`D6 Í‹,6i ç±àI3¥Þ<Ÿv­i¶’ ´öÇÅþ”«}ê¢Éj f/¨/‡‘wøi®1çz@*jÑÝxT_jb,ò"­1ööbÊc+a5ÂólâqÕXɵo’½58 iE„y³ÞÀ¯JLØôRnLƒNòrmÄ”Q#•‚NÞ¦M®r[;ÞÓñú1DDì&²µ {Ý9ä¢Hžyr{‚ÕoÌ_ú mñ'F>Hý¼16­(Ú¸k¹ Ë‘áÌiÿ„nOõ̘Z²ËÕ$Ô]©£b!ŠÓf¸eÊ-Y㽣ˬ۷?ì­…Ä1~Á(‘M: ¡{;'< +‰-!sPq¨±<¹¾)©Í"Á+I»Ýò{Ú{K·(ÆôÍà›$¿â ”xU¯ÎO4#$FÉWþZ ÕâøM¶Ò'“0Aî»´t¹ðIÞuè M *ŒÈÙ8ŸZ†K¨çê{Ôl¤Ê•4ùþ°@öç­`èe¾²†uŒƒ¼yèïô1¨²cúN‹¸TkmŒµ×ë—Q†_ã²(7ѵøœfIüâî˜Ìk”>¦Yåøî`XC ±2ßï£MCÞ׈&)~> 9 S#Ë/!!g¶=‘ÇvW(×ҽ尙=c|fÇ&SÇ^† —ùX“kŒ£k…—NƒkÄâµ€ÊÁŠ öYß›{»[ʾ:H º\§“²“3ëçôË ŠEÔ cSšÛy:9ŒO»öšHÂOç _?ª‹tù1yï™—Xñ¥¤Ò[æ1—Ì&°Å¸S)Ñw)nG^ùá°~NÌ9¦–rÕ“­¡|ÐCVåDcàVIÄh5pV뜓¥Èö"HZ…HëÆ&ï¸@3†vpKë.5=Xc9•‰®ªlüW9O\½§í}¹Ç€¦5fÙ,S¨-Pk8OcºoP6­::GïÉ:-ÂýÊÅ_êZ8jV(b’Å}ߢëÜ¢‡?X«ˆ¦®Nf‡ÔúßçâéÈð¥H$ñž – ÍrNå—Üìa¥ì¸×¸^û‡)?=E´¥mêáa.ÒXÖ7è>)”r‹ áäx¼‰J™˜” Ð;‹F'§DCnDø*¥ pÆò™ryŒë(qëáã·Ø¸µ2×£•ý • hH¥zü‰É±‚Ùþ©×HÅ*ÕÞ'6Ò†T(3é­ò[(ûL¸¸ü·BgXj åkÅÁ]¸\Â̴׫­R8t©’1½W„Óî0 üÅÜïîUŽU3{¸àÈä®Ã¬žš|eÑêˆâ§œJ¢*ö}ÿ§t'n¦Ía–ç8-œK+ÊÖÁ}¢”ØŒ×Usa¥¶îX•K¿ ê\У鎵G˜}ûÇé7ö育¹*ÆŸ—P¾s£ú‘°n*4ìöu ìcš‡Ùw Ëðš®,ÄwK·`¬¿{â?(×oÉÉ  ù–pùŒô³!&RžÌh5i¡¶!£Ðx`Ì‹¬8KW>Ðã vW%K"öe®R{¡Uf% ?»ôLþNc.· z'kO'´øë»åµV‚›‰fY3äYºtÀ&/çëþ«FÁ¯½'E;‡^Àÿµ\æ'C/Þ…ú¤ª¯ëš[¹xDW©½-Mõ.¶•Ó2žþ†7Û|aNFöÀ€¢BØÆ&æq$¿¢5Ý0:å$îs0zÆ)tAÝTüj”ØyS0׉û…²gdê7ÈY½{Õ¡P˜yŠih"ÿ ±‡ §M÷AË=þ0{Á± Ñ2¾‰9föJld+:bhìŸ6þ‰®ØcÊë_ëj·weÀ&Eñ8ç|Ž{ˆì;{aô¨y}}x§Â¬ð¦´ÚJß*d®‰`JÜŠ0º/|ãŠÖ;Àã!ãtuß«Xü˜r"½h­ÿeÚ6O–d«îDîoãÛ«Î?Ÿ¶éaÁnà>A„µDªt¾/#ÄžÊnÓêoƪçO´uþ™\ÏÇCžq;ªä8³ÝO u I°]åð‘ÌôÆ}™­Üeïîg:¯±ËW’ÏÓ.Ô"eCg÷ü¡ñصÄK*¸8©žpþÒ¯/ËïTIOˆ›§¬U/–œëªÎÅ<•mEê$:¾Rás‰Æ×Ng¿\3Ýsè¡}Ý»qBí`ãÇ™Ãõ)gõ›áFúúô€ò±w'‹cÈÂA¯W¹õ(•VoDôʲóò©|ž–y'B‚_.)ÃbUâäxC°êŒuNJy'Þ f¬a?-6[…BBÕŠd³ xŠ3&¨Aš}›þ6ÛeÑ÷¢ïã/Á˜!H&ç~’h{«ŽÔÚvÛ¹\âeÞd6Jú«zŽ×Í”`ÐÁ\:Òw„ùëÓyt_!ÙÛ¶:- /cÆzº§b|ëÃMª *õ«ô§txuÿD²8‡¬ÈµÐéîJujþ~Ñ–H õ5”/PXH ØV*9¢¬)Ä;§9>J„3|2ŸôøqƒŠpР¹á‡ŠJ¥“xšiˆælUðÝßýÀŽw§bz¤wrĶ6†'…·ÅM1ø}~/òe3 ÏRzðþ~ÕŽ¾š|Á/jôåÇûe8Nz¾êé˜ÝQùÒ¸ÚàÆ±Éì%"y¸ÏÅ~‘**È=Md—õ‚CàlÞHnŒä¹Ù©ƒÆ°Œzù÷õîÈûÈWcç AÖšíúüãß?ʼn®~!gžU܆Wu5xŸh›÷¿_*;ZVì«v'‚⼌'` wÁþëýPú %ÙÇò~Ï~äøÂKkÓìÛIé\ñ%S@Ÿ¢‰¡¦ð2çVƦM·Ñðl^aTWF¿Žî1©áôç²õY›ž_D—ªs瘴y©•‰Ï\_Piì¹ Äˆ5ý,±¥0 þ±LO÷¾mKá ®¶º3Ù;Ô:r´3d`ะ—¤Â˜~6ÛÝu?PA‡òM¤ÝÜu«ÒqRéò›TÔ‹Ò:m·R"n¯›‚IŒ+\4!9zý¾£Î63}:ëò)C[ø½ëН0u ò³ÓAj­ ãbÅKÄOÑfÜšèÓ€‘O—/—W·Ö;²Z'J¡ÒIâ?Æ{(~ú—¢¯AÏ5óêªÂá™àL®b´îv§lw#ÔqÜT+a¡ÒX ‹Dš£n0"c.=´\¾pª"`Ný·«±7êjax™ìq÷2²ˆY#Ãi‰«Å[”(èÓ—L‰˜µ)‰t>2Ïœ‡mSÚ9ž”5 ÓÊm³õ+~ù1š÷|¼Úáöqò g ô´š\LÄ–~=Ùà¥ï]Éeå@¡†ABÍ_>wŠí H“æÿ¤‹5ðê3Žä“h’»àó$(¤Dóâ¹%À^9W]væb X„rîQ¾Þø¾?˜5A¬u‰Åî£|¶K}dašê7 Ö×{$é­9¥iÝ×1D–÷ އl‰ã„T’­åþ4Ÿ-áûðfÌOú±Ä–-˜4ûèî–G..Š1ëµÔ)Ï48µÚ%o›×û<õK(OyëÌ´WWw–ØèJD_h)s4Ó›»ÂâÊÇtU>¾©ÁšØh"lLû77ÊÕ\Ï“7VÅV‹e¦”’­NNQ¿–t°.\‡‹ÃÉ äØy‘S)¿3;ï45!Ð2*àÉý‰HPøiÞñ$.uó­o[XO9Ѐѿßuå{kµ‚ð…ØÒvìç0I¼­8‚xW¥¯p8R·.l'~ZA· Çý­™ÕdÉùÕ0”6i—ñe?'D¨¸û†¢dÖB{UyTf ñ Æ5¿¥¿C™u¦ »6V8Ÿáל~¶j%0éߘRd¦×ðuºI’ 0¡ÁZÚ«xw’:ƒ=qp·¥ï|泞iHFí‹;꾕¼‘7~›T•4¸#½(fn@-ôöÂi”°¯èøŒ*²›>pŒæœ`"Áu@ì'éžu×£ è@§ßwºùùD#…RZÄ¡[â©ñ,.°äüLS›áûC€%A‘úpó¥–:vø©¡Çm$d¹_H³cNÒóU-â`®>ãêsIOêùïW!” ¾Ú¿nÜÆ°°RÁN3Ìg*Nîü$Ÿ|±ZáZjÈàé.‰»£¶oÈß×VÝ´ù&G3T­ºõ>ˆ§èßH"âO–G¥d¨fæòY·T[jÊ9´+MEª]b@<”þÄÿ6ÑΟDwåP˹&Ȳq­jìÆù”`H ¨CkýÔ]ÌIÑ$ƒl Zèºårú›©Ê¦…`ãUé³äýðx̳Cê-¯ìçxY¥é vd‘ͪÚþm³/Ò›³–ñšßqZ~z«4Dv€Ì­Í©‘ú}G!vÙ Æ›½·<í%¹Ã†œ¿DMLÆ .À¼"ëZC?ÆìÂ`ÙvdU}¯ëŽÃ ýfÃ"‰6ŒÞ1_á„OD ç˜LË®å({dUIå/õJ/°xåÔRê C¿3Ž˜”bó‚»xÑ×ÝÐ ±ƒd$ƬîeQ²>•¬pr×™0ìË_ceIûáÑ”§ÎžWß2¯Ê˜çu{—‘££ß…o®†$¼úNñlp$•tý4`Ø¿ pWJîo>Såô¥K“ÔW’í¤ehê=‰ßd|KÕÚZrI)®*zݲërtelgo\ÖÙè^UtìÉÚÂ=å‰jÇ…†NàðȘ¿ sÛEÇø½Ü7o+wéJÒ+w¸Õ&í¡H"(GŽM–:YS¥cO8½ÅŒ²waŸ @ó‘›´;³^z± ­5²Û9åZó -Rŧ͒xK ¸¦¬=úFp‹ !]V´x¾¦œÈ`ðcâƒ+룴 àâWÒmçD’×Mò±ü‹ŸŽ@¸æhç²ðÎûfhÎ68¢wB¢|ìèÜ{;w}sà—8m<è×¢¼™DÌ· í,NçÇo[uÂ%ayõ¹m¨V¢[g7ûîß¾r$Òδ%-ˆæ¼€çNJ “»¯³,ûêåt¬)è@—Át ¢’ÿú<Š…ƒÓ*ѯëO%úþøTØ#7¾H õ4‡‹ä;MgYŒ’U1ìÕ•ó(Uøõžú°Jƒ§$+!éòDÃkQC½»xø± žàcÌbÂÎaHh£vÚÇ–N—v©˜*[­ÊѨÛá8¨è¸¥‘¡) ´ñúÕÃ>a7¢Á¤ûÆûIž¶–Ø11Ü'ðÙ´¢¦9Á*¶>@‡|Õ›·BÖ\É!¶ÑÖ>¶ ÆÏ­>ޒЩf"Þ%¹µ¡7pIH8òqgXmd“ F·Ø$ínZdê`Ñ¿®_aáGL-QfN"÷GwN¨¾òù»ÀåÞ@ôšÙPÂe;ìröZ:GôñÆS\ߦŸœ×ã‚hŸmBC{8 ĸia aY{Ðçæá©KÛÃÕuí­ìøp÷Ófx×y|ü}è¼X½4¥Á‘} ¸•mu€¦éKòT †ò8nš­W”ÖÔBíЇ%ž5‘;1 /ßXÕ‹Ô‚ðž$²}–RwÏ]%ÿã?¥b&Û:Ä4T°Ê[™|,BáÂ-û½°åë#ÚG¾Â¬Kc²a3áël53:-ÊCÕÖ žñb,Õ"KNª²89êQ×qA©^—=3|о¬¯{¾©°-ÁÎ#;ú?h²½#‹½Âö˜}·ßä·&<«GîË~j®¬«¤|¼¬èhU{`õ®ò1ñ‘G$k3þ¥ZÏrý &€å3E“ÿÆVÜΔFjf{Ÿ˜ùm# —ôn¹ó_rÐB˜ÐOûŒãóZ†üBoHY+Ó/q6GÕ¸1L?Öy˜aGelqžMíq£e8be;Ç¥#:^ðÊ,¼² _ŸN‚LkþgïÂrˆ÷øE÷]0Í ¸üíw}øÕ’'˜ÜÞÊ ÷/Ù=h‹W‚¦†4=3¥xÛ]©”f¢îÜ´(ujß5ÜZä­ÂÖM‹‘vòý„4Ðè‰B+C3Í)Âîû–kö·¸zý0bÑÒ–#²b$®N«Û ÚW©½W!Èž©9*pÜ›ì x$ôý§T/¨…ÍïéÝö½Æ2øßjÖM0ª¢à®3*Û—Å ¾i#Ÿæ‚²B±†&øÂØ2Œ–Æ8nžœ¥¤éwÊyÉw¼6ÍKA/Ó*Ð;â{¬„àÁ¾ؤ<"ü’}Ó ƒmŒBpÚÂ$ŠIÐQJ }Zp¯ÌÅ©~ŠdúÞ­ë%®n‹B5í|›3èôÝÜ÷_ozLä×arxwÖj™…K«“ÉUp¿Ÿž%ö.hÜ--}ƒ¹·9æ<ã‘J²â¥Ê ËÜ2«ÅÞ:&ŠSIXQ’~ÂÖÅɼ{)“qL×ãæŽ/€È޳Տb‘ 4Ypp#¤®vþÁQ›š¨±š,¬„Í—ñôÆz%m$oc|ˆÓè=æ4yÒˆ~åw¸ç”¹Õè§IÔØœÞ9Ñl`VðcƒIïß 'û9¦ØÝ#84ª:JJë̱ä©¢­­ÿ² mSÚºñü©[:¨Rû›XÞ„ì+Û¢ËdW’Eؽܕ'W‘o›¾4ñƒ…Yç’³²‚$ºѻġ‹.‚å(™¤—Ek( ¬Ï6%Hå§uª !Ø(¸¨|­£v´“þ<_'d{—3îÔ;ÙeŠ “÷ÎHxF5áæŒV—’Òû­Âçij±§Yˆ+”.W7+>þˆÚ'(ã›wœ ÿ™Âg?âilÔ.ëû‘ÔŒ«Ý^ׯ‘·:g9Å¿ Rkï [@[XÓ¨~Éìø•¼è§?®Í@›«c¶Y+¥ûEU 0IûœáE÷‹Å¾»àÕËœ2äWºfö$5 áô%> "¸âŽ×ÿ/p$ÛžfÀH-8;WjnͤÔ\sø‹{d°&>2[¼¢Të’ƆxDƦ­›µZ4…nþ?å4 Éß»‡` ,’áFÃòY”£Qhbˆ{Ø’ÞÙ~lžêQ—]Ú¥bhj3ºý˜ ‹ï"U,|}1N²­¨m\¹I<€rm¶ =“Â98dy=Ã5­òAu‘™QbÉÁ1bÍÝ–oy]xLýªãÔ^½skc<Š¿8ˆ(¾]fßÜÈqE¹ÃÃÅÎ"ÔµÞ¡x†´¢êÏ@‚¤ª‡ÒÒK•Ó\8§ÒÝÐëZÝ&‰ãózÊ"¹Þà;…q;A“D¼£@ô´TÎ"ï`yÝÐõ!PkÈ_ö<Y^úç¿âûæÞ€ ^€Û,œé`òÎq&LP˜ ÆDÌ5¢XÚ“,œÉŒ.cÀö©Üt”<Ãþã7_-)L1Æ|¸Ý ʈ³AíËýw¢jwQë/GÉdÄ­€ÛØSxa…*)dT2á@y ­gâñr­Ía–æýø/m’£ñ~¡þè Îóí¨ýŽ>è¿°´š*Ä€ÛŸ=ŽÔ›-ú¦!¢~¿©$£‚VýYàií#Ác¼‚!³ÅƒPùá¡©SAŽ*RõÜù]Ýgô¾@'GFl”_“}ðq©“¥7ËeïÞoˆ<ªÌs¨öëM)¿>PqÄoϼð‚øyW¦¡_wáâ4ˆ›ç[;(? ¾å>ðÑùÈa¿¥²!mp¹â¤ruêÕiç¾ø‚M¥¦Ò²|´“¶€–51ÂAqBŸ©škQ¬ãzÒÅ•ˆ­C¦òg5,õ;„fP™ª‰l3O7Òf5"¹„•²äÍG)ªù¸Ìké¯b¡5ëÉ8»×E÷²YùÇ—U“„¢ =Æø›M¼0'³ÊòÆï Põ9ý^½ž¯2*ò%n gRd’/š˜æûÂjYذaè%0דîÃå³FüÚ7ųgFOÌ„ƒ)¼¾„$ZK^–º" —iË æ‡9—£I óþQv§“ Üa·u/°öù#žLaFl1÷AG(²oþÍòO(+/%‚¦BVä¯ÄF#›zÁW¿ùåGaLYÚœž§Ö © ¿²‰ÖÐY³6Æ¡|Bx—¿“Ín Þ{ö’‰Z,G†‚SNWß™_‡³|SÕÒT„³·|,”ÂÙ…+®˜ÚÇ›@ÚvjéÓO4ÕÐb^pØ×¦ß”#ýøp⅌ۣ09…”A>¢’»Æó6(΂^?ê;çQÝ8TÑÅ _ö'ž˜jéк ~žûÀ²íÒú—t;w&ÓÊå¼Ó—ºܤ=þ…ÛM(øœ™ Ûß*Nz>²ÁupûƒÕOuÊ9%éÒ"$F*˜vNtœSOöEÙ¤S®†ÎðØv‰Cr¸MѼy –,ƒ†#¶…Ñš²Ë=‘è‚û¯ŒŸa›q`)\+T ;%ôîP|¯Þó/ÿó¢OÒ²ŠÒ™Äu-e^o¢þk5ê–‹¡?½g«à¹˜ÇºƒÝãÿr+> fWOguo“ÅŠ%˜`â”QÙ &0ùòŒœ&Ðý5ô%ðøð™/ù™ÇN ·ð­é㹚¤Éz½| hfjÜÐÚ¹÷Ëiÿ'8Ê ¶(Ìda#üœ+¸¹œºÞxœCªò_{ñZêzu÷Áæ-#N©–ç4ëâ-þTÄÚŸER# âšÑ÷¯œm1wÌD߬¨xÀäÅ~[çþmlüaJÒiwáFíäV™ %fÖb¾Ïó/åvVFÅô~üÖZ]Î+” N5W£ð€(fø„àˆ1UON¢Ôµ~Ñ:ŠÀo:Z¥€0cþío•¸ÆêŒªÑ² ù“O¼µ%5H0Ò$ñå’+¥äÕº ÛÝ»ƒY€Ìì6àVÀl›@QUSÛ?q&k³Û‚ÀY`Dº&Xw•oÊ6IÖON[ºµ9Ãø%”‹‰…x^`þ!j†æóOÅ%æ5Aס”•VÍÍÐÈö¥‚X 7½HzÖØ)DDõé: Š]{P-šÍÜƒÜ .!¼¾ÆÁx÷2[Sœ·QƒœöC—íLôo¢˜Ô©ç:ìsu·z7@ÖßhfפÐî(u­«¾/½ tYñtôúè†ÁÚ­Y•‹žQŒ8íü\w="áè+‡Ü,,Q ê"¥W;:µ/.EI 3K4Ÿ²9žt|f„?*ƒÞÈ)óTðÀ@Þ™2÷‰/”jþªÐÚÏÅ1›:pÀ0ü¤UãViŸ• É72>°–¦›ú(zŒ™FýæcØ¡x÷ ÿîš1ÉM@êeœ$ €ˆ¾¢kõ§%þV]ô(_vÜÜ òî1ûÊ5æ)%Ìö¼ esÕÎ -½Ê“µz‚¯R¡Mµå1òЖF£PƒœÇ oHwh­dédÈß0Êñ‹Ôö¥ ^ȲºT•A ïû@n«Ê0ë\·M°™ê„þiˆeî€`Ïþ›EiEï‡æTø¥;*¿È–, S¦éöº€DŽ¶Ð¶¨hD6ÈV4®½ºh¯ö1¶cUÄ 71;¿ß®/% CÞ®t^ÒͬkzÄ)kÍÀ¤u6;®)˜ÂýuOh>Uë©“Yz†o(›u¶Æ#ÝÀâ#¦zÊÜwŽÒxK4#KÀ=Cô|oW' *ü¿Tíæ,½€˜VH›A—ö 4Ûµdgf~Lv¯ ꊓoœó)²ô5 \¶¥²«ä¨µKE}÷ÊC“‚Ñå”a;œ&J(ÊçŽ;¼¬ˆó@êñÖ §Ÿ­Û©QXʧÑ)ÿIWæ-¨÷î¤Ý»Ý#ÕîLÐyàÐ<,–¾¸´&ý2ÿ…Ñç}Ÿ¡Ð[••òz$ù9}{4u¬ƒµ­«wŽL0â2­oÿpTk,)?§«¬1‚_Ìê«ëuy²LÑ"L¬ÁÕãhfˆÍ…™Â–©žÔíæöÐv¶díq›õþ‘€\VËS X^§YA2½ŸÚå|Ô‚¢O[áÁ€Ë…ý-PcëK+-…T&eýðVü5i‘ nõî ÿØCÙ9I–ÃÇ—qÉÄÒ˜î|i¼ÄÆë‹³¤Vü|Ø8‹64àŠ)ÔpG:à€(uWx½+ÄÇDš„#UûH1<ÙÖÂzÉ÷a}<_|:ÂäZÁ‚lÍnTÛYm·ôubב×YɹéÌTef K®ï[ÆQ6ú_$VŸ6±šF»ðë õ®7r¿†pÉyVdÈWòûH,HýV»<ä%³*Š]¹eŠ«|x„ë|´T%¶yË×=aM Ñ‹.¸@áo¦ÙôOð‹9×8='â²…›Mâ.×ÅRE›,·P¾.nËÝ¡XO>¢«=š7ƒÔ3hf}aÙÁ1îUkÌœCtêk,Í(# þ¬àŽ´¢¿É¥–G,rŃ÷¼€jA÷ñw(¿šdŒÿ—BsÑ‹Çít 'c~Cu^¤«é›ç2ÖQûºö@¹É”ƒ#¥³$´ÚOD¥åÿ†â2kÂäû@"'X¬¡ /ÅÎÇl‘FÍŒÛVÚ.¬wCK¾Í:—fÕ™§‡ö¶p,Ä@ãºä‡ vêöVãa”/[Øßøµ‚Îÿ€®t"÷dÄŸé´š‰1ãËzœTõ4bQè “þ¦d¼ú}§Q:]Z¹<0ϲ^éøpÊ…#Üß“Õ|å|Yð †ßj–µ0à™/>‘êûQ,çÔ%³`1’åéØE+yÿ88#¼‚Rõ}À¯Vfq£ eÇyÙ3†ÂTμôŸ´ÕÞcáÍ´ÍæÎ­¨}ó»qõݹ ¼‡p<œGªgSáû ìÁÉ6š6ø•P±WÃ,dáÏ­œ$ki ÀÕ¼z-gÈ>aÏ e`öÇ^t^áWzn °3[ô ‰·^¼Sï…hvð© ¼XÐc ÆzPx§Qgk]Üîö¶a ‚õ®·1}L“?0Ð…Õ,lO\¢É»ám„°EšSì@+kÖŽ*S®“ø%r’žUº—Ú§ƒK±‡ƒ$ŽÙݾtÌWæ­“¦¨TšÞê Ê‚nO»Ð^«`?Ôi £Ø’ø:"dÄÿ`ÖðÂߘÙB˜î½>“èHýëR67bù9~jH_; !)ž8©9– ëz3WíŸ)†5pŸz]Á€`ƒ¦F‡žŽÝ usÈ Ø>Ìl[³Ð^|iˆ=4Ú"<.?C­òÂ6°’.ƒÀǸûD X™bkmÅy3Ò……¶Õ‘cí®EŽ‘çêd£ˆ?=xÁðFÊw…j¡DÝ Ç|¿¬E×JÇ¿µÙ;I»0‚_—$3¤¹9;ShEˆ"‰Ï*R“O·vO5Vêëº(#áÆªø1´«ÚýËâ(àt*Æ£BŸÁõÛj±Ï +î‡ Y‰ñphsÉptn3fM­˜á3¦A‚ÿ° c[CzëÖˆXý™G‡ý/Õ´k_¬wÎ5ÏW5fÊ'Þäi&Y. ÓÑ!Õ£`ùžöfû±Û<Û͞Ю…Ý.‘|ŽÕ?JÇõél„õ$<P-a|zCLá†s¦¹3Õìùw9k¨8 DmV¢Š›Ïfb<•¤@’RËx¢ö=~ûJA:†šÉ¤¬h8PãéUÞV­½šêô+Óšu$Œ*vÅtDùäy9a ãoòÒƒtÏ­V¡+ÃÔ B IÙ¿”ôBn]'5¦Ò„DDØ “ûH.³Ò}‚4†ü6ú£¸úß;¤~f㸓!ÚÜÙWì~Ö4‡“q—+iÐï­A2΃t§,½Å¬¢ô÷Co¤k¥œ¯‰Fëhë|sŠ}W>#Eç5³Ÿ{9‚˜8(ƒÅ}ˆwùEcv€s¸Ä#QÁæ<#_‡š¤Ÿ“`[£ÖpçìÖÞæãÑBzéD·K³! 3c²¯ºü1š–=îæé\³}Æ@xB 4™hU#AŠXf]ÀTõb’ûüƒô3*]·ÿ…¬àò^Ï0£ÉwûÕî~w¨´àµ,íŸS$Óé8Ç5j~®óñK¯KPÐkb‡ÂSæü¹í²Æ² ñ¸T½ˆh×R&ê»í|‰Uœ—/$…ÃF[eYîâ{åG·z°Ý ;¤~f㸓!ÛŠUµ( "¢å8üŒ¼^¦ºËù£”S©½î"ÔoœìŒÿfÁù ŒN6hÙÿþS÷en@ŒÝŠ<‚ՔƹëÍ$@¥À"øc8qtã±¶~ ݤ¡·4}ãÝü¡e(ÌŒùzmÿyõUºãwåö£w]G!Õ8ðdÜÍ~ì\×*7r´™Slpõ ŸŸ§W“GïýIƒ§¢òXTÆó:2Ã}|Ñëaâ^˱c÷ëû\”ˆë> ŠJêóÎÁY"äÂq’Ž\й€l·éåPð–*|ãb*4{d(”)Ó¢’ï+à7–¡ÚÐûwÞñÊÇNîaé(I˜«˜ñÝN+b0cç‰_<^Ûh'š ;º7æ,–âý­ðv{é`a!yÓ%¾_»QQ(ØJÞ6®ÆqF”-¯åÝúÙ{^ä°N Gœ€ŒÊã2(áæâFRU:á4%´÷ùV«²~Bâ1HPÒAÖ„ŸZ4ðÈÐS]FÑyù—zª3æªÉPð->{7ólÅ3;ƒ¶ÑÍ=VÝ?¤”å²Ê"HTªèƒµ;óçEÇÉo›p7›Ñšq$K£Ø’Uk8òT§Kÿò¾ªûO ÑÚqóhìô1Ä</K/Í027°Òª®Žyëe•Ì—âf¾¤E@@D‡m¦Á¼T÷'»„^cLqøJ›éé+}:@´D»˜’«Ä63¤—"YAmì<œä60Ƙ•8ܰwQx&`HMòx¢²À¯Àˆ¡;Çüs5rÄÂCÙߤ9mëê¨ÙcBÌ0‰û¦I(’t²äÉ5hÊL$pÜuÆC½6D=ÁáÑ­{.C£`ؼ5˜~Åüüá´Á2O0iA¡€4EÉ…éú Eý>nõøIso5̆¾êîë2)ãdk—,újS&ŸÑQÄ9»×º•U÷ ¿Î9úÝž÷£ê¾™o^vŸ„îÑXárˆG˜¯¶‰œ#Ì·®»]`ðã¢=-TWj§QîsŽVJ<"uE‡ü;ñ½ DjŽ%s-šù„˜r²ñHWé¬ì9Wœº\ÐG1ÄaÍ5”'Îuû+F³å{-bt;& Åâ·äë³wÔÇ%¯íþϾv Ì5à½yô¡OVþæ#+ǘ¤›˜Ž ×íÿÊÙÚB2…¢l– ûØQ4½»C§ çz¥åçoCç0ÙÓÐH†´b¹˜,W“×ógýîiXXiMô»sES!®û¨L›Ä >!Qêaõ8…~ê(cµ¾ÌèOWÞµðìrrM-¼ò†™CQW¨Œyµ]dL«)UO.1ýhCùA’ Ÿ³;ª`¶ã ×»\÷ñ½Ì~(*&0ޱOû5ciük¸œÎ˜ærÚ¨½øª¹òå'7=¯H= ìÚŽñ ‚É=Ó¸SÚö#÷ÛX9è„íL¥–ïâç‰qãʇ‘½j7µËb¯w+/‰+Ÿ,öEV›Iyr¶K±¢¢~ó­™òˆÜ’/¸&àÓ×ëMûÏ kÉŸß·OtyÈF Yù4êé5_ugk!Õ2«eÝ}B0·Ž„|n.j¾sªã;íïè–´ó%Š}µ’³ùjc s"ÆÉLJNR¿ßQrm¿íxˆ“„òÆÚCN¦ëÌÛf›–ÕaüõªÐ‡3„k wÆ×œE 1­w8SÑÒOêC‡å@c‡‰x?o:KyÜW@„¬úÏ'zÌ;Òʳ+8ç“_o0.þfU¬ B&î­Mjò só6źl5ûfŸ? ‚ôb“–㢋ŽÁ ,ÁšîZFÄšf:ˆŽX+ÁR¼¾Zj惧`¶¢µÓÛ $.yYiÃ!V„ࢨ¡Ïú²I9ÔÉ´Ÿ›â’z„y)ÒŽ£ ”ÕEêB¼´â…ç̨ê+½2D@ŸÉS{ÏÉ̹ÔcÆÎUy´ û"Š#¿½Uq—°¸¾Êd0©½ÕA»Xÿ_}÷.¹œRwMÓ5TöZ+Ûè›ok³+!šÔa@™ëò/|È)©[äÒ®rÞ“5kS*§jG ìqÔžÌZšñ\6L ËŒ½Gk—ŽïÂÒ®[Ô `¿ vÉ|,¨  Ëy¦û­ãØÔ'~–ðÿy|…‰W¢pisÎ<-«' +i”¡ÈŒV`$Éà8¡6ø%k}Ì ×P:PpB®.ß÷°æ(Še~/;,Q£³+åÙ­1…v||[ëöi/¸£Z¾5¡˜­°U\OmèĘÉKmiÏùP' Á«;)d¡©G"1«ÿäöݵ£QºWž,]ܘ6RÐçÏ"•,´—åDDFðâò¢Ïù–iX™±òÌ iÇ]ÚcÿÀr1¦ªÝïÆ8þIfÄc+|¹L÷'Yëå×=‚€OáSFÀ¯ÉQ¶EãÌ«ÆUå •çÅB=™4ŸÄöQ0n òšôt«äåoÛ ‹ÉPÓà º;ŠWõÕgÆ2@G0’a~U6ûóÝŸìH™fÇæ /ÞAü°ŒÌjUJÔ‡ùv»èc5ä/ ‰â 7:|Õ‘LJÂÒÚË쯿ïŽv•Ö6;ÇòZÌ%N’Vê:Ѷõ›8¹m‹G,î›äÒ3y%)R¸0ñ‹ƒØ® [ïo‘V— ®]ê§"C”>³ç~lÃí»-¸¾wx“kzêÐ>Vïæˆ3*5÷Ž˜#«TŒ+ã(¾‹„0÷ÇV>0k…0—´xR±´!+¨z˜V˜bP¬½Á R@6\ˆ[8’÷ÇÀ?_GHµßÁø×‡ù“îÒ‹¶ éùf'îô´ð|ÿ”:pªs' Á’8ÉgÒÇ®ùhqõ£yÊ©^«2rWÙ¾±¼CÎbe†ýw’yõuôŸ2F³– CŸ1\@“ôªˆT'Kâ!Õ<é¶žz]1rnÿŸÙŒ åºÅgÊê9BZ脚L ÛdsФ€  Qíü"ìÏæY8‰@) Ð2×cfIÄ¢Å8u Æði6Èš £ñx=Ä-}:nìRq^IopP¡jlbÖñ$Þ+¦=ùÜ¿•žOƒH]•‘ùj*"‚ç[ˆêP1¹çì%á,üþeº/Ý—I!«Û;ÖðÔßñÅà­éýÒ÷( Óä’ñµ[=6ÂWÛïh?®U·bÌë·RYï$9<œ»zpÐ2¢ã¡òüyS¡ñ¾j^óá\#Ï#<{p[RpC&‚/¾âİwÕ9ÍRÒ&Ü |â™k»)Ôˆs³mÔ"j§‚™éù$"Á:ƌŠÌÚº_A­Ç“½(ü1uf¯¹·jYO)f2£æ—L§‡ìl°ß WÊ"æîÉÑÄàcORíÅ*)ÆÓνtêž2ŠaªÅ—ÎEç%ì[1m./‡öà-_fe6ÎAc®v·Eb%¡*&ª÷MŸŸÛdö;Þ¦:·pœº™xíS‡ËhÐq‹‡2 ‘ACúRxP«³2Ø:Ÿú’ÅN !Éå_fªkÏàV`09kDH³$ Ôa¶c£/f—üâÛdÛ€‡ ø¼ÆÁbjê] `Ÿñt„Óäèkî±E 2ö9 ®ÓV­Jk×é¸cç‹‚cÃG %Ñ;zEzïú\ÙÔµâÙºï#¦¹¯ÁÁQ•_§”# UeêçØ•¯ä/Ȫp¢e­º¦‰JUµsh(qÖÝüD¢ªdAz‡J™ùç˜åMTN(o‡;ÀàþçFóÐcþ·û4¦ŠHB:ç‡Å^>ð€gÓá{zaÛ—~ǽÃXOÙÇuh&Öì¡jf¬Ïü¯Hžokôصp½‡µìM}rÐh_Ö„‡(—œÆÏ<ŽZiCÆ';'.ÅšÞª3¶GÍé %ÃD½5ïȨ6saœ0ݬG#ßb` em^ŽBËuµk„™{v´©MË¥%ã¹N ŒkÅKSš¼e~¸ÒºZ*G&SV³Ø÷¤èþF !B®*ô«JçyÎtÙ2O^€ÿÁ÷¼Ç™U Á.¸4 21^…aÅd~w–›§‘=ÄU§Â(9Wœž¨³¸ÝÓ­—ªµ®gNøuI^sm`|¨ëV.e”ßÞs=±bâ¬âµ£æû¹WÕ!T,áƒûZø.5x>äëð8߯FÁPSU„ºÿ>›«Qm²º'ŒÏj?§oHpò,Úu åÀ‹¢ñRDè” /›p`ЪøU& ˜|W§ÏT†B’ÔÖ?¥7ç{ýZ›ë¦. ¨º›€¯dƒÑ€n<oÏ07I¹µò*iÕjïæTþÉzuˆH ŒËqË R”e§ú­›SLÏItf­Î‘ |v‘{¼<½e†á€Þ•r«;WÙ~£1 WÕ€„ŠÃ·ü«kŠM­—9­Ï Þ\Óý?y ˜ƒ¤×ixÂåaŸ)a† 7Å3RÇbr¨‡ÿnòßÉñ¼ïK²YYm’JNü™G±:½’¦žÅÀA5’Íý˜¼œmï¯)3yD¸}bmøD®,Lj13 ¨{”ÎÆ¢x ·’™¹b5÷švî¨NèôÙÙq? ß$DXCØÁS > P(Ê*%vÙ… Æð!y|µ–‚¤4hpÓ”ÒÕУ±Îè@½wÍŸ§8³+ª”ÍV»s°RjÂ…”"ÓÍD†—íh³N„s£ØýbãÒÆØÑèðþ’´ŠÞ¡°ÛNhwiý²¥6'¿°JBð5R[篲&^Љ8³=ƒýàÜ.M¨ñw½Ö¡Vž·h"í¿7ñ˜Î´‘ºÕRhKŽŒ_sÄ9Ö~›\íK“{Ñ…ßé± µøè×¼ÝÞÃ=½c$pŠÜ„(Ne0¿õLÌ•ÓPÍ’ñCXkÉç‰*¦¯^¡üQu»–FK®¤Äáh°ÔŽíg'Zí£Ãâ(u7¥âZ~Ò4tv¹M·ùº¸Ð;ÿKR<‹Æ9·Ü˜Ì¬_;<]篋¸ÛSÒéû I‚ƒLÑòû‡)*›‘¤²@䉑Rü‹í]ï²I?e ?@—@«‹¹¼ûý¬Þ˜~ÕdEGçéfÃ'jË­Þiç´™Âk®@üx—9Ö=ôD·9oh{ëï¸Ã“‰Bá_tÌ{=WWVÊbfæIr2;6Ç ðׄÀƒBLBêMqOPò3?¤wZÁY« ¦0XÑEÕ`€œ?WÙÝÔp´–O¤šÀ›âZÝ [Š­X;£„%`éØS?œtÌÖì»õ4v‰²t†þ:uèšqÕ IVKr¾sƒ_L˜öiã[ZÐØò’ÞeiÁÚ©{K1:ì–Í»"E½u6Ò\Pô½405Šªv=¦1‘7ïb3¶éšì$N&/2—M}пð÷»‘~-uÔ€£þ¡C]µÕL‹œJxÍ˜Š‹>k¥ô‚ÞX Èû¬G—'"Ò(ÎhNÈ?Y˽p”’g¥k~ôÞ7›Þ²ÁÕ'pà[sXJ÷jgõ×d¦K’”Äï•ýuM_zþè«^„wèǯ}zø©2}:ì|MˆuG\€ù>™‚8Dz©>žXù]”¾ endstream endobj 1000 0 obj << /Length1 3522 /Length2 32387 /Length3 0 /Length 34271 /Filter /FlateDecode >> stream xÚÌ·eTœ[6Š%ÜÒ¸wwww‡ww î<@p‚$Hp'¸ îÜo眙CfîÜu¿Ÿßêõ®î§ö®ª§l¿»)H”Té…ÍìM€öv.ôÌ L<5 –¤§P èd t¦WZ¸Ú;X˜˜Øà)(D€Æ. {;1c €ÓÅ hêÖï`b↧Hí€NàE3€‰'@èb¬æédPÿ”ì]èMŒÁË@; ¬"jïàé²°tùmƒƒþ·!€¹½Óo&€ßT@ 3Ø«óo£" cSk{wgkÀØÎ à ÏP°w Aj{;€ ÐÒØÆ`oþ— uUqU€¤Š¢º’* @t±3ǘZ;›ºœî@°c3³¿yKÛÔ,àÇØÎ’LQÕÕÁÁÞé_Q‰ªª©KÒÄ„ÔÄ@ :€¤ºª@A ,ükå7)ð€´Èø·º¼¸š°š¶’83ãïl˜n`Ÿ ßLÿ+Jp0€—hÀªæNö¶9P[º¸8ð02º»»3X¸:»0Ø;Y08ØÐüv f Ç`ïd ;m€¥ØÕÎ \p ø]c€ÈœKà_A-Ê +HKˆ«ªÑƒ³Eÿ;áôŸÁÅÃå¯XTÄ…ÅäÅÿ×òo‚  ó_õúmË \d3ØÙß[pÅÁŒÀN]þ‰\—ß„mþæpÁ†þwxŒæ`ÖÎŒÿÚêÌø;z E5z9iQqUñ¿XÚ;½pqµø­û¤ø©³4vþ‹²œ’’ÀÖdî:c;S0?cWgé_2ð4#ý;é@€¨«“ÓïÐäÿ½äôOtÿ.‡ˆ=8=o_c÷ÿn\c;Wg¯?êýŸ¥47<ÈÙÅùo‹ÀeÚ,×d÷ÿ_»ß ¿M ‹Ég• À~˜ÀS,ng&jok &î ÿ»+Ä@à ¹Ø;y2þïé·¶³w·óþÿX4Ù™ýÎ5ÀÌÕQÝäè ”û— Xÿ"³º˜@Gð@›Z2þvü×8ü3ÿƒsâëí`ï07¶qú‚Ìà/xogc7p£:¹}½ÿ\øOÏÌ 0™º€‡|®Àÿe]ÚÎÜÀý·ÌäßKÿjCê¿Î4ðffogã n]sxF{pÃPÿß~$ýk W°êÿY¡ÿÞll ²ñüoÿ¯mšÀßñSÿo g ÐL äbjùwµþ–K»ƒNØÎ®ô_"õ߇ x2Àg?è÷«@ÏÌôßkà¦7µ¶:;Øÿ^‚“ø_´ÁýMÀ¨®­ª¡-÷îwã_{ÅíLíÍ@và†ç;9{Â3[Œ…àÍ 3 Ç_=`d°³w«\]|WþwŸp°…‹þFF‘Ä `}A\F±Ä `ÿq2%^3€Qò±¥^+€Qú±e^˜‹ì s‘{A`.ò/ÌEá¹(þƒ¸À\”^˜‹ò sQyA`.ª/ÌEí¹¨¿ 0æ¢ù‚À\´^˜‹ö?ˆÌEçõŒ_ØŸ±³)d r2uµýGÎÆò[ ³õËf°“Þbž7gcgˤÌ,l¿ÅN/ÛÀ±›€GÌèb4wy‘³þ#ÿ{ðÿ±Àfo0à›Á"Ó;˜‡©½ ¸³ÿ¡Ëö[bkûØï–g4û‚i_,€S ü¯¿×]mþ‘°‚ ‚{ÖÆØö+à˜ÍÿˆLËôb•õ7t{qÃÌ &aþb’ý·º½«ÓÁ*@p/¹d—ßÒÓÁh÷ǰ ôbõ×úN”ÍL÷%f°)[WxäÿÙÄ ¦üâlÐ|^¼d¬dçjkòûH·øƒ38ö/ÌÁžìÿÐbfGîð² öá` ~ÿGG°1ÿKúŸýÀ ¦àtúëBóÏVŽ¿d û— ³3é`¾5¼øKÿh+°GW{ð»ÜÄæ?ü2³q½¬üw/²ÿké¿48þ%þ¯íÌàúýQÝß~!ÄNŠ3ÐôŸ­Ëþ{Ðí³ƒ8ƒ<^"ÿ¯!cûqËNœ‹¥ðþ'ØÅÝþ° ×—qûüë®êljïôg•À‰pû‚ »ÿÑí`£@°×?ú†\a¯Î`K^@§¿üç{Eé÷Íí¯{ÓË‹æ_×ô¿°ª‹“½5Pdþ³óÇycðAá¡Ë¾D0ƒåàÏ¿éÿ‡Š—ûÏÚ""öÞôì,zðq žLŽßÃÄîûº¦ß.ÿºÀ€ßˆÿÆ¿ïu Ðh ¿0koÊb•ÖVê'^ð½ì7Ãa¶€–LÌBÆ÷¯¸byë¤@ÁÂÀ¦€LÊB{9)}¿”@»"-Š,›§•æäÊñ 3e¡ c?y?dqáá\ õ Lùù€²vRš=™Ü|íb¶ÉÌ–„b€úð¾(÷׎Û–±g´_©¤ze-K_¹šfþ‚édƒî1ŠßF0ÿ½ Òåù3.Ú¸KxvÊ(? {XæµÃ·Œíœ–]Íáõ<´ lòÅ/§ë7‚d™TK-Ä—-˜ŽHŒê¹kJ>r±Â“F»÷̃˜5TažA¿Æ†@S³W·jºÕ?F„ž„Z rÕ?.WÞ¿×)Z–äã*é8­SDoq;¹üæSù"µÎ„S±»á›áA£ƒ¥ÂõÊÐÖ=†h_mÕx.þ€ÅYNT¥·T&ŠT>Í.S¸­NHQ/ý‰Ã…¥»71Æn¤Á¦0:·;$94¥ ÚâI»›6à‘Xć’ýz¼ó½¥¿Ó>¸”½ ›@¹ÌCŸŠGØ-Îúhɪ0‰œjˆÛÀúSÒUfJque¸÷ÙoŽ'šc­ûŠÇ”’8OKýŒ„4\ÏúÑU»Ã=ýÀÖkLd”#zžP$u”•kù’ˆ¸‡4k£ *e3¥Ë"°]Äö7DTÿv4¦‚k¦„ê ïÙaü„7)ovn¬eÁçwñĸ“þzÛߢ'QßvÚM¤tK¥5i]†X‡¦—RHn´–ö#g²; &?^A Gf±Ïñ2òAMùál½'N52CÈÅ_¿B™§’ÑÎËÃÂÂ&æ8JŸ|5)ŠàSDÛ—--Zùlí•|NL~GËL,g (=ŒºF®ú™ºÈÅ/%6DÝDÃfZ¯¶Ùª}¼·­2¦'ZêQ{š¾«9ÑîF÷ÎA©û]?‚éà”jšÕ¬z†Â7¦†¢•ÀQöÊ\ƒµ<t}àñ/ûfêÌêÀŸ“Hb|‹;œùÛ³À[2Çh§ˆáÉ>û_2wŒ|EH¤ü[ŒöîÊ ™‚ÄÎѯž½”lŠâ™K òüóVç”ÄYŒ‰© ‡¹š#ϹÒhÍÂî+! >Þ ÚÿF­‡?Ыãß!O×m%ÑÚP…ÜÆyãlÇõDo%1üªí-L}~ßÛŸ5zy.ýS,1õ^&rP©ô á;÷ö_ziÊÉùPW…ï`W%ªħ#ðÌÅSiºÂ¹jÜäU‰yõæ'<Žˆ0*œ…g`•\u—åѺ2SiwÊâI穵ù6™É_Õñ“J=ŠáM•ZÌ‘€}­;¦î̸XW0”º«Ä‘–¬»¯is +'( HRš†ÓkÙoä~D éÅX/¤¶Sr¾;¼™—àî5 N)íjÉ€ÆÜ˾øœY¡µWUkù~Ž&æÀ*h‹ó²¦\ wGº:7?aKNS¢ï«Ç͆Ê%bOÏZ{ÏΡB¯ð“æ#Õ®|ÿ¯«tg7E|,'bîM&Rº¾zÙpyÖw•H‡yÑ}’ ¸lýA±çÙ* èLíüíªÛ[ìÔœ½ ׊FiË kdXØÄ%E­÷ö¾Ö;ý8 Ã'Oðv6d!âôÝø·¾B4…±uú´œ?èüé[žCçé.QûÅÎçEø{–Ò¯í#w¥'¿d ûk#"¸ºðܵÉ×G0ÃRå!p–%q:ª­™¡œòýk:ïè{ŠŠcµû»Äêõ¥m‡S MÑL#öŸµƒ„9B_,ÝZ%Áv~¾t¦äkœ:p;õóðn vêb±ô)'xLŸ‘äf`ãõͳ²Ñ.çV>]ÒpHŽ»Ì­ŠÏ…¶³wó–zpžõÑóØ¡ëãÌ”›³ϳ…4v>:àyï±¾Öåo*G2³Šæé„j†€† ÚçEé·nD’/ÜÉ’ü¶ºó%g…ÈÛKÌ’vÃ+ó[*'½^ÙúTZÅOúsTWG(Ô„¼-Ire™Ô¥Ç·Zeí‹_}$UßÉ\{_‹ŽNèL…#]Ý~£/Ñ¥JA{ 3ø½O^<Ñ­ƒ>ŽâŒ™³ÿlD<«®A„:ŒÚa>+ôöHdêêí®ôâHKÛ>}t-Mªª=Ë¯ÌÆ^k8ïÂÈê x¸ÖƒÊ?ˆ‚ˆ™B¹y'¤SK‰,þ'üj2¯öèñW£3t ò{ù4ÜpoqIÐm½ŠôŽéŒð€âß‚¡ì¯?‰ sòñˆí~ˆ`ø”¾E›ˆ|;þàRáþùJe\±#ÉiŽ3}}F¬w­F…K Q3Ÿuˆ#Ã&]³ ×öãqæÊë¯ó1“ÔÇ«B$­ÑÞM˜‘„ëîTgû:nØ]–êý9#R–.å{Šß–JSd“æâº{nÅ ¯ ã·':É7¸2ôÖO>Ùd »}¼fÙ o K£aæDt­D"ÎMRª2ܼT#`·ñ­3F†Ugg+è$ùÈËJ(ÂXs‹-“º…Ö2îyZûwa ŒÊzQ3óRJ·±ÔI0ÞT ¾üǾ)¨ŽNd™¾%ÍY|‹¥°šÐ¡s}ïA﹘©ß®9ó–%l°“óîïegØ7ºÊ¦ënšÎ‹†Œ›Ó R²¨ y–qZ‘ïŒôb‹ã·…²Sîú6ÉJ½R«¾Ï>ȉr/Ûu™éz“¶7ΟKôš·êôÔ„¬ ò´ õdtúïâ*uÛ”j¾µ!﹄Ú<0"vpÀáæïÊ׸ÔÔ žž®<ØYÜf%ÿj`«v*‹*õ-†„_ù>K-J…¦ˆ:›r†}õ(štØ<'¼×Ü©™,CZë¼R5{ x\HØ´Þï Úb«s©ÔàaúIWÎ e’ĺ¯]Äþó˜s€ò@6¯cDbK%³<òv¨ªÞ‰ÓñY¤•F4ø×·I‰©†%YM‹,©ù6Œñ«RMä`ÙðuK‡øÎA Ó^¼/»ã"Oçû¹ õ̉‰>]ÎâøØ4{Ÿ7Ù;Îë ö“¢üÚJÎÝJXªUcHhUõ¤>µtsîT—§ßB¨;íÎl˘ûgØÞÑ$qŒh–cyåÅ õ,@ `…O³%Ý62N²ŸŸ…>^<¡_ÓÈÓòt.´acš4ÇmæÔãGY b—c"Áùó£q„·ÊyØ [¯¡Ë9?TPé±)¯_R¢’>kaáSvÊÄ6Ve„{‘Ì$i6r1Ë‹éw2<£NÃénzM?Y›ÅáÀÃ]EÎÜR¬î¦DØÿ>ª¼d„¬Pv| ›g}›I?VÚýh„š$›9ªÍqÓ%ñžá½œÅî)売SÅL×%NXR³êëGŒéÀ®Á¡ZY³}-›v"¥D>•eEPsôYT=#¡ñ9ºˆS† äkÿ´ºÊ¢R*#3; ÀÜ£Pn}€@•K"BUSz, ¬­«¥®AÕ'˜ŽjI$Óøû?¬âéZé±Åž[Œ’û}ÓëâLЦ{Ïþœ®5^1#2P¹Ë‰;Á%@“R‘Åéø›Aó°KǼ°æø÷Ƥ_÷œ!r>¶Ù¡ ¡ó§]òZ÷•f©|2ôEÿw4ú–Ñ^Úâ†ÖÈß@ÔÎÒ½ôÜîÙeçeûDM%ÄÂf7TçÚ…¦ˆ4ê©òHQ{¹É Eü©5~©Ÿ Qúf¸î]|.ËÛTR`í’ ”RØR î;Ç5šzDk"øN£T¬zÞctŠ BSá¼ÉW< Ø%ÜÀÉk²PWì!¼?w}‡9qÔ…¾óðz×>šy© ãÆS(û #üšŸ!,ª­|‚‚$…A½‡n(ŸGµ¿ZŲ¢~^%}TÌÍ1ÞO’["çIõóÉ ï©“2M‰·]b5·b±ÒNƒ5ÐáYbCë†gf6Ý]å*1°˜eY•­Q0†D˜¼Ø>mµÔ-‰môþ§²[O[ŽÎóOÑþÌÀëèj”WËX~œEÞõÊbdöSùÖ~Qe±?¸ø—ú\ _õ@b}DWb ¼Ë:‚Úά^L< {ÿkþ'C¢ý­ÜƸ€Éì1o†:&—`M¢9ýdŽgí±ý9*òs®“¦Fzâ¨a¸Ê ‰Étæþ£©ÍúA&±a7ÿÓä(ô7€¹›L%QñùͰ¾Aùêxüµ]­;¬mÖ. Çu&œ>b¦ÝÝï7 íZãÓ^k­TWUÛMm ÉÙ'ë¬Åð6eŽ‚ÍAAbZ'Òûë(¡KŽo ¢”k§Ñæ†?g¶8í.Û¬fáÉííEWNÎÓvº#áǬ'¡AŽê$ì°µ9êP¢ÂøÖsŸÊ·ó‹ "š&t]À¾cØ{B=؃áí™ÖSn¯Â§šGÛLfŽ ŸwlóÊpž¦ ž¶:,œÎŒ=‡79„Äú¢O}±9üg7Ïã²1 cN~5ò©eï6Eô¶e›•.ˆ&4ääðŽXžkôQ†# Xp±ºû+åø²= ÜßãX!9U~ƒÉ%(p÷¬èd6€Œ£ÄëŒá8zm¢Tö!9«ô-–8…¼D¡íÏ_÷mzO³Vþ‘Ƨˆµ™Û}OQ}óxЭ©‚ö‹ÆÉÑíݽ+ïd5ÌÔÙí^‘ífåäžëöB X,dÛüZjMÓ༃5ðÙÕÍëc×D¥ j£ºž²:×J·1 =é>¨lCX ³µH·»(—K{CK„ƒ±}×Áëd‘õí²jCœ§ ýç½ÙÖàÓx{¼I I#³Ó&2Úf¬ñ’mÝcªaÑ¿„0u¤BU+}øBÓ4§i¦Èõȇ‘•÷HÙG,oit‹w•¯.¡/H×k„g„ý{¶¬9áU’«KwæÕ"Þ—í1‚„>¯ÞIöºúÛS¿~ì©I25=ç—½Ž+óߊ P0‚ƒ—óï1ÃÏ‚7†ÏwèduÙ$›ÞÒcÐõ¤DŽO×ÿ´U{Á¿¹#VĵéRGÜ¥ø$£«ûº_¶Ô}øö»Djo´’È”ægŠ õORƒ‚­/M­-´©»¨+ã6¶M§Ìʹ°T  ùÍQ·AÖ´ë‘:f³ñ‚Ô«³ÍÆ¢?Ë= Éîè’ãùZý¥êO!K{õIÁqk½LL¶thZŠ:²±èƃ5ãí|š}EP¤Ÿú*oún³¥ûäù0¦ «ö`Épo-n÷<óÄô›5:¢aéÛGϾ…ÖŸëG&61¡²ƒöN–K+1ó€,³ÀÓ„¾j‘²gÔ/[MÁ›×Z}EÕ2òïøžé xAn…©Oœuò žm÷ÔõBDÓ㪨I°#ëßš3ãnf΀Äçúéo:0°¶ü™2U4­²ÞÞ ºw©ÿ°“Ü­”±PÑ­ÂÖXt•PX7 C°c†S}óÆ,[Œ;g9'3‚ lÆymCcÂ/z¬XÓ2`Å‹Òùiúí\šD=è3E3.+G½kt·¿âøåŸ=GȇÓV¿Ñ·ø?ÜRîKK¾µO=o0Ns¯düÀ £æS8L£-øe½™Òêz¹èTêšlØjxßóK+bd4dƒqoïœ3¶ ¡{7½îT+\‰ö£‡ÒÇAËĸQÓ ÎúÁ´º'þ0Þ‰'z6eÝ=Ø£æØìˆ°žËùÚúð¬áÞ-tCž>#*‡Ai›:_ŠúvÖHìø^ħ€àö{ªR£Ñšð|ÛtýΟLw*…yˇSÛ¤ÂÖm„•Øi¯²°Û{²\°:ƒåßÄФ¡± 1 &]ܹ¬Í p°=;<ñ-ß`‹³Ì1S:äž7YO*nñÚ¢†Æ’ILHnDQøÚa-¤˜ÉyHÄ·¥U'D‰Mó *™GL™„oObÜ¿Ós¢iÎpuÖb‡~G’¯î¦@ü¹1©™¥émh_™Ò®ù©Š7œ”<ù¥r„LÌ‚/U˜7ÍÎSèØuóÖ•j¥àœ•CoYüÖwÅ7;´ï-ˆÔ‹oYçFé+Ô]7Ù/ Ê? óqåÆ W.êsçnZ3é# k¹ñ>OgP£·¨·‹¤kýì+ëƒÃ™}–3¬lzâ |ŠÐGÑ^Øò¸ ŸpeÞ+ヿî9®½>ã¯×þt³t(» 3>Ùejƒò5ÚÎ÷Ê“¼h:GŽ>õÖµ[ðÈø)¬¤ßZ$Ч¦ñŸ’‰X±­À‰ª‰Ì(TÍ+ ¾ûz¥nãÄäúzÃñ”"2ñ‚u¾`g´ZáCþû$Cd¯«é¬æ%m¯b-ÈÓ,•>…Ý{ÑJŸƒ2âÈAè{âKƤœן¯m›Z(BLjïöq)ë„ XÙÆŽR/DÚLû§Æù‚SnZÔ˜Jp*V= ¨·Õ¤lˆ™‘= '#—k˜ï(³ü$Ÿjè帄±õvÖnG_© 1ÛžWȇ} ?[?èÇ{}eâÝýZnÝð—«²¸3e8‹ñ’ôbK=0¡Ÿ—ÛM÷„%6ØàÃJ¸*øØòÄG+7r)ƒù‚OŸÏ?XWp 4b‚£Ürü´Ã,½Ó øâi!ýhNœmÅýÑåüƒ`­oÃc,寮úg8zx”Ř­Xxä”ð8Á击ô½S wvf1Ã|î½ði 2âŽ÷׆ÓwcVM…6:^Ì V_E…—~E•àËÿÊ™èŒç­¨°Ø\Ø‚Ôk³íü\ŸnR‹.¡°¯ÒÒ ‰h©?Å$˜![T¶ˆ0ÚJMbLcV‡€vùq0ê™Ð™"´ñ™’»~ÌV©jOª›P:±F®¸é&d¸_·9¬ï¸–â|Îå9…Úµ?£ÅN…\äá%M‡ÅŽr$µÜåA©}v‰ZRgÏö¶PÉ;[AŠ…*™¨ØLŠÅJòa/µ:YïrR©Ì÷”†^àñ…G;–²†ÆÄßÓ´ü™óó(¨=c®Éïÿu£ùYõÇ–{;EÙöùåü†TÈèaŠÊê}[|ª2UæäÔEKµI01Ô¸nµì:´ †¥ñ¡d6ôV|b4ˆEïâ‰ü¼Ã„AxÌóç@¤pÕaÔ,©#«ì盢-ž:4Ù¯›Ê¨›È9]oŠ)ç.±Ø×+4‚>ÆÔƒ¦‘¸‹)ÓË·çd­;ªœÄçO]\Òîäû͆ùý€ŠŒÁñ‰ÎÝ€½>ùLUK¾„®÷ƬZX)&”õ‹§OTú˜Z µ¥.»éWïžâÏX üè‡E×økô*R¨žyfOnÍí—C$‰¨ý a¿åEŽ+H}.Ü”Ÿä™uDUáq—òTUpð¾8r%1›Í—„òôÌ ÅívË‚F¾t8_/Ž!¸5)¼ÀÿaÞW€s»8c².ýÀˆ‘x}îÑŠ£–¿‹ôs±€‡8¼}5J­jÚcaûûtŠ¥„‘^ÔGÿÐ×—ëèæqÂç^Ë ˆ]Ã!R;ÒÙÅ̼ç:ó‰ìh‘_ìð~¸FŠ2+/€û±8ˆúÙÿÙÝ"°š1ˆ—®ŸÅGQ¨¹îWNê•J‹)ö»D|±qrí­qóMàsÃz£†Š¬­ÔÛÛ‚+´7¤&Dû#) ÓÇzxz+ÏíÄ<Ä’0Ÿ1ë:?ùYä«a·¹åÄ0óî÷­²ÃKÿÛ£”BÓÁîÄWmð*ªØÉ|vØUÉq[Ö+¤XØûŒâràVd )/£ \©uð[ŸgòàmŸÒ†AÉÐêïÃåa=q=<±ÎÌÏÖ9ü$Ο¢B^»Û']e…:Ùà‘Û¤;T¹ŽSè½Ö*H{pëä¨{¿%s`,’Jj‡Ñ*ž®Ó4¾E${ÝEä,2”Ã1v;zG p…u€é¯LÃõ¹îÄI&õŽì^B™”x½—kBwñ3—bÞµv*?ô³T:Mtˆƒ­v?U¯A“Mª6è1hÛ°ýã’­ïCÀŠ™} Éöâz€]æõ¾ 6ì`€W[”!­ðÂ,r,¹ÜÈ»é¢p(Þ‹$~oañNI.–P‘‘ñû8Û°¶eK»6ÉO8­™›nnß…^ ÅU—ÅÖ9’©Æ5¦VtræX¸3h¨°µ#ß9k›¾ïQ!p•vOÄ~6S~x<Â_`LghD•®‰Ã\yê¢åôðÎð„ÍÓÐà8™&E©Á•ÓÚôOî@âºañ‹Y 뢬§Âx0×X ×*b†jÎÑÏmw ¿ã;¼û9—¨í+ÝEKŠ/™ÿ=‡jþ ¤æþ¥•ÉUµÅ¯%²eèh¹6D›|3ŠßcÄ3 [’ækâ‡=nLµñ²#>¦±1Źñ¢Í6ä v_‘ÖQ\ä [b(/QAˆ²m~¿$–µ¡Ý(„BmRÜÎ¥—ÌÓ»nxóÛK "^'is½-l à‡¹3xدË‹¿zCúÉ]?úÞbv‰?°o—Šž=öì½a±{Äôaê8©µ Ô•˜’°È TTmŽ'N‰MYü*3®ÍW‚" •JXŸìî6§XÄ2^pNïx.¿ƒt>1|®ú<ÝÒ(ä7t¹þágçõÙ÷±ðÍAˆ]:aÖ]M¬X 丌Q¾I¤ !¸}X™iš 'àž ’Û“ás/¸9y¤;«ÇÈÄ·É~~¨HvèóͦRIn[^0‹‘>›M6Ø‹çò±]-§2ˆ)m½ê^öñ£¹õlä!?0GÜPb$3ßa'¸jÊwF3VÝï%p[_‡Õ#š¢Ê¬îøõçÀ+~vu®‘K¯¦þ׉™<^g¯Â=ɱeÔgrùÙŠ—~—I¨Æú¹õÀ9™äCÓ䘗}}êàÈò\ÄT´/Î*ÒÂJf}XV"©{2j ~´°äõÎúÉÿVC6V€Î ÍLX.C5;èéÁP;ÿà5 „ CùSÿÈái^ÓP.H %B£iƒm;Ëbyb·Hå>&ÿµ":Æu¬†hìA?WèÒ")†…‚£¿Ñשj•3d‰²Iwùq A‰ „h¬@üuò‘íCH’«5j¿Ù mY®ÞŽ>tNîBÊJmƒµT ’Åm2oàÔ;·y>…âLÚ?¨øósáq~ ò¶“[Z!æòÚûF›â_ ~Ã-²ýä4máCžè(K >z| £þÏšQObNï1×?`XŽÇ[Ïö„¢ºÐˆ½(ëÐöƒó©™4š ¤ù4Ï@¤24mľ0\´¤&ÃäwašUÁiO¥™»jŠÍ…y.ÎwÇtŸÎiõÑ9-Ï_¯Zëñ¾¢¼)4-°$·2&šäKßü¡QAƒb¼øí‡È¼g"»W-d…·¤êøÇÁ¸ÛËÍ=Îd$H¼_ËœXRBHInÆf•#[¼?Tè–Êêkœ1øê8xf¡ê|Ã52Ž´+â¤åa§’“\#Y≺’¸‰! ø²‚éG«ªê¦ç‘¹½r\ã‚ñüÞdP» E„Ñ4R²Î”¨N¦v¹‘°3𓬅h·ŸùÛ á×·‹S(Á–¢IGUv4?# —;ª¼ãx×u ‰÷0< ë¥aíðða†*? fW GÁ§¨BuŸ$b´œÇò–噆 P\}šæ€Â|ë%§®rßÛSòüÉËúõé{KtvïJ[£=êD£]ŠÍ+uTr„âﬦõšøP»pSŸžüòÄ^[I¶DÂ&Í>âÐ\U„1‹s¹åsï½³÷áQH'+i)|ÇBî]ãBˆÁf±Û÷ÅÞ­ÑåQI5ÌýÔÇNÌ-:wìÏÀ€“¦ ¦µ: ¤aÕKj‰Èi×-èLx«D8¢÷~ïbQ+ o§o^×hê ©P¶U×9@J=ìÆÚvE}*Í)Ï zßGtý Î+┿ýü„þñ½´õ|¨<Ÿcp¡Fý…¬ƒã×¢ Ìâ|´É&¨£™võË5ÓÔuWbhCè Ì#ùpÚþ+b"M3 yr·|莌IQ@ó¶@›Ô9˜µäÏò ´²å@`/Š/‚ª­§kÒ/«¤Rút‚÷ugª£Niè& >gàØ$(ßöúÙ0t2{ Á˜/òVÃõiªþ«»'æ5îŒ8ò¼)9-)ô/J%7t4U&ŽÄï«o_ÏQù ÙwE©±Í>ãóˆfûR)Ó;YßµñÝhmqCûàî½¢ÅwíçG ªŸþåXº®÷c%›áùûÈ$›îcwµýJ­ëúxïÕÔ„UóZõ˾3Ê©¤¢ž#jÅ–½%JG쳫j^[Ϲ_8Å‹†m²¾‡÷Å»8èHzœ÷¨n_{Á}ÎM›òU²5¼ÑibÕÝp¢xZ–ñŠ*¯M¯ŸTMMu^½){²Ä6Yä ¸µžÁ(©Ÿ™ä½¾†~TC%h‚Gƒ—ºKÌ•røæq',ÏÈZcEÝSä~óì.}¿AdÓ×(Ø-y¹[q$þ¦³ðÔó$ÑDýJ¢ÂÒ#¤@Í7†+…hå"jnÖb: 6wàWÆVwÛf=;¤Íó}®9sÂO,|ú (ßêwÕ‰¶|]âú>HS­ð5r¹}:Zrm|@7FÞ‘ÙÖQO’ˆŒƒÖÅ ùïd£puÐ$r@ªóN¨Z2Æ_Ÿ¥s©êdɾæ¿1w|>Îô‘}µÛ0n [=•©úC,,«-}|ÞÿCåDlKÄÇÏ¢ „W3ûÏÝÃŽï¹éIŸ·t¤©™Ø!ú4‚¼y¥?]\³ûg…×+±µ ùp}ŒCXÓÖCmuÜòwØ;šö\!™²šM !ŽÁÁ=t«G·&:é ¸m -[ªñ–¬Bárto“,d㎉ë°=öñ'S=Q:(')pØûxÓ•Oöi“´gdâ])][|â ºç„yI„RJŒÁãy@po ýN9Æ=ði¡Ù¡B†AÄIÝG ˆîMXÞ$OÎÝ®mm _f‡˜M\Yïy}ìé¿Þ¥Õç­#]‰«Û-åÊ~Å–²Â þü nv޹Ç×Ü?Š’I>Ä ×rCIÝÖÝI«ø+­1y–èG$=Fì‘—²Ž¸~ç÷ã Œ‡×šO¾†¸;ë#©>)¿Þ¢Ë,¥-еåˆC\¿óæk¢t¦ˆIÍD¿PÆØ‚罈^É®¦öÌ"[«á…ÎëöëRn§~åDs–Á­væ?)ÄcžÖ­œü~²s"öÁ=È¡Œx~81ª€ßøû™±/-&tOÅ—©ßÐû@77†K'´vV±Žqêqý ýв±_LÚòG tMlåÌ³Ž–®Uc+¦‹tèEõë]É[è 5ÅKà™¸•Nbc`+ŠÞE‰.;ÂQùæ÷7KðD|‚)×ìvo}MEª?½-¥}KêðJŽœg±Áà{~‘3T®‚¡_ÒÚ”Õvòrþ 8F¼æGÑÝÅ©˜…rv.[ÎIh-ÐÂ33{q濚»¼Ñ%Å$´cvb"6ÔþÞBÎh¸«PùÆ8æxiOùÙ¼rÍKý‹-t܃Ùôhéd?ý刂ۇ_–wП°ûø^@ÓGªA-ò<ÙT9D )e$¯ÊM‹É±@¨_“,ôÕ*4EöÜüyÝìkìiÅ¥­´ëFÊŽ=^~_ßÕ#£~ñ 7Þ¶S]íý°ÛA·C¿÷´ªæmYø¶[â£ÒžÐ:G=õX£äºVt¡œ¦‰Å4X<¬ Åÿx{ä8½‰•>3“Á†dQsþ¥ã[ÊÁ6<âþélÔ¥ðHôteöFÕ¯«x¹ñ«º¬¡B˜{°+CÁXކL :F×TßT!Ó \1¾cÙ’8y!Ì 'ì)ý™BËGÀ¬Çq”èQ;!ú‘EœMýŸÜ†oSxõÀ”üãô”úY¡cÎ@6L©M%Sƒð¾}»ö¸R—ÓÚ"Ux؆W0‰› ºMvÇ–á;%™Å÷Ô]ùïo.u¤z¤[·4ÊÚß_>ûìR“p#0ò|ü˜Ôl=9õ4¬|ó°÷©¥2^îmý÷O 3ÖZ+'Æ­<^ù3lÞįÒLJÉtòÞvϬ\)-ªrTÖww¯^5œ^öf Œ`=áêaÚðRH@FV¨ç²>$z|)§ÂQÒ®µíÁ–á2üZàÆJOÕúäô“åk“†¤ËyæÇ©:ެRj£”jÑä•o@Xç¶Š&ð>íÆï~¸Ž=óÞº´¦pU߸eL³Íà—øñÌ©1«@b15•OÒÈC}¤¸¦WphÌY4*3}E4×îH\:uîP˜JÝ…óÍV™€ŠÂÎcmÊA©ÚvñQû`4æÒŸ]ªš?‘Zø¦ÿ "‹¿F\ëh€X=†>ɹä®þ“˜&é«‚øÄ÷¿ê·¼ñ}ïOÍXEÞûéDy3lÈÖRNdmòxqóÇM®úM» Í/™Áú9Ÿ}²ñ~X>ù0”+‚]}g„âz'kÉ»j´ SêUp.5"¸ÑÊü¶£`ãøcGy?£¬â 1Ï"46éaÑ×4¡JÛJ<%H´(À^|•[~Så¤è’¾Õ2ʧ£ÇüD[™JîÅ-ïÊÿþàýúIüûxBýîôÓCíRNgòæÈö“­‹ìù•ÍÛ‰ìï»  ç+òÄvÒ •=âÜtŒì²ÃbÃó¥ð›f{âž¼Ú"ÜT)ãênÃKÏÔ§ŒûÁèƒqÒÌÄkOiáOÊÖN÷ð|‚­ƒ8ßX7p‹>—ÌBªzÆ,%ÖksÄV¶8yФ_¡·aDÙÏÜ} ¢5}“½wO ùòÑ] ÌI3˜ŒDôFÚ‘÷ü¾ÖO3ûcB‘`¹ˆ—ø˜|Ã};Rk}ùÊÈüÉkžEÓsöã#ÁíÈNŠ­Þ ß|Ú„O17;îÜ j÷ µ.è—±Y_¸»´Rè8 Sýž[«¿9Ï@û„ÞORz˰ʼn¡”`åXD \ßB"ÔK¬by•¤"ÍÌÇ(yúõÛ{„ìQ_žÜ¥TüëÔ$‘"j?Wß>¹ ð®}ÑÙueÆBýWÜ™\.Ã%dae«t5øŸï iÓÙöVõãäu›ë,ìvUówûwØ`‘ñ±ãO¨´ñ Ö?_hn[“y¦[{25³U7s ’džuRYà®#¨¸!r-…ú~–‹ ]«x+j +bÚä¸Ù‚ÏSÉxóiL\».Ì]åÍj“¤ÚòºwhÀoö«¦˜®Öjí zGÅwú˜ýâƒÙÈã_hþÁIv†¿X]X (Ç<‚tC­Æù'źis$pŸ…zâkŠÉ¡Î-ùÉtŸIØ2ww³ÑQØçâ–?>$~‚Î<2ìøg‹åð½M/eb“%·cpmŠÜçœ ÅF=*¦k>‡ý <¤;ÄYŒ˜úVÌ w ኱ì…~Øß¿—ís‰N«Ým-¿ìMî!\bî&# ¾ˆCü¨é`¹œÌEQ]uÕ·šHŠ×_nI*J§ý鿣qïÿسlÿÆ7Í_øx#±ƒ…¾í9\µúŽ ­+Î,G˜Ú±Ôí´Ê˜â„–»"hZË(èüµÅ,Å< ½jËrÓ2.UJü26iwfšUÙ¹€ë.{_„ÒÅ*glÀÎCÛ9{70ѽe1‰ õÍv¨"vÝ~ä0PYRCF½:æí;wñÉš7Ü—Ê`íÞrÖ†Ó[t]e{€óv®h®v¼òêÖãvd2•gú+ËŠ¤‰3=a)ô«ØxÖÈæ(}zh{­!VdäÑ-ììkÅÎ{,]§¯(ÑqI˜@ø¨jé'hˆ$S2#R|^ó=R„ ç9ŒèÆìA3ÅÖvÊeGpr»¯¥¡Ì†ÎGGå~Ÿ†ìóÃDXÐba*ÄHf¯`3yzÅc—…þÛ}¹ŸØ¦í)  èN lªµÙÒ.™q•ã­­]MK>uðû«ã< DGnˆÓÔðŸM¢MQ9°WÝ×2ãàÜY°ÊĽĖԅßV´a5ÉŽVëÛ[óKÐaÖÊ+™• ,S—CYÑ—¿XAUœð½û¨p¤ÕÙUÕ_°" žŽïq3ÕqEi|X ôŽ)õⳬv~Ì¡Ë_µNÎG¯Ù9}hõ媰^ÉL¨rdÇïìïgŸ²ßŒ§œc~dW² ó÷Ôû2”h^‡¸ÝQ¨NQiåŽâ˜NjP  Yûivn þ,!¬Q½Ë8™¨bÄK-I¤¢éÓ”3ÎûB±\JúÖ×—‘¼òéß]-åîŽ÷/É&8Fvâü5 ÊlÐ)óÕ%KƼ4LŽLä¥\2ý¦Qy(@eÐGLqÔù‚;Å«þ Û“¶¶€\%8‡ 7dÑ1›8˜LZªfÿó䡆PËÌ%]Ožh—Ï»NSªiuivn%JUmJê×ò»lJ ¢1Òì®Ô€€ûDZ³ñSª°;ñQŠ ]œ«]ÛØ Ûº£ò/cU›¾lïøÚ¾½Âèú‚ÕùÝ»¨)‡,ø.°/Ì®-㋵Ôô—{ÿb,ú¤pÅV²FŽ•Aæ]ÙËót!J+¡ópÉä›rçü_G*UÙ¯-’Û«¿œÚ=‘‡×Q¡Š¿uj’¡0QdbÓÑ’ý«Õ+î™°9›H;úæ×±ZÚng±”ˆmëJ@é‡p´1ò4|•OÏîI¡òÅú²=pÑj¾Vô‡¼ÚÍâc‚TÓ½éÅžvcDQkò^ , p”,猽MTEV:Ùk†LçÇAždf a9ge'${%K³‚” Ý&<Úö¾»ç£Úåé…Jû“Ô׬&™…ç…&6½†iÖYíTêLÑÉq†PæâÚ×ÈkêÑqÑòðE zˆÛY¦±6ë}Œ½‰(?'"syÙ¢”Ä[~Baôí…Gy}Úzã2¸SàÊGq—eÏÕrˆ%‹4T@“ÿaR’%ã±á!ø­–5øv—‹<ŠR¸M2Â1TMȱæ OJª¶ƒòu~=Åz«+(£$ÏÃ8ùõw-Ù@wm¹IæçM`€!ßx‚èùÇO0€§Ü¸{Qh‘½ü\”” hEÍ,6æ\ùPoÇz•ƈµ´Óa”¥<ÜÍ ²%ÍéÈ5ÇWD ŒZž ~ŠvDÈÄ<>8CEÓuŽ7¶‘oJü«)'ö5;Ü_[èKÒpxþø°|J”“ÉHhÓòm(\¦žj·Ã ó—à^йQhlzÀk¢jƒÍ‚á¯coˆJâvצ'Bm$Þ¦õþgG0×gO4‘Hwˆ€øœÎÐù(•](Âh™K;d²“×¾fëå@áÐv¸-¢ÿ…Wb¯ùêãžMJFPÌÑÌa ðÙT½Ev )ZÙ‰g˜ö4¬e­çzLk¦¡Šh(c$Ýl@]Œ~P茆¨°2ïEW»Feo]¦!«•â‡Dã}7WyŸ³?û€ ]/¨Ëyv!ÚôiŽeôì³V2ÙºÇò™RÿÊGÁA5ÿLÑ•EcÓµÏf‰Z0r‚êuÈR1H9hŒb¿™\ɰT]ovy¦ …vîÍ1ŸY).Ê9 ÅÁŽ”5‚á}6®j?Kæ½{ß?þë„ÃýÐX¡Ä¢…¼:xK>aåpj7¡µܡәÕZÉÑÊQ>ÌM›óÁÓ‰dAÒÅ2'xKÈ^?Eíµ}^³ÉbúIôMÈÚcÄx«îÍæ+RnÙ"&'šŸ?ÍÉCчØGxß³ÈÞ6œ™z6R s¾QZ =!¬õÕlî{¼Ñ“‡ÙW·yT;z*cž·Hp˜³<}Ö$Ê[þ!KÔPUºhÑ@à‘l`r¶Ô–଀ë8ÅÌòùøêÖèíJx7ÐÊ7>%^g7ç LE²Ý}^;Mr×Bè»Ïé‹ý™B‹nV{SŠl3¨“‰¾å3¤ –ï—ñ<±ûƧ6êçüça;’’˾¥§ô“k–|ŸYÜ÷N:0“˜£è`¿ç`ùyããhdêy¹ÚWj‰2›ƒú‘  óé‡çÉ«˜«½T:¸»³É¡‚M xòh§*ÙÜ_4»M¹+çf]äuþä„å=·)⺠hê‹¢¬ƒ[‡…ÑËê«›XÝ›åÛÝ<¯gá—;¥¹ é’’L2ôG#h!]5„´I´ŒÒzøïpj]ñö©I+ä#Ÿ=Ï\¬1+~Øð‹7Ϩ©ÅX$p~&ºËÉÅëÉ” Ês^"جpc‹õËWØ·Lç²»Éo? @a­+áq’Ë¥û–D‹ ™a9ã2ÀzçG‰8ß´™#rÔIâçI8°+t©­îóóàêOÂÞÐn¤²× ªmrw1x¡Ë‹±~ ¥øàSöCvÃû¹Öãõ"›!ªËS‰m2’žJ|þ(eoá]¶§Nä"Ë7gbþˆL˜–wâ$ju ^(C ªÝÔwY¶ o’-/gHpÏ6ü‘§dŠ´ðàÙå+;Â×û~*G,”.¸|ŽýiÙïhC’mÚNóYS|aAžf;wtŒ,d k$±—EUftøÍ®1ó„$‰ŸÒÙCþªo'Œ;ßjÈ$çô+Cw-§‹˜ÜY+F‚øÔ+j%_ŠÒ)ÌŠ÷ã¦ÇKë¿î_ÙÁl‘¢i ¤°¥€˜ß‡ÀCÞI}Û:©º›Ã‡©…‘iXg”hÊ´*wÑXTbªìRi²¾{X‹6(P_W×Ãëuc¯ðQâó ‡ý¶ ÃXÚ—æ½(毓 £»ï3WÎJóç„âÖuúÌͱòy#ëçßERp¾,LÝ7m™vIL„©È*0yMuÝ"TíÃIùpvddþ?l›Cw& ׬cÛ¶mÛ¶“ŽÍŽ­;VǶmÛ¶mÛÖy&ï} F»öªZ«®L"Qå_Rb!NxªúÀüÝqͱSþMY2x} Ùá'áòƒ¹<š"0œÔ‚ÅxÝ¿·Â,5 ë{É\€ˆÀ5Ô~ö¨ƒôE©;ûw§pb8¸" _À¨n þØ7ØLós[››­f™ƒ¢_!wj¦äŒã Ò(+—鬥Ó4ÃTð‚ºÖð=MÎ+¸ÍA¬ŸÔWZ„M̉d@ªoCÖCÀˆŽˆ‡Üàþ¿9T‘Õ¨k5ådÐÊkRlül÷Âåô`×Wg#” öƒBŠ& ÉFª…41+?o]ÆÌòÙQµ•ÈxvÛ7vñḺœÉ·…ÃKuûLpÈ µ2é÷Pq »Y¡;æ©'`\nyÅPky2¶›ý‡9;õ¹3rPÝ&Sôn±7fz ¾á}ª´%¢× nƵy’åüÐ0q³¿ðèÑüâ)Âqûžˆ0SÄLþ3h(š%[¹Cq·D¦Z@d^À6ñ±šò™Æ©d¨õ¾œ¯úvÍ;$’žoZŠq§²Y©‰nѱcÛ¾ÓÕ‡*¢f[e£©T"ˆ«äUÔÌ‹Ú!ŸŠc›~¾U8ÇwÃDãRY/½, ù¾5ÊÖù±ì£S>1Ž9±3 2÷­4½,º m?íÅ( 1bGb¶·Œ³´‚ù2Hö0ßZ 2ÚÐ%òѳÓõrénåï´;¯IA¾튵õíERr§N ø fî뀒‰…^­GÂŒb;$ñ ­ß™† ÎÝAà|ésÞ꘩QŸØì®€è:¾å¡™èèÒ"Ò!{¡½KA“LcÑÀœU4«7xž?^æ°ýA“ªlÆÕjA q6%×V *”¾˜ à;ü(‡{`êµ®ÆB“,L¹§ìt÷o“Å4沬!~  G‹ªéLjB ÏÄMè¡­lnÐ}Ä&•¶åüVܺïn½b¸R÷éú°Un9N+½H1Ìc<Í¿‰®¥•¬þ¾Ül~¤Å²½;Zz'›$3pd¤œlå˜ðÉ“+••ÔNPܾˬŸ#lIÃAú`Ù®D]èŠûÓí¡âÜ…;i(RV/Ps]÷|îDeÐWœ¬K¤.)èĉ¿^ḵ[Æ¿pº©kY€­C =D÷è\ ¿?¿•ÜIžodÎQV0гa7,zNŠP²6¬Q'Ü<Z‰«¥¶cF¦cÝ8š)ö°Sø³ëß¾îXkÒ†žÕªÓ„”|7$Ù–Yœ.#ù²áÍù2P%PzìP ”Íñ™ÃÐIe3U¯kã<ØÏ¦ì¯h(Ù¼9'¬ÕÍ@)Pôü^ós8EOÞ«pãs1«ªçj;,£ èôÙÑØ•´ ¢ñGPj Òu¢{ª½mÌcÜÍÔ9¦D…ž¿áä£é„-Í%±AxËÚáxæùAîÇâ}ˆ7Ôℇ%Ȝ֕S®ÚÑ)—øž^†ù4X±¾%LÅrb¯SʪhûR+|LOIw8áºÚaíØÛÇ#D*Œ*‰¹õŒs{¡p÷\(s°>S}ö× áQ´X«\Ù1@æÛ©Ûj ‘'µbóËd¶ïæ]Âû$.Q% ]ÚJjφ©‹Š ¦‡]i z$Z¹ZÖÍcߤîËãà_ÙÔÄêÒÉê÷‡Ü˜ –xü&ŠøÚ+̘âa½É]G1G‹‘Ã*SÑ’æüT9¡¤rÓ\Jq=_ ï1Çݼ½9¸Ü°[BЧåàžl6ò‡*­—ü‡âõ'È\î›íƵwç>i亸Ÿµñdi´ß–3s«¹i¾)|¢YOI(r/¬Œe_šv(Ñ´,µâÇ>Y6Øj?sW 1ÅÊ“½MžÚ{›|Ã>û}*Qam¹ø7‘˜yŒ2{‚,MSZLµÕLzMc=‡'AÊJèbe68UAS¿eIPh&Ú°! ÊP¸šÁ~­å¶/ÙƒíÙ~–8¹Ä´«O{3•?ØE²º¢økÒ`:šKdý?I¸hÍÍUòøÃù«éƒ~M‰¢Æ`;‚µhS­q8|xj¥à5¢ä}þ!­ŽB +pm¢žx_ytdJ–6Æ¥¡9:5Îy ÈIÓ6Â!z=d-—$ Ó¨obõ4͵c‚EIéžzÃT%5?KNC-¯I€Eo%¢l‹s¿ídŽ‘.Ó½Ö5‰ì0d¹ŸÞA÷8e  aÕÊÕØÐ™Dã@X„¼Ws¤$_9ŒK±žãu¿šM2«´ðûï„:jʬÓ,⇓̴5„‰J.£átSßWnG‚ÀÜS†¸?31ÀÒ;ŠÖ+üµª~÷8yàB‰zÉ…¯ù\ÈÑsÙmðÄ w·îÒÃÂ^Þà^Ûˆº9ˆÚ‚©½‘äUËQœ‘•}™Á6Gz¼"Ä/‹ÌÙþÆF1Hµ Í$Ò®Âí˜-~¦,mmT%‘q—Ñó1áF«æËÈ‹}÷‹3w±Õ‹O­tZeÐQ=œîwÚŸIzFxÇ–.Á¼ãå¦g ^·»¢ZóRmÙÁ ÅXò?2Ýû[¡@†ÚN¯* ®iäSRÛÀº >P ˜®m…H- M.iÁï–jî#ÒåÁº½óãø‘ÿVú°äÕ#ÈÇ…¯ Æ˜ZʨÂÅ/*§®ÙÑ ¦Ä}´|Oå—+ŽŠ\3wÈÀh“›Ã(¾>eŠöÜ­è°z@v·+·ª5RÕ~VZZ§J¡ :kLÍmki àZÍ:€´J˜OaY‡hˆ; |ÿ)qJ¤\Ì¿‰{ïqO£º¸˜{½uWQ0ì 0õ„ºÜóÀS«i0`ä&\úx<ÄI’õitÔ€i†Ö?åÙ%°E}”Q³¾üP5ã­|Öó­Ê[SÏMÊ_pØÊQœ´)ì#‹‹‰ÄéÄan6ÚHéb5ƒ¨“dÓñ®v6þùŒk8‘”a¢¬Ã0µOÜÝp]†•õúQls0_{å£yq+¯Äù¿ðjé¼Ór?r-žïk2H¹Õ­!ÿv«ù !į“ƒ\þ1ñÄȯÄ|÷^¹ yâÖ(‡f¨/ÎN½èKúdâÈyt!a–q½$VâÊO[ŠL„€á{§äutŸòÎÊ(»®'Æu}a_SÅ.’9ÕŠësý!6ÇW@Gåùbƒ6Q~ ~"Óü‹e…V«ªs~ ¹M˜‰¢BĬ’ïÜUÀi8› š? G4mRRÅýÞ÷î/­L>ï½Zož±Æq t<=ãìL ]Žç›üÀêûó]Ò{â¯KTv‰äL¬ã‡¾¬Ï¢"<¿BL¨7’ÏžA4?(:•¼Ì cª’üæY±hDúùÓd f³ÑˆB¿R–!0µŠ[ÆìÅ‹PCá5 Er¢¯€IdfW‰5³©Ác¯þàd·Lëut9«µª¿› ±ˆ mØt©+ ”Tœ/d¸§Ù’±E¸¿ý‚ýt«±Ö?w¶*ÐφF„…hž;ˉµ§9n"Ö"­Oòþ £@}ŽÎ·Å(±H¼b7ƒÎÈ2г™4Y^D°41.`ÿ— 7*ÑT•ÀîLª’ì;¸SE•ˆ¿_ʤ~«¤ÙO³Ù(£öÃyŸ}sj$ z^n-´8DájY`Œ,iB-"ÓMQƒ\ú\>Ì ŸÚ|ÆÁ=R‡$¢‰hÏ íÉÂ,ÅÐå,%j°ü¼ö_^Üçá ù¹H!³‰Â˜ÒšQƒÅÜsÚ›r¯zÈ¿Eoæ&Y}:$ⵇ¡†±$+îêöNÛz˜!¾ºÓ\&6*ïÝŸ®'ă:q²btÕ‘þ¦ëOîÚ}NØs@£/bï Á=Ÿ—Ó`‰ýg°˜hst4‰“Ho‘\¨<„ÖŽ1™aYñiÊÉw-ÆK_ë¸P(‘”68«ù!Gp^ûøìëdh{ÿ`¾¿—ŠB<Æ@n Šï®ýѬµ7ÃØê ®>òÛ«mŒéÍq6n¸Ú¥ª" ˆÌJ¸DxXZ2©)‹Ì /Ê{)Yq¿>:ÊÊüÏZeMé£-è‘„ÕÊÖÕmMÇÖ•f_Ê@f¬ÐD¯2ƒ/­)‚ õ©Ÿá¶±(J±?2/ôV嚊˜IõPën·§NØo¢Eu¯…\›ÂòÈà•jäŠÄÐ;$Õ“_=G á^4‚¿Ù4Ì ùçûÝÇz0™^4R¬õçJØíåÍ–ÑÁll(¶žø BQz¿#ذ>œÏóC—M.N™¬eÒé[m'.•¢Ô|ë°!+·ÞdÇ„Âó(fÙÉíSè.›ƒ¹´ Ò\¬Y™T1C7eéë;•Ak Ý%‰X^xMì3 Ú©b(0­Y‡Ï4¹ •õSä_-ú9¤ÆTÜ‹É Ôéu/Ã¥«†F€òÿLKgÊǺæX47yùVÜ馚Êö}ƒ ÞíÂ_ñ­x}²uÅõEΨ¼û~ –âQ]¡{£&måÔ¿æ2X¤ÓÏ¡žªjqÓ|7*·50°{åÖB3úðËr€1Þ–B«VF<ÔÔì°Ð.|%-ðtðbP°…åtø˜,Ëx”Ù5æTµ [F2óx!„Ç—Ó¥NWŽÍ³ú‹Ó$8äÖ®«9xø­aÈ‚RdÊg~á ÚÄ+îF…þÉܺ½ËÐí aî¿ð JN,CÎ÷ãJ ÜH²[ç• Zã^ËÛ ‘4{1ze%Q…‡¤•ؾj.L–ž†v-_¥“צóy_u¹ßüäˆóbôCÊ}¨Ûní€Aú—¿û뫟kO* «û[|þyxU¨•çšÄÆyÄC"[j`¯jÏ6 vëæÇr=µ†xÛêê™M„Ÿš»N -܇?õ?G¿ñN†=-³…"Fê%×øÞ7 [Y"jMEF¸Ȉi˜]…™*¦$ Ÿêw¡™žD*Kæ€ßÈþªá¯Õwž™Î€J³øÍvßå°MXN]tŒêpJL¸VÁþ X3]5%n¥3ðN|Hc"È5S‰Ë?–½ˆôr ²„?nóõ<&y¯õ½Ö'Ÿ¾»xsÇZdQü#ómKj+ͰeÚ^Ò{&ly=ÿßß@×v’ØÍ ªË*D‚â©Íî±"Öºq,[`0rS½E2׌首„6:Ä&»0‘Òô¿Yß©“~Iº4DN$ŽWRÂʨ4•û〠œ¬ü÷Ó+¥góåZkæàu ±±c®=Øî#¹Ü›P‚$þd.שó6zƤ]»º}q´àEÏ5w¥©öÜuÆ þééK§kû¿Ènx÷^‘jm–ú-“Øôþ+™‚â*ÀËÉ O9:õ‡Ç));®ð‡HEÄ Îã ^âw¹áDøyGÁÀÿˆÏÛºÿîT3­qÉM‡H!´­O¶ »|ÎÉùb³õ?I•ƒÅÎîÔÅÂX£…’{ÚîN…l…´”¦‰K“yý †Qá¹³;½‘êøMd&ï³ý¨IîcVÑùs÷¸"9¾©:£à#«sÞòe6fÂD5¦kÅ]á!Ô3“¤9lû¡!s_á×´Zû8õ¢2#Ïá&܀Ȼz¬¤,J¨Iõ§ëxؽ(í…òÿú°‘ñÙíàÚ½‹XîRõíî2{ÍB§¯Ï²ÐË50„¸‰_¯ øë©SÍÍü€¬¹’§xŸ`›Ð%°}’ ƒÙlLlk\_m^ªÓõè»'ÔöÈi§Ùl¤ÖND¥Î¸ÒƒÚ·¤›Ú§K02¨GØP‹~'2q™sXUçQO:„¦»!¥lS’O05Â,Ú5j‚-'€~0 I®As–9¡»N+#|ý*»¢fmêlY)9ØNPT7¥ïX!ûq`øIYN§ÓéAµK=8<íÌÞ…¬uŠì+†2B46Ì=ü7ôVh@mgXm|VRD1wðTú"w³ Ô I™€¶³ÛW!\âKúг? ‹n!Â'ÈIa5¥õ¢tNìf_ÍÌyº<)«;(””ö=çèz©ëÆV¯¥•a×íaKÿ©jžÖ·…ÓÕ\©”Eë»ê³R®2;D üÉk.˜–GxºdmgKùÆP!ñŽŽú;65:¡•âŠ;@œ".;Œ;1–pâû¡8U4v*Ö1<þT/rˆœö ¨ „Ÿ°û¸w4ÍDhp~ ¤Ã°Ûz|£Š>ˆÁ£o}&¶t·Ý:ïáoàîñÈ6t\-ÖëßÜ5ìI“^Wz^EÃ]†ú%ß”ãîÊ© ô¬Ÿ‹Ñ=Ç}êkn}ÀUcÉa­Ý"àòE®g®¢Àá×nÍ`K’z {°Vq"ÄŒ‚qΰ×i)`ƒ°òË áÁúËè¯ÏžÞ—GD<¿“óªù¬©F0?6èB–ÉÕƒæ4ª¦³•‰–8¯9Fs!]U^‘+^§ ™ q—Iu–¡ñÜ¥EÆð*1¦\„'85=ÌÓæåµbÑ®ªr¥¼FÛÕ¯ŽùÈ´ÎI&[>™l¹*Ñ ÏžÎòµ{í UÙ’¨{„ r>Bª[Ó½Uˆ>fû{3«¬^ð—¶TNÈ͵»o/IZF”4”ÇçËð“ÿrAô6óôDMY5w'êD¤¾Ùìïýö¸š¥l,g~™›¸¼µ£=œD hŸ9B“/´³;ù¿À1½_Z2Qü¿hI»¯½€c2œWÏÆ Š-Ý<¸:zËŸD÷Mi[„¯Tɦ¦Á¿>[Ä ªèÃ|ÓÙíJeÀeìÝǼu‹ï„ãè ’‚þÄBz¥v±ò÷îºå’FM×½ÛP·~ M8¡rgªDaÔ*êû2 pÞ¥?¢Ðc¸ÿÅ4^ù<-óûfä׺Ñòùs×ÌK®¤+Õ…’Ú¨Ùz‡P^ï„ØÌ©(OÝÁ_lÝ¿Sxß~‹MSrÄ”:n*±CaGD›núhïirÍ2¤KÍàÃÓLòXÇ_9¦ƒŒ‚üß'¶OX7l/Æ á€Ù4Ø o¥Wûs þ®obûÍÓ+ױр`”Zu@[LDß|á_6=ñSêbxÚØçN»£Þv|hå&ZïFµxgíÏ­Š!b˜`ñíî<Ÿ°ž¬ÎÁW‹ŸW€!¯ï")ÿeT¼¥ Ö™„fßÔ€ml‡‡êÔ­7kðíÁlhÿÈîæyäžRç`Qz%äSƒ,µ7ö(Çe;RÀ•“BÉùW°æW)ï-´¿DíG"$güä‹`C¬«.º4Rÿ«jYQùµP‰¡Âçc¬ÕÚÊéÚ@&ë—¨x5r8›}%ÔikÞžV»Í.Àñݪe>{ƒ™¸HL8u¾T]¶ýðqö€L’7$¢®Ëæüáø¯?Sæ«Óî¦|A§•ç=´þ{÷¹šå2h½o:`´Êx1E½rÌ `ÅÏ­ ªªâ6)´lRc\Q8Èâ"ʼn÷V,#jð•¢PG³E.½r+QcÃ8½¸«B%ï=ATEÉtÖI[b0Öˆ<òÙFκ4e1s¨›HÛˆ ASl}­=ŸP&·ÇI¥%ª~×òÛêU±¡¥÷ã8AKE—c®w †³³|ÚÔÖ.¬ô'2û¬yÆßö,`S6[Êͽ¶u²÷dÝ»"ü•JKè"Õ5¢54åWl·ºú»þä§£¥m$B@1sœ[;Ã`ë¯AÞFûU<ÃeÚÕ× ûǸøq‹02)%Ô©6 z{9òÇ 5¡©™ÀUÂö’ù³hìèä7ðˆË.½*¤ÞŸ¤±ÒÕ`™¢Ž ¯Ùbx‰¾—šŠGJ”(S1èõAé§ëå5ÂŒÙV~Œ‹ªþðõ)má<-„GÌ…ÚgkÄpÀb-·½ž‹Þ]…ù‘Î<”“ŽíŠÇ:q‡™Ù·¤@ý 5 þÑY Š}&Qp ÇÈovÉŠ*J‹Ì9©Óˆk׿RÌÅ •Ø©S¤”ø7?»½,Ôl8°_IΓÙÿ–‡:ÍŸ;99”)¶­·‡ùÕ÷÷öX¤C¾}í lÛÑ—H@'^ùv‚"#ŒIYÏ«°AKŒ#¢œô£5³î*¹’WB¿ˆãÛ•§òp“;xV#tço:­±®6)»\d²5¦À°ºxÑdo,Zð÷üç»­™_ ßûKÚý˜|¹³¶næý9B¡†«õúãÓ´/m=‘UázþcwÜÌ俵:õRûBÿ¦ë¹/¸¯Ç1 áp÷HÇmÖ*üégl¡p±€¦k¾‡Ûd•­F…‘Nv!3œ­'³Ø':°ØoÃdj.ÍŽÄX±+MêD OÁV~iCƒÉi@…·w3ƒë7»*w®$ÎQ™[-ÛÊwó"v-¢Ànu­ÂøtM—K%–q8n0F±ZŽ _ X¥³Äwõ¡")…R½a"è—½5WÎÅò3'ºMµ³óè¤ïjB–êìãPuúòÙ²›Ëú3ýù5þ¡Fêz÷ø‘Z¥b‰Ââ!W>†g÷·õ:SA‰k‡¸ ád1˜ٹ݅΂²R^ûÕvJ`1ݶõæÕG•î,öÎØ«ºþ5oCž‚T›Sa®!ö@׸·Ÿ Éæ>—2÷%Es¤Í–¯Ÿ–NVpÖ± ë ¯±²óÛPž»Þ~^@¶µçôÑJTËî0‹Ì+ã•bãû6ÿÄX>eD™µFSÑt fä‘‘†•ê<$óäy’zJB¥‹€5r&‚OM¼zöHqcG ŒHnó#e0­äõî”™î°Õ_dIH Äìcl‘>jz©Q±2á´'Ím´qߪv}ï½'õ­w%«æ»§áP=¬KĤšúCd.œ©Ð¹Û¸rü8¹$(嵘`®9Õj”ÉèzG?æ™ 2‰ÏçÚЂí󂦾qên x•Ö!é²Å´h¸4¯ÖoyŽ"l«ŸÉðÏßxßRmùwAž 4&N©=Û2ÎcP«5çXۜӯ=RFóÆ»2©Cc®šL0³ð,‰¸1–L´¿üè7Erê¼Èún놦4‘)é„ ‡W š˜Yõ©Sç}W#ï(µ½÷\™5â iÙy`š!©mæO'æ7û ˆ)aóE!¯wͺ£8}NK4*qÙ ;ìæþ$ù@»µig>+>X-e?΄.¶ëfÏb±Ì¬µ"¤$ú݉“èE]8’ýÇ…é^£Q~¤X"†ŸËå7U9öâ& Äs}¹™nœ†Ø‚-GRÚ~u–&Æ+R~êëÏÕ`r)ß?.ð't a:èyx‚Òw5{GÐPL½8á)ˆ3r`ØnZÒu’Æ&Û“—TU^®´¸Iðm%íE¢IÇjŠ/‘µRIü›oû0ä܆ïúAÞ_|ÚsÍ3UàJYia{fSäÛ^È©¤ÜöS<vÇã’h0CQ$·5o?(Ët­×«ÜÝ é9Çy'”S’jäÞBŽ"/ÀÌ]V¥Ç´_©ƒýSÚ×B定rVv§ºåéê\ÞàPo+"•ÏÌi`lÉÉáo %)i‚Ae_3hd!@Áy£ëæ 7f|kBd¾¥|~GԈ𞎊ÃKÍ‚ ¬x³ožê7ºž©á’ù ‘¥û¨V-¯ë4t._Q µ¦w*ƒiÞ60âü$~פ“mžõ.çµÝBÀÌðëü™¹E…&Ñ2L±ÉCŠ/j«CË+/Ñ -46òàí¦mÓ¾™¢Õ«É¦šîEâè­R0ÅŸ¯†Ãa^ÛùÕty¨Ò¬t/…ƒ‘äz3èðj9xMÿLhþáëçrqÍe›ý0ŽkgsqŒIëÎQ\Œ¡YeÈìÍ:Í~Ïû‹gÁôB$`Qõ¯0ß½@Ž­V©ã NªØL·ŠWæã7¯sêKuÍ$À¥¦šÌwѤ¶‘I€ ^£ ÊÐT¿|²Øä-­ëè’Ñ9—0f-ÊâüŒâ§Q%`š|a/ÿèö˜¹ox ÄO Ƽ»’™R£S_,Ú±!¦ëg"moõ¤%pÕ†è6c8è÷ç:Z¨Ò &1}É^\ãXÚ×N¢¼lè¢v¹L÷Ø™'Ô_¡1„Úžvßbàh°aåóÜž)ŠW«çÔ[á>ÐÛd>1Ã5ʘrcIMq:×oHÂÊÂdJ¡Öå´¹]O)r ©s»:™2*­Ayhžï;) ¾DôÍԞǨÇí" 5üîUO.Î?¶X—Žhfï™Éž{Â3ü}ä%¬˜÷ÀcD°<ÙìíìN!£¬[ýSͿݞRнç€üWÒ‘ìù=LÍl@¾v•ˆÌ\ÚoO= E õ —ÄÒŸ"Ý á1üPØGƒ]Ë:c Õ.2ápÓ¦øñI¨µê•èÂçõ{a4Ö_µ ‹^:ãÙƒ%q= íÍÊp_ŠzjÖhÿÉIÝ2hfTiýzrj—§{ º˜…7ކë&ä)¡jme„\Ї:ÓÄ-˜?~ˆ$¢ÐI{¶®šwÀ ìB(» ߊ*?w ¹ è²yf§HùýØ¥¼Lµÿƒ-²Í«K.XÝÌ­/õ†U¢¾„DI¨hžÙÍ4GÎSØNÌ*á™É”±0é®fçBvmÛ¨BHHöÛf•û§©]ùæ­S2Dñ”—öàôBº¢Ãµæfx{­×RŠŸÇcJ`XwäYæHË€oqŸîõÈà ö,âà(Õ[ ]‹*F‰ì¬’èTa(i0 [Á2™ßæ8éæ0‚k0•ºf4‹gVéÃpDÞ¹™Æ¤Û ÿùoMúg4ÏLËñ…FC]¯ÆfQÞã܆ˆÁE9ŒÏgíƒÁÖ%;Ü#Kµ»=•"óI[€iÄï!Ú\µ…5 ’ÇV]~EMÒ¾´©>ÜæÙ´{-ü1¥Ý‘œyeÄômÊ ˆAÎÜ.Pã£ðQkºFàß›Íòä:L…a¤ Yß'Ê‚ÜʯeÛxÏu%C9¿¼¬íL[%ÚT ùé2 1g7®ý1Ó!K~æ=b%¾ ×£ ör„õpCZºI-—k³Ýw$‹Ž‚§*úÎaRgŸ†k¢5–æ}*ÌÕëP£€®à!5~“ö­ö‘|ËѤQ÷BεifýŠ.Ä5• 欴´/–ݸÝ(‰·{žVíQ-6:ž½n/4Ç’ð@0ôl¸ÚízQµÛ6Ö4x•É?˜×Zxù UæÚÃ2'–g·òÇ Ú8׃ñÝ¥ö+Œ;ÿÍ0è½Lº{-¥¼á剙MÛtõJºiU€’aID`ƒ%!crÿkÓÏd¾ûÿ"1ß–ˆb -Pþp*Ö;’ 1¦mÓ’D"°ÖÙóßMP­[ûޜӿÉ=§ø¬Þ²–­3¯R§NÑ0[àg³CÁ8™;ÿ° z)tÂGƉæc_æK Ðþ‰dò„>jK€¦QñögÌ ëx±FUEÚ¢m@š2Áؤ ÞÆ}P ˜KÕ6¬/Èu×cŒáxêdž5áM3%¸.ÙEjÈ  ƒzÁD=ânÙazí»`³52Ðg*Íex²~}âÅ'½¦œ<²áq£RµÃŽî•Ž:ËÅʹM.ýW,¸rêÒbL¡Mì¾ 3Èõ¢. #¯Þ­¢ãž–ãïƒÎ«úôÀX¬fŠô¬©«±X\û¤R‚º21Ø ‚I‚Ý2â­å„ÿ¦§2§&®¿º£Ýƒ<Še6ÿh^ä'0¦/\h‘òÅ*¢†Û7åo%?òY8Þ“ñ¦ Ç«²µ•xU dñ†’ÿùŸœJÀ—­X|Ù™$ÔåïÌÏY6£çÈH™•V©Rfà”oWìî²dDr3k`¨â¹¢eÝs9,ù~3õ™ ¬„†1l¢×J¸&§G%`¨‰%Gï×mÒÌòœzßj mrõË»l)•f™5ÚÝkÚÙ¤’šF(âN¯ Kr'rËc5œK‡|ËȪa çߟøöëH_ìø¨Ýñ„¥•@ÁbN w]FSíëö‹oB·ŒÚ¥-fÉ+“CÌd—“©Âúw¶ÎõÄ_9²gÌkC¦¯©;•ž¦X!]úI¬Ÿe bøénÃn¹~UÑ•þ œéýïÞR…BˆÓz\uœ«A+.÷lað*ë^†¤O³Ÿw˜¨œUúáßÜl4.D®ízÅR7eÅj9Êð9Y~;$bD5Võ¡ÃŽï·\ö—"0qé&QEÔwÐpZþæ›,Ëg/jût ¬¬ÈOÛ?¥ÝòβOrWuÜm’Z"­? ¥6刬Á=˜’ñ¼»”¬+Zê}iâw ÄÒ'gTv9–ióâ›JZ~H#{˜Â¼ñ;8Çk×kC=ƒá¾‡Iþºßò2S{J›ÝOÇteyfµÀí-2&2¡ú8Á`.Iƒ·CS©m”6+æ`¡‘ö„̼åºc²PçRvwÚÛtÔÁP¢ø—À_7ªïÝê\@˨5ù ¸>Ñ‚åcÃjÚÇýÚUü$F™‚ÎÔVÉÓ iƒúJ‹vç¯ü¥àÊ¿Y‘–3ú —âËÔšæ÷ð¥m#“¬Ošm¼f<4ùΰ1íèÁ¯¢&}Iö­7ÓïØ];Q ö-aåþ‡èŒµ~ø­Ào‡â§Š?G¤¾ºÛÉj¶N¿Êü-ÂO4¾ê—zjWàÊ@1jaŒ2®€Ž]V b]¶‘LxK*WÿÔ©Ùp•z÷#£„×Ôp[_ÎâRœ»å¥bÉ,w&±+ ‰+ÔŲĕ(º‰6¨”l•T!B¿)Wè&î$uØbàáN ÂGojRà{2ù^:ÏöVvþЬ&Žíjð¸­-U5À>*Ç qE<á‰J‹¤´´ó3Y¦÷4ó ÕKù*ð±~‘`ƲóŸtcÈ_}61nÔVOTÆnÞXÙ¶-« ë¤ûO*g>DËÖ·+þS ßuuèçn§Å¿_ª·¶¬ëa¬¹bÐR%±PB¥¼ ›`i~Íëa•œHXG dµRŒ R¢:þU½“n,uÛZÞÈA÷Ö]tÂE’²nÈ‘|ÿÐ\½–x¡1Aš¾Ì´oê›7V´¨" ¯×0‡Ç#È-2aÿ¹PƒT|WœÌÛHh¨ •)6•V2b¡|®ð¼)^ÒFZé‡ã !“2tסé}dè—ˆÃYÿÃ1-”öjÁ î+VÿÙxf7š“ ÁzÀÔJÁåé_C4teÛj;IôwqØOÃðÔp5ïÒËxÓPu‹ÉÏ×Ýn¼X”ca"[­™'ÇÚ呯½ç\gT–"tyì…Ɇ$ÊÍ  Vp ÚíDçßùn›hæVH’:ªÒrØÎŸdRõÈj±myûR.Ê ¤Ñ·óDàTtÈ©ñ/³¨œ–úL¤­ÐâGGqb‰n?ouLÑ5èݳˆ|汞p3óià¶kú{õdµj©•ñ>cM/qÂüfCúº¬n-¼æ“¿Á÷+’@é—Š¾‡„¹ESaÝ;¢fùQ=Ý}òœ"1§iœÎ1~Ov…—JV‰ozö‘ë<ìé¾§"êÝÄa¹ļ]ÕåÑç\c3šÿΕP‡£Ë.qRLõI¤Æ¶ÏÞUÑ‚Ï5Ó ‡§c:Z«™Ø'{k\ô|qð;’¦så°oÞ%›g¬‚ýžX½VžÈ&c¡ ŠÖ“‡7@)©q¡Ñöâ¾YU~ß“DÚclc&ÔŒHD¼_nC¤D”Ízwì ÌʺÎDh9˵eoBƒóšÂk × >QÚ¤>Ä–îíΈPr÷ GÉl‡ö„ƒi•wH·t^òÃ39´¥{ÓpQqQtlù¥ÿf_#ØÆ®8êj¦^Wé&ü¼§«‡ÛŠ)qèá¾v£ût<^J,šO¨*ê+û)î6a\IÂ&3ΫÌ.åN{Çn|ÛµyV¹8áõNIW4| ʨ—Ru¤›¶3×>^• ë̆ °8ÂTØ–c ŒB{æ 'oQíšrßHÀ2¡W½= *²À¯Nñ(ŸÌÒuêGv›§ÛIÒv{F£æ¹Õz¯ov,Ÿ2”=óoÁªIܰ ð"ëMgÐÑVÅZª‘z%š`Ø}’‡<¸Ÿ3˜’Ê78µžÚÿ yùlÀç1Yž,")¡¼¨OõxMVÇ'!}ôÿù³Ì\?S)d»Ä3 r°¼Ø°ÿsâ’‰{.Ïš'¹ßh{>µÀÿ=̇®'Ö 0“srwé²³0¬o;Þ»V0Dèûh¿i˜Ëƒ4ûÔâ&Ä¡,ÍÏÚíŠ8Ýø4ç\;]Y{¢$@uXÓr‡µ5‹HKldK<àÃög:Ýzµß}_éù—f¡;Á׿;¤«7@‚°~¾Öš€B¬øewOáÊ~yÉ «ø¼"áróhœ7ÜÝqIV+c7í¿(NIõÿS ËÉc´%1%s›ì)þày±^‚ªŒÄ}Á@¨»÷Ô­)‰i/ ­6’{ya¨˜†fÈëŸ,I80<–]B$( ˜ çÈÀQ ¬Õ«ëcuæýŽ¿äò´b}ß%*q%¡£Èr7ÈÓÎ;¿f+ìÒ›±“$‡ÿšEC£îXc*ÊøÇù±±oöv\ù#|í鮂‘Jܹ,œ “)oÀ´à 27Å]¢t¬F±°àˆ‡K9gƒùk]xÒ‘cÈc…–ëAnwî¨Þó¹·àчù òTÙÈ96egzâƒWmó´vˆ0®±&Ç9Ž$ !h±¢{+o‚«E8zVtµ‚ñÃ-Ò˜£1’–ªË»O,þFÚxÞ=‘9.\Öo„ƧFSiNU ðw›*Ö…’$´’Ê_Ó{dŒwõ6”\·ÆÙÖÏà$:ˆ ?fÒ¯…¬l%êF,ÿ¯#é +S­·$VÔÃçúÕí.äG‰/7li¿“±”»þ16#ñ§užB xï;ýOßgAïzo1ÅÃÃ.Óâ~K]ø}ÿÌïo;÷^§cJP Ô˜ŠîxÜÇTxýË©g×±ª¶j‚/—דKËÅàÙÓÝ=n~ž°2u…ÓûÉJ¸Ž4VTºì€(Õš;åñ§^„.ÝÀœq-W0b\ññyª¯Ë=:¶ßuËa=O ô9ªrg’Á¨ “YJàý=7›†œ¥ûŸ4~¬#œAà)ôÐI`Æt•¦›Þœ?·Ù&ÈãT¶s¬?ÕLÉéÕ¿Õ}÷°O¤R Ц!`ùo¡,B!ü$hN/ÎliM®öM´†*§=ÓI6ßf÷Ñþ·\‰'és§á{øà+2€–êÜ—z·Ê,2 º¿ɹLõè£E3™ê~Æke<ï÷ý%®XDP•É£ƒ(6›‹)çsek ÜÌõ¾Ó~ òÙBØ<¶¯$Q]bb£ÝÿFŽûÂ?hÃ…u~ÐÛ|fi 0kJ=« ÷DTœÿúôjaNŒ NGÞ80>¾ðUíªnç%=òÅ[€ý†ÿ–£ Ž>Jb$nˆôJš ŸìÉŠ ­>ÇJe8ø×eŒ¨|T·c1ˆ¾eú3 ÌmVánâo´}6ÐÚ!,«Jçàxu„×ÍëH:¯—Ì6FÄ¢hMµ\n´ t 57N@©î"„âf£u;s¶Ò^nD`58–>'J Ó}TÐZ \*Œ]ì”W(;KpPUå£OzŒ¨\îj§<œßT´ð6Ž4OxãT ÆÎÇ(öäâ\²sálî¶ÜìècéfNzž‡mÈ[ð,¯Ç~A¾ràùo¡+þg"a¹Ï#‹,4³Ÿ¹[ÛÜXü³<Ciú¯ÓóFé^Vï¬ÏË¥D¼z,WÀ …çâ[&ÓYxÈ~Ž8™eV{ûköTA¬Æ¬¦@¢&jº…cžÏ9œ=,ÑQ†ûa‚ö¼'0h_»D/ª¬¶ôÁÞ´?lf,æqâñÀ'3”ÞáÄÁ§H×çµ0"Û(Ö᜾^­»jœI›=: ¿[ê໽Øàñß1ê·¿¢ñªoé´OMóØNs¥eÓçerEXHpY¥Ôr#JxI¥È#9Hóè²l®j}g¯î ê1€U¾Wðw ˆ@ù \ITÍPKGF)»õpp“;ìnü,£Q2BM©lª4/"!—yûåÈb¦‰ëû AöEÖŽXÙ6%‰ÜWŒy‰2Ÿž©H>VkH¸0œ/ÇmJ»Açá{ÒȾ”§@¦¸ÎNnΩÏÐ*F>aŸéŠ(#ÿ\†À/-“ñ–ÝyØ”‚¡™Üϰîc. 7íb¡Z~u{ÿs\õíÌ,ˆÁìce@|oÕ¯ëj$-Òêý¨ái)”°á àƒâú¼ÎJ<öñòä55—ÇÕÒ‘ÖÉðÄGh ô*†D ¨–Åam‹2Düœ-îkQl0S…j®ÝP5á‡h^ \4ýnvf8ƒ®uø‚~Í]ú›¬G)õÏTÚ:ð÷ŒL]ÎÅ"³²?æ~Ôi›åêþb-ìî¯Ô_v몺…æðÉoãbýtø¸bKÞà¨Ø…ú7ϳß*]¼¹Zü„Ø „Ç7³qØ+Ð{.ñ¯¸îæ):ùûÙ]–MãäÅ€‰ä±š§Þ[ñ%¢_)žéòTzœÍÌ ²¡u‰Íãdã¸ÇÜáùYc]VMë’â ÞñgÆ8E…ñ°ãÁàŒ/QÏ nu©¸˜ëŸ,Š¿D« 9£Û¨¯ÑaÏ/Ö:¢­V¯íK»Ôƒ(º÷Bt`Ë«Ùy=) ÷–ÎÆ¡¼”àÅ?äæŒD‡¦ÊóÞPKÔ‹æDµÑóØFz)µ*]X‰åÎŽïëÄÜõ9;z{ ÆÖ—‰ ÈJhCÍî»Ý8¥^ª3޵‡JÎÑëÓiZ"æ}ÖÙ ¹¨&ŠÅèû‰@îHS¬Õ/?W“ šOõ);ª¦ó]°Xo.F.è_OuQDm”;ö>nƒÜ¡ó>$ÑÓ7í2½¾’‚m†]ÎÞôÈ£-“¦AŒéáHŒL’F`"*/ã#o™~…“:µµÛÁ-òyÃç¹ï©‚… wšãýž¬žT‰‚ιÐI׿Ž]Ó®rƙéGºù^¸Ë2ãÛr¶5Jz ªËÒõµíÓHÛG}¼[FÙψ#îWYôÜ¿À—ãâ*ˆ*¸`(é&߬VÑh3ós^a³¸$Bò¡BÿÞZFc¥Þß@¤"Þg5Èï<ߤ¨G–\8­a1T Û"ìÄ”`É$\à a žF r_wÌ/~[Ÿšvo íù»ÆkÞêyÕŸw§×Ž)™äA|’ìÿ|TûŒðÄênÔ•ÝŸ¨ˆ–-wžÄMåG¸{ô8ë<½aj¯ãÅRÝø¶?¸á[–W±C\½}Ó«’rÅN»ÏÙ1ÇѽD¨rúYµ"äŽì_X ê¾–žç‡:âÀçÜÿ[%BëÁ' »üà–ìfðè(Üߊ1ÒBÂêÖÀ9©™ª¼Nv^IæmtÅ€*mó>yñµvDãÁ×Ò¡×ÔrÍ‹¬ªQbñܵÆ.â¬)Agr÷¿Ÿ—¸%5Ä«é‚ l Õ]&2¬×Qpr=0¨çSþJ²,ññ¬´³ƒC2)ˆZè›ÀÜÿ€~ƒ•æœ:di(ñPˆ*F0’š súƒ³.Ͳ¼Ó3‹~ò[Ä…’ÉmU/@Ç‚ž:‡ÂnæíÖÒlùxY^¿³!~ j´yfçeêu°¼IDð‚¦ÌqèÂÔ¼$º´2’ük‘Ô×ÛÏŒä{Ýý®d ½uÏ!,—ZÉõFbëHŽuã¢jüœLåí*úXúñ¬ÉmZQ‚ljAÃRͬD¿½×)C…ž¾÷Z†Yà›‡Ï¨N iÁ1[HñÀ]'Ì6´‚g™¾áVŽïIÔ°Š¤Ù¿:GÿÀ¹’Eª2=ªôN¤¸äyRËpÕ°l&Æ­Ó뻲Ò4ŸüàˆO€N ÂÑÚ©WX­~ª^ˆÑ#Ιˆ¯õ¨Â[“—RücWDFº¤à}4àX•›Í!|Ûµä¶ü™‹ÆmÉãsx¾E+ˆ_&€è6¦§ᮣæA'P<(]™Š»å5x¢åù‚µÅ\´üý þÇf9›¦Ù­Ò;¿Â¤°|m±5¢NK?@]³%V}'BàLïÑq@I²2ŸÓ¾ØOø]f;ïStõî"¤—;‡<_ÊÂ_CMa*«ø¼¹&¢§ •nrn~^åH…ÕI•¸k¸ÁLàØ/…˜ƒ#pGð¥°ç™W*ÂìÄü¥=ÃÝ$=ýªãŸŒÆ°Ð›½]›ƒ@¬ì¯ƒO¶åò1ÃìÚ#þìÅjï<2ù^ÎÓP_.ÕQú­–\ˆ„TU­–•BÀ.£uÆC•7Z|¿ñ ÿ¦Ø#=3RŽêÒmÅG9óížøÃ½Qõói˜æ7ÒT¯õ¯ië]€¼)‰:eøÍ7¬{°Ý¸Jò=s‹–Ä]öÝI‹ÉI$ñ¸Mô¬µæ'ݚܹ·š‘ýL…ÕßñM c¼»øÉX‹$‹;«ÔÕƒï'¯/8IÛà:ê|ÆØ³šß‘ «n¶î'×Óü#BO÷QÍ:!/j/;­.˃ÖËЄ&.Áfh&“}8%j”R“ËÝa;°o?@l`‘%ßæ¡ëêUë’LóMÇY¾˜É—m0^‹ï™Ì~O«nìÙûåyW\qI‡Ê ®:+ç‹«¡§&l³ •éÓuŽÑ]—кsé§lpHp}µh»2í°V®aUÅ¥‡§(ÝÙpØÃø: ÐÇä1”Í×"0Å*Ä)FU°‚­Rã§UÃÆÒƒó!n¥6ivÆYg’z5×* ‰€L°Pì<›`PÕ‹3*Y2²‰i?¥~#ÈÿëÏÜ?=öްâÛ[¸[ ˆ‡%_¦=¡ß2×Ñ r+ ld ,+ï}cä ~k<ïüî@¶ÓÙòÔ %HU{u5ž\m‰\2Föéê‘ßv²„rÛÿ«xÍèÞ3švjBBjÆþÿ7ÈüFPˆp/jŸ|›=Bû6·ô) +¯þÑÆ›}ÌèJ@r4,ÂmDOTÊ^¬ž`IÒ™QFê<[µàóö±(@Õ;C+[Ü´G®ˆüò"2ìžcãR~g»+î›G •’aù ‹pqCf B5㤽 Ý^[ÇŒìzr9Ë‹MùÈ¢{A`ÔÚ¬Œ"‰ÏSe@ 'b®âå€W`PæQöñ©â<ÞT¨E]Úæ•ÒFÔ¼ïnVU½ ~Yb§¯. \«âDØPhƒšÇ`ŽIºòÏBU¯A6Q¯öýoèªîðé¸/œýsG=ÎÒ29¥OŠ–÷å"®-#o{­áãVŽ8~M†sO$¤[8¬Ô ç‹B¾b …Ézÿdà«ýg©ØnOËæ_Ê%Ji†}·Àîd‹$8Ê<Çâæ\Kíèb'¸®&p‚eËuø5Ùש{?[ŸqYpŸ(*uü2£w~‡vÈS±± ÿ_TeñIjR•ñpX;k~ÛÏŒŽá½f‡×žkêªÖî¢ VFe×ÿ€é HJËÙ‚! :ƒ‰‡Ðƒt2à È[Ò8PK”¸%FJG‚ªèà€Ü B´Ö^Ÿ€WwÍ?ž‡9žË|Î<û>fADUŒpEÿwÐ+Æ=y[ÅÁ¿‘>¡z#ˆ”/CR¦^˜ÎD. "˜*;.«—Ÿd‰Šzà åù± Ç“·8BÿG<„uˆ…8ï*xU•j¦ÄŽåŠäsè3aÂu@Äe«ó†Å뚸†reC|‚*äX»kÛGYbï¡_5u7qö:§“UF–Æê߬¯]ö88âò®[l[_S?“·Ùœ´0ɹx6ଖöéýñ™ÃÈ#Ï~®Ö#g©í;‰Eæ²NÄ4{t2–¥ÒXêÙÙøÂuR}ù¼áÞ 8³/ÿT+×±‹XõKPX[U¢^Ýç‚ÿ³T«T*«sk÷„Çm#¾vU7'0ä–ñkX(#M¥xˤn{iŸCí~ÆVþôÉhøÝæ™ã¸¨wIܤ.-sxÓþî$¡ÂLÞ€òê¶Ö˜\÷„ôƒ½d“Ç endstream endobj 1002 0 obj << /Length1 3398 /Length2 27862 /Length3 0 /Length 29665 /Filter /FlateDecode >> stream xÚ̺uTÔë/L#)!! t§t#]Ò0ÀC 04ÒÝ¡4ÒÝÝ *!4Hƒ„´€ÔÝçlÝû=k½÷Ï»XÃðùv>¿‡ZJU qsˆ)HbïÌÂÁÊ.ÐéÈz84ANv (‹¼3ÐlàdegçF§¥•tÁ{) 3HÀçlP1s†©;8ÙÙÐi² {Œi0õ(œš ðP…@YLPdo ¶=‡©HB<œÀ–VÎ?mð²ü4°€8ý ð3ÈÝd…y…þ4*Á PšÙ@Ü 6`ÐÞ ÀªÄ P†¸Áˆ`Ä` ²ÚZ ¿LhiH«kdÕU´T5ž³´Á g{ ,5ÀÌ è4s9An ˜ ¹ù_qËíšV Ø hoÅ QÃÅÁâôŸ¬$54µd™RâÊšÒ63@VKC“ ¬ #þâü ö@ÞÞ ü©®$­)®©«*ÍÁö³€+Ì'øg¤ÿJ‡– àw60U 'ˆÝ/+ggA66777VK¨3+ÄÉ’ÕÁöùOšV`X'ìÝ d úUb{sXcœa‰ü2ð³ÅE°¬– _I@¿˜JâÊò2Òš,°j±ü,8Ë_½guvwþ•‹º´¸”’ôÿbÿ l ‚þê×O[æ°&ƒm¡¬0gì`‡EsêüwÖ°Æ8ÿ Øö¯XPfè§Çf‹ÊöQ(ÛÏLXdT”5Yå%¥•5¤E qúmÀÙÅò§îÿ•â?Jg„þ YQUU`Ûæho‹ÏèìPý¢Á^ sª¿ŠHº89ýLMé¿,§¿³ûo;$ °t l½¼nÿ\ ½ Ôó~ÿ³•f°C¡Yý§Ò¶0¬·`ûÿÿÞýTøiR\J¶«<ìNØ‹¶ÅÒöæ’;;XàPôŸS!†uÈâäÁö?—߯âfïõ¿y`{󟕘»8°iÙƒ]@òRÿÑ€‘ÐÓ,AÎvȶÎfVl?ÝþZ†ŸdŽŸdXE¼½   -ä ¶ÁÞн @Wؘ:¹€¼½þdü¡sðÌÁfΰՇ*迬ËÛ[@‘a‘ü—õŸ!døu¢=‡gæ{[ØàZ ³)CœaãÂðÿúô¯¨e\lm•aþWƒþ- ´Ûzü¥ÿ%ö ô3}eˆ“Ðö_<0Tì2W;›YýÕ«¿èù··´X8xþ"jý<‚la{;ùÁ?0;û¿x°‘7³±A¡^Þ_,¬ˆÿŠÖПQØT5åUd•˜þç0þ•¶7ƒ˜ƒí-aÓÎ :9=ÐÙaÆÉÃðâ€í9ÈýרXí!Î0€ƒ‹³÷Ï£ÿ^›øOÒ_ˆÀ&ññØ$#~›Ôo$`“þñ±Ød~#›ìoÄ `“û¸lò¿ÌŸâoó§ôÁü)ÿøaVÔ#˜߈À¦ùÁ2Òú`´#˜‡W¿̃ÎoËH÷o$“þF0@¨lv2s±û›ÎÍù“›`0Ôæ·0̬éo1…­Ôµú›ÊÁÉý“ìô–’)l`O3 ç?È<ÿ!ÿµ¡[åø‹lrþ‡¼×ßô)À²3ûñÀB4ƒØÂæóïL¸Rìì~çüspÙÌÿ€0— ß`uýÃì´eƒòŸiòþÔqtÚþMá‚G[ Ý–a%²øm&avýÃÕO6ÄåZ±ÃD,ÿ€°Øûä†UÌÊÃÁ dÿ‡Œþ‚·þªñ;B^X¶?·ó7V»?Âå€ ü¶Í{ØVÿÎæËÞÅÎôçÁkùG °Z@~G ³ ùC‹ƒ–¥Ão6̇ö¬ýGw¹9þCýgo¹`!8€œ~]:þåýEC~wV5[—?ã†):º@`XSÛŽ7ÿoÎ?qü¬ï/Ö¿4xÿCþ—8¬9´vR²ýŽ€V(ÈüÏYäù)rý£?ý×qÀüýv댳•è©UÐÙ ò‡̆Ëï}€ùøua„šAœþl,q×? ,@·?¶fÔýóêñ„µÐówÌ0Kž §¿"øçñ®úóúôë:Àþû¼ÿÏ]ùÖpv‚Ø€^Ía¿qü!¢„mµ»>;ìYΣþþû“á?Ðþ¾†ü¡-!q÷bᆖ,œ°›ƒëç7v>vïèšýuÅûu€móñÏËr™¡ÏÏ@Ì„‚¬“CJ|¤óÆK‘iXÊ Etâ‘æÓÆÛI‰¥²×©@¢ùþÍ~étùE9ACŸDûBÚ Ûû•–·cçæjb@%Rliñá,mV­€t¥9¿ÒNªç_²ru‹¸'Ó[ã[ÉZÃ{’í]×Ñœ£¸§IT¥­K9ÈnÓMOœlñÜçpH:HçÆ;டÄF{Åç§LrC‡Pzºð·3[wEÖm§ü¿J电Yt™^£ãÒ~;oN›”’tY­Äv“xÂù¹ù³$¿kVH$¹Ðñ[ê‚Ok¡_¿nœ~ì²®Áǽu<="‰Åo‚O ô$ÁºåGdÏ«d›ÐA¥nH<Ìêæ;Üóå‡åæ¬ ]•[^Rê‡Û73-®² hA—;©¯@äâ™# D¸§§žù"6Ί“™zjp|‡å{XcŒt}C³uôÁu1†ë£á$Àk?îGþâfÃL"ÒsÈ$°‡v–3T½ß&Mì:H-ÜM²^ƒ4Æ)Ðò Â÷ MZ|´4ñxÿ¹ QŒ˜·„Lk)Îñ¼£í‹';«“‡¶y”–ÈÏÞÌ‚‚SÜ>{W:]oø¤428+^¼ø‚«_Ï#¬‹úZmÓ}‘ XeÕbe²ao…²^€mÌ…ÆdÁR*S4Êœœa¬D›` >à‹ìVêã¯FcÙ'Ä!ÈO.ͽ’vŸŸO¢¡ÌÞ@­K'Äe$æ•ê¿$¨}u]½íI©Åu1ÓrຣÎ"³´}Â¥Ÿ¹‚fœß‘óy„5àéçCZÉ=x+Ÿ¢MFÄþ‹Ò7á)ïîzRUÎ9Ë”ž9 £”ïŸ#.LÉ&]‡ÓsÊ:X.¾‰êÒJêWŒÚ¹)Ñ“ûV? ƒ"ÌT’²üÙb„°Ž%ö¿˜c­AŽvúžâÇÆ -ñTòàYÑËÍO«C %Å@Êî›k»dŸ-0¿#:(‰"=Úšã¤ËWÈr–2½Û¯ïF4 ÑŸ B6÷j²ìbÅ«¼á©m{šv‰€kúuûvv1¢TP>1•ás®µÙçV 7ló‘ªiújëH«ùø»€û- x*ÕÀÐÀ‚™íô—:G#3ï:õ®º:d)’/ÓtQŸ½=H¤ηmÕzÑÇŠ#”IWÿÌÇû}ëë3P]8¥Ð—[c2º5Чq¢€%éeE¥âÓ|´hÜ×9OÛ¹H5Ñ âó>µ}õ¯ôâ²K$ÓḢz0ÿºÐY¦Ý.oøåÍÐèíV‰®WÔÝ$7H­0Љ½¤§ °=a ¡·C“IXf¢µ>T?Ù~ Ùô>ÙÍ û¤üØ2ƒýÅUkjÖ„JöE>§HG»„i®eæôœoxíÔIXå÷ÜN-YÝÎìËq@ÖšáöÇ; Ë.%‚ÝsMмýS‚tª-‹tÞÒw,’Ó *?Xü}ñNüò\•4È… æ&¼Anryâ©Î¾^¢Ùyg›YXñôÎff-}Â¥ÌTÛ×Ä…Ûørâ×1;h§+>§þ½L÷ÉWµ[COŠº¼aQÝ’›cYç´^ô«Ç'Õ‹q`öÌ…à•ͧú…B­Ã§«)ÃÅ_Ç8¾%Õ0×Ù¸8ø ÄUqÉÂ}ê×* ’-Ÿ UµÊ} vfÖš÷% ýÀ\ôÒ°ª“¬ÿúGðsUR7B‚ÂYDw+© ÷CL3I‡>A„ÓÒªïå¨þòÕ³–ð4ɼåû¸ßr„XÉÌ´‰ÛîI EN?Z âªLr§ÚÉF`„¨ÅFù¯Î¤Qß=‰¢†|ó_ES½){Kµwé—Y³æFwõr«ƒ»¢òYø»™—ݬJM(èµË€BTØ™`½Z2ÖôÜyˆº÷ƒÆ›f¶“ðºQH,v-êxØ·˜o;PkÂu6R5¢þ ë÷Íû½Ž¸Åyɬ ¾×|ûp’o¤.0£)Ot§ÆV°˜m-rµ`š;÷·ÍSl¡öm‚VÏFz?ùÿw/óÓđڟçDQm¼\$Œn¡ß'Š‹ÑNMÕäëº"á®%ÍG·‰ñÐÑÖ>¥Àõ#a½3&꺵xÛ›NÃÙE뇿ëþ­)F S`Hm­¶×+Yr_¾]&@?°ÀÆ&:¨¨î`ÆG¢çÛ'üÎMc”)À‰;iþˆ Û;d“€¥ý!üÜüÏíäGC;/P" |³Cø„˜¦¼Ð:¼ÖWE¾ X Z½’2‚Ò^£Bå-EÒU¡Cežù'ÚO¯ó©Œµž"tÊ„&ö)Ðõ1jb¿¢ \î÷–d’\ë˜?×›'½Ò‹zº›Uüˆg`Ãùq}5{ƒ.;Kƒ½§&gX²E©_¤4õÄågd} ²ƒÏk÷˜úçt·t؟甌{¬$×jvnit:AC@$MTx¢çšÌô×a˜lEß8¸Äv;Ê?¾*€ÎWðžã9ß`<¤Ä²ó§`LMÊ…Òš‘ô¬L׸»µ„c+€ÁN™ÒR‰Ú]Vq Æo;,Ú¶ß2­2DØMeå~äÙŠy¯¿ 벡89‘ù¡F”Ó•ÞÂÃ?ý¿Õ…yÿ42ûB[½è; W „ïÓ©é‹s~r×¥WGÏq’èö}îj»®t3UPÇžÇ)¡\A¶ÈxÍíŠdü:aŽÑ7ßùb¶³³°3/ó´SwÛÁyY‚l)ß±îUù‚óKÚ™»e ì.ú©Ñeúoʆ½Ê ûj£™™_y9æÉ…>Ó¿ô'÷p¿žPO_²c`N˜ô|é#²òäÜA\Ý6ÕæX%‹Ë´–:d ÿ8*q :ï¦HÁIB«;>:ž¡Š¡‡jŸ,5áOfdVåÖ†fªoM“sóäFl0+Å;±8£í'úއû4UÀ~ 9Õ2"™[œ}Ø&ÁWÔKðvðÎw°gˆÓ!oˆ;îî Ðî!˜óÉaM†k:Ú1JOBÖ¬Ç|v_Nîâï_,ÍŽŒEÇ Éæ‹#L„l`“-§èߎʼnB£ÂõÚ]n+D31éj™¥1Çe¡{ïEyÉ›ÞË@pI÷Ĺë·jƒ/š9¾}² ²ø¥p’¶Ç.[¹o@ïB=䆯ÙHïöͯ졆õ˜æ2ÁÂHeëù $w%ÒDP–DÞ²E§³áªÅ×^‡§CÙál‰šYó¤‚_+úÒ0«0XÞsPx5Ü&É p¦¸ÄDƒNµíP¯W<û.ë)SD€ãr5¬Ý¦›iµiŸzÃ…árB@û¶85 WÐ_Úp 1‘(Ê[ÃT²ß®Nþå©Ðâ,Ö©‚öGɵ4ˆÊîÀáN%±À*ùï,ÊezOˆ½Å²OûQ@þ½W )ú$m|A²®qüͺ ›mä£,ž4‰cöÙsö_ô7½š6ÇÜr÷ ¶Ï7è°î»„ÀüOÛ°ôÄ66:ý’«eîp"þC…8XoU^”™§FH7ÓJÅÅ Á÷]¸Ë X]1lœ €=qyKFCe=d¨?êßV³ =·óÒéz¼€»ŸæÏÌPÑ{íú>!i3ºv(å)Ͼ-1"ÚwFñƒ8yÎZNÍ+§‘üš÷«óMB(…ŒC Tß”·­ˆFbìê1œEÀ h{Âhl¶b2>"®öU‹öN—´òQ앾¾ÚXC¬Êµ Ž<ýyk‹+=7¥—‹åé–·uqˆ$ßßEçï§šŒzL@tœhzúÕ7Ϲƒ«(EäüJý_Í]öz7p >q›UmávÜ¿€&…·€b]ê!¨aõ ´æÝævQ뉶îÍ Š@yÜžõîr$ä¹F—ZàíWi£Ä†×A”ÊYDëêx®—²híÞ:% Ζ½øê¹~¾ª~‚yP¡^!½“N²”ÊjšÊN@¬¤‡³kk [¸foq0-/Xªñ\ N¾n*q”ã.ÊOôµšX;·”Xz޹ĭíà儳ŸÉÄ'ðïJÃ=Ì¢æ,Æ&N}1HñU¶Ç 1#,òiÔ ~vßeª(½çñ’²ÁÃ>6ùØ[{æX£õ.rŸÆøGQ¢ºêqL¬ngmwíÚJr¸6è¦Aòøt3œpQ\Œt$ÈŒEÔ 6®´üˆŸßþÞ=;ú3×vtðõ­ñœÄ9&ýê÷¯³±”WŸ¶T­=©—ŒØ1èϨcˆ±üŒ¶_‡-¬2ÊTÔJô˜Ÿå&àÞ¡Z¢=ÖƒÿXg8L¦Ø÷É8GaZ/‹çiÝþC¿ww¥œ6N\b‘;º…q·‚Ç(\NWxµ]Ãj ¾^­µó”ÿx1ÿz»‚ FIÁFO8¦›ó{4kv1>ÉÑì­]K”gdT åAn(£õÊ27Í?dgÌTðÉ‘ÌëP œò”³–O»?Þá24;½ÙŽë•8ø,RJÂ3lï“Ë@:¥ŸpØÃ$AÀ{{s"0ä 8n”Í"ŽUhòMUGhC¡Ð'A ‚“»H®¶6ZY¶˜ûÞŠU G-žJ2¬º†%FÖ ¹½fÚÄ@ºhÿéŠ4ÑäùJÐåSAª÷`qˆZ$V¯F<‘œeƒÇ÷Ln$lÆÕ¨ª—XšÊN® ùCÚ"æˆõškçÂï{³…E ªœ¿ÖÝÒY…È$AÞ¹¦Â=å–‰æ§ý¡IÅ"ª½ŸvÑ çVÔpÜ혘~Çõð\BŒ­4¿zÔ–&Ç[Ôœ“Bb´ *³Ìò®*6nLE²X+,Ö*ëÒ‘:õ´/õ¦Z1«¥}Júò$B÷@IrαîKØM|ÿñc… ›OXN)ÔDFSªšy4.ãüLUD¥HÍ—ö” “–Wª¯c Ûí Ã7£r]Û«Q®á%*uâÏèÔÔ_òf›±ç¡ßg£%^ñåå^¼‡¯’`ä’]:ð„OF^X=h®&“x¬Œ¿å~{ŽÕ¹O aáÚŸç2ƒ˜åÃÕ'$bÓöG€ëYÿFþ0gîÚ³Z³2ô>;¼ø6!ÇU±.”-jƇ¢’™ø¡)Ñ´C`ÿª__î(yŸÌ¾<4K$¾~tq²Ån¿Êy3aæ8†3´ÈF]µˆ>E€ÃHgØ0ãIçcQ IsËÐpœ4‹‡×ê[F™YMu™ÕPOo&—Aëfh㽜âVÀ¾o}“4Ÿs$N¡ìÉh±¡®§<—A??oç«óý¬öÖZ¸sU\Õã{,! §ñ7 ‘˜ô!TËÂ1×Â5rÈ‹P²íÛÕw:RTrå“EÉÔæ¼˜Ê’ëOÃèú¸`'¾±2n‹¢«¦s@N››'ÔK8aß\ž*Råâ$G½Hí¯Ši“òt+ˆÎ<émêШ®Í8 eÔ)/½ÊVsà· »s<Þ !Û‡—¤©^Æx”¨¸TNO¥WÌ´[“m°„ƒ¡•kÏÑ›Lx)Ïø®Jn‡æ dÂ>§"»†, OY"³×-ºÏù®áä² v¦=ožÎŸsXœ~h·™Y|žË×ǼLù(†p:4òFäˆì4$ßéd¦«BC)üEÄuÛ”ýJEQ‹™r«cÂA,·E¿y¹#©¨Ø¹©, J™­¥\5I¡NчïãD³ŸÃÛÍ­Ù­:vÍÈK{±º,O"Ö0)èÝ.à.JÑðŠâoÇ4³“ˆÔÁâ´„¶—ø”­TiOpÊ~P:J2’„lë•«Ïîwº(£ÎEÏp»û®}Q¯‹94q ÇýœË0`"ìæ¸CƒÿÅïó÷¤[{æ ¾¢”Æ]Äì’Œ²bï<} ¦!Â÷8]µ ĉUçÈ3ݪǭǯ8{|o´ ˆ¥E­ÓŽé‚€Êóy‚t”GjªLíyßKè7ZÁˆujÅØ ZàdÙ•çny»Ñl¾_²èÊô…ˆÉªv™Ÿ)IEïYZqèL4A?i‰'>Ù!0l5bG1ë:©¹ÏRØ q$öígrŠõT;i^Q»OmàùúOb 7Ì¢šŽEì¡2°$±å8ÒD3_ ï‘¿ü$a«KšËr>8£\¸Ù‚ž1ð‘3ÙÌ·ˆðD×R+‚œeÌ݉÷B_¬ðbï,Ä#­cluö¢ýr—^…£²u“¦ë ö²ò.d©е\Ãá2àëâñp Ãþ¦µLmWòÃêÿúˆ-¤ßjÔS1cÉŒÊΪñ ¶¸eNñí%„ªçðÉ㢲tó(tŠ»•³›åAÒµ)?Ü”SÅ%òV®4îäî×O‹V‘<¦W.ɦˆ¸ÅO$qúQ$ÈÛO XHx¬ââÝç ¤$1ÒÇZhÌò½µŠJ™YÅNÑ/‡Š7Ð׋uö&Œfˆ&¤#óVze2DøÔڛ푧\¸ÇÈ5ŠóY,oa•TUƒh J’u6v‘[pVg ºÆ[v’o‰¤ /Ýïu›Ÿ~G‹h_DYÿ ™ÆŠ:*9óè-lÄú1·aÚ3±‹_“dâlÌ÷Z­øA€1€JêB kyýâÛðàµv^Y5Í¡Úì×Î÷¥Ïüèp›Düm>Dòí$^æ==t—×QÚËœgîúî@\j‘Ï•Ì}ÄBˆB³]4ìÅtlßG “faͲ¢N£œà<3¾±|Ü­Ç«€Õ÷}ƒy2,ôroU,\›MxD@Ð%TŠV¶ÙÓfz˜ë ç÷8C±Ÿ±[ÅWºDYŸÚ\eÐW ¥ãzøI°F¥Vœ?¦hºkÁEBÜkÝÆ@äuåœmpÃZÜûçÊòç-éf«¤h÷V¬k ½1oàÁ‹U„Ã,†nk…³&t(h/1ã—r¨ŽÛ„UòJ1Î1!—‹üØãAð¶´º®zy^9ƒv ë"DÓóÑŠF?ÑÎsí^„¦k'wY=ɾ˹}ZZ (ÿý¸Q¡ÕÍ’DPóBÄw¾Ö7Ži‡°X ȳ݌ÇÒt C+„ßšÔ¦O™{ª¢ÕUÓo™¹6÷¬ïkXÑ|›d™½Ùb+Ÿq­cë95mѱpJЇpÙÌôthºê9·[òÙ½¯²µQõ wˆqÊ#¢‹ü †ºúÕW‡fPÓ^ç~/1›ŽëûlHòÜ׊b?¾Gm­ÓҧӦų.Ø#R®›•3{Ñ8Aºõ_ ¨âÖåMHuü(íMc"äÑ|äið\º÷•«ük0ì˜í”3ÖÛÀ“ &ŒwúÒþMfNRÍ%¶.%³ƒ ßÕÖK'4µ÷îMIpÀÂ~@aâ÷7¾ ñŒ$b¡õÈÁ'£šå€üz­qÖ¥JN3¤¿ûÛF^cHe•+»®FŽ€ä;òWÁEûûÙ4ŽÄ©&橤þ6 /94¯£ã8][E#&Ý™4“1&Ÿ`«°¾~1ÔZ)Ìèèuy5¾pwðâ]þ÷óªô—‚Y±ilcI¹÷RÕ¶ï‹RŠ›ŒRΦÔn/"?²&ÊÞ¯t=ï·ºrHæzú ¿Ì†é&áÑ[ŽÑÕ7τٚÍÉWçwT_¨ Õ¼á.§É‘#ñqÒðÿ¾©a¡Žå(ü,n9:Cc°¿cülu¯7GÐÓ"Úú ó;A’¯¯ÒÁtBá8K8yÄwÿo¥M¬Æ‚º®¶r…dRî|%Óf ê&Œ b¶"6<üK{C.f”!Ò£½u;ógòMyòѺ›'|3G¾Æ•FÒIáÓä2t…÷˜î[íÙÕhxï :¾P7´Áhï2'á™°´\yõ]xEø‘W^š€¡œ‚»\”nä¦-8…òùw¥Wg†Ð­f˜¾ß:hZÕ>0†%¥„튩¬xA‘uºµ×ÖßѾ䒎¬ŽÈU¿½ ÷°ãóZÉ,ˆê»½Ö¯lv°*ªs¤Ô® 8¿–)%¦Ž<ƒÏ°½ M8ß°¢¨Î32A ¬Èé~ãÙ<­ësf£×ÐBÉÛALª‡öâŠ;vR–ðz ïó+¦2¦ f|éG(µÜ¬FåúH,Fà\Âú#õÍž°ØèNb½° • ~§Í%ë£! æV¸¶O^I0¡—²(\›óýxf(Éá¤ÒqÑ%(bí-F\߈e”:ê2åB”ax Ù n­ìÕó¯fëØÔÑG 4u§ˆjú¨qMc ?BçE3ø«×Y4—;¥z^,s†*6ZàQ}c W“[ hÉKQ²_aâΖ ž¢"«í&•¯ƒmÔݰ2§`»W¼Üo66Ò”‘Q¬Xý2ßIù5ªŒQE™¯#RÊÖYê|WÏþ(iYSåP×fi©4¨60ê‘xkÌý]±íw{D6R,y¢éH8Úù¢qãÛù¯i){c¢,•Ì><Ëå}a¨Ç\™(5¸Y‰1Eò{½?Ñ©J|ìZÖuõÈcì `=aÃÆ_Æéñ¡ØÇ¬Ï&ÿ ¤Á¿} =)½ÎŸ‡`«£’ckWíó{ük2E‰ƒ5jßsQ”È ùâ8…žtùÁ/x\?ô?”ZwZ§9)…²ÝWKÍŸ\T/ГŠv%¢»ÞQè7PÀcÐK\G•Īæ^Éõžñá'Š™2¥\m|·Šê`ð”axà¥oÂÒ\¾·ÃcÅÅɈ“U2…ïúv/S‰%N_²Hù@±sg9„µ¹yâ²³•]‰^‰K¥(j}O>þ‘£DÍÝVÕÉâ÷)‚ ¼* Æ"=:î6ì—ò‰-øÜ1¹»›ý|Œu‰›èwÅzþDâúÏ#¦§›(†ÓEVŽf“79û £—osÙfÐì¿kE|uu“ƒc¾âkÔè`hšåPç+Yî÷ÿ;ÝMWbhéJ4ôM1¿6``ƒ¤Cå4ßìJóž‘¡?÷Ì+úà ¾BÄÛ~›=îÛ{ðÜÍÞùÖz•ÿÕµƒ¶ ñ ­á¤÷³ ëËÞã¢#4Ÿ¤ZØ„±–èÜúÅC6¦QõÏñtéŸ3+ÝîÏŒ`ƒáž ‹\eï:…45ªÛx»3Tu¢PZ®Ðe¡¹bƒ™Ð+%%î¸ò·M<Žö½mÇ{Pé(ëp$AèŽóM› ›À€ñuíñÇiÈ´òÇ爧«:$œnÉ,.­Þw@~„žbŸ¤b¾ ÁŠSÁ–%+Ï¡”ô+Í©¨UÙòàÇÎ+ŠD‰[!žWÐýH?Õ¥KLŸ‡ê©AÚ4Sž«Ë²¶çcæŠNp¯ÎlHíCçOä'ku-º¶¡Óºƒ¡øèòø4ˆgwÚùq>óûh„œgÊ‘mc}"¤ Vºcòà ÞÛnzÜ—p5§Ž·7è –’LÉ™½QÛß¿Sçµ1˜ê"nˆuôP.ö&¹Î5q t3š¼w9µÖ}a¹ñ9ÚuÙ“ÛÅÍd†óç<ö׿ gìźaË‹kó±:o¯®>ƒ&<1éðYÚî3@²¢;|ðäSÒ¶”ëúáȰ„l¹ ÁØ3idÛâWp†Ûï»ö‹¾¿E“æ=‡Ë|ßlœhÒ¨”¦C®@j_ÂÚh>Bkæå¡tBîôìÑ$œØÏg̘y¹»ÇÖ^pRëºØÖqoô`ð~¡F빓þ7ââr]¸~P¬îѸ+Ÿ Ïc±7%“&é™nŸà«‘©“äŠz7¸BÌÞê~€L"õ½zÈ'J4?ÙãÛoÿá{1ñN•ÌH8Fh=f4Ÿñî© \ª[k z›ÕÁ@ê±LF3þ„´pŠ=Mð ‰Ýqø¦©§¸ º)O;ò•ñmüH(­+Õ¬ºž}qÂtÒ ­´+˜ÕK¡Ê%®f½8Ú–/Iê¥y‹X²>ü6Øþ¡¾M}Œô[ôK^ݘæ—vÒ7·'JdU&@e%ª$û5î †ðßÄ ðêJnì¶0ÅÌø÷õx¥ ^tiø›4¢‰“,GµR ¢23ñŒ«*]6u”¡B”ÑCݼG&¡téaTûy-ß½yIÏ_ïÎ\܈Î×pï\¶ÔÉïñz¼Zg˜yû ¤ô5}ÀŸ2×£*1«¯ {R^ÇCœ¥–Ál!©”±¦UŸùœ¸^ÊR€#&R?xží´«Ú¶øIÅn´Á”ÀRÃàˆYŸqJ|õò¾ª¯Y«§øýÆØ'ìNÇqÉ|½B§ë‚2€§…ã.ˆ¨æÞ#ïø|m¼¯Üì]¹-R;„N^{xˆíT.ÙB¹ìdÈü›ñ¢L3wíó ÔÆó@?n-ø“’v9¨ÎÉ2 „Ç=~Ë/äVf" J” égöؓւUrΈM@6º¼ŠwÄTb²zñ'‹=ó]¨`ƒXž­pÙ£&o"=:ÔÛ±#LSæûJ,oÁÔÍëõ„ )ìæ_<‚.®‘÷‚¹ÛºÔ¿GZ¦möèÒçrìâÛœ‘ÄÙà½â£¾øVeU·5ðx»RŸªKÆŸ<{œ;z¡ÅžJÌ_Hï~XÀ›•†¿²no1€_ݶ-ôòHG]‹21M[¿Ê£%MñØEÈs~ëºyFš‰†TþÖþ–¥è)4O4_Ω”]˜ë³lxb—ÈËbå­ˆ×õÙ±ŽñS¢ýÊ*&'«œ}ÂÍ]fì§yhŸnÍ#È4»a×<Wm ¿™j 6; ñô¶—šß$öŽºwÓ»©Ï‹k–h§bœÎΪO9äô¡æ¿`Å{ö%úd¥5r Úq¦ì‡™ÑHÓÒ<_èû†Œ_r4©×«£a¤e&©Ä|ÔY’`/aÕJÇï«BÔˆŒÏ²àó§¸á¼½†ñ9y‚;±ºvAÚÛûÄ«ÌôãÔÓS÷ŠœÉcË)ýh` Úà/ ÕË^o‘²õæº&æ½Ö§ÚIZ|SOfŸt×xNÑboü2ÇÅ¢¤û¡¦4• *W5ßž#À¶Øã÷pu€o11@¤”Yò‘¡`Eû–}2ãÁb‡?Ç€÷ö°%¹kˆ`í=ÃË*”‡Lå~–•ZÇúXÎ0áRÊ7Ö}XµQ—®¾øÝü[b±¼ a6bÍ’VerÔn´ïÄ0^j^Éúð‚þû÷ñÙìÕʦÇ;Ü+©[ÂØûOïúžž±Àň"¶P ¹íé*v®Ì£EJ(A¤Œ“ò>þåy´yvÈÊ+By’¦ŒéN4YÁºš —ó)KWz¤Ï’¼öHO?H4ºß‹¼@žÝ fà(Üxß½n7GÛP‚~õµÌyVžxdeøšfü‡ÈÄY¬Í®âÊý(öb§ëBð½ Z?Â#Â$wýC× iwó ?#µü皘——žî®ésÚ¥Õ»é£Vc7ÒÛ›²ˆ·ž3Ñ­ÙéçÑ£a ~¦•7쬞‰ÈÈZ³$Wñ´ß›¼ xµþælVJï‡Ô,q4טüúÇ–³.˜Š¯Xäå‹3í‚cX–„“dï/Ù›Ÿ®ø¦²Õfå º' Ô51Ç⯠–<¸•rûÑ‹}I\3† {yÙ¨>äBÙòav„ä:œ¼”—:uÔ;'? æ´nÓ¿D=#P¶m ¶µù k÷ýYеù©Ázá³g÷Ÿ(v˛뷬ËNA·<á‰7)+,¦Š3Dó£' r›³Ïˆ›¸”~TŸÄª€N˜ž_åÕ–C°{ÇgY0jH®ЧÑîø¼Z®ÃË-*Bš¹N¨™—0)-i§pFeϲÔQ=ƒÃ¾æX 7‹Žì vØíèA÷/j»°µg1¢ôH¦.Ÿ£†²Êš¢°hɱ¬ïB­ÜEâºÒxSœ ŸlE/^v7ž—Ý•®(¨z‰òâ½G8œd ö‡ÇÛS=€èæQVWçHÎÏ'¹¿}ÿòðä„r‚ƒ¯™  °~—¢ÖT¼åøÄJر·Á2mÉè´Fýé±µFD}Ôë+çË“&æ}}Bâ¼dÚ1Ia (¿r©´ÊˆßBåôK®2ü8Y* Ý¶œP)m-+4—ëk…jåFåS)ê© ›ñH¸@>hJÂp3ò¨#m-×^±ü.y·Ð{“ÐgÍË¡Ü4ÝÕŠ®ÇÔ—ƒÓ·Åѹ«ïs*A•Þ[wÙËÛ<ÌMIχµj (*Ysc-^}„¸5*™h'uUëõLr%zí¬Î²›NÔKöFŒ°±(GlŽ^^V7Y¤n´‘Nð€’HIùL¾½ZO_èm-}¶F¾·¦G¡ýÑŠ@q'ÊHv¾_ŸvùïÇ kþ#Oõ„|1u˜KcòŠ:‘«)fyÀ¾LŸyú…ÉP˜˜Ð¶åÑ”Òz¦ì/VUO®¬³¤KDp-_‚ éÊ¿N>³èxp­´KˆÕ|_SÔn×0zÞrMZ›Dý˜›¡!‚]Ú?…a¢,úB3¿ ˜ºµÊt½]Û ¢[æÏ¢"A.œé”"àEsšàùâîR¿9`{i:`㯖vÓÒBVO³¢¤´@àÐâw¦ FéÄ¢.ÂOjEÌ!U¼>ŽWFê”_6«3~IäïËŽúЃ˜pcMQ×CÜÛî%(_õ–ŒPí§¡¥Pì þü‹ æÃˆë´©3ÒðÙ äd%ŸXµ”À¡‚¬™\ÁmvÀjÄ\G6ãÐ6¥iÌíí`ƒõz‹K‰çðØõÁd0Ã;ܯkAÓB=ѵN §ãúù ½3E*efa”B C&ÏøöSdÒé$•¶\ï\[kü* âÝZÏ#¤ÚãâÞyÙÒz¶í‹ yˆü°rNgÄè å‰TQ½–Z!äˆWïÎþòYv¿¸²H•­î[ýç,of¶"W_ÇL@”¯úÌŽÚÆÅ¢ïÌ•´i9ZT(¡îÈã=ƒÈ>3#TrY9DÕmd~^mÂæ»‡0ó”øuyyöÒådúî¡dÈÜžöR ‹^ͬLßò]d·T—SP¯)À·a¯T'¾Y/ß&GC}ל¨eÌ8œàø¡°þÝ[¡±Óëàþk„A™)sÈ´ÿD®k |$úpÛJ×ÇÖ SmýSEQ3϶ynKñÖÏéfê•Ë+’‰ºà£XÒUÏú€ÏKGw&e‹ÏÉÓœIÜÞ$!ï5¸.r|šžy’L oèõò7AãnŠê¼—½½x¬ªÓÆÅŽé<½8`ÄBB·zâ¤Eg”û¨MæÙq¤Äp÷B»ïÒ“ò“€'sÔ&fkÝK‹ì*Òª,Çy†ºuouR~oõŠn7檒°+^ï“ Ä‹J5RÉþq-Ê­D©àÉ‘_üv%çˆÒbåú9ŠÆš˜­*Ù‹qÕì×Àf¯w!ù\Ê{G8S8ðØri‚õ×¥€½RøDå»Ö O4>ªóÖGá/--ÖÞˆŸ‰¶Qq=}ÌÌ‚¨Ü&ëlÖëÀÜôèÁ§â¸¿1¤#‚†:l¡p°móÔ*sóD )di|ø‚¬õãS~{ÌÄÆÉT×䈭˜ÿrUÑ2¦ì²ÓÜ5üäôH©ZM×uQ™¿¼¡w3(pÓ/ˆÙéÉ×¢E£ÀÄO7ÏÕñ†9Aûùå„êù}®AßM‰ÆI´¹z²/Ÿ‹îÙ”Ò%ÄŠÞˆ× 0•È­È:Þ«Gpõï*Éoß ’ÊÍ#½ÇÃ’ ¨%‡ßKý†´ÿ•¹zw¬\ÅcXþˆI¤ÀÝóáµ|Ȩ#µû'S"m Œ5Rð;Â/_ããáØ'{È"Ý”P?ã­¾EÑÂàrqçJä’ü¼è5ÜE>ùT%{ Œ±V˜fâÉbv›_\‘½BZGjÿU.93æ°Z`Ä–ƒ_aõ>:ò8“vˆÑQu€6ÃôÉ &F†¿÷}+Ö¦¥G„œõåäã¦Úa¶{ÊD(J™øm´1¯O<':ÝTÒ’ìîÓ׆ùšãû¡².2Ëßz?~{³éò:åýú‡õ¢—_Åo¾1÷v+ÝfñÐ6e§ËÓ'd5GrY©;tÕi¤Ê›Òa=îð|>¿P$7¿°e¾¶PÒm`ŒÞú™tËU+jP\öK¥ÝD=>©\®/GYkVÀ0ñ-î‰O1KB—qòxƒ‹?¸SÖ"é+{;Ù Ñ|“ø&š ën±\~²O¥£rÝž¢}ÌìÍæÃ=Jk#†Wc!&Ó’¨Ç‡¹†¤Vϳ¤ýϺŒ<®%ÆÅÍùÆÁ×X±òñ:¦Èš¹V\¢,͈¹÷Ê3 ÅÞûÆ÷"7‡ûá‡ÆX•§S6@A£1 ¹gœxʘ8ÌàÞ'r‰ÑS§Üiïßh¼›½Gß–!°U-¼kÂ;Фe½ÕsF_>ú¢ìâĜŷ9XŸx®¿t+<ìwiyÄû 6(qNÕoÑ¢e‰êÌ0åßÔÉB°2¯ZA½·<<ßíVAægÚA]§ù¨Ï†³ÇãùN©ë'œ»~ k™$©˜€Â`¼Lµß6}Wò€Á‹^|¸²¬ø[?Ì'gÚ÷'Ea\FÇæÞ²ã_Å *÷ݺ">~ˆ°·LžŸ™žñ—®{GÛW¨^Tš6Ðø}ËyyŠí¼ãuòc¯©G2º‘íN[ÞAÙ|\†\à)•eƒ¨¦Mò=Áw±xrnF<Ý€76š[Ñ ÌŽ8ÄBwµýpCþÇÍ,ƒb‹÷Ì+Õ–äË“²yÚGh+ûún)㌾ºüÏÜ8áÓCzžy¤{œ Ug4ºQ˜½Î'dí”ZËʾ!ÊÇWÙ·‚ë&dÎ'LÙ²C^HH¶¹DqÎò]¥âZFƒbƒx^ Ï ½':Îxìm¢Ø,ÛêlÎ)#ìt¥`ë}‡PÓà"vÞá§ö?>Œüú<¡*Å{ûðÇž‹å¤}­Ø›ö)…zî³Ô'K3aZÊ?¢}Ùº¡>ÊÖ¶Ò,ËÚüg«y1=èŠâG]›¥zÀ^GÈBêõ‡é…<ûÈèªÉRÌÇî›_¿X¦ò~˜øñƒ6š]‚Êó‡±%7ìæÍMKqTí—ÍWç` Ñ×[8=^ò³9v×o¬E;]¿4îî xÞPµÊ° ‹¡-LtqÇÒôINî3h•œ˜Ù‹ïÑOÆå÷áDž Àõ³L« ˆ~`ùŠªœhRÜí)VpÊSIš÷áLÓ÷TD®z¸©èHÐ0÷Eöƒ¯7µkÓ‹­¯ RÏvßÈæêÑm|Qé·»ó9o³{2mÚþ¹¯Ê -ˆNÆ¢5ˆççÀ”µ“pMR‡ÀÃïõ†òNZ£¢ÀYo÷EÄHÒÑ3ÊæýGúeÞxu 'Ub ¡þ¢œ[‘n¯è·9JhY÷hÛ_>Éæ¾èŸÑŒôa;ŸÐõë_=Ýgß÷ºV@y—`’³%$¦aUÛSnÿ »áÖäô9aÔwhÜŸ\˜î;ò¤×xô[,7ê”9—/¿-?Í¿JIþ®K×ÈëŽ|‹"0·8m.TþÙMÚ}]šè©h@¢ìÍ¢s<¯Y‹2ӵĕ±­Ëst^úNЏ@j€Tdã®=ézŒÝ6p¯FêØJD‹e«ƒrNî<ôD\"#uqß~23E ºÙÄ/ ¢ñz‰&PmÚá G£Š7ܬ·Lù9ùÖþà–mÊ#¨±^ásúªZw˳—Õƒ 3‘‡/BW‰#líì21|Ÿª¶Œ8°JF´ ?”ȵ=ºá‘FcP—¡±"çÑ'–)—_ÈÚè¿‹œ1/–6@ RVÝN F¢=h—6§ ¸»«lþÑ^ØWE7kËûuxHïÍ÷Ðq¬>vó]&Á|»PÖ|eκ¿ŠM¡D ›úmÙ}`å‘£P¬ ¾ãÁØÍ©å¤Jê¤Âàç1ß«r-Æßè‰êäoº4ωڔ«®O»¶ž0¾i~é2¦«7“sµ bÕÃÿR°52ÀÑš‰´*+;yºjT™¦[‰±»kë„ ›©39«Un°^"³$HnÿÄxJjµHqYÈœ%Øðþmà­3}ÙKÏn0â³kDQ±4¦†z.‚‡—¬­Fq,FS(Dâ¾b‚ËúÌÉØíï±Úê‚ÌžàLØJ`¡ V»`æ~X;€À Ûš¶ªOø~°G)þêªìÍÓAìl¸ž*Ç@œgDÞÿ9Øíׂ¾&ü ¢?{Íä:n“?kxyá …"µìÜÇýNåÄy•€ã»$ƒ2$¼¦GŸÜš^i>ô™ìð™zû×˲ä¼`7òýdXä÷(T!;€f£_1Äzs ó!ÄžL|s²L²U’ˆzÖ¤ÝTJ‹ “PMèyëÿ»Ô#˜ ¶ü‚¢ˆc㪒ÕTaY'$ÕÄCN8IÁ6ÕPs@=&bÅ‡Ä ìµT$ï°8ÒsóTG½Ô=3Ÿ.kÙÁi5g+ËÆÃó} oF-ºn î\ Z]Äj'¼2D˜3êÍüó+&JôÙÛ‚ÚÆ“RErJ¤9A¯uÚ¹ùûº[¼Ë2Sy{•Ëèt»ÑpÃäù%nƈ•»~ïè³0dÄy.Ï#Lµ?ÂÏäFˆ|þ¦  ó~¥³‘NÀ£°é©eÀ’ŸIIŠ·Z2&H­¿KÃÅdºsHuFoyh©ÛófZqຽ‹î¥s\W„ƒ3Ù7Ü5sÃ^7\W¾SCþ¨ÄXž×!²µ°c5û8ÀOo ßúªP„BW¥¼Œ ^gœÇ¿ý¸Å']E5PäÅr¾Æ¶Ÿ†5ŠQ$ÝÇ)q“i¶˜,-óyOá»ÍINªÙ‰à¹’©> `@ˇ]]E;$}ƒçü _¿9h¬9X»Ã‰QcÆ\’Û¸õvêÉ\i?ÿŸˆ1wÎöÝu,a)j–ü?¡‡l­™S©º´B¬+/!EŸ¶ø$ÇzûŸsPIX Œ›Px:ñ,ã“>V±'fþ²äʤ€ÝtHQ&à܆·²:jÎÆ|-%8MŽ{ž³yâÄ`t!8˜ 8ç.`eoÙ>õ¤–©D@=A³Å¦‹ÆìžÚ¿Û¯õû‚Î;%rhÜ6K‰ªALìÎÃî©…ÎI1s€²*£ûûé»kBíôEé˜Jׇ¾ÌçaÒ£(?œå#Ð<„þ§æ?O4’9ÔF¬d»ºÛ&€«ÁKüDåÈ3Ж±°|Wÿ­˜à™Ý×/ì¯pýwÀÖê“0«áûïà[µ8UÛ–´ëΛDúð;˜î!½ñV@Ë—¶f†A6´ÎRÎ0ˆ—î¼½$aÙ#èÌ®Êl¦¸ßÎ`Ò¨™nÍÜa8G‹)ñXŽÍf©ø ôÙéè¬íÛ4oŽu”‰£ŒjÅ ÜÆÚG^$EÔg&¦ÔQ‰ôæÈñ9„NA*Çx??ÿ¢_7§—ö+Þq|Ã4›†´uº’VZ·þ³{ÂÑw‰äÌÐñ2ìú.¢ÅÜ¿ayâºOKr{®/‰c˜œû1óˆ#°Ñü™‹ç(y!²@‰=R>·†ÖÊc•LX´ªÄ* |®ëfÕfÈ*§L½ó‡ûú¥­,´©Gšë2°Í>MúëEÐ>÷fI¦¬’X)JêŠæJÉØQ0Aê‡6Ø•”Ô[Ò®„æ2S[øiÀ ¿®^NÈ¿/( ”-fÎ =çSÖÑ ÕÿŒÙ•ŸôÉ$œÁ1_ÑÙ0è®vãS)=å@™Ã€z3¤;‡tf€Mj®è‘ Uª;Åƒ×—ß *1¢5ÏÆoðì(†!Á.ÿåΈ±\®Þ VC6. ½V»¬PõVÑîèí¢Ú/–=¬º ¡)¬ûФsÑ ¼;¤÷Ö‘x§#©T#Â2ƒÕ nÅ&/‚¡uEq,˜oS.’'ÀJTŠ„èe*ç:еɱŸQ7Kh*0Wá“=9@G³d o§ÞŒÑœ…§Ï>–ªB6ºŸ%2t±Wq) ÝÙM¸¥Ãž4½™W¡ÀödÿÃ.í9€>=RÛXc8µÕÈÆÀ):D±ëiÀ{Ë0ÖEÕë8I§åÿJþ¯Èܶۈí†fg €Ôº“«Ss£Fâs„.,+-'[bEœ‹|»Qìkßt »ÖíîoÑ!*Y¦ ÊáNØïoÌ1”(x p@w ù(Y7@v‹„.nÕdãÝ ‘Ëš¹¤…ajŠ27z<{rn¦¤j3êöu2ä1Ôa»âá(©UšX8WÌX%…Œ¥£pgÑ ‹4´ei£FŒO®—y-H4f¢žj@‹°­iZá±mDßÚìým kÇbç ¾ámzpÕÙú#d”M¸Ù¶ªç´C“óîIÀ%úÏëJ¤lNñÊPâ•`4?0ƒK¡Ï«ô[¼À/¬Ùì?09FdN§ »2–]Ü›‚M‹Ù¼   û3…õ¥Ý‚´BŽ_Öý4@3VáГԹ¯ð#”š(‚¸æé'ÊÝ0ƒN±Zt²^^#M¹޼¯!Þé¦èÄ[¨û}}‘«*õ<)zyYv·¬ >”Ù¹•o’ §žøz–¼lÔ ‡¥ m0¶fô‰‘ÃS…+LÒƒ޵¼qí[ü<„ÿúP\0MQNTs¤™ä…©Ì»nŠkó_`N)ƒÀ-Í 2âã9õHÿäPáÍ/äïÖ‡—ãNÊæþžéYà /}¿r²Š(c£kc2˜Ï‡¡::—qI¥‹xÊГκä؈†Å‘~¨ÃÑ,f¤Êm•X1ø"ø§ž`Œ'çl˜NLâXÝ%c"–§rh÷mBxrk%‚K£‡ú¨!$p®A¶˜Ò0²©jû§=>ÆïŒd“Û7êGŸáŒ7~DŽÛ°‚5&½f´ðKPŒ²óp2´ S}ù#Á£ ¯-¾æS«4)ühÀꦭûN¤µ«þ°ùéwaƒ§,jzqvó'í2˜ršvƒe`ÕëöÕ·¿r½Õ ƒ ÷š›6™v^+ØEòIéÃo/WùX1¿œ‹Š~KþA1O¥/àkh ¢WKø’4}î}W*Æ£!É+(#üù°*¥¢&8„„Qð`¿åÍ/hlà ûÁK‡P Q³ŸŒfàZNÅqõ±ù9•0˜¸GÀ§¦ŸÝ²/À¯…¸NŸ‹½w½”¼$¡’¸}}p‰ ënËû‚¥ƒD«ïš‘o,ºMßÞú6íøYO“€øêþá×U«j Ñ,ÀœÙ&sïžÌ"µ×´èé¡•ïÇZln÷ö8ÏáÉEóöÅÑ,¹-xŽ84q6u§Gh¸³ífÍ0®ÿœ™!¬…˜&F‰Ð v±õÊô— +cE_Tf«®ª¤Oh» +Ösë¾Ñ‰VÎëÍEÒ˜ p}’]Ž.v/|0”ÌÐáÝﯹÀ"›U|p3eäû¸‡{»ö{˜K;4±¿:7œ&%¾@ †bž]BºL\149t…v|Sc¨—âý׳7ãÏ\°NE2šUAض‚w`ÎöÁmÓ8)g‡{ú ”Sºš0h´=ã¾%0ûƒqU¦¾¬µG-U|1<½D ¡F<®Ààî…̈Q‰ü6õ†ºOßcst{ûa§i挣¨¹­Y”áyÓÖæF6ó­V"r xô FÿÕ²æV½ âG‚HÏ!˜măìOòsXZA˜[¶5ÁLé7èæÙÓTZ³Ý©?ïk̳öR¢íò]•©Elp˜ÐTECµÕÖ%£q¥øÜ•Cå3b©éÛ00k²dº5™ébðRßmýc-ե唱e,èE=÷ÀcÕ×4H4ÚÕHÖåŒø+ °ÊGŠjk¬ŒÑ-XË'¹ðCzººš ø‚E§€Vû¿­‡¾hΊïXì0>b¸N¨ü벑z߀ñ‡„\ ub°#GÊ=ãNb¤Qû¬ÒXo=qD-¾0B¤~¾K¡ÿ²s/^f …trZÀÍY¿V@©H¥G Ãbk’2fȇó^«ÈDSy‹j"XÊøêÏ»—Cç=' …r·Ð‹ÕÚ$6 –žõÆ“r]Äã‚…á— åA hea–é·ºtà 0ÁÎØ[7¸ŠYïöÚã¾3dC_áø>Üø|ŠK÷ÛuxÑnîœ$=îÐÅ¢Åá=—ñZ®¸ÉXw’€ÄyA$a¥ËW™ÈK¨nu´J»#];®ÃÐp•yë®SOÊÖŽòÏð[l®®Ðú6À]^—QG’å«u.gŸråW_’³c÷†Qþa'¦’n!#¾‡Oyo ‹]4nŒŸÇ¾Åi­÷0ùÚoµdTáÏ&!)dÛ.ÑÏóé'…h„ÃÂj«HO""¿Ó„UºŠP °ªj}@\—¦X©XZÙ[7Áû ÿä Q£¾¢¹Ô¯Yv²k#c&%Es"…Ç~ºÊ=}±u›ÚînfÒ—Äoê›nòˆfóí83´²¶3@pU¨`p˜^ƒ¢ü ŽNäÀ=Ï{ {»Å0#¡,[5Øõ2âŸã»ËŒG>pfpá["ó"XYBŒäÐã†ØñÎãgX b¥þt}¼Ö8µh[ÄOEÜôCÄÁöà -iOk V™-5Ã~óm앯&é» _]ÔHé.güÂUw&¦ Á¸®õåˆÜ^@iM9à_^*î0÷mQ£Ï_Ð6ký>>ac”³oµ«e`£ˆ3fè\hxÛà JÃêÏÛþuõ- 2Èmái†:0-SQ¿sNž´-ˆ, bë{lqm QéwÀ2Ÿ?$ãÊÑÌ׿z‹!kù¢õ¥ÔåD·žÓ¨6ª$¯œf®‚ˆ¸2Œ² ƒf¢r‘2LÔƒ¨P"?|ÊÅÇ^® D²Vjýõ³ /ÿ¢ï=›°Ð­Úñ(äã6àܘζlb´¾Ž#]h«[@®Å¡P~qÛ´û©íÒv’×íãˆù„}Úe&×Y"ö¯±HüâýŒpܤYFÙ&nËöOêó2Á›±Xí·² â}GðbLÈšÈ$f­õä¦6h÷ûäNö¨ž¿šLð$ÁÑžOæxã¡UF) G‚š ÐÁÿY*ü}T%ZÃÎQè5…aÑSù‚¶{pm[íîX1%´nëÉ’W ,iQCŽ;Õ­w8’6‰ùo£ú†ªLP<|¢ÐW±¸?iDî§äø¥b؉®|ðÚê$È µpÓ™¸ C'Ü{Û€­qàÉÛ•çL]Íø)mDTšZ˦\bÆ ‚æ*ÊwM®\„¿†EàT¾4ÃÅÓãv‡6É?>Â#"#¶5‚Ó?åÎõ]ŠŽÖÑß’lDUþ˺á0•ŒPè¯c_•ìɹ¹PžÊ8kÅÌÚåžÞ¹&<_´ÿ{(,½ýkpBèSÞ(oLÁ·Èz«,»¸¨| 97!T¤äØE™â†vx†=º¬ýä`bÕºZÌÑˆí²–ŒE›¹†©Óó³Ò‹=2r¾µë‘gáµ5Ü=¦RƒIUG/ô€I¹;£b i*S”-’&A­¾Þ8uR<ßÿ9·FüUûÞÿ4(côÀkºyí t3À¾T–!ê®êµçEåÊùÝ0‡ÄvME6 H˜ÿî•^|Š’}”~çÝÊv7œd¡«˜e!Ïr(Žë5åoKYQãûNÜŽƒ6†á$¾ U„(*3Ñ‘Èz*›D°Pt~}Q/œg)l·5ÄCÓ÷©$Í“¹{j›ºçúZ‘é®* õ/u*1- „bÉ8 ruÒºÿ½<ÌEwúÿYšabwl¾`¦?I¦÷­Éžw[å+^8žƒ Ú]ñ#%ŒœGÛ%{ßÛ¢ßÈãf‡÷h-—.2xÓº+¹¼AzTjŠ: Ò©{†¨YÔ½kþI%cR[™ð¨Õð´«¶Uex‹spRtdÅWbìF0h·R¹k Q£@M–3M¯ó¨KJ ç‰WÉ_J忨‡IdDÂíHׯˆ¹+tþãCe£ŸheƵÆà®Õ^ gz˜yŸ±WnôŸ‡š}Þ3Öd …†'DTȃ³ºC9–Ž•—îÁaDp Þr^¿gsN<ŒO)TÕk|+J’‘4J.3‰u “máàŽ—·4â‹©láoµ<%9`ˆ%sµ¯àÂ…°¾•Ó z¢éT)-Dӧ̽¼t{@_hÍ@ œë…y­»kÁèÕ¥ÂæèLÿ¯`ßçbw•ñ kþ¾Øé:ô›3 ³Ý†;¿lÝ Ç… U<|÷,)ÛüN!è“X¨±áÂÖ«’'ÂAC™&ð+]3ä~%í×›ò[aQÇÞ*?qeãiÖÎäáäoz´¨ÙAû>µ´-NɪÇAéS^¡½äÑŠáA‘"í®‘ééð¨yTœ¦ôîª*_]WØø»ãu¢1Ž«â'¹61:#"‡ê’) ý‹Å6! =Õ|¯> ÍÕ˜aËZ7P¿ñ5sÿĵТÔ–ï*Ïd¥<ËW¾7irúS}óÂÿøŒ4äÅ+ÍD¤ù¢ä–†‹£Tݸ›V+Ž 1Zëé©m9§È/ŠDKꀾ0š“8D¾gNKÍ3¬¡ŽbºFv† ,º”$ \Ÿ’¶4;Cœ±ñ£6=&_ìW4È¿ùùFVÒQƒ]Ê?¨ŠG^ÐMÌéL²aAÂQ7?¢k1¡1À·§µ…gEf.ÀW‰ÄBæ¾ý­¶Ò§Að5wçª{¶<™úÑ¦Š 4–¼§hô¯€צ[º:«• —ÄOñÂÕi¬H æà#1§yà¥$~+†È>ƒÉŽÇ¸btvô¥Ë~a6G©?®ÇV55ˆn()*B"c‡¨I\#ÇÚs‘÷òS oÂ}?9ή>ŽøkÕËÙ ª`Š?eÀûÒLÒ‡jÖ'6ÖÌxú{ŒBøDR­!È—`LZ%PøÛ0Þ›ñK¤‹fw Þê€*Ö#(ïqŽÍ¿×P:PpB®,r‘8m¨Ø¯,ŒÕ'*_5–%D|“Ë7DíÓhÓ©ÿzì‹ix·‡!oÜJN ýßo‚“xSd¥ûðгíZ §Pæ2žO,û×;ÀmƒÅvTvÓ‹éRp‡Tˆÿó—ܱÖŽ!ö‘}0ú6úî˜ö"ï1<ÈC1ßðÀ¦¬tìÜs±•f«°^¾)æ&R0øN¡'¯…HvŽŒ—uøÀ]úK Ä Ä÷Ïé­{][wÈç8š³; –€T±­I.Âé8ò{…¸^dÆ[¯Åß#ÙúÛ÷bIëG³ÛýÚ­¶âÀÝeD¡:(3cú»q®´¢šoåb¿vHá™6|Ïlƒ.º[(·¬ +>;wÅUÔ¯m7O%ȸ“œfe½ËÀáà–VX(˜ŒMßãkêl¿,·––Q$¯…ZòÏøî8Cn|hÄ‹¥/µÿiQU¡*r„i±Õ¬ MAõtp~k¶å”=4™}¸u±OêׄÜrc߸+/î¿¿©Qª?¹™´k9“8ñ¸ò´¸%;Þ÷Â'Í8ü€—Ížu‘½HIn‹jh™éØd¾=سGêÑ G)åtší¾dH†D=I,…ƒw~q-®~YÔæ)wáuQ„}3åÖ©<Ú `e|Â1ÆñÙ‚xò"+K‚CÈRÈGiÑäodï<-&nÒ¹ á4£Ø'‘x¹ŸÓ‡[ÎÓ ~´{€ ©n"qM€ì$¦d©‚`l´³GcŽÆ¸YXDUü§a__5I†”èêðïxÉA9¢¶ù †b©Õ¶µÌw|—‰v&†}é>Ê%K¾P‹Nänà2<©´jØÿmÎ1 &ÿ}ÌKڒƯSA“  ˆŽ£-‘)©iÀƒçž;¸kÀÏö^”•Òån0—°FŠîº‘YCîMd蘩ô!=0µƒâ ø ¥WnA(9¡âŽÄG±´xþ(ÂÏ™]Èu¹Ièì&׸ÐNŒ£‚Ò†ŸÏ!06­»ýAÌ5¡_É7íÉÇõÙÀKµ¶UÛ®3H>õ!.°‘&´¬9od¸¦S³Ù’°õzë+ $qcxìyb(ð T.ÀŽŠÝ³|ˆ $Ô-øœMsJ Ò¾°²œÍ¸RN P®ÅÒéåmhýËf„0fä˜È(ÍåQì³ÈÜÉ0$ù%ØÖ •ˆí£¡V]­ä½lôì™ì<ôüþ½¨‡ ð«ÊLBÔ˜vŸ œùMüåÞx†™Á Ç&ûêT !ê—JAB¼¸'1¸%*!ÒOˆx­â¤;ÎgÜÍNsù(†“rk±àÓÃîVá—ziTU¨ð‘.Î$HQ)Ò}Ss“¼dnú –W «*ÔÃFxù¥TšT[eO¾À:»6xvüß4.êD8𼫠°©¨¦ÒÖ†£)2žÊärÛŒõ«ž¢ 0 ·¼Ãô`rá[÷jýK”=‰Ö9fü˜ÙÊ2¹y3„*½ËyIQ’lóðÜâ Bb„~¶*¾Š÷\-“eÈÅ*FØ@¸ˆWn\Ÿa^È0£ÝSnçYƼ™x‰@ø Õÿ‚ÕäCËM¾ðÓtÍaN… .) ÷UÍ¥CpÍ;Îå®Ô0áì9žË¯Gf³{N¤u¨|˜·ƒñÔ3cÇÀÊÁÜ­úBs]š˜#W ¼ˆêꞈªöÓëlíâ`ˆ‚Â35Vq¬É oZY¦kN€á#‚l¯ŽÚ[²¡™G};b ³-·~¢âù.±‰æ» –?îúɵêäGàÅÆ]–Fa2N· <9ú,!}Kž’Ù¸9‰WL“TÜJ“í·¶÷",p£|ÖZ¥=bSÚ\­BíÊ¶ÇÆ„CœììÌ` ¾KŠHq'dƒ{·‚ ^üI F˜O3CíìÍøEˆ·(4¤©ÿæÝfOZvŒ´ˆ høõüq´O'­g/¨£>ˆ„DôÁRIsŒ}FnÑ Z ¥Z¦z6C¸ŠJWÕš.Vݸå:˜%6xTÛuì ©ž„c„óDi|9œ×îž–úc|_ên$…¹Dzý3IÂâuĪǓ)õ¥ÆÝ£„P½÷NSsüÔ}Nª*µïWåöïÙî(造bX Ÿ¡È8Æ7‚E àÃ5+œ·ò¡äª=šDàg#]‰]^â\~.d.oî_ÓËøÿ?iXÒªm•ž±’KÔ: "ÉÆs_eÄÕŸ¶}çn’·/jG‰ª÷D·ô(ëÌ9èŸ×Õé邎9óy¥gº³vB‚@ùÐ_g4Š<'iQÅ:Ãí|kÕf÷nÍzÞzÕ¶:YV8sÔš°¹e¾Á¨±PTQ%ûÛ8AÛ+-±¼ØÞoY–kà«r34àѪrÐ^®è=Eê¸Âë£ñ þ’ º¸H^Ùdf® ÏèîxŽªpîum‘å’—ήtSf˜õ)tsŒ·ÛNš)ñ\ã»Ö³¹Wi?ðn|*££ùžž˜H™Nîe.<ãŽHÌH2:íåð&ú«g!…> AÑ´¶þmÜŸ­¶žAjÖTç{oˆz9½ÖVÊ‚»ïcÆá^Mã[Eª@6xî)»IãD:îñ(Ô õÅèk„"Xd³¿°&ÀBÙtÊ“m›ÈÏ,MŸ'Ü÷.Øà‹Á=©[“§ÍbkÔ`¸ê¬÷])Slü`Ñ[HÝÑþzsÜMYˆl(ï?6HÒaÿ¨Ý íƒÙœÓ›áL G_ÍÃܵ,Ø#.+¸Ôâìvw+‹àc2lCaA"öÑ` N@öL¤æ©¦¦òÁSï{cìLÑæÞz7zR–Î'LU^Œq¸†²ùÕË]2¹?О / ³ŸþäÊõêm£ü¥vd ¿ßŠªwWºÙNK,#põ@dïÉ·9>uè ¾Àx›8ÊQ<³Yà™ÉpШâ‚-9i~Ÿ-{¥EC»} œ=ÙŠ9W;a]ûüüˆŒ÷]FÌÐlG yÄþé9ÒA–!‹Á¸DгÜÌzQçóC›°Í "s‘Üa p&+ V&¡½–î›QÙ-º“\¾‘svlM"•9Íuë¾@eY#Vo-n}ç-1èGÆ"Ûä7ž‘ЫåYÛ .eÑá’RÕÊÅmŽˆgäÁ–Šñô¯ƒ[0]ý€ Ø ­÷ö|¼ö¯×˜"â¨4–vøc4]î´D¶Ä›{ÓU¬1zÊ~îü&éˆÿCòŒë+ö}¬SÒ÷¢s9ú5¶þ5jtŽÁ‘övp˜s„„õžŸYýU3~Ú½¶ ‰]‚yQÞl˜Tš•š;“f 2ØÊN®<0µH¯Þë>(¥‡ÝÙnj³7´Šó2‰zd— T >Se§ºÞ”U¥½4Ñ6‚Bðj8ÎíuÉâÜÖPK ŠÛŸÜ=÷ºšý]4Ñ¡’•w ¶SÓ”uPÿ…XÕ¹G÷x )m“¥Ôݚأäø[áoRªç©_é&d°±‚Ö*¬ëš‚¤}zDøÌ,öîs2€NKŽ ü”;€Ý¸Ë¶’õ{ÿ& 4¦Aæ.6Á‹SµÇ—g7 ¤ægGUwŠ¿fn4bY„Eq@oI¹?| ÕhÎ-žìŒØA.ãs눑ˆö× ˜¥J@]¨çd—5ýÉ”{ÏaN®T›B¨pƒ`"D»î¯Š‘ã ÃN‹îþ£!Ðs Dñ¯ö‹‚NÂ÷¤j]üùxÃ¥ûʯÍÜ߆œâú$‡il„^#yÔ´-@WšªR=ê/® OK¥8ýÌè×C§KµÈ^AØÆ€\[‚9ŠÍ4¿BÊ3žëÝŸ'Ã$‹·\竊˃§ñçgO3R¥ÆçÈ“I&#Ú}0½Áçn¾+”˜øÅyw4x¼Ú4²‹³;²éÃdN|#Ésá8™š¡¾,YÚs}𧪤âˆÊiÉ–¼A3ªä^vi>î»—AGé)äLÐ46ËŒe¬u"?;R𸽡°£ÓõVþcY¼ŽÁÒ^Xs ¹Rl¼|d–Ç|¼JT[—OE,`h:â˜‰è¾ š~é˜ÆƒEi8Ãy)]¶~ì‚«ÆX>˜úòZׇ À ðú°õÂ~;AÝ­Kësî*b8ÝPüÅ€ºñhŠái 8;£q ·¥…Š[“n¦-¥¾›þ]‚epj‘süË,UCâ‚ã:hŲñH´õXÀ<ã„ܱcžÝŒ/ÀH6¸á®&ºLÀŠ©ÒOU9 üûºr•‰˜ ¤9ŧô½/ ˆ7e"‚²êš*"7Êê9±öÛ{ÑFæ+Â'/ôt°M ‚%÷FeHòµ³mç›í†½ÎC]T#Å 7û¿:½ñ$‰RîÇR<à®[ã«<ðšX¡9@.xßìÊT¸ÈDñ\¯ÖÚM´\ÍöéÛ-úÒºPć·Qæ\®P,ªnBZÍ<Ñ;Ánpòõ¸¶:;¸„@­ra³J AûáfÙ—‹6–ZLúù•ƒ9FÇ{U8úŸ-ºUVe¹gOGuZ*¯¬cðuhöª çØºc“´ÐUÖŸkžhÌ—Î÷ws‚·rÛYaD™1ÎM‚ÐÇ”«‰z ¶’fÐýÇGlžjèj©‘>)Î) *Ï%Õ]X<ÐW•÷ Ò†]ôóÃ=–b„šðÉ‚þ3C¥®º=ײIÞ„âv %v \Xr½¯œ?âÒ;ŠÔ6äOþx"—°ÜXv }&Îǧ¶-*诟٠NLö!¤ ?p×òm!¹ñš÷Œ„»dìölÅцŒš•¥ë0^ë9‚àIti»(»ðøÄ,fX£p,l{…ƒž@©¤³tZ¿áE!=éjF”Cöê:óGÙDÖ£ÊѼ$á}-ÌmRï8v7vÜöãç¸ö›¼¶ÛÍè‹J¶[è]Hšl¹Ê¼£Q~ZjŠIÓbö_ö#m©Fàn'Í„Ãc?DHâœ-39i®âC1B/™· 4:H5Ô©Ã^à7¢“ñÄš°ÝT%Þ¢‰»` œl4Pr_ð|5Ÿt¶gˆ·Ñ§‡H‚¡ ª.ܡީyã>ñmd•h·ÈG<á „uИ¢šãå©ÐùçÊŽ^ óÆÖ±I“3ºú¾ùýy9ص›À+ÉLöbÆíèíVÔ­ôà2¹ @Òã±E¸5|ÐYªãc²ÞYWaÐû´}ØÑ÷wǰmUo8îÞæR°4|6Ü è·ë¯1G)+È6䫸ïÑ7;%ZÊ•ŒDìVAH a:Ÿ?R¬§gHèræ3¯vïŒ'‘ À.ÆÇ¼)yjßÇéXäŸíCdÆ í—¼ãJÐ#ž(èYÿSý­"J'—ü¶pl900ÓQsF¿"vUÚÑ›>' êËIC4/!Üæá:Ò¶÷Ó~5¢£‘$›"̃š‡nÒx·PºçZ¥nÚ5kãÍù1î´RªñÀbÿ¦º§NGõ 5F0ÂGŸÉß»C‡Ž>õ'oÍtAJ“ìõ¶Ü „Fr<ÓE¯6Pì¹+qÛVÑZx•œ<¬q|‹D³OH³Æ"¤R9Ni¡=°ÔOþ4}.²QEDùA¶­r“Ñç"Ì{ô9ÞvŸ˜Ä½bçÈ’qˆ1.¢7}4Ì1Tô'ÊŠw¸”½¾+ÿ?¤”õûú©ÜÄq"Ë8á̺œïÿPຘފàm€3a˳Ëâ=)€}‹DŒ8²‹¦AಽT±­ÙØaG×o¼ýk ‚QO+æšå³´þfÆM(nãâ‚´-"¾b·"µ}«ó}U zþ\šÀÓáì­R¥oýE{¡ Íä-!Py¾!ÙBrFuˆ¾$Zaœ.Ko"‹ˆZÉ)õÈëÍ(¶_rcͼîN7ø8貽̗Ñì*›Å^‘q3¬ : ¢çˆƒAÊð˜b³4<~ªyzŠ|èže²VX·Ô–e6èl‰ÌTP‰¥½ºÂæ¬ãlÂÀÇ Kø›Bc a*÷“çè_\0ZŠÍäÍá“Ì“®;Üpx·3%à$Þ®‚.S…mEŸüøž¡þOuÉpnPÈB/i+>Ïbý\¸çs6fäåëâ«5|‘¡/ѹMmjÅÓ»¿ÛhŸ¢`K%¹­ä‹d¯Å,+ÜÓ`Õ•we)™a×¼_®×ŠB·©âd $¡ÜAˆ+>4IYºäËWæR®UõÖ%ÀÑV7 ׇþ¬eÈÀ5®ÎKN}ð qGDÁâÛíc?ÛÕieY|¹}eæƒ&Íýæ僶2m_¾lu•9R½ñ'ÄÈŸ¬:º¸J–ÂÙ¼TÀí³þRä#J&9£ÁÜ•îøð’w(1$Öô<sÚUäJÛ0ÄJêé,}’üCx"!ú½]ò˜r¢mÞíÐqÑ”½%~P¶<ºÓhð…N{xI[þQ×B\¦÷žn÷%r^/@®U2UËFø¿ßRf.(^H±÷ø0_öiewUÈ{C=yg'U4Ž©œ ¯h¿W«%´(pïKØÎÑKåŠ;ÆQI„¹e0¾tÒï^[öÿª—¿àEh©€š9¯Óšy"S—ü†70b3û¾.+e Ês¹½Ç-»¬ø‹É*+¿ñj0 ¿«4§ºc±Ô>¥ôıêw|–0~>T_d´ —™Šð ÍÐ+ Ázm1ýð˜nîÚ« ™'4·±i’Ù9ÕÖOá*gÌ—-}ð”‹ ×ø(`ËÉöçŸn±€¯žÊñâ* àY×,dg¨Þtq`±%{¥wœ‘…Ðy®…ðFãÁɳÝŸR%¹ÅôË9D¾´ãËFV}óŒ|íÕü3ŒñŸ}žð: Q~“••á‹*G&Ö*JdNηäk@¦˜ð˜lŸ%#c¢f•«¶ðжzVà‹”GŸ_ ßÿOFbÓ`’áxÝX(jÈ ç{]ŽwHyªNkÄ!Ýý­°xQ P·×oÜ·®à¨¢ÕºW½^¸`›v;•ro<ɲ“CÎ… óœ ½,Ž ×ØÞ!Á<%ŸÔ§Íý° µIá%'«S†¬~}!ŽHtÉR©‚ï\sñ#o—&ÀGÊÄtwÊ)€/ÏÚû¦#Î’æ³@!CLÏæ¯ÈÝFÆŠ,fGªÌ\'­‰î-žÏ½ûë)©ôÛþŠÇxÈÐãŽwLóš½bs˜þþЩZîÓmZ‘åÊ,ø#¶m¤èìs€ÑüT¶ËÃøa7(ä×R‘¼GU ‰ô@‰ƒ5üÞ®ÊúdWÝÈ1éÚçÄ0 *¹Ð™¾¦ìÌ"ÌŽY.YݳÀtžbQ¶©O(y»ÃP JCôOÞí‹:-¡Óhó x»7{ŒˆFS;ø'5ªQKG)÷A­{ÏþÿKFXÀ‹Âè\¹Íë©ý!))›xçÔÙ#h4²ûg2¶»ž³¶»7§ó‘ÿBziÓ¬‘²B¦`(f…«ÁœÖ(zHÞãø¤z(Ê èÿÀ~Ú¨è]Œ˜Ä eãmcÙ°<*HŸ-€oƒÜlxs™ é$«êw‹ÖÉ€) âÛLmz=̇îð¾®Ñ¿ïÔø<ëÌo(3(=>pŒ9@[¨rÆ|N Z%T¥ÜLÜ<»­ñ=oRbBaÂ?kÄzä&.’X6-2§ëkĪúêùTÚ©9ï%úzõsgNÒ½Á±3õºNeKÂwÔu6)}´â¹9¨'Ìî£üKÆ„8b°DŽºDGÇ7pî–€ÏT®3F* â :ÿùÖa“k¼[/wHI·ÕâŠ[V°þÜ2zKª§ `ÄyMwvöö)ƒ^c ½œ f»-4.øÒšmS¡é°0XzQFÎl.«¦`y“éQèI3õÒɳæŽc];;¸Ín¢¹A6†²kã jHÍ}ˆžC•÷M=šˆ›Ê¹’¸¹<^¬Ê*£t>1,ÃíÖŽ:òˆ$y|¸2ÙÿóŽH;–AÎ-5µ­È5j•CÓÚÚ2?lµ)ýÒ7¤“é.Æä½©}ÁØ–APÃï¢Pù¯ctH{è7°kÅ´S«Á/­&yÊ¥ÇÊ/{Ë%Q[£{* H¶ðÄhÚIÉ?‘+šeGÐHu„1ki@ÎEcƒåH§àYÏŽD³ý|‡(:‡³—†Œ–û|³›YÈ I-CWˆ÷¯þ.ÏÙçºB“âA'£òËt!§Ò±Ñ*$Ö1P»\Ó˜ŠiTZÏV迸{ývéy¡IEM¿ÇǤ¿MöÖ੊¾ îAlÞJ–ó÷“8¬3&Áߊ±ó/,xZ4ÍÓÿèB›–@¦”_ƒêÔ´% ºY¸‡ŸÀ[ž>ú™ôâzzÉ罟¿p~Ùd–acTŸÂ)=6Rï– „l7ß½-õîà(_9Ñêù¸ŠÖ©Ìjæïôx¿hï §•¸ÌBwypdøÖjÔò wc«VˆTó&« Éøš0mŽ+ÀäqKÄ´/Ûs‘Jã°IW%69R…Nê…dñW‹K¸~*eI G„I9C—dÉ\š(„¨ÞÅëIé^Ö‹ÖNM« ¤+ò'xR[´˜‹ÃT󙧇œÌ5CõÖ±ðþð¸/)•½ð.Ž˜_u:ÜJ­…Ùx¬Î:ðbŽí¿F*¾WÁ€2e“fÙKþ­5´ùX™µþŠ úµ ÿÎùóépqêÚ†J\½05çÏdÁ ÷¿;fôª«µ—䇄Šc5.Uÿ9Æ…¿€½ endstream endobj 1004 0 obj << /Length1 2044 /Length2 8974 /Length3 0 /Length 10099 /Filter /FlateDecode >> stream xÚ}•uXÔ[÷·%$¥‘B$„¡»;†.•`€¡†’îFº¤ARi¥$¤‘”î|ÇsÎsðy~×õ^óÏÜk­½Ög­ýÝ{?¥U×b“4w0…È9ØÃÙ8Ù9„pNwS8ÀÍÎõô©4 †CìeÀpˆ€“ ÈÉäâàà€áBüQWA„骸8ƒ-Gppñ¸ø°¸8æP38Àb µÇþ. hoáàäûÛnîâøŸ+æŒ(`Be Jš;ØÛzÌ!ˆu.¶¶ª`;€éoaÿǶƒÚzüÿ"ô PK+8€Ibu±û_¯"l 5“´·´…8þ6Aå îsu(ÜÌ ‡¹@þ6ëØ›C`¶P{ˆºƒ3ô÷PlœÿãÓ¶‚šÙØCœ¼ÿ¸TàP3„8ÝšDôø ¯ú_!;Äôþ“ìl±‡þÃæ¿ \ÿ öæÿ;Ä|ÿšPGIUNåë?ûø—SÖÞÌÁjo àâå€a0°€A¼ON!ÞqGt d·w€#–]àÞ Öïmâã%›þ&>Pêžø@é{eîI”ý—ø9@¹{âåï‰ T¸'nPñžõ@÷„¨§rOˆzª÷„¨§ö/ ê©ß¢žÆ=!êiÞ¢žÖ=ñ€Ú÷„è]çžZtï ¡EïžZ^ÜBËËI¡åÕ=!Öÿ%„°3ƒ:Û܇ ’™Þ"Älfãl v¶ú×ʉ8k3ì¢SØ b ±€ÿaæýÇ ûë$ü›•óo³ þ_ñ‚ÜÿÚÿg¢'³‰!ÑÌÁñIÿÛ Ïo‹Ý}o¿ÐüD”„Üg@Lò_ø~û\À¶,Aônq¿¡ÍêúGŽßn—?†À±¼Ïˆð[þ¾Å † „ÞÏ‘1+G+ˆýôDì˜Íˆhý^"¢GÛßGþÞ”Ý=r"îsó"rÙ#®Š ܈Zö.v¦¿/Ë?4p"†áp¯‘ÓáUœœˆÎï݈Ž`Äþ¿¶’‡óëo$7B‚#öוòo(ß_6¨Ãývñ &éhëòGcœ‹Ó}Ä\àsÓ?6ŒaýcÖœˆîî3ð"œÎP÷û%ÿóU#à½,^Dp+äGt wsøc"‡ËýGЍçòû:v6s€ý9.Äž¹þˆqºýqDIÝÿ@DU?1ê×÷š™^C`+øï[X µ‡k{8þû–ü¾–ÿbοY s°èAÍáV†¨€GÍ]ŸƒqB8~ÿþóÏðÿ^óRRîžl\6.Ä~pò"& Àåý_f.0Ä®ÃÿziÅØŠxæ wˆÖô¤ƒ™puMPëy•$…ÛÚ ÚÂR{xìËOa¼pÆ©O+zºü˜“”‰y9Ù—õï%!£“^,»çCîþóÉ Ùð²ŸV¤öÙr?_uZB¨ÍžX󧄯ìÅiPá™è£ê?KЛ¼æïâ^¯øYpÓî¼þJp`(<ŧM¦€GKfµo#G¾¤eX‚¼4À!„駺h+ê ß ñÓß(o%„ð ·:°uøÍ?Èò³Û8ºý¼Ô™è"TF;Y%Òîp;3°¯Ž¢4ƒaJeìç8Ƀ”Å«ÆLz€‘"Þõ%,­­[ÙMjüJÍÝ2ø³®ÝÊ·Ò`—&ýàMº£‹ÚäÁ°¹åG•çúÊþN]Åçý³÷§ŒÁŒvÜh8 ç¾,ò¨£;øŽ'|Yw–nåŠ'¦+#½XoTRã6ˆ¶˜;)á;“ ê•©g3:ò¹å9ž´-H—o‰È9Ñ—HäXzÍ6(²BÁò² È. çÖ=æ¾–‚, ÍD·^‰_ Ù¢¢Ò" .õïï@Üsùü_ÒñHk;§›bó˜ÂOrg/žo;\òˆã^<ò 9xtGØA_¬5 SùؼÒküQý3³IH/±ýAÇñ¸Ä×+­öfˆÐÉÖfu­¸—ÖšZëÚúÕï!k šæ<¡†xFÌô­ÇË]öµºòÂ1ÙŠ!:˽PŸ½sy& ST^Å©Ö̃ÞÒë ·„ÆXüxÜtú®æ­ý˜”×ë»ÌŽe7Ñ4_+ª(ž$ºnZ—çšöÒúÒ^-º)~=ógÇ~îÔC[,ÿjµS<™fçkÑsóIÏßÀн‘Q«ªr›I˜ ¨V-Ö}ƒB6„,4:c–W]¸×âc¯î‹i»“ ôŠ)WQ½8ÊÁBQÎ5m)m%‘}ÿú½¿tâ„ÝÊÇ\Š—ÚÈeÂô­oC»µU§Ÿ”l6¬32¾Aó"ë‡×{eçìÍÔÇlDvѺܾü´ ÎG$…ÈßšÀµÏfóìkr3/û6Xr&¼Ž`•*œ‘|ªä=Uæt~ŒnPJœ´>£\ÞÜ Œ_3–45AbÙèHæiUñp¸Ü"›,ÆŸÎ_Pbºâ"¡ºà,Ã\ÒFnصPßH͹ ¯d.Ï”®a\Îcvþ#)ú%$S¦ž\®uÆÏ«8j|Rï}[þ1‹Y¡ÞçÜV‚½DкڌϺ[´¥ŽewÒ¶àŒ[S–ßø”ÖÑñÈ]¹ò^8 sÆï®Xcè$Àþöɳ¯ßµ4|™ã!Á^'ù)íhªùÈ0£bÒ;5©«JÿñÖWûšXKœçFZRÍœj°<ÊÉï´’¦š4nýb´¯Ù`‰òëæi¡ ñ÷-e†—ÿ˜Â•íCµ2äA¡^Îpà/s!/Ôaë½m½ÛJ´ôûu «›¼Å’ì‡O|}­Ñ0o.(HÞwFÿîü̼^këõ¹öéY§4œÊÿžQÙ“i4E”®¹nœŽ*§d„Ê^±\"u#^²SjÔ¿9/|Þ¦…×BìÁ C;X M[»Ý@=ŽìèÎt&U*ïq±‘ˆÔŒè\ˆ?S˜´A]Ç”¨‹·çè_caFl­Ë £êדvÿHFë!Ãéìj&4Dv—uçiÙ8£¤­ehÙhöµÏ»&5'M5#˜²”#õÕr¤]b2ÉQGâZë„Ôó+LLQº¥ºI㦺åÍ¡x³¡qãúˆ2ó`Ö©1áþ Ùøº1ø^›õ•/ˆV¼¨BõÒžüd€üžËÕ):‹rå›)Ą̀! Ÿ§%š^¿È; טj-Sóב£©Í Ñ m#] [pQ+$¾paÙšŸbá`6ç–eÿðv KŒi{xí›{<Œ,üÚl’µyµ /Ý"Îx©É»ÒÎb§SçɳIËŠ@¥dûàÇ@mS>Ê9ÖÖŸýOVÎgÐËúA¨4Á I¨±Ûp¯G²Duü˜‚ÄW¤'&ÉŸÎÒªº ‡© ¥½G^3`é–@1õ}{ɇüÎoY~yÛufŒ”{^çU 0i‰ñ¯|¢æÛA›Æ¸{Zþ~SÎXÆŸd§R‰èë–îüšsîl¶¢’†ó üŠ‘¯:w·=¢Ò¶µæ9Û žö´øÎÖ 5I¡uj(Xèk}£&žˆË›ÿ@ö}2ˆÀbÓp7âÓ—†•B^TC#_Köé°ÃÖ"‰m×ø€&$ø: ÿE!}ÆO5µ=¦#n?w=õkªF¬ÉЧ/oæê,X˜}¾8¨åµü“kŸ™õc…³èŠ[uví“-o>F~ =²%wÍûêW§òIÞïÐrž“…ˆC»¢K%#'ŸÆñEÀ9ëôúÁ¹ª&·9Þ‚Sà:@Á[ç‹;ü¸^ïðW~T%ž Œ±Ýc·³¨”ʬ@ÝåÇ…ûº)ºO¼Ô× aR/è8ËÆ…·‰¨-·¦Ö”@°¹è÷´š;O"ù2ž7\-ú=—f¢·ÁÄ»*mÏʃÈÒ´Fs£Uè½ýÚœMüË’!i‹zN;nä2ær• ôgPö]:݇áT™É®vZF_¾™Zâf~lv'÷j9׋ûqó€.5!Vºi»”!º¿›ŸÆ=%o,B—…;Ó:*º™2b'ëR™3 еËkÌ{J_Å&¾pþÎëÑô§§DýP¦ZµïKú /7:X¨9‘ÛXBðÀ”gÈåaÃÜÁƳÔ殺U™WL·šy…´z¬U.PŒT§¹¾7-¡T>Uš(E¡G ™ÙÞ€$/Úbr#KK.SÑ{tã@&]e†bë UÇúO|å$ÒÀÚK #nù»½s?Œ!÷X6@ŽÿMÞän¯˜Áwê†]Cކ›”Ÿ­-38Vð'6î8'Y=È,Dc¿È¼¼0•9’@¹«N$‹Gi%ßš>bTeä4í×ïR{‰ßÃÚOwj:rêXa ÙuÄýM\²ç‹šfû¯W72\ qT'¯!/¨ûT íYp97é7©iá'L)çÒ ¶rŒÆq«6¦É¼[I5ºäaÙVƒR»KTcýeyåþ[yok¤øK£7Ôõ§eì”ëBÏ™«ßÕÆ¼÷5+å" 9¹ëX粋Doa‰0ÖRpÐÙ|Ó7¥×óÉ:êW?èÚ(iá›™¸s,œZŠ6m7¢‡g„ï›?@YñÑJ±ý¡Ò˜mëò:³ÀòÇrL íôÝGWæùÖº´Ü€ƒç1§† 9É‚~WŒ}§ C­6è¾CÎ@a}?åÒt1£Z?¤ÊÂîÇòip[æ´ˆ:Ίÿ/ýäî§îárÑuùï§¼œ{уf¦Ó\¨[ÏC¬Æo™ºŸ"±v'&\ºº —®M mstkq2Uæ“–eÊ šOñÑ÷•¨dÄ- }ª fÜ)¬O™Nj/´ ŒÉpxòÙbE ÖîŒEJpLs†Oî Ûëðõ6WUû£UªÖꪬPfІ+›enS}—A´ |e¢ñÜ2CºÁ“ì³ ù«áƒ ëëy`$gL4Wòð$jDCuSúl„Œ©ÓØa'tEÞ‰ZÔö¨À÷tMè¼Ij=Í`BdÌÿ5¬©ê( ƒEoÖbªîö ‰¸»ƒú''á»Cý•;:j®ÑÝë˜PT9¢‘$£F&©qpC—wí׋9ááp´!ë6º‡[Á?¦QP~øñŠÈ¬ä—5Ê[ùÔF+óÚ˜ÔoæÕ!6Vöæôb¯cŒžü|÷üé´$¥%›bíîÛELDRµÚK™Ü¨M^WŒQ 3·Hæò°ñÌ'° Ìý½¦ÿÉNMˆ¹ò¼6Ónû·Dý…sMƒm'´á§†½ ÒwäV/D†ÒJe©(úDfe -ÚDJË nŠÌ"çÛI@0{5¾C« œy d…ÙóÇ€¥E4P1”/äçøyœØ>~†uGš€„<Ö™I_È^|„©¾™GêW{1{W,åj¶ÙåZá%æß.¨I¶úø5KÄE¦ß™T3a+ Ï5“û—úÈ)HñµôÛè)¯ùà„p`qÝL¥$0õ»IöÛ©çóÛ×¢»±eÂçÍãÕ€–&Çò<Ò°VàVÿëïWk.=ãS8¨s,mxja/Ó*+Æv£ˆž% ¾•‡œí<*°³–8ìw5 ”n ^Š·USè•:ö •ô²¥÷v¥èéru¨$neÜÙ•ÕÁ£T¡WX§’'ï,« ~ T…ï É'F•ûЮB-‰/Å]‘-´Ò¼Kð¿Z–Ulh¶d{QºhéSµ` 4Í5jçr nÛ?V‰o7 ¦5ÙÌ@|˜|mÞ½D¾À(wÙßèwÐkQ1~2¸®ÍDV(ÿö—ÙÛË`‹¶4ÉŒ_”‚?–?Å'ÿ$îÿ‰âúå ëçә¯’üa\`y§„ð·ëÒi™=…ypw~ÖbrlbyØOò‰¯Ð7læm5WÜuˆ™Ú,»«b›S •^aÂ^ÿ.‚V ¥ÒœŒ–"µ@’$6ÁH™ŠÕ‘)7ZöS! ¦ŠFJ=œÅ´áÃŽƒœéÜøñkø^,F'Ò¨Fåk*Tòáp^tŒ.s=a!ê%Ôú*J‘Y‘çk¯ˆ­MíFþÅ72W3—ÛNÓÚûýsöü¥ŒÀªÆ`rnPöHuÆâ¼SBÎØy6),úÅCá¸á,ûrR¾üý„ýÅ´A¤‘ÜsAª/Õ2X(06Š3qoàp.Šs>͇…„øúo>õ gY‘[ÑCK¯³¹å5=Z½z5õX{-Îl à=4×ÜZ+µsâIÈèMŸXJÍ!»ê–/òcPÇÀ•¶CLY¨KkH¬—›’ªîÒø"çjîH¹G¾"²’èÀãJó<œ »Ëïý⇮MþpèŒ^Y?¬Fý0›¦9çUÏw¸EˆG‰—×£q×Z ¨RîåÙç¥H>×£ëµâÚüâ‡Úsží­{ºã ¥¤,MRó·)rk@ÌcÃ’vÚçꪹ¬*ɳsµ‘ƒD™-hDR/|!FÊâÏæôñh—ò¯"8"^/dÊ]©š kÒ~‰(i×ËÝRdfÊoHã#„[™t(ÑJÇ0¼;"F)A'¦wEz"ö7à ³‰²µü ‡¿ˆÁÙ¥’Ü´S™×£¼fȯ¯¬‘j \Ç/' êâwAua¼4P¨05=„%œ ×Öm˜8£Â, éc<[›ð´|Þìâ1œÑ7u€ÜØ´øÀ‰5¢oHv`!ˆZ±Üùèÿ?g%7™>%‘Ù,» µÏMÉ€OI…;§‚Vf1°ãüe­ªX`½Xù¨™Ð™VIŒŽ.×'çñ;¾ÑôÐòÎi½±Ìƒô‚ Åæ¶‚Æn¹äêæÏ:Äï0|t¥Ÿ÷ö9¨•|ccÇ–ÌÖ"l,$²Ë÷_ú  S„ ;ú‡™ªL|tÃÅ`»ø9Þ\—©Šï´É2öå1;g¨ƒ~ƒ¤=—¸Êi­ÌÛLå­±·Ûø¯S?Hœå…e~²F£ðxq¤o:·¤E¶Øßé¬ÿj†’çzÉ V¤=Îb,˜+zàZ;½4w^¶=ñÂÿôM9±-*ÃÐ3RõŽ$º>_lÆ7"§3²ý î”5MÝ8nžN£ÞmÜ î…%åf­ãÈç·ÖLà–™³ÊS“ j¹Á§]I¿”Ç×tŽÍŒ™oT½a‹’NÊ­Ñç•ÆÍ}øext&µI/uêLY7~£I==yM…‡‹[\+e±­õ8×,‹•çÎ0’M½ÿü&•6òi-5én0f¼®I>¸eÚ…ñWêÓWY)ƒ< C®|J˜†:n Ëì®Ø¶Üã:GÚYóÁÊá&Æò9æÐ6aPš:ñ¬ŽQ+rn¯ã:Ár>ù?w± ©ÒÉ x‡—ü¾û2ÎÉõw$uøgl&Ñ2z³€ÉM¨$* Òqï¡å jÇ~ûƒÇMpkHÍ«Ÿ›õ…ôd×øLŒ _&îËüS€Vü®8MRÔÙH53>>ˆ$ Û%eA5/Þ§”¢ûSõÙêa!ƒÆ·t°Òuá/Xa寧xôrß`—;‰¬œ(z²»Ä«Ã¤ƨY¦ûŠç°ƒ¢”~â3?ɘÚÕÿñT³LFyl™5Ó œÁ–.ºðÙó•Ki¦®4í)øö×ÔᨦÔZQÅÅÙD‹ƒÆ7·G›©‚˜ã^¾‰§9ÃĪE‹î¦Æ›²—„i™öáEgÇuL_«’¤äœ*'SÀdAHÜΡ¥ª)Dy¹¼õªQí®7òy^ß•^ÂŒv‚2½8«W†•Ÿ{È6޼px?ÓãýÞÂ_PY˸¡çtOû6‡| Dø€ð sŸ©–Y¥Ñ³ðH]Ò“à:ºª U–ú©k`pR…¦û šdq`HÞnnÅl”Â,DÈuÿXŠ«ÎÔ-K6 žco¾Ð'ïË+¡NE¿ßuöÊî¼ðrï„ÕÃôÜ»!úâœÇ¯ÒÞ¨f'”ø£uÓ^x¢¬M%V0ÛÅGQM-R6go|Ùíá¾u¶jzM¤$Í¢†½ªnõs9áüíÁfWÚÇíÕÆ‹I¨Ñ—³2*8p8<Ï¡_Ñâ\‡Ö¼E7÷u§égÉ´f­šÀªJÚÔÅñž¡nb¼_$¢õÚxŠŒ$=B+òEZ:•bÉ£ûÙ Ê~|À™äöYOC}A(aã\ü©¸I’õVUÁíéMÌ {’‡úü¤­T2Æ9M÷ ”RŸJ F(;<MOx8í½wøíE¹_x‡zA8!’ߣw4 I[ø¼>ñ$Ó©öÒ9¼56Øq+ö”åµ¢……¡ùÚïÜÞ4cÊQ¬Ë¦ø´“á¸FR-Q&<ÝT}W3HoÀ7v,ÜH¢,ßÖ£mcºøîWû{êCR+͈ѳ^”?åtK,éÖßþ¢éÆLA–óQµrË®àÛo®ªÀßY.I~rW*J´›ú…YZ¢âaÅðÙ(.?/ÎLæSP C¸ðé]wÍžËâì²8ãaÕ4&Êy*lÁÓù.WaZ [›ŒÈ]; Ä6øg¿ÉMt&Uö³^Ô¯%:`ìë#"i€g_ønÁ ^‡´g­C zQ«QT(‰ö’Õ/ž³Xe)Èq®ÈQQƒo÷¨sŠ<ØDq¾~äžúüú¥8Ã{ý®˜~ZVla‚“í=0jÏÊfê »JއÙÊïv'¹TªùœÅþ=Â;1ÝÓɸ9ã‰ö/¸€R ußT[Uò ±üRÒy(¯)‘Äš¾¨s,>ÚŒ){û\cßi\—ð†x ÷=gþdõ1ÚfQüí´üèõò|4kÿ– ]Ma¾ˆ< WKƒt¸î^§æãOMãe>Á’´3³dù)4t”À&O@©·Ì™+nßÏz~b‘‡vÝ‹»Þå]­Š]aVÅßš&JÕ5>Q_KÚüLþ Ïœ½*¹i–tNV™É©~à”4â‘Û…a²º]<§Þz™ë*¦Á[šãtwŽ‹Bô7u=bH?ùòûÉ#q©GW½˜ï¦fÇ$üÌD¯vï¬3o¤8LÌ>WÉ]¡ãm¼h8©1=24ôƶ“ ¯H—Š ñCÇi]†)5›¸Øís»E‘›­‰ÖެÛȘm Ås 5ßwØDP.éókÍL1ÚË3¯3É,¡Í¯ž&"5‘§U½“ÁàŠT ý2x-3Ùn>U=m.Þ·h9ƒ ˆ±+¦šªkí)`7+|jÙ"‡¾2¼<«mxÛÐÒýSò{®Û縗Yu%²K”+7L’ù¤shr.ZsÇR{6a¨Í_Ô’|çm¹ˆ5‹}ÖíJ’|ƒ'­[XaÏ~âÁDíYó*Š3uN¦ðß;Ñ¢¼L]¶aÑ;ÒÔ9Z,‡É?ï¾Hs¤êú¦v}gÆ Íd@´ôåX*d’ú ÈØ¹2¶YYbÒxíÁ·£TSŽµëÆØÍºÓ„Žègët*5®£e†âƒc±žITêªßîkž8);--ðËô[Ó¬g50;+-”Ói2öÍN:»°“Ó²Z¡_ö„•µÿ>m–èßOŽ·+± ÇÍTm0ìÕágAœðÈtõ²†Ñ‰¼Ïe{gM½Jœ…uñªuGß°K¬^z”šC<}gû‹G=q.–qq+ŽÍhÞw'û:»Ž¢S²¨!KÅòjÖÑÈ …çisSM•• #5ÜD™ìxÖG©_l&ÈpÏ’ä:”e‘¹^!‰1^rÔ›ûÞH^aÇ'´KmQ¢l–dÿ„ªž l^{1é;r¬½í‹lRM¼‹²I¯ÌJ&jåEÂÜÕ°špû-Ú”¤K$ƒg¡7Ø;N&ì¸ú>j‚íôR[.Ÿ°ì q`F’RF¨b9c˜òU±øq²ŒJŽš_oæõ’0*NÏù’¿ù ~ü!²‘¢DìƒEXmskW†úPદ5_¶€%•Æbw¥€§©~bˆ:ã…¼íyys¾i«û–©7ºèØùÐØ0MÛqô%y³$Þ–Bf€„]W&ï•â;!©ÙãűÏr³G|¯GU2„ÀLM`r™çÙòÁ’oÀ™v•«ílðÁyJ2Vÿµ1pò÷ºLÚ€§¼ÓoÄG!Ó‡]‡¥Ò «vˆ|X;‰X¯yÃb1 gÖö¤i€F4ÝÓIã³^/—ñBPá|·LÔÆ7ɨ[§ž1V±Æg$Ûõ¤Å\7Õ,·TÔÛå§h·„ÌH{ºsu  ]³þæ¶^~š5#„*DzÏLŠ ù`r;,—vÀ„'¯ó’A˜lfÞ᥀¢¶¨ˆ I®9Ûœ^Í+éÛš€VbaN2_…eÑÖkKC”¯Ìï…zì°·ô6&TWO î: 'éÖ‰ì_—ë×ïtÌê5Q—5Ú¸ãp(·PXŒ¿ÂÓÚq늄û>%vMMdçp¸YP”,­0u;Ÿ•Öœ½‘Ì‚k[ \šèÚOÂp‘èósù‡6±Á5(z×’On¢èü²rôi‘ºmß›ߨî1÷ö<ÜÙ¼ILš¥4ìFÏß.sª„…öhŒ(¡zaªB¿H •«1ñ`ëéÍóŒãŒ7EG7§îKä5«ŸÐ´b 4oÎÒ¥áïr4寲­Œf³ùX•)övÆ[–Ë<öŸâB^?ÉÊÿj¯ötbk°ðMxî…˜]´’¤L•¬…³5Jßñ©Å*’ï˜@a;ž¹—D\ü׌ØGÕ¶ø•ºž¼ÙÐþëØ×LÙÀÏÈD!_œ.ooްà~Å&ew̱¯ˆ;D«ÝÀïüi!¼ÞR²uƒ+Aþ$ ’‰òŽtè¥Þi.DÅ2^aŒõs×)~æJpµ--q¬)”ý¨×ö<ðíëuáþ—Zs¨ $óû¢IgTÑGÌãEÄ®°¤±Ð¤;"1ãìù׊sfÌ™)ŠZ„ Ucµ¬Žõdû¼f[«BàÛO­hQ9”7™MjÅæ<ó(ÉóÄ«X%s®:\D4DM¦G…<÷ÍLÌ…†œ‹M¤ûJÒ¸4dš¤M`î#Ô{¤³f†b<£ËnõÑ|^Ð*ÚÌ•o]Õ°‚­á ÑÁizŸ²GÑKÏüì¸N¥U$±oíŒám šÀ+Ew ç=ë_"–L ÷O‡´¿Òc$Ö¬$JîÌóÆ|t¾ˆMâ-'ÿP±#La;ÿ‰mwàçG›Ôü4Ä©lÏÏd«„¿eÒåp,ö… Âû±¢”ÖNP\4°`˜±.Q/À­(¡Sù|Õ¶S.fì?ª’jeÓþ¨O“ƒq$õgô¤æÇš*à†Íb¾ÙçÞFrm~(Énë¾&ebîù¹+z€bö5³¸X¢eŠ“?Þ„~Ök:®éÀø9Tw"F¼ØüË#2†yàìVÞÊäýÙbƫƇ6gA#;A·m ²¨'^²xÄWº±§¶¬µ9æo«¾Ôæ„ÍÊ1’I«kç3¬xš^Å»Ð5s礰gΫªàضró̓¤XÝok0 jµªã·†î;ð“xy:h¼… qŽ|V+DÝs’<èZ•*”|=O *gj ž‘S3hª2|·ð–ÚYþ,MPMwÁ7-»€‚Ã|{zc½gxÜúýêRzÍhTïé•4½Š9; ,PìÊî“Êò= #;¦“cÏœÒÆPÃȳfããTýL‚^ 'å›§„oµ.ª³Ó—0{)˜3#æP½ˆ\g»&_µ|%|v>{+a³Q WsÖ´Á€ÿ*oÛN¿hœõU»Èݯ¬[Ý©ikQF«nY2h5òîÆÐ‡ít%-öeéPÇ ¯Gֵ͂áý¬3Ž™¸!Õ¼v0á®ÁM÷C§b9ÇuíÁˆþ–EoîÏ+4=ÞNEñ½ŽÏ„ "ó§-rÍü”—#¸Ÿ{¾=E±Z`¨¢ÆÙ}´ÞqÈØÁ´àÇýl4Ó‹¬þD3Ù8ÁZ{(h÷Ù.z‘Šp¢WÒ¶FýöV~u㱄ԦO[Ûj§h†ù ïÃÖ$Þó§]öËîQ€cŸü X Â~L¢]>¥òG«1I Ò`¬z9œ4ýk\&. ·ÔäÚÛÀ°ÙÛ”ñzôtábxé=!Qm×taP©Ù ÔáéK÷ÔÖÜ«%/‡ô÷[AQ^í*œ·eP¦çOLJГWønxæ4tV>2ôu‘wQ|: þFè¿á±f'udîÞ*+W&KÓ'°êºtk^†¾6†·t£Oï¤1ÙBáÆÒy™.y¤àïì,"‹œÀ½ïrøñÓI@<'½˜–ñá9šž™ô­Ó³Îƒsõh²mê,©À¶õóK[7)[×¾È>ºzGÛ'×_΋¢üo7mSSêžt4‰¤`J8æm×ô¦9D]º…a‡?ñ)*‘ñ'?ypæ, ÊÈ]fœéÓ5E´¡Ráü>±–ãÿxHþï endstream endobj 1006 0 obj << /Length1 1935 /Length2 8061 /Length3 0 /Length 9132 /Filter /FlateDecode >> stream xÚ}–uX”[÷÷)iéÎQ:‡ZDºéa€!†i°hPéîAºAFº»yÇsžçày~×õ^ü3ŸµÖ½¿ßµö¾÷ Ë-]ikçgg‚‡Ÿ—O€à÷B ‚¼|¸,,²pu†Éq¿àãã€HGþÐRG–é«»»mWð €"" ®Àj…<ƒØBa¸Àßë+ÃlœüÂÇ­Ý]þ›ó€ÀÝ"v¤()ií sôXClϹ;:j€ ö¿|ýŸ4Ø êèýÿ)0€@mívuˆ5ÔÝé³Ê°#ÔJfëðý‚º)@½ ÖZP„•w‡ü~ ³†À¡0ˆ–³ô÷H<ü||ÿ“Ó³ƒZ9À nn¡ÿ¤4œP+¤7ýÿ´ˆì ¨¥ö¿F NÈÙýw=°›†ˆþ—­!þ€À¬ÿw Èéþ5 ¶ž¬¦’ ×ß›øWNfål …Ù„„`8ìËàG’À—Ez÷@¼ÍyaÎä#w„?ÀÆŽû{„…@éß¡¿I”½#QPîŽÄ@ùH„T¸#~PñŽ@¥;•ï©§zG Ú!ÕÕï©®qGHuÍH©®uGHuí;BªëÜR]÷Ž@ Þ!½<½#¤ý;Bz1¸#¤ºÑ?$†T7¾#d%ø!ÕÁnêæpW‚låÙ!Kž­ÜÁnvwQdÏàÈ0á±AÜÅÿ‰Ãÿ:ëÿ$ž¬þ!!¤„•³#ò þãô;âätçí÷‰ZÿHIÈÝ Èþ!ÿRþwu;þDšA&G°Ó« Û±¹[YaõøcÙßigwø Klÿ@¤Ï»1€{bçíbýQŒAÿ@¤Qû?9‡?9ˆ;ÃÂÈŽ¿±wyäØþpÏ,¸“B®C¾éä‘3p¾s‡|Øù_idw.wiäb.`8ö¯ñÿ'úïý!ÛpAžç»!'ãâè~çV9WwgÄú™ã¢ÈèóäGŽçî¡ßñøc~BÈr7¨× ²ÉŸ=~ä­ ¼s&„4Œ°ƒCþØDdcOç?@®á~w‘šî¿oI7+gøŸÓAî…Ljœžç"?!@¯?©êý"'ësç¹’þ·ƒ_ŽZ`( ¡çíòÏÿû¶ü‹ùÿf]ÜÙbµFØýY¢F¾P^&|¼|È÷€ï÷ß™ýßÛWFÆÙË—GùU@^(üBÈ:QÿÕY¹Ã‘{Œøë뇼ÂÿË6PäÇñ‚XáNŽ9[I„ÚW…6žWHÓzò¬ `Î-4G¾1êz!„`ÏðµSÃJUv•±´.¥úš¤5Qþ}Ì–s÷ü›—iÛû ÙD¥tŠ|×’Ì>OfïÅQ›-„ÁÚ™ÆvP$)r‰xï­6=¡¥ † [œÁØu˜H»àZÙjÎM³Ûš±ØÀ wJô ‘ñR:­y -Úèó¢ÏÈ”è Ü$Ù]Oùéà Z¨Ó2Ùfü i¸°xŸYX£3OësjÒY”´@ÇÇëG¿zÚ²í$ª˜'ˤz­žg¦°Ê:+8΀Ìûý WE5U©ŠaËN`tÝ#ÿO…œGù ¢rÝb[ûn9Ê/Y°»¡åQðÆÃ£‹êÄŸð™EüòsÕ ×ö‚ó– rÞž°¤a¸ù¶g#ÞÌ×y–sÀHÜ×5g`Ñf¦T|ª*ªáZЦ i¬„ÍÌÑP¡ð™Lh·Ü'ó£ç¿@ÇcŽ9©Š Q'&Oâù|x-Ñr5y%‚úÇB“×2Eñ©—öK±s›ôôº”aƒEÏÁûÛP€àL¶Èè×TBÊ궺ÉÏo²8‚#O2§/h ¶œ/ARø¾áø'ÑoIZ™ tû ^•“[—ûàb³:‘†t“ÁZiOú¯t›ë!â'›•ÕR~º+®˜WŒškW}B{$\I˜:³$ÚRï_Mþò6Úå])|Xš7,_öí¡í^Äó½sEvígBÊ㯸>lw]¿7õŒ«{CKÊÔ^¿¹ÿ*Égm—Ã%çsÂV¥$yàœµŸTDÀ$fb»q£ÀƲµ?ÈæjñӶË4½(-7ú½ L)6|á¼þŽó«Ë÷‡@4´7®;3ä­é%TóþË)dUÔãeËÆ´¡v|«ßáÆàOØ¢«_V—YcËÖlê´Yï½u1Ð}:«u_Å®}МûÖMB —¦ƒ6=½ë}»ÙœF¥¿>K0â´Oâɦåï-éjt¬»oÓ×¶%F±?]ø C¡Ìþ×U«+%ðÓÛŒ•¾>ƒÖêu¸L¹ÛrIsù±ÜmÊg¶ÙÒaΨys¤ k£|5“ËWÖC«(ÀᥴÄ™,VŸS%~Ô[¾?غeTÓµf¾°7‡"v^P¦ в¹NL ×(kL˜Ÿúzúƒøô›‰¹’55åõ͈Fañ˜…C¿UÑÒsý å2÷à§Xnž´Þ{Â1ÁŽ·âðL¢¶ËÜHŸç¤¥9Ìh*š:(‹m'd¿½ïUXÄj‹CŽòüyEi]‰Äös5€24$•±á€‰޹„kH[EÌÉXÎþΛ¦ûk5ëî²Ñv狉1g:à£ËûØ! ‰ßp#zýðqºÒ(‡BV!›ï"e{¿˜‘Ë4)wÙ©<ÿuO-#¬3 L±e&]uß×¼G'SßîÚ‘<ŽOÕv/**–Ú èðøÌ­LzRì¬Óý6J+/i'lEÑ9G»a’+ïÑÇk^škžØvñÝœb¡ú¸£`ÓòÀvÏ=ȶÄ5÷¥W¹‰™qFN‚z­.£4ÐÛçñZœñ•4~‰ê…ðìcñ‘||­‚hꤞÚUãÄ£ž¨Ÿ[M-‡óc!ö«¨›ì'ªÖâïšó¶š0xPîé¶$s;}8šj|-˜Î½¦ÍU¢€neðrµÉyµ¼rwãÎë³ Út_ŸOe£ÍmAѰ£tPÒÌeaÞ°¼ÿQ5«/£À„,b.Q仹£ÜÄóÆN˜äÀ„ý ˶ѓ'QþX‰ŸÙDíÕ*äyÃ]›ë¡µI_óîGS’ Y$\§Y~]=¾CËzðRâªDFëO™ÿQ9>¾¸Bm3çÝoRMãÁÖ©§*)Âã>k;aæÝyY¬>ÓÈ5ŽM|[}k†N wuÿsŠÊŒ¯^»[ëŽÈ9öÌ­àÌ­î‚+ƒÌÕpÅ}ѯ*; Ûç´ïOsSÙ2Ø>Ɲ0ΰÂ&СÃÕÏ^¼ÃëQÝ-œÛ"¥©ïp<Šçó"7!…†Ó’¢N!ñI _MXÇü†¸}Ã+Rž†ÿ±Ã/†OZcl„ê‰Ïç´=у“‡T|–dñ Üyv3ß¹EÙͳŒ Ðt¸ÅسÇr0+6Ð9Ø=.©(ö'n 3¨})ñëŠGP…hèÑee§pÀNÏ!Åö´½v)§TôuZ³g'UªúáJvyB4óºUš_ÕÜXtö&5x´è ÆP[Rèð+ükö½ÀH,ŸfÓn_´Ë3£_É÷¾’ÂzZ‘‡gÙ©ièÿCüý^VòOt/NT,U×P.¶òQÌÿÛ©±ÔÖMòÙQÌ·mY;¿ÄWÌØ4fÜ™¡¹4ýH½2®Þ”i@¶÷ËßDí Ƨ21U‰Ïzß'0Ð+¿uéTíJóÔh†e‹ûQÄ÷Û7a±Œ<³äu@S7Y{Ÿ%ÂóŒóÁ.Ï yo—ýáG½¸~éY¡Ýñ÷”bB7ßæ9*ë(Öâ|“Z³ºÍ¼’}fùo?¾ŠjÁ^pq:Y÷ªµI]û(5WÎ{*8ÈÓ¸*Ö†V¨D¡ÿPô(@°«*œZ{¼>Ô®‡?‹ôôœZ¯âÜÊ›Ýs›1‹1K&ÏúXô9y÷%¾(Å|(Ëñ¸š×ú&€äKÛ>bÇzŒ$²[k†œ‹û;@ºðÓXq¼+tK¿Fû´¿H÷H¹£$÷å‘È^NYÏ\B(bòaÁÍ´¨C¡kYL̤71pRÓ…ß}iºd€Ò©“ÝÅA|VíUÌ­zÉjŽG?ì]É÷w÷qîñߘ%uìÍ̃â­uyÑ©ÝÊôÑ7yŒ•¢KÌ[ϵ“÷h'Ð>ÅÁÀõÍ‘ØæÐÚéÓ:‡2§–Õf\ÔRn:\ß»„5 E/R!²"Þçªd¡ÁsqLÖ‚ÇÆøl[±¹h¡YŸU¢©Æîô`È7ä4”¢Å›WŠÙûµ×_ˆáÅûåjN…}ÊüJ¡<#+è¸ðžMÊG #‘:,“l³F5ÛŸ©…×>"ƒ+uq¤Ý'.Âë‚qBÕñKJê%#ʘ;¡+Ø–¢ ‹õ«‡u¹8&ÚJBßø›³Ûuó2x/~ù3,M¡-Ó½nð¿%+¾ˆ¿žWcX¿uì_M4v™h“xV]‡š¢’ÎÅ®êäÈR›ÍûâÙM¬ü°ûTù|¿=Ì¿âþ*#ÉüòϦj ñ†7&\ê~£‡ˆ<\¬ ²÷w¦ú±—§_Ï4j7¾@ŸÜP¹‡ÒÅÁ¢Ã½ÉO/"çùÑJ'õ~€ÌýÄk²‹ÐFDÀ4<¢ö„2_x›f—»›Gc¹ˆxšk뼸ÑÚ­ø›±áQ‘{vZDg˃±^ʧ‚#IÉNÂ?Þ$ÚR$º,í«Ò—7ìÝ(l¹ö†»Âæ?†Ÿ`æñU¥Š’7¨sNÄô­$4ßõ¦™#‡Ø?ˆ žÊ&NÔ\çÝ:q}˜O.>}ÿ¥+çL|Šæfí„‚M§ êv<À5<,ÌR‹¯–³yé ð.ÐÐßî}\(µ¶½_ÇÅe>K gºo%7,›?­c[E a$/ù©¯,Dн9ݤ××>Kn£xØâEÿ8ÒØ‚×Û8mB~fMÛ,*.8ÁþrèCðz¥¨û³O$#DË´dd[Ÿí`ÈUCrÏÙBÜ€sØ º²Îé™Á”èÉ)綇'Ñ4è¹r5‡–²àêÆq‰K óÙˆäbÇa5VF;û‚XŠbñë%~ÑÏZk!©9F•LJÅ&bõ/z³ŒWcܼ003‹®üMʉ £:i0ðçYäCT>cëû:áheN¿$Ñ(š'(ä”´²Ÿ°h2­™¼q.þyãœGC+%gç²ävé‚>5F*¬1<ħdàô"ˆˆLSû*¢´çác#Ù}bCñz:‘{>ú)¯‰º+ÕJ%Ùv:ã·_z{<Ò'¶Nê1U’ì¼—ê&%LyˆœŽ–üýÛ£&ò§ÔGA‰#gçsqöÄ6*œÏc/¬ñêt×Ù&ÅqÔ¤¹eìó¬„M“X2b7¸$âÜ;µC;¸8ç¦bùiZ‡ŸI¦î¯/鿣~†4­´ÅD³+°SUoKZ?~‹X²%CÁx5ƒ˜4›RM~¾˜˜ùé:§g·ã‘j\oªüÙnKšÈ‘¡µôt“[Ž1Eß# Ià$y– ê%s!w“Ñ‘n¥È}öÄ„9D/ ÇÿÍCØ6ÎsxK²UçðÜz u/BxX?ZBËÔq óôì[b™w+'îØ1cIhgHÃ^Uú~"ì&PäÈyË©4©î°7™O9´rÚÁ0®ª˜«:2œ…eMxò…‘@¹—Ô•Ìïëm˜ò’ôgéÄÅß¹ñq…áøÑ··)Ž•ÒÛä†ÒN´/ ÎÃK7¨YÖs\‰’LÝ2›7/ƪ¬°¦~~Žgc²U'G ô‹®ª­Þ3U`P¿bHuIôWnÌnØ¡ì¯=ú!ÂuK|«×\ùæPô®Çu¯d ¾…Çé{Ô«Èä0&ãÒ”]ÎÌbœ)ë_þ‘º—ÃÉרÞâ@ÃjÙ9QXÊäõ¥ x Åâ§å h°ÌÆU÷f¾$x+øS-DG öË´‡5}è3Â\“ .W£Ø)í¸>¸=¨ŽÖõÙO¨@¡pM`Wö¬(ÂéÚ3z׳ॢKUé™.¤«}Yãé¡õv3ø ?_¹»ÃÅQôöV¯2’)uö——dGÄi) Œxç²N¤,˜ïxÅ:¶ž®RüÕ¶j¡Cb8æÁœ„Ø£4½¸TŸ6©¡ £àÁTVÝ¥ !–U=2I½IgšI—3†/_-§i\[3ƒ¾½9|ßÖÔd¸0-£)ôš&âyˆrt­#*=’¼ÿLvSZn$>©ÓEõ„wX»»ÿ!Fß9:y½@]vì¡{DövÐ*錦ü™ÝôXW59Ô# LìÆ£LêîäUÃz\µUÁиâ9S·²¼þ=e%âõ[ÓìÏm®ª‡ŠåŒª"áÇKÛQj‚s7íK׿õdIøÁoø4!L–t>„¡Ìµä‚#¶ÎL™¦¨¢òÎ_HÑàn:Ÿé3™4h&\ñM¹§×Jø•û•Nµ…l…JO°^-O/íÿPÚ„Òtùš<‘§ŒTµ$—ÀÎ׋ZjºšN¨ø˜áîXWåüBª‹H ¾Ý5¶ZNu"VšcwôéÁÓþèy¿‘ÚC¬) i.²•;¬Û¸·:§†…¦ÙËì-» Ú2âp"K6ÊÝpVvRiZMݧb•ήñÉÁyz†š\¡Ü·´ è'K» $ÌÅ:C&leÀw³ÑNNºÝ¼Ñº›oYˆ.½ºÐަ÷´ÏêúÞ¬I8Yu> ÑK3'4ji Þv±pÀ5Ø™GRu©Ã…®¯ßºÖ)¸î3º¾f2?}“ÿ3O,Gžƒz‚ƒ6«Ñ"þØ@ŽõúZN¯„,d!Hç¤õAnpb˜Ò÷.kºÛQOÆ'+˜ÀIÙüþâéÛ^ã»k½‘GóéK’f¤¼¦DÜ&kp€IãPõ¼üÈËÙ æÂ5ÁÏ5BŽî¤ë¹R‚ ïè]Ú²i Æ÷°ÈY>‹REÓ>*†ºzxÑHˆ6}”/­­¹1}—äÂÈu‘GøUΘ—IÒ§#8H@´3ºCiZ·Ð…¿)®™Ÿ(ö¹[… cUe! w.ËE¯Ý“þMžÇ!½´¾qÎÑ<*’_×å<‘]v0|øZK]¢ÒÍK-'‰ÚGÜ cIE²JØ“7®ˆë—­¦!ŸG;8*áÅ|+5_ <72vr¥¿çhŠ–A!© 4ñNÏü¤üƒå3Qj«ä;jÄy’”Ä^Ur8o’aryi˜¦žI¥›øîq;WšßˆƒÏu:¾Žq4pbG­ƒ•@†ks³z€èÁÃä²À;G ƒÏÜ«OG×ÖϪ_ 0ð‰J`5–aÖ7\ñe0¢¶Ó˜u¢`ÏBÌàÒ+Œ'Œ“°9C?ÛÙKEØ’Súô}úäéNHê“`,¶6•¢ r].v ì8b·²`aDç @â»Ýø›Gt2 äÖ¹¸™¨(möD7X½2hFÄâ¤Q[EuŸñÜ#zgf„DrÓ«=9ß?êþÕƒÁìwdW‡Ê4ËMÐñRD²ÞógÀ¡ë‰-n·qá‚f²×æ‘'ÅqXä~•Kö«ˆ_5y?êtÁ~)4ÛÿÈ;û†;(pÛ2¹>s™wünšÇn†E)¿wH‡¸ñc®i-²D×·EèdM&ä ][öå’›HÇ;­šü€gvκËf®“‰å—Û²Úµ…­GùžY‰ÀF”kG½t³ð»nÛSÜñb¥Ùªï2Uу=¨’ùòzGW,yC:^a%‘N¼1. Éq…±Ñ¥9fñÁ%JÐ.ÎP–žå³÷1…ëß=A§Ö éó˜ Ì´#YsqBÎ)´î2o°£•Ûš°#ëЙÑY§¾ÁFœÝ3j›ÚX.$…J]_Ìšgp«!ù £|Uyõ9 „y!  ¡”^Žƒ-1ì½úk ܪuƒHzç¯éé¥)Þ±¾´ ­ Ïi=LÛ}Ä“c”îíš§¾$¬9cÓ焽¢økJ‹ÛIêÄe×Äd€à!5”Å]-'–ÖIÑÏ¢&ßÞ? ;4@ð`ñüçÁÆC üÝ匭7ÒÂ0l «Ís¿ÔÉ€=ËàDá§îmœ“{eoKVŒÍŸrò×fʈ‡J*¤ãül)(Y™µ  ýI¸h»Ï§yù>W¹ ±šîÑrçéAqì *ÊÊ”\‡´ üÙx‰ öŸß-è0kÀÆÖñyÙ“¸eä½Eö¢ ø(gQº˜l…hˆƒLágŸ—8VR é£Oo­Öí|§ÝfÞÀùW~Æ<+õóòOiÎê3ŒS¬1!ÀÚ69¦¤t@‹ a±”i¿•)ÛE™+-޲·Þ¾}0 Üd*2º§þöq˜Î8=·ÙRBÒŠ¸}YQóxàɽmõS|Ž´ì3iJ"ˆ‹î½õ>q¿mçèãÖ—´š´Å[UhæNñ,½>Ø›á±I5k\C|S©~#÷ Æ7[bÜ!ΰ®·Ï :¾sۈъþpù&²rM_¶aã‰'bJS÷ÀýÁ&MH­kDµã=Ïh”•îáN¢¯ˆ´æúAã­ •ò2 ü5C×(¸E a_@Ç¡‡³h7„­¦{‡j°ÖOa̤QfI%¬z‹_îã6 %óc»†.wŒâõ’ÞÎú»FFûX1ºŸ}&ǵ2ZÑ`ÞÒOÇ öõ¹Dý¸mn#]o¡¤K¥rŽbó¥2)¸´9ÌpZ„ëAsu¶l4öUþÞƒäŸUMq*Ì,Ÿæ–Ið~¨„o¼ðU¶e´š—L’Ó¨—Ę́!&Z£[®‹¨Æ^a^Ó¹¡l¼ ºš3šÌdë)w\R§\Ú{mX&ÊýÕ±‰/o/Tãíûí€Mr™¥ú Õ­ö3yïQþë½Zt‘ÈÃÜ÷v×§‡ìIâ;Åd¿D»Õ£¹§q+ÑEG â]íãÐõëEombb£G4ÍŸFëGÙl'7Á ý%=b½ë÷OvÍ®ì`óŽYÕg÷”QÈiðç¼ÝrcYâ½o·_ÊUûSîÆí$ÊÑž:~†—jxޏp˜µêIÚž[#ôùÁ™hŸ¹¿ñÀø²XjÆ`wAËþ£õÁÚtz¿”w/ _Ièfs²~ z³]Âã*wÇ€ª±¿¨Æñ#g;{ø}÷ÞB(Fò׃ŠÂŽÆ©QÊí~áˬ°m/`F‚0B™í0R†øôiý>M0ä¹7¸*y9p--šÜïÅihM†:Œ(dc$UÖÞREmzó e…Wð£EW¡ çV'¤ƒpÜpmC…“Ò¹Ú—ÀŽˆüž§³+pBâ8_䦾ÏÊpøDéW©Å¦$}¢ÜìŒõª1t >Ï-ȉۻl4wú!lr²jL|~ÙsÑÖb™RâeÖÌf Žâ¢~u/mÒd!ëeà¼ÙTò„FþåÞ©{Ô4Í‘œ‰öNyC©Å¾Ëœßg_Ûñ¹ðóF¡á¼´ÙˆÊãšD»>ÁÄ¢F,)®*ä ƧŽ Ø¾xÂŽÙ¿-ÃÑbÕ¼ÑïQnq¦®ÂWàûQðãˆ2Sæ;JÙoð·êÜ,»WûÌCr/ð˜ÏW%‡I“žrçcOHbkÙˆS=êvóË÷§37)1£1$T*ÄRA'À¯PM^.I{àžÈ¾uï¨ðµƒÚzè#ÉEH¿¢˜ƒÇŒnj7U*Ž †‡ËwÛSÇô9þ´rxþƒ@ÑÛ_ŸSLš¯ñ¤C.ŒFò«fþ©ž—ãíÍD\è>3ºïÊ Drf!o)¹p/Gv5 æÿÝuºËCe±GÃ7à¾àÈØw•‹¢ý9-:Aß§'ä4Äì5¼áÊñæ/³œÜ*»åêå lÍWÞÖjz$ˆsR$<¶Ý‰¾$£öì›D[¿·ºòåV“i·cMï‚Ç%Vm·m„Å wâš› áU<œ_e~.ÁU0˜&s(RÛÅ#X𼺌š%(ø£ÕzÌѤ€ŽËêPË£¾Ùæ¢fˆÌ™Ù€ÿÔlÕ%µ8›/Þ0×[Z,®9÷ܼÛÔ¸NVþR6þAÁw…ô&‰‘Ýˉº`íåƒSÍpÑîš®”yÁŽJ3Ÿ(ÓëÓ1Ü/O·‰°Ñ:0ï÷”çXùÇî¦Ø¿‘xð-`ƒŠί¿%’ư­¤Ä`´Aè°j'÷eXØs®¾ ?4B:ë%GÚe2þ1ªù•¥‘,#,&AÒ\UõJÌ2b˜‘ö`Šum )9C²ÑʵS†=* ív&5:¼B^fTïÙú¾.ï6G±Þ¾ªù~V_PJ¨H6$¶Hà* 0Úaeàe^7ï­äè¼Â çRl ¿œÆ>·QSõ•‡G/¬ùŠIš’Ç nÆ_dc;(ü\,Ëë¶ÄÆJ¥²åra_êÎP(Œ‘(䫵Î]Ó ’âö•¶IµŸ(å-€7+oVàs„¡* ¾ÇÅ‘F~DÀL>¥áÌ™¼ ú›bÇoÖþ"û‡¼ü£böŒ)þ\IW¡j)Íuþ첡c¥Øµ%'F=lycžÜgbç¾²TøëWKlµ*Æ}a&Ÿ¤*:&In_:`ñ=ã¡·“É÷Ï@y^F0|zǬ}9üùˆësmÖΘÎø°3©¢Áž¦£Ç—_çͧ0R3ŸØyñMØ9Â2âõ}"æJщw¼ûx¯¶(]w6‰“")<©¶ûÀIÂGÖ  RK\R=©K­õk³%Œ>fIš?9Ó)O±$+³Ÿ x¦™í§ï.}:VbÚOßwQ ê݆7¢qöokï 屺o“nÈI!¶÷OšÚ~$ùVMôF¡ëcUÑÄÅEDÐS4ø¢Ý`5ß?ׄ°6ÄÀZÛ)¼vB´[ù FTa)Tâ:¨ÍR£GðcðŒÏ Hnf˜æ9=¾âÍÉoù‘Û6; žøÙ M0Ç>ò¡XÁ<„Sœ\ž÷ j“ñaœÊ›%),»µTœ èµÐû‰çýZ0ÆÙ\Y?ÚV‚6-˜Ìnä2?;$=~Q°ôÿ{ÖÁ endstream endobj 1008 0 obj << /Length1 1677 /Length2 6303 /Length3 0 /Length 7268 /Filter /FlateDecode >> stream xÚ}—uX|÷ÿé‘NÒ9:„ÒÝ!9Æ€ l0FФ %’‚”´tJJ Ò -JKKK©üæ}?Ï ÷ó½®ß_ð:ç|N¼w8»`gÑ3äW°GØAUp?P@H€ú P!"vöH(CÀ•À(¨4(,€Qh’Fÿ¢§3Ñöô;þ‰KHˆŠ ìaÀêƒ þɯw@€âÛí=Ýþëó‚"=ÐE\è¢ÜtI{ÜÅ`u@¿ótqÑ»B\õõÜ`W˜‹ïÿ'À stB¸´¡ö0O×ÿõª£À.0ˆÜÑ à—•’úÛóPù@íõ`(ˆ…ô„þm6†ÛC‘.08Táû# €ˆáß>#'ÄõðˆýÇ¥ƒ@Á èMþ3(zN>€ªžÖÿ¶uE+øß|`ŽHþ—í¡„ÿc€ÂíÿW ´ÆI!¨¯«­j¨Åû—"ü†.`8Ê(.ñw”2‚°‡ÁÂbâ0 ö%Ñ$x ÀÐSø >è±àú ÀÍõà€@ýùÌÄÅ‚ L“@Pù’ª\ ¨zMÂAµk’j_“$@Pç’DgÑ»&ô;ƒk]“8@ÐäšÐ9Mÿ!)4ÿ!Qt° Š„y8_‡ ËÚýC@a4"Á¨ ÔuÃ,ö3ò¯Múç1ðo³3õ¯x)‘ìÿó-äC׆ \ÐËðO‹¢,®®×MÿY-Aûˆ. ½–þ¹{‚]n §t¸èVo º€Óu9ôXN¾nNPø´ vÑò>ºhEo z‚›µÑã¹^#Ýúuftb¸§«ÝŸýw¼QˆžqÝ:½áFÏãvíF§t#¡ðé- üõßj‹¢{wCdˆúÑz¸_÷„–ÃÝ‚ÚÛ݈¶"o ºqë¤h<\ÀN7Ðu®«¢ÿàQÞˆnô Ïë@góüs&< äÍ9ÑRzÝ@´Þ7Ôç¢ö½hüþÂ=0 Ž2òuƒ„®¯Ã_ ü› QH„3Ôfrº¢ Fï­…€zÝ„~ ý¹ÿVÿ÷ê(*"|󋡯¡¤(†”~ò¯8ˆ'ý!¡þºýèÓõ_v€¡O/ê…Í|B@dž>ªyÚrV¥ÀàÍ¿6Œ·°ÔgÞ!†â˜Î~줅Ÿ¦:î®hk_N;˜¢÷¹8|ì“?Ï÷³>–ï3‚¿¾T{ÂPî^QÜçÏé??zïe²GÐ;ŽH¤D®íÅë3Þ±µÀ±àL4ýô3L¢Sd½â[þ¯6õ‡RÛW@áR–— ¨ç YmÛXÑæ,÷–Pæ–¤±äH‹TO#uã‘_XO%Ø~©Sn%X†‹KX…µ ø;è(¾bd¹Èmýî_zŸè$×Ä;Y¥0êð>µ„WÇÜ… ‡3ö³ÝUµ4AUã¶£ï?©/æii¸(o2‘V|/Eqv~¯ÄøýìifÛ' Þd=:¯}9ü9¿L\yf¡ìÞYtÖL%Ж2Ž´ÞñNdÎ.Šêá#'ׂ%[9 ¤4ML³õF ]ˇù£ÑbñSŧ=JõüÖG¿E?¹ä§©¾‹Ê>±OZò㾿ÂÀcÞ*( ƒ19›ù©]–ž}þùÑJÂõ#£!MØHIx™Ï“˜L»CSû¾q¦).—;$ò$ghq! "9'~~@|OÞÁVd8`[Ie_é?A\Ï 9Q€öPÂ:ŽéQòC—†mÍPé“­ÍêZ¿áš;^Ë%³îú倨9o žÁWr}PFìÌo_óïkŬå…ãÊY÷žì©réÛሩOÇòfìô”ṵ̈ôNlŒ#M IcëlÞÚMñ[ÿÎíVÈkhP'þCοç4ñ#ÂÉW}ø0Û$;AˆÑë]¥P­3«ß9‚¿ªáÑ„Üä\1$Ä4ˆ¥u¾úÎŽE4ÞÉûàQ_l‚Ù­þv9ý{u¾œº:ÐO88¤ïSž¹Ò½<¿Er; •5u¡­7º ñeü(g‘~I‘ã8<KfÁá]#²Æ¸'6²—›\wn©òáêÚD É–“Ë•¬]Aš¤ÖH¹¶úÒiéݽYwÀ`o!:Ø ú!9,õÛ… ÄöG©ŠўܿÈyXÆC_‰ò›Úæªp›Ï«)4¹†×ÔY~ϱÆ!8g½'~?2¢yÞ†‡PE( 7ß‹_&'@¥cpÖ‹Lo•½:¤¢f™‰@¢¢ÛB|úÓfÇÖƒÚÛ~<ÙjXÃEê¹I‹ À”t`3ö¡ÎŽ-¯ò‚S0…\ RHàaÔN ¼¼^ °{rý#¼UhªAðà eÐÎŽžèÜ+| jh±ÿ£ä×áñ/qy¸®ï£¨Æ^H±:Õl%sLºñÌÑä··³Üñ“Lž‰£9~&E‚Pu¾¤¥çÒ¿m³+“ÒNªüè½h¾ü$¤^CÕWv"®ûB·Ø~Q^®D ÌÁM7ÞrÕO¨Sœ©«jå¬ãÁ \ow‹<>^¤5Éùžu)_» HN`dwîçæmzŸh`þL~c¯Ó÷m ¿›‹˜ŽƒÞÀ2‡ar}j™Å±t’}Lz¤ˆ™n´ ô‚ôÌjšRÎ1õ„²SY”¥€K‚Ãx—NvrE­c‡”r -'ò²Ö;`o¿Ó†Ÿ{` ¦:ù‚ݱÖ5x¹9!f×’ õ3ñ@ÃV¥œ®·cÝK’úÝ…/ÒÆ^¶Îüúuq9iXÛÈ’éê|Ji£¾Ÿ,ýÃßÂòç…Bdâ>×é†wïta‚çý­'/dívä€S¼fÃÚª·´âW©8™X)ÞÛ‹3Üì[wÎy‘+vGÞ’˜»Oÿ‡E³¾¥Ê¢þ¶ò+­­£ó;ueð´z¦å,§>Æ5qYëH¦ªà€êPsilD¤†jêٴٗV1zŠ,eáŸ]£Lé´ñŠw$;ËšVoM&Ÿç=ûší_Ûßñ“êÒŸäT;„£3ž0õÐÇx_µ§E½/PïnÛdÜÇ_åÕ˜$TûŽºê¥‚Ýñ3ISmµ,)íÍe¯{.û go™¹-Ë·7d6ÃZç4m8i'O‚±égNé:,Õ*¸¤.å麂šoK¡D³kíJQ:3ÌCóA¬ «Òd²±:Õ‡úÅ;LQ#ê”ÚIer­uï$©™Ç¶§.^–.œÁFV¤¶dd=/Ïr7Äy„fZíŸ`QM­|ýÒæ/œŽ¯!Øþ†--•7iò¤Øjµ,;x<ØuÛë¢Ö0”Ȩ>H7vµ*Ôämœ3§pà oT–ª•¶‘z¼%–±ÑÔýjÄËi]Íp—©Šèp틯ÌÞŒrWöÏ+—°žÄ½‡Nña­ bàÏ¿D•)=}x·”P:¬ÂØ”Rîy…ŸEc(Ëü­=oå‘¡Uû$Ÿ¾¿D!“q*+÷ì´Ý¾è,$}u4]ì½µ yC ³+ƒ“ÅRÕ¹(¼Ç”û¨9^ÎK9?moŸ¬ià©¿”ï˜WÜö–ùmFøú®¤â;A˜ÛA…Ãr³sª@¬Žîs¬Ž„¬‚x± :ôék£y¹L*½b÷fõ{·Úõð|“#/˜îäæÏU±XëË^`;dkÂtkؽ¨VYiaxaŒ6Ä{=»ÄK‰®BSñ¿¹+&hÚ/½nÍJ®9rŽ +ݺԷ”‰!ßh%™¦$Ìa¸cÞ#E½DÌ1þ’æ;&wíÄÃìÛk:“æm¼á!ÇKJK;A1ëÁÈyìI‹¹­·(: 9p ¾¡éÚ÷¬’{—²-%±ÆTVã»Lû„,YE4ü‘†g¯ò¶‡è¯‰9¬Nfœ–°hE{I¨wöºÕŠëã›¶œÿ¼Í(ÍF¿>Õ,àLù6·| T—;¿rW‹bRëkƒsP 5‹–ÔÁ¸IöRqy²C’1ìC†žõLx´º1góü'®U壂‹ ÜŸ œÐ㇘si÷ìq:¯žwP¹ßš-W1L p¦=Âðû¢gÈ•ÇÚ÷¸yõ 5‘M‰žíôþá€n¡hÚ‘z’x¡b~˜žìqë=í±<|ÖI|U›¦ÜàœÊBŽ©WŽØcW4k2À€WïR–4ÊC(KQl+| IœX,½!µ.ßõûžwYÉ2hæé¤=Ñ6@QÙl™:ë7‘fŒ¾ÝÕ-Ýòmë¥h9`÷!ºP_ÎIj'°}ÿ=)€›žZ¬Ê,ãe“[·KØæ´¼Ý`v7a©žº e)8}_C>ò}ëq× ˜]ýjâO±“SI¦„+"©ze¾óï})Çnp_ô*±0p6xd}šHd??Y³´ NáüÝ1MhÅì|×{ ¹6ϳǭm¡Ð¿x¾xÍU9à¶á»{o¨F3†H!uˆÌ»XÃXK‰›wb–s­Ÿ`‹D±JáEkxT«8"éYI&¨ì/ T¹w™É‹ÄÚØ¹ê¿Oz ±ÖrÉcºOESDUj 5õ§riÙHƪ €D>¿P#íR[þ Ñ|Iã¹/t1QòÔ #EðÝ!ißgopHçðÏõç0ü Ãgdä¶u·=z0RÔ—g­×à›üTd5!4x‡¹¿–¹ÓÒ²Ÿø<”É(xJÁó;æÌ¾ ÈÖê cµ“o¸0U†Ç1ƒ`‹ò†ãÝ`ü7VX [<4WÛêÙÖòÁqSÎ0ðàpÙÓ†½¬':&óB>Š¬ç± t¹Ã·5ˆÇr“×Äã_ãF|óµ-µfJÖ““¯qÂ×u­¹()þç?áÕdƒŽË•|·âWåÿØñJ…Y:³HOÏ7çÇÞîHKjuÕé¢ÎbÆþGeÛE¢ÑˆRf12Özx(Ç(†ÄqÔ£©á¯Ý©qÒn¢¶4©NÅlH•ÓH8Xv\Pôÿ½÷Áxð[¶Ù¯g_×釫R;D[¼Ù:>´ç/ØLC’ÙUÒ Ã$rŒŒ±˜Z·‘ÕC‘»Zãdz+Ê^Å!°R—$Ä“fëj2Iq?o¤?OÄ£W üã¿cÆø°3𨬂îÓML’Z•Ë&û› gËáÇܓDZÞBìO[òóªÄ¸w«±EŒµƒ¾I1Ôcd¿o¿swýOÜF݆ö`*CÔ”T3¡³¡Èy…uºïÈFn˜kqY“–©îİüP ¸’V 3å‘›¯f Ašß eFÐÚÑèww›èõ&G·ætͰetH-‚ßÅ´à8¤ÏI SGj7Ûß®¨Ô ÎÖ¨%GÍ>6 z+@vÊÓ«[cP«7þôþ¼”$¦4YÃCö9B‰KÃæ±Z9Ñæk#:Më¼[O7<º Øé€q·«‡n´~~^ºìïÃR"Ú¿9Žl›Â²’É_’8uµÖ†Ø,«…7T¥ø­z¶eUè[öô;?\Ý?^ݤ]ÜxÛüSÄײw´]±;A $ë; ®xÊrÊİ[SxOÑf[Kã SX,ÿCçºZÃ|ù€8¿¸œ0-–i°J6gÀg%{«nëýãT¶š…î+=Ír×[‡—¢{­U“ÀW9­5)5æ“ ]ÎåF….Kγ9“þæïqYì_ZæÒu†‰·–ç<Ÿ‚™Û—í“Ëñp¿`[¡¡‡­$¹öVŸxˆ»ŒlV„~ú‰q… §ñUƒ_9ò†G^Ü÷îÆç"¬ VÒó[ÒÑ f*Ð ûÇ]&º;c•eNk“ ˜æÛ­]ÆZs–~'³<›?:ÃC&»g{öÇ{ð©O_6Oz æG8Tü­ñZÆÜ÷Ë¿1B¬9tãd¹=ø,öí¼®mÚÓ»ò£qÿ’ó‘HŽgPiðùVNö2¶aŒ½ù‡ q}?®Œ5©I/¤öôˆÉ‚ǵÀlù` QJ[ý7 ?Ó{ò˃{Üe1!Ü9X:æ.Ä*"÷äªgJòÉ1†l3sˆe™w*¼+ßUNßÛäžÏ\}7.+~v”ˆ´I;K* —µpÌ÷’ ùªŒ )k=•þšv<Ï$C)ÞJ'ØZq—ã›­£†oÜTþ–ÆÓîgÓüt3Œ{»1â‘M—¯ˆKlSk½š_õ_l¦KîÈAðÂÝçZ¸&" &{¡NwéΕèU5´ò½eüz{ª£Ôjú¶Òâ…¹‰ ‹¦5()‘“Lmµð€Üêg¤>ïc½ßÂHæ~UxOwÙmíÔ¢ekÉ¢)Š" ³’×™“Þz¡ìH``Ä›Ì,R¡§Þ ÷jÈloßëéŽÕ8Ñ÷Æ$–ˆõáñ-Sw=롯ۥ¹±|ñF»ñ_ãCm#¤ÕÝ©“/ÚÛt¸öŸ1Uì¾róÍŒv°øã®šÎ›nš¾&ˆ‘³êå‰Îm]õSúG¶e;)Øè1]+nYÏÇ™¤Ø ‡´Ä•{d~ÞúþýÜ<_G`ºˆF€Í_•¸lŸ‡ÄRͳ˜‚¥` ýèãú é4¾æÛ=5þSi¶B Š/^yú¡iWÑëEnx‚ØÔ>Žb†ÚÉŠGµ8Ã),…ª(;žoLãœ9Ö.¸cnPÔÔ‰Ógö^íBÃ&NC§ŸM_@üìªX®£„‹eí³‘ ·9 ÇL––ëÝå’Xç®b®Cl£˜ÂkEh=Mû1Qe+[wÞFoèmò££;‰ù.Ãn˜kX“)ÚIu¹E·_>àÈPz²k:!hKÄp¦Å…5[aV?¡¿Œ;4290ÖÂ^()sÜ3ËW;ò8þP×à8-_ÙF½ßh°ß•æ<0ìSsJÙ|5Kðréã8Æh=sÂð%Ÿ‚ß”xcä(*®.€¶CÚÄšUÑãlhn—äCŽAMtOãh#yp*H·³“‡$Ð[º-:ÞmgB?Mr^©öã £¯Àîz4Ïb‘¯ZÁ›ÏßP^ÐU¿N0Ë—ÓØ‘!dóÝG¼„¤ ˜¯wXyÜed>¼°DΪÇ"Ë‹ L™yt F݆øžŒ5Óé~/¸OY<=²1qYÕ”5ѧª9ämk¨ªG4šÇ9L·]±ü8«ú‚¿"¹)w4—aùcœõ£/ÛForôCø`Ñ 8Ç‘Rîá¿P§m,íPñÌzLÕ*öBþ¹¦Fâ#lÏÂïr^·ƒ\RO: ¡:ìÜ Ð´ŽF>Ö‰Ž}`ÀÝ‚wU}?÷Á„,²÷ c±§9JV1òg÷^•»Gƒ‹.µÞÑUQVŠ+;„R4è¾va6ïLMâ¿Ü¸K ½‘r´M"1E¥¼ˆ}ÍþO¿‹±ZY«Åxk?{ÿnc÷gÚF‡F1õ£­#¦P¸ËäaŽªÑË¥oén1&«ç÷,oÃÝÇu õõü¥.(›Ãf~ûá0Ä Óß4j”Qlî§ôÞá£MsGwÞ©1S.$A žcžÖÎG- ÜqäÞ’úiHf,YUòÙþ!eøMûÁ®#¦ˆœÚ GG]°9‡qélQ2Y’·›h×;ÉØ.Ž –~Ü/±9T¶òÆÒ`Iy¸çªáËöB<+‡±(pÿ™bVòÝÜ`÷;ó/øˆ± cu‚‡pâ»G!”„Œn<­£žãtÝúb˜/ç¡efûéÎ5ô}Â-Êl—¿\i*t‰{éq¥h‘iÇð·=tWbÊvKÂp°Uýú²?%`ÛˆvÖÔÓïÐ$Cß7M§s5*T^þdÓþ «Mî﵉þtùfe{YÓÞôîLý6M]zCa ƒu0Ò˜™Wƒ  ÂÙÂ$õSp?“LçbÃÀ»ôML|·åâHÂíóš~Zqª ðÂnQÄöж3Ë1S]âO…jvª«û¬MûÙäój©·Ô[Û_6}ÐÉ–i»¬?x¾ —æú¶ûÕßú ØãµD‹¥b6u®Ÿ¡ÃxÌ•8™tòœ¾i²¨AÅôõÞ=¹!j%i¬'¼Ž„¼w§$²4=Ë!öÎ|{‰R•z‚Á²^_¶L3æ²7¿/z‹…ªâõ@ËUô£Ù“{gìa¤:ežë¾÷M<+—;2ïZÈeÇ@B½ËIâAÂkw‚°|›æÌ¾˜Ì¢7F4 A9c·(ý$Ä1¤–…Eƒ`·.Án‘£l’¦øþ,¡-ÔŸsaò»W‚îcÆÉ£ZÓ32sì~¸æ¤Ù»¹DEªÎ>“ìpác–㢨너ä@ð®©Ã–bbÚ|§/²ª,BÔ"ñÜ íonÐ&Û‡,£r”xä ÁàvoáX…XQŒ32òŒàYQË’e7a:ù– ÊS¼f“Ïéʦ½t|lr¿Æ~ÝÚib—ê?U4Ô|nL÷²y†ÿÞê1U€§Îô‘èÕ[Ý ÷àƒ."á×ÚwU"è›HÃìÒX[*? ÓA*½Ó"¢ªá…q Ü¿l´©POâ}ëÙ-ÞÈ—H¯4ÌàcÒÍ™M˜â2?X–4Î2¦y00¥ÃSƪ‹-÷D§T’+žÅ4Î|¡%U½Ê€›OVb~¨×n&Zd´Š¹_q½B3hvùã㖷ˉ› !›ŒåºÖÃtB ¥·€F,ƒ¿o‘)”if°×Y~Qˆ«®¨÷-j^þ)G(*“ZÁÏSóäøÿvô? endstream endobj 1010 0 obj << /Length1 780 /Length2 775 /Length3 0 /Length 1321 /Filter /FlateDecode >> stream xÚ}RkPW¥@2`y´µš¨)Õ"!»‰S§¤(âFDP@e“Ý$+É.l6ž•ŠTH…ˆEDQ+Uët„ªˆÖðRliQ…ŽO(`qÚH7<:g:ûçžs¾{¿óoÝ]%«¹()Å–’Í…½  e:)MÄrwÿ‚Â'‰@„ÆDæóàE<>A¡$b’¦,"D«Aæ ˆ¿ð¾Å‡ŠËh Å8Áâ™rÀÂqÕÆOj‰¥aš€LÓOÓ% U@19sO«R…"j ,7ö–ލqUÒÿUDb¸BIƒ!ŠkÕSÕ`Qá²B¡Â4Nᚥ¸C%8-SšÒbãôÅ(N`Rƒ›C\‚¦háJ\G` ðžBI—1æ"&†dfôA’S`j&½É÷ #hà;‰QlœàONÍÉw,ÞÊ À° • 'ö8&.!d$Š À÷„¢$`yƒàŒyÀtÌ´|…†¡EÀWà“öF¥LKQL€cÞ$–ãŒo Óa2VG;)óÏÜT“yaäÛöfî£f›®îºìë¶{ÓŸüZ–¢\1­$¨-A‹žø¨±Hò[UÖÍöT¶Çó‘]Ì¥}÷ —•ÒKzÄý܃×_ ^R`sPr–¢Õ§(»ÇéÅ®U³ß‹¶Žž_Ùþ÷6ŸË‚¾“½‡Muš¾(¿'@ ޼tt-dÓ;Ô=±Ô¯sý¸›6®‹qÌu¦¢‹µáÁkZM–™>n¦à÷Zc²„¢&QFiâ97–>KzëÝe›Û—zhxHXšÚäà9¼;–æ"-jK—? ²ŠÏëèÐÛ¶‘û³OåœÕÅ$=¿v?óµ3¥èÈÝÓ)¶¦Vrîm± S¹Ï6Þi÷Šä”xØ8Ú®Fû; :­fú'ØÙìþê¹x½Â>°0L\)7¦rV•°5Õük M#ð,K{ð*eNNÇéÒû\N©6U¤¯Ý¨ïm>%ÙXscÍÚh\ÉùF?¿Õ缫ZUæŸiuóq×¾úÇY#m«rrêýz ]Âéí,½¦,?9ÍùìÖï_Úˆ¦?ü°X¬¿wlô&ÕVQ³híîøÓöŦþ½ëçÛ9Ýöí'CÒ÷íx_ÉòðÔÚs.뉕¯¥ {oÜÞ·V{¸f`ÃÏ›"“´yG¡8’<øÃ}Ï‚ à þùú{Îô&XvK·å6Ôl΃; ¿b%×>µµ˜ùego‡§óꇤ…ú `‰ÒØx‹ýÓÓ-‘Ÿ»±ŸõÕùqn¾ñh:§JÐ7š½¸Ežô¬qÃó¡“[;ìcÏ çZtÛŽ{Ô&ž÷Üø—þÕös Ö–T¹X/¿ ¬×;4µ¶ÎΚÛöst·l¾ïðŽ$Ã$kÉS/»Rn‡,{Ð}×Ãå`Ññ² #§ÕV òØUÕ°²>ÔÁ¢.†Qö‡ÿ»'ç•»^ŠðÔ;±_Æ2EœNžîàÚŒ&Ôç³b“6¹4dÖqÒF÷5üw§²;qMÇCG¬”•çºGÙ3¥.yµU[ýàŠÇGžKÿ‡þÖd€ endstream endobj 1012 0 obj << /Length1 752 /Length2 723 /Length3 0 /Length 1255 /Filter /FlateDecode >> stream xÚSU ÖuLÉOJuËÏ+Ñ5Ô3°R(I®()Q0Ö3àRUu.JM,ÉÌÏsI,IµR04Ò74Ñ7200PH,ò¬€Œ_ ²0ßÒâÄt ##cC#c.#…”Ìä…¤ÔôÌ<.}ùžyiù †fñ”Ò˜\YjQ1Ð  ¥š @+Sòór*RRÓ€úJsrüsS4ÀîÂNÌÍ̩ģ <53=£DAÃ75%³4]Ö³$1'3Ù1/='UÁ"”Yì–Y‘šY’œ¡PRTš ÍKI-ÊÉÌK È/Ή‚®¡š\HFfrv^jq±‚)TÊ/¿$3è¶0¨>ÔQpðAwHj.0ì`æ%'§æ•(XÀø)©#¨@j^ z0Cú‘N>¾þ^ÚH˹æ%ç§dæ¥+™š)$%Vr(y¦ Õ† ™@·W(¤V=«¯——_Ô¢PPZR«–_ÄŠ#cKýÂÒü’ÔâLp0%¹P-HÌÌ+ ©,€!È5`¾!„\R”Ÿž™R’¬Ä7±¤(³"Ú@ÏÀÀ(„0V,¦ïœœò+ªuM-€Ána + 3`ø˜×¢(L.-*†8yÃÆOË:;5µ"5™ëæµüdë–¬M-{~lp”.×}z–íþÃ}"v˜–¨]_PáÃ>ËýR¡SBÊZ‰ÓÓn¬l»x­FZëÝs1ç4Þ›æ1¿„Áõèc§º Oþü|0=U.%_*ý¼ùôÎÇ‚ï'Êò'D³D«O¿ö§ÕüñóuÏ–üÝWü<ÊòµB®Â²oŠÓ¤Kzçí{ÍÔ©¨ò°äTdŒ@ŸPQôŒÒÏÐó™ZÌ•ÿzмšr>¦ÍÌêŒUãü²mÊ\ÝmI—ß–Üçè{^³øë³ù5gxu¾z¥®ªNš~©.í­;sAæÊ’~·8Âçv®ïÚZSùîø…Ì-íBE9oöÍà=rî\á9™«=ÿÏŸ¢ÇºáçÙz¡ë§y. ›ÑØÏÚS4Ža{äêÒ‡o®=‘±°Z9èÖ±$æÆäŒËØ8|™ÎË?õ42_³\úÉãÕ›>+˜ž›Qaec°¿úêëe7 ß)ú¾®fÐ Y[X‘é3_õ¾÷ä›J¶ß|–ÐN´uXº?®ìê…›'ø¼&Om)jýÞ^¬ï­üxWé=÷v¦3”<¦6Ë*ëŠ9b¶»ÝµÜþó£+ÌÇïGÖÊVOLˆ6dcñ ²?pNù.G‹&ë-þ_ëWöœùG³¥¨RwHÝùÎP‡W9Çó~É|Íœm]÷pëíCŒ¢;V_Òôe½§¹iæúeÉæ8e‡>GŸŠμºR\ý#î`!_‚¤ÜËã·ªüäxßÖ{¼£{âo­­Ü(†I“çÞvý|c‰¦Åì¶ÿÍ\·âO7§|ã Wµž­Ío“u4æŒ(Ï÷k©NYê_ì×{³°'øôq?Çgzª;ÿº·³MÝÊìVÏÖ§~Z3‰šü&¹Kèá_¶¨ði®÷El³lŽºéJÁëÕfm¦Ììôšä·›YFlˆì{“ÕæTŸ®¸^q$1Åk}Så¼µO?ñ¬³zÍ!»Ò¶íí§‘¹ÎÕ“ÜnÙÆÍŸ¡t'Ó€:PW endstream endobj 1014 0 obj << /Length1 1644 /Length2 1359 /Length3 0 /Length 2148 /Filter /FlateDecode >> stream xÚ­Ty\×6((¸´¢€ËEÁLØЬ²E kØ ™! &3y™ $*‹PÙTAPQë²¹WA«´øŠ¨(+ €K—V}°“ðÔþèë?­ÍÜóÝóå;÷ésÎ0¬Ä1’Á2gÚ_T-%üq‘/Îæ0üPvk ##W ‘(޹A$bx Ü>°°,6›­a\q±\‚ bI`äÏ3¥ÓÍ>YW@´üBy¨ÆÔO<"ÄÅ"#)Š¿í€ €ŒE@ *D€ëjn¨—¯0ñð †H !àJ£…(pP>‚ˆ)ˆÁ%@8v|ƒQEi„9ÅåLb„RnˆŒˆ#JÔ?@ @Iõ€ÄŠñ…RX‘eÁ• ‰%8uCDa'H‚/AÅ$ ¢rÝVŽåIÆB¤"6R0Àc¨›0Η*JRb …’Š€Dd¤"V4`” !9›"KPeRÅŸ20DI`!B Å­èΧ:Áª‡Äb¡\é+o}Ì% Dc®Á² bòI*¶Å4–*fÅ ‹Á‹9f‡¥âX<"Q6ÈD13¦TŒcB9€‘¥¾8I…&OeóÏ'ògø³üYäýgâŽ×èøŸ¾çñÔ+¥B¡/$¢`lÇjÉ@ ö àÅ¢B’?ù@"T(ÿ+¯ñ·yÈXºAæEBT[œ1% ƒmneÇd(±•!0%ù± R}SÚƒ0‘Q ¡ôU¶0XLæ8,0å¯ÅBXA¯‚’LYÃRgNHЪUô?/YF€¶(–í˜ — 2P.FÀÿâñVáðǃ‚ÐÅ—õ –`Xر¨×H¥Æ¶°Jü?Á•D¬OçU)Ae œiÎd²(RÅ—©ˆýѾGãŽñqX1H$„ÁÔì}4(`¾T"¡$W®ªþgå+@Â׸׊ó¶Äå•sŠ~t ¿RϚذU|¤&°¬4¥¯KÎOÈ>¾føäVóÚö£çäwûÄ#¼—<þ¡^[¸¸.yq`^¢éåR­ã ¶ôÇ›–F™^ÐÏË\ÿòçÁ¤0fðã®ýü#«Í¿qÁR2åå[ÓƒøÒ”/ Å3’ø{ªsf«Y;afåÁ¾~ãÜŸß.¾Úø}õº_U/?Ò£ïÏQ7r€æ$íîÓßEÊ×HÞÔðGU‡âm‰w‹Îð*´rƒÖéýÖ*]h8ýp«à¹åÁ{gZÓ©5:Ç'áEZêÔl‹²Žf ¯»6zGV}ÛêÕßfóÓ³jGûüµ…mìltê“ÚŒV|ƒ2ëÎQ­`'Ï«w ÃRwÀžÁL;Í¿ÐàŒåͶVUº+ŒÜgd8U¦4ÛÕåt(+ò™¸`ÊòKÊó¿«Ú×Ïe4,G'2²XO¶½ù×2¦“Sh\ê’þÌÁÉCþG­²Wt/ÓUÉë¨Õv9ÖwâvÃ=ÕÉ+òOe_Ô:™àó¢ÇÈrH'M˳CT»Ð>Ó«Øèõ†×»#ÏÔ…_¼”ïn½izËŠ5ÍO¯Ôúîš"¯iõ¼ô|Â7>êŽÙ¾%IV»ÃúGf܉>y­¶Ö,<ã爇ÇõŠÎ»äÖm³éÞå0¿ ¾´Òî6Ž_t ïúôTÙ¶µ3Z²¯UÎôn¤ D-0…½Þ!êÕÀáBXÆÜð˜êw¶¹‹Tr¢Ûº’9ÃMí“]S NVÙu<¡½äœ8ÃØHÜ£¾!>¾ðîö’âòÙ=ÜÙ"­?µ~7mNè­Câšq{s¼ZÑý¼í±eÑkàWÌçåM¢Í lr¼èwÊ[館8^¸¶sSä÷oáñ2|6ÐëÊ=`ƒã!×’=«qö¹•[‹4ES¿‰Ú*«"‚5ãe›Å_²J¹–θà4ûMˆ¦Û¯Ÿ—ñÞ•/š¥ºÍ¥Áþs£¶ìïösRSK|JštöäóÁ«%åÿu{ô ³$¢0ªmÕ•é,•s_àx9Ž®îøÌ¯ Òd¾ïºsù€;æX®ªGkôýj/gkÄk½³Ýž¤½ê>ZÜ–vÇ÷œ©ëŒ–½õù‘ÞvæÚÇØwl¼f¶‡$wª·´ z_vz]ÙÜá6bYéSÖ×ô|cÍÓ–·õû‚Ãà™'˜ÃÙ/¥ë8—Ë+T¹1 EdoXI"ìÌC*´'¸ê>â1ã0}ûCã/Ž ]' ¬Ü±d'â”%âÖMÇsË-‚X¶6¥¿´ŸqÊJðè/<5¿‰fªWOXÎfÝoïK¬æì¨ÒøuÜ<³›:ºm–7+­éÖÂÜü¤{-h¦÷TÁ em¦¾™W ¦©©õù;õLg]¥¹‡,cM;G·ï˜ôõ3í‰qƒa;»Wmn9í§¦³išÄÍZm‚‡4—¾iq7ñ¡mwá¬gw ¡O« ߥ¶H§iév•;쉶ÊFb6/ »¬'%Îw6_ŒŽÒÖ¨týDŸÎaÑ¥ ¯ÂlÙ9[õ±€ß²zµ6ø­JQíõ rŠOªÈ n.¾9PZ,ªæÇrÒ¥o­Û‹7ºŸ³8sshµ7ŽMŠ å6JSÍ‹ Üî’£ôš‹j©½·¢FýÃéQ§MÍ»þRÕâtˆîmÛkîë’Òïy¹–­™kPcÁŸ,½Œ/›»ð×~´ Ó!÷—´à”Èý“^>ÿáÜOXžxkŠ|$cïÓå¥ýý:ß/†ü›ÒR¦ñetD?É)F Öí9¿c‘ýÁ€³:›ÛÞë¦Å¤OÝôäöÆ¡ú¬†ís†Œybÿ*Ò)ñw8ºQ endstream endobj 925 0 obj << /Type /ObjStm /N 100 /First 897 /Length 3340 /Filter /FlateDecode >> stream xÚí[ÛrÛ8}×Wàq¦Rˆ;°•š*_ÆNfí$c;™\*µ%Ë´­.ŽDe’ùú= ‘2(™ºØÉìËT ›`÷éÓ €d”5,cA ¦3¦l`. %™)§˜0ÔÆ1x´“Ê£­™t8 Ô ¶cZùV¥˜ò‚\TÆl†q¼aVCN f½C·‘mÉœµLÅ|Fm5Æ Žy¯[Aéx/ ¬f^@,£N‹ŠFE¡" NC-!µ…,z¤§Á –h‘¡b! …β–œZ ‹5¬À0¨éÆPÅ’íQ† …q•Ã-‚†Œ·Ô<2ŒÐ+eZK©é”Bvƒ>ɤVIcä¤íÁžÆ1Ǻ —{EÈ la€Ê, Ã"C %@€ •¶ð*ŽÀ’LéÌ¡‚#©˜-.#?Â@4à(è åá!ÜËF× â$aN€/€Ÿ†Zà'`tXƒ›‚ À#ƒZ’·iPIôñ¶:´x -l ^2“^3ÀŒqÑt9ø`¼¢ŠgV:ªf\ ç23æÈÀ°œª ¥#Ú¢Š"»à*oñlñ4Bà²Õ¨)l<íðcC<Š-q?ÂÊX˄ע%“•D«èPO55VD5á˜#ŠIOHy¡2Œ†{„ÐÈÐØ¸ :k`R¼“rÒµž>mñö!‹8tȇÅ©ÉÓå-~šOFÓq7ŸÄl»NòË^goô•}ÈÐa¡8ü·éŒq-HuJÍ—.1?êÖö0p ¦š†•ÙZ êõCY#Ú`òZ1©Ú0s˜ŸÛkå4ü¬² ä´i› Ä„k#¡¬SÒµM¶Þ "?f”õrÀN!­•“²œÙžÕu"ë˜U–øþP"+·DdeJde7#²²ë‰¼ ÓDäE±"/Š5yAÌÀ£6“ Š]/‡ ¶­Åz9•é¶¿Rj1ñ`£¿+¥îåC)¥Í¥´ÚˆRA—iuw8a¨qFºÐ"ŒŽ ·Žr-¾7_æã8fö‘?ãÏù>˜{?’]¨¯½m Zõé¬í4­J²v uDä‹ÜÙô¢À˜ü¸7üÄwŸ>wà»Ý¢7ò3þúô9•ŸnŠâvò/οäÓÉ_íë^q3½h÷FürÔðAg8íôÛ7Å ÿ3ô|˜ªN´iõ‹•FK áU[g´ È©á‡*J Óz³®ÉÝ ,ĺÔÉûçî†z‘¬–Y+ÅO#–ù¶âg‚ƒÉ6ë&G#kç7‹Ü;“`ª!óV5f9rz020©Éâ ¹ò§Æ,ìhÂ#±°Ù2þÁX„cQ÷qƒ‘ÆÒƒ±ÐKXÌô{Vm15¹Í3ÌŠe ¼”U x†(,Cä:éY»b²+ó?‹ÀýŠˆjBÁn¿ma«Íd[ÃZÙ¸ª±Bµ§‰g7âxÆøÑè|Ä€þO“<Î'mÓ?³ú aý†þóëy 2I³¸|ÛÈÏ5ö7¬g¾K(8µäg'6ó³3‹¡PíU×AY“Û<jG‚×jÛ?î|0ÒÌ~Ù?åo+@\dYöð#àT£€:V¶pm¶âßÝîëoÔº*C9‘ÓŒ±Lc n2dzÀŠ:MnTè\ÕO2±xŸØ …Ü¡¥'ãCT’tô”˜žûªÀêO‹, )Æaq$GƒtKG*tNg³>E²¥<]§éa·IÎ Ô±îvè« Émócý*ÿ!†U%áˆ÷´ RØ`Ñ‹#*¦ô~dÍÅVÎY¤er%±ÊùØ_•ÈaLšÄjÓ1Ž™e•j£*Ô$ÍÎbV3U»Š¡¨â†Î“•¤_*[ã½p¾jG9ê/Ñ¡—`¤3é­“I""FEÃtLm«ð«ú]ymÍ>æãWc¤1ïÇ2t„ßæÙ ¼kUhÎ!Ç);¿±- ‹ÆKËÜq™_ë8 ó‡:nNŒQR™Þ_F é¹gâŒÊ•ãfoK‡”õ*1V×S=uxš@©?ê]Ú¥±¸ŸÛž8¬:¦ë^ÖÝ=vW:¦˜¤ž%ì˜r)秨bóØp 1æ…ÂAesTæ„Niiµt¾>ÝP»’+NljÄJMa5^Ô㡚ÓÊcÚ?¿¦¬û²nšVœWɹXçÜAi[Qæ°ÑKͲɴœ¯,»6´«û¤ÙaÁTÊͯ+ë¡Œäª¿Žšž£P‘8=ª2QIm¨ÑK×*ó•%ºÖX SõP˜Q™SÞé»TP†“LCžFðzÞ÷Â÷"<¿.ê›âCa~·ã¤ÍÜA>éŽ{·Åh<Ûܽè èÀÙûgOöOÎÞ‰ 'úë Ó3‰½¸ñÜ‘íУ+!Ý„lïNº´ýÄú ûØÎí³¼w}S0ëö–ùìÜŽæyÑé÷º»Ãë~Žtœùà ²}‹¿-¯ÒJ`›Î˜¶Ž?ñÎx<úsLg~žiqØÃµ¡þbhU{ûÏ~}ûüÉyþöèÛ8–G“½Qÿò~lGÑÛ}eè½¾LM”.516ç&Jê&f•"µÐPãÎÂ]¾Ç÷ùÿ•ò£øtå7~ÌOø þ’¿â¿óS~ÆÏùkþ†ÿÁßòwü=ïð ÞåÝQ4Äï`Ðá—<çqp~ůzøû’ó«Ñt̯ù ¿ùv{“yÿ—â}>àC>ì s>â#üÞò[zxÐϯŠY-‚ÍoóqotÉÇ|Â'ù\>é}å/nÆy΋?G|Ê¿ð?ùWþÿÅÿ¢u÷èmÜóæähwÿŲ{fP68IWNÒñã ©R'™º“Ì*'íyç&Õè¦SÀž¾˜É ŽºõvëOOß¼Û¯¬?Ïǃ|%;½…áô½‘¢oQ„ðw†Çˆk @™é&vªÄŸuv'`â)8c±íªF²ÞƼªjÒïLnh5^æãIw4Î+~ÕÁõÛ€ûúÝÙ›wÇ àžæ×Ó~gÜ€¯¾ÒG|é+“D-½ewØfMÀf2Ö¬ û¯ üΤÛëu{ãît€z.N>Á'î§–1¿£™ú²>ÿbÚïçEcîÈ?O;}žíö;r0ýõîòIEJLûEï¶ÿ­âÀp:¸€{×õi†¬¢ê¶?ðÏüótTä—ý(]5fÄÖ]JªAofÖÆôjN`ånecš½:þòèdf«Ò—Æ`G:zZB?™Ë’(¶¡ÅÔL¢Ø,¦/SÑÍët•«Ù6cÚ"Ƕ`X>çWé…FÚ5òmxI.Ò®iòêó~>™Üå™Gqì{0ììÚjùòú·‡'ïŸâëEQ4,Ê<Ílô•­ ´L&ìÎ&“²IX׺j\ b.­ÊZ?–G‘@uæ\ónš2èÓ÷eМ63r<2Ýlµ`úý|ÿå³="D |K_•ú†U&t°ÎÖè üötX^!¤dhžÄV‘áa>_Ÿ4–¾É²·–#¶[³¬ôòV Ãß_žϼ¼sÖï ‹ÿDý@ï„^9›ÜL ÃóèÞºkÙeL7m`6\òçb°V.ltÞ‚ß¶Zs¾<:8=zù¤è6§kúì~‡¾~‘ï•{ÄSˆÆLçòëq±íŸôèÚºmb«…λ½ã“—¿‘m™Ç“e#Ã<Ÿ=Â2§)ØlÍVëîñÛ×''O^ôÓÉéhðbŽãî`]¸ ëËMBŸöë4àj›ÏØL6Ÿ¾1àLãV¡ÙÚ{f_‡ÝÑ%dq×ÞÕUŽH />(‘óq£k„]±NbR” 8&]Ü+ôâáªÇ”*3S&‰T¦\5“2ÒÕÕ½¡;O&1Ï2C™ ª=x cJ³1P4Ï’rœâ”vLݳi#ÎÕ"®ZÎÅù!&,´1«%¶ÅI­2çn]dœ»Õfº·¦¬—¦»òÛ瘺ŠÚƒ—$ËV«©x· ý«l¹%„3õ|÷q9|’O‚¨±¸×™äñ›¥G†µh‹ÿÓ&~ºrØO â4èÑâǤñGﲸ™Ä—ÇQô|ôz×\æw<¯RhÅÓ¾EÝÌ¢nÒ'º )ï” å'8–ñÿï,¨+¶Wví³¯E•Ý¢ÊÚ¦*Ónp®röCT^õÀjQÛ°¤mÖ°?DÛ5O€ê ÇÏ45|¥N4ö?DãÕ–VkNáÝ ÿœíÆ[ endstream endobj 1016 0 obj << /Length 667 /Filter /FlateDecode >> stream xÚmTÁn£0½óÞC¥öÆ6„ØU‰@"å°mÕT«½&àd‘@†HÛ¿_¿±i³Û=€ž3óÞŒ±o¾=ï&YÕÌ$¾çìÅôíÅ–f’ßwÑÍMÑ–—³i†Gc*S_ûölÛrgv›o‹mSw.xÛ”o—ÊŒQÿZ™SÝ|†@‡Ý¾šŸ;üm'ÊN8"_ëáÍE|ýÈîFá?Œíë¶y`âžsîˆuSåíîûh°éèéX7• 6ئ"!YU—CXÑ»<»1 y÷Þæ¼mŽm´X°é‹ûØöÜÝEÓ'[[7'v{åËñ»K×½x`ÇK$béˆ5ð†ˆyá¡Ú½¤LGH”—”Çv"fO(G¤Âá9â)Š*D+¨HŸ¢c‡uB„ÈA Bû;"C,§jdkßkjnì"ÑcW寽u= —ËB£ém¤î¡uü¹†0÷&tÆg>msåñ X{œ¯¬ž6Ñ„gX endstream endobj 1018 0 obj << /Length 691 /Filter /FlateDecode >> stream xÚmTËjã@¼ë+fäàxfô°ŒaFða“‡e¯¶4Î lÉÈ2lþ~§ºå„,9X”Jý¨.÷ÌÍçÍÌ4ýÎÍÂ{)^ܹ¿ µ›å?·§àæ¦èëËÑuã£sk®_ÏâyèëÅm¾.Ö];ÞùàuW.»F}dÝ[Û}† ¸}u¿gcýw7Ž³Ý¥=Œm7“~mǃúö»ð¤øJ Júå†sÛwBÝK)=QvMÞ1Æ9˜ORÄü*nßvÍ0é;¨ ”M[Ó=ë£÷É›÷óèŽënßË¥˜¿øçqx'wÁüihÜÐvoâö«4ÿis92„ V+Ѹ½¯èçܘ;ãGÌëûÉ MïŠuÕ}ãΧmí†m÷æ‚¥”+±¬ªUàºæ¿ogìöS¨Š}¨JüCK®‚eˆÜ0ó)=–iäqS„a´ÇfA{ÑÆ0‘y¢† ‰°H±H·œâ±'b9ÅRJ¢d"'åWñ⪹þ³¦é¤LPX*Έ€¡Kê<¦æºÈ#V–ÇÌÀ c¼àÜpÊ<ų¦6ÌC®´Ü—bræ-pÁN¢¦ÒŒK`ÔÔ*ƒf•1†u³èHÃyÍ:5fÑ앆¾Z+Â9ó˜K³[õuE½"䆈ыÚ‚sÑ+,™‡þˆxEõãcø—¬MWŒ¡-!>I0WJÛ¢5þÇ”r§EIyGÐ+å%rSó9Wj?×&¥Y؇”}3è›–Œ¡3c r³ˆ{á¿ËhK…3Þ^ÿ³iÔÌXOˆš™%^aÆlš¾eÔ+.ÁöÖÀ[ÃÞÄØ©ê[Ë~ÂËžS|A»$ øY1®ÓÓÖâ$âÞø8äõeüù§Ë…Ž5tÛ¹ûçÔŸE?º¸®7%Þžªà:vE endstream endobj 1019 0 obj << /Length 690 /Filter /FlateDecode >> stream xÚmTMkã0¼ûWh…öF’Ç.! ùrض4eÙkb+]CbÛí¿_Í{NK—bÆã÷1oò¤›Ï»™©Úƒ›…÷R¼¸¡½ô¥›¥?÷]ps“µååìšñѹÊUׯÃxîÛrçFq›n³mSw>xÛ”§Kå®QßY÷V7Ÿ!è#n_ÝïÙXþÇÙáRŸÆº™IľÖãÉÇ|÷YxN|á¥ürýP·ÍƒP÷RJOäM•¶gÌ0óI‡˜_•ë¦ê'1âiÒ¢ªËqz£gyöf y÷>Œî¼mŽm°^‹ù‹ÿ8Œý;)¼ æO}åúºy·_”ù/»K×Tl6¢rG_ÐÏþ¸?;1ÿnÀ×÷Î MïŠU•må†n_º~ß¼¹`-åF¬‹b¸¦úï[‡㪖>TEþ¡¥ 7Á:Dn˜ø‡”ëxáq¼¤ ÂhÍŠ"<ö¢a"ñ„E a‘b‘n9ÅcO ÅrŠ¥”DÎDJʯ—««æòϾŸ¦“2Ba©8c ]R§05×Y ¼`e1ð’ù 8bl€Wœ»Ž™§x6ÂÀ†yÈ•–ûRLʼÎØIÔTšqŒšZ%ЬưNc½Ðp^³NY4{¥¡G£¯ÖŠpÊ<æÒì–F}]P¯rCÄèUmaƹèæÌCÿ‚xEõ—+Æðm™³6\0†¶ˆø(Â\1m‹ÖøcÊ%æA¯˜g”ÈÍç\±ý\›˜faböÍ oœ3†Î„=4ÈMÜ ÿ]Bû˜+̘ðöøŸL³ fÂzBÔL,ñ 3&Óìð-¡^˼ao ¼5ì­AŒê ¾µì'|°ì9Åg´K2ƒŸãb5m1m-N"n3^^úÞºZèXã@×û¸}º¶CýèÚº^’x{*‚ž©t[ endstream endobj 1020 0 obj << /Length 708 /Filter /FlateDecode >> stream xÚmTMo£0½ó+¼‡Jí!m0U ó!å°mÕT«½¦àt‘Húï×o†4ÛU ÇøÍÌ󳙫ÛYZw/nÞJñä†îÔWn–ý܃««¼«N׎÷ÎÕ®>¯wâ±ïª­Åu¶É7m3Þxò¦­ÞNµ;³¾'Y÷Ú´ úˆëg÷{6jö>úÙ;A òs3¾yÒ·ëÂÅ×  ¤_®š®½êVJéE[gÝÛ‚ù$EÌÏâöM[÷“ñuÒ¢nªqú¢wuð~ yû1Œî°i÷]°Z‰ù“_Æþƒ4Þó‡¾v}Ó¾Šë¯ÒüÒöt<¾9È2X¯Eíö¾¢ßÿýîàÄüÛ=~rž?ŽNhúV¬«êj7w•ëwí« VR®Åª,×këÿÖbÎxÙOÔÔ0ñ/)=Vfá±Yú—–T{œ¦ÄðØ ­â@á r 0,jؘû@†@ÁŒtD˳¢êÏ®Ÿ´K¡µT—M¤Î"`ê¥ó xÁB ð’ã9pÄ8Ž976'>ï;-SŽ'À–û'ã¸ÎÉ…šJ3† ½Ê('ŒúZ%ЯÆðD³N½h¶FCf=tÂu4ôh­ˆ“1ûÕì¢&NI¨‚£C ýaιè‡æ%ö¥ã.sƨ¿,X§.‡GÿœEDœ(B˜üW14yñÓ¨‹ÏF_ÎÂðÝHqÅ('bï ÃÄ„ùî¾vÐmØ; &½xgìå&ò…ý5|6)ö` Æð"ásJ‘›,¸4%¬!Ź&¤AQ߄¶„üR¤3əߪ¿$S>›gcYˆšvú§ Ç²~ ï¬å³!ÌçG¹9ÝW™Ã»’qO ýø—1y>ÇDuê{?Ah<Ñ`ÀHhZ÷9ÁŽÝYôÐè;ÏZ|=”Á_4« endstream endobj 1017 0 obj << /Type /ObjStm /N 100 /First 895 /Length 2074 /Filter /FlateDecode >> stream xÚ­˜Qo·…ßõ+øæœ!9$PhÒ6E¯ç&Îms/ŠÂI„Ô@b¶|ÑþûwW¢(O˜ÆéÓ®VÃ33ßp÷H[¢8ïØQ'>8f8\ä’À%öN4JD\JäŠÆ†‘.é‚×È”±—•9 >ëšâ(úâ¤ÀQ"ïrÐàú}®W2Á•bW$:xÒï=HÏô£žÁ4«ž±¯ô,80e¢†±–‚8.z¢AÑ“«“VÉ*š´ÔÀ,Á» Τ«ªbÕ! .RV¢c£^!ÇDâ‚=)ªãá©8.Yñ ,Ê)h¥\¼ž ÌÉqÖ NAƒUqÅ¢ÁY cÑଠ±Ââ58¡ªkp¬¥(PŽZ®²Ñ“Z®rç å2sM¨M*Pf Y•Yƒ£Î„uF!±Ô2up ”§ f ®°rRe¥J¨Íy§œ4Xç¦Ò`m0Rª$²‹qm0r…6¹Tl¤bÓਠBŒ ±¢uQ|e¬ÁuŸ(u³6m0ÔdÝ,^•µÁäµA•KëôRÝ€¦Ý¦ÁÚ`â¬ÊÚ` ©ŽZƒ£6¨Û îº48iƒÐ“$UÖSÖ¡ ¦¢ N³hƒºµtokƒ¤éë\u—ë^U Ñ 'Ñ K½48hƒuïIÔ ’^•¤•‘¤º%¨ˆ6¨ÛIÖ½S;‘¢ôªÔ¤¤™´š/“ò#-.£îyí$3ÂꫯVGgþ¾vGß_]nVG/n_o¦õ"­Ž߬ë7îè›ãŸ_žœ{|úãZ]Ü©‡»z°Wýõœžù'‘äç$‰Ârœ“$Æ|Œþ ’$žE–ÊS^’”%y™;“y÷K" Y:yÃT ™<!A¾ É2Y:’´ˆËr]–Ïó^¸g’Oü“Y¨|4K[Úó=[ÃOGùä"Æ­Èv3î,;½Ý¼¿¸¬+§§¤[\¿>#§ŸþÓ§íȶ+/6ï×úíBôWÃM§­“åiúìzýÿé‡ÚþSs^r[»åõE[]ÿn«C[Möê§ë?6Ó¿cµß­féWog0çæý_L»R<‹ô‚ç!’pjIx˜„ö æbÌ5ÊH ÒiEC <¢­µ¬&kuüvÌK%T:tÛÂftÛ-èÂa’6’A’ú§`¯`X;…Ú¨ÃnõR°Õ.5ð¾ŒVûûm•Z½ Ù‹tZÆ»’Æ^†ì…;-‹½4ö2dŸ:öb±—Æ> Ù§Ž½XìScŸ>Â~^,Ú©ÑŽeôŽ+öo–º×j»2ç×jÛ'ÄòZ-ñAÎØ¦£s©ØšClsˆ4|áºW°‘º’c÷&pû°µßRló 2̉¹õÊ™BX8ºá«ýÐÆe´š»Û#X··ApjuciuýZˆÜ endstream endobj 1089 0 obj << /Producer (pdfTeX-1.40.22) /Author(\376\377\000J\000e\000r\000e\000m\000y\000\040\000S\000a\000n\000d\000e\000r\000s)/Title(\376\377\000V\000e\000u\000s\000z\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)/Subject()/Creator(LaTeX with hyperref)/Keywords() /CreationDate (D:20230226165216+01'00') /ModDate (D:20230226165216+01'00') /Trapped /False /PTEX.Fullbanner (This is pdfTeX, Version 3.141592653-2.6-1.40.22 (TeX Live 2022/dev/Debian) kpathsea version 6.3.4/dev) >> endobj 1025 0 obj << /Type /ObjStm /N 96 /First 904 /Length 3101 /Filter /FlateDecode >> stream xÚ­[ÉŽ$·½÷WäQ%@j’Á4 h`À°,’}æÐÆ Ì†îÁþ{Çc³¸3mÀ§Éƒ/^lɪM´¨E›´Ïÿ¸E;ÃÿêÅh»hâ%­i¡Äj*-Ö³Žr‹#–+½x¥–è.Ѭ[bZ¢¢%º%ñ¾¨—ík[³bk,ö°x;[3Þ/^/šXɱž%{çXÏ)»XÖsÞ,lW{ÆjY/°œX/·°HGë L ¤x X‘vtÇGchIüO2‹[ ÙÈ oµŒ‹Ÿ°9eoNã‰Õ“Â*©…@)Ò̉òx2|¼‹wüÄü8ÄмÏz .ê¬ç™½W;èŠâbMÄiÌ£µ™L«ØÍ„ÓØK¬])³1>ÃÒ„d=»8“QYÄÁ!0ìªs*¯2‰>å½qq1à ÞæUFÅÊÞX `½%Xáˆ{¯=ŸÁú¨€ÔYQ„ç– }Þá9|.ïKp”õ"‡VãŠù\¯8°pT£‰Hadø|ÈÁ€o9W\ÖC®$ØãTHÖd+aIÞe½È)³^Î9Å 2ÇÐ +¨ ‹:ñ99ÓTr@*§ §_†‰„×v}d÷ôJ=øÒ>'{È9š¥‘ÿÖ1g'´6*Ss©0Ù¸1G€5C9òpÝX䤊¹¼t~ xÌ!Œ×úîÕ«»û¿?]ÞŸ¹ ,WäÏw÷ßñ£^ÿöø|þxÉu¹þý|þ#mþëÇó¿.¨žü×ÃCcKm¶Lصå[$Øâ˜m¶H¶µî¾âêv›m·NínelÅ7HìU÷OOÏ/—Ìñ—½þõý§/lçß©ãíH×YÎX}×’·ú­w6«&Z ‚¾A…¹©ØZ’@©[T‚²ù JK›·¤4ß›BB¹ÑPÚhMnÇ5v@ic8iÑNÞšFÓFhÜã³I$Õ$RA·æ‘jóȶ§ÅôHóÓ| : 7úCK¿¯i ‚»a#<¸5áQà;l|-šÉ;Eß^æ{=ÓÕ ‡šá+œB0µæýF°§½ÎÐij´œõ´âÂÏkNú‚ßáÚ@Ôát n‹ƒsÓM+ôBÜ׆¡iÈVÈ ·…Á†5MNè"v£ÛÒŽ™Ú Ýh¤47Cu;±B7¡Tr;fêä¶«·¡I;¬6S˜·yiv(n†¥4+o£ÒÈçÒœ¬Æä<9uMê5S¯…Ð ÈkôKÄn ÜÆã¿uô°=*{±ÔÁƒ¤4öp0;tptƒ!9Ñ2uïb~©mñ}«q爽Ìàê5‡ìO­ò 2/âç{óLT—–,džÜ ‰÷¤NÓä«Yì…yºM ¯8å)dÕ8˜ÇÅS R\=;šYê!í\! Ö]°43=7+˜F{Š›2Õ]Z³ÀiàVõR·D—÷‘qøt¾¯hí)pU«c·[sùò[•=@´1Ù®0ªòG·Â‡l"?sÄ­Žô;FoZ æw£·]Á'2v.d+cçjv#v³oWpÙ½PŽÛö\3k%E%™3<q]Ô‹+HZ%›Ë%7RåÖ ½ÝñΔ’ï÷íy—5z“’OEÞ)'¯!ó¶Þ­1³‹n ½p{cíÖ8>F˜Ô#baç¡£Æ'άMœád44q&aMv&÷‹(/s{è§?I;ü4¹YÈ~âb¬ì'.FÆÉ~âzdÜÄOm»­tkà|ü¤A@,ì±ð ‘þË ¸KœÇ—ïâÄÒëó «çÿWQÿ,ðߟÏËý÷—Ç÷ŸÞá÷€ïÎP*¿ÂüéËåýÓÇUT~!˜{mþOן¾;ÿõÓïçû¼œ‹zþðøÛùýË«W÷?~ùðò«â‡_î_?<˜üðüðà‹ä c¹ÿéóùãwöbo?Âý¡c, endstream endobj 1090 0 obj << /Type /XRef /Index [0 1091] /Size 1091 /W [1 3 1] /Root 1088 0 R /Info 1089 0 R /ID [ ] /Length 2578 /Filter /FlateDecode >> stream xÚ%˜Yh%YÇëäÖÍM:N§ÓKÒÙ:[gé$µ³Tgítö“ξv–NćÁEEðA ‘чiqÀ£0 £O*¨ø2#"‡yE|pÆåÅ£D½¿ÿ¼ü¨ï_uëÖ9ß÷Uýω¢(úŸ‰¢Š¨(Š2‘‰2ß/%Š¢ØÜA3 m­‘0b´Çh „YPŒ6VO˜%h hu„¥àÚ Z-a¸\ÐÒ+h· ËÁ´ ´ pí*Z5a%¸†Vv‹° \GkA»IxÜDkES¨‹«ÑÚЮên£u¡éVzÈ:´ûh×5À´hz Mδí*ahF{ˆ¦!´€V´ ´+„mà.Ú,š†ß:ÐÑ.v‚.´U4MÝ=ÐfÑ.ö€^´54Mû}Їö­„°  m¡)eƒ`m­˜p<@;GSºGÀhA Y´˜p Œ£•£©TðMù-"œ“hʯÊl L£U¡©&gÀ,Z!=™üá#0‡víœð1˜G»öŒp,¢µ .e´n´S°ŠÖƒvBhÁZ/Ú1á°Žví)áØDF;"ÜÛh#h‡„;`m í€pì£%hû„:qˆ6ƒ¦KtÓ§hÐv õ@'hÑt{ æ mm›Pq޶„¦Gc}¡ÙK¿I³‡Nl¢‘O³‡u4ÆæÉ §ÙÃ&Ú:!Ù÷4{ØFc^<•ãiö°‹¶FHÕyš=ì£1§žŠõ4{8D[%¤Ú=ÍÎÐȇ§S<ÍÎÑ– é2_h¿ŒÐÈ¥§C=µa‹Ð én-F£<Íî«ÑJÑæ ivO½Ø*4jÈÓì¾MÅ5GH³û4õçiv­m–f÷ÍhmhÔ®§Ù}+Z;Ú4!Íîï¢u¢Q÷žf÷hýh“„4»ïBD£g<Íî©]«‚{HH³{êÔªàè7O³û>4Ü8!ÍîÐTpôª§ÙýÚ,Ú(!Íî Í¡Ñç^E›G{@¨Œ£-¢égúó‡hËhC„zðI´U4ý¥=¶6@¨ ã1ìšW“ÍcØ´>B%ŠÇ°{hª’ÌcØ´^BaÐ4M*.êֺ U˜khª5M±Šš6pªµ.B5màTkJåi§Zë ¤=màŠÑ”Z:ÙÓ® í.!ÍîiWަ² ÙýS´ ´VBšÝŸ U¢©¤hvÏœj·™f÷ Á©vUŽ…f7Ï ÍÞYÎ8œ øšŒÃQíùF `ŽjÏ7fãpT{¾ž0JКÐêKÁ%4: _KX.£QÙùÛ„åà šÞÀ5„à*U—¯&¬4»S±Þ"¬4»£Âò7 ošÝQMy…ºXw©1Ñ•O†_yµ€ëT“Pó¼ÖDuÿÐSâN*BcÓ(ëLÔ0¬K49šµ&Ð Z@+hwA;è  ÜÝ ô‚û ôƒ0†À0xFÀ(ã Á˜S`Ì€Yð,‚yÐPÌkÌà«ážsÂ%° VÀ*°` <ë`l‚-° vÀ.Øûà‚#ðƒp ÎÀ3 '¸ÀÊ| Ë™2šY {™2•¥@V² ðMIÊ_’¤ðýH*1©ÃäÀ&·&0©õ@µ»`¢–wô@·Môì :Âð%›—4Ì]Ò°tIÀÈ%íû–tL[r`Õ’€AKîƒ~P(¸ÁŸèpi ,0ÑH¥´A€KÆÀpáįubðjÎk^pZɸ‰Æ?¦³ Ài%S•ÌœQ2a¢ä˺“•àZ’%Ízi¼;2£·2cÎ(yðCÉÀ%[XDývÇD›×¶'Ù˜ä`q’#€±IŽv&9˜˜äÀº$&ó»Ÿr«”L§ÆD/}T!U’R%)U’R%)U’R%)³‘R%)¯¥¼NP ée}æ·ºÞ»ºD^þš‰¾4§”J*Ë©;S/©–ÔKªEõ’j©P ´@û§,RyùF½ju¿fýàë:’¡§Òv}7'­ÓõþBG=¦è¥Rɨw›¢ÓH¡¼<%ö›Lß°4>åù"“™úàê 2™±+Ä8¾yš$¥hRJ 5™×t F=¥6Ò%0m2ßû”NÈ|jbÌvú`±Ó@âÓe“ùñ ýb¼tÃdÞª‘FE¤;€H)”H)”H)”H)”H)¸ôÌdÞ^Ñ]¨ƒ@éYSž*È|F&ó‡cYX}z³&þù™>Ö|amh%B~CÎdþô¦.–I-3™¿Î+”Ǽd2~_áe/ª¸é•&žªRÈ$ø@ºÃ-åß:AÊ'Ô™ø•)i¼FÅx)„Fí“:ÁÛ"è£)Ì;"´™øùë:KÑÞ·Eà¥:Lü ½‡E(‹@„ 0`âï,ê,o‹Àë!hI¦‘ó•t‰´n˜4ñoèZjim¥Å”VOZ.i}¤‘Vk&þ‘ª8Ðñfôy µ¬Èe à¬ÒslâŸý^?£,‚ÒxÁY2ÌA¹ÉÖ®“2ËÇßæLü«O(Ä[XºÖ*—XK¯ZŒƒÅÙ[ žw>®_hY u€Œ¿|µ‰ß}Sgk@-`îm½‰_,è„\½l/dev/null 2>&1; echo $$?), 1) $(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/) endif # Internal variables. PAPEROPT_a4 = -D latex_paper_size=a4 PAPEROPT_letter = -D latex_paper_size=letter ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . # the i18n builder cannot share the environment and doctrees with the others I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . .PHONY: help help: @echo "Please use \`make ' where is one of" @echo " html to make standalone HTML files" @echo " dirhtml to make HTML files named index.html in directories" @echo " singlehtml to make a single large HTML file" @echo " pickle to make pickle files" @echo " json to make JSON files" @echo " htmlhelp to make HTML files and a HTML help project" @echo " qthelp to make HTML files and a qthelp project" @echo " applehelp to make an Apple Help Book" @echo " devhelp to make HTML files and a Devhelp project" @echo " epub to make an epub" @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" @echo " latexpdf to make LaTeX files and run them through pdflatex" @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx" @echo " text to make text files" @echo " man to make manual pages" @echo " texinfo to make Texinfo files" @echo " info to make Texinfo files and run them through makeinfo" @echo " gettext to make PO message catalogs" @echo " changes to make an overview of all changed/added/deprecated items" @echo " xml to make Docutils-native XML files" @echo " pseudoxml to make pseudoxml-XML files for display purposes" @echo " linkcheck to check all external links for integrity" @echo " doctest to run all doctests embedded in the documentation (if enabled)" @echo " coverage to run coverage check of the documentation (if enabled)" .PHONY: clean clean: rm -rf $(BUILDDIR)/* .PHONY: html html: $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html @echo @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." .PHONY: dirhtml dirhtml: $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml @echo @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." .PHONY: singlehtml singlehtml: $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml @echo @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." .PHONY: pickle pickle: $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle @echo @echo "Build finished; now you can process the pickle files." .PHONY: json json: $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json @echo @echo "Build finished; now you can process the JSON files." .PHONY: htmlhelp htmlhelp: $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp @echo @echo "Build finished; now you can run HTML Help Workshop with the" \ ".hhp project file in $(BUILDDIR)/htmlhelp." .PHONY: qthelp qthelp: $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp @echo @echo "Build finished; now you can run "qcollectiongenerator" with the" \ ".qhcp project file in $(BUILDDIR)/qthelp, like this:" @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/mbproj2.qhcp" @echo "To view the help file:" @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/mbproj2.qhc" .PHONY: applehelp applehelp: $(SPHINXBUILD) -b applehelp $(ALLSPHINXOPTS) $(BUILDDIR)/applehelp @echo @echo "Build finished. The help book is in $(BUILDDIR)/applehelp." @echo "N.B. You won't be able to view it unless you put it in" \ "~/Library/Documentation/Help or install it in your application" \ "bundle." .PHONY: devhelp devhelp: $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp @echo @echo "Build finished." @echo "To view the help file:" @echo "# mkdir -p $$HOME/.local/share/devhelp/mbproj2" @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/mbproj2" @echo "# devhelp" .PHONY: epub epub: $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub @echo @echo "Build finished. The epub file is in $(BUILDDIR)/epub." .PHONY: latex latex: $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex @echo @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." @echo "Run \`make' in that directory to run these through (pdf)latex" \ "(use \`make latexpdf' here to do that automatically)." .PHONY: latexpdf latexpdf: $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex @echo "Running LaTeX files through pdflatex..." $(MAKE) -C $(BUILDDIR)/latex all-pdf @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." .PHONY: latexpdfja latexpdfja: $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex @echo "Running LaTeX files through platex and dvipdfmx..." $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." .PHONY: text text: $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text @echo @echo "Build finished. The text files are in $(BUILDDIR)/text." .PHONY: man man: $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man @echo @echo "Build finished. The manual pages are in $(BUILDDIR)/man." .PHONY: texinfo texinfo: $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo @echo @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." @echo "Run \`make' in that directory to run these through makeinfo" \ "(use \`make info' here to do that automatically)." .PHONY: info info: $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo @echo "Running Texinfo files through makeinfo..." make -C $(BUILDDIR)/texinfo info @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." .PHONY: gettext gettext: $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale @echo @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." .PHONY: changes changes: $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes @echo @echo "The overview file is in $(BUILDDIR)/changes." .PHONY: linkcheck linkcheck: $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck @echo @echo "Link check complete; look for any errors in the above output " \ "or in $(BUILDDIR)/linkcheck/output.txt." .PHONY: doctest doctest: $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest @echo "Testing of doctests in the sources finished, look at the " \ "results in $(BUILDDIR)/doctest/output.txt." .PHONY: coverage coverage: $(SPHINXBUILD) -b coverage $(ALLSPHINXOPTS) $(BUILDDIR)/coverage @echo "Testing of coverage in the sources finished, look at the " \ "results in $(BUILDDIR)/coverage/python.txt." .PHONY: xml xml: $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml @echo @echo "Build finished. The XML files are in $(BUILDDIR)/xml." .PHONY: pseudoxml pseudoxml: $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml @echo @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml." ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.1405213 veusz-3.6.2/Documents/manual-source/_images/0000775000175000017500000000000014376700261017246 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/manual-source/_images/createdataset.png0000664000175000017500000005706214126044351022571 0ustar00jssjss‰PNG  IHDRä.q8ésRGB®Îé pHYs2v³ltIMEÚ/SsǦtEXtCommentCreated with GIMPW IDATxÚì½y¼$U}ÿ}NUõÞ}·¾ÛìÛVgØq .¨É“Éc¢¢‰?5Ïc4à„ƒbA8 âÂ"åyþÉãËÉnĨ€ìËÀlÀ0ûÌ]ú.½TÕ9Ïuoݺµõ©êª¾Ý}?o¯MÍ©³Õ9UŸúÖ·NCË•jM­&d9NS*qÎ8çdñ ‹•%ím­’hKB<ð8Rð?„öhlÞ D)5¹R)Wk5Âu¥¦V³©¤$+Z­¬3)5Nh¬iÀºÐ5¦áR¡ÊPÁî ¯tÔ¹)œ›P£Óp꽃꘺Ö~ññЗ'w‰Æ¯w^'¯_4?N* å&lºq±*€<@·„ì^$:Ø~Ý (•%%•J'erzZIȲ$+juªy5­ö‹‘²¬î`9áT w® öxFsìà„ÐÙ3–Ö=§©ç™Î…–G¶?¥*¿†“Ž?ñ!usZ•s]WÓ©|:•”Òé´®V*uØšRJ)UUu|l¬Z«Rꢼuú1Ê›bÅ5HÆ”îbq×IÝãq¿ yºUšÛ4;B¥æ^ßÑ]b'¤kKP©Z«¬V+„PNh¨£¤jM­V+„R¿{¶OMf5g´Z«J-ÃM×SÇGçŠô‚®VÒé¬B©¤3­ •¬V+¯¼ºbìäÔôäÌL9Nçrùžž¾U«×äó]ÖÓ"˜a•Í<›OÐì8't1lv·zrדYÌîô5®…¬ö°ŸÁìØ7PßʹÆh VW SUüI™ Ç {oÀúR¯VÊû÷í?15e^é…ÞÞ¾U«× ]"7Jiµ2³ÿÞññ“–Lò½=ÅUkÖòâ™”÷¿²ožIßÊÕõ3á‘¶›Ÿ®ZÏü+£3-A%…sæu3^½æ÷K“åÿýŸßÞ²ål‰Ú.SN}y÷Á·½ý:I’yø«ëÖ zVT’Ž=ò ϾüòËccãSSÓŒ1Ji6›éééÞ¸qäôÓ7­\µ†sƒ6s«~ÐERQñò9çžë:z=·)®×ÄÇmR_Mµ»DêH6YP_ó¿Ô]{ã~œòÕäÀ/7¨ƒy?¢tUyγJ’täÈÁçŸ{ÚóJ?cóêÕëü¯tJ¥£G>ÿü3Þ™lZ½jçŒûgrôð >™œ¾i•¨æ4zŠ àV®ZÍóë Îι×Õ¼aäüçž;ðúëSœÎ ç„J„Â8—(åœ_ýƒ”®¾bû;|•ZÞ»÷å§ž|üùç_|ÛÛ/^¶|E±¯¿Tš8|èàóÏ?ûÈ#ÿsâäÉsÎ9÷ÔSß`=‰Ûظn%½ž3Y…3¬gb×—l» sÝå.V±Í8¥~Ösd+öªäAÒû=*µØ½%r¥æV}ܽûÅ'Ÿxìùç_zÛ;Þ¹|ÙʾbѸÒ_xþ™¹+½túi›¼zRiÏž]s™ ¾íï\¾lE_qV.^xn>“ÓNÝäõ¦„Riïž—Ÿ|r.“·¿sÙòžbi²tø µ&çžfÑœ˜Ìj,–J%»žr†O·qΟb6lØôÒKÊÁƒ:gœÊ”¢s"S"QJùñ_ùÍoÙš5o¸üoÞêsK}ìÑß¼ôÒîß÷œ÷Æ Ì]ýÅþþbÿ¦MgíÞóòüðûªªww÷-[¶Bà^§qÝ1zMl&6¹:&v0+Û]µ…„›ØKñŠGQè°—#ž8.™&^ĨÔ'Oô·¿~é¥Ý¿ÿûðÆ7¾ÉØ}ðСË—Wúž=/ÿðßï3®ô+V:K¡T=yÂÌd¡\û‹ÅM›6ïÙ½û‡?42)._¾‚sÓOÍç3=ùè£s™œgɤ¯ØßWÜ´ióž=/ÿpNs– iNȳÄM¹íˆvïÙ=+€]}Ë–-ó©ŒäSõë6$ëJÑ(%:£„ÆH¥Âþþ惉Äú/Þpq&#{UUÓØ®—žá…]ïÿûÏ9÷<Ætç߆õ>úçÿ÷Þ={w¿¼«\žñ?øt¶;íNg»ÒÙ®p—¡5b*SzM¥ÒùT:ïcÚ$Ó¹H®Îy"™©-‘Ì$’iG`:‘LÛÌSÁyÉæþѹ=[¨Ü/¨nR7‡\ð/ÔKHßÃJl/],¢ l8b7|Ö…{Ë­ªÚ‹/>÷ »ÞÉ%çžûFé?þÉO·¼å¢ÓOÃü[ŸyæÆôõë7üùŸÿÅÞ={w¿üâ̌˕®jÚ‹»f3ñ’‹õÖÔ̤<ã<.MÓwíz~6“s<2Y¿a.“]3͉ά¶ à¾}{m5Ù·o߆õëgp÷®r¥ìS¶Ÿe½víŠD¢røH—Ñ}35šMrÔùÇ;vlÙ[/ʽë]Eï» ;yâ‰ß=qê)§lØp óöÈûú·lÙò̳ϯY³~ÍÚY—–ÓbLg» !•™‰9ÕîªÌ”„mV»}í®ÔÙ×I›Ž7`_'SY[­• ½Vke#OC»ÕZÅÕÄ&A­lÓAÜ—8á:#Œ1ιÎ8cœ{;CØ]·lÖ²´àDõì]ç(fÇrû'³ÔÏÅCýÊ÷ñÎÍ,¹g|K­8™O⨕«§‰RGçDÖÑÚÜ™µ0³áç¢Ô­>~6ÒèÉ£Oüî‰SO=edÃ):c„ÃGŸ{î9_¸áów}çžk¯ýü¿ÿû}„¾bÿ–-o1®ôuë7Xo ”Ò±“ÇL6lØè'Å¢™ÉÚuë­¦(¥ÒèèlM6¬_ɯþçÞ²e‹EsЦæ¬];ë§‘Ž­¶ àþWöŸsî›n¸þÚ+¯¸Üˆðµ·î¸åÖçŸ}rxxh^×xzÒýX³¦7™\wìXÒ¸3‰Ùš9ÌÿùÿéN¥z¯¿^–eî%=”JGùí[u¦ûØoºð™gžŸ˜XK)ç.U²*µuÃjbWfJ„’tÆRžU󅓦R§2…jyÒfeWË“6½6¬éjeÊfeÏ'©L™ÿL¦sµÊô+›ZuzN…­3Vi6Í&SY#Ž˜W„Ûìk‹¦W%‰Dš¢ªBH"‘"„hj•¢$Ró†‰#d6ÏK ¥D¢’,QB乊ÿmÄ—þÅ oÂç AžÙx€´a>á¢Ï‚žweÔóåïÿ‘èDiüèÑ#[ÿè´¹+ýÏþìƒög$„LMOìcuìø±b±8w¥?5>1A¨D¸n¹}ÌÊÅÖ­dÈÅ«¯¾¶fÍjkQfˆ™ µÈ…¡9¥ÙLhÎç?ÿ…»ïù‡+¯¸üºëþΩ9”RÆlê ï ¶råŠÏþšoú{ÆùÛ·ÝrË×wÜòõ/ßôÅÁ~é\`  dkî*Ö¦2™¹je&‘X?:*éz•$foÍšNÿõ¾Üùç'þhkuÍšŠ©H©T*M¤R©îî¶P¬§§§s¹ÜwŒ$¥Ó)U­iš&IDØËÌçeÚ"ʆF§3]éLW¥\2~ÍéL¡RžLg ³º<§Ôæö¬‚Ïéu*]°É±¡Ô¦v¾3Bµ2Å IÍI¶¡ÚÉT®V6”Úîd*gh±!͆('SYg éFvd/°¯ ¯È¬­í¸J 75ZI¤4µjüÓ©Ús×µ¡œPQ¡¤AÌá Ù5YŸÃ«3 =®ÚG£›ãžöË–R:11‘J¥ºWúCý÷í·ßùÆ7ž×Û;»K’Í+]•%:ÿ"щÒD*•êêéaLíµçŸÿ–ë®û»íÛ?edµsçm;w~ã©§’dj‘ º &%{Mvî¼íî{þáÝï~ç7¾ùí\>·ýòOÙ4G]˜I$Jí*€—ÿÍ¥œ³/ù«?üˇ~ä¦oøÄ'>6×,sG¤kæÐ;îeY[«dD]±‚|ìcÙ|žTªj6={䵚ü$r9ÖÝUa zÚ®«Œ±Z­V(dI²ŽJ™žžÙú¾÷ÁýG:½ÀÙÚÓÓ­iLÕÔT2í;S»û#¶–U¯ ¥öð_B¸)ÙÎÜ áž³µƒ\én’=ç Éfˆçñ¹¨$RšZÑÔŠ5¾b±¾½=$އúú ÙðfÍÐØ'ëˆaŒÏeB9c«V®¸îÚÏ}å+7Î/¿ü²·~cçÎoÜxã CƒFVs™¨©TÒÌÙY“·~cç­ß¸ñK7|òùíÛïšÍðo.shN2Z¥^(€Ô<üË·]úˇyøáGÞý®‹?ñW[Ø,ÝÆ%“ ×2ŸSD–Éß^UU¹¦VuBø‘qy°[Ÿ–OjÝådž’¬d¿Ì¬¯ÿ¹$I…B—ªÖª•J"‘0sϤS?úß?H&L_p®Õ´l6›J&C q]èÝvè²iqÏír1‹ü¼Ønµ0íh/É6”ºZ™6%»V™6|#VÛé !Ùöu¦î5¨Ö*†®Ì9Iè¬R§½”zÞgÍ9gLç$¬ÏšSOÛ›ÚO(Ÿ5mÄgÍÝ|ÖDÐgí5€Åm¦™:Èm_ q›ÏšÛ¬¶zOÔî-§ÖóÇÓŽtú¬ëNúÁeÙz¥Ï_¿'OŽ;vüÎÛ¿¹qãˆõb¯ÕÔl6›J¦-Ïe\–èÂLȶOý5çü+ÿµ‡ùÈ/ù«/}ñú¿úË¿`:[I*E›3Ϲ¬ÌÕ¤ZI(Éרyë7¾ô…Ù„Û.ûkÎøßuÇÞÿÞ¡¡¡yÍI¥gRÚ2° `ÕÀ[oûÖÿüÕ»ÞyñO~úóo}ëοÙv©]S)>ë¢nbÍ=Ç˾xâ…ñZiefÅŠ|q [mòõgF_ìJ懶0Nª5’IqO×ç½}}ŒÑ险®ÂõL&¶Ç%UU©$ ]’$1] þUà‚:Ì¿x¤v߈†įê¢Ô^Ñ-ô¶Õm˜Ø6§¶¦ ×ª3¦eä£Új­,rË3½%„D"m8µ}üžó>ëYO5mÀgÍãtFÇn„74C0¿ÃÛÑÜ«ªÔ1Ê4¨5í̹·¯È™ž,tu›á½½Ý?ûÉý}}}֋ݼÒeIbLŸÚO'Ä‹™é)3“O]ö‰±±±»¾sïU{ÅÇÿòÿ2óQÕÚ¼\06ÿ˜©9ÓS]…î•+–ÿîÑ_ š ?uÙ'.yÿŸ ô3¦«Ú\&Tb ÞéE4[Ó¼Nvº !_ÿÆ·¿~Û·¿xõõñ¿¸ãλÿþæ[8gÛ>õ×Ö#¢’ÄuݵÍ«#Òy­ž<øÜÉ]µ~uy®X*×¾÷Ò÷§µ™K7,•à„LÊKÌ8!„q½»»wÕªÕ{÷íݼi³ÿq:rpp`¸ÐÕ5û\à¸ù—gÆ3Ùžt¶»23NIg{!ÆöBû|lï$=ÞjbsJH*ÓE©º)»á¼^˜Š»eå5² ^«LÕ*SsCGøB9¶YÜ …ÞMÐ9ç†{Î2c«I"™](ÜÖAÜôœÌ;OøœË[­Ø&ª£¶+ŸÛ ¾¨}ÐÍÿ’ŸG­ùå–‡.’¹áE0ûÝüIÆYwwϪU«÷ìÛ»yóYf„™™™üéGþó?þÍêðWSsÎ"„ôm£Ì#“BW—å…ÐR°à¾Í›68ðú×oûö ×_ó±ý¹ÎôK/ý+ÆùÍ;¾þ¾÷ýñÐРEu¯6—Ü=ÖsLÕ¦?ôø3GŸ¦”ü/ÿ¿¼þ«•¹e}ÉaBÈLêÌ×T`z!_xó–ß{æ™gÇÆÇ˜7årù©'Ÿ~æÍ}½=>cÂËs2íPêùÒ-ûæ•z60ÓΘ·}^)OÇ IW¥6þiŽ1ŠªV& ù¶(ø| e;o4BI¦óÉ9Õ&œÔŒÀTÎªÔæKHï‹ÇcV#Næ$›$’Ù9¥ž!„zmx·mÖ·áõžûçl¶‰DÚøsXÌýjŃŒéömû#‘þ9ó;[°xAç!Šô(Èl0±Ó¦N朸 Û7oÜzW¡Ë¸ÒÇ-Wz:þá¿ÿk2™t¹Òûú,%³:[03µêÃé§Ÿæ*½½½¶'ÎôùLÆGý4§23§9½.šÉ3Ó ùüœŽ®X±ü7¿~ècñQ³—þõÇý??è/—ËO=ùÌ6mî5»ù¾t]«zù(y`ÿO>ûе›ûÏú»7ú=ÿzIWªë‘?ÿi!Ñ-Q®éT’¸ªÓ”½ "I’—{ì·O=ùØ[ßzQ¡àâ®T+=úèi§Ÿ}úg¦ †­ø;Chd{hø\D-?aÓ1Ì<ÍžñC¶_½Rf}ÖœpÎ㌮‰˜Ïš‹$8)⳦”7à³vó5[/Ÿ5÷Y›Í7—ÒýæÌ=ÇY» ç>ã¬yΟ÷Yóùž{è TÒun\éo{ÛEù‚ËËüj¥ò裿=íô³O?ã ™”â F%™™™¼õ¢|—K&•Jå±ÙLÎL'‡Îr*ÉŒÑùLÜjR©–ç5')ÏÏD)‰l¦hN‘$Å"€¿Wp¯Ì¼&Ôk†T¦Kñ/®˜îÛ;¶·¢U.ÿɧ•}õí7)¼›1B$¢3¢ÈD¦~.^ÆtYQÎ>û\I’øÑƒ›ÏzÃêÕ«SÉ”á5«ÖªG}î¹ç/Üòö‘‘‘L*¡ëªýþF©—º¡=ABm¯½OGëìàNÿîÜåÒõnJ¸gßmJ”ÊÆ·T¢Äü_3K7ôÝX„s]•„‡Î\(¥ÈÌL<ø%âé õswø¤æœ)‰ÄÙçœ+IÒþëÁÍgmZ³zu2•6ΈZµzä葹+}c6“dºæ¬gº¢Ìeò£7ŸµiõêÕ©Ôœ\T«Gç3ɤg3±ûý™®(ICs~4¯9é9Í©,МtR×jÑÔ ‡-1Ø„TõGŽH’$É UÓ5U]x¥+’$¢s÷+}AÎ’¤È>™p3½î4(’¤ÈJÒMsI¢¢šQWJrBV’𦻠×kõ*ÃS™.S¬­§½÷—" ]hT’²¬"qÎ%‰2Ƙ®² KÄ!ÙQÚÍTíè…{1ä»á""Vë&|rZš£è5š¸“)I •eB(aœÊgŒ1ÍM\Œb3X’IR¥„q*Iœr¡šþU’YR•8ã’$1¦‡ÑœˆzV’’œ „rN¨D9Óu]u8sÈBæs–µ]¬Å.‚Æ$;¢ ™6PLd†v“U;6áŽD¾ÛÅ¥ÑZî“8¥¹.7ÌØ@çôV"ëÐù™Ò4þûô5v4®n.…XFËsNå•™ 'œpÂçÞG›óA˜3#ÿŸ‹2;ÄÑlïT*U©Tç‚øÂ(”š;èÜ ˯¹•L¥ˆëŽ[nY̾؛¿bþè¬qddÌngn[£³-(' ‚4'„.ÈÚ–ÐÚÖæ$¶ãu¾¥ªÔÙ>Døø2û]Óì/Ÿ`cÌOAF¡„ÌM9÷JY×´¹|¸j&š ž·Zf‡æÌ}DE M(IUWÍ14³Q¸µ^ÖÄsÙÏYÆV2™TUÕ4+,ó‹-8"J©ù’|6Œ›™ÐT*e–G-Ùs[#n­Œy€–Ú‘jµº°*s;æþË9/xnôåó™¦ÓÛLVËÚÌSrûŠ—ÚmE¯÷j”Εë›hu¬5^×póûNØkp“g€¿JÅý$T(¡ÿáÀV‹ý êÓ®·þ,¯gÜÎúò1®yݯ‡Œ%Žê|zèæ±Y˜5[%©ûL½ÍfɳÕ\Ì.íSÓ²ž 2ZŒ½þñÖG«#7!ça‹N¹ÂŒ‡h§Ü$â%ÑzKÚú&$>§]|þC8H¨uÊ‚z9‚ªFð÷¶œ7¹+£]2-Xý,¹*Í:¹ë/=%vùF·ì­9 Þ»á½'¬Ü$Ô¶Gt˜µßpiû>›­R»}l+ÏëˆÒFNnÚ¬³4‚+*i&±»ž[@£›+Ó$Ò™ÍðO*16E]õ£ö•@xè¬B›†œ{º#ꟚT8ûäîܳnnª]ÿ°|…›Öy *Ž^‹¼ñ¸e´…ìnÞvŒz†´ <ð²ïáîl<Ò“‚‡ÍíäTãýÔdi’³ÕrŽ_üâ¿-þKÉ çž}V±Øò™Q×ÕÊÌD»(õèèø£?6<4ÔÝÝM }˜˜˜8zìØo<¯··7hÚt¶»Í,ëÝ{öŒlذ|ù²L&‹¾´åòL>Ÿß½gßçŸ×ùnY‘†‡‡òù:Ð^äó…áa6>1.¹ÔfG›Ëæ´)™L¶ÖÖ ,Ö¹BÝönÍlOè½Q•®bÍN”X¯ÄÀ¼8‡qƒLOžðÒë\¡ßø³)»5ÐÁ5UP5“í±ÙªFˆhÝëºíÌÁ+[ÿrEòtwÞu÷wÝÍ-cê9ç·ß~×]ß¹'’üÃM‘Ê‘9!$W˜žG©UkW^y¹¸sçm7|áFBÈG?òáB!\i]Ü !Œëã¹Â€3Ð+rÝ8 ¢z†>šriÝöÊÊ?Ûº…B‹X:twuoÛ¶r͵×ßwß!ßýî÷ ¥Þ¾}ûB¥ŽÆ²¬×6ñu*¸áR‰¸GbÍĹ׼ ØÄ:~ëÎccc>øÀg¯¾æÀ׿ù­Û‹Å¾­[·Þ²ãfÆjшµécip‚‡…ú»Xæ¶ oÄUm½öºº_`eÐùjÍÕ{ï¹ëŠ+®ÜµëÅûï¿dú3Î8ó¶ÛnkD©ç༱qÖ®ÎF,åXMl«§ØËkìj‹Û×u-h˜Øt0’DnÙ¹ó /Ù°eË–·Ü"I‘Í¥¸«¸ Ø2U:žï0B¦J³Úm ´Åwn›©ŒíH¦'órGÔoKè $ _z%±–ëãÅ @‡™×™tâªÏ|ö¡‡ºøâ‹Ó)™»)Z8•£º®–§ÛF2^zy÷ƉN @kB©$Ë ]W9g¶]ªªîÙ³ç”#!< Z¢´®9Ó´jäÙë|—§Oyªt¼)­Àq*ÚXÊYH &ÖÍQdÒ©”¦épƒÚMÓS©T¸´m6ëÞààÀdiB×µ¶_ °ÄLj]Ó&KãCC!Ǽµ™Ï:›ÍJK$àmwBEÑŠ­sq7´;p<7ªªåó¹T*½$Äš’NgÒé :>Ž MQ…Ãh,¹óQö4®Á%«4Ð…ÏÞ/t)µit¢ -Æ•KàLä€6¨!¼d›·h^`)XÖ8u@|âB—ŒLáòÍk a´"š Ö Ö±Ð"„ÁÈ9×4]UkhD¨K"‘T™†]‘+¤X«ª63S.tõu÷£ .S“²dxÐ IDAT¥RéD6› 7[F˜4š¦O¬Y»‘3½ZB@]²ÙL6·æµWw÷õö(J`í #Ö¥R©«»È9«V§Ñ BU×Ré|¡«¯Tïëë š<ð F]×ÇÇ'z{ûTµ‚Öq4µÒÛ[ŸÐu=v±fŒW*MS)m€ pN4M­T*,øz1ºm€Bøü†¡Ç”ˆÁç°¬Á,¹|_Ý×½þÑÄ‹ó‰®Á D•¹`sÅZ X–µ‡Šû(=–ï<½žžm)Q°V)&âÎ *¤°¬A}óÖfZÝiÿÚ’ˆ˜ÉuKqÍÄͧ\ל^uv­¹ëùˆH 5Xº–5XšLO–¬ùëjqOOšqlœ^{ëÚõÎR¼r èš³ÿø×Ùvóð).Žjƒ%,kÐÇXűñÚÎ-UÕ&¿8õ/Îk¯Ó +¸7˜7ñ|4"±kN&A#Fk,JâX,kˆøCº—¬»&1­{ë–âÍ5N rE^Ö ÖÙV®OqþI\«-Þì`)@uM™p¨ª¶{÷î³Ï}×k:ÓÑ‚ ãJ‚È\’B%åé'ݸqc Y­³¹>XÖÔñ?@©Ü ´(hÐrV9š Ö"Àpƒ˜ó‰`ŠThLqæ°¬ m,k§Šû+=€U3ùB!–5´k€X€XÄÄÄ: …b.ˆNñ#´ ¦8sXÖÐ6–µSÅý•Þˆfn´”éœxÕÏFæ³æøÜÊfHà€6 ©S¤2Æt]×4sN)UE–eI êXâMZÖK×õr¹B¨œË ]YYVt]+—g¦§' ×3™´,Ëèð·¬]T\DéQUujjf`py"‘TUµZ­R#„$©|­V=qüp>ŸM$èÀ’1™[lŠTMÓÆÇKË–¯¦T*—ˆÄ@Ó´r¹,Iòð²U“𦹿/ô× ñ€v'^±fŒM”JƒC+4M¯ÕjÜZ­Æ/öO”JŒ1t 4[¬«Õª¦òd2¥ªªO´Z­–ÉdÕ«V«Î½S“'¬&s¾Ð?5yÂØ0þüMlÛ¶W׽ƶ-¾-Ð'•3¡3Cÿ*€AŒ/9çSSÓÝ=EUUy½ñßµZ­»§ojr4NSÏÞMɶm‡Nâµ×5së Ã?•ëF#G€e½djjª««[ĹÁëîîžššô„4M×\ 2½ªáS=(2 µ,kÆX¥Z¥”2ÆêZÖŒ1Bh¥ZeŒ9‡ñžó×éß$oCƒyÂXd±&„rÆ*•Š`ìjµÂü0'œjGnÕ6xó€¡ $F7¥DV”ãÇŽI’Äë!IÒÑ#GdEñòWÛÌê-ÓÈíYñ 1îÐZ–5¥4“NxýÕÁ¡!‘ø¯<08ÐGÅ&Õ6‡ˆØÆŠØöz:Eßo¸jÔ®PÄ:JdY. :|øðÐЮ랕P”ƒªµJ¡PðùîÜ&gη|Öþ/="™ˆW#D• v±&„äó¹çž}г½ôZ–åÇ?ÿÜÓëׯÍçsÚÐV» h-±N$CCårùw¿ûíÊ•k7nܘN§9çŒ1J©$Iåry÷îݯxeíÚÕCC®Óƒ¸:4Ú®¡!ЀÅšÇ:Ej.—[µj%¥ôµ×^Ý·oO±Ø?44œJ¥ªÕê‘#‡Ož8žÍ¦×­[³råŠ\.™ Mœ"U’¤îî.E‘óùܱã'ÆÇÇw½ø¬¦ëŠ,gsÙU«W ô÷÷s¹Åz½àmY»«¸¯Òó…u ”äó¹t:U,öÎÌ”«Õª®3Y–R©T6›Éd2Š¢—`/ž"UiZíE) ù|Þü \’$XÓÐZb=geS, Åš“ùÑaæ@ë`T ‹Õ@;XÖ^*î£ô³±8Þ@p{ÙÒ€ú ËÚˆ5@¬@¬b  UPÐ-‰'žxò‰‰‰!„RÊ9Ç/~ñÛâ¿„®®®óÎ=·X,B¬—£££>úÛ¡¡Áuk× 5h#J¥Ò£þö /ìíík‚XÇ8E*ᥗ_Z¿~ݲeÙL­@Q.—s¹ÜK/¿|á›.Œ!û&N‘ D$:44˜ÏçÑ´ù|~hhp¢TŠ» fL‘ ê’Ëå2™,Ú€v$“Éæóyaý$-7Ej¾kpªtÌ?¤Á £ª'!Ä?瘊®ËW¾úÍ뮹ÂblXÃ]DÌ æ.’ÆuF M vÕnsÛ5ÐaÄ;Îzªt̰[]YÛ¶±‘ï´†8“;gž^i%ŠæS\ÝŠ5bSšÏÝ÷üÓÝ÷ü·ÌºÄ9¿ó®{ï¹÷Ÿ;ʲmçZ]Vã×Ág/©ç„1¶{I hu‹«S(5‹N©4yõç®'„T«µí—_jÞöÛ¿tãÍ„ÿ¯6sP@ì_0z×^‘]·ýëfÕHå#‰Ùâ¾ €+ÝÝ]Û¶m#„\ÃM?øÁB¾÷¯ß7”zûöíù|¡Ó,kW6Z{<¦»‹k‹«› ÅáœïøÚWÆÆÆ|ðk®ûâëÝ~ÇÝÅbßÖ­[oþêMjmjéºAⶃfèz an·þ‹V€+š:}÷wnÿô§¯ÚµëÅøñȆugœqæ­·îl²R“¦MäÈÚˆnB^1]ßRâD ìkVÙqËŽ /¼pddÖ-[¾¶ãkœ•›_æYÖ6·@8-3š†ª¸·A0¦W4ëËFçÞF*&Îu×\áRíˆÐ¢Èúß^õ™_üâïxÇ;dªr¾ßRM«MOO ªÚî={Î=o SË:ÓБ‘x9ž{þ¹‘  |ý@‹"Ir"™Uk3ŒéNUÜ»oß™gœY?9!É©'ŸøõÆ‘‘@×{®0uh0…- czµ2¹ˆ—0ˆ€Æ½j`mÕk>Z|±ÈårºŸm‰®kÙl,_ÇXÅ–uK088X©Ô8‡‘ @›™Ôœ“J¥644wIŠMÅ•ž`‚ÔHÉd³T¢“SÓxÇ@{¡ªZ.ŸK¥Ò&H åÌ€4´ ét&Æ21wàˆ5ˆ5@¬´ á_0r±Ñ#æt3¼f²€6b kQ`ø¬M7 ¾u€ÖÁgËÚÆ²vª¸¿Òó…¢0ÆtišÊ9§”*JB–%I °¤,eB?›47ˆ®ëår…J‰|®»»'+ËŠ®kå™™©© ÎÕL&-Ë2ºS¬UU›šžZ•H$UU­Vk„Ô!‰djphE­Z9vü`>—Å„sàEì.MÓ'&&W,_G©T.—5M3§Ô4­\.K²²|ùÚRiRÓt¯Lºº‡­‹ÒR®åŠWf±ª½XÄq¼¶Þ7¶—ZÃXÖ±À+•JCë4]WUÕ5N­VK&“ý+Nž8ØÓÓíåÂ.M±^¥Ö."‚Õh ·ZËRj×ÿ£eÍ9ŸžžééPUµî,"µZ­§·8Y:‘N§)îm5©\·E"˜f O*›ùæ4å\Ó6XÉɽ¢™õ¯@ƒ1ÕßÕ †q –ž$Ò‘{Lg““S+WÔjªˆÃ¤»»çÐÁWz{z\G†Xm¨Òø£hsÃVñö8Ü­)¸_rÛ†½DŸ„us&¢‡àS¢K)¾9xf+S¼1Ã׿n4ZÙRëÌPHlß/2Æ«•*¥c¬®eÍ#„V+UƸë(¾Ò¸»ÝÔÕSçA¸n„S…˹4~Ä t=Ì•ñ*Å«©jÝúÑv«e×çæŒ±J¥"¹Z­0Æ‚J’©®ŠV7‚1‰ŽW}¬¶¢Ã‚³þF>ôÚ5¦kU}êˆD®%§‡£îŸ`|B©¬(ÇŽ•$‰×C’¤#GŽÈŠB(u-Ñ«&Ɔ¡bÜí!C0wóñ }ö·‚|*ïZkÒÀ1rú[s<4k&®Uu $Â-ì_0þð×âáÄ–„ýÜ\JI:>pàÕ¡!!{ðõ¯ö÷÷Ò ÆýÄø‘îžaëFÐþÙÛfxwÏð„‡Ùh-Èu—îZ¯âB‚3C[œ•lñÀº¢ýÇâÓ/´°ÉÌiM5­6ä5ºªj{öì=ïüßÓj3š^çÍáØØøK/í^¿áÔ¡¡a]÷üæEQ”C‡¾²÷©§nìííé¼niA5é$ƒXƒvA–J"óÄã¿Ùè›íB×P¼_0æóùâ3Ï|øð³Ï>50PÌçóÙCìz¥ÀŨ5÷DBœ)Wì׫V¯ß¸qc:æœ3Æ(¥’$•ËåÝ»wxmßê5«]o5^2×^—h«Õ¶cJ ÖÑËeW­\A)=ðÚþ½{_îïN¥RÕjõÈ‘Ã'NˤSkÖ®^¹by.—ÅÕ‹#Ö’$uww)Š’ÏçŽ;1>1ñ G5MW9›Í®\±l`°¿¿XÌå²”bX$±&„PJóù\:.öõ•ËåJµÊt]’åt*•Éd2™Œ¢`2kXl±ž-I‘ …|>Ÿ3¿|‘$ Ö4´–X›V6…€ `ýChËšÇ77€à°¬ Í,kw÷Uz± ­xªh0ýTà€ÖUõ9à€6 e½„³—ƒ ),kh;˺Å8yrôÉ'Ÿ,•& !”RÎyÿ …sÎ=§Ø×‹ÆDc.©Æĺ5ß/ŽŽ=þØcCCƒë×­] =Q*•~÷Øcç_p~oo/¹DÔõ—´e½ûå=ëׯ[¶l8“É,…^)—˹\n÷î½\ðF4&s‰4&éi©÷‹²L‡†;uí'ù|~hhp¢TBc¢1—Nc.Y{9„* Uº…!¹\.“É.©.Ìd²1IÙš „}–Gƒt÷,‹<ϯ|õ›Æß’íºh[u)·dÓõt]Rçp"`f4ó•OÓ‘:-k¯gÂ1CžG{1\wÍÎí¾—ÆÚªKC/üÚjbüP|ézº¶ù9Ì›˜ÊG—ªû‚Å/bbüPwϲ‰ñCbã‰Ë²îîYnþBÈÝ÷üÓÝ÷üçóÝÃ9¿ó®{ï¹÷ŸC·jwÏrã¯Á;ßÒlL[Kší‰Æ טβîéêÕì‚'vÝîóÊÄY‡º5t-4ô ‰eã‡æn€.b¹k- J¥É«?w=!¤Z­m¿üR#ð¶oÜþ¥o&„|ø}PÐ!hmUkóÚšZ„ö—¨ÓÃ^Cc†lLç )rº:#øŸØ^½ã“`‡º \#;E/Zš÷£ÑyÖ¿¥cVwwwmÛ¶rý 7ýàÿIùÞ¿~߸¶oßžÏðä±è¹¤NÈÖiLÿ˜‘ä¢gmI w#oË,pSq¾ãk_{ðÁ®¹î‹¯ÏmÇ8ÿÐí±×5¹ßûo)®Z7D2tm¥º‘£ª†u¯qtMÝ|è8Ë:bŸššîêî6-èßüæ7Ï>ûl×O?ýôoû[ÓaÒÝÝ355Í÷Ò5럂 6-yLEG+Cþ¹…®†uoè"B/”t1~nΫT«”JŒ1ò>|øp>Ÿ·Æ9|ø°itJ+Õ*cL–%q- j=9…ÞÈÄVŠk`ôîãJñ:@gþÍ9Fÿº…èÿ|šPÄ o†dV¯+eóŸëÖ­ëêê²FX·n¹]­V‚®íõ€Ú€µfÕœ§éÈKñrbxéuÓ<6…à^ÿ®iN“ЂnP~o(¥Š¢;vL’$c¬ÞYgõæ7¿¹0Ç[Þò–Í›7»$I:rä°¢(‚ëp¶›kL/¯ë¢[š ¦m—è/>óôï6Ÿuž—^˲|øð¡gŸybÝÚUù\Ý)þ࿈Ù"Õ ãÝ%áÝ ”Є’àLçœÕ}(ËRqzfæÑßþÏšµ6n<%NsÎc”RI’ÊåòîÝ/¿úÊÞÕ«—÷÷eYræÙ׿Ú5óѯ9C‚¾¢l;¬G½ˆÛ"Õ ½ãLO( Ü6³º¹$Sc¼Hq¹|vÕª”Ò×^Û³gÏËýýƒÃÃéTºZ­>|øÄ‰£étbÍš+W.Ïå³®Žž| } èç„pI¦!fc ó‚‘J!Œs!{J’¤®®Âš5«òùÜñã'&&ÆŸ{î°®i²¢ä²™Ëú‹Å¾\.Ûà8hq(aœ3jÿànJ%IbŒJÃGH>—M§R}½=år¥Z­êº.Ër*•ÊdÒ™LFQdBDs€6…—$)„mƲ–(åœqC¯ÅKJÈ…D>_È1Æ¡„„¬1´µ\K¡t/”XK³«ºpÆ–¨4kpsÂaM–á|^BCˆu°Á{²,qÎ8á°‹ €]Í !Üuú#oKÜ*ÖA´šRãÿœ±º9C çœ*lèr»eí¶ÇóÎÀ Ÿ5ãŒp °q!†„¼§ÔjB8‘%‰pBaU@ 8!œÔ1bè‘$‰Æ‹áuè\»š1I2ÂNf4ˆñ‚‘Êá€Æ.%„yÁؘX*BŒ!h}kÂù¬„6C¬Œ„ 7Ã#R³>Š¡”ʲÌãÆ¢*1ÆdYnÒçæ”’Ù1Ö0¬@\< '„‡ûš0ô FNˆñe !8%„óÐ/ƒ­C)¥TæœN^0@µæ„Q*‡ø„1ŒÀK…R@µ&œHR/Åæ§¦„¼Z€PÖ5 cì*$Îs4`‡Ï#¡9 õ ¼`.€æË Ö¢@ ’s®ëz­¦¢ .Éd"܇æ±>DÓ´rEíë[>´¬}u)MŒŽ̤“Š"l%óù0–µ¦é¥™‘g1V›™E@]²¹\.ÆÞÝOwwç%ðçÁ—õ"d²4ÙW\ÅôÚÌô:„Ì\µ–Íõõ—MŒêíí š\šiÑÁtML”ŠÅþZu­âÔjSÅâÀÄDI×?ŸçÀ£A8g•JEÓTŒÊ€€úI4M«T*˜™);Åš‹ýhH·Åvf¦üēϔËeŒ³€Ö%›ÍœwîY™LbÝÉôô­°þ‰ÄªÜ¦¥ê¤Î ÜpÎI#Å€¶`|ô U¬ÿ-ÛS˜nÞâjXÖKK¬æ›Íâ66¬ÿtÚã"¶|¼¶}ì}Ÿ´‚UòÙ묞ÏQ8“øçºÑê©kéut’–õÒ}è6M9cÛr#йW<Кxé!*\7¯½"1Í£h¤)bª¶`> ÃÜ °¬ñÐæ‘<.˜½)(qÈŠxž¡KwMØ`¹QUJÝÙnr¹ ËzI×öZ½(6Wxä¥7X¥Hê#òˆ®†QU;ÂÃpƒ€öpƒîu}è!þ¥‡³Lô8Ó:Ý Ö0òjà ÒÁd2iâssо®«ª>¼T¯A«<Žk>yŠç_ÃÅ" ÚŠùd`Y/!_‡U+Í'hçóõšóA[ü‰ÞßÐó*Ý™g#þq/3¦Õ½nÛö± k_µACUµ2vòÕÙ$Ð4mÏžý¼ùjeRÓkhA°dn{+ÇG_G;€F•T"™{ì7?Y'2«µéîèíÃ8kh¯nnú¶áäKбÑ×qƒ±ŠgÐÓ)ä²^š¤î„|mAðe½ð(›Ìµ–5´k€X€XÀÁxÁˆ±{ЂpXÖÐ~–µ‹Šû*=†ï@#ör`!…e mÄ–˜X÷ö­´ýùGnÇöj‹j×m|ñÃŒãxEªGšsB†È§É'Uã熑ƒÈeÞÌš·©¤ˆñâc>áoë`oßÊ+ùñF[½Àhvi³žèÇö¶¬ýïxÖ›°b3ÉI¼Œwç½ÔšÄ?7W‹@0жíUHæA‹Ùkk/CÕ«¸º™¯ v«³h‘®ñÊ‚çO¬Õ)*ž‰ãDuM‘Ø^6†èè¦Ñ«›7b2„x?ão¶X³ŠêGܧÑH’%E#Ýá߀zDÐÄó÷-4Ò•‘[‘¡Ouç•(~¡5§iŠVx›ÚZã¬1±ÉÄË‘×̃òz··UÕî{#m%n‰5 ”Äéö¤¶Ñ¶C„}ÔHAñµIÐ^kGËÚåsIÛ‘Œ°D&¶íÞ¾•c£ÆFXž;XbrÇϳ·o•±aì2Š3£¹ææZœx ™•Xµýc[m{ûV…Nâèš™,¬˜g ­e™íôx}ú+P4[‚7~ýæµ5 í„¬Û#þ5wÝ;wƯ ûôˆ30ÄIèzÎÔ=:…šz}‡IDATóg~Ãy%¼¦|ìÜhzÐÑòuŠ ×Î¥„Ÿ«ƒªjeìÄ+â 4MÛ³wÿ›Þü®Z¥¤éµÖ³³„º€~Vp9‡qb·…2Ô-EVRÉdþÑßüldÃ:E `+÷×(èE@+ˆ©«ÛÅ-º¤õ:òîø;î´åSq±&r€6b kk\ß$tX‰ÖÙZùÞ¾UÆ?ÍVk¢óñ9.ÿœ«þ®½m¡-Ò5­)‹{P `¾!1!uê ±¶>.Œä[Ü«£3-k/Ó̱Y ®¿‚©\óo~=m!Îäþ™ ‹OB‘@ÿœ­ás8âlÆ»W¹âíßHSûŸ`Ò†î‹@õ÷ê£Fúºi‡Ö`‹_.™ºg¦W’@ÇÒf–µÓF³Ú"Û‚1]7š\Oã£)ÿäAA¤Vâ®Çë´ B´†`kæ ¶è¦v­ƒkƒø§m¤/ÄOŸÞ©{u,ú¡5ÞŦIâÄ}fÖí‘ 'aXÖžlª'˜OþÚ+ªzFRœøá æU+…H.˜$=ɳªxÿFuì×?D#·Â¡‰tqL—XƒEÜ'a ù¬ãx7Ò:õŒ;s/[Øv¢¸ÆZáÈ›K0ÃÈT¼‚}áŸO$õÑøM8´ö•‚ EÄz.¦X‡8ÛSFËÖ³ ‡ão;[sŽö¹,k+ª&Šé Ô¿^{ýû"Žú‡8švhq\q¿ë W±¶wƒ4ÙùbÚqÍÙõâñ‰&˜IÓº Ú<›lчhL××PâùGXÿ§q¬‡Öü§Ìh[5&µiË:Üó‚™Êš¼Á˜^©|®±¾¯ðJîZIŸ:ø×*„$h+Õm@Íå4=üÝ罿xS“znJÿq¾óO"Ò>õdù·Õ"ZTµx‡6x!ûþâºA:mŠÔHžzÚ€8h‰)RÛeÊÁvœ"ëvÑ»p£ÁÀbõ À9ÄÄ Ö‹O#cuÛt†ÆŽÁg(q»Ož)x Ñ~Ô'Rh#ŸâÂX/xa:òŒŠéÑpãA»Šµë´!&tÞð}2L"8±ªHñ˜âsK Fù~,Pû“ ÓBíAóœ^²9³kúµÿÙåß#!Nç®@E‡˜yöM‹ñŒâ3Ö×Ôk–EgDlÞK"0Á£`’™•Ÿz1Ð $rN!hdŽSÒ¬Ù5EMð,jä4¹ ‚îò?{}Žt¦¤Ái<e÷ÄžA“„›ß5Âv ­ñ)(ã›^R0Iä³kšCª¬ÛŸ!â *¦¸Cï`Y/‹î\ :ç@¸ƒ :µE›^™±NéÕ:§M|³k9Sµû):D¬eÆTƒ%Ó&¨Õ)XJ¬346­%ã>±e‚žAûÑ™ª­O £¤És.ºR‡X[|ŽÊ £©Zç%~㋎7§8ßzã®ÛHNƒÈK°¬ïEa·QN‘Š~mf; µALgN­øhdŠT|nÀÒÅùP¥nY¤h; Ú´v@kƒ8N$œWKB¬@¬b b b kkkè4AæÙç''§(¡”RÎ9~ñ‹ßÎû%”äs¹³Î:³··bÝ~Œ—žzêÙááá#Ñt6O=õÜ9çnêéî†X·{÷½:22²|ù²L&‹Ö ³)—gòùü¾}¯{ΦkñÞ–ÚL1 EÊç ¶ðL¶§<3îšÄu—x à^qå㌜ÉÎ>ᮬ!f|3 íB>_fããÑŸ·°¬›Ðyy§M•Œ¶Vu©±]ž7ÍøÆ† Úø*Èd …B늵ϪÏfÛu¹£%b€Û O×½®¶j]Öª•®¥ˆÚò©kS;õÚï™Ñakwêm twÞu7!ä²K?I)5B8çwÜñY‘/»ô“±¯ebɉ¥°J…—6ùø¬ èèeÀ:K ´æ#¢¼‚m+ÑV.ìkЂL”JW]õ9BH­Z»òÊËÀ;o»á 7B>ú‘ ùøJwœ5æÆ WÙ²úëZ]Õ[DY4ж‹y“@׃֡»«{Û¶m„k®½þ¾û~@ùîw¿g(õöíÛcUêˆ-kÓÒàºãXå³AwŠà^«z½ß á·‰ã¶@kÀoݹcllìÁøìÕ×8ðú7¿u{±Ø·uëÖ[vÜÌX­sÜ °Ç›æZÜëêie3€EVk®Þ{Ï]W\qå®]/Þÿý#ÖqÆ™·Ýv[ÜJ½Äg½äpZ“ÃÇÚtÝ+nA·Îó‹Ž$‘[vî¼ð GF6lÙ²eÇ-·HoB¹ñZÖærœÎu9E;ÃÄæœ¸úL_­WÁÜk‹&H¾$ôJBŽ™óò„3¨]3ôÉÍ¿Ah…k:“N\õ™Ï>ôÐC_|q:%sÇEÎcPïèÅÚkýM熗w˜„q=¨WÁõÍaˆ@ñ$âõQçÝ&ÐhÐòëí)|ð—èºÊ9s»êµVwƒ'©¤¬ªšý¸ÔÀHjÐz­iUW¥VU-™ˆÞŽÑ âêq^‚/ûûû'&Ž'CŠ’4Ò/eûJ :WÁ¹¦Õ&&Ž ô·“XcP‡A6›‘$rrôxBÁÇýt8ª¦e³™T*ÝNb LÒéL:A;BŸ5@¬@¬`‰ÞgÍ çœ£@X7Ãk&,kh Ö±±ˆ5€V_06ƒÑÑñgŸ{arrŠJ)åœã¿øí¼_BI>—Û¼ùÌÞÞnˆuû1>^zúé熇‡7ŽlDkÐÙLLL<ýôs眳©»»«¥Åº¯¸zÞœ<ùZ3Û¨¯¸ÚY¢k`“Ù·ÿÕ‘‘‘åË—e2YœÊt6åòL>Ÿß·ÿµsÎ~C늵M[A(½„„’Êç þÑ\gyÜ+Žx>QÕÇ+fÝ…c0A6hòùÂð0‹<çØ_0ZmmcÛü5wY·E"˜!Ö>¿^™xåæŸ•d·ÎËæ®+Ó†"›6!¶®Læ%å´ÊùœÉ ]‘g£ÏÚǪ5nCàÌm3‰gÌÑ“¯¹&w-Ñk—ȶHdAyò±ÍõÍpSò¬ÿ$ŽÕëÚòñ9„ÆëcÔ@6’@¯AÓ¸ó®» !—]úIs!Îùw|GVäË.ýd¬EG)Ö†bÚÄÚ”Q«œYuÍUãêF}ŸÏ-P‚*µÏÒ±Ni«H.ŒëÔ¾ Ö|ü¡Áú8e·Áõˆ‰R骫>G©UkW^y¹¸sçm7|áFBÈG?òáB!_é»A #×4ucõ®ø¸57·¨¨»š­¿TÕ²H”.ªú˜k½C@ËÒÝÕ½mÛ6BÈ5×^ß}? „|÷»ß3”zûöí±*5‰õc¬D[P+¼‡ éóõ8÷Z®n&×€¶‚ߺsÇØØØƒ>ðÙ«¯9pàõo~ëöb±oëÖ­·ì¸™±ZÛˆµ¿{$&A š³üVÁÚ"¸×ÕùñúÐNjÍÕ{ï¹ëŠ+®ÜµëÅûï¿dú3Î8ó¶Ûn‹[©I|Öñ©¿³©5“8#xå¨hßÞÒJ 1"ÂË­\Wp£­$ìkÐH¹eçί|ù¦'Ž]{Ýç%‰;®úèçú§ªZ;ñŠxMÓöìÝÿ¦7¿«Z™Ð4Ñ›I{Y¬Ñ²gï«§zZ"‘p,W;×h"Ð:HÃ' ©7DÄu°‡ó¯øýÀëý$ÆYƒ&C©46>ùÐC]|ñÅ=Ý9›4«ªúÒË»6¬_ãb+©dªðèo~6²a¢°•{‹kšáYÊJMI&dUÕlbí×7u!Å“ˆ×Ç•¨êS—ºuƒRƒ¦;CXoOჸD×UΙm¯ªj En]7ˆ×P cdÈRî×þþâøøñDbHQ’æØÌvÁÕeq€s¦iU§÷CÓjããÇú[W¬—¸"ûÍf$‰œXìêš]~ÝÚU8§èHJ¥Ò¡cc‡M´´Xáu[D’‡VüVC’}=…žžžt*i„d3iœÓt$’$UjÚɱRô97ç\—wÛ^¿6ûÝIrñÌëFŽà–¨$p°DP”D3×7{¥Wÿ†ÍY`×'¹ÏÞ@5Yâ ÜœÜy×Ý„Ë.ý¤)Çœó;îøŽ¬È—]úÉxï‘ër†à2µ¯’n»%4X+À’b¢TºêªÏBjÕÚ•W^nîÜyÛ _¸‘òÑ|¸PÈ·Xè Ë„û܂twuoÛ¶íŽ;î¸æÚëW­ZyÉ%ïûîw¿g(õöíÛcUj²¸C÷t8ø'] ˆ~ëÎccc>øÀg¯¾æÀ׿ù­Û‹Å¾­[·Þ²ãfÆj±–½h_0µ|}| 0±MRk®Þ{Ï]ï{ïŸlX¿öþûïÙ°î’÷¿ï;wÝ·R7ɲvõxÔuƒø›ÛþÉùXwÈÔí_œât ’DnÙ¹ó+_¾éĉッC×^÷yIjÆ5¥Xûk«H UÊqlñƒºAe/ ÀËüʤW}æ³=ôÐÅ_œNÉœ·›X÷&–ÈÄät!7?1H¥ZC³ÐÖd³é÷½ï½µZ¥\©ZëÕÚÄä´D£—ïØÅÚÕe¼¤ìÖᮃǦ=ÑÓU0FfŽOâ\ MnBÆK“•Je岞È3]¬áOèîÊS‰:|ô!ä‘ßüöÐÑ8­èHÒ)eõòÞ|.ú)6ái]ù\W>‡v„‹ÄÄ Ö Ö Ö±±±€¶_06ƒÑÑñgŸ{arrŠJ)åœã¿øí¼_BI>—Û¼ùÌÞÞnˆuû1>^zúé熇‡7ŽlDkÐÙLLL<ýôs眳©»»«uÅÚ•ñHrnÇÇ÷íudddùòe™L§2M¹<“Ïç÷í휳ßÐÒ–uÜbÚŽsø%”ÄððP>_Ày @Ǔφ‡ÙøøXä97ø‚‘/ü#£'_í+®¶†˜Û}ÅÕÆŸ5‰b ·Å4fĶF³EöÉß§tg†>Y9ËÿËçó°©X:d2ÙB¡Ë[Zòö¶¸×Œž|Õ¶mÝð‰9zòUk xþu÷úתn¶€¥ÆwÝM¹ìÒORJg-VÎï¸ã;²"_vé'c-:z±ÑV×$æ¶x ¨5mÝ| Ô,q&J¥«®ú!¤V­]yååFàηÝð… !ýȇ …|;‰µ—^[Íçºfx8ã=ò<À¤»«{Û¶mwÜqÇ5×^¿jÕÊK.yßw¿û=C©·oß«R“fÝ´Lmž‡¨ò‡] h~ëÎccc>øÀg¯¾æÀ׿ù­Û‹Å¾­[·Þ²ãfÆâ];®/­žºF®kL¥öñÀÄÄ¥Ö\½÷ž»Þ÷Þ?Ù°~íý÷ß?²aÝ%ïßwîº3n¥Ž×²¶y¢^i3Ð5¦MîýÝÓþ^ï@>ñ tÞå8Åè$‰Ü²sçW¾|ӉLJ®½îó’Ä›pÕG)Ö®*éïˆðôÙp¦ ê ”U#ªÍ8Ãù @'™×™tâªÏ|ö¡‡ºøâ‹Ó)Ù)ÍŒëídY×Åj8w°O9™TUK$8Çègëí)|ð—èºÊÖ˜ªj %zó¢Íºgó÷×tª7¹¿¿8>~LU+&6¤×šVµ]Ôœ3U­ŒèïËzé ÏÈf3’DNž<¦(˜6 €GÓ´l6“J¥;G¬—ét&Π¡Áâ±±ˆ5ˆ5ˆ5@¬@¬,$–b8皦«ªê-‘H(Šl®Ž yb­ªZ¹Rëéì1¤›êú[*MŒͤ“‰>¤€&е¦éSë7œÉ9«V«þ‘s¹|.Wؿž‚¢Èè h’XONNöö sÆ*õ”š¢iZ:êéœ,ëííAg€Q¾`Ôu6>^êëëW5M0‰ªj}}ãã%]w™>4Är_>{Í]!² Z‰ný0ÁUЂo'¥ÚÄ:Œ±J¥¢ª*cŒû²wïÞ/}éK¯¼ò ç\UÕJ¥Â˜è\Ï1Í­ŠuÛô€XÇÂÉ“'·mÛöýïÿßþíß1£Œ ŸU lK8:Cœ¬»|²uµv­á¶â\3 t­vÝœEŽ·‘Z‰»³® ÞxÕí;¯óÄÿ h5â†áµ^dµZýÜç>W*•–-[ö§ú§ .+i®¢ë\N×b[ ]0¡Ï^¯Å|mkquËõ t.â^7gÁãm¤VþÍeÝ`‘T&ÐáËzÞO²cÇŽôôô|ík_[¹reLÏ¿u/?Á‹Ó=uÁÜDÖSoAGA´µ_.¹iÉáE°¬g9räÈý×ýáþá²eËŒù—yúé§óùüöíÛ7mÚS¹ >Ø&aÐË8èËF¯RšùTU­¼ò $‚‚• ×;Qõ2&ÖÆ[ÄŸýìg?üð3Ï✠„:Òšgròø~b‰IfbÝ8y|q`ÝÉ…ÊÒ?R7¡µ8[Œ½Æõ4‹óOb-Å«è~ñ¯ªÿñŠW@°A̽f³[»ÀÚΖo¼2T`¯x/œB¸,‡™‰ªjeìÄ+â 4]?øú¡37Ÿ¯–'5¶`ª&UÓöìÙÿÆóßV«Õt]Ÿ½NžüÇüGUUÓéôe—]–Íf꾜H$~÷øÃ##ë féLŠëO߇v@’ÉTþ…g_±r¹"˜c£·¸&°>RB%IbŒJlgΉÓ],?ô¡ýêW¿ºè¢‹lJmKƒû´ŒA΀ c\’$Jšâ¡åŒqÆmþ J‰"K¯¾²oÕê5šå‹óU«V}èC"n¯ å•Wö)²D©Ý‡SXï,Z;‚^`^­9£R7H±–$™Î)a¶ =8ÉdÒ/¾øl± “Nkz—6Š"OMMízñ™ukWnÉsüèg¼´/’D8ç’f’ÑP/%Ê9#œÛ^*ŠÜÓÓÝ3^úÉï?íôMk×®÷Ï祗vïÚõÜòážžnL‘ è|»šsB¸ÜËšRJ©D7J¶íÍfÒ+W K”ì~éÙ'ÿµV…B~å²åˇ³™4œš€%¡ÖœQ*Ñ& ÝãœSIâœqÎ8±+,•hWw!‘LûûÊå²V™L&ŸÏe2iJ©3+è4('ÄPN¾c =Κ¢(¥¹l&›I×µ•)%X€°” kÂ9 7Î:„„HT&ݬýâ‰è0ÌiÀRRkÆ9‘¨ÂL kY3F(%š¬]BšfYBf_02Ë‚i5甆™›:œXÓYÎ ãL&,Ü»º0C÷dYfŒÂ9>Q€ú)3ÆdY¦Í™uRJ gœŒå€pJx“,k27E*¡/ ˜TsÞ´¡{”R™qF8Ç FãŒÒ0n0/%%‰¥€ ¦5'„K¡æ #Ö”RLåáô:œÏZBÓ@뱈5ˆ5@¬@¬@¬b b b kk€X€X€XÄÄÄ Ö Ö Ö±±ˆ5ˆ5ˆ5@¬4M@ÇÃ9×u½VSÛ¥ÂÉdB–eJi'`Ѓ‚X°´Ð4­òÿ·w¯½mZÇá@pÀ—¬Þ֦餩j5uÚgß›i_ÂJµµi–N–:m‹fL®¹ì…%jÅ7b».ÿï>ë<ÈzrÀVFÖã¶]/Ëœ¥tû½¿LC×u½2ïj–:‡n¯Ë¨fSDZ”·ß?ÿ)M“(ŠKsɯkŠ¢^]vlûP×´\“8Š“B‡Ò„¢Š<¡fÕ›OYYU6ôüæÉi’Ä£ÑÇr] æãAÿC½nW#`)ÆÁ~žPsñ#PYqœHé5›_•hMGQ³u"¥/^/—.à8ŠW†Z¸0ç TUš&áh4“$IÓ4çQ–eM6<ÏÛp–e­ý"išŽÇQ8¥i²hY¹Å€›Lu»¡(k÷«×Ýô)k-„=ÏËF&Óç.N§'—Rœ€y–Þ9)k]€¯±›”2±,kòжm)åô ¢(³ƒRÊÉà¢C¶2á-œläL·hp»¡¦ñ#€\–—Qžªzç•5€±m;ç`Îg‹_ÐÙü§Ëz—¡(k úÒ4]ï.ã8ƒÁ`ö©l0ŸÞÓqœ;÷æ²Å;Û 8½ÏìümÛζ?k¨;¸ àS;Ž3·È™ÞÑÈ}w(TÀâ„be °²þÄuݬw\׻Ɯ»O6èºn½^ÏvvÇuÝ%/»ã•õÊ€ËÓ­ü|+kÊÀÝ:[9¸|ŸÙE‡3`ž3°ûPÜ€`e T™&D·ûçééÓ(ŠÖ~‘F£‘m÷ûýÝÌ|O׺Ý÷šÛ 8âŽÝ…ÚÓ󄢬‡EUEí°vñæ¼Õ:1 #^÷?ˆîþ›Åº&ü››·oΟ}«ªb+¿ø7Áu]ø¾¿2e <¼eµ&lÛ²,ùë/?¿xùãÙ³ïÊ2ówW\¼=o·[¶miš¨FÀw¹B-üËÄ–$‰çùÿóïõuÏúe™¶u|ôèQ뛯ۖu$–Þ4(QÀü¡fñã@Å !lûx¯ÕlAX–i›¦qtthšÆÊ_,,QÀü¡æ¢¬ŠSUµV3MÓØà;¾»Ÿ³’¿ÑÊð^¡(kàáVöEAÀ\$ñ&Ê@Ye  ¬”5PÖÊ@Ye  ¬€²Ìím@Y@Ñ›ºÓyš$Iïú’3ÅᓳW" o8PØ•µiAà‹áP*ªÁ€Bu´’Ýù¨Hé U¾ï£”³iêNçu†µšùò‡WIù£DýpõûÕð‡®”½8JNŸ´9SðeAø_o éâØjE¢öÛåûÿ€ €%;³IEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/manual-source/_images/customdefinition.png0000664000175000017500000004501314126044351023334 0ustar00jssjss‰PNG  IHDR×Â2ý¾sRGB®Îé pHYsHHãѾŽtIMEÚ>§•tEXtCommentCreated with GIMPW IDATxÚíyœæFyç«$½W÷ÛoŸsß—Ï™ñ5¶Év ÄY†c°›À.æ6Æ&!x×€m®pÄØÆ‰ Ä ›Ý|6ùä 8²€m®õ¶Ác=žñÜxÎOO÷ûöñ^’jÿÐÛj½:J%½Ò{þ¾žO[¯T*U=ªúéÑ£R‰NMM0JS‰T:¦TbLgŒ‘V@[’%m£ÃÐ6-|<°È“³¶-|ؘuºi(¥†Ò–JÅrµBS¥ÙLŸ$+j¥¨é*ñ—`Q/§Aò¥ BE‹KCTŠŠ ž’ðBF‹T(+![S±²P±Ó@ç#Ô¹tïd,DdÜ%~nÌ'ó/6¬ó¯Ô;^Ìw ¬o,ˆq¹IZ€o4‘)<¥²¤¤Ré„¢LÏÍ*©DJ’•jy¦U.°p­ÚÇŸbŒˆh'kWFŠæ]þº-žÉê7Ìÿò± sÊ­Ui€ uÖÎòWƒKp¯Þ 0¦iU]W©l:™”Òé´V-‘à*F)%´Z­NMM–+%J©UÍXKlÆZ|¶¢rC^Ä™˜K!èwºl¡Ÿú;„Ì5û'ž¡km)#”àåÖ9ÂÌr?B«ÕÊÔäD¹T"Œš—Ì \Ÿ ¡$Ìå•J«ÕêÔäÙr¹dü¯>‹\Ù¨§²q,¯UKétŸB©¤éjB!åréÈoç''ff§çæŠétº¿?;44²jõÚlv jOœYGì© ;ó¡Œç åj÷ˆÝCŽ ó+˜` ‡/XCf ty r£µ+ed® ¥åRñðáS“gffÌ.<0<<²zõºìÀ aº”Їœš²f’]µfí@6gÓW×29r(?5QŸÉÈÊÕ.™Äê@ó”mÕj_eÓt5A%…1Ý+¼z͵…éâ¿ÿÞíÛ/–¨KÏÜ·ÿøÕ¿ýiI’}øËëÖ-ö,¨$?õ ÏíÛ·orrjffV×uJi__fhhpӦ矿eåª5Œéâ>J‰«å(;GP¢Â0ÆÄ¢ÃǰŸÀ³à 1ñ "Ø•ÔG‹I]IÍÿSO]ï¶Œ+c,Ðqô“`æ>$¼#Ì!”J§Nßýü³ž]ø‚­«W¯c\!¦T?ub÷nN&[V¯ZÈ„ye2~ò…Ý»8b²jÕZÆ´&Ä)”móÊU«™®óNÓÎiذñòçŸ?zìØ #„1¡!„èŒI”2Æn»íJWì¦k¸,<¸ï™¿Ú½{ÏâÅ‹¯þí×,[¾btd¬0?yüøîÝÏ=úèãg&&.¹äÒsÏÝée=nw8Êèp B,(i>1b!ÇUX‹·”®7õÔÇåÀµaa{fÔúK "z Þ¿ÏΧŸÚ½{ÏâÅK®¾æµË—­-ò'Na÷®ù.\8ÿ¼-^'‹RéÀ½ó™,¾úš×._¶bdt¬PÈŸø›_>¡¯Y³ùÆ^ŹVLž=ûÔ“¿|ñÅý×þÎï^¶í sÓØÈØØÈØ–-í?°ï{ß½¿ZÕG–-[Á˜‡;ìÿLˆ†ëz!n,.DˆÝ”‰ÙUMØ)f5íÕbây%¨ÛÈ|u”¹‡7]Ïç‚uP.ïHõ×á7 $Á/?ùÄ/^|qÿµ×þî¶mWÛŽŸ8±bùòÑѱ-[.:p`ßwÿí;F^±b¥3gJ¥³gÌLêt`ttlttË–­öïÿîwLFW,_¡×eR+ÉÙ³O>YŸ 3ÄdtldtË–­ìû,_¶ÂÕ7ÄÑóP6f­ÑþûkÊ–Y¶l§0çHë×mH$ÖŸ8‘0’QJ4Bt”Jú—¾r,‘XÿÙÛ_“ÉÈ^EUU}ï‹»_xaï[ßúÖK.½L×5ç¿ ë7¼ëÝÿíàƒû÷í-çø–J÷åÌâñ8“Tf ñ¾cÛ-™îO¦û9…I¦ú“©>óŸWFÉT_"™1Zp"™1V&’sÙ¿-1ç³"äyã'guãcÎç[,èS9ÇnBÏç‚?¾ó«ƒÿÎ ›™o«\(£àeÀ…hìqœxä´ZU÷ìyþ…ö¾õmo»ôÒmº®=ôÐ땯>ïüÍ×þ‡»víÒumýú ï~÷{8¸ßž¹¹9—LTuÏÞZ&^:°~Ãz3“Ù¢K&ªªíÝ»».Í‘Éú ïªe²wÎ-“ˆa»²:tH×UkI:´aýúš²íß[,9Ù)omíÚ‰Dé䩜qÊæ*´/iÄéÉÿü›ÉÓ§—]õêþ×½nÌûrA''Î<ýë§Ï=çœ Îѽƒ#£#cÛ·oßõÜî5kÖ¯Yë]J÷ BJsyB¨!Ä¥¹‚Ÿ¯¹°'Á yÄ!ˆ6! žœ=»hñ˜¦kW\a*›äå_*œà媕™DbýÙ³’¦•I¢ÖIU~û;ý—_žxÃŽòš5%NÜ“R©PȧR©ÁÁ!½^…gggûûû­k$IJ§SÕjEUUIòuŽÜš¤Åž69NgL!.§!Ʋ)¾¦4BRéri:•0¤ÖbcÁ)Á¦^Â’é,!¤Rš%„$ÓýõÊ;ë,h2Õg±±`zĦ4[ ›mÓëD2]­” 69‘L'éjµdíØ´¤ÜAÞþ¨pÒ螯Ñ&‰°°8F/Ô<Áf _4¾ @ Íçk]˜éšuÛÏ~öÿ¾þõolÛvÙðp­wK²Ù…«²$Ys12É éºöÒKG/¿ü•Ÿþô-7Ýôcûw~íÎ;ïyæ™'—.]"ÉÔ¦)ŸÏDÓÌïû«oýÎï¼öž?»·?ÛÓqæzáz‘Va‹²©„?úaÆô?ù“/?üð#?üè>û>pݼYæk¤©u? â¼#7åoÅ rÝu}Ù,)•«}éZÍ+ù÷~/Ñ߯æJ–º‹fêº^©TdI²ŽÕ˜ÛñÆÿôÀ¿—N§­é‡†UU¯ªÕT2)öTËg{:“+ †‹›¹\œ6Ó–KÓ>‰ë„ØQ&î1Måm°ÕG-˜éW+¥šwÌ\~1Lä˜í>Ý÷"i]A׿½RÃ:rø7€XÀcÇ¡¿Ä9DÓj]X’$[$á _øb.—ûï7ÜÚµ‡††TU¯V«r*eæ¢kl^(ÓõU+W|úSÿã‹_ü aìÆ¯¿ó®{î¼óžÏþö%‹Y™™¤RI3gÍZ“;ïºçλîùüçnÿàÞ{ï׿YËð£×[Ť2/&Jp½²Q³ú7ÞðáG~ôá‡ý×½æï¿®Þ,ƒµ%®—ŵ«Ie™|üËU¦VË!ìÔ”¼xP›•'ÔÁãr2KI_}”ÏÕb’$ äªÕJ¹TJ$æ¶L:õÃÿ×d"a^Óæõ]íëëK¥Róÿ©˜»P* wØê7Ç•J¥û…¯±¨‹ °:Ŷ³Ë(Óˆ°Nt¦3FÆ…ù‘Ù:fŒçOS뉦 Æ…Y¨¸0ÿŒPê» < @©‡øRjGÛ~¸E(õºÐ1LjlJ¶ëìž\2»tÑv‘r…dRœqelxdD×éìÜLn gÝ’L&l1ŠjµJ%y` 'QI÷¨û˦5:l8ÅÎüXÄ Llä ·²QκbN±­ãJT’ej¾gI)5ÞÁlôâÄÜ$*škM3üáFßãg¢;†9ˆ¼Ÿ7ÿÿ£Ý·0BcÃ#£ºNçfgrƒæ¶ááÜOú¿###Ö^lvaY’jÒl<$5°fò‘ë?099ùÍ¿üë?þøÇÞ÷ÞÿjæS­Vj:`õ¾™Q’]§³³3¹Á•+–ÿúÉÇ–,Ylîø‘ë?ð¶·þÇE‹Æt]«ª/1©«5 ßPlÊv÷=÷Þýµ{?{û§Þÿ¾÷üÅ7îûÒW¾Ê˜~ÃG>d­•$¦i®eQLî&Ä'§??±·2V]Þ?Z(VþùÅûgÕ¹o½.•`„LÊ+JË!:Ó‡W­Z}ðÐÁ­[¶òëuâÔñÅ‹–ärL׿‡áÖ©87•éJ÷ –æ¦!é¾!Bˆ±lÑx|g].ó¥b>ä\íÝ–™p“eFøØ¹ÕñL¹8)î2ã–ÍU2êR&’}†›N±K¯7žÔ0O/Q,j6^K£Î0ZegQgèó–‹ä(Œ5XæÖTu£ 8t`ëÖ‹Ìõsss¿÷Ž?øþ÷þÅTyÝuïÖtíÃ~¿ÎØWî¸û-oyó’%‹ë”ÍÃÔ¿ûÏTf~uâWÏ?K)ù‡}ûè±ÇVö/I.%„ÌU¨ÆõY™® d~kû«víznrjR÷¦X,>³óÙÍ[¶Ž Õ çf£â¼þZ%x^”Íád~(E:3hHp©˜7ÿ¦39B˜åÁ]-dÁûj_4âÅÆs<‹l¬Ì:‡U0Ï~ÈÜâųd~ˆ›ceŸuX…ksªVæˆe 1w¬›­€–!ÃnÃd™×^Fâî0_Û?Ý?gæ,| |÷d>æÏsz#ÓT^íV0gÇy7´/73ºð”¥ §ÓéïþÛ·“ɤKaL¯›ÉšÉäYkÇ?ÿüó\u`xd˜éuÏŽ™® ,”ä,OLJsób2ìùFuc7hõÊvvÅŠå¿üÅÏ®{Ï»Ì2|øCïûÅã?]´h¬X,>³s׿-[‡”ÍE/©¦©ekֹؔ¶?:üÐÍ?ûÔÖ±‹>ù[ôÆo¿-—Ê=úî$%ÊTJ«j4¥0/F’dIO=õÄ3;ŸºêªW ¸ŒØ-•KO=ùäyç_|þ¦–Á4„Ëh Ÿ…¨Ó&vˆèzÔÊÏlŒQFôZ\˜1ƈÆÜ¿>0ÊDJ\‰ôŽ ×eï=ÚJ(.ìÄf¢qaÚHXœú½ˆm$ñ¬%u ±3×°…ë·e'Êqíi}µçÆÜ^ *i3ºðÕW¿:[Zœ÷?JO>ùÄyç_|þ›3)ÅEû$Y73¹êÕÙœK&¥Ré©Z&¦“.™PIÖu²‰[IJåₘ$e—’D c’¤X”íUî…YP¶d‚2¦/H«¥©LNáÝS2š98y°¤–>úÐ.žþòoAaƒºNˆD4(2‘)ïQ”®k²¢\|ñ¥’$ýè‡l½hóêÕ«SÉ”‚,WÊãããÏ?¿ûÛ{ãÆ™TBÓªuö¢¼7_i£[ÜûeA‚ÏF½3²ýfåØ%½µ™Q·yzÍñÂóqa*ö‹m3—Ò³°¹ÅðŽ…6Vö=¢Èìîo~×?ädnOÅ©hÄ×­ž%fº’H\|É¥’$ýðl½hËšÕ«“©´ÑX*åò©ñSó]xS_&©kªK¶º¦(ó™üð­mY½zu*5¯åòøB&3i{&óQ%iˆÉÄ$=/&¥:1I'kbÂjÂE7Bt]••Ô¼²=ÈW¶tJÑ´*'äéð…ë9S<³ú›çËW,ÛöÐ;¨T¥lšéŒ^°ªSEr}²¼ÐP%¥3éÌ™Ó>ú𱣇u]Ïåæææd%±zõºË¯ø­‘áY&šZñõ„]×ñ̰®qÿUØ»ï{W„†)X˜ƒÒ°Vh>³eñ5|]á‡}‰ðÔ²œÐ4Âé£Ã#²"éó^”›ÏGd%©s3QdZçŠ9K¢¤tú‹‰Ví- …lç•íeNa$™iÕ '»T&g¨pÞ{¾vÞ·.š-ÏJÿùÍß¹xñ% 7„Q‰É”H‘¨ó~ªî-ÉŠ¬¤TUU«j±T,•J™L&•J+Š,IÑ«:ÿåºZbKÂM“cîhs¤’Fž1m\FÃ#‹¼ W²†J|ë‚ T–d¥ªjjµZß…Y’ÑŒ§OÌCŒEIRd9ᚉ$I„©¬N\ÅœPI‘•¤›˜(’D SÝ\é¸.Ó’œ•¤ªj®ÊÆ´Š²fUaRC£îP´VbY!DbŒIÕu]תºøó­ÖâVÊqŠÜˆ(7Á…¥¦ úŠ[«ëd—pFb…ù³ÇC©,B‰Î¨,1]×uÕöZoÎ’¤H’B(%:£’Ę¡šoaê¦$‘YR•˜Î$IÒ™¦kªîâG7ãlJrB’”PÆ•(Ó5M«z\ ìÑ$› Û.`¢÷ú4òžÖ.ZLB}×3b9ŽM‘ýJ›xN;ÁáÞñ]Â)/ˆÛ‡¾P¸½&ʬaËÆ{$ÈäôîkO猹‹js-Q½4WbædzŒ²ù7®ÌéÃkC± £æ¨ÓÚvÆ%„¥“©b¹D6ÔþPë´N–ÝŒÉö,¿)c,•JÚ²·&¡”°ºMóCkŒR2Bíy.±Vzc,8¡„š¨½ìÅÐÚlUn›7„¥pæ ãÐêŠ1o6f5ŽÕ¦u˜=¡ýjùí¥tá…Ejý%”QBUU¥õ[ÍQ*u+Œ¬¶•™©(M&UµjNe¾†hÌ!E²4žÃÏïin!„šJ%+• ±~­œÒ…¤ó/LÕ¡óïÌ?p®Í5—N§êªIÞcdV«Ì¥V-VË”X¦¼*UÊ †³ÂR~­«%ó»PBX:“±}{Ý‘ „É1*È6T†º;|¦™™^û,‡Ýk¢ö”<÷J÷÷]ó¡4ˆïN¹Î+õõEÝ~Ó@®-%B¯¿±[ç9dƒs7Ì \8]æ2^F|äüü ·0Aç-dâî;{ßúK„Æ6#¨Äe—Ê8`æ\ŒY‹©³¶n?:oæž`¼‚9äØ¿BÞŠLÅ{ f<÷×´hDm©ƒâà‘|º!tÂpSQ° g‚ŸˆjDƒ?UŒªý4ô1î8T¸©N±Ë‡yó¯™ÜíƒÁÂ/®{‰ŽyÈ1·`¢eaE ´LÄ!uíôu/ ÇûbH›E$BNŽØ`ÚГÅ#¾ÁKÄ.X7éoóU¸m´˜x}¼½NŽ©øy‹$“c✆!´"eQ]öõ„5ºiªRYStÁwÐSÜÊŸøÆéüv°þš*Ìx]®Åá\ãðrÖA,¢þ¢F—úؾ³¹îJ£kn1†?Xt;5ø~tuc‘†•¨Gõ—µÐnW-ösãã0rpY@”Ãé²HÛm8‹v‰³x2ˆD BÞÔw²øv¼ÿˉH°ÖµïH´8¢Óêñåqa9¦îÏh¸aÓzY<ô@Ã~ÄVÕ Ã<Ìë²WNX´âÀ¢êz,:qôßÒÈÛt¶ˆPUn3ým_8r-Ž(´R÷qqü0ÒËÛÍ>q¡°"×7£À_³g^ºÌ;4ñ}µoÚê†ûN,ÚÎd JcÞ¡þ†­x[êo»©°·“ 3úF(Ǧ@Qí¤J⣲žŠ¿(sn>Å ¶mÚ®]"âÀCtõjHvIØÑÆ)¾~”¶»?k7vÓbbý¢kPq"ªaõ©Šˆ~¡È$p<Ø9j6Þ ˜Ÿ¦ÒˆûT›‡$b¨ c±¬É‹›vˆÐùmßf§tBƒo*ŒHyÛW|;æžKi E1UU«ÕjÓËÌ›%6ž[E‹íCÁ Nc«0¦|‹Ñ}?¸™Å[°ØÜÞŽßD"¡( 븄Tájµ:7WÌæ†G‡– Ûz™™™B¡p¶¯/“H$š¤ÂªªNNV¯ÙÀ˜^)ϵ¹h7‚FtÐ.œ¢s|㨦ýa-)}Ü\ÄO_____ÿÑ—Ž )J`Q £Â…Ba 7ÒܰšÐö)J4YÓˆ3„F“Èßå QÄlÛNóX»$*e5™êË  ù‘‘‘ »KAwÐ4mj*?<<¬r?ïÜž]……é ¡öÏ•ÅTKܙǿÖýc¾)bªh³Z‹X½ÂV]4yœ¶lRkŒµŸ¶U-LMå5M‹ÝÖu½X*ªjµsÇ|rÛø~A/ú4¾êzFèu¸F]ÖI®3kEN¬³jUîÝðž;#ªZ-–Šº®Ë²{D¢[ï%ÛB‘cåàº+ÒEhu·ÎÓ+´5J½Az:Ê…"Ç/ÊÍ8KÁ§I Ñ¥h{·€ö–½Vœu ]Ú·µ)0FÔ¾nü®¬ÿ÷†Ú¤ÚË”éËYç ¾Y˜»pgúrÆVçBÇÉ[»–¨'>`ÕZ_8œÅX·X8ì·6ÛªºK3m7‘(ÎåëÕ3Ï•àAKOKçòu0·¯é¿ “ªÃÚ³4¯ÒÁj$äIn‡=ñgÌó_PœËgú­škü3ÚþZÚvôJïÌÖ+×”8_±ô¢ìIÍô…AøOfvXLÓ±[áA[Ý^cÙÐh§³l®´muMïÌÖ+¯”=îÕÂám’ ›­‚b~шÎå 2Ѻ¶‰>ò3 Æz¤3@y#ëd ¾pžÎEØz=^uléèW{#¤¯ÈUìúú‡ZR´ZFø/K£åÆï ƒ&9ËÎÙhW‡/<ÄÎ*Ás³Sæ¦FüP›²‹gUºÈÏ…« îþ.ÀÕe%îhuöÕA¯5ÎþV×d^ê/X¼ÎV[ÒÒyÚT¸£: åog2Œá-h@\¨0h™4sÔݵR+ª¥\¨0ˆ·'Rß$,ª/r€æë,¤* º[ ‰wb»¼ÖOHm7«0F²ö Ð@½›…j ´7L`Bg{±{ÂF#"¤¡ç ]m$È+hØÔV,/Ï¡mA¬=`Öã6½Ó_ #|a‘ •à f€ TT Â ÂCv„³Òu+_¯”â‰C8tV æ&h¨¶"DQÛ³vš_;T³ÁG؉Z{ê;¨³¸¢DnŽÙ™³Æ_×^ëC¥ ûp„¥jà ‚n:‰íÙ‰à 7ûJh\ŠmÞŸó²(™×s³mµ&°¥q­—³lÎÙöõ* §Ì¾¹ùº"; "œù»L¤¸Ö÷T²*g+çì‡>¡¶”|3ò æÚÞBw‘³ ~¬ÆyïúÂá.ÅÆ²«4ÿ ÏÏ͹ՙ¹éà7”µ IDATØÄ¿ð*¤mAо¹ñí ¾£HÊ ÜE°î¾)9uw=•A­*xÜh-˜ÒvD›“Îß%Dà7µk¤‘÷®/lÅ0zKnÜij —²‘¢rö ‘-‘ }Ó=Dƒa¨¨Î­Zûªï©ŒéüF{è …lðDGØïn]EQ[ø8¥Î|%.¾V¥nše[rÐfF!ã®ï!‚Þ'FUæVÙöiQmr‡îëw7^æîˆE˜ª}DÂz³(q3…¸Ëngš\;ñÛó&—¹Ug¶MZT›4fg18OìC”9\뤈†o‘ DLlÉAÛÄ‘ šI|#Ì"ò.‘`}ómØ|S´¤Ù:h× v '¡-{:çu+ÇQs~\ÕúÜÀë2À?hwÇ‚)·€WJ§ ñmâNŠX@Äæ,ô¹4N„‰pç…cÆ@§#’ê8w·=+r>¤ z¬•j¨¦Vçf˜»ZU÷ïßñ¥W2­¢éíM í”êcônÇG$…Jʳ;ŸÜ´iS"À»íëÁÌ @K&ènzY†:¨î¸Z@…@…*  SUØœeƒ?×FNÞ÷(c›eœÓš´-­-aÜcN#o!Qµížš"µgs–¸Þ#xBífؤ×Îx8UêÍ)R{¶kÄ‘àOmG›eÑk«àlx®køî'ŸÐWò@¥ 1éb#¶ TB¾ ƒV*Pα6'~pjR|FSר¡S¤ŠO¶É/jP£‘€± vöNõ…E.wQÍæçê>¸Î¼tÞ?'%ª©ö‚ÎRH‚Oº¡mCW9D¥Â½ÕS•9ñš¨S¤Tæ¾̰…S¤†XéUß@F‹°¡vƒ/l{r& qÒà´Í¹Š|‚ÊHvq×1œm›i%ÎëÂæ1Ä{âʨšS¬õ w vž"5*ƨ£`QùM¨…¾°9µm¾ uâsS4ç(­š}&ª,›p'سÏ|¼am¼Iû†•ZÒaÛSu™‚6×øe&ò»ñ£0,ªYñ¹B—žAóÛy#Mšghš>vÄÙ—ò,øÏ5½{³3ýÙ‘Ù™ G2⶯øJæ·U(ÏùÖ ²ûÂÖþìˆmcï>¥õ;ŠKJg2Ë&ñ*/¬qî.x\2øæãZH—¶äÝ®DªÊ‚-$DÛcwJî{²˜x xr£5šÏÙç6¡ÿ…Ð…ˆDóïëGgg&<®]ýÙQs9¢ë¡KžæJÛVs9h>Ö•œ 6XZß•Î|øU/OÐã6X©@… dÌUöÍÐ<ã"§^°Žâp-°­$â¦lÒ+=¹-n1‰cfË囟ÙòL«hºÚ¸ìÐV4¹­vJ×h«r¶¡Ñ$I¡RâÙO„˜ÙRA; ù"bõ×`7Z3Tí tMh®Ø#Z^æ.–ÌæPa€ h 3Vû!ü¡$@Š6ñÌû³£Æ?[çBGÐLÕe­/Ü¡Žj„¡â(6y”pë‚•ìÀ(!dfzš›±Ò\oüìÏŽZš[]w 'ÃìÀèÌô„µÀœ*ØgÝ×ê››Dò7SÆa@@“}[6®¥/l çJsÙ)UÎÝEVúæÃ)ƒWæ®U05Ζ³W\ ⛄t±<³I•`Êp DvñÊ„“y$r:ÿ 興Dd3[zùȶš7ò^ W1ŒHt"A hÿF, ~˜ÂU/¼¶ºÞe z…¾‰Ž“àthD"ðœlâÞ™¸Cç«&®bÔ¸SÙL3„{ €qrƒ©h”qa#,àúËÕ?õÝÅæ;W:óq}BåUÁ*ꩈòóÊ€Pd:ª©ÕÙ™3â;T«êþý.¹ìº`fKÀ5:;ª )’œxæé'6mÚlfËìh#qa¡è¨WÞ1‹“{ ‹!Á»sMefú Œ¨ó£a€ TT Â Â€®E©ŽÂ"? ¾0´‹/ì.Ï\ gõ ˆøô¿Và @+ @+Q˜å‹ëç ~ƒ/ mâ {É3GÂk©ðp¬òh(d@a„/ ­* Ý¢ÂÙÜ"ë¿@»ðÓx-t=jÔPQÙ³ÝNGT剣^!òßÅ5¥xg Ý̺ãÔ´°IGüݹ™ÂËÖšXºV•ŸÀ™§×³€Ð] ´¶+I±ÖÄzI±¹½Æ‚õ¯õ§mG¯ô®Þ´k&¾~7'Ÿp»{UÙéPxíÈ¿D5‘kVüd"U·¿γ&R×½\}™ í$èmœøÉõ=•œê„h-^MÄ’Ñ6›eÑäûH ÛÄÈï'âõ…E®ÉƲ¡ÑÎkŽ¹Ò¶Õ5½3[¯L¼RÍG|wþ.‚e}ñã—G$™`•m ]0C~#1ò,-ATíÄ·—†;¹t“ ­E¤%x%pÚ¿ñfã[~kor‚FŽ)}{ùÂ-¼àg"âQs×£˜—ÖСk"¹ V!´ÙÅwôMië± Äù jçéh¤ñÄq"â°äªÔÈÙì#!ÎlsâÂ͘ٲµÏp¬á/Ï%tù½2¼±mç¨b×”'òºÄtrï”Û<Ȳ¬Ù ÒÏŽÄC ø×^÷\mk–v>eQ•Gð\D[˜õÝ¥#µáy`ƒ &üø®ÌæÍN;7es‹Ü¦Çtæ@‚,ø¬´ÔµðÖdüÌmYq2wÉs¦pZÜ,õ…aμsó©BP3:«ÄbÄû¼‹•ˆ5!¯¬)-iÿfa¼N‡ÇAÅNB·–pæmB³ñÚ×ãÌ;‰b}„‰_Áô‚ ˜ëÔ—ûÂÙÜbË%ñ´uÙÜd]"ÿpÙòSš[­ÉBìnÝê›g#;5Tˆd!,æ[g² V€&äÕN|-˜R¤0ü¬ø+m[êDÕZ› ¿.®­%D“‹©³ÄUÕÊìt€;ˆjUÝàÀ¥—m׫EMWq7ˆÊ‡k‰Fr\INHrjçÓ¿Ø´qc"À»íX„7˜ âÂÐZhm8* ð…*  ·T8ô,ξÙÜbã_ㇰå"Oߔ֢†+LËODó­Ú)M4Ž2Øšwˆò îÛ’ó´;tJÇ•ØVâ\Ç0—øÂö-¢ØVÀ¾–‰¤Á´­{¼;H‘[ÓvM3–­WW×K4/Á«7g//?ÂyP¯ ^‰ø%ÝÕI·Ù„__Ëæ®$¶]ïEøGtµ­óp¶ƒŠû†¾%á.h>áŽÂ1W vÈÏãärz¿µs,àš3¿™‰7ÂpÚD;Û¶^Ð\—­ â{ ^ä9éCgëš¹³:Îñ+hÍ0hÙø÷ü•ÄV)ߺ{•‡DN]5ßLDŠ"Ÿ]@p«ïI÷µ¿1ðÔâu ݃Z8hyº3.ìú2b¸»'ÓL¼Ýë5k Ã÷d„.|nã8®­‹Æ]©–Ù%ľV$Ä…?î–ß©tÝ¥Á5RVuÆ`¾0›ÿp3¥´%…÷*¾C4¹‚M+[T³yÊ<¦Ú…¨KT%ip~‰ËÓªVÝàqìÑ>صSp0U—´ÉÓ¹@•·Þ>4Ó¹ˆ©‚¶¢¦•$Ö‡™ÖÌã³| ºDhgA÷Ù·Tû´-VÇ6*/>„ŸÞ & ñ›ÖpWÝÀ™ ›[Ì™!.›[<]8mþœ.œ6Ó‹OiÝÅš‘³u¹‘™"Å+è» Ÿ·ÑÀĭî$ô$¡eàgί»`¬&r=œˆA|íl]Ã)³k[ò2‚`>$¬­øÕd1MxêfßÊ 6 ßÆì›€ß)Ì•ü†Ä‚ÎöDBcñ…§ §潌i·KŠ™À–’³×@nñtÃW'ß‚‰ R’ôÝE¤0ÖL89x•ÄÈ­A+¹îÎ?bs¬ÊÉD¼R¾5âoÌÇ™,´ÁU3PkÔ̓î.ž¹¯•‚Ú¼qhªª•@N¸1³åeÛ^©afKÐt"¹*£Ì¨lôQ9!Ë©§ýxЙ-³¹Å :6hÿŽmup`Ðe@…A»ÓéÊÛSW\&ÃøÑ0@…*  kTØ|¢â;â çŽD뀃1FÂ|‘£Ñy$œ£µ­ãù££½†÷“ù‘Õt@·`ª.‹r¤šõ…(ÎVâ6´Ûu+?Cè_Ø)Ï| gÞé!dº0>[bK6]¯Oϼˆsßú   }[V¯aT8^rKp® 5*<[2]‡€•XÆHðE6„Cµð…ý™Þ.,„ØJjdÏ]¬>5t… G6P­N@m â[]3ä'€NÂ2þ ­çT³ºÌ_@÷úÂNyæK8 ’¾Ï:?¬lÐBß6Ì@5ãÌó?(L Ím«/ €Öè°â%Ͼ»2 À¡A…1ÜÌ¢ÑaÌò­* ­$âñ§NŸ9züt"•™÷Ì)þâ/þâo×üUË¥•Ë-]²¨MUxüå‰Sg ‰D"]Ë•â/þâ/þvÓß’ž851-Itñ¢±vTáã§Î*ŠrþyçãЭìÙ¿ÿØ©‰U8ʸ°¬(ù~œ$@3œëW”d„FütNQœ$@£( ô7Œ‘€V€–:×õozDéfŽŽ:WNLLÀè^æ²ǹ¸6-+™»p›w.5óHD‹Ù|Ñ””ËåT*å+ÄÀËVVCùÚMаÎ48À·)F‘`ÂÿˆÇJQÆX6ÿÚ¼›Ñyºò\–J¥}ûö¹ª€W•qš®+Íèe+ŽÝlµ¶µ4/빦ädËi½ 7º­ *r$Ôô…Y‹'¶äßv¥{˜N§7oÞœJ¥ÊårÐ`…벡]iÆÆmeh´³ú^a×ô"§Žswc6ŨÍ}:gú,Ö&Û›m·R©¸ÊŠ«;ìe"›vôš­om’ èñ¦ØØât»ûÖfÿþý[¶lá\«œ¾Xoš‘o«l< ­›bè/µ!Ýíb4x—ÝSf j+ø§ 3"¤E WG/+Ýê×ðom¼Ó…¶FG›Ñ÷6Ð+& §tLD¢µ_3Ç)ÝÙÝ·66#˜&W–î0£—­¬vp>[k¼Ö®ìàk#"(8Æ]˜PµZ.äO‰«pµª8pð²+^­Vç4­jÝôìž#‹GÇFº¿îÍ6ÍK§Óq\Wa+bmŠÇO=s¶°åü5ÖM²œ•ÌÓO=ºqã†DÂ?Òkªpnpi˜¯6òpzj¶]ÚßµÞVg¥\-Ðãq•ôRpˆ,è_ØlÐίeNÊâÜTÐ|¬»t‹gˆ©³¦¾æ6¬d½PqRöÔ½hŽÿfßÖÌOàÜꕾ£»µð¶Š˜—«àö¸FX¯U1çå qa Ìî ·vnKÏžÀwIÐàóŠßˆß.¸&3[£Í› qþÅ#kbÖŒnæå’X·â”Aß™„ à :xjÉ ©ãé\˜Ï8ê‘ïÒ;ìŒq÷ìå'D҆õ|îáÆ 4 Í%Ti‚pXÛ½oœÁ7"a}ì&x‡Ø­¯œæí© ’ï S„™‹·[‚¢4¡ÃZÃyBåµÕõiUÇ=Â7ǘ½#¾íJüù­à³_ˆ/ˆ ¼ÁÜI·áºÓnÇn/Ý ³,À€VûÂNyæK8óNÏùþÇ`V@·i¥"¯Y:pÞºa×bÖï…ûú'h Û/ß #Ðhšvøè‰½‡'û“qúÂqpû¯%„üÅÿy°‘ŒÝÍ…®aºX#Û«.YõðΣ^?]×ô^ˆÜ2F†0x Q²jùÒgŸñ‚5Ëp¼*­nv™BTU;ç×\¾î§O¶è§O¾ê’U?}êpov'W›¼æòu¦n&ŠäXÆzÜà]C"-«š}¬ÃÓ FI0Æ«€ÔGD /Øb«Û|[§³l]ÃÉÄ&Í^¹µµ Wë„àÚí›!>¾ÿÚí›||¿±ÆöÓHiü´îe®4~¾æòufµªš9˜y:ÞY˜¶ò²g%Ç&Vã˜Æ·ÙÖ–Òvšl³&ëhƒBˆfÑK›úÙÅP@AÍ…}a›n Fl ®™¸jz'Æ.TM3—w¼ú¼<²×ìêæ¦k·oúÁ#{UM3˜+­{™+ðÈ^c¥¹‹ªi?xd¯±Õ¹¦;ƒÕV^và¯tµ‰±`5‹¹lœÛA­§ÏX¶¦7316u´ÁAM…õˆ•ÍÍsCöˆ„à( Nú`ŽV†ÑŽ YØnŠŸßûÙóo¾f³¹é{?{Þ\¶¦7;Wº.˜Ë®é;4˜Ã7ŽuŸÒš›5¥×²‘lÇ«Ï3N–¹Éõ(Ýap@Ñ4É¢r^ÓùˆŽ’˜›+>ýô³× /ljVR­¿Eµþ4—­+ß|Ífg‚·]{1g/sá;>óæk6çÁg\Òé¦sµžQe³úΔ®6ñ=#Nóºž,þJЙ×~9ÂÜúú2—]vq&“ ·/Ìñ¤þ鿲%xçŽmæÊwîØÆqÄŒ”o»öbg&]`:/뙕µVœoß<æôÇá w¾/±`ÑäöUáî—æÒÉ-Eóç¼éJë&gðÑHó÷ßBd/çî®v¨éœvðÚ*n¯ä\þûï?ñÎÛþþûO˜›ŒŸ¾‡ªÂz”$ê#ñO$aŽ^Oi5aýiÍ­£•ÚúÐüoïÌPÒ¿½ÿ±ÿöÖWš›Ì3±l¬÷ÚëÞtåßÞÿ˜±ÕØdìâ\Ó‰v³ÖÚfÁ•®6០‘egÁÌmpPSa5º‹(#}™Ìe—^œÉd¨Z-ç'‹«pUU8tùWWË3ªV±nznïÑE#»—q¶I§R®ëß÷Ž«ÿç?ÿ¿Há•U„‡è8b2/?Û^6x×0:Ô|üìÖu©3“3›Ï]iÝ$ËÉD²ÿWO=¼qãú„"c`5wxéŠ Á¿xÄê_™ ÝV/xFú/¯5—ïû‡ŸX75Â}ÿð“÷½ãêûþá'Ö•ú/¯ð‡«MBà4£—I{ÜàÝ"KUµ*K”§–A&’˜›+>½óÙkF–×ûÂÔ|á+¯®–¾ð‹ð…ƒ±h$ #Ðè:›+•—ög“¥3“3›Ï©÷…•d"Ùÿ«'…}aB!ÅbiÉòõ#ÑJ^>;#ÐÈ]³,wÁú‘—Žˆ*ÏL&MyƒÙ‹7]µ' ¸,„-0Ë;´’po0ã©xÉc0…„/ ­* ­Daø34_ÚÅö’gŽ„ãÙxÉcP…„/ ­* Pa€ h>ÑÏ#ÀV¯Âah74­ £Ny &Œ |k@£"Œ§sÐR Â¨0¨0@…@… Pꇷáå9h ¾0´‹/ì.Ï\ ç¼ÁŒ÷ê½àÆ2•¡Þ`F<š/äˆH@+ üõOkbæ·ºÒeÞ¾-¾þ T ÂЫà‹GÐtØÂ|ah¹/ì”g¾„3ïô$è76²—6j*Œ4_Ë ÁÓ9h-áæ‘à¥ÁD¾0´¨0@…* * PaPa€ ˆ¼Á Íga:øÂÐj_Øâ šT ß™À™µþT ß`€vò…½´ž0ˆxÂ$'ì¢Âx8-RqD$ •„úâ/… (’ð… •@…* PaÍóH@óað… |ayæJ8F«€—<SHøÂÐJ Â¨0¨0@…@…* * PaPa€ € TT Â Â¨0¨0@…@…* * PaPa€ TT Â Â€îFilw&°º æ¦u᥾0´¨0@…* * PaPa€ € TT Â Â¨0¨0@…@…* * PaPa€ € TT Â¨0¨0@…@…* * PaPa€ »‘Éô\6t1Ós™êf¨D˜×ÒEÇOÏìÞwh ?SèB ž-U*ՕˆÚT…sY*Ñ—Ïξ<1³è>Ò)eõò¡l¦MU˜’Ëöç²ý8U žÎT Â Â€^@ ÚƘªjÕjµÓ+’H$E¦”öN•»ØD½y6Åk îªUµXª -Y´ØxQ‡B;ôo¡ŸšϤ“‰„Ò#UîbõäÙ$‚µ† wªªåó3ë7\Ș^.—;½:ýýÙþþÇ^P¹ªÜÅ&êͳ)Rk¨pW1===<²”1½Tꆬªj:^<]8=<<Ô UîbõæÙ©u8ðt®Ñ4}jª022V­ªÝ`Y45UÐ4½GªÜÅ&êͳɯ5|á®B×õR©T­Vu]gŒù¦Ïår…B¿¦å0ƪÕj©TÒu]–¥N©r3-­‰|ËïºI°¾‘ŸMÛšvk½"µ†/ÜëXÛ±³M£Ê=Û* …BG§POOP¨pOtEŽxÙÒøŠ±àµK§WÙ«j"ÙZÓž&âT­#°«måo¼ 4 D$ÚÁ{Ï|>ŸËåòùüàà ñ×ØÑøi¶9cÙš'cÌ5WÌe3¥ë.¡+ÒU6·ýS<[ÛrËMd¦4Óó«f]Ùä¢:“qÌn³­Ñ¬+#iöÔ¾0ð¯ÁÁA[K —O×W™ŸØ–­ó­5‘Y³l¾Ukaëñ-‰5H±£jöð…AŒ}UF[{¥´]<šP‹6±T¸ÝÃn蜽îšmi¦¦¦|ï ]s¿S¯HgU9h1ši"³ŽCCC"µhùÙ4Ê<88h=;®gŠ Ф 4-"\…)U”„®«L×u]‡PÆÎt¶íÔÔÔÐеa…H)˜C ”Ϊ9[N{VyhhH<[ñÂ4ÁD¶’8ËæZ5ßúÆz6cjrÑ6{¯Z뺮몢$Hð‰&ÂøÂ²Lc”1J@,PBhXW¶099iv­ÉÉIW“ƶÕu/ç.œRKíÚ¿Ê“““ÃÃÃâÙ .7ÇD®>¿jÖ•­:›fy&''9fçÛ¹ñ6´ÖL'„0Y#ŠaTX¢!:cº1Ɉ#(µÑ^]lË^+]ÓønåïÅ­ë”*ÊVd¹9&rQÐbÍ/*¿´¶FÛ‚ÕšjŒé 3Þ!° SB%IÒuF(aá˜4˜u­mª9k×ÅUîbõæÙt¯5#ºÎ$I¢¤) *Q¦ëLg!‰˜"”(²ô›#‡V­^£ªíø&þÙ³gƒ>©H$”#G)²D©Kè¬ý«Ü"4ÑÈȈëY딢F^àøkÍÓ©Ô´ˆ„$Â%º†§sq$2™ôž=ÏŽ-ʤ3ª¦uz…Ež™™Ù»g׺µ+ #.Ïu»®Ê1›(­r{_¬Cb;¨¨M«µ$Ƙ$…™ñ2ÔÓ9‰2¦Æ(œáØÎ÷ÐÐàÐTá¡ÿïyçoY»v}§×èÅ÷ïÝûüò¥‹††]çfí¾*w±‰zólòkÍ#„É¡|aZ­–&ÏßA×Ù™3«×nÒª%Më¹ÏÒ4 ]× …é'Nyzz¦Ó«30]ºdÑòåKs¹I’z¡Ê]l¢Þ<›üZK’"'ÒGs`llT ¢ÅãkûÂŒ1*IŒéŒé c$bƒJ478H&FÇFŠÅb§W'“Éd³ý™LšRêÕlº¬Ê]l¢Þ<›>µ¦ŒC ø€.ôxaBA<"^!¦´¿/Ó—IwÁãfJ‰Hüª›ªÜÅ&êͳɯ5c„1½Iã…)%•ñÂð„›$Æ]q¹c½Wå.6QožM^­™Î‘¨¢²a}a]'” ‘#2Ð4_˜B©dŒQÆ»sPaÆhsÞ3î0jᆀé2ÑÃ_BÄ…©,˺®ÂæTB(•u]—e™6gN5J)%Lg„à­ „F k’/Læg¶$”àéÔ4Wb¹Ü `IDAT˜±¦T£”Ê:Ó cx::Ó) ‘óDO’¨Ç¤¢Ð›Î0#„I¡æ‘£Â”bja° q¸¸°Ó@ T Â ÂÐ[(¡÷dŒišV©tÆç6’É„àË…U¯î®Z|¦Í¡ë›\$ /¤ «ªZ*©#c+—w„™òùɳgŽeÒŠ¢(ÝT¯î®ZL¦Í¡š\$ /ðwç!ª¦åós›Î½„1]U;ã[¹Š"BìÛ98دÈr×Ô«»«‡)@“$Ølrº¦vûÇÚY"T ×ðÂ|wŽ2]˜]´Z×µr¹ÒA—åt*52ºrêìÑááÁ®©WwW-”)’|S€æºÉU¦§OüüçÓûö1Uͬ\¹ìꫳ+W¶}Ã#ét*tà ütNÓô|¾0:º¸ã\ªªªŽŽ-Êç šÛ•¹sëÕÝU n c ÐÂ5¹êÜÜ/o»íÛçœsðk_cGŽHãããÿò/ßß¶íÇï~÷ôÑ£íÞðªjè†âÌz©\®V«º®3±÷˜s¹œ¹\(Ze&ÆXµª–ÊeÆtçå'h½r¹\Tui<«È«f[ßY‹ÐŒ"¦Íêkµ&Ç„§:˜{ùåÞò–ôÙ³¯½í¶ìêÕæs® ßñŽÝý×ßÕ«^ûï,Ù¶­«¾áÅþÃÖÍ"ïu lç¨ùgí¾ûî#„|ðƒ4Ÿ;3ƾùÍo*ŠòÁ~'¨s䘉±¦ª?~×»2/½tÑG¯—I¹rìa”hD׈ªi›ÞøFúÿøÓ·¿ý>š]¾\Äè,Íi¥³›Çé‚YWZÓ´?®æ¬ì¸~%Xg2cÙyÆ]]ï›o¾ùæ›o¾÷Þ{Í•wß}÷-·Üò‰O|bffêÖeìý»¿+?þøš+/)J3Kßõži2S)ì¯æLŒZòû¿_J¥]xáÀä䓟ù GÓ µ5è¬žÕ 3lÉòù¼±Ëåòóär9[JcÙ™¦Aâ«—W¥|Wͥͫf®ñ­ '™ÑO¬+óù÷9BÈM7ÝÔß߉)@3ÝaªªîÿÖ·†e)1TªŽg–¯ÚôáOkå—Î^Ó'6nLo¹ ìèÈÀÀÉý×¹‰ ×LŒ¦eÕkó&3°í+¸2¦†{D"ŸÏZÚl)Í¿]Ó ùu±Ù§M°Iðtø&̇1vÇwLNN>ðÀ>ùÉ[Ž;öõ¯ß;::²cÇŽ¯|å+ÕjÒÖMÌ=[|î¹%i&ùuñ‘=‘Ê+oüÒe·|czüÄðÆó÷>ðÝ}ŸûÀØé¢V˜ÉèdüñÇ×½éMáZ£UXÌeñ•ñ¡4Y†lÕ *JÇÕ‚ÓëÒ`•UU½ï¾¿ü£?üØÞ½{~ôÃ߸aÝ\x×Ý÷@‚»P…OžL1¦¤¥å±¾òÉ'¿üû“¯ÿøgÓ¹áçöய¼}ËXµ\&•~’š&¥'Zå0µ£ :áCCCSSS¶m뇆†Ì¬Ì;ã§ußo6w¿¹pMf])RÓ6¯ÚÔÔÔàà õ,¸žg¶¾É8ûè:¹ã«w~é‹_8sæåÅ‹—|òS·ŠŒñ@D¢ Ã>‰d9IÕˆ®U#SêÈ¥×¾ÙØ²îâmûÖoaŧ“%"Ÿ$‰i"+ŠW†œqZ ÑÂÖêFˆ4ªF^ë‡ò Y»®SµÉ:×*tn½œ%¶‚Œ1EI|üo¾öw_ÿGÿ„$ÉPØ®$³bE¢¯¯\$Å)rxbäÊÛZ¹ùÒ—~yÿÓKÿðÈëï~èôà¥Õ4©V %${î¹t7W¦æ±i‘IÇû“““ÖºMNN{™ë'''‡‡‡]½$ë¾æŽÃÃÓ““® Mvm§yrrÒµÀ®5u]Ù>U³&3Šj÷‚¶5Ö•^¾°™¹MÓúû³oyËÛ*•Š®ëAK:‚T&3pÕUåýèÌ1²ì÷?¸äüKOþâþSÿøŸûsÕýßV7½ýÎÍïýÒ®ÿC¥@K—]r‰—’Ún:ÕÓ7¥xV-Paq¼ú˜¹ÞšÀ–ع¯s/j~¥Äk*²ÐÚªqNÈ."u÷B×õR©©ê∄¢(K®¿þä\šPÜó§JñìäSÿkp¬Jt2ó³»öOŒŸúÉ¿—^$²F]}2•òÊÐëÚo^›ù>„ˆÓåSOZ ¥tÙ•WNô£Ê=÷äO²}öW™eDÍ“D–PJNÿúïfv“¾YÒÍ5+ßû^I’‚úF!|ˆ&;@aTX–¤#G­^½FUÕ:Ù E>rä ì};´^Ý]µÀ¦H(|S€v J¤Rk?þñ#„¤þâ/òÕ™IRH"©JÒ2JHbÇŽå_ûZ_WV?° S*õõ÷í}áÙ±±EétºSæLQyfvvÏ Ï®[»‚R©kêEQd©[«Æ33S€¦ôŸÍf7Ü|óÑW½*÷7“ýå/µ³g!J_Ÿ¼íâÔ»Þµì oÈf³¤ãþ‰„úòf~á™Ù¹#GŽž:5qþ­]·¾#ÚÄáC÷îyvéÒ±µkWeûûº¦^Ý]µ8Lš€¦é§ÆOÿæ7'_uÕë]øu]/‹“““³DU3‹ õ÷÷Ëí=[´¢HssÅG~hÝÚK—,–åZ<<º&Œ ëº^(Ìœ8yj|üLaº3^êÏ d—,[¾li.—õ -ub½º»jq˜4‡¹ð7~ù©ÂÆ}A±Xš™™-;ãùu&“Îfû3™4ÿÛPW¯î®ZL¦M G.ü_þë°Ù±;et&¥D¼gvÖœ0]\µXMâ¦.ü_þC~ñÈÒ軳Íwk½º»j  [__&“Iwý›4 ^þ1^€ +Á € TT Â Â€ndn®€–IðλŠÅ"ÕuýÌø>XšL±XZµv«T*ÍÂÐ|_8“I‹3ÒÌLÐ4,Í_b†#*dvvZJ$3333Å2¾±KðλJ¥R__æ‚Í[uUM¦³tròeF¤üäé©©—5U_½j),1Q,–^>3%+ÒÐÐâá±e©dúÿmzÿ=¹mIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/manual-source/_images/defaultstyles.png0000664000175000017500000007246314126044351022652 0ustar00jssjss‰PNG  IHDRμØnÒ-sRGB®Îé pHYsÄÄ•+tIMEÚqántEXtCommentCreated with GIMPW IDATxÚì]g€ÜÄÙ~GeÛm»êr¶Ïö{Álc:I1 „N $p(ÁJB3 ئ…N€ä ð™NÂGMÆbv ؾ³ÏƸ—+»w·MÒÌ÷C·:í®¤Õjµ{»wó°¬çF£i4óì3¯fÞA]]!‰Ç»\.„B0!ŠTüœ”P©ƒJôÊ borR²W^êµKÊ·RB2ÆbQAÂÞÉI„T¸\ ˉ‰¨„EȳȦrÉårÈìµ" w„©Ë@fž„uÂB™Ad*+d¦dâBLÞ9²ÌâÈB‹#Æ]Ë$#s'“ìù“T‘ŽXgsZŠ˜»ïœxŒäR­†II÷Nro+öÐ8B,Ã9.^{b1ÎÁñ Ë ñî~³å bý§‡bšmí»\¢Ë¶Ùo%%…nòÔõ¶F”µ½"í&LLÕ1±|P‡]óæYÇ _råÕÍ)CäX×’$`,òN¯ƒ—Ë% 1Ó ÏÊF!A:;Ûã‰8BH‘‰¹u’c¿±ª94*¯ØM’˜ëéľ’LJ “"‚ôi™ìσèÉ•¬Ÿœ2̼º´”vð¬¯ß„°#½™|µ5ÔÙ–šIÕˆQi™SÎúĈ¾FŽ’éËàt ‹jÔX0ì§1ûöîþòKƒL¦9ư³„˜}ûölør½cŒ9š\=k‚¾¦Ž9Š`lTõs ±é°/¾Ø±sg7 Ä`‚ÄB/~ ¡QW,:ÎgÙÖÖ–uk?ùòËuuuÇ{ü°áõÕU5á®Ðž]»¾üòóU«>:ØÖ6sæ¬ ¦&iÀsK¡õq*Ûš´[æÅ¶D—õPnfѾþjh·“„Ûw€>w Qš¦,®rµÇîbmÌIr9˜N•ƒ±ÎŠÍÆ*ÏnÞ¼qígk¾ürc]ÝcŽûÆðá#ª«ªÃáÐîÝ»6|¹>ÙOÓ&NÓ}uŠ˜-[6%3©;æ¸o V_U]‡öìÞµá U&¦é ËBLë––µkû26¬¾ºº:ïÙ¥¾’Y'LÍËúfŠg5é«:ïÙJ_ã'=!B8ƒb§57s»vIÄ"°„àí··üÜÐ0õò_mðƒÐÑÞ¾fõÇÍÍ›OøÖ·g:G9TSUSSU3mÚ!›·´¼öêK‚ UÆÕ‚íeÛ[­‘t1ØÌYÌË[0˜–`Špsä\Í–Ž²“ZÞ/Ærëa$W³›d¡ÈSBmmVÿçßÍÍ›O8áÛ‡:WŽßµ{wýðá5Õ5Ó§²yKË«¯¼(÷Óúú™y"Ä´·T2™}è\åòjª«kª«§M›¾eóæW_•3©®^O’¹u&ím«W+™¨£º¦ªzÚ´é[¶´¼šdŒáÃê-ކ‰žÕ£/¢ÜÑæ-›{éË_5lØ0ƒ‹a ;¦‘çÇîÞÍËÉ #Àb1é·wîäù±·Ü|¼ÛÍê]ª(âMÍ_nذé´ÓN›9k6ÆRæ§qlãÏýië–ÖÍ-›¢ÑˆÞõ¸<—ǯ|²V“Ëí“?æåˆÓåuº¼òJ kOp¸*ôžœÃYápzì1¢ð7ïpeDºxÞ¥Öˆ&_B©—d}YAÒ‚Ù’¦þmöu˜þû.S/Æro¦w`æv•ææòDÒR“BOí"‚ nܸņ ›N;ýôY³ÅXzçw?⨉“¦~ûÄëׯ—°4vlã¹½ýtc$ÉÌEÅ›z3™9ëPŒÅÌÎ>¶ql_&ÑHæTQ”6mú2™‰Š1$U&*ƈD#³Ò¦Ó×Ö­[1–Ô÷µuëÖÆ±c|îOZ·´nÞ¼)‹\‰‘ª=ºžçc{öúå‡I ƒÈ"ãɧ:öïvôQßüfþoêh;øÙ§ŸM?¾±q<Ö·eTWUÏŸ?ýç_64Œm=†¬'Ìb‘0Èl‹„õœËí€X´+G£-˜ãÙ¾ t¨SXÛ ‰¨Ì¶B"*g(3¯ˆé¨P“ö•ÂÍHN`B0&&„ LtŸ$2øG.%eú.“Òêµ ÈÙfP#à ÚHç2Ò‹Ë:g©þ'Z£Œô«OO¨y­½:ޤžDôo[ɨ mˆd\>êÍÄÜ (¦½}ßgŸ~6aÂø¦d?ݳwÏìY3o¹ù¦G}üúnzå• ªºfþü#ä~:fl£:s„˜Ž¶ýr&ã1–ôÊ«ª®V2=flZ&Ê•46Žëkg>üè£#æÏ×dŒÑ£5,¿v˜RèkÛW_Íœ5çæÅ7\yÅår‚»–Þ½tÙÝ_~¾vèÐ!}ôÕ ûΉ3 ƒ††J‡cÌþýLÜ|ïµîÝCþøtÀé¬\¼˜eY#y(Ú·oïw,ô«^Æœ¹óÖ¯ÿog(4!’E! X$¬f[µÈEÃ2ÏÊÂ6  YÛʈG»Àéöi†Õ<ëtyã±nuÙj ŽÇº•?{…-@"Ö#×£ÃY‘vÙê˜D<’”½u¤ÜìLOKHѶ*FŽžw€ ÄŽw€(Ä€ãJÊ̘ddq Ë’&_ecª•—yÌ%6”Ë›¬œ' Å•Å,‹²3¨ù ´…Bûöí]pÒIb²Ÿžuö™g}&tõôœþ…û쯮®NöÓu¡ ˆ¤6A„½™È3š¶oÿº¡a”º%FÉ!†I¡„˜p(´oßÞjÆ pÓM¿yìñ'®¼âòo¼.“1Pc˜œ ™­VRèkĈú›nºþ¶%¿Å„\±è²eËîYºìžÛ—ÜR[W#aiÎ…¾˜4ª%iT«É¶#G¸y~l{;#Iqà{RE =ÿbÅa‡ñ'-ˆ74Ä $BL8r:@0íW®§§§¢"…Œ†q¹œ‚E‘ay3©Ì³±hX³.·_aÛd¤O‘·.·ÏéöÅUj7ñX—Óå“É4“gåHÙÔ °m<ÖãL²­ž%ñäpzNO"‘yV¦]%Rñ™Ÿ™ Ö¶¼ÃÅ;\½:7£‰¥q.Ç;E!.ÿ™Ê¹êÞŽ””Æ}7'Aj¢¥ÛøN,¯ós™E,dz2„é !¹±< õöS’ì§rï½÷þƒ>|衳++{»0Ã*ýT`&•¯CN§Ób,}ýõŽÃ;âÆ¯[´èRùøòå÷._~ߺu«‡°HÕÙUW‚P(r:þ`cI¾ˆåËï}ìñ'¾õ­oÜwÿÞŠE—_j̶ð¬}‘Ëq1!øöÛ·rå+W®ZrÛÍ]t~²Z’w$‰ Ò.Ëä0…Éêëáüó=^/Äâ‚ÇÕû  öŒ3øŠ ðÇpŸQ[£g`Œ‰„ÏçcF=¢§'²à»ßë×\®Ëc0E,ˆ‚ÓáÈ6ê&æÇè±h€(R7ÏŽ*3l ™v®ŠD¬G¹JÀ8w™a›ÖaÒ7iCpË%ÆÌ½ôýºòNQˆ) «æÙ´H•m!ɹ<”ƒiaÉ«X‹ËHŽŠdeH©ýTÅ’%wøýþ_]{•ºÿƒAQÄ‚ °Î¾ñ–”LÁxäˆúoøõwÜ „\~ù%Ëï¾oùòûn»íæ!uµrVÉLN§CûJ$ Ëï¾oùÝ÷ÝvëÍ /ºàéÍð—d2†Â]¶ðl}õ²ßå—]üÁÊU+W®úÖ7¿èÂóS«% W‹ÓÁk^ §u]½« X®º:.QˆKdo'[zØ61°‹uxx˜¾žC2zaÆçó B"‹ñ<¯s»œoüýeÏc)Eê&¢Çãq:ɉ{Èü´ãeŠéÖÔ[2þV4¬ZÞæÔ-R­ D¶jyk†p ´­ñÝBL6,$å­,~‘>Ϫlµ&ÁLr²ÕM¦EiS lµÈ²­–躺зÕêÍ’È0œMÖ+.“aQº»U¶év‚¾´i¶ZÒ7QnŒ 3ÄMËööÓX,Æó}Ä×ÖÖ¾ÿ‡üý¸qꮚH½ý´Ï^MؾΗ;ûe—þœrÇoïZùÁª>øðÖ[_xÁO±„32ÁZ™ÄxÎñõŽËï¾ïÖßôžxÙ%?'˜üöwKÏ8íûC† QÃátÊcv­%ÜÄò¯¨&}Ý}ïïW~ðá7¿qü;ïþó÷¿ø—]œI_„HšÃÓÌÆƒ:áîúzoum@úºkçúö~‡whí|L ž·Ó`e©¬ªÂõDºý¾*t8ø4“‚ ˆa}>?ƒ¬2vdc[¢~]fȳa+›PÊËÅz iÉ5Rܽ֨ž´ŠIA‘·jµ›fÃ5æ\!ÍNø¤ÏÎ ® ÄT‰5*»ÏV‹å?”c=Â[(ékÝ 1­{ÍjجžlôÎÎc>!•UÕ£HO·ÏP¢++ÿxçõªª*uWUú)Ë0XeN%ÐÛÙ#=]J&—^rQGGÇ#þáê«®øÙç)éû:;è߱*™ôôtû}õÃ?]ýá!uʉ—^rÑé§R[[ƒ±$ˆ Mưƒgµéëžû¸çÞn¹ù† öÓ‡~ì·w.#_véÏ@z/1 ‘$ý×b„èÍRßӵ닶M‰axEu8šXÑüR¹xúùNž€Û©×E `"•#GŽjÝÚ:}ÚtãûÚ½wW]íPŸßOúž«æû.Ob‘ÎŒøÄ"!V‹2rVˆîB’Ü.Ř›FR²ìU4/ÉÌ@àpzeÚU ¸JX]t/÷²€¬…“ÖƒHÚ5(V%Re^ ÊÑ>³Išz…IWj©ÔCRç Øf{-æblb+cç8æ'ÖÊ#¦¢¬8Ù"˜`¹ŸnÙºeúôJ‚H$rÆY?úÛk/¨ }»÷쬫êø ÁêÞA°”̤uúôC”ô×]wõ÷¾÷)S&«_Œ÷fâ÷"©íTcc5µÕioÔ•˜Ý{’ŒÑÇ³ÄÆó4úÚ±cç=÷>póâëÏ?ÿ\ K_|!&äÎ¥÷œzêÉC†ÔЗdúþк¤îD÷'»?ù|ß‚g[þ´jç‡#*†U9†@$$lØ´°äóúŸäúõŸwtv`}D£Ñukÿ;uÚôªÊ ÁBa™dSy–È—'Á³Š­6.w@m®U^£Éô7cÑ0$g&(•uÉ„«p®òítùŒg?&bÝàpy“<Û”´òÜÛ =n5z6}z6¼CÍ¿½l+[uÓ”¯líMþÙ›3Ï»ädŸ‘šû¤U0˜òJR>`ë'-s«snÍܵƱ´ÛÌ­+’üÆTIG»ºwOš4Q³³WVU¦9T Xò¥\‰>cÄ"É+©4ZÂÏä•új¯¯þñ¿ß;ÿ§?V®áâŸÿìßý³¶¶&®[»~ê´é•2}é<$Ib\M7(Eÿ½¹íkß»azÍ!×þËï>ºßé_uî»>>À "Jˆaˆ !'GôD ð˜0kÖügÝÚ5G}”ÏçÓxm­Y½z⤓&Oqòª©:£T3îTMA³@Æ/Í|f\”ͺ™DDvÊÆ”÷¹²­À˜`"O°Íj«%Yï ©çžÚj‘ÎÔ¦ì¶Z*&ÙmµÈ¤­6=-)VcÍû@(‹Õ›ô1·Ú®«gÁPMÔË´Eè·b$ Ëýô˜cŽòú4Þ|Äc±Õ«ÿ3qÒŒI“§º¼Jöš ÃJéÍä裼~Lb±ØšÞL¦¸œ\ßk¥¤1,ÆÐ—‰Ö•ÄâÑ>Æp°ÚTk‡KØTú:Ò§}1}ôåàQïÅd¼sºýœvÝ'M”Õ®ªÖŽÖ˜ûÅ;¿ÜÝÿ»c—p$€1Ž•'\ê¾JÂXb9nÆŒY üùÆ[Ó™:jÔ(§Ã)Ûã‰ø¾}û¾øâËyómjjr;yIr{W•ÑfL!šQÙ³ÐI”4)È:W{q*Ñd²”nc’µr"z]—äN»)sd[­l¢MN­Eæs0gÇ.ŒMÖÒüb墲ÎE YÍ º\‘òÓ¥Ûˆ²\%1²b"qµ‡îÙ~Þ‘‰ˆ¦5è^’çf¹Ý… ÄȽ±@p:^¦r à³U ^’Ó XNh͇B®órÚÜÒÚ±éÉ‹©Iÿ´=®¸-eþ•;}ZÝW{WmP¯ªDæs1qÑá\}9jve1 ÝèÔTRM¯?YVˆH±Ö5ó!ábÐ+XY Gl¸Žb9u#¹KÜr§Z#ÛAŽ„›‡¼%F£þ W¥!óä\ÈyëY´›'óšà_­“ô6ë?‚²#îÿf†Ýye× KIVj‰ù^]’„ké²õýä˜o!97G©«%SóaÞœù7'¶Ðµ\#[[Y¡L6ïZf5S+ƒñb1¬¶‚<ÌýL²¤¿Tm!×^‘K4I®pœ[8ڵ¼yñonúÔæ%©ý¨…ó¸=Û^z-ÃR’Íb@ ýÔ m!\;žfßdWbI?# “^¶ f*©kÞR€,<¬Œg2ß¶s˜à5`_ØìwŒØÕш}$˜åˆåuÄÄ>:±t³¥D²ý®jm'\;Ì Ê; o/ÙÊÐ:n¤DSŽåb)H{K…¬Þ§F(׬µiÔ¯­°'{û9ÉÇŃ…Y¹åİ¥O²%Eµú„ &ßöÛdO°Ÿsm ÝÂ3¯Þ¸ÑÜR6“•d°ÙN`—)8O÷96ÓkÖ*ÉÐ7Û¤Z¢L^UT‘kçæO»y3¯Eò5– Y·?(ñ–_"+<±Z¹¤<ìâ¥Î°å@²%Kµ: Ö/,q®Ý´ ÆoÇÌÑœ]ä›Ó8­$ön´‹–ú‹XÁÚdŠBÑk2l¹Ø l£Ú½û|µkŸ¼Ó*EIALÄF>|èëÙHƒ…˜e€ÊF'Û¼xŽX­lûèÕæ*à26_ªÝ·ÿà®<Ϲù~‘&¥ºÉf¯9o3JøûÚ ©«ÓË‘"ŠbBNå—¬DÎëüÂrkWGú­ÆJŠayžç8YÕ"9S펽9Ž›5m*íd¥‰Ï>oÞ¾kߺÚ4–”[¥ ==‘ ¯¿²ªŠÖ…ytw…ÃávÇÍó|1¨–aùJ­÷’EUÐ×ÖÑ¥ùû/Šb{GÇÈ‘c!‚-Y[ꀺvù¥!E¾îò#ž §¢bÇ×­U•AŽË™9-Øj Çñ´;•,8–×X߀Âá°Ï„^žÍËV0˜¹˜ØÎÄî û“ÛHÿ_Baˆ‹§Çë †ÃáªÜ…L)܃Û4Ia±éD©££3XY)Ê»(“¬Æ>ƒO–Ã)I˧Ör¹#K7m6y!k±PçœcÙµÅxeeuggHʶE®-ªÖˆ1£‘N»r³1+J¸€±‹FEQHy3nÑbN= •i>RF·eWÖ¤Ì{•( ÑXc̲l¿Qm4Òi#Û*YÉYäª3Wd/%e;<ʹO Aѹʌ^È ¿ÿÒ—Zù {ÙVvÓt!JH„€ìéȆ„J¸šJ˜ÞúµdRn•R¢-ÌþÕb…`[ʤù?mR0·€9°))×~¢/© 5TÐËqW¢=!€¾¥×òRµ¹Öém›)uéó3¤ÖÌxR¬ÒÔôêöìa[£•f¢=%RÕdpµ bùv¸‚µ¿‚³-•º¹õUB5Gñ s®Â¼ŠøUˆXIäÍä‰É7ÉHwE0ÚÓ©Ä+ª¤¢IéµtTm™±­"o)íæ&x5iÑ… ö³-’B‹ž@fXIF ™au¤Éd™§~¨BéU‡j•~g{_3϶iÖ€¬§(s¨¼- ¦tl¢ÆÔæÚhO§Rê°v6Í€ùp¥µsIÎT]ŠÞ‰¢ÔL£Dªê…)JˆŽË”­Xì¡+ÿ|NQÌ\^1ö¥ ªÖŽÆFQrŒ¡iª%I?M¤ø4€+ÜD¼fX32¢bFbîtÍS"*BDŸmsñ–EÙéÝÕœÛ5C«‚¢_à1°žÜå­rŠÞ¹¦VXë&§°OÕR h±E{Kÿ ÒÓ©pŸZ`*ñJ¤^Ê4>ÕÌD/ŸžžNsÛÓæA©–¢àƒ] ë4j&Þd²¬1j2U"{’aõÓíéî4|æ´%Pª¥  È‰‹ïÙ–‚R-…ҽ贬BCÏ$1ñÒ_/Maw£äT›ë¤ÚÌÓéįÌNGn/¤D\PëA^tHlȃ‚R­.(W|ÀIRÏ0E·”‘mãМI’ò連ê…Öí)§œñö;ïÊá‡~ìê«=uÚ,åè[o¿sÊ)gXS»ò'Mÿª#•ú,S»¨ Oþ&¶ $‡í Òœ \ïšX©ÁP‘´3ö>M{Tí]wÝñ“ŸüìÇ÷ÖÛï¾ÿ¯÷Ÿ}ö/Ê!QßtËŸÿü”žÕôH›æ²¶hžÜã7­e-/€GåY7%–Å€4 Xl'N8âˆù×]wÓÚuë^yù–e¿}â·äCxâ©#ÕfbÈБ“'O~áùgiý–*è[, Š¢vœ‚Pm{Û^úLÊ ¶­]»6BˆB¿éwY€ÏçŸ5kfuuI¼–§îf( ½½cÍš5C‡;v ­ Šƒp8¼fÍš¹sçTVVRª¥è´´´466Ž3’VÅÀB}E…·¥eóܹsúýRè†7À²ÌСu´(†­c˜,+Ä7oÞrõÕ¿^¿þsJµ…EE…×í® õ@1ðàvWx½>ƒ{÷îûÞɧ?ú؇Ï?vÿþ”jéÌY ›‰Dοàç‘H¤ººªººêg^‰F FµH¥\)tò,…$é·¿½ KÂôiSî¿ÿ¾éÓ¦$â±»î\†1¶«5µ–ŠªMsM«é£V/1E®Xñü ãÆ5-]¶ü¬3O¿óÎ¥MM|áù Q—ÆÁ&©ÚvžMsG«x¡Í\•«çÇ–¢ïégTúŠÑüDQ!kJžç9Ž•'À.}ÓAϪ>€sÎùá´©“!6cÆÔ³ÎþÁŠÿ}öý•œòý“N§­j‘j­áìs~üÖ[ïdMÇÍ/À¥VŠb¢­½cýú/Â]Ýÿoô ÄçõrÈÔªJ1¥ ˆÑhܬ­ª d­ó®®ÎpçA·ÛÉó\ò1€Çã=?BóçÏ“Ä8ˆbâÇëp8X–1àY{T­5œvê)zúÉ^M¾â…³ÎêÝÛæßÿþ¸¾~ø¨Q£`ïÞ½›š›…m&jŠV9žR-…]èè ­]·~è¡MMãhmdE(Z»výìYÓƒÁ”>+ŠRg¨kô˜‰„àxï¼)áãŽ;F Ý0ztƒI‚:Rm©Â.´¶~ÕÔØ4|ø0·ÛCk#ûP2ñz½­[¿ž=+…jÃ]]`-!8‹›ÉGE—ËéÔ„»ÚÔÙ®|Lœ˜ÐŠŒ¨ÞJkµ˜™7]”^)lî7tèãÙ— ¼^ßС¸³3¥J’ê j˜hF‡ª UU5»wn ø},ËÚ˜O ¢$f (®i3åªÚ\–˜rn¨¬/\ž…ÈÜwx©žÍM¹=>_Ê/Æ$‹ ‚€1&¹@„h,†1±7ŸRüE/•QIªóÙL¿´šžj)(((ÊcðD«€"eêØ¥Ä„:vÉñJ¤’R>¤$Ãi 2/ªd£³ ¿ß/»èìwÄã‰}ûöµ´4ïß "BÓ7¸GˆñxÜuuµµuuM.—‹R-Eòlæ…5 {š<%-LQ<üÈcpÉÅ •™ª„‡z”åØK.^h&½ §šs½-ä“OJؾý«/>ÿ¼­½3KH”ù¸zz¢===ìGM™<™R-EÉÁ€=kþ”þRµËgþ ‡¯¾ú׈'®¼òr9rùò{oþÍmðãýÐçóæüè¡P¨o!ôùúµ±¸4løÈC=ŒãxBÆc,I’ŽF£_|ñy,Úܲaê”)v-ü±Hµ˜MÛ:¾ÞÞ¿o¤§»~ähJ4ý Žc†ú&Ž)’ ä½ÑR“2•´Å¯ø—]vÙC=tý ‹GŽqúé§>÷Ü ™g-Zdgn y’¬BÙyæ#I8ÜÕsâwNfVvw€’Ã.—kÆŒ™ï¼ónÃÎjí´M[;ºhÖ´IÿÜ¿}ÛŽæ³N?™6Óþ…$IÛ¾Þ½i[‡×QŒâ J‚ԀРw/_ÚÑÑñÖ[o^û«ëwìØyÿאַ®Z°`Á²¥wbœ}b¿ÁŠÕœ ™ù(ÓËr5Dd&Éår'º·ãv»EÛ»Ý"Õ~½/|È” qÇ’ ᮈ@iÿ‚A0røÐu_4Oip³\“lh^—½NëA’‰„?<þÈW\¹iÓÆ×_½©qÌäÉSî½÷^3\ýÎ–Ö ÐÝÑsÑ…×2LnÓu;lô{k¾¢t™'x+JØölÓX2Ô±Ëü_='AŸRBÿÿl3°lùò;n_rð຺!7ÜxÃäð†Ê–×Yvå£FTËqv½ÄR.ŒXÏQÂX”$y¢ñ¶ÖÍGœv$|øÊ*I’pîw.JmâùÚ0²=OB4ˆÑ §Å˜?…¢ÈªÏí⯾æÚ÷Þ{ïøãw9ÙçÎXæ*-r¨PI’DQ앵ʓ  u¾÷·8ž€I3æŒ7ÑÕŠâwŽœo¬êóJ#Ǩ#¿sä„7V5Ëß´Cd<dø(I2’d%¶—2qÉh&Ðé´„àÊ ïÌ3N—$l¦ÒJöV4›·iU›v.1È3'ªÍ©cK¢(bŒ é£Zä«­›®ñOª¯Ç„<½võˆ1MfrûΑþö¯/Õï;E¨#•°(Š”[3žHÉm_Tú”ô]¶ ³­ï•ÌJcvûöm#G6˜ï›<Ïoß¾eØB䓡ެS-–$I’”¥Ê}ñªí"!’9ËÀ+ÿX¯¤”ê%23žBýDh%X€Óɉ‚Èó<­ “ÑáàR™ UTxZš7TW׸ÝnQÌÞ9ŽëîîniÞÐ8¶AÙÔÖ®|²ÂØ•x 9i(,Š ÙöékIJ¡ÚÅ×]^Ý4 ö7~ÛïÔ7 H™á3¾=33ÒLíVU‹i%X@mMm(ÜÆóu,ÇçêÌðI]"‰B8ÜVW[“"EY6 Týÿx÷Íñ¦Œ=&kVÍÍ›6·l¨>4 (*Ò®|”ªU ²®U jɉ1®lœ¸µ²jb#õ!9|ÎI‡=÷ú9朓SPÓþ¡kÿ¬Àãq3 ´· ÂÖœ¤*`&ð;ŽÚšêh4–5½Ûíòù|n·+m$aW>Y¯¶| òd/Òk¬UFi¶Zµ×`F×Ó/­’)õé—VÉÉÔ1?=íHå\:-Ìà‰ÐJ èG „<·Ûí239L’…ËÇø,ƒ£¥¦j±(J¸WÔöMöR[ qŠà%zfÖ'V¼/ŠÒ+Þ‡TS¬#'PRÒ6­÷Dh%P”áÚbò¶+ T[(U«ð¤ùûâX$,á^a›dÚ[-1m@ È÷A²LBX†¾Õ¡ 0Eµ{:ØEµ* jUÕŽâßÛÞãõ8+ÜŽý»¿ŽÆþÝS EÚk;ÖØë÷¸ ‚Ôs{v@\ªÔV(`Lº#цa~€­ Š|¨¶àó+@&7V!Û÷†¼ºñ“ga,Éb–©aX–ëæÜòÔç¡O­(Êt8Ž;ÐÞMŸqÀ2¨a˜òت»öj>JBz#•@ß!B€Ns¢x ¤·y[?¤ü‰’‘¹æiQÕ2Mi¬žÒXÝÚ SœsçΡ•‚‚¢|(Ø…˜Ì“¯Ib嫞þÓ_è“£  (#ïÈ[ªµèD1ÿøÇªÍ[vVN#À¬DX8‰°©¬¬>éÌÓé3¦  (UkLÄv•“¯!ÏþÏï¯û®8a»0a»8a»0q»Ï¹Bslâ¦è„æØ„æØÊÀÔ<©Ö¼¿%ꙉ‚‚¢U­›¤j,ËóŽð ¸:‚‡…˜†ƒœËåéÂÁƒbÝq¤“qÓUÅúÁÖyF„VÚÚ;Ö¯ÿ"ÜÕÉï¦éwy|ñy½‡2µª2X\ª-¢Å AŽ±Ô……‹’ž8épB{¤xG¸["Æk™Üž ¤:¯“c@Ç£]æÑÌ]NÍä9h÷F¥PÐÑZ»nýÐ!C›šÆÑÚ(;„B¡µk×Ïž5=Ìm EPµÖ1wþÈa ¯'$Âfùj ƒ&qáE²¿|PO*]Þ¬ãýÌ€¦5@ï¨f8kž”g9Z[¿jjl>|˜Ûí¡µQvˆF#^¯·uë׳gå@µýn@°ŽŸýì6ÔZ~”§>=3+½Ì)Ïrp7tè¯×G«¢áõú†Źniü⫤©¶, ((T}ÕKõly÷k·ÇçËí—²ŒUmYðlš—"+2·Ëµƒ|Vf€‚¢¿`Lµ…ðÖRZTk£ÙÔ +ʳ9AM‹XÒxo] Šþ¢ÚÁh@ç€ÊlªÄ€ŽÕÕx~‚qžêÓ)ò¼i\œ)³³¯„ÕG ÒçL1ðð#À%/TÜBzèQ–c/¹x¡ål%I¤ªÖÌ[,óo½ä°AšÌÀàAš¿vDv¤‘»Y@Ï2¦ÓÖ “¬6jD#ªpøê« ‰xâÊ+/—#—/¿÷æßÜ?þÑ}>oÖÖ) É_&lµz=ËUG±†>NЬ¬ª|Ìs\>lh|.åÙAÔöüË.» ®¿añ‹/¾ Ï=·BæÙE‹eåYM „xž‹F£FÊ/åxÖ^Çä6¨ÚOÖ|zÓâ[̤¼}É-´õ”Ÿ²È…^ 4Ì/\Î%>»{ùÒŽŽŽ·ÞzóÚ_]¿cÇÎûÿ`uuÕ‚ –-½c+®™Y–ñû<«WÿgÆŒ™<ÏgJÚx<¾iãFŸ×Ͳv*Ñ|©vöìYgŸ}&mi+Ov@wcÚZʃmE1®Ç³ú1³ÍçÙLòdzY6«ÚëïtUúÉëîÙ°™åy8÷ŒÄóç/¾ÞýÆ_zh[¡(Õ>,ÑJ ±Èª6/üûSnïæäÅ;píÙ>\ÃÞ¸ÔuÖ÷I‚]{™¬â4MŸÊ1êH9¬ŽTbŒOI §E1Èátr¢ Òz(_‚èp”º;†XÝk7xÆñ«Kâ+^ãž#"AiÝÎÌœ"}½‹1æÙh¤S½^V‰I[D›–R½*Lïƒi¥€ÚšÚP¸M„šÊOÌQH„Ãmuµ5%yy}ÔjçOÁ×»˜®n˜3KâpÜa"!ðÛß»º{ÐÁ¦¶Ú”%;+ýÙÅ”g)xjਹâ^ïîêF, wÆ ËþjØB.û9RPPP”ÕÊðyé¤ [©–ú«¥   (,ÕRµ&©ÖºÅéÓ¦NŸ6•Ö#E ìD‘‚¢Ì:!¢( ‚@«¢ìÀó<ÇÙ¼XáT­›¤ê4”šoAéë€è<#õº\¬‚ F£q°¶ª&@™«ìÐÕÕî<èv;yžÓé-ßLo"Z+ç.CU-Å †(J¡®Ñc&‚ãñ8­²ƒÇã«ðø¾úª¹2èç8¶\T­uñóU5× ¤¥T«N%,Ô)3óÏÌ\ï,êÄ‹Âá®®@°–‹Qž-ÓKÑårú5á®¶ªÊÒ]¯dÕª)RsäžÆ¡fè/-OƒÓ ’™—ò,…$I u†F5L¤z¶¬!bUUÍî[~Ë–¨°µÓ‚yRËÉY¢ÙRP¨1‰Æb‚ POµe Bˆ ÑX ãÒ}Žåj«¥ž ŠeŸZê½óÙ0\9·Dv'„Xc[¿ß‡Õ\O¤$(Wª¥¶hУW[(rÀìƒKy“¢xóJÓFMJåm‘iWѹiõŸò'MÆj¦W'Ë‚o@ <ŠÕ<“fÊÛÒ¼jfLcÌœ²ÊLŸkI&…¥Ë–Ï›7¯©©qþüùw-]VŽ¿Rœú7Ñm) 3+Ϫ§(¨§…É‘Ór5O,æÍ”·z¢U}ЩޡlkmÌÁqüUW_û¯½wÜqÇ3 [.T«¾Nj@ °h Л`«yŠ^š4¶58«ÐÓ”^ÑÑÑ¡î!iÝF@>JÑŒLËD,­ cH’TQá=õÔÓ‰ÆØ€ÑJZÕ–×SäúsšÆ&„ºP¤(C`Œc±XÎ!¿æ­y.IÂ:Õæ Qd>]Ë|¹ÚÚ€eÉÐ!xö,2~X²KXpRCA‘¿ª¥ (lz-&ŠÜtýMî¾ß£Ý{Àë·›ÙÔâ¸êWΓ¾Ï¼ûO[ ¡zßÈ ëtˆ—_Ê=ü¨ÕÚnL ”Ja{ÄÈzÄ ­­›Ö­]C+¤ìà÷ûFŒV_?ÜãqgÇäÈÅ ËJ". ªE±°,TT'#5Õ¨#˶ ù“¯±‚BˆÀ~§ÃQ[SÆh…”Ün—Ïçs»]f– Ä`b–: „l[ä•/Õ¿ŸÔ×3}Œ8Üh¤öæÛøðy…Ö¡š¶ªp)²u?äñ¸Ýn„P¦ÏüÚ+„BÌ&&—Õ€pËbþê_ Þ‡§MÕ¼^ö¥WÙ¿½žXñWS¿Q9ÚjÍŸHmµvõXŠ2Ëò>¯ÇÄX€ÓéâX‡ÑR¡Z|è,aù]ü/¯ÅÓ¦J'}‡L›Jª«@ÂhÏæ“ÏØ^–IüõO¤º:×±¿s¦ë[ãÈA½E ”h(jk'Ie§NŸÝ¼i}Öß]BȤÉ3ävëã.õ|‹ 6;þ¯²ƒ{á%tËt° X– †gÏ/¿ÏŸ—uC&fZ2Ýš±BP†¥  ‘ˆ÷Œ3Þï lßÞéî‘0Ö’´ŒÏ¨2bܸɉxOÞDß°oµ˜Ã!vŠtÚ)ôqRPP”&D1µµÃjj‡aI$Z*bXÄb]rúBLÊã~~{@…ª‰§CôíÔ€@1H  бîyšõWKAAAQpäk@hmÝzðàÁ¹sçЪ¤(cåCˆ(Jåµ … žç9Ž-ýÙ#ùRíÊV­^½Æ˜j÷„÷×TTñ,õKQŠ1ûƒµU5t°òCWWg¸ó Ûíäù’f˜B]éA‰‡ŽËâ{Å}güùçwuݱ‡Ì¥Í‚¢Ô ŠRg¨kô˜‰„àxëìÀÊ>´ïiµrzl|ª&Øo îÃ…%ïÞ·³sϟϾŸgy`ÁyK”>×~±üÀÚµc®Â¼jõ*GfjáÌ”¥ ¿ßápX˜r@ý§œR‘Ÿj)šy–:¥æéêBiNÃc= .TfÎByäŽã.\˜Õ¥ÂSQqÞy?„æÍ;LHD !D;ö(‡ÃÁ²ŒÃéÒ\³Kòè2ÖæêÁï×=¹zǺgŽ~ý²îݯŸ)׆‡êØ%›”ïLû€V4- %kU @  )ܧXü~("„( ”Hõéia%Ð<]¯PŠp8|íµ×@,[´h‘yÏ=÷Üzë­ðƒüÀëõZ«1Bȼy‡™ge$‘ùóç!‚3Ñ¿úca®ð¤Sz—ꓯmxûÏçÜïxQ#¦vƒÁŒr±Òê^’5ÿ´–‰íé<Àe—]‹/~ùå—`ÅŠ2Ï.Z´HæYë¬%D…Dú˜[HDMð¬Ø´„ÁC^ ÿíÉægžòTµ«<ØùË|/—¾P}†yUôA+Á¼ö\ºtiGGÇ[o½yýõ×íܹóÁ¨®®Z°`ÁwÞY^ ©í¡Úúîò7|æø‡«¯i 'v#onÒ:«kZ *r Ý¥•A¨¦)@32kÍÈÎÎNóùS‚ðè£\õË+7mÚøæoj3yò”åwß›H$Ê«Æläïë:xÝw>uæò¦)£tô0@ sÒ%§®¸÷ÇŽ3dH±ͪj3iÍL4‰{0›X†!„ (õI{ܧO¢Ä  b“s(ÛRPX2 Ì +“½lXˆùäSOýõúJIs”g)(¬­ù«µj/8ÿ'¨d|ø›œ–;h…-åÙÒD<× P”ÛZ£;¨–¾Î¦ È“g[[·p™Z9gL™-›·ä¯jÝž âsV­OÕ*iÒd*YÍH ŠÒ„Óéœ<å§Ó• •3``ÃÏæÞ={ó¤ZµY½xóžgéÎ7e8*ãò>+™ ªjeyä|»®ÆÌZ[ƒôƉ)(((ÊXÕBŠðZŒlÓO„ˆ¢$­ óàyžãXË\ÇäëÚë¯Ïx<î Æ 2$-¾»»çðys,8e °ëùêÇ:¡põêÜ£š?°GgÞ‡QXÉ!Ô¹'¦$‡†:÷¨™ëeBaßs7U¥‘Hô³Ïþ{\åð|Uíc?‹Ån_rKZü_þç¯ë×þÈÃÐgB1P‘ä»ìñꘜÂ9 ÂýÇ={ö ·Û]Z“½ÌÛ¨õ€‚ÂÐn0Œrn)úYýÕZHIAQ4.+AR£ôZ"H5 ä·á]lk£¦“m)(—Q”¶ Û={Vɨ¿Z Š ·Û7¼IÅ+¯¼ÖÒÜ¢ŽYpÒwàý÷?8ÿ‚…êøyóæü|á…f$-Eþ?§1$5@AAa¡[Yr‚¯ª=õÔS&Œ—9n\ïpp\zæMôaQPP BäKµ.§sÔ¨‘sçÎÉ<4eò$Z¿ô`Ý9øÊV=ý§¿ôþ!I`Z«)ÔjÛk1Ü B;H1\pÕˆ© A ‚ÕÍÉH„î=8Ú)‰q¸o ëÎðõ¦2¤žgíþ!…lÎÁ)((lЪ–©ÖjÉ $öàî6éÀ®DW—IJ¨²†«ërV&ç˜ì§Sž¥  TªÖ"„@"FÚÚ„í;¢Ñ¨8¤ÖëÁ»ª9Î1’˜Tµr@YÉ)·j.V&áfFÊç*ñš))(((új‰‹Å›°nÄqc²¿=¾a[¸&èL„w0N7 úÆôÚ4´j N35dF¦yÏLIAAAQLCƒÍªATQÅTù ‹xuKG¥¯­qkXw­ÃmšjõÖãšÑ§Ô1B^Í‚Q”!QÐRxÞÁq,BˆV8Åà5 äóÒ„B|íl]›³)ä‰F«·îé€hGºp"Lœ=Œ]¨÷¯\N•ƒ ¢(JÊ:—Ë]Ð ‹Å¢ûyŽåyŽv?Š2í\ý¼c®kªp’TÁóÌð!NQ·‡,Ä TØÃ³™¦X3™Â¢(u†ÂcÆNÀB"Zв¾nÈÈm[7VƒÇ–ˆ¦ð¥ÓÁDi©Ú<ÁTß8±¼Ëƒjk±˜äp²~–uØï3L“gõÈ—Újî ‚µXHÄ ]NH¼ÃíT‡»Ú«*«MÆ•5Á*_AKïééê t¹\jM=J×,š¢\©Ÿx'0¼—÷Õr±Œ8+G!²eR§¦¿ZãH*o!IR¨34ªa‚(ÄeÆÑB¼ªªf÷Îm€eYYS9c¡§»½°ºÒ᪩±sG«¢©Ié™ES”7ÕrW8ë1Ì`‘0¨vÛ¦çì]£¡yC_}¹ö÷Æçm ¼lLþÐgoh…JùÈÂVKÒK ClnþlüÄÙidæK·vÈ®ÒeŒŸxè5×\×\sÍø‰‡Ê»Š¦(?ªmoû\ïPÛþÿšTµr Mu¦ Ï4Yš–,Íb¦€ÍLfœóà¢Y]õz›ÉHËÉT ù7aB°¥å³´€Õ2_:€n>‡ì*]þliùtùòå°|ùò--ŸÊ»Š¦(?ªõÆé 6Yž2ë)áLYš™é¯V/+Y==«™ó`ãZ¢ÿQ [YÒÃô=R'i~67¯m?K3`á£óÚ‰ ò)téÊç”ï§|ïxk·l\4E™QmãäjRªÃœ2óróùä鯖>ÑØ,»ëVuÂewÝjÑx £G¾[ZÖ›03-0H yG ¥CµÄ–YÍ<ï=áÔ×F; P}qÔ·O{Ýëe¯½Õä0?WƒÀ 7 d}ü²°Íâɱô¦ñ3`K˺´@1ï½kž¢üÅ‹½þjÝ5G~ëÑ™³nxéÜÃf_xÛ¤“Ú{áõW;èEq–ŸÛewÝ"ϱ]v×-ùñѳWj¢uó:½€XK5ñÊ«ïêgUðÒó,.kÑEƒ=›“§Y `"¶€ò° þjËÜ¿mÖåbÚîf€¬‹¡=ïš’y=€ò¦³Œ9”~Ú©ßìÇÒÕØºe­­ES%mVÍjí÷ëU0Î_-õo+³mÿ•ŠÕÑ`-ªÚþQ=šªÖ ¶ulyê¿RþĉDó´.8°óÏÁ·?Vâ¿1òˆ c¾i»bë¶íŒ¾é½½½ý®;—0Ô6O‘¥ZŠÒl–žŠê@ ¶«ë`eeeÞ¦²Þ€m yÏž½7Ý´Øét*1‰DâÅ_t8§Ÿ~:Ü~ûB]fRPP”<ñ®ªªš];[ýþËÚ£-mx£7*Lßýu¯>q®¿’ÛÇ·lÙ"S­‘b/ï%%‰ÜW0Ð7Ó½}‚ Q¢Ñ–0›9ÏcÃ{1¸è– †ªTí˜gŸ}¶¡¡>¹rD[[ûºuÿ wuBˆB¿éwÉ~€Ïë›9óªªÊ’"mU›ÒTíÌ&vĈ;wîÌ)E᦭ÝJó~@UpAÑÑÑùɧŸ R;fÌhZepWø“O?;ì°Ù•ÁRô•ïæäªVÅ7>ÜÏRb-€Á,6oÞ2vì˜ñãšh=R”Z6oÙ²¹õ°Ãf¥å³9¹­ªvÎ$×G±qãÆ\yV²å›¶ª‚‚a™!uµ´(Ê CêjC¡P±¥õxúÜŸ3mÚ”~Tµy!MÕF£ÑÖÖV—Ëe’g³ÆP n·‡ÖEyÁíöx½^ƒûöí?õ´îܹëñ?ü±¥ym]mñô„mT[_?üöÛµ§Íþæ77@gg§ÁZ·L»•®6"‰\´ðòh4Z]]?¿øŠgþçI·Û]fT{öÙgê—*É¿ÔzÐøèãõ´(J 'žxb¸s·™”’„—.½ciú´)?»ð¢'ŸøƒH,_~ÿ7þª8ëªJËë„B¦Ô{l bþ¼é´(Ê/¾ôjg(4n\Ó%—^>mê„qMM<òP[{ÇË/ÿíôÓO)”Ä2Y=w´ò‡¶ ŠÔ±Ë8ÆüQ ŠB£¢¢â¼ó~ Í›;;ï!9ö˜#Ë0N§« %m ÚOÖ|zÓâ[̤¼}É-ùDy¶4Ù6PYoœ˜ò,Eÿ‚2wîl ó¬ŒD¼{þá‡B„D´hªÖúÂÜÙ³g}ö™ôYR¨Y8a^–rʿńˆdF&â‘B“¼ÈWÕVx•ãÕ‘t9YÉò¯:@AÑ_@ˆÙ¸ac,. 6â°ÃæpOÁcŒ%I’ÃÑhôóÏ×Ç£ámÛZ'OžDH¡LŒÆ Óø£?¶|û~ý'ì·Nî_âêêBðÁ»<Ç÷¾'üw5ûò_³­²*W½0W¯DꥤHäû^¨øT/ ‡å?³&£ÏŠ¢Ð$îêùÿöÎ<ÌâÎûUÝ-µZ÷\žËøÆcŒ „…ðBò“¹L¯ÃÃ’àÅáH–µ7ËÖË‘6 1áȆ}HH€$dcs$<\ ØÄ0ø߯ØðŒ¤‘FWwW½ÈhÛºFÒH3ÝÒ÷óøÑÓSªn«ª«¾ýí_wUqÆ™²ì ¹p8³gŸŠê:+­—©–¹¥v|zHxáiû¥ßLBÂ!:ï,M×ÉæâuËâþF~b· žÈçOá[åÎUU—åBS¹:MeÕ^d¶b„ßþÒþå‹TJɆ7¥qíLqñßgœ¢ÛeBùèoâuß/j qñfPŒ!åa !i?›ÞEÑsSìéºçh}…_=b?ýlíã=¯Øþî|•Ò»EœØÅN˜¡@(RIau9z']Xj “(Òêý”ŠIí—¿¦>õ3ùßJvÏÑÃaÚÚÁºçèG>¥¯¿,%cô»·ÅK:Z†ÎVêm0P6\p*XÏЦ”ÒPƒÔVÑÛVlqò/-P¿´@5¦|ñµÔƒ¤Ÿqe<ì2¦g¤ÀÞŽENÀ €Ím–“Íãj«¥õÄ$“(曯ָ‘­§Å¤@Ñ„*RÉÅÉ oŽMÁùuêj‹ ß¹ÆbqòQ›¯,@¨œÔb¾Z¤¶êR;kf÷¬™Ý8—‹ k©MÁ9Ù±™ßMqRAÁ9×4]U‡yÆf³I’8:TVj­´8ù‘Ã俪¯|LøÂùÎ+¨TU‹Å^Kc³¯pÎp88<¢(²Í&¡ÞjIˆ+Ee”±¥ÜÿŒpË5lóûå<ã6N"ƒL‚¦éÁP¸£sŠÓéJ ‡Óénïœ …5MGÕ™PLy~¬$µ„“O~¸Z¼ñ2}ßÎòß(‹±À< †Ã> ã,OhÃ'8'^_ó`8Œª3!µ#µ„s/¤7Ü!,Y é+Sm3ì­âôgÐÍN¥µ¹­.;ð<¯ fÏBk\ñ˜ü–@×õP0ÔØØ¬ªZÑѵ±±9 é:Œ­YÚv1!‚t¬ÖÐú9!„gŽŒ`ö¯ Ç•.¹Zøì_²@âeÉíÑ¡Ò3doÌ{`Jji ZÆx,WU•±b§×㜫ª‹Ç㢈æW[5W›bñrñäyô{_×’ Néû„üñér.PRËa4°¾†Îœþ7g:U¥¦bµ†R‘å«Düë·cDMòn×*up¬¢¹©µ2Ä7•h¹µpxÑàÔ›VjËþÖ¼RKEr÷Ò‘>~ß¿°Ž‰4™ }º³L/rÏ;¶JjüW'!P«+½W›ì ?}Vºú<õ‰Udæ\aÓÞÚYÉKbµcH†€oQ:u@¨ŠÔ~´ž¯þûÊBáÇOK×}M›>›~´·`¤O 0Gmi´…ÜP‘9qŠ­@W[•ÿcêtzáôåçõÿwŽ6q}ûUöÖ:^XCómdo#z`­Pì-€«­–«uºÉ…W^! É_þÀ¢ºgcŒµ[7î5%¦Æ'`Û¨%PW®¶ºãµ½~rÑUÂEW‘ÀA׈`ÇI¯Á @:ÅøUáD\mUhhÆŒG€1¾dŽá¸¥ 7¢ îÛ·Çf“Š|©Öf“öíÛ# (ªãjÿášÅë×o0xuáó B±Ùl¿üåã3NšŽºB¨Ëåìݾ¥©©YQ”açë’$1êݾeꔉ‚€{8ËXZÎ9cÌR»ßþ… /?ñÄ%I²Ùlv»Ýf³¥6öìÙ³råÊ‹.ºìµ¿¾ÜÙÙS,ciEÑï÷5ø½¯¾²öøfLš4¹pþíÛwîèÝÒÙÑæ÷ûDÌ€©­†ÔBÆ7eÊY–ퟓÚÁår~û[W/Xp髯®õù|8ëÀ*8Êøã:©@wïÚöÁÆõ…3{½žñãÛ;;;œNUgB©-û[sI­(Švi͵ÙlÜ·¿Ãá¸öÚ%¿ùÍá¬ëÄ¿Ï+Ûí-ÍM±X¼pfEqx<Eq`͸Ú*Jm*\&ýçäÉ“W¬X©ë:!⎽y›©ÓŸ fžslX:[ÆœŠÙ9!”R§SQǰÆ'½+°œ«µ’ÔJ’dÏE[[Û’%K!ëÖ­»ï¾{ ™‚âf§5ndïK07¨ŽàBF-MjÒá±uµBEb†«Ml6›ñªR¸±fëcaÅ„žê.€ I’ñ™X†Î¦ŠZÆ{ÂÅÏK‹l5@H¹Z£±ÍÐÙTaJ½ËŠ…ÉT6€0:kÁUf´XF¬6çU¥°ÔÓœ_åË{ (Ij-öB:€ÏÀB“ý‚1Åø‚ADØ[@-Ò®¶@a† x2–oúZuäjßzë­ÁÁÁ6lØP‘×eŒñÈ+ú==›ÃJhj.>|ŽÕ'¡ÄãvÏžÝÝØà¯ ÔŽN¬¶RûÅsÏÙ¶uûŽÞí…³}áÌ3Š÷³#Ï ÀÈ C?èikmëꚆÚ0¡PhãÆžSçÌòûKPÛ ÜòƒA 5É®]{»¦vut´+еab±¨ÛíÞµ{ÿ©sêOj¨U$Ijkku»=¨ “àv{ÚÚX0XÚÝma1…Ô3’±cykØd,2ækèÌØ0MÇvgøÙïºd¼h˜ó­pDÀFŽ¢8=ž’/~éÑÕôsÒÛ–‘ZéáXhØlŇ êk£–!ŽfÓÓ:yÁÙ6Šù Œ ©kù¤Ö2“(>þòÏVÿy•$:”Æ´oéÆïÌ_ZFÌfxÓJšRU£¶¦òd§×¬CC5‡ÔÖBaóÇ=+Ý?î%ò¬ûÛ^\ÿ;œòÚÖÙ …Íéak^a³µãkàj‰Ibµéùj3&HÌ9Mmz~aÌÝk¾¨B1éõfø4² ×Þ|IDATÚL/0ì4µ±h0c^p0ÊdÄj K0t•€‚‰¤¶È‰†k•B}Vf—ÚŒöŠÆQcá…ºâk‚ØA1„ª¯²aF©EÓ´˜¦lêy—q£&£Ù ‹)¦c™¥Ôf“âñxããñ¸d«½¦‘©‡0ä|˜‹ö:¶xÌe”Ý™ d3ÿ3´Â+3aÚ9³!Š‚×ã\¿þÝ9s榖,ÈpµªªnÙ¼ÉãVDQ¨ê/‘LØ”³]@¾õtшAU• ¨âyEÁçuC?½ø{MÓPBˆÝ&ºÝ.[DÓ»Z·ìyúõ_¼ôÁŸ ä92Ø7¡er‘N¡k‘£q_¥Ø5MÏ^À Œ!š¦;d{ñùN‡¢8TÍŸH$)¥B:P@ %TQdA’Éx"™4»Ô._¸òõM/ ›íïfœV¬ES£?:‘e{‹‚jÀŠ47—öäÜá°»D‘R*4}*ÓÁÙdRM&ãÕþå•pµwá¡bXÖÕ*‰D<°Ërµ›€"â<™H8dÁn—-÷ã1³…e‡,£LµÛ‹þô‘ÞíÚµûÝwßËgõ9+ÀÈ¥öõ7Þ|ò©ÿLm‡c±ÿ y<þÄS}}Ÿ¢Š ’Áþ×_sûöíiK»sSÏÞE@ŤVÓ´ßúËk_äœ÷÷÷¯¼íÖïœ6îðÛÿý‹ÇŸD- µ```à»×_Õ¬¦9ÎðÒ›—I’tÒÌ™ùhï'aõ‹çœZ@j+@ccãmwüðéwv½¶'øo+ÿÍçó]vÅ7âç^vÃ÷§NRx_ãä2ŠÓŸñ'Π¨ØË^míó,’eÙå:ºìÝìY³c›6o™5³;ߎéÉgÓŸ8+¸Ú¼L›Ö5iÒÄôŸgœ1¯¥¥…sþ§ÿ»øƒ¤ÕS µ98î¸ñ|سuÛvcâ3kíüp÷ÎÃÊ+„PADÑVÕüc&µ„-=lß´9ýçƒ>ÛÓsëŧÝ׊íÛ{óí…Рòê&Œ»˜ g¤ª3]T,V;4ý¯§ž<Ë=Ø»ñ¥ßèúÂË/£”Þxãw~óÄšýþõe·¯˜0iRI1˜\`ú==›ÃJŽÎØÏ±ú$”xÜîÙ³»вe”Šœ;sãŒRÑRË9%Û'‡Ã‘ÄÌæ¦túåÿpmïÁþ:›VU(ì(ÂÝæYéüØÍ™'ß#²|o ˜3Da`3F–ÃÞš]g÷Ý÷SÎôY3g|ëÛ×þâ±5jRýÉO¼å–¥UeR Fª¶Ã&“§øôc"ÀÈrKðÜó…§MëZò»g?­«kõꇂ/<ÿâ%—~ ÆŽ)wjâ¼D£Ñÿyû=BÈW\9}úäx|pÆŒã/ÿú7!o¾õN"‘„«ujM‚¢Ø5M·Ùl8MæAÓt‡l/i—ËuÕUWJçvJ"!„$“Cçœ}¦ÝnA–åQ˜ÇR @^šýÑ¡ˆ,ÛG'œ†…164in.í $çü´ÓN!”¤t6E">ãôS9gÉd®€±uµJ"ì²L)E…ŒuÜ€' ‡,Øír©û&“CÙ‰Få…Ô0–ȲC–Q &ÚmŠE:n‹R ZZ ?_óäÏ×<É oärÎW?ò‹5=5:?Å5Îà`xùò;!ÉDò†§ø‡W¬¸—ò+.s»]pµ0"|>ïõ×_O¹ý޽ð‹„gŸ}!¥³7Ýt“Û톫€‘Â9¿çî@`ݺµÿz늟zøá5MMóçÏÿ÷»îL$Gá7ÀÕjŸd2üÈ#^|Ñ‚©S&½´î•®©“/½äâ‡úéèè,¤P/èÚÐ=÷Þ{úé§wuM=óÌ3ï¾ç]Ãh1Lsï©iºªª¨ 3`³Ù$I,o4ç\7ÿóÒ×^{íÜ/žKiœ³Ñ›º R[7P*I6Æ4Îc,Ì8cœBŒé²CV“I‡ÝQçu¦ªZ,–ðú[›}hAf  ?SÙfË¡]j2i·ËÆæcÌá,˜Ÿˆéš–7çé®qLgaŒ1M’l¤t­‡ÔÖ¢H9ç”sc3¡„Ðc7!ãš›cѨl¯÷­(%N§MKý˜óÛ,86B˜¦%³e4¶Žk.¬‚\×âÑ1´öçÝÐ#ŒÙRžDËñÔÚ:B !ŒsvììœÜ°Á?oÍA áð $¡…k išËå¬Ðä³9:!„Ps&Ðrü:RÝ4BA`ŒzÌ$öœý3½q4† ;dÙzÖ¢" g{?Ö–0ÆA P@mÊãŒM”;¥7¨÷žbèÇv N8£ pA ᜦÿo¤Ÿ3F)Ý·oGgçøD2†ZÀfSöíÛA)Íx†,„s."¤B(çŒpn|WF·Ë¹m˦–¦&§«QU£¨(P×:kw%Ñ­[6Mž4AcgáœÂE¸ZPðžˆR*ñâO¢ ø|^¯×³níÚÝ'M˜89•ŽO|ÖáçÎÞ-[¶nmokõù¼¢ d<ÙàœQ*P¼ìòÁ9§‚À9ãœñcÑ*Š£³³RºuëÖwß{uê¯ÇÓÑÞÖÑѪ(ŽŒžB('$Õ8)ñɤ¶ž"M]¡if`Aðû|²]nnnŒÅ®u¢(·[QÙÖ•sÂ9Ã{µ pTL½WËs}­8Å© ¢8*¬9’çD bïê@jëÌÕ2F(% •@†…¸ZP„±R/aWb8 u©´œSŒÃI-==ÀPJ‡q&VÞ¼bÚ:ÒYQc„pÎA ŒN$2ÆDQ—½$ªGb*Ý´Dbš@´|jK gœ`.eÁ)á£äj[•¾€ºiÛ·ÓŽŠ7ÎF“ª¦·7ç^þ35‰"¡Å(ShùhM¢èó8!ÖJôñ¦émBç8‡Kqä¶´TdœÎñX €ò`œQ*ŽÒh1Kñ¸ð¦õš9ÿ& [Ë Mõ£Ò{j¯~ ”Vf:OêXmË‹ÕBj ú÷”¨€Ô¤¤ÆœòærÎu]O&UK”Ón·9œÎZåªí¢U¯*@©ùvU‘ÖU¦ÔjškÍãÛ| –¨¦P(0pä€â$Iª¥rÕvѪT ‚ÔC»ªH뢪Ù[Zåêz(vÂ)œ3MÓ­áÞ%‘º³w£Ïç’D±fÊUÛE«FU€Jêlº]1]Ók|¸·$ „ åµ®†¦‰åÈsx0ÒÔ21=‘HZèÚë實ñÁ|5S®Ú.ZYUa/\ ‚”Ý®’áðÁ×^ ÷örMSÆo?ç÷øñ¦o]ÄáËn]%?Óu 65³œ9R5­©¹%Ôs]~­[®Ú.ZéU¡¨ PAÊkWj4úÎm·={üñ»î¿ŸïÝ+ôõõýö·œ;÷•o~3üñÇfo]ªVvë*ÙÕrÎ≄ªªŒ1^Ü(O¯×›Þ«j✫ªO$8gÙטRËåõz+U–‘ªâEËH©ÞY«`5S ¢U}´]ñ¢G{G?ûlÝÅ;λí6÷„ éL3.¿|óš5<ë¬ó~÷»Ö¹sM\äò[WÕŸdô¥Šw-P 2ÎÑ蟵G}”²xñâô_ÎùêÕ«%IZ¼x1NÙ¨µÕ5í•E‹”ýûgß°D$‰ä„S¢¦M×§}õ«ô™gþ²páWß|ÓÝÑQŒ°–°Œåeßû9ÙfʘhÌc~rþà‰–ëWE–%;[j;ûŒç4ÑË–-[¶lÙƒ>˜N\µjÕòåË—.]‰D nVdÛ¯~•xûí‰óN‰ ‘¶EW‡I$9¸C íìïÛÝzå•qYn™1üwÇ„;%©)¬Õ}F$µ¼2²…B¡Ô†×ë }Ž×ëÍÈ™ÚÎÎ3BªW®|…61Õ\L^´tʰe)-ÕOŒ‰¡Pˆ’nÆj¼þúë !·ÞzësÏ=Ç9ÿõ¯}çwBnºé&—ËU‘ª7¶Ð4mÇc5ˆ‚ÍW›”Žã¦]wKŸžØdÏ”›–zºº3O ø¸Ñã9ôüóÑþþœIµ£˜[—1[ŠŒ}‹L¬Rëªz! ù|>ãŸ9ÓŸ5Ó —%£~LBÆO*òt ›­ÈãpÎï½÷Þ@ °nÝÚü`ù~ö³›šçÏŸ÷Ýw«ª i³ÑØGµ:¸päýØ[ß"É/ÜxשË÷lèš¾mÝï{ï¼¶ùÓ˜>Qé{ûíÉÿ÷å59£z¤·‹O¬Ò(kMFñJíóÅr¥(Ћ,Ë‹¬iÚ£>òOßûî¶m[×þùÅ®©“O:iÆOV=µªÔ:$s.É„ÒD³3qè½ÿó*ûWnþ¡ÃÛ°é¯/õܽpf³šH¤‹Èa?xp¬¬¥¶H;í÷ûƒÁ`ÆŽé~¿?}¨ô½@êOã¾#¼7,r÷âorf3&SR“- ú|>ãYÈyF²;l¶û¦`ŒÜ{ßïúÑŠ#G>7®õ·ÜZÌ ŒUô`˜L¢h'„ê„iDÓIPkœó寥¾™|òÜÞ)3yìoö8[˜ˆ’”ï€þ£Í,ÕŒ³[¦ÑÓrFÒºÆþm¿ßoìŸÙҜ͢ä,‚uË•ýË+[@ι$Ùnþçe_þ¿_ù§›— ‚µ.Jg§ÍéLÄH,Höô7λýåñÝsö¿óÜßž^îjhüʪ—?õÍQDU %Ä} #éS9 ~N†à¤±¼« ƲÔ^éô@ ÐÐÐÓï÷MïØÐÐrnŒ²õË8Í@ çÎYÒœ‰æ)š1[ꧦ~ưÌH1&æsµéƒg£ëºËå¾øâK“É$c¬Ô_̃¬(ž³ÏN¬]{äi¿rqëô9‡þç¹ÃÏ\áòª;žÕ¦-üq÷5wõÜxArØÚÚü§œ’O.3î‹”Èas¨1ÚâÉבÒéÆ ™³÷ÍÞ«1ýB_Òb6ƶhNP1»Sö|0Æâñ8¤ÊêI’Z—,9ôÊ+ñ~mï÷H±Àú'|Í*a$òןìèï;üê‹ñíDÔIË’%vYÎwÀ|WñôU¶°(ÆTéBŽ U‡RÚ>o^ø†¤â½ÿñs¥h!bsJɧïÿ*²™8‡ˆëÜsÇ_s ¥ºœ2ÜÀ([™r¤V„½{wO˜0QÓ4 l›$îÝ»KÌ-Z®Ú.ZÉUa“ W³‚,Oºù潄È=êW#2("A%Ž$i"Ä6~Çý÷;]®š,~ÉRK©àt9·mù°¹¹ÅápXeRI#CC[·|8yR'¥BÍ”‹"‰B­­œªˆD T¨,¥^ÂÝn÷ÔeË>>ë,ïã»ßyGà„HN§8÷dyÑ¢ö /t»ÝÄÄw›M,ûB^Î|µ‘¡èÞ½>Ü?ý¤Ù“&O±D›Ø³{×¶­¶µ5OštœÛ嬙rÕvѪQ Rè:;Ü÷é¾}‡Î:ûü’.ጱX,†úû‰¦)--~¿ßår‰æžbX’„h4öÆë/OžÔÙÖ:NK܆¦‰åH-clp0rðÐá¾¾#ƒak H÷zÜ­­Íím^¯;_$ÈŠåªí¢U£*@©“KøÈ/äeJmÊáÇbñHd(³ÆÓaEq¸Ý.Eq^Èråªí¢U©*@¥¨“KøÈ/äåKmº÷Zå-FJIñÝÏZ“–ÔpѪZ "ÔÃ%|äò2¼1´ìÚlصZ®Ú.«åt*Šâ¨ù±##¼ã½Z.áUR ZZ€Ô¤¤ µPßD£1H-TWg7nì‰Åb”1v¤¯5Õ ‹7i–¡. J®VQ±XDˆD u F ‚ KÒу$ v‡+‰ÄXÒ*£³7öÄãq§S9©{Ó4»ÃMÃáÆX°ÿp0ø™®± ǵ¡¦`$ÄbñÏŽEIðûÇ54·ËvÇÿäT3é²t8BIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/manual-source/_images/importdialog.png0000664000175000017500000006076214126044351022453 0ustar00jssjss‰PNG  IHDR×à} ÙsRGB®Îé pHYsII1–\jtIMEÚ ªS˜tEXtCommentCreated with GIMPW IDATxÚì½yœ%U}÷NÕÝ×î¾Ý3Ó³/=,3 ›€0†ˆD“Hž\‚<¢1&jÄ‘‘H€ ‚»àÌ ¢À€„<Ïózùøø3AEƒ‚Jˆ(…˜}a€Y{¹·—»Ôr~Twuõ½µœÚîÒýy3¯¦nÕ©sN:çSßúÖ©oÑçžß6o~_W.—L&)Sc¤ЖdFI‡@Û¨Ú¦•xrÖ¶•ï€6fÞ4”RMi+•²¤¨±hœ¾väõy…AŒ(REQeâ,Á4 QNÝäK]V„òV—z8(ÊWuÊyJ¼ m\¤\Yqµ5å« å«1uu>öc„G;Y»Ú€Œ0ÊQ5ëúÏØb™l憩_­ÂåÖ(„4€AÀ¸w^‚ÝJkgÙ«î%x®Þ 0¦(’ªÊÑx&‘„d2©H7ìãÀ(¥„J’422\­U(¥F5c-i3Öâ³”âò"ÎøL N»ƒÓÜ`ÓãÔÙ d¦éß?þ M+X—2@ öi(·Îf†û*Iµ‘áÁj¥BÕ/™n$xf&„/—WJ(•$idx¨Z­h?ùŸ®lÔRÙlZ^‘*‰D*B© ¨r\!Õjåà¡ÅáÁ±ñщ‰r"‘H§3]]=K–.Ïd²A[âÌØ9B·H9ÍÁ‹vY˜EÌ•k½Elî2hØ0µ‚q:·û‚ùjFW—77ÊAK°»ZfªPZ­”Ø;2|rlLÂÙîKWd²yÂT.¨”Ø72bÌ$ÓÝUX²ly6“«ÓÓ&žÌäàþâÈàÌLz/5É$TÚNÙ–,uT6E•£Tˆ0¦Zù‚—.ûÓÒhù?~ò­õëϨÉÈܽçµ7_òAóÄ­+V̳¬¨ ?vô¥—^ؽ{÷ððÈØØ¸ªª”ÒT*ÙÕ•_½zàôÓ×-^²Œ1•Ð)q“ù¸Ê®Á)á£2Œ1>ï°Eõ'†¹°,l…˜8:ê•ÔA‹ÉŒšêÿ§–ºÞm™­Œ1Wåúwôº“`æå>Ä»!Ì!” G¾¶ãÅm–CxÍ™K—®`¶BL©pìèë;vØd²né’éL˜U&ÇŽ¼´c»˜,Y²œ1¥ ~ e;cñ’¥LUíNS#6§aÕÀù/¾xøÕWÇ!ŒÆ!DeL ”1vóÍRºô“ßb+Áâ¾}»ŸîÙ;^ž7oÞ›/¹´á¢BOoi´xäµ×vìxá7¿ùƒçœsî©§žèe=ls8HïpBÌ)i>b.Õ[‹n)MoꩃÉ€iüŽÌ õ7GDð¼gÏËÏýá™;^ž7oþ›ßò' û …R©øú믽´cûÔ.~Ú:«“E©°wïΩLæ½ù-²°QO¡·T*yýµ—^4drê:«ë8¥Â¾½»Ÿ{n:“þþE…žBi´tä5cMÎ=͵˜¸~.g¡l…R©täõ™ÊvÊ»SÅXÄF'V­Z·kWäµ×¦2*RBˆÂˆH‰@)!ìç??ôÔïÔeËθæls­zæé§víÚó§oû³7œw¾©·§··§wݺ³öìÝýã‡~ IJ>ßÓß¿ˆ15 sØù™õ ×3…ØŸ_›)«W5n£˜Mj¯Ë+ÁŒÌQG™¹‹Ù¦ âùœ»ʼå¨þ6˜Àþ|Á®$xpðÄÓ¿ûí®]{þôOÿì¼óÞ¨m{íõ×-\X(ô®[wÖÞ½»úуÚ^´hqcΔ Cƒ'õLfè@¡Ð[(¬[wæÞ={zHˤ°há"uF&“5|úé™™0ML ½=…uëÎÜ»w÷CSb²°‘©mˆ¡g¡lÌxD{öî™T¶\O¿Me›’V®X®|ýõ¨–ŒR¢¨”¢ª¤RQ¿zÛ«ÑèÊÏßri2)ZUU–Õ»v¼ôÒÎw½ë]çœûUUÿ­Z¹êýøà¾½ûöìÞY.OXµT"•O¤ò.‡„ë±Odl’Ä™†3:K,žöV“X<‹§cÆ%£±¤‹ Yã³"ææy³OÎf Ìnk|¾ÅÜ>•³xìÆõ|Îýã;§cpÞyz3sì•Óuäìš ^ãø=§’$¿üò‹/½´ó]ï~÷¹çž§ªÊ/~ñË‹Þtñi§Ÿñ§~ÙöíÛUUY¹rÕ>ð·ûöîÛ³û剉 “Ldùå“™XéÀÊU+õLÆË&™È²²s玙( ™¬\õþÉLvN˜e!\¯lû÷ïWUÙX“ýû÷¯Z¹rRÙöì,WÊ6ÙEl¬µåËE£•#GsÚ)›¨ÑTLóÓ“þuøøñþ?¾8ýÖ·öZ_.èðàÉ?üþ§žrʪU§¨ÖΑBOïúõë·¿°cÙ²•Ë–;x—\ZÄ.üñDÖ“cÒ"Ž%Ò®QóœkÕ MˆkÕ Í(ÖôWª•½Å3­J+c„¦¨De*S‰Ê˜¢ÆTÕº/R³ÿÕgMël׆ç|Ôª!xæS…UësÑ̬-µ4À-rdt:9µ˜#]ß!©¥ç´ñnƒ1cÑV¦Ñ®¦Ö'ajcŒûîQ3?ýá÷8õÔS¦†ð‘£GÎ=÷œÏÝòÙ­÷~ûÓŸþì~ô !¤§Ð»~ý›´!¼bå*£ÊS* ×2Yµjµô z&ËW¬d“*ZW“ÉL¦Jxò¿ÿûMë×Ĥ ‹Éò1 dŽp²8xðœs/¸åæO_ûÉk´_Ûtû¦Í·ïxá¹ æO+Û²eV•‰Ø¶lYw,¶âøñ˜6,“ÑɽŽaÿëçãñî›oEÑR³(ŠÅâ±cGß~ÙeŠªØØo¼pûöm#ÅârJí¯Ó‰TžR™(%R9mMe¢”Hæ!•r‰¢/VRBH"™Õ3©–G !qãW+£ÆƒÒìßje¬Î.žÎ­2›úK¤k•q¦DyRdÇÝz'Œñ´MQ+ëk¦–„©VÑ—§RÖ¯!„ÈRe†tR"PA(¡"œèC)!„zpÄúxcŒÚßxò„ Ø´.§7ºôüškÇÕqx4¨«jPZ,Ž;vô²¿ø yj_ñÞ¿¾â½MÿЇ>|üÄñB¡05„Ÿ) ˆáᥴX9vìèe—ý…¦‡½²lÙRcyú=Jé”fM^JÅâ±cG/ÓÄdª‚Ÿýìçîûö¿\ûÉk>ó™n:SL‚šV§l‹/üìgoúâ—¾ª2öÉ6oþú¦Í_ÿò—>ß7¯WQ• .ЕM°²/#6å’ÅÉhtåР(U›²BÿíÁôùçGÿâ²ê²ee¡T(•Šñx<ŸïRgªðøøx:=ãæ]„D".I5Y–ÁÙG›Håt!Ö—Éœ&ÄškB¬/B*åQMŽãɬ&ĺ"ë¢<õs²|]‚²OdtQÖÜz‚Ze|Z‹é¤›"OÏbÞá0Sp“ÑXÒÂ:fS)'Å7KHµŠö“P&t…ñ%¶IsƒñtFÊ?ˆ~¾F›'ÂŽû3w;1eqÏØÐl僧ÅâäfªbÜöøã¿ºë®{Î;ï ÝÝ“£[õ!,‰‚`ÌEË$×Õ¥ªÊ+¯>ÿü7}æ3ÿ¼qãǵí[¶Ü±eË7žþé æ "­Óƒ”Oe¢(úŽ÷}û_Þö¶?ùÆßJgÒ¯ù¸©˜0Ó»ˆºƒu7;ͨl2!äšO|Œ1õË_¾õ‰'~ýÄ¿ùÒoùÈG>4Õ,SG¤È5/0Òx÷®ËߢEäCJe2¤R•R‰É#¯ÕÄ÷¼'šN«ù\ÅàA7ÑLUUkµZ6›Á8Wc||â²ÿqù£?ûq"1ÃRëêÊ˲*ÉR<s´+Eý@*%“å’ßq7ó¦Î(Äš›:‘µ:Oj±¥›ØäàŒN‰X<¥¯!.Ü‘⫯ŒNÛËF㊺9ã¬|EntÞS?âÚ¼Wj˜¯’½¿Ä\–†þ’Æ Š29„A¨ó$|éK_Éår7\ÿ)ãÐîêê’eU’$1×sQ6¥”©ê’Å‹>óé¿ò•Ûc×\sõ–Û¿±eË7¾øÅ[æÏëÓ²Ò3‰ÇczΊ.&tRL¶Üþ-·ã‹_¸å£ù»oݵu2ÃO\m“Ú”˜(Á3•ê‡͆ýú‰ß<ñÄoÞöÖK?òáÍl–üäÅ¢¦—„ˆéPÓ’Š"ùÔuU‰ÉRU!„çå•qqPο&Æ2”¤„™¬™Œ ‚Íæ$©V­T¢Ñ¨¾-™ˆÿì?~‹FõkÚ”¾Ë©T*OMÿö2kãñåmyÛ²Mmdã_<‘ÖLc£k‚ßSlDÓb‡§(µ²fOù(ÊZÎF—EÝ4uÒ/Ìc^ýÂlÊ·Á¬ÔU÷•2fbUS7æ6Ÿ_˜¹ô ót ¿°ÝÔ‹ß3¹u^^Vï6ìg2©„Z]ëXÃŒljsE4=j&ŠÆ!<­‰ƒƒCÇŸ¸ç®;W¯0ŽâZMš†G™løø?0ƾòÕ¯=ñëßüú×O~áó7øïþVUÔ†Lt`¢.&ÕJ4{åðá-·ã Ÿ›ÜqÃÕÿÀTöÕ[7½ç]—ÏŸ?ßJL‘à™ÊVÕ•íö;¾ùįŸ|ëŸ\ú‹_þç7¿yÏ'6|¬QÙ´YÌïáG¬äF[÷òÉ—Fj¥ÅÉE‹2…¾¼òÊè«Û‡^ÎÅ2 úÖ«ŒTk$·™Wƺ{zT•ŽOŒå²¹²‹Öù($I¢‚˜Íæ*¨Îõæ{ ™£§x¦F§ !Õʸ©äê6r­:Nì§M™É<ÖÑklí»0>K"Ä¥šGxÒ%L]ú…­g­ïð ÿ-1Ÿ¯ò{›žÆköòÌOž2È]Ìz4ßÂaŒu÷T•NŒesy}[wwî±_<ÜÓÓcÅúaRšµçdRŒ™|üê o½÷þë>õÉ¿ÿ»¿Ñó‘¤Ú¤­o¦Õ¤GUéøøX.›_¼háïŸ~rþüyúŽ¿ú#ï~×_õõõªª"É5+11u¹{è%uÊöõo|ëëw|ëó·|úÃÿ·wßsßWoÛ̘ºáãÿ`<"*LQLë™nr3!>2úÚ‹ƒ;k½ÒÂt¡T®}ׯå‰ù¡x”B’q+›ŽBT¦äóÝK–,Ý·ß™ëδ?®×¾6¯oA6—cª25é€ÙöfßSÉ\¥\4Û‹6Ü@Ö½*`þbA<™á®ƒ©òLßÑת¦òÍjÕñX<=厯+HÓn]‘c™Ec)BˆT›jÚòL·2³f¸8»sèzõ×Ò 3 VÓYð æp Æ|‰‰61¦jCxïþ½gžy–¾~bbâ=W\õ“ÿ»Ñ©øú‘Wçõ-ÈårÌ ž„0¦*S™ì3fòÏÿ|Ý_þåÛ×®]c|tÿú‘×&3Ñžï1}j‡j“³!½}…ºgþú-“l.gxÆxÚ‹×#1SÙ~õëw|ë–›oúЇ> ¨ÊÇ>öa•±Û6}ýï|Çüùóf(›ES öú6V{öõg_8¶RòÿvÿŸß¼úäâtOl!d¢F[›•©J6“½hýmßþÂðȰjM¹\~þ¹mg¬;³§»k²áüø³¦ljdž¢i±ö7‘ÌgSÔeQ-—!ñ¤ÑlgS+§ŸæBª•QBH<‘šÜf\™1:Žu…ùôY§©¥Ú3=íùžþSb̓l0„'!ÑXJ—c=gí±žõÔcC…ô)ÃfÓd™Õ^®fâÛi¾uÿHpÿ3gÞÀqOæ0mÚuy–áô¦2Iì&ç†ó®i_.›Ó†ðˆa'‰‡~ôo±XÌd÷ô0¦ÎŒdÌdxÈ8ðO?ý4SèîéfêŒGÆLU²Ó5²“ÊÄ”˜t[Îyõw_6SÙ†-ZøÔoÿÐß¾_¯ÃÇþáïûßÿÙ××[.—ŸnûëÎìžV6Ñ¢Š"W’Dg˜¶øÅõúÌÞ³nºèÿÇ¿½;Ïýæ¿ÌFóe²BI G˜•E#¢Ê„gžùÝóÏ=óÇ|q6k23¬R­<óôÓ§~öékÖÆ£†ÉÔƒÉDÉôT¶¢Ó>ÔCæ.6¾"<е8*îfcŒ2¢*Œ0•©Œ0•)Œ¨¶3ú©{“™6:âmç SÊ|ù…ÍkÊxýÂÔÒwÏqìÔá]ì)ŸµÕ!ÒúžÀÌfÚ«AgÜÃQ+¥î˜™Íyý!PAQ˜6„ßüæ‹33]‹SöGåé§wÚégŸ¾æŒdû\AùÙ£gžuÆÒ¥K㱸惬֪ǎ{ñÅ®¿d`` *Š4£½(uùTË)#uΆ#s·ñÀ¨ƒã”5Žb·ïéRÓnF©UãLú€*ˆtÒ<=e˜úzK˜Ù¨Ãj€ó×ç{½þ"9yy<’æo~³úÕÌÞ ï4gH ÆÔH4zö9ç ‚ð³Ÿ>zæYë–-]‹'´>R«V;:5„W§’1U‘M²U•Hd*“Ÿ=zæYë–.]Oé@µzl:“d¢>“©ŠÈ‘HL“ŸM‹IbJL*3Ä$›“ɇå4¸‰èŒ¢ª²‰O)ÛÏí•-(ŠdîÈ4·…gr²|réÖS´å úÏûÅ{­IB&ÁTF4+XViD00­Å‘H\eÂÉ“Çó›'^=|@UÕ\.;11!F¢K—®8ÿ‚‹zº{D‘(r¸1ílåʃ?Ó«iìÂ~å6S½[ÇÖB½TÌK¡Ôk+´Ì] ^Ì÷LaÇ gèNQŒ* ±Â…î1"¨SV”™ÍGÄHLµÍ¤§»'"Ò¦XcM"qU¥Îb¢H$¬ÏVLg;¥l'l*#ˆL‘j6ÙÅ“9M…‹ÖñVØiÿrÖxuœPúýw9›0ªOŸ|®®=˜a‰X¼\­é “¨1¬“a7-Øžá7eŒÅ㱺ìI(%lƦ©©5Z-¡õyNWq*r#Œ1B Õ[@­ ÿGµz›6Õ†ÊéÿMÏΟQ©fcÆÆ1¶€Þ:¬>žíjøÿä/ª½ð8ýc:¡Œ*Ë2¹UŸŸ2c…öƒMnez*JcѨ$Kú{@úDJô¸Q“;i…'÷Ô·BÇcµZ¿V>ù$Y[šš+B)aZ6•˜Rª^’HÄg&ÑŸOfl•©F™<,6™éô±Z©U§ÎІúÆèŒ¡djJK$“uß^oðHPB‰Ð0¨nª 57øôffêäg9ê­&ZŸÒμR-@Ó|(uc»S[ã•:Ú¢f¿©+Ó–çw_Þ¬³ü`§Íݰã¢Ñd`/sY™ŽÖ¥ju€qïl:sÛÙúæÁb¾ ê65–Ç,oS&ß@©óHDHÝKŒ0¢8¦ÿÛ^êAr‚&êÏíëÕcÜt‹vñ&ÏÇEk] zx-S¹õ¸’÷NÆšyú‚ý‚‰‹š²Œ4«S›u|!{X`ƒYwj¸(Ã6¤: h&2o˜3Ë ™l06ŠÌl$•9¿€à¶ÓfõI_#'Í _y ×›Ó.ô×½Ó¸}ô—pÍ9l†?0V#˜LƒÌCÖb“ S&ÊäâÝ»}˜©{‚ÙU¬AŽÈZ‘)ÿ¤î2Gõd,ÜñÓ¾–²ëX1žz EÁÜÎ\‡ðgÔ£YýÇ×ǸÃPá¦Å&æñg_»jr³s¿¸æî%:f!Ƕã­ ³QdJËx RÓAïüílõHx Žè3­ç @ሯû1ß›MúÛ|n-&VoŸ!Ç”ÿ<òyÜÉ1iüŠgEv+ʼºìhqktÓTÛ£²¦è‚㤧°•7<ñ Óøí`ýÕU˜¹°g¹{3½Ë±WÙµˆ:‹²]vic; 2Ý•×ÝBt°àvòù~´ucº•]WhŽê/k¡-Ü®Zìd‡!Ç^ d÷62‡({Óež¾ë;‹vñ³p2D <ÞÔw²øv¼ýkã‘`­ëßhq@§ÕâËãÜrLÍŸÑØºMY}èGN×õòÍ–†:QWÓ\<Ì›e¯œ°`Å5ôXpâè¼ÅÏÛtöO‡ÜfúÛ¶pàZkeÆ×?©ûb,¤×n76S‘ùý3»‘ëØ3+]¶+šñؾ®ú7muÇ }'ìàw3%ˆ9o>gD¨¿^¼-õ·ÝTØZ‹‰›ˆ¾ʱ.PÔY;©«š8¨¬¥"‡/Ê67Ÿ|“9û6m×!°ã!¸ãò%»ÄëlãŽ_'JÛÝŸµ› ›i11~ÑÕ­¸áÕ0Ú‹ÔAEøg?xPdâÚÜ8kúÌISiÀcªÍ]! c¡WÌGðâ&º4~Û·ÛE:¡Ãûw7 ÄÉ@æSIEv6©—Çi¦Ã›Ò`Ç sãs mÓÏZs¹ðô~ øP|*o‹Å·ƒœ§Â¼nŠöã Ù™ìÉ}®4gzq¹6:Áºø…BŸ RÞöߎ¹çê¶5ÛEŽ §™[‘mÍd.]æxÑØ›dPÚ~½b6H­Ó!1T BÃÏEñíDö%Ç'O>÷üó¥Ò(Ñ‚’2†¿ø‹¿žÿB²Ùì¹çœS(ôp_ž˜,Ë’$Í>ñF£‘H„zµN¨¢Hõï=6>ãBã_BÈÈȈ®¼ú²¾Àï-á¬3GúéFjÆ|aNmõlÛrîh:ÈM;¢é Î}ùMFÿƒ©‡Ž§,ž‡H²õ knÛ„³©Û¡ªk_svòFlÞ²å /Xµ~ýú6Œ\Z IDATM›7 ‚½Ö0_žŒŒŒtuuiÂj\&„tu9¬c‚æy$8ÕÜ4™¾R[+ÐÅq¬t¢n«iʱ҉L®Ï&%OþMðHè[íÓ“·òû:ëf“ÒæñºibmA¿ ˜VÞU{Ú´›‡¦n‡ªèþråûr{7V×DV=°qZŽY),™ˆ^÷O×?þøã—^zi".šZ|öf ›d~[ب‰ÃÃöððð°žÆ˜ÀÊF6Moº²»»{xxØtËf„1×aõ¨¢HåñY>yv×î=«W¯6ÚÜÏ:«U›_ÕÎír” ¢U‰±ú÷$IÚ»wï)«lv—$yÏž½gž}~­Vóð^Y§ Šb4}aÛ³«WD£W#±ÀÛM}ÓzQkKgL•å*ú@“<Ždr&ر҉6?Ⱥû HpHtPú­ªÿCkùìð—ê|û-ˆÂ¡C—.]*˲}ÊžóhÅCCCmÞ£¢Ñè¡CÑË“6w*Üþ‚kJ"—eÅCèO€ ²¬Äãq h&Þ»gg¡Ð›L&dÙÎ)ц“y¹d4Û³{çê‚àzªÙœðHÌ›×7Z*ÆbQÛàk“̘"+£¥‘ùóf(‰¢ØÕ•ïîÊÿçc??åÔÓ—-[>ûÚb÷î]{vï\¼¨¿«+/Š¢ÛÝçÄÓ9BH¥R®Tª®¼æõ™¥Ö뙯Í.‹$ÉÉd"O8¦TUµX,½öÚëGŽ›•¡yr¹\ÿ‚ù‹-Ìçs‚àÎ)‘LuÍž“ÐB¬ƒ—W×úÉ:¸)+—˥ѱòDyöèd*™Ëf’ɤ‡OÏés$ÆÚÜêjt3O„Φ N0Ùlí‹”ÒT*•L&c³òèÜëït;ÌÅ™jÀÍ€§~T‚uº³¶Ëhî©Õì'‚¾‚–:ÛUĨÂ@¤h*š ÂÐt<ú…c²¬HR­ã8E""Ô:X…%I®IJ>_èJ$;•rqäd,™ïÑæ€ ˲<OiIšY cA°nÔ1Æ^T5~KÿF‹Ï¼yÛÝ~/jfÝ+²¢6|Ü0Ä Qu{œÒ’:4³Æ‚ ÂÌTa6ýY6?O±ë„¯¿°ÉÌ(ª¬šyº->U[xíÕ]¦ëõM‹ŸÚ˜¦nÍ´ú›­l¬ƒ±”º‚ê6Õ%¨[cg5LÛÁ´n® `ÎbôèzöH0DÝÆ’éîIE&„h? !úóÀdº»<>¬­7>$œ±f*[›Ýù×íʼn,›HϲåkÜ¡‹Ž¾l\oÜÔøqC«Ï 㬃± =7Y–M+#˲UÝüTê|¨WaÇnŒ1- 3Kl\316Ä›Jez´emAWÏÆe}AO©©ª–­ýîÆü{Y¥†caŒ¢ªŠªÎ°ØV¬Zw`ß ª2¹òÀ¾–-_{`ß “Æ2#±ª¨u êv7½`9Ö¡± «Òùz¨FÝèËÆ•u‡oSЬŒó @0*ìÊ®C\ãÏÆ¦9Y­¯Ë“÷ºš˜Wžš€¬ÁªÌ|Hµw÷súã&«õŠõ3.ª ¦F¨cLWÚü4ÖÍO5LóoÌÙª,Ó‚$ØøÂFA4𮯕~ò÷¹{€ìÝýÜÀ)ç†W–^g)¡Ömà”sB=X Â.Œáºg\éLa|lp¦ÅÉŒ ÆéL¡n«é.žw'à&í² ÂÅH×&Mõ¿A)~ u´'>îÙÌÄâgÃB:S0ÙÊÒq÷ Lÿ™J3èLÈÔg²tN9§n¡1%™šjB¼Õ¡qeÝO›ºy®†žó¾=ÏÛäl[<j 7JÙøè`:[0þœ6“³…ñÑA=A]Jb•1¥ãîüùsÕ¾ÝϯZ}ö¾ÝÏk?Wrö¾ÝÏO§aæûNïÅýd‡–eÉ\ýôTúÃoHfžÀ±  Âþ,á:<Ù8@§V2ãòøèIÃcÊú½ìW·ZíeVuFM @ʦKïÛ³mÕê³ôeÓõu›ôìì›Ïtj¶i̳ª[iøé\7÷ÕÐ2\uÊÙuyêk¼ ~æHtîl#ÊÌeÍT)öïÝnš‰ÕzûMö¶acL³ª[Ù˜†«AWÃCAâoŽÄ´˜e²æQÇFOt8·Aq´=Žšv~ó0<‹r¬tÂI¨Û fzËìó®yŪu+­Þb°rð×ÁUqn=ÆõáÌžPâW…îÑUq>ëàª8?Õ¯ ñS­Ã[6H¥šU’Š‘–ס™Õ0-@‚#ÑA:L‰Ä’åò!¤R­BD*(M< ˆ jE·°ͬ†± I‚"ƒÙ†Ÿ+RE–&Ƨom‘$yÏž=gŸûFE*+ŠÔ¹M‹§ !ÑX ½àŸÑÑâhi0•Lr\qÒÒI¥{æ¨UR«ŽB¹†ÞðO*™J§—½rpw·û+FLå™ÃÁfÁÓ9E ‚“r-‘êÊæ ¥ÒÛ+âí~©6ÞÝS)ÅÝ÷é¡ÂŒY–*åɯ8B… 3€ T Â>Éæÿé+ëš@3ËŸ9_x´xÔqMhI¡àÝÖ‚B„ÂÔ,­³—Ó×mÕWšîn“’'±ÕŽºê²`maN]ÖmUãrcӔ޻»* F4 ½<Žæ°n2›Úκ-Y9Ú˜gã‚i‰¥‘£)MWjË¥‘£Ùü‚ÒÈÑ\×=gâÆÀ«}K¼¹‚´…âkC®Ë׿«Ý}–Mµ…›§X²»Ï² l„)KºÑyL U~ëUO©{Ü&æÙB`Zu›m kÂgc¨ê ì·òع®kJ E´Ö#ÁÙÒ(äFÉ;Ò¸»¾Ò¸µ4rĶ86•€™ælº{CþÌkb<¤bçºóHh í¥ÂӠ ¨0¨0Ì‚|wîäàÐóÏ?_*B(¥Œ1üÅ_üÅß6üKÉf³çœsv¡§{ö¨ðÐðð³Ïþ~þü¾+VàâhsJ¥â³Ï>{Áùçuw·XˆSá={ö®Z¹bÍÚu8»€Žà¥/ìÙ»ï‚óÏkm5ó ‹‚0þ<œW@§0þ­º˜#&LLL|ø#Ÿ˜(O =…BÏGÿáår9$[ØTžíÿë•Ð)X©Sùk_»]Uä3×­½óÎoœ¹nm­VÛ´ùUUÜk£UJs@þýÁ W¯øÚ¦-ïy÷_ÝvÛ×V ýà?Û…dªKÿ[·¾î_sjà.üÖ£«šØ$vÛna7²· Ý|O>ù!äÊ+ßwÆÚÕµêø™ëN¿â½ÿ“òįŸ¬V«Áa†ÏÅ;=- žòÄÈ\8©ÉT—ç#µ—`·Ù6­ÁçÈ™³’t:ý7ó·„Ò‹.4á·ÚôÄú.Æ}M—µal“¸±t«Iq/}6;¡z$ˆóÓ¹ö¶…[èð§ÑgàJ›×Ût³±n9¤špîhU?Ñ,]½$ hDÇû…y"[ò›ŠŽÃÒU,…@su.¦á;lš.Ô‡i0x<­ñHx³‰8­HÇâlîôç‚.4ú웎óÜykC¼ ³t¶“žÎ%Á¡NYãœæG—MÅ…Ý®v ÜÔµúØ] ç€YFë#[òGA Ê#ašÒU4ËV5q®Ó1½1,'qÔªnÆæòSg1h ÌšNòHîÈ–Žñ!9Ÿeñ?òòõ‘'^%q®“¸xiÚžn?ÇytöÍåöˆ<×þ Ðn*xYxƒ\Š-¬«{à¹laÓüa €×/ì(óú¥ ñš’Ç–Z}W@ßZ'zÌ<^=ŒïŸUb7Vj £}a[£VÖ1¬`:Çè51Þ9¦èJEuDx G=òé1hC½ƒ[˜ß!AZþss"0„mŸÂþ*ìY‡#Vòl¿Ÿ©Âí›sP.@k½ÄÇ+¿¦oÎ÷¯{xƒ9@n0„¶BZÿ³}à4ÃÖ`t¸•ó…›0— p­Í¶*¬ªj°Åµ ¾pØQ"õüë®{(Â>Ê¥ÿüí©Â”RÍÿK§Ð—1܂ȖœQ"ýçFæœùC‘€ w€G:Î#Ñ‘¶0t³Í#e Û¨pàOçà‘€zö¼¶0À¬òH„4Í>OŸÓx=ä‰ÃÌ&[¸É*Ì‹#á?¶¤‡<}¾ â!„² ·…èKáú…Ã0íólþËr°‚˜­ SÂöHðÄ‘`‰Y;Ä‘h~LaH0kõΔ²@âH0·b Ó!®Á#ª-LÂó 3K[æ¼…ÜÊ8ü æÂ!CЦ ÷žÔiÆ!Ñ”™j`láÖ¨p±Mó P—í£Yæ6*xY-þúgPyÚÏ ¤Çü¡ÑÌK9€Lšé‘x$x=á<œ€¶T[OÂ¥«°ÕÇ7½}ý3ü ÃÐ9„o 3s[iþÓ9Sy¶5á |€Î‡™Feðú³iž®U8xx¦©ù™fŸ¿ÿIrˆr láfÚÂÁK°ã”[?a!íó÷WQ.€ wö7˜›ᬙÀ `.z1:K…=Yw7˜Ý¶°)æ‘hšÚ®¤)~áVÚÂN@ÇÑ‘ µM¦ºê¢ó@Íí¬³ù f+‰ $b$ÐѶp„_`; ¥}þ¦1*](—ÌMµAUÕ Ê¨·…Ã’až(”ÄÇÔÇüýË%¢\0×PU5t¶Œ#ÁÜäÀìÔÚÞè%><Ã#ÁœM]>„‹]G0[e˜¹´…ƒùðœ€óuÖ®=Á”g¦ZРÂ0¥À”F£‘J¥bc—ËåHT ð%ºp¿þIZyÒø2ˆ·"¼Õ³ÙèDDQÈeS¿ýí“çŸA4k”àJ¥²}ÛóÙLR}™°FWt+#[6!ò$ñ7oÌ[ýÜ€ÎUá|.122ø£>(ËÊLË”BbQ1“Ig3IA Ôn”gýf‰÷ c^­}a¤VÖ±ñ]@;Ó8›!•J$“ IîªVk”RA÷GÂq"APÞÛ'h4À• 3¼Á ÍezÎ0žÎ@‹masy¶Öo·_Û€¶5H[ÿs„ÀM—x$ •¸ûú§•!îÍš€Ö¤>''0—ëM- ­* Pa˜«„þÅ#õfÇÁ€–ÛÂòl£ßxi0k ÒÖ¿´1i 3ˆ(4ù 011AðtZÂÄDùÏm/—ËâH˜ÚâÖ4  Ò ]¼b˜J%ßpîYÉd¶0´è"ÀGZ‚î‘€ @ €GZ <Ð2¬æHOã7Œ=l%3?ܸ‹Ï•ÄìËÊœ»+Ù˜Ø[ž~šÈg}Üînz ®Š¶?¹6y0;<᪰qìÙa«ÏËóìâseãPwµ»Õ!øÉÓOù¬«Ý­jâ¸/ÿÉu<|:—d2ÑÖ‰¦:oÙïbš'††Tsþúpîî³hŸõ`6¡ÙÂmTÍþf<(Üf®ÕÊ^•š&(œÇh¿»M†œE»:¹0„Á¬cúH;WÓþVݘ¬qH›®t¼G¶ÏÓÊ“à߆5UvŸMÔ†·ü'š æ–-l°„ùƒª‘°¿M»¡±šÜ’úК+@s<Žbg³†j—Ï•„{€Ÿ<ù‹£‰üׇ§‰š³/³ ÷_<2ÚâÖ9tAøÃ9âñ‹GZT ÂÐ|šGÂ~¨ÍVþ8‡ö#ÃHl\MÏ[C éé3 §UL5ŸíÀ,‚Õ©pˆ8¾(Ì£ÎöqmÂ?òŠlBM?A,›Ò“çDØÔ¶.‡ Ú€9â‘øí9ÏV°gkÈ~[Ù˜øfÈ?ƒ¸9ï û<„o¶øí¹pma·ï#øqq4†%㿽›7ÂaDøÕNÿײ¡Â`îÐÑ|x 4Ó»Zþ؉œ!4½­ êhÇ+–ùŒÔcl1·ÇÂSó@‡î0³Ž?„&ÿJG DelŠP˼EõVs(/€ w€!FìDWêÌïZ Ü kÌÐUþžëã*N¦iY>kÀ,¦­ç uûì(ë>}­’àæÔ‡ßÉ[žÑþ7`¶p›*/œCþ(”ü±%}® <ˆ¥Ïšû é3ȧϚÐ4ÄHÌmzµVî v5SÂñÛB~aäI‚ Òh“Ïš»šèÿëÑ<_ÿ ü‹Ôøõ •©œ‰™J!ýÄÌ0©ÂŒ{ưÊT¨0I4–L§bM !±h$KB… 8[XŒ®Y³ŽR{˜RÊTõÔS× b4r#hz „LŒ8e].—?|x¥\ST±@…T.ÕÝÓ{Úš³'ÆN@… 0jÕqJè‚þóû—ÉR¦DˆDc”c¥cµêxg¨°ãÜ#W‘-Ia›³{x‘-‰§ð›Ž·(£ˆc Ú™ju¬zb¬É…†«ÂŽïìºlé?lcsv<²¥£ª6ÿpø£Œ"Ž%6„ûtÎq>xcÏgæü1ƒj Ç[ôΠ¢ß9¦„ÚÐlD«d ³U¾o‡ã3’$ÿå!+h¥ {°L½ÅNlááð—îÍNw~“Sò\…Cs%£VÑ|Œ ø…Aû³wßþõÿ^õ¾wŸ±öôYh ócǯrpÆ– ÉènBéüá7é}:"Lû¼„x8¿´ŠcÇN\qåß¿úêëüëwvl²¯¯F)Íxk£ cLåÕ’ÃqUz°­ÑÌç?¨*˜LL”¯þÄ år¥Pè)z6\sc¹\éHn€l¦ýë3Hc°á%]E¶lZ C‚Á,@Qԯ߱•0v溵wÞù3×­•eùwÞ§ª,ð²BŸ©F\>V²÷úŒˆØÚ ö­aÙ²µ­8–`®ñÐO)ޝ^=põǯ9ý´«W l½÷îá‘Òòèåõç¤Â>iáÑUDDŸA9?á?¼$Ï.­m¦Å å”Ëå§žú=!äÊ+ßwÊÀ¢òøÐé§/¿â½ÿóûÿßÿûïß>óö?¿4XÞ`€¤Ré¿ù›*œ÷†3*#„J¹tñ›ÎÅb‚ Äq‚ôK@…`Œ©ç½á BHeÆÍèðç­cL­VF;É#H¥\2[Y £,Ä€V€VÒâÈ–XÁ Mø—¾ó/|‡f¤1Æî»ÿÿ<ð¯ÿ·ó<þÇ$§qÔñËÿ«Y¦QÄüDhtuDMÐAþ&ò_s……ƒv Týôg¿L©Õj¿úï´•ßüÖý_¹õë„÷^qy&“î[X~ö#Ѓdzw\'ÚSí0½å7 ÆX·»éJ›[éÀ;Wñ|Ѧ‰¼\-+Ç3îØn´|>¿aáBD IDATBÈ翸é¡ÿŒòà~¢IðÆ3ÙLçÙÂÞ""ZÝn›Ærôÿ]ŒÆJò¿³ËÙ²å·Û~ýK]žSoýê燇‡}ô‘[>Ûk¯½÷¾ÿ](ô\vÙe_ùòÍåñÁÙæ‘àùú§£8†dNúô ØÌ^ðV?†pP¾‹kÿh[*C[ï¹óºënعóå_þòW«V¬Y³vóæ¯.Á¡{$m{#Kžëá:ÏT„@îˆù 2=¢¦ù"ü¸|ž 8"@'ĵÊðm_»í /Xµ~ýú[o»µV"¤Ó"[ÚG/4‚ÈyK<côw1¨ –ü‡f¼Ó'ÜÓ«?FŸçÂCß üTýÔ§þé¿~õ_—\r “‹Œ©a˜ '“ YVøïÖ‰×`‰­»HK‘'ù›1¤c ü\¸­*#ËJ"‘°I ªrT‰Dc çr¹ZÌqJ¥ÒëLJ •UXV”b©¼úÔsS«ÕZ›Ô?“Ée2k÷î~.ŸOGÄÀì*¨p¸‘XOW¶««+¡5À\‚P©ÉƒÃÎ!zGKc…¾¥ªª´kæy"ï),:ÜݬYÐ3Â&‰¢Їƒ£_UQÔb±T(Ì3 –ÛZ$Y.ôö‹%E ,Öp`¶ð¼þÓf܉Ùé˜Þ1 g¹ähS+Õª$Iªª¿EoE.—+•Jökø·:ÕI’\©VSƒ²bƒôHÕâÍVá:E6 ±n)kk´Ÿz‚º­¦»ðäc¼h›ì3lLɳ—ÕJ¬>Ql³lÜ¡íÌ=[ï#„\ý±ê>ÆØÝwß+FÄ«?öÑVÕJ0ÞhÿjF±–À³uܾ*lå4Жݸ•eÖ7–hŸaã•€g/«¬xÐ>¶¦ÿåIß(Í´!ÅRéºën$„Ôªµk¯½F[¹eË·|î‹„÷_õ¾l6ãÍà-™¶&ŸÏ‹E]sõe=½¾Ò¸Õ}\ÑŒ§sö:å¨b<»Xeb\HAÞÐ?… µJ>—ß°a!ä¦Oßüàƒ?$„|ï{ß×$xãÆÞ$ØEé3qqñàPÞÙ` “†gwŽ[uG•+ ð:ø¯›[sØ›€v…ݾeÓððð£>rý 7>üêß¼«Pè¹ì²Ë6oºMUÃpV'¦F!v%ÊsÅ#Á¹Õô®ß³íi_·Ö®g„.©ü #ÃLºÿÛ[?ùÉkwî|ùá‡XµbÍšµwÜq‡g fŒùôHBFFFW6.pz:É#aå®å´:…Ò³QìG?öx°62í† Í[¶\xá…«Ö¯_¿iófA`mR·®®.Εl ›Z²Æ[xã½<™ù„­ñN¿ñ®ßÆMÁã\6­ç^<ÕpeØrj®î,Ö•ã´¹AœLD¯û§ëüñK/½4ýþmáááa]g‡‡‡M`=qk“ma*I•á“9S˲¼wß7^ôÖ‰Ñã’TFsdס₾žÞž<Ḭ̈…Áì€RA£Š"16ã³Jµvr¨xüäÐê¥y'9xÁ…o­ÕjŠâësÝÝÝÃÃîvE1>ó»ÇV-¯‹é¥’éÞ§Ÿzl`Õ þp?Ý…eˆ#ºiàÖL ã;=Se¹ŠvhG¢0õ6tÄ[|`ËdÚ䄃÷/]ºL–åð*244äÖÃˆî… Ÿ¨Í6n7Á©ZϦâR­ÖŠ£ã”88(RéÔΗ¶õöö%‰ãæø•KQù¥m+–/¢40!†G"\úºdž«¯=ѕˢ€N²€)V*ÕþÞ”ƒí" ù|.—+þü‘Ÿœ¾æ¬å+V¶É!ìÚ»gçËÛ,èÍçs¢îòÙ” ”‹Õ#Çá&sxTX4/‘N&S¦’‰Å‹úîÞµíÙgŸl“úç²™… ûö/HqT¸È¦“ðHà Aòùl,í-ô”Ë•6©U2™ÈdÒÉd"ØûZ¨0 ¡”¦RÉd2ÁXûT‰„áW„ ÚZ‹gýó|ñ Â¨0¨0Ì‚Ÿ©ÆS¥V“ì“ÅbQQñR/tB0wUX–åJEîé]¼ ßmŸ²X:ùj2áÄ :!€ Ûö~E)–Ê«O=‡©Jµêð¥©L:›É¬Ý»û¹|>Eœ €N Â~-ú–ª½Ÿ"Ë$‘ˆ÷ îîÎãLtB07 ì霢¨Åb©P˜'˼_(‘$¹ÐÛW,–L㇆ô‘M\•hú1éVÕ„× ëþ…ÚÇül $™ÛDWo/[˜1µR­J’¤ªª}øúýû÷ç;ßùà?¸råJI’+Õ*cêlš­ÑŸö˜•ðwBÃ.̾ÖMžOÍ¢ûÖØÂœ nذá?øÁ¿ÿû¿»ºäjWÝ:{³Ñ;„¾¾nÁjÙ*™ú¾½U2}«iÎÊÛÔÁ¦b ØNè-™Í™å?¹V¢Ù¸Õ¦ºê-öÝÕf«ãX¥GOn6EUÕM›6>|¸««ëÖ[o]¼x±‡[-cOå?Á-ì ŠFÇm7ƒ—ÿì8nµ±[ý”Tmùw´R[ôä«ðÑ£GúÓŸ¾ýíoïïï×Ö|÷»ßݶm[&“Ù¸qãºuëÚdPñ'3#ׂV]GM @ÏÌgGmŸûýÆ«zrëU˜1Æ{ì±Çžxâ‰íÛ·ßpà ýýý¿úÕ¯~ùË_f2™Ë/¿üâ‹/ÖnY+bèsö «Û·@„ØÞpÀ}\P0XDãÙ·¹Ç÷)”öùUJ€ÊX%ôd·„õtîmo{ÛÂ… %Iºë®»žzê©|0N_rÉ%ïxÇ;Â6cÃ6ŠÃ¨eÌ&¯…739¨]š0 ì÷¡?´‹G¢¯¯ïÚk¯½ÿþûK¥ÒC=”J¥–/_~ÕUWyxg_¿Ç±w«ñÜ 9&0> 1½Ô{x@ÇSÜÇuŠw¢®'XǺ­6ØÕ.uýÓqDð,W½Ô*½éØŽPIª Ÿ<È™Z–å½û¼ñ¢·NŒ—¤ræƒ\øÖZ­¦(“sæxàI’‰ÄÕW_J¥Œ»ˆ¢FŸùÝc«–s¾È{àÔ?ë;¡=:!¦Dc©dº÷é§Xµ‚¿/u–…Ûí …Â•W^ùä“O^|ñÅuìíö €GÂÚ¬„ƒ÷/]ºL–e}å’%K®¼òJbö$Ü' §ë?¡ÅÀU'´³_8:!à›˜­WaJ…T:µó¥m½½}‰DÂô­üG„±±ñ—_Ú¶bù"J-ÇÎ+hy'›¡Â¢(äó¹\®øóG~rúš³–¯XiŸ~×Î=;_Þ¶`Ao>ŸE €N Â¾I%‹õ ݽkÛ³Ï>iŸ8—Í,\Ø·°A*™Àiè„*‚ äóÙX,Ú[è)—+ö‰“ÉD&“N&øÞ @'PáÀ ”¦RÉd2áøF¥]„:!˜Ó*¬ômÐr-F'q‡&¨0@…ùáС=±Dm:ñDæÐ¡ÝÞrçÖfÅ¿üâö¾B!•é“jchzˆÅ3Õjù¥Û—/[âö w*,ŠB>ŸÏæŠüìggœ±véòš8Âðñçìß½»w¾ôòŽùóçåóy·o¹‹©FQUµT}ýÈÑcÇN”Fa Ée3óç÷-ì_Ëe7N /1ÕAÈçs±XŒgV<Ì’ÉD&“ñö—ùÂÚ¬øT*‰¦Ÿ`¦@…* * PaÍÂ{L5Ƙ¢(µš„FÌeb±¨(ŠžƒøyTaY–+©§wñ‚|Î`.S,<œLD#/ŠêeYQŠ¥òêSÏQ•êøØÎ`.“N¥3ËÏØ»ûù|&"ŠÍPáÑÒh¡o™ªÔÆÇ‡qsY®¦Ó==…Å#C‡»»»Üîîú霢¨Åb©Pè«VÇÑú@©ÖÆ ½}ÅbIQÔÐU˜1µR­Ê²D¿êsƨ,Ë•j•±ðU@€@…* :œîžÅÚ¿&êß&×€F"hà_ ‡‡^m\î:«¶¶0v¬‰šÑºl´‘µåFÃÙ&¥+s›§DcÎAÕØÂ í¬K+Y_n\pLionsæ£]*ê2ñ_[ Â õv1Ïm>¿lé)}*ŸÝƒ: Â IVpã½+÷œ ™‡Éy½* ÚÅ;á3e }Ž  à<†6ª”QìM‚ƒn<”°…Aû ±Õ| Gïª}J=Aè»­‰q¥Í쟵ÀT’*Ã'òï ËòÞ}ÞxÑ[k•’¬ÔЂ ÍéîY2ßÖ*,ËJ±8ºbåÆÔjµjŸ8•ΤÓÙ^îêÊE""N3>Ù·ÿÐÀÀÀÂ…ýÉd ­,åòD&“Ù¿ÿ•sÏY×Ö*<::ÚÕ=Ÿ1µR©rH¶œHÄó]óFGO„aç0׈F" ÌÏd²hŠÀÉd² ¨###çäÓ9EQGFŠ==½’$ó»/zzzGFŠŠ¢6níîY¹’sk°™ø,ÅCqÝ=K´ÁÖÌ"¥ÈÀ d2•Í… ÒVUµR©H’¤ª*cÌ&åþýû¿óï|ðƒ\¹r¥$I•JEUUQäº$ÌÙØà+–{âÞ’™Ê1†k;S×O8Ï®»s„°æ 3 *•Ê7ÞX*•úûû¯¸â {“™³›êZì(Á‰õ•u‚núº½8W:æcŸ®’Ù´ƒiS€v¶‘]¨ÑÝÔø×Ô¾þ¹gë}÷l½Ï¨HŒ±»îÚºõÞoÏ*[XUÕM›6>|¸««ëÖ[o]¼xq€&¿a”*{[ÃÑñ`ªÀºV7v悱·èk`#N±Tºîº !µjíÚk¯ÑVnÙrÇ-Ÿû"!äýW½/›Ít¤ =zô§?ýéÛßþöþþ~mÍw¿ûÝmÛ¶e2™7®[·.¼ž`úÆ­V"n“¿î7í¨AóÍÞÆ1mò¹ü† î¾ûî›>}ó’%‹ßýîw~ï{ß×$xãÆ¡J°/f„ÕùØÔ ÍùðØc=ñÄÛ·o¿á†úûûõ«_ýò—¿Ìd2—_~ùÅ_¬%ú;¹‹©gÃfeÝ탶04øŠÖﵫܴåžÂR=YOai]ÎV[õ•ÆRŒÅ5ÖÐtÎ#²IÖ˜¿U£buvŒËF¥¶:ÑCƒ¯hý§8hØí[6 ?úè#×ßpÓáïÞùÍ» …žË.»ló¦ÛTµæ(JÄÇ 1ŽÄÛÞö¶… J’t×]w=õÔS>ø`:¾ä’KÞñŽw´¶½{ K9WšnµOišÀq—°t„RëÿlNîÐà+8Å¡È0“îÿöÖw^þW«V.øá‡V­x÷»ÞyïÖ{ê$¸Ã<}}}×^{íý÷ß_*•zè¡T*µ|ùò«®ºÊUàˆºgÓAû´Ñ’Õ׬VêÝÝ~c}LW6æcuœÉìÖÃŽ  ©ë· iÙ¼eËW¾ü¥“'OÌ›7ÿÓŸù¬ 4ãž#¬h>šÑÞÛÛûÑ~ô$)‘H|àEÑþ¦ÛQsM=ö+Ýîë!gûâìÅÑm2þ*2„¯£º:7Z (éJ&¢×ýÓõ?þø¥—^šˆ‹Íñü„>G¢P(\yå•O>ùäÅ_œJá­0–g½£Ñ€‹nSüjwWö¯ßónE‘S›ShÀ*,ŠÂ¡C–,Y&ËÓ/1/Y²äÊ+¯4µ|£ÑÈ¡ƒLßš3u~¡ó`+"hƒ„X–«67úm­Â‚@Óéô®; …Þd2)ËŠCÙqlllç®W­\&‚ fVOÒBêÞ*SÐæ¡F ©Â¢(æó¹|Wæ¿øÙi§±|ù ûô»víݵkÇÂ…óòùœ("²%˜CEEI’£Ñ(Z> $Iކƒ7`D*•\²x‘@…½{_zOœÍe/Z°hQ*•Ä À?½½…‘‘ÑèüH$†¯Øê¦`²\9Þ××Ûî*,B>Ÿ‹Åb½½…r¹lŸ8™Lf³™d2î@Pf ÁÁ㑾_0²,§RÉx<Ñî*L¡”¦RÉd2áèÆ¦”B–D"™Hàæ²“ë‚ ….š Â¨0¨0@…„ ^°™[0ÆdY‘$ MÑh41;@…3’$—+µ®®y}óº4M&„â¯Ï¿¥RqdäX2FÛb4 ¼ðâK££c”PJ)c ýÿ%”dÒé3Ï\Û݇ ȲR,Ž­\µ†1µZ­¢A‚"ΦÓÙû_êêÊE"- 82RÚ¶íÅ ¬XS,ÅbqÛ¶Ï9g]>Ÿƒ /ŒŽŽv÷ÌgL­T ÁÁ^ÞäD"ÞÕ=´t¼»»«µ•ÙàÐÀÀÀÂ…ýÉ$¾k0åòD&“Ùà•sÎ>* \£(êÈHqùе°‚Crõôôô~eO.—3ýpLÓˆF¢ ÌÏd²8)“Éd,PGF†Ïs$檪V*UI’ìÝe³Yã²ñgcJûs Ƙ$I•JUUÕV+EVpx$“©l6x¶>ma“!ÝSX¦- 2®4þ –P3÷SŸvªÓN–þylA!„är¹R©D,¾²¥oÕäX_†ëíl5(êÆ…UÿÑ’™%Ð'šse+<FÝi7ql>í|øF%Õ–s¹œ¶Ü˜h%Ø‹¶¼„ƒpÂëmÆ‹¹žÀtq¥¶¬¯iLP—cúº¯/Ïâ‘Y*•n¸áBHµZݸq£¶òŽ;îøÂ¾@yßûÞ—Éd¼C²êÌÆM°‘CéÒ¥Òu×ÝH©Uk×^{¶rË–;nùÜ !ï¿ê}Ùl&¼Ò›÷t®±ëXu&}½}oãäÌÄñ :ËqaJ>Ÿ/N¡Ëñ¬$ŸÏoذróÍ7ÿð‡?$„|ÿûß×$xãÆœ¬I§éýh—›<Ñ7}úæü!!ä{ßû¾&Á7n U‚IËgª9vJ·½–?ýÜÆÛ纛/««|L—g_smÚ´ixxøÑG¹é¦>|øðÝwßU(ô\vÙe·Ýv[­Vãl@žTÃõTß¾eòD_ÃM‡¿zç7'OôæM·©j­ƒU˜óA„•&:&hŽ æ2’$Ý{ïÖOýãµ;w¾üè#¬Z±fÍÚ-·ß¡K°ÏQàv4AˆC»âJ÷{ë'?yíÎ/?üð䉾ãŽ;–à€=uãø»‹7‹Ø~¯Àâ`“µÜ*éšÂ¸¾î§ã¾###s`|’M›·\xá…«Ö¯_ÿµM›g±ù?—²yËô‰Þ´y³ 4ãD»·…)D¢ª*3Umœ£~òÄ]SNž8`Lи¬'>yâ@oß =¾`šÀ¸ROÙSXvòÄ«Òùëi_ɺ5¦+­Ž…ÿðÃ@eªÊÔ:ÄððpWA[ö}ß¹ GŒ1QŒ|êºëÿë¿Ë[.¥T¨;YZ#hlßÙ¬:’iW1.ôö­ÐvÔö:yâD3ŒSLD¯û§ëüñK/½4M»·éPUUUUåH$JÜG×£’T>yYQ~uÝYÉ•QI©á¼B¡oÅ`˜ãJ’å½{÷Ÿwþ›kµš¢(œ{uwwÛèïÜ3”„X,V«Õ¡(ŠÑhô÷Ï>10°2iå³–ƒ‡Ž¬^½:bLy†RA£Š"1¦6º§öîÝ»lé³î'Ó/l{jÉ’ÅÑEP§îÂ2/=F !*cªŸ×E@¡o¥¾/Ð)ˆͤS»v¾ØÛÛ—L&ec50"qlll×ÎV®X" a}scðÄ~®ëA„J’ DHH’‰XbF˜J/§ß“GB aŒUQqb:Ji6—ÉåR?ô?N_sæòå+Ñ&A±kמ/¿Ðßß—Íe(¥­ «ÖÓÓ5xòõÈü…ÑXœRDL ÒMQ«UO)ºMO± Ƙ x óïE…E2¦Æð­­"J-Y¼P„=»_üó¿EƒE6—]¼hþÂ… Ò©TËGD:EáäÉ#‘B‡Œ,Ëét2[È4#„‰Í±…)¥” “þi8†;Ò|.‹F …îr¹‚ Šd2‘Íd’É¥mñ¨$',”b[­gL¥Ô‹O*⾌ c*c*ÉsLd*‘HÆqõ ²Q)цÃÜîŒMµÏ†í‘©6ŒáèLÕ 8sn"3¦Šb“<D ¢6_—~ „¦2F*zx4àÕVUB)Á Ð<M³… !“OçT¼;S"Ìmλs„Jé¤;îE DeªHToS½ÌTEQUUBSá’B©øÿ·w¿¿mqÇ'à¤@lçǶ6M'MÓª©Óþö=™öOx郶ë~(Ò¦mÑ,Û8NÀîö€ Y±ƒÿÀy¿D×ë5¹/µ>9À>”R¦i®âjYB+-ŸÚ!„ІÐ+Z ‹OïTÓÂÜ€O¬õÊÞ©f†©´Zsw2J+ÃXäŠÄ"wô¤4Ö¾*lÒbX ¡åBûH,’Âòyyب ^ìº0{ßÀ:‘Â@ ) …àiá±(@åi­Ó4½½7ª;;µRó­Die‹"…­’$I%Öóï`óg½nç/ǶŠ<¯*¥•*j’ÇQ¯sÁK¨d§iÜ|õõ÷Z«$I+pöm™B¿}l{Þžeš…JSi²Ù{·L) Y¤¨IÍ—¬… » ›‡§Z©h4ªÊÊݶwÍçýîŸÞÜÒ”JG£Û/JØ»;EŠšŠ»s@U¥© ‚A³y'I…¦ÇI³uƒtö 7/­ |!Dœ¤s‹š¹”æ¥ T”Ö*â8VJé› ¸®; –7Ÿ‚ß_kÇI4i­f-Ë––O kŒOcÙU/Š°ÍÆÓv5ÉûX¸"<ÅÀʾæ‹ÇñöÔãÃîygüZ"8[ OÉäüKu. ka`;®NèRÃ\× ‚ Ïͼ5î ÈžçMþí䀹3Ñ%wd,[Zf|&Ycêü‹w>nQ¬…§nÖÉû¥e|ßï÷ûE¦šóŽå¬öäçöÌÍß•Xj†Å;—„+°N¬… 3¥¼¸øãôôe2o+‰F£‘5ºÝîÜoÛívõÒž³^³¬‹‹ßM)½´©…¬æ?¢V+T) lÃõ½ú‡wç­Ö¡c;Iz߯7ò®^Ë2‡×Ã÷ïÎ_}a²Hi¶mß¿EÎÚK³,9Î/жn!lJÏs]7øéǾDCt¹;IDATyýÝÙ«/7ο|øõÃû󓓖繦)·£´‚EÍü•Ã.ï@u)¥ƒáßÿü{yÙ\ 7Âî³ýããÖ矸÷ü½B¥/j»¼Õ&¥ô¼g;;µV³†ÑæOØqìýý=DZç>¥­B¥/Š+À2 £^wÇ^Úí´Ç­(UU)­TQ¤0°µYü€ ´µžÐðòRHa) ¤0€R@ Àº¹ IaX[·ÛoÃ04”RËX±0Œ^œ½‘Qtͱ€Õ¯…ÇἺ „asD`5á+òË·âúúJ&J‡Ãp¤9:°ìn·ßFQT¯;¯¿}£’¤¶[7Ú?Ÿµnà :i¢N_œp¤`IÂ0ú¯Ó7-éûG~óØ’ò‡Í#d,Ê©NIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/manual-source/_images/mainwindow.png0000664000175000017500000042257214126044351022136 0ustar00jssjss‰PNG  IHDRÁ¼σ½«sRGB®Îé pHYs%Š%Š7!ÃëtIMEÚ;b„@ IDATxÚì}w|TUúþóNz%)Ò„¥¦ €Jµ¯îÚuWQü©`Á¾ö¶Š]¿Ö]]{ݵ¬])ÒS¢”$H“&$žLyÜ3É›;3÷Þ¹3™$çá32gÎ=ç½ïiïsÊ{ˆ™!áD”àUQgæ·ˆh*€'<ÉÌoˆ4¾PÃÌgKFeOð$€G˜ù]© uçAgj‚*ìð€OØ†Ž–ˆ ˜¹Xj=jë½ÎðfÞ)õAÿÀ,¯2ó³Aâ> àt³ôp€;™ù²fuª:q>€;ÜÊÌßHØ¢Ó‘^7ýTfÞ$½kÌp3¯!"°ÀOÌ|¹*^€!̼N–BÄÊ: Àr‹™ù:©‘Ð+U©F¨ð{€x âÿ ¿‡ê·aª¤*£Þ2ë.U!aýEÝÙ  QÕäpø3€5Dt.3W„0ø} à‘®Dt¢Ÿ¨ R€^p-€gƒv³4Xàÿ =fJv:d˲µ)B§uP&^Áa ½^"½TU˜×ö¶Ù¾ðI‚#‡(‹R’GŸ1óEâý`,€mRe]ÓÔ+D`€7ø†ˆF0sÅô§¨j–è(`æ2"Z àD":–™Wú‰z6€t/0³“ˆ>P \jQBÂ0>aæ¿„¡3P£ î Wª\¢3Ì*HØÛaT2ó fÞmô"J"¢Ê‚ˆR ÆK3‘&Q¼ŸßR ¦‘ ¶ÓhÃãQö|¬Ñ¼Tº$«rù‰›.k¶„É~ÀÉÌ›L°HâYêX¢Ø^Jf´NhïÉâʼng ˆó׿èéÇOx²ÁöžLD±&dN6Úߌç0ÚGw2x] ÎeâÿWDÛÙ+ÆÐýêiJ{½‰±6ÕDš1zã¡Ñ6¤$QŒçãÖg“m$ÑDšr¬mŸ:d<[ÁÌ?Û•—{—ˆRÌŒgê¿Q[ÕÀÞM¶»þŠ6ŸŠ\¡Žs’‡£39ˆ¶ÑLû6"*P  –ˆ–‰7£y !¢‰h3€":DD¯QoM¼"úˆªTÑ^"z‡ˆziâ=DD‰(‹ˆÞ²µæ- ¢#…Ñú"Ú#ä-'¢34iÑ|"/Vªì%¢ŠçÑ·¨'¢oÅÖí`ü°x¯‘×."z[ýnD”-t}CD?A™­÷‹¶VODëˆhš‰~ä ±ú¶@í ¢Ûµ†3LD+…¬Þö¯Öxíä"CD E[ûˆþ-Úv"úJôuBþÕóÞ÷<‡ˆ®!¢ŸÅ{mçÕ@D$¢Õ¢½×ѳZCˆúˆ~o§¹AÈ|:.+òËýÎV!×N"š«ó~1Dt•Šx¿Ñ~t[@DßCÙJXCD»‰è}½¾©“âCQ//Ô3Έ¨€©2s™»T”ÇÙš¸ÃˆèQŸj…Þò–S"¢:DrˆßCóÛ«bÌK ÒFF‰¶ú«(ÇJQç2udü‚ˆªE¼]DôŠN¼D;éCDÿ…âCà }-Â’ÅØô»x×õDt¢&-¢ýFD+Tù=#Þy¸j ®'¢ÿQO¢ñ,Uˆ:êmÿ/Q–ÆÖØJDÓˆhºh“^=¼¥Ž«zf†(‹j"ÚGDψ׉חˆÞ:;DDUDô’#HØíÕ›‰h¹¨c¿ÑZ^ êÒV"úÈû €÷ÅÏ׉ß& ´ˆzZ-úâˆè8íÄ‘èsw »¸†ˆ~Ô‰w²È÷8"ºß[E;¿@Ä™IDÄ»U Ÿ ê4žýÅaDô€¢ ~ODƒÄäÑKDä7ÑÉ:ïv!•Q­¨¿…Ìc5ñ>m0WŒ ‡ÄûÑ :éŽ$¢· µªmùH?e#¢m*;âg"š-k¸1#M~|LÀÞ5ÿ<ÿ&UØ4ñþ#âmp€Û¡lÿr8Ç@>CE#rø€«|À` €$/GŠMžp€çE>û R¥ù‚Ho=G÷øZ¤ù‹H¿ ÀÓæhi÷Ò¼ë&ÑýG¤±I¼ë[¶Øà^_Šðo5ï¶H„ÿÀ °V„-WÅë!ÂÖ¹¸ Ê–t°©âŸÀ `3€›Ü e‹é!ÿUÜ%"Íס¬à=`·x¾@¶ ùõäuQwNo—ˆ—)¾'‹¶ÐeËôlѦ~ñ^ñúŠ6Ô(êß}οMmp›h“³„qR-ÒøƒùgЏ»E›¼Y´}0_ïr¶]´±Y¾a‹8Tq·(}Ã'"Ý Þ~T¼ã&ñ.ŸyÓP=Ÿ'ÂV‹þæEñ~U¢/š'ú³¯Ü­JûFU}½ÄB¬0^ àeñž àUÜËDX©0"Þð€xð´FgóDøW®ð¨(Go?’#âõ2ïò_à ѯìÛEÚÈ B/gèüö7ñÛ_Ta³EØ%ª°ÉBÇÍPœÍ]-ʉÅxáñÞaýTÏŽa àBUx¼¨£_‘ÿ8‘wƒ(ûÙ¢îyë~Œ*Ÿf1ö=*ÆÚ‰:»Àaª4?uãW(Žnîi±ø¾P¿xI¤±@š* «ëÅ{?(Ú‹º¾_´¡»Ucê[ªçc œçtxÊÙíÇUãõ§ª¸Ç¨Ú¤KÔý»¬áK4:û³jlžÅÑÙ.U¹PÄ‹ð³hw¯ˆ6òœh»MjûD~üÖÏqÚ²5øÜ­Þ²uúÑ_zËh¼ˆGâû2U[ü§ªíÝ`p€|â‹ø_ˆ±ãÿ¼“YF¨êÂ*•íw•;öŠ:w±*Í?©êãnaŸ½ìì¶®S´³ûEûcçjÆîzQß‹E^߉x? ûô€hó^›¹ @¶*;Düb¡¿EN1f÷TÅ-…r–w¯ÈóA¯‰t]jB9—í¼+ú»ïUeó¹*îÝ"ì{Q¦wªÆðÛe Ò¤ “à¢aê}&›!ÁÎq^ÔÝü&òJ "——DŸ© ÿ·¿T|÷¬S4ñÎÖiL^ce€Uø7"ügɪð‡u ‹="ì~UXº à)U¸C â‰"ìDï#¼•Û[C‚}Hˆˆ»@„ab`ý @†*n¶*ÝkDØñýŸÎæÝ²mÈI\$â%¾_-¾? ‰×S´•JMø!¥š°oDÛÉׄ_!Ò~5ˆL "ÝýšÁ:I]—§0Žvè®IãE‘×, f(ÞÖÕi6‹ð罓SÂÀ*áéÜ à¾•œ¢ ?Âk¨Â抰™yó½FŽ Þ§1pz ýR…*â~ ™`›ª’-GSÆçkdðùÇw‘6Rèo"YL`Tzû=,Èê&a€Ò<¯ˆ{…†|ÍÔûÍÂ8~Q§Ì®"ÿRÑÎÆj½“@§~0~Gkâý?íx"Œsd:Fþ“Š˜Ä«Â_á“5$X;y{„ªÞ¡ië¿iê²·=ýŸFÞda|{ÄiH°[Ý߈²ñÊäSEøª±c„Žÿ/±ûGo=á?ª&EÕýÒS"ü,Õ˜v@Øi~ìðéÌPnŽ‘~@æ] :Qc×þWÇnß(ÆëX]»ÀÙF$ ¶‹ú\n’{g›zêä÷Œ¹Õ‰·@‘NxoC9ƒØK¤õ¥Ÿ4–‰ß³4$x†&Þý"üfMø…"üœ¥‰»Fm ªÂßṪ‰€ãüèÆ;Ë?TC‚7èĽGüö'ñ}¢ø~§NÜÛ5$8C ¢³'Ùä'D¼TĦ"»'ªD•Á±F(„ à8¼rD^‘)ߟ!àXg‰ö8]Ä»N'^¶0üWèàÞš¸ÞYþc4ᯩÃU$x¥&Þá"|³Ž”iV‚'ª'U«_lÕ!ÁótÒ].~Kßßótâþ¨!ÁˆïŸ8B]Æ]°¬Ä(MSÇ|vø!Á'‹ïOè¤ÛOµÅâ{¦¨ï«â|+Êf1€rQëÖk4«XMþ§óÛ QÆ} 2¾®‰oR­ägûy>M~¿LC‚›Ô$Z„ïVO*©Â¿áÝTmw¼—Xø‰Û]C‚ëÄ}NCš.ð7¹ "júª5ÚÉ<ù1M‚›E?èïó„Y;Ý1³K†ñ ïÐÁì¡ól”k4€ßµŽîXajoŠö㓺„ =[:ãL¹‘1†™ [[ÏAœÑq¦ZÓ~œP®?L#¢?8ZŒßù*û]Û~¼GaÙª¹âo½ö³^`5ÇþàDôc>Cð+³º<¤c¬öA/1k×MçS+¶¨4x~€¦QúCOMÇ?ƒb–ŸF©…Ûàûí ð[À4„s“„qñ”3Áñb†ü;?éušìGz:«Ô1\npš˜-Œ‡²Åô¶Ñ8Y…%Œ‚ˆº‰ œýÌ\#ÂR‰è (G ^ƒ²ÚZåœÐƒéB9ß¾Ê=¬Q½Õ hvö#éÇG–ûi¸ 覗pÂR e+éùP¶ƒþ-€a`´q2sC°~D”õ$(Û¿$è.aì/Ô:iêäxSŒy—ˆòIp”Õþ`÷ŒöR@½1s”•V/>ƒ²"\(p"”•Mïø1™ˆr¡LFÿ×`9$^‹cí¾Ûˆå±Z8©{Wô!oB9«éð$×YÕ™kõtv@g¬½LL޼+Ês¶(«D4BŽ aA}ÿ›ó``ŒIí4Ò¶j¨ãÌåP¶"åxà`a'Î÷óH3{¬ÚªÌܬ§˜ù3(×0>&ÈÿYPÎlï"¢keU ¹Ü>Ø e Õa;4ƉÿF´®lôó“N?k¤q“0¿ãZïl°j ÆBºkÅÿ½ Úç+_ ã~"ï¾Ó„Q}´¬Æá_¤ {NL²¼åÄFöîa"ºRUÏÝþ X1Ø¦Š šÏ¼+ZD4LD 6ɹ=@?ÒSô4ýÈz?ýHUVm8„g߆²ÝöA¯‰U;oÿø˜R¨MDÝu®ðé¡Ó‡4Bqlô’˜ 9Sù܆VÏábÇÀœ'v2Dõÿ*þ‘™Ÿ3ÿS(ÎlN†²ê_+HAÙf8Ê‘ ÁÛý£t¾Á±¶¿øÿ÷(*–‡ izÊúõ^{D¬léC‚µkýøÚúñ1€E¿v”IÁs¡LîMCˆíX+ÆŸÞh»ÐÓæ¼¶«&“´m(Ê9õrqG0[5íÇÒ8#v½ÅWÆÅPœÃÕŠß® ÁV]`\N‚rS„¶ýü"Ɠۈh8”•üÌ'¢OÄÎ È•àö뀒õ:wqõÆb‹£?ü&f‰ÆëÜ3vZ=öm‚2û~šöz 1€OFÁú(ÒÍ©âÿ9Ì\ª"À±P¶4ÊŒ¡Yx·ž®óÛn&Ñ""š.:3'f¬pd¨wºJt ÑaPÎÔŠçU/Nƒ²%÷fÞ "À™P¶LŠ3/\šþ:ÀaPÎ*¾¢ÙÒ™o°xWœ'ëüög^“U†ì™:ïw€îPÎûF‹Î“¡œ·ÞÂÌ÷x °ÀÑB/VÛ¯n?"¶ÞNЄÝBDÅÞ럘ù3¿ ehÝ’ØUðOQ‡ÏFZ­ `FÂ3tÊz­×ïx  ÑOO}ûâÞîf(gƒ§Šºü³÷Z¦¨€²…q¢Î¥Ó 8°º­Ûÿ #c– ý{!ŽCDÙX;‹™×ªp”Û'¬Žµ¥þÊKÛ×ÑÙ⪨?вkfæÿ r¾§ ¶‘HÁpùË‡Ø Uì\R—}6”ãfߨìâ"Ò[`ðŽ=«¢H‡' ’;™¿ÒlãÎ×Ã1r惢ߙ¤s³¶ýd‹+Ù^Q=¿Ž™ï…2ù Ù†$ ŽFüÊ Ï Dt”ªBŸÅÝy!Gþ C™¹í à1ï}žDÔ­NžÞçkŸ†rÆ`ž— ÷¼xþif®"ÝÔ™âÈ× x¾´Ô±ˆNå (÷U^¢Jû$(Þ;ÕØÅñÃbÛœ7n>”s+«ä¹` rÄ]¢£Äý¸gÑÂèeK½Å°J˜“Tõ«”ÕÝt€~DÔS´o;9žˆÒTiBYYjÀ2óa„\è5BUÄvšÈó[(Ž~0“ˆÎUÅÅ™^³†à·7ÅçÕyf¯/…B0îåÞÛ]ö®¸ rô ÚÞáØ Œ¡G½÷ÄŠ•è Äï‹»XùVô­‹þý]?çÿ´õt”A§Š‰ºÌ€rÖx ”‰a5>…â`1¾Çh¾…²Ò5 ÁW!ÎÕ>+Há]ªº”e¥Å)Þc›£Æˆ‰l¯ŒiBÆ4s-îü ÷X{šê½’DÉ¡Añ1r%¡Jû|UÝW÷kã hõ0¹K <ñù›*^*ZïâüŠ'¹Jñý?÷9© ŸÍUHšëBn ô®"|!T^Výå e £÷*•MPÎ;Ö‰¿½^(§k¼C¿§“Ÿ÷ZŠ‹5ºX£JÛ{ç¡×Cµúª‰»Ðêý{ZïoÝ áÍP~ä­&ý}*Å`Ošç.¿{Dû_.êý(N.ÀUü7Ti~¬ñ0Û ý21è= ÅaÈñ)ˆÛ/h½ |3Z¯ž¯¹:Ãû[¹˜‘o2Ÿ¥Is”UXm^Þ»UÓýxÄ¡ñ€ù¤ÎÕ->W!©~Û BõÝ{݆Kôy«…n>Eë•o½5^?/p]†ÆCg­x÷"(Ç[‰ µwè8U¿çq«Ðz¿f÷.Ø^îWÕã1~âèÝ<­w½Ù)¾ÍËhõËFjê±7¼À ÌÝyfQ·½^^Py@†²3c¡jœXŠÖ{=ïÒ¤ém»Ú[‚æ*$MñWwèE:òþÕUHªðá{W¹×Hf(«í?Š6½­÷Àž¡ñýœNºÞ¶6U£‹-h½Ëx=Zï#Ö^«8_U&kEù²˜¸>FŽ3†½Cù\«¹E`¿(—RÑ¿7ªêI ïÐñh½ Äç* ?2Þ(úË1ÖÕ¡õ®õXÍ·N(;W¨ì®U^Í5Þ¡¯×äs4W!©~c¨® RÝýýÜr–ŸkE¯ßÓÄXÈB_CÙíQ-ìGÚ6:Ök—ý¡ãY­žâ÷ªtö… ßjïÐÇ‹ró^óçëœÐx¸–éÚ ¶ŠÛè–á_D|õìËÐ8ºbæç‰è[(Û~Fˆÿ%/3ó>“MÎ%¢³Ä¬i®0&ß`æRU¼ZgŠ•ž‰P®uxR’+4É~.:6íY·~tP.—zW×„à ”'3¯g®ï´­žïÒE<¯Ã€ºeS"~[§Ö…ðây*”mkÍP\ï R¼J÷ïÂËÞÅP¶§zWÕß×ñz+Ñuñ´žYôÂ-êô(×Ôë´ß7ˆh‹0nû‰~æQׇЉõއ«‰:Š3-ˆÙñËŪV:”«->fæb±b;\¬Bÿ ÙDDyþ ŹF&'9/¨û!f^CD#E~bB韾Ñl7Z¯AÑâ 1˜kwQ|)È¡wK÷n>bP¿ú^œ½×Ýxå}ˆˆVCÙzÛ[´í;™ù ±ò±Lê»Å*÷ýÐñì e»î¨¼I3s©ØÁs”í¶ß e‰2ªñœD4Eôñ“ xþ_)â¼-¼‹v5¼äì+¼zX%Êc­JçÛÄ…¿ˆ•ß#DZŸ0ó7:i¬};à{.u­0´™™‹ ."¢“E{;Aòï¡Üû»Aïwq#ÃÂ0í'Híwê1Yà=16iÇÊïE=×ö)k„NÔÚï‡þöê@çÜ Ès­7OfþRìnš)ƸbÕú !ûvU›Ú'òÓ+³ÅÚv)t‘e»íéÂp¿^È»A=f3óuâ¼ø¹ªÉŽïèÜ2!Ñ;Ðzä&Vªô^!¶Ÿ å®ë¢¿s‰z²]Äc"º*¯ÆÌÜLDD]ï¥S_µmhž°§ÎQïøš™?ÐÄ{ˆ>ua¸è§¿ðƒÆáFñÎZv¿N;Q·—_uÆn­ˆEÜMšð "|¥µF´Ÿk xÀöˆ טù7"ªƒ¯wèÅøªÅ!?ãÏ5¢<Îíñ-Ñç]¯ÞùÂÌKÄŽÅ+Ä$@¼x·ÿ1s‰lAb&ABBBBBBBBBBBBB¢ÓCž –$XBBBBBBBBBBBBBB’` ‰"Ê$¢™R’KH7¢G GSÇ¡í•%¡Ø†‰(^jBB’`‰ÎŒ£Ü$Õ !Ñ!1úÞ^%$$Œû}‰èx© ‰–6AP®å$© I‚%:3¾01ÈEéщBI‚%$BÂYP®m’PÐÀ~q§„„$Á̼ÊÝrùRr%XBB¶! ;1Àf© I‚%º¾p’Tƒ„DÇ ‘™÷HmHHH,!a†(“j$X¢+à;S¥$$:œñ^$Õ !a D” € R-+Á’Kt,P@DÉRŠË, ë(°š™=R-+Á’Kt 0s€R'HmHHH,!!Û„D—…\ –$X¢KAž –è ÞÜG(–Ú° é]]B¢íØÒÀV© I‚%º ä¹` ‰Žƒcì`æ© Ë+Á¾`'3»¥*$$ –è*(0€ˆ“ªˆzÈ, ‰@D½Ä1óv© ‰ †<,!I°DW‚˜õ[`ŠÔ†„DÔC®`IHÈ6$!a7†@ž–$X¢ Bž –¼„„lC]r%XB’`‰. y.XB"ÊADIr¬•Ú$XBÂFÈ•` I‚%º˜y –ÚˆZäø™™RæAD Ò»º„„r%XB’`‰. ¹,!Ý+X¡a€Ì\)U!!¡€ˆt°SjCB’`‰®y.XBB’` Ù†$$ºrüÊÌ,U!!I°DWÄ÷&Š Ó%$$¤/!ÑÙ ¯“h yXB’`‰® fÞ e+L¾Ô†„Dtˆ²dBžÙ’r"IB¢-K,ÑÑ+UÐùqý—›ù/CRpLï $'%Èf±keΜ9èÞ={¥Çã–Š—èX$±#æh"‰/¾øO=5_ýµ‡Ù#K-š%¤®¥£ö…ñq°¹¹©©©øý÷}ËtŸãpæÞ1tÔÅ«HÔè0Ò%6cÆ Œ7ûvÙ§HDÝ8LÔÂ}àt{/IpWÀ_†$#¯w8bbálª‡ÛãÂtlc cñÔÓÏâÆ9³¥â;ƒyNá6©)¯H6IB6¼…® 2þäŠåK‘ŸŸgsCÀÉò;Y+KÅÙn˜êOÀúK¡åIV$¤^‹BÐÙQÉBmb–¬w6û€©èl*µŸ~Zƒ!C#>>º½l^ópHŠeK*´n/XŸlgKQ§×I, IDATØV È¡W1³:d{ÊímdA±yóFüåâóÑÜXVJΖÕ"*K"LpÄÄ"!! qnêåv讀czgÂ‹æÆ¸Ýΰ`8þøñ(-]úú©øN 9”tL— ° úN*„Õ ·¢l›!Ì!HÇ!è„>ÄÚëû0· ¶*—ÝŠŠV¡°p B[æª'w6¶-U(+«@nnŽ´=$¢×ve†ÛåDsc 1±ˆ‘$¸+ 9) ®æ†ˆ H))É5j$–-[î'‰m §Ë‰C«ÐÜÜÔ&!élx_‘£Hl£ ÁŸ,.*FaaA8ùW‡¨ÃlËK±©ÇÛƒs PFdØ8=5û±+ÿÀ aÝ1’âªUEúm(ܘm¨¯–SàÓô¹ûÿOEÓVhûWkkëÐP_Ã;LÚ:!#œ6rG¶¿í“™ár6"11Yn‡î r([ #„I“&à‡ 1uêä6r455bÛö_q°ªuu5¨¯o@bb"RRR‘‘‘…¾ýú#5%UÎ w)"NKîH¾’Á¼¶mÛ†„ÄDôìÙ3ŒåaýYfa’¯ÎÏ­A!¾/“áÇ}s2˜/·ŒÿÁ?î³*LZ;#L†%EÖ858ùevM¿¨hnºéF‹ D!ŽÊmÐö¼o‡äO-‚˜CEErü®K[ÎŒ­.¹#ÛßáÝãv‚(E’à.A3Øt tÿ#NAMM>ût>Æù7Ó6—íÂÄIwÁáˆÁ‹ÂÀ#zøü>yÒD\7ç&߇¿ïÛ‹_~Y‡Í›7£ªê jkëàñx@DHNNBFF7 œ‹£†Cß¾ýÁÒ¹VÔr½E]£ZXÖ¥(dó‹•   Ïp:¬w6Ø`]”$¾¤Ô8™µ‹ ·¥¤ÚU¡PHq;ða!½¾OUWWã·ßvá裇FüJl4JXÎÛòT“@›D+++ÇàÜÜöµSpìpÚÈÙþŸìÌ f$Á]ƒï%rs ±~ýìÜY+žQ>$6Ì{˜á 3ãž{¾Q\ÝÄ6 ò°}ûì߿ݻw‡Ãá@Å–rü´º?ÿ¼=ë'NÆá½û +;5ÕÕØµë7üòó:,Y² ûÀèÑy8rðP°œEì 1Ò2øÏÏœ$v­‡øþ>ë§UT\ŒÂ‚S‰vJ"¬!v­A¡®€ÃôªpHdÚ27Ç\“â iFrǃ ØN*SR\‚Ñ£FÁAÓéXÚyòØÇíâD¨S`[Å55L±lBy…¿óÀÑ`¿E¿ N¹#Ûßá–™% –P3h6mŠÅ®]x<@lŒ—üÂ0ýæÛmX±’1`À0\3ûÝ´bbbp ã±`áb\pÁù¨ªªBѪØ´© 'Ÿt2ò ÆøÄÏÎÎFvv6†òò2|úÉÇp:Ýè–ž‰^½z£ó\çÒ¹xrÇ^ Ž6"â£AˆpIq î¾ûN FtG$€µUadÔ_¬zÞ4§esìÒoôÐIqÛ§Ù䃡–_$M\6ôÓªUE(Sfâkùõ› ‡W›]™3ÂõêÑëÚ‹²² œ|ò”ÈÓØN°FBŽ˜°ÙÈáL»#ëŇhK _ ÊA\Ü ìÚ×bÀ.ò·Ç46z0÷‘]ˆ‹„{¤¤¿éMž4 ,‚ËåÁÆM¿à—_6âìsÎÁ¨¼|xØû»ù7­Ë#‚÷¬(‹UÕ–pŸïÊ3Ür¾TùÞJ|&‹L¼ðË/pxŸ¾@\ jÙÐ3äl 8påŸ0QomªÂijær3ûΡÖÿ wðF`«…ßÛª)œyX}ÀÈ=ßaW­Z…‡y ÍÎÐßPo»³%}YÃ7š…B€ƒi#ÈÎ2ÿŠòFMö“7ùÿÉÕ .‘ѪJVK?ÀeG£–ªSVVŽÜÜÁà–ŽÚÏèIÖJŠLMTø‘`¬VFÐ998Xù{Xld#i/]¶ ãÇ‹:û[Oö_·nE^Þ±¸ûî;0çúk[â>öØ“xìñ'±~ÝjôêÕÓ´ì’Kú÷ÏB|-Š•|¿C·åo•õ9SÑÌégó/ë1ö¸ãÝ-5D£ÚälÛž“D— k_ìÞ½.— GÎ ñ캢mV—…5uŽ`9¶á>l²°RÞ`¶I£ššm¬k*+«ƒŒŒnAû†–{©„ràСê66ò¶mÛ1`@ÿ6ñÕáÁldi{q×]÷⥗^Åõ×_‹;ï¼Í²ý)½ôíÛwÝu;|ða03®»n6|||ð>Ö£;Ü·iÙ% –ôë—ˆ¸¸A¨¬tÀånD|\ë*„ËMøð£ÆãŒÓ1`€±mS&O‚… ‘”€ônðè຺z¤¤$· Šq 11Ng3\.7:¼äÔ,’§þ®þ[Kµazä7V”–‘øþdö\0½èMø—)³…{ɰ—'§d¶!ÂþƤ$ ANJÉDRJ&êªtI³]#œvEXoÕX/ =Bœ”Ü õ‡|¯!ö1Xe¨i S¯EB‚'±bùRäåDsSM½ù—…¬½—©ÜmY%ËÑȦ÷ÐMÕöëvYJî€80ÁY¹r% tÇ0«¤×ªŒ¡Ýãmà jæðh@ŽÚÁ·?Ê6j’ÃÞŽÊ6oÆàÁ¹bÅÃßì9j: úNBuõ!$¨läíÛw`̘ãqç·áÚkgµD}≧ñä“Ocõê•èÕ«gpY'muZ/½ô*N:i žyæY¤¦&ûäeÅþ·^àšk®³ÿû\,^ü#/^‚¸W\1½%ŽYÙå™` @ŸÃéÓ“1kV"šš|«Ess Î;?sçzpúé†;˜I“&bÕÊ"¤¥¥!Æá{<>ŸÚšZœ~úÑP_ßæ7öx‘Ñ .—.—ÓP~ZR¨GµDÒ(ôVZ­B–™Í¼»zÀ¨N‚§]åw|ñâä”L°ñÕ’á Ö‹odS\=âk~”e]2ì%Ĭ!À¾«À&ànYY|)**AaA¾ÍÆc€³ÂlìùPŒp{Î #àÑQ¶z ÔF¬þX#ÿ2†v¢ÖDÆö}Â($ÐEEE(,,’¼ªìl¬ZÍVa;”io›3Åž³ú:=©…$;æˆ`À{x$Ààñ0š››}lä~}ûàŽ;nÅC=ŠùóÿöxðÄãOá‰'žÂý÷Ý…ž=3d#륭NëûïÆ¿_¥M^VíïpëÅû¹föU8á„ñX¼x ¦NŒ+fN‰;È•à.ÖÎ"&¸ñ¦&8Ùg£cÏ¡XôHw¡.¶®n»àˆK!ÙÈ4ÆÔ“¦àú97àä“NDsc#bãâ} Pb"¾øü?ˆ‹‡GgËBs³ ÉÉÉHˆ³[•¶}$Ô¬S)½X£ihW©í"ÕíVu‚…z;t0rl9“ðë ËŸ¼õ[¶KkW…`´žÙõž fåj1&F²øL0|Î[; 466 ¼¢G †šF#‚…3ÁÁ®Ññ=ÄEq“uÔ3ÁlknúøÉƒì{có;ØtJdŸBÚ`ÅÊU¸nÎ46¹üÚ6äNÖVHͼˆÙ3ÁVÉHàÓ§ÆÏ+G§ÙƲfË=>kÌ“:‘ÙÈ"¦€g\™ìЙ’HYYrssUçCëüjÁеal†¨;̈‰q --Ng³<ûê+ÁÆÃ?†/ÅK–â¾{ïÂŒ¿^îc+û·‘õÓÞ¾cžxòiŸ´¼yÍû8Î;çlôìÙ#¬öw(z€yOÍÇ?.ÅÔ)“ñÝw?`þüçqÍì«,sI‚%Z°aÿÏ8Ø\ƒ>‰}Ð'5 =Ò]ØQûÖVn@z\*z6f49¤øàAú£wïÞØ±sêêk‘–Övi||œî3—³äˆAZZ:Èá»í¹¸Û*ù D˜Í¤¥·bDØ Af€« ¯w;´1›©Jç é7°ôL½ïÙaïvh3¯Ýz&9üœ2ù;ŒVC¦ÅZ2&xéú56lzuÏ´¯Üm² :ÿ™`;ˆ’-EîZ¢®Qlbý‘«KKq寋ϮZÂíX47G`Ûµ®$ắ—mÓLàD#ºý™ìxmñËËËqÎ9gÃaÞÙÐÎw¼ƒÂÌdfeÁã¡66ò¬«¯@ÕÁ*¼ðÂ+¸ñ†ë0ã¯Ó|lå`6²^Ú}ûŽâUKгgŸ´f]}Î=ç8ì°lx<î°Ùß¡êå©§ŸÅ¼§žÅ½÷Ü™3.Ç?žsyÌÌžu¥%î Ip×ÙýbwÍ.¬?°MÝ8<% Õ N¼·écÔ»êqÕðË‘§Ì@%ÅË‹=nLž<ûöîAÅ– >Ò°´»vÿ†‡õBZz:؇$³‰w ôÝÌoJX}í$§f âz MüäÔlAt覥þÝ›VÛ8Y~Ÿ&³Z¾V9|ã´æŠ>ØwKw]%’S²ZœdÕ×U‚ÁHNÉd´ u•HJÉjy>Iõ›¿¹__²Ìº[9gœ¡"ÜmåÖ_qfß³ÈÜú½¡þ Ïª0À‡Zx¸eÕšS¨@ ½+–/A~þ(47Ö´’½@Öc-–…lЭ%9È®ÃdØQ;åÛ^cœE"µióftÏÎFFF7?g‚m"1.dÝ0Ìw·I'$bÆ6©ÁN§S‘™40w’&r[eåÈÍò™`ë[ ;î${ÜèÖ-ýúõ×µ‘ÿvÛM8ó§á˜cŽnãØ*˜ì/íî‡eë:©U‡[³¿Ã«—;vbÞSÏâž»oÇôé—Âíq㪫f‚™ñècópöÙg¡gÏ&egy&X¢µMµ(ÞUŒu{×€x»ìu,ݹ}’{!+¾—Bpšp{ŒG§žz vþ¶ k×®ÇÁƒ•ðx¾š{3›O |õò ž¶µ¾¾®RÐ, ém…÷·V‚¬NÔZ‡«uÄ¥Sÿ¦]‘nù-9£éyÅoIÉ%4øA£OGÿ,c1 ôc…tTи<~ï,µùì¤ßÓz꣚AŸ·ëœ±ê\¯Á+iÙhºv˜ z—ýÐNŸ@2…élqѪ"Ž)4•pИzºW= ¹MØPÉÔåc)‹²´ÉÀZ?j:–aqí’GS°Ä–Š-È4Ðr]á.J€½6rZj*ÆŽ;Þ¯ø9¹Á®vac7p&˜ÃQªa;Ì!ç-ï Žd åL0[Êâ–›oÆÀ1köls¢fßmÖ‘±sªAÏáÛ—mŠ ï˜ð¿rL¶êI#XaßÊo°¶mÞ "Ö‡Ô [kÓž={p≓Q¶égKmË(ù \Dá=ÁàpĂ٢âUøiu‘­6r8Ó7"!{BRºÜ-ÑŠìÄ,TTU ÑÕˆk¿»ûöaîÄÇÝàñpn!6† »LOJŠÇèÑ£P[W¼ücñÕ—ß`ÄÈaè߯?âZ®;injÂÞ}{±~ýÏ8nÜDäææ"1!nW³,äWÜún½FdÛ€K#?û„-9C²éiëc=›b"¬".­g‚©õB!{•s¾­g†}.¢ÐÎ8p‡DaÞÈ× Ù0¨sØR†ýÂQTJ)2›«KKð—?ÿɉ á•ŦU/nÙ¦ÜììLŒíÀ‰îmÏFÞÁüøÈ65Î-<8×ôyà€=ÚÛNö@˜àñ¸—€‘£òàp8lµ‘ÙvGÖ‹E W‚;?Œ®ïo8€þÿ7¤åû˜Þøö‚¯Ðìt %‘áaåÎàøX†ËCˆu«;syuuõ˜;÷ìßÿ;–,YŒ;~…ÇãAzzêëë‡þý¢pÌXdefÁáðHÕèb«Â&Ȱ9IÉÆ}#|óÍwxfþ³øß矄.…¿ÌŒ­>SÄë1Q´ÕO{ʧs˜á¥ÉÍMÍèÙëpìÞµ‰‰‰œ81AÛåÚ˜àN«8¬%èÑh;ïk§L¦ >¬õó_¯½ÒÒÕxvþ¼pÏ£D°íµbãÁì‹δ;²^äJ°„²“²Ð/½/êšê>áq8]1 ê›Ä)Þ¡ÄppPp#qò¤ ¸þ†[ð0;ѳWOüñOçÀåt¡¡±HJJBBB"bccà ØÓ ·Ë% ¤C˜”d:J‡\VdçU@&Þ'hTßEÅÚóÀ¾&24È̃ÆÓ3`ÞèoOc›IqðkIüÙšDfŒ4 CÛ –m`Ï\á4'£ÖOµÉ­ŽëÖ­CnnÂ$Ýdá—3‡ÛøJòkFÚ²²r zÔF’_#p9ሉ ‹δ;²^éZÂÇp!lš¹Fúy€‚‚rŒ0ÖcÁ¦ Mn7l¯±\TT„ˆÊÃÜ~ï«›f{“^ÝÇíÞôåÄ7Êȯå[0~üXëïÚÉ_™…ÇíD³Û9œiwd½H,vÄÄÄà„ÆaÁÂÅ8ÿ¼sàv;áv;¥b:6¿*Ü)ȰBllu84B\\\ŠþïYC¹Ï‘m$Äá ÅzĘlªßÆÈb [•Èlúá&Ê‘"-EEÅ8á„ãmIæhR¨±ûx9Òòv2âkI+í~\1ÈÁeå<87 ä·ë`5Âi#wdû;²KÜň «® hnvùt6¬kàúº°õ¹8ž}ŸVþ ÄÆÅÂét ^¤<3~ÜX|óÍw8íÔ“4 9Ü–Bµ¤«Î@ùÛæyŸUfݱ“Ûxšl›v«<ÔúNÐ{GÕ3¬þ•4ß[ß4ß™Ôù“¦lTihÁ¶ßµñ½Æ6kâhÓ£ é³NúÔ¶žhiV{/fãÕwÒÓ¿~ÓÓ¿þw5ßÓ–©ÈEåɘ5ò·H¡­C¬© Ì‘&=ùîÕ'µÜ™Uk)À¶íµõymù´5öìÝ"Æöm›±}ÛfÙõIHXÀ¢Å‹0eÊX¬Xþ½TF—©&¯H3¾z¿«Ç/´8íiu–Hšô4“^gŠªlt¿‹±j{‰|=Z³pÊèû<ùúîWÿ®~žI+–êòùÓãalݶ WÊË7B#,Zý€“êêR%Eš¤©udVéôd$_›¤mùøH¯Ò?k¾“ÏĤw|ÕO:éiëˆ:O•åGZý’ÏÊ%û}^[MôÊTõØØ¸\¡v½çSî*ÙõÊšºÆŠm¯.SRÛz:uzuÌ[T¶—º<\Ng˳þëéÖ7Íù<«[?¤c¬.ÿޱm™6ÀúêœÃ'ÝM›6ã¬?žƒM×j¬ÍšºÏÞ‹ŒF´žŸm+UúÏY—5è3†ýò˜užE!HH&³¦Ð4cùîƒ5B+·>øï¾û.>úè#ÙJHX@uu5úõ뇪ª*8©‰Àvˆ*8L¢ ­ ‡ä§ÛÄêûÖ­Ûpò)§`ó¦~b²É×ecÒr(:d‹êe{ê ûŽå¶ï`@9ÂèÐ}6¤Ýºî!Ô6¶Ç”ׇ µyV:ÆêJ]¶îÎMÑ>Ý õöI`ÈàAp»Ý(//«ÛÛÍHD(¤(Ö{´ErLax¯åË– /o$š«#”+…©(lôÈM‘®+‰êí ›•+–bÔ¨‘ð¸›àqÛÎUÚadÃÙq{ÈÎÖÓmŸ-Ða¤»Q¾ 6lX‡œAÑÜTk‚øDC;\¨rzS"b˜&—î8u,¤”Úǵ5s4?k••U 7wP[· 6Ô1 ‰HA®KD 'NÀâ—ÂãñHet92ìg–W'Øþùà­nš ç0Hæ›Ê† Ñ·O_¤¥¦Z6"Õÿ,‹xÖ–·mM)@ú¶-¼…¾Š§·ÝfQoźS¯àFgUTTŒÂÂüÀºÖYaõ»Bl©„l,ç É´ýÑÞÚe¢Fª¿òÛÛÛO™"ÒŒC¿òŠ äæY æ@¬XöWí¹,1ôìÙ½{÷ÂêÕkŸ?Z*¤Ë˜@›Õ-EÓoß1“8^Ño6úìy_Fqq òÚ&j1a6±RðUÛÈ`nE×|6AoØã—3Ÿ°Ù•òÙÖ*NQÞŸØ›Ôî={àlnFÿ~ýøâÎí”,G@šð­pr;Ÿ?¶öÖÜ.U!œ•—U 'gÉ…sIz%¢ r%¸ËÐfÞRÒ²Û|Ô¿éý­‡)“'⇠C~#=yåmU^3ò ·+ŸpÊÙüÌÍ„{ƒ’S³Ú|Ì 5~xg¢“S3u›^rJf€¶ÙФ” ËÒ)$8á:§òÊ‹ÉÕ(»z½Àë[tdÛRXxVrý¦dæ kÐéÂó ´¼j$ºÁ•Ú¢¢bX,î0¯ØJÖ_Íç0ì0¹ #Òý Òùc3Iý%²›7ìϨÙéÄÞ}{Ñ¿?CCº\õ•ˆN>$I°„ ÔÕðù¨ÃbÒÄ ¶`=yŒÊaF^;u'ar€öóS]m%êj+Q/>f‰p$ŒCÙ”ì½T\RŠB•CŸ€)…G†Ûo¶"Èa%ÉfI”}uÖ4åvúDH3EÅÅ(,(hŸò0œ|$‰.¬µ‹öèK"HzMõÔfìÏLâÖ­ÛЯ_?8È!·ÅÅ%(ÈϳN#_XáÉÅŸC*ÇTÜQ*AFCÙFoƒ-/ߢÜC/!ÑI¸$ÁíL‚'âûJEHHblÑüñxýMMM "$%%áÜsþˆ+fþ‰‰ ¶Õ]‡#Ž˜88±-[g™ n·ìq[ï_c-8`} P·‚#Ƈ#¦¥*1n·¨±‰\·È@_Ø\†@í2Æ^½z 55­¥ÍÅÅ% ݺ RSÓЫ—‡Ôý½¸¸×]; ˆAllt™FDÄÄÆ#&6‡"›ÛÕ·Û ·Ëe¤Œ£+GItmÁï¿ïGbbRSS¥2$:’*èâ3!Â@Û¸q†/DŒf«ill6—mÅm» µµ5¶$?ö8rõƒÛÕŒ˜˜X?~,,XŒsÏý“_#À¼ºz<.°Ç~Ç&DŠQûö[ï`ûöªü<8t¨ݺ¥|þСjdff ¢b úö탸õõM¦ÉU0ƒ>>!Å žÜhn¬…'#ßK´¶m߃o¸µµÕ€f§û¯DïÞ=tŸÙ·o?Ò»¥aÕªÕ¸âŠ+ðÒK/¡®ö€á“@õÕŸ|sn¸µµµŠ|ÍNìßÿ;zõî­?ØïÛ‡ônÝP¼j•%ù1±€#ï¾÷aKžfpÊ)§ oß¾8óÌ3±páB|ñÅHJJÂØ±cá„Ñ«`Íšu:ô(ÄÆÆùÔ%o»½ýöÛ-É ßnSñè£"7§Ë–ÝX²t9f;©©iHLL‘D„øø¼÷þÇxã·ñÖ[¯!7''Äz‡¸¸$”WlÁ矎Òեصk'@„¾}ú!?/gœq <Îæ¸C dÊVþ5>b bcås ..ûöîÅš5ë°uÛ6TU).;; G €‘#‡¡{p6»àv{L‘k£$5.>ûö´•!33G €Ñ£G–!’“S˜˜ÜRoâSpÛmÃÚµkñïÿÙÙp6×ÛÖG&&&#%%µMzÌŒ’ÒŸ0pÐ@du?O>ù(®ºrfTp""B\|2ªkêðá‡obÉ’¥xãfÍš…“N: §vîí‰bȶŠ)É®(«À9rcƒ„$Á ‰‰I6¼ :[McãqÓÍ7bÏÁíV0Ø–üÖ­ÚŒ[n½Ÿ}òßcz’¸/X;bbát9°|éò Q~~>ÒRl7Òcbc°ºô'¬XQ„qãŽm w»ÜøqÉ2=ôÈ€Ïoݶ#†§³Û·ïćþçœó'466Ûbä9Ÿ˜Žûï¿o¿ý6\.WÀø Àÿû@h$866>ú(víX޳NQVñwînÂg8nü{\qTlÛö F­Æ¯Ùqxùå—1vìXL›v šª é"P}õ'ߦm;P8åÀ=»Q^QqãOð#ßvô<éYÙ–ä‹‹Oµ×ÎÁûï¿ììlSúœ6mˆë®» .DbBfNŸ†[ÿvvíÚ… /8nס–øÅ%úÛ8cãqóÍ7£®®ãÇ·¥ üøã¸í¶ÛðÉ'ÿËOû eí±¸¤³f_^½z£¾¾„ÛíF||<ˆÙÙÙˆ‹‹ÃEOÂï¿DZZšÑÖáC*âRPºz n¹õf,Z¸}rCÁ©Hí™cýÞmø~þ—˜3g¦LŒÇ}#F ƒ³©ÎR[U¶ò[ù›‚N¶Å'Äaû¶mxçÝQVVŽŒÌ d¤§#A¬€ïúm7~þyÞ~ç} z$.¼àôé7Φf[ Tµ ï½ÿ6m*k#ÞÝ{±aÃ&¼ûÞ‡8òÈÁ¸ø¢ó¬É º†È'Ÿ|ÌŒ^½záå—_Æôé—ûì²…9iä+/«@vV232ÚÈdõά߻ cúŽ I\GL,@q¸ï¾ñä¼'‘žž…#ça@ÿ!ÈÊì‰âUñúëo [·n˜7ï œÞ¹hj¬±PG£Õ°í"Kæ*ÊÊ+äy` I‚%:Ô[ôÔ[Mµ¨©­ÅÈcÄ…Wæ7­Þé9è—qÆöª ØSó«ß¸oعþÏv½É“&`þüçuãÇÇ'ãòË/Áû|€„øx¿é657cÜØã°tÙò6ïâñxàr6„@8I\㔄ɓZÉ]CC–.[áCŒ ¼b –-[ ‡ÃóÏû–¯X…‰ÇI'MFYY9Þxó]D¸)dã56.¯¾ú*^{í5Ì›7/`Ü5kÖ`îܹhjv"!žB[1" ©©yÃSpß-GV”Tc嚃¸ô²¿¶Dûàýwðò Ïã´3þ€úà¢?5àÝÆóÿú 3gÎ@LL .¾ø47Ö†\_ÛÊׄAÇ ÇE×ßؼº;~^ãW¾~ŽÀñønzæE|ùæ¿0sæLCòµfIذafΜ‰[o½Õ°*ãââžžŽýë_xöÙgqô ^xû¡éØòÛ~œsøùæ›qÑEøÇâRœrÊTÝôjkk1aÂÜtÓM¶õ+W® hS2*’6p:˜5ëzôî}8jkkqèÐ!ÔÕÕÁáp -- Ì ‡Ãôôtôï?óž~÷Þ}‡)˜È¸„TÜ÷Àxdî\Œ:u ®ùשÈÝeU`R2Ðí°d€€ý;j°âå éÝw߃;ï¼͵`öXè_0!!!ÿýï§øü‹¯qÄ€þ8唩HKóÝ~¸aÃ&4;8î¸1ؼ¹÷?ø(ÎúÃi8ë¬? ©ÉÒ¤š?Ö¬Y‡´ô4y¤ïDhMM­m2¸]͘={6ž{î9ÀW\×_/¾ø"Ž2ÍMu†uojò¥¸yÆ"<þß[à˜88 N¯üÞço·Ã¿X…Ìõ¥8jÜåH­o„㪻,àºúfœzêTìÞõ;f\~öîÝŽŸÖ.AeÕ>T×T¡_Ÿ\tÞµhljÀôéÅ¢E‹1þÓp6ÕØºÃ(âW’ܨDE…²,!!I°D§ ÀF·”CïôôÍÈÅ{??á¢á÷€áÁÞšm†Ó2d0\n¶lùƒ ÔZfسg7nŸ3·_?Ão¯¿÷)®ýÛ#˜9³íV¶1cÆ`ÆŒéh¬?ýV¨Âž={…®}ßÁƒsqé%áµ×ß Aq̰càr†¸"—€×^{ —\r Î;ï¼€q-Z„“O>ÝÒÑP0"úp6++9MM¾+:³¦÷AñšüûõWñ—¿\‘újF¾Ó.™ŽŠukðÚ믔Ï<ýí°^²·bÅ \uÕUÈLOÁs·]rîé ÀÀAäû|IéjÜy‡q¢]^^ŽÊÊJŒ3Æ&S–LÛ¢zDù³Ï¿@||šššPSSƒƒ¢®®ݺuƒÃá@ll,ââ⣎: ß}ûƒ ,¶•&¤búŒ¿â_}ŠËŸšˆ>Gµúxõúàv*+159½PpÆ üáÆ<Œ8¹?æýýqlÛ¾/½øšýí Ÿújf 4‹—_ù'Ö¬Y‰Ž×õ°aÃ&üüóÄÅÅ!--ùù£0 ?|óí8p Ó§OCS“Ó²ƒk2üþûþ–þLM„í”ÁÙ܀ǟ|ò vìØX²d F…[o½wÞqbcaû¶ß’ÒRäç#Áž—V|úã4°Û n¨Å'€Ýn¸ëkñiù"¬‹=€G‡ôs®öì´4ŠÃ©§NEsS ÎýÓ•xó§0iÂé˜3ûn”¬^†üÑcQSSÏ¿z;ÛŽëf=†W_{©©©˜ûðƒhj¬A{ <W’Üh@Yy9.¼à<©‰N‡TAׄzKi¨è—q>øy.~Úó-Vïùýò(úe 5Τ‰ðÂE–å(= þéTÔØéó©Ú³W^y%ÊÊ*àpÄD…þÎE·né¨oh@¨s1±øõ×­X¾|9.½ôÒÀ†¦Ó‰wß}—\r \Á¼ÖÚˆŒŒLdff¡{÷îm~;¼gBP#ÇÎújV¾Ìž=CNÕªU˜5k–_£7-- »wïÆ9çœ ·Ë…gn>½»wÃý/~5›ÃŒ3põÕWûùäs$$&¢±±MMMp:HLLDRR’’’œœÜòwJJ Èá0eÇ'¤âþÀÿ¾úÓæïC€ÿÏÞy‡GQuaüw·oz!´4Hè)" Ò¤ƒ é JGzoR)Ê' ‚ ½‰  (½i(¡†NzÝ:ß»„$$!eƒ€ó>Ï<»3sgæÌÛÞ{Î=‚«¢t¢-³ÑÊùý7ùvè~{o?7:ϩÆM?2uê4ÔZç§æ…N§³›@ë²G­šM›6ÛÈg½:™àGõøò{ç£nÝ×8~â[¶nG­ÕäèKf&ƒÅb›¤;{ö<.\zâÚ'ePg¿$IV” ‰ &Ø ¶+mÛ½ÉdbÊ”)”¯P¿Fçäž%¿YEv4ÁB§Ctìøp ¢d=>C|8kpYLbhþxÞk?Š2#–!-ŸuïÆ,}ÿ”›Z£gò¤)ܹý€zuZóãO‹˜÷ù*ú4Š7¯°bÕLž1„Ò¥*2eÜbºø +VN¥ë‡£˜7o.‡ÿR¥qhû˜Ué³–ÈA툌gŠÐÐ+Ëš`/dMðùãçÐÛîƒ'¥–hÃäýˆÄ;h”Ù¿×oÔeËÖíôèÞ%Gr”)QŒesÇ>q<>!‘Ÿ¶ýB\\BQaWQä…i]ÊAaÑ¢EP(D†Þl…Â1sP*µŽÕ«WSµjUJ—Î|òa×®]$&&Òºuë§šgæøÝ½Ôܽû€_/Mö¸ дy $I"4ô  øÿkåÕÕË‹ûwï²âëeiäk‰$I\ ½L›ü–»wïf×®] éç·‹‹ f³™¶mÛrçÎ]ÆôhJõr|·ý/~ÚwŠW_}•… ²lÙ2ztlÂ}üÄ)ªT®”ê2CRRC† I×Q–J¥Â ŒÆj5ãDþT$+÷Ãç§ãÖ­Û(•ªd³g´Z-nnn¸ººâì으999¡R*mq‘yú’R¥áÄÉÓLŸ6.sëááó$‰}w|­äÿfƒ…¿…±åß\øã6+ÿJ÷yõi;ª‡M U«V”*øTgY¶òútïÐJ¥‚ׯ³uû.ê½^gg§L °íšÔ“y®®.Ô¨þ ?oÞFåÊð)P0[Žª”*e¦2(•ÊTDxÂ4úI eÛY–Ù”D§N˜5kÿý7eÊ•£ý»ï2vô(.]¼HãÆéСsæÌ!Ÿ—;&cfK\¤Lˆ– F£‘¿ÿþ‡ŠÊ“&½?‹ˆÀËË>!Р5ÂÉ5Õy«deä®l ÙÇgõúÒ±’ݯ…o1„V—­÷BAtL<³ç̦{×±|÷ý\æÎX‰Ÿo1þøóWf}a3­¾{/Œ‘ãz3iÜ"êÖ~“è˜Hvíýžo¼ÍÈ‘£9xð×L×Q?;¿Q2} IW¯^'00PÎ /þSš`!Äf!Ä)!D¯^¿M±=‹i¿²?Kù¼çË#SS‹åßí°Þ¨÷:¿ývk:ÞÓèX,Vî=êvÿaáááDE'g$6Þ„Nïþ„yiv¡Ö¨Q©T9r”£ÇN$oáá§xñbœKQü•‚<¸Ã/ߜů|~*4 `øgÃPkœ²U^ÿùç æ ¡Z£fíº øû=Uü´‰7ߢ¬[÷jMöÚµZÅ÷?¬ÏP†´ÈL#üX%ÙÕ‚J’ÉbdÊ”),Z0Ÿ’¥J³iË6† ŽN§cÍš5”*UŠÿ[…FçŠR¥&§ÚÃsçþ¦xP1ôúŒÉê¤ÉÓY¹jµ­¨ØŽtöÏTýÒä}óYn;ýku¥gµK&ÊUC”Êžs,¥JÃúõëqwÏÇý{aÔ«Û¿â?ù;7¯b@¿q”+S…ÞëC“Fm8¬÷îߢyÓwˆŒ¼GÉà*üþû!®_¿‰P(ÓÏe)›Ÿ%Cr›ã‹e¼`¸}ûù¼¼žN†ŒçÿM°¢Ð0Äˤì{( d•Ô*âyÏ›ìxÛÍKøø P¡‚œçH©¢[×Nœ>}c¢1“4f¸4WX¥áèÑ£\½z•÷ßÏ|Íjtt4?ÿü3[¶lÉSè„D #§†qÿaæäú¬ý9w7Á”Eþ•òX¶<./Wñ1YIˆgÿƉŠÄb6Ù×hdUªd-ZJh4œœœX°`+V¬ b‰¢Œë՜ۢøtæz”*?ý´ooo-ZôÄDÐñã'èÒ¥“CdŒ5>Ädµ•ß(à *½ŸY½ÿçŸÎ A«Õàë[FƒR©D§Óáââ‚««k*"¼gÏ>êÝ=Kƒl…BÅåÐ+Øÿ¯h’nšãÛ®°uÞq†®o…“ûãAžZ§¢ÝÈÌí°S»¯Ó¤O%j¶ bQÏ]ܸ†O,…Óêô”³›F§µ¾P(÷ïÝãÂ…Ké:8Ë*~„àAìÙ³ˆðp\\ÜÓP|2l2\ºt9C'kaxR#œRg÷l‡¬3™’hÕª%5kÖäÈ‘#üé×ÿzöþˆ&Íš1aìXþv€^½z%;Î*U2£1>ÛÏ:vü¯¤Yœ˜˜H“¦­RÝ›6SëÕš7› …•ÄìƒËøöĺ½ò.ŸÖêšúæ;ÖbÕ9¡*›!L¯¼:t˜Á•9}ö÷ÁÚõËYòÍ,ÔkN«æïsáâYêÕiJPñÒ,øj2}´gƤ¯y½Nn†]ÄËӛÇÓþí6X-O/Ÿ_-Y@ï^ÝSõ±’$±hñRT*%½{õGËÿa\¾Jñ Ù3´ ™¿È蘙Àh °û¿óú)»\[G—o»Þ.~x–C§~¬ q×=9`ör*Hb($™â¹q–‡ñ™; yÿ½öDDD>UŽ•ë¶˶ù}9˜fè7ýGbãâ²lJšÂ#"°˜Í¨TJªV}úŒÿýû÷QªTäóòÊñ3Õ*µ>Å IÉwß}GãÆñyÊÚÕ 6àééIýúõQ(D²6ËlLÄä€É-»Ã9tÜ…÷:tËRú­[6°êÇ»Y¾޼C§ƒ[W.³xÔj5m™Š¯˜2Ží;qïÏçþƒó¬6*•J\\\øõ×_8p Þž®,úy9 IDATÖ‹ÅJ¿ék‰ŠMà›o¾¡zõêDEEa4>9ÁâééùÄ>“ƒö_EªcŽçµ—Ùã'NÑ·ß>2Ÿo¾ýœØØ8 .„J¥JE‚ÝÜÜpww'$$VC£†õ³8I¤fëÖ­)îM¾¢O†Tºzò>[çÀšŽeÞUƒ·¿·/DiÀ;À ?/¶mÛFÏ]2%©Ê«B`2R6¿¶ú«TrúôY<<=Òõ àî« §OŸ¥NݺY"ÁJUÆ2ä„§•Áœí¸ífS"Ó§O§^½z,_º”÷;~€——¾¾~,ûf;·ogò¤ >|˜J•*1tèPÆŒZcs°•üZ­š©¿¹^ÏΛ“{ÍoV¬$$äŃŠ#ÙÍ¡%`Ñ‘U,þsïUlňzý@ˆÔÄÖ·huO’])³ú¨ ,, O@ΞýƒÝ¿lb뎵üyô7zõ‹{÷nqhµ:Ìfá:ºÝ:}ÊŸÇþ _>nݺe¯Ã™×ߘ˜† ؼèúI¿ÇÎ|ÆO˜ @Çïáâ₌ÿ( –=CËx)¹Ð„ !ôÀûÀ_À`Ð'+$X¡“$))«Ï‘$)ñEÈ“œxÛõt*H©ÕXsvn¦:w'öròÿ›Ñ3ñ@‹Tç 8ûó~ù œ¹µ?Óg ÐÿéEX’øö‡Í´}£Å‹æÏö»ß¸ÉÕ[èÚµ[†ñNŸ†ß?Âo£×go]jbb"õ^¯CÍšÙ÷ΫRëøó¯“ôû¸oòºNI’¸{÷.®®®øøez}DD†àAÉÇ\\\øjñªV©k+“I¢¨oÚ¶kB<5VqÈ?g0™îäYyÍñ11¼ÕûcîÝHí½¼Ã ÏpÏ—Ÿ‹'zþŒ£Û J•*•üßÃÃk׮ѾýÛ(|9¼=Þž® ž³k÷èß¿?]»v%&&&C"³tÉ—Ù–£víÚ˜Íf4Z —cÿ 2É–ÿ‰¿ÃÉ;»(ä €«&?¥=_ÇèxËC‡~gè°q|Ôcîî^ 2‹Ùó†rûö*V¬ìËÕÕ­VËHJJàû5ßfù …Š'OP øÉüÝËQ|?æ”fÀŒ fÂoÆ¢Ò(qö°i‰ »qüÄqz+2ÖF'%%rÆ^^öÁ …‚kׯãáæ–¦}ù“Û·ïä(_===¸ví¯×Ëšó0‘ Ù!‘‘QÔ¬Y-[2df4k2¨S§6M›6eÇŽ|µh!#GI®?M›7çµ:u˜;{߯þŽiÓ¦±víZ-ZD£F HJŒ}b¹GzÏ;vìŸôïûÄñ”s? ¼AçNm lG*ÀÊð3Ì9¸”V¥1¡Á ≑ÊUC(”Ù^€«R©±ZͨTjZ4y‡k×/qîïÔ¨V—QÃf3sîHÞjÕ‰ â¥iÔ²,ÎN.L¿„Ð+ÿ Vk°X̨ÕY³bqsw§_¿~,\¸Q£Çã[´(mÛ¶fíºõÉø“O>‘ ðË1‚e¼¤ø¯h‚ÛîÀvI’„–Bˆ¢’$…¥3`- ŒšE…g n‰@3 ¤â¢}ÿ¹ž Ñét”+ÿ Z.Ë䧈[;.űۙ/‹6X¸u6Õ±ëQgÉïT”*>Í2•ÉŒø>‘ãg¸rýo}Ö6Go¿á—“”+[š*U*“‘£Ù£7ÃhÙ¢+–ËÖ³Ÿ8Å…‹iHpÖÖO©ÔÆŽƒS~õÚ½æ’pd߯ÇÎÛ0›r?S¡|E¼ÜÀb!V¡æÞÃð\ÍÒ=BNÊkF(Q© ÿûó‰ãîùòsóòE6.[HÿϿȖ|OƒF£aøðáÉÔºuëÁ”~­¨X¢(K:ÌöÃçyã7˜={6ñññé8¨ÊÝZ;7;Ñ 7_ãË¿z¦›fßÕ•©ö×Z¢´Còávíþ…‰“fÓ·÷dœÝPk”,”ï¾ÛÀ€=øå—_(Uª$–¸¸Xâbcéѽ ;w´/+ÈÚó…Bpûv.>©×|FÞ‰gå°˜MÖ oeµHlžs C‚‰JPªmdÖÙKË­[avíyFåU›¥ò*DFF¡M±Ö.>>!Ç@«Õe³É‚&_ñ„ ÙEXØ-Ê¡wÒg]†G T38o2Ä3uêTvìØÁšïVÑ¥k7 )’ª,›0‘ÖmÞbìè‘\ ¡I“&Ìš5‹Oú÷}r™Ë£gÙŸgó@®¥TÉiäH]Çü|‹>>n2ròúI&]8J£ Ú|ÞtJ…Ò™¨Úþ’Þ ”õH V«…’%ƒùëÈßøúñ ü.ó>_ÍüÅyðð.‡œ"**œ+W/`4ðñ.ÌŒÉË)RØŸí»ÖS¤p1þ<º‡àà`$«åéõD’˜9s‘‘‘ìÚµ“á#Fs3,Œ_.&_>/š5kÆŒéS°˜_ˆ¹}yH‚ëÕ«ƒ¼Î[†L‚_Lt³÷R«ìûßu^v²›r@ ~ªË€@=``î§H+ì÷j¬æ•€•@Âsÿñ³émWBB)rSdr§Á{d¢¹jíV^­PŒ"<²}‹Åʦç1z<–g"È1$ Wõ§ñÛŽ!ÁïEv.G-]¯Q³±c?%qý*¼ÿÅàæFTLÌ¿R^³‹‹'³mÕ×|:k:'ç<ûŠjµšK—.qóf !¸Ëþc™»zþþ~¬[·«ÕJRRÞ­Ï÷T¢ŒwîÆÙ,8¬’•¨$[X­…yè R@hó¤à løi3_|±Œ~½'£Ó9¡V+)XÐw~;¸Nʼnc‡ »MBbE ¦`Á†©’°›©>¼ÅG&ñíàýÌHV)Ý ·+Çï±oÅ9n_ŒÄÃÇ™F½*¤:¯ÈBìß¼.¯¹™Tz‚þ+2dî@Él6P¡|Y:tèÀš5k˜?o.ÓgÎz"]¥Ê•>bÝ:w²IkÏ•RýªÕ*ü%ƒÉ¥ôe:T¼0ŸžùŽ6Þe™Vª=ª„8¤ØhD\,*šê?* ÈVNY-&5jÄÿV|KÇ÷±uû:êÔjÌ þY÷Ó7ôЀÃîC­Ö0}âRŠö'>!ŽÃìåƒ÷‡`2™¨[·îS½—'?ÓœÄÒ%‹0` !!ÿ°cÇN‚ŠR¦LYæÌ™#`\–Ã#ÉIð‹ !D1;‰Ý+IÒ#/Jë€ù@!ÄDI’RÚmNjý$IZd?¶Tq ‘æö½ìxŽ$IƒS<ó8°üEÉ#›©é9Ê—%SSÓ°¨ 4 êMTÒ=îÄ…¦:w'ö2F‹­³Ô*(蚺Áôq¤qñœ~Š9ôÓŸÀOÛ~aRŸæ9ºþà©P"£ãùàƒ²V899ñê+ïòZ½ú–hIô/?Þú5òm<ˆp÷ 2:æ™—×Ì T©Ñ¦1e_=gn^ùX:n¥_©A£w;æI~iµZ6o¶­9œ;y#'Ï#>Ñ€N§cÓ¦Ÿñðð &&ÆáÏ=wî¤råʼúê«|TqIòÄÒCÓ5&ìo @ïª p®’Lø C*™¬\ù=+Wm oïÉh4Z”* ºS  ;;woàðáý¬üß245¥K—Ì=ý’¬-âËÙ»6Ów³Ñ·C‘øÄà=ËÎkäVH Ñ6Ö_´L>Ú~5•ìøe‹ùfÙ»zfåU’$<==¸{ç^ò1gg'Ê—/›¼Þ6»0’ð)àåõÜ’$‘/Ÿ·oå\û\±Âc-ð# ôÉõšr£!ž‰'²nÝ:6mü‰î={\¢Dª4'Ž£ßG¶€}ôƒ $)1Úáõgoèa‚¿˜D›Æ¯ñ™±ÊÅ“¡ó@8öÖóÇQ¤ývÑ¢C¶ža6iÚ´ žžÄÅGó ü¿ìßJƒz-x§m7Â#°v½mh1ðã T­ü’$1Ñ$j½Ú”ý7ñþûïãâ¢')!;y`bæÌÏ™2e > @FŽ ‘ñ߆ÅbáVØ-üü|åÌ!“à]±©¹V¤èôã„ëÎ@`}ŠôõØ´À)1æX}lSÆÓÒ_ÍùVÀ‹A6o»¯<ÕÛntÒCÎÞ9DËЫ¯r×y3å·6\‰< €¯{FÔÙ@tÒãØÁ‰¦8Îßý=Õ±œà§­¿ V)hX#gä ûNÓªu+<<ÜHJˆ’[€ÜM1¡P(ùbölÄÝmàáù1˜C΂B5â!ámj“oãAp÷tÎjyU(T(„wwwî=Lý­KTªB‰JUÐ(¹;a°X™¸j}ž{;vŒ5kÖ ×ë>|8ùòåcÉ’%lÙ}€xûzÛ &P±bE¢¢¢îêæÍ›L›6ñãÇ3kÖ,4 Uª•JR© `Aw tççÍ«9wö_/[ˆJå¸nÉj5SµJUö~a[Âa5K$ÄÒU~žÙk#Ê •‚ÀJ¨Ú¢eëú>a$qçb UÛWÅj5纼Z­üýùçŸ ©Ž?r4•"E½×ëdÉ)VJ²ë„+%Nég '2d<7àïKïÞ½Y¸p!sfÏdñ’Ô]óâ… “Ëë—_~‰Ñëððo‡¯§ÿæq´l\‹±Ýæ¡N2=Öøò%ºJ=îHâ¦56lYƒÙŒ5üáM«‘_«F™ËQÙ)¯J•ýµÛ(á³O?Í0]uoWJ @ùÍ?âëªsx>I’Äøñã™2e ­Zµbúôé>>×Ä!=¸ºº2cÆ ‚ƒƒ)S¦ ÷³JÅãú”»%écæ¬ùìÙó'ݺŒD¥R£P| ºãSЃÖ}Í¥KçùjñhYÌFZ´hÁ«á<¼ƒÆIE×9o Ñ«ŠÔì¶Ý¨šô^܈›ÚðáÌ×)ûú“øÞ•(ÞŠ¢Y³fXžâT/+åÕb¶R¹r¢£cˆ{‚—/_6[ïûè>+–Çb¶d1,T¬X.]rB€s"Cf0â=z4NNNìÛ»—“'lÞ¼ïß»ÇÅ èûñÇÉñ¯ÇŽ‹Fç’+¯ÿiqâÖY>Ú4‚b^¾Œê÷5.ž……ü ¸,¸¸óã¡£Th×…ÿmØ’ê¸È6¶ÁdLä­·ZÓ«wO–}3ŽN†rèÈ~:u“¥+fS·vŠ–dæ¼Q|н1Z­•*ÖaÕšÙÔ­Ý‚Aƒ3xÈÔZ×T^ߟÞVYqsÕÑ®mÜ\´yG^Æ‹…K²S,2 ~aÑ(jÏÅØ4´¶íiê !©]=‘Ê*­—Ÿl¤}îpHÈ9,–g¦7<2š£'ÏÓ®A¥]ÿó3,èCƒ ò$Nî Z†µßÙ¹ÖûwÁb‹¡T‚Z“‚,+P•¯BŒÁÀïµâ½vM’·-?ÿDp1½ÃË«R¥Awé:”+_|ïýûé¦ rw"ÿʰl Œ‡Víð|B°qãFôz=±±±899a0<.{›7ofÅŠ¸»»‘êœ#áááAÑ¢E9räýõ ¦Ž›_À[¥‡Ð¢DŠ:•uøóOž:Kãï P(ÂF€ ø¸±â x›ùóf¦GÛ`0²rÕš·lG@±Ò/CÏ^ý²¥å ð£a£Yo[ÿœÏוNÓë¢HcšPÁ›‚A¨´‡‚ÿcÝeš5oJ‘"…2œÕòjµZÉïíMÉ’Á\¼xù‰óÙ%Â.\¤|ù²¸{ze#$ò{{SºtÉteÈΩ ™Ëg&>O À¬ÏgpéâEZ5oJËfM¸tñ -F©R1uêTæÏÿ­Þ@„ÏÝ»@· ÃñqñæÛ·çà®KfëÆÍ0víú…R¥Jpñâe>tL·oHŒaöì™|Ô§7ó &Ÿ—o·ë‡Ù¢âìùÓœûç<^ùüù Ã`®Ýá»ïçP"¨"Ý»Œføà,Y²ŒŽ;¡T9!²1ù(Y-˜Œ 2–‘ŒP9<’Œ—/»}〥±9¸J‹ÞØLœ?J’%„¸ Êà~i½³œÁæ@++iŸ+dÕ¤ôy©³!”)^˜2³}­$Áú_NÓµ[o$Éô œÁä-νȺ¥;sìÏ*&"ŽÎÛä¬ÑPë°ž;Ë>¶|T©ÁlBU²šuHüñ[$³”J4uêãúÕ*BNbî8%ðØá”›k Ê”pæèÉXžö"Y-¯J•Ý…«P?EYµš^t ˆ‹£ÅŠN¥ ¨³Ÿ[ ÝdÔ(î%ä U«Õ?~œåË—³lÙ2ôz=QQQÉáµ¢¢¢òDû››6mbÇŽ,_¾ü‰*IIj°92$™þìOû÷fÔèÏéÓk yPÀÇ%Ëf£× fLŸ”®æîØñtëÞ‡+W®RªTIÞn÷VÉÊî]{ ¹H™2¥²ôl£1Ïg̤zõjThä‡_ùü)åÅ{^cÍèCé:ÇJWOÞçü¬>µSZÏùh_Fï¿÷6&ÍÀßÏ—üÞùž ÂðtÓèû÷p3ì6={tÅdÈÞZN£ÑÄ»ï´ÍPkšö2#œ2ƒÉÏ!CX¼x1ÇŽ¥EÓ7“Ï;š¯ÿ÷-3>ŸÉA8p ùòå£Ãûïæjmð¥‡×è²~î:V½3—üΞO¤ñó-Ê×ËѤY¦Nï°÷•$+†Äh&NCóæÍ5j4_|9 wwOòç+ˆÅbáðïÛ±J:tèÈÔi£iݺ ¿ÚLÝÚ­3b93fõåý÷;²vݘ 1²i³ŒœÕƒË¡”)UJÎ2 ~‘ „È´€¤t¦6…_Ÿ…#í1~OÍ„’$]M‘¶àÜNq‹@=!Äë’$H‘Ö xå¹ÿøò^j´$á®+¼ï¥/œì$Ëqƒ‰óÿ\b@‡z9#Ðnr%ì>]»v})L¡/Ÿ»Á©ßCxíÝœuN§‡ñç¾3¸{¹fûZƉˆQ#¬’J…¦f]Ü&Î#Á§(nnnXîÞ°{3º×›"Í\Ϋ¯7áØ±c™ÞsĈ÷í!=rW^uÿ„Úplìãƒ5kÒþ­·àôIÈ—>„Ý»áСÇi:väu¿é„$z$߈§Ê—öìÙúuëøæ›oprrÀl6›RÆ<Æùóç™6mÆ cçÎT©RÿTi,Kž=÷ž½œ9{ŒÕ?ÌbäÈ Ì›?™¢E¼6t@ºxËÖtéÚ///Ö­]EÓ&“Ó™¦e¤[ÌFÊ—+ÃØ±ã˜=ås>œS¯Â.U+H›¡ÕØ8㯧Þ#üf,§cÊ”©”,QCR¬ÃÚW‹ÙB‘¢~´jÑ”Ý{öQ·îk¸ººdJ„Ó~«ØØ8þüëíÚ¶¢`¡B’ ÙÌ#› ­[5g×®½OÈ ¥˜¤ÉˆçV†Ì`µZprÒ3räH¶ù lÖ¬… fùòåôéÝ‹•ß­aÔ˜±L™4‘®]»âååEãFõ1â²ý¼ëQ·øðǨ*V¾3—B®žy/II‰1T©\Ž_öîæö»>|˜°°0T*ÁÁÁÔ®]g' ¥Š9sf3dÈP  8¨Ÿ ]Ìäi=5j4S§Nƒ ÙEèå+´jÑ\Î2 ~Á𠾓2°í‘$éšâ !ð63é…@ àk!D[»vØXšN~­z …M%Iº)„P ¯%£rëm÷FTB((hWf8Wžq¨Œ‘‘$Œ´¬S>G×ÿ¸÷$Õ^©Š¿¿/‰ñ‘¹–ÇÓÃýrúÌÙl]•< Í-Š”ÈGÃ9Ë+ÇîSØ¿ñ±Ù›¬P*ÕXBÎa:c[—çüÑ\‡MæÎÝ»Dß¾ÑhÄ©ÖÇò ?}†™3gfzO½^OÕªU0&Åä¾¼véÑéh6m‚Ó¿á!\IH`÷îÝ‘/51ˆ¥oß¾´lÙ’ &P¡B:vìøÌ븓“£FJ9øÌžýÝê˜ñù>ê݃† ß`Üø¼Ù¸Ÿôï“núŸ~ú™®Ý?¢T©ü¼qÝá‘Òj±³4QgˆeäÈϸ~ã+­ã­Q¯à_Þ› ý¹w5šß×]@©JßlôêÉûlœzŒ:tbð ’¢Þ¾ I´jÕœðð~ûí05ª¿’©F8eÜ¿÷€?ÿ:Æ«5«ÓôÍÆ$åPk4$ѲES>xø„ J¥‹Å’©Ø2d“!¾}ú°yófüüüX¾|9*•ŠÄÄDV¯^Mn]XýÃZ|}ý¸yóݺuãîÝ»Ù&ÁÑI±tZ;“ÕÌ÷ï.ÀߣȿÚ?[ÌÍ¼Óø|vÞ{ï=J—*†ÕbB†ŒìàòåPŠÊ!C&Á/™B¯|JºåvÜX!IÒ!D`p]q(‰M|pOA¢Ï !Þ6…§°y„¶¿a‹EüÜ#·¦Ñwc®€$ѶÔpÁzx†ûq×&ŸdµP¸paBB.P³óÌœÝøá‡¦nÔ¨>~ÙTh4j‚ƒƒršè´ZBÿ¹‰J¥$!ÆÀ©Ý×rt§ÄXÏ^ÃhÄUë Yô‹¬RëHܲÎFÛwÆyÈâ#ðp×ãé®Gê®}Ñuí‡Á˜@ÙÒY[KdHŒÎ² ™–×  ];ÛzÀ”&ÆiM…°kÞë¤ ¶š(\ÐË!ò¥–UÇRíÿ $0ðÙdBB.Òÿ“ÁÔ«W—éÓ&¢R©hòf£ôK·$±dé× >šŠÊóó¦uxyy:¦ ‘$ ‰1,ùê+ü™0l<åøSóí õ¬@µ–ÅÑ»iR]sïJ¬»Ìù7˜2eªg߬4+í«$AR’‘®];‘ß;??oÞ†¿oQ‚KáîîöŽŒŒ"::† .r3ì6íÚ¶J&Ÿ95{ÍLŸxçÏ—®èK—.;L†Ìå³&öíÛ ’„Á‡Åß|ó5ÑÑÑlݺ•M›I÷íÛ7˼Sbå‰ ¨ª¸²ú½yçÈÒ5 ¾˜•çuI²Z0g`"I†¤X/^HttS?ïMÿ>Ó)W¦:¯½Ú„¥K—±`þlŒ2 –‘  F> §h‘"rfÈIð‹»æv#ð?I’ž÷a0Þ~‹$Iq’$-Bü´*ÙIî2lbÏ4Ïv!Dil¦×µ€ÝØ4Äå_í„ø¹DJ½ ½íJn®®œú#$Û„/#œ?z™€Â%³¼.×hL`çŽüïÛ•ÄÇÇç虯¾ú*U«T”s“0½^O||<{ù5Wï3Ìæ%;>.'½>ËÜÊl20~Üúôýˆ`L´rôû›9’Á/ñ÷Ñk(àͬ¯Æc6eÍtQ©ÒÿåtÜ&/ ))I²"Yó¼r:–•òjlÖÍO?AûöI°Fó¨ =NX®ôï¥s' Ƹ<´?|øk×RORÄÇÇž£{ !²NÃ% WWWöïßï0g[¿ÿþ;ÞÞÞÙZOøð˜L&¾]±4CÏωIIìØ¾‹ÅK–óÇÒ¸Q¾ýßR\]]ú=­³üløZ¶lÉðφ±¸çn|ü¼(솳—I’ˆ0p÷R ¢hÚ¬ ßÜL©’A’¢³UN²Ô¾¦!2IIš7oJåÊX·î'öìÙ‡«« žžhµ:ûÀ4‰èèhöìÙGùòeéÙ£+ rùÌHww7T*%§OŸK–!22ŠØØ8‡ËiES7Œ ¬]»–fÍš%O8Mœ8‘Q£Fæ( ^xX8c›váö™0n–åë®]¿‘îñâÅ)V,ï' $«³1Ž5kV3lØpfÌîOÚÍ ¸KT”ë3µþñràêÕ«øøÉeGÆK !;Kxùaµš¥´&ÀY5Vª´\¹Æg#>#.Î1k]]ݘ1}þ…žf$Å̆=ŒKÎcI²æH+âñh5Z¾_»Ž7Â’~¼ûN; S–Žj•Z£º$ 0›1³f­Õ»‘´p&Jß@Ô-Ûeim¤£pVMöÕ=š]û ukÛ“'±–-xŽ0¼¼°8é0›’²^þ²•ZÇšï×Ó£G‡9¼R(|óÍ7¼ÿn;L¦§«GõväÈ‘[{ìææÆ´iÓ²UoCC¯P­F]êÔ®E` ?w<<Üyø0œ3gÎqðÐïÄÇÇãç[”Áƒx¨ùø IDAT>¥k×NézŠv$”J j­7oÞbÛ¶m?qœ[·ÂP()T”ªU«Ò¼ysŠ)„É%›´Ü.1Q*¨µ"ÃÃ9}ú,×®Ý 2ÊFè<=<(V,€ŠËãîé…É`Ì“õÜJ¥µV® ù¼¼ðË• ÿBpPjµÊ²ª1š}úô¥fÍšôëׇ¤„èT^ŽM&3—CC)]*ýóááø:ÞÐÈC9bè³Ô Z½ÇŸä믿&::†ñãÇè_XŽŠ #[غm'k¾_ËšïVÈ™!㥃ÞÉS&ÁÿU `¶Hè²`­TiP«õ8’y™L‰yB@òtp¡h4š'â‹æ8¬Æ<Öœ8 …µÖI²b4Ä?S/ÛY-¯ÉDxï˜=iý$¨Ÿ­A†Z­'>ÑHR’cÌïu:ÎNZLÆ„¬ƒç¤ÞþúëoŒ3žÛ·ï”d .ζFS¥RQ²d0µk×¢U‹fÔ©óZž“ßôʳR¥A¡P%¯µ|4af13 ƒäÈòšÙä‡R¥L-e“OÂjµb1[ž‰Wñ¼’Á‘$øVkœ’Û¦´®@žF‚M&'Oqxþ)\ˆ"E ?ó¶Z©Ò RiQ©u’â0›‘!#;˜÷ÅB"""˜8aŒœ2d,ã%Á³”ñ˜Ìɦ-2dÈ!ã_ĵk×ñ)èƒþ­“OLJâÞÝûøÉ™/CFðqÿAT¯þ vê g†Œ—)9¯“³ 9KdÈ!C† Ï x“ÿL´ÙV«•„øx||¼åŒ—!#‹¸z… âÅäŒñÒB%gÁ²ö_† 2dü›ÐëõÑÑÑ3‰Î&“gg'´ZÜÿÉ‘U|9”âÅ‹ÉuF†L‚e8Bˆ/€¢ÀeàRŠßÛ’ÜÚÈ!C†Œÿt:}²m2d>dë 2 –áX|…-„R0ðÐ\…WÒãG¿·d‚,C† 2dÈ!#/!›BËI°Œ<=vññ‹íñƒìä8[ÜáíûnBˆÐtÈñe L&È2dÈ!C† 2r‹ÐÐ+É$X†L‚e<;r œ´oäG$¹&Ðɾïn× §GoZÌ&9seÈ!C† 2d<—/_¡¸¬ –!“`/Av!µ¹ÐѾïQ¾Bý)^,âÅ‹QÌþ[¤p¡g—S† 2dÈ!CÆó‹ÐÐ+Ô¯_OÎ/5žË8ÁBˆ)@s ¥$I7Ÿ’vðð®$Ižl$I7^ˆ,„ËñãÇbÿ>ŠÐÐ+„^¹Fhè®\¹Jddþ+H?"ÈE‹– ² 2dÈ‘HJJB÷Œb$Ë‘]ÔoØŒ™3¦Pµje93d¼”prözn5Á~@E@›…´EìióÜŤ¢!ð#Ðx!H°$IqV‹™A¾i:àDNŸ>Ž^ïÉ•«6R|üÄ)~\¿‘ÐÐ+DEEáïïG±b´kÛ†wßi'×2dÈ!#×8‘ ÎS¾ü+ÈsÍ2žGÈk‚eüð¼’àñÀBàæs&WÀãeøð:žWªÕF§ÕQ¡BÙ'Î'$$zå*W®\ŧ@¹¦È!C† êË•­V‡É”$gˆŒç ‘‘Q!pww—3C†L‚Ÿ5$I B3:/„ÐK’”˜•{ !t€!«Þ“…Î’$ÅçDn!„ ÐH’”ð"||¥‚ä8­i–““åË•¥|¹²r-‘‘²nb0Q©”¨T*YYYY†çJ†™õ¿OƒÕjÍòr¥ì¤Íxl£@£uF¡ÌÞ7µZ- qHV«ÃòMZ£F©T‚ȸšŒ&,fË3ûž … ¥JƒR©B…]+‹‹ÙˆÕj~&2¨T¹”áòåP‚‚ŠgLÔZÔj=ᨆ“1³Ù 7 2^|,„¨lVI’4&ã$Iz3 y< œ”$é!Ä\à-àuI’®ÛÓ`Ш*„¸,!ƒfPÑx[ÞD!Ä6lÚå5ÀXI’V¦H[X€Íã²›â&6³çQ’$%ÙÓ¬šØ/ùŸ"¨(IR´¢10 ¨ ¨„aÀ.`ˆ$IÑÏ{!xšiVR’£ÇŽçøþµš5ªåøúcÇNðîû²xÑ4nÔà©éïܹK»·;ðé§ýnÆ-IÛ¶í¤D‰`J”úÏ5‘+ͬ™SéÝ«{–¯Û¶m'5jT#þ|ÿš ÏC>È2üwd¸sç.'NœÊÕ}ßx£.NNNò·x‰‘]ÓèÇÿ`î¼Eü¸n%" $dÀàÔ­]‹·ÛµÎ±Œ:½;“§Nc×®ÝÙº®fêLŸ> “!GùŸÑé´ìÛ·Ÿ£ÇN`6§OêÜ\]xûí·ÈïíÙ”·äS©Ò Ñ:z•mÛ¶qâä nÝ Há¢T­R•-ZèÑÅltü@^¥Am—aëÖ­œ8q‚[wÂBP´ˆ/U«T¥yóæY–!³Á*µ–K—o0â³Ïˆ‹‹sˆü...ÌøüsŠýˆ°ä£2 v,ÎÎ@{`LŠãoþ€Ÿ"Ÿ$Iáöã¯e€eöýüötê׎³oûþØÖXÓ!À¥ÀY`8àôÞ€kŠ´5½€ØìªºBˆZ’$™ì¤ÖhìÁ~È „xØ‚mðl&Üõ@y;±~®ñ4Ó¬û÷ïÓ¬ù[9'Á5óçÍ¢cÇ÷rt½Édâþý Æ,§?{î<†çI~½ß± #G eÄgCä$Nœ8E•*•Ò=·gï>‚‚Š;„¿LH4%qönÕ}+½Tï%Xlc ¡ÔÒ.Á§†ñFýúh4š]íÚ5Nž:ÃèQÃäŠò#;¦Ñ‘ôýdùýY¶ü[zõì’iú}¿à¯ã!øí*W*Ÿ£7J•†ßbꔩ|øÑà,o°M³b1Õ«W§Mëf˜siö-èôzNŸ:Íë7R¹rEŠôey𠜹ó2{ÖT%)O4ÂB´:7Nž:ðáCÙÿë ÏO+ÎlîlÎ߿ξ;8p õ¼ÁÌÏgQ¡| I±™H)ÃaƒùmÿA ÏO \|l–çî]ç—ù;0` Öçó3Ÿ*Cfš`µZÏÐ!CHŒˆ¦NÕÉËÇŽ0|Ø0~þycž“`•J‹Fç‚Õj{÷”– !‘˜$Yå†I&Á¹I’Õ®yí,„ðKáI¹k'¡oëíÇ›Û7ePÑkcíµ¹d/¡Bˆ-ÀïiÒúÛÉôàÕG¦ÉBˆ¯siÒ*ÅöÝ ’$ýmÿ¿Xq˜m'Üs$IúVác'Á«%IÚa¿G{@t$é¨ýú…Bˆ­@u!D€$IמǟÒ+¥iV†äïý÷©VͦÑU*•YÚFŽIxøCúõ„wï,irŸW\ºt™O •[ 0jÌvlÛ˜>ÙKL$>>þ??R˜ëß*” Àh6Ñ÷ç1½uš}Ý¿§€ËK0A`k¬KàÓÁ#ٺ釕ãððpœœéÚ7{ý߯;7òðáÃ,çÌÉž†Ã‡çÈ‘¿ðöÎO­Z°û÷°æûulÚ´…Ê•+P¨p‘,O¢gMZ½&Nbú´iTjÈÇ+š¯¨kºéÞŒåÈ—¨Q£:£Gaô¨‘$%æŽlåF†1cÆ0jdÆ2„†^¡uëÎFÄÅÆÑ z->ëÝmñB(œu˜ïEb~ô” ¡R¢ôtEá¤E2š1Ý‹„Eó8ôÏ©\›W«5zJ5HVLƤtÍ¿µzWjÕz#GŽþøãå»Ý¼ªdý·z¾ûʉ)‹chò–ãœ5þl ÛöìAÒš‘4&И4&$9ù¿ÚlEc”Эh ’ý¿„Öh¥ŽoöîÀÓ3{>)‡ì'Ÿ›7= g)}xìCn…ßÀø Ì1sÒÿÆÆÆòÇ_'hßãm‚×›÷¤[Ïþìݵɶ>6 >þt8•ë´ÅÙÕgWONÜÀ¥K— ~ñ–ñh´6mÜ̾_C¥Rb4š¸zå"ƒÌ»}ûB¡àðïGغm'ŸÏ˜„Nç„Õk“…hõntëÞ-;~¦óœ×)Z:óI“ü¾®´T…Šoú1wÒ,®ß¸Æ²%KIJŒÊ‘Fø‘ ]»wgkd˜3i×o\géWKÒ•áòå+™® N&>ž¶~Oô¸MšîÝnXÆaIGhPy{ òБ¸~%†_¶¡§+êWê;¤ŒèœÜÙ·ï?üðEŠaذ¡¨”‹%Íœ$áää„R©ÄbyLØÕj5Z­I¶Œ~É!¥úŸ—$x7`xD‚íäTül'µ ì•Ù›)ô„LîUÁþûO:çΦ!ÁUì¿§ÓI{2Í~ ûom!DzZè$àiöC«n@O ‡â(6ö¦ ä}.Sï” …"]ò›Ñ&„@¥R±þÇÕÔoØŒví;°oïö g¯_È$8å€ÎÀ”1£p·Ä1sò$†Œ‚óÿÃ÷߯Ã%2ŒoÕF’$>œ8ò5ë0v̇<{êÌ™©Y/ŸÇ€Y³¿ u‹fé ÿÕÇŽ Xü-ˆR&ÆìËŽ‹ûá>V‡ßÆZ3Å‹N‚­`MS$EI$ÅZ1ÄKXÍ ½«@¯@—¨@é-!´y?â°X`Â<–®ÖÓ¥}";VEQ"ÐLB’ààŸf.q¢qOÖ|M£:ŽÿùÜ”Jmííaëz÷îÝK¹råP«Õœ:uê_ût¾j74²z‰5_wlü²+JÍ:Ì~w±úÝÅ싯ý×ÿ.f¿»zHÑëFünð·ÿúÝ0áÝÀøHLJÄ3ÞªñZf­­YÿûjƬôÜö¿'O¡h@¹dmY!ß`®y1÷‹E Ô?UÚM?o%ìn,k¿š|¬P`Eþã…$Á ¥‚Ë¡W¨U«uë¾ÆÆ[غm'Ö4Œå‘.WW:u|—’%K0yÊçܸq“R¥K;„ku6íëÖ›é<·>OZz„»‹Õ"\£PêzV6?çÔáÛAë ðdäˆa$%Æä\†?ÓyN< :g½®'Ëð#þŒøìIB¯\¥x±À§ƒ4*·¬ fââÏÂãËUhJVÁtã~²VX¨•hü}0Ÿúƒ:c £”*Ü^mœû¾U­ãøñS4mÚ4ùŸ Ýì¸!6Sè¿°­Á)„(ÂcSèÌì¾|ì¿éµiöMû¦ç¡9­CÁGm,ž/øcv“¡7jI’„5€.@[lÚîêÀT!Ä@7I’ž3Û [Ça3ÁJ´7 ™y§”ž ÀJ¥ò©ZàG$øö;ìÙ»^=»2múlš6kñ£qqqÉæÌDÖd7}vʵ5Ïîý"΢…„\dͪ•´/íN‰†íØò×?Ì™=&ÍÞ$Ÿ—uëÖfÇw!H’Äíˆü‹ñNû¶¹Ì»Çתµj*Ö®L¡€ÇÚžmK6=ƒï#eð?%ûéº hŠ:u Ìüm)ëÎn¥_Íéöj+¬õÂQ3ç‰ ·nßaÁWK8ÿ÷?øûùòQ÷n”+[&OòA²‚dK¢„1ÞJ|”…¸h+†$ ’Zg%.ñJ\ œÌ )ˆÌ£3ÎI‚þãÜøý¨†ýë"(ô8Ÿ]]àíæ‰´h˜D§îôêÆÉáxyX$ƒí·R°žJÁ釱¯_¿>½zõB¡PðÁdp_Éqe2ü¾_MÙÊ&<¼,y[/r|_É2ý²§¬÷¿68;éIŒO=@¯^ïmV/C³& )S¦÷ï?`ÜÄÏiÓe\ª´¦¤8œ]œúnj¥ h>:MúÙeKàZ£G©z<dµ˜1㳡}œN¥TñzÝ×ðñ)ÀÅ‹— »E±b”.]ŠreKóãúT­R™’%Kä¢,d0`Vi9yê Ó§M£ËÜzéà“;¯²yö1Ú ­FÅÆ©Î{vá­Q¯0qèDZµjEÉþÙr–¥L!Cç9¯g‹§”¡í¨jL6‘V­ZS"Ø/Y†»wïáææŠ““þ©ùeM0 kØãÀhÀz'Œˆ·ßÀeðxœ{ ÅxýÆ¿ñó'·`jrÃ,4tZbM4亞«5z¦Nšj’cÛ¶m?~‚reƒ±¤°î°˜ ÄÇ=@«Km6nHŠÅd|!»ÈxH°›¦@5; > I’Y±‰Mܸ&IÒéLîs¨ ®¦9—6ˆí£óÀõ4ç2H»R’¤i¹ üQÀ<`ž¢6ÏÖŸ`s v›çéç6Ó¬¿)_¾j¦¦Y)IpFæÐi7€¿ÿá£>Ÿ<ž‰ˆ‹#:&6$ø9¢€ööYÖÛpúÌYn\»‰2¸¤­ŒÁ½{ˆ‰Ž¡l™Ò,胇›3&L (˜IŸÏ@ŸP /2L ]°|íŒzV4ÊF6mÏң߳ôè÷|P© ŸÖêb#ÇAyc†»s×f~¹€vƒÞ§Ñà6Ü ½É˜™Ó¨U±CôÏ“2,3“$âc-DEš‰‰±`0ZШ•¸º)ðŠ×`6*‘¬* .(òL#üíz=»hÙÿcòYY¶Æ‰½‡5ÄÅ <Ü$†ôާrYË?¡JÓ|¬Ú çÓîŽ]»~ñ¦ÛS›äðTQ&@‡³³3'NäúõëìØ±ƒ7ß|ó_+¯¿ÿ¢¥As9fíóÚÿV©R ½ÚÄ­k! °^¥RÅ­?¢{ïO9ðËVÔj½ú¤Fýèôû׈·¸vž6­¦åJVW’’Eœ‘$¸x'@o ³fLåÈ_G³Î]´lÞŒz÷$1!2[Ï`â¤éèô”+Sš† ëQ"8(•ó¹²eKsñÒeÊ–-íðo¥Ö:3tØ*5 ¤H)¯ô ðœcÉû›fÙÜĤ%Âþ彩ÐПÏF gÛÖ-$fƒk´Î >”JMŸjüÊç§B†6Œm[·’h¶é“Ì Ý»}˜¥{X"cÑ·ïLü‚©XܳτBÜ܉˜ÏÇ}þw`µÕó- ¿í}<€R(ÞѽÕÃ¥»¹ú& …Šû÷²uëÖ'Î-_¾œ…_~‘ŠËñ,IðlާÞŶövÕ£þHÄî¨>ðÕSîó(>O3laŽÍÁVJÀæ5ú=ûÿ”è˜fÿlŠû¦ê„… À?’$u³~4ZU¦H7›ö÷MI’¢%Iº,B„`ód]áy/6Ó¬ªhµúä™étg íÚ߬`•JÅÖ­[ILLÄb±`6›ùá‡;öÿìw|ÅûÇß³Ws)¤@€„’Ð;ÒbAª€ ˆ~;¢(ŠØE± ¨€D±€ÂOAQDlD@šô"%¤ÒËõ»ýýqÉ‘J.É”y¿8.»;;7;;e?;Ï<3å‘ÙÙÙ¬_¿IŠàBüï¶[tS&?÷ÇÇÓªSWÞœör‘üéÜ¥ Í:Ä1tÈ  *€¯¿®†¢uzö¾'ŸwA~_iáDmêDÔ÷4‹wÿÈô51¨y/^ºá±óZ†Öþµž¾ø” ÿ÷*zƒç±aëÆŒÿè¾õ¯O{‹Ÿõ¯“7¡QB ¨n—òr]œI³‘™ãɃÐ`-–<7.—'MŠF‹¢h£Ô2×ü¬,¹y‚Io1ûÕl‚L*#«Æð›­,z7EûtŒy!„9S³hÓÌÉð›­¬Þ ?/"xËþ¢# ­Ð"ÆHff&Ó§OgäÈ‘dffž·òàvÃò¯H=­¬YÛÍî­:ž˜”Àé$ ‡öiÿŠƒÞbÇfMZ8yìÅ\Œ&µŠ¿í©žÂe;ƒËœ†;;wF6îÀ\T£UkÙfÇvÆ9ÝIN–“Œ<&«£ÃÍ}Özu¹ÐlÜŒvãfĉ$:*Ù\“nðØÏWç~ÀC£î+R¯UUeöœÑjµ<4ê¾*õ¿B>ýø] ºÓàG ‹ð²Õ¨UŸèؼúút5Š%Ïn$¶i;ïyæÜ,þøþ¾þr.z½®JÙV3ÔÀ'ÛåTî!^éñ _}õÓß™EL‡ø\U7cÇ>NÇŽiÓª .WÅÌƒxi³eoѼ¿þú‡ÿÛsEËáÃGø3~ ~Ö¯l\Ì  ,!7¬sü…ãÇ“ˆ¬„Û‡r^†øÕ–š†Š7¬1³\Åñã'½i¨Å3>ö‘ªÓ…3ËFµ™óIQ(=N'¶ßW’zCkp»<ÙUèe¯ªúîœiy¨®ª™¨kuF.üÌ; |à 7ðçŸâr¹X¼x1³fÍDEz|–\x¬ªêI!ÄV<Ë)ÀïùûmBˆµù"XP†Wèbbú0I±QUÕQü¾y¬6›-ìÞ³W¶Å`ê¬YÜ8`ÏOž\f˜‚¹lªªb6›Ïé5×ku¬Vè¹Ünú¼;ó‚‰`M/+š^ž‘µŸÄ3á×w¸¾ASû>‡8¢Çù³íÈ<òï(hJÊ&¿1•羜ìÀ…¤‡=qŸL˜Í²å?0dˆ 4Zv«gq“”j%Ûì$4HÅæÎ©¦ 3(h J€@ ÷o>|÷³‘:µÜôïicÔ³ÕxqlI§>þ?N'OÒðÆ 9ÌœȧoeqU +Wëý^v a`·Réõzìv;«V­""âüx$¶Û/<\ž­<ðd{¶éó¿0†Þu¶½_ÿ‡­vlÒ1ðV+×ö±ñÈÿÂP40þ•œ*ýþUíbHÏ|7dºQsÜàBÕ¸Aã ŀƹ.•$ºT4ŠŠ&J%ºm$áþËÍÚõ^›†rì8¸£kƒªÒìø 9ªcþ®I/àêæÛê†ÙÙÙ<ýÌ‹Ølvû°÷Ø;3ÞãåÉÐÃo+býTÑþ zõ¾\ð!·x>Þ$$ÌÓŸ¶ï>ˆo>™ˆ9÷{†?2ÝÞbÎ᧯¦ñþŒ×}rtTF½B¦5™“Ù8š¹›ÈÈH‚ÃjÒqðEóX¸Üe×çÄ¿àÔ©S´mÝ´B¿ÊÞ½û0›-ùæº%©Q£::žÓ§“©U«¦ÿ–µ~üñG¢Ö(á¹T\ŽŽŒ©FdÝp~úé'î¿ï.Ü>˜âj´V¬XATÃêüúñ.þÝ‘‚ÍìDoÔúþB‡Õ‰Á¤£A‡šÔ¬Ί+xàþ‘>¥¡8Î3™Ú]MУϓ;{šWìª;®ä$O²öÂAðø—Ñ6ï€íð)¿Ü—ùóç{·zè!Ün7ñññdffòã+¸i`v ÉÁù,:)]¢è7  ¬+GL§ !€MBˆ@ž9½ËAÅN¹%_X¿ ¼•/´Ó€/;óÅkOuð,Á4Jqh‡gÙ£•xÖ&.`7žÑàWò?-ðx›îg)¥QBˆ@K<ë$/á¬ì‹Lûf‚U¤.Cü–e"]šÐ-˜¤(¾»†5 Ô«[‡3)g8“ræœa322‰Ád2±gÏ?ìÙóÏ9ÃÇÄÔóYתU“±=Â+S¦þ§#Á³Þã×øš4nÈ7ö9¯i~ñ…³bÔnw0âÎûùnÙW\v¸Àþp¢ºÝëžù{kÿÝÌS+_£ctkÞ»éet Ž/L¸– ê9Ñ ô¯ êÓ/¾ÄÝSFPf˜»'âµá/ѵsg¿>(*&И@ ÐôzVàpª:mÆ ³JÓQ IDAT¢ª*F½B@ ‚)PAohƒôøÕ,ú÷õzö¶‘pDKX57é‚  •Ñwzô²sóþÏDFVþ‘ èÎChµ«8]E¯K«õ“ÉÄÕW_MNN!!!ç¥HN}!˜èz.nê)gAÁ*¹9‚«{ž5\÷›mÜ?.rºÛÙ»CWåßÿôÓ·/šê©ÿdú·gáêÔˤçquêùÓv–®ý‚ŸçLàµ%ŒÁöÜx#‡—gµjÕ3f |ð^šLÝºÑ 2ˆ¯ëÀcÇŽ%((˜•T™þ·€Æ0ÿ³÷yÏzGhxM„¢Ð{È–|öš·o2çf±âÿ¦ñδ‰tíÚÙ/ù—œiçÆÆ£yoÓÌÚx¯öü>½z~ƨ~±Ä5 åÐ) o~{ DÙ¯Rû¢(ÄÄÔçÀƒ´k×¶ÈË$£ÑˆÓéÄl6Óªesö8èß¶M£eÛömD6ò]—#„k5 aëÖ­<øà½>>ƒiÙ¶m5S½~0Ö{¬ìÖŠO©±™ÔkU>“­Û¶2ª K…òU5Ø&8vŽÝ[±ýµú¬èuØ‹®K¢Ócè=Óƒã±Jªú -­ž]»÷°gÏïËö””D||< ,`ÈÁRKþ3ü%žQà„bK-ÉŠTU-n²8L!§Wù£¶Í›ðŒèÆ‹¯Ï§ …=™¿¶pW mþ±?€áù"8³PØSBˆkð˜OwÅã úS`…ªª?p»…½€~x–a²«ªš%„hg9¨8íu222Xµêgž{~"'Nœä½÷?$""œþýûóæÔWq:ÌUê ÓªEs¾œ?‡;GަÇÍR½f]R“Ó¨y'V¯˜O×n᧯¦óÞŒW¹¦{7¿åaFžƒ¶±WeKaÚ_·óîûóY·ÇÉ[NcÔih .oÀˆ6¯ðʈۘ¸ð¿ á&òϾED°Ñhä×_ÿ eËæT¯AóæMYµê7®¿î?öù II'ªi¬˜>‡ 7p2éŠP|NÃÉS'Œ4ÐíÖ¦ Â¯ïªÔõôÝ–¸¡ùõ£]œ<é{J½4‡ û±3„~¸˜Ôë[àN;ƒê(fæ®Õ£‰®OµY_`?š\îzÂ>Õi‘ x·û÷ïÉÀàÁƒ7ÎcñµråJÒÓ3 Ðødr.‘"Øßí‰ÀË¥ì?RÚþücË(Å[´ªª§òæGÅm*$NÚàqLµLUÕx ™3 ! Ü¢.¯;_P/òázþ¤Ø\cUU­ÀÜüÏ%CE½SžkNpáQâs ÄÊŒ_Lü×K?»\.®¹¦ß|ýE‰cCnβoKá3? Cû«¸öÚ«‹ìß±c7ß/ÿ‘W&¿ä—´Õ¯_fDÇíèÒ¥S™éŸ3k&öŒd~[õ ½úö¹ày˜““ýcž"+ç¬Óv‡ÝÎo¿JËfM«y€ŠaE*B§²?õ0÷/}ŽšÁ‘|zË4‚ gGD]š{òü^6ßxëmÆÌïSøØ– !DËú ›éæ§‘"m¨Š1‚ò4„šµDš X¬nœ. Ò¢Ó(¸Ü*6‡›ÕͬⰀÁ"иý·~°š/ðT›Àæ³E` ðÔáï1b PéÜÖªz¶Gð¿wÐ1C«3fhõR¥§§“žžN=غu«ßû˹&nèo#¸ÚY1ûý¢â®³£ËÿÛ7é°[ÝzØ ÕSØ·KËc.²… *+`, ¯MÃÙóúRp±·tØž‹’pÔ©8¯¹ ç6“w9-Ìûãžx’ýû÷±rå*5Œ¥E‹–¼ýÎÛEpeûßâ´hÞ”o¾ú„¡·ÝõFqdÿß„„ÕâtÂa¾ýt_|>‡Î:ø5.•<‹Žž îaõ‘$edâêžü¯ÕK¼sÿ 2sUì.Ï —…»&2¦sMÇû+ûM7mÖ„5Vâžååå±yón¾ù&š4iħŸ}ÅâçÑ?!Póo…ð9„pUèv›§¿ª¨î;º-q·4ñöŠ¢øÑgx1 @¨…6ªz+ eáÂ…Þ}·Þz+ªªKëÖ­Ù½{·×ÍC£îÅnËC")Òt\†×dË× „µó+‹Fq3ð°Ø!oýY<¦Y{)opΗ5‚Ë!­ÌHð®Ý{¸qÀ6oöm4øôédî¼ë~9Î1 :Àÿj$X£ÑðÃ÷ßXâ³dñ¥îÿäcôìÙ£ÄþÎ;òò¤0ý7ü–››‹ÅZºy¯Ãádîû³‰ Ê㻇ó÷‹Ù¶}'9994ÿ=zŒ-Iél¬ÓÁûÙª«Îª_Vûç9)ÔÍ1ÇIî[ò :#óo}‹ðÜðó¾êʺ¿6Õ¼.Õ"|_OõOßɫӧùõåŽ0©èÂ!0B©%²–ŽzuŒ4­H‹˜`bj¤E«¨*¸Ý*.‡ŠÛØýW¯êF¹Ù²[G·v|À]C-¼ñAÌ71w¡ ­Få‡ß Œnfù¯F’’†õ¿°Þ‘###¹å–[PU•^xÁÏ/E`ÓŸZw8ë™úÏŸ lˆ×1…þëw­;:)´4Ôº_ «^êKÍïñˆô ìt+®´Ô’£À;®“ÇÈztú˜H„VSµ:­5ð믿’’’âÝ·{÷n¦M›ÎÔ©S1™LÞý ,@« û’h/· RUõ€âàI IñgàÃ@/õ tW¸ï+þ PQïЕÀù÷§Â"2++›uë6žîÛr f³™ï—ÿÈ5×tók&&áÙç'þ§"XFSzçQ֜€€ÒN‹Î“ ÓÓ3Øù÷ßäd¤Ñýê®Þ%² xáÅIìØ´ž;ŸöøŒk\#ˆ)S¦òÀýw3`@¿ ›-M…2Ãà·{šœ›ÊÝKžÂévñåí3¨¹©¶ñÕÐ>–‹öó÷&zÖœ¹ëõ+tNhõ0¢š×cÍÚ¿¸îÚîþ*‡BˆSAuëP^¯ZM‹ÕæB‚-zƒðxŠW…gu —ÿœD÷¹ÆÆ³SƒynL.Z;x|rßk&<ÔÍú­:>ýÚĬÉÙ¤e*Œ›Ì”ñ¹úïe@\×Îôë×·ÒV/6›§Æ­R›Ÿ—+ÈËñäèŽM:¶nð€NWÛY÷›î½l¬û]ÏÀ[ÏŠ]Kžà“Y¼ùqã屺fçnÔà`ܰôpµjj2¡Ù¹gß^>õmz­ÊøñO±:>ž=z Ó¸Ëž¾ö¿ ¾^ǘç?§IÃZ„›xzòÿ±èë•D5hG¿.ýø¿¹ÉLO¦c÷´¿v(ýnyšÝ‡]´j^FãÏÏ'ñh “Ÿ¹¥Jy™gs‘‘ÀÝ0ý¯Ûqºí¸ÜNl®<ö¤Ä£Z¡àVݨª›9?ÂÃæ0´k{¾^{Â/÷³Y³ÆìÝ»èè¨ü Vbıu$`4yàþ»YþÃO€Ç¯ˆÓá`íÚõtíÚ^Ãî¨Ðoº\:´ïÀïï®$(¢ê«$'fqú`né€Ûåô= :ðÇ{?Ùïëˆpq p:!›ŽÃ:úœ†’)èë×$wÖdlýβãQív¬¿¯@;w:¦{ŸÄv¸òó‚uº€"±^{íµRÃnÙ²…S¯&.—É•KáæX½Ep~g4^ñ³èúÀOx–eŠWU5C¼‡¿¼Cûú w)›C׫W—÷f½Eã¦meá)å¾N~æ)Þ¼µ#§Òs™1u*OO˜P$Ìôi¯qøP"/½:‰h“BªÌ’o¾,SÔ_*¸hq­2¢»?,M6÷~û4–,¾¼m Âë¡Öp!j»uÏß|¤ÿ=Š[Õ£jTøÜA£‡2ó©Ù~ÁÚnŒªBA«Ób4 B2µX-.TtzA`°]€@£áç&aØMV¦}È]‡²xN&;ÿѲân7tíà`ñœ ví×qçcÕz£•;oñ¯éä¸ÇÇ0îñ1ÿY¹TèÞÓÆÜ·Ù¼VÏC­4jš¿\×g&|2—5u‘‘¦x@Kò)…5« Lš‘MÃfÎK¾]úiëw8¹‡‡¶&ÑLX7÷®2Ã&eœ,™A›[vÐMH°[†Æá°¢žcbEúß3i9<=yw éʇÓïCQïÎ[Å‹¯Ã#ò϶?¨_'­íkžO«Î7³ü烌¾»'Ó&ÞŽ‚×f~ÏÔw`ؠδnV·B×Enn3^}EQB0éùqL¼nŸlÇ‘Œ(Š—ÛK-YnŽfî¡v`¿Ý×&ñçš¿¼N-N'u¢£Ù¹s7.§‹;wS¯^]†Ýr3­Z6§fÍH¬V+yyy¬Ž_CϮϾ/ÏärÚ0`O<ñ7¿ÐÖ7Ô«ôȺ·ËMü‚½ 0Àçul]N;dܸq¤Ï¡zÝ`Ÿ…pi891‹3'2+”†’í|(ŽmëÈûàÍ" Cèô(a¨ªwfÆYgYN'¹oMBßå´uZâ<“Y‰üSÈÉ5óý÷ßû|Î_|Áä—_’"XR´ü^Æåkµò—þ&Äjµpðà?´jÝEøö椬9Á´…"ùÚ„S}<ÇFõý7|A£Ñ\ÐéTõÊ,;ÅóvçÎݼðâ$º¨Q-ˆÕ‚xsén´“o—ü_‘Ñæ 0uÎÇÜ8`üö9BT< §¡,s4U-ãÐ9Ê„ªV¼L¢‚ó‹@Ü?±4Éæþôg9šy’O‡N§edO¸6ô+S+Tæ+š†O|Á #úV*žˆZÕÑV3²oÿAš5mRåòpVD€6ÒQ(zØ V±™5¸œªgtØ(0*h ôžsªR ŸkÔ«ÌŸ™ÅÍ÷‡7(‚ÇîÍã¶›,™Tÿ«å‘ ÕøîgÏ<œÇ“æUéþœ¯6§ªi˜:/‹›t4ná$¼º«YP»ž‹«:;Ðê<Þœ—É铎ÔR3ÚÅÓ¯åxÖzV/Í|( EÝ6¸Ü.R²R8¡³—ë 3={ïÜ´ŠŽuÛ ZT„ÕŠHKÇY¡kq¹\¸\ç¶ø¨Hÿ ðí›1[íL?ÔÛf>|w/Þ™³’?V­äšvF._ŒV«aÒä©|õÕ|%ìí«ž|¸?ïÍû…/¾ù‹7'Üîóõ8vºtîÈ{ï¾ËÏ?¯ò ¿õëÖP«V-F^5‹ñ[’~â`ÚfNfï÷š÷*BK׺CèQw,¯/I(­9ö-o‹…‰‰©ÇÂE‹½K%¹Ýn¬V+-š7c÷nÏ2†ÇOœäø‰“DGÕ&''³Ù’/$]¬Ž_Ãu×vG§7`·Ù}¼¯NbcëÓ³× lúöŸl_¥òùý´­Ü8 ÑQµ0çeT( =z^ÏÆoJ¤¡,!\šØðM7ö¯XŠˆQ­m5#gÆÝC‘FC£ÅÐ{ Õf-·›¬GîÀú窳£ÄB9v$5þ܇+#ǧþ¹0:½‘¯/Æf³å¿¯R6lX k®ýû÷³sçN¾üòK¦Lyåìó¤zŽöK"E°äòÆh  e«|,{å½CWtD÷RwŒåmüÿÃ%’.6Ú¶mÍŠ—òüóÇÎCœÎÈcÀ-øwÔCe”=#Fãe“‡ÚQ¹X[ä16ëö$佨©´ÿª;<‘ Úóß«ªªÊŸk×ñú³C+G¿ûnâÃO>eæ´©þMœÚHŠК†ìಫ  Š.@  (*èý›_íZ:Xûm¯½Äkïažæ)sanÜ`cÝÒtÇ:/Ûºi0¨t¹öìC¾Ñ¤Òñê’ýµ¢]ÔŠ¾¼<§~ýÔʳ/0·mG{×,¾ê)œ>zÂ×þú¸\¸üèa¸²ýïÎŽQ=<˜èÚagÓ§ÕЦe=NNã£9¯zÛÓW^~ž‡Þädr¡ÕL…^ éhÙ¬{÷UÜ$ÙbÎäÞ{îäûï-ô< áÝ÷ÞgôØg?ã;ÚÄ•.€ìHaoü1¾Ü¾¼ÂiðÖ«°`,‹?CÍÌ·›‚õ¾‚ŸšŒé'±ÿ› BPmî´¼AîÌ)±ìvã>“ŒeéBt×Ý\ñßÕèY¹òlýîÞ½;_ý5NÇÙiZ‘5kÖpÝu×y^Š?ξ}ûi%Gƒ%…Q$W*olµ–兩te„lec]L¨òUa™LyëmVp‘[«e™¸€'ô²¹nW´§_ä¯[™Ú÷®[Ò×—&Ô“¦yMü÷_šui‰¨Â‹¥¦í›±c÷nÿ{S-èhª¹ÑEC@4E ‚¢kƒ)RÁáñ(­ŸŸ©^´‹¹odqlc ûâÏ°æ ‡ÖžáÝW²/k,)TGÛ]…«C{ 3ÞCde—^ddb˜ù>®®]pµlþŸ÷¿N—m)Ž„EA§Õ—èOL(¥ 1+ŠÀ媸KUU±Ûò°˜3½Ÿóm‡ÓÉöÄLæÿq”)_ïGäÏêoW«Ã[½Îß&Re,P—Ó…ÓåÄérÒ¬iÖ­ÛÀ™Ô4ºwïÊ£Œ"77ŽÛÓ°QÏYùm¢ZŠ×1‡ÝÁ?ÿìG[¿N§Ö­[ðÒKYúêßd$UÜ{zÚ‰–½¾…)S^¥YÓF¸œö _† &ðí”ÒÓpëK]·hã ¤ë°&¥¦á»ü44mÒ°Âið–'“ëï+Pí6„^R»áKâ ¸{,¶CI¸­vܶ„$L£ž!ü«ßPjÔvl¿ýˆP ÇœB©3wß}76k.s–÷“›B·nݨS§Ž7œÙlF£ÕR½ÁTô…¡1˜À E#Ì+9|ÅPdÉò"G|5Í*<\Ù‘ÜKy$Ønw”äYŽú½÷ç°hÑ×U޳W¯xíÕI—Gc¢ÕÒ´ysêÔ‰.7lÁ\®K¾V©*{›_­aBÇܼê›Y¨'5ˆúfdmûÎ Ÿ\µõe…t¹1ŽV¬ä¶aCÏK:…NE„ƒª¢µ <«Ã« ž`Íù.ŸP»ÆçQRðÐüÚ$L·Ätßh,3§á®[§ô~îè1žxìv¬¯¼ä›7é*àKÿÛ¢I4_-Û@jzÕÃ=SrÜn•öŸàš®ÍJ†oÍïëög¶hòˆ ‡ÃžƒIÜzS—óv-™yv\Žž¾ú+"tíxá‹}œÉ®ú°Ëå".®3Ÿ}öñå¶yó–"+GT¯Á¨ïåúë¯áСDN>«”5ihÓ¦{Å^„Ù,Ù¼øÂó=ö/óŸü†!/v¤~kß|1ü»#…e¯oáŽÿà©§Æc5WÎEÍ’Í„_äè±£ÌrI©i©a:¯iPíL·ßÐ0ö¾ ãá8Óò°>U4œÓ…ípÚ˜ÖÔX³Ë·_b[ý·Þê¨ø‹H§ÝÂŒ3ˆ‰‰¡víÚŒyVsf‰¾Ùå´òý÷ß3wî\Ú¶mK‡íP„†k¯½ŽuëÖyÃŽ7ŽqãÆñüóÏ3yòD¬æ,Ùf^ZHŠ` ¾›f-_¾œcÇŽUiwýúõÞ‡îK¤¤$^{ýM:wîHíZµŠËÊÊB§×a (ÚñœNN¦VÍšEöY¬lV¡¡¡DEÕº¬ÊRëÖ­¨V-䊩;¿^Ç®¼y¬ëÝŒlç"Ö‰¸€#Œ'Nž¤ñUM«Ï5·ÜÀ'ã?8o"ø¬ÊTä„É…Ä]·æÏ?"`Ì8oºÇÀþ8¯»w]ÏK;åØ ´ñkЭøwíZ˜?ÿwTí‹¢ÿ6°3SÞùŽ·fÿÄÔ ÿ`á·q*%“áCº–ÿ¿›»ò·+™õñÏùó‚áã/ÿ +ÛÌ¥„÷N—ÊËÿ·Ÿ&Q58xry6ÿ¼´Ùìt»º+ bcÈòa$ßnw“C³fMèØ±=f³™S§N{ç pÝuÝA(8+è%ZUU,æL>úp.1õcyå™É´îYŸ®ÃS#¦ô¾/åH¾9ÄžÕG™2åÕ|ñ™Yi˲‚4|<÷#Ož~…6=ëÓõÖòÒÀžÕÇü’Gr&ºN= éÖ·Ù†-á4jY–*8S2q¥kÐÝp †ÃQíNÉᇕ:Q5˜ñÎtTÕÍ’UêOv[-š5äý÷fâv»°äe.§³I¤–oBJñNi7—^£Ñ°jÕ*V­ZUå_×h4ùƒÑj…Ò»páWlذéœ!o:˜  @VǯÁj;·™Y·®]èØÑ711õ˜3{&/N˜Ì;o;ù寈‰©O÷«‹>`<üÈÌ™=³È¾Í›·°gï>î»÷®RßL] egÿüö[éë0[-’O'W(Ö bhÐ ¶Âi8q"‰¿~\Kh³k㦟Iã÷ßW“žÍÏ;Î. îVUÒ23Ù¸q3öÌt8~èl”©§HO¬p™\·m#ú÷£YnÝ2óã|çƒÎ gÛ—r´Øµ”Öñ ’tú»÷ì¡u«–~+*ddÊÂb^öè?ûÝâ¥è–-/šúêØF݇ãÞ;QM¦óÚ6ûÞÿB¨0&ŒĤiKÙµ÷(!Á&~^½“a;Ó£{óélÖ¨ãêÇÔw`ÓÖÃhu ¿ÆïáÞÛ¯¥S»X¿\—ªº©^½:¹Éìøy®× ÷ ³\EdÝpj5 !(Ü3úž›nãôAæû÷ã‹íßÓ´IC¬æô*O­*HÃóÏ?Í Aƒxîùg ¥!˜ pc~¬œ>˜MÊñ nìßÛ¾§YÓF•Nƒªª‡óǦ¿°Ùý3Ï{íÖÍDD×Êï³|K“ÓiÅé,ŸÃa)âyÝjÉæÏ?ã¥,Gàv9±˜3.±g2IUrŽãåÛåTórSKtÀgM°.î2°vÝz ômmÃç¾O§Ní¹ª½ok¿<éž÷˜,$>’––NlÖ~÷ùçÆóüsOý§i9rï¿ûÖŸ2 2 —r|ÆåB9tå„g­Rw(ÜÂX²­2ý¯ªªÌ_¼ŽÙŸýŠÙbçŽ!]yfÌ@t:M™á?œÿ;óÆãtªŒ¼íjžÕÆ?S‘„衼ðÂ6lÚì³pB0è¦<9îq,yé¤ßRNËŽ»hÓ¦ p8üãI£Õc0qüD+V¬`ë¶­œ… *´ì‘¤<';vìô{¼QÑQDûhz(Ó Ó Ó Óp©s©ô¿ç´Šƒ!¨Â΄\.v[îu4©ÓëÑê´8ìvœÿOWQ-ZEÑqÈåv9p:m¸ÝçßGÄ…JƒVg@§7ý¯Ò3*›§S `‰Á’ $‚%‰D"‘H$‰äJÁr‰$‰D"‘H$‰D"‘\1H,‘H$‰D"‘H$)‚%‰D"‘H$‰D"‘"X"‘H$‰D" ŠI< IDAT‘H$)‚%‰D"‘H$‰D"¹¸ÑÊ,¸2Ñép:œ:uœ¼Ü,NBQPÅófDQÐEA Š@Ex–CP4UE;~!ª@áqŸ¯‚Pj3ý|oä*ªwyUõ,ƒ„ª‚PÏn:&„'|3sÏßž¥ÕEA\žùûó7ðÄ«+´í=FAPµè¹ªŠ*8·šRÍÇ›Žü4z® épýÊ@„€Šž¿½KGäo#òCŠüðˆüú¢æË?Wù‡óë“7žüˆ ŽyÏùu,ÿw Òä=¦žý›üt᩟'yÒ]Zó/Xõlº½õÁí)ï.7ªžºàR j¸=ÇÝn··¾¹Ý*ªÛ… ¸\nàV]4‡T£Víh´-‡U0‰D"‘H$çï9N.‘tùS|‰$F‡[…ƒ÷P-¤Õ#jbDˆÂ†jѿբ{J„QK+­d< ]^NœýÿìE‰¢Û…•ˆ ”cùñˆâ¿^(QRÑOM‰ôT<ý’Ë—³/jJ¯Åë€Zö1U-½ö¨%+—Z¢2ªÅ‚ª¾¥±àž¦¿¬ú\¼¾œ#D©õ[Åfµ––BVvµBžµD‹s:%•ãI©è …*ä·ü–ßò[~Ëoù-¿‹|;mêDÕ VdõÏrà+Të 9¼½ÁHtX\.n—UuËÌ’H$öM¬(ŠVÏ©¤cX¬f4hŠÝf..ùL§RsÀí¨×ÈŒ“H$‰DR&V» „†¨È`"«G”ÁÒúŠ|èÔ™•AËVp:m¸]N™)É•Ý*ÛV/X\ªªâr9PU•ÈšQìÙõ7B”¹'“3Ðjµädç'o˜D"‘H$’r åÄéô"äœà+µÔQ¡(¨n‡Ì‰äJ•¾Bàv«$§¤‘“G^®£Ñ@µjÁÔ¨Š^§ÅWk¡ªÆåv;Ñjt¨eL'Ðhu„…˜ÈÉÈ”7N"‘H$I¹„…’‘m.¤‡¤–H$’+[+òò¬8x„„„2331›ÍFBCCiØ M›6 ZH`¹S%ü×¹Ðje—%‘H$‰Ä÷çQÆËuùDqE¢ú.9JUêYÙ™I¥î òóåïóIY¿s¡~_"¹$°P°YlÛ¾‡Í›7ãp8¨_¿5$==cÇŽsôèQróòèÔ±-ÁA†2GqýWéí”D"‘H$‰?´Á’r¨¬`,ë<)@%’‹EÑräè1þúë/êÕ«ËàÁ7a³ÙX¶ô;†Ýz ƒøø5lܸ‘ˆˆpZ·lŒªOq]Ó½5kÕòÏÍÍeÝÚ¿|ŠK"‘H$‰ä‚< É,T†Ð¨RGŒ ö•õ]|_Yq”vž¯"¼ø9ÅG¤Kû]_¶‹ŸWx_Y×"‘\l¡g¶óÏ?û0™2d0f³™Ûn»—&NâŽ;F`6›¹îºk¨S§ ‡ÈαYF¬¬¸®½¶;Ý®¾–+~Âår‘••Åm·ÝÎŽ;ÊK"‘H$‰DŠ`‰ßPñ¬Zðñ‡ÎÎL*Up£…¿}׸ý‘îŠÄ_Öy…÷ëZ%’‹MÛí’““iÓº5ÙÙÙÜ~ûpL&›7o@UUFŒ¸‹ÜÜ\:wêHzz:V›£Ø:â¥ÇÊÌ™ïððÃcXºt™7Þ1c)7.‰D"‘H$’󦇊i!ù$")Søù2Êéo³iÄ}¾‘bWri‹`ÍîÀápÉÒo—±oß~Þ{oÁÁÁ¼ÿþ»lݺ•+¦Zµt:‹µTÇÅãr¹\ôêÕ“éÓßd̘Ç0›-Ì›÷Z­¶Ü¸$‰D"‘H.rNð•Ì9F‡³2J ½ÂኟSÖ1_þ®È1€jaQçLgV†g´6+#‰jažï‚8Š‹y_~· ¾²~³øoH$3nU%0ÐDpp0YÙÙ tß/_ÎC=Ì»ïÎdôèGèܹ½{õ"7/ÀÀ@BB‚QUµD/W-gMòòòøì³ÏiÞ¼9GŽaõêxŸâ:W{S¸½’H$‰D"ñIê¨g-b‹#G‚%—YIÞOUέÈù…Ï), °DrÉtn¦€7nÌ¿GþE¯×óÑÜQU•îݯ# €çÌF«Õrøp"111áv»Ê+77—‘wßC@@ß,þŠ3ÞæñÇÇñ˯¿–—D"‘H$É…BŠ`I•(,/¦¸ W5þóyÉÁªŠN§Ðºu+²sr8t8NLJsf3qâfð>Z­–Ó§“ÉÎΡaÆôŸâJ<ò/qq]¼qô¸þzÞyç-rrrËK"‘H$‰äB!Í¡%> ¿AYx4´øÈhiñTtÄÕ׸++Œ‹_Oy¿UÖyûÊ3Ï–H.6v Õ#Â:t(ß}÷ÇŸ q£†ôîÝ›ÌÌ,Ž?NNN.½{÷&"" —Ëìs\íÚu ==S  «ÅJpp Ð£Grã’H$Ë–-ã·ß~+±ß`0H“&MèÛ·/‘‘‘Þc«W¯fÉ’%Œ5жmÛVêwÓÓÓQU•ˆˆˆór] Ìœ9“¾}û2hÐ ÿµ¯O<ñ-[¶ä‘G‘H"‘"Xr©à‹+. +û·/Ûþ¼ŽsÅ]ÑcRðJ.UTÕÑGttmî¹çöîÝKBB‡£ÑHÓ¦MiÒ¤ œöÜsNÆõg\‰äâ#--ÄÄDBBB0Þýäää°eË/^Ìo¼A«V­ÈÎÎ&11‘¼¼¼JýææÍ›yóÍ7™4iÒyÁf³™ÄÄDÒÓÓýܾª$&&. D"E°DâÅGc¥Ð”HÎn—›5›ÀÀ ââºÐ©SGÜnE(Š‚ËiÃaËAUÝ4.‰Drq2zôhzôèQ´î»Ý,Z´ˆ… 2eÊ-Z„FSõ) ˜Íç×j¤qãÆÌ˜1㼉l‰D"E°Dâ3RôJ$ÕíÂjÎBV—ÓÝ騰`õg\‰äÒ@Qî¼óN6lØ@bb"‰‰‰4nܸüöBU±ÙlEF–/4&“‰fÍš3ŒÛíÆår¡Óéʽ—Ë…VëÛcµÅbÁh4"„\.N"‘"X"‘H$ÿVÝ8Ö‹..‰DriP¿~}9uêÔ9EðÞ½{ùì³ÏHHHÀn·ɵ×^Ë]wÝ…^¯`Ê”)ìܹ€©S§¢Óé˜7o^©BôÅ_$55•9sæ (J‘ý'Nœ`Ò¤I4hÐÀ»þüù¬^½š·ß~›””¦NÊM7ÝİaÃxùå—B0jÔ(fÍšÅp:ÄÆÆ2jÔ(¯¹wGŽá›o¾aëÖ­˜Ífš6mÊèÑ£K½öÜÜ\¾øâ Ö®]KFF4iÒ„‡zˆØØXÀ3ÿú»ï¾ãÉ'Ÿ,2—º`ÿ€¸í¶Û¼ûÿùçÞ|óM†Nß¾}eA”H*€ô}å<æúH$‰D"‘T‹ÅÂÆˆŽŽ.3ÜÆyê©§8yò$·Þz+>ú( 6dÉ’%Œ7‡Ã@çÎiذ!:t wïÞEnabcc9vìû÷ï÷îËÌÌdûöí¤¤¤°}ûö"áããã  ""»ÝNJJ ¹¹¹Þãééé$$$0~üxRSS2d=zôàðáÃ<û쳜û,ýû÷çî»ïfÖ¬Y(ŠÂûï¿Ýn§iÓ¦„……¹‹ÅÂþýû  !!‹Åâ=¶yófêÕ«wΗ‰¤t¤–oEäG~äG~.¢åì—H$ÿÓ¦MãÆoô~†Ê£>Êš5kˆ‰‰aüøñeÎqݽ{7 <˜êÕ«96|øpL&¿ÿþ{…ÓÔ¢E BBBŠˆÆíÛ·I\\{öìÁétz#@·nÝÊwðàÁE¶ÛµkxF™Á3x×®]´hÑÂ+Ø„Üyç%â[»v-ááá 2¤Èþèèhn¼ñF’““Ù³gB:wîÌÑ£GIKKóæÓédðàÁ¸\.víÚ@JJ ÇŽóéz$’+[ç”þü E°D"‘H$‰äœ4nܘ®]»z?={ödøðá<óÌ3¼ÿþûÔ­[·Ìs?à5s.ŒÑh$::šS§Ny«¯(ŠB§NHHHðš5oß¾«®ºŠV­ZaµZ9xð WGFFÒ¨Q£sÆ©ÑhЬy  xÌšN:…Íf+õšëׯ_äe€Åb!55•úõë—ê8« =yÔ¥KàìèööíÛ fРA!¼ó¥ D}y#Û‰¤t¤c, iiélß±“ììÀó6SUUù-¿å·ü.òL»vm‰“ §DrQ0?¶2ddd\êñÀÀ@Ün7yyyT«V­BqÇÅÅñû￳}ûvbcc9sæ íÚµ£iÓ¦€Ç<:66–½{÷Ò¿ÿrãÓëõ%æ á.6™L¥ŠèÂû •yí99žç¯öíÛ£×ëÙºu+}úôaûöí´mÛ–°°0bcc‹ˆàˆˆŸ¼qK$)‚%¥ž‘É–-[©Y3’±12C$I™dgg³uËV:uîHXþèˆD"‘œ‹ÚµkpæÌ™RŸ9s!!!!Ž»C‡hµZ¶mÛæœ¢±fÍšlß¾úõëãt:ýf:ƒÂ+î c·ÛÉËËónרQFSæµ§¤¤xÅ¿Á` ]»vìØ±ƒ´´4Ž=ÊM7Ýx̲—.]JJJ ;wî¤OŸ>r™%‰DŠ`IeIH8Dƒ±Ä6”Þ%Iù9¼‡„„ÃtîÔAf†D")—‚%€6nÜXb4ùøñã$%%ѤI¯ +p„¥ªåû mÛ¶lß¾ììlbbb óŠÆß~ûøøx‚ƒƒýæEÙd2Q»vmvî܉ÍfÃ`0xÌÙõ>hkµÔ­[—ÄÄDRSSK̉.0k.¼fq\\›6mbéÒ¥\uÕUÞïo¿ý–Ï?ÿ»Ý.çK$U@Î – Ñ(Ô¬)3B"‘øDÍš‘(Šï£ ‡yú™ ìÞ½WfžDrÒºukÚ´iÃÚµkùå—_¼û322˜9s&Bˆ"ë߈ØC‡y—N:qqq$''ó÷ß{cv:üõ×_tîܹL/Ó•aðàÁddd0{ölï\æÔÔT>úè£aGŒÝngÆŒE–dZ¶lÛ¶m£}ûöEÌš;w~ø5jx½?·nÝ­VK||<´nÝZ.‰¤’È‘` ˜dFH$Ÿ0•9¿­8§“S2ôŽŸ8ÉGFÂDFÖ™(‘\aŒ;–W_}•3f°páBÂÂÂ8r䇃ñãÇÕlРŠ¢0oÞ<æÍ›ÇçŸNÍš5ËŒ»K—.|ðÁ8Ž""øª«®òú4ð÷¨é Aƒ8qâ?üð›6m¢víÚüûï¿´lÙ²„™t÷îÝ:t(Ë–-ã®»î"&&†ÔÔTRSSiÛ¶-“&M*><<œ&MšpàÀ"×c0hÑ¢»ví¢sçÎ¥:Ú’H$¾¡yùå—e.\横ûe‡Ý|ö͇ÎÈ©SLj¬ª‹3©©„‡‡#½Ì,‰DâC£b'##ƒêÕ#ÎÌl63òî‡H:u “)“)€Íoeð ètº’’FGrrµk×Åé´9–œšM`€ÌŒ,™ÿɦvíÚ´mÛÖë%¹<„DDDЦMï\×úõëGdd$z½NG¿~ý5jT¡AË–-½b°yóæ^R¥HPPÍš5£GÞöÅ`0H³fÍèÕ«WÑ(„ 006mÚP«V-ïþÆ—j6­ÓéhÛ¶mÐ;v䪫®B¯÷Ç'‘H$‰DâOäH°äœ¤¥¥•;ò[X(Wp^Áñ‚cÅ·Ë‹GrebµZIHHðÙûeñrZ¸ü•Ve¹;÷#00‘#ï!ˆë҇ݳf¦Ãn¡ÇõÝÑëõhƒÁÈ)9‰D"‘H¤–\B”%&S€Á’ËWðú²¿,Då9Å’N³$çÂs芔_˳¤üûaqæ”æï-[ÈLOÇh2b2B (¡ˆB"øìßn·›3©ilظ‰ûõ•™ìG\Xøß.‹™3Þ㆞=éܹ³_ÒñóÏ?Ó¯_?¿]—?ãËÌÌdÿþýÄÅÅù%¾;vP«V-jÕªå—øfÏžÍ#<â·¼‹çú믿"òÎßåÎ÷Âét’••E`` ;vì¨tÞ9N233©^½:û÷ïÇh4Sî¹[×oåàŠƒ˜„ ðLÅ&Âu¥¾¦>æºfîx莋ê^deeñí·ßrß}÷ù%¾ŠäÝ¥ÞÞY­Vâãã+ŸVëB£Õ{þVJþKÒ7òÐèGùbÁ'RK$Éù@Q!ó[¹ÄÑ{?òòÌT Á­‚ÓáÂfw  ˆ!À`УÓ꫆Ýa—™ëGʼÑÑQDGG•Ø?wî<úõëÇ<à—tdddðÌ3Ïøíºüß±cÇX±b?ü°_â[´h­[·ö›ã¸eË–ù5ïÜn÷“wþ.wþ¸§N"==:uê°hÑ¢Jç]bb"n·›F°bÅ ªU«F÷îÝË=×f³qòäIïöºuëJœ7}útž~úi »¨îÅñãÇÙ¶m›ßâ«HÞ]êí]VV‹ÅoñõèÑã²è+¥–H$— ¥ `)Š/ªÛ‰Ý¡%33—Ü\3.—›’÷™0zôè+&ïü]îüq/rrr¨S§ÁÁÁUÊ»œœ‚‚‚¼Û=zô@Q*Þv=z”zõê]Ru6((ˆ.]ºø-¾ÊæÝ¥ØÞû5¾ÈÈHjÔ¸ô‰Ê§‰D"‘ø—ËMvN]»vÃh @QæÇ`0о}ròòGŒ%ÿ9Fã·øü)¨ýŸV«%$$įèþrF£Ñ¯yçOÇs{Þù»Üùã^Œ+ŠR¥¼+n5c2™*•¾²DðÅ\gEñk½¨lÞ]Ší¢(~o?ýÙWüWÈ‘`Éy«À‰äò$5¥4ÇX ªªâp¸0a6›½l…Åoáí   œwþú}ò¬¿©È(°D"9øÃÚívûmäÒår¡ÕJ ¹²‘5@â%>>^f‚D")—V-bK{Dó|©øü†Ø3ú£=_òŸ ਨ(¿8ÑTûï¿_f‚¼EHMMõz…® 999_r÷!00Ûo¿]È‹€èèhÂëI|>B4®ZIÀv`—ªª–*Ä©ƒ€dUU7\yEV-7D\—v²fK$’rÉÍ9·¸Òjµ¥Žüßö§ ¤¤lì« ÷ä"¡Àû¯ä"¨OÇZ¨§OŸ¦fÍšUŽçðáÃ4lØðÒ,Z­ß–3’T “ÉtÑÔ‹Êk!õâ²?B… €À×ÀKÀ`#pXÑ­ ÑëeÀÄ p…¯ËjòßðÓÊU•«ªJÓf­eJ$UD£Ñœs>°ÁF|$IåÙ¿ÿE‘Ž3gÎøe$øÌ™3Ô¨Q£Bç¼ÿÎ Fß}V«µÈþukÖ0¸O?Ž$&Ê‚"¹ä¸Ø&a}Ü,zÍNÀ“ù"vµ¢÷Åœ¡BˆšÀÀ%âc^-ô¹<ècßJ÷ɧŸsìØqÙ*H$ÿÏÞy‡GQnü3›ÞC ¡- !ÔFjBÕ+X~`¹‚JH¡HÇ ¢"z¯^.rEEE EDB :H 5@é=™ß»“ÍöÝ@Êûyžy63óÎ;3g'³ósÞsLºo”½‡;Ö¬´.Ù‡®¾eaz#ÈÎJ)3 ‚ÊMQQ‘ÅãxeY6¹$ÝÚ÷¢ñÎ)bÆ ç;¾XÇþñ1_obó;óX6k.WÄ—$¨ Ï+ÚŸ*Œ–$©Jø^^’ey—,ËçeY>*Ër4ðœJ¿!¾P>ÌõzmD¥­WjŒ·Gx„¬oSÞ{ºÁI ¨n$$$póæÍRË’““ùã?„qª°xµÆýN™@Ð2îܹC½zõŒnÿÉkñÎ)âù'zâã]郞%|ìxvíØIÌ×›Xøò(ììX3f"+çÎãÆ áHT*’'¸ {eY.ÔòÏ¿øp‘4î&’$)T!Ès$IzW’¤a’$¹š"À%IzM’¤å’$MÑv-I’³$Ia’$-”$i®$I}K¬k SÍ6•$i¤$I~â2{´˜ë ¶ÆŒt2ó¨1"8??_KP­8þ<×®]+žðà³gϦ]»vF÷‘’RÖ³Ÿœœ,Œ[AÉÎÎÆÅÅÅ¢>²²²JÕ6—+W®Ð¬™ñе½¼HLùûÚR á“¿ì`áË£þ>ÇÜ\ò‹Š*é8QÁŸ(Óƒ“$i $I¶ZDÊ@Y–É%Ԋʃ¼er0Øœ$©£øÿ€³ÀçÀ`1°_’¤Ï%IrÒhûpØŒæ»$IúE’$; x_Õ¼ ðÐO\f•ƒ‹—.—›wªäؼ’‚T×2mcùJ¶Õ%jumWÃ!§M†E°1äåå c ª-j¼téR<<ŒÏ´ºråJâââJ-[ºt©0h%##Ãbœ˜˜ˆ———U¹)Bõ¹aÿ‡w‡@Önû¾”ž2tXñ|jfSÿ½žÅ¼o•1ËAµÁ²,?À/À-I’ÖH’Ô[%0uñ5ð„jÛ¦²,מœï%IrÖ#€€ÿ Ì@= ¨ ¸©„ðkÀìm[ªÚ¦=dY®4@™Àk 0S–å/oÕ&ßȲ,ɲ¼Z\f•ƒÄ;‰å"‚Õ"4;+E«˜*)RK¶ÕÖ^__ºÖUUü8m*°Žž`Au%))‰Ù³g³lÙ2“0ÀÂ… ùá‡J acË’ =™™™{qïÞ½‹···E}äææâàà`òvφw‡@>ÜöC™uiY™ÅØÔd[Á¥…ð|•=Ô&¿$IúN’¤ö"ö@/àY–çɲ|CÕO,° hLÔ³Ë(ËD=+ËòfY–óTHÒÄ IDATÓlà20U’$õõ0Àx[–å}ªýÜUãE i…þ¦«^þ+«Ò½Ü÷¡M–\fH°ê[_]“ß›V0$å8ãE°,¨^Ü¿ßl¬zöañâÅe„° bb OpzzºÅBúÚµk4mjÞ£ªwýz<ÈH+³<'/ÉÖÖâó¹’+``Y–7›UaÎC€þ*¡; IÒY–ÿ£jÞUõ™ IRFW—TŸúŠßvG-Û|?`/Ê1ËEÀÇ{h%®¬Ç6OZÄü²=†Aû—ùÔø.+D²áq6­´úW’°³³%++«øJß”‘‘­H’%¨4,X°€ÈHó+-æåå1mÚ4–-[Æ‘#Gô¶õôô¤S§Nz…ð¬Y³Êõ|çÍ›Gaa!‹-_¾™dffš-×mXGü©xžë÷œÅÇqóæMz÷îmòvê,Ð%Ç«ñò¬Aäá„Oô'ãìì,¾pA¥AQQL–å[²,(Ëò?€Z(Ë$|!I’»êïªÏ€ãÓVÕºf:~@jž(×k™^ÑØ>¸/ËrAU{RU¼ÃúÊ‚¨¯ægIþ³qÓc× Ý›V¦ûˆw7göïßGvv¶^œ““CüÑ#¸¹:ac£({’ñw&;ۢ틊ŠÊÔZ5—’á'NXý\W¬XB¡ ;;›+Vˆ/ßlŽ8\·a' OPïåz|øÕ‡X|í)¦=ökÀ©™üx(¶x¾a/æ>3Œð±ã‹_€ êYEÇóC…ñK’´h ¼ Ërž† ΢%Ij LF™lê[ WÕäu@W¥îLËÕÛžEÈ´Ú£œÔ¬ì×€@7Ï=7”·ßžRî‚Ì’¶U5É•°iÕÀÆF‡»#÷ïÝaË·ßPPP¨%ÚY¹ÀÞÎWWÜ\PØO° zàèèÈ[o½ÅÖ­[ùàƒô†C§¤¤0cÆ £DVll,9998::ZMáääDjj*NNN¬X±‚iÓ¦‰/ÑÌæà6϶ }D{ÆDŒáÓ÷>5«Vprr25kšþûûÎÝ hß¹”~ëÓµtéÕƒõ1?ñFÿ§hP»N²Ä7hÕJG *‡ªHáÐmQ†>÷~ÖÑæžêS-’Ï«>sdYþ]ã†ãt®k5„,§K’t¨ü!Ër‘Æö(“d©A$-$Iª-Ër’FÛ (½ê¯ \y±·³/OpɤJ†,j«¹¾º"lZqqvvÄÉÉ‘üOrsó$ EÉÿ+ $$œœP(äåå+²D ª]»v¥Q£FLŸ>åË—ãî§§§Á¬ÏYYYLž<™ÁƒsôèQBBB,>¾åË—DXX±±J_Ÿ>}ŠÅqe ԫW¯”76%%…{÷îѲeË w¼š V³Z0³…pBB-Z´0ùXf/ˆbî;ÓQH~}ûá{¬ùâ3¼¼¼Øøå¿Yócú=Ŭ¯>ãÅ c…T*\‘Dð*ü±$I÷eYŽÓš~À@6°Sµøg`>0M’¤ÿ©<ÆjV ,—´˜©cŸ[ñÀ›ÀÚûªìFéùõÒmÀ`‚jŸê¶]€*!](I’Z4;W†KAD–y9ÂáÃGLÚ&(¨öööE›±Ë %u2f™±ÛUv!ü¸mZÝFtÝ7íq±QŽõU(¤R!x%_4ååå“——£µ/YÏýJ`=.\¸ÈW_o”5låB¡ [·n4hРX»¹¹™ÜOVVo¿ý6QQQ¬]»–¼¼<òòò þ#€ûõ+[ݱ² á;v0xð`7n\¼ÌÕÕ•ÈÈH&L˜P¡„›6l !œ’’‚§§é¹1$IbáòeÌž2b~bø˜QÅ¥š^ñ*¿ü7Ͼ;‡ ¢îÖMüsWaY½ZYð&66–^x¶Ò?¯T$¼e"¬áÀ>I’–(Ùý€P”ÞÖ±²,g«Ë I’>V Óƒ’$½§jÿÊé뀾Es€ç÷%IjüŠr ð( 6ð¾,ËWÕ÷&”µ#%Iò@Y+¸“j?ª¾e9[’¤‡@_I’V¿È²¼»âË_ñxùņ/ñkÓš©Ó”ïLòóóQ(Å¥'rsrp(j¦žÿáûÍzÃŒ´y–!lZQî!²ÙjîO•µúC«V-Y´0 €×o ƒ”àÃ?d̘1Eå–-[èܹs)‘e.\¸Àœ9s˜>}:Ë–-3IgffÎüùó©_¿>íÛ·çØ±ctíÚÕ¬óݲe íÚµÓ*€5…ð÷ßÏСC+íwkkk˪U«ˆˆˆ`âĉBëÀ–asÆk áwW­ààÁƒeìôÒˆWyvØÿY- _Pqñöö.ŽL‰ŠŠª¤Ï-T˲,K’ô °_%jCT(½¿ÇéêòD%P—(ŠDYÇW}¦?ª2Fºö™¬Ê ý!Joð[ªUÉ(k/)Ѷ@’¤` Ê1ÄáªU—€§5Žk>°e2/w”^eAgôë¯Ñ¦ukzõêÀŸç/àæêJÆ صû7Bûö)n¯9¯ k 4!ô„MÁ££ÿþL™2…U«VéÂ[¶láÎ;F àæÍ› †îÝ»Ïüùó9räH±À4DFFááá,X°€zõê/¯Q£ééé˜5nô¹çŒË@lìqVtìììXµjS¦LaÒ¤IV¾wïqÇsóêUzöì‰EØ\!|ãÆ 5jdѹH’DZZµjÕ*³N`Ae¥¢Õ .”ey­,ËmdY–JLβ,w×"€‘•¬‘e¹v‰ö Y–‡È²|¥D»ÕºÛß–ey¨,Ëv%¶¯%ËòbY–e¶)²,¿*˲}‰¶-eYþU£Ýû²,»©Ö—YåùAT `€6­[ ` Œà5F  râëëËÛo¿Í”)SÈÓ2n}Ë–-ܽ{—‰'ÝgëÖ­ñññÀÍÍ dY6IX.\¸°Œvrr”ÞàòÈ]U±··gÕªU¬Y³†K—.Y¥ÏãgÎÐ}òd‚¾ù†!ŽŽL©QÿE‹x{Å UmôÒ|÷ÓwÄ¥Ç%€K áF#1iæ$ƒm¯]»V|Í™Ëýû÷©S§Ž¸`U [a@ ÝBxÚ´i¥ÊmÙ²…û÷ïóæ›oZÔpp0Û·ogðàÁFo³lÙ²2ËÔµ‹k×®M||<………ÅCyª;EEE¤¦¦òðáCmæÎË;ï¼Ã¬Y³, Þ²ko;Çí÷ÞUr6ÊÁ+W¯rjÚ4v®\YÊ{ûd×'ù÷ÿ&73£÷•ðK¯ôWVó¼u뉉‰ZÛ={WW×âùV­Z•š7†3gÎн{wq1 „ª¿lÑZWX ÕCOš4‰wÞy[[[¶lÙBRRãÆ³¸o…BA›6m8}ú4mÛ¶µÊñ¶k׎ӧO$¾<àæÍ›|þùçx{{ëmwùòeöîÝk¶NIIaÎîÝÜ^²Dëú¦M‰0ikÖQ¼¼N:|ºøSFÏÍQO%„¯=Ì+Ý^a`¨2¸qÚ«Ó°ûMw¸uÊ\³™d2`ÍFOmÒK„¼¼<ÄÅ$"X ¨N,Õo¿ý–äääây{{{Ö®]ËÑ£Gy饗X¿~}ñºüãE–.š5kFLL ­Zµ²(³³oooNžwîÙÙÙܺu«Ôò   ºtéR)¾G{{{†ª÷x7nÜȈ#xã7ÌÞOô¦Mœ7PТ¿$'óž,—Ê”_§N>[ò™QBøðÚüüR±p°sÀƒÇ˜JªÉç•€¯¯¯¸!„ªÂ\ùqröI°ItíÚµÔXàÐÐP^xánܸQÆËjNùÍ}8p€^½zYåØýüü8wîFoãëëKíÚµK- áÔ©Se¤¥çû(qpp ++K¯ÎÈȰH»~ŒH@u¯ys­Â²¤G8d~ˆV!¬Àƒû ~dö»råŠÞŒáÁAEàÊÀÀT6lXfY³fͰ±±ÁÞÞ^ëzsñððÀÁÁ¤¤¤2BÔ5jÄÙ³gMÁ5kÖÔZîïÆ4mÚ´”ç²2aooOvvv¹ `€\c<=uŽOöòòâÓÅŸ2fÖ˜2B8nm/uy´8;;‡JûÝ úPúùe{L…9Íú¸šóÕ 'gÏâÉ}´-×ÜV Œ¡C‡œ={–ÜÜ\«öÛ¹sg:dµþZµjÅ… ,î§iÓ¦\½zõ‘ÙW–e~þùç2Ë:d–ÍÈÈÈ(W ÐÌÍ 23 ¶«{îœÞñßuëÖåÓÅŸKnfn±~±ó‹<Õÿ©Gz­Ÿ9sÆjcÕ!‚Z‘$i…$I_I’ô¦$Ií%I^ú BEògg¥”vÕÕé>wõ¤¶‰1öѵ­@ K=Ø·oŸUû´µµ¥uëÖœ;wÎ*ý5mÚ”+W®Xܯ¯¯ÕÊ#€gÍš¥µÏï¿ÿNNNŽY/4ÇF'%%‘••e5 ðúàÁÔùïõ7ÊÉ¡ejªÁÚºuëÖeýâõÄFƲÕ~^ìü"Oxú‘_ç<ÐZX ¨ ¡UqX< tÆ>’$ª¦C²,ß3ógE5 ÌÁÜ1ÁÆ¿BLÌN“¶ÉÍÍ¡»F¾ ¨ˆ} ‚ê““-Z´àäÉ“´k×ÎjýúúúòË/¿àëëk•$YÍ›7çÊ•+4kÖÌì> öööäææ–k†`µ2dÁÁÁVë·_¿~ìÚµ«Ô²Úµk3zôh«çÀ@žß±ƒOΟ§¨ukm'HÓ¥KÙ0y²Qýy{{³~ñz.]¹Ä“ÝŸ|ä׸9µ32292Š‚‚¿åEXX{&L&n‚ @i-$<Áåk‘åY–7ȲCâëÅÓš÷ß+5ÿýw›9[<âøa¾ÿ~³Q¢M$zÒÒlÈ>êõ"Z XB“&MÈÈÈàÁƒVí·{÷îV ‹nÙ²¥UB¢ýýý9{öl¥ÀšÂÙ¸};^ ê뢰Åñã´ç¿C†Ð ~}£ûóöö~,”õ…ýýýMÚ&99™ƒ›³uëÒâiÇŽâf!¨TZ%IRà à¼,Ëç ´õz—eY>SIDq°K5!)³´Bé).é-ŽÇlo±¬1 ´QÒlè³$ƽPjþÕW_.5ß»wÏRó>>Mðñib”ø«îBXóÜ5Ç#„uõ%0öÞÆ}C¶BŸ†îIâ>%¨XtëÖ˜˜úõë‡UúôôôÄÆÆÆjI²7nÌõë×iܸ±Ù}xyy/°lllx?<œ1çÏóåW_ñçÝ»¸ÙÚÒ'0Ë—[Å»ÿ((**"77×`ض@P9ŸW*¹‚€ï…@¤¶MUmWá@ ?t—ey–$dà¼júBµw X%ŠÇ$IzXBNäçŠgG Ù¡+¾ ¶D@ ¹( ºwïNll,={ö´Z¿ÁÁÁÄÄÄ0x°å™€ýüüˆ‰‰±Hƒ2„ØØ1¢ |ûí·eÄnjjj©òJEEEìÙ³‡!C†`kk«Wh?Êä\–к5+´…DWL© |÷î]Þ}wéé)4-µþòå ¼õÖ2[0zô³âÆ!x¼z¸ ˆà$ ¸T‘J’¤ºÀOÀ7åþ]*½Å;U“Ú[Üš¿½Åã&}ú†Ñ!ÈŸÎ;йsG»Ôÿ&P‘ê—pÕÙlL2,]öÑL†%±@ °¼¼¼¸té-Z´°JŸ¶¶¶´lÙ’sçÎáççgés ÞÞÞܾ}›ú&„â–v>|Ø(±ß¸qã2I§ÒÒÒˆˆˆà³Ï>+^–ŸŸÏ±cǸ{÷®Á$^ýõiiixxx˜|ì666ZÍ[_Ѩï[Ÿ?Sÿ4Ø.¯ ~M ×ü½rå aaaFíûèÑ£|ðA ÐUµÄ­Ôúsçþ͹sùª—;‹…T*­–eù80@|…¥l"ª¦ÏU?~3gLOÙûû.>ÿâkÞœ8…š5kÒ²ESÂúõ§sÇ@l á)ÖCEË­o¾º aÍ¿uÙGØÍÚ7¬?Š¢db„† ’ѦMöìÙC½zõpuuµJŸ-Z´`Û¶m´hÑ;;;‹ú d×®]‰`'''rrreÙ`ÝX;;;jÔ(ýÂ]¡Pàè舛›¶¶?~nÚ´‰ððpüüüôŽAçîÝ»4jÔÈäcwqq!33ww÷*yý½»ö]ëý¶ªjkfÔÖ ËÁâZâ…ŒHe#xŒÏ-IK’4(eù[åƒ/à[Y–3J,ï´¶N@?à„,Ë'4¶o Tòn @Ï1øýoàJ/î3@¾,ËÛ4Ú6Pí³ påÜý%Ö7Ô±KM%I –eùÜcûÎe9µ° ®]ÔóüuãÿÛ¼‘S§NóÙ§ÿâ¯ë7 j×–îOt'8¸ Á]:áåå%þaTT$O°@ *&!!!ìÚµ‹‰ÆòÄOpàÀ‹C­ µjÕâÞ½{ý¾7kÖŒ+W®Ð¼ys³¶wwwçúõ륲UÛØØMxx8ãÆÓéùvuu%))ɬýººº’‘‘QeE°59sæ ‚*ÏãÎý*°Y’¤Ú%„¤-° å¸×¾í—¿ªÍ³%¶UH’´8rœð;Àa`²ü!ÊpêÕÀ*qý?à=`žFÛ€3(=¬c€Å@¬$I_H’ä¤þ T@Õñõ«H_¸$I´iÓš§ŸêÏÚ¢9t`7?~ÿ_&¿='GG>]ÿ/ÛuÆÏ?ˆ‘¯áãuë9~üÕöŸD`@ ÂÎÎŽ:pøða«õééé‰B¡ 99Ùâ¾ÚµkÇÉ“'-ê£yóæ\¾|ÙìíÕ"Xµ^·nþ©=¬×ÖÖ–ììl³ö«ö óàÁ3²]âUSªÎuùùÂÀ!‚UüH@ÉÁü=  O ñ抲Žî6Y–ótô·eˆôrÀ¨ ¼ ×"Go¢»[S–åº(³M?2‘VɶÀF ÔUã»ÀH`€,Ë_¢ô(|#˲$ËòêŠðEë‹^tuu¡wïÌž=ƒÜÂÛרòí&zõìÁ©S§y}ô8¼ë5&¬ß æÌâ§ŸáÞ½{ÕæŸD[ù#@ 4©[·.¶¶¶ÜºuËj}vëÖXÜ­­- ê’5ƒõ‘ššJVV–Öí5_ªß¹s§”þøãu asquu"Xƒƒ—Wúqúþýûäæä'ÆÐ«W/vîlÂÎùÏ.P·î¿K­ïÑc);w>dç·|þùaxA…ÑB[ÿ¤ú,éj ²ã%E°J(Û?hëH’$g`*pR–åé²,çËJ¾>Ö²ÉBà0R–åt•ˆ=€v¯ñr”¡ãCeYÞ,ËržjšƒÒ“þèŽÅ"áòŸ¼óÎY¿þ3;ÑÆ¯]µð O°@ ¨ª\¸p‘9s£˜37ŠóçÏ ƒXŽ;rúôiƒBÑñêëëk•ï§}ûö;vÌ¢>8sFµÉœœ¦NªU»¹¹‘žžÀ–-[ضíï‘g666¼÷Þ{Z³DwíÚ³ž5\\\ÈÈ0Ï Y³fÍ*wnüòßìür#áãÆ—Â?ÿô¿}û=QáS¹yó¦Ñ¶ %44”2ß§§wñúÀÀ@qƒ¨¤$&&2cÆ f̘Á®]»ªÄ9=V,Ëò-”1ý4Än,ʱ¼ªlË k› l×Ñ¿ê|~Ô²î ‘W¨ü,ËrŽFÛo|Í{/J/°£$IA%' pPí¿Ò¿Ñ…‡‡a¡}™3{?ýø·o_cË–oèÙóINž<Ũ×Ç{‹gÏ™ÇO?m«2Þbá tß7¬•#K[^,QżüiÕª%‹F±ha­+qI—ŠFÏž=Ù»w¯Õúkݺ5 äç+ORRR´ŽMHHÐÛÎÎΤ¥¥™},uêÔáþýûzÛÔ­[—ÈÈH¦L™RF«ÇoÙ²…¤¤$F]Fô¿òÊ+eúìÕ« 4àîÝ»&³££#999f¿8¨j8ãB‘/$<ìéb!|òäIý²ƒ÷^Ÿ@ô¨ñ,œ:Ýh!¬æöíÛHRð°x***7„*€··7K—.eéÒ¥„††VÊç– %‚UüÔ“$©­$In(áw¿©Ö÷V}~S{mµ Å[Ë:͸¤vªÏëZ„yaÉö’$ÕB™òÎ¥wZsRß©›U ¹käÛ…¿6­ym䫬ûx-ÇÅ‘pùO¦M‹ÀÑÑ‘O´x‹;^)½ÅÂ,Sprr¢eË–œ:uÊj}vëÖC‡ÊäEqqq¥ÖGFFê cÍÌÌD–e:tèPìi-**2Ëc]«V-ùŒ›7oÔŽàà.t îBppç Ÿ‰Zd‡®¤Õ´ž²@ x|øøø°oß>žxâ âââ(,,ÔÙæôéÓF÷×½{w"|~$¾-ZÝï©S§hÛ¶­0° ?·T0¬â'”™Ÿ{dYVßáv>(Ë’e9Q˜¾\^UÕó-I„FÛûÀw@I’ú—À ”¦5Ù x¢Ì&]R0×AºýÊLÔê6Îâ‚+‹§§'ýû…9wÛ~þ;·ÿâÿûo©±Å}ôI…:æŠ4&ØÉÙSï|uÂÉÙ³x2dmË5·k£P(èÞ½;±±±:ÛlܸÑèþìììhÚ´)ýõ ,(NHd ÁÁÁ 2„E‹QXXhö8Yø{l/@\\dêÔ©:…ðòåËyë­·˜0aB©mMÅZ5˜«»þ3+•ã—/–Y7ý‹uL˜=Ã$œ””DÍš5±±±ÆTl+Èqü¨˜-ù»Î.ÀN`ÐXcD?/¨éI’æ£Lf5è¡¥íl•ðþY’¤M(½Ñ¡€º|ÉWsçÕ’$ù¿¢ô.R‰ß5²,_Q ìlI’¢ ã^ü"Ëònq©é~@ð÷#ÀßQ¯¨Ç(<ÁS—ôîªç³³RŠÿÖ­k[@P½Xºt)))ÿïK›6mÊ Ó™ G°Ÿ4bÿE€Èã_()p }–dذJÍ¿úêË¥æ{÷î©ñ@П&ÂàF `ÍfÍu†„°®¾AõÀŒ7??¿b‘µnÝ:Þ|óMÖ­[GÆ ­²/;;;Ú¶mË¡C‡èÚµ«Þ¶ÆxHÛ´iàAƒ˜6m+V¬(%&†ÎðáÃõnÿÍ7ß`cccVæê¸¸8~ùåV¬XALLÙ¼Æᆠòûï¿›,‚Í ¥vvvfÇŽeD°áááDGGWy!\»vm<êzqújAÍ[“—Gøç1}É"~ß¹‹ »-Â?Äí§ß`ý/lÒÓÓ±··7Ù›øèQnúøðÛ¾}„‰0jÁc¢:ŒøhÒk—‡@—À}œT÷Phm‚¸<Û ‚ªIAA“'O.%€Õ4iÒ„åË—3iÒ$nÞ¼i•ýååå1þ|233¹uë–Îv÷ïßgâĉìÓÏÏÑ£G3mÚ4½¨5Ù¼y3>4¹N¯š¤¤$¢¢¢$‰Úµk“””¤S߸qCû¨BaÒ1—ÄœäX®®®äåå•YîããÃôéÓ ·(QXeÀÆÆ†åkÞç«øýüóL±öññaä˜ÑÐÈ› »eÅw›ðëÓƒ§‡ ÑÛ_||<:u2ù8>þùg2Ö®å³;ÅH Dðcà`5ÐX |²Vñf`€,Ëéâò@ÅÊ-(ý"@_’+ͰgmÛŠ— Aõeúôé¼ùæ›´iÓF§Àœ1cS¦LáÁƒïÏÞÞž+V°iÓ&öïßOnn®Vi&wò÷÷çõ×_ç¿ÿý/¯¼òŠÎí¾ýö[îÞ½Ëĉ­fGGGÇ25ƒÅ××—Ë—/›ìMôòòâþýûÔ«WÏèmœuŠ`M!\ÕC£mll˜=?Jëºa¯¼lTG¥cÇŽÛ­ùì3>ß±ƒÍšPTXÈÕ¾}¸>x0=§NÅÆÎ€”ë×y®Kæh$r„X ú… ÌÅÜìÐå…ð^ šÐÐPbbbpvv¦fÍšV«W¯fìØ±Ô©SÇd TfY@@:·Ù¿?‰‰‰¥°B¡ÀÁÁÁâsjÞ¼9ßÿ½ÉÛyzzšå ®[·.7oÞ4Idffoðû~å•WذaCµÏ$­‹œœ qqq1ØöÍ‘#9Ÿ”Äÿ¼¼H5ªÔº´>}Ø×§òÿâë¯ù‡“ÓÆ<-$D°PÁTÄ1Á@ xt„††²}ûvúô郳³³Åýyzz²~ýzþùÏ"I’IØ\ºwïÎO}z™ýŒ9’Ö­[ëì«aÆܼyÓ¤rT …¬ðë¦M›ò /è\Ÿ’’´iÓØºu«YY³«yyydggãîînÒvOõêEMnÝJÚˆÅË]¶oçãÁƒ Æ”¯æÑ@ˆ`¡‚µ<Í Jb¬.’eÎ_}Èõ»iäç à ª¶¶64ñv£uÓ:î–ÞCd´¿¡*XP1ppp gÏžìܹ“˜ä¹åØYk ÛÇ…%Iµ4ñññáàÁƒEðõë×Kµ‘e™[·nÑ A«Gjj*Ó¦McéÒ¥BëáøñãtèÐÁ¬m7îÝKÚ¨QPT„ýöíäõïOæ€l\½Zˆ`Á#WÁB 0Ö|þÊC2ò$:´mƒ­­îâï'£°0Ÿ‚…q•†ÂÂB®^¿Íù«i(žU”—^zIïzwww:uêÄþýûyòÉ'…Á¬€½½½ÖÒE%Y¿~=®®®¥¾wwwÞ{ï=V­ZeääÉ6ܾ=¾Ä ƒ×ñòò2«¿Ë7o2, €u‹wvvfÓÒ¥løî;îÜ)W¼*j§.ýÜ&å³nó:ÜÜÜ,ê;;;›…³çбN}¾xëþ8s’ÉoŒ#réb«d”,°1’Î|LIŠUXTDAai|0v7_ùÞ=œhÞÝuÎ&Ϲ’|&›¥KÞ¡ÿgyê™áH&Ž13Íc+oº6gç¡„R"´äüãàQÛ *QX$ #T1.\¸ÈW_oàüùó &бcGþøã\]]­6.µºâííÍÙ³gK‰`}X-  LÚÏСCZ&ÐŽ©É°JRÛՕȉµ&hùì³¥æ—D/áÆû´‘l˜?}¾QBóÌ¡34iZjÙùúçyøð¡E"øÌéÓ¬]²œYC‡ÑØË€íhÒ”áSyöµWéÑ«W¥ÿîY½z5±±±¼ð³•Z ÉB †1%;taaañrNv_mø€ó—Oà;—úe³‰Ö pµ±û¾ÿ™ãÇòÆøéÔVÝDu10¤Ûc/00Dé}Ø{¡Ìz5šë Š·×ì¯ä¶êþ5ÛiëWßñl½Pæ!ÅÔ‡–Ênƒ*%‚ …®j´jÕ’E £¸qý¦0ˆ‰ôèу˜˜œœœ„ÇǤ—/ÈÈÈ(µìÒ¥KÔ¨Q€ï¾ûggg:vìHjjªÎÒQædˆèæÞ½{ÌûEE‘‘B^žo©õׯßd̘e´iÓˆˆ—ê7;;›äädÚ·ooTûÓ·N<ÛpÞ”s[ÎqëÖ­Çò¿'Ë2ë?üˆ¤?/±vôDlmJç‚©éæÎêQoòiÌ6ìÝÇÔÙ3±µ­¼²ËÛÛ»8±Ÿf–ûÊŠÁÕ‘ÚLò—Á¿þü—n õ¸Ø8èöî š¿êÆ­øxí»ÌŒŒ6JþôûÙ2?ÝË¿øoÍu%¨6aZr[µ˜S·3Ô¯®ãц5Dpe·AåÁŠ2÷kÞ—ôÍ#îU‚ еkWnß¾MRRR©e»wïÆÉÉ {{{¾üòK9rä 6ÔY¯W³L“À2.^¼Èþ@fæ`­ëÏŸÿꀑ®]ga\¿¤[·nUÊV‹æFâÕ˜±ÿ§¿¶ñ˜þƒ9û×U¦N˜ÄêO>ÙcÐ<ºž„ `Š'¸¨°BU¸m»ÁìÝ· …½aï™$\$ѺMûâíõñÃîS¥Úéú[ÛºvŸâé^þü°ûCú–êKý©^gl¿úŽGæ¾,¥2Ú ²S$BÉ‚2¨kïÚµ‹`cc#Œb€Þ½{—Y–ÀСCñðð G,\¸èèh½/fΜ)ŒY ^xxxxT¹DµêÔ¡‘™Äש‹»‡ù¡ä,ZôÇ_aÍš‰4iÒX\XV@!L ègÐÀþü²=¦Xëû,,,¢  ‚‚B¼¼àììNú_¹Fí'íBm;o¯kR޵ϻNý·9Ûš²Î˜åæL•Õ•}*I±­888ðä“O²gÏa +аaCæÌ™CDDYYY •˜ãÇ]™xnø0¶Š5ªíχðôóÏ™µŸ­[wÓ¹óÛ,^Ì?Fòä“_1a²³³ÅÅe!Â, ¤'XßçO\) йSNœÜ»ƒÞ}d'P˜]D½†MŒ Ö7ÎÖØuÚ‚­Ñ¯¶ùáƒ;³iÛ«…BWFT ÅO†@  www‰%$$DÄB5jĬY³ˆˆˆ ::Zkù$AyÜçOêg–@ d6è#€²¦ovv’Q¸]»v(LLúùðîC.î½h°Ý­?oAðã±Sݺu¹—aTÛ£%0¼ót“úOH¸Ê¸qïLzúZ@UxãÆlÖ­»ÌÞ½3™4©cÇ­ÁýˆÑtæbî˜`€ÀöÁìÞ¹•†ƒ]QèùoK=ŸKë€ Š ‹(°·møàÎ|½õ ÙBíë­‹ûжþ•gºYM¾òL·2û±•ÉUçáH„C úðòòâáÇ¢†°•hܸ13gÎ,ÂŽŽŽÂ(åHpp0±±Ê— ‰‰‰¼ñÆ–R%’úôùŒåËß F ý¡è999$%%™å^±˜››Ë‰'Ö®t¥A~~~Í^­Úrþú5Z7öÑÙ&=+ §šžZ³bëã­·>`×®%@Ù—?EE¾œ=»šE‹ÞáÅZ”µ»új!Yˆ`À&e‡Ö(‘äâæAÝúõI¹˜NM?Ý?ÞéŠéÕÑèò=¾‹-i¾‹-Þ®ärÍuP¶G>bq¿#Ÿ )%(ÕÛZƒÊbƒ*%‚‹D8´@`ðÁ¸U+âããE a=,\¸áÇӢE ½í–-[ÆÓO?ÍŒ3øä“Oxûí·K­¥©¬‹]ñË›ëׯ×K­wu­iôËýû÷Ó½{w³ŽC-œ·mÛFDD„U¢ÒÒÒ¬n¯ç†ã“y‹˜£G› mkë U—nSSdH·!‚Å[DŽhý˜æ .*ª¦]»âNþ¨Sd‘v;‹ÆM[–ÙV…|¶yoñß%Q/×\÷Ùæ½eÚêÚVs̬)ý–œ/¹®}šKe±A•ÁÅc‚Ëã¾aL~h r jëgúô鄇‡óöÛoÓ²eK¸]»vÅž>M 0qâDaÌr½ç'WJÌátçÎÜÝÝqqq1{ßGÅßßß*øâÅ‹&{bÁÑÑ‘K‰·ô¶9|õç‹‹©Bè!‚“0Ölk#‘ŸŸr%µlÓŽí?þ—ó”cGŠoι¨ß–H …Ñ!´–†ÚŽ{©/ë6î.Õϸ—ú–j£¹¾¢!lðh±µQ—ŸBÔ ŒA]CØÅÅOOOaØÛÛÍ”)S˜4iR!¬À ÆzLÔ«WwÞiHNήâeݺçÑŒgРAfïûîÝ»deeáããcñyܺu‹{÷îáèäÈC–Z—Q˜av¿)))ÄÆÆÒgÐ Â?ÿ;{­í¼|—‹Xá¹F˜@ бžàFuÝILÎÄÕÙEI¡àáÄ’U딂W¶R¾R¬‡%£ËjlÞvÀâsÒÖ‡5ú}T>|HçÎ øé§L›ö§Nõ'3s¨jíu|}£;6ˆˆÏËõ8ªº"X 0€)Ù¡aÏž½ääÑ?,LWPe°±±³p{{aDÁcÇÎÎŽC·nݨY³¦É}Ô¯_¿øï½{÷rãÆ Þxã ž~úiÖ®]˪U«¬r]UìþŸÿüG¢’ñÑÏ?ŸžŽ,Ëܽ{³£(RSS¹uëaVx6Ú³g=zô°ê„7npñâEú÷ï_®6MHH !!bkkË]øòËïYºt,©©Þ„†±fÍ<‘gÀ ˆ×Õ‘Ú ÖÀùùù̘3›á#_äµ7_cÂÛ“ÈÊÊTÎû†ÆýC!ÙP$›WBI.Rn¯­_q¦ØØX­Z;÷êÕ«$$$зoßrµç¡C‡HII¡_¿~ØÚþí§1b('O~À‘#oðï/Ø’ç!‚ãùe{ŒÅ}\¹r•î½zòÝMtû¸>]?ªÇï×¥C×.?~⑜‡“óã»i>Î}WÄ㨊H Ì-WX$!)l„„ŒŒ 6nܨ· ýû÷çÝwßåÎ;&ïcß¾}ìÚµ‹ ”ZÞ¨Q#fΜIDDÙÙâ%¨ òü8Wƒ‚È8e7Ò¶m[³Cs÷ïßOpp0vv–E?~œ àååeµó¼xñ"·nݲŠ@×E^^¿þú+õë××Y‡ÙÞÞÞärk¼½r%c–-+ž&¯Z%^©áÐ,õoܸ‰ÉS#ðîFÐsµQçE ˜V“Û¤3à™Á¼=á-¦OZ®I„ð”'vvޏº˜– CEÝÁÎ;;Gòó„(”?®®®äåå±aÃFŽ©³Ý¼yóxþùç9{ö,4jÔȨþcccÙ¹sg¬¦qãÆÌœ9“ððpV¯^£££øRžŒE²»;vªë5))‰ÔU«ÀÅ…£îî¼¶n]qÛÔ?ÿäßK– ªñ¬k×®áääDݺu-:¾ .дiS«ó¹sçHKK³hœ³!>|Hll,½zõÂÍÍÍjýfddΡ… ÁÛ»x¹tó&ñááÄDGWûaÂ\mq…æb®'8-=—G¼Ê´Óè°¤MŸ÷D³T\ýnt]ë͆íëy²O/®^½f´¨tröÔ*0ÕËu‰OÍå%çKn§­¶~õ“³'ÙY)å&¬+ƒ ªÍ‰Â?ÿvH&üªH’„\TD«6mQO°à¢¿6lк~îܹôïߟBCCIHHàêÕ«Fõ——§S«iÒ¤ 3fÌàöíÛâËT ÖÌ›GQn.±#FðûÒ¥œùì3P%K\´ˆß—.å÷ÈH®_}Õ(œÍÙ³géÔ©“EÇvëÖ-îÞ½Kûöí­v¾§N";;›®]»–›M/_¾ÌÑ£G8pà#ÀrÆìŸ;—þááÕÐ#\Z ,À\OðêÕ{îwº®õÆ£…î7ý޵m z·6™Íï0ìåÙY)dg¥”pêåšëÌíÓ˜~um[¸²Ù ºõ__:t芇‡;6£’wZ´lC«Öåz­¦á’XM¯^½¸uë—.]2ØoŸ>}ŒÚ¿Íš5_„ RàÓ¤ |ðo|ÿ=^_|Qf½ý™3t‹ˆà·7ßdÔsÏÕço¿ýfôÿ‹.Ôµ€{ôèaµs=vì²,ë M¶ --°°°Rã-¥¨¨ˆ~:°¦Q­¯i]-ÑÌ>Sr™@s³Cú ñ6N†ß5I K„…—ÑÁ i%?uµ1¥ÏG/º„ *Æ=DI~^Ù’D]ïFxÕmHaA²,I6¶öH’DVÆòó²pptײ ,Xƒ8yò4  o¬ŽBxÆ ÅBX›V¡C‡ÈÏÏÇÏ/—@PåDƒ­-ΚEÒÔ©lÎÈ€™ }?úˆ}~hô°®øøxüýý-ªs›››ËÁƒ­ZV+..WWWüýýËņyyyìÞ½›€€£‡X˜Bzz:wš7×)€K á+5jÝoFF‡àÊ•+tìTI®ZÝ:Gx‚ Ø¿8$ÚÐgIÚøS«Fm’On’—Ç3O=- .¨´äåf’òà:©É7ÈH»Kfú=SFÚ]R“oòà:y¹™Âx‚Ç*„Ö¯_¯S«éÚµ+ÙÙÙœ:uJNPm¹"ËJœœŒí±cÜ騑óªq¹†¸wï™™™øøø˜} ………ìÙ³‡ÐÐP“ò©ìÙ½›¨Y³ÉÍÍ-³nÿþýÔ¨Q£Üðƒˆ‰‰!$$¤\°À4„'X 0@IO°¡OMF¼ø*_íYG­@ýÉ2näQ˜!Ó©SGap@ðȨU«}úôàË/¿®¶vÔ©£»ab"ªa!‚¥ÞŠO±~,­üÚ+¯±ró"êéxžÊK-äþ…túôîe²´ÆrcÛÛ¯®$Så%„+‹ ªó}ãòå+|ö¯¯xååðÓÛ/âž$x ¸¤G)22’¨¨(£„pË–-±µµeïÞ½ôìÙSUÕ­2i IDATPåY1}ºNñõet4±±±½D‹°û:ºø¨YÇЪU+£ÚM;œŽuê³bä8mþÑ5„Î-Z3uÌ8Þž3ÿ¶m>޼¼< ´ÖÛMJJâàÁƒôéÓ—Göýœ={–9Ï<ÃÂ3ˆ_ºT»NL¤ëܹ숎®VzGˆ`ÀD,ñ<7tááS¹1è! ÌŠ«üCõYXDÏ>!8;;=²sÒ¬þ[Õ…œ°Á£áîÝ{<ÿ#¹yóŸýëßüy6Ž:uj ûž3gN¬&**ŠÈÈH£„p³fͰµµe÷îÝ"ÜQ (g<=ªT˜‘Éÿ=ÛÛ`»zµjórHo.'-‚ÿ÷¿_ˆŠúžü|{Þx£##‹C¼/\¸ÀÍ›7%??Ÿèè™1#\ÁccñâÅFµ›?¾Ñ}Ö¯_¿X‡……UÊ °AUâ©çžåç_vób¯P½íŠd™{[ƒ™¦§Næ¿ÿÍãöíÕÀßÑ{ÙÙ½8z´Ï<ó)}û^â»ïV>’óKMMeÿþýøûûT¶n¯‡‡Ÿ«r„LÆœp…¤¤$‚ƒ»è¾é!IÒßáÑAâû­ÛHMK§E _Æ¿9 ÿ6ÍiáëËÇHòÃT¶nÝÎСƒ…¡U ///:wîLLL ýúõ/@Õòàú¿®“zØp¦h7…[¹K§ÎÙ´îS^4Ðnßé„„öÜÆÇßãöí%:Ö*HKË… 3‰;FZZaaa"ó¼Áýˆ43æbŽ'ø}±>|¤X§¦¥aog_*ôó/¾ä©Áƒðö®+Œ,¨Rdegqèà†‰Ö-“ŠŸ_sþoØ‹lþæ¿ì?Ç Aa88Ø ƒ ªµjÕ¢{÷îüúë¯ôïß_<  ª-[¶äÇ/~¬0ÇãR»&ÙÙ¸:éλ²ãôq"ߨI¢RRR8pàmÛ¶uÊ-ÔBB ,0€¥¡ÐüK£†  j(½À—ÏœâDÝZ xêÂÈ‚*…‹³ ¯¾:$;µ#7' €Üœ z<Ù{{{ …*ôLÜœUOOOzöìɯ¿þJ¿~ý †Y ‚òá©çžå§í¿é ‰.’eòìþT–eâããÉÌÌQ&VÒB‚âŠ@$Ñ¥c‚ 8¹ÿ7®yÔ ]»@’““ùð½U¼ÙÅ‹ßü¿î%óú¨‘ÂЂ*sße™ÎÛ©„o鸜ì‚»!ËEäåfèø…÷$Á£'55•‚‚«=\º¹¹Ñ§O¢££yçwÄxà1йK>]M7w­ë/ߺÉ}úTèsHNNæàÁƒ´Þp•WÀB‹ë@h`ÃX"€“““™;s&ÿÏÞyÇGU¬ø™Mo„$„z ½(½¼** þôRT+ŠRéM¬€¢^½½^)Aš 4Á’Ð;¡†ô¶ÙùýqΆÍf7Ù$›°IæÉg?›=3gÎ윲óyç}_èQsW˜?KÓ¦KxúéNN©óõë×Ù»w/íÛ·§Fê‚*”mŽBQÅ]\½f "‡}”¢ÆÁ«¯jBgî\xæPÑþW¯ÂcÁúõÚõ0lXùûŽžžž¼õÖDžþ&,">>•åË'ФI£|Úå*ƒ^~™¤[ƒÙÙô«R…¥/¼+ßþýû‰ˆˆ Z5çEé9°'Õ=ðò·›'=%+\áàžƒJ+ ¨ýs„pAïö «Í†ï7‘˜”D³ð¦¹Ò¾øàŽÿÎÉãÇiШÑmí0—EÑ«(ŸxyyѬY+<=½ÉHW"¸<ßÏ®J£F aýúõôìÙ“ÀÀÀ÷9{ö,uêÔ)0_BB&“‰   2Ù6#Fh"8#ž}¶n…U« 4T]7•~€GK—´Ï‘‘P»vùý¾UªTáË/g˜ïòåËô›6ÃóçƒÕ3äÂæÍdϞͲ_dïÞ½ 8Ðé>¾úì+Ư_mÚhBHQ±ÈÊ‚—_†~ýn `€áÃUÛÄÅÅÑ÷ÕWm `€äþýù¸cGî7ŽÆÓ¥K—q¢ÌškØûæ^Ro¦æJËLÍd×´]¼7ë½ gz­D°BQÅ5…NIIåƒwÞá.ÿD~Û¿¿üONççé§ÇS)üfýï S^{ƒ¦M›¸ŒÈ,‹~5;ì$&&ñÒ+oòÒ+oòÎÊr¥-Yú¯N›Å‹/¿ArrŠÝ22228uê¥o_vôëÇ/üQ¢u fÕüUüüæÏ¤%¤åà¯îäƒÙTȵÇÊZ¡(€â® –RâæîÁ…¸$n$gЪJH®ô<úG/^§N½zN‚–ŸKr¿Û%ÐÍõSÂ×5 ¬Ä„ X±b¯¿1‡Zµj2tHë¾ú–™³çðÌ3ÏàïクGʺäøý÷Ãlݺ иýñç_Äü«':wîÌÉ“'Ù´i½{÷ÆÃÃÃf¾Ñ£G³fÍþýïÓ¿Ö­[Ç™3gxçw˜6m³fÍ"$$¤Ì·Ç°aðÆ¹·™L0glߟ ¨ë¦¼ò¯ÁرhÃX§}{ÍZE'ËÛ Ì—Ú¤ ‰gÏ–x}BBBX=5N~”ˆ©˜w€÷g½oWŸ8q"g@/%%…ƒµõÂÇŽã©§Æ)¬( ¨@ÀÅ¡¸3Áþþ~<öä|üñZZv®AŸÞyƒ²?òðÈB ÝÂ|.î~®FY­w…zâHÉœ·Þ >>žÍ›71íõY\¸x‰•ï®"$$˜¨¨(fÏzôÔø|ËIOOF*§XN§M›Ö´iÓÚ†xû?Õ8РA‚ƒƒùþûïéÞ½;•+Û¶š3f +V¬`ذa´lÙ’ž={Ò³gO¢££Ë…hÝ7†cÇò¦íÛíÚiáq|P]7å‰ädÍÚêÕù(\“¦ŸFÏN=Ùÿó~jÖ¬i7oÆ yÁÂq—™éÓ§—a=t e­PÀ÷7;¥œ–-[Ø;Y·nÕÐÅDÍ»i ¬|g ÷BÃõ‰ŽÞN£†õ>ì^–/[LzçJ™C+J›´´4~þùçóU®\™¨¨(~þùgíµAbb"‡bðàÁüý÷ßlÚ´‰?üÙ³g“YŽBågòš˜#G£jÂIQöùõWèÐ! yMå®Á7øöÛo™6ÖOà¥y/‘PaÛCÍWH¤Õÿj¦8?Š:|ðÀ/¼:mz¡÷›9cºjô¢t`•.ågHAÏ ‰13‘¹sçðÖ[oqíÚUªV­Æ‹/¾ˆ130å{//Oš5k‰§§é6ž] …sñññaëÖ­¤¥¥Ñ«W¯|ózxx0pà@öíÛÇ•+WˆŒŒÌIKJJbòäÉÌš5‹ªU«rñâEºwïN§NfòäÉ,X°À®9õí"ðÜ )‚çÌÉ?Ïš5ðÓOšùlûöê:+“O| ‹kë½32_ KYѲ¥æ8M¦ôtm@ή 7oâ^‚1Æ’““s➯ùﺼޅÀ¾ȨgGñÉâOò~_¶5OÞþƒš V]VEe&¸C‡öÜÿ}T ,ôK¡(?'B¦2éùÉôë?gŸ›¦d¤49¶¿)Sy‡V”*Ó¦McÏž=lÛ¶Í¡ü‘‘‘T­Z•7’••ERR“&MbÆŒT­Z€=zä˜M7iÒ„ &0iÒ$²\Ì{”.ê·qgqô(té j‚JQv¸z ‚I“tÜXi[›FoEý©S!;Ûn·£GéýÅ îÓÇéÇÏÌÌäÇäàÁƒ´nÝšŸ­ í”¶ÖÐúš~!~ÜñòŒzvT…˜¶ÖBj&X7Fc¶j;e&ØÏ×—®]ï$2ò»yL&BD Žþ)%ј···CyM&#Þž‚!÷ #- “I=kJå¹®;ºSËŠ&„g̘PàŒ0@ýúõsÖ ß¼y“3fP­Z5»ù›6mÊ„ صk½{÷v™ïí ø}€ùÀ G„³ÐÖ.\XpÞŒ xþy-¦ðš5 (\˜èh5 ââôQ’ÇW÷ìï£Dð-"ÛµãK!¸ÊNÍ›n¹í,Übcé³lß.Z„§§ó–þdggó믿Odd$Œ~f4­'µÎÀfü«øsÇËw0ú¹Ñ|¼èãr<#œ%‚+ ÒjD¤J•*¤¤¦â‘pƒA 2gP­jÕªœtU5†¢\a2IRRS ­â°eIvv©)ñEzN´Ma%|KW2hÐ ~øáRSS ÌNxx¸Ë}ï(à{à àaà À§€}FŒpL›Ù¸Q‹)üÉ'з¯ºÖ\‘¬,xõU˜?_},Ìc6lïפ ´j¥ÚÏ’ŽmÛòo!xàé§IhÛÖò‡‘ŽÿÍ7 :MK)ùóÏ?9wî:t cÇŽ >ˆì*ÙÄ~e?€ÑßÈàƒù1úÇr«y”VäÁ×׃A””ˆ»»º$ …}ŒF#~~¾xyy©ÆP”Y®_¿N||<†|Öê=ôÐCÌž=)¥C3¶îîîôïߟpùòe:wî\æÚ¥/à dŸûÑ,_›å³Od$Ôª aGh3óf‹-®Ðœ8¡yô>p@ßÐX˜gîχmï«fmѦ gÏæÆ¹¶×}òIÜÜÜœtÞNCË–-8p`®´/?þÒ¡åM(ÅS1™ŒT äÚ•8BB‚13ðöövؼQ¡P(œ›»W¯^" “ɨDQ¢œ9s†Õ«WS·n]*Uªd7ßùóç9zôh¡Ì–;vìÈ™3gظq£K™;;BЈÖ?E›~fkÁ÷Þ Ë—¶/óæÁŽšÓ¬† Õuy»ùì3?^ýëLƑۃÐ÷ö÷W¡‘ìS¹re»!ÕŠÃ¥K—8tèõë×gÐ Û‹üýýÕ P"X••FíÚõ9~ì/¤”T ¬„›‡Õ( …óH Ä߸IÂÍë4hNVfšjE‰Ò¾}{ÚµkÇþýûÉÌ̤K—.yfd¾üòK†Êرc ]~ݺu bÓ¦M¤¥¥•©uvQ" xØ,‚lì3|xáE°™4¯Ñ+VÀëkóvœ &h&êÔVíld¶c ]¯DD¨¶,-nܸÁÁƒ ¥ÿþùZµ(”®ØXó2ðòö¤Q£fÄÅçÂù³dg›a@–ïAû€íF“á‚ÜŽ´ÿeN^!nZHóÿ)õBó©}–úgiá=Òüÿ­w¸µÔ»Ðæò¤~xsyÚg-AêÚbhy«.z¡o“ú±,?ç”™«Nú')o¥å”«(ÿÒ $B¿OrßÚG@hsÞ2çÞz~=oÎ>hy„vÏaÞYh÷0ïcÞOè÷™@ õrEÞr…¹Öܪ³4Ðë­ß“Úý«ÕÅ<õ#„Ðï9CŽ{W‰ ‹[ L·®“4É„i2é÷ˆÀdÊFš$&$Ò$5Ò~¾¾Ôo؃A‘™¡.0EÉßÃBÉ7Ø´imÛ¶¥V­Züç?ÿáÆŒ7®ÈåWªT‰¨¨(-ZD5ÊL»ôG›´6žÜ‚¶$tp§UZ×®š£«+WŠvÌÄDxäÍÓòå ®ÏÒâàA-žó±cú†{9hfÖÄ¿Ú.GÍ—)))ìÛ·___zõ꥖1Q !•®°d¤'ãááMí°úáfuuäœf¡—ç*ÊyËÇ…ÌÓë°zçÞÜ1Ï•ž[ Üêð“+Ý,¶s¶ ³ŒÈ}¼œmÂò“°°íyŽ/©s.ÏÎÖe(Ê÷ÃôÖ@JÞûäÖõ/-Ý2X åŒæ`±MZÝQ–/9-†or}Æ*öH~÷±­AiUßÜõï¹FlH «{+÷ V÷³Ðe˜•AFzŠº¶¥Jpp0QQQþøcöîÝË+¯¼R¡Ûz `–{Ð,fëèÛ‡/¾mFòÎ;5‡YÏ?¯Æ•K‚Ë—aôhؼYßÐx¨_ÀŽvL¡kÕÒ¤)ìsîÜ9&½>‰Àü—F¤§¥Ó»Koù(p+ÜQBB;v¬P!Œœ¯}”Vgõ‹¢(™™œ>}šððV¤§'Ùü_š”I«B¡pž^µjóçÏ/±c¤¥¥a4Y¹reάð]wÝU!Í /ùEõþè̆={BPÄÇÿø™™0eŠSøã!Ÿ°ËŠB²y3Œcû÷ŸúÉ.ÈC÷U4wá6¸÷^ÍAšÂ>aaa„Õ훵;Ô¶Ý·JÉ`÷k»ØKóîüÇpñâEÚµkGhh¨jD'+auÉ*ŠBãåéIxxK¼¼¼ìþ¯P(ÎÀÎ 'b üq"""hÛ¶-›7oæìÙ³®Í«ŽLì%¢9ždyÀ!ÎlmÚXÌX*ŠLV–6°0p .€CÏ€×À›ìЍÐHޱðÍ…dïÊæü/çí à÷g¿OJJ 7n$00~ýú)\B¨™à ‰ÄË;€ììlââ.šš„1Ë„p3`0¯±5p  º£ƒÀ€ÐcpÓ¼Z !ú À€aÐÜêH)õ4¡;°ÒŽo¹~QÊÜë¥åºD³C*aá< ‘ã¼JJ©¯UÔaéž¶Ìåç:X9°ºåL+Ç–îLKJ™ãÈ+_ÇXÒìHK9ƪhèK §V·œ\Iav™evHe.ïÖšvÍy–ÔÏ¡gåë®Ùâ–+Ýá•°px¥ûªËµF>g=nÎòzƒVJ®J+p÷ðÆd’œ8K@@uë4ÄÛÇ?WG^ÚsÜ“ë:²çÇÖEgåV'_‡Vs‹ü€•C+‘K<äÚ#?[6ŽmË–õ±sË‘c+Ê÷ó´ÇXÒÞ½dy9âäJZìnËCy~­ sì¼T–ÇæÁ"¯Ès/[åÉç“H2ÒR¹qã*'OÆÒ A8î^³”9}y$++ £Ñ±8зS[Ò¾}{زe -Z´ ^½zâ\EÓÐÖ; `^wð~Ò—ƒ3G„¥„ùóµ˜ÂŸ«{ÉQÖ®ÕÂ%%¡Íø¾Œ¥p+ãâ½¶“† Ñ£) '„ŸíyÎʳTk^¯îdÌ 1˜L&ú÷ïoåDRQbzH5AÅÃÃÇӧŽ@­Úõ1f¦“žž¨ÏÈ( Eé!„7wOjÔ¬‹¸t– çOS¯^c%‚+8ÇŽã¾ûîcÔ¨Q®6 Lœ8±Dò2hÐ :ÄÖ­[éÖ­[¡wíÚ5ªT©RfÎA5 =p°0ƒÄ›h¶ÔëέÓÁƒÐ¡ƒFiÔ(uŸäGb¢&~?ýTßPÍùU›"¶…¼1³t”W袱àÍ<ýâÓüoéÿxu«ôíÛW…;R"XQÒÜÜILJ¤Y³Vde¤b4ªÎ¦BQÁ•h®IëÐJ%Y–))M„V­ÉßýŽÁMý4UtêÖ­KïÞ½¹ë®»hÕªU¾ySSSÙ¾};ÁÁÁ´oß¾DgÛ¶mKRRÑÑÑ„‡‡Ó°aC‡ö3LŸ>‰'Ò¸ Mc.¤ðö†´^ÀÀ3À.çÖ))Iól +V@¥Jê~±æÀxðA8qBßpZø#¿"hÇ+tp0ôè¡Ú»($''sñÚEª4¬‚o€¯SðéS§©W¿^ù®]»†·—7þþ[©Ë°÷{ ndggª†P(*¬ö5®]KæÔ™küñ÷9Ž¼Ì•kIdg›ÓK§¬lc77”÷z€§§'K—.å¿ÿý/çÏŸ'((Èî«V­Zôïߟ:uê°yófŽ9bÛÞ¹0hÐ RRRˆŽŽ&#£àdwww.\ÈâÅ‹9zôh™9QE¸#½¼ôUÏWqÌñR!ùôShß^| “ æÍÓBL8 Å±ZR œh cȨ@Ëä*€G?7šö/´§×ô^,ß°œ»w»ÜLJ?Ϋ_Í7O\\}Û÷eëÆ­þ<¨áv…B¡¨€ 9qê"ÇŽçæÍ›¤¦¦âííMåÊ•iРÖ"ÀÏSK%œYVEÁÇ·2i©7m~.-bc²öÓψ‰‰qjÙëÖ­£mÛ¶4jÔ(ß|111ÄÄÄä‰ÿëææÆüùó™"<–+V0hÐ ›éf!¼jÕ*Ž9âÐqëÕ«Ç AƒÈÊÊbÆ \¼x±ÄÚÏßߟ¨¨(ÒÓÓÙ¼y3ééé á… ²|ùrbccËÄu:¨ûx{[mh lJ ”NVL è¡* 7j¡¤¢£õžýLì· IDATà'`€ïmo®T úöUÏñ à1“ÆäÀfîzá.–¯_ÎŽwëu’êpiÍ%^{îµ<øÑ¾ÒîH;<)¼ÿ„êÕ«3gÎæÌ™CŸ>}ÊG_H]’ [\;šëåJÂïjÜQu‚Šâ<øÝ<9wá{öì¡FõjLÿ$ýúõæÔ©“ôíÓ“qcŸ m›ÖìÝ»—3g/ƒpw¸¬Á°{ïá®;;sÏÝQŒý0Í›:TVEÇ,†Ë æ™O{BøèÑ£¬X±‚… æz¨(B Y³f 8¸¸86mÚÄ7Jì»¶jÕŠ»îº‹íÛ·(n===Y°`Ë—/wúì{IUDœÇÁm° X ”ÀRÄèhMnÜXqžÚ ø Apå š ú¿€WpŽ z*°ÍvÒàÁÚŒ¿Â1RRRöè0êü£É\?}=Ï«ÙýÍxã½7Šm]'±V]ÈÂæࢠàòŠê( Mhõ&9ÂØ,H-E²¥HµÌkKÀ:ºŸ½ãæWFAiŽˆm[Çrô;ç÷Ùz?[ƒ Jì+Jap#=ÃÄ_ý¯¯C† &9%…‡F>Â_ÿÍ×_ÃÚOVÓµk®\½ÊñãÇ©V?‘g¥uY]»v¡ËÝX²x!ýû÷Ë)·k·®Ô¯ß ß²*–³¾–·¼ áçž{Žçž{.—^¾|9óçÏw(ö®Yç7«lsÆ` }ûöFöïßOZZ‘‘‘øû;_…ùùù1pà@¢££Y¹r%Þy¦CssùòeæÎËêÕ«]úÖZæ9cimÍ üîܺ^¹¢ Â瞃ٳ˷H;zTs~õë¯ú†ÞÀb ĉù°cÜ0|8ŠB™™É >ƒ´Xb'ìçÚu(îÅ—guëpvÕY&¥L"v_,m·UX‰àŠŠs;œÖbÐQèŒýìÕ£°å;ëû¦l{û•T=м¢À,£‰Ë—/ÓªeK“’xø¡Qøúù±wïž|r?2†×|DDD{vïþ™ŒL#þ~žÈlc¾e²há|ÆOxšùóßfõª5øúù1~Ü?¹zíz¾eUT!œßçò(„›4iB¥J•øâ‹/X¸pa¡Â ¹¹¹Ñ´iÓ¢uvÜÝéÒ¥ ©©©ìß¿ƒÁ@dd$^% ’úöíKßìDO:ÅܹsY²dI™8‡Q…Á ÍÛµ¯| ÌVâô˜Â j1…ÿõ/hRW0­YO? ÉÉ€'šó±Çq¾_Á ö|4ós…ã1ñŸKõ˜!‰!ìØºƒi5”Σ…¤2‡VØk–/kQV‘VTAçl!èŠÂR‰]Ei#„ÌÌ,²²²¨Z5”¯¿þ/Çİté"üýY¾l1¿þú›6o!°R%<<>4nܘӧÏÒ°A=Þ{wOþs<]»õ""¢+ßY†»»;'Oœ¢^½zøûbÊN(°¬š5«ñè˜ÿÃÇ×—5k>b÷î=<ûÜó,Z8Ÿ  |Ë*ïØ2}¶µþ·¼‹c///ZµjE«V­¸|ù2;vìÀÓÓ“¶mÛR©„ÊçŸÎÈ‘#m¦…††ÅÙ³gY¸p!ÇŽcåÊ•%R'N°`Á/^\¦°™ÁÀ¢Bîãí퀨| ¼¼…Ý}ûô!!!‰sçcHJJ¦oß¾‘~Ýá²Ú·ïH||¾¾>¤§gP)0að gÏž–UÑP&Òú÷öñ¡sçΘL&bccÙ¼y3U«V¥U«V¥b*½oß>¾ùæfÏž‚¦M›òûï¿óÇA•*UŠ} wwwæÏŸ_¦ÏS 4V§ ±ÁžžY˜™ÝVh1…§_8YÛei‚rëVX»jÔpÝöÞ°A3å¾zmÊê)`r)õÜw‰¶“”WèÛCZZ¿ýö‰‰‰4iÒ„¨¨¼ÃRÈÃÿ÷p¾Þï‡Ü?www†7¬ðZH‰`…M¡VØô¢ìS˜íÖ"ÓÑc;KHö;6M ^Eib2e“žvš5«1fÌþüóOŽ;FVVÞÞÞ4mÚ”&MšàíåNjÊÕ|Ã9³¬ ש±0‰¶|¯¨ š5kF³f͸rå ;wîÄÝݶmÛX*Ø\víÚa49pà¿ýö;w.‘°Je(àBrRø ÑÖ O’œû=~øA‹)¼zµë™öfdÀ /ÀÒ¥š§kª£ÅW¾³+±Þöf¸ç¥ÈåË—9|øpγ0((Ènޱώu¨ÌAÕ=»ÁŠÒ±5T}^…Âå0fe’œ‡Ÿ"ï "")%!0™ɤ$]FJSé•% x.•£g‰yØzmpE7‘6SµjUz÷îãðÅ<ûQ¯^=§çŸÿü']»v套^²}¬^½š%K–Z¡ÏËà"ˆ`ooH(ª€!@;`<ð«s¿ËÕ«p÷ÝðÌ30w®kÄŽ‰Ñœ_ýö›¾¡Ÿ>\š?h3ñ6èÝ*WFQñññ,yk Óßžžo¾ôôtf¼<ƒY gåÚn¶Š9yò$ÕªU£GÅSWЯ¸]"XáYRÊé0õ&J½%!„šSý$´Õ#þ@º”2ÝÁc˜Wá\®\R3œ …«b2IJ¼ŒÁà†‡‡Â`ÀdÊ&+3Í!ñ[ReUlÍÛs–U‘ñöö¦S§N˜L&Ž=ÊæÍ› ¥U«V6;…»ví¢[·n–{òäI¼¼¼X¿~=3gÎäµ×^ÃWÅ|)6@m 0+¦‹dmIà`°pâãDJX²vîÔœg…‡ß¾¶]µJä))€ð0ç‡>*ˆ½À ÛIÊÚ1’’’XÿþzRR˜÷Þ<»ø‘påÌm HMMÍ1ygò@V¢”¦c¬JÀuàw;é}€xýu¯<¿WuñÛSÏû²Çn¥ç}«”M!ÄÃêòR(eC g“‘‘LzZ"™)Å­Î,«¢a Â›B,¤ „‡‡Ó¿ÂÂÂØµk;vìàæÍÜ©©©Ì™3'ß²Ž?΂  ¥víÚ¼úê«Lž<™ÔÔTÕÐõo(Y¶p^B[#\ÍùßëÐ!ˆˆ€>*ý6MH€€Ç×pcà{àÑÛ €Á®Wh772DÝŽRß­> Ÿ%0åŸSl àQQ£ÛFˆOqqqDGG³oß>Z´hÁÀ©_¿¾jÄò"‚¥”ñhÆ, …Õmd€æÎ ´!,«M}RÊ=_šá†ëü@Ä Y ) …Ba[a“JïÞ½éÔ©±±±lÙ²…S§Ni‰hÓ¦ sçε+€-ZÄ¢E‹r¼4×®]›—_~™)S¦––¦¸Š27Ullæ.à ¯ó¿WJ üßÿi‚4¡”¢¸ýü3´k_~©oxØ4»M'×l´Ô½;TðÕ…¦VJ­·ñ䮨N6L]ûE‰Ÿ%2åŸÚ³å¡þ¶3Œ@“¶Ôßߟ:¨5¿@ÿ ¿ße¹QQh®§oj !Z[íÛ]߬ïã-„¨'„È3d"„0!: !"…äB´BôÖgqÍæÌ5läBˆúBˆ(!D!„·Uº¦ôÓëç"©ËsÄM…B¡({øøV¶ùræÎËþó’’’\º…4iÒ„P·n]~üñG|||¨[·. ,(P[ á_|±@sjÕq¼M&ѹN:ðšéncçÇÓ§5:{¶óc _¸}ûÂ+¯€ÑtÔ{¿®°üó{;çÜ Dpq¨™R“ŸÝ ií¦ÔÝ]—J¦JªQ\@ •¶Þ ¤[‹` ¿…À5û¤hCÇõÏ]SÀ$«ÃÑÖ ÿŒ6³|QÏkë‡óa!Äyà]|_B<£ÿÿ?«¼ôòNê݃À!Äh‹l#ÐÆÑ@3‡>¥?¦ …B¡È%€ÓRoæñ í*3ÁË–-cÆ |óÍ7lذ-[¶°wïÞÔ…ê@à šC®úàÀ/yCtì¬V£E±{X#„RÊOôGñ0àk`;ð&pÜ5GBrˆ\¿ÏáÃ’˜”¬gÍk¢zWïê]½[¾øЦM ‚ƒ*—г©âZ­¸ŠwèeË–Q³fM¢¢¢xâ‰'˜>}:&L fÍšÄÄÄpóæMüýý '88Ø%ÛÒËË‹ÈÈHî¸ã7n̰aà À Çé„ y;u¸Ãé®™Dge9{D ˜ô&‰Î-~ûvM¸~ôQÑc䦧ÃÔ©°|¹û·&°\oHWáÚ´‘ ”Wèâ à_›ýÊÊ+©S·aaa,r9mÏ·-vÙgΜ¡nݺª‘ ¥}n“Öùè DÛ„îúçͺÀÍBìú !*I)Ñfrv#—^ÎG@0@Jiön1NwÄ5Ôj—l —”ò’¾ío-R³¬òÎÒŸ÷wK)×[sp x[ñ•”ò²â'=ùŠ”rGY¸,âãøõ·ÃT ¡^½0uŸ( »$%&ñ믿Ñ¡-•+ª)güûßÿ¦k×®Ü{ï½Ì™3www-ZÄsÏ=Ç„ ¸ãŽ;HIIáï¿ÿæàÁƒøøøÐ´iSªV­êrßGÁ< N¬“qC›©ø¬ûy{—€63˜[1…8·èk×`èPxê)xûíÂÍjÿý7<ø ünŽ2PíA.vR7Ø»‡”)´³0@ï½–=±¬XBøÔ©SÜ?d(ï|ø!wtT]n‡Þ ÌF3‰ÞtAs `)p7£­Žèªß–æõÀ[ò)·1Zè¤÷,°™–"Xá´>·Àf–¢¹[°~´^µÀRÊ,!Ä×ÀzyûÊâEpüÄ)ê׫C‹­Õ¡P( äÏ?süÄi":´QQD,g}-Ã#•ö,plìQÖ~ú9111´ïÁ½÷æŽRh-„ÃÃÃñóó#""B«sZ±±±:toooš4iBõêÕÕI.ç .¢.Ñ%æµÐÌ‹KЦ:œ„”°l™Sø‹/ ™œ?ü&N„ÔTÀÍ~p´‹žP;"8"Ôdc°Ì+€ÍôÐ >€eO,C1Ö¼7g²yöb&/\ćÿú }¯Äˆ‹‹cñâÅìÞ½›ûî+û##·CÿÜäÖºà«ÿ;é·e7 FJy6ŸrÍ ÎVkü¶h3ËÇò>äd²⢅`öÓ«ÙB[½³}Uò*‚ÝÜÕªVQO,…BáÕªV!1Ñq›Ãã'NñѪÏxhäpZ¶h¦ÐBÛú¿4iÚ´ 3gLàÜÙótïÞÝvgÁBOœ8‘Få¤ùøøÐ¶­6£‘‘‘All,‡ÆÓÓ“FQ»vmu²Ë!w@a¢ ¹»k/cI·tG3‹¾ x »&¾EåðaM.Y¢…T²ÅÍ›ðä“ðŸÿèÂwôwWä´E61B]ëEá/ï¿Øºi+aul[XöÐ ñ¡à™±ÏºìíÛ¶VŸ €îìÊ¿Ö~ÊÈQ”è÷©^½zŽÓÀòâ7¡ÔE°”Ò$„ØôBМbý)¥¨gIµÈûp7…8ÍÀãhc}ÖceÿE3ÁþxF]f …¢"‘––ÆÞ½Z¨õI“FµHK¹A³fõøÇýÚ#ö§Ÿ‘‘YaÛÈì ºÂwB êׯOïÞ½éÓ§¾¾¾ìÚµ‹-[¶pèÐ!âããU#¹8ƒŠrýß.7$^hæÉ«p~ˆ"³gêIÜòRSøÞöæfÍ ysu}»©©©|ýÕWx$¤P«J¨Í<•|ýhW=ŒwîT æ î·ñدcÛ›³™ÇõÇÊaižÀi+qû†b1š¿?43곺h=g•w#PMQðb€`=9Á*ï&!D8Ú:åÖºH>(¥üÍFÝÆèâ»>ð—ºÌ¥Åõñ>ü‰IÉB¤”ê]½üŽ$Àߟ6mZT<æëëǨQ£AˆèÐ’tÝóqzZ"]ï숧§'ƒ/o/-îH·Ë3tA 0 T& !¨S§uêÔÁh4òàƒrõêU¾ûî;ÔÞEé©w R ±Ù$ú¶YÁÚ yþÙ å F‹ý[©Œ¼Sö{©j¸}°ë× qŽãǤ¤$bbbˆÇ××—õë¾âÇžÊwŸGûFñÄ; ¹³kW ƒ:!®*‚¥”ç¬E©<ǰÆHO‹ÇÎ:aÝ$ÙÚaá«Û-À )å8)åi‹íýõÙ(7Ø®¿ò«·-Tûu‰)J‹ø› üvè0Õ«U§Q£ÆªA…&!!ß~;L‡ö­©\¹èBXJZjÂ×J॥ÆsGD+¤4‘‘žT¡ÛÛ,~]U ›Ã•6F£‘É“'óàƒrîÜ9¦NÊܹs©T©’ºI] ùZÕÚÄÛRRncÅk ™-/¡-z+Ê—+Ï3eˆ|¼B+\8ÒÓÓyp轌v"C‹Øx ÄÄĘ˜ˆ¿¿?ááᑚšÊ'žLÿß ;/Oâââ¨Y³¦:)®*‚]¡ÿŒÕcÿ~Š»¸°¸|¢.EYâĉÓ4j؈š5kàã£Üä+ŠðPLKÅßߟ'ÏÒ¡}ñfƒÓÓóIKPmm#F°¥‰´«Î—†~þùç™0a¤§§3räH¦NÊÛo¿­„°‹2¸,Š`ÐÌ–ŸC‹)<Í[£4ÞÅFœ‘²/‚6ÔËõ ¤¥§#$+/•B||¼®LpP õëÕÁû¶um\‘Drï޽ʪ°‹Òð@‹%é(^^.dmI#´õ²3Ñ<Ä<æIº¼8ܽ üj;iøp—Ñu IDATB]ÏŽ ¥dÕ²¼ûÏgsm¯ì@˜§{÷îeèСxxx¨ÆR"XaÕRº~|„ø ÕÊ™ÍoöÕ2-¿äÂ\ëíæm¶ŽQPE©WyÀ–Ãó6[k­;àæB<"„¨êRi+AX@,ª€´¤%!Bó+³¤í*Ø­‰Y%vË•™0a/½<¯¾ú/_|ñïüÌ3Ï[›ÉÎ6‘˜”BçÎ]ðòòFa÷åííM›6mIJI%;Û¤N– áëëKÓ¦MéÙ³'}ûö¥[·nøùùqäȶlÙBtt4¿üò W®\!?c&³øýøãU£VúSøÙ³—hE)q Øk;éÞ{Õ¹p”ÅsÞæù{òŸåíÙ¦ûØNrr²j0¤ÂÏ !¼Ð§H)³JóØRÊ 4§ü[ÉBˆ0ý7d°Tq’[³Ä?K)·«¬g€=Sj9#[Úήnç±KKô:Ô2Ÿ#e*aìêHÌ›øøx6oÞÄ”©/qîÜy–,]NHH0QQQÌ{{&S¦³žideeãååÑXðãÊÛÛc–‰2°*¤bwÜÝ #,,,gÛõë×9þ<¿ÿþ;^^^Ô®]›Úµkãéé™K¯ZµŠµk×òÈ#ê¸nnn¹ÊR¸>Á@'`w¡úaÚÚà´4Õ~¥Â& Ûv’ ä8gÏžå ¦gùóÈDvî¤M‰àÛ*x À“ÀZ)¥9DûSÀ|à>`Ýmí®JyøøPá®ÿ–  „ÛÌ¢XÏ[êX Æ’(ÛRˆ–¦IòíÍ›·`Ñ¢ENÀºƒÁ3ã«?{m~6 ØÑQα^_Ÿ_¸$W$$$„œÏœ;wŽŸ~ú‰ôôtÜÜܨV­aaa<öØc¬ZµŠÏ>ûŒ‡zÈác4oÞœæÍ›«›¸Œ1¨"4“h%‚K‰ ¶7W©=z¨æq”Ö* %‚ËïÿüËb[6Z|÷l×ê¸J£þ;²xE7î f !®pk–x—>«\"XÏŽZ¯©µ·OaD¤µ)rI mW;viu¶ Û±vtFXQ60`ÞüùÌš9ƒk×®Rµj5^~åU ç PK§[öD¯mœwÿŠ‚­õø¥=°týúu~ÿý×®]+RÉÉÉÄÆÆ@@@&“‰K—.qèÐ!’““‘R²aî]»ÆÄ‰ÕMY޼‚]¿K6ñòÒf„•QH “üd;iÈpsSMä té2Œøø‚E¦¦žâõ×ïå±Ç(ñ:%''³w¯fGòäI:th«Dp#Ô†Ø\Œ6ÓêÒH)¯kµúŒv]OZ !vqk–øømÎÚp8e)ž-ó”f«\["ÛÑ2ò+³0û•¥Žv~æÐÖŽ²lícOT«ÙಂÄÇÛƒç'OaûöíôêÕ o/7§š![–娠µÁÊ$ºìzZOOOçäÉ“¶¿“>>>T®\™ãǫ۱œSèì+Ä>B¨ÙàRavcX)'Æ®ÃSObüxIB½ùækÞ|,#GU V¬¯EM—R^B„í)噼*QRÊKBˆV€§”ò«}ú°{÷îrÑÎæÈAà}!ÄÛ€ÙÌö´âo!Dg«}¾¾B¼  !þ¥wlü…K€KÀN`3pQñ.t-ù X"„X®çßœBü!„hgChÎëÇüˆþB´·Êú°Gñ¸žç'àýÿ¾zžÃú6€'€S@”ÕñÆ£ùÐÛ¯?6Î!¶ë–ùºÇÑÂŽÿO¿!„xN”’}Ÿ”2^Jù)åcRÊZÀ0à,0 ˆëß ï¬\ELÌ1õd)×"Gµ¢`!l4f(€‹{-åçÚòe¨ànHÍö>—¶mÛÆž={”®`"¸° ³I´¢„HÒ{æ6¸ûnÍK·ÂuX¶ìijÖ\j'5ƒÖ­70fŒòdæ Œ.Ÿîª£y(® |eCÀ6A[ò±øø·ùœ¡…ÿ èŒ6;:K/ûGݳ%#€tÑVÍ9U5àk!DˆE‡j°HÓÛøàìBÔ·*7X ||| ôöèéƒQùtà&+Ðf›Ç¡Íj"ôïá£çóÔ¹70ZÏ7\ø Û2®&¥<,¥|[JÙ ¨ñÔS8}æG›vÝ?þ¶oßMBB¢Ó]Þà ¹¶ÀÉV p‰kÉÑñ?¡z¼y(oëñ•®˜ÔÚú¹¡ aE ñ`Çâðáªy\„„þøã¢££¹té-[Eˆ‹yòU­º‚wÞyZ5X1±\ì <"¥4 Úo…©@´.d·È[˜*¥œgÑ™éŒ6K)-WhBÑâáNÞ²:æh)¥ÙWÝ:=ï×€‰º ôRà:ÐIJ§çýKqø˜§ j3~ÀB)åóV.³×ÝRÊ;²z]wH)ÍŒ¿õº½LÞZ¡™RÏ•R~b‘ï,ð&.b]J™l4fpWç–œ8yš=?ýƺu_ñÖÜ%4oÞ„Ö­š3|ØÝtî|§ê”–a¼¼Ü1fñððP¡(2YYF<=‹ç.¢(ޱ*‚¸uÔûºÀŠòÀ 4Ó¸Âàí ééªíJ„õ¶7ûûCÿþªyJ³óÀsçΑ˜˜ˆ‚ÀÀ@ÂÂÂhÞ¼9ƒŽ;Ò©ÓLŽ]`±gÝ»_¡mÛ–ª(‚ã€ÿX ¨­BˆóhN˜¬ùÎês7ý}‘¼‹taÙÏJŸ´Àfþģͺ‚6ëÜøÔB›ë·Wqm=¬5ß±Mz Í0f!€Í| ¼ôÖEðQÀŒBÄ_K)I)be^í*4lP6mï Kç¶4hήíÛX÷Õ·<=ñEnÞL¤WÏîôéÓƒÞ½zP¥JˆºCÊ¡UBIH¼Ž‡GUÜÜ=Ô€†¢PH)É6f‘˜xª¡UŠU–Zœ[kém­ÿ-/âXJɉ'”®à"xFD°ò]¤Û휧AZ»+ògذ‰¤§×,0_JÊU¦M»‡>}ºå~æ§¥qþüy.^¼HVVƒêÕ«Ó¢E l–ÄèÑ™1céé‘Z?¾á"V®œªNˆ“Eð1iÛ=ç  ³ÂCJiö)'ÑÖÑZbæwÌÆa‚â2šS+KŽÚÈ+…'Ñ< ]Ü'„¸ÛFýüw!Dˆ”òºU½‹Bcýýu}ݳ5n@C½®IBˆGÑbûÎæ!bÐf²?—RþáÊ'ßÛË‹ž=ï¢Fj4lXñ)lݺƒo¿ýžÉS^¡Aƒúôé݃¾}{Ñ1¢ýÿ³wÞñQ”Û~fw³ÙM/BI€Š¤#ŠWX®Šz ¢ "ˆE±‚‚€H±‚]¯¿{ñ"r- â±€€1 Ð!›Fʶùý1›° »a“lÚîyø,™wæÙ33»ósÞsÐKîüzMX˜²²Nˆ7X¨6›ð03¡¡µsG$c‚7©œ¢(Ü{ï½rQ1Éháré•:o´±©ÅÅb?¿òÚ€BHVhßh×®%/½t9v{Çs,7–‹.êÉ©S§8xð 'Nœ@QÌf3IIIôíÛƒÁ÷h«É“ïåßÿ~€M›zc0üƈIej´ þÁÞP—èuÈ6uiKFrؽô£º$>n³$sKIFçuÀ•øl§«h“p×ßhÉ´<ápíï+Šò5p 0Í+=xDQ”{UUm0Õ´“’Z0rämŒy6›_~ÝÀš5k™øÈ423ѯßÅ x)ƒö§Y³¦rõÔÇ&3&“Y !Ô¹òçrŠÔã¡•Áf“ˆ`¿ã%Úl†+®óøÂSOá‹/&²uëB¯Ëß0xp<ëׯ'>>ž¤¤$ºv­^=]½^ÏsÏÝÌm·½G‹?ñįÈÁ¨ÜÚË2­­ªªÚÏÑ×N·å”»Ñ CKxUÞ3ÚÊÃM‘âš¿Ùå.éw¿ªªOyX>ÌÏåˆJ„ï/ªª¾|®í¹’}YTU}xSQ”h`ZØôãÀ; ñÄ 1pqß ¹¸ï…Ìxr*Gç›oÖ²æ›ïxâÉgiš˜Èg+þIB5Ã&A¬Ø“'X„±H\ ¼PÉuBM@ŽØÎoX9S¥W\ááb"ŸÎËÐP}tcÆ|FNÎ5–pбãG,Xð†ßÛ† ¹”^½îcÔ¨*åE*Æ=-UQ”žånP¢Õ¾ÝèC_%E£<Å?Dóî®)7¿‹¢(i¾3ãܶ¹mŒð5Š¢Ä•Û¿vÀ)EQö(ŠâËYQây®(üÏh^è(Š¢+·½+ÓŠ¢¬r½¿Íã<¥dUUsTU]‚.ÞH »¼Ä&¹uÄßYöÖöìJgá+/‰Á+ªªžó%ãÖÏFên D gƒ;ç©N²Dû•µ@¾ç¦ë¤ÂN¥¸õÖatíú5pv¨B|ü›,\8ºÆ~×¾øâ5†¿LB ‰`€Eé­(J¨¢(ÐJ Yù>Üð¬t]j#EyNQ”DEQ¢E¹ íAàNàÅr«)À?EéæÚæ´:¿ÀBW¿§é@#`•¢(ÝE1)Šr)ðZy¢×}ðT”Ôî­(Ê%^>Çv´1¾Ý]ûÖFQ”pEQ®^E ë^âZ|ëJ˜ (ÊŠ¢$(Š’¢(Êãhñ/¼Œ³nØ'NG]åêADp5Ä®'¯o°y‚?ûì3òóóå‚ `®¬Â:’¨Éü×óìÐP¸ê*1OeY°`4Íš-.7×ÂEýÅEõ5P¼-™Ô/hÃç¿Aó˜^£ªêNû»-+ó4à ¼ì.-ŸÝÙ%ŒO eÑ/¾@óÂUUu¿ÛrKÐÆÙv~s‰äo]ïg«ª:ËÇýû°¡•/úª¼§× ®m^ìB+1¾ˆF«ªú¹ë&ïp»keÀq— Ÿq}íÜ/§˜ Á†„CãQÜ–yšLüë_ÿâÀDDDÈEÀT¥T†ˆ`?a¾òÜ4hDG‹‰*ËùçwbÀ€ShEu4Z¶œËë¯?Rgû´s×..»ã²²²äU÷âà*àb—¸üm\¬³Ü:c¹¼]"w˜¢(]Ð<©à[UU½ejÎE+›ô7à|´š¿Ê{O]û0KQ”w€^h£ÿSU5³\ŸÓÑê çyØ¿ïEIuí›ÕõàŸ.aý‡Ûr§Ey ­TS²KÈ£ªjv¹>—+в¸ m,ó)WÛÑ ,‚à â .‹·’HžÄr]²gÏš4iBll,QQQ5–Áû_ÿúGeìØ±r±8ç¡…Eï©Ä::–%ÚjûU‹ñ:¾úúëÅqqqr€ª ‚KÄæÿ\/o76›}¸ùùøÝÇ%;Zòöï|Xöç¨ÿ«ªêçh?@ÙÄ]™®—§ewãC©%UUsËé$‚ "¸"!ì.v=Õ®ë1ÁMš4)Ã999¥Ç ,,ŒØØØÒ—Ñh,øÄUhÞ‰Ê`2‰®6^²B‡„À5׈yªJ||<·ßÞŠgžÙHjê2fΜ[«Ûw:Ì}çÞܶ=ÉÉ4[²DLuD° ‚ T ‡®ºH®k!NëÖ­iÝúì‚………X,Nœ8ÁÎ;±º)½^_F GFFŠJZEœ›+¶«2¼†B÷ëRj¶zL™r/ï¿5“'ßGh-fr[ûóÏL|ûmþ¸ùfŠGŽ”Q ‰,‚ Ôâ öŒ{¸sCl6›1›Í4kÖì¬6»ÝNvv6‹…íÛ·“—WvDRTT¿þú+ÿûßÿ5jkÖ¬©p[:uª“ðB¡f8m\ÙJ¬£×ƒÁv»Ø¯Jü„6@Ï‹ª‡Á``óæå˜Íæ³ÚV­]ËÄyóxútzöôO²¬ƒ™™Œš3‡ ]ºpjñbmÌ€P%¼yóVâµ,ÁCцÏ×&—¢%ÃAEQ|Áº ü/ñòÖ‡Ðgß6jÔˆF<—ÎËÍÍeË–-rq1CÑJlø‚Ó ÙÙ"€«ÅÞ›žzJ{È0y²h©êP^ÿµ{7c.dã%—`5Š¢¢"¿lçñÅ‹yçØ12gÌ€©%_ÂÂÌtïÞ³Ù¬‰`UU«íPUuƒ Að/§²,lݺܼ|”R1"åï9ÿ¢A—.ˆ‹­Þ¬„Cû.†ƒ…¨¨(FE||<„\é£..Ö°Ó)6«2N¼–Fíá´iðÍ7ðî»à!¸C¨ùùùLZ¸•F#‡žÌfÂW­ªúás:ÉÉÉÁb±`±X0aÚµ ãîÝX{ôƒW_ƒ-ƒ%;‡Í[¶’Ø$‘ÔÔ¶b¡Òäää°yóVzt?Ÿ˜j>m–phÁ×_=Ë—/gÁ‚Œ7N Dtš¢ÕÏôüyypú´ØªÚü;÷bß|]»Â[oÁÕW‹Ùªò;÷òûïóÚÖ­ì˜0µiSŸ×µZ­X,²²²°X,•Š3NGtt4±±±´iÓ†©Ýº1Ùédæ›oòÞ'Ÿð×øñP‰m gð-Bg÷î}¤¶I¥Y³¦˜Íab¡ÒÁî=èѽê"ØWq«“8¼:gÏž½|úé ×wÈîZÙæu×]ǧŸ~Êüùó?~¼„ AA ‰~ËC›Ý®ym6±“_¨„òÄ ¸öZxðAxñE¨ÅO šïþ™)ÿü'›oº‰âÛo÷ò›ZȰX,dggãp8JÛŒFci"ÁV­Zy[\þ÷rúèÑ<˜ÍÃ/¿ÌW11¹ÿ~­–X-pâÄ –.] À?þÈUW]Ñ ÛYáЂ 4| ‰‰MˆˆˆcU"""’ÄD'ÙÙÕ ÕõuL°x‚ëž””ÖLœ¨ Ñ­[·ÕÚv‡Ί+DžDpA–Ú媋J…¡ÐWQaÁøþ{øøcèÐAÌX“fÍâM {î\ðò;æp8Ø¿?)))$%%Ñ©S'ôz}µ·ò'Ÿ$}ûvœ8‘̓“[ nü„„&Ož\*îô%Râq—SYEÀDˆX¨6fs˜×ò6"‚kÁþaÁ“ôäÚk¯å¼óÎ#??_|pÐØ5ít‚Å99"€ýÊï@fWýzô€7ß3VÄ“cÇrÐ|Þ<ð"õz=:t M›6ÄÅÅùE»Ó9-µ¯¼ÂÒºMœˆ-#CŒ”„CŠÎMtlsó<ͯ‰m»o§ütmìƒÜp BåE°/{8´9,æ¬W°qùå—!M †V+œ< ~Jž+¸óyuEÜ{/Üt“¢.œMDD¯N™Â·×\ÃàÇ'öÓOël_®2„__xG;u"^Š?Ÿ÷phÁB¥…pÉtŽåPo7Çr¨t;å¯{› õKK‰¤s à‚ì³^‚È8pê=8uJ›j€ÿú§›O>Ñ’f­_/&õF»ÔT¾zé%Þ¥Û¸q„lÞ\'ûa0xäÞ{ —ƒâËï¯Ù¤ÙML!ø[(çXyÊžDì¹Ú¼y¡=mã\}Te¿醻÷:¥î7ãÞ–s_¦¤ÝS›P?Y¼ä5î=ªŒ‡VUU-z½AÏý£GÕ‰–p賑kIT‚ÛnƒµëÐBvcÅ&~ç`ŸÿºÛ¿úõƒ'Ÿ„©SµÚÂÂÙ\Õ¿?C.¾˜YK—òÞþÃΣ4Ä,œw1鋸D¤º L÷õ*ÓæI˜zÚ¶/}Tv¿I»{šÊ Ywìi9» øÚÍÍeâÄÉLœ8™—_^X¦mΜyLzt*& ‚ÌL1±7 Å/?̈W^Áüþûõjÿj+û¿ˆ`!`…ð¹°/í‰çò‚´¦>Cmo»¾Ý|Wf~ùv÷›wÆõ›è¨hÆŒÀÔiÓù÷¿µqKü O<ù4ãÆ#2Ò¿c2N§Ož`§Ó´ÇÆý æ1ÁB`STcÆÀðáZ4Í¡eÈüÏ0`)5âe_»V ^±BÌ\111|ðÔSüoÆ ºvíZoöëÞI÷róè›Iÿ#]’ˆ`¡> ìÚNvU—Û®MÑëëM¶ÜŒ*/Íy‘#FǤG§2þ+L6øø8n¿ý6f¿8Ëÿ[õ1Õ«Ä)aÝ*ɘ`!Ù¾z÷†Å‹]ÙŸ¯¾z‹mj”!ÀàBÿw}ê ¦=ؤfs^ûög%ý;}ú4}ú÷aå+k}S¹à™ xqÕ‹Œ:–“'OŠ–ÓT¨/B¸¢qººíÚ¼áöæì.€åf<e°jã×—0|ص´IiŪU«HmÓšë¯ΫKãtZkD‹'Øw!|®y‚ÐÐxí5èÕ ÒÓ30xˆÛÔ MO€G©‘ì?‹k8þøCL]ìv;‰ÝùìðgÜxÏdì¨Ý²F:ƒŽž÷ö¤ÙÝÍxà…˜·dv»]D° ø‹ÊŠH_Ç×Ô¾ÖÕ¶k‹ªxuϵN‰˜–öòE¯ƒÙsæÐ§ORSÛpÑEñâìÙèt5ã‰ìûu&áÐB a±Àõ×ÃèÑZ©Î¾nÛÔ:z`<ðo …ÿ»OOׄ𫯊©+ƒ¢(tº®žÁC=Dv-×¢ §ï´¾K;ÆßÇü½N<ÓõÉ-øOY˜Kæ¹ d_Ú<õëžàÊS[E}TÔgeÖkH”÷þ–®î`÷¤YrCH¨˜M!L|dß}÷ Àª¯±pd_û ö1Áž"ÕõÃ¥íÛ·SPPÀ²eËÐétèt:FŽI³fÍ0 „††b4ËL{½gAㇴìÏ p'ð*¶©Sz¡…GOü¬u àþûaõjxóMˆ•Œß>b áÂqbÉ´ð©ÿà²n—1æž1µú}Úôü¦4=¿)_þ÷K>yðžxè Ú¦¶,žcu–­h}omžÄ®/m¾öˆ¢×›öe¾û{oÓB•Áª“ؘHn¼ázªê¬Ám©>¿„úEZZ}úôáoûv»¢¢"l66›ââbrrr°ÛícµZ±Ùl8œNgéÍ›û´Ãá(3?44ƒÁ€Ñh$++ £ÑHRRááá˜L&¢££q:ìÛ·¯t¿’““1ä–¥>âpÀ³ÏÂ3ϸjÿÆó€Áb›zCðИú·ûåËaãFxÿ}øÛßÄÜ•!¶E,ŸȾ_÷qí]×òÐ1èÒA—-**Ân·c³ÙJ¿›=}O[­Vå qçååy݇vCÛq¢Ý n¸í6üoF£QD°  IäÔÞ¶$ºá a»½¸ÆÏ%_³C—ÿ‘ê!!!„„„`6›ýÚ¯ûMÛ† ÈÍÍÅn·sÉ%—¢(DGGc·ÛY³fMéz#FŒ8+ÉŒP÷8 yøÁ5£/ð (¶©—Œ@ó ßl÷ÿ¹pé¥ðøãZI%©)\9’{'“Ô3‰¥o/eþ’ùŒ5Чµße“ÉDHHƒ³ÙŒÁ` $$„ØØØÒïlo:K¿\êq»Å§‹Ùôú&Z‡´æÇ5?,ø•9—¼ IDAT`ð¨ÖoS{‚B°œK¯/Ù¡}¹†< 9ôkË]\=ÚërF£‘Q£FÉÅXY¾î¹GŒx‹d›©ï´VÏ¢•Sòã×°ÃO=ß~«y…““ÅÜ•a÷Úݤ0cÊ zvïYÃ?ô°ýÓíØÒm¼8áE’ƒð`‰„!4Ô€Ýf'$$DŒ!T›ÍŽÑX½ŸIŒå»„†FALœè–) X ôÛ4œàààa Ë¿ÝÿðƒVSøÍ7áºëÄÜçâÔžS¤¿‘ΰK†±`Ù‚RïoM‘ù[&{>ÙÃý·ÜÏ »­ÝE B€Ð(œÜS„„4Fo©ñ/Q!°PU‡ÝFnî)'4ªV_¾†C»®I*J†'U%=n¹Å­4Î5À‹H飆Êehµ›Öù·ë’Lá÷ÝsçBX˜˜»<…9…lzmi1i|8ïC¿?)Oî±\¶¾¾•K;^Ê ¯¾ôI E B€fF§ƒ¬¬â ª„Íf#<ÌLh¨©Ú‚ÚW±,ÔŒv¾2†_ð‹kà¢" -œöf±Kƒ§ ð1°­ž³ŸËƾö¬[};‹¹T§Ê¶nCÝ©2gœZ E>²ã‰&òÆo#Õ?D B€a2™1™Ìb¡nàE BÀpêÜ}7¬XášÑ -ü9Ul0èмÁc€þíþ?´šÂ/½¤•T æ@µýéûY7mßù0}è[kÛ]óŸ5è%[ÙY§½ ‚ ø _Å­ˆ`A¨ß¬]«í\±­öï=Àç"€–ÀjàZÿw]TcÆÀðáÚƒ•`$""‚g'<Ëÿ½úô½°o­n[ðÙˆ'XAð;Š¢”ŽK/™.ÿ^DpÝðë¯ølå*²²²øã­VÊyxÂD1€Ý®eù9ÓUû7˜ Û<‘À ?ð8pڿݯXq¦¦pÿþÁeZ½^ÏÐ!CÌþfddðöÛopúôi6nÜÀÁƒ™4i‚ˆ`AApGUUŸDp0—H*I\U2V·üûš¤wï^ôîÝë¬ùwÜqOƒµç¡C‡hÞ¼¹\|~`ÿ~1Ö¯wÍø°mì¨<ÜôÒý}½Â A0e ̘Q#õ’:0kÖ¬³æÏ˜1# >Ÿ„C ‚ ~Á¾ %’Îà‚l¯µƒ…s³páB1‚øä-üyýz x øHpÐÒX ŒB ‡÷#<÷ôëûö‰©Á‚ Bˆ`wﯷW0{‚=YœgÏž-²RP÷Þ 7ÝÙÙ@+à?hI’äN1¸13€÷ÐÂâýÌúõЭ›öFD ‚  ÁSâõõTΨ!“••U7Ì’¿ªüþ;ôèo¾éš1ø è&¶Ü€VSøÿw­=€¹çíŒ ˆAí»vÀåßûC`Kà'žxB.¼J_§°`\pddáÀËhõb#Å>‚¢%Ì ñ÷o½¥=Ù²EL-ˆA OpÅxóøúË\"¨k[1B.€À‰píµðÐCP\ t¾nÛ>(‡€haó~&#úôÑÐȈ¡&‘|l‚`âÃnw`³ÙÄB¥ Á`Зfq®’Ú¸!ѹsgŸ–+..Æn·cµZ}šöt~•œ?Š¢G·n¿ë ß|ÿø>Œ–ìè>`*5âÙ˜®haóÓ€û·ëâbíÍêÕ°t)$$ˆ¹KÈÍÍå…ïpåÍWb2™\¿Û†2Ó‚ˆ`A*l6;……ÅDÅ$×(Z "Tš¼¼lr³Ob6‡RõŸ ‡ö]ô–ÏÝÐ…ð7ß|ãõø» W“É„Á` $$¤Ìttt´ÇùBõ±Ûá‰'à…ÀéПû‹m„* ¼ôs‰á|ÿvÿùçÐ¥ ¼÷ ”Õ¥ß)祠Óé((((}`h³Ù°Ùla0PU‡ÃQ:m·ÛËÌ×ëµÞ%ßµžÄtùiÁ‚ ÔÛÙ9y´jÝUU)..£•&,,’ððHöíÝAlLƒ¾Ê}ùâ f¼ÕnèãwÖÑjzzºÏ^è`dï^¸åøå׌þ.,6ÁÜ€VSø~àwÿv}ä  “'ÃSOA°?3\9üJ¿ôåt:±Z­X­Vl6[© ...&//ï,q]ˆí$"X„º'7/è˜TÕIQ‘`¡jØívL¦P¢¢‘›wŠ¸Øªy%}õð»'¸¼ .ÅÁÈÊß|øá‡Ìœ9S á>‚Ñ£!7-äy 0¿×}‚œVÀgÀ,àUÀ£]œN˜9¾ý>üRRÄÜþ@§Óa2™*íåýá‡ãóË)  ‡ÃANvqq°Ùìb¡ZØlvââ‘“ƒÃá¨r?’«,îÙšÝ_åÛ:S§N•‹¨žŸwÝ#F¸pk—H¹_°PC„ÓÑ2H7ö÷¿ü¢Õþè#1µ "X‚§S¥°¨›Í&‰†„j£ª*6›Â¢"œÎªŸO"‚Ëâî\ÑK¨qqqb76mÒJÍ,[æšq#Zöç.b¡è¬.õ×¹¹Úƒ‘#µ=‚PU$Z8'ѱÍ=ÎϱòK¿%ýDÇ6/3ímÔ–mêË~ªª*BX¨[ßciËKÊ‘+B¸jLš4IŒ€VRfÞ<˜6ÍUú(˜ \'¶j™FÀûÀkh!ÒVÿvÿöÛ°~½Ý£‡˜[¨<â |&Çr¨ôU‘8®lžúro¡è_E!$Ä€ÕjõÉlµZ1„èƒ6IVùðç@‡;v¬\uÄñã0t(LœèÀÝÐJ؈êìGmüùg@ Œãݹúö…¹s¥¦°PyÄ,øO"ö\mžDt‰7Ø“—¸¢><­ãiÿÜ—«h=_>OEÛñ´^]U:››[:¯dºü{OËWÔ—Pÿyíµ×5jT±©ª*K–,Á`00jÔ(¿lK¯×ÆÏ?¯§gÏÞÆRq\>;´Õje[úV"#ÌèõÁ÷<ÖS¬’I Ùܼys¹èê€Õ«µÚ¿G¢¹7F“‘Ú¿Býà|´2Ÿø·ëâbíÁÏêÕðÎ;и±˜[,Ô²v¦‰Y÷°çÊ Xo}¸o¯|[E"ÛÓz¾~žò‚×—ý¬ JBQ£££ÉÉÉ)#bsrrÈÉÉ).YFUU¯ËWÔ—P¿ÉÍÍ- -**bܸq¥msçÎå©§žà–[n!""¢ÌùSUe";'‹ÏV,ÇnwxˆvÖfCôDD„aF§—,=‚Pl6xì1˜3Çå kŒV·õob¡žÌG+Ï5Èóo÷_~©Õ~ç­¤’ ˆêP®Ég_û-¿\uöÇ“®OÔ¤HÜ@®»èhÆŒâE‹˜>}:III >œO>ù¤T7®Tûƒ°0f³ ›=†âb-,Zç‚‚ÙŠN§Ãj-¢Øj•ƒ%•d×.­öïÆ®]"#^l#Ôc†¡…ê6ù·ë£GaÈxäxî9©),ˆü(d++ Ë{]«+<¢êZy±å½»¾,/"¸a¡ª*/¾ø"‹…¯¾ú’©S§™™ÉÂ…¯ÇСC™5k6›Í¯Û5™Œ„ëµ±¾:‚Nw&ÜÙ=$Ûjµaµå±) }ö4_ÎÅ{ïÁر®ÒGF´0Ó{ÒGBà%ð)0X ø±d¼ªÂìÙðÝwZ)¥ÔÔà2í©S§Ø¸aGfÒµWO:vìHˆ< ,TªŠ×òãwë"D¸!ØÉ_¢§$œ5&&†ìì37Ô111gµEGG—YÆ}º¤?Omå×ê/6›W_]„‡Ç“‘ñ'_~ñ9©mZ“–Ö‘9/ÍÃZÎ +ÙÅkW 5Ë_|ÁçŸNQQ………8ÚÝvãÆ +³lŸ>}6lX½þ<¹¹šø}ï=׌6À “k¡L.Žù·û¡{wX´n¿=~O ™óìs„Úè•Ò– cbI_µ†^YÌÀë†1äÊ¡rΉjwïo}®êgóå³×5111UZ§Dè–ÔBÃBUáÅÙsxþ¹g8yò7aê´ÇEðÖCj;1ÖŽ;yïýÈÈÈhpör:dggc±XÈÊÊ"77§ÓYqøqãˆ%66¶A{D6nÔŸwír͸x“ëFhÀ\ŒVSx°Ú¿]çåi ãV¯†… Á-¿g@áp8˜2vS®¼ž¦ñJç·OjÉ ÷ç³_×óÞ±eÜ~×È*oãèѣ̟?€uëÖqã ?í¼ˆ`¡Ú¸'–rŸw®6o}x·ëKµýy¼eš®­ý<ÙÙÙ¥â×}Ú]ЖÌÏÎÎ.³LI›§¾Ê· A« !L˜8‰µk¿ãÒK ÓéEס¸­/åÚ·odzÏÌààÌzi»ââb²²²°X,X, QUÕn¯#&&†ØØXÚ¶mKTTT™ðûÀ¸~µÄW=¦%Â" x¸V®+!@ˆÞÞB{°ãç4ï½?ý¤ÕîÕ+ðÌ·xî|Ƽ²ŒvçšÞ1gÅÿqàÀ’““«´ÄÄDfÍšÀŒ3Ân"‚ŸDau–ñÖVQ’*_Xùk¹Ê$̪Ê~Ö¦Øq6‹¥t¾Åb)ó×}™’÷%Ë—¬ãNEmBýÇápÁðá×cµZKÃB=C‚ÿñµR Ô ®«ÕÊéÓ§Ï:çòóóKÆeggãp8Ðëõ„……ZêÉmݺ5f³9hΛ£GÏx²è,’åš m\û…ÀýÀ.ÿv¿k—VSø¹ç´’Jô¬ìè®=´íݯÂer5//]ÆÔOʹ&"X!¸p:‰!êÞp Þµk+W®,3ÏáppøðaÌfséK§ÓѦM®¹æš =G¾üG«ý;xDîÜ„§#ZMáÇüÛµÍ>ª=Tz÷]HLløæÚ·oÉqe=À§“?öíáü”3YÁÂBMägYäü,IyO°  oÞá@"--´´49ØP\ Ó¦Á¼y®Ú¿‰À´±“‚ ˜—€~À£@®»_½Z«)üöÛpÅ ýû¢³ÑXf^AQ»2–ÁÙ Û¶m+¬)ŸPD°  ½NÏþý{IJj‰ÃáƒU&$ÄÀþý{ÑëôbŒš¸·s wôÐ熂ÓéÄn·c,w#YìÜ©%¿ÚTR?u00ˆ“ã$!×p¦¦ðFÿv}ü8\y%Œ3gBhhÃ4Q»víøøäñ2ó"øî’KË̳;$4oF£FÈÊÊbß¾} ( ªª¢×ëKó+ÄÆÆd~Á‚`èt ááaìܱøøF˜ÍfìvÂB~ òóO³sÇvÚ¤´D§“¢£þ¦ÄË ¡Ï …ÌÌLÖ­[Lj#êt?Þ~|òóPà àN¤ö¯Ü$ËÑ<ïà÷šÂóæÁ÷ßk5…ÛµkxæQ}t$'s²iíýÁêû߯áÚo$11‘Dqàî™öwíÚENNNiîEQ'66–¸¸¸€‰8, íé]4±1Q|³æKÚµïH«V­Å0B¥Ù±#ƒ¿vn§y³Dbb¢ÑëÅ\ÓbX@«ÿÛ¢|ú) ƒ—;Àþp±Ku±Û5ÛÖo>DGáÁ|:Nƒ±gõ÷YY ×4ã§Mቱñü­wcòѲuï.N†@·ݽö¡Ó鈋‹#.ÎsØÉéÓ§ÉÊÊâèÑ£X,ââþI("X€°03-’š£èöìÎ`Ëæ b¡ÒDEEÒ¢ESš7oFX˜Y "µvíÁ Aðð4Pˆæ ª‡Ñ¨ÕŠ ¤T&Sà ݭ.»ÃSµ—Ëé]JDDŸ{š©3žf`Û4ú¦OtD;îç³?Þª¦M­Ö6ÂÃà '))É«P,B­£Ó鈉Ž"Ôh$¡Q<……’X¨‡Dü Bí²x8$¦¨1Ñ("X§Ó¼ÛÁŽ ¼ ü,Ú‰IJÃû_z)ý/½TŒ!"XDÈ‚Ð0dYµ‡ÍfãСCFX§è‹ #6®ÒºRÒ%„ƒ¼œOlÙ²…ððpš6mJ—.] «‘mµhÑ‚n¸¡fD<ÐßõüÇqàÚJ®SïÇÓæCÐ\™å¸vÌŸ/ǽª¨@ ÖÌ3f¿ÿ>Å%€ÿ>F{ Ü¸‰üü‹xçÍüýïÛéÚ5MNÁ‚˜œÊ²°uë6róòQÐJ%©ª*åï¹ÿ¢A—.ˆ‹©ô¹g->‚BbÓÖ4iڻ͊Šw¬ ÃbDAG~î1¬Å§1…Å͵*c+&,,Œ®]»Ò¿Ö ¥N¿ÓèüQ‰uJK×Óõ-°ÇsÓí—Èy$xfýúTµ™Kø¾…w ìE+Â6™Ã‡ïáå—g³l™ˆ`Á‚€X²sؼe+‰MIMm+*MNN›7o¥G÷󉉩¼ -.ΧøD~·.µ­ëä˜çæ²g÷žÒã/ …++)‚A ‰®·"øsϳ#"àŠ+äx gsàÀNžláz÷0Ê%€Z6 ãÀê 7*,,dûöí>|˜ØØ(Á‚ ÔvïÞGj›Tš5kŠÙ&ªð#W@DD»÷ G÷1HPÛâ‚BöîÝh!ÈÁÀñãÇùå—_¸úê«å„kà"øÅ*ˆàzù¬§Íì+®³$żâ[Ês‡ÃQ­­X­VöìјfgF“ˆ`A ‰‰MˆˆˆcU"""’ÄDgÀüÀ5Á[×$&6áºë†°bÅçkë#GŽÐ´iSMo‘™™YÚvòäIbbb0ä–¨!Ñhì¬Ä::–`Êj­gæ[4‡®¿^޵à™äädqò$À-h¡ÐîáÐ!@PLddkÖ¬ ..Žääd5jäó¶¢££¹ñÆøã?Â~ò/#`"Ä,T_˜™ÃˆŒ”)5·šÀæ0ñÀ×ï¾û.]ºtaÈ!eæ?~œÇ{Œùóç‹n€\Ì­ôw\=Áÿõ<Ûd‚+¯”ã,xçâ‹ÃÉÈ8€ª&÷óÑÆ§¢UK†æÍ_cæÌûéÔ©=‹…ƒ’žžŽªªFZ´hAóæÍëm™9ÁBÛœË!Ÿçû£oA‡]»÷òÖÒ¸uÄõtêxžÄMû2/iß¾=mÚ´ñ[“'OfÖ¬Y(ŠBß¾}éׯ'OžäñÇgΜ9„‡‡‹Ñ C« ‚ë]H´Xí¹éò˵1Á‚à… 'ðÛo“Ø´i†KøN.Óþ-#G†” `€ØØXbccÏœ‚V+™™™üüóÏØl6E!!!¤¤$¢££E ÁKŽåÐYbÕ_âU° 6ÇŽàï7ßMfæaÞZú>lý‘„„x1 Þ½¾"„Áh4ú½vï”)S8r䤥¥QPPÀìÙ³ú&/ÐICKÿ³·ëÔ»èï<ÏM -øò]ùÝwÏpç³ùßÿ’9uª/Ѓa3­Z­a„ó¹ÿþûÏÙGJJ )))¨ªÊñãÇÙ¹sgiÂĈˆ’““ILL,ÞˆŽm~–Èõ&¢=Íìß›l÷j)Ë|,^ò÷…¢œÉÀ¬ª*‹½ŠÞ çþÑ£jdÛ…Ü?öQ ‹ˆ`̃“ygÙBÌf“\›®k±dZ®Oÿ³}ûvV®\ hõ€o¹åvïÞÙl¦Y³füüóÏ|ÿý÷´iÓ¦Æê 5ÇP`Q%×1™ê‘þ›0ÉÝ&øBTTË—?ÃÞ½{ùïdçΕ Òƒ‹/ž\¥áMŠ¢Ð¤Iš4iR:/??ŸÌÌLvîÜÉ©S§$;´<¸ ÖŠ¼ÀÞÄ®/ë×”·9˜q¿±–ì ¼nss™8Q ²[?þÁÒ¶9sæñÄ“OpÛ­#ˆŒôoÌÃádî¼% ªœß¹#wßs/o½ù6›ù/¿ÆäGÇ¡ÓIY$o׫àRSS¹ë®»Ø¿?‡âÛo¿¥uëÖ¥ÞŒ®]»Ò¾½&Lcቫª(‚ssëÁÎÛ€/=7 1’"@¨­[·f̘Ö5ÒwDD:t C‡¬]»6 쥓SF¨Š®hnO„ª͘1c˜:m:ÿþ÷§|üñ'¥xܸq~À+V~InÞiÚ¶Må…çpí5C˜5óRSÛ`ÉÎ峕_ÉjN[ØlüùçŸ|ÿý÷¤§§“@Ÿ>}ÈËË£M›6èt:8ÀÚµkKÇÇEÈàËÉù@R%×Ñë¡^<óø ðòÌË•ˆWb²³³ù÷çŸsß3ÏðÔ¢Eüò믨ª*†,Ôú µ›'÷\Ë•¼*#¢KÚ=­+Tñ.3*/Íy‘#FǤG§2þ+L6øø8n¿ý6f¿8Ëÿç\a!?ÿü7ß<‚v©Í)<Åyçµâï7ÝÀúŸ6P\l úëÒ}Z®ÓêQ\\Lzz:_ý5ëÖ­#""‚Aƒ1`ÀL&?þ8 àðáÃ|ðÁ$''³e˾üòK1^F®¨Âzõ¢ö®—ªd\sÛ`æÕO>áÂW^ᦄ^Ÿ8‘Æ1èÈL˜À¾ýûÅ@~@¡…J às‰ÙŠÆøúN-áÐþG¡ƒ\«6Þx} =4žŒŒ?Yµj©mZ“–Ö‘yóæátú_ˆ†……óÜŠŽž=:Qä:ïŠ sù[ß^Ft:¡¦Pâ§Úî×c°_›~ø!#FŒ¨ôzEEEìØ±ƒãÇc4i×®;w>k¹eË–1wî\"##ÉÉÉ!× ;eÊæÌ™CŸ>}ˆ‘ØÓËUÀë•\§ÎC¢€—€˜~ý %\…ãÅwÞá™fÍÈŸ>Ýý‡•üæÍY{Å 6uÓ¦'Æ,ÔWá\U¡-‚ÿÐé`öœ9<÷ì3œ}šŒŒ N:…Éd¢C‡téÒ¥ÂíM™2ÅkÛ#<"_ œî@"p´딄DÛlu´Ó¿'<7IVèàåà¡C,>vŒü;î€âbø!çýõ–v Fq·nüùä“Ü3{6ËŸ~Z &"X¨i1[^œzó躇K»OûâI.j-‚Ø¿7Úâ fȚ&>2‰ï¾ûN  Õ×èØ¢¢ÂÜ Úrä@™pè`cùòå˜L¦³¼¿V«• &0iÒ$Z¶lY:?//?ÿü“ììlÂÃÃéС=zô¨Ò¶5jÄàÁƒå th!ÑË*¹žÉT‡"ØK(´NÇË1 V^ýÏØ?r$­–,aÍ5×ÐfäHœN'>ÿ<‹“’ Q#¶˜La2™ÄhÕøÞ„ ñ%t¹ü|wÁëiي滯/T³¼p"€ƒV«Nbc"¹ñ†ë‰‰ŽäõäútLÜu×]äççóá‡0dȬV+<ò'N¤eË–dggóóÏ?óõ×_óÇЮ];Lß¾}‰¯z­ô¬}I IDATé°°0Ú´i#'`€qeÖ©3ýàÄki¤¾}!€J± •dë‘#v;½ h“’‚Åb¡°°gx€–ï¼À‘ŽÙüûïb°j ž`A‘#6Î-„íöb9—ê‰.?lžáQ£FqàÀúõë‡Ãáà¾ûîãðáÃüõ×_ÄÄÄ––FTT”œ0Â9¹hœ¬ÌM°A{Ùíµ¼³›ñ»}Ýur,ƒš’“Q§Ãætº&ulÙ²…ÇSèúÖ9èõz±—ˆ`ATÕ!Fä\j ¸Mp÷ºÎÌÌäƒ> 44”ñãǰnÝ: )((`ëÖ­FèÝ»·œ,‚Oè!Àû•\Ïd‚üüZÞY/¡ÐŠ"ヮII|~ä4mʆØX~ݲ…Þ]»Ò³gOî~úiŽOš@Ìo¿Qœ€Åb!66V '"X‚—ÐPv›zQüPh¨ØlvŒFùi¨-! Â×ÄÄDFåºáWJç÷îݣшÍfã’K.ÑDx9„JrUD°Ù\"ø¿žg÷êIIrƒ™±7ÞÈǯ¿Î®Ç'sôh.[¹’Ο}Æ©ÐPvÞuÄÄ@V—†„еkW222°X,„……qÞyçUk¨ˆˆ`A$ ÈÉ=EHHcô†27˜‚p.TUÅa·‘›{ŠÆ Õ¯Íñæ[Ú­èÝwÝZæ\TU•×ß|ƒÞÀÝwÝÔ6Æ0hƒÁPêµ(..æÿþïÿ¸ñÆ1òå—_2\² Uä" È®Ô9YË!Ñ¿=7ÝpƒÃ†ÊÆMyã£7|Zöo}þÆm×ßæ±­IãÆ<Ú±#“>úˆœ[n!wØ0~6ì̹¹t~ê)^}î9"""èÕ«ddd°iÓ&BCCiß¾=Mš4‘#"XŸ°03:deo°P%l6áafBC«—-&77i? hÙ~¸ÿ®Ò¶¯¼Ás3çpÓ߇Ô8XŰÕjeüøñ<úè£,\¸±cÇ’““SåšÁ‚`@ ‰þ¸’ëÕjHô½7I(tÃ凟 é?šÛâÜ¡ÉßÍüΫ¸wøp¾ù†Ç'Mbw¿~uë§NÿÓOôÚ¹“÷Ÿx‚ˆˆˆr÷€atïÞ8S?ý÷ß/­ŸÞ¬Y³*6UUq:#"X“ÉŒÉdCuJtt4cÆŒaÑ¢EÌxúEš7oʵ×\Á¿—¯,ÀãÆ#"2"h³pë˜à^ýuyäZ·n À¡CZE€;37ß|“íÛ·“––&“Pi®¨ï"x•çÙݺAJŠ?AcØÀ ¾ðB6nÚÄêåËiOÿþýiß}>œÏ¦ÒÚéV«•¿þú‹mÛ¶a0HMM%))ɧhÁ×–/çÃßçˆÓ‰S§£©¢pEË–S]BD° ‚àWTÕÉÌçg`±Xøê«/ybÆ,>Ê«¯½M||C‡å¹g§SxúTPÛ©>x~÷ìÙ˧Ÿ®`÷îݵ¶Ý±cÇzm»çž{*¯+V­¢cÇŽ´jÕꬶŒŒ :ÄÀåâ úQ@n%Ö ½5ðO`ç&ñ«§¬¦yT󳾇®zí*Œf£Ïý„……qÉÅsÉÅWy_ŒF#;v¤cÇŽØívvíÚÅš5kÐét¤¤¤Ð²eKtº²s×MŸÎ7—_Îé§žÒfž8Áî¥Kùé÷߉ZµŠ'ÇÞ/"XAÊSTÅ’Å/3qâ£ddüÉš5ߓڦ5ii™=û… Àu-~KHJjÁÝwß Ào¿m®³ý¨î8àòðÃ3yòä2Bø¯¿þbÑ¢EÌ;W.Ê Á –Wr=“ NŸ®á“Pè  6*–×f¿VfÞ´ç§á´9¡ƒõ :t C‡8öîÝËwß}‡ªª´jÕŠÖ­[£×ëytÁþ;r$ö¶mµkjãF ¹¹Ü{/EÁÒ±#ä5øã¤“SUAð?*Ö" ³^˜EŸ>}HMmÃE]ÄÌY3±eRŒ¸<îaѵEHH111ÄÄÄÔi.ê–B2™LÌ›7þóŸgÎ@Uåã?楗^’< AÆÐ*Cµ°c^J#¥¥A‡rÜê N§“{o¸—[¯¸{52¦ÙívNœ8Q/?£^¯'55•2`Àt:k×®eùòåü3?_ÀÙÙô}ôQÞ2220›ÍôêÕ‹°°0@ËŒj4Å@AÈ•ÀÊ*ˆàìe’É€ö°î›o¾¡S§Nõ®–oß´4B32(nÑ‚=))Ó¿ísåç“)"X´ú² yyyBä”Á;v›ð°0BCCÅ~Ãîˆ0®6›ôôtŽ;FË–-iÕªo¼ñýúõ+]fâĉLœ8ÑcÖh!°„•ñ[ ÓÓߎº@ºç&IˆUÿpüÙëO ¡ZÿغÒB¸ÿ“ýϚיΥӱq±ôë×ôôt6oÞLrr2:t8+Ks]лGZÌŸÏîAƒ8vË-ü}æL†µhAtXgd°ûÁaãFÁBÃÄá°ʼnãLj‹Án/Æd2ùÞ(‚àoô†Nž8JdD$N‡=à?¯·ÐgÂç&;;›-[¶`³Ùèܹ3Ý»w'##ƒE‹ñÒK/•YvöìÙ³F O8p)ðe%×3™  ÀÏ;³Ê{“ˆàú)€ß[ý!!!ÜvùmUÂç`ݺu`ÿþý¬Y³†ˆˆºvíZÉRDEE1²iSžÛ²…®]ùíé§Ùtຂ·Ý€r예`¡ab³мE+vÿõ' ‰^ª*ã‚A¨mTôdgç’}Š”6°Ù ƒâ“—»"€+fïÞ½ìØ±ƒ¨¨(z÷î]æFÑáp0wîܳ²@—dÞ·oŸ0Z_D°—PèV­ G9NõQGGkI¬Þÿê}Ÿ„ðàƒùøÓ9ÉÉsnwØ€aeÞ·lÙ’–-[’››Ë† °ÙltêÔ‰ÄÄÄ:±Ë´{îaÏÌ™üg÷n²®¿59™…ùí·´øä¸b°ˆ`¡áa·a2i“zGfrèðAœEÑ¡ètŠ¢M+Zf;EQ\c…tŠN›Ö‚¶Œêº™U”ÒûÚ3Y×­Š¢‚ª‚¢¨¨ªŠêV!åÌ{µ´zŠêjSJ–9³ªª-û2Z“뽫UUQU×6Tµt=mZ9³M×6´÷ªëÝ ª‚ZºÃªkZ9³¼êÞŸÒ T×9¯(%'yÉ5¨Jé{EÕ®%íTt-S¦Íõí"R”Ò©3ý hóJÚ¥ôï™u´ëQqµ•\Ÿ%m% –ìã™M–,ïú¯LۙϨ–\Ѐ'Š N×Ū:Õ’ËBË­:QQpª*8UTT‡§ê,½æªNO¸ÙLJJ[t ÛŠ‚N—Ì!\›ÍÆÖ­[9vì­[·fðàÁC;vìX¨1ÑAêÏ%ƒÀV‰uBCý}Øä¹iøpÎÜ7 µÎŒI3`%4¶6à§ÔŸX¹z%ÑÑÑäää°gϺvíÊû_½ÏåÝ.gÐÎAÄ9â°¯¶3áÞ ,X¶àÌwP‡Ž<3õ™jíOTTýúõÃn·—†J·lÙÒk¨ô_ýÅþýû}ê»k×®4jÔÈ·ûEá­iÓöý÷,™>ÃU¥¹ÁÀM½z±¿OŸ€8þ"‚ƒ”¢Â=Ä]&TET¾­äz¦P(ðW@Ê*¼–E—ÒHuË“`ä×#i¼­1FŒ´?Òžg}–Ù¯Í&::š„„V­ZÅšÿ¬!õX*vììi»‡ÅÓל8s •>pà«W¯&""‚nݺ•‰€yî•ç~ÎþòN䑾3‡x¸Rûqu¿~\í–c¡ôáÁ¦M"‚…}ÍZ€ÍZ ¦ª„{ÖUoÓ‚ xÆÛ˜à`÷ïÙ³‡;wÅ…^ˆÙl–“E¨WUE›ý(‚½„B7kâPkäççóüô'h–”Ę‡Ç£( ‰‰‰,[½Œ‘—¤û¶î´8Ý‚Ì2™Ä$f¿6›-Z°ôå¥Xþi!%?;v6vØÈâU‹iÒºVö;99™äääÒPi«ÕJ§NhÚ´)¡¦PÚõkwÎ>,™øAÎÁ‚ øEïÛöí;R\”ëqZu‰¡¡Uðz¯žÚ¬VkiÈsJJŠ×gA¨ —»nv+“nÏht ©îø¦ãÀ¯ž›®»N »jžß6l`Ù‚…<~Ýœ8ÎØ‘wó䋳hܸq…B82*’½oì-ÀëZ¯ãÎÉwQëŸÁ=TzÛ¶mlÙ²…ܼ\VkŸZK¸¹¬WØØØH÷QÝå,‚¿0´ïЉP£Õéyº¨PD° ›xì±Ç=z4íÚ•õPdee1yòd,X€Ùl&++‹-[¶àp8èÒ¥ ={ö”Cð;±À…TΦ(Z‚¬Âêzƒ¿Ä•4Á³jUUy她¨GO²àî±è…ĸx:$%óä#S¸â–¿3øŠ!…ðá“mȦUN«RðÒUKIJNbãÆlÙ²…>}úYËus ]»v¥k×®|øß°ÙhnnÎ’—–”Yv䤑rˆÊc2Ga·;8vôùØíN¢%ÆPtèuZB3I±´—^Ñ•ÎWQÑ¡ èt¨ èJ’éè׸?\c޵äV’K ‚-1ª6Û©ª®ëÁ ŠŠÓ¡%¼*IŒUò§v%9œg.f§ª¢º²Í8œNm_U #<"‚ÄĦèõzŠ óúÜ ôPèY³f1qâDzè!RSSËà^xdzcÇbcc¹è¢‹¤<ŸPã\Iå£Aý"‚½”FjÜ.¹DŽKMrôèQžöw\x)½zõéª,þb­š0´gæÝýËVÁŒÿýiOÍ8K7;Ý ÀctŸ>}(**â—_~à‚ .¨“ï±0ó™ñÁ§²Nñõ×_Ó¹sgš6m*'€ˆ`ÁãA1áp¨ìÙ³“Ȉ’“S0™#PtŠ»*-‘{’Kc žÄXø%1–ªRTT@VÖ öìù‹””öBLØ4CtEÙŸ%3´Ñh䥗^b÷îÝ¥ó, 7ß|3?ýômÚ´aÈ!ò,ÔC€ixuÊz$4´š!Ñà'ÏMÆ^/Ç¥¦Ø–žÎÒ9óyþæΡ“'xþÓ¹çá‡ØñçŸLÿpÝp+#/»‚Œƒû}û¼²ôͳ„°×1À&“‰~ýú‘——Ç?ü@dd$={ö¬Tý`»ÝÎ/ë¡ï%}«ý™›4n€ضm±±±òpQD°à‰cû÷î$22‚æÍ[c³RT”ƒê”:Á‚ Ô.Š¢Co0Ò´Y2Ê‘ƒ:´–-Û¤>—È ¤IF£‘óÎ;¢¢"~üñGœN']ºt¡qãÆrÒ µNcàïšÔËw“&„‹ªúUô^"_½“šD§×ÓµU Qaáü¾gïn\Çì×—F·ÝÙsÑ…Œ~t ‹G£CRKbÃÂKs¸ aìœ3 Vdd$—]v'Nœ`Íš5$&&Ò¥K7ÇŒw|ÇÕwókC§åG¨¾¨s…J "‚/èõróòèp^'¬Å§±Û‹Å(‚ÜJ´ŒŸWõÉáÿ¾TÕ‰ÝV„ª:IhÜ”ŒíéèôòÓ07}ûö­Q¯Dzz:;wc 2´’"Àl®†ö  —^*Ç£&IKK㣠58¯S'ÂÂÂ8|ø0:Ž””7Æd ¥ÈjÅY&2%11‘w¿}k±•æ-šû´Í„„† Bff&«V­¢mÛ¶´oß¾BÜhu#Ú9Úñã ?ÿÏÞ™ÇEU½ü}Ù÷MÜqCQAÁ5wD33[ÔÛlÿ~-󧶘i™–i–•ß²²2µÝVÅÝ„TÜw”}Ÿ™óûcfpÀfØ^dädàëljÃGJÄíÙ³gÙ¶m¶* ŠÂßûv1þn£¢ÖTlHË–-3f Š¢ðçŸrþüùr°‡Ú€iZ!üÉâªå¶u²eÈûC¸ÖëZ©Gß×úÊ AŠ`‰D"‘”úò·´¢°HpâÔ%þÝ}€ÿDóÏ?QìÚõ/Ñÿî'.þ¹y*,,,ëÔ–¤qà™3gÒ¹sç’²víÚ±lÙ2Nž<)HrKh˜›,F?%Úl6ÅÆ«dTèºaì½X¿' k[ÒÓÓ±°° wïÞ\8{Žð ¢NŸ XX¿C‡Œ=šk×®±qãFRSSoÀYJ}"ÕÂnÍÝhâפÔÃÑÃQ^ v—Ü„W³€›Ê®^Ž¿¥ýÑ¿¼×uu|SÊ%’z/€-,).V8›HLL ÅÅÅøú¶¢mÛ6\¿žÎùóç9{ö,¹¹½è€½…6t-Û’Ô=IIgøõ×ßJ²ª‹-bÑ¢Exxx””ÙØØ°dÉfÍšÅÛo¿]náª`x‰¤"FÌÜÇή S¢ÿ6^ìâ#FÈóPtéÒ…¯–~ÀäCYôòÌçÔÊš'N!¯°€lU¦Võ)ŠBpp0*•Š˜˜æM›GǃKð™þg˜õÎ,æ?2Ÿ^I½J„0˜65º…W ö¿½¿Òv……<ñ`µÞKjj*_~ù%ÑÑÑŒ3JŠ`Iã¤!ˆ;)@%’ªaieË™³WˆŽŽÆ·UKî¼3‚ÂÂB~]ÿî­­-ÿüÅž={ððð  C E&Ùê׿>Þ7‚åää½Ç$[Ê_ÝŠ Xþþm˜>}GÆÖ˜6†^×43fÌj‰IDóª ‚ÍŠ ì(G„®¢gYR%Üšy“žŸO3><õæß*öíæžI‰ŒŒ$((ˆ–-[ÖZ_>žÿq)œØ7‘5‘kpppàßaö½³ÍÂs^žSgcÙ´iSfÎÔþ_íÜaRK(†žbC!ª÷Œ{6l[v»"»ú2ú²öË–Ud»ì~¦Ší²û”=vEãQÑvyïWŠ}ImaaaIA¡†ã'Nàà`Ï]w&''—É“æø‰üòËz¾ýæ+ èÇÕÔ4ðm僃a®lã¶ÂÂúÒ?lË>XÂÈ‘ÃKìFÿ¶ں݄pyu’ŠÉÊÊB­Öf2prrÂÚÚµZ¥.ßLFFFɵåììlVºIãÇè5cE(45†èV Ïñ„ òÔ%ãî¿i¯¼NçÖÆ£;H:ͺÙÓ±°°àÀ$&&Ò¿ÿýÞ06:¡OOÎ~’£GJP * a‰Á’:Àæ ½òÄoES›õÛå‰ÝÊúVÑëºs÷«Š-‰Ä KŠ )))tíÒ…¬¬l|ðÙ³;Š©O=˃MáëU_Úƒ¨¨Ý©qt°B¨UÚrsseé’Å<ûÜ ,~o_}õ5ŽŽ<ûìÓ¤¦]«ÐÖí&„%Uã§Ÿ~"55€»ï¾›ëׯ“››ËСCXµj…:µ2yòäZõìH&fŠ`ÐzƒMÁåL…vt„ðp9þuI×®]ùpõ×h4Æ—àØÚÚ–Lƒ !##ƒM›6ѵkWZµjU#}8qü×_£ƒºg›œeÊ´)Œ3†´´4NŸ>M§Nê„wwo2Îdà.ÜñKóã—o‘"XŠ`É­»zÌõšš³]•c˜zìòÚÔ´® ¤Ø•Ô™V,(*.¢¸¸˜¦^žüòëzNÄǵgg'>úh)ýûßÁÆ‘ 6 kkk Q›Jm©Õj†Ì»‹Þáù¦Ñ©Sß}÷ VV–¸º¸ThK"1…Ç{ !GŽ!))‰ÐÐP<==Kê§M›&IR!c€…UÁ™™&4,@ë 6Bx888Èñ¯ ²³³Q©JÿÐjccƒ£cÅ¢ÜÜ܈ˆˆàСC$$$†u5CywíÖ•g?|–¯_üšn»Ñ5­+_Oÿ{FÞ9²äûkÆS3°Úh…»p§ˆ"v9ÈêÈÕòdJ,¹DÙ­§•‰~cÓ¼«Óï²bÜØôm)Œ%µ‚8::àììLVV6cïÃï¿ÿÉÓÏ<ϲeïóì3/гg(Æ %77GGGœŒ³*cËÇ»)¹¹y¬Zõ :pæÌvìØÉ°aC*·%‘˜ÀÉ“'IHH ((ˆàà`vîÜÉ AƒäàHLÂèœ0c íZÞJ½Á;Ю 6‚œ ]û¬]û7_|±ŸS§lÐhJç¶²²Òе«Š3Â8°g…vºwïNVV›7o¦sçÎøùùU«_cï P"„»_èΧÏ~ ÀÈ;G2ã©d|—AËÜ–%ø«Í_áãã#OªÁ’ÆNMË[%ú«ºoEÓÆ¥–Ôju1övδoßžääs´õ÷ã+>fêSÏ2pàPBCCøô“°²²$)é ~~~8;9¢QeTj«y3o}ô ìXµê ¢¢¢™öât–.YŒ»{“ mI$qþüyŽ=Z’vÄ7J,1‹3E0˜8%ú/ãŶ¶Ú X’Ú#--Ù³8{¶ü`QgϹsopð`’8åáââBDDGŽaÛ¶m„……acSþ,¦×®ÃÝÃa#G˜%„¿üôK\þq‘ø óKê¥ ®¶M ªeªýú8%[r{ „KK5]»t!;;›¤¤d¬­­ùô“xýõWøxù2¬¬,¹’’JVvmÛ¶ÅÊRm’­ääóôîÓ«ÄÆw äýÅï’“[©-‰Ä©©©lܸ‘ëׯAûöíå HªMUô¨]% Š€ÍÆ«FŽgg9îµÉ‚«9{vb¥íNœÉ?n4ÙnPP={ödëÖ­$%%ÝTŸ““ÃôçžÇæÜÎþ³‡7_y•âââr…ð#Káh íªôîºÓrCK)€oÒ,©’4Ü®i»ÆÖíVÇSZ™íÚŠŽUÞ~Æ¢aK¯°¤¦)ÌÏÂÃÛñãdz~ýzÎ_¸H»¶þ 6ŒÌÌlΟ¿HvNÇÇÃÝ™Âü4“mõèJzz&öâââŽbaÍàÁƒ+µ%‘èÉÊÊ"&&ggg†^¡×¦]»vrÀ$f´ÌÉŒma¡]T^†·]@–ñªñãå˜×6‰‰)@ÓJÛ·$.îˆY¶5jÇŽcË–- 0[[[î?ÀŠÅK˜3a2-›jSž8—̳OaöÛóñ÷÷7*„á†GØ)€¥–Ô'¡[•zsƒbU´]צl×äØTdÛÜ:)x%uF£¦ ïÍ›y3eÊâââ8}ú4ÅÅÅØÙÙѱcG:t耭y¹W+LgT“¶$’‚‚bbbP…°°0ì*u¿Áã?.Nb6c€efîcgW.g*´µ5Œ+Ç»1еkWüýýÙ¶mû¢ÿÅ&3—OŸú/–8}'{{:ùúñÑcÏñÖÂÅtØŸœ\¡¸ °ÁIíPÖ+…¦D*U!9Y—qtjBŸÞ½ E…¢`a¡PT˜Cnö“‚XÕ¤-Éíz=ªØ¿?¹¹¹ôîÝ'''9(’Z%¢Š"8˘·WDßgèPpw—ãÝX(**â÷u?ð@Ïþ ŒFÿú=Šw232ðcʰQ¼5ù1þˆù—ÿûÏ™ÿÞÞ IDAT»ØÚÚÂKßZÊÚȵRK,‘ÔèÓ]½z•š4i"ER't|sfìciYΔèÝ@ºñ}î¹GŽucââÅ‹„4oÍ ®Á\ÏÎâ…ÿ-cüÃqϽÚðßþü‹ÿ®\΢‡§rg¯~>“@nnîM"X/„õbXR÷ÈÀX‰DrÛ‹a5……9ägRT˜[-ÑZ“¶$›S§N±aÚ6mʈ#¤–Ô9cª°Ñú•/šïºKŽsc¢K—.O¹À¥´TE`×.lÚ´‰‚‚FMß–ä®*ÂÃÃCœÁ‰D"‘Hng.\¸À† °°° ""‚-ZÈA‘Ü"jBk€r‚ M›Êq® ‚‚| &œ¿BC«e¾I‹æ\Ï΢K›¶Äî?H@@ ÀÂB+«Ò/_ÁÃÙ…ãgÏÐ%¤‡<9RK$‰D"i¬Ìž=»ÂúÔÔT6mÚDzz:ááá2ª³ä–Óhfæ>––Ú`W%ì®o+£B×Ó§OÂßÿk ¢à‹Å´ný;Íš¹TëXã¸õ{¢ð²w$-- {{{lll8qâÍZ°~ß¿Ü5A·¯¯È5Á‰D"‘4BìÜÈÏ˸åýÈÎÎfïÞ½¸ºº2tèÐ ÓU…Ÿ~ú‰ &­ûý÷ß ÇÆÆF^’›PÐæ ^iæ~vvP’ öoãm,,¤®K\]]Yµj8ï½7—¸¸B4eVâØØXУ‡sæ<‹½½ ›6mbÈ!XY™/…ùâòÜßo¯M{ 7WWÒÒÒX8Y±þZQ\æ!E°D"‘H$’ºÀ·}º# XkBÔÆÆ†%K–ðÒK/•*_³f 999RK*¤ª"8;­Ó±Ü·/4k&Ç·.0 ô2©­»»;6l`àÀ¸ê¬9x¶lAZfm›·dÅ“ÿ¹©>þ\2‚ƒäI‘"XÒB V«)**¾¥ý°±±ÆÒÒEQäI‘H$’*Ÿ—QçBxÆŒ€6ÝÑÁƒÉÍÍ¥gÏžµžîhìØ±üþû籠°^O:U^ ’ é xQîŒfã7ÏVÚ‡j/pÙxº~ãêêʨQ£Ø¶míÛ·§M›6fí?~â¬XºœQ¡}ŒÖ¯ÝµYKÞ•-E°¤¾£R©Pk,ñlꇽí½yËÏ'-õVª*MS‘H$IÝãîîÎáÇIKK£GuÕPûøøH,1 `ðµ™ûÙÛCv9^`E‘"¸Aˆ ++FŒÁþýûIMM¥W¯^&ï@ðè‘$åå­h"žžžr¥–Ôk¬V“™•O‡€Š‚|}&xí\Ÿº|k;Z´ìÀ©øý¸º:aUfýXCñXׇ~J¯ºD"©i®\¹Âh×ÃÙÙÙ1wî\vìØA@@vvv¼û®ÖâããôiÓê¤_cÆŒaÒ¤I°~ýzy¢$&3º "ØÎ²ËI ¾¾r\ ¡¡¡œ={–ÈÈH† ‚u©Èg|猽SžÁ’†LvV6Mš¶FhTdßòþª‹±µwÆ£IK2®ŸÇÝýÆ”>•JEA¡Š&ž-ñrr½µã–Iúµ‹ØÙZÞä±®/ý¬¨‰äö$&f¿ÿ¡½{¿~ý:qqÇ8wî@êxûí›ëdT膉‹‹ ááálß¾¶mÛâïï[G@@€Ñ4õ³¤–4h„ÐPPXˆJUŒÐhecÊß"4ΛZˆÀ¢Äc]PMnvê-ïcAANÎ^7y¬ëS?Ëë£D"iÔ‡HzæÍ›Ç;ï¼SgÇ»|ù2àâÅ‹øøø”Zl,X–DRcÌÁw™÷Ü,‚ƒƒA¦À®{ŠŠŠB`kk[É}¯ ''gggãÂÈÊŠáÇsàÀöîÝKïÞ½KêöïßOFFéï\EQèÙ³'...ò$H,iÈ‚X+8ëC_J';7ôX_MIBSOÄz~^:ž^~%k Þõ³l---äÅ.‘H,*•ŠÝ»wcccÃèÑ£Ù´i#G޼©ÝرcÙ¾};EEE2M’¤R ˄¶€?@wð÷‡¤¤uÒ |k8Ǹ§žâÙÇcÆcÝô™BðýŸ2÷³Ï˜8t(oT« $$„óçÏIF†%K—îæØ±žäå5-ÓRCÛ¶_–ÏW_Í”1X¤–4P\®vóhe–¥Œëç«ÙÍM]ï±Ö¨ÕõF«Õe=ÖÔ»~ÞÜG)‚%’ÆŽ~š´½ƒ[½òW—‹/røðaúöí[}Ú˜Ö£_§\«V­b„ µžÊIR¿±F?™Ðv´Áë{î÷Þ+½-©{zvïN»>}x£woÖΜÉý:0óñDZ±±áÇ¿ÿæ½?ÿäxD­xùÉ'M²ÙªU+\]] }ƒÓ§—–Û.1±'/þËwnâž{FÊ“!E°¤ÁIà2Þײ<ýÂa“ì¬ø(¸äxE¢NFS?Ö.«+èG}駺žŒ•D"©;n…ð3gN­ÙV©TDGGãèèHDDDz[®\¹‚Z-¿'%Ú)Ѧˆàƒ×&ÜÁ:AçÎroó'Mb\l,qK—òæÑ£¬}ùeU*NŒEîÇcqú4ãptt4ÙæÁƒÇ¸xqh¥í ú±rål)‚¥–46!üôÓO³â£àJ…ðŠ‚yúé§+ÔÕA£V£Q×O°¢¨ë}?+ê£D"‘ÔµëÂ… 9r„þýûˈ­’ZeàäTÐÆèd°Ý³'´jçÏK/ð­f`Ÿ>­]ËŽ‰QwëÆ‰?,Ußá³Ïx}Þ<³l^½šA^žiß;ò4$ä¼H‰¡.·æ·_1ÙŠ9m+PãåV©ÕšJm;„šÔ®úuµúy«û(‘H$õ•JÅŽ;HIIaôèÑ B;v¬Fì¨ÕjV¯\Í¢W‘••%/†:ÂRI›Ñe¶冸•"øÖ3oâDš¬[w³à9uŠq­Záàà I"E°Ä˜å>ôÞàòÐ{+²aú£|4u¥ø¸ÝtèÔˤ¶ÕzTàé­õc×@%‰¤>rîÜ96mÚD÷îÝ i0ý^³fMµmäää0.hÿ>ó/© Ry´Û£ìܺS^uĘJê#Œ”¯,ÇïVÓ'$„¦‡ÝTî¶c“‡—$)AN‡–h`Qá4æoÍbÅŠÚXðÖ¬™ -* Q¬ÇFØ—ã±Ñµ6fJy•Mígm£é –H$ ƒââb¢¢¢pss#""¢Æí¯X±‚äääRe[·nåÊ•+ØÙÙ•*Ÿ2e Ú;|ø0ÇgÒ¤I7Õ%$$°}ûvž41ž|L@\Nhuu;ÛÕKV3hè yÔC{ ßH]+ ÈHyÿþðÜsrìêK¾ù†Ä‡º©üú¤I¼ööÛ¬¯Ã4n)‚%ˆòÖßðרS“ƒ¢œˆû—Ný8÷o­õ¥ªýìØÏä÷P[}”H$’úBrr2Ç',,¬ÖrnþŸR©TìܹFë¯¾Š«««Ùö‚ƒƒ‰‰‰aÍš5¥„pBBK—.eéÒ¥fÛn7û™µÉŠ`*íâãvWøº6û(‘H$·š¢¢"¶mÛFff&µ&€ ÉÎÎ&22’’TKUeêÔ©äää”L…6ÀUÉO<î‰q\´½xc|(¢C¿•îwñâE^]ø*o-}‹k×®——ÇÇ_~Ì‹o¼È‰øòb3‘Ñf–XZÊq»Õ,ùæâyÒÒh=o-[Æ+ÿM§_Äòøq®<õÓ+™ÑX–;îèŸß~Z^§[7OyÒ,1›²ÞàºôÌuñq» 쫘5û»Auú·‡€À>ÄÇí)÷umöQ"‘Hn%‰‰‰œ:uа°0œëä˜çÏŸçøñãŒ1kkë*ÛÉÌÌ,Éï½÷òÙgŸñçŸrñâEÞ{ï=rssÉÍÍÀÅÅKUÒ˜ñcˆy"†c[¡ÎVÓ²_KæÌ«8ýÔ®è]üoçÿè:¹+ª"SNå­Çßbö²ÙM ¢eDK–ý½Œ1=˜úðTyáUÂ0À(2(ózÈ¡©·³rÇš_ºÄÀâbÞ{î9¼½½x%?Ÿ+WòCB;³³9rô(Aݺ™d×ÓÓ“¾}s¹ti?EE¡å `?¿…¼þúÿÉ!E°¤!¢ IU¹bz{þÿÝ´6øíùÿgÒ¾¦÷¥"O°¢u³š+„ï! sâ况~V6Ú”~Æß«ë×Þ›^ƒR«}”H$’[Aaa!»víÂÛÛ›Q£FÕÙq8€J¥bäÈêçò\³fM©Èͱ±±œ:u V­ZUªíc=FÓ¦MM²«V«I½Š:M“ډ̔Lr²s*ÜÍßkè9½gÉ¿Œ¾/õå¾»îãîÏîÆ£µÖÓÝéîND¿ÍT¤® g´é’6”EÔÈdImq$6–oo–MZ"~õØÛÛ3ÿ…x%?Ÿ¹Ÿ|ÂòÕ«Y:gNNN&Ù^½z6cÆüÍ—_Î&7WÜtÚ”×^{OOé –"Øøxàuàœb‰‘úÀ ÝæGBˆD#mþ ´Þ¼€g€H!ĆJŽ­·½C±¾ŽÞ¯³"»ÁÉ`݆†‘¢Ÿ~úéšw7VdNTAº|Á¹['2w×ÁpVÞO½(7èµ!Ö%‰¤¾@BB ÀÑѱNŽ©O·Ô¶m[Ú´iS#6Ÿyæ™’×»wï&::šçž{Ž€€œœœŒË2…u_­ÃòK‚5Úÿ±êÔ,c9ïû~¹ûä©óJ)4k;k )ÄÅ»ôÔòB )..®–üv!¢Œ-‡¤^Ú½;ëºw¯°½½=‹¦O§¨¨ˆM›61`À“bXXX0iÒ&M#ºQ—k‚¯“ùŠ¢ßcÿê÷•VÀ[ÀýBˆtÀW×¶¯ Çnªk[ë¡E±Ve1ðIƒ»ÌЕoÏ›aôu]tFQª·Föäñ=u´&Ø”¾ì­ôµ\,‘HŸþ9QQQFë–/_NTT[¶l¡°°ððð:ÀYYYlܸ‘ÐÐP£xÊ”)&{„ŒÍ¢E‹øé§Ÿ°µµ½i°¹ü¼òg¼4^%Û–X’|(¹Â}z¶ïɵ³×J¶Ïì>ÃS“Ÿ"î縒²¢ü"Z;µ–ØDÂkƒ›È^rH 666„‡‡Mzzº)‚kY_ióælCx¯G9ß7k€±¹Q='`“nû40›Ò?ÔÕ<€éß J›ó—v5´« fîeÚ_%?4 Ÿi\ ¡Ÿ‰DRÛ<ùä“DFFÞ$„—/_Ž‚ÜÜ\úõëG```õéìÙ³ìÞ½›ððpÜÜÜŒ¶ñññ1y½nYvíÚÅâÅ‹ùá‡JÁÒ áuëÖ™eïØ±c "Ý"½ÔfŸŸ ÷{bòXï°fï»{ÙùÆNÜbÝxé?/1Ôg(‡Þ=Äîww“úU*/O}™óçÏóöÿþg4ácÇøÔÌ>7V\}‡‘€Œ{Õ¸°²²bäÈ‘ìÙ³‡´´49 ·ã5PÇÇÛÜôb Ä‚ ÚÔl¿èDò8EQ\„Yû꽸›t¢:X(OaÍJàúE©ò\ÃõDÙ ¥þ÷SH,‘Hê†ùóçóúë¯ÆÒ¥K¹~ý:“'O®4çnM³ÿ~4M¬ÿ5Fbb"ùùù|ÿý÷F£@O:Õ¬›ë3gΓ“ÃÌù3yòÀ“dÎĶÀ–ŒN¼òê+îkggÇëÓ^çòåËœ9s†~ý´òíÁ òà„KM.((`ùÏ?³ãøqÖÍ™C“&MB0ïÿã£èhæ…‡Ë YÇ`§îYÒø°´´däÈ‘lÙ²…   ›ÖK¤®I¶êžÃÃäyýÑzy7ëDð´Áù~1h3íÙÍ:áˆvïoBˆ_ u Ýþ£tí·;ŒÊEqîAû#Ÿ°í”ëé@¡b^™ö£u"¾ì–!òuõý}¦¸ÞŠ¢¬Ö!65l‚ø¼õ˜“'¸Öûb¡Ôû~VÔG‰D"©-!üùçŸãëëË+¯¼‚½½}_¥R±mÛ6:t耟Ÿ_­ãäÉ“¤§§3bĈRåíÊä55PÎÕ«WIJJbèС¬Þ¾šÃsñìEFÝ5 ’•sèÐ!ˆXÃ)ÐvvvwíÊÆW_%ìí·y-,ŒUÛ·ýÀx§¤0yŒ”|zÂÑz[úÉ¡h´XXX0|øp¶nÝŠJ¥¢E‹rP¤®%D’¢(gt¢·ì÷Œ@ëåÕÿ§¥ÁŠ¢Xè„óa!ÄU]}sààð«¨Ý‰6xÖv xx؈@±þÐõe/p˜܉60à9`žAûЮ+V‘º6ó€IŠ¢ŒB\Ð ùVº]?À¥¡\ ¢§j§/Ʊ³³C¥ªÂÎÊÚ®Þ÷³¢>J$’̬ۛ,’“´¯33kÌ®··7ÇŽcäÈ‘u*€333ùçŸ8p IoªBll,………ôéÓ禺ÇÜl{YYYìß¿ÿ&ñÜ#˜àÁ&ÛÙµkaaa& æ‰ýú±åÄ âߟ§ÿú‹œùóÁÕ•6?ýTkãÖi¢»‰”©T7Š¢0lØ0vìØZ­Æ××WJòóó9~ü8—.]ÂÝÝ¥Á¿§[ñ¹Þ <¡(J{!ÄiÁ{H/pE9©Æz‚7ø¬ˆµ@[`¬â­öÀ?FÚ.Ö à…ˆè@;Ö8ôA»ÖÏ !.éÊGÐzµïBD*Šr¸lB<а.Q<ÁÚ~ØÙ»’——@AA!Úì» j•¦^ôÒÚZ…õ¶Ÿeûhe%ÿKn=66ÖXZZÊÀm·úÆ&/Ÿ3g’ÈËË«›Ë—/ÇÇLJõë×—š]Û$''sêÔ)FUkßs‡FQBBBjÄ^aa!;wî$<<Ü$ñZñññ´hÑÓnLÇ Î Ü¿?9£uqcXO¶D;]Pr{pÇw°k×.T*þþþr@ (**")IûƒiFFF£xO·ânx ð„N€žV¥9ÐxÇ ÍF࿊¢tBÄ¢ 7‚bû§ ÚiÍé0€â´¢(‹0˜~­hïºê°®mº¢(ÿA;ÍÙ9€ xT‘aÐ>RQ”ÝÀEQü…IòcR3åac“G`çÎØ;ºàß^OÍ»Eûz×ßa#î.y]_ûiØG‰äV“™™Îõ´óØÛYËfn!>>ÞŒ?€ß~û³Æð„ €›××111(ŠrÓôäšäÀØÙÙÕX`/FæM›:thµ"6gffrùòelRû„¤$&.XÀ…_,]Ñ¡Ÿ÷îk×òÌĉòá¿g”Cp[1`ÀöìÙƒJ¥¢C‡r@t¸ººrï½Úä=qqqRW‘mhÝ|aÀ*nx| ½¼‘h=¯ýX´A±rè ìvÕ=K»£Ì¶?ÚÀ»Ê6BìU%¯Œ`î dSŒx-rôÿ>)‚kÜm@‘¢¢<Ý%£Ègù,ŸÅ3Ø;¸áë×…„SquuÂÊR á†ÎªU«J `=z!ìääDppp³¸¸˜mÛ¶@ëÖ­kí½íÙ³www:vìXc6·oßNïÞ½qpp¨–ŽŽŽ6Yü/ÿî;Þ%yùr°+³TÆÖ–ä… ™õë¯lš>oß|³Z©£$’†JŸ>}Ø¿?qqquÍ^ÒÈE°"UQ”£:ŒNgÿ4Û }Eù ìBU`Z?‡çª‘º+e¶*h Ú Wz¼Ñ®S¶§t0¯²øÉË©v(.Ê“ƒ ‘4Âϵ«{ <š´$ãúyÜÝÝå 4p&Mšd4J²^Õèñ222صkƒ 2ypUصkÍ›7§mÛ¶5fs÷îÝøûûãååUmqÞ³gO“fSüÉ’+ðéߟ¹s8Õ¹3×~%9™îK—b£[¿}úêU{ñE~øüsyaKnKBCC9tèG¥[·nr@¤®1¶/éÖà¶ !Š „rž¢(»€Þ@GÀ“ ¦BëHÔ=71RW6ÊÃ%ÝóM!àtžßf€>¯Á5´Á° !Bå%#‘H$5C~^:M<}8{&Œ§¡Sž6µÞΜ9ÃéÓ§kuý/ÀŽ;hÓ¦Mz™;†““mÚ´©–sçÎaggGÓ¦MMj?fäHƤ‹Š‹‹ã±åˉyøaZ¬[ÇÆ×^3Ù–Dr;н{wbcctß}Ì{é% †§ç÷-[øþï¿ùnÉ9pRW*‚§£]—ëñ€W‘À»ÀhƒíŠ8ˆv®]O#uAe¶OyÀŠ¢(¢t4¨þ€ /V% TÅU‘YF4?Œ6"ôwºÜÅB^V‰DR9BhÓÙ"„Fˆ¤„‹/–›ªdïÞ½XZZÖêú_![·n¥S§N5š2EŸ ¸oß¾Õ²SPP@|||•Ç ¨¨ˆ .pOHûŽ§ÍµkRK<………lܸ‘]»w‘’•‚…¥ÎÖÎô é˘1cªù¼K—.¸4kÆè]»Y³†ù“&1Ð@ ÿ±e ~ý•c­[óL«Vò$H\)»€"´ë~A˘~x8'„8YÉ?¬LEQvw+Š2D±M'R]ж2l›£(Ê'ÀËÀ\EQæ !„¢(>À‡FÌ‚v*ôREQžB¨u¶ƒ€•h§n/×µ½h¯Æp\»žÎÑ£qdeçèD¿öÆU>Ëgù,ŸMypvr&((w7ù_WbË—/çwÞ)UV\\\"Lksý¯F£aË–-tëÖ Ÿ³[6puЧª*{öì¡OŸ>„„„°xÖ,î¨áµÚI]³öçµü¼ëg<ƒ=ñºß‹P?íäͬ”,vÙÍŸïþIw3_˜ivV‚/^}•à?æŸ%K·v-AëÖq_¬Þ·Ø!CÈZ¾œ³fñæoÈ!Ep¥¿°æ*вmÔçcQ•…ÇE¹„v­­©‹RîC›ów£¢(ëЮ¾['¸Ëò6ÐK'§(Šrè†6h£A—ü?ÖÙyVe3ÚàZ#ucø¸ÞC,„Pél Våð?!Äg ñâHOÏäà¡£x7m‚ŸŸüuK"‘Tì¬l¡(Ê †v òÇBˆµµÝEQ&rsäêgÆŒ—)È¿ÔÚÆÆ””Kx6õBUT@zF&¿ÿ¹UQjÍ¥Ðׯ§ãææŠµMå_³gMÇÎÖV~¢$‰Db .$##£TÙ¦M›P©Tìܹ³Tù´iÓÌVµyóf†jT<>|˜0iÒ¤jýèûÝâïh¿O7‘ì$þê0¿÷þ®]»V;0ÀÉ“'iÞ¼yµÄ´>–©h4ºtéO\\4RKê7Š¢ðàýòàýÚHÑjµ8€““S•0À²Õ«‰Ÿ<ÙØ‰1‚Ÿ7näžXó/‘"¸ÖB¬T%môé¾haíPÉ4í$W'¾k77Wò­o¤±±s"// WWWŠ‹l(V©pss£¸Ð µº$]3EEE¸º8cc[úÆàì¹+7coLlµ§zI$’ÆAxx8Y—ä@HLbÖ¬YFohËF‡®*Mš4aæÌ™,Z´¨”>xð sæÌáû￯–NLL¤ødq©²æ—›³ýíŒ;¶ÚýÏÎÎæÒ¥K <¸Ê6®_¿Ž……nnGh?pà+W®ç­·žgÏžCdd<Á'ŸüÀK/=Ì»ï~I§Nm¸ÿþÑò¢­233ùâÃ/8s”ôôt»2iê$ºtí"§°5pÌ„„„ðÏ?ÿàääT¥”g*•Н¢xʸv+VàŸ’ÂéV­¸òÌ3äŽâ矗"XŠà%„~»…Çÿø½¶£R¾“ž–\²íäâÅáC{éD~n:§’èÝwyÙW).Î/iwòdmÛúáèT:@È¿{ŽÒ¯ –%‘H$’úO=J„0À¾}û˜7o?þøcµ—ýøûûcág¡ ©©ã¼ëyÞœn~ÄåÌÌÌRk’õkŠG®žðŒ‰‰aذa•¶ëܹÿ}šÍ›—"ÄA ~cÕªGùî»Ó¤¥e²oßò‚ªþúõ/V¾º¿~xàAiˆhÁüŸæÓybg^{ï5,--Kí¹5’£Ç2ã…¥Êþýg®^»Ê3>#¶Hdd$öööfÏlX¶z5'Fޤży„²ä¹çhÞ¼9 IILŸ;—//âúõ“Þ`)‚%‰D"‘Hê§Ž'66–ü±ZÓ#õ(ŠBÄãüžñ;ž‰ž¤¸¦à—?:šl#zo4_ÿþ59¶9890vÀXzwïÍŒ·gPìZÌ/û¡k³®üßóÿgvÿâããiÛ¶­IÁ°ìíí?>˜eËîCíZìÄÄÕ@>wÝõ&~~­åÅTM8Ì×Ï}MðemnæL´ËÕì°£ó•Τ,Oaå^ïõ’}¶ìØÂ—Û¿Ä3Гù‹çóúËÚºŸ~û‰õqëqðrࣕñÂ/È®€aƱaÆ bV «å̸!CXú ´lÙ²¤¼¿?¿-^Ì©„^üè#ÞŒ•"XŠ`Éí„«{ 2Ó/š\^Õv‰D"‘˜Jrr2+V¬(U¶wï^¢££ùÏþÃܹsKÊ}||˜6mZ•62Œ¨­QÄfÆâÑ΃‘÷™Áù‹?¾ èå!B~üàGþÜü'ÝfuÃÚN»Ô(qK"»÷î¦oï¾&ÛU©Tœ9s†Q£FUÚ6))‰>øèè+X[PTdX›KBB<2‡iÓî¡{w™ê¬ª,x~—Ë­÷.öæØÚcœ~ò4í;h×™çæåbí`M‡ðœÚxŠù‹çÓ©}'ÖÇ­§ç3=9µñ¹©¹rp+ÁÒÒ’ádziÓ&ÂÃÃM^Æwlûö ƒæuh׎¿–-#''G²Á’Û]»º›¾æB `‰D"‘R˜üüüX¸paÉv||<¹¹¹8;;ceeÅ‚ ª··DØ<·ï Þ a¤ÂŠÿ® ßà~&Mµ>tøÖíKߌ7Öœ˜•1ÚÝKþCüY½dµY"xÏž=ôíkZûåË䯿â¸|yEEþej›pêÔ=äæ®%#ãS~ûm…¼H«À… °:[ù­·ïE_~þögfÍ×®—¿+â.Š‹‹Yÿ©VôžŽ}J¦GKLÃÅÅ…ÐÐP¢¢¢ä`ÜÆHO°¤FÈL¿Xâ 6|6·e=Ååy€ ëäTi‰D"‘Ô”Ö¯‹-,«:a„³(U–g—GûNíMÚßÉɉö.í9ñÛ Ú‡·'9*‡+Œ»ë>]Gçû;““’Cü·ñ|»ø[“ûµgÏ“‚abiiIttju3\\Þ#+kMš¬"++sçË¥O/q‹ûùp1†¦~@ѯEt<בï?üGGG“ì>}???“‚a²wï’“÷3uêZ&NÌŽ0dH<‹Ÿ$/ï4«Vý ?4Õ ¸{09>•¯M±H¡ÏÐÒ9õA°º?ÞÓ‘§‰ù<†¶CÛr¥Åæ/žorð›0öÏ?χß}×`ÇR­V3ãñLê3‰ÏV%mÚhŒ8yò¤¼8+!55•E‹±hÑ"¢££Å{²Ò‰Á–ÀFÀ¸ (Bu¿-Ï€¯ Ê'¯†s‰Ïßä%^»Èé͉DR¿hÕª%?>€5Ê÷8nܸrëôáêòö'o³mÜ6~úì'‚Âyç™wPÅ,ݺtãý.ï—*óôôdîËs¶ÿòçŸéܦ }ʼ•JÅ»Ÿά§Ÿ6û}„„‘œü[·n%44”uë†1cÆ—ôìÙƒ^˜Laa¡üÐTÀ¹sçØMB|<ÁÁôéן’zÚ oGÎÊœ4å¯Mé–Â=ï)ÙþíïßJÁòMó¥•u+b>¡×3½8µñ ?\ȬÿT¾.8??ŸÔñãÉ #õ¯¿ìX¿9íMо.¢£º#Ñ‰Ñøvð%|lx®ùêå¾]ððð`êÔ©€6ïxc@ï î¯ÀË…Í…ýð{ûÌš–)û ˜ H×càÌô‹%‰D"‘Üz¬­­qssÃÍÍÍäH© 9sæÔÎÍLj!|òÓ'L6[[ÛZ•Šˆ xõÃB;;==°Ge}L M==ͶieeÅ… ðóóÃÓÓ“·ÞšFÏžZ‘­(J¤”jŒäççóÎsùùƒé§á?}‡â“’ÉWo¿Ë',C­¾áWš»l.É}’ɶȾɎ5ýòÊ'¯”º†)Î+æÔÆS´LiÉÌfòÐýÑ׳/û>ÝGqn1ŽŽ·ÍxstûQ<ÔÚzþiþ¬þtu•í 8ØØØF#îjKKKÜÝÝqww¯vnõú&‚½uÏ»n§*„Ø$„X(„H‘—wõ1\\™ –H$‰äVÐXnàîˆÀ­sg–„„0ø™gøþ·ßèóÊ+ì]²„ =pqq©’Ý“'O 4÷üóSäSù½$OL~§Œ\^¼ë^º·ïˆ³ƒ}:waö„I$Çä•—¦—´·³³cõ¶ÕØ[ïÇ<>.××Reùœ={–Ž;VÉfUsK°ü}B>/´ÞaÝl°¸ìç€ÇE™(„ب¿ö€G{à^@A;ÅúC »®N­{Þ ´EùXœr€EQÚ !®ëúÑøí”íƒÀ´ëy#€'Eé$„¸Œvº³~þ' ìtïÑF÷Þü€+º6}t}ú8 8ë¶uö­€Ýë±@?]ÿô_@À^]»-€5ð>ð€îýŸ½6ôü–÷ÚÔví#‘H$‰äÃ;t`kl,téBîý÷Ðò·ß˜øŸÿTÉ^ll,#FŒk‰Çb™2áAºû·gù¯?”áå¿þ€G“Q<ë§oKD°¡ð "((ˆ­[·š}lOOOÒÒÒð¬`êû¡S§ˆš6 |}oª;ñõל0Øv™=Ûì> 4‘?|…  ®u8æ‰xjJ¿gÇTG._¾\e¬ÿqbРAlÛ¶‘#GÊ‹»‘c!„ ,×m¿&„¸C¥(JO`>Zng!Ä=BˆpøJQ”²smîþpz ! êî‚„Ðzr·é„ð2`”"@ | Õ†?m½¥¸ƒ„½…÷èû7€«^˜ !æ£õÀ,Ò½—#Bˆ;€$ KWVYä€ñÀ{€·bÐV'’')Šâ§ÀÀ¯€è+„+„¥{OÝå¥%‘H$‰¤¶øö?øìüyhÛ¶TùÅI“õÚk$ž9c–½+W®àíí-Ó ™Aqq1–깦Ÿ¿û>®\¿Æï½UJ(ÅÅ5~ü¶mÛVÕ½™»;ï¾Kð¬YÏšE·3°>z²³éðòË%åÁ³fáif4ñÿÝÏÑ£aÌœùEŽ{‹¶-H'½TYGMš4©¶mºwï.sß"¸‚ºÿ¢õp>/„¸ª/ÔM“^ø õšr\±X‘-„Ø_¦n¹"Ng£ؤÿBl2h§÷.·Õ‰MKØ|Vñ¯A?TÀݦO K°P‘¯;V*ð;Z·¿®M´Ó·—!Žô+­gY"‘H$‰¤F)((`Ò«¯òŸ‚’Þz ʬqVwìȾ¥Kúùç|úý÷&Û=räݺu“|‹°´´D£Ñ˜µ³³399§\zöˆ]¾œC rháBV?ü0Ö±±žÎØ-JÊ-\Èóç›uüW^ùšŒŒ©>Ü#GŽÕÙXµïÜžŒ¦¥ó(§Ú¥âkÄÛ]¼¼¼hÑ¢‡’æm*‚;ùBˆÝFêôs6Ë”Ÿ¨À^|™ísºç²?a¥êžmu¢R-„øDñ©¢(öŠ¢tWåQEQ>Ö‰qÐNîIN”]ûkÐ_}ø=}N‚Föß./-‰D"©EEEr$’2L5‹}IIø8@ð¬YN›†¢óú6ýþ{­Woî\Ü5ÞY¾œŸMHƒ“––†‡‡–––r€ÍÀÚÚµå[iýè•3^ãÊõkü´óÆgaUñÓ¦M›rõêÕ*‰g•JU¥þ_MM­ò{ÿ÷ßý9 X“’òXzƒ D–{V©2­''§;F›6mBÈÂ˜Šæ=ø£ >e }y«2å-à<_NyÙPneÅ'Š¢´A»Öö.áÖc\ ã’f¤Lß^Ÿø¯cÑnÈ•Æ|Ñ„‡‡ËOŽD"©uœ|ö<;"4r@$ß|ðA©íÔÔTz|ñfÍ¢SL ;ßßl›‡bðàÁrp«€—ÎNJ êÈÁRS Ÿ¿û¾’5–66 ‰¨øÞÉËˋ˗/—Ê+l ­Zµâüùó´iÓÆì¾Wã‡F­x‰nË®Ä\ÕµÁ899ae”lgggZumEþ©|ì±çŠÃÆMÇ®]»¸ãŽ;jìÜöèÑCæ¾MEðe ¼3®O©”^¦¼¢yêªtPQG´A§Ú   µ ˆB¤ê¢?1¦u‰þ‡€æÀñ2uú“’•qI~r$I­bccCÇ€.ØÚØP/E°DRM›6Å?- §O3¢C‡Z†|÷õ7\¾p—_}å¶ÿ)SŸdòø hÓ¡Ô`½žýùǨÝ]xwÖ‹ÚiÒ¤ ÇŽ™?¥¸uëÖDGG›,‚---±Û¶ »sçðôð 99???³ŽièÖ£õÏbãÆ̲uåÊ–/^‚’KF~!ÃxpÊ#•^ï~õ.O¦>IÁÙüïðgÚìiy7ÐOeö*c' TÅVQXýúM÷CÁ Š¢lBü£ë×À³òÒ’H$’ª#§CK$¦óÄÝwóýºufO¥ÍÎÎÆÖÖÖ$»iÃFRR®ÐÂ×—óçÎ1¨}g¼]ÝX¾l¡½{sîÌœ¹küøÛnüxuþ<Î;Çî¨h¾ùóºöèÁäÿ{ѬsR àääDnn®ÉÂÏÐkliiiÖ ÄÆ¶ÁÐ ¬'%å1Þxc6ë×/5[üêéHŸ€@“Ű^ë8®(Êv!ÄÕé”B­(Ê´Q£·+Šr ízå@`?Ћ*N—H$’Û9Z"1oooŽîØaö~û÷ï§OŸ>&µÍÊÌ$)j/Mr°ÎÍáÎAC±P.Dí {Ïa²¯^!³¥×m}|}}ñäK¯¾}J<­æ öln€'«Ý;00'Nd²€nÞ<‰k׌ Ò(Æë_î¾ æ¾IöùKL¿ëÞ›ÄoY ÅðƒãÆ3kÞ\‚{ô¨´vvvtëÖ½{÷Ò»wïjO•JÅ”éSÊp·á¥êüBýJ^¯ûiYÙYÜq—ü2j@èƒL]@å8­ŒÐ{x@Wÿ0­÷÷!Ä6ƒ¦9ºý‰âd]]F™ò«ºò eÊKÙB¤£^üÌZÿ'„| (Š¢è£IŸžNhó ÌÖùÜXÓ|Zw¬lÝvnÛØ4ï›ÆH±æ¢ÍC¼¸­ S^b‰DR5 ó3)È—_£Im——‡……öö¦%ؘðÀý:;ÐÉ·5“¢]a6!ìúvîBÜõ«<ûßÿÊÅ´ÔEÆðòò"%%åÿÛ»óø¨ªƒÿãß™L†Lö –€”Mv×¢ËóTZkëÖZܵUQ´""àRDŠU»ØZ•¢O¬ìð(ZHX4İ%Ù·Yîïìûl@–ÏÛ&s—3÷ž{g2ß9çžëÕzÞŒ,]ýJVV–ÛËhÖ¬q²ZßG7)i…n»íúf×½öÆT`Ò_6¯Siyë2¿;vD½U£ÇW¢×»÷îÝ[‡Ã£ýjÊ7ß|£î“»+82¸Åå†Þ0T«6®âÄog,UaîcI7µ€aHjñFsU-ÂS›™÷ޤwš˜¾Nµ·Zª;ýÛ†e†±_Ò5SþÝML["iIƒi'%ÝÜ`ÚbI‹ë<Îja?>”ôaõc“É«Êé݆aÔ»±šÉdz¤ê×,N1ðÝ¡³kÇŽ5j”Gëüüчõú¯çè7?žUoú{k×è'÷Þ-“ÉÔnë#''G&Ü%‹ep½é§OÿK]»Ž©7Íl> ÔÔ¿7[Vpp°Š‹‹=Þ†ØØXíڵ˯;¹#**JyyyŠŒŒtkù{ï½I¿ûÝÚ³gbÍ´  êþû§·x MNÖ¢eK•–šª'_}]ýãt猫eëÒ¥Qø}kígê1 ¿žym‘W·>?~¼V­Z¥Ë.»ÌëkÖ/¼ðBÍg¾úNî« ° f—;ð¿4câ ÞTÚc†W"$­¯úwqÜM•­Õå’6SMí‡ar8œ 0(‹% ]ÿáÚ"ºCgOYY™œN§ÇáâŧžÑ3×þO£é?»r¦f/zU#Þ{ÇãQ¦ÛŠÒÒR•”ÌÐñã÷4˜ó„Nž|±Þ”žh±¬àà`•””x¼ 6›Í«õªtvv¶Ç]°%iذaÚ¹s§&NœèÖòÕ­Á?¼U•ëÄÇ¿§[oýƒ[ë7†åžÔ¢O>R¿á)^‡ßÚ/*Ìš2eŠ6lØ Ë.»Ìë¿CoÏ{[sÎÑ¡¬C KS×”®²uµétÚiåîÍU˜%L·Ì¼E—M¿Œ7Bp§qPÒ?$]m2™¾“ô…*ʺ®3 #jjìv‡JKËÙM]c"Ü^¯°0Oy¹²Ùº(0—àO†³Te¥¥Tàg;wîô¸øÍ×^—µ¤\ïo^§Ü¼<ýêG·*0À¢ßüíO µ«ox”žýÕ¯5÷¥yT°äõ—ãÞŽ5`ÀíܹӫìMh¯Û¼V÷Ü3Eiii6Ìýû× ÃOýv‰b{Åëî_?®ÀÀ@Ÿpµððp%$$hïÞ½JIIñªŒÈÈH-~n±JKKµk×.9vD‡ ”Ð?AC®¢>}úp²‚;Ù‡3Ã0L&ÓTyýñKºQÒaI”ô·êÑ¢Ñö9Nååª_¿!r.•—»?xxpp¨BBÂô}ÆEE†Ëb  BmΑ#GÕ»w¼ìv»JJJîÑúS/¹X£ÆU||¼6oÚ¤¿l\§Ø¨(ºr†FŒ¥cÇŽÉÀß@_ìÅb‘Ãáð¸EÝf³©Ô‡/ ”™™©„„·–¯Ûœ”´B³gÿV«W¯VJJŠÇ_ MNÖ‚%¿­yüùçŸ+11Ñ/½ † ¢µk×*>>ÞíîÞÍÕï„ 8±;3UàÓ\±aó ÃmFŒa# øŸÜ¾*"²›\†Keeår8nÿ+++—aHá1*(,¤2mŽËåÒèÑ—*++K»víÒH7FÙm(ièP3F={öTL·núwö}¾w·.»êJÅÆÆjÔ¨Qº`Ä*»Š·-Á111ÊÍÍõj]«ÕªŠŠ ¯Ö8p ¾ýö[Ö¹÷Þ›Ô«×Üšk‡ ¢ýû÷û\wãÆÓ¶mÛüv,¦NªÍ›7Ëårqb¢-ÁðIDT/åŸ9Öâôæ–imÞ¹àt:•Ÿ—¯> Ckn`,o5ðÞSOÝ­§ž’^zéU=óÌ6•—O¯3÷Œ.¹d…V®\æÑ@Ž ôøZWIÚôÏM’¤)3Úî D•u±U11õ뤰ð……-«7Íáh½»oXX˜[]‹7¯Û¬òœre)«fZ®ruFgêMs¸Ú¸j£n¸é†Fe L¨….ÔƒO=¨is§éæ+¯÷Þþæv]›|­n¸æBb©÷g7™LŠ‹‹ÓñãÇÕ³gOŸÊŠŒŒ”aÊËËóéGu%$$èðáÃÊÎÎöê¾Ê ç$PŸ+Þvm¦;4 -úÇ?2ärMVÏžOëøñçû–ŠŠúè»ïº«´´T¡¡¡n—•ššª¡C‡z¼ .—K¯<þŠ$iÒ%“¼ ÑçB¯^½”–¶¤Ñmt6mêÞhDa‹å¦VË v«%ØépªÜ(W©jƒg…*d—½Þ4§œ²8šÿØ>0q cuòàIÅ¥ÄÉQîPήÍ|x¦W!Ñ×®ïÇ×_|ás–*[ƒ×®]«Ë/¿ÜoÇû¢‹.ÒªU«tùå—+007 B0pî´Öê{¾oŸ@{õïïÑáÃÛõâ‹ÈlNÐÃoÖÅgé¿þ«ž}6]Ë—ÿE¿üå,·ËËÉÉÑ…^èñv¼µè-õLíYóû=ÝsÖöùÃ5kôægŸÉÜrð¬¨Ð”ÁƒõëŸý¬þ玈ˆFˆ……yu›žàà`·ZT']}ëS«'Iúô­OuÝ-שGgeŸÿ“‘¡ ¹¹Ò“OJ))M/tú´ô«_ɲo_›8NñññÒɵÕ%s CõäÍÕ×\Ñä¼—^IGºÑ Ëiû›Û52l¤6<µAÓæNSßÛûjÖC³´|ár·[<Íf³õ]F†¶îØ!³É¤ÍœéQ–¤#Fhýúõš1c†Ïõ4xð`­Y³Fýúõ“ÅâŸø¡^½z)55UÉÉÉ•_@œ<©œœœšÇè¸ >‡ÚÖ¦7\¦zôç–æìíÈÐt‡´5&“©¦ëqXX˜æÏLcÆŒª™ïÉõÀ{öìñ(”––êéÙOkÖØYºàÛÚ{Î^ðíú队êéÙOû|Ýi³^xAzûm©©™NŸ® ÈóæÉÚ†nóô»/hwŸÝ2Ôôç‰ô˜tÝúô­M¶TWTThíÖµê;¥oÍ5ÀþüA-|t¡6<µA‘ñ‘ÊÌ×Áo=»ÕPRR’æ¼ñ†nïÞ]¿8pÀ«ÛY,…‡‡ëôéÓ~©§1cÆøu,I:t¨²²²”——§Õ+Wë®Ü¥ßLù½ãQÞDÁhÏfÍú^­çé½wlÛ¡ÿ¡ ^+ШÌQ²©v=›lsxŒ ^+ÐÕî֎m;ü¿£Ò‚Òòåõƒpu~é%©‰0éOÅÅÅúäïׇü“æ<ö„V|ø‘òóó›]¾ÿ€þzá_PÚ¸4eÚ2U¬b•«\G,GôŸ”ÿè†7oÐÌÿnúÚ^«Õªw^yGŸÿüózƒ`U–õé]Ÿêž«îQòPÏZ6»wï®â’iÄYúõóº.FŽ©;wú¥^»víZ3H–?M™2E6lÐò§—ëÂÃjЩAÊù(Gk׬壣;4:½s€233Ô§O‚W÷¢ ´(33Cæ*Сddd¨Ÿ!(ù‚dM¸j‚ö|²G¶ïm RP½ù%*QFï ]tõEJ¾à,u9­Â<"Ýq‡'=ñ„4þYÀ›6lК¿~¨FOÐâÿw§L2)-3C¯<þk¹ì]}í5M®—2¬V«‚‚‚TPP ððpŸË;v¬Ö­[ç×A²UVV&Û÷µ_Øô)裷—¼­K.¿„7B0Ðñ˜Í&…„ëà4EGÇÈf³Éápÿ:)‹%@EEÅ:x Mú'Èl6Q©€#==]_|±ÛËÛl6=·ø9e=–¥gîF޵%T°”ž)Ë%-}c©âââÜ*ï¦ÛnÒ’ÅK<œ* @zùeiöl©¸XZ¸ð¬àmÛ¦'ù þüäsê[» ¨Q]uË Ï(ÀbÑW_ÕÌg ‹&Mž¤I“'—cŸŸ¯S§NÕ†Ã:#y=zT!!!5{õê¥.]º¸UîèÑ£õÕW_iÚ´i~ ¬ úî»ï”˜˜è·}ß¶y›ºv«ý|(³²¾Ïâ  #gªY@@€"##®uk×èàÁƒr¹\nÿ;pà€Ö¯[£®QŠŒŒðè+Ú²òòrY­V¯nk§e/SñÈb9«þ+U¢e/s;KÒ¾ô}Úµ{—·©N*+“¤cgw¬‘ŠŠ ýqÉR­}ù ½ôþ{ú>»6@eŸ>¥§Þ^ª•s_ÖæOW©°°°Mï[çÍÓØµkkþý#9Y UþäÉúñ‘#5ÓG¿÷žÞ^±Âírƒ‚‚d6›U\\ì—íLJJÒÁƒ½ê½×œ3GÎ(RõïCl+·5ºe:Z‚ÑéÛß»—Lf“¥ï×î]ÛÝ^7<}ZzüñÊ.ÐaaÒ£JwÞ)%%•ºÚ½{·¦ &[—.ZtÿƒšýÆB=vóm ²ZõÔÛKµèþj³éÊá#õÕ—_jÆe—µ¹ãmŽˆPî]w5šîˆ¯?}Ï9÷ìñ¨ìÑ£GkÇŽî¹ì­1cÆhûöí?~¼_Ê p6nÄtª¢¢Â/ÝÂAÚÞ›¾Ù¬Èˆpu±ZÕ-&Z¥¥en¯k³),,L6[L&ºB:Žœœ9Ò§2ºØº(vz¬L&“†&õ8XÆ_¯¬4»¥Và—^’"«Z÷æÏ?«Aø›m_몃%IAV«Ýÿ x}N§^ýùà ­XlÄ€Azã« m2_3t¨‚¼æñ¿wìÐþ•+ñÅÿ(¢[mwá)·ßîQÙ!!!r¹\*++SPPþùÏMzï½5úóŸ_ôj[cbb”––¦üüü&GÍö”)ܤ UȪÚÛ@•ØJÀ„` c3™L ¶Éf òè–G&“‰ð èpN:¥èèhŸËq:zåW¼Zw͆5ŠûaœR·§Ö„'·ðܹ•¡·îuÄ•Ó{¬r°,?³«´¼¼æq^Q¡\.CVK róójBpiE¹lÁ!mò˜ß>s¦nŸY; õ/çÍÓ~§S–ÒRÍÿå/5lØ0ŸÊ5j”vìØ¡‰'jîÜ¿)==N™™‡•ÐÇ«òƧõë×ûe¬ác‡+ueªâ+âë$wÞ:2® „Z³Ùìö?0 #Ú»w¯RRR|*#??_‘‘‘²Ùlnßb©ÚÂ% •Ý-[Q½£”<+Y7ßw³rss[_ñÉ'+G‚–¤3gêÿ+(¨l!^´H%-ܲÈ£ÇÕ×÷Iª½xÑýjÑýÖ»FxWúAž0®SžSááá*//תUkµwï$eeݯ‡zÓëò¬V«úôé£ôôtŸ·ínúö¬½V»@šqå Þ:0Z‚P£úÞÀ¾vMOO×€p—Þ_ñ‘Oaí\5t¨&?ÿ¼\ê6}º_Êü׿þ­ôôKUÝ5+ë^=ôÐKú製.sìØ±~$ëÅß½¨¢^Pα½ôâK~¹¯1Á 9pà þø§÷%Iû÷ï§B:¹M6hÊ´iJOO×%—\âSY.—Ë«[+ý~éïY5˜Uõ Gf³YÓ§N×ô©ÓeŸo—Ýno“õ¯MÛ¾Ô‚çžWßÐHî?P‹vúVûs³õÉç«Õ×Ï-ÐgÓ­3gêÖ:×ûÃóϨ¢¢×ëL‰ô¹58&&F{÷îÕ§+Wê³V¨K°M?ûå:ԳجV«ž]ü,oMÈÎÎÖâÅ‹%I[·nÕ7^GíÓàÁƒôüÜ9’¤#‡R!Xnn®}`¶^[¶Ôë{×uüøqõêÕËãõªpõïØØØzóØfë±Gzé·¯ëĉÚþõ×r:œºò¾Yº³gÏNŽ}þùFíÝ;I ‡$òµ5xí?¿ÐßÞ}O““´äΟ«´¼LË–¿§·Šò¼ Ãh,66VóæÍ“$Í™3§Cì! “[þÛ%úàWs5oÉR=¿pÏåeddh̘1>•‘““ãS·l§Ó©€€€ó†¯ös+j{÷òË+”—·¸‰9‘úúk“Ç·;ZûÏ/ôá{дÁ)Zz×2W VdÓìknTqY)a„`T*,,Ô ?œ© ¿@ÃPE~¡úN½R½CÂõÊÜd6 íÙ—¦/Rrr²Çå———«K—.>mcEE…O­¾ÅÅÅ á>7mÅ„ µqã~9 è¡ØØ3nàÿÛ²EXºLÓ§èÍY¿¨ ¿ 5†g?ù„úöíËÁ! ³ Ó¥—ÎÐÅq}uá€5Óõ£K’ŽŸÊѻݫìö=}ϲ¢¢"…††r°Ûˆ'ž¸Sü¤ÒÒÕ«!Ÿêñǯq»œÜ'erêÛ½G³¸.[— õ‰é®ÔãGUèç[c¡ýâ>ÁÐìÇÕÒõ«UTZÚhÞ +þª¹ æ{UnFF†Ï£KÛívŸ¯ý-..&·!6›M×_ß_iu¦JJZ£ë¯¿Üír®¹áz½þ‡w´WeºwÙ«Ú¶oo“˹ Cÿß&ݽì5…Œªåý³†]p’h €?~\C† ñ©Œ“'Oª{÷î>‡àèèh·–u:úë_?‘Ýî¬7=--MGŽœ®7-22\×^{Ú [ƒ=m®¨;ï¾[ö;îÐ{o¿­?,{U?žt±Æ%¥Èeúû—›õùÞݺµìɇ¨x‚ -š7_wO¿¢Þ=m«ýêº驇ÕÂ7ëq¹†aÈäF7ÕÖBp?o'äIwècÇŽiöìíÊɹ¡ÁœÏ$]]oJïÞo‚½TÝ|à@šœÎ¤ªVà7½.¯a~ï­W唿  ¾‚‚}öÙgÊ5Jýg»Ê*ôÜM?Ñ«ÿX¡S.»œv»öï߯={öhذan—{êÔ)ÅÄÄø¼}yyyõn—äòòrY­VUI£Lm4ÍjíÆ äƒêÖàÌÌ©^µ·†ï¼ûn*„`4®õÿ·¥æñü¹Ï+óD–²ÊK4ïµÅ^—›žž®¤¤$Ÿ·Ï0 ŸËðõ^Ç8;ª[ƒ?ùä]ýûTÁ8÷~zÏݺjú%Zúîï}*§  @aaa>o¯Ý©ý¤qv<ùä,ýä'?¤"@Àù£ù¯.Ò…#Gz]†ÃáÅâûGËüü|…‡‡Ÿó:0ŒIgL-k4Íå*ç„ñQPPú÷ïKE€ üÃ\{-eiI·L™6ͧõ=ªÞ½{û¼'NœP=Îùþo•äh0u·¤eõ¦¥q²„`ЖpÝàÛð1p¶dffꢋ.ò¹œ“'OjìØ±>•ár¹<¾&84t† îi05OÒcõ¦„‡ózÚ;F  !ðâ|±Ûí~é]QQ¡ÀÀ@ŸÊ())QHH!þW\\ܦBgaa¡Û÷@]¡q®:tH ð¹‡Ãás+°TÙLЮ €ONœ8¡aÆù\ÎÉ“'Õ­[7ŸË)**òh®ˆˆ%&îÒ A×›žŸLõ§sÀB08ZšV`œKþ¸¯ou˜îׯŸÏå{Ô¡M›–q B0hËš ¹-à‚ÂBÊ=U¹~Y™NåæJ’rssµsçN•—sT¸Ç0 Ý÷ÓûôÓ{~ªØž±Ú´i“Ïe¦¥¥©  À/åØívॲ²29Syl»Ý^óû¶mÛtÅ3Á íhíIǎח_~%I:súŒÒöí“$ÊÈÐ'+WjëÖÍ~ÙŽ½{S•’’ì·ýògy%%%ÊÎ>¡þýûù¥¼#GŽ(<}šßêîÀƒøàC¿ÕÝê5Ÿ+"–×­[7]uå~+oêÔÉ ñßíx†¥¤øµîn¼ñúNSwþ>ïüy,B‚ƒýZwc~0Ú¯-rmù5lÓ°a)Ô—ç?Ë4p "£" Á ý‹ŒŒP—.V¿•7`@¿nŸ?Ë ê¢^½zú­¼=zø÷XøùfBBŸNSwþ>ïüy,,‹_ë.::ºM×?Ë °XIÝyyÞù³¼°ð0…†´ÿ{p›ù³è,h š4i¢¢¢¢¨ˆ6àš™WS  Ôa ÒŒ—Pm@Jr²¬Ö@B0hÿš1çÇèÑ£¨Žê°Z­>|Ñôîß!öƒîЀNƒ @€ !€6[$€Ù‚#k~/-É£BÎqÝSçœ÷àµÀk ÎÓO>ˆžŸžà¼çµ^ þCwhÐ,>øS÷¯ê¾£!: B0p ]B€¿„`ÚÆ’Z”VàóSïÐVÞ§:Òû!´ÀÀç§Þ€|vиýá‡[•Ú;Z‚@«‚pþê–øs¯´$nê¼Ðÿ‚@‹aÔ=õŽuß‘ÐÐi‚„`Á‚ @€ !‰-8ÒïËzRf[Úß¶ºÝm¹>¦X¨€Î$KKò:TvwŸÚknËǬ=œK@]´tð\Z’×èßÙha=×áÊ›íjk­î>&B0ü€› ƒtcÐÑ€°\Œ>®þ½¹.Õ [2›jÙl®µ³:¤·ôü­msÃmmX~SÏÛT9îl¯;ë¶´_îìCsǤ©/5ZÛNwŽ7õÑÔcOë8Ÿh è䕺«¯Û•ºáô–~6ìŽÝ0øÕßðqK-Õ ·«á²Í=ose5õü­}qàî~5÷Ü ÷¡©²›ûÂílíØ¸»O-•ãÍv„`tš€Ý\@ód]o–m®¥Ô_ÏïÉ~y³/Þngà íïrü]À¹@whxÒêvùmêgðÙÖ´Ô:ëNwì¶r Üý µìαr§œöRèÜh ÀY › »R·•Ù\WeoFÐnkûÐÔ1pw¹æŽ•»å´—ú!LKA¤¥½–®Cm© w[= ÐM=osËy³LÃ::_ÁÍÓçuwù†]—½Ý?wË!ø¢= ;4@' ÂM †ÕÚHË ÌjiÔàÖ¦7wjkÛÑ\8km@ª†#7·^ÝeÜíöëiùîîCS_x²žn‹»ÇÊ×íÁ8ëAØÓåšû½µ íîó»; ’/˹3ÍÝ}ðv¿<°Ë“uÝÙNoöÍ×}"ø¢= ;4€ !B0„`ÚF‡À7}E%ÐŽÐ @€ !B0„`Á‚ @‚ @€ !B0„`Á‚ Á‚ @Fa³ÉápR|æp8DE€óÎB 911Ñ*)-‘ÕZ ³ÙD…ðŠËe¨¤´DݺES€Œ¶+8Ø&³Ù¤ÂÂBY9UxÇaw($8X]ºt¡2!m[PP]t\ £ó0›•™ù­¬A¡T€s¦KP¨23*ÀÌŸ"pîк“3™Ì  Ö¾½ÿQ·èh‡v“½¢ˆŠpVY»„ª¼¼Ti©ÿQß„Þ2™€Œs À¬ˆˆ……çkÍêÕJIIVŸ¾ýª#²$ƒŸüä'?ýüSúîà~¥íKUÝ¡€B0 ã ¶)¾WœÌf“Òö¥jÛ¿¾¦RœUáa¡Š‹ë¡žq± ¶1ø ã,r: WÎÉŠî)Ã(WDD¸¬V«b¢»ª´´ŒJpVÙlA •Í$“ɤK rs²&—ÓÑø•É©¢RÜRTêYB0*Ù+JÔ+¾¯Ò¿Ý'ÉPXX˜Ì•÷¶QAÎ!“ (/¯@yy§ÔÀÙí¥–êÖÕ¦gìŠé£Ð`+ÕšÀ%*¯p*.&¤éO†aPKœÃQnœÉý¾Þ´ [¸œNCÙÙGURZ,—ÓÉd–Él’ÙdªüÝ$™L&™L&™Í&I&™L’Ùd®üÝ\yuŸÉd’QõaÖdªù\[;ô¸©êJ@C2 Éd2d†êžzµ 2TU Œªy¦êejWaT.­ºËTΪz\5×0d&ÉTõ†Q³^åï¦Úç¬zŽÊÇFÕt—d˜TûZ1ª~7Õ.oÔ-YŸ¾¶@IDAT#ºIFÕ9o2™j.w­|ÍH2L5e2d2*_K•§bÕ2õæU=®ºfÖdªù­¶™*§UÏ3™j~Ö®Sùz4UÍ«~}VÏ«^°zkŸ²zùªÿÕ›W»Fõ Z’K.™ ÉUõb5\FõËB†á’ — ™ä2 ÉeÈ0I†Ó%—áªyÍ» §Ìæ…ØlêÞ#Vfs€ÊË ›¬óÂâRÊ/W…ó4¯K Y1QV…4qÉUTt!¸³†`ɤ@«MA5£²Ö‹oUçEÝ@Zý‹Ñ`™:S,j4j‚r͇}S½Çjða½öãyÝÇõ’@“å˜êÌ«}Þ&ž£N9õË­šR÷9êÌ« $¦f£C«ù£ö›Ú×Ñäãú¯)£™Çõ_[FÃ×R£çma;꾎ë=®»Mµ_$Õ{×{^£Îk©áW~ÔMÎMLkúõí2œrØËd¯(kæ½ÀwQÑ t‡îÄŸàe¯(‘½¢„ªÐipO !B0„`ÁhÃºÇ ñhúùܾæ~B0|ÂmÁɬýMB0Z š­áîqCjþµ¦›[®¥2š›W·Ì¦~z²>­Ç@çÒ-vp£iÜ'­ê7¤^ËkÃÇÍ-ÛÜïžÌkÔ›zÞÖÖoé¹tܼfÍѯÞtZ‚Q/dú£œ¶PÆÙ,@ûÀM!ÃïAØÛç¥Ë2à†­Àݡцx5º,ðGî;X9Ùê-CK0…Q_Zc½Y—Ö_g#7Õ%ÚdµÕÁ9寙Üï›   []_^ð†^~åšé//x£Ñz<|“e=òÐýM.×R-Ík8¨Õ#ݯG¾¿Þtw×on´oÁ¡ÑÊÊÎÓwß}§¸ØH%&&Ö<®Û%:*:AsæÌ¡Æ:8—Ë9§¬$¯ÙùMÓäãº?¿üò_-`Izù•7´rÅj–­»\Ke´V¾¯Û×Üú:vŽ‹TX¨­fY[p$-ÁAK-ÁþD++€¶€URtªfù¨è® †ÿ4ì ç3ge7îKKp'p®Z‚ -àº×ÛívuM¤%Ð1p\ldM>|ø˜ìv;!¸30™¨.'&&ÖÉE’Ùl!w.—“JÐ!å*.6R=c£Üz\­wïx™Ìf® î òóO¥y’T€NÁn·+00°¦+tŸ¾}MKpgàtª°»dwð…€Î€>&‡ÃQ•‰$»Ý%§Ó! ÕÓñZƒT({…C¥¥%2\†""B©–É$åç)Шظ^êbµ)P†þ?ƒ¼èT‘¸ÌIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/manual-source/_images/winwithgraph.png0000664000175000017500000015337014126044351022472 0ustar00jssjss‰PNG  IHDRUYÎ(ˆ^sRGB®Îé pHYs!R!RsëžqtIMEÚ(æ:ÆtEXtCommentCreated with GIMPW IDATxÚìu|GÇgövÏr’\Ü<ÁŠ(R(úm R¬·àîRh¡xB …"Å¡w×à’ˆ_.ç;ï—\.—“ݽ½Ýß›Oßcwv|g¾ûŒÁ×Ùñ"R$„D"CˆDNœÜ#XB|…\Fº9`Xú’æf!·>‡JcÒJqÉ .9•²>Bãi49ZÓçà"Rä%”`<\¯Í1’ÀÁ_éêì![='tCL!£` ýØAÚ)®¤BуÔ_NÊËv}€ô¼…†t"H+ ƒ²t¹NØîŠ‘+ý5²íQÞ¹kÄ¢+«ÕÓè5èØbÖs!Ú%I%ɈI.!êbÑ &¢á %1.ˆœP*î 1®Ó(9³ßÇaa€\.”Ò²Cˆ&º£8ÞÂ…CÇÖ79.t/ï¥ä ›ˆg\N°Ó}–øc¥KFìTrîM/½ § —1ô¤ÑÀJ…"!&Š :u‘¼–Ð$½AŸ™‘®ÓiMÿäŠä£zõœõt¨XB-Îïà⬈IüBAle²>Èæ ‡ ¶ŠÌü·“d…ň~ ñ*ÞºÜüºÆ?6£‚е‘ùÈ:,V¤Da ÃÈ „ zPèCˆIƒû£‰iµš×o^f¤§©TÊœµP(ôðxz*BBÃ$î»°¼±°äÆ„õعä!­‡i8¦i´ãsÁË´,i;§a–÷mÛêìß6,ÕagjÝd¿ÇB.~ Ð…š¢…¿¢ùeç’Â*¨h‚ùXJ”(Œq12¤Q¡ŽioÎ_X™/”JõßV6lXƒ6šù'O›6›‚a¼sgç–-ãg?žØ‡÷ÉÞ{òäIzzFv¶Š$I¡X,òô”GF–¯T¹ZHH"…¹Ž"ÅÏqÅdEнÑEÈj ­áÍÒ‚€€"Ú9¡:fXÔ, !´XÐ] «ÌWä÷ÑÁ»3ÿ˜¸+~*nfC%/JtHÉu)QÃBdB‘¸ƒ×²|ù:÷ïÇ'$d›º;„Ä€Dƒ!4mÚ1ÃFüÐÔ>ü Þ¿xvûÖõùùú5iÚ<(0Xáí­ÌÊJL|ûðÁ½óç/¦¤¦Ö¬Y«bdeÄÍ1(NªrGÈæÄ,È &´f¦Ñ‹ÚGŠ€…è Ò¶\*†@z,³Ý9Ç9cA;³n-fÙÈà *M·ˆ~•¦«þ UÁõz\Îá’’%«g…@Jư„î ˜ˆrÕ?ÆI’8ÏD~ƒƒpüÄëËWPxxµï‡5¶‹©/==ýÚÕË?mÕ²U­Oêšoy{{{{{GEE?{öôÀþ¿ôz£\æˆɱž‹ˆUÂL€E‰€4Ý~<(QZa/pº.Øís³á„6 tM§X]¤—C.ź['´ˆØIz©†?\{ÉYöëîÏŸ'V¤Da »‘Á„T®\A”KL$LM'„À@BI†œ¿ ‘ ÊMŸÖL$âÙ‹ªÁ@Æ=~øðaÜ—]ºÔ¨U›$…ÿÊ•+×»÷·ÏŸ=úô±Z£±±D!–(ìýÓ¦ûÂ.m^t,*.mº¡ÄÇùé†Ü¶”f7ΰ/qŸÉ„ŽYw%´VUxQZR0DɵeT[P^ÒAcˆ ËDœ%†/¹ŽèdbV²¨ð›ƒJR.)ð‡XoÑ .8ãp'°‰1¬§èÅ‹V1yñâõÈ8²ÿ•)LÚwïd@PŽŠùÈô!½qSúû÷M‹?oámT±Œ´7oܬP¡BDD$IÚ…P…·wÆ ïÞ{V.,<Ìuv¶¯œì´ÂÙUNvš‰ö¬Â2ÿÓm¶>h2å^4ÍÛG&ó‘Egro@Àt å™N̵ò@KK™ì¾üÐf \hhÑ4ÕЈ+DÔãOsÛs‘‹±¡5ÃaXȽäJܘ/`wÎŸË eµÓœöWò>° È›7ñuë6š@ë\½b2ûb[íËÁ²"ÐàØØñsç.D ÿ~ÈÒ¥?.YºbÖÌ©þ~¾&>±I …1ÆüàÀýVý´Æì¡ëC7E¦‹ß|öìù³gÏþyób,YËidpeÉãÑc´zdÐkŒ ¤LÜOfPáiy"Fx@ vøéxÁ' Ú$u:ƒX,ðùY¶P3Ô£çfX´¢=ûÃÐ&:É›ÿgê¼MóÿL“ü ,Ðîûü?Kš²µ§/È›?B«è)ìL’XF åj̓ˆUo?¦ù®8…n)/væÿ“:ÿgÿ¢‰%TìÆ!ºùi“ŸÅOû¦uȶÙÏÉËeï;%·¥W©D6w7¢V„æÿ!fvd«¤©|4;«ÈçÿÙ aC!Í›·èÜÙ çÎ_˜1}Jÿ~}Íb‹@¬=y¿dé óƒ&çÏ_Ü­Ë—þþ~nÆÛLµlùÊsç.|Þ¢ùÉ“§V®\ýý°ÁÔ™Ê ¢>Jy¡S ƒƒ% ?™!>ûíÝ´G2BâïÛDH«"¾ƒÝeH/…‚$¡*'[*•[Þâó «aƒ^1žT*ƒ†ŒE½4-ó¡™ç(>EË™™©FÒ8xð„ÐÂE˾ü²£¿¿…È ÌqxÙÚìë‰×ï%ßìxºåBÂ…`q€‚ÈÑaFÒQûK’F©DÒ a£»wïgd¤‘ö¥Qçܾ}·ZT´—§§½…Ê&rK¼MYÊ®cê-ý4_t5“UÏmºÌ37æ'ÙŦ ÑnAÝ󆛓a0³›ôoXÞ¤·«š“°ll´ÆdÛ6»Ñ2å.BÜ#F¡äíÿçlW=‡á2J©Ý]ø?à¶?›Á!ÒGÅ Di·DÄB)Ó®NôSjÎ7ª~ÑßrÑõ·ž^˜…E©=tü\k¶J-ü9&Ê•+Q$v1†Ý]ºôoß¾½Íq4¨ÿÅ‹§|}}(F­:ÓÞí£/OŒ;=9Ú'zbýQvw“ ¤çzŸ”r "ƒò0¤7B>n  G»výêí[ך4i$‘Ê »Ñj4×®]©T¹få*Uù8àÎÿ kA¹x˜¿ÿŸi@ån ò§ÂÜ#+òçÿåßrmþŸ“æÀæŒä²]R“E©,O؃TrÒˆ:t¼'™­ÊB%ÆÐæL0HáYÈRaÙöˆYuAÌ ¸cþt¹×DÔ÷ÿc²1×1+ôÂÖ>:û=9ÝYÚI.lqÖdA§óT m“™¡Uä°%¤’?öæÿQßAÒQì;wÞrïþlH‰Â##ÉœÌÿó*ž§?×4ÃOŽ~¯~?¿é,ÉI IˆóãEÎ$iÀ Aõµ0 ;zäxtõja¡a|À4]M§Õ&¿O¾ÿAý†MË—//àFƒŽÃ:½IÞ´>‹ù¼¼ Hòïü¹æ~æ»ùs]›ÿÇd¡Ÿ¨è6t“ìY ¨ìDãÄli5êÎÀœVÞRáWf­Q§T’бøJ±øàÊ oÉÀ¾N~ t¯ó(b)QãJdŠšÿ8• ,ùX±D•:dÄ‚€EÓ UO ,IUå£[S÷ØíÅ­‡@îˆC Æ>P" ~n%?À™þqËrý‡y39¤Ó,Ë™§|¢Ü£" > 6  €„^¯Ï½‘ÅÁ•oÊ=›Z=œçlj|÷¦ga¡ÈæG±àa ÿ裼` ¬æBY“”·r6ÿßù½ç»…ægaÁØ TðÈ%dâa^b†òcj1)¸@*‘U,ó3™ãS K-7»(”YæBÐ2Ž!Ë2±|Ö*›-Ê,FX°HsÿÌËÊ«bÖ¥R@J¢@æYVëÂæÄ‰§5[rB‹c9rË™ÎI²øô±ø sÛ°ümö°ÚrßÒ@ç»Fò¼Ö3ÿ³ æ­òC–ဂ<ÜüˆÉo„,ñ¸—Ô‚k ó;³ß¨À…rÊ"dñÏÜÿ7÷ëÐFì­Ï¶`ŒQÞÐìÈ`0 ëÒÌï( æp/Ys’p7ŒÐÜÏ,P«æÎØì‚Ç ÍWްÀ&ÐFöå÷k¹ 4 }AGÀjÉ&ÊwŒ@Ã7sà ø„Uâ…ë½@ t`T ö1eS ¤úñA}ë—L2‚ahk”-(ž‡”&¡AºÆJ–CšI€ *]ËdœŸœ8qâd·bm`1°ÇQ±bÒš ‰è&ľïˆY~ÚÏRĤ˜ ÌJ€ Ë(ÿ& feî ‘@ÏÑIj¡|Dtö³‹h¾pË€ò€t5ÊÅBR|€3ÅÍw-­;¥n¸8¸ ¸e,˜hC·×"ÚÅõ_ftfG®¹Ñsн 3Ìq‘¸\ðÝ•£YJø„?ÀürbXoPAþãôŸér Å;4wyróy±…>PèG‚B í:qô,rÂ/ï;sM¡!†T]¶ °0AÒöÑN;>iy^‘±[Ç‹8\àÜfàfàc™ù8ìãÈUáEZu9•X ´Õ¯"·ùϰ‹GvQŒòÐvŒÒóÈÂ9M_¡3¤‘pÐù| Ä KÙ;{Á©ÏÈÍ;¬|\o+3Z+J³÷ÁRbém ã®Å”s¹¿z"ÖžDÿÁ·‰“3þãô_¢@`ãtÈ Ç±j´»?½m¶‚ÌâIóyäŒ1'…£“(´Ð¶qò™pZJWg3u(¶ K'Ûû';4P3„±1·2_‘aË(…Ø|¹7®œ8þãTº:!h«\æ8öÌ”gYÁ"`A·ã ‹DèÑKÃÞ`cÆóš‹éÝaá9TŒ‘¡I{Å |l0_)Â>Àü8ÿ!º¦‡ÔÛòŸ*eªé¢ÕVd–98+7¬Ä¡ðS¦+즈VŠÄOÛ=¤ŠÙžæ¸rˆ%Šœì4ZìæÐ7¯œìtWìð™ØÃ3G•Î ºM×l/ï¡4‘ϕΠ2yÞéÄA*ž¹ݲÇ]QžsoX?ŠŽ!Ñba>Plƒ¼Àý?ŽüþãB–üÇD…‘Â}„DÝg7Å¡hà¯ÄÔ h‘ð4ó5‰B•‡w%b\Ø®ÖÔÆdÑÛ,È*ºŽiÈîšo¸zãOKa׆ŠÜKwœ:ÌšI ¹ ÄÊa§Ò/œiý°vé!õQ)S¬îzH}òH"…õÃäyžÏÈÓu©7Ý@UÊ˧òR„,“f•"«[63H¬eB,ý±™Ÿ…/Z>N?+líW„€J™ê!Q¨²SMW=$¹vÙœìT€Xâ rM€ùÿ4ßµdTî¹WÄEžÿiù—ˆ=9ª4±‡g´Ï†®×GÊ[ÓÂAF™®Ì±ë1t…Ô†ûÚp½‘K”ÄFHlBì%ÞEs+»ûå 7e˜ëAaN#÷¢q¢ÄlŠ%râ¹™r bËÁAŠ$Ðk:P×â‰lNÓòz«òÀN,ñÎÉNÍÉN5ý0_±¼ë°I¢Í–ÍÖƒÎÄŠœì4ØÃ+G•f/:gß-¥¡Zd TáþºhLµ·ŠƒÎþLŒ}Œû¤’¼R•o›"Æí¹ øJó¹û8òãäþcɰG/,›!ZºŠ^fÖ,ü_×}f|—Õr±9.œê`wX;ÀGÃ3Û1‹qA£ (¸þ”]tºD„,@¡ÓþÒŽ-k»û•¶.­ˆFwÝœ-¹!ŠøJóqØÇ©”óE¼`…ÌŠ1íñœ›RäJÜ çIQEÉÌSX­Ë)ÔfšG‡™¶l0ãlá m4´4r±É‚îÀA—‰ÐAo !«•Áq‡ãò1|ÿ½^ {F äž$–6Fn¨A¥Šù8ìãTìüWÑ­È ¬$„n‰§E%ó„HÛ h9:Ì­Y³°ì,4v/ ²ƒ€–‰ ²°k³Û¹ÐI*vPôå.M WÂúi6öàF®'±œW´F% :pØÇ©˜„M0î³Q±î3Å\KSœÙ½û¦RI©[ ¶Ò…òàÏÖt#” ¨ð¡ÓôÚ@GØ4Ò°æ{BN#‹œFˆîˆº§È¦kDË4àà¯èÀÉÑbùÏÒw6}ÎÿŠŠðØ+SûÉ “@Jéåe×VEíÖ¢pí]´zÒ¶OE^8}Œr£ýÏÞx¥‹ÜcIZÀþü?wp[)b1t*Qbœ–k郭Ì7-[öV)SM;&räm/ÈÆÚ[ÈÉNµ^ÿ[P9Ùi&´Í„Vk!hZí¹ƒ¶¢gå£a)džóTp–º3'B× 2GC³ w>?+nî@E›‹J"íqÌÇé#7þË©8«Å;ÐÝÁEú`‘ÇSöÀÒSB¥%ŠksiTä©.FÚc'H:gÑqÌÇ©xÄÿr*Q¢]Ó ÃÓ2¨WéC´ “xiZY;³×³G€Åâ=*¦À‹õÜ™vÎÈǩċã?N%³w„°Í=8ŠÈü䯣»l±­Î ²R(Ü;Q‚ ±ò(*Ý honÉÕjN%—ÿŠd¾'NÌØ"ÀÁâ#B`ÿ\'öŽá…,äMYéõàÇR…KIl>Œ>ž2à€ÓÇ×·rö?N–H"tÌ…€öäB·-ïeÖÕA÷zÏ¡¢{CB%²€Üléä€ÓÇ%œ«ÄœJmIa€²Np%ÆXî Ý8ò Ýû‘Ÿ¥œöÜ|z-ú¸ó1÷˜ë49}$üZ(qYó_V)©,}¶0ÃmÓK Ä8í­)¢½:À »smƒö•’’zóÖͬ,%Bˆbü_€T*­]«–··Â}5»ø+ÌG‡Îˆ¹ßðqúHdÚÿ%òÑôè^TtœÇÍüïÂßÇR˜¤‹>%¬<|x'ºz=ÇJm¹ÚVZZúå+Wüå2+‘ÉÌÊJN~_¯^]//¯’ÇK¥V{=âhÓ[B±'4õjU†¥QÀ`DB¡È ×pôŸÕGZ +a1ƧXê€EFƒ–rjJæ^¾|E¡PˆDbVçc0´F£ÞhÐ+Ùá”Gõ8q¢ØVXÚÿ,¥Ñ¨ãâîEEÕáY â¸àɳW&NÈÎV2k(/ZQ.Ô1Bˆa<» “IÒ€HÒµöòÑ£GÞ¹}ÓÜL¿ML  °éþmbRppÀŋף££oß¾­V¥#Ä0Æã <¦Î¨Ód“túiʼ‰O=ê‡ìì,€N¯Oùègåìýû™\zõê­®[·N•ê¸7²Y ‡;rÔ¨ììl€N§OIùhåìÃû÷2¹üúÕ«ÃÅx8Ä»wï1yëT_|ñEHHH«V­NŸ>}øða‘HÔ ADjŒ½}¸aÂÄ»wïnݺÕÛÛS¯ËAŒøL¯7<{ö¬råJV×SSSÃÂ+,]ºpð E€"B‚/ÎRªvïÞ}þü…mÛ¶†Ú²eË6mÚ@`t³E¿(pÊ…m•9ÚãÄ)_"«ñ_+ŠåmÚ¶MÊxSí“HáÝ»ú$Ô¯üßû÷iÔYú~½»té’½†¸¬ñ­0 IDATvíÚR‰À#"Nöí?óôòô”ÉB@«Ñ¦gddffU®\ñëÿu  ×ku øÊÄÎ]{?~j3ˆŠ#{tïF%ˆ‡E–Ïå?‘‡Ç3eÅúõëcbú2 Ðë Ïž?«\Éÿ•©°t þ³PŽ^}?ùqÝô¾-y8€ÄœÙs—.[*“)*FÖzÿDáåOăG×ärù²eK¾êÖU«Q"†6È"å'׎ÏàP'çüçhý¯yÐRÊììêõ*~=¸Máe¡ž•@oÒ%)_v°€„û™ŽGyø|qß¾½wýù§€Ï/|W«Ó5lPÿÂÅK–#IÒ WÓiÔ R©Tx ¦Œ 7ý;#Ó°rCrÏÞßš]\¹tqûo[pŸ5wáÎß·Žÿ>lÖ„²ÇþMëôí"’$çÌ™­UgÒmFqB¸qãÆ_ýuÙ²e6ܹsgþüùZ^À‡ôƉ Ðj5µ¢ßö3Ýüs×ïëYݦ]ûððàîÕ¬­²zóÛúóx¼=þ§ÓdÓ­ÃÕ–«Õ}Ä8À“[7âÜ)nhx™Fí;ùqí‘ß60ÀA¸y¾ÂG 0`üøñŽÓM„L&Û¼yóªU«ª” Ø17æÅÛ”.£F;¶{÷ÿ9~6;;û³Ï>3f ³—çÊ•+Ödg§Ä´ ú¡CGegggffªT* äR)BÃ0™L¾lŪéSc©|ZÉŒY³ÌŸ_£uÙï7·ö‘¾{šŽððÈ}Å‚”xåå?ŸÖ«WwêÔi“'Çê4ÙŽ¿a,êfþ @€ïÛwààáceÂþøâs©Tb¾ûèÑc^_¿~Ý'OžÍœ½°cû6;¶×j ´^œÂAܹsO*“V¬˜ÿ ªTf3 ÂhÐ 6ì§Ÿ~ 8pË–-k×®­X!R§U1¶ñSUF*:´ñì“&èÊ?æF ›“zÕëþÍJ ûJr4Øà)áO•£kÝúów‰ú÷–œüæöÝóiéï³”é¡ÁÝ» ×hÕ11ýΜ9»rå ½6»Pþ0¹¼¡Çyœ81^¸Ñw<ägO²ˆÏò;Ì‚vš†™¬|Í$F&%½›4²ÿ¤ý ßܲóÀð‰  (ð1]·nÝþýc49™,æË›ø×qTãƒ_4SìßR¥u÷õë×oýEs{¢»ã¯¿þÚ»wïnݺÙtpæÌ™V­ZyÊeêœ Ó¢×éZm¾UchLðõ;Ê­[6öêÕÃfÇϬ8 ·Mï˜ç÷îüºe‹Ípˆ$I ³4ÑÒåË—ì%óøiÂ׃3×”-[Bz WŸ={–––V·.Ý)üÎéµãäà߇ù|V«U*•*•J.—c†ã8A|>¿R¥J'OœrÊBB ‰éßïÐÑ}—7 ®”»ÉƧŒz ”Ÿ|Ò®\ûѵ¢[…-›³øõ›WëÖ®ÓiìZa5õ£Gw£¢ëà<ž³œ@€¯ß°éÎûM?kdµÊ£G˜;éÄ­¤ã{. õ¬ìŽèÖ©Yíëέ•© æ¿ô¤Wƒ zúô9†ñŠ ¿¾h¦ ‘¦§§ÓÄ„ñð—/_]ºt©OŸ>ö¬AüñGïÞ½ -»qöôôòòRøøøX^ òØkU×*ázùûÓõçêÕ«C‡-ÜçI¥ÒwïÞuéò¥Ñ`øql×@ù̵‡ïlÞ¸æÅµM»ö¡çÏ_ø…SŠ-£: U(Þ'%mÞ¸Þ"Ü¡—ÏŸuöñc––ãÇ;vL«µÎ‰Db0ºtéòî]ÒÔmêV+óÛ᫺ݠAƒŸþyýúõú÷£ŠF£;v¬ÕZǵ¼L’4ˆ™cX´†¼}›Èãá¦Ñ^‰D"d2™T*õÈ“X,Æy<›Ýʳ0òpþÍ[wÌŸßwySOÿ<÷õŒ†¦­ñáù„Ó[>¾”¸yÌ¿ýW4ï2¹Î¬ñ3;vìX©BY{ËAp4UEÛûð°7¯_<|¬ég<<Ä6áÀ³0J¥’zu?ÙàPÍšÑþ~N×jðpžÍ x<ž-­€…‚¤²Ä ×ôéÓgÉ’%>¬R­ÚW_=mÊä§Ož´jÕªgϞ˖-óVÈõ:ŠÓKC@€´´4…B-:A±Ô|Ddì±…‡âNMl:´WÎ Z „NéB,3KµtÙÒþ1Ó~û}ùò…[ÃBË]ºòï’§’’b§š=}u“F_df¥;ù{‹fÝbc§œ;÷/ÅiŽl/«à`ާ’jÿ³èÕqq÷ŒÆbx]­šZ£‘Lþjïï}J 555#3'+[§Té…"9ݱ?±°¿oÿkÏ.Óß›7¯6j\·~ýû÷JĸPàê.¸<Û¶m½{÷¶ç`Û¶m]ºt ×ùµ|YÑŽÕ媄ž¯rÎüW%ôüÏóëצ±ç-Ý:^vIJÕÐ?øšÿ PÌôyjÖf––æÍ›Ï›7Ïê¢H$"bèСW®\éÚ¢FÏ6u®Ü5Óñ  À={öÄÅÅýþûïtC¬7[Ññ”Óþm1åôçJ”èŽz.‹ôz=A^^^ …ÂÓÓS.—›(P*•’$ééåi× ‚@€OˆÆ[£uYKË_ϭH¸€Ý"|ÈÚ–Ÿ|x•õϦ{aQ>ÑŸ—™0q<Î#guàÑ£»†B Eð‰»ö” ³gù³ýeâë²k×_ß¹] ðßÿØ]8KÙ´æÁsf™B¦½qQ7wî\ÀêU++Vª¼ïïCcÇO …;vì¨T©Òæ_·ñ…RNPð͹fÏY°uÛv:sÝ»bnñæœZ¹ûþáá cÖÉ›Q­¬ä| çïÞ½[.÷~ŸœÐ´Iëð°ˆ·.î=°mä°éÕªÔêÝ}Hë–]Fï“üþm»6ÿKOO®YëâÅó¯_ÇCŒG!w$ÚÕ,âĉS±ÙÿL2Ë&ÀfRZzf«¯=yþƱûÖ­[›O?nöì™:­Šzp|;±«Ê¶?êµÖ-”‡'wWÁq—fÂñpþµk×^¾|Ù£‡íyo™™™û÷ïÿûï¿]üÍQcç%¼O±MŸ(wîWÊepî¤`*¾1¨e«FI<=#ªUÏ¥‡Õé½*3Ò='˜TP7{ò ‹Ï‹Å«V­Ú¼ysõ !Ó¿k—ø!cÄâÝ<ÿ믽¾¾¾«W¯Fl첦ԥèI Cû!€çËn ô(îþý8€Âçóy<žP(”H$R©ÔŒ€'Nœ(¸nÔ:Q†?{þâÌé³ßonmuëÆ¡WÜ·»£XžËµ„ï[oyÏC·¿n=¤Fý®åW<ŸàïëI’F{ÓBQµèº¡ÐÒ,að}ròãÇO¿øâsêðgRd…ò'NœJKM•Hä¤ýœLA<}úÌ*›he4á!‘SÙ+J¯×tìØ¡~ýú—/_þuÓÆaÃ8hpë¶mgN›vîì™ï¾ûδ.¤RÅHNÅ`ó)µZݺMG3êíÝw aƒú=È3*/=·~ËÍ=ý>ùzDØüÇŽì$…b¬|U'_ð~þü… ‘5ïÜ;ÿý I;woX»iI‹¦í:¶ëñøÉ½¦Û”¨¼ê—9CG~µpöÆÏ·ŽOx¢ðò½páÂWÝ:“F»ûLý²v=`ÐwÌM1Bhõšµ8ÎôÝÀ‰§…ÿ iOqí§¯$¬ŒW5!‘;.#è â€ÆårW9hôª—i÷RT â·u×ßÙJå¡•C)Žº[ð§2;Ò£}þJ­Ö8czØíãïÇ©DB,¢ Am‚/Ä Q^Íûí·ßZµjåogöÛž={¼¼¼š7oŽaà‹ZOŸ¼ÿ>žzþ†¤{OGCŸÿÞ³íÏ$§–?Jë êí‹gk&mئƒ™ÿ6ÏÞ⫞iÉïö¬Yù¿ác\¯¯<O"‘üûï¿£Fòõ’®ÿ•ÑH[°3C™³iÓ¦ºuëfddèt®n0nª?f+2„м‘2+oÝ›·‡;qìÊM[)•ÙAA8Ž›ùO&“Éåò¸¸8¡€ßòóæ¿+ˆƒGøz‡˜¥ðòÖûƒ+nÈ‚¶[‘”ï.K|œ–®õ-#óS:thà€¾¤ÎXØ4“_0hÐi­JáÎ{ž^žV«}Â@.—I¥’;wî5nÒÄÿñpAPD@Ë ”p ôê 4mÚtúu=zõV(¡¡aë7m>zøðœÙ3/\¸P£FqãÆM:…à½NMÏÐ+=rÀô{Óæ­qqË—@-:A±°úò¶5W¶u¯ÞqRÓaÂür-B'±„„/ϲ÷î]:þϾƒGv®\;ûÝð/““ßÞtK  úÔ´ã¦ôë×gĕ뗼½ýß¾}k1HbHVVÖØq“Z­vÄÃr!uÙ3fÎôêÙ]"‘Nœ8•J!»ö?Šk?½Ä•üêì¸7ýCN¼ùâ;å3ÓøÌ‡³Î´7_÷óï5óîÛÓ´£‰Ð–?tiâCÅý›¤ô—o?ÄÄô3PÞÁkùºw‹~z/—;oÎ22”“GúïH « á•«·†}?Ô4¥ !”””$•JÃË„ÙtŸ––Æçó#+”7ýS"‘ü²fmíZÑt¯z= îÒµ+€ÐÞƒqîêõïóõ¿ª¬¬/}Ÿü&ÝwÏÑåÞ>OnÝxþà®+4V©R%ÓOOÏW¯^}õU7 ‚Ÿ&|åë%³lOÜ«äáÇÇÄÄdee‘L÷oÔ¨‘Á`à øÏ”—Ò5ïiêÜ\ºõîX ô9@Ê÷©ìõ™Ví’öüù‹ãÆO<`¦\®˜0vÉÒãßU¯mZð!•JÁ™3g4šœßwlqjû¹yë¦_dÚ›ô,ã÷©ç´1Ú¦Ë1¤Æ+q>ÏÃSˆ”ݸycÖ¿°S[uZ„‹½zýÚÓâüÜ‹¯$&¾£˜^^ž¯^½ù¬)V§ Ö5X(§˜žžQ¿~ë l5~…G"õzmãÆÚ´isäÈ‘_Vÿ;eª©¾µi×îÓÆ—/]òûößæÏŸ¿sçÎÕ«W·lÙB£VZÎÓ°7º‰ ýhÑ¢Ù7}z!ЙÃ(¸ÌÖÔ»ËέëX¹åÌ£!€–^ ju Æ£2ÿÇ ’4à8Ѿõÿ^½~zÿáÍzušL¿tñòØ/;ö)Q¹e‡ªbɼkŸ¿xD|£Ñ@„ƒY™\>lذŸþyò”¡!!]ºtÚ¹k· þ~øáþ8qú˜ìùM‰P(¬õ‰@(tLÁ²òGžýr=ñ°Í»ZcÎëŒ{æ¾Î¸ç#©åßÖ&ÚÄ>ÓË7î¾xýöˉ](&fÏ?·ªU­\«VMµ*"ÿ^º®;³]ûN=ß¿w屢?ïoÕæÛã?þ´éSÅ>XÓ®L¶¾|êîôÓ9dЫé>U½ŒBŒF%F$§¤Òú0‰b(¬ 5j=º~¥€±ÇÛ'þÙ“½ë¾èG§áÚŸÏŸ0a€ @“&SSÓæëX½BȺ¿.¾ð Y³fK—.U©TWiЛo$“É©†W?]huëÔË­æßcn÷Ç*3H…IÇŽÿ3köÒ¡ƒæxxÈ>/ Ðû·ßöŒ5àŸþ©T©"Ÿ/ÈÎVf+•ú÷ýöÛ^†9öb011Aâ/4_I§Ú:þŒAO~Ž4¢Ë®ksô5Z•áÀC!xû6BŒZ@DÒÓ3yÇÓ©T9Ôá Ó32LU{ !´ ‚ŠÞªsª‰Ä¢A ›ó&Qáëz­jÞ¼yGŽÙñÛ¶¾1ý‚‚ƒÍcúÌY:9mJì㸸֭[/Y²ä‡áC Ì01yh#,”dÞ­°ÐÜ+zÝ­×·f?¾Ö²|ãEmbyùeçÉá?H Ë;ÙH$+F^½ü04´ü‡Ô¤‹¶¯\3ëCJÒøÛ©/^>Öéµþ¾A çl ?|lwpP¹+×NDFF"ÒhËJ´xñüôôôcÇŽN˜4%>!aÕOk¼½mÛ¶]¸`®Ñ œ8qúèøjk?@OÀ LJUž¾þdùöSááa»ví"IR£aa¢ªXÅ·qRö3‰È M2@"Pð1ÀSà'* ˜Ö¯=øñÇõÃÍ ÅÁ ðô÷—Ÿ=wX(Äo^?Ÿ˜£Î   ¼EB”׋«Ò5[ÆœÖæ¬ÃE½¸‘|jóýÄ'éžþ-¿‹6_ÇìŸêÆV õíQˆœÜ„mkÁ ŽªÚ³gÏ;v¬\±|Áâ%–wkÔ¬9aÒä~ßöäÙ˜Q¡P¨Xsu>"hÄÝß:ûV_©ž£DÊL˜­!æÇAp§É#ú–-[þºyK¯î£ÞÕ¸a«ÑÃgíúkÓБ_.\9Eü³Ö…«r²/\:Ù»ÇX½^ߤIÇÇ’ͺµ«GŽ÷èÈ‘£å#ÊV©RuÙ²eüqâô1óŸI:.î~TÔ'62·.?(C“ü.û¹ùâ;å3Q ðÄÒóu²­"Ü¡9þ›­ÊùëÐ?³‡´£èþÜíç陪޽{ë‹cÁJ±K,7øäëO›6/[¡Cæ?û©>õÞ{Ê=Ó3³˜ù鏨'¢|Vؾl¾Lá½nú¤ÊŸÔkùu/Ó(8X>g|ìœ*µV(îÛ·ßÓÓ3++ËŸïß¿îܹš5k6hÐ`põµ&ÖOÑ¿šyº `PíUe¿V­Z¹=+Ô™YD­vÉìñÓÏë:ó]ÿé8NðxX@€< @¾ÿÀöû÷nn\ÿ3Ž3Üd˜$ µkÕ>ùãai@9YZ«l¸{ò5ñ²5üj·/WµI¨¥MùÝ“¬Ú_Õ&IÝ:@’Æ2ááåo—mZ{AÓÓ3š~ÖØñLMST”˜áÏ<}–b…e4êË„‡4èçŸ^¶tñšµëÍ·Öüü³©üôÓO:­Ò•Mš.¼¾1üÀô­Në·‚Ðès­}¡™µšzU¨C±fA`1†Q2p"ýŠ˾éóíïÛ|øðôéSÀÉ3—¿ýöÛÄÄÄqãÆ©T*Æk>L’J¥ .ŒŒŒ¬R¥Jrr~5æa¹uæTk-^²òĉ+ýúÆâ8aÐ?@îàùÇ®OŸ>øeÍŒá`4èÚ·oÿîejÊ›,¾YÖŒ/Â!–x]'×´¦å¤}¿YüYÕÏ À_ò‹Œ”·mÛ¶µ·°ƒ:`45kFgff)•Ù–UÕiœMOU¯e4&ÍX½z5« (ÂÅ ì™§L™"‹O©‘2©°k—Î2‰Àí"sâÄ©xùÏ4ÜS,Û>à¹ôÌk·tmQƒ¢ûýgîø·hÑÂàžÉ%V¡L»sKú·íÉ÷IÀhF#äñÁÏ£C ª•¥ÕöîÞ±{×Ö¦¿¿÷ÿYNäþ×Î>} ªU?þúþ½ÕÝòr±ÏÖÍ`ýz0fŒ§€p%u½{÷ŠD"¥R)‹Í§€8p`óæÍr¹<--­ðÑ tåéérùòå«W¯~þyþns>D™/+m_axˆ¸ª+þߺ}¯U‹ÿa!ôûùË6ÿº*5%qåŠÅV‡kµº­Ûv´ëеL¹Êe#ª ün˜S#YÙ2aŸ·lqy÷3€w¨´Ï‚&˜Å@m™h߀òž¸ÀÆÑˆ—v=kÛ®Mpp IéÖ’$}|}+VŒ|òä™åu*øøñ“¨¨ªr/…³¤!_ßÊ•+Záþ¨a'\ƒ·×èÑ£K-|úäIÇvm:´mýôÉÓU«×ðp|Þ¼y+Wþ$Ét?ùq¿=ü%¾[º-“ ó·ìyŸpìØ?•*UxòäY ¥5[ÖÒª³–.]<ðÙE3 IDATxÈ «Æx+ü»uf0â÷ܹÿèÂ;¼wÏ1¯ÞÄýöû² å«÷ï;e˜Uk×®ïÕ«Cg_†ˆ4êu9üqâôñÉÚöàxȯÈtû^\•ˆ *e¨Y‰ÀîîÄô„”°Š{מìZw”úBެ´ìoGu¦Zx„¼;kÒ€À `Ðã«ñë5Vÿ¹ €Çã7n.ýe[ÜÑ˧óÈ]!“V¨RÁãÚ-¥½õ%Žëç ¿Íóö¥#ˆïz÷ –uFRˆc!Bÿ#Óñ»“''ç¸ gAܸqcÆ ëׯ‰D"‘‘‘á¢ÙÏRûöí;räȆ LKŒóHÛȯ@«qéð·ÃMž²hÈw3=ýüek×/ á³­lH×oÜì×È‹/+UªØ­ë—$";÷¤J•JŽìUºœE ×­['ºeXX”Op%E÷™Ÿî˜rÞj ˆ•^ÞzÿàÌ›í·ÿÖÛÙ&Ýi; Óé{tï6söÂð°P_oKö‚ß'ˆOH8 F¯u>“L§Óý¿.…ƒ -ÞñÂðG+;æ4ÕØ±c׬YsýÚµöm¾0]œ1mÊÆ_·,\´xìèQ£FòööîÙãkZ³Ÿ¦¼ê»{¬\(Ùö¿å>^–·ÂBC6nXݺmçysg0‹3B¤V9kæÔvíÚNž<åÇŸÆËå^>ÞF£ñÂÅÃ$2öìÙkÞü):u>{þ@“F§NÚ°pÉÐ=zíÜõ‡^›Å ìrâÄñL×ý錹0÷ŒW…(È´„i[†ýºÕ´\H¸rê®\!¥â˜Ï§Mþ’á8¿~Ù¬9þ!2™Ì˜ôV{ü€ð³6hñ†Ÿµ¾~ýºÍÇ'MêHÛdê€ðÑsм9P*sÿ]¿þW_~ îÜÞÞ %?ΟϽի×ga~…OÎ4i’½p ëĉ»víÚ´i“X, ¥9h–ôàÁƒùóç?þèÑ£µjÕ Ï?"Ùh4ºîÿñ'ïÞ»¾ý%±±3W¬œì;~ÜH+øûûà‘¾1 Å®ÛÚ´neº«Ÿïœ;]Tµ*Ó¦M_:wÑ7Ë+‚$åëtWgï«öIWîw}îÜy+Dh5v3Óq;`4ƒCÂ:¶osüÄ©&M>µÜ¥Ù-3P©Ì¾rõz×.µ-…¤ƒCÂ:ulwìØIË Ì'p†?ºAØ1ÅbQllì˜1cmÛ¶ Ú°aÃAßmýmÇä©ÓæÎž£P(Zµl®ÓfSñóuÆÛoþE`øÖÿ-”ú¹£©AiÔYµjVûçäñÄwI.\HHHÀq<22²Q£Fb!ÆÃ—-[:vì¸À€2‘å£'Ž[3gþÀÉ“§Ì›7[«Îœ8qâø/ÏøAoí盌¸ÿUÅ ֵʄ)Ì÷ûMKO×huGQtÿçÉ[u>©ªV¥Ó +"œøuãO'ŽþåÔe||—_0™ª\ÁûóTÓòâúû p?•Ò9=óx„1î¾þî €Çà±ÒñsÞ%%e&&êt:qÃf Gå¹aÏ;w/^lóq‘HT»v-ÆQ»o»ôí 23­¬g`ï^ë‡ÇŽ}‘“süøqáZtçÊ¡C‡vèÐaæÌ™ÑÑѽzõrÇ; ‹'OžlúÍx^—=ý¶ý…‹– 4àóÏ›MŸ1ò‹V-~>ÄÊÍ_íé?¸R¥ û÷î²ÜüÅÒéèÓK«ŒøúÍ«­£w}9ù“ð(ßèÏÓ_f^Üõ˜‡c…-{ç]ïݳϘѣ´çæ+í€N«éر]jjÚÙ³êÕýĦМ„÷É®\½Þ ~Ý6_´ÒP¶Ìé´šíÛ¤|H± ‚ÇãF›–?AØ6js†ràÀ°°° 6à8®V«·oß> _ßíì ‹Ó¯_¿¤¤$*ü—©QöÙ9JO~ÿzU¸g°[t£A«6h^âÎÚ˜¦÷‘¤‘4ê5j-„pذ!wïÞ[¶rÔ¤q¿„…F2ÑÒáÝ»w¯\©iÔNœ8qüè'e½u©4ð"åîûì× ¿bIcPPP\Üãúß.¦úüñ3ãßì !ꦩ)¬M‹D­š*¨§C(<㼜,ííã¯(>¦VjŸÜ{¥Uë¤_Ç{ÿâ„Pý÷.€è«o=ÆÎÌQ¥yÊE^r„3T3L«Ë©Z9ÂZu¦ã l×™3A×®B`~µ<‚ Úµ#gÏ "õA áZD@xæÌóo7½eË–-[¶¬;|Ž‹{2ü‡1M›6Y0Žã­¿hYØf³vÝÆñ¦TŽÚ¿o—BáÅÌð£Ug­ýå—2áegŽŸÕ"¼~·ò-F×é!’ñÍÎ’_d\ÚõìÁ™7sçÎ3z”VCiÔÏA;€Ðht11}||}ö8Y¡¼\.³DÀôôŒÌ̬ǟÄ'$víÒÑDfÔGmáïïçëãmµÚ÷éÓgÌ‚°. €þÔ©“!­6Û¨›6mÌÌÌsÈÐÁ>|ЩÉk¿ÇS5x¨ÐÃk¯üü|—ü2àw4€ÅÃùªŸdsVi4Y‘Ș d®/‚qPtm[ñÿú |õU.ÿñù¦b˽]­>Üøm­.ÛÅ>8%%åÕ«|nV©T©©©„–ç¨Úéá¥RééÓ§™-¹xñ¢¯¯¯Óɦ.\Òëõ[6¯+¼ÈW­Ñ9|lÍÚ —.]iղŖ_×I¥RÆyešþ5qÂØ:L˜8~ÍÀãþaŠ€H™‡B€R¥i“žf}HÈhÓ¶õo·TªX^«ÉtZ:T΀Fi4ÚvíÚÔ¬½k×_'Nœ’J%^^ž Õj233Oœ8Uuà€˜€À@dV8¹\†ã¼;wHOÏP*³] Â!Íâ•ÎÙ¹sgÛ¶mM$³fÍš<9–âVS© ©ÓÚôM¼›œœþêõ«+åÊ–+ÇÚÇ "]öŽÛÇŸ°péðÆÚ¥¦%edHY7{sâÄ©ä zËaSÇþ<\ðâeÂÄI³³™ÌÁ’Je ,,ht|>/„< §~úB$Åñ<ï!NHÇOwûÖu©¨ýI½óèuJÇÝ ÁᄈY³Š0èÕŽ™ˆdšŸóB˺:˜ÅÅ þý|ÿØ)ЩܺEV­ ?¤B)F±Ð × .¾á„pÇï» Àl…†a›6mêñuW½ýÓóL5966–ÙlB™L6þ|§5ùùóuê5iܨaÙ²á|¾ÀÓSîé)OII½{÷þ¹óU*UXhȘÑ#bbú`47è±›.Ÿˆããß:tèÆÍoß&`<,80¤víÚíÚµ ÔkUF –ºÓ?x<ŒðÓSSïܹ÷êÕ›ôŒ €—§g¹reªW’{)ôZ‹“)y<! ¬‚ðV(Ê” £ÄÃGq‘åËN?„· Z¿~ýaÆhr2Í«bõzóçÏ+W²Þ¬455-¼l%WR;i\ì¤q,7úˆd7nÜÚ¸qcff֌ӈý×vNàÄé?.‘ØËšÿ#Úöåá|‚¦\£×«]„vZ@ ãó= Æcö ­ÓªŠ}C ã„HVÅúªgÇu OžK—¢ÝæìgAˆTj³#Ý„B¡‡X ×å8é΋¤&ÿûïÙÉSg$&¾Óh´ÙÙÙÇ+VŒlÔ¨aÇöm7þ”-ò³ª<œa¸i˜éÉhБ¤‘Å:`“¼y8Ï´Ó !D’¤Ñ`dq¥¶ëA0æ?|±é¥³lìñŸ^¯¿uû®+é  rGÂÃù8.À ¡V“ÍàœqNœ8•~þ3èsTif×)œ8qúˆõêÕkÿ«ÓIÕMrÒû2e¸ìåĉSI–yÜRì¡À¸ìàĉÓG~~¾9.Ÿc)’$sT*_.o9qâTŠ„ÛCNœ8qú(%‰ ™™™Ì†€ K¯7xxˆ!×~râÄ©´ò'Nœ8}ô EÔw¶çĉ§RÜø/'Nœ8qâĉÇœ8qâĉ'Nœ8þãĉ'Nœ8qâÄñ'Nœ8qâĉ§‚ÿ˜mºË‰'NœÜ-®}æÄ‰“[øO£Q?~|Ÿ$¹œáĉ§’\û̉'vTàü“Œ$ „z=÷•ɉ'N%K\û̉'×%öPØØÿ‡Sã¢Ñh„¬ž’ĉE!„´ZŽópç‚à‚à‚(² ŠW´Úg’$0íÔ ›ÄøŒç<{IÒ¨Óf#¦æJ!Á'x<^áCºBzÞh0²›·†óp>—p¶Ñh:8ÛÀb8ÎÇX '!ÌnEH¯S Z®3ýÏÊî;¬Ñ¨?~õ‰Uã Ñh¯]¿A=>AÔ«W‡ºûë×o~Ýã›5«lÕ²…=7ïÞ%uíÖsĈa_ÿ¯«+ýÄ¡CG+Tˆ¬P¡|i,¹´´ô2å*/Yr̤&vëÚ‰zÐB‘|μùÇŽwê²~½º Ì×k³˜Œ" N:}íúMƒÁšdRI·n_úøúôìçóÏŸ¿áë7lùn`_›nNý{æê¸3g/Õ¬QŽ"'=w~ÞÜyß šB›6¯©[·nçNm 4G«!B‘èÎí;îÞ[³fu ³èÇÔå+~^ºdž!­€BPvëöÝñÆþ÷LP„y©‡ŸðàýëS«ŽŽ5ªy‹f‹-‰Žª¢Õ(°¬9ˆ±ãÇœ=}.(Âǯ¼Dâ/ÜO~ýÏÊ##GŽlñyóE Ó ‚ DãÆŽU§e6®]AÂÏ\¿¾âœÄy-µA?tÿÔkoïœêÿ»Ÿ¤äA- H%fT¤E¤B `|€‰O€Ð½ÄZ|ñ†§Óƒð`ÒSæjƒ !:t˜‡‡Gá[ÙÙÙ¿üòËû÷ï ‘gmºð÷½¬'*3Ój_Ãäèõz½^OÝ=†ñ„B—ƒV÷$©õj ¿ýYÁ^E¥Ò>¦NŸ[«q×rkÿ¼vJËÏ›–-[Æ:c33GÚ¾wlfú‡cbîûƒb­HMM{xÄ uÞ~þ{toJJ ¤9: !ù.\¼|ùª¯¯OÆ6àæ}ò‡¿ïÚ·ïïš5£ƒ‚Û †… D²™³f/˜?¿Fë²ßoní"µr“¯¼üçÓzõêN™2uÊäXšÍÐ bêÔ©“c)a¶2»E݆ DbBCrºáC&²Äçñ¼¤˜X€t}r:X½âü£ÛtÇŽ ¾ã‘zÆjÌZ ’6løéåË—-/®X±bèZM6àTRùÏÜ-A*à €ÐÐÐ5j`F^P–Wd2YP ffVŸ>ýÞWØ4U\ŠŒ,ðÀnOEd6s¢ôhî”Éa }ÛŠ…†a#ëÖ«ÇÌ“gÏ^ü}ø°9¯ÂºtêP”©ÐÏ‘’—øð×tT]3öÈÜó¯¯Í}þöÎ;0Šâ‹ão¶\K. I!ZB—^©*MfAÅ , ˆR)‚ÒTëE,€€ô*U@z€!Ò¯ßîÎïMŽËÝår¹î’÷ñ ss3;»³³»ß}3ofZøÙšÐÚâkNõDÌ¥–\°ê©h¡”Ë^| áª[–Çœ›GOñŸ~¥Ù²Ka¶äŸ£.í-Sßѵh\ÚÞ±mGt'/m_ÔVöé$¿ÝiµÚ¤¤¤×_½œjòÚeö·eê¿Ô|´$·×@/Ý&½ÿÓ†-[¨R  +(¬Ta¥ Að‚¤°P…ER˜©ÂBª´HÀª¾ÛšT­ZH±[Þ{vGXPõÈ(7i2òîÜÈH±”]ÿš‡÷ç¼¼¼ý‡Ž}iÒ¥ïˆF¼±uó–eíÓ¼þÖ{-: ÐV ÐV;¶û÷ .Ö¯ï#aJÅšÕëþÞ¾‹ãX‹Åz9ù q:ÚÔÔ›„aöî;°~æ9OW©4RÉGB”ê ^|ñϤµÏÎëR«¡k^[Ûïí–ÍŽ™?ý“«)W¾^ú•É˜í¡‰N.âù_\ïYó¦r5åêW_.õ¼àkT3¯ÿ9gìKAÓ©A¼£2r ïpÕC¸•ñ·åæmÔ=Ï·îîÅ©Qi‚ÿþ{çÊ•+£££Ç{—c‰(Ú½\QªÑhX–E±ÀBÉ+•JŠýÀ>öŒ²íÅv+ؽ(3\qB8Žûí×Ý{ömjÓö'0Þ‹Ïœ;7º}ÝÐù7¯O>]8 _‡ÇIù¾¦[ÔåHf“H)(UL@ ¨gÍŒFE¤}Á.Ž‚RxcJо;Ve&Ö˯ m ékì×ÓôÌèà—Þ :¶)#4Dòª ÷ÕWßW_í®{÷î#GŽdæé§ŸvÚõòt»bß¾q kH¨X6-ª[ %/®œvÆ‘âîϵQ÷¡Û¶ëß|ЧWÏF =ýö”is}nŠ-Õ¤  ðz'y–Ô S©ŽVº¯—.‰‹åj–Ë…DÁjÑgÙÊÿ•c¹.Ü_£FÄùó¯_¿Q§N\ƉM7üõ·Õ­Z¶HHhP’áôäã”ÇŽÿ;{Ö¬çæwuÇ6]^÷éaxôÝ6ͺk°¨8pbëiïNëß¿BƒØb}5Ø‚"ž×¥Xñg+bÐÄ6ÓÆMëß@ƒú1ºƒH³ªg?Ëþ`1K7¯géøÎ‡#ßµ\½„(b#ô‹fè>›)ß2ˆB¡zðÉh.ikçê™3gÚtö† Ž9Ú¤q}±À¼- f½î¶Ru·wÛlʳZ (³üEÿÙÛ“ŒçÎý×´i+— 6ýçÜÿkü÷ßÙW^}SÎ¥ÓérróŠÓ¥žhå±ÿø÷dÊ•klý`¹uëvnNnãF ##k„<3uj\½úÓç|¬ö«Ù|¬_ŠßðŸä°šà«~þ꟟Ÿ¾ïÑ·:>˜z¥íÙÜ´yËÜÏ?üö“¾óèK×>˜;«có6cG¿QÊ&AD,&ªÏ³³„Ü\Ñl<« bBõ ÁÂR‰|$)½pÙoê¿v*wüš&}ý“fë^…NOB‚èØ—õ-[¿™“Û²wØ¿«ßzÑûџ篙SïÜí≨Æ5ŠSL›6íêÕ«III?üpùµ}Û”=úâDw%¾?·lyŸš·Þ¸r6:.X–ë6à•_~kç¶õ<Ï|mL»îÃTêüûpæíé×O?ÚV‰v@«b¢(…ó7 ñÕŸ|<óÀ¡ŠéÛç•—G YÅn?##sÚôÙjºI£†={vmP¿žÍ©qã†ç/\lܸai*W¼;nì}½â£CÅß¼ÃùVÒOþ{ Û´z³ž±ïoÃú?ʼn3…2`Ü{ïÞ×+¾¨n_—Ä4 oÖ#ö½÷ÇmX¿Þ(dz’EÌÊS}VÿÙLñö- PÐÍŸ&œ<¼èG¤ìÍ»¶æ?ð†TT f¾V2£,Ã¥§ßY¿~½}ä7ß|óÅç EœA¦òé?•Jݤi+¥R-¿k:¾Ù°l±âã¸õë×FQAX¹råäÉ“ßÐ[¹¹¹ûö¬4úïñÇ÷¤ÏÔ÷ß¿¶jG“6>žó¡í¸Ú¶k—تý ýË\üuíòP€òîHùvûÝ1e¸}¦‘@+Àª“ëçîúªÞt£LNÙî½û¾øá»I?ÏP(P·iýw¾šðû•3ç|2ñ=ïƒK !„•¨(€^'ÞÎ0gç ¢åŒzIÀ°Ã.ŠB)E§'S> \<#7PCŸz#xØ£¦Ÿe3 œ8Ú´dvN³DaØ£¦íû¥Ô‡ÏÞ}ƒoRGÝ(N•=wîÜáÇggg—þ\H¬[©¾“ÆhiDMéä~ô”<HKe/žáÞ™fýbVàñC|ƒFÂu* -áÆEÞÍ·EC†”›%eåJ:ª2RÎ,dXÌ·­†L!/GÈÒ‹“¤²Jf©tSʉ"{àw๞ ­™ÜΙJ=Úæ—K¿€—G¾`ká”ÒÅK¾æ8îå‘/”èþLùîëE}û?©ðzµ°H¨ßjÆÌ¹õêÅë-ªø„rJƒ.çïµ_üòãR…‚/ÑÖQ~{ìõ›º‹ÓºýµråʹóƵê î4•Þ|ó­Ö­[7kÒ@‹·liµLzÏ9¾QÃÄ-[þ.Õ½…á.]º¼sǮ׿ïåBüÙm%`û!õ–ŒøëÚµÔˆð@©èÖ"±cûN‡"<¡ýú‹Gl¾ví†û"îÖ« 9æàË2Ÿ*(KÌÛ’îto ’(Þ¾¢`3{„,Z.dè©X²îrŽW­Xñ½lüëÞ½ûÎ;EQ\µjÕÂ… aн·òè¿ÂþeÆ"7ãÜùëS½zu[9ìáÃû“y‹~üé—?½úÊKñq±ðÇêuçÏ_t™¦oŸ‡zÈ»±Á`Ý$E°¼Z„KüÌØ}åÐØ¤ZG7ýì‘y–µþ ÿP“íç}·à»?xvúHu€Úù§g§ŒühØÚ¶õúÑÂh€Õ€BM*F¡`XŽXz1Í äM”R•‚Q0šF¡!\ £¯{·íSô{Ð|á2W-XÊÌ"ô•§ «#ßü¬ÉÊa€a€/ÝÔƒ& Ä»{ȱD¥ æþûïÏËË *åÙž=A#öd€@-Õå‘û{äw'íÙªlÔÜúâ½ìhÔ¦“åôq¾¤Ûÿî»O+¦Ù*¾]®øt¡Ø¦¥qÊx±M+à8øc÷›–Lú–6V¿4Êüþ;ÖáÊÊ!äâMãÇ¿Ÿ³o<%4Ñ1qq±çÎoÑ¢¹í­C¥R ‚`0š4nxöÜyï/R–;zìhDýÀbÄ_0²AБ#GFŒxÞí#’;zôhzÚðXí¹}©`1y4dÅl°Æ4 çÙGŽéd÷-Z<‚åê­€7'YO1ïÝž¯ù¬–»S{ð åƒ}5#Þ1_L-ñ‹ §ø÷ä©S§NÉÖ„¾}û¦¦¦îر–/_>pàÔ•Dÿ¹ïVp°ÿy.þ@6«·Z¶¼ïô©ÃÅß}n&—Éñ—Ÿþ£”Nú`ª×Ùà…þûrñB÷gMòý¥ã-D:Í“0 Ž¥žµvrý°ø¥~¤â”À½ gbE¶‡÷#Nöì;@‚ù:M\»:r<7üׯMš¼ü›¥^¶( 奖 d‚‚ØÐ .4ˆT¤dog›kTSæf‹º1PÇXó§Véå\Ia{w3<Êwmo9u–³ “W@Y ç“Ùzq¥êÐüv}FÒ»&·ÎÍÞ{*B„ÔÔÔC‡½ð ^oüßø¿Ö¨’ŽÞ‘¿^8éhó6VÙ.xp—âƒOsm^æ©棭—KúKñéBˈç-£GÙO¨&±ÌîPói³b¿ÿM9ûSUS(ÐIη‹¹sffeemÞ¼éýñ“¯_¿ñÙç_†……öéÓçãÙ3«¡D÷gM5üqÙ’§‡¿ÒíÑ×ÃkÔ¾sëZ½†m¶oXÖ¡ûà+ç~6FçN½;ä,½µyüýcNŸ³÷‰EŸ/ÛsJX8MųMâaĺ:O5›6í©Ç&¯øÏk Ø ~ÝÿΜ³é?•JµeËß7 kØ0aóæ­]»töö¶Ï¤¦^—g`.Fü¹’€¡Ê©×¸/âÆÍëÊŽC€Â–¯ÿõpß~¥yûAõ·|õïÅá¸VÑ’r;äËUwº6’2nS«];§`£cƒþ`¹z‹–|ºlŽW-_¾\÷éÓG£Q0`̘1”””™™ f%IÄßpѼìýËÜÛÿÆÿÙŒ‚.E•‡ö¿ ƒ–ó¬D¢(vîÜ1-õ’ý§C‡v1ï{{ÕÊåö1›6®yõ•—¾\²È‹Bccc¾XüÕÁƒÿ¸ÜŸ% X²nmõ`á&ïÈËË2üå>%ºözúì¹oEM•î(Î8{çÒ‹¼_CñÝà9Zeþ›:©-²ÏéAM½>é³>ùô±±O¹I߸.qûöò^ „PU5 cC¸ˆêʘHuBíÀf±Ú'JÔl•Ì&Él V#HFÞJ `1JÀh&f+ŒùÝÚ¿T5mÛÜJ)¬ýKÕ£S©Fg¾~N¼íóÞS™™™™™Ù¢E 7·Oøq©¦{³68¿ Öþ¤nßÅÂ+(;È[L¤c7KAë…3ÿrôÅ‘æÄhT~4GèÑÕAüÙ¿x™ß~S|à~åôÙPôLÅ¢`\ºô‹¨['.)is½ºñƒ \¼øs›øóüþlO£† ¿®üvë SSÎ_>ûZ˜‘~ý÷ï¦|µx®×â‘ê|:Ï1„IÍ=?y{j5öÌ{±Ñ¸A ,¢Vü;ù–yçë}ër¬—ïØ ‰ Μ9k_z½þСà …¢Aƒz7Ro¥0;Bz$þì$à‰¿®xQTÇÇÑÌSñ7¸|§b†zop8XB B^˜H¸+VÈ_‡J)oÚ´)È#û9ÞŸ< wúOFžh´(k‘›Éÿв¨yhÿû÷ä©Þ}:äΘ–vëég^ú«tC€å‹¿üì,Ëþ¹ö×€Âü¶ê‡˜wÞ~£Gnö1mÛ¶þpÊ!pF§Ó V«°ôóÅíõk&ûgýª£ÇNäåå•ù!_¹šr85ó@­Vòç¾ù¯íÞÜ™C¤ë~À«– ý$TZV³gìÙ»?ªaíà°bfw{üݧgÌãõÑP>ÂHHÉÇÔR%Ä4ŠÓÆEªµÇJA’¨h¥’Àâe ¬%>ÉwleYþ»ú™AÆY_~±L³t…†céŸ[•#‡ÖmQ¥Þb†ô){ÿÙˆˆˆÁƒSJ'L˜PŠ08¸SÙ´U¾sñÎMÊý;¶Îß½Û”M[[ƒ f®Ù³E ¥r7±¯ÁnÛA2³,¯p·”!–×F’Ûw¸»Üµj™3wNûöíëÕ«Û±cÇç|L¨Ù‹û3$m;Ñÿ™yÝÍürÙ¶ÚµcTJeÒo‹ë4lÛ¾Û ~O¼É±lbBýUë>ôøÇ=‡Î^öËn/Zûµ;¦þ £5\¢Þšó¿ãïý«Å/ç^þéäd9Áâ^U{ßìWç¼yí åyÅ©¶Gˆ1¿ÆÁó;ÁÜ:î¥2XÂná’/Ÿ™9¢Ød!áÕ¢ÆìÚ½·Ë¼ÔaTie‚†J<Ã…‚ æLf‘!$(ˆS( CPB% ¢—NÀu6¿7[ûþ(]«¦Ö·¦½õ¼!4DÚw„ÿîÍ©¹Ù̘©Úéïè¼T±í;´íÕëaÏ öf³yì;o–HÿéuDŸGàøAþÈ~´¹ß²g«²SOóžmŠ~CóÕžQO¾]ðñ×9J•/NÕÉž8IµZ)±Ÿ±I#ªÑ°'N ÷ts“TpôwÆnß±£[·n<+%ËÜߟ—ÿ²gÔøÿ5¨¤Õ¼;õçŸ~IŠªÓ¢W»^?/œy«u§~-Ôkð»'/‰MÖâYöõñË’¯¦O7¸D®7‹Y¹êÑ—ÏÝû„ YDI0‹úSé;XÂ1„‘¨D©´äŸ×^m³dP‡–¿ì¾îEÝ&&Ö?}úLtt”l—uäø¹sT*ÕK/>»îÏ T*«u÷î}:´å «¥øåþDÑÚªe«m‹’ÃJl¸º•œ“v>§ÕàV’(SD«V¶ÉÞ PdG°½ø€´ ¹­‡´v_„ƒ…O[C·pªyïß ¸ÈE-Ó¶ ÜÒ¹šçß6_*Á@žWÛrHpøðásçÎÇÅÔ(´â«Øî(´lýÝ?*|ªÿ7&¦ög ?©ŸÐ¼rW:uÜØ‡¶¾™©›?{ö»“&Ù~š;ç£K“?˜1%ZÃÜa´¿ýúcE®Þá Ò9Nܬâ_Ôç°¹Ïÿþn–1çÇÇæ× ¡ÕERS$µË`pÉ•+W%„GU÷$qÿW-»Øký\uIE Çs* ÊæLF‘Rà$@ËòjÂ*€”âjòˆiΗϼ²jIö‰ÿ¸ +% :´²®Z’õïYþé7‚õ6==Øû²1oóÖ¨ò;ã z˜—~ph·¢÷ S½V}¯ñ¶^ ^‚˜•Á$ŸãnÝdvmVN™Ÿ[7Qðµ+nã‘5çnœzùHj"1YúŒs‚Ô¬…80tºbMSAZåàA¬Vu5¦ªØûó팼w§þôäÀ_Î}aÈ¢o6OœùëÓOõûïèß±µ"8óõÝ›–5iûèºMç_y¶ÇœÉOB>Z°vö¢?‡ôoÛ4±v±»¥ÓåÍŸñÃ0„)ãÇLî²áÛ£c.g`N”¬"-t¦®fŸªàåÊ“ ê×Û¹k¯ìÌ'B­èè'NŠ‚xâÄɘ˜ÚC?Ú¤qÃ5"L&“^¯ß¾cWî]y…Âj)frQ°ôíÛwôèÑNhÕ´{Œç¶OBˆ$J;–ŸîÛ·¯ûyïDÁÒ¯_¿1cÆÜ¹–^[ë^:ˆ¿[É9·¯g[Dá»MˆõèýÛï„W0ÕÂ(•¤ì¬|wAÐ}2EÑ®3W«±p;Û³ãeòt†µk׺OöÃ?LýðÔ~iÿ³†&“ñüùÿš4mÅwâÑyü_±ÂÎæyàþZ“¥n“Ñ‚å ¼ÂDzœV+_“ÄOW't¨„'NN˜8¥n€X=8°zpàÇüöHÿ¿ÿö³Í”X§nÙK¾îÝwàß[ÿGˆGGM‹^f…R§8W§ƒRN7P~þT侘ùÞÕìß šÛ8¢¥Í¬Š¤;Å6OŠøvùÝŸòt²â°Èp.XuæìùDÇe}Zþ³›º¶6!¾®ÿ@¥R7nÒJ©T»÷èvÿç‰UÏ×ü?lïs•ãD6oÞtÃú?Æ~ëïÓ²ô}y~äËN'W¥V©|ó¹‘:S#ý›9ãNÝ:ÿYÔì–+;Áhpevó ”îܽgæ{ƒ<ÏÒë…G¾üö»sf—ÂÆ\e”„Óe±ÑB†§¼šðZ¨)(¼?Æ­»ÏøèóÀ> 4Ì!VMêÛݼçÌúñ‚ï7Z¥’¶{ ÿ9­ÒÐÖ÷zfGF‹‘ѾëTøËؤü—ɣǸg^ZußXÁ­Ã>·åoEÑ[—UÏïÏ'þK ÕF׬–_.Ç6ks3-ã«%3äkÚ‡ã_üøÆ­¼`MÁ»ß8±Öé3uÑ ÙÏ?÷ôK/>_ð,`}öù+o¾÷Îü5Íâ^ïÓ&D ·ÞÛr?Ü_{ð#u§ÍúíÂí/wx^Q§NÜßÛw*xþôé3Ù¹¹Ó§NÊÈÈLM½)/|ýúa°Z¬;wíéò@§b;‚-&Ýœç¶k×¶ÙC11MÂ=ÜŸ+ÇÓOm¿ºüè³¹øá(“î“9Ÿ¶k×¶ùÃ1µ‡ÛKÀç2ÿÛuzÙQü]>ž~zGÊÇÖyRD~ ¬¦5®úžfg$ÀvìTÍKo[®ÜB‚—þÆ}1K·`:’$ݾeücßåQÏ %Ф¤üvÞ©S§_~ùE(XxšãU»víêÒ¥ \»víÌ™³uâ¢Ðè_áÿkñÈÿ×sñûT ý¬¾˜LÿäÓÍ×E]dcgñ'3ú­×}sÏÅhË»÷^?2ûáq]~{XüQCo”å«Bò•+‰í“’¼~$´L<~òd©| åk,Xâ£A Ñ$0Š ¨ šF\e´n\°<"&Z\:+'å@ú™·/ìº}q÷íEÓrýBüUÄ÷‰­Z*çFrr‹|ÏÌÊV.ø\ìÐN,ݪežÜŸQâ ñg†çö÷^µZÃ6!2 =[‚Rj1ë†lù#÷A[áXrö²¿¯Nÿå,-"Ödæ¬ß/¤—Xü†aDADA…Ä„{öì¿}'£S§¯¿6R§Ó·nݲn½:r: …½`¬ëÿåŠB-–¦M}ðÁä?fü“•ªód·2®ç­žyxúô‰ õþÔØ±ï˜ Y‹Ù˜;iâÄ«)W—½ý›CAÕ5eRP‹UóÄ‹D¡T=øˆjà0!Co¿ÂDó¥T.®iõ]g¿ÿhÞ¾Q=ôYjõèQ°çÏŸW³fÍáß1²íoÚ¢`Z»víÒ¥K›7oÞªU †°<ÐeÏž=r‚1cÆŒ3füøñS§N6rð>á;Ï[ýç÷ ëÖ­KII)‘1oß¾}¾cÿKMMýhæÇmÛ¶®i‹ÌÉÉá¼F}÷²L»u+²ÆÝ)æ&£Ùd ‰ŠŠôÙsÛ´i“àà ÿj[.íùWåÏo1H¼@ÊÚ‚uýÆú÷%”4WçÁÝ¿}ç‹Òë¿! ¦ï?•©v-Ãÿ¾RðÈ`k¿>B—ÎRíh`R®s;vñ6I5# ÿûJŠªYV%º¹?é×vú¼5Ÿ,Þ8{Òã°â÷½7Ó³‡ ì`ŸæñG;Ìû2iá×›&¼5¾þñïœ\Ó…Óx‡ Ò>Û ªúùgôfo^áÌfKÇû;Ô‰Ë)Úžj±Xsóò´nÝÒ`0ܼ™& T«Õ]ºtÂxSJ†ì¯¾\?mÜÔ¦=b; ©_=Îñæ™~9gÿ¯Om¿:}úŒ±cß1²=ï;’‹øzéWq±ñÓÞÖ¬Gl‡¡EqáÔö/Šë­l¾M ŽK³ùBš‹µ})éÙb&Ëw¬ì;ŒZë-ô¥ÕjªU}þ¼¹”JfcŽÃ|4³¾QbÝÏ?[ I¢QŸZiÆSU)û_!aXÈ¿ÌÅ⃔eÙÍ›7oÞ¼¹¤…±,  ˜Ù–(¬X±rÿþƒ.©c({ö%ÉH¡ûÿïF»@áHû„…¶lYhC —åÙþ µk.ÔEœ-Þ!Ò>h—\·Têð‘Eؽµ?Îm‰‚cÛ¹ÛØ8–¡o‰ IDAT)ÜΩÙdÌÈHÏÉͨW¯ C@ Í[{'#óøñã¹¹yró§”â_ü‹ñ/þÅ¿%ú Z­¶E‹ûÂB«Ù?bçÿS(._:£Pª¢kÅ‹¢U‡õþq&=#×bÜ/Ÿ Š’BÁE„ÙÞh†c9ÅÍÔ£ÉP§N‚Å|w-¯Ì¬¬C‡רQ=((«AñšÜÜœôôÛmÛ´®V­š½þ+ÔÿK›“Õ¸I+A0K¢€µ†Tqë¸ #·+ñGÂCµvú﮽š˜EQÊÓÓ3re H)E+¥4¢FÔ©ÿ!¤ÐÚ .\¬['>ýŽÎ`̹'GÞµKß9 jMˆ›_†ll©‚øÅý*))éžìUøø /µmÓÚ>’§åŸ ÃPÉŠg©ººI¢·Ò3róôzA¥Rk«WQðœóàP‹EÕª”¼]ÆL9 w2óìóJ’À±>ë A{KNNî;>ºš®Z­ tˆtдào!£`PH”C¶ÜìT‡˜ (9ÒM LpÞZÙn©Òâ0f“õè±S‡²Z­±±1õêÕÍÌÌLI¹võêU^ߦusm ÒÎ ˜±BŠÍ¨RñΗÓÕWÔת(þíÛ·Ÿ2e²íóÀƒgÍšéGûüä“Ã"##çÏŸç³{8aÂD–Søê •:?Vˆ(XlþJUÐÑ#{š4k ’Õ¾ŸËUa² õR~°¬â¿³ÉkÖ¬‰©=`À#f³yõk† ¬T*wìØuôè±¾}û4m\ŸÉfÿK¿“ªU)Õ¶Œ;u¬)'Ðét{vï=uú¿¾}û4L¬{'3;"<ÈÞþÇñšOjѲ£Ù”k‹}¯êÁGÆÿÉö¿â„ £G¸ý¼eóþûãgÍšU[Æ}¶iß¾ÃþýûýkŸgÍšýꫯ†„ûÑ>/^¼¤oß¾±±1~´Ï+VüÔ´iÓfÍšúü>»›?ä^ÿkÛºñ¥Kɉ‰ l1šÀðÒÎÿå`”¿:ÿµÿêœÅ!¥r³Sí“Ù[¶ì&lŸÒöÕyǪfüÓ,ÿýwF£Q8À`0<öØLžòä“O †.]:תUëÂ…‹¹yF(|…Ûg|àNï`Æ¢(æää<öØÇO—3êõf÷·Ä›·Zz÷ã>æý÷Ç›¦ûR¥¯IÔ¨Õõë׿rùJ½ºu¾Zú刑/wêÔ¥M›Ö_.YÌqÜ¥KÉqqqZm Tx‚LI4ê9ctTÍgŸ{^£Ñ,_ö¿Ý{ö¼õÖ˜ æ…„T“3fdÞÁz.)öSÀ´nsÿ©S§ªÎ±8°Jëªv¼½zõR«ÕUçx»téR‰ÍiJë®È’Ç{ 9°cç~_ÛU¦L¶b3ÔUØFlÆ¿’n§Lv©¬×-Ï3M›6ÉÍË»x)™çù/—,žç8.-íVnn^ݺu• ÖMÆäËWÚ·o'géÖµë¼yŸäåéäŒ<Ï`%—¯<ù)mÛ¶Åã­ÄÜwß} …¢êo£FªÚ%ìËxjÿsM²ð’E˜}À9W±vµb7â¹´ß·¢6èœRþZT_3R¥°ZŒáa¡ƒ Z³f͵k×ë׫ûàƒfgç¤\»–—§{ðÁꉢÁ}Æ-Zeffi4&£I« `ºuëVÍbÎÃöyÚ‡) <@vŽ#‚Tˆþs#‰ìÅ–ç7ái¾bwÒ“H|ˆ J%«U]ó¹çž;}úô… ¬V«J¥JHHhРZ­,:{õÁ2Œ(J¢(Q®øŒ‚ Šbñ‹ 2¸°/‚ È=Ö劽‰¥rÏ‘DÁlÊ lß¾]›6­%‰2 aFÌVsžýâo2<ÏçéLÀ²¢Õ*¨5AíÛ·kݺ5¥ù­“AŸ-BžÎäµï‚ â_L™<¥Zh0À‹¨ÿ\ƒšñ5¨$š 9„0,§ „ˆ‚d¬ÎÊO&"L›ž‘—‘•'¯ Ù,Ë©Õj†aEQ0’$€(J<ÏG„i±zAÔâ«*J‚ÕäIJYÕ‰’ƒ@”€g4ªüÉ]±Û·Lh×®ý°ñ}¦N› /Ìñeý‡£©¤´ ÂCA|›»zŸX‚ø ²ÿ/‚ RJ¸¢"¤ÂÞÆ®8¼A2|Ð8>Vpü‚ ‚ HãÇþ¿·Ò3RnÞQ(Õx¤ ±šµj†EF„cU ‚ ¾¥ÿÒog¦eèyžW²Ø… e åù´ ÃdD„‡am”ôÿEÄ_ð ÿ_ÜHÏæ8®aýFx ¤Ì9sáü[Ù¨ÿJŠÕj=rä&$$`… âkètºsçÎ@+_ÞÏ"ýYŽÑjðD"Hy¢Õp¬롤=z¤uëVÉÉÉ©©8o<‚ ¾ˆÉdJNNNNNöñý,züŽCï)Ÿ ã'2ñ–¡C‡b% ⛄‡‡ûÅ= ‚ ‚ Hããþ¿8ÿ3‚ ‚ HÕ¢ö¿°°°ŒŒ ÷1"7 çHl*HéAÿ_AüõÿõP"˜Íf¥Ré,õ°Á[W‚ Rñ”¬ÿ7##Ã¥iG~ÒËØÇØâíӸυø&“éüùóž987Œ*Ø$<©+Ä ¸þ/‚ H™P6þöf—aùqn ; EþŒJ¥jÒ¤‰R©4›ÍÞ5›ªÓ$lu…ÍA¹ÇúÒ¬ð!›ÌE=§íãQÞUb, qk–±5ûÆS5›D±u… ‚T|Ðÿ×^ïycÿs)½ë°ÃžßJ€ÉdºpáBÓ¦MËdk•»I”m]!‚ ˆwÒh@,Ùš¿Ýv%’’xü¯û«`“pèÿ¥äKÒB¯e”–ø¬" ÿ/‚ þ‚ïøÿÒì#½œÿ¯(G¯7hôk,K±âÏÙlìþ¤WÖ&áI]!‚ H¹âýüÏcûdŸÍol¹ÐùïñÚ§Õ¹ÙTú&þ¿¥ýAÊ„Œÿs~»tïp9ºß“0⧸éÿ-öüºoT•¸®°Ù ‚ þ¡ÿ¤(!Åöi¢•×óºBAü\ÿAœ {¨Aõ‚ H1´k×£ñ ¦N›:zôÛ¨ÿAAŸ ˜ñ¡¡¡XGRæÜ¾“†•à²ÿ/šAÊWÿíØ±ëAÊœšQX ^säÈ‘ÀÀÀ„„¬ A| NwîÜ9håûú¯È·éöíZà¹D2çêµX ^“œœŽúAÄd2%''ÀãÍéбùÿÚô-Õü/“6÷éý0žlA*’¡C‡b% ⛄‡‡Ë÷¨Ó§Nùò~2nb1£lJ$þÔšlU_;õ¾±?¶KÌ>àðAAÿ_Aü_òÿuñXAÿ_AAªEé?µ&ÄhÈÆê®R¨5!Ζ69Ò!Þ!ÆeXا,j;ÎÙrZ£ý\ÿA¤LÀõßòUüjÌö`ŸÀ!àá6ÝdwSÑo#‚ ê?)Gd½åaJÏx.àPê!‚ ?¬ÿ[òáæ¶Ž6‡î¶I›m¤‚qÙ¹Œ ‚ H!½G½µÿeS‘=‚qR䞀¦¾JO»ví8€õ€ ˆï3uÚTxydŽoîS”0ÌÿZàp«ªŒçÖ¸2´Ûù Ðùù_Aò{è~²p€Ï¤° û³ÿçvNéœÌ‹ÁC ¾“ø)¸þ/‚ HiD`!ýWÞ ´UV:7—Á9Ò}Œ'a7¿bƒDAª¸ä\þˆ}PR— -âµ ðêCñs|Çÿ×å˜>Εöç‚Tô«*@A¤Üž5¸þ‚ ~ ®ÿ‹ ˆ¿àKëÿºàžé?œ#AAäžpÏÖÿð|ŽÀç_ùÏ?‡m_ a <Ï/_þ]ãF ñ\"H¥ýAü[ÿmLÚì¡L¹š2tèc‰‰‰Çñ<¯P(xž——/_ž1cÆ£Ù±}KttžNAAßÕ%Z#$""¢N:J¥RQ€f& @óÒ‹Ï 0xÛ¶MÁÁÁ|8‚ ‚ ÎøÃú¿>˲ ;lBçùÔÔÔ«))*•jĈW+^üaûFŠçÈ‘#çÎÃz@ÄÑétGŽ9räHZZš/ï'çµ)÷öÚ°}Ÿ>}†(Šì… çÝ5çE&ìœs¤œÞïœÒ~›HÅÔ9‚4o~ßĉ““!<<Œ¢ÄC X†uŽ *•jèСX‚ø,ááá~q›òƒþ_BˆƒýOîÿåyÞ–†RJdà"ðd…1ÏE<ë)sdÿ_A¤ôú¯¢×{SkBì?¶xyF@—órgïüá þdýÇ0Œ×{R†)¬sAñIîê½{Ðÿ[”™Gövö –íö&@ñ’$‘š\5+é>#Xç‚ âŒ?úÿúÜ*Àãÿ\ìqqý¿nԆ˟ŠJ権=¬s·/aPØúîüAA2|âØ)+¿xÐðS§M_óÿ¥öúÏç!„ØìE¥ñ¤ÿ×;‚ýO.ÕFQ¥IÅ×9‚ ‚ ¥„+V!ú{÷îÍÍÍu“àðáä,Üí»QT UºÎiá~`çx¤0¸þ/‚ ˆ—Ïê‰þó%ºvërö̹ ç‹™îÿþŽŠúÉsUš¯¬À:GAŸÅôß„ñãðôÝW‹Aô…ÝîÖ&nû?WJúRÉ*‡W±‚(°xf½ýAJ' é¿Ê†(I‚(•$þ€Ë=y°}]ŸÚI¤2UŽ(<¡`7ïOQà88‚ HùÁ«ýò+Š‚ ÀÍ×!rØkzwJ€¤=çzwJHÚsNŽqø*§”¿Ú'°A"m)K¹“>H¹Ö›?7NRÄ…V…z€V‚vVxÅ&@ñq|Éÿ×Ep%µÿè¿ÌŒ; 4Òê‘®ÿÜqÚ&Vl›êÝ)áϧA°%°E:„ÝGÊÒí¤RÞõæÏ“ÁÛ"‚ ro©œúOEQ ¾^PK×{(g_³íßG{4³mjͶmñöÛwNPl¤Ë¯•C…W@½ùcãÄûN±È @ÛþÚâÑÿAÁ/ý}ûµÂÀn`ìló EIöùRJÿûì¶°}ä‡[¸Oà>Òå×J@ÅÔ›Êbœ–²dÐ>Òb±ìܹ”JeDD0 ‡Õ… Ƚ%77÷Î;`6›ÓÓÓ ‹/ï°Ÿé¿¢†É²Ïælëÿ=´'!¥íZµÏn ÛOôm³rÃ?¶°s—¹À©Ã·òÿ«˜zóCý‡Sÿyú²ç,;Úµ+<ýô3AAAÍ›7…BñÜsÏau!ro¹~ýúž={d!xâÄ Ô÷ꛯÿ7m¹ú—ÿ•‰þ{z@÷ŠÄ!Á}Ûü¸v?ê¿ò®7lœx£ôPüAVÀ~ø«AŸ¢Q£F5²ùñGŸÞáÊ>ÿ !@Hifùß{dò¿?ö<7¨“mS¶@Q ìãsÓœ&•lþ— «7lœx£D©ôøÁú¿•PÿŒÿ‘Rz%ùB±YjFŰœëÚøfÕN(v&ÿýfÕNûQh¶öñòW°¯fÿ«ó*ßø¿ ¨7?mœx[DAPÿ•õ!±Äjµ•Q:r`wõˆš›Ö­I a! ‚MíÉáLJ¿¦Öhœ·öʰ¶ð—?mó¼ó±òõç–¬·"'c±ZY¦ªO-÷êÚÂrÀ¾Ÿ×e@ÿ_Aüðÿ­\ÍÖ®”–©Ô(†tïÙ3>>¶^ƒDHKKU)U!ÕBàüÙÓ ËéíÃάڰϋ}ð.WeëÍ%’DuclÍ J@÷18ç3‚ HCô_å€ê†WÓräqbÁáµngê€UY)Èáj±rÀ!Œ å ËØšAê„^½fÀÚð\ÿA¤L ç"žÚü†ÆuÃ× sù«mŽ@¹÷×`QË¿Aå^þ A©Ø'ŽÓª¢T>èˆ @‡¸úŠ ‚ø>¾þo•[ŠtcÒfl”‚ ‚TeªœþCûŸïà°š‚K»víqð‚ ~ÁÔiSG~õŸ¯€ö?ß<Aäžé?Z•FU˜ýÏÞ¸U5 ]jMˆü)ªBbì#ˆKdÿ_AÄ ¨Ýíå…m[çÕK«ˆø3²å\n*Ä91‚ ‚ åW”0„JjôÜþ÷øOoÞ¼¥Ødf³û1]Êß Îèw/aPôô/8 AÄßñ©õ»y«œýoø³/BÐù¯=ƒH»™"-œg ¯þcÕ¡ƒ{äðñc‡V¯^åFÊTM㟌s—nQ"Çcÿ/‚ ‚T D°šs²Så/š€ÐcG÷5nÒRŒ§.¤…‡hâcc°ŽJ#€ª¬´?j[Ø¡B\ÖL©®ËWS2sŒ ëÖPªO<Òü¾v}–í׳çÎ׫[çèñ‹÷j÷ºvéà›õÖµÛøþ/‚ þ!°€Ñ;v{Òò¾z—.]NH¨o‹ ‰ÂñH¹ Á2Iƒ ‚ HYQ ×ÿuOEúÿÊv¬ªitãöá\!ön8˜q®ÿ‹ R lwOŠö¿r@.ÃUJÚŸË qˆ±¥G÷$''§¦¦b= ⃘L¦ääääädßO®8…XÙÀõ?Ÿ|\ÿ×s¶nÝÙ¿¬ A|ììì­[·À€þºuïâ³ëÿrUíÄlLÚŒAüš‘#Gb% â›DFFÊ÷¨Ô7|y?qý_Aü\ÿA×ÿõ-ÐÿAA*Pµ¡ýAüôÿEñ»›'ÚÿAAª\± ±’ö?ß¡*/Žw÷B£…àê+‚ âoøÐú¿Ô…´CûrÏÀÙþA䞀þ¿å…ýšfUs}3µ&DþU!1ö‰Ä%èÿ‹ ˆ¿àþ¿´êt8¡ý¯ÂÄŸmI¢‚s“AA²æ®Þ«ró?{nÿ{ü‰§7oÞRl2³Ùì²Ó¶ÊmÕåæõ!c§0âôÿE)'a…¥W6¦MŸV@ç¿ö 8 ífŠüY´pž-¼úU‡î‘ÃÇZ½z6#—8w饆åø*Öÿë|‰Ñ–xÔ8‚ H9=qªžýoòã¡À èüמÇj þ”-Ü­[[8..6..[–KñgÓyöCÝH@猂 â§øÿ¯+¸ww@˜ü¯€‚ÕjŠ®ŸqûÎI"„ w‚”„R&3+++óN­Zq‚Õ„5â ²ÿ/‚ â¥ü+ð.Ôÿ+&¥J[¿^£›i×®_¿*Š”0„! !@† a‘#€–0€a`€P’w&„ÉP @€R @)¥òW[hþ@ä(b—,ÿ7J $Ë? ”%”Rù DÎ@€ä”7O)%@©.HV …í·‰³KT¨"@)!$¿é¹Éÿ ·6»´àWBä ‘›‘³S Ä!ØrË%æo‰R aÀ–XÞ¡  ù¥äï‘üÚD(ù*’¨D$ ”Šr J%J%"IùMK’D*Q (HT¢ðš:õ0 ˜Í&W×(‚ ‚”©î+€sH`6êx^U»vÙøGá®>‚ü¬¶8 ®åÒݯö¿Øžßö*1ÿy Ķÿ§àÿ‚ßmÇ­»owó’BpþJ\mÓ.+R!Í’Rûfcÿ•:·@Û´ðïòÏÔa£Û)´Í»é<Ú¦mß oî¶çÂ폑ÛZœc›¤T¬&³ÉàúREAüòÿu5 ³ÿµZV«Ïœ¿`¶X” …Ë‚ ‚ ˆ38ÂÏÏÅŸÙ|ùòe`ά¤òëÿ"â/øàú¿öàú¿þR©lذ©B¡Éâ0›,X?‚ ‚¯ÿ”*­ ·Ò® :«U$,Ãä“gy´|Á°y†CX`B2À†PBJ¡À2ùþ üaòòÀ+Jåñö´°GAˆRšïRàêaç¾@)ÿ»yå?þŸÎ…ÿÇݰ]Øû ûGÅB@öÕ(Îÿlƒ3í>î&#öºëáA‰mxhÁ&ì¼Cìý:ÙEþ—¡@B ü?ä% {1 ˆ’­qJ’Xà¸$Ñü&)Q T”¿œX¢¢(1„H’„ ÔFFF±,k6é°%x®ÿ‹ Röúã•¢(]ºt.HSW¥,pâEÿ¤Ü¨šþ”šM†ŒÌÛÉÉçêÔIä8¥ ˜±- ‚ ÷@ÿñ¼úÊåsAAÚèè:‚Õh6çRIÂ:B2‡†åø¨¨Ø›7S®_¿_õ‚ HeÂÇ×ÿ-äÿÁ0\Nnnõˆ(‹EoµšPü!U]¤Ù<)ÛŒ”J‚Õl1ë#"¢ty¹ ƒ#qAŠƒsž†aXÁ‚« UY÷1”ÂíŒ\Τ7”JeVªå8†R© 3Š¢À)4%—UšvíÚ8pëAßgê´©àsëÿR{ý‡ ˆýûg4Y/&߸pábvv¶Á`P©T!!!uêÔ©_·¶6P!IbÙfDA †+B2 †×¨oŸèέ åºOá5êËEØe»Y71H•¬Å*8yáСCV«56¦vݺñ™™Y×®]»zõª^ß¶å} 5jÖÙ˜çuF—¯e¸HQ ÿ/‚ HÉ)bý7Oî¥ö:©ÂdŠ3¤¢õ«¸v%uïÞ½1µkõïß×l6¯^½vÈA ¥b×ν m˜PØbù IDAT@r“ñþû;Ô¨!Çëõú={ö»Éˆ ‚ &ï>¶J³!Ù.h³†×¨/œ8X‹Mé°e—YŠŠt£&6h³2ºÜ—aû”¶¯žïâˆ5™Åÿþ;£Ñ¨ èg0|Øä)öŒÑ`ìܹc­ZÑ/^Ôâ0ã‹]ÆÎ;vêÜeãÆM¢(æææ>þø°ã'Ž•A©¬L™ìõùúû_2µ¾ýÃ>2:º~ýº3gÎÄ)Q®B[[[ì+wÝý‰ï?ÿk wÝÕ[¨àøßìOeiöPÑdÇÌÎjßÌê–œ¨‹vpÒ}¸ƒÓèí¬lOñ ÓµH)•H$“ÉäœÙ³ÿñŸmÿþ—^ú×€ßÿÔ“O\ýG×ìÜù 7¼»¡¡!‹+å)T0N¿ûÝ×=òHß'>ñÉ•+W<÷ÿþ?n—«µ5· JÅø_NaËñ¿¥ç¿ò&žÙ¥÷–Ž/2xò@ffÎîšoÉÜ—´3…6—½*8û’ÖÍÍÍ@  Ý|óM?üáz{ïþÚW»óÎO\yåúnx÷èhÄZ çš7ÙçÎ=‰<û?ÿ~åÊGŽùÙ‹?¿á†ë D©LÓ·Û¨v“J¥Âá°ˆˆ´Ûy?«sþ—)¦¼E²3\I­’SÛ™ñ›#üÕT¶H§¼^ÿÒ¥KÞ\¼¸ûé§¿qÇw¾ó]ׯ_¿nûö§Ü.×áCGº»»~Ÿi† \°`Þ_|ôc^ŸïÙ¿ÿö/þÿ—6þO=þØWÚÛ;òD©^yåWÒ×·­««ëöÛo§BØÍ‰'ž{î9Ùdçý4D ô —IñÖµé4ΞҋœÆ¿ÝU8‹Ö¦Ûe^²fM8>|èhCƒ{ûö§>ûÙÏ|ýë_s»\'O†Â#‹/npë"޼¹¡gƒUäÚkßõ•G¿<22Z¨ ¦fÓ¦M„?öÔÕÕµiÓ¦M›lþ²Ž4/[û_¡îÑÌüÌÌ"ý¶Ùa+ïJJ]ÏÔv;{f‘%­‡ÓߨG,îèœõþ÷¿ÿùçŸ?öÖñ%K½ç†‚áco‡GÞóž÷t´·$âgмâŠõCCÃ>¯7‹·´¶)Ã}Ýu×*¨I6¿þ¯»X<ÌDŸò¶æÌì•ÿ††‚¿Ýõ»9sfu_t!Õ”Q(þí®ß­_wY[°4Œÿ€™Í^´è¢U«ÖPG@ÙíÛ÷êÁCGÖ¯»œªØ(ÿ¹\ÆÜ9³¨ `&Ì3+ QP«qýß<½)Í>Ÿ×ëåýf‚×ëmnn®ëðõ}G#Ã.V|Àädòžæüªþ2‘.{ºÈb®ÿ À)lyýßsÜ’ÿ:Súüœ ì?ÂÆ_óM ?¬ëŒ˜þ7Nö÷ çÿ`Óðçõµeº‰-Öø_À4¹‹Eª˜±ßb’õ¯l|K ÿú2íã9âv»ý~¿ˆ(¥8€ª‹Çã‘HDDR©ÔÈȈˆˆ,²Û7θüÇW ›)Òù{÷Ýw·´´\~ùå"ÒÔÔ´qãFª @uíÛ·ïŸþéŸD$ îÞ½[DV¬8ÒÛûWöÿ«sò8ÇO~ò*€­\~ùåÖÒŒ·l±ó"]PÀŒþÓã:€õ¸ù8×ÿà6ºþo¾¯ÆÔúTš5¶73mMdóÈ»€pý_ ÿpt,>‡“ÿùÀ1œzý_Ôsyñƒñ¿œÂFãóqç †œ‚¨Ì°Bg|á_ ìß8çÐþÀ1¸þ/”ù ¾0þ Ìl>þ—ö?€úBþàŒÿà¶ÿ‰DÉõ"‰îÚµ'’ÿ8ã`:|>ïW¬õz½ä?€z¡µÆÿ”=ÇÿZý¿³."ÿp˜¡¡!·Û¨ v“J¥Âá°ˆÄb1‘V»í^¦ÿ—üÀ1Ö¬¹äÃþð7¿)]]]·ß~;ÀnNœ8ñÜsωȶG¶‰ÈÇïÚméÿà0ÍÍÍ›6m¢ØVWW—õgjóf;î^¦ÿ—ñƒñ¿0Œÿ¨;^¯Gèÿ(;®ÿ ò”Žëÿp Û^ÿ—üPȃñ¿@þ@Éÿ PfŒÿùJÇø_NÁø_ÿ tŒÿòJÆø_€2cü/ÈP:Æÿp ›ÿ¥ÿ€c˜¦944$"n·;P!ì&•J…Ãai·ó~’ÿ8Æ+¯üª£Cúú¶uuuÝ~ûíT»9qâÄsÏ='""›ÈP6›6m¢ØSWW—õ7jóf[ï'ù Ìÿ ò”Žñ¿œ‚ëÿ€ü¥ãú¿@þ@Éÿ PfŒÿùJÇø_NÁø_ÿ tŒÿòJÆø_€2cü/ÈP:Æÿp Æÿ€ü¥cü/ÿP2Æÿv‘H$©‡ mÞ¼¹»»»··—ª`7;vì‘k®é¿å–›m;þ—üØ%ü =¶|ùjmƨâúúú¨öÔÝÝmýzpË;ï'ý¿€-466._±¦©©‰ª(‚ñ¿œÂæãiÿì" ê4ý¿€Gû` Vÿ¯2¯a¨p8ìn (§T2Õìó555Q€êç¿t:ÕÒÒ2øöÉÎŽ¶T*îñxè¢fŽËÝpjðDÀ0Ó)jc2¬ñ¿›6mîîîîíí¥BØÍÀÀÀŽ;DD¤Ï1ù/™ˆ,ìê>tà5\†hÍ!€ÀLPZ\ÃáááÓ/^‘LF©‘Éëëë£ØSww·õ7jÛ6[ïçyù/•Œy¼‹—¬;}î;<§Ô¹çÏ~½Ÿ·ªÌ7¿d­2{U™å\88q6wËyŸ03õ¤7}îC¨³?xç­9ßV2ŸêsÓ™:ë·€>ïy+¥æ†Øì;ÉʉRäsnêt*‹ÇFøª™ÿDt2I&"TS$‰ÆÆÆ¼@aü/§°ùø_®ÿáøð7pô˜2<ã'¨@þ«AËW¬ijj?Aå öpý_(‹Üþ_·%•JŸ€#l}hëÆŸ²íîåùÖ1 W2Éù_PÏÁÏÐZNF¢MM-_G›Ïí6´6ËX0J646Sá€êç? ž.w,–>täŽD"§­­íâ‹/^rñsƒY ]|Ê1yÖø_š ùoÎüÙßþÃþ™Û¡9óWXë?QÞõ™ƒú †+™T{^=ô«_ý*™L^xá‹/:sfèØ±cG}ÇåkWx=yó¦\›æ¿™Î|¶Ý4êËÝtä艗^zé ºþøoŒÇãßþú÷755ýë¿þ¢¿¿¿££cŲ…¢E ^ýG=óæÎ±æŒŒ¾ôR‘‚€šdóñ¿Ó:ÿóœù+¬[öœñ÷™r¿†œ"Ù÷yW˜³Úœù…ÒdÎgZó¾–¼Óã_ÔøâpÃpÅâæ¾×^óù¼ï{߉D"·Þzû–-[o»ý#‘HäZ«káÁƒ#Ñ´:ÿ AÙÿøêï¼ö'?Ù™N§ƒÁЭ·Þ¾{÷®BpXþ³’“uË›¨²—±²QÎÂã×`´æH¾–¿"+™Nö*ôZ&³dæ¡ÐTépÊp%“úäÉ“—¬Y …o»í¿y}¾þ—¡µþðûèÈÈèúõWœ9s&žH+ÃU¨`[[ëã=z×Ý÷|ÿû?°Öp×]½… ¢TŒÿà6ÿ;Ùü7ùö­ì ThºÐœ’V>ýµMi¯ÖòŸ2Éd2™œ=gÖ?~ÿù×öïÿÚW üO>ùøo»kçÎZ[Zb±¸RF¡‚étúÝï¾î‘m_úÄ=#Ñè·¾¹Ýív*€­ó_v+WÍh·i¡•gšîrš*'³'™¶Ìñ}ÐÄAÇÓº¹ÙB¡ðÍ|Ó%—\Ò{ç'N¾ýöÇï¸ëÊ+×ßpûGG#ÍÍÍ€?wGVÁt: …Ÿ}ö­\¹âÈ‘#?ûÙÏÓétÁ‚(×ÿ€²¨æù_râWÙ×_R ›üÂ9½Û„¿š‘N'½žÀÒ¥KÞ\|q÷Ó;¾~ÇÇïz×»Þ½~ýºíßxÒív>|¤»»;ào6SÃ… .˜?÷/þâ/½>ß³Ï>ó‹_¼´ñÜ÷øc¶·wæ-@Ýå¿ì Xá•XÍxyC[ñ0GÔ«aZ›.Wú’5köîÝ{øðÀ…vmÿÆ“?ùéΛþËn·ëÄÉÁPxäÊwlp»Ò‰TÁ‚Ç6ô¼ããwü•ÛíºöÚw}åÑGÂ#£.wSÞ‚˜šÍ›7www÷ööRìf```ÇŽ"rÍ5ý·Ür³3®ÿ[’ì¡S‹DÙC( ÉpÍ…V2ý×’w…ã—ÌzL:t´x4ÔÑ1÷ýïÿóÏ?ì­ãK_üžnÃÇŽŒ¼ç=ïéhÄ£§Š¼âŠõCCAŸÏ‹Å[ZÚ•ÑpÝu×*ˆ)èëë£ØSww·õ7êÁ-[켟*™Œ °ø[æìÞõËU«×&ãaíÀQv4Ρ ?‰ÜM>ÿœH4¾wïÞ$“Idz|ùòeË–yšÜ‘Ñ·Ítª|•Ç×¶ïÕ]—¬½r4<˜™ûúë/îþݫǪU ×^s•=ßk¯ûOýýý|JØŸu°r4‘Ÿýüå*îÉÚ5>|tٲř9í9þúoÙMt„?L_* ý¡ÙßÙ³áëׯ×ZJ†JÄGFÃ'Š à˜rA*Ìñù̇²3ÍT8tÒ0\ ^e¸L3•LD'à¦\“Äõ€üÌh LÇã#•,ùÀ‘jùú¿pòÇàú¿œ¢F®ÿ €Ú0ÁñZët:H$gt'\.—⺞Šbü/ÌxþK¥RiÓ5kv·Çë›ÑˆF£§ßt)·›ñ(UÊ©t:Š.[q…6S±hHDD”ˆž{ilð,ìZöÆþ_·¶úÝ.WfªÛúX­Óð @M²ùøß‚ù/ wξH›©x,<Ó;O'›¼ŽÎ®á3ÇÚÛÛÆh*‹§:guÍñ·ÎèÖÃáàÐéãž&Wvëce¶žwÓUÈé´ †–,Ÿ…M®À~$‘ÎY³ÙÛÒÒârVëã¢ÅkRÉhp踈Ì\ëc“'° kÙ‘C{2­ÛúøM(bÆ®ÿ À¶>´UD>~GÐIùOk3§RImšÚ¬ÄÕ«LÓL¥R±x\kSİZc±ðhxp¦7‹øs²[+¶õñ›¨NþË‚•¹z©ÎÑ—i}|ûäa³"é3š5§Ûj}‘Jn={Ó.§ãŠaü/T"ÿ‰èñù¯­ã‚ ×;|æX‰ÐÌV룙NW&ÿ¥ÓÙ­RÉ­Ÿ¿iò¨vþÓ~h÷Þ³»H©O^Vê~èüÙ(mš•8ú0o+•Ùzº"/T’SÇÿ‰€½½½;ž¼¬PÜñäe½½½º=4f:m¦+Ñþ§Tzò[ÿþ^,²ª[ÞwÝô7 PÅü—'Æ}éáÏìØ±£H™/=ü™’w$_^L§ÍtÑü·lå•o¼öJöÄT`º¤­ß|Ó5yçÿðÿü<]j`%ÿ“¶zõš›nºióféîîîíí¥BØÍÀÀ€•‘¶mëÇÿ=?þåIf…š­Æ¿ݹ%3Í‚=°+V÷ìßÛ¿oÿ²•çML5þ¹JÚz‘~áR»Œón@^~¿¿¯¯z`[ÝÝÝÖŸ©mÛl½ŸÆDñOçõÅ/l.Tä‹_ج§ _d4MÓÔùoû^ý·«{òNLé–žüÖE¤ÐzŠmçæá‡>=½=Éßþ§ t¾¾ï—"*ïÄÿQ`…ÿçÇ¿(¸ª÷ö?`ò¸þ/T$ÿlš;çÔÛEDÏ@SVÅzGón¥ÐÖo¾é3½i€ªå?-º2¿µ _/®"ùH«ªm]¨5¿þ¯]½¾–ŠOªZ[Ï»i€ªå?­+4F!oÊôx<©T%â‘»ÁS­­çÝ4€¼6lèéïï§ØßÖ‡¶Šƒ¯ÿ+ºRíZD<ÞÖH$*"±X\D+Qé”Ym74(‹Å+¿õìM»ÝnþÁÔ¼ÆÆ—ËŸ€ó_…$‘ÆÆÈêU«¼Íí"rñÒ+DdîÂ¥•܇þã-ÖDå·žÙ4j^08tæÔ1¯§¸?Œÿ€šÊ"2:rJD‰ˆˆQÜs_‹÷âõµ]ؽæà¿mmõ»]D@@}ç?K2á]A K&"­í ;:»†Ïkoo¯ÛzðúÚ¬‰hdxj €Ù|ü¯Á;TX42Ô9kv0J§Íú¬¯¯-¶n™œWÒòà$ZK*•ŠÅãZ›ÔFˆœ¿Íëÿp ›_ÿ·´þßÓg†öìÙ ˆˆu6÷Ü×É}ÀX»vuG;mQÇ+!ÿ »kÏÜÙÝÝPq¨7áPø·¿ýÝúu—µµµRcugZã{z®jmm½ì²ËDÄãñ<øàƒT€êêïïþùçE$ îÞ½[DD^®‘üwðБEÝ®^})o3êÓÞ½{X¿n-UQ]/¿ü2•ÀVzzzzzz²çØü4¯%ÿçr©¹sfñ£nÍ3˘è_ÌÁCGø›/¼º÷5ªkúrÿÀA¶|nËO½éþ{ ƒKýæÊ>«_vÎËnðã´`Óü'"W÷0ühg(<ºté’;ïºgåŠEK/Ù¾ãëCáþè…?yß{©Ÿ¼°ÈœB=¿\ÿÊ‚þ_`ÚQ&íïÿˆÜzëmË–,ŒŽžY¹²ûƒö!ù·—_‰ÇTÀVÊvýßÖö…Á¡ãÅçLþYÀA|¾æ|äÏEë×­‰E†E$ ½ó®lll4 £ÉÓDƒÔ›_ÿ×]ÆueGºÖö…Å&ü¡fhm®_·FDbçõ`½cý%Z›ñX˜*ØJ…ú[ÛZ·ì9Ù9Ï΋†bÑи™AÂ_y1þ€SØ|üo9ó_pèx&Ìe7ïY­[Þ—Y€à¤üW$Ns³ãÓä®Ìfhب£üWÒ¸ÀA‰äÛoŸ:2ðæé3Áh,¦´¨¬++¥¼Þ¦ŽŽ¶ŽöÖEÝz*€=uww[£ܲÅÎû9­üþ=ï40¾Í/oû¦ñ¿œÂæãéÿ¦kÇÿ`§o.ª˜¦âý¿öWFŒÿ€² ý(Cþ£ÿ@þêÈ$Çÿê‡Í¯ÿË70ãéJØ íÕ§µN¥ÒÉd²øb n·‹ƒÉlˆãÿ*†ñ¿œ‚ñ¿(&™LE£ñ–¶Ù³Z‹/‡†Oy½M ¼kNÊ´ÿÈ8'•JË­0µÇ‹/ìóù››G^ookq»9¥ˆ½èÂhÿ+#kü/'ÒòŸƒ…ÂáÖ¶Ù¦6c±ø$ÂbÊãñ´´Î …Ow´·Q{ö¡”"ÿ¤<=S­í ÍÿT¡™õ&N‡ƒ³’ÉÔ$‹$“ÉŽŽYÁá`:¦”©¨7[>·å‰'³íîÍÓ9º§IDATxû_pè8‚¼LSGc±d2išæ$¯ «µN&“ÑXÌ45•°UÂ+ÒþÇñ»™ño¦ì¦¾Öö…y[ ó΄þßÊØ°¡‡ƒÿ8ÂÖ‡¶nÜø)Ûî^åŽÿkm_hµæ$ÂLaöt¦‡2.† ãü/g)[þ›|^pè8­}¨±üGÿoe0þì•ÿršî&ŸðÈ‚¨íüGû fó_¹‚c²RÂ$—ä#kÏüWäYÚÿ qýß\…üh„ÓC<ý¿G¨\û_æ°¿ìãÿr¦y?àDŒÿ¨˜Õ«×ÜtÓM›7Kwwwoo/ÀnvìØ!"Û¶õIÍ_ÿw|tËÌÉ~ªøÌºEÿo ä?Úÿ*Ãï÷÷õõQl«»»Ûú3µm›­÷“o& l!>/*§Œ¬ñ¿òŸƒ¹ ×Ñ£GÜzrÜGq\úÃvá¯È³¦iRE[qSU‹Þ†jnö½ñú¾ÎÎY^¯7•šà’¾n·kddô×÷-¾ø"à Ä^ù¯òÔ!›ÿ%ÿUËåjkkmokù—Þ¹lùêîîEÅ—ýõƒÞØ·pÁ¼¶¶VWÿ%ÿ@þs"ŸÏÛuÁBe¨Ã‡öïÞõJñ…[Z]]ó.\àóy©:»å¿)?‹’lØÐÓßßO=°¿­m•šÿ‹©1 £­µ¥©±qö¬Îh4V|a¯×¼^ç±Ó4‹´ÿ¥Óiª@þÃ9J)ŸÏëõz&l%RJ‘üì‰ñÃõ€üWS)lçèüÇñòPGŠ÷ÿ’ÿ qý_ ÆÑÿ pò0]´ÿŬ =üÀ¶>´uãÆO‘ÿ€šUüø?ÆÿÈ@­)ÞÂGû_qý_ ÿvÉ´ÿ„ñ¿ÕwúÌО=¯†Â#J”RJkÍ}uîEüþµk×t´·•1ÿÑþuˆëÿ¢˜¡áà®Ý{æÍ·dÉRj£ê‚Áà®]{Ö]qi[[ ñ¿g!ÿUÙ¡CK/Y°`¾×ë£6ª.øýþC‡ß\wùÏŽ¸þ/§àú¿(ú¸ÝóæÍõûT…øýyóÌááá’JOxÿ ÿ!'pøiù³¯×”ǭí+ø©³2ÓšÖ•5þwÓ¦ÍÝÝݽ½½T»رc‡ˆˆôÕ~þkm_:>ù…­‰É©Ø¾Ù(…øÚ¢‘á¼ó³æ]•W$ÿÑÿ[v}}}T{êîî¶þFmÛfëý¬tû_&eRàLshø+ôT&𠈨<ÎÿÈQ××ÿmm_hÝ233ÇGÀœgs¦ó®0»TN‘œæ]¿mÃß‚××–­éì™9 Ô§olúÛŸÎîÕZ?õÔöí;¾9Í5«ÂèÿØÍ ¶ÿew¼ZÓÁ¡ãÙíã[ærZs–¿Âñ¥Š7.ߺML&üådÄÌÃìùÙ33«­çVÃ`(tß}›D$OlÜx5óÑGÿÜ–‡Dä÷ßø§¶fŽÿ«Æÿp ›ÿµ×õ?²3Ùø|V(±MgÉ“í M×­Ö–Ö»ï¾[DøÌg¿÷½ï‹Èw¿û¿­ðwï½÷N9ü‰šÌù_¸fÀFföø¿²÷´Ú¼ëö¦¿òè#CCC/¼°óÓ÷?pìØ[_ýÚS7Þxã—é3ÍÄT²ŸR îx<îr¹ µÿÅãqwÃØ³˜&kü/-ª`ëüWÞö¶œ>ߺ}Ïù1õ¨“ßúæöO~rãþý¯ýøÇ?^²xѪU«üñ©…?q¹Œ–€ï׿þÕå—¯khhŸÿ’Éäkûöü^—‹kmê#ÿåneYÛ4 Ö-Ã/?úèÃ_øü©SƒsæÌýÌßü­aL½5Éå2Z[<ÃÁ¡Ÿüø‡©Túün^%" .¿¿9à÷.Úÿ ŽÔËõs"Wf´GæáôCaf…Ùk.iZ vÑÈpö ¥½ž†ûþúÓ/¾øâõ×_ïirMs|†Ïçñz=ÉT[<žPJ™~^%J”×ÛdF"‹'T= ¦òßFf´1át¡õLr‹ö’“ä&Ì1Éå ˆ"¢µÙÞø¯út:©uNÎçñ46»\J)ÃP†1ÖÏ›9à/‘H&1ª½,ÿ À)¸þoåd·ù9e¨/G²W+¦RqÞ@}ª©üçÄÓ»hæSÈ›‚ñ2§+Ïn´fü/ÿjAS“;•LYCGaÉdª±‘Õ\êf礨²Ù³fC§SÉW‰¨:­u*™…NÏ™=‹Ú€<ðÀ¼ÞÖ×× ëçõnß¾ýÍ7߬Ÿ×{Û‡n»÷Þ{l»{´sT™Ïç5 9sf&@;H&“Í>oS“‡ªÔ0ò_õy<^ÇK=…dŽ´d_K…†sö1þRO_ûÚS™éŸþô§öÙUúÔ…§žzÊqeó›ßðz+°ÝgŸ}vdd¤òeó›ßŒŽŽV~»ÿðÿpâĉʗݵk×àààÔÊîܹóàÁƒÎ*ksä?uáøñãŽ+‡y½Øî‰'ÒétåËŽŒŒTe»ƒƒƒ‰©ž‘~:eÃáp2™œZÙ3gÎD£Qg•%ÿÀF8þ€ƒuuuuu-üå/™™³aÃÉ;§¯oâe ÌùR_ßJ‰ˆ¬^ýÃ_üÿJ-•™“9šÈAû–ö‘9ú÷êg?™ü‡ó wíÞ3oî¼%K–RU wíÚ³îŠKÛÚˆ€€šEþ«²C‡–,^²`Á|¯ƒF ÕðO·hÄï÷:üæº+Èö•\cMƒ¾®{á“|9^_[½½ÞÚx‹ëíóì¸-ù¯Úo€Û=oÞ\¿?@UØß˜7ϦÃÑXk&LæuÕØ ŸäË™äi kéõÖLØ­«Ï³?´Œÿ¨zàðÓòg¯º^_ @‡íÔáq5 x½üS­Áü×Ú¾0ç–ýTñ‚“œ9*¶¡)ü°nNÿyQÛ\îÆ]@½…¿âùk,$Y¯”Ô[-eëÿ ωVÖœœù¶bÏ}›L³9\[üx2ܦ6'¹°6Å08ÜeþÁˬɗ\'¯ÝŠ€„¿ª}…ÍôrÚ­‡9 oÙM†…¿XÞ•Œoz_$g[y×︿‰9¿3¿«23ëçgeߨþô7¶?­µ>Ë´~ê©íÛw|sjù/kM0µIþÅóP¾Ë|1UKå¾2-‚ãs[f~pèxpèxfN‘âÙE²' MÚz¡ÝpÖˆ¼¿³gf Öó­`(tß}›D$OlÜx5óÑGÿÜ–‡Dä÷ßøKZaC£·Ùç™DLT"ÒØànhôF#CüÑÁh’¯´Îã`|’i¬–²µÿåÿW$Bå<5ɰ•½Øø"…V2%þó±ÐtÝjmi½ûî»EäÏ|ö{ßû¾ˆ|÷»ÿÛ ÷Þ{o©áOD WêU—(5A RJ›æòå« Wï“üS–¹ñ ˜ å?þ¯ZígöïºEµé¯<úÈÐÐÐ /ìüôý;öÖW¿öTggÇ7ÞøåGúL3Qêê"#§–,»¤¥¥õرñh"mæ9ÐP†¯Å×Þ1kŪË"#ƒ¼(Kø£½€]ò_v¬|Ìéóå}Eþ¨“ßúæöO~rãþý¯ýøÇ?^²xѪU«üñ)„?IÄG•¨yóÍQ*™Ð’'ÿ)1Ü JŒ‘ÐÉD|”·`ú²ª¥ ”÷uåä¼Z:Rj2¯·æ?·Ù¯·Æ>Øõözs~ª9âÃ\…Òg4ŸM¸òÚN‡´ LÈ0äË>úð>êÔàœ9s?ó7kzÊk‹ÇGâƒ#Ôjå¿ZêäuÕöQÅ_oí½ð _o½Åõöz÷ºf$ÿåm´ffOOi%µ N¸ò’¶î¸ŸÅ™"„¿IÐ^OÃ}ýé_|ñúë¯÷4¹´ÖT  ®”'ÿf1ùqy‹_Iñâ4™äN:âgS‘’µÙÞø¯út:©'}?È%Ënu«|ƪîÖ‹f>„Õ‰€©Tœ7@þ›YÕM]¶=½‹Öi>…µô¦Ê¥kAûøO²iêH42{vgñ²ét22Â1€ZÉ>Ÿ×0T8v70ju'•L5û|MMMT ŽòŸˆx<žâý_°9ÆÿÿDDÄeGhôø©# ¼š<þ£GßpüúTGþþ_¥ _³ïµW÷Ìîìôùg'#ÔPMþx<ºoïžî‹.PаMþs¹ŒÖÖÖ@KpçOºfÍê »Y±PDsÏ=÷Ó¸—ƒoìß÷ÚÞ¹sç´¶¶º\ä?€mòŸˆø¼ž®…ó Cí{moÿ¯~IMeÑðÏŸ?wÁüy>/C©6Èétª¥¥eðí“mZÇ[[[guvD£1j ( ¯×ã÷û½^RÊån85x"à˜éTÎ2yϵ@©ò^¼@%“±¡Sca°Á£Œ†C^kmë.C´æK˜ J‹kdddxøôÅ‹Wh3™Jžû•‰DcñX[k[¡s­0¦©‡ƒÃ^×›ÕéÔÞyÑyùOD<Þ–tZŸ8ñV$:j¦µR†2”¡”R†R¢”RJ†QJ‰¡ ¥ ±kk¾ˆˆ:;´X‰QZ´¥´ÖZë±mÖZ´h-¢µVÖSç{zì)«€ÖJÆJk­Dim[‘Ö¢ÆÊYψmíˆ)Z]½µ%™Ò’ù*•ƒD´(ëÓe#§”RJD+kZ”VZ)¥´¥•R"çfŠ(eW§”(k}V)QjìÑÙO¥Ê,¦´ˆ[Èš–³¥Ç6µÖ³ÿ›9¶«Úúp‹˜b*-¦ˆhѦe}DM멵˜Z+ÑiÓÔ¦õ±7uÚ0\Í^ó Ã5þr#±X,Op®uÀt¤’)§)çâyòŸˆjhô64x¬‘‰cqÊ ic)jìñØgŸ’ì'Î>³æ±h˜õ,Y_Ù"ç}eŸ>÷žSêÜóg¿ÞÏ[Uæ›_²V™½ªÌ‚r.œ?Š8›»å¼O˜Î™ÎzR›>÷!ÔÙ¼óÖœo+™Oõ¹éÌ õ[@Ÿ÷üÙ‘ç‡Øì;ÉʉRäsnêt*K&bãþ±0SÚ;/ߺ “‰H2¡vj§Ÿ ÿ€üòj%ÿÍ™¿bÂ93!³•ñ˜ÁüW­àõööO83’ÿÞþÃþBpÎüÖ­PjÿlÞ"ãgfŠçÜO¸<Í„…Ìž·<ûaÉW˜3E¦M.{züã'&œ™=sÖ\hù¼+@&üíܹsÝe‹2sŠÿ(ÒX¼TŠ”¥,@=„¿œ™Æ„éj†ºV­5Óu 0Óá/»ñO¦Ðÿ[ÞhMÐu 0sáoö¼åƒ'^Ï<5ñùÿJmœäÂ4ûT&üåtOªý/;æLY8ólÞ"®'ï "Ë`Âð'"*™Œ (×öèɰ[øË>þ¯½ó"®ÿPãá/çüeÎ4þØ-üåtÓþP/á/‰’ÿj?üYÇÿE"Ñ]»öD£QÃåj¤Öj8üYÇÿù|Þ+®Xë´©H$<` command). When commands are entered in the command prompt in the Veusz window, Veusz supports a simplified command syntax, whereq brackets following commands names, and commas, can replaced by spaces in Veusz commands (not Python commands). For example, :command:`Add('graph', name='foo')`, may be entered as :command:`Add 'graph' name='foo'`. The :command:`numpy` package is already imported into the command line interface (as `\*`), so you do not need to import it first. The command prompt supports history (use the up and down cursor keys to recall previous commands). Most of the commands listed below can be used in the in-program command line interface, using the embedding interface or using `veusz --listen`. Commands specific to particular modes are documented as such. Veusz also includes a new object-oriented version of the API, which is documented at new_api_. Commands and API ################ We list the allowed set of commands below Action ------ .. _Command.Action: :command:`Action('actionname', componentpath='.')` Initiates the specified action on the widget (component) given the action name. Actions perform certain automated routines. These include "fit" on a fit widget, and "zeroMargins" on grids. Add --- .. _Command.Add: :command:`Add('widgettype', name='nameforwidget', autoadd=True, optionalargs)` The Add command adds a graph into the current widget (See the :ref:`To ` command to change the current position). The first argument is the type of widget to add. These include "graph", "page", "axis", "xy" and "grid". :command:`name` is the name of the new widget (if not given, it will be generated from the type of the widget plus a number). The :command:`autoadd` parameter if set, constructs the default sub-widgets this widget has (for example, axes in a graph). Optionally, default values for the graph settings may be given, for example :command:`Add('axis', name='y', direction='vertical')`. Subsettings may be set by using double underscores, for example :command:`Add('xy', MarkerFill__color='red', ErrorBarLine__hide=True)`. Returns: Name of widget added. AddCustom --------- .. _Command.AddCustom: :command:`AddCustom(type, name, value)` Add a custom definition for evaluation of expressions. This can define a constant (can be in terms of other constants), a function of 1 or more variables, or a function imported from an external python module. ctype is "constant", "function" or "import". name is name of constant, or "function(x, y, ...)" or module name. val is definition for constant or function (both are _strings_), or is a list of symbols for a module (comma separated items in a string). If mode is 'appendalways', the custom value is appended to the end of the list even if there is one with the same name. If mode is 'replace', it replaces any existing definition in the same place in the list or is appended otherwise. If mode is 'append', then an existing definition is deleted, and the new one appended to the end. AddImportPath ------------- .. _Command.AddImportPath: :command:`AddImportPath(directory)` Add a directory to the list of directories to try to import data from. CloneWidget ----------- .. _Command.CloneWidget: :command:`CloneWidget(widget, newparent, newname=None)` Clone the widget given, placing the copy in newparent and the name given. newname is an optional new name to give it Returns new widget path. Close ----- .. _Command.Close: :command:`Close()` Closes the plotwindow. This is only supported in embedded mode. CreateHistogram --------------- .. _Command.CreateHistogram: :command:`CreateHistogram(inexpr, outbinsds, outvalsds, binparams=None, binmanual=None, method='counts', cumulative = 'none', errors=False)` Histogram an input expression. inexpr is input expression. outbinds is the name of the dataset to create giving bin positions. outvalsds is name of dataset for bin values. binparams is None or (numbins, minval, maxval, islogbins). binmanual is None or a list of bin values. method is 'counts', 'density', or 'fractions'. cumulative is to calculate cumulative distributions which is 'none', 'smalltolarge' or 'largetosmall'. errors is to calculate Poisson error bars. CurrentPath ----------- .. _Command.CurrentPath: :command:`CurrentPath()` Returns current widget path, as set by :ref:`To`. DatasetPlugin ------------- .. _Command.DatasetPlugin: :command:`DatasetPlugin(pluginname, fields, datasetnames={})>` Use a dataset plugin. pluginname: name of plugin to use fields: dict of input values to plugin datasetnames: dict mapping old names to new names of datasets if they are renamed. The new name None means dataset is deleted EnableToolbar ------------- .. _Command.EnableToolbar: :command:`EnableToolbar(enable=True)` Enable/disable the zooming toolbar in the plotwindow. This command is only supported in embedded mode or from `veusz --listen`. Export ------ .. _Command.Export: :command:`Export(filename, color=True, page=0, dpi=100, antialias=True, quality=85, backcolor='#ffffff00', pdfdpi=150, svgdpi=96, svgtextastext=False)` Export the page given to the filename given. The :command:`filename` must end with the correct extension to get the right sort of output file. Currrenly supported extensions are '.eps', '.pdf', '.ps', '.svg', '.jpg', '.jpeg', '.bmp' and '.png'. If :command:`color` is True, then the output is in colour, else greyscale. :command:`page` is the page number of the document to export (starting from 0 for the first page!). A list of pages can be given for multipage formats (.pdf or .ps). :command:`dpi` is the number of dots per inch for bitmap output files. :command:`antialias` - antialiases output if True. :command:`quality` is a quality parameter for jpeg output. :command:`backcolor` is the background color for bitmap files, which is a name or a #RRGGBBAA value (red, green, blue, alpha). :command:`pdfdpi` is the dpi to use when exporting EPS or PDF files. :command:`svgdpi` is the dpi to use when exporting to SVG files. :command:`svgtextastext` says whether to export SVG text as text, rather than curves. FilterDatasets -------------- .. _Command.FilterDatasets: :command:`FilterDatasets(filterexpr, datasets, prefix="", suffix="", invert=False, replaceblanks=False)` Filter a list of datasets given. Creates new datasets for each with prefix and suffix added to input dataset names. filterexpr is an input numpy eexpression for filtering the datasets. If invert is set, the filter condition is inverted. If replaceblanks is set, filtered values are not removed, but replaced with a blank or NaN value. This command only works on 1D numeric, date or text datasets. ForceUpdate ----------- .. _Command.ForceUpdate: :command:`ForceUpdate()` Force the window to be updated to reflect the current state of the document. Often used when periodic updates have been disabled (see SetUpdateInterval). This command is only supported in embedded mode or from `veusz --listen`. Get --- .. _Command.Get: :command:`Get('settingpath')` Returns: The value of the setting given by the path. .. code-block:: python >>> Get('/page1/graph1/x/min') 'Auto' GetChildren ----------- .. _Command.GetChildren: :command:`GetChildren(where='.')` Returns: The names of the widgets which are children of the path given GetClick -------- .. _Command.GetClick: :command:`GetClick()` Waits for the user to click on a graph and returns the position of the click on appropriate axes. Command only works in embedded mode. Returns: A list containing tuples of the form (axispath, val) for each axis for which the click was in range. The value is the value on the axis for the click. GetColormap ----------- .. _Command.GetColormap: :command:`GetColormap(name, invert=False, nvals=256)` Returns a colormap as a numpy array of red, green, blue, alpha values (ranging from 0 to 255) with the number of steps given. GetData ------- .. _Command.GetData: :command:`GetData(name)` Returns: For a 1D dataset, a tuple containing the dataset with the name given. The value is (data, symerr, negerr, poserr), with each a numpy array of the same size or None. data are the values of the dataset, symerr are the symmetric errors (if set), negerr and poserr and negative and positive asymmetric errors (if set). If a text dataset, return a list of text elements. If the dataset is a date-time dataset, return a list of Python datetime objects. If the dataset is a 2D dataset return the tuple (data, rangex, rangey), where data is a 2D numpy array and rangex/y are tuples giving the range of the x and y coordinates of the data. If it is an ND dataset, return an n-dimensional array. .. code-block:: python data = GetData('x') SetData('x', data[0]*0.1, \*data[1:]) GetDataType ----------- .. _Command.GetDataType: :command:`GetDataType(name)` Get type of dataset with name given. Returns '1d' for a 1d dataset, '2d' for a 2d dataset, 'text' for a text dataset and 'datetime' for a datetime dataset. GetDatasets ----------- .. _Command.GetDatasets: :command:`GetDatasets()` Returns: The names of the datasets in the current document. GPL --- .. _Command.GPL: :command:`GPL()` Print out the GNU Public Licence, which Veusz is licenced under. ImportFile ---------- .. _Command.ImportFile: :command:`ImportFile(comm, filename, descriptor, useblocks=False, linked=False, prefix='', suffix='', ignoretext=False, encoding='utf_8', renames=None)` Imports data from a file. The arguments are the filename to load data from and the descriptor. The format of the descriptor is a list of variable names representing the columns of the data. For more information see :ref:`Descriptors `. If the linked parameter is set to True, if the document is saved, the data imported will not be saved with the document, but will be reread from the filename given the next time the document is opened. The linked parameter is optional. If useblocks is set, then blank lines or the word 'no' are used to split the data into blocks. Dataset names are appended with an underscore and the block number (starting from 1). encoding is the name of the text file encoding. renames is a dict mapping existing to new names after import. If prefix and/or suffix are set, then the prefix and suffix are added to each dataset name. If set, renames maps imported dataset names to final dataset names after import. Returns: A tuple containing a list of the imported datasets and the number of conversions which failed for a dataset. ImportFile2D ------------ .. _Command.ImportFile2D: :command:`ImportFile2D(filename, datasetnames, xrange=None, yrange=None, invertrows=None, invertcols=None, transpose=None, gridatedge=None, mode='text', csvdelimiter=',', csvtextdelimiter='"', csvlocale='en_US', prefix="", suffix="", encoding='utf_8', linked=False)` Imports two-dimensional data from a file. The required arguments are the filename to load data from and the dataset name, or a list of names to use. In text mode, the file format this command accepts is a two-dimensional matrix of numbers, with the columns separated by spaces or tabs, and the rows separated by new lines. The X-coordinate is taken to be in the direction of the columns. Comments are supported (use `#`, `!` or `%`), as are continuation characters (`\\`). Separate datasets are deliminated by using blank lines. In csv mode, the csv parameters give the type of CSV file sypported. :: xrange is a tuple containing the range of data in x coordinates yrange is a tuple containing the range of data in y coordinates if invertrows=True, then rows are inverted when read if invertcols=True, then cols are inverted when read if transpose=True, then rows and columns are swapped if gridatedge=True, use top row and left column for pixel positions mode is either 'text' or 'csv' csvdelimiter is the csv delimiter for csv csvtextdelimiter is the csv text delimiter for csv csvlocale is locale to use when reading csv data prefix and suffix are prepended and appended to dataset names encoding is encoding character set if linked=True then the dataset is linked to the file Returns: list of imported datasets In addition to the matrix of numbers, the various optional parameters this command takes can also be specified in the data file. These commands should be given on separate lines before the matrix of numbers. They are: #. xrange A B #. yrange C D #. invertrows #. invertcols #. transpose ImportFileCSV ------------- .. _Command.ImportFileCSV: :command:`ImportFileCSV('filename', readrows=False, delimiter=',', skipwhitespace=False, textdelimiter='"', encoding='utf_8', headerignore=0, rowsignore=0, blanksaredata=False, numericlocale='en_US', dateformat='YYYY-MM-DD|T|hh:mm:ss', headermode='multi', dsprefix='', dssuffix='', prefix=None, renames=None, linked=False)` This command imports data from a CSV format file. Data are read from the file using the dataset names given at the top of the files in columns. Please see the reading data section of this manual for more information. The options are explained below. :: readrows: if true, data are read across rather than down delimiter: character for delimiting data (usually ',') skipwhitespace: if true, white space following delimiter is ignored textdelimiter: character surrounding text (usually '"') encoding: encoding used in file headerignore: number of lines to ignore after header text rowsignore: number of rows to ignore at top of file blanksaredata: treats blank lines in csv files as blank data values numericlocale: format to use for reading numbers dateformat: format for interpreting dates headermode: 'multi': multiple headers allowed in file '1st': first text found are headers 'none': no headers, guess data and use default names Dataset names are prepended and appended, by dsprefix and dssuffix, respectively (prefix is backware compatibility only, it adds an underscore relative to dsprefix) renames is a map of old names to new names to rename on import If linked is True the data are linked with the file. Returns: list of imported datasets ImportFileFITS -------------- .. _Command.ImportFileFITS: :command:`ImportFileFits(filename, items, namemap={}, slices={}, twodranges={}, twod_as_oned=set(\[]), wcsmodes={}, prefix='', suffix='', renames={}, linked=False)` Import data from a FITS file. items is a list of datasets to be imported. items are formatted like the following: :: '/': import whole file '/hduname': import whole HDU (image or table) '/hduname/column': import column from table HDU all values in items should be lower case. HDU names have to follow a Veusz-specific naming. If the HDU has a standard name (e.g. primary or events), then this is used. If the HDU has a EXTVER keyword then this number is appended to this name. An extra number is appended if this name is not unique. If the HDU has no name, then the name used should be 'hduX', where X is the HDU number (0 is the primary HDU). namemap maps an input dataset (using the scheme above for items) to a Veusz dataset name. Special suffixes can be used on the Veusz dataset name to indicate that the dataset should be imported specially. :: 'foo (+)': import as +ve error for dataset foo 'foo (-)': import as -ve error for dataset foo 'foo (+-)': import as symmetric error for dataset foo slices is an optional dict specifying slices to be selected when importing. For each dataset to be sliced, provide a tuple of values, one for each dimension. The values should be a single integer to select that index, or a tuple (start, stop, step), where the entries are integers or None. twodranges is an optional dict giving data ranges for 2D datasets. It maps names to (minx, miny, maxx, maxy). twod_as_oned: optional set containing 2D datasets to attempt to read as 1D, treating extra columns as error bars wcsmodes is an optional dict specfying the WCS import mode for 2D datasets in HDUs. The keys are '/hduname' and the values can be 'pixel': number pixel range from 0 to maximum (default) 'pixel_wcs': pixel number relative to WCS reference pixel 'linear_wcs': linear coordinate system from the WCS keywords 'fraction': fractional values from 0 to 1. renames is an optional dict mapping old to new dataset names, to be renamed after importing linked specifies that the dataset is linked to the file. Values under the VEUSZ header keyword can be used to override defaults: :: 'name': override name for dataset 'slice': slice on importing (use format "start:stop:step,...") 'range': should be 4 item array to specify x and y ranges: [minx, miny, maxx, maxy] 'xrange' / 'yrange': individual ranges for x and y 'xcent' / 'ycent': arrays giving the centres of pixels 'xedge' / 'yedge': arrays giving the edges of pixels 'twod_as_oned': treat 2d dataset as 1d dataset with errors 'wcsmode': use specific WCS mode for dataset (see values above) These are specified under the VEUSZ header keyword in the form KEY=VALUE or for column-specific values COLUMNNAME: KEY=VALUE Returns: list of imported datasets ImportFileHDF5 -------------- .. _Command.ImportFileHDF5: :command:`ImportFileHDF5(filename, items, namemap={}, slices={}, twodranges={}, twod_as_oned=set(\[]), convert_datetime={}, prefix='', suffix='', renames={}, linked=False)` Import data from a HDF5 file. items is a list of groups and datasets which can be imported. If a group is imported, all child datasets are imported. namemap maps an input dataset to a veusz dataset name. Special suffixes can be used on the veusz dataset name to indicate that the dataset should be imported specially. :: 'foo (+)': import as +ve error for dataset foo 'foo (-)': import as -ve error for dataset foo 'foo (+-)': import as symmetric error for dataset foo slices is an optional dict specifying slices to be selected when importing. For each dataset to be sliced, provide a tuple of values, one for each dimension. The values should be a single integer to select that index, or a tuple (start, stop, step), where the entries are integers or None. twodranges is an optional dict giving data ranges for 2d datasets. It maps names to (minx, miny, maxx, maxy). twod_as_oned: optional set containing 2d datasets to attempt to read as 1d convert_datetime should be a dict mapping hdf name to specify date/time importing. For a 1d numeric dataset: if this is set to 'veusz', this is the number of seconds since 2009-01-01, if this is set to 'unix', this is the number of seconds since 1970-01-01. For a text dataset, this should give the format of the date/time, e.g. 'YYYY-MM-DD|T|hh:mm:ss' or 'iso' for iso format. renames is a dict mapping old to new dataset names, to be renamed after importing. linked specifies that the dataset is linked to the file. Attributes can be used in datasets to override defaults: :: 'vsz_name': set to override name for dataset in veusz 'vsz_slice': slice on importing (use format "start:stop:step,...") 'vsz_range': should be 4 item array to specify x and y ranges: [minx, miny, maxx, maxy] 'vsz_twod_as_oned': treat 2d dataset as 1d dataset with errors 'vsz_convert_datetime': treat as date/time, set to one of the values above. For compound datasets these attributes can be given on a per-column basis using attribute names vsz_attributename_columnname. Returns: list of imported datasets ImportFileND ------------ .. _Command.ImportFileND: :command:`def ImportFileND(comm, filename, dataset, shape=None, transpose=False, mode='text', csvdelimiter=',', csvtextdelimiter='"', csvlocale='en_US', prefix="", suffix="", encoding='utf_8', linked=False)` Import an n-dimensional dataset from a file. The file should either be in CSV format (mode='csv') or whitespace-separated text (mode='text'). A one-dimensional dataset is given as a list of numbers on a single line/row. A two-dimensional dataset is given by a set of rows. A three-dimensional dataset is given by a set of two-dimensional datasets, with blank lines between them. a four-dimensional dataset is given by a set of three-dimensional datasets with two blank lines between each. Each additional dataset increases the separating number of blank lines by one. Alternatively, the numbers can be given in any form (number of numbers on each row) and "shape" is included to reshape the data into the desired shape. In the file, or included as parameters above, the command "shape num1 num2..." can be included to reshape the output dataset to the shape given by the numbers in the row after "shape" (these should be in separate columns in CSV format). If one of these numbers is -1, then this dimension is inferred from the number of values and the other dimensions. Also supported is the "transpose" command or optional argument which reverses the order of the dimensions. ImportFilePlugin ---------------- .. _Command.ImportFilePlugin: :command:`ImportFilePlugin('pluginname', 'filename', \**pluginargs, linked=False, encoding='utf_8', prefix='', suffix='', renames={})` Import data from file using import plugin 'pluginname'. The arguments to the plugin are given, plus optionally a text encoding, and prefix and suffix to prepend or append to dataset names. renames, if set, provides new names for datasets after import. ImportFITSFile -------------- .. _Command.ImportFITSFile: :command:`ImportFITSFile(datasetname, filename, hdu, datacol='A', symerrcol='B', poserrcol='C', negerrcol='D', linked=True/False, renames={})` This command is deprecated. Please do not use in new code, but instead use ImportFileFITS. This command does a simple import from a FITS file. The FITS format is used within the astronomical community to transport binary data. For a more powerful FITS interface, you can use PyFITS within your scripts. The datasetname is the name of the dataset to import, the filename is the name of the FITS file to import from. The hdu parameter specifies the HDU to import data from (numerical or a name). If the HDU specified is a primary HDU or image extension, then a two-dimensional dataset is loaded from the file. The optional parameters (other than linked) are ignored. Any WCS information within the HDU are used to provide a suitable xrange and yrange. If the HDU is a table, then the datacol parameter must be specified (and optionally symerrcol, poserrcol and negerrcol). The dataset is read in from the named column in the table. Any errors are read in from the other specified columns. If linked is True, then the dataset is not saved with a saved document, but is reread from the data file each time the document is loaded. renames, if set, provides new names for datasets after import. ImportString ------------ .. _Command.ImportString: :command:`ImportString('descriptor', 'data')` Like, :ref:`ImportFile `, but loads the data from the specfied string rather than a file. This allows data to be easily embedded within a document. The data string is usually a multi-line Python string. Returns: A tuple containing a list of the imported datasets and the number of conversions which failed for a dataset. Changed in version 0.5: A tuple is returned rather than just the number of imported variables. .. code-block:: python ImportString('x y', ''' 1 2 2 5 3 10 ''') ImportString2D -------------- .. _Command.ImportString2D: :command:`ImportString2D(datasets, string, xrange=None, yrange=None, invertrows=None, invertcols=None, transpose=None)` Imports a two-dimensional dataset from the string given. This is similar to the :ref:`ImportFile2D ` command, with the same dataset format within the string. The optional values are also listed there. The various controlling parameters can be set within the string. See the :ref:`ImportFile2D ` section for details. ImportStringND -------------- .. _Command.ImportStringND: :command:`ImportStringND(dataset, string, shape=None, transpose=False)` Imports a n-dimensional dataset from the string given. This is similar to the :ref:`ImportFileND ` command. Please look there for more detail and the description of the optional parameters and in-stream allowed parameters. IsClosed -------- .. _Command.IsClosed: :command:`IsClosed()` Returns a boolean value telling the caller whether the plotting window has been closed. Note: this command is only supported in the embedding interface. List ---- .. _Command.List: :command:`List(where='.')` List the widgets which are contained within the widget with the path given, the type of widgets, and a brief description. Load ---- .. _Command.Load: :command:`Load('filename.vsz')` Loads the veusz script file given. The script file can be any Python code. The code is executed using the Veusz interpreter. Note: this command is only supported at the command line and not in a script. Scripts may use the python :command:`execfile` function instead. MoveToPage ---------- .. _Command.MoveToPage: :command:`MoveToPage(pagenum)` Updates window to show the page number given of the document. Note: this command is only supported in the embedding interface or `veusz --listen`. ReloadData ---------- .. _Command.ReloadData: :command:`ReloadData()` Reload any datasets which have been linked to files. Returns: A tuple containing a list of the imported datasets and the number of conversions which failed for a dataset. Rename ------ .. _Command.Rename: :command:`Remove('widgetpath', 'newname')` Rename the widget at the path given to a new name. This command does not move widgets. See :ref:`To ` for a description of the path syntax. '.' can be used to select the current widget. Remove ------ .. _Command.Remove: :command:`Remove('widgetpath')` Remove the widget selected using the path. See :ref:`To ` for a description of the path syntax. ResizeWindow ------------ .. _Command.ResizeWindow: :command:`ResizeWindow(width, height)` Resizes window to be width by height pixels. Note: this command is only supported in the embedding interface or `veusz --listen`. Save ---- .. _Command.Save: :command:`Save('filename.vsz')` Save the current document under the filename given. Set --- .. _Command.Set: :command:`Set('settingpath', val)` Set the setting given by the path to the value given. If the type of :command:`val` is incorrect, an :command:`InvalidType` exception is thrown. The path to the setting is the optional path to the widget the setting is contained within, an optional subsetting specifier, and the setting itself. .. code-block:: python Set('page1/graph1/x/min', -10.) SetAntiAliasing --------------- .. _Command.SetAntiAliasing: :command:`SetAntiAliasing(on)` Enable or disable anti aliasing in the plot window, replotting the image. SetCompatLevel -------------- .. _Command.SetCompatLevel: :command:`SetCompatLevel(level)` Set the document compatibility level. If `level<0`, then choose the latest version. As a side effect, this wipes any widgets in the document and resets all settings. SetData ------- .. _Command.SetData: :command:`SetData(name, val, symerr=None, negerr=None, poserr=None)` Set the dataset name with the values given. If None is given for an item, it will be left blank. val is the actual data, symerr are the symmetric errors, negerr and poserr and the getative and positive asymmetric errors. The data can be given as lists or numpys. SetDataExpression ----------------- .. _Command.SetDataExpression: :command:`SetDataExpression(name, val, symerr=None, negerr=None, poserr=None, linked=False, parametric=None)` Create a new dataset based on the expressions given. The expressions are Python syntax expressions based on existing datasets. If linked is True, the dataset will change as the datasets in the expressions change. Parametric can be set to a tuple of (minval, maxval, numitems). :command:`t` in the expression will iterate from minval to maxval in numitems values. SetDataND --------- .. _Command.SetDataND: :command:`SetDataRange(name, val)` Set a n-dimensional dataset to be the values given by val. val should be an n-dimensional numpy array of values, or a list of lists. SetDataRange ------------ .. _Command.SetDataRange: :command:`SetDataRange(name, numsteps, val, symerr=None, negerr=None, poserr=None, linked=False)` Set dataset to be a range of values with numsteps steps. val is tuple made up of (minimum value, maximum value). symerr, negerr and poserr are optional tuples for the error bars. If linked is True, the dataset can be saved in a document as a SetDataRange, otherwise it is expanded to the values which would make it up. SetData2D --------- .. _Command.SetData2D: :command:`SetData2D('name', val, xrange=(A,B), yrange=(C,D), xgrid=[1,2,3...], ygrid=[4,5,6...])` Creates a two-dimensional dataset with the name given. val is either a two-dimensional numpy array, or is a list of lists, with each list in the list representing a row. Do not give xrange if xgrid is set and do not give yrange if ygrid is set, and vice versa. xrange and yrange are optional tuples giving the inclusive range of the X and Y coordinates of the data. xgrid and ygrid are optional lists, tuples or arrays which give the coordinates of the edges of the pixels. There should be one more item in each array than pixels. SetData2DExpression ------------------- .. _Command.SetData2DExpression: :command:`SetData2DExpression('name', expr, linked=False)` Create a 2D dataset based on expressions. name is the new dataset name expr is an expression which should return a 2D array linked specifies whether to permanently link the dataset to the expressions. SetData2DExpressionXYZ ---------------------- .. _Command.SetData2DExpressionXYZ: :command:`SetData2DExpressionXYZ('name', 'xexpr', 'yexpr', 'zexpr', linked=False)` Create a 2D dataset based on three 1D expressions. The x, y expressions need to evaluate to a grid of x, y points, with the z expression as the 2D value at that point. Currently only linear fixed grids are supported. This function is intended to convert calculations or measurements at fixed points into a 2D dataset easily. Missing values are filled with NaN. SetData2DXYFunc --------------- .. _Command.SetData2DXYFunc: :command:`SetData2DXYFunc('name', xstep, ystep, 'expr', linked=False)` Construct a 2D dataset using a mathematical expression of "x" and "y". The x values are specified as (min, max, step) in xstep as a tuple, the y values similarly. If linked remains as False, then a real 2D dataset is created, where values can be modified and the data are stored in the saved file. SetDataDateTime --------------- .. _Command.SetDataDateTime: :command:`SetDataDateTime('name', vals)` Creates a datetime dataset of name given. vals is a list of Python datetime objects. SetDataText ----------- .. _Command.SetDataText: :command:`SetDataText(name, val)` Set the text dataset name with the values given. :command:`val` must be a type that can be converted into a Python list. .. code-block:: python SetDataText('mylabel', ['oranges', 'apples', 'pears', 'spam']) SetToReference -------------- .. _Command.SetToReference: :command:`SetToReference(setting, refval)` Link setting given to other setting refval. SetUpdateInterval ----------------- .. _Command.SetUpdateInterval: :command:`SetUpdateInterval(interval)` Tells window to update every interval milliseconds at most. The value 0 disables updates until this function is called with a non-zero. The value -1 tells Veusz to update the window every time the document has changed. This will make things slow if repeated changes are made to the document. Disabling updates and using the ForceUpdate command will allow the user to control updates directly. Note: this command is only supported in the embedding interface or `veusz --listen`. SetVerbose ---------- .. _Command.SetVerbose: :command:`SetVerbose(v=True)` If :command:`v` is :command:`True`, then extra information is printed out by commands. StartSecondView --------------- .. _Command.StartSecondView: :command:`StartSecondView(name = 'window title')` In the embedding interface, this method will open a new Embedding interface onto the same document, returning the object. This new window provides a second view onto the document. It can, for instance, show a different page to the primary view. name is a window title for the new window. Note: this command is only supported in the embedding interface. TagDatasets ----------- .. _Command.TagDatasets: :command:`TagDatasets('tag', ['ds1', 'ds2'...])` Adds the tag to the list of datasets given.. To -- .. _Command.To: :command:`To('widgetpath')` The To command takes a path to a widget and moves to that widget. For example, this may be "/", the root widget, "graph1", "/page1/graph1/x", "../x". The syntax is designed to mimic Unix paths for files. "/" represents the base widget (where the pages reside), and ".." represents the widget next up the tree. Quit ---- .. _Command.Quit: :command:`Quit()` Quits Veusz. This is only supported in `veusz --listen`. WaitForClose ------------ .. _Command.WaitForClose: :command:`WaitForClose()` Wait until the plotting window has been closed. Note: this command is only supported in the embedding interface. Zoom ---- .. _Command.Zoom: :command:`Zoom(factor)` Sets the plot zoom factor, relative to a 1:1 scaling. factor can also be "width", "height" or "page", to zoom to the page width, height or page, respectively. This is only supported in embedded mode or `veusz --listen`. Security ######## With the 1.0 release of Veusz, input scripts and expressions are checked for possible security risks. Only a limited subset of Python functionality is allowed, or a dialog box is opened allowing the user to cancel the operation. Specifically you cannot import modules, get attributes of Python objects, access globals() or locals() or do any sort of file reading or manipulation. Basically anything which might break in Veusz or modify a system is not supported. In addition internal Veusz functions which can modify a system are also warned against, specifically Print(), Save() and Export(). If you are running your own scripts and do not want to be bothered by these dialogs, you can run veusz with the :command:`--unsafe-mode` option. Using Veusz from other programs ############################### Non-Qt Python programs ---------------------- Veusz can be used as a Python module for plotting data. There are two ways to use the module: (1) with an older path-based Veusz commands, used in Veusz saved document files or (2) using an object-oriented interface. With the old style method the user uses a unix-path inspired API to navigate the widget tree and add or manipulate widgets. With the new style interface, the user navigates the tree with attributes of the ``Root`` object to access Nodes. The new interface is likely to be easier to use unless you are directly translating saved files. Older path-based interface -------------------------- .. code-block:: python """An example embedding program. Veusz needs to be installed into the Python path for this to work (use setup.py) This animates a sin plot, then finishes """ import time import numpy import veusz.embed as veusz # construct a Veusz embedded window # many of these can be opened at any time g = veusz.Embedded('window title') g.EnableToolbar() # construct the plot g.To( g.Add('page') ) g.To( g.Add('graph') ) g.Add('xy', marker='tiehorz', MarkerFill__color='green') # this stops intelligent axis extending g.Set('x/autoExtend', False) g.Set('x/autoExtendZero', False) # zoom out g.Zoom(0.8) # loop, changing the values of the x and y datasets for i in range(10): x = numpy.arange(0+i/2., 7.+i/2., 0.05) y = numpy.sin(x) g.SetData('x', x) g.SetData('y', y) # wait to animate the graph time.sleep(2) # let the user see the final result print "Waiting for 10 seconds" time.sleep(10) print "Done!" # close the window (this is not strictly necessary) g.Close() The embed interface has the methods listed in the command line interface listed in the Veusz manual https://veusz.github.io/docs/manual.html Multiple Windows are supported by creating more than one ``Embedded`` object. Other useful methods include: - ``WaitForClose()`` - wait until window has closed - ``GetClick()`` - return a list of ``(axis, value)`` tuples where the user clicks on a graph - ``ResizeWndow(width, height)`` - resize window to be ``width`` x ``height`` pixels - ``SetUpdateInterval(interval)`` - set update interval in ms or 0 to disable - ``MoveToPage(page)`` - display page given (starting from 1) - ``IsClosed()`` - has the page been closed - ``Zoom(factor)`` - set zoom level (float) or 'page', 'width', 'height' - ``Close()`` - close window - ``SetAntiAliasing(enable)`` - enable or disable antialiasing - ``EnableToolbar(enable=True)`` - enable plot toolbar - ``StartSecondView(name='Veusz')`` - start a second view onto the document of the current ``Embedded`` object. Returns a new ``Embedded`` object. - ``Wipe()`` - wipe the document of all widgets and datasets. .. _new_api: New-style object interface -------------------------- In Veusz 1.9 or late a new style of object interface is present, which makes it easier to construct the widget tree. Each widget, group of settings or setting is stored as a Node object, or its subclass, in a tree. The root document widget can be accessed with the ``Root`` object. The dot operator "." finds children inside other nodes. In Veusz some widgets can contain other widgets (Root, pages, graphs, grids). Widgets contain setting nodes, accessed as attributes. Widgets can also contain groups of settings, again accessed as attributes. An example tree for a document (not complete) might look like this :: Root \-- page1 (page widget) \-- graph1 (graph widget) \-- x (axis widget) \-- y (axis widget) \-- function (function widget) \-- grid1 (grid widget) \-- graph2 (graph widget) \-- xy1 (xy widget) \-- xData (setting) \-- yData (setting) \-- PlotLine (setting group) \-- width (setting) ... ... \-- x (axis widget) \-- y (axis widget) \-- graph3 (graph widget) \-- contour1 (contour widget) \-- x (axis widget) \-- y (axis widget) Here the user could access the xData setting node of the xy1 widget using ``Root.page1.graph2.xy1.xData``. To actually read or modify the value of a setting, you should get or set the ``val`` property of the setting node. The line width could be changed like this .. code-block:: python graph = embed.Root.page1.graph2 graph.xy1.PlotLine.width.val = '2pt' For instance, this constructs a simple x-squared plot which changes to x-cubed: .. code-block:: python import veusz.embed as veusz import time # open a new window and return a new Embedded object embed = veusz.Embedded('window title') # make a new page, but adding a page widget to the root widget page = embed.Root.Add('page') # add a new graph widget to the page graph = page.Add('graph') # add a function widget to the graph. The Add() method can take a list of settings # to set after widget creation. Here, "function='x**2'" is equivalent to # function.function.val = 'x**2' function = graph.Add('function', function='x**2') time.sleep(2) function.function.val = 'x**3' # this is the same if the widgets have the default names Root.page1.graph1.function1.function.val = 'x**3' If the document contains a page called "page1" then ``Root.page1`` is the object representing the page. Similarly, ``Root.page1.graph1`` is a graph called ``graph1`` in the page. You can also use dictionary-style indexing to get child widgets, e.g. Root['page1']['graph1']. This style is easier to use if the names of widgets contain spaces or if widget names shadow methods or properties of the Node object, i.e. if you do not control the widget names. Widget nodes can contain as children other widgets, groups of settings, or settings. Groups of settings can contain child settings. Settings cannot contain other nodes. Here are the useful operations of Nodes: .. code-block:: python class Node(object): """properties: path - return path to object in document, e.g. /page1/graph1/function1 type - type of node: "widget", "settinggroup" or "setting" name - name of this node, e.g. "graph1" children - a generator to return all the child Nodes of this Node, e.g. for c in Root.children: print c.path children_widgets - generator to return child widget Nodes of this Node children_settinggroups - generator for child setting groups of this Node children_settings - a generator to get the child settings childnames - return a list of the names of the children of this Node childnames_widgets - return a list of the names of the child widgets childnames_settinggroups - return a list of the names of the setting groups childnames_settings - return a list of the names of the settings parent - return the Node corresponding to the parent widget of this Node __getattr__ - get a child Node with name given, e.g. Root.page1 __getitem__ - get a child Node with name given, e.g. Root['page1'] """ def fromPath(self, path): """Returns a new Node corresponding to the path given, e.g. '/page1/graph1'""" class SettingNode(Node): """A node which corresponds to a setting. Extra properties: val - get or set the setting value corresponding to this value, e.g. Root.page1.graph1.leftMargin.val = '2cm' """ class SettingGroupNode(Node): """A node corresponding to a setting group. No extra properties.""" class WidgetNode(Node): """A node corresponding to a widget. property: widgettype - get Veusz type of widget Methods are below.""" def WalkWidgets(self, widgettype=None): """Generator to walk widget tree and get widgets below this WidgetNode of type given. widgettype is a Veusz widget type name or None to get all widgets.""" def Add(self, widgettype, *args, **args_opt): """Add a widget of the type given, returning the Node instance. """ def Rename(self, newname): """Renames widget to name given. Existing Nodes corresponding to children are no longer valid.""" def Action(self, action): """Applies action on widget.""" def Remove(self): """Removes a widget and its children. Existing Nodes corresponding to children are no longer valid.""" Note that Nodes are temporary objects which are created on the fly. A real widget in Veusz can have several different WidgetNode objects. The operators == and != can test whether a Node points to the same widget, setting or setting group. Here is an example to set all functions in the document to be ``x**2``: .. code-block:: python for n in Root.WalkWidgets(widgettype='function'): n.function.val = 'x**2' Translating old to new style ---------------------------- Here is an example how you might translate the old to new style interface (this is taken from the ``sin.vsz`` example). .. code-block:: python # old (from saved document file) Add('page', name='page1') To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x') To('x') Set('label', '\\italic{x}') To('..') Add('axis', name='y') To('y') Set('label', 'sin \\italic{x}') Set('direction', 'vertical') To('..') Add('xy', name='xy1') To('xy1') Set('MarkerFill/color', 'cyan') To('..') Add('function', name='function1') To('function1') Set('function', 'sin(x)') Set('Line/color', 'red') To('..') To('..') To('..') .. code-block:: python # new (in python) import veusz.embed embed = veusz.embed.Embedded('window title') page = embed.Root.Add('page') # note: autoAdd=False stops graph automatically adding own axes (used in saved files) graph = page.Add('graph', autoadd=False) x = graph.Add('axis', name='x') x.label.val = '\\italic{x}' y = graph.Add('axis', name='y') y.label.val = 'sin \\italic{x}' y.direction.val = 'vertical' xy = graph.Add('xy') xy.MarkerFill.color.val = 'cyan' func = graph.Add('function') func.function.val = 'sin(x)' func.Line.color.val = 'red' PyQt programs ============= There is no direct PyQt interface. The standard embedding interface should work, however. Non Python programs =================== Support for non Python programs is available in a limited form. External programs may execute Veusz using :command:`veusz --listen`. Veusz will read its input from the standard input, and write output to standard output. This is a full Python execution environment, and supports all the scripting commands mentioned in :ref:`Commands `, a :command:`Quit()` command, the :command:`EnableToolbar()` and the :command:`Zoom(factor)` command listed above. Only one window is supported at once, but many :command:`veusz --listen` programs may be started. :command:`veusz --listen` may be used from the shell command line by doing something like: .. code-block:: bash veusz --listen < in.vsz where :command:`in.vsz` contains: .. code-block:: python To(Add('page') ) To(Add('graph') ) SetData('x', arange(20)) SetData('y', arange(20)**2) Add('xy') Zoom(0.5) Export("foo.pdf") Quit() A program may interface with Veusz in this way by using the :command:`popen` C Unix function, which allows a program to be started having control of its standard input and output. Veusz can then be controlled by writing commands to an input pipe. ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/Documents/manual-source/conf.py0000664000175000017500000002214414332253347017144 0ustar00jssjss# -*- coding: utf-8 -*- # # veusz documentation build configuration file, created by # sphinx-quickstart on Sun Feb 5 11:07:00 2017. # # This file is execfile()d with the current directory set to its # containing dir. # # Note that not all possible configuration values are present in this # autogenerated file. # # All configuration values have a default; values that are commented out # serve to show the default. import sys import os # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. sys.path.insert(0, os.path.abspath('..')) # -- General configuration ------------------------------------------------ # If your documentation needs a minimal Sphinx version, state it here. #needs_sphinx = '1.0' # Add any Sphinx extension module names here, as strings. They can be # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = [ 'sphinx.ext.autodoc', 'sphinx.ext.viewcode', ] # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] # The suffix(es) of source filenames. # You can specify multiple suffix as a list of string: # source_suffix = ['.rst', '.md'] source_suffix = '.rst' # The encoding of source files. #source_encoding = 'utf-8-sig' # The master toctree document. master_doc = 'index' # General information about the project. project = u'Veusz' copyright = u'2003-2021, Jeremy Sanders' author = u'Jeremy Sanders' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # with open('../../VERSION') as f: version = release = f.read().strip() # The short X.Y version. #version = u'2.0' # The full version, including alpha/beta/rc tags. #release = u'2.0' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. # # This is also used if you do content translation via gettext catalogs. # Usually you set "language" from the command line for these cases. language = None # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: #today = '' # Else, today_fmt is used as the format for a strftime call. #today_fmt = '%B %d, %Y' # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. exclude_patterns = ['_build'] # The reST default role (used for this markup: `text`) to use for all # documents. #default_role = None # If true, '()' will be appended to :func: etc. cross-reference text. #add_function_parentheses = True # If true, the current module name will be prepended to all description # unit titles (such as .. function::). #add_module_names = True # If true, sectionauthor and moduleauthor directives will be shown in the # output. They are ignored by default. #show_authors = False # The name of the Pygments (syntax highlighting) style to use. pygments_style = 'sphinx' # A list of ignored prefixes for module index sorting. #modindex_common_prefix = [] # If true, keep warnings as "system message" paragraphs in the built documents. #keep_warnings = False # If true, `todo` and `todoList` produce output, else they produce nothing. todo_include_todos = False autoclass_content = 'both' # -- Options for HTML output ---------------------------------------------- # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. html_theme = 'alabaster' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. #html_theme_options = {} # Add any paths that contain custom themes here, relative to this directory. #html_theme_path = [] # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". #html_title = None # A shorter title for the navigation bar. Default is the same as html_title. #html_short_title = None # The name of an image file (relative to this directory) to place at the top # of the sidebar. #html_logo = None # The name of an image file (relative to this directory) to use as a favicon of # the docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 # pixels large. #html_favicon = None # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] # Add any extra paths that contain custom files (such as robots.txt or # .htaccess) here, relative to this directory. These files are copied # directly to the root of the documentation. #html_extra_path = [] # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. #html_last_updated_fmt = '%b %d, %Y' # If true, SmartyPants will be used to convert quotes and dashes to # typographically correct entities. #html_use_smartypants = True # Custom sidebar templates, maps document names to template names. #html_sidebars = {} # Additional templates that should be rendered to pages, maps page names to # template names. #html_additional_pages = {} # If false, no module index is generated. #html_domain_indices = True # If false, no index is generated. #html_use_index = True # If true, the index is split into individual pages for each letter. #html_split_index = False # If true, links to the reST sources are added to the pages. #html_show_sourcelink = True # If true, "Created using Sphinx" is shown in the HTML footer. Default is True. #html_show_sphinx = True # If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. #html_show_copyright = True # If true, an OpenSearch description file will be output, and all pages will # contain a tag referring to it. The value of this option must be the # base URL from which the finished HTML is served. #html_use_opensearch = '' # This is the file name suffix for HTML files (e.g. ".xhtml"). #html_file_suffix = None # Language to be used for generating the HTML full-text search index. # Sphinx supports the following languages: # 'da', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ja' # 'nl', 'no', 'pt', 'ro', 'ru', 'sv', 'tr' #html_search_language = 'en' # A dictionary with options for the search language support, empty by default. # Now only 'ja' uses this config value #html_search_options = {'type': 'default'} # The name of a javascript file (relative to the configuration directory) that # implements a search results scorer. If empty, the default will be used. #html_search_scorer = 'scorer.js' # Output file base name for HTML help builder. htmlhelp_basename = 'veuszdoc' # -- Options for LaTeX output --------------------------------------------- latex_elements = { # The paper size ('letterpaper' or 'a4paper'). #'papersize': 'letterpaper', # The font size ('10pt', '11pt' or '12pt'). #'pointsize': '10pt', # Additional stuff for the LaTeX preamble. #'preamble': '', # Latex figure (float) alignment #'figure_align': 'htbp', } # Grouping the document tree into LaTeX files. List of tuples # (source start file, target name, title, # author, documentclass [howto, manual, or own class]). latex_documents = [ (master_doc, 'veusz.tex', u'Veusz Documentation', u'Jeremy Sanders', 'manual'), ] # The name of an image file (relative to this directory) to place at the top of # the title page. #latex_logo = None # For "manual" documents, if this is true, then toplevel headings are parts, # not chapters. #latex_use_parts = False # If true, show page references after internal links. #latex_show_pagerefs = False # If true, show URL addresses after external links. #latex_show_urls = False # Documents to append as an appendix to all manuals. #latex_appendices = [] # If false, no module index is generated. #latex_domain_indices = True # -- Options for manual page output --------------------------------------- # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). man_pages = [ (master_doc, 'veusz', u'Veusz Documentation', [author], 1) ] # If true, show URL addresses after external links. #man_show_urls = False # -- Options for Texinfo output ------------------------------------------- # Grouping the document tree into Texinfo files. List of tuples # (source start file, target name, title, author, # dir menu entry, description, category) texinfo_documents = [ (master_doc, 'veusz', u'Veusz Documentation', author, 'veusz', 'A scientific plotting package.', 'Miscellaneous'), ] # Documents to append as an appendix to all manuals. #texinfo_appendices = [] # If false, no module index is generated. #texinfo_domain_indices = True # How to display URL addresses: 'footnote', 'no', or 'inline'. #texinfo_show_urls = 'footnote' # If true, do not generate a @detailmenu in the "Top" node's menu. #texinfo_no_detailmenu = False ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/manual-source/datasets.rst0000664000175000017500000006156014126044351020206 0ustar00jssjssReading data ============ Currently Veusz supports reading data from files with text, CSV, HDF5, FITS, 2D text or CSV, QDP, binary and NPY/NPZ formats. Use the :menuselection:`Data --> Import` dialog to read data, or the importing commands in the API can be used. In addition, the user can load or write import plugins in Python which load data into Veusz in an arbitrary format. At the moment QDP, binary and NPY/NPZ files are supported with this method. The HDF5 file format is the most sophisticated, and is recommended for complex datasets. By default, data are "linked" to the file imported from. This means that the data are not stored in the Veusz saved file and are reloaded from the original data file when opening. In addition, the user can use the :menuselection:`Data --> Reload` menu option to reload data from linked files. Unselect the linked option when importing to remove the association with the data file and to store the data in the Veusz saved document. Note that a prefix and suffix can be given when importing. These are added to the front or back of each dataset name imported. They are convenient for grouping data together. .. image:: _images/importdialog.png We list the various types of import below. Standard text import -------------------- The default text import operates on simple text files. The data are assumed to be in columns separated by whitespace. Each column corresponds to dataset (or its error bars). Each row is an entry in the dataset. The way the data are read is goverened by a simple "descriptor". This can simply be a list of dataset names separated by spaces. If no descriptor is given, the columns are treated as separate datasets and are given names `col1`, `col2`, etc. Veusz attempts to automatically determine the type of the data. When reading in data, Veusz treats any whitespace as separating columns. The columns do not actually need to be aligned. Furthermore a `\\` symbol can be placed at the end of a line to mark a continuation. Veusz will read the next line as if it were placed at the end of the current line. In addition comments and blank lines are ignored (unless in block mode). Comments start with a `#`, `;`, `!` or `%`, and continue until the end of the line. The special value `nan` can be used to specify a break in a dataset. If the option to read data in blocks is enabled, Veusz treats blank lines (or lines starting with the word `no`) as block separators. For each dataset in the descriptor, separate datasets are created for each block, using a numeric suffix giving the block number, e.g. `_1`, `_2`. Data types in text import ````````````````````````` Veusz supports reading in several types of data. The type of data can be added in round brackets after the name in the descriptor. Veusz will try to guess the type of data based on the first value, so you should specify it if there is any form of ambiguity (e.g. is 3 text or a number). Supported types are numbers (use numeric in brackets) and text (use text in brackets). An example descriptor would be `x(numeric) +- y(numeric) + - label(text)` for an x dataset followed by its symmetric errors, a y dataset followed by two columns of asymmetric errors, and a final column of text for the label dataset. A text column does not need quotation unless it contains space characters or escape characters. However make sure you deselect the "ignore text" option in the import dialog. This ignores lines of text to ease the import of data from other applications. Quotation marks are recommended around text if you wish to avoid ambiguity. Text is quoted according to the Python rules for text. Double or single quotation marks can be used, e.g. `"A 'test'"`, `'A second "test"'`. Quotes can be escaped by prefixing them with a backslash, e.g. `"A new \\"test\\""`. If the data are generated from a Python script, the repr function provides the text in a suitable form. Dates and times are also supported with the syntax `dataset(date)`. Dates must be in ISO format `YYYY-MM-DD`. Times are in 24 hour format hh:mm:ss.ss. Dates with times are written YYYY-MM-DDThh:mm:ss.ss (this is a standard ISO format, see ``_). Dates are stored within Veusz as a number which is the number of seconds since the start of January 1st 2009. Veusz also supports dates and times in the local format, though take note that the same file and data may not work on a system in a different location. Descriptors ``````````` .. _Descriptors: A list of datasets, or a "Descriptor", is given in the Import dialog to describe how the data are formatted in the import file. The descriptor at its simplest is a space or comma-separated list of the names of the datasets to import. These are columns in the file. Following a dataset name the text `+`, `-`, or `+-` can be given to say that the following column is a positive error bar, negative error bar or symmetric error bar for the previous (non error bar) dataset. These symbols should be separated from the dataset name or previous symbol with a space or a comma symbol. In addition, if multiple numbered columns should be imported, the dataset name can be followed by square brackets containing a range in the form `[a:b]` to number columns a to b, or `[:]` to number remaining columns. See below for examples of this use. Dataset names can contain virtually any character, even unicode characters. If the name contains non alpha-numeric characters (characters outside of A-Z, a-z and 0-9), then the dataset name should be contained within back-tick characters. An example descriptor is :command:`\`length data (m)\`,+- \`speed (mps)\`,+,-`, for two datasets with spaces and brackets in their names. Instead of specifying the descriptor in the Import dialog, the descriptor can be placed in the data file using a descriptor statement on a separate line, consisting of "descriptor" followed by the descriptor. Multiple descriptors can be placed in a single file, for example: :: # here is one section descriptor x,+- y,+,- 1 0.5 2 0.1 -0.1 2 0.3 4 0.2 -0.1 # my next block descriptor alpha beta gamma 1 2 3 4 5 6 7 8 9 # etc... Descriptor examples ``````````````````` #. :command:`x y` two columns are present in the file, they will be read in as datasets `x` and `y`. #. :command:`x,+- y,+,-` or :command:`x +- y + -` two datasets are in the file. Dataset "x" consists of the first two columns. The first column are the values and the second are the symmetric errors. "y" consists of three columns (note the comma between + and -). The first column are the values, the second positive asymmetric errors, and the third negative asymmetric errors. Suppose the input file contains: :: 1.0 0.3 2 0.1 -0.2 1.5 0.2 2.3 2e-2 -0.3E0 2.19 0.02 5 0.1 -0.1 Then x will contain `1+-0.3`, `1.5+-0.2`, `2.19+-0.02`. y will contain `2 +0.1 -0.2`, `2.3 +0.02 -0.3`, `5 +0.1 -0.1`. #. :command:`x[1:2] y[:]` the first column is the data `x_1`, the second `x_2`. Subsequent columns are read as `y[1]` to `y[n]`. #. :command:`y[:]+-` read each pair of columns as a dataset and its symmetric error, calling them `y[1]` to `y[n]`. #. :command:`foo,,+-` read the first column as the foo dataset, skip a column, and read the third column as its symmetric error. CSV files --------- CVS (comma separated variable) files are often written from other programs, such as spreadsheets, including Excel and Gnumeric. Veusz supports reading from these files. In the import dialog choose "CSV", then choose a filename to import from. In the CSV file the user should place the data in either rows or columns. Veusz will use a name above a column or to the left of a row to specify what the dataset name should be. The user can use new names further down in columns or right in rows to specify a different dataset name. Names do not have to be used, and Veusz will assign default `col` and `row` names if not given. You can also specify a prefix which is prepended to each dataset name read from the file. To specify symmetric errors for a column, put `+-` as the dataset name in the next column or row. Asymmetric errors can be stated with `+` and `-` in the columns. The data type in CSV files are automatically detected unless specified. The data type can be given in brackets after the column name, e.g. `name (text)`, where the data type is `date`, `numeric` or `text`. Explicit data types are needed if the data look like a different data type (e.g. a text item of `1.23`). The date format in CSV files can be specified in the import dialog box - see the examples given. In addition CSV files support numbers in European format (e.g. 2,34 rather than 2.34), depending on the setting in the dialog box. HDF5 files ---------- HDF5 is a flexible data format. Datasets and tables can be stored in a hierarchical arrangements of groups within a file. Veusz supports reading 1D numeric, text, date-time, 2D numeric or n-dimensional numeric data from HDF files. The :command:`h5py` Python module must be installed to use HDF5 files (included in binary releases). In the import dialog box, choose which individual datasets to import, or selecting a group to import all the datasets within the group. If selecting a group, datasets in the group incompatible with Veusz are ignored. A name can be provided for each dataset imported by entering one under "Import as". If one is not given, the dataset or column name is used. The name can also be specified by setting the HDF5 dataset attribute ``vsz_name`` to the name. Note that for compound datasets (tables), ``vsz_`` attributes for columns are given by appending the suffix ``_columnname`` to the attribute. Error bars `````````` Error bars are supported in two ways. The first way is to combine 1D datasets. For the datasets which are error bars, use a name which is the same as the main dataset but with the suffix `(+-)`, `(+)` or `(-)`, for symmetric, postive or negative error bars, respectively. The second method is to use a 2D dataset with two or three columns, for symmetric or asymmetric error bars, respectively. Click on the dataset in the dialog and choose the option to import as a 1D dataset. This second method can also be enabled by adding an HDF5 attribute ``vsz_twod_as_oned`` set to a non-zero value for the dataset. Slices `````` You may wish to reduce the dimensions of a dataset before importing by slicing. You can also give a slice to import a subset of a dataset. When importing, in the slice column you can give a slice expression. This should have the same number of entries as the dataset has dimensions, separated by commas. An entry can be a single number, to select a particular row or column. Alternatively it could be an expression like ``a:b:c`` or ``a:b``, where ``a`` is the starting index, ``b`` is one beyond the stopping index and optionally ``c`` is the step size. A slice can also be specified by providing an HDF5 attribute ``vsz_slice`` for the dataset. 2D data ranges `````````````` 2D data have an associated X and Y range. By default the number of pixels of the image are used to give this range. A range can be specified by clicking on the dataset and entering a minimum and maximum X and Y coordinates. Alternatively, provide the HDF5 attribute for the dataset ``vsz_range``, which should be set to an array of four values (minimum x, minimum y, maximum x, maximum y). Dates ````` Date/time datasets can be made from a 1D numeric dataset or from a text dataset. For the 1D dataset, use the number of seconds relative to the start of the year 2009 (this is Veusz format) or the year 1970 (this is Unix format). In the import dialog, click on the name of the dataset and choose the date option. To specify a date format in the HDF5 file, set the attribute ``vsz_convert_datetime`` to either ``veusz`` or ``unix``. For text datasets, dates must be given in the right format, selected in the import dialog after clicking on the dataset name. As in other file formats, by default Veusz uses ISO 8601 format, which looks like `2013-12-22T21:08:07`, where the date and time parts are optional. The T is also optional. You can also provide your own format when importing by giving a date expression using YYYY, MM, DD, hh, mm and ss (e.g. `YYYY-MM-DD|T|hh:mm:ss`), where vertical bars mark optional parts of the expression. To automate this, set the attribute ``vsz_convert_datetime`` to the format expression or ``iso`` to specify ISO format. 2D text or CSV format --------------------- Veusz can import 2D data from standard text or CSV files. In this case the data should consist of a matrix of data values, with the columns separated by one or more spaces or tabs and the rows on different lines. In addition to the data the file can contain lines at the top which affect the import. Such specifiers are used, for example, to change the coordinates of the pixels in the file. By default the first pixels coordinates is between 0 and 1, with the centre at 0.5. Subsequent pixels are 1 greater. Note that the lowest coordinate pixel is the bottom-left value in the table of imported values. When using specifiers in CSV files, put the different parts (separated by spaces) in separate columns. Below are listed the specifiers: #. :command:`xrange A B` - make the 2D dataset span the coordinate range A to B in the x-axis (where A and B are numbers). Note that the range is inclusive, so a 1 pixel wide image with A=0 and B=1 would have the pixel centre at 0.5. The pixels are assumed to have the same spacing. Do not use this as the same time as the :command:`xedge` or :command:`xcent` options. #. :command:`yrange A B` - make the 2D dataset span the coordinate range A to B in the y-axis (where A and B are numbers). #. :command:`xedge A B C...` - rather than assume the pixels have the same spacing, give the coordinates of the edges of the pixels in the x-axis. The numbers should be space-separated and there should be one more number than pixels. Do not give :command:`xrange` or :command:`xcent` if this is given. If the values are increasing, the lowest coordinate value is at the left of the dataset, otherwise if they are decreasing, it is on the right (unless the rows/columns are inverted or transposed). #. :command:`yedge A B C...` - rather than assume the pixels have the same spacing, give the coordinates of the edges of the pixels in the y-axis. If the values are increasing, the lowest coordinate value is at the bottom row. If they instead decrease, it is at the top. #. :command:`xcent A B C...` - rather than give a total range or pixel edges, give the centres of the pixels. There should be the same number of values as pixels in the image. Do not give :command:`xrange` or :command:`xedge` if this is given. The order of the values specify whether the pixels are left to right or right to left. #. :command:`ycent A B C...` - rather than give a total range or pixel edges, give the centres of the pixels. The value order specifies whether the pixels are bottom to top, or top to bottom. #. :command:`invertrows` - invert the rows after reading the data. #. :command:`invertcols` - invert the columns after reading the data. #. :command:`transpose` - swap rows and columns after importing data. #. :command:`gridatedge` - the first row and leftmost column give the positions of the centres of the pixels. This is also an option in the import dialog. The values should be increasing or decreasing. FITS files ---------- 1D, 2D or n-dimensional data can be read from FITS files. 1D or 2D data can be read from image, primary or table HDUs. nD data can be read from from image or primary extensions. Note that pyfits or astropy must be installed to get FITS support. The import dialog box uses a tree to show the structure of the FITS file. The user can choose to import the whole file, by clicking the check box at the top. They can import data from a particular HDU by selecting that, or individual table columns can be selected. In the dialog box, a dataset can be given a name for the dataset. Otherwise the HDU or table column name is used. Note that a prefix and/or suffix can be specified to be added to all dataset names. If dataset y should have an error bar specified by column yerr, then in the name for yerr, enter 'y (+-)'. Asymmetric error bars can be specified using (+) and (-) on inidividual columns. The slice column can be used to only import a subset of the dataset imported. This uses Python slicing syntax, which is comma-separated list of ranges and steps. A range is specified like 10:20, which selects the 11th to 20th items (the indices are numbered from 0, and the final index is one past the index you actually want). A stepped range can look like 10:20:2, which selects every other item in that range. Each of these numbers are optional, so : selects all items on that dimension. For example the slice :,10:14:2 selects all values on the first dimension, but only the 11th and 13th items on the next axis. When importing 2D data the user can specify whether to treat this as 1D plus error bars (dimensions should have 2 or 3 columns), or specify a range in 2D space the data covers. Veusz will also attempt to use WCS information in the file for the 2D range if not specified. The standard mode is to use the CDELT, CRVAL and CRPIX keywords to specify a linear range for the data. Alternatively the user can specify pixel numbering (numbering from 0 to N-1). There is a fraction option for using a range of 0 to 1. Finally there is a pixel numbering scheme which numbers in pixels from the CRPIX keyword items. Some of these options can be specified in the FITS file using the 'VEUSZ' header keyword. This header keyword can be added with the value 'KEY=VALUE' (applying to the whole HDU) or 'COLUMN: KEY=VALUE' (applying to a particular column in a table). Supported options for KEY are: name provide name for dataset in VALUE slice VALUE is slice to apply when importing dataset range range of data for 2D dataset in form `[minx, miny, maxx, maxy]` xrange/yrange range of dataset individually in x or y xcent/ycent set to list of values giving centers of pixels xedge/yedge set to list of values giving edges of pixels twod_as_oned treat as 1D data with error bars if VALUE=1 wcsmode use specific WCS mode for 2D dataset (should be pixel/pixel_wcs/linear_wcs/fraction) Reading other data formats -------------------------- As mentioned above, a user may write some Python code to read a data file or set of data files. To write a plugin which is incorportated into Veusz, see ``_ You can also include Python code in an input file to read data, which we describe here. Suppose an input file "in.dat" contains the following data: :: 1 2 2 4 3 9 4 16 Of course this data could be read using the :ref:`ImportFile ` command. However, you could also read it with the following Veusz script (which could be saved to a file and loaded with :command:`execfile` or :ref:`Load `. The script also places symmetric errors of 0.1 on the x dataset. .. code-block:: python x = [] y = [] for line in open("in.dat"): parts = [float(i) for i in line.split()] x.append(parts[0]) y.append(parts[1]) SetData('x', x, symerr=0.1) SetData('y', y) Manipulating datasets ===================== Imported datasets can easily be modified in the Data Editor dialog box. This dialog box can also be used to create new datasets from scratch by typing them in. The Data Create dialog box is used to new datasets as a numerical sequence, parametrically or based on other datasets given expressions. If you want to plot a function of a dataset, you often do not have to create a new dataset. Veusz allows to enter expressions directly in many places. Using dataset plugins --------------------- Dataset plugins can be used to perform arbitrary manipulation of datasets. Veusz includes several plugins for mathematical operation of data and other dataset manipulations, such as concatenation or splitting. If you wish to write your own plugins look at ``_. Using expressions to create new datasets ---------------------------------------- For instance, if the user has already imported dataset d, then they can create d2 which consists of d**2. Expressions are in Python numpy syntax and can include the usual mathematical functions. .. image:: _images/createdataset.png Expressions for error bars can also be given. By appending :command:`_data`, :command:`_serr`, :command:`_perr` or :command:`_nerr` to the name of the dataset in the expression, the user can base their expression on particular parts of the given dataset (the main data, symmetric errors, positive errors or negative errors). Otherwise the program uses the same parts as is currently being specified. If a dataset name contains non alphanumeric characters, its name should be quoted in the expression in back-tick characters, e.g. :command:`\`length (cm)\`*2`. The numpy functionality is particularly useful for doing more complicated expressions. For instance, a conditional expression can be written as :command:`where(x`_ for details. Capturing data ============== In addition to the standard data import, data can be captured as it is created from an external program, a network socket or a file or named pipe. When capturing from a file, the behaviour is like the Unix :command:`tail -f` command, where new lines written to the file are captured. To use the capturing facility, the data must be written in the simple line based standard Veusz text format. Data are whitespace separated, with one value per dataset given on a single line. To capture data, use the dialog box :menuselection:`Data --> Capture`. A list of datasets should be given. This is the :ref:`standard descriptor format `. Choose the source of the data, which is either a a filename or named pipe, a network socket to connect to, or a command line for an external program. Capturing ends if the source of the data runs out (for external programs or network sockets) or the finish button is clicked. It can optionally end after a certain number of data lines or when a time period has expired. Normally the data are updated in Veusz when the capturing is finished. There is an option to update the document at intervals, which is useful for monitoring. A plot using the variables will update when the data are updated. Click the ``Capture`` button to start the capture. Click ``Finish`` or ``Cancel`` to stop. Cancelling destroys captured data. ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1675026363.0 veusz-3.6.2/Documents/manual-source/index.rst0000664000175000017500000000141014365557673017516 0ustar00jssjss.. veusz documentation master file, created by sphinx-quickstart on Sun Feb 5 11:07:00 2017. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. Veusz documentation =================== Jeremy Sanders Copyright 2021 This document is licensed under the GNU General Public License, version 2 or greater. Please see the file COPYING for details, or see ``_. This is the documentation for Veusz. Veusz is a multiplatform scientific plotting package with a graphical user interface. Contents: .. toctree:: :maxdepth: 3 introduction.rst datasets.rst api.rst Indices and tables ================== * :ref:`genindex` * :ref:`modindex` * :ref:`search` ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/Documents/manual-source/introduction.rst0000664000175000017500000011056314332253347021123 0ustar00jssjss============ Introduction ============ Veusz ===== Veusz is a 2D and 3D scientific plotting package. It is designed to be easy to use, easily extensible, but powerful. The program features a graphical user interface (GUI), which works under Unix/Linux, Windows or Mac OS. It can also be easily scripted (the saved file formats are similar to Python scripts) or used as module inside Python. Veusz reads data from a number of different types of data file, it can be manually entered, or constructed from other datasets. In Veusz the document is built in an object-oriented fashion, where a document is built up by a number of widgets in a hierarchy. For example, multiple function or xy widgets can be placed inside a graph widget, and many graphs can be placed in a grid widget. The program also supports a variety of 3D plots, including 3D point and surface plots. The program produces vector rather than rastered 3D output. Veusz can be extended by the user easily by adding plugins. Support for different data file types can be added with import plugins. Dataset plugins automate the manipulation of datasets. Tools plugins automate the manipulation of the document. Installation ============ Please go to the website_ of Veusz to learn more about the program. Links to binaries, distribution packages and the source package can be found in downloads_. For source installation, please see the package INSTALL. .. _website: https://veusz.github.io/ .. _downloads: https://veusz.github.io/download/ Getting started =============== Veusz includes a built-in tutorial which starts the first time the program is run. You can rerun it later from the Help menu. It also includes many examples_, to show how certain kinds of plots are produced. For more help and link to a video tutorial, see help_. .. _examples: https://veusz.github.io/examples/ .. _help: https://veusz.github.io/help-support/ Terminology =========== Here we define some terminology for future use. Widget ------ A document and its graphs are built up from widgets. These widgets can often by placed within each other, depending on the type of the widget. A widget has children (those widgets placed within it) and its parent. The widgets have a number of different settings which modify their behaviour. These settings are divided into properties, which affect what is plotted and how it is plotted. These would include the dataset being plotted or whether an axis is logarithmic. There are also formatting settings, including the font to be used and the line thickness. In addition they have actions, which perform some sort of activity on the widget or its children, like "fit" for a fit widget. As an aside, using the scripting interface, widgets are specified with a "path", like a file in Unix or Windows. These can be relative to the current widget (do not start with a slash), or absolute (start with a slash). Examples of paths include, `/page1/graph1/x`, `x` and `.`. The widget types include #. :command:`document` - representing a complete document. A document can contain pages. In addition it contains a setting giving the page size for the document. #. :command:`page` - representing a page in a document. One or more graphs can be placed on a page, or a grid. #. :command:`graph` - defining an actual graph. A graph can be placed on a page or within a grid. Contained within the graph are its axes and plotters. A graph can be given a background fill and a border if required. It also has a margin, which specifies how far away from the edge of its parent widget to plot the body of the graph. A graph can contain several axes, at any position on the plot. In addition a graph can use axes defined in parent widgets, shared with other graphs. More than one graph can be placed within in a page. The margins can be adjusted so that they lie within or besides each other. #. :command:`grid` - containing one or more graphs. A grid plots graphs in a gridlike fashion. You can specify the number of rows and columns, and the plots are automatically replotted in the chosen arrangement. A grid can contain graphs or axes. If an axis is placed in a grid, it can be shared by the graphs in the grid. #. :command:`axis` - giving the scale for plotting data. An axis translates the coordinates of the data to the screen. An axis can be linear or logarithmic, it can have fixed endpoints, or can automatically get them from the plotted data. It also has settings for the axis labels and lines, tick labels, and major and minor tick marks. An axis may be "horizontal" or "vertical" and can appear anywhere on its parent graph or grid. If an axis appears within a grid, then it can be shared by all the graphs which are contained within the grid. The :command:`axis-broken` widget is an axis sub-type. It is an axis type where there are jumps in the scale of the axis. The :command:`axis-function` widget allows the user to create an axis where the values are scaled by a monotonic function, allowing non-linear and non-logarithmic axis scales. The widget can also be linked to a different axis via the function. #. plotters - types of widgets which plot data or add other things on a graph. There is no actual plotter widget which can be added, but several types of plotters listed below. Plotters typically take an axis as a setting, which is the axis used to plot the data on the graph (default x and y). #. :command:`function` - a plotter which plots a function on the graph. Functions can be functions of x or y (parametric functions are not done yet!), and are defined in Python expression syntax, which is very close to most other languages. For example `3*x**2 + 2*x - 4`. A number of functions are available (e.g. sin, cos, tan, exp, log...). Technically, Veusz imports the numpy package when evaluating, so numpy functions are available. As well as the function setting, also settable is the line type to plot the function, and the number of steps to evaluate the function when plotting. Filling is supported above/below/left/right of the function. #. :command:`xy` - a plotter which plots scatter, line, or stepped plots. This versatile plotter takes an x and y dataset, and plots (optional) points, in a chosen marker and colour, connecting them with (optional) lines, and plotting (optional) error bars. An xy plotter can also plot a stepped line, allowing histograms to be plotted (note that it doesn't yet do the binning of the data). The settings for the xy widget are the various attributes for the points, line and error bars, the datasets to plot, and the axes to plot on. The xy plotter can plot a label next to each dataset, which is either the same for each point or taken from a text dataset. If you wish to leave gaps in a plot, the input value `nan` can be specified in the numeric dataset. #. :command:`fit` - fit a function to data. This plotter is a like the function plotter, but allows fitting of the function to data. This is achieved by clicking on a "fit" button, or using the "fit" action of the widget. The fitter takes a function to fit containing the unknowns, e.g. `a*x**2 + b*x + c`, and initial values for the variables (here a, b and c). It then fits the data (note that at the moment, the fit plotter fits all the data, not just the data that can be seen on the graph) by minimising the chi-squared. In order to fit properly, the y data (or x, if fitting as a function of x) must have a properly defined, preferably symmetric error. If there is none, Veusz assumes the same fractional error everywhere, or symmetrises asymmetric errors. Note that more work is required in this widget, as if a parameter is not well defined by the data, the matrix inversion in the fit will fail. In addition Veusz does not supply estimates for the errors or the final chi-squared in a machine readable way. If the fitting parameters vary significantly from 1, then it is worth "normalizing" them by adding in a factor in the fit equation to bring them to of the order of 1. #. :command:`bar` - a bar chart which plots sets of data as horizontal or vertical bars. Multiple datasets are supported. In "grouped" mode the bars are placed side-by-side for each dataset. In "stacked" mode the bars are placed on top of each other (in the appropriate direction according to the sign of the dataset). Bars are placed on coordinates given, or in integer values from 1 upward if none are given. Error bars are plotted for each of the datasets. Different fill styles can be given for each dataset given. A separate key value can be given for each dataset. #. :command:`key` - a box which describes the data plotted. If a key is added to a plot, the key looks for "key" settings of the other data plotted within a graph. If there any it builds up a box containing the symbol and line for the plotter, and the text in the "key" setting of the widget. This allows a key to be very easily added to a plot. The key may be placed in any of the corners of the plot, in the centre, or manually placed. Depending on the ordering of the widgets, the key will be placed behind or on top of the widget. The key can be filled and surrounded by a box, or not filled or surrounded. #. :command:`label` - a text label places on a graph. The alignment can be adjusted and the font changed. The position of the label can be specified in fractional terms of the current graph, or using axis coordinates. #. :command:`rect, ellipse` - these draw a rectangle or ellipse, respectively, of size and rotation given. These widgets can be placed directly on the page or on a graph. The centre can be given in axis coordinates or fractional coordinates. #. :command:`imagefile` - draw an external graphs file on the graph or page, with size and rotation given. The centre can be given in axis coordinates or fractional coordinates. #. :command:`svgfile` - draw an external scalable vector graphic on the graph or page, with size and rotation given. The centre can be given in axis coordinates or fractional coordinates. #. :command:`line` - draw a line with optional arrowheads on the graph or page. One end can be given in axis coordinates or fractional coordinates. #. :command:`contour` - plot contours of a 2D dataset on the graph. Contours are automatically calculated between the minimum and maximum values of the graph or chosen manually. The line style of the contours can be chosen individually and the region between contours can be filled with shading or color. 2D datasets currently consist of a regular grid of values between minimum and maximum positions in x and y. They can be constructed from three 1D datasets of x, y and z if they form a regular x, y grid. #. :command:`image` - plot a 2D dataset as a colored image. Different color schemes can be chosen. The scaling between the values and the image can be specified as linear, logarithmic, square-root or square. #. :command:`polygon` - plot x and y points from datasets as a polygon. The polygon can be placed directly on the page or within a graph. Coordinates are either plotted using the axis or as fractions of the width and height of the containing widget. #. :command:`boxplot` - plot distribution of points in a dataset. #. :command:`polar` - plot polar data or functions. This is a non-orthogonal plot and is placed directly on the page rather than in a graph. #. :command:`ternary` - plot data of three variables which add up to 100 per cent.This is a non-orthogonal plot and is placed directly on the page rather than in a graph. #. 3D widgets - 3D graphs can be created by adding a 3D scene widget (:command:`scene3d`) to a blank page, or by creating a new 3D document. The 3D scene has settings which control the angle the rotation angle of the plot, the position and color of lighting and the rendering method. To build up a 3D plot the following widgets can be placed inside it: #. :command:`graph3d` - this is an analogous widget to the 2D graph widget, plotting a 3D plot with cartesian axes. It contains three or more axis3d widgets, and plotting widgets. The graph contains settings for the graph size (the default is 1 in each direction) and the 3D position of the graph in the same units. Multiple graph widgets can be added to a scene, though the position and sizes may need to be adjusted. #. :command:`axis3d` - normally a 3D graph has three axes (X, Y and Z), but more axes can be added to plot multiple things on a single axis direction. This works in a similar way to the 2D axis widget. The widget has options for the axis label, tick labels, tick marks and grid lines (which appear on the outside of the 3D cube). An axis can be swiched between linear and logorithmic mode. Scalings can be applied to the data values plotted in that dimension or to the axis labels. #. :command:`point3d` - for plotting points, and optionally connecting lines, in 3D. This, and the other plotting widgets are placed in a graph3d widget. The user provides three 1D datasets for the x, y and z values. The markers can be scaled in size by another optional dataset. The markers can also be colored according to another optional dataset, according to a color map, minimum and maximum. Error bars can be provided for each of the x, y and z datasets. The connecting line can also be colored if a color dataset is provided and a colormap chosen. #. :command:`function3d` - for plotting either a functional line in 3D space or a functional surface. The type of plot is given by the mode parameter. In the case of the line, the x,y,z coordinates can be specified as a function of t, where t goes from 0 to 1, or by giving functions for two of the coordinates as a function of the other. For a surface, the value for x, y or z is given as a function of the other two. In addition, a function returning 0 to 1 can be provided for the color, which specifies the color map value for the surface at each position or the line color. For a 2D surface, the grid lines or surface fill can be hidden or shown. There are also settings giving the number of function evaluations to compute in each direction for a surface, or in one direction for a line. #. :command:`surface3d` - for plotting a two dimensional surface from data values. The user should provide a 2D dataset for the height of a surface. The x, y or z axis for the height and other directions can be chosen. A second 2D dataset can be provided for the color of the surface at each point. Note that the coordinate of the 2D dataset lies at the center of each 2D grid point. The height of the grid at the edge is calculated by linear interpolation. Normally the grid is surrounded by four lines and the surface by two triangles. If a high resolution option is enabled, the each grid point is surrounded by eight lines and the surface drawn by eight triangles. #. :command:`volume3d` - for plotting 3D volumes. In this widget, for a volume described by A×B×C values, then the user should provide four datasets, each containing up to A×B×C values (there can be holes in the representation). Three of the datasets give coordinates of the centers of the 3D cells and the fourth the color of the cell. An example set of datasets would be X=(0,0,0,0,1,1,1,1), Y=(0,0,1,1,0,0,1,1), Z=(0,1,0,1,0,1,0,1), color=(0.1,0.2,0.3,0.4,0.3,0.2,0.1,0). Additionally, the user can provide a transparency dataset, which can be useful for showing or hiding parts of the 3D space. Settings: properties and formatting ----------------------------------- The various settings of the widgets come in a number of types, including integers (e.g. 10), floats (e.g. 3.14), dataset names (`mydata`), expressions (`x+y`), text (`hi there!`), distances (see above), options (`horizontal` or `vertical` for axes). Veusz performs type checks on these parameters. If they are in the wrong format the control to edit the setting will turn red. In the command line, a TypeError exception is thrown. In the GUI, the current page is replotted if a setting is changed when enter is pressed or the user moves to another setting. The settings are split up into formatting settings, controlling the appearance of the plot, or properties, controlling what is plotted and how it is plotted. Default settings, including the default font and line style, and the default settings for any graph widget, can be modified in the "Default styles" dialog box under the "Edit" menu. Default settings are set on a per-document basis, but can be saved into a separate file and loaded. A default default settings file can be given to use for new documents (set in the preferences dialog). Datasets -------- Data are imported into Veusz as a dataset. A dataset is imported from a file, entered manually, set via the command line, or linked to other datasets via an expression or dataset plugin. Each dataset has a unique name in the document. They can be seen in the dataset browser panel, or in the Data, Edit dialog box. To choose the data to be plotted, the user usually selects the dataset in the appropriate setting of a widget. Veusz supports one-dimensional (1D) datasets, which are a list of values with optional error bars. Error bars can either be symmetric or asymmetric. Veusz also supports two-dimensional (2D) data. A 2D dataset is a grid of values, with either a fixed spacing in coordinates, or with arbitrary pixel sizes. An n-dimensional (nD) dataset is an arbitrary matrix of values. These cannot be plotted directly, but subsets can be plotted using python slice syntax to convert to 1D or 2D datasets. In addition to simple numeric datasets, Veusz also supports date-time datasets. For details see the sections on reading data. Also supported are text datasets, which are lists of text strings. Datasets can either be plain lists of values which are stored within the document, or they can be linked to a file, so that the values update if the file is reloaded, or they can be linked to other datasets via expressions or dataset plugins. .. _TextFonts: Text -------------------- Veusz understands a limited set of LaTeX-like formatting for text. There are some differences (for example, `10^23` puts the 2 and 3 into superscript), but it is fairly similar. You should also leave out the dollar signs. Veusz supports superscripts (`^`), subscripts (`_`), brackets for grouping attributes are `{` and `}`. Supported LaTeX symbols include: \\AA, \\Alpha, \\Beta, \\Chi, \\Delta, \\Epsilon, \\Eta, \\Gamma, \\Iota, \\Kappa, \\Lambda, \\Mu, \\Nu, \\Omega, \\Omicron, \\Phi, \\Pi, \\Psi, \\Rho, \\Sigma, \\Tau, \\Theta, \\Upsilon, \\Xi, \\Zeta, \\alpha, \\approx, \\ast, \\asymp, \\beta, \\bowtie, \\bullet, \\cap, \\chi, \\circ, \\cup, \\dagger, \\dashv, \\ddagger, \\deg, \\delta, \\diamond, \\divide, \\doteq, \\downarrow, \\epsilon, \\equiv, \\eta, \\gamma, \\ge, \\gg, \\hat, \\in, \\infty, \\int, \\iota, \\kappa, \\lambda, \\le, \\leftarrow, \\lhd, \\ll, \\models, \\mp, \\mu, \\neq, \\ni, \\nu, \\odot, \\omega, \\omicron, \\ominus, \\oplus, \\oslash, \\otimes, \\parallel, \\perp, \\phi, \\pi, \\pm, \\prec, \\preceq, \\propto, \\psi, \\rhd, \\rho, \\rightarrow, \\sigma, \\sim, \\simeq, \\sqrt, \\sqsubset, \\sqsubseteq, \\sqsupset, \\sqsupseteq, \\star, \\stigma, \\subset, \\subseteq, \\succ, \\succeq, \\supset, \\supseteq, \\tau, \\theta, \\times, \\umid, \\unlhd, \\unrhd, \\uparrow, \\uplus, \\upsilon, \\vdash, \\vee, \\wedge, \\wtilde, \\xi, \\zeta. Please request additional characters if they are required (and exist in the unicode character set). Special symbols can be included directly from a character map. Other LaTeX commands are supported. `\\\\` breaks a line. This can be used for simple tables. For example `{a\\\\b} {c\\\\d}` shows `a c` over `b d`. The command `\\frac{a}{b}` shows a vertical fraction a/b. Also supported are commands to change font. The command `\\font{name}{text}` changes the font text is written in to name. This may be useful if a symbol is missing from the current font, e.g. `\\font{symbol}{g}` should produce a gamma. You can increase, decrease, or set the size of the font with `\\size{+2}{text}`, `\\size{-2}{text}`, or `\\size{20}{text}`. Numbers are in points. Various font attributes can be changed: for example, `\\italic{some italic text}` (or use `\\textit` or `\\emph`), `\\bold{some bold text}` (or use `\\textbf`) and `\\underline{some underlined text}`. Example text could include `Area / \\pi (10^{-23} cm^{-2})`, or `\\pi\\bold{g}`. Veusz plots these symbols with Qt's unicode support. You can also include special characters directly, by copying and pasting from a character map application. If your current font does not contain these symbols then you may get a box character. Veusz also supports the evaluation of a Python expression when text is written to the page. Python code is written inside the brackets :command:`%{{ }}%`. Note that the Python evaluation happens before the LaTeX expansion is done. The return value of the expression is converted to text using the Python :command:`str()` function. For example, the expression :command:`%{{2+2}}%` would write :command:`4`. Custom functions and constants are supported when evaluation, in addition to the usual numpy functions. In addition, Veusz defines the following useful functions and values. #. :command:`ENVIRON` is the :command:`os.environ` dict of environment variables. :command:`%{{ENVIRON['USER']}}%` would show the current user in unix. #. :command:`DATE([fmt])` returns the current date, by default in ISO format. fmt is an optional format specifier using :command:`datetime.date.strftime` format specifiers. #. :command:`TIME([fmt])` returns the current date/time, by default in ISO format. fmt is an optional format specifier using :command:`datetime.datetime.strftime` format specifiers. #. :command:`DATA(name[, part])` returns the Veusz dataset with given name. For numeric datasets this is a numpy array. For numeric datasets with errors, part specifies the dataset part to return, i.e. 'data', 'serr', 'perr', 'nerr'. For example, the mean value of a dataset could be shown using :command:`%{{mean(DATA('x'))}}%`. #. :command:`FILENAME()` - returns the current document filename. This can include the directory/folder of the file. Note that the filename is escaped with ESCAPE() so that LaTeX symbols are not expanded when shown. #. :command:`BASENAME()` - returns the current document filename, removing the directory or folder name Note that the filename is escaped with ESCAPE() so that LaTeX symbols are not expanded when shown. #. :command:`ESCAPE(x)` - escapes any LaTeX symbols in x so that they are not interpreted as LaTeX. #. :command:`SETTING(path)` - return the value of the Veusz setting given by the full path, e.g. :command:`%{{SETTING('/page1/width')}}%`. #. :command:`LANG(mapping)` - mapping is a dictionary which maps language names to strings. This returns the string corresponding to the current language. The keys come from the locale names which are the two-letter language codes (e.g. `en` or `fr`), or the full code (e.g. `en_GB` or `de_AT`). The `default` key is used if the language code is not found. An example is :command:`%{{ LANG({'de':'Druck','default':'Pressure'}) }}%`. Measurements ------------ Distances, widths and lengths in Veusz can be specified in a number of different ways. These include absolute distances specified in physical units, e.g. 1cm, 0.05m, 10mm, 5in and 10pt, and relative units, which are relative to the largest dimension of the page, including 5%, 1/20, 0.05. Color theme ----------- From version 1.26, widgets are colored automatically using the color theme. This theme is specified in the main document widget settings. Widgets are given the colors in order given the order in a graph widget. The default theme can be specified in the preferences dialog box. To override a theme, the user can manually specify the individual colors in the custom definitions dialog box. Color `theme1` is used as the first theme color, then `theme2`, etc. Axis numeric scales ------------------- The way in which numbers are formatted in axis scales is chosen automatically. For standard numerical axes, values are shown with the `%Vg` formatting (see below). For date axes, an appropriate date formatting is used so that the interval shown is correct. A format can be given for an axis in the axis number formatting panel can be given to explicitly choose a format. Some examples are given in the drop down axis menu. Hold the mouse over the example for detail. C-style number formatting is used with a few Veusz specific extensions. Text can be mixed with format specifiers, which start with a `%` sign. Examples of C-style formatting include: `%.2f` (decimal number with two decimal places, e.g. 2.01), `%.3e` (scientific formatting with three decimal places, e.g. 2.123e-02), `%g` (general formatting, switching between `%f` and `%e` as appropriate). See ``_ for details. Veusz extensions include `%Ve`, which is like `%e` except it displays scientific notation as written, e.g. 1.2x10^23, rather than 1.2e+23. `%Vg` switches between standard numbers and Veusz scientific notation for large and small numbers. `%VE` using engineering SI suffixes to represent large or small numbers (e.g. 1000 is 1k). Veusz allows dates and times to be formatted using `%VDX` where `X` is one of the formatting characters for strftime (see ``_ for details). These include `a` for an abbreviated weekday name, `A` for full weekday name, `b` for abbreviated month name, `B` for full month name, `c` date and time representation, `d` day of month 01..31, `H` hour as 00..23, `I` hour as 01..12, `j` as day of year 001..366, `m` as month 01..12, `M` minute as 00..59, `p` AM/PM, `S` second 00..61, `U` week number of year 00..53 (Sunday as first day of week), `w` weekday as decimal number 0..6, `W` week number of year (Monday as first day of week), `x` date representation, `X` time representation, `y` year without century 00..99 and `Y` year. `%VDVS` is a special Veusz addon format which shows seconds and fractions of seconds (e.g. 12.2). Three dimensional (3D) plots ---------------------------- When drawing in three dimensions, Veusz builds up a 3D "scene" for the graph from the various plotting widgets, made up of triangles, line segments, points and text. Veusz does not use a standard (e.g. OpenGL) drawing method, but renders the scene itself. The advantage of this is that it can produce vector rather than bitmap or raster output. OpenGL, for example, is based around bitmaps. Veusz applies lighting to the scene. The lighting depends on enabled light sources, which are set in the scene3d widget. Light sources have a color, intensity and position. Note that only the angle of the light to a surface affects its lighting, not its distance. The position of the light is relative to the viewer (camera), not the graph. Positive light coordinates are towards the graph (z), upwards (y) and rightwards (x). Normally each solid surface has an intrinsic color, which can be seen without any lighting. If a light source is enabled, the color of the light is added to the surface color, depending on the reflectivity of the surface. Each surface also has a transparency setting. By default, Veusz uses a naive Painter's Algorithm to draw the scene. It draws from the back of scene to the front. The main problem with this algorithm is that shapes and lines overlapping in depth can be confused as the depth of each object is calculated at only one point. In addition objects may intersect, which is not properly treated. In the scene3d object, the user can switch to a different rendering mode called BSP. In this accurate BSP mode, the objects are split so that they never overlap from any viewing angle. The disadvantage of this mode is that it is slow, uses a lot of memory and produces large output files. We plan in future to add another mode which handles overlaps better and does not unnecessarily split objects. The plot is affected by the viewing angle, which is specified in the scene3d widget settings. The rotation is given be three rotations around lines in X, Y and Z directions (note that these are not the same directions as the X, Y and Z axes!). The X axis runs horizontally on the screen, the Y axis runs vertically, and the Z axis runs along the line of sight. There is also a distance setting, which moves graphs closer to or away from the viewer. At larger distances the effect of perspective reduces, meaning that parts of the plot closer to the viewer are not larger than if they were at the farthest side. At large distances, a plot tends towards being isometric. At small distances, shapes are more distorted (note by default the size of the graph is 1 in these distance units). It is currently possible to place graphs inside the camera leading to strange output. By default, Veusz enlarges the 3D rendered scene to fill the bounds of the 3D scene widget, so distance has no effect on the size of the plot. This scaling can be switched off by modifying the Size setting from "Auto" to a fixed number. A fixed size is useful if the user wants a graph to be the same size for any rotation. With this setting the size of the plot is affected by their distance. By default, a 3D graph has dimensions of 1 along the X, Y and Z axes. The size can be adjusted using the size settings in the graph3d widget. Care should be taken that the graph size does not lead to points being at negative viewing distances. The default position of the plot is at the origin 0,0,0. If the user wants to plot multiple graph3d widgets, the positions should be adjusted to prevent overlap. Normally in Veusz, sizes of objects (e.g. plot markers) are given in physical units. This makes less sense for a 3D plot as sizes can depend on distance. In a 3D graph sizes of plotting markers and line widths are given in 1/1000 of the graph bounding box maximum dimension. The main window =============== You should see the main window when you run Veusz (you can just type the veusz command in Unix). .. image:: _images/mainwindow.png The Veusz window is split into several sections. At the top is the menu bar and tool bar. These work in the usual way to other applications. Sometimes options are disabled (greyed out) if they do not make sense to be used. If you hold your mouse over a button for a few seconds, you will usually get an explanation for what it does called a "tool tip". Below the main toolbar is a second toolbar for constructing the graph by adding widgets (on the left), and some editing buttons. The add widget buttons add the request widget to the currently selected widget in the selection window. The widgets are arranged in a tree-like structure. Below these toolbars and to the right is the plot window. This is where the current page of the current document is shown. You can adjust the size of the plot on the screen (the zoom factor) using the "View" menu or the zoom tool bar button (the magnifying glass). Initially you will not see a plot in the plot window, but you will see the Veusz logo. At the moment you cannot do much else with the window. In the future you will be able to click on items in the plot to modify them. To the left of the plot window is the selection window, and the properties and formatting windows. The properties window lets you edit various aspects of the selected widget (such as the minimum and maximum values on an axis). Changing these values should update the plot. The formatting lets you modify the appearance of the selected widget. There are a series of tabs for choosing what aspect to modify. The various windows can be "dragged" from the main window to "float" by themselves on the screen. To the bottom of the window is the console. This window is not shown by default, but can be enabled in the View menu. The console is a Veusz and Python command line console. To read about the commands available see :ref:`Commands `. As this is a Python console, you can enter mathematical expressions (e.g. `1+2.0*cos(pi/4)`) here and they will be evaluated when you press Enter. The usual special functions and the operators are supported. You can also assign results to variables (e.g. `a=1+2`) for use later. The console also supports command history like many Unix shells. Press the up and down cursor keys to browse through the history. Command line completion is not available yet! There also exists a dataset browsing window, by default to the right of the screen. This window allows you to view the datasets currently loaded, their dimensions and type. Hovering a mouse over the size of the dataset will give you a preview of the data. My first plot ============= After opening Veusz, on the left of the main window, you will see a Document, containing a Page, which contains a Graph with its axes. The Graph is selected in the selection window. The toolbar above adds a new widget to the selected widget. If a widget cannot be added to a selected widget it is disabled. On opening a new document Veusz automatically adds a new Page and Graph (with axes) to the document. You will see something like this: .. image:: _images/winwithgraph.png Select the x axis which has been added to the document (click on `x` in the selection window). In the properties window you will see a variety of different properties you can modify. For instance you can enter a label for the axis by writing `Area (cm^{2})` in the box next to label and pressing enter. Veusz supports text in LaTeX-like form (without the dollar signs). Other important parameters is the `log` switch which switches between linear and logarithmic axes, and `min` and `max` which allow the user to specify the minimum and maximum values on the axes. The formatting dialog lets you edit various aspects of the graph appearance. For instance the "Line" tab allows you to edit the line of the axis. Click on "Line", then you can then modify its colour. Enter "green" instead of "black" and press enter. Try making the axis label bold. Now you can try plotting a function on the graph. If the graph, or its children are selected, you will then be able to click the "function" button at the top (a red curve on a graph). You will see a straight line (y=x) added to the plot. If you select "function1", you will be able to edit the functional form plotted and the style of its line. Change the function to `x**2` (x-squared). We will now try plotting data on the graph. Go to your favourite text editor and save the following data as test.dat: :: 1 0.1 -0.12 1.1 0.1 2.05 0.12 -0.14 4.08 0.12 2.98 0.08 -0.1 2.9 0.11 4.02 0.04 -0.1 15.3 1.0 The first three columns are the x data to plot plus its asymmetric errors. The final two columns are the y data plus its symmetric errors. In Veusz, go to the "Data" menu and select "Import". Type the filename into the filename box, or use the "Browse..." button to search for the file. You will see a preview of the data pop up in the box below. Enter `x,+,- y,+-` into the descriptors edit box (note that commas and spaces in the descriptor are almost interchangeable in Veusz 1.6 or newer). This describes the format of the data which describes dataset "x" plus its asymmetric errors, and "y" with its symmetric errors. If you now click "Import", you will see it has imported datasets `x` and `y`. To plot the data you should now click on `graph1` in the tree window. You are now able to click on the "xy" button (which looks like points plotted on a graph). You will see your data plotted on the graph. Veusz plots datasets `x` and `y` by default, but you can change these in the properties of the "xy" plotter. You are able to choose from a variety of markers to plot. You can remove the plot line by choosing the "Plot Line" subsetting, and clicking on the "hide" option. You can change the colour of the marker by going to the "Marker Fill" subsetting, and entering a new colour (e.g. red), into the colour property. ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/Documents/manual-source/make.bat0000664000175000017500000001612214126044351017243 0ustar00jssjss@ECHO OFF REM Command file for Sphinx documentation if "%SPHINXBUILD%" == "" ( set SPHINXBUILD=sphinx-build ) set BUILDDIR=..\manual set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% . set I18NSPHINXOPTS=%SPHINXOPTS% . if NOT "%PAPER%" == "" ( set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS% set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS% ) if "%1" == "" goto help if "%1" == "help" ( :help echo.Please use `make ^` where ^ is one of echo. html to make standalone HTML files echo. dirhtml to make HTML files named index.html in directories echo. singlehtml to make a single large HTML file echo. pickle to make pickle files echo. json to make JSON files echo. htmlhelp to make HTML files and a HTML help project echo. qthelp to make HTML files and a qthelp project echo. devhelp to make HTML files and a Devhelp project echo. epub to make an epub echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter echo. text to make text files echo. man to make manual pages echo. texinfo to make Texinfo files echo. gettext to make PO message catalogs echo. changes to make an overview over all changed/added/deprecated items echo. xml to make Docutils-native XML files echo. pseudoxml to make pseudoxml-XML files for display purposes echo. linkcheck to check all external links for integrity echo. doctest to run all doctests embedded in the documentation if enabled echo. coverage to run coverage check of the documentation if enabled goto end ) if "%1" == "clean" ( for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i del /q /s %BUILDDIR%\* goto end ) REM Check if sphinx-build is available and fallback to Python version if any %SPHINXBUILD% 1>NUL 2>NUL if errorlevel 9009 goto sphinx_python goto sphinx_ok :sphinx_python set SPHINXBUILD=python -m sphinx.__init__ %SPHINXBUILD% 2> nul if errorlevel 9009 ( echo. echo.The 'sphinx-build' command was not found. Make sure you have Sphinx echo.installed, then set the SPHINXBUILD environment variable to point echo.to the full path of the 'sphinx-build' executable. Alternatively you echo.may add the Sphinx directory to PATH. echo. echo.If you don't have Sphinx installed, grab it from echo.http://sphinx-doc.org/ exit /b 1 ) :sphinx_ok if "%1" == "html" ( %SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html if errorlevel 1 exit /b 1 echo. echo.Build finished. The HTML pages are in %BUILDDIR%/html. goto end ) if "%1" == "dirhtml" ( %SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml if errorlevel 1 exit /b 1 echo. echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml. goto end ) if "%1" == "singlehtml" ( %SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml if errorlevel 1 exit /b 1 echo. echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml. goto end ) if "%1" == "pickle" ( %SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle if errorlevel 1 exit /b 1 echo. echo.Build finished; now you can process the pickle files. goto end ) if "%1" == "json" ( %SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json if errorlevel 1 exit /b 1 echo. echo.Build finished; now you can process the JSON files. goto end ) if "%1" == "htmlhelp" ( %SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp if errorlevel 1 exit /b 1 echo. echo.Build finished; now you can run HTML Help Workshop with the ^ .hhp project file in %BUILDDIR%/htmlhelp. goto end ) if "%1" == "qthelp" ( %SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp if errorlevel 1 exit /b 1 echo. echo.Build finished; now you can run "qcollectiongenerator" with the ^ .qhcp project file in %BUILDDIR%/qthelp, like this: echo.^> qcollectiongenerator %BUILDDIR%\qthelp\veusz.qhcp echo.To view the help file: echo.^> assistant -collectionFile %BUILDDIR%\qthelp\veusz.ghc goto end ) if "%1" == "devhelp" ( %SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp if errorlevel 1 exit /b 1 echo. echo.Build finished. goto end ) if "%1" == "epub" ( %SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub if errorlevel 1 exit /b 1 echo. echo.Build finished. The epub file is in %BUILDDIR%/epub. goto end ) if "%1" == "latex" ( %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex if errorlevel 1 exit /b 1 echo. echo.Build finished; the LaTeX files are in %BUILDDIR%/latex. goto end ) if "%1" == "latexpdf" ( %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex cd %BUILDDIR%/latex make all-pdf cd %~dp0 echo. echo.Build finished; the PDF files are in %BUILDDIR%/latex. goto end ) if "%1" == "latexpdfja" ( %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex cd %BUILDDIR%/latex make all-pdf-ja cd %~dp0 echo. echo.Build finished; the PDF files are in %BUILDDIR%/latex. goto end ) if "%1" == "text" ( %SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text if errorlevel 1 exit /b 1 echo. echo.Build finished. The text files are in %BUILDDIR%/text. goto end ) if "%1" == "man" ( %SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man if errorlevel 1 exit /b 1 echo. echo.Build finished. The manual pages are in %BUILDDIR%/man. goto end ) if "%1" == "texinfo" ( %SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo if errorlevel 1 exit /b 1 echo. echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo. goto end ) if "%1" == "gettext" ( %SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale if errorlevel 1 exit /b 1 echo. echo.Build finished. The message catalogs are in %BUILDDIR%/locale. goto end ) if "%1" == "changes" ( %SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes if errorlevel 1 exit /b 1 echo. echo.The overview file is in %BUILDDIR%/changes. goto end ) if "%1" == "linkcheck" ( %SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck if errorlevel 1 exit /b 1 echo. echo.Link check complete; look for any errors in the above output ^ or in %BUILDDIR%/linkcheck/output.txt. goto end ) if "%1" == "doctest" ( %SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest if errorlevel 1 exit /b 1 echo. echo.Testing of doctests in the sources finished, look at the ^ results in %BUILDDIR%/doctest/output.txt. goto end ) if "%1" == "coverage" ( %SPHINXBUILD% -b coverage %ALLSPHINXOPTS% %BUILDDIR%/coverage if errorlevel 1 exit /b 1 echo. echo.Testing of coverage in the sources finished, look at the ^ results in %BUILDDIR%/coverage/python.txt. goto end ) if "%1" == "xml" ( %SPHINXBUILD% -b xml %ALLSPHINXOPTS% %BUILDDIR%/xml if errorlevel 1 exit /b 1 echo. echo.Build finished. The XML files are in %BUILDDIR%/xml. goto end ) if "%1" == "pseudoxml" ( %SPHINXBUILD% -b pseudoxml %ALLSPHINXOPTS% %BUILDDIR%/pseudoxml if errorlevel 1 exit /b 1 echo. echo.Build finished. The pseudo-XML files are in %BUILDDIR%/pseudoxml. goto end ) :end ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1676233816.0 veusz-3.6.2/INSTALL.md0000664000175000017500000002143414372246130012556 0ustar00jssjss# Veusz Installation ## Installation methods 1. Provided binaries for x86-64 Linux, Windows and MacOS - please go to the [download page](https://veusz.github.io/download/). See also below for further information. 2. Packages for your Linux distribution, provided by the distribution. These are often older than the current version. 3. [PPA](https://launchpad.net/~jeremysanders/+archive/ubuntu/ppa) for Ubuntu distribution, which we try to keep up to date. 4. [flatpak](https://flathub.org/apps/details/io.github.veusz.Veusz) runs on many linux distributions. 5. Anaconda conda-forge [package](https://anaconda.org/conda-forge/veusz). 6. Source build, download from the [download page](https://veusz.github.io/download/) and see below for build instructions. ## Provided binaries ### Windows Simply run the setup.exe binary installer. Add the location of the embed.py file to your `PYTHONPATH` of your Python installation if you want to use the embedding module. ### Linux Unpack the provided tar file and run the `veusz.exe` file inside (please note that the `.exe` extension does not mean a Windows executable here!): $ tar xf veusz-3.6-linux-x86_64.tar.xz [change version here] $ cd veusz-3.6-linux-x86_64 $ ./veusz.exe Note that this may not work on all distributions due to glibc or other library incompatibilities. ### MacOS Simply drag the Veusz application into your Applications directory. Please note that unfortunately due to signing requirements, you will need to disable quarantine for it to run. Please see [this github issue](https://github.com/veusz/veusz/issues/630#issuecomment-1305817737). ## Installing from source ### Requirements * [Python](https://www.python.org/) >= 3.3 * [Qt](https://www.qt.io/developers/) >= 5.5 * [SIP](https://www.riverbankcomputing.co.uk/software/sip/) >= 5 * [PyQt](https://www.riverbankcomputing.co.uk/software/pyqt/) >= 5.3 * [numpy](https://numpy.org/) >= 1.7 ### Optional requirements * [h5py](https://www.h5py.org/), for HDF5 file support * [astropy](https://www.astropy.org/), for FITS file support * [pyemf3](https://github.com/jeremysanders/pyemf3) >= 3.3, for EMF output * [iminuit](https://github.com/iminuit/iminuit) >= 2, for better fitting * [Ghostscript](https://www.ghostscript.com/), for EPS/PS output * [dbus-python](https://dbus.freedesktop.org/doc/dbus-python/), for D-BUS support * [Sphinx](https://www.sphinx-doc.org/en/master/), to rebuild the documentation ### Installation with setuptools Veusz provides a standard setuptools `setup.py` file. If installing this locally, it may be better to create a Python virtual environment so that it is self contained and does not interfere with existing Python dependencies and packages. ### Building and running inside a virtual environment An example use of a virtual environment to build veusz would be $ python3 -m venv /path/to/virtual/environment [setup environment] $ source /path/to/virtual/environment/bin/activate [activate it] $ pip3 install numpy PyQt5 sip astropy h5py tomli [install necessary requirements] $ pip3 install h5py astropy iminuit [install optional requirements] $ pip3 install https://github.com/jeremysanders/pyemf3.git [optional, for EMF output] $ tar xf veusz-3.5.tar.gz [unpack veusz source] $ cd veusz-3.5 $ pip3 install -v . [build and install veusz from current directory] However, for the above to work requires a working Qt5 development installation. This can be your Linux distribution's Qt packages, binaries download from the Qt website, or a Qt build from source. A quick way to install Qt binaries on different platforms can be using the [aqtinstall](https://github.com/miurahr/aqtinstall) command line installer. ### Installing into system Python directories This needs write premissions into the destination directory, so `sudo` may be required. $ tar xf veusz-3.5.tar.gz [unpack veusz source] $ cd veusz-3.5 $ pip3 install -v . [build and install veusz from current directory] On Ubuntu/Debian systems the following packages are necessary: $ apt install libqt5core5a libqt5gui5 libqt5svg5 libqt5widgets5 \ python3-all python3-all-dev python3-astropy python3-h5py \ python3-numpy python3-pyqt5 python3-pyqt5.qtsvg \ python3-sipbuild python3-tomli \ pyqt5-dev pyqt5-dev-tools qt5-qmake qtbase5-dev sip-tools On Fedora the following are required: $ dnf install python3-devel python3-setuptools \ python3-numpy qt5-qtbase-devel qt5-qtsvg-devel \ python3-qt5 python3-qt5-devel python3-pyqt5-sip \ python3-h5py python3-tomli Other Unix or Linux systems will likely contain the needed packages. ### Testing After veusz has been installed into the Python path (in the standard location or in `PYTHONPATH`), you can run the `runselftest.py` executable in the `tests` directory. This will compare the generated output of example documents with the expected output. The return code of the `runselftest.py` script is the number of tests that have failed (0 for success). On Unix/Linux, Qt requires the `DISPLAY` environment to be set to an X11 server for the self test to run. Packagers can use Xvfb in a non graphical environment to create a hidden X11 server: $ xvfb-run -a --server-args "-screen 0 640x480x24" \ python3 tests/runselftest.py Alternatively, the Qt platform can be switched to minimal to avoid the use of X11: $ QT_QPA_PLATFORM=minimal python3 tests/runselftest.py Please note that the environment variable `VEUSZ_INPLACE_TEST` is set, then the `PYTHONPATH` are set to include the current working directory, making it easier to run the self tests in automated scripts without installation. ### Building and running in-place If you don't want to install veusz fully or are doing development, it can currently be run from its own directory. Before this can work, the `helpers` modules must be compiled and copied into the appropriate location. $ tar xzf veusz-3.6.tar.gz [change version here] $ cd veusz-3.6 $ python3 setup.py build $ cp build/*/veusz/helpers/*.so veusz/helpers/ ### Notes for packagers * It is recommended to run the self test above (if possible). * Veusz needs access to several subdirectories containing resource files, which are by default installed in the veusz module directory. These include the current version (`VERSION`), licence (`COPYING`), icons (`icons` subdirectory), user-interface description (`ui` subdirectory) and examples (`examples` subdirectory). This location may not be desired by unix packagers, for example, who want to separate the code from the data files. It is possible to install these files in a different location by using the setup.py option `--veusz-resource-dir` (for example with `/usr/share/veusz`). If you do this, then you need to tell veusz where these resources are at runtime or when testing. This can be done by using a symlink `resources` in the the veusz module directory which points to the location of these files and directories. Alternatively, the environment variable `VEUSZ_RESOURCE_DIR` can be set. There is an addition setup.py option `--disable-install-examples` which disables installation of the example files. This may be helpful for packagers who want to place the example files in `/usr/share/doc`. As veusz shows these files on the help menu, it is suggested that an `examples` symlink is added to the resources directory to point to the location of the example files. - Veusz is mostly platform-independent python code and data files with a separate `helpers` module containing platform-dependent code. It may save space in repositories to separate out the helpers sub-module. - Veusz includes a man page in `Documents/man-page/veusz.1`. This is not automatically installed by setuptools. - A manual in HTML and PDF format can be found in `Documents/manual/`. This and the the man page can be regenerated using the Makefile in Documents, if Sphinx is installed (`make clean; make`). - Veusz also includes freedesktop mime, desktop and appdata files in the `support` subdirectory which can be installed to better integrate with desktop environments. - Icons are also included in the icons directory with the names `veusz_16.png`, `_32`, `_48`, `_64` and `_128`. A scalable icon can be found in `veusz.svg`. - Veusz will periodically (once per week) check for updates. This can be disabled by patching `veusz/utils/version.py` to set `disableVersionChecks=True`. - Veusz will automatically send anonymous feedback (after confirmation) to the developers giving version information and counts of feature use. This can be disabled by patching `veusz/utils/feedback.py` to set `disableFeedback=True`. ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1676732286.0 veusz-3.6.2/MANIFEST.in0000664000175000017500000000141314374163576012675 0ustar00jssjssinclude AUTHORS ChangeLog COPYING INSTALL.md README.md include MANIFEST.in *.py setup.cfg run_veusz_inplace include scripts/veusz recursive-include src *.c *.cpp *.h README LICENSE_* QtMml* include VERSION recursive-include examples *.vsz *.py *.csv *.dat recursive-include icons *.icns *.png *.ico *.svg LICENSE-* recursive-include ui *.ui recursive-include support *.xml *.desktop # self tests recursive-include tests *.py *.sh *.vsz *.selftest *.csv *.dat *.npy *.npz *.qdp *.pco *.fits *.hdf5 # manual source and output recursive-include Documents/manual * recursive-include Documents/manual-source *.rst *.py Makefile make.bat *.png .gitignore include Documents/man-page/*.1 include Documents/man-page/*.pod include Documents/man-page/*.man.txt include Documents/Makefile ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.2565212 veusz-3.6.2/PKG-INFO0000664000175000017500000000300114376700261012215 0ustar00jssjssMetadata-Version: 2.1 Name: veusz Version: 3.6.2 Summary: A scientific plotting package Home-page: https://veusz.github.io/ Author: Jeremy Sanders Author-email: jeremy@jeremysanders.net License: GPLv2+ Classifier: Programming Language :: Python Classifier: Programming Language :: Python :: 3 Classifier: Programming Language :: Python :: 3.3 Classifier: Programming Language :: Python :: 3.4 Classifier: Programming Language :: Python :: 3.5 Classifier: Programming Language :: Python :: 3.6 Classifier: Programming Language :: Python :: 3.7 Classifier: Programming Language :: Python :: 3.8 Classifier: Programming Language :: Python :: 3.9 Classifier: Programming Language :: Python :: 3.10 Classifier: Programming Language :: Python :: 3.11 Classifier: Development Status :: 5 - Production/Stable Classifier: Environment :: X11 Applications :: Qt Classifier: Intended Audience :: Science/Research Classifier: License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+) Classifier: Topic :: Scientific/Engineering :: Visualization Provides-Extra: fits Provides-Extra: emf Provides-Extra: fitting Provides-Extra: hdf5 License-File: COPYING License-File: AUTHORS Veusz is a 2D and 3D scientific plotting package, designed to create publication-ready PDF and SVG output. It features GUI, command-line, and scripting interfaces. Graphs are constructed from parts, allowing complex layouts to be designed. Veusz supports plotting functions, data with errors, keys, labels, stacked plots, multiple plots, and fitting data. ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426612.0 veusz-3.6.2/README.md0000664000175000017500000000571114376677664012435 0ustar00jssjss# [Veusz 3.6.2](https://veusz.github.io/) Veusz is a scientific plotting package. It is designed to produce publication-ready PDF or SVG output. Graphs are built-up by combining plotting widgets. The user interface aims to be simple, consistent and powerful. Veusz provides GUI, Python module, command line, scripting, DBUS and SAMP interfaces to its plotting facilities. It also allows for manipulation and editing of datasets. Data can be captured from external sources such as Internet sockets or other programs. Changes in 3.6.2: * Fix broken resource symlink handling Changes in 3.6.1: * Fix appdata file * Fix issue in setup.cfg Changes in 3.6: * Interactive rotation of 3D plots * Add 12-bit rainbow colormap * Fix crash in contour key values * Fix breakage with recent numpy versions due to removal of bool * Fix error in colormap sequence * About dialog shows software versions * Rewrite install instructions in INSTALL.md * Fix for Python 3.11 due to opening with universal newlines * Remove use of distutils * Fix MacOS binary ## Features of package: ### Plotting features: * X-Y plots (with errorbars) * Line and function plots * Contour plots * Images (with colour mappings and colorbars) * Stepped plots (for histograms) * Bar graphs * Vector field plots * Box plots * Polar plots * Ternary plots * Plotting dates * Fitting functions to data * Stacked plots and arrays of plots * Nested plots * Plot keys * Plot labels * Shapes and arrows on plots * LaTeX-like formatting for text * Multiple axes * Axes with steps in axis scale (broken axes) * Axis scales using functional forms * Plotting functions of datasets * 3D point plots * 3D surface plots * 3D function plots * 3D volumetric plots ### Input and output: * PDF/EPS/PNG/SVG/EMF export * Dataset creation/manipulation * Embed Veusz within other programs * Text, HDF5, CSV, FITS, NPY/NPZ, QDP, binary and user-plugin importing * Data can be captured from external sources ### Extending: * Use as a Python module * User defined functions, constants and can import external Python functions * Plugin interface to allow user to write or load code to - import data using new formats - make new datasets, optionally linked to existing datasets - arbitrarily manipulate the document * Scripting interface * Control with DBUS and SAMP ### Other features: * Data filtering and manipulation * Data picker * Interactive tutorial * Multithreaded rendering ## Installation Please see the file `INSTALL.md` included in the distribution for installation details, or go to the [download page](https://veusz.github.io/download/). ## License Veusz is Copyright (C) 2003-2023 Jeremy Sanders and contributors. It is licensed under the [GPL version 2 or greater](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html). ## Source code The latest source code can be found in [this GitHub repository](https://github.com/veusz/veusz). ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677426616.0 veusz-3.6.2/VERSION0000664000175000017500000000000614376677670012213 0ustar00jssjss3.6.2 ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.1605213 veusz-3.6.2/examples/0000775000175000017500000000000014376700261012744 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/2d_irregular.csv0000664000175000017500000000110114365252232016031 0ustar00jssjss,1,2.15,4.64,10,21.5,26.4,100,215,464,1000 1,2.16,1.94,1.76,1.62,1.54,1.54,1.6,1.73,1.91,2.12 2.15,1.94,1.69,1.48,1.31,1.21,1.2,1.29,1.44,1.65,1.9 4.64,1.76,1.48,1.22,1.01,0.89,0.87,0.98,1.18,1.43,1.7 10,1.62,1.31,1.01,0.75,0.57,0.55,0.71,0.96,1.25,1.56 21.5,1.54,1.21,0.89,0.57,0.28,0.24,0.51,0.83,1.15,1.48 46.4,1.54,1.2,0.87,0.55,0.24,0.19,0.49,0.81,1.14,1.48 100,1.6,1.29,0.98,0.71,0.51,0.49,0.66,0.93,1.23,1.54 215,1.73,1.44,1.18,0.96,0.83,0.81,0.93,1.14,1.39,1.68 464,1.91,1.65,1.43,1.25,1.15,1.14,1.23,1.39,1.61,1.86 1000,2.12,1.9,1.7,1.56,1.48,1.48,1.54,1.68,1.86,2.08 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/2d_irregular.vsz0000664000175000017500000000156014365252232016071 0ustar00jssjss# Veusz saved document (version 1.19.1) # Saved at 2013-12-29T17:02:38.658934 ImportFile2D(u'2d_irregular.csv', [u'irreg'], gridatedge=True, mode='csv', linked=True) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('label', u'X coordinate') Set('min', 0.8) Set('max', 1100.0) Set('log', True) Set('autoRange', u'exact') To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Y coordinate') Set('min', 0.8) Set('max', 1100.0) Set('log', True) Set('autoRange', u'exact') Set('direction', 'vertical') To('..') Add('contour', name='contour1', autoadd=False) To('contour1') Set('data', u'irreg') Set('numLevels', 7) To('..') Add('image', name='image1', autoadd=False) To('image1') Set('data', u'irreg') Set('colorMap', u'complement') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/3d_errors.csv0000664000175000017500000004166114365252232015371 0ustar00jssjssx1,+-,y1,+-,z1,+- -1.00448,0.06,0.0454015,0.06,-0.951914,0.06 -0.947443,0.06,-0.0942348,0.06,-0.978727,0.06 -0.955812,0.06,-0.159061,0.06,-0.965282,0.06 -0.920483,0.06,-0.232495,0.06,-0.968487,0.06 -0.884499,0.06,-0.330715,0.06,-0.876091,0.06 -0.96593,0.06,-0.418641,0.06,-0.938588,0.06 -0.953503,0.06,-0.535316,0.06,-0.847697,0.06 -0.902111,0.06,-0.623433,0.06,-0.668504,0.06 -0.852379,0.06,-0.672712,0.06,-0.785483,0.06 -0.900684,0.06,-0.820237,0.06,-0.62733,0.06 -0.902204,0.06,-0.756001,0.06,-0.532409,0.06 -0.882562,0.06,-0.960135,0.06,-0.551147,0.06 -0.903743,0.06,-0.954134,0.06,-0.425931,0.06 -0.741967,0.06,-0.931708,0.06,-0.231332,0.06 -0.756451,0.06,-0.978793,0.06,-0.311701,0.06 -0.794406,0.06,-1.01599,0.06,-0.161483,0.06 -0.814944,0.06,-0.972457,0.06,-0.0558779,0.06 -0.795097,0.06,-1.03041,0.06,0.059825,0.06 -0.864342,0.06,-0.981855,0.06,0.153996,0.06 -0.913998,0.06,-0.980855,0.06,0.271356,0.06 -0.805352,0.06,-0.907594,0.06,0.341329,0.06 -0.793659,0.06,-0.924213,0.06,0.304861,0.06 -0.737846,0.06,-0.843649,0.06,0.630507,0.06 -0.802382,0.06,-0.707305,0.06,0.556455,0.06 -0.73403,0.06,-0.712618,0.06,0.573294,0.06 -0.730333,0.06,-0.718281,0.06,0.693412,0.06 -0.738909,0.06,-0.624228,0.06,0.740766,0.06 -0.741116,0.06,-0.610928,0.06,0.779018,0.06 -0.685351,0.06,-0.526182,0.06,0.81063,0.06 -0.748649,0.06,-0.426492,0.06,0.862282,0.06 -0.655477,0.06,-0.389519,0.06,0.999507,0.06 -0.689694,0.06,-0.193482,0.06,1.03476,0.06 -0.61745,0.06,-0.0569515,0.06,1.00367,0.06 -0.632543,0.06,-0.0192845,0.06,1.02596,0.06 -0.701458,0.06,0.100714,0.06,1.04286,0.06 -0.602175,0.06,0.0535054,0.06,1.01693,0.06 -0.703399,0.06,0.203364,0.06,0.835908,0.06 -0.570363,0.06,0.301452,0.06,0.891448,0.06 -0.619694,0.06,0.524696,0.06,0.980087,0.06 -0.59222,0.06,0.493962,0.06,0.842771,0.06 -0.59944,0.06,0.558372,0.06,0.905672,0.06 -0.652552,0.06,0.646463,0.06,0.729694,0.06 -0.556336,0.06,0.741027,0.06,0.58216,0.06 -0.681687,0.06,0.819553,0.06,0.67249,0.06 -0.641079,0.06,0.851184,0.06,0.457407,0.06 -0.615908,0.06,1.01729,0.06,0.407514,0.06 -0.513977,0.06,0.86237,0.06,0.338065,0.06 -0.716902,0.06,0.994666,0.06,0.220135,0.06 -0.593159,0.06,0.868029,0.06,0.138589,0.06 -0.474601,0.06,0.940369,0.06,0.103171,0.06 -0.456399,0.06,1.03949,0.06,0.0482541,0.06 -0.482752,0.06,1.00334,0.06,-0.141322,0.06 -0.533101,0.06,0.918075,0.06,-0.212267,0.06 -0.556515,0.06,0.883325,0.06,-0.300071,0.06 -0.486339,0.06,1.00983,0.06,-0.404375,0.06 -0.612135,0.06,0.840026,0.06,-0.478285,0.06 -0.402383,0.06,0.909235,0.06,-0.570573,0.06 -0.472022,0.06,0.862358,0.06,-0.577869,0.06 -0.291023,0.06,0.6801,0.06,-0.696262,0.06 -0.39881,0.06,0.700709,0.06,-0.74615,0.06 -0.449917,0.06,0.625223,0.06,-0.757763,0.06 -0.374816,0.06,0.569918,0.06,-0.816722,0.06 -0.357099,0.06,0.54083,0.06,-0.831405,0.06 -0.282226,0.06,0.345871,0.06,-0.849463,0.06 -0.332244,0.06,0.214353,0.06,-0.938509,0.06 -0.279948,0.06,0.198775,0.06,-0.932524,0.06 -0.339269,0.06,0.181751,0.06,-1.07799,0.06 -0.365235,0.06,-0.215189,0.06,-1.06142,0.06 -0.306287,0.06,-0.10276,0.06,-1.00215,0.06 -0.347479,0.06,-0.172078,0.06,-0.967013,0.06 -0.30142,0.06,-0.158514,0.06,-0.880952,0.06 -0.186286,0.06,-0.549934,0.06,-0.924865,0.06 -0.332818,0.06,-0.427934,0.06,-0.914938,0.06 -0.302224,0.06,-0.606999,0.06,-0.860756,0.06 -0.276376,0.06,-0.60414,0.06,-0.844206,0.06 -0.276715,0.06,-0.656373,0.06,-0.791376,0.06 -0.314162,0.06,-0.78283,0.06,-0.674945,0.06 -0.269132,0.06,-0.80759,0.06,-0.639385,0.06 -0.219433,0.06,-0.913001,0.06,-0.494063,0.06 -0.120762,0.06,-1.01759,0.06,-0.42471,0.06 -0.145937,0.06,-0.98997,0.06,-0.280665,0.06 -0.0743879,0.06,-1.02008,0.06,-0.297798,0.06 -0.201471,0.06,-0.944159,0.06,-0.118325,0.06 -0.158172,0.06,-1.01026,0.06,0.0295954,0.06 -0.186688,0.06,-0.937426,0.06,0.0694743,0.06 -0.22076,0.06,-0.946719,0.06,0.175579,0.06 -0.10402,0.06,-0.906441,0.06,0.309233,0.06 -0.133595,0.06,-0.990401,0.06,0.324354,0.06 -0.276736,0.06,-0.825232,0.06,0.457692,0.06 -0.142423,0.06,-0.899158,0.06,0.550457,0.06 -0.0230324,0.06,-0.808618,0.06,0.593998,0.06 -0.097928,0.06,-0.752205,0.06,0.483746,0.06 -0.0332169,0.06,-0.682944,0.06,0.769176,0.06 -0.0196327,0.06,-0.597393,0.06,0.899899,0.06 0.0271343,0.06,-0.453542,0.06,0.795189,0.06 -0.0661508,0.06,-0.418441,0.06,0.91078,0.06 -0.0023447,0.06,-0.326181,0.06,0.917986,0.06 -0.0768333,0.06,-0.244604,0.06,0.981321,0.06 -0.0343207,0.06,-0.230395,0.06,0.949182,0.06 0.0127403,0.06,-0.0622033,0.06,0.921166,0.06 0.0110798,0.06,-0.0552179,0.06,0.970893,0.06 0.0972176,0.06,0.133507,0.06,0.944285,0.06 -0.0276843,0.06,0.0906245,0.06,0.968943,0.06 -0.00790523,0.06,0.185476,0.06,0.960495,0.06 0.0278674,0.06,0.375758,0.06,0.908298,0.06 0.0512346,0.06,0.382179,0.06,0.814695,0.06 0.0902207,0.06,0.52849,0.06,0.838766,0.06 0.140358,0.06,0.672878,0.06,0.767818,0.06 0.0987538,0.06,0.641095,0.06,0.696411,0.06 0.111532,0.06,0.811083,0.06,0.649827,0.06 0.0682611,0.06,0.973913,0.06,0.538531,0.06 0.133155,0.06,0.897701,0.06,0.497559,0.06 0.130593,0.06,0.928756,0.06,0.323769,0.06 0.120737,0.06,0.943233,0.06,0.463417,0.06 0.134873,0.06,0.942602,0.06,0.216087,0.06 0.100361,0.06,1.04524,0.06,0.0981518,0.06 0.109586,0.06,1.05729,0.06,0.121286,0.06 0.184291,0.06,0.989075,0.06,0.0810608,0.06 0.159288,0.06,1.0025,0.06,-0.0395205,0.06 0.15892,0.06,0.984464,0.06,-0.266308,0.06 0.238006,0.06,0.887419,0.06,-0.287985,0.06 0.101126,0.06,0.928253,0.06,-0.512826,0.06 0.259285,0.06,0.962868,0.06,-0.535387,0.06 0.138209,0.06,0.88451,0.06,-0.60212,0.06 0.242805,0.06,0.791398,0.06,-0.653316,0.06 0.300255,0.06,0.635543,0.06,-0.605936,0.06 0.219418,0.06,0.512595,0.06,-0.732576,0.06 0.211656,0.06,0.526431,0.06,-0.845843,0.06 0.30551,0.06,0.434423,0.06,-0.838139,0.06 0.304505,0.06,0.388966,0.06,-0.879645,0.06 0.257109,0.06,0.335583,0.06,-0.903018,0.06 0.290475,0.06,0.190718,0.06,-0.933301,0.06 0.284016,0.06,0.106706,0.06,-1.09854,0.06 0.342215,0.06,-0.00893046,0.06,-0.997684,0.06 0.30836,0.06,-0.121989,0.06,-1.08736,0.06 0.357738,0.06,-0.208717,0.06,-0.91332,0.06 0.413657,0.06,-0.273229,0.06,-0.952776,0.06 0.313334,0.06,-0.338769,0.06,-1.00538,0.06 0.356891,0.06,-0.404485,0.06,-1.00726,0.06 0.346918,0.06,-0.452744,0.06,-0.810078,0.06 0.388333,0.06,-0.620981,0.06,-0.824373,0.06 0.360005,0.06,-0.638577,0.06,-0.692562,0.06 0.537424,0.06,-0.696058,0.06,-0.73616,0.06 0.52648,0.06,-0.737965,0.06,-0.731104,0.06 0.431868,0.06,-0.816404,0.06,-0.587188,0.06 0.44435,0.06,-0.875048,0.06,-0.458394,0.06 0.444737,0.06,-0.903543,0.06,-0.422456,0.06 0.547175,0.06,-0.968495,0.06,-0.177905,0.06 0.563184,0.06,-0.909213,0.06,-0.302382,0.06 0.497507,0.06,-0.981565,0.06,-0.13926,0.06 0.4293,0.06,-1.00536,0.06,0.048411,0.06 0.573394,0.06,-1.05345,0.06,0.0674608,0.06 0.329,0.06,-0.971577,0.06,0.133591,0.06 0.642484,0.06,-1.05769,0.06,0.336996,0.06 0.573453,0.06,-0.971537,0.06,0.401747,0.06 0.582666,0.06,-0.878874,0.06,0.482375,0.06 0.55086,0.06,-0.891078,0.06,0.487663,0.06 0.461398,0.06,-0.878627,0.06,0.628176,0.06 0.562387,0.06,-0.791189,0.06,0.655457,0.06 0.591783,0.06,-0.575695,0.06,0.750382,0.06 0.640342,0.06,-0.562601,0.06,0.740086,0.06 0.621759,0.06,-0.530069,0.06,0.8361,0.06 0.478106,0.06,-0.467096,0.06,0.935849,0.06 0.658877,0.06,-0.31465,0.06,0.908321,0.06 0.580082,0.06,-0.258146,0.06,0.982489,0.06 0.61856,0.06,-0.108849,0.06,0.988082,0.06 0.663409,0.06,-0.0277383,0.06,1.01637,0.06 0.730002,0.06,0.0844698,0.06,1.01217,0.06 0.739735,0.06,0.179563,0.06,1.11704,0.06 0.694558,0.06,0.27633,0.06,0.9248,0.06 0.678681,0.06,0.209616,0.06,1.04935,0.06 0.67154,0.06,0.309866,0.06,0.917078,0.06 0.689889,0.06,0.506624,0.06,0.865021,0.06 0.690459,0.06,0.449516,0.06,0.85466,0.06 0.741328,0.06,0.607168,0.06,0.812978,0.06 0.811246,0.06,0.699107,0.06,0.750751,0.06 0.710025,0.06,0.715537,0.06,0.589062,0.06 0.870963,0.06,0.953516,0.06,0.656803,0.06 0.776706,0.06,0.937112,0.06,0.64089,0.06 0.813509,0.06,0.921478,0.06,0.392529,0.06 0.859788,0.06,1.03382,0.06,0.255707,0.06 0.881678,0.06,0.966239,0.06,0.23485,0.06 0.826734,0.06,1.0558,0.06,0.10058,0.06 0.767536,0.06,1.01161,0.06,0.0236558,0.06 0.863876,0.06,0.976319,0.06,-0.0543413,0.06 0.856297,0.06,0.938244,0.06,-0.223212,0.06 0.854218,0.06,0.984398,0.06,-0.302873,0.06 0.877578,0.06,1.00859,0.06,-0.245076,0.06 0.800352,0.06,0.896349,0.06,-0.374773,0.06 0.975218,0.06,0.783763,0.06,-0.592971,0.06 0.919722,0.06,0.880823,0.06,-0.663686,0.06 0.900947,0.06,0.848608,0.06,-0.560884,0.06 0.877875,0.06,0.653921,0.06,-0.863291,0.06 0.966517,0.06,0.6413,0.06,-0.771452,0.06 0.982776,0.06,0.592275,0.06,-0.881542,0.06 0.991501,0.06,0.469891,0.06,-1.00053,0.06 0.969254,0.06,0.351262,0.06,-1.0153,0.06 0.977696,0.06,0.34317,0.06,-0.947932,0.06 1.03488,0.06,0.13639,0.06,-0.974893,0.06 0.897537,0.06,0.112707,0.06,-0.971631,0.06 x1,+-,y1,+-,z1,+- x2,+-,y2,+-,z2,+- -0.909433,0.12,0.0315902,0.12,-0.903906,0.12 -1.02174,0.12,-0.353777,0.12,-1.19692,0.12 -1.00062,0.12,-0.0970991,0.12,-0.813362,0.12 -1.02655,0.12,-0.262343,0.12,-0.924805,0.12 -0.941188,0.12,-0.30539,0.12,-0.910257,0.12 -0.722192,0.12,-0.552945,0.12,-1.07446,0.12 -0.841842,0.12,-0.675634,0.12,-0.947185,0.12 -1.02391,0.12,-0.412016,0.12,-0.774787,0.12 -0.781499,0.12,-0.586711,0.12,-0.821311,0.12 -1.06088,0.12,-0.862899,0.12,-0.778453,0.12 -0.955733,0.12,-0.753154,0.12,-0.433627,0.12 -0.770117,0.12,-0.644526,0.12,-0.572019,0.12 -0.792273,0.12,-0.783844,0.12,-0.304108,0.12 -0.707307,0.12,-1.08669,0.12,-0.264245,0.12 -1.02189,0.12,-1.09713,0.12,-0.256242,0.12 -0.826438,0.12,-0.851456,0.12,-0.388577,0.12 -0.797927,0.12,-1.12783,0.12,0.100356,0.12 -0.858826,0.12,-0.979046,0.12,0.0889569,0.12 -0.898634,0.12,-0.792193,0.12,0.124879,0.12 -0.816441,0.12,-0.846331,0.12,-0.0593931,0.12 -0.809099,0.12,-0.834076,0.12,0.496743,0.12 -0.800937,0.12,-0.731285,0.12,0.476956,0.12 -0.95197,0.12,-0.818777,0.12,0.324861,0.12 -0.869312,0.12,-0.954588,0.12,0.565774,0.12 -0.736553,0.12,-0.953897,0.12,0.563197,0.12 -0.61914,0.12,-0.878201,0.12,0.776169,0.12 -0.946974,0.12,-0.512856,0.12,0.683642,0.12 -0.401227,0.12,-0.817905,0.12,0.663558,0.12 -0.607159,0.12,-0.431801,0.12,0.88856,0.12 -0.805828,0.12,-0.314896,0.12,1.01398,0.12 -0.484839,0.12,-0.298945,0.12,1.0122,0.12 -0.74084,0.12,-0.226083,0.12,1.09693,0.12 -0.807101,0.12,-0.165952,0.12,0.890793,0.12 -0.606136,0.12,0.0298083,0.12,1.04259,0.12 -0.667672,0.12,0.0331487,0.12,0.989486,0.12 -0.422148,0.12,0.304617,0.12,1.18486,0.12 -0.616629,0.12,0.0353205,0.12,0.862585,0.12 -0.743659,0.12,0.354096,0.12,1.04591,0.12 -0.485373,0.12,0.293625,0.12,0.825761,0.12 -0.774981,0.12,0.512691,0.12,0.856395,0.12 -0.538268,0.12,0.577049,0.12,0.933722,0.12 -0.810363,0.12,0.671042,0.12,0.629714,0.12 -0.50799,0.12,0.804967,0.12,0.762703,0.12 -0.549628,0.12,0.681533,0.12,0.670826,0.12 -0.514677,0.12,0.892494,0.12,0.372186,0.12 -0.535385,0.12,0.823993,0.12,0.476258,0.12 -0.554932,0.12,1.19799,0.12,0.523284,0.12 -0.601393,0.12,0.914906,0.12,0.263413,0.12 -0.319574,0.12,1.14588,0.12,0.113498,0.12 -0.383485,0.12,1.09979,0.12,0.381014,0.12 -0.467609,0.12,1.20223,0.12,0.13246,0.12 -0.497159,0.12,1.14303,0.12,-0.266137,0.12 -0.417588,0.12,1.00126,0.12,-0.317858,0.12 -0.559819,0.12,0.942225,0.12,-0.323795,0.12 -0.455969,0.12,0.993591,0.12,-0.466727,0.12 -0.331825,0.12,0.85609,0.12,-0.476818,0.12 -0.605026,0.12,0.75244,0.12,-0.460587,0.12 -0.455763,0.12,0.517601,0.12,-0.622688,0.12 -0.266917,0.12,0.672474,0.12,-0.563305,0.12 -0.69255,0.12,0.656359,0.12,-0.759959,0.12 -0.383587,0.12,0.666651,0.12,-0.84831,0.12 -0.4974,0.12,0.414115,0.12,-0.87658,0.12 -0.438031,0.12,0.396581,0.12,-0.98335,0.12 -0.338508,0.12,0.349877,0.12,-1.13561,0.12 -0.303525,0.12,0.163641,0.12,-0.862986,0.12 -0.406519,0.12,0.00329844,0.12,-0.802275,0.12 -0.326492,0.12,0.0736938,0.12,-1.00748,0.12 -0.347072,0.12,-0.00371628,0.12,-1.06831,0.12 -0.349673,0.12,0.0619909,0.12,-0.906562,0.12 -0.213545,0.12,-0.404877,0.12,-0.942114,0.12 -0.362784,0.12,-0.325917,0.12,-1.10029,0.12 -0.268399,0.12,-0.459882,0.12,-0.756055,0.12 -0.157159,0.12,-0.393835,0.12,-0.755544,0.12 -0.242887,0.12,-0.35005,0.12,-0.812651,0.12 -0.228671,0.12,-0.785302,0.12,-0.992836,0.12 -0.34414,0.12,-0.831177,0.12,-0.731814,0.12 0.0190399,0.12,-0.488212,0.12,-0.646227,0.12 -0.240007,0.12,-0.781336,0.12,-0.571424,0.12 -0.295698,0.12,-0.835257,0.12,-0.299837,0.12 0.0644919,0.12,-0.867674,0.12,-0.318956,0.12 -0.184019,0.12,-0.55664,0.12,-0.191202,0.12 -0.157936,0.12,-1.23523,0.12,-0.133067,0.12 -0.186898,0.12,-1.10548,0.12,-0.0179614,0.12 -0.179417,0.12,-1.02249,0.12,0.0126941,0.12 -0.0919219,0.12,-1.01522,0.12,0.0981146,0.12 -0.126226,0.12,-1.0423,0.12,0.101528,0.12 -0.293389,0.12,-0.835823,0.12,0.413815,0.12 0.0274906,0.12,-1.14584,0.12,0.304577,0.12 -0.198418,0.12,-1.17145,0.12,0.190972,0.12 -0.0884789,0.12,-0.932755,0.12,0.554711,0.12 -0.119623,0.12,-0.670497,0.12,0.679786,0.12 0.0214691,0.12,-0.834235,0.12,1.00152,0.12 -0.0545558,0.12,-0.586859,0.12,0.83154,0.12 -0.0425319,0.12,-0.482485,0.12,0.837654,0.12 0.0501673,0.12,-0.474153,0.12,1.16327,0.12 -0.0371996,0.12,-0.437858,0.12,0.944959,0.12 -0.0806935,0.12,-0.239838,0.12,0.855627,0.12 0.0340828,0.12,-0.240755,0.12,0.716904,0.12 -0.0452169,0.12,-0.132548,0.12,1.03281,0.12 -0.148071,0.12,0.0120849,0.12,1.16381,0.12 -0.0389847,0.12,0.0681241,0.12,1.26687,0.12 0.121726,0.12,0.0537357,0.12,0.888257,0.12 -0.203619,0.12,0.0929462,0.12,1.09402,0.12 -0.0867267,0.12,0.353926,0.12,0.994826,0.12 -0.0954137,0.12,0.306779,0.12,0.79981,0.12 0.278323,0.12,0.444491,0.12,0.905732,0.12 0.121056,0.12,0.577553,0.12,0.772352,0.12 0.217986,0.12,0.796494,0.12,0.939422,0.12 0.0707047,0.12,0.682515,0.12,0.72654,0.12 -0.0620369,0.12,0.523099,0.12,0.7082,0.12 0.238426,0.12,0.916179,0.12,0.432197,0.12 0.0942485,0.12,0.725326,0.12,0.515722,0.12 0.0367275,0.12,0.735607,0.12,0.566553,0.12 0.080833,0.12,0.900549,0.12,0.335532,0.12 0.10791,0.12,1.14166,0.12,0.32115,0.12 -0.00788657,0.12,1.01512,0.12,0.205514,0.12 0.150996,0.12,1.05579,0.12,0.160197,0.12 0.0933259,0.12,1.08882,0.12,-0.0819938,0.12 0.113346,0.12,0.997723,0.12,-0.260992,0.12 0.110619,0.12,0.879612,0.12,-0.349086,0.12 -0.0285561,0.12,0.879759,0.12,-0.183554,0.12 0.27938,0.12,1.00333,0.12,-0.381088,0.12 0.191022,0.12,1.0616,0.12,-0.531538,0.12 0.222763,0.12,0.880421,0.12,-0.754832,0.12 0.277048,0.12,0.731521,0.12,-0.505799,0.12 0.0934472,0.12,0.691075,0.12,-0.643674,0.12 0.265658,0.12,0.776819,0.12,-0.74412,0.12 0.48943,0.12,0.600402,0.12,-0.743878,0.12 0.266897,0.12,0.385564,0.12,-0.843687,0.12 0.303707,0.12,0.315583,0.12,-1.02855,0.12 0.0557784,0.12,0.26672,0.12,-1.12425,0.12 0.104817,0.12,0.0400483,0.12,-0.848662,0.12 0.360804,0.12,0.108123,0.12,-0.921334,0.12 0.455307,0.12,0.0298592,0.12,-0.946568,0.12 0.42703,0.12,0.0200414,0.12,-1.03722,0.12 0.237848,0.12,-0.179663,0.12,-0.885243,0.12 0.392521,0.12,-0.214629,0.12,-0.886784,0.12 0.424621,0.12,-0.282102,0.12,-0.910781,0.12 0.611196,0.12,-0.392988,0.12,-0.913619,0.12 0.260208,0.12,-0.703657,0.12,-0.622614,0.12 0.515329,0.12,-0.399928,0.12,-0.916595,0.12 0.28828,0.12,-0.468288,0.12,-0.503043,0.12 0.257514,0.12,-0.849601,0.12,-0.625014,0.12 0.620679,0.12,-0.800703,0.12,-0.62661,0.12 0.466035,0.12,-0.93404,0.12,-0.4374,0.12 0.527338,0.12,-0.890756,0.12,-0.353238,0.12 0.544966,0.12,-0.857517,0.12,-0.332989,0.12 0.378141,0.12,-0.736067,0.12,-0.533991,0.12 0.428424,0.12,-0.884144,0.12,-0.197298,0.12 0.110217,0.12,-1.00464,0.12,-0.0866555,0.12 0.434442,0.12,-0.729898,0.12,0.116029,0.12 0.648675,0.12,-1.07678,0.12,0.209971,0.12 0.374052,0.12,-0.9521,0.12,0.142265,0.12 0.55359,0.12,-0.965407,0.12,0.196062,0.12 0.500903,0.12,-0.838496,0.12,0.418338,0.12 0.690844,0.12,-1.03884,0.12,0.412219,0.12 0.551628,0.12,-0.834547,0.12,0.384225,0.12 0.479766,0.12,-0.728044,0.12,0.536056,0.12 0.674573,0.12,-0.704811,0.12,0.419727,0.12 0.504478,0.12,-0.531857,0.12,0.652931,0.12 0.872651,0.12,-0.251798,0.12,0.984995,0.12 0.623061,0.12,-0.666736,0.12,1.05535,0.12 0.627543,0.12,-0.485675,0.12,0.856055,0.12 0.454172,0.12,-0.401031,0.12,0.990898,0.12 0.621622,0.12,-0.359296,0.12,0.960324,0.12 0.672034,0.12,-0.175103,0.12,0.872143,0.12 0.857018,0.12,0.0407851,0.12,1.12041,0.12 0.742963,0.12,-0.0661234,0.12,0.99442,0.12 0.524733,0.12,0.0790237,0.12,1.1086,0.12 0.787866,0.12,0.385977,0.12,0.838645,0.12 0.778592,0.12,0.191902,0.12,0.966563,0.12 0.672106,0.12,0.545131,0.12,0.87752,0.12 0.850459,0.12,0.129775,0.12,1.02391,0.12 0.692764,0.12,0.743761,0.12,0.955367,0.12 0.815139,0.12,0.755035,0.12,0.78155,0.12 0.648953,0.12,0.583786,0.12,0.690138,0.12 0.546609,0.12,0.932504,0.12,0.885873,0.12 0.774896,0.12,0.905985,0.12,0.622208,0.12 0.795659,0.12,0.881863,0.12,0.464759,0.12 0.61754,0.12,0.806446,0.12,0.269759,0.12 1.03304,0.12,0.841877,0.12,0.489934,0.12 0.772701,0.12,1.15167,0.12,0.173307,0.12 0.660746,0.12,0.901521,0.12,0.262564,0.12 0.75427,0.12,1.18296,0.12,0.127982,0.12 0.947714,0.12,0.862046,0.12,-0.160287,0.12 0.692311,0.12,0.885546,0.12,-0.260943,0.12 0.875724,0.12,1.04515,0.12,-0.263695,0.12 0.587173,0.12,0.892202,0.12,-0.219522,0.12 0.881374,0.12,0.941562,0.12,-0.236475,0.12 0.829785,0.12,0.853008,0.12,-0.491868,0.12 1.05705,0.12,0.810299,0.12,-0.779272,0.12 1.14172,0.12,0.676051,0.12,-0.581968,0.12 1.1589,0.12,0.967967,0.12,-0.782796,0.12 0.920005,0.12,0.48899,0.12,-0.574947,0.12 1.12172,0.12,0.396424,0.12,-0.987884,0.12 0.992874,0.12,0.478546,0.12,-0.731112,0.12 0.919789,0.12,0.471079,0.12,-1.15559,0.12 1.02775,0.12,0.15092,0.12,-0.883386,0.12 0.990849,0.12,-0.00944671,0.12,-0.986405,0.12 1.00028,0.12,0.0578259,0.12,-1.17544,0.12 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/3d_errors.vsz0000664000175000017500000000367714365252232015425 0ustar00jssjss# Veusz saved document (version 2.999) # Saved at 2018-06-07T17:02:45.719713 ImportFileCSV(u'3d_errors.csv', linked=True, numericlocale=u'en_GB') Set('height', u'12cm') Set('colorTheme', u'default-latest') Set('StyleSheet/axis-function/autoRange', u'next-tick') Set('StyleSheet/axis3d/TickLabels/size', u'10pt') Set('StyleSheet/axis3d/GridLines/color', u'#dcdcdc') Set('StyleSheet/axis3d/GridLines/hide', False) Add('page', name=u'page1', autoadd=False) To(u'page1') Add('scene3d', name=u'scene3d', autoadd=False) To(u'scene3d') Set('xRotation', -108.0) Set('yRotation', -34.0) Set('zRotation', 0.0) Add('graph3d', name=u'graph3d1', autoadd=False) To(u'graph3d1') Set('xSize', 1.5) Set('Back/color', u'#efefef') Set('Back/hide', False) Add('axis3d', name=u'x', autoadd=False) To(u'x') Set('label', u'\\emph{x}') Set('autoRange', u'+2%') To('..') Add('axis3d', name=u'y', autoadd=False) To(u'y') Set('label', u'sin 3\\pi\\emph{x}') Set('autoRange', u'next-tick') Set('direction', u'y') To('..') Add('axis3d', name=u'z', autoadd=False) To(u'z') Set('label', u'cos 3\\pi\\emph{x}') Set('direction', u'z') To('..') Add('point3d', name=u'redpts', autoadd=False) To(u'redpts') Set('markerSize', 8.0) Set('xData', u'x1') Set('yData', u'y1') Set('zData', u'z1') Set('Error/width', 2.0) To('..') Add('point3d', name=u'greenpts', autoadd=False) To(u'greenpts') Set('markerSize', 5.0) Set('xData', u'x2') Set('yData', u'y2') Set('zData', u'z2') Set('Error/width', 1.0) Set('Error/hide', False) To('..') Add('function3d', name=u'function', autoadd=False) To(u'function') Set('fnx', u'(t-0.5)*2') Set('fny', u'sin((t-0.5)*2*3*pi)') Set('fnz', u'cos((t-0.5)*2*3*pi)') Set('linesteps', 200) Set('Line/color', u'green') Set('Line/width', 10.0) Set('Line/reflectivity', 40.0) To('..') Add('function3d', name=u'axisline', autoadd=False) To(u'axisline') Set('fnx', u'2.2*(t-0.5)') Set('fny', u'0') Set('fnz', u'0') Set('Line/color', u'grey') Set('Line/width', 4.0) To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/3d_function.vsz0000664000175000017500000000203114365252232015715 0ustar00jssjss# Veusz saved document (version 3.0) # Saved at 2018-05-27T10:22:20.441558 Set('colorTheme', u'default-latest') Set('StyleSheet/axis-function/autoRange', u'next-tick') Add('page', name=u'page1', autoadd=False) To(u'page1') Add('scene3d', name=u'scene3d1', autoadd=False) To(u'scene3d1') Set('xRotation', -51.0) Set('yRotation', -20.0) Set('zRotation', 0.0) Add('graph3d', name=u'graph3d1', autoadd=False) To(u'graph3d1') Set('ySize', 0.5) Add('axis3d', name=u'x', autoadd=False) To(u'x') Set('label', u'X axis') Set('GridLines/hide', False) To('..') Add('axis3d', name=u'y', autoadd=False) To(u'y') Set('label', u'Y axis') Set('direction', u'y') Set('GridLines/hide', False) To('..') Add('axis3d', name=u'z', autoadd=False) To(u'z') Set('label', u'Z axis') Set('direction', u'z') Set('GridLines/hide', False) To('..') Add('function3d', name=u'function3d1', autoadd=False) To(u'function3d1') Set('mode', u'y=fn(x,z)') Set('fny', u'sin(2*pi*x)*sin(3*pi*z)') Set('surfacesteps', 40) Set('Surface/color', u'theme6') To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/3d_points.vsz0000664000175000017500000012247014365252232015416 0ustar00jssjss# Veusz saved document (version 2.99) # Saved at 2018-06-03T10:51:35.407722 AddImportPath(u'/home/jss/code/veusz/examples') ImportString(u'x(numeric)',''' 6.575945e-01 -4.597165e-01 -1.294541e+00 6.046494e-01 -1.542826e+00 -3.421373e-01 2.613059e+00 6.217758e-01 -5.709364e-01 -4.273195e-01 -3.705635e-01 -6.938285e-01 1.886360e-01 3.356537e-01 -8.721663e-01 3.262024e-01 8.843625e-01 -7.829539e-01 1.494213e+00 -1.472435e+00 1.394765e-01 5.483739e-01 -4.679755e-01 -1.493616e-01 -4.994069e-01 -9.298878e-01 -9.137490e-01 4.627606e-01 -1.092922e+00 -1.428952e+00 6.704154e-01 7.226900e-01 2.920627e+00 -5.469504e-02 -1.234474e-01 -1.827588e+00 -4.678403e-01 -2.104938e+00 1.447594e+00 -1.523884e+00 2.361838e-01 3.838988e-01 7.595115e-01 1.479267e-01 -2.283692e+00 -5.810091e-02 1.170725e+00 1.396499e+00 -5.571049e-01 4.147858e-01 2.961782e-01 -1.889235e-01 -2.145004e+00 1.003659e+00 1.724178e+00 1.120252e+00 1.016123e+00 -9.144657e-01 8.485133e-01 1.159397e+00 -2.090049e-01 -1.556244e-01 -1.741192e+00 -1.128013e+00 -1.680936e-02 -5.643035e-01 -3.418768e-01 -1.381331e+00 1.572115e-01 -5.324926e-01 -6.211649e-01 -6.427787e-01 -2.067742e+00 1.503553e-01 4.212680e-01 1.002436e+00 9.319358e-01 1.488413e+00 1.611216e+00 1.961401e-01 -1.960468e+00 -1.180701e+00 4.136037e-01 1.628905e+00 -3.425286e-01 -8.424676e-01 1.896311e-01 -2.951910e-01 -2.345707e-01 7.745899e-01 -5.985022e-01 -5.268234e-01 8.910938e-01 9.483483e-01 -1.485835e+00 -3.059546e-01 -6.529805e-01 1.241925e+00 -8.935098e-01 2.013549e+00 -5.429805e-01 -7.380430e-01 -2.733409e-01 -1.623544e-01 -1.831957e+00 3.826615e-01 -3.291744e-01 6.616031e-01 1.935669e-01 5.167964e-01 -1.162472e+00 4.861778e-01 6.349518e-01 -1.531453e+00 4.228641e-01 -5.552344e-01 -6.534992e-01 1.133047e-01 -7.680106e-01 -6.059610e-01 -6.632049e-01 -9.432127e-02 6.371894e-02 -8.184750e-01 -4.357186e-01 5.305605e-01 -3.734920e-01 -4.181240e-01 -1.532215e+00 -2.079682e+00 9.794448e-01 -1.564106e-01 -8.107372e-01 1.300245e+00 9.623794e-02 -9.838281e-02 -1.137283e+00 7.555458e-01 -1.144728e+00 6.750858e-01 4.795718e-01 -2.764706e-01 -1.267393e+00 -6.154198e-01 1.633117e-01 -2.817693e+00 -5.658915e-01 1.011051e+00 -4.370464e-01 -1.188365e-01 2.575782e-01 -7.056303e-01 -1.068010e+00 4.032612e-01 -7.153901e-01 -1.179347e-01 9.350778e-01 -1.999376e-01 3.372098e-01 -9.558382e-02 -1.279142e+00 -7.675026e-01 5.983604e-01 2.474651e-01 1.283235e+00 -9.074506e-01 2.597134e-01 -1.632636e+00 5.169415e-02 -1.606035e+00 -1.192602e+00 5.146239e-01 -5.556324e-01 -8.466126e-02 1.301321e+00 -8.783866e-01 8.062031e-01 -8.171129e-01 -4.724771e-01 6.760570e-01 1.511368e+00 -1.231819e+00 6.993175e-01 -9.808857e-01 2.299139e-01 -2.304337e+00 5.872667e-01 -8.249454e-01 -1.208952e+00 -1.787110e+00 -1.545373e+00 5.693720e-02 4.141107e-01 1.428096e+00 2.207367e-01 -5.586436e-01 -8.101057e-01 -3.000182e-01 1.360002e-01 -1.187395e+00 -4.147265e-01 -3.548813e-01 -9.105162e-01 8.440424e-01 4.427881e-01 1.087030e-01 -1.247606e+00 -2.388772e-01 2.824777e+00 -4.144348e-01 -3.685747e-01 -1.934565e-01 -5.280971e-01 5.459984e-01 -3.684189e-01 1.827164e+00 5.313002e-01 -1.911488e-01 -3.478762e-01 1.881151e+00 -9.231239e-02 6.301862e-01 -1.223395e-01 3.502475e-01 7.351573e-01 -2.110288e+00 1.084455e+00 -5.102715e-01 3.541769e-01 1.640319e+00 9.571136e-01 6.688606e-03 1.502540e-01 -1.353644e-01 -1.076577e+00 1.377542e-01 -7.415674e-01 4.831345e-01 -1.822664e+00 -3.267646e-01 -6.142384e-01 -1.485771e+00 -9.968889e-01 -6.338091e-01 8.110989e-01 1.091243e+00 1.031676e+00 6.449091e-01 -1.499401e+00 5.577764e-01 -6.767706e-01 9.673607e-01 -9.198047e-01 -1.451543e+00 2.679038e-01 -4.431318e-01 2.973232e-01 -5.374791e-02 1.733204e-01 -8.192104e-01 -6.794176e-01 8.508852e-01 1.063347e+00 -1.786298e+00 -9.144968e-01 1.970740e-01 5.041221e-01 7.165846e-01 1.026105e+00 5.896582e-01 -1.265926e+00 -4.087630e-01 -8.948241e-01 3.512503e-01 -1.038324e+00 -5.956805e-01 -2.536114e+00 -1.771895e+00 1.683401e+00 -1.159233e-01 1.773992e+00 5.772451e-01 4.930165e-01 -1.349837e+00 -2.741179e-01 1.949583e+00 1.350020e+00 -2.500606e-01 8.029942e-01 -1.458258e-01 6.535212e-01 -6.592328e-01 -1.720582e+00 9.176958e-01 1.361313e+00 1.991351e+00 -1.309955e+00 -1.249655e+00 -1.503138e+00 4.991277e-01 -1.376587e+00 1.400103e+00 -4.608737e-01 1.553510e+00 8.417668e-01 3.342957e-01 9.638643e-01 -1.296579e+00 1.584869e-02 9.270067e-01 -1.088615e+00 2.354753e-01 2.091593e+00 4.294130e-01 6.816036e-01 1.211737e+00 6.725487e-01 1.625473e+00 2.720051e-01 -7.019385e-01 -1.403672e+00 5.889905e-01 2.299162e-01 -1.307476e+00 -1.453698e+00 4.215200e-01 2.710028e-01 -1.168193e+00 2.128908e-01 3.514228e-01 1.097068e+00 -8.832506e-01 -1.302681e+00 5.235724e-01 4.299795e-01 -9.025606e-01 1.060824e+00 -7.277160e-01 -6.846875e-01 -4.698416e-01 -2.854868e-01 -1.073637e+00 1.593418e-01 -8.198313e-01 -9.414586e-01 4.649506e-01 1.145734e+00 5.660846e-01 -5.430044e-01 1.052291e+00 1.118337e+00 -1.427335e+00 6.679527e-01 8.030293e-01 2.230485e-01 5.702001e-01 -1.662920e+00 -6.068394e-01 -1.797897e+00 2.319649e+00 -9.496267e-01 -3.275762e-01 1.078122e+00 -4.700142e-01 -7.403032e-01 -1.733204e+00 -5.484752e-01 -3.894122e-01 1.308303e+00 9.878048e-01 -9.314316e-01 2.464047e-01 -1.836936e+00 -2.132210e-01 4.679691e-02 -7.145880e-01 1.409683e+00 1.065991e+00 -8.897803e-01 -1.895685e+00 -1.115425e+00 -1.220561e+00 -7.670861e-01 -5.082983e-01 -2.843515e-01 -1.817493e-01 5.607535e-02 1.080978e-01 2.921833e-01 -9.935305e-02 5.958283e-02 -2.430395e+00 -4.595276e-01 1.141080e+00 1.213483e+00 4.475026e-01 1.472489e-01 -1.131198e+00 -2.209366e+00 8.553038e-01 2.214906e-01 -1.468653e+00 -1.513175e-01 4.331195e-01 -7.296202e-02 -1.023579e+00 1.556930e+00 8.731691e-01 -1.977918e+00 -3.200059e-01 6.229458e-01 -2.967699e-02 5.539329e-01 -8.100015e-01 -3.150827e-01 8.080528e-01 -1.172249e+00 1.922353e-02 1.459456e+00 1.224271e+00 6.403237e-01 -2.932877e-01 -2.847627e-01 1.068048e-02 -6.161769e-01 2.415137e-01 2.202804e-01 1.087585e+00 -1.784008e+00 8.322558e-02 -7.339344e-01 -2.624561e-01 1.464645e+00 -1.162290e+00 -1.410460e+00 -4.095846e-01 -1.193438e+00 7.371463e-02 3.359293e-01 5.336460e-01 8.579012e-01 9.053431e-01 -5.406544e-01 6.622075e-01 1.668189e+00 4.042456e-01 9.598668e-02 -2.054503e-02 -5.388980e-01 1.053801e+00 3.770962e-01 -1.521012e+00 7.800601e-01 8.273950e-01 1.672286e-01 -5.972263e-01 2.277154e-02 -2.126093e-01 -1.171955e+00 4.221391e-02 -7.768830e-01 -4.823665e-01 6.399463e-01 -7.477009e-01 -2.382514e-01 -4.108919e-01 8.648755e-01 -3.926469e-01 9.939130e-01 -1.727891e+00 9.252085e-01 2.232149e-01 4.464207e-01 -3.929183e-01 -1.022040e+00 -4.442969e-01 -9.667512e-01 -1.943685e-01 4.243596e-02 1.898147e+00 3.700324e-01 -9.915933e-01 -9.664601e-01 7.837597e-01 1.572864e+00 1.172413e+00 1.987776e+00 1.455706e+00 -1.954383e-01 3.792386e-01 3.359054e-01 6.918419e-01 -5.821810e-01 -1.153517e-01 -8.528201e-01 -9.943133e-01 -9.749337e-01 -7.081749e-02 2.157507e-01 2.748330e-01 6.118113e-01 -1.129072e+00 1.086344e+00 3.349272e-01 -2.993181e-01 1.594021e+00 3.126491e-01 7.714834e-02 6.644557e-01 -1.333031e-01 -2.798737e-01 8.913666e-03 -6.720548e-01 7.015418e-02 -1.719491e+00 -4.831361e-01 9.808272e-01 -1.548688e+00 1.505073e+00 1.326813e+00 5.544685e-01 7.674057e-01 -1.796936e-01 1.219698e-01 -5.725746e-02 -3.251488e-01 -6.866173e-01 -7.829653e-01 9.025977e-01 1.367934e-01 5.744103e-01 3.187247e-02 8.858256e-01 6.072003e-01 -1.073681e+00 9.383712e-01 3.376787e-01 -1.130181e+00 -4.136191e-01 5.442963e-01 -1.536490e+00 1.359972e-01 -4.364696e-01 2.024946e-01 -1.026101e+00 -1.300867e+00 9.985169e-01 -1.199269e+00 9.747430e-01 -1.387852e+00 -8.322361e-01 -1.870326e-01 1.070328e-01 -6.794822e-01 1.495956e-01 -2.322286e+00 3.773476e-01 1.386413e-01 -4.907990e-01 3.988202e-01 -2.893963e-01 -2.014782e+00 4.747069e-01 -6.271057e-01 1.352911e+00 -1.331574e-01 5.297801e-01 -9.333435e-01 1.045870e+00 -2.063103e-01 1.590666e+00 1.253344e+00 1.082861e+00 8.184424e-02 -3.422746e-01 1.411141e-01 2.214340e-01 1.971397e+00 9.284486e-01 -3.794990e-01 -1.697609e+00 -1.542876e-01 6.038788e-02 1.119731e-01 -1.342292e+00 6.167371e-01 -2.909344e-01 2.907736e-01 -2.176797e+00 -9.045213e-01 -3.477301e-01 8.765699e-01 1.556017e-01 2.819929e-01 -2.632806e+00 -8.653749e-01 -6.810726e-01 4.914074e-02 3.701784e-01 6.820778e-01 1.416828e+00 -2.437820e-01 5.850421e-01 -6.056892e-01 -5.769027e-01 7.731703e-01 -2.750924e-01 1.519029e-01 7.487665e-01 -9.524992e-01 9.006439e-01 4.869181e-01 4.875184e-01 5.749718e-01 -3.208374e-01 -7.736690e-01 3.676714e-01 -1.706511e-01 -8.774383e-01 5.466246e-01 -5.341475e-02 5.580740e-01 -7.605753e-01 -9.633301e-01 -3.971460e-01 -2.052371e+00 -8.760304e-01 9.065972e-01 -8.839572e-01 1.277992e-02 6.543460e-01 -4.584419e-02 -1.394060e+00 -1.658369e-01 -1.504845e+00 3.317637e-01 2.782118e-01 -1.044088e+00 2.077313e-01 -2.216897e+00 -8.352427e-01 2.301431e-01 -9.593006e-01 1.636713e-01 4.682062e-01 6.151720e-02 8.953983e-02 6.831235e-01 -6.273403e-01 -1.647120e+00 -5.462123e-01 -1.895513e-01 -1.531171e+00 6.105233e-02 -3.882906e-01 -1.153499e+00 -2.847800e-01 -6.303580e-01 4.223693e-01 1.911396e+00 -1.601234e+00 -3.354251e-01 2.066401e+00 -1.059778e-01 -1.077062e+00 -1.678919e+00 3.025515e-02 -4.772348e-01 -5.363986e-01 2.972284e-01 6.684480e-01 5.052774e-01 -1.652544e-01 3.517295e-01 6.970493e-01 1.598840e-01 -2.547021e-01 7.865080e-01 -3.003841e-01 -5.172842e-01 -1.115236e+00 5.065615e-01 4.737269e-01 3.818390e-01 9.459315e-01 -1.323630e-01 -3.932525e-01 -9.084781e-01 1.282015e+00 7.667112e-01 9.281049e-01 -8.250696e-01 -3.271636e-01 -1.558873e+00 1.058722e+00 3.356877e-01 1.811349e+00 -1.234934e+00 -1.228348e+00 -1.093391e-01 6.125383e-01 -8.354238e-01 -7.390329e-01 4.630171e-01 4.458936e-01 -1.754351e+00 4.219322e-01 2.264223e+00 -1.105411e-01 1.425981e+00 2.244412e-01 1.900381e+00 -1.214930e+00 1.080752e+00 -1.337981e+00 1.056898e+00 1.099333e-01 -5.241048e-01 3.602661e-02 -7.649673e-01 1.958873e+00 1.941562e-01 1.197552e+00 -6.343648e-01 -3.382831e-01 -2.045386e+00 3.157945e-01 1.723993e+00 7.709652e-01 1.477289e+00 -9.910441e-01 5.315044e-01 -1.117195e-01 -8.840283e-01 -1.291101e+00 9.515637e-01 -7.834144e-01 -1.049730e+00 -6.238364e-01 7.201101e-02 -8.432643e-01 -5.352861e-01 2.114590e+00 1.000134e+00 2.029229e+00 1.302714e+00 4.575563e-01 1.000153e+00 3.980944e-02 -1.391373e+00 1.969100e+00 -8.664561e-01 1.215493e+00 9.503796e-01 8.556876e-01 -5.944360e-01 1.221865e+00 1.153391e+00 -1.070534e+00 -3.838239e-01 -2.792139e-01 -2.371496e+00 -1.125563e+00 -1.221992e+00 -5.713789e-01 -2.946280e-01 -4.317868e-01 3.049696e-01 -1.205854e+00 1.699346e-01 1.895042e+00 7.151819e-01 -1.121639e+00 4.237503e-01 -6.699489e-01 -2.197595e+00 1.029328e+00 -3.190738e-01 -1.320169e-01 8.963858e-01 -1.056699e+00 8.763092e-01 2.670012e-01 1.842868e-01 -5.067628e-02 1.679468e+00 -9.966635e-01 7.939771e-02 2.557930e-01 7.430268e-01 8.982660e-01 -8.284885e-01 -9.247194e-01 -4.975854e-01 -9.566421e-01 -3.928469e-01 -1.022061e+00 1.188656e+00 -6.267707e-01 2.976422e-01 1.824212e-01 -5.874295e-01 5.161827e-01 -7.793258e-01 -9.506438e-02 1.154648e-01 8.453825e-01 -7.378995e-01 1.199362e+00 -2.802611e-01 -1.428392e-01 3.124712e-01 -1.080440e+00 -6.550114e-01 -1.405661e+00 -7.452874e-02 -2.192632e-02 4.439580e-01 8.875571e-01 -7.867961e-01 2.233032e+00 9.082789e-02 6.887143e-02 -2.588297e-01 7.131068e-01 -1.571485e-01 -8.860935e-02 -1.105863e+00 -1.646700e-02 6.312749e-01 1.668317e+00 9.922411e-01 1.922205e-01 1.783587e+00 4.834640e-01 1.583260e+00 -1.823795e+00 3.555235e-01 -7.036149e-01 5.271822e-01 8.661789e-01 1.133166e-01 1.653892e+00 4.659449e-01 -5.937315e-01 -7.376169e-01 8.406163e-01 -5.022034e-01 7.451615e-01 -1.808010e-01 -7.003776e-01 -1.958248e-01 2.321085e-01 -7.430493e-01 -3.253167e-01 -1.203605e+00 -1.450469e+00 5.262856e-01 2.078431e-01 4.753250e-03 5.936968e-01 2.876322e-02 -9.874079e-01 -1.035870e+00 8.792489e-01 -6.808972e-01 -1.159200e+00 1.500860e+00 -1.380023e+00 1.570848e+00 -1.064337e+00 -1.205273e-01 -1.318482e+00 -6.110916e-01 -1.064924e+00 1.642567e+00 6.977881e-01 -2.226448e+00 1.006434e-01 -7.178818e-01 1.305210e+00 7.156374e-01 -4.976225e-01 -2.612897e-01 -2.024431e-01 8.144161e-01 -3.054805e-01 1.247295e+00 5.271582e-01 -2.637209e-01 1.114477e+00 2.163940e+00 7.072077e-01 -2.085300e-01 1.098515e+00 -6.654391e-01 -4.740257e-01 7.466231e-01 7.318385e-01 2.240750e-01 -4.229206e-01 1.922796e+00 -5.395348e-01 -2.809058e-01 -1.975230e+00 1.271656e+00 9.955049e-01 1.860179e+00 1.892061e-01 1.732155e+00 1.005167e-01 -1.484021e+00 1.920999e-01 -3.023095e-01 8.843114e-01 -1.006511e+00 -1.497801e-01 9.983697e-01 1.425861e+00 1.195617e+00 3.891273e-01 -5.191268e-01 2.329882e+00 2.491395e-01 -9.906358e-01 1.024922e+00 5.629539e-01 -2.725049e-01 -8.872036e-01 1.261194e+00 -6.390369e-01 1.049518e+00 9.597792e-01 3.160019e-01 5.184906e-01 4.561846e-02 -1.241051e+00 -8.811230e-01 -8.267438e-01 4.605573e-01 9.115633e-02 1.437520e-01 -4.257189e-01 6.370570e-01 -4.430406e-01 4.938789e-01 1.030215e+00 3.937871e-01 1.166418e-01 1.219745e+00 2.519173e+00 -1.007534e+00 7.487956e-02 -3.006207e-01 1.400654e+00 -4.173045e-01 2.332372e+00 -9.855278e-02 -2.204193e-01 -7.833379e-01 -5.930612e-01 6.203890e-01 6.918916e-01 -2.457826e-01 -2.239103e-01 -2.541524e-01 2.017348e-01 -1.114162e+00 8.782095e-02 1.280646e+00 -3.371414e-01 -7.590542e-01 1.162541e+00 -9.399703e-01 -8.202273e-01 9.670926e-02 -1.117342e+00 -8.433232e-01 1.703636e+00 -6.360844e-01 2.142734e-01 4.644740e-01 9.238880e-01 -1.224998e+00 1.081625e+00 1.569911e-01 -7.144891e-01 1.559839e+00 2.750588e+00 -1.581774e+00 1.287410e-01 1.433503e+00 -6.963654e-01 -8.255084e-01 -1.669735e+00 2.189557e-01 -3.294103e-01 -5.388540e-01 1.110638e+00 -3.469740e-01 ''') ImportString(u'y(numeric)',''' 3.932371e-01 -1.582959e+00 5.639805e-01 -4.209155e-01 -2.840821e-01 6.408206e-01 -7.390411e-01 3.825284e-01 -1.379400e+00 -1.711983e-01 -9.741243e-01 -7.781656e-01 -7.696066e-01 3.288936e-01 2.273921e-01 -1.679596e+00 -5.323418e-01 -1.234213e-01 -1.502803e-01 1.660829e-01 1.045394e+00 -4.277209e-01 -1.567734e-01 -8.733210e-01 -2.309812e-01 1.385935e+00 -1.367174e+00 1.962207e+00 -3.543044e-01 -9.408144e-01 -2.384841e-01 -5.962890e-01 -3.933873e-01 -3.591330e-01 2.983786e-01 -2.154394e+00 -4.237328e-01 1.799076e+00 -4.075952e-01 -2.527959e-01 1.484929e-01 -1.122012e+00 2.567494e-01 2.257781e+00 1.408580e+00 -1.838744e-01 -8.479936e-01 -8.813885e-01 8.217646e-01 1.382208e+00 9.125305e-01 1.449450e+00 3.368751e-01 -4.707423e-01 2.858057e-02 1.438892e+00 1.421494e+00 -1.247074e+00 3.060058e-01 -4.609234e-01 -1.653281e+00 1.163529e+00 -4.526101e-01 6.436300e-01 1.693627e-01 -9.034139e-01 -1.201051e+00 1.730370e+00 1.067229e+00 -5.098118e-01 -2.143111e+00 1.103707e+00 8.941059e-01 1.011513e+00 -6.433531e-01 -1.093247e+00 2.044315e-01 -4.466687e-02 -1.986216e+00 6.005112e-01 -3.595900e-01 3.122588e-01 8.733257e-01 -3.756510e-01 6.344985e-01 1.084911e-01 4.731764e-01 6.680183e-01 -6.914217e-02 4.185931e-01 -6.284703e-01 8.357489e-01 3.101189e-01 -1.147504e+00 4.209453e-01 2.695551e-01 2.411478e+00 6.122571e-01 -9.317608e-01 3.639432e-03 -9.294555e-01 2.811682e-01 -4.166895e-01 4.573156e-02 -5.474721e-02 -1.747724e+00 3.551489e-01 5.224617e-01 1.446118e+00 3.276609e-01 5.820254e-01 -5.322398e-02 2.055228e-01 1.801155e-01 -2.481681e-01 5.918132e-01 6.371853e-01 -1.024074e+00 4.422508e-01 -1.765453e+00 7.069166e-01 -5.264746e-02 -3.758746e-01 5.259605e-01 3.545584e-01 2.188309e-01 9.912918e-01 -1.013570e+00 -1.477655e+00 -5.033191e-01 3.486164e-01 -1.232589e+00 1.994362e+00 2.092551e-01 -5.625635e-02 -1.823023e+00 2.400668e-01 1.961823e-01 -7.217717e-01 7.581531e-01 -9.114739e-01 -1.574672e+00 1.871565e+00 1.284189e+00 7.478859e-01 -1.089580e+00 5.053718e-02 -4.249463e-02 -1.214802e+00 1.859115e+00 5.022301e-01 -3.924076e-01 -2.126089e-01 4.158613e-01 -1.045746e+00 -1.399560e+00 1.619683e+00 -1.997212e-01 -6.238194e-03 -4.513871e-01 -7.496450e-01 -1.152565e+00 8.236517e-02 -1.775334e+00 2.416004e-02 -1.848644e-01 1.869392e-01 4.852247e-01 4.632710e-02 -3.783947e-01 -1.227083e-01 5.313990e-01 -8.304557e-01 -1.008873e+00 1.074884e+00 -1.284199e+00 -6.146878e-01 6.438271e-01 -1.531116e-01 -5.930658e-02 2.429786e-01 -2.118694e+00 7.008306e-01 -6.406849e-02 1.158005e+00 2.228708e+00 9.916924e-02 1.194782e+00 1.821870e+00 -1.885672e-01 2.959221e-01 -6.931851e-01 -1.021772e+00 6.732243e-01 -9.865323e-01 4.900014e-01 2.691894e-01 -1.122846e+00 -2.574113e-01 -3.236723e-01 -4.315339e-02 1.349121e+00 5.061446e-01 -3.886879e-01 1.587633e+00 1.415048e+00 1.676257e+00 -4.297688e-01 8.510519e-02 -6.488549e-01 -1.439997e+00 1.349764e+00 6.135247e-01 -1.329405e-01 -4.191632e-02 1.060990e-02 -4.130632e-01 2.028254e+00 -3.499138e-01 -4.000574e-01 3.352219e-01 -1.050624e+00 -2.947831e-01 1.676320e-01 7.101210e-01 2.009047e-01 -1.850736e+00 1.079852e+00 5.902247e-04 4.389123e-02 -8.182755e-01 1.204594e+00 -1.503707e+00 -2.058583e+00 -2.339826e+00 -8.221993e-01 -6.796711e-01 -6.445563e-01 3.371314e-01 -1.587939e+00 2.960443e-01 7.720967e-01 -9.666331e-01 8.993444e-01 6.678222e-01 1.221794e+00 1.604052e+00 -9.272673e-02 -1.875841e-01 1.100507e-01 -1.546954e+00 4.947272e-01 2.205192e+00 -1.405555e-01 3.731822e-01 -6.788546e-01 -4.340164e-01 1.060992e+00 -5.465468e-01 6.412677e-01 -2.706933e-02 1.828302e+00 -7.294630e-01 9.823054e-01 2.365861e-01 1.916252e-01 -1.524339e+00 -5.292441e-01 7.555220e-01 -1.122103e+00 9.718868e-01 -4.893493e-02 3.735030e-01 -1.977115e-01 2.882180e-01 -9.586215e-01 -4.503156e-01 -7.516168e-02 4.809204e-01 1.346558e-01 5.781377e-02 -1.940264e+00 -3.115461e-02 5.027543e-01 -4.005917e-01 1.039220e+00 -7.702607e-01 9.440791e-01 -6.094218e-01 1.918193e-01 1.056156e+00 -1.141662e-01 1.290747e-01 -2.509332e-01 1.967084e-01 -4.832118e-01 -4.388375e-01 -1.304407e+00 2.297287e-01 4.549696e-01 7.767487e-01 4.552344e-01 3.697836e-02 1.873039e-01 -1.302834e-01 -1.117705e+00 -9.652155e-01 -1.307381e-01 -9.352506e-01 8.056285e-01 1.214269e+00 -8.566561e-01 1.057879e-01 -4.398890e-01 5.096065e-01 -6.513120e-02 -1.037480e+00 1.068292e+00 -3.507502e-01 6.291006e-02 -3.001781e-01 5.281380e-01 -1.494001e-02 -5.740658e-01 2.984556e+00 6.218464e-01 -1.376889e+00 1.061706e+00 -1.286104e+00 -1.699789e+00 1.261380e+00 -4.677932e-01 -3.622073e-01 6.836566e-02 1.254518e+00 4.904745e-01 8.300104e-01 -2.285958e+00 1.857965e+00 -3.774363e-01 -9.399611e-01 7.714613e-01 3.430392e-01 -5.007758e-01 4.299628e-01 -7.219747e-01 -1.090905e+00 -3.200828e-01 4.410291e-01 1.618375e+00 1.420907e+00 1.125899e+00 2.033106e+00 -6.093470e-01 -1.399675e+00 -1.339142e+00 -1.876168e+00 5.365142e-02 1.485535e-01 -2.005376e+00 5.609491e-01 -4.897901e-01 -1.227592e+00 1.371558e+00 1.101981e-01 4.678906e-02 7.791065e-01 -9.781870e-02 -2.032345e+00 -3.758659e-01 -2.528873e+00 2.183229e+00 -5.313727e-01 -7.634927e-01 2.440659e-01 3.913867e-01 -2.015077e-01 -1.095292e+00 4.028327e-01 1.026561e+00 3.919004e-01 5.357946e-01 -1.588330e+00 1.169936e+00 2.179398e-01 1.364682e-01 -2.934466e-01 6.934988e-01 -1.648580e+00 1.425994e-01 5.505594e-01 2.414212e-01 -3.012310e-01 6.218957e-01 5.355172e-01 7.627946e-01 -2.527079e-01 -6.135520e-01 3.643912e-02 -1.064595e+00 -4.111659e-01 -1.775738e+00 -9.660140e-01 -4.868182e-01 -1.303937e+00 6.234303e-01 -1.242822e+00 1.590462e+00 -3.265493e-01 -2.476236e-01 9.256326e-01 -7.610898e-02 -2.000399e+00 -5.115644e-01 1.145176e+00 -7.545145e-01 -9.218792e-01 1.415490e+00 4.481356e-01 -9.620362e-01 -6.145877e-02 -1.011754e+00 2.154308e-01 -1.402027e-01 9.464294e-01 -1.036070e+00 4.722462e-01 -5.807692e-01 1.698257e-01 -7.244112e-01 -1.473803e+00 -3.641428e-01 -6.069139e-01 -9.956652e-01 -2.951348e-01 2.235166e+00 -8.322240e-01 6.849967e-01 8.756941e-01 4.042897e-01 -5.393525e-01 8.209435e-01 4.977953e-01 1.666981e+00 7.478246e-01 -2.945763e-02 -1.029361e-01 2.359407e-01 5.865684e-02 -1.781956e+00 2.178313e-01 -2.385683e+00 -3.531961e-01 2.058910e+00 7.891987e-01 1.042087e+00 -3.175582e-01 -1.377191e+00 -8.909847e-01 3.561236e-01 8.656861e-01 -1.954663e-01 -3.661821e-01 -1.375294e-01 -2.403522e+00 -1.986324e-01 5.819100e-01 -7.373902e-01 -4.499149e-01 8.719289e-01 1.298706e+00 -3.182287e+00 -5.742752e-01 -9.083678e-01 -2.217010e-01 -2.537349e-01 1.294201e+00 -4.326940e-01 4.552136e-01 6.538497e-01 1.345794e+00 3.525184e-01 5.390328e-01 -5.594728e-01 -4.996157e-01 6.317604e-01 -2.354051e-01 1.031342e+00 1.975591e+00 1.846348e-01 1.160285e+00 -5.172219e-01 -1.888788e-01 4.076943e-01 5.390197e-02 2.173531e-01 1.987465e+00 -4.666512e-01 4.483548e-01 -8.045693e-01 -8.486981e-01 6.491545e-01 4.648544e-01 -5.018078e-01 -5.364009e-01 5.144620e-01 3.737562e-01 1.890108e+00 2.030449e+00 -1.560410e-01 1.644853e+00 -3.340909e-02 6.389421e-01 2.426280e+00 -1.111343e+00 -4.457454e-01 1.329075e+00 7.346571e-01 -7.188043e-01 1.160373e+00 -1.817547e-01 -2.780691e-01 3.192265e-02 -5.137647e-01 1.395590e+00 1.945559e+00 2.001905e+00 1.147559e+00 1.140161e+00 -2.293118e+00 6.007260e-01 -4.833672e-01 8.251780e-01 1.535413e+00 -1.487085e+00 -1.454428e+00 -3.722988e-01 2.246815e+00 -2.054728e+00 -1.001841e+00 7.640610e-01 2.903577e-01 7.666735e-01 5.869354e-01 7.751743e-01 -1.005991e+00 -1.352267e+00 -1.058788e+00 -2.300255e-01 -2.637628e-01 -1.062565e+00 1.744088e+00 -1.407350e-01 -3.484135e-01 1.606894e+00 -1.092350e+00 6.723452e-01 2.141113e-01 1.434764e+00 1.351444e+00 -1.666509e+00 -7.641075e-01 -6.471014e-01 -1.332456e+00 3.682715e-01 -3.079205e-01 -1.595911e+00 6.692573e-01 -1.998867e-01 6.396873e-01 -1.598305e+00 -1.341974e-01 -2.101893e-01 7.197350e-02 -5.952265e-01 1.341946e+00 -5.678863e-01 -8.720932e-01 -8.484702e-01 -1.021891e+00 -5.272400e-02 1.480465e-01 1.414474e+00 1.548843e+00 -1.239546e+00 -1.587811e+00 -1.271240e+00 2.562468e-01 7.243228e-01 1.324251e+00 -7.628859e-01 1.739111e+00 -1.274184e+00 9.364039e-03 1.207429e-01 7.950231e-01 2.841331e-01 4.656906e-01 -1.901329e-01 -7.923896e-01 -9.420709e-01 -2.790712e-01 -5.807472e-01 2.080056e-01 -1.672686e+00 -2.257231e-01 1.172839e-01 -1.939220e-01 -2.661242e-01 -1.322225e+00 1.185829e+00 1.417243e+00 1.512327e+00 1.052523e-01 2.380308e+00 -1.208700e+00 4.562890e-01 -1.299606e+00 4.054185e-01 -9.863968e-01 3.568976e-01 3.572235e-02 1.699743e+00 1.090761e+00 -1.682176e-01 -7.771571e-01 -3.125552e-01 -1.170066e-01 -1.677533e-01 1.687242e+00 1.703563e+00 3.849954e-01 -9.055027e-01 -5.173879e-01 -2.038771e-01 -3.587446e-01 1.631174e+00 -1.646487e+00 1.854425e+00 -6.639214e-01 1.556347e+00 4.650627e-01 -2.463398e-01 -4.494595e-01 -7.579675e-01 1.424824e-01 2.812915e-01 5.264050e-01 -3.686507e-01 -7.841638e-01 -1.934529e-01 -1.919301e-01 8.572278e-01 5.314435e-02 3.691078e-01 5.639160e-01 1.023537e+00 9.984448e-01 1.450397e+00 -9.567811e-01 8.457202e-01 -3.622481e-01 9.941448e-01 -5.705442e-01 -1.228013e+00 -2.234976e-01 -1.640725e-01 1.034762e+00 1.250345e+00 -9.049104e-01 1.912883e+00 1.208996e+00 9.532647e-01 -9.318555e-01 -1.195537e-01 3.094413e-01 -7.219911e-01 1.396230e+00 1.842543e+00 -7.802086e-01 -9.981788e-02 -1.067894e+00 -1.689682e+00 1.086151e+00 5.733487e-01 -1.414983e-01 3.612763e-01 -8.163656e-01 4.004171e-01 1.125378e+00 5.088157e-01 -4.116386e-01 -1.060203e+00 4.838729e-01 1.142800e-01 5.314439e-01 7.727579e-02 3.061978e-01 9.567301e-01 9.829676e-01 1.545265e-01 9.348914e-01 -1.000633e+00 -1.490523e+00 -9.539526e-01 2.046905e+00 -1.110688e+00 1.147324e+00 1.485592e-01 -7.582957e-01 -1.302014e+00 1.090494e-01 3.244139e-01 -2.363166e-01 -5.279968e-01 -6.718101e-01 -1.594947e+00 4.522281e-01 -2.417138e-01 1.472195e+00 -2.208723e+00 3.637797e-01 -1.320206e+00 -4.895941e-01 4.612642e-02 2.495521e-01 2.224073e+00 4.501034e-01 4.568064e-01 5.603486e-01 6.759001e-01 -5.655860e-01 4.352051e-01 1.602611e-01 -4.877645e-01 1.428139e+00 8.369197e-01 -2.577961e-01 -1.160335e+00 1.785797e+00 -1.662134e+00 -1.363248e+00 6.123524e-01 1.036716e+00 -2.738276e-01 -7.910977e-01 -3.348705e-03 -1.848675e-01 -6.722455e-01 -7.117441e-01 1.389100e+00 -4.541758e-02 -5.854265e-01 -7.252556e-01 7.001459e-01 -9.019571e-01 -8.873456e-02 -1.075132e+00 2.243137e+00 1.664306e+00 -1.931127e+00 -1.948877e+00 6.779943e-02 2.910524e-01 1.525550e+00 1.508687e+00 -9.066085e-01 -2.172251e-01 4.967755e-01 -6.154131e-01 -2.575240e-01 -1.070978e-01 2.840445e-02 -4.196119e-01 1.393602e-01 7.170359e-01 -5.250783e-01 6.302569e-01 -9.172322e-01 -5.114203e-01 4.369124e-02 9.394352e-01 -4.506192e-01 1.715684e+00 -6.914746e-01 1.789039e-01 8.307744e-01 -1.154395e+00 -1.520288e-01 1.009718e+00 -4.290862e-01 2.135492e-02 -4.668846e-02 1.743555e+00 -3.547423e-01 9.578598e-01 -1.353028e+00 -3.628132e-01 6.170067e-01 7.323501e-01 -1.060122e-01 2.491226e-01 8.753891e-02 -5.549667e-01 -9.168476e-01 1.088550e+00 2.333576e-01 5.015771e-01 -1.262313e+00 -1.315090e+00 7.726966e-02 -6.951779e-01 -1.139529e+00 -6.260286e-01 1.504778e+00 -2.642568e-01 -2.840521e-01 -9.846766e-01 1.901104e-01 -1.204189e+00 -4.966436e-01 -1.755672e+00 1.525483e+00 -1.006680e+00 -1.890595e+00 -1.200779e+00 -2.297278e+00 -2.838081e-01 -1.216795e+00 -1.326741e+00 -4.108279e-01 2.677426e-01 7.843040e-01 1.309823e-01 -1.534391e+00 -2.555160e+00 9.155972e-01 2.113447e-01 1.268114e+00 1.470958e+00 -4.702841e-01 -1.021876e+00 -9.366943e-01 -3.637923e-01 -1.498159e+00 1.761923e+00 4.501180e-01 1.372347e+00 8.374543e-01 6.882874e-01 4.252370e-02 -6.344340e-01 1.249382e+00 -7.924815e-01 2.471674e-01 -1.864870e-01 1.780994e-01 -5.795990e-01 -5.587400e-01 1.027417e+00 5.264932e-01 8.906055e-01 6.590811e-01 -9.883269e-01 -8.630445e-02 -9.324242e-01 1.787138e-01 1.028099e+00 -4.893161e-01 -4.065239e-01 -3.433250e-01 1.640376e+00 4.680883e-02 -1.623418e+00 -1.142504e+00 4.060014e-01 2.168760e+00 8.404647e-01 6.314116e-01 1.182431e+00 -5.353272e-01 -4.148524e-01 3.281316e-03 -2.789835e-01 -4.922670e-01 -9.302447e-01 1.060128e-01 5.129096e-01 -8.855251e-01 -1.141156e+00 6.887528e-01 6.549765e-01 -1.094914e-01 -1.486057e+00 7.081615e-01 1.312470e-01 3.594081e-01 -5.418875e-01 -1.200705e+00 -5.408218e-01 1.745847e-01 1.720798e-01 -1.847429e+00 -1.105646e+00 4.536132e-01 7.377695e-01 -3.811371e-01 -3.116868e+00 8.641893e-01 6.064553e-01 3.369040e-01 -1.178487e+00 6.368583e-01 -3.826430e-01 1.209088e+00 -1.449879e-01 2.219701e+00 4.911733e-01 6.506198e-01 -9.109766e-02 -1.618034e+00 -2.797424e-01 -1.610702e-01 -3.987549e-01 -4.945086e-01 6.102682e-01 1.248452e+00 -3.095489e-01 5.172187e-01 2.678557e-01 -1.658133e+00 6.342826e-01 1.632721e+00 1.185928e+00 -1.360191e-01 1.014570e+00 -7.034644e-01 3.718831e-02 -8.366071e-01 5.599224e-01 -2.637624e-01 1.140206e+00 8.534978e-01 1.297153e+00 1.135451e+00 -7.120764e-01 6.384592e-01 1.156055e+00 -2.100665e-02 -6.538522e-01 -1.530185e+00 3.109468e+00 5.859244e-01 -7.391558e-01 -3.628279e-01 6.243281e-01 -1.570161e+00 -5.720894e-01 -2.474385e-01 1.057523e+00 -1.790446e-01 3.685237e-01 4.103773e-01 7.946287e-01 3.567124e-01 -8.499539e-01 4.020882e-01 1.032976e+00 1.844131e+00 1.600370e+00 -1.100882e-01 4.288627e-03 -1.056849e+00 1.031846e+00 -2.259335e-01 -3.825079e-01 -1.194869e+00 -9.977636e-01 -4.862139e-01 -3.032945e-01 2.000288e+00 -9.066691e-01 -1.463193e+00 1.011585e-01 -1.852685e+00 -5.380555e-01 2.755147e-01 1.166210e+00 -5.430469e-01 7.706536e-01 9.594393e-01 -1.257793e+00 1.903705e-03 -8.890706e-01 1.878056e+00 -1.172014e+00 1.025801e+00 5.429561e-01 7.763084e-01 -1.564020e-02 ''') ImportString(u'z(numeric)',''' 2.585124e-01 -3.621594e-01 -3.362464e-01 1.369053e+00 -8.254266e-01 7.422251e-01 -1.954610e+00 3.650947e-02 -6.858271e-01 -1.243814e+00 -1.664889e+00 -7.977561e-01 3.466253e-01 -1.535422e+00 8.397635e-01 1.567881e+00 5.976959e-01 1.134070e-01 -8.929715e-01 6.816980e-01 2.639347e+00 -1.043619e+00 -3.587930e-01 1.002658e-01 -1.285316e+00 4.122554e-01 -3.858058e-01 1.705446e-02 2.220461e-01 -9.783683e-01 -8.124249e-01 -3.022652e-02 -1.073504e+00 -7.765433e-01 4.251885e-01 2.491647e+00 3.460916e-01 4.443503e-01 -1.426232e+00 -4.354762e-01 2.756633e-01 2.339466e+00 4.653072e-02 5.550512e-01 1.368076e+00 1.339571e+00 6.397211e-01 1.011712e+00 -3.222135e-01 -7.788511e-01 -7.933866e-01 -1.116588e-01 1.926416e+00 1.019082e+00 9.574673e-01 6.907565e-01 3.436105e-01 1.655001e-01 1.402880e+00 -3.581220e-01 1.964680e-01 -1.868636e-02 -4.817226e-01 1.699465e-01 1.536638e+00 -4.059367e-01 -1.273578e-01 -5.847269e-01 1.263602e-01 -6.890247e-01 -4.001757e-01 3.225069e-02 -8.063705e-01 1.789159e-02 -1.209436e+00 1.391639e+00 1.422019e-01 5.445035e-01 2.458286e-01 -6.708228e-01 1.564246e+00 1.212119e+00 3.248720e-01 -9.459534e-01 -6.910714e-02 4.664664e-01 -9.649608e-01 -1.335687e+00 1.379591e-01 -1.461925e+00 8.825221e-01 -1.009761e+00 5.406367e-01 3.860539e-01 -2.803823e-01 -1.538217e-01 -1.032766e+00 1.245947e+00 -2.023908e-01 -1.160539e+00 7.809575e-01 1.643777e+00 -1.075351e+00 5.529961e-01 -1.303024e+00 -8.234931e-01 -8.101609e-01 1.347241e+00 6.252987e-01 1.929561e+00 -5.669542e-01 1.173373e+00 6.093799e-01 1.610744e-01 -6.418367e-01 -1.329674e+00 1.511295e+00 1.511393e+00 1.044301e+00 -1.474085e+00 -3.155298e-01 -2.735621e-01 9.933588e-02 -1.062701e+00 -5.916408e-01 2.079336e+00 3.529638e-01 -3.467181e-01 5.234193e-01 6.428589e-01 5.780336e-01 -8.347922e-01 -1.420017e+00 -1.201656e+00 -9.300869e-01 -3.502185e-01 -6.800455e-01 -6.088768e-01 -8.848059e-01 -3.343537e-01 3.870007e-01 -5.430839e-01 -4.681815e-02 -5.416057e-01 -2.432865e-01 -6.379053e-02 -6.511470e-01 1.881969e+00 9.758933e-01 -4.940425e-01 -1.394886e+00 1.711576e+00 -1.470189e+00 -1.794204e-01 4.092419e-01 -4.134734e-01 -9.754690e-01 -3.749084e-01 -9.029411e-02 -5.032741e-01 2.474297e-01 -1.955919e-01 1.775407e-01 -2.411008e-01 -7.822606e-01 5.769579e-01 -1.721572e-01 1.215446e+00 2.052208e-01 -3.074519e-01 -7.706240e-02 1.519038e+00 8.807025e-01 -1.585167e-01 4.243187e-01 9.780747e-01 -1.396611e+00 1.044805e+00 1.790709e-01 -2.075171e+00 -5.381977e-01 -1.086812e+00 1.629580e+00 -3.523767e-01 -4.580308e-01 8.912587e-01 -9.622508e-01 1.434092e-01 -8.496362e-02 -8.812133e-01 -1.072952e+00 -1.405015e+00 6.310400e-01 9.739107e-01 1.444567e+00 8.062342e-01 -6.600388e-01 4.193512e-01 2.479962e-01 2.324284e-01 -9.444726e-01 -3.762773e-01 8.569956e-02 -1.328576e+00 4.218906e-01 3.844989e-01 -7.983798e-01 -2.374757e-01 -2.315260e-01 -1.054345e+00 1.530421e+00 1.675454e-01 7.579300e-01 1.028575e+00 2.957112e-01 -5.314750e-01 5.874530e-01 9.691618e-01 3.019277e-01 1.441539e+00 -4.772380e-01 4.815975e-01 1.225708e-01 -1.457261e+00 -1.330886e+00 -1.865746e+00 -1.176625e+00 -7.795251e-01 1.383677e-01 -9.573186e-02 -1.030020e+00 -1.380945e+00 -1.773086e+00 1.471225e+00 9.092974e-01 1.354386e+00 1.826739e+00 -2.672536e-01 1.971561e+00 -7.626420e-01 -1.712796e-02 1.736490e-01 -2.643906e+00 -1.373408e+00 -2.824308e-01 1.921421e+00 6.186645e-01 5.050497e-01 -2.030730e-02 6.818366e-01 1.676915e+00 3.223001e-01 8.564125e-01 -2.677544e-01 -4.576856e-01 9.263894e-01 9.787021e-02 -5.616808e-01 -1.151988e-01 6.198074e-01 5.914537e-01 2.882203e-01 1.180824e-01 -3.067208e-01 1.548442e+00 1.400205e+00 7.673310e-02 1.021416e+00 -8.931725e-01 9.449799e-01 1.814839e+00 -9.494349e-01 1.382910e+00 -3.403693e-01 -3.777397e-01 8.465820e-01 1.394869e+00 9.869167e-01 -6.394826e-01 -3.763791e-01 1.886511e+00 -6.097335e-01 -5.258733e-01 -1.869829e-01 7.796295e-01 1.237616e+00 1.105017e+00 -1.095073e-01 7.177697e-01 1.024888e+00 5.233369e-01 7.650879e-01 -1.314864e+00 -1.366366e+00 1.991361e-01 -1.486437e+00 -1.053310e+00 1.085244e+00 -2.633038e-01 -4.477647e-01 -7.207680e-01 1.157931e+00 -6.487558e-01 -5.811588e-01 -1.611772e+00 1.864208e-01 -1.374934e-01 -2.934687e-01 -2.897571e-02 3.090903e-01 4.741060e-01 1.798565e+00 9.970022e-03 -8.822807e-02 -8.295105e-01 1.684503e-01 9.444340e-01 -9.358998e-01 1.214353e-01 1.173810e+00 1.222968e+00 3.600859e-01 -6.619315e-01 -1.844572e-01 -1.110370e+00 -9.249619e-02 3.395120e-01 -1.147691e+00 -1.382644e+00 -4.532500e-01 -7.164101e-01 2.936572e-01 -1.294749e-03 2.140201e+00 -7.425970e-01 -1.768755e+00 -7.296999e-01 1.973653e+00 5.989070e-01 -1.018535e+00 -5.031009e-01 6.320869e-01 -1.869015e+00 -1.080869e+00 -4.701249e-01 -5.031075e-01 -2.517951e-01 -5.469718e-01 1.166882e-01 -9.249221e-01 -9.505002e-01 -4.953162e-01 -1.443558e-01 1.474803e+00 -4.755980e-01 -3.884190e-01 3.399306e-02 2.448301e-01 4.042991e-01 -1.156946e+00 6.987705e-01 7.367199e-01 2.957738e-01 -1.624863e+00 1.723718e+00 4.559619e-02 -1.058394e+00 6.939875e-01 3.584054e-01 8.200664e-01 6.660282e-01 1.373863e+00 1.273398e+00 -2.869770e-01 3.575857e-01 -1.200924e+00 1.310366e+00 -7.113495e-01 -1.127242e+00 6.702748e-01 -4.982955e-01 3.287422e-01 -5.264012e-01 7.939113e-01 -5.292562e-01 2.041380e+00 5.659068e-02 -1.009590e+00 4.180506e-01 1.901190e-01 2.298075e-01 -2.071087e+00 -9.253677e-01 -1.023254e+00 8.850496e-01 -6.594116e-01 -1.129760e+00 1.630084e+00 2.265119e-01 -6.369647e-01 8.613065e-01 -9.250974e-01 -4.932135e-01 8.038200e-01 3.140276e-01 1.579702e+00 -9.382626e-02 2.210291e-01 -5.109907e-01 7.594310e-01 7.166853e-01 -9.086427e-01 -1.319832e+00 -3.314390e-02 -6.135461e-01 -6.958078e-01 1.225159e+00 1.220069e+00 3.929668e-01 -1.089660e+00 -1.893285e-01 8.993739e-01 -4.547133e-01 1.432441e-01 -3.996126e-01 9.758001e-02 -2.609300e+00 1.526834e+00 -1.920914e-01 -4.568548e-01 -4.063453e-01 -6.642582e-01 1.290938e+00 -2.399058e-01 -4.148933e-01 -1.363557e+00 2.169188e-01 7.234683e-01 -8.023429e-01 1.383312e-02 -1.221103e+00 -3.188968e-01 2.125510e-01 -3.841998e-01 -4.760617e-01 -7.748145e-02 1.655260e+00 1.188678e+00 -1.195451e+00 -1.064790e+00 1.038166e+00 -6.610258e-01 -1.075910e-01 -1.517229e+00 7.830957e-01 1.411836e+00 1.042148e+00 3.655885e-01 7.889021e-01 1.693395e-01 -1.478764e+00 6.815500e-01 8.662115e-01 7.480363e-01 -4.007134e-01 3.223507e-02 -2.590076e-01 -3.369393e-01 4.203520e-01 -1.323461e+00 -7.465016e-01 2.070762e+00 -2.704397e-01 4.962808e-01 9.651119e-01 -2.327540e+00 -1.132920e-01 -9.753759e-01 -1.153462e+00 1.682578e+00 8.298706e-01 -2.080299e-01 -6.516481e-01 -1.675483e+00 4.724520e-01 9.309400e-01 -5.310677e-01 1.524590e+00 3.026503e-01 1.779514e-01 -1.041767e+00 -5.157362e-01 -7.482514e-01 -1.246505e+00 -5.028855e-01 -1.167130e+00 -6.720969e-01 5.256936e-01 -1.749783e+00 4.641571e-01 2.796533e-01 3.491008e-01 -5.368692e-02 -1.904010e-02 2.784772e-01 -1.219532e+00 -7.443262e-01 -2.141013e+00 -1.386493e+00 -1.544324e-01 -4.144796e-01 5.905382e-01 -1.553227e+00 -1.819778e-01 8.391287e-01 8.238390e-01 -1.384637e+00 -8.241725e-01 -1.547758e-01 1.022386e+00 -1.456228e+00 7.896890e-01 4.679365e-02 -8.585604e-01 -8.985668e-01 1.288854e+00 -6.959927e-01 -1.207789e+00 3.727052e-01 9.640116e-01 -1.169159e+00 2.443580e-01 9.193023e-01 1.125692e+00 3.601926e-01 8.638569e-01 7.420253e-01 1.522107e-01 -1.500816e-01 1.743427e+00 6.550054e-01 -1.274786e+00 2.165509e-01 6.926703e-01 3.811580e-01 8.346831e-01 -1.613869e+00 1.839921e+00 -1.206818e+00 2.285600e+00 1.161488e+00 1.512968e+00 1.402303e+00 -1.187602e+00 -7.206889e-01 4.083404e-01 7.036619e-02 1.314753e+00 8.573338e-01 -6.304310e-01 2.086854e+00 8.031530e-01 -2.438823e-02 -7.401340e-01 1.839287e+00 -1.833501e+00 8.010072e-01 -2.234436e+00 -8.760587e-01 1.182264e-02 6.857118e-01 -2.254950e-01 -2.122797e-02 1.143813e+00 -1.011296e+00 7.342104e-01 1.485392e+00 4.196308e-01 2.617035e-01 6.879227e-01 3.571768e-01 8.949981e-01 -5.077636e-01 5.817390e-01 1.141418e+00 -1.749510e+00 9.259647e-02 1.540473e+00 -1.070901e+00 1.812850e-01 -2.367091e+00 4.852527e-01 7.433367e-01 1.796000e+00 1.276029e+00 -2.704099e+00 1.918611e+00 3.633172e-01 2.813344e-01 9.409001e-02 -1.064923e+00 -1.025242e+00 -1.837653e+00 1.147092e+00 -4.098245e-01 6.274501e-02 1.964419e+00 -1.862331e+00 3.062052e-01 -1.083968e+00 -4.086014e-01 1.173068e+00 9.812741e-01 1.117599e+00 1.391336e+00 6.478516e-01 -2.425759e-01 -1.255619e-01 6.042870e-01 9.574196e-01 5.195939e-01 7.481490e-01 1.348330e+00 -4.233709e-01 -1.235270e+00 1.851136e+00 6.848952e-01 -1.415427e+00 4.030583e-01 -1.177983e+00 -2.010303e-02 -3.295340e-01 -5.013605e-01 -9.144780e-01 -3.620505e-01 2.279397e-01 1.072892e+00 -2.507584e-01 -7.001320e-01 -1.211265e+00 -8.339065e-01 8.775561e-01 -1.343211e+00 1.558305e+00 8.250233e-01 6.875088e-01 -8.088337e-01 1.016112e+00 -4.781918e-01 -1.213810e+00 -2.796827e-01 6.451446e-01 -8.197062e-01 -2.258683e+00 1.410402e-02 -6.073303e-01 -2.765476e-01 1.030058e+00 4.812041e-01 8.669035e-01 -2.505432e+00 3.843354e-01 7.003544e-01 4.843252e-01 1.803420e-01 2.320328e+00 -8.576429e-01 1.142924e+00 -6.189955e-01 2.468795e-01 1.097721e+00 1.021246e+00 1.087350e+00 -1.520356e+00 1.097720e+00 1.770987e+00 -9.881774e-01 -9.335670e-01 -3.127292e-01 5.497244e-01 -7.370000e-02 1.359025e+00 -6.639344e-01 -8.270750e-01 -2.396394e-01 6.504370e-01 -1.264599e+00 -2.257524e+00 3.775632e-02 5.357455e-01 -1.061849e+00 5.132836e-01 -3.293724e-01 3.506395e-01 -1.650590e+00 -9.250902e-01 1.187444e+00 -7.510623e-02 -4.541657e-01 1.445879e+00 -7.943625e-01 -7.799880e-01 -3.725501e-01 1.269383e+00 5.367141e-01 -1.424729e-01 8.851281e-01 1.238739e+00 -6.906163e-01 -5.425865e-02 -6.204112e-02 1.001858e+00 1.026721e+00 2.855558e-01 -1.201186e-01 4.362160e-01 2.741036e-01 9.045000e-01 -1.919551e+00 3.188357e-01 -9.750236e-01 -6.335045e-01 -4.095299e-01 5.746152e-01 -1.802580e-01 -6.780395e-01 1.619407e+00 8.616760e-01 -2.340705e-01 -1.039612e+00 -5.593649e-02 -1.038075e+00 1.436443e+00 -1.507875e+00 -5.871937e-01 8.877236e-01 -5.983720e-01 -8.186280e-01 -6.615903e-01 -3.065735e-01 -1.234406e+00 4.821829e-01 4.490892e-03 2.798574e-01 -1.453091e+00 -4.484982e-01 -1.370361e+00 -8.616174e-01 1.707642e+00 2.298833e-01 2.092646e-02 1.103821e-01 -7.741913e-01 -2.707327e-01 5.368884e-01 2.573979e+00 -9.198998e-01 6.187621e-01 -5.881747e-01 1.005345e+00 1.216202e+00 3.654672e-01 1.357809e-01 -5.004497e-01 7.177418e-01 -9.009589e-01 1.547596e+00 -5.621156e-01 -5.117527e-01 3.359931e-01 -9.190018e-01 3.158099e-01 -7.925663e-01 -1.568325e+00 -7.654562e-01 -2.228072e-01 -1.096124e+00 -8.111155e-02 1.473470e-01 -1.118364e+00 -1.008722e+00 -8.745870e-01 9.824594e-01 3.661195e-01 -6.078988e-01 -2.979247e-01 -1.507154e+00 -2.689349e-01 1.800347e-01 3.073099e+00 -1.243290e+00 1.618598e+00 -2.396721e-01 7.735937e-02 8.741934e-01 4.314956e-01 1.052271e-01 -9.134700e-01 4.182897e-01 1.575084e-01 6.834283e-01 2.726073e-01 -7.213277e-01 1.071223e+00 -3.069117e-01 1.042755e+00 -8.093882e-01 -4.134371e-01 -3.045434e-01 -9.411626e-01 2.357752e-01 -3.350466e-01 1.357284e+00 -1.082559e+00 -1.723317e-01 -3.496065e-01 1.271304e+00 -1.649923e+00 1.895695e+00 1.617635e+00 -1.972169e-01 1.005186e+00 5.726425e-01 -7.458940e-01 -1.088330e-01 -4.283947e-01 -4.207978e-02 1.259761e+00 1.461163e+00 -1.955475e+00 -7.899510e-01 -4.200169e-01 -5.587312e-01 -3.625693e-01 -8.631515e-01 6.028814e-02 5.027076e-01 1.213409e+00 1.244280e+00 7.022279e-01 4.106748e-01 1.770016e-01 -1.028317e+00 3.560821e-01 3.468450e-01 6.491817e-01 1.087497e+00 -2.406570e+00 -8.925762e-01 -6.164151e-02 -7.587522e-01 1.399356e+00 -3.025961e-02 3.653700e-02 7.175774e-01 2.729497e+00 2.252336e-01 -1.941696e+00 1.039888e+00 1.364227e+00 1.516146e+00 -6.986744e-01 -1.575327e+00 2.633241e-02 -1.689698e-01 -3.715600e-01 -1.805040e-01 2.608946e-01 -1.449035e+00 -6.926451e-01 1.412442e+00 -7.684670e-01 1.172246e+00 -2.908938e-01 -1.100874e+00 3.949832e-02 -9.552162e-01 1.736296e+00 5.145332e-01 1.399988e-01 -6.348142e-01 -1.519341e-02 -7.362714e-01 -1.069279e-01 1.978534e-01 -2.039806e+00 -9.949323e-01 1.157322e+00 1.155086e+00 1.312763e+00 7.542824e-01 -9.311008e-01 -4.313420e-01 -5.936274e-01 -4.472546e-02 -1.335925e+00 -5.641775e-01 1.101634e-01 8.738716e-01 -3.862692e-01 -1.225933e+00 7.789448e-01 8.371751e-01 8.410697e-02 2.176983e+00 5.251057e-01 -1.994871e-01 8.621558e-01 -5.118690e-01 5.185876e-01 -1.827715e+00 -1.355636e-01 -3.863470e-02 1.080836e+00 3.523941e-01 4.856182e-01 7.901373e-01 5.162217e-01 -5.621288e-01 -1.700239e+00 -4.602851e-01 4.029624e-01 1.427634e-01 -1.616454e+00 1.098561e+00 -1.112002e+00 -1.152793e+00 -3.211671e-01 -1.071950e+00 2.161876e-01 -3.120942e-01 2.308785e-01 -1.205848e+00 3.109868e-01 -6.633172e-01 -1.672628e+00 -8.504309e-01 -4.203359e-01 -1.117056e+00 -1.022934e+00 3.481180e-01 -6.916692e-01 3.786110e-01 -4.705941e-02 2.080961e-01 -3.766698e-01 2.703859e-01 8.458251e-01 7.826743e-01 7.432621e-01 -1.492020e+00 2.404204e-01 -7.249685e-01 1.638078e-01 2.569972e-01 9.179744e-01 5.258623e-01 8.532875e-01 -6.928088e-01 1.044247e+00 -5.774945e-01 5.572421e-01 1.613017e-01 4.478320e-01 -1.541305e-01 -2.730369e-01 3.783091e-01 1.215180e+00 -3.641251e-01 2.483346e-01 4.686201e-01 -7.972798e-01 -1.435424e-01 -8.458201e-01 1.374821e+00 3.266820e-01 1.875084e-01 -4.958268e-01 5.853594e-02 -8.599376e-01 -4.748160e-01 -7.174775e-01 -1.604461e+00 -1.551600e-01 -2.210851e-01 -2.139527e+00 6.267240e-01 -4.132748e-01 -8.553546e-01 2.217151e-01 -2.759494e-01 8.979897e-01 1.693196e-01 -8.314581e-02 8.972428e-01 -2.183998e+00 8.282507e-01 -1.746775e+00 -1.070504e-01 1.140170e+00 ''') Set('colorTheme', u'default1') Set('StyleSheet/axis-function/autoRange', u'next-tick') Set('StyleSheet/axis3d/autoRange', u'+2%') Set('StyleSheet/axis3d/MinorGridLines/color', u'lightgreen') Add('page', name=u'page1', autoadd=False) To(u'page1') Add('scene3d', name=u'scene3d1', autoadd=False) To(u'scene3d1') Set('xRotation', -40.0) Set('yRotation', 62.0) Set('zRotation', -142.0) Set('Lighting2/x', -2.0) Add('graph3d', name=u'graph3d1', autoadd=False) To(u'graph3d1') Add('axis3d', name=u'x', autoadd=False) To(u'x') Set('label', u'x') Set('TickLabels/hide', False) Set('GridLines/color', u'green') Set('GridLines/hide', False) Set('MinorGridLines/hide', False) To('..') Add('axis3d', name=u'y', autoadd=False) To(u'y') Set('label', u'y') Set('direction', u'y') Set('TickLabels/hide', False) Set('MinorTicks/number', 40) Set('GridLines/color', u'green') Set('GridLines/hide', False) Set('MinorGridLines/hide', False) To('..') Add('axis3d', name=u'z', autoadd=False) To(u'z') Set('label', u'z') Set('direction', u'z') Set('GridLines/color', u'green') Set('GridLines/hide', False) Set('MinorGridLines/hide', False) To('..') Add('point3d', name=u'point3d1', autoadd=False) To(u'point3d1') Set('Color/points', u'sqrt(x**2+y**2+z**2)') Set('Color/min', 0.2) Set('Color/max', 4.0) Set('MarkerFill/colorMap', u'green') To('..') Add('function3d', name=u'function3d1', autoadd=False) To(u'function3d1') Set('mode', u'z=fn(x,y)') Set('fnz', u'(x**2+y**2)/20') Set('Surface/color', u'theme2') Set('Surface/transparency', 40.0) To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/3d_surface.vsz0000664000175000017500000000405414365252232015527 0ustar00jssjss# Veusz saved document (version 2.99) # Saved at 2018-06-03T10:50:08.474574 SetData2DXYFunc(u'radius', (-10.0, 10.0, 0.5), (-10.0, 10.0, 0.5), u'sqrt(x**2+y**2)', linked=True) SetData2DXYFunc(u'sincfn', (-10.0, 10.0, 0.5), (-10.0, 10.0, 0.5), u'sin(sqrt(x**2+y**2))/(sqrt(x**2+y**2)+0.2)', linked=True) Set('StyleSheet/Font/font', u'DejaVu Sans') Set('StyleSheet/axis-function/autoRange', u'next-tick') Add('page', name=u'page1', autoadd=False) To(u'page1') Add('scene3d', name=u'scene3d1', autoadd=False) To(u'scene3d1') Set('xRotation', -52.0) Set('yRotation', -166.0) Set('zRotation', 0.0) Set('Lighting1/enable', True) Set('Lighting1/intensity', 50.0) Set('Lighting1/z', -7.0) Add('graph3d', name=u'graph3d1', autoadd=False) To(u'graph3d1') Set('zSize', 0.7) Set('Border/color', u'blue') Add('axis3d', name=u'x', autoadd=False) To(u'x') Set('min', -9.9) Set('max', 9.9) Set('autoRange', u'exact') Set('Line/color', u'blue') Set('Label/color', u'blue') Set('TickLabels/size', u'10pt') Set('TickLabels/color', u'blue') Set('MajorTicks/number', 4) To('..') Add('axis3d', name=u'y', autoadd=False) To(u'y') Set('min', -9.9) Set('max', 9.9) Set('autoRange', u'exact') Set('direction', u'y') Set('Line/color', u'blue') Set('Label/color', u'blue') Set('TickLabels/size', u'10pt') Set('TickLabels/color', u'blue') Set('MajorTicks/number', 4) To('..') Add('axis3d', name=u'z', autoadd=False) To(u'z') Set('autoRange', u'exact') Set('direction', u'z') Set('Line/color', u'blue') Set('Label/color', u'blue') Set('TickLabels/size', u'10pt') Set('TickLabels/color', u'blue') To('..') Add('function3d', name=u'circleline', autoadd=False) To(u'circleline') Set('fnx', u'sin(t*2*pi)*4') Set('fny', u'cos(t*2*pi)*4') Set('fnz', u'0.2') Set('fncolor', u'sin(t*4*pi)') Set('Line/width', 4.0) Set('Line/colorMap', u'brown-blue') To('..') Add('surface3d', name=u'sinsurface', autoadd=False) To(u'sinsurface') Set('data', u'sincfn') Set('DataColor/points', u'radius') Set('DataColor/max', 20.0) Set('hide', False) Set('Line/color', u'grey') Set('Surface/colorMap', u'seq') To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/3d_volume.vsz0000664000175000017500000000523414365252232015407 0ustar00jssjss# Veusz saved document (version 3.0) # Saved at 2018-05-27T10:25:14.694378 ImportString(u'vv(numeric)',''' 0.000000e+00 1.111111e-01 2.222222e-01 1.111111e-01 2.222222e-01 3.333333e-01 2.222222e-01 3.333333e-01 4.444444e-01 1.111111e-01 2.222222e-01 3.333333e-01 2.222222e-01 3.333333e-01 4.444444e-01 3.333333e-01 4.444444e-01 5.555556e-01 2.222222e-01 3.333333e-01 4.444444e-01 3.333333e-01 4.444444e-01 5.555556e-01 4.444444e-01 5.555556e-01 6.666667e-01 ''') ImportString(u'xv(numeric)',''' 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 2.000000e+00 2.000000e+00 2.000000e+00 2.000000e+00 2.000000e+00 2.000000e+00 2.000000e+00 2.000000e+00 2.000000e+00 ''') ImportString(u'yv(numeric)',''' 0.000000e+00 0.000000e+00 0.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 2.000000e+00 2.000000e+00 2.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 2.000000e+00 2.000000e+00 2.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 2.000000e+00 2.000000e+00 2.000000e+00 ''') ImportString(u'zv(numeric)',''' 0.000000e+00 1.000000e+00 2.000000e+00 0.000000e+00 1.000000e+00 2.000000e+00 0.000000e+00 1.000000e+00 2.000000e+00 0.000000e+00 1.000000e+00 2.000000e+00 0.000000e+00 1.000000e+00 2.000000e+00 0.000000e+00 1.000000e+00 2.000000e+00 0.000000e+00 1.000000e+00 2.000000e+00 0.000000e+00 1.000000e+00 2.000000e+00 0.000000e+00 1.000000e+00 2.000000e+00 ''') Set('colorTheme', u'default-latest') Set('StyleSheet/Font/font', u'Courier') Set('StyleSheet/axis-function/autoRange', u'next-tick') Add('page', name=u'page1', autoadd=False) To(u'page1') Add('scene3d', name=u'scene3d1', autoadd=False) To(u'scene3d1') Set('xRotation', 35.0) Set('distance', 5.0) Add('graph3d', name=u'graph3d1', autoadd=False) To(u'graph3d1') Set('Back/color', u'#f0f0f0') Set('Back/hide', False) Add('axis3d', name=u'x', autoadd=False) To(u'x') Set('label', u'Axis \\textbf{x}') Set('min', -0.5) Set('max', 2.5) To('..') Add('axis3d', name=u'y', autoadd=False) To(u'y') Set('label', u'Axis \\textbf{y}') Set('min', -0.5) Set('max', 2.5) Set('direction', u'y') To('..') Add('axis3d', name=u'z', autoadd=False) To(u'z') Set('label', u'Axis \\textbf{z}') Set('min', -0.5) Set('max', 2.5) Set('direction', u'z') To('..') Add('volume3d', name=u'volume3d1', autoadd=False) To(u'volume3d1') Set('colorMap', u'hot_desaturated') Set('fillfactor', 0.7) Set('DataColor/points', u'vv') Set('xData', u'xv') Set('yData', u'yv') Set('zData', u'zv') To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/FDR_example.vsz0000664000175000017500000001466214365252232015645 0ustar00jssjss# Veusz saved document (version 3.2.1) # Saved at 2020-08-19T13:04:26.673447 AddImportPath(u'/home/jss/code/veusz/examples') ImportFileCSV(u'FDR_sample_data.csv', dateformat=u'YYYY-MM-DD| |hh:mm:ss', headerignore=1, linked=True, numericlocale=u'en_CA') Set('colorTheme', u'default-latest') Set('StyleSheet/Font/font', u'Arial') Set('StyleSheet/axis-function/autoRange', u'next-tick') Add('page', name=u'page1', autoadd=False) To(u'page1') Set('width', u'29cm') Set('height', u'21cm') Add('label', name=u'label1', autoadd=False) To(u'label1') Set('label', u'Example FDR Style Graph') Set('xPos', [0.054]) Set('yPos', [0.954]) Set('Text/size', u'20pt') To('..') Add('label', name=u'label2', autoadd=False) To(u'label2') Set('label', u'RC700 Flight 190530 - preTPS') Set('xPos', [0.053]) Set('yPos', [0.925]) To('..') Add('label', name=u'label3', autoadd=False) To(u'label3') Set('label', u'CG: AFT / W: 5200lbs') Set('xPos', [0.812]) Set('yPos', [0.952]) To('..') Add('label', name=u'label4', autoadd=False) To(u'label4') Set('label', u'LOG/AND') Set('xPos', [0.812]) Set('yPos', [0.928]) To('..') Add('graph', name=u'graph1', autoadd=False) To(u'graph1') Set('hide', False) Set('leftMargin', u'1.663cm') Set('rightMargin', u'0.2cm') Set('topMargin', u'1.996cm') Set('bottomMargin', u'1.7cm') Set('Border/hide', True) Add('axis', name=u'x', autoadd=False) To(u'x') Set('label', u'Time UTC (hh:mm)') Set('min', 328808387.28) Set('mode', u'datetime') Set('lowerPosition', 0.189) Set('upperPosition', 0.88) Set('GridLines/hide', False) Set('MinorGridLines/hide', False) To('..') Add('axis', name=u'y_IAS', autoadd=False) To(u'y_IAS') Set('label', u'IAS [KIAS]') Set('direction', u'vertical') Set('lowerPosition', 0.789) Set('otherPosition', 0.128) Set('Line/color', u'darkmagenta') Set('Label/color', u'darkmagenta') Set('TickLabels/color', u'darkmagenta') Set('MajorTicks/color', u'darkmagenta') Set('MinorTicks/color', u'darkmagenta') To('..') Add('xy', name=u'xy1', autoadd=False) To(u'xy1') Set('marker', u'none') Set('xData', u'Time') Set('yData', u'Analog_Airspeed') Set('yAxis', u'y_IAS') Set('PlotLine/color', u'darkmagenta') To('..') Add('axis', name=u'y_Alt', autoadd=False) To(u'y_Alt') Set('label', u'Altitude [ft]') Set('direction', u'vertical') Set('lowerPosition', 0.791) Set('otherPosition', 0.936) Set('Line/color', u'red') Set('Label/color', u'red') Set('TickLabels/color', u'red') Set('MajorTicks/color', u'red') Set('MinorTicks/color', u'red') To('..') Add('xy', name=u'xy2', autoadd=False) To(u'xy2') Set('marker', u'none') Set('xData', u'Time') Set('yData', u'Analog_Altitude') Set('yAxis', u'y_Alt') Set('PlotLine/color', u'red') To('..') Add('axis', name=u'y_column', autoadd=False) To(u'y_column') Set('label', u'Column Pos [in]') Set('direction', u'vertical') Set('lowerPosition', 0.536) Set('upperPosition', 0.756) Set('otherPosition', 0.124) To('..') Add('xy', name=u'xy3', autoadd=False) To(u'xy3') Set('marker', u'none') Set('color', u'black') Set('xData', u'Time') Set('yData', u'T27001_EU') Set('yAxis', u'y_column') To('..') Add('axis', name=u'y_RPM', autoadd=False) To(u'y_RPM') Set('label', u'E1/E2RPM [%]') Set('direction', u'vertical') Set('lowerPosition', 0.72) Set('upperPosition', 0.812) Set('otherPosition', 0.855) Set('Line/color', u'red') Set('Label/color', u'red') Set('TickLabels/color', u'red') Set('MajorTicks/color', u'red') Set('MinorTicks/color', u'red') To('..') Add('xy', name=u'xy4', autoadd=False) To(u'xy4') Set('marker', u'none') Set('color', u'red') Set('xData', u'Time') Set('yData', u'T72001_EU') Set('yAxis', u'y_RPM') To('..') Add('xy', name=u'xy5', autoadd=False) To(u'xy5') Set('marker', u'none') Set('color', u'blue') Set('xData', u'Time') Set('yData', u'T72002_EU') Set('yAxis', u'y_RPM') To('..') Add('axis', name=u'y_theta', autoadd=False) To(u'y_theta') Set('label', u'\\theta [deg]') Set('direction', u'vertical') Set('lowerPosition', 0.357) Set('upperPosition', 0.538) Set('otherPosition', 0.065) Set('Line/color', u'magenta') Set('Label/color', u'magenta') Set('TickLabels/color', u'magenta') Set('MajorTicks/color', u'magenta') Set('MinorTicks/color', u'magenta') To('..') Add('xy', name=u'xy6', autoadd=False) To(u'xy6') Set('marker', u'none') Set('color', u'magenta') Set('xData', u'Time') Set('yData', u'SBG_PitchAngle_EU') Set('scalePoints', []) Set('yAxis', u'y_theta') To('..') Add('axis', name=u'y_rudder', autoadd=False) To(u'y_rudder') Set('label', u'Rudder Pos [in]') Set('direction', u'vertical') Set('lowerPosition', 0.216) Set('upperPosition', 0.382) Set('otherPosition', 0.156) Set('Line/color', u'darkred') Set('Label/color', u'darkred') Set('TickLabels/color', u'darkred') Set('MajorTicks/color', u'darkred') Set('MinorTicks/color', u'darkred') To('..') Add('xy', name=u'xy7', autoadd=False) To(u'xy7') Set('marker', u'none') Set('xData', u'Time') Set('yData', u'T27004_EU') Set('yAxis', u'y_rudder') Set('PlotLine/color', u'darkred') To('..') Add('axis', name=u'y_wheel', autoadd=False) To(u'y_wheel') Set('label', u'Wheel Pos [in]') Set('direction', u'vertical') Set('lowerPosition', 0.159) Set('upperPosition', 0.299) Set('otherPosition', 0.863) Set('Line/color', u'red') Set('Label/color', u'red') Set('TickLabels/color', u'red') Set('MajorTicks/color', u'red') Set('MinorTicks/color', u'red') To('..') Add('xy', name=u'xy8', autoadd=False) To(u'xy8') Set('marker', u'none') Set('color', u'red') Set('xData', u'Time') Set('yData', u'T27002_EU') Set('yAxis', u'y_wheel') To('..') Add('axis', name=u'y_HDG', autoadd=False) To(u'y_HDG') Set('label', u'HDG [deg]') Set('direction', u'vertical') Set('lowerPosition', 0.08) Set('upperPosition', 0.174) Set('otherPosition', 0.926) Set('Line/color', u'green') Set('Label/color', u'green') Set('TickLabels/color', u'green') Set('MajorTicks/color', u'green') Set('MinorTicks/color', u'green') To('..') Add('xy', name=u'xy9', autoadd=False) To(u'xy9') Set('marker', u'none') Set('color', u'green') Set('xData', u'Time') Set('yData', u'SBG_YawAngle_EU') Set('yAxis', u'y_HDG') To('..') Add('axis', name=u'y_roll', autoadd=False) To(u'y_roll') Set('label', u'\\phi [deg]') Set('direction', u'vertical') Set('lowerPosition', 0.052) Set('upperPosition', 0.204) Set('otherPosition', 0.067) Set('Line/color', u'cyan') Set('Label/color', u'cyan') Set('TickLabels/color', u'cyan') Set('MajorTicks/color', u'cyan') Set('MinorTicks/color', u'cyan') To('..') Add('xy', name=u'xy10', autoadd=False) To(u'xy10') Set('marker', u'none') Set('color', u'cyan') Set('xData', u'Time') Set('yData', u'SBG_RollAngle_EU') Set('yAxis', u'y_roll') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/FDR_sample_data.csv0000664000175000017500000756104014365252232016441 0ustar00jssjssTime,Analog_Airspeed,Analog_Altitude,SBG_PitchAngle_EU,SBG_RollAngle_EU,Nz_EU,Nx_EU,T72001_EU,T72002_EU,T27004_EU,T27002_EU,T27001_EU,SBG_YawAngle_EU 2019-06-03 15:39:47.260,143.0185,6970.0093,3.6316,0.7935,1.0037,0.1535,2340.0,2400.0,-0.5623,-1.8331,4.1558,-72.0481 2019-06-03 15:39:47.280,142.9527,6969.9551,3.6403,0.7604,1.0946,0.0312,2340.0,2400.0,-0.574,-1.8301,4.1333,-72.0411 2019-06-03 15:39:47.300,142.961,6969.873,3.6453,0.725,1.2026,0.004,2340.0,2400.0,-0.5711,-1.8122,4.1439,-72.0341 2019-06-03 15:39:47.320,142.9445,6969.873,3.6453,0.725,1.0181,0.1246,2340.0,2400.0,-0.5857,-1.8301,4.1465,-72.0341 2019-06-03 15:39:47.340,143.117,6969.8462,3.6453,0.725,1.213,0.0132,2340.0,2400.0,-0.5798,-1.8301,4.1373,-72.0341 2019-06-03 15:39:47.360,143.1334,6969.9004,3.6535,0.6919,1.0532,0.1307,2340.0,2400.0,-0.5857,-1.8331,4.1412,-72.0254 2019-06-03 15:39:47.380,143.0924,6969.873,3.6639,0.6626,1.0965,0.0219,2340.0,2400.0,-0.5652,-1.8331,4.1412,-72.0149 2019-06-03 15:39:47.400,143.0924,6969.8462,3.667,0.6503,1.2374,0.0273,2400.0,2340.0,-0.574,-1.8301,4.1386,-72.0114 2019-06-03 15:39:47.420,143.0924,6969.8188,3.6741,0.638,0.997,0.1195,2400.0,2340.0,-0.574,-1.8331,4.1478,-72.0061 2019-06-03 15:39:47.440,143.1334,6969.873,3.6741,0.638,1.1875,0.0326,2400.0,2340.0,-0.5681,-1.8331,4.1333,-72.0061 2019-06-03 15:39:47.460,143.1498,6969.8462,3.6741,0.638,1.0832,0.1403,2400.0,2340.0,-0.5594,-1.8271,4.1439,-72.0061 2019-06-03 15:39:47.480,143.0842,6969.7915,3.6838,0.6082,1.0273,-0.0026,2400.0,2340.0,-0.5681,-1.8331,4.1452,-71.9957 2019-06-03 15:39:47.500,143.0924,6969.7915,3.6892,0.5776,1.1209,-0.036,2400.0,2340.0,-0.5623,-1.8331,4.1478,-71.9869 2019-06-03 15:39:47.520,143.076,6969.7915,3.6892,0.5776,0.9541,0.1608,2400.0,2340.0,-0.5944,-1.8331,4.1452,-71.9869 2019-06-03 15:39:47.540,143.1334,6969.873,3.6892,0.5776,1.1072,-0.0174,2400.0,2340.0,-0.5769,-1.8271,4.1293,-71.9869 2019-06-03 15:39:47.560,143.1416,6969.9277,3.6983,0.5507,1.1305,0.1564,2400.0,2340.0,-0.5828,-1.8331,4.1359,-71.9764 2019-06-03 15:39:47.580,143.0924,6969.9819,3.6983,0.5507,1.0321,-0.0104,2400.0,2340.0,-0.5564,-1.8182,4.1439,-71.9764 2019-06-03 15:39:47.600,143.0842,6970.0093,3.7098,0.5111,1.0717,-0.0092,2400.0,2340.0,-0.5594,-1.8003,4.132,-71.9572 2019-06-03 15:39:47.620,143.0924,6970.0093,3.7211,0.5016,1.0969,0.1287,2400.0,2340.0,-0.5564,-1.7973,4.1412,-71.9537 2019-06-03 15:39:47.640,143.1416,6970.0908,3.7211,0.5016,1.1098,0.0047,2400.0,2340.0,-0.5564,-1.6957,4.1306,-71.9537 2019-06-03 15:39:47.660,143.1416,6970.1182,3.7211,0.5016,1.1191,0.1532,2400.0,2340.0,-0.5857,-1.6598,4.1333,-71.9537 2019-06-03 15:39:47.680,143.0924,6970.0908,3.7274,0.4792,0.929,-0.011,2400.0,2340.0,-0.5681,-1.567,4.1452,-71.9415 2019-06-03 15:39:47.700,143.1006,6969.9819,3.7341,0.4581,0.9781,-0.0053,2400.0,2340.0,-0.5857,-1.5221,4.1161,-71.931 2019-06-03 15:39:47.720,143.0842,6970.0093,3.7341,0.4581,1.1693,0.1453,2400.0,2340.0,-0.5828,-1.4981,4.1465,-71.931 2019-06-03 15:39:47.740,143.1416,6969.9277,3.7341,0.4581,0.8668,0.0092,2400.0,2340.0,-0.5886,-1.4171,4.1214,-71.931 2019-06-03 15:39:47.760,143.1416,6969.9551,3.7452,0.4439,1.1424,0.1384,2400.0,2340.0,-0.5623,-1.4351,4.1492,-71.9187 2019-06-03 15:39:47.780,143.0842,6969.9551,3.7452,0.4439,0.8735,0.0061,2400.0,2340.0,-0.5594,-1.4321,4.1306,-71.9187 2019-06-03 15:39:47.800,143.076,6969.9551,3.7573,0.426,0.9068,-0.026,2400.0,2340.0,-0.5564,-1.4351,4.1253,-71.889 2019-06-03 15:39:47.820,143.0924,6969.9277,3.7683,0.4281,1.3287,0.1395,2400.0,2340.0,-0.5828,-1.5161,4.1293,-71.882 2019-06-03 15:39:47.840,143.1334,6969.9551,3.7683,0.4281,0.7525,0.0479,2400.0,2340.0,-0.5711,-1.528,4.1359,-71.882 2019-06-03 15:39:47.860,143.1498,6969.9551,3.7683,0.4281,1.193,0.0988,2400.0,2340.0,-0.5798,-1.6269,4.1478,-71.882 2019-06-03 15:39:47.880,143.0924,6969.9551,3.7723,0.4236,0.7869,0.0511,2400.0,2340.0,-0.574,-1.7136,4.1412,-71.8698 2019-06-03 15:39:47.900,143.0924,6969.9277,3.7817,0.4231,0.8831,0.0446,2400.0,2340.0,-0.5623,-1.7286,4.1333,-71.8575 2019-06-03 15:39:47.920,143.0842,6969.9551,3.7817,0.4231,1.2895,0.1009,2400.0,2340.0,-0.5798,-1.7973,4.1399,-71.8575 2019-06-03 15:39:47.940,143.0349,6969.9551,3.7817,0.4231,0.7858,0.065,2400.0,2340.0,-0.5711,-1.8241,4.1386,-71.8575 2019-06-03 15:39:47.960,143.0021,6969.9819,3.7941,0.4257,1.3136,0.0915,2400.0,2340.0,-0.5711,-1.9047,4.1492,-71.8453 2019-06-03 15:39:47.980,142.9527,6969.9551,3.7941,0.4257,0.7551,0.0595,2400.0,2340.0,-0.574,-1.8987,4.1518,-71.8453 2019-06-03 15:39:48.000,142.9527,6969.9819,3.8072,0.4205,0.8672,0.0636,2400.0,2340.0,-0.5681,-1.8928,4.1412,-71.8068 2019-06-03 15:39:48.020,142.961,6969.9277,3.8138,0.4173,1.2374,0.0497,2400.0,2340.0,-0.5711,-1.8928,4.1465,-71.8016 2019-06-03 15:39:48.040,143.0103,6969.9004,3.8138,0.4173,0.8687,0.1345,2400.0,2340.0,-0.5681,-1.842,4.1306,-71.8016 2019-06-03 15:39:48.060,143.0021,6969.9277,3.8138,0.4173,1.3239,0.0018,2400.0,2340.0,-0.5828,-1.8361,4.1452,-71.8016 2019-06-03 15:39:48.080,142.9527,6969.9004,3.8169,0.4083,0.8813,0.1598,2400.0,2340.0,-0.5857,-1.7794,4.1373,-71.7911 2019-06-03 15:39:48.100,142.9692,6969.8188,3.8277,0.4028,0.9179,0.1271,2400.0,2340.0,-0.5769,-1.6957,4.1253,-71.7823 2019-06-03 15:39:48.120,142.9527,6969.8462,3.8277,0.4028,1.1723,-0.0076,2400.0,2340.0,-0.5798,-1.6957,4.1373,-71.7823 2019-06-03 15:39:48.140,143.0103,6969.8188,3.8277,0.4028,0.9552,0.1588,2400.0,2340.0,-0.5681,-1.582,4.1359,-71.7823 2019-06-03 15:39:48.160,143.0021,6969.8188,3.8391,0.3991,1.1246,-0.0185,2400.0,2340.0,-0.5623,-1.555,4.1425,-71.7753 2019-06-03 15:39:48.180,142.9527,6969.8462,3.8391,0.3991,0.9367,0.1223,2400.0,2340.0,-0.5652,-1.4891,4.1412,-71.7753 2019-06-03 15:39:48.200,142.9527,6969.9004,3.8499,0.3917,0.987,0.1232,2400.0,2340.0,-0.5681,-1.4501,4.1293,-71.7649 2019-06-03 15:39:48.220,142.9692,6969.873,3.8525,0.3917,1.139,0.0207,2400.0,2340.0,-0.5711,-1.4651,4.1425,-71.7614 2019-06-03 15:39:48.240,143.0021,6969.873,3.8525,0.3917,0.9508,0.0975,2400.0,2340.0,-0.5535,-1.4621,4.1452,-71.7614 2019-06-03 15:39:48.260,143.0103,6969.9004,3.8525,0.3917,1.078,0.0022,2400.0,2340.0,-0.5652,-1.4981,4.1359,-71.7614 2019-06-03 15:39:48.280,142.961,6969.873,3.8621,0.3975,1.0806,0.122,2400.0,2340.0,-0.5623,-1.555,4.1386,-71.7561 2019-06-03 15:39:48.300,142.961,6969.7915,3.8758,0.4098,1.0503,0.1424,2400.0,2340.0,-0.5769,-1.57,4.1293,-71.7509 2019-06-03 15:39:48.320,142.9527,6969.7642,3.8758,0.4098,1.1017,0.0067,2400.0,2340.0,-0.5711,-1.6897,4.1518,-71.7509 2019-06-03 15:39:48.340,143.0103,6969.7915,3.8758,0.4098,1.0961,0.1493,2400.0,2340.0,-0.5681,-1.7614,4.1412,-71.7509 2019-06-03 15:39:48.360,143.0021,6969.8462,3.8872,0.4189,0.9696,-0.0152,2400.0,2340.0,-0.5594,-1.8271,4.1518,-71.7474 2019-06-03 15:39:48.380,142.9527,6969.8462,3.8872,0.4189,1.0769,0.1483,2400.0,2340.0,-0.5623,-1.86,4.1439,-71.7474 2019-06-03 15:39:48.400,142.961,6969.9277,3.9022,0.4329,1.1187,0.1631,2400.0,2400.0,-0.5564,-1.857,4.1359,-71.7474 2019-06-03 15:39:48.420,142.9692,6969.8462,3.9051,0.4354,0.9205,0.0284,2400.0,2400.0,-0.5623,-1.9077,4.1505,-71.7456 2019-06-03 15:39:48.440,143.0021,6969.873,3.9051,0.4354,1.1368,0.1195,2400.0,2400.0,-0.5477,-1.86,4.1373,-71.7456 2019-06-03 15:39:48.460,143.0185,6969.873,3.9051,0.4354,0.9415,0.0156,2400.0,2400.0,-0.5506,-1.8391,4.1505,-71.7456 2019-06-03 15:39:48.480,142.9445,6969.9819,3.9175,0.4399,1.2411,0.0892,2400.0,2400.0,-0.5535,-1.8391,4.1478,-71.7474 2019-06-03 15:39:48.500,142.961,6969.9277,3.9308,0.4456,1.3003,0.1144,2400.0,2400.0,-0.5623,-1.7734,4.1333,-71.7474 2019-06-03 15:39:48.520,142.9527,6969.9004,3.9308,0.4456,0.9334,0.0391,2400.0,2400.0,-0.5711,-1.7674,4.1465,-71.7474 2019-06-03 15:39:48.540,143.1334,6969.9551,3.9308,0.4456,1.1963,0.1166,2400.0,2400.0,-0.5652,-1.6478,4.1373,-71.7474 2019-06-03 15:39:48.560,143.1334,6969.9551,3.9399,0.4438,0.8117,0.0439,2400.0,2400.0,-0.5623,-1.5999,4.1412,-71.7491 2019-06-03 15:39:48.580,143.0924,6969.9819,3.9399,0.4438,1.1875,0.097,2400.0,2400.0,-0.5448,-1.594,4.1505,-71.7491 2019-06-03 15:39:48.600,143.0842,6970.0366,3.9562,0.4502,1.2492,0.1188,2400.0,2400.0,-0.5594,-1.549,4.1134,-71.7491 2019-06-03 15:39:48.620,143.0924,6970.0366,3.9622,0.4522,0.835,0.0772,2400.0,2400.0,-0.5535,-1.537,4.1531,-71.7509 2019-06-03 15:39:48.640,143.1416,6970.0366,3.9622,0.4522,1.2145,0.0613,2400.0,2400.0,-0.574,-1.5191,4.1346,-71.7509 2019-06-03 15:39:48.660,143.1416,6970.0093,3.9622,0.4522,0.8206,0.096,2400.0,2400.0,-0.5798,-1.534,4.1412,-71.7509 2019-06-03 15:39:48.680,143.0924,6970.0908,3.9735,0.4574,1.2189,0.0601,2400.0,2400.0,-0.5769,-1.534,4.1412,-71.7544 2019-06-03 15:39:48.700,143.0924,6969.9819,3.9844,0.4643,1.2677,0.0805,2400.0,2400.0,-0.5564,-1.546,4.1333,-71.7596 2019-06-03 15:39:48.720,143.076,6969.9551,3.9844,0.4643,0.8923,0.0773,2400.0,2400.0,-0.5418,-1.6658,4.1492,-71.7596 2019-06-03 15:39:48.740,143.0185,6970.064,3.9844,0.4643,1.257,0.0593,2400.0,2400.0,-0.5301,-1.7047,4.1425,-71.7596 2019-06-03 15:39:48.760,143.0021,6970.064,3.9924,0.4703,0.8746,0.08,2400.0,2400.0,-0.5418,-1.8241,4.1439,-71.7649 2019-06-03 15:39:48.780,142.961,6970.064,4.0053,0.4733,1.1708,0.0429,2400.0,2400.0,-0.5594,-1.8719,4.1452,-71.7701 2019-06-03 15:39:48.800,142.9527,6970.064,4.0123,0.4789,1.1786,0.0541,2400.0,2400.0,-0.5594,-1.8689,4.1386,-71.7718 2019-06-03 15:39:48.820,142.9692,6969.9819,4.0189,0.48,0.9382,0.0954,2400.0,2400.0,-0.5594,-1.8868,4.1531,-71.7753 2019-06-03 15:39:48.840,143.0103,6969.8462,4.0189,0.48,1.0832,0.0393,2400.0,2400.0,-0.5448,-1.8898,4.1386,-71.7753 2019-06-03 15:39:48.860,143.0185,6969.8188,4.0189,0.48,0.9223,0.0947,2400.0,2400.0,-0.5184,-1.8331,4.1531,-71.7753 2019-06-03 15:39:48.880,142.9527,6969.873,4.029,0.4747,1.085,0.0256,2400.0,2400.0,-0.5623,-1.8182,4.1253,-71.7823 2019-06-03 15:39:48.900,142.9692,6969.7373,4.0389,0.4716,1.1287,0.0567,2400.0,2400.0,-0.5301,-1.7435,4.1439,-71.7876 2019-06-03 15:39:48.920,142.9527,6969.7642,4.0389,0.4716,0.9308,0.138,2400.0,2400.0,-0.5711,-1.6837,4.1478,-71.7876 2019-06-03 15:39:48.940,143.0103,6969.7373,4.0389,0.4716,1.0196,0.0317,2400.0,2400.0,-0.5652,-1.5969,4.1492,-71.7876 2019-06-03 15:39:48.960,143.0103,6969.71,4.0472,0.4621,0.9382,0.1066,2400.0,2400.0,-0.5769,-1.576,4.1386,-71.7928 2019-06-03 15:39:48.980,142.961,6969.7642,4.0472,0.4621,1.1531,0.0275,2400.0,2400.0,-0.6003,-1.561,4.1425,-71.7928 2019-06-03 15:39:49.000,142.9527,6969.8462,4.0678,0.4517,1.1971,0.0497,2400.0,2400.0,-0.5681,-1.5251,4.1425,-71.7823 2019-06-03 15:39:49.020,142.9527,6969.8462,4.0745,0.449,0.9933,0.0877,2400.0,2400.0,-0.5535,-1.54,4.1465,-71.7841 2019-06-03 15:39:49.040,143.0103,6969.873,4.0745,0.449,1.0743,0.0821,2400.0,2400.0,-0.5477,-1.543,4.1425,-71.7841 2019-06-03 15:39:49.060,143.0185,6969.8462,4.0745,0.449,1.0292,0.0704,2400.0,2400.0,-0.5448,-1.594,4.1359,-71.7841 2019-06-03 15:39:49.080,142.9692,6969.8188,4.0857,0.4451,1.0913,0.0265,2400.0,2400.0,-0.5652,-1.6718,4.1359,-71.7893 2019-06-03 15:39:49.100,142.961,6969.7373,4.0929,0.4379,1.1264,0.037,2400.0,2400.0,-0.5594,-1.7286,4.1439,-71.7928 2019-06-03 15:39:49.120,142.9527,6969.7915,4.0929,0.4379,1.0802,0.1175,2400.0,2400.0,-0.5711,-1.8092,4.1505,-71.7928 2019-06-03 15:39:49.140,143.0103,6969.8188,4.0929,0.4379,1.0181,0.028,2400.0,2400.0,-0.574,-1.8152,4.1452,-71.7928 2019-06-03 15:39:49.160,142.9939,6969.9004,4.1024,0.4301,1.0743,0.109,2400.0,2400.0,-0.5594,-1.8152,4.1439,-71.7981 2019-06-03 15:39:49.180,142.9527,6969.9277,4.1024,0.4301,1.0943,-0.0026,2400.0,2400.0,-0.574,-1.8301,4.1465,-71.7981 2019-06-03 15:39:49.200,142.961,6969.9819,4.116,0.4135,1.1649,0.0148,2400.0,2400.0,-0.5681,-1.8122,4.1505,-71.8033 2019-06-03 15:39:49.220,142.961,6969.9277,4.1237,0.4072,1.1113,0.1271,2400.0,2400.0,-0.5594,-1.8092,4.1584,-71.8051 2019-06-03 15:39:49.240,143.0103,6969.9277,4.1237,0.4072,0.9511,0.0311,2400.0,2400.0,-0.5535,-1.7047,4.1452,-71.8051 2019-06-03 15:39:49.260,143.0185,6969.9819,4.1237,0.4072,1.1113,0.093,2400.0,2400.0,-0.5594,-1.6299,4.1373,-71.8051 2019-06-03 15:39:49.280,142.9527,6970.0093,4.1306,0.3909,1.044,-0.0025,2400.0,2400.0,-0.5769,-1.588,4.1399,-71.8121 2019-06-03 15:39:49.300,142.961,6969.9277,4.1353,0.372,1.0858,0.0095,2400.0,2400.0,-0.5711,-1.534,4.1412,-71.8191 2019-06-03 15:39:49.320,142.9445,6969.9551,4.1353,0.372,1.1786,0.136,2400.0,2400.0,-0.5623,-1.5221,4.1492,-71.8191 2019-06-03 15:39:49.340,143.0103,6969.9277,4.1353,0.372,0.9674,0.0173,2400.0,2400.0,-0.5594,-1.4831,4.1333,-71.8191 2019-06-03 15:39:49.360,143.0103,6969.9551,4.1467,0.3572,1.0747,0.1031,2400.0,2400.0,-0.5506,-1.4771,4.1478,-71.826 2019-06-03 15:39:49.380,142.961,6969.9551,4.1467,0.3572,1.0399,0.0162,2400.0,2400.0,-0.5857,-1.5011,4.1373,-71.826 2019-06-03 15:39:49.400,142.9527,6969.9551,4.1602,0.3387,0.9249,0.0278,2340.0,2400.0,-0.574,-1.5101,4.1399,-71.8348 2019-06-03 15:39:49.420,142.961,6969.9277,4.1674,0.3372,1.0525,0.1309,2340.0,2400.0,-0.5681,-1.54,4.1425,-71.8365 2019-06-03 15:39:49.440,143.0103,6969.9819,4.1674,0.3372,0.9134,0.0213,2340.0,2400.0,-0.5477,-1.5999,4.1359,-71.8365 2019-06-03 15:39:49.460,143.0021,6969.9551,4.1674,0.3372,1.1475,0.115,2340.0,2400.0,-0.5506,-1.6747,4.1306,-71.8365 2019-06-03 15:39:49.480,142.9527,6969.9551,4.1748,0.3296,0.9101,0.0393,2340.0,2400.0,-0.5448,-1.7734,4.1478,-71.8418 2019-06-03 15:39:49.500,142.9692,6969.873,4.1856,0.324,0.9038,0.0261,2340.0,2400.0,-0.5564,-1.7853,4.1346,-71.8453 2019-06-03 15:39:49.520,142.961,6969.8462,4.1856,0.324,1.1431,0.1106,2340.0,2400.0,-0.5711,-1.8122,4.1425,-71.8453 2019-06-03 15:39:49.540,142.8869,6969.8462,4.1856,0.324,0.9293,0.0207,2340.0,2400.0,-0.5798,-1.8122,4.1399,-71.8453 2019-06-03 15:39:49.560,142.8787,6969.9277,4.2013,0.3168,1.1449,0.1032,2340.0,2400.0,-0.5711,-1.7674,4.1386,-71.847 2019-06-03 15:39:49.580,142.8293,6969.9551,4.2013,0.3168,0.8261,0.0337,2340.0,2400.0,-0.5681,-1.7943,4.1465,-71.847 2019-06-03 15:39:49.600,142.8293,6969.9551,4.2187,0.3039,0.8457,0.0309,2340.0,2400.0,-0.5389,-1.7555,4.1386,-71.8505 2019-06-03 15:39:49.620,142.8293,6969.9551,4.2259,0.3006,1.206,0.0863,2340.0,2400.0,-0.5301,-1.7495,4.1452,-71.8523 2019-06-03 15:39:49.640,142.8787,6969.9277,4.2259,0.3006,0.9815,0.0682,2340.0,2400.0,-0.5389,-1.6388,4.1412,-71.8523 2019-06-03 15:39:49.660,142.8952,6969.9004,4.2259,0.3006,1.1912,0.0588,2340.0,2400.0,-0.5448,-1.555,4.1439,-71.8523 2019-06-03 15:39:49.680,142.821,6969.873,4.2356,0.2864,0.8805,0.0982,2340.0,2400.0,-0.5944,-1.558,4.1412,-71.854 2019-06-03 15:39:49.700,142.8375,6969.8462,4.2496,0.2766,0.821,0.0589,2340.0,2400.0,-0.5798,-1.4951,4.1439,-71.854 2019-06-03 15:39:49.720,142.8293,6969.8462,4.2496,0.2766,1.1975,0.0281,2340.0,2400.0,-0.5711,-1.4711,4.1412,-71.854 2019-06-03 15:39:49.740,142.8705,6969.873,4.2496,0.2766,0.9615,0.0837,2340.0,2400.0,-0.5594,-1.4861,4.1478,-71.854 2019-06-03 15:39:49.760,142.8869,6969.9004,4.2627,0.2692,1.2145,0.0401,2340.0,2400.0,-0.5448,-1.4891,4.1333,-71.8523 2019-06-03 15:39:49.780,142.8293,6969.873,4.2627,0.2692,0.95,0.1516,2340.0,2400.0,-0.5448,-1.5071,4.1373,-71.8523 2019-06-03 15:39:49.800,142.8375,6969.873,4.2746,0.2548,0.875,0.1026,2340.0,2400.0,-0.5389,-1.5071,4.1333,-71.8523 2019-06-03 15:39:49.820,142.8375,6969.8462,4.2771,0.253,1.2699,0.0167,2340.0,2400.0,-0.5477,-1.561,4.1412,-71.8488 2019-06-03 15:39:49.840,142.8869,6969.9551,4.2771,0.253,0.8565,0.0968,2340.0,2400.0,-0.5681,-1.6149,4.1439,-71.8488 2019-06-03 15:39:49.860,142.8869,6969.9551,4.2771,0.253,1.2711,0.0122,2340.0,2400.0,-0.5711,-1.6329,4.1452,-71.8488 2019-06-03 15:39:49.880,142.821,6969.9819,4.288,0.25,1.058,0.1451,2340.0,2400.0,-0.5711,-1.7345,4.1439,-71.847 2019-06-03 15:39:49.900,142.8375,6969.9819,4.3013,0.2454,0.9415,0.148,2340.0,2400.0,-0.5535,-1.7405,4.1373,-71.8418 2019-06-03 15:39:49.920,142.8293,6969.9819,4.3013,0.2454,1.2015,-0.0344,2340.0,2400.0,-0.5477,-1.7614,4.1425,-71.8418 2019-06-03 15:39:49.940,142.7551,6969.9551,4.3013,0.2454,0.9134,0.1395,2340.0,2400.0,-0.5535,-1.7823,4.1465,-71.8418 2019-06-03 15:39:49.960,142.7468,6970.0908,4.312,0.2358,1.1823,-0.0172,2340.0,2400.0,-0.5477,-1.7196,4.1399,-71.8383 2019-06-03 15:39:49.980,142.6973,6970.1729,4.312,0.2358,1.0839,0.1832,2340.0,2400.0,-0.5652,-1.7674,4.1425,-71.8383 2019-06-03 15:39:50.000,142.6973,6970.1729,4.3231,0.2251,1.0421,0.1601,2340.0,2400.0,-0.5594,-1.7226,4.1333,-71.8173 2019-06-03 15:39:50.020,142.7056,6970.1729,4.3226,0.2168,1.1098,-0.0216,2340.0,2400.0,-0.5535,-1.6718,4.1373,-71.8156 2019-06-03 15:39:50.040,142.7551,6970.1729,4.3226,0.2168,1.0773,0.1567,2340.0,2400.0,-0.5535,-1.6508,4.1478,-71.8156 2019-06-03 15:39:50.060,142.7633,6970.0366,4.3226,0.2168,1.0521,-0.0124,2340.0,2400.0,-0.5448,-1.573,4.1373,-71.8156 2019-06-03 15:39:50.080,142.7056,6969.9551,4.3321,0.2093,1.1213,0.1682,2340.0,2400.0,-0.5623,-1.594,4.1531,-71.8103 2019-06-03 15:39:50.100,142.7138,6969.8462,4.3437,0.1998,1.0262,0.1524,2340.0,2400.0,-0.574,-1.582,4.1412,-71.8051 2019-06-03 15:39:50.120,142.689,6969.873,4.3437,0.1998,0.9508,0.0038,2340.0,2400.0,-0.5711,-1.546,4.1505,-71.8051 2019-06-03 15:39:50.140,142.7468,6969.8462,4.3437,0.1998,1.1753,0.1458,2340.0,2400.0,-0.5623,-1.57,4.1531,-71.8051 2019-06-03 15:39:50.160,142.7386,6969.873,4.3511,0.1923,0.9478,0.0055,2340.0,2400.0,-0.5418,-1.567,4.1386,-71.7998 2019-06-03 15:39:50.180,142.7056,6969.9277,4.3556,0.1861,1.2097,0.1608,2340.0,2400.0,-0.5418,-1.5999,4.1465,-71.7893 2019-06-03 15:39:50.200,142.6973,6969.9004,4.3667,0.1856,1.0732,0.1229,2340.0,2400.0,-0.5506,-1.5969,4.1386,-71.7858 2019-06-03 15:39:50.220,142.7056,6969.873,4.3678,0.1803,0.848,0.0212,2340.0,2400.0,-0.5448,-1.6089,4.1505,-71.7823 2019-06-03 15:39:50.240,142.7468,6969.9277,4.3678,0.1803,1.1775,0.0979,2340.0,2400.0,-0.5652,-1.6359,4.1492,-71.7823 2019-06-03 15:39:50.260,142.7551,6969.9551,4.3678,0.1803,0.872,0.0436,2340.0,2400.0,-0.5681,-1.6359,4.1425,-71.7823 2019-06-03 15:39:50.280,142.6973,6970.0093,4.3809,0.1801,1.2289,0.1289,2340.0,2400.0,-0.5798,-1.6418,4.1412,-71.7753 2019-06-03 15:39:50.300,142.6973,6970.0093,4.3909,0.1761,1.1878,0.0973,2340.0,2400.0,-0.5594,-1.6388,4.1492,-71.7666 2019-06-03 15:39:50.320,142.6973,6970.8262,4.3909,0.1761,0.9338,0.0471,2340.0,2400.0,-0.5623,-1.6418,4.1346,-71.7666 2019-06-03 15:39:50.340,142.7551,6972.0239,4.3909,0.1761,1.2026,0.0791,2340.0,2400.0,-0.5594,-1.6478,4.1386,-71.7666 2019-06-03 15:39:50.360,142.7468,6972.8677,4.3984,0.1705,0.8165,0.0911,2340.0,2400.0,-0.5623,-1.6388,4.1386,-71.7596 2019-06-03 15:39:50.380,142.6973,6974.2017,4.3984,0.1705,1.3017,0.0805,2340.0,2400.0,-0.5564,-1.6568,4.1425,-71.7596 2019-06-03 15:39:50.400,142.6973,6975.0996,4.4133,0.1679,1.3302,0.0611,2400.0,2400.0,-0.5623,-1.6299,4.1386,-71.7526 2019-06-03 15:39:50.420,142.6973,6975.9438,4.418,0.1665,0.7888,0.0694,2400.0,2400.0,-0.5448,-1.6359,4.1412,-71.7474 2019-06-03 15:39:50.440,142.7468,6977.1958,4.418,0.1665,1.2433,0.0326,2400.0,2400.0,-0.5477,-1.6568,4.1465,-71.7474 2019-06-03 15:39:50.460,142.7551,6978.0669,4.418,0.1665,0.9053,0.1306,2400.0,2400.0,-0.5623,-1.6448,4.128,-71.7474 2019-06-03 15:39:50.480,142.6973,6978.3662,4.4298,0.1675,1.21,0.0164,2400.0,2400.0,-0.5506,-1.6508,4.1571,-71.7386 2019-06-03 15:39:50.500,142.7056,6978.3394,4.4365,0.1685,1.2041,0.0328,2400.0,2400.0,-0.574,-1.6478,4.1386,-71.7299 2019-06-03 15:39:50.520,142.689,6978.3394,4.4365,0.1685,0.9371,0.1131,2400.0,2400.0,-0.5623,-1.6478,4.1465,-71.7299 2019-06-03 15:39:50.540,142.6229,6978.3662,4.4365,0.1685,1.1912,0.0051,2400.0,2400.0,-0.5681,-1.6777,4.1293,-71.7299 2019-06-03 15:39:50.560,142.6147,6978.4209,4.4443,0.1676,0.9364,0.1335,2400.0,2400.0,-0.5389,-1.6628,4.1399,-71.7211 2019-06-03 15:39:50.580,142.565,6978.4482,4.4443,0.1676,1.1568,-0.0225,2400.0,2400.0,-0.5594,-1.6568,4.1452,-71.7211 2019-06-03 15:39:50.600,142.565,6978.5298,4.4605,0.1728,1.1675,-0.028,2400.0,2400.0,-0.5506,-1.6538,4.1492,-71.7124 2019-06-03 15:39:50.620,142.5816,6978.4209,4.4697,0.1754,0.9415,0.1911,2400.0,2400.0,-0.5623,-1.6448,4.1373,-71.7072 2019-06-03 15:39:50.640,142.6229,6978.3936,4.4697,0.1754,1.0044,-0.0545,2400.0,2400.0,-0.5828,-1.6448,4.1465,-71.7072 2019-06-03 15:39:50.660,142.6229,6978.3936,4.4697,0.1754,1.0972,0.2002,2400.0,2400.0,-0.5769,-1.6448,4.1399,-71.7072 2019-06-03 15:39:50.680,142.565,6978.4482,4.4794,0.1783,1.0506,-0.0387,2400.0,2400.0,-0.5915,-1.6628,4.1439,-71.6967 2019-06-03 15:39:50.700,142.5733,6978.3936,4.4872,0.1762,0.8642,-0.0405,2400.0,2400.0,-0.5828,-1.6628,4.1439,-71.6862 2019-06-03 15:39:50.720,142.5568,6978.3662,4.4872,0.1762,1.1427,0.1732,2400.0,2400.0,-0.5798,-1.6508,4.1412,-71.6862 2019-06-03 15:39:50.740,142.6312,6978.3394,4.4872,0.1762,0.9981,0.0031,2400.0,2400.0,-0.5798,-1.6538,4.1452,-71.6862 2019-06-03 15:39:50.760,142.6229,6978.2573,4.4999,0.1775,1.1457,0.1399,2400.0,2400.0,-0.5769,-1.6538,4.132,-71.6774 2019-06-03 15:39:50.780,142.5733,6978.312,4.4999,0.1775,0.9193,0.0268,2400.0,2400.0,-0.5711,-1.6568,4.1518,-71.6774 2019-06-03 15:39:50.800,142.565,6978.3394,4.5147,0.1774,0.8679,0.0226,2400.0,2400.0,-0.5681,-1.6568,4.1492,-71.6547 2019-06-03 15:39:50.820,142.5733,6978.3394,4.5228,0.1814,1.2677,0.1217,2400.0,2400.0,-0.5564,-1.6598,4.1412,-71.6495 2019-06-03 15:39:50.840,142.6147,6978.4209,4.5228,0.1814,0.7954,0.0512,2400.0,2400.0,-0.5711,-1.6598,4.1412,-71.6495 2019-06-03 15:39:50.860,142.6229,6978.4209,4.5228,0.1814,1.2045,0.1055,2400.0,2400.0,-0.5681,-1.6568,4.1373,-71.6495 2019-06-03 15:39:50.880,142.5733,6978.4209,4.5286,0.1809,0.8036,0.0373,2400.0,2400.0,-0.5857,-1.6598,4.1505,-71.6425 2019-06-03 15:39:50.900,142.5733,6978.3662,4.5404,0.1798,0.7596,0.0448,2400.0,2400.0,-0.5886,-1.6598,4.1478,-71.6355 2019-06-03 15:39:50.920,142.565,6978.3936,4.5404,0.1798,1.3709,0.1053,2400.0,2400.0,-0.5769,-1.6568,4.1386,-71.6355 2019-06-03 15:39:50.940,142.4905,6978.4209,4.5404,0.1798,0.8772,0.082,2400.0,2400.0,-0.574,-1.6568,4.1492,-71.6355 2019-06-03 15:39:50.960,142.4905,6978.4482,4.554,0.188,1.2951,0.0759,2400.0,2400.0,-0.5798,-1.6359,4.1399,-71.625 2019-06-03 15:39:50.980,142.4325,6978.5024,4.554,0.188,0.8317,0.0995,2400.0,2400.0,-0.5915,-1.6688,4.1531,-71.625 2019-06-03 15:39:51.000,142.4242,6978.5024,4.5687,0.1912,0.7999,0.0852,2400.0,2400.0,-0.6032,-1.6628,4.1373,-71.6057 2019-06-03 15:39:51.020,142.4408,6978.4482,4.5746,0.1949,1.2422,0.0446,2400.0,2400.0,-0.5886,-1.6568,4.1412,-71.6022 2019-06-03 15:39:51.040,142.4905,6978.4209,4.5746,0.1949,0.8979,0.1319,2400.0,2400.0,-0.6032,-1.6598,4.1359,-71.6022 2019-06-03 15:39:51.060,142.4988,6978.3662,4.5746,0.1949,1.1771,0.0028,2400.0,2400.0,-0.6003,-1.6628,4.1492,-71.6022 2019-06-03 15:39:51.080,142.4325,6978.4209,4.5819,0.1967,0.8938,0.1483,2400.0,2400.0,-0.6266,-1.6747,4.1571,-71.597 2019-06-03 15:39:51.100,142.4408,6978.3936,4.5955,0.2035,0.9212,0.1418,2400.0,2400.0,-0.6324,-1.6777,4.1465,-71.5935 2019-06-03 15:39:51.120,142.4325,6978.4482,4.5955,0.2035,1.2111,0.0189,2400.0,2400.0,-0.612,-1.6388,4.132,-71.5935 2019-06-03 15:39:51.140,142.4823,6978.4482,4.5955,0.2035,0.8949,0.171,2400.0,2400.0,-0.6295,-1.6538,4.1386,-71.5935 2019-06-03 15:39:51.160,142.4905,6978.4209,4.6081,0.2132,1.1871,-0.0353,2400.0,2400.0,-0.6208,-1.6568,4.1386,-71.5882 2019-06-03 15:39:51.180,142.4325,6978.3662,4.6081,0.2132,1.0451,0.1746,2400.0,2400.0,-0.6266,-1.6927,4.1505,-71.5882 2019-06-03 15:39:51.200,142.4325,6978.3936,4.6221,0.2176,1.044,0.1437,2400.0,2400.0,-0.6441,-1.7525,4.1306,-71.59 2019-06-03 15:39:51.220,142.4491,6978.4209,4.6248,0.2188,1.0636,-0.0199,2400.0,2400.0,-0.6412,-1.8003,4.1359,-71.59 2019-06-03 15:39:51.240,142.4823,6978.5298,4.6248,0.2188,1.0432,0.1756,2400.0,2400.0,-0.6558,-1.8957,4.1465,-71.59 2019-06-03 15:39:51.260,142.4823,6978.4751,4.6248,0.2188,0.9726,-0.0316,2400.0,2400.0,-0.6558,-1.8957,4.1359,-71.59 2019-06-03 15:39:51.280,142.4325,6978.5298,4.6387,0.2181,1.2703,0.1503,2400.0,2400.0,-0.6412,-1.9315,4.1478,-71.5882 2019-06-03 15:39:51.300,142.4408,6978.4751,4.6537,0.2197,1.2326,0.1577,2400.0,2400.0,-0.6529,-1.9345,4.1346,-71.5865 2019-06-03 15:39:51.320,142.4408,6978.4482,4.6537,0.2197,0.9811,0.0233,2400.0,2400.0,-0.6412,-1.9315,4.1399,-71.5865 2019-06-03 15:39:51.340,142.3661,6978.5024,4.6537,0.2197,1.1623,0.164,2400.0,2400.0,-0.6646,-1.9405,4.1478,-71.5865 2019-06-03 15:39:51.360,142.3745,6978.5024,4.6643,0.2105,0.7895,-0.0049,2400.0,2400.0,-0.6529,-1.9017,4.1452,-71.5882 2019-06-03 15:39:51.380,142.308,6978.5024,4.6643,0.2105,1.3646,0.0913,2400.0,2400.0,-0.6412,-1.9643,4.1584,-71.5882 2019-06-03 15:39:51.400,142.3163,6978.4751,4.6794,0.1906,1.1775,0.1156,2400.0,2400.0,-0.6558,-1.9613,4.1359,-71.583 2019-06-03 15:39:51.420,142.3163,6978.4482,4.6811,0.1822,0.9212,0.0336,2400.0,2400.0,-0.6383,-1.8987,4.1386,-71.5848 2019-06-03 15:39:51.440,142.3745,6978.312,4.6811,0.1822,1.3561,0.1352,2400.0,2400.0,-0.6558,-1.9792,4.1492,-71.5848 2019-06-03 15:39:51.460,142.3745,6978.2847,4.6811,0.1822,0.7337,0.0746,2400.0,2400.0,-0.6529,-1.8957,4.1478,-71.5848 2019-06-03 15:39:51.480,142.308,6978.2573,4.6949,0.1704,1.3147,0.0417,2400.0,2400.0,-0.6617,-1.9166,4.1571,-71.5865 2019-06-03 15:39:51.500,142.3163,6978.2031,4.7052,0.1521,1.2211,0.0601,2400.0,2400.0,-0.6704,-1.9405,4.1452,-71.59 2019-06-03 15:39:51.520,142.2997,6978.2305,4.7052,0.1521,0.8642,0.1021,2400.0,2400.0,-0.65,-1.9107,4.1359,-71.59 2019-06-03 15:39:51.540,142.3578,6978.2847,4.7052,0.1521,1.2844,0.0867,2400.0,2400.0,-0.6617,-1.9583,4.1545,-71.59 2019-06-03 15:39:51.560,142.3661,6978.312,4.7103,0.1305,0.7718,0.078,2400.0,2400.0,-0.6646,-1.9166,4.1478,-71.5935 2019-06-03 15:39:51.580,142.3246,6978.2847,4.7182,0.111,1.2814,0.0242,2400.0,2400.0,-0.6675,-1.9226,4.1571,-71.5987 2019-06-03 15:39:51.600,142.308,6978.312,4.7274,0.1022,1.1745,0.0517,2400.0,2400.0,-0.6851,-1.9226,4.1425,-71.6005 2019-06-03 15:39:51.620,142.3163,6978.3662,4.7318,0.0947,0.8938,0.1199,2400.0,2400.0,-0.6646,-1.8749,4.1452,-71.6022 2019-06-03 15:39:51.640,142.3661,6978.3936,4.7318,0.0947,1.1978,0.0235,2400.0,2400.0,-0.6821,-1.8957,4.1492,-71.6022 2019-06-03 15:39:51.660,142.3661,6978.4209,4.7318,0.0947,0.8313,0.1482,2400.0,2400.0,-0.6675,-1.8808,4.1505,-71.6022 2019-06-03 15:39:51.680,142.308,6978.4751,4.7432,0.0712,1.1742,-0.0491,2400.0,2400.0,-0.6821,-1.8808,4.1425,-71.6075 2019-06-03 15:39:51.700,142.308,6978.4482,4.7503,0.0472,1.0921,-0.0226,2400.0,2400.0,-0.688,-1.8868,4.1412,-71.6127 2019-06-03 15:39:51.720,142.3163,6978.4482,4.7503,0.0472,0.9937,0.1558,2400.0,2400.0,-0.6909,-1.854,4.1399,-71.6127 2019-06-03 15:39:51.740,142.2332,6978.4209,4.7503,0.0472,1.0654,-0.0225,2400.0,2400.0,-0.6851,-1.8629,4.1478,-71.6127 2019-06-03 15:39:51.760,142.2415,6978.5298,4.7594,0.0224,1.0355,0.1537,2400.0,2400.0,-0.6821,-1.8301,4.1492,-71.618 2019-06-03 15:39:51.780,142.1749,6978.4751,4.7594,0.0224,1.0366,-0.0402,2400.0,2400.0,-0.688,-1.851,4.1399,-71.618 2019-06-03 15:39:51.800,142.1833,6978.5298,4.7748,-0.0155,0.9086,-0.0292,2400.0,2400.0,-0.6909,-1.8659,4.1386,-71.6197 2019-06-03 15:39:51.820,142.1833,6978.6113,4.7833,-0.0257,1.1553,0.1393,2400.0,2400.0,-0.6646,-1.8331,4.1346,-71.6232 2019-06-03 15:39:51.840,142.2332,6978.584,4.7833,-0.0257,0.9108,-0.0052,2400.0,2400.0,-0.6324,-1.86,4.1651,-71.6232 2019-06-03 15:39:51.860,142.2332,6978.5298,4.7833,-0.0257,1.2178,0.1494,2400.0,2400.0,-0.6383,-1.851,4.1425,-71.6232 2019-06-03 15:39:51.880,142.1749,6978.5024,4.7926,-0.0569,0.8409,-0.0338,2400.0,2400.0,-0.6237,-1.8152,4.1425,-71.6302 2019-06-03 15:39:51.900,142.1999,6978.4482,4.8017,-0.0862,0.8469,0.0427,2400.0,2400.0,-0.6441,-1.8361,4.1267,-71.6372 2019-06-03 15:39:51.920,142.1749,6978.4209,4.8017,-0.0862,1.2699,0.1073,2400.0,2400.0,-0.6032,-1.8361,4.1452,-71.6372 2019-06-03 15:39:51.940,142.2332,6978.4209,4.8017,-0.0862,0.7378,0.0462,2400.0,2400.0,-0.5974,-1.8361,4.1518,-71.6372 2019-06-03 15:39:51.960,142.2166,6978.4751,4.8142,-0.1132,1.2688,0.0869,2400.0,2400.0,-0.6003,-1.8361,4.1373,-71.6442 2019-06-03 15:39:51.980,142.1749,6978.4209,4.8142,-0.1132,0.8347,0.0579,2400.0,2400.0,-0.5828,-1.8301,4.1425,-71.6442 2019-06-03 15:39:52.000,142.1833,6978.3936,4.826,-0.1644,0.838,0.0861,2400.0,2400.0,-0.5944,-1.8361,4.1386,-71.632 2019-06-03 15:39:52.020,142.1833,6978.3662,4.8302,-0.1802,1.3103,0.0713,2400.0,2400.0,-0.5857,-1.8271,4.1412,-71.6337 2019-06-03 15:39:52.040,142.2415,6978.3394,4.8302,-0.1802,0.7082,0.113,2400.0,2400.0,-0.6061,-1.8331,4.1478,-71.6337 2019-06-03 15:39:52.060,142.2415,6978.312,4.8302,-0.1802,1.2533,0.054,2400.0,2400.0,-0.5974,-1.8301,4.132,-71.6337 2019-06-03 15:39:52.080,142.1749,6978.4209,4.8371,-0.2143,0.8254,0.1061,2400.0,2400.0,-0.5915,-1.8182,4.1386,-71.639 2019-06-03 15:39:52.100,142.1833,6978.3936,4.8469,-0.2455,0.8457,0.1023,2400.0,2400.0,-0.6003,-1.854,4.1452,-71.6442 2019-06-03 15:39:52.120,142.1666,6978.3936,4.8469,-0.2455,1.2049,0.0242,2400.0,2400.0,-0.5915,-1.8241,4.1425,-71.6442 2019-06-03 15:39:52.140,142.1166,6978.3936,4.8469,-0.2455,0.8979,0.142,2400.0,2400.0,-0.5944,-1.8331,4.1452,-71.6442 2019-06-03 15:39:52.160,142.1083,6978.4209,4.8568,-0.2743,1.1039,0.0066,2400.0,2400.0,-0.6061,-1.8301,4.1373,-71.6495 2019-06-03 15:39:52.180,142.0499,6978.4209,4.8568,-0.2743,0.9789,0.1447,2400.0,2400.0,-0.6237,-1.8271,4.1333,-71.6495 2019-06-03 15:39:52.200,142.0583,6978.4482,4.8674,-0.3238,0.9567,0.1537,2400.0,2400.0,-0.6383,-1.845,4.1465,-71.6355 2019-06-03 15:39:52.220,142.0499,6978.4482,4.8667,-0.3415,1.1117,0.021,2400.0,2400.0,-0.6383,-1.842,4.1399,-71.6372 2019-06-03 15:39:52.240,142.0916,6978.4482,4.8667,-0.3415,1.0558,0.1018,2400.0,2400.0,-0.6441,-1.8391,4.1531,-71.6372 2019-06-03 15:39:52.260,142.1083,6978.3936,4.8667,-0.3415,0.9397,0.0216,2400.0,2400.0,-0.6587,-1.8361,4.1492,-71.6372 2019-06-03 15:39:52.280,142.0583,6978.3662,4.8753,-0.3707,1.0059,0.1396,2400.0,2400.0,-0.6587,-1.8331,4.1359,-71.639 2019-06-03 15:39:52.300,142.0666,6978.2573,4.8854,-0.396,1.0155,0.1826,2400.0,2400.0,-0.6646,-1.8331,4.1399,-71.639 2019-06-03 15:39:52.320,142.0499,6978.2573,4.8854,-0.396,1.0525,-0.0098,2400.0,2400.0,-0.65,-1.8331,4.1399,-71.639 2019-06-03 15:39:52.340,142.1083,6978.312,4.8854,-0.396,1.1446,0.1302,2400.0,2400.0,-0.6558,-1.8361,4.1598,-71.639 2019-06-03 15:39:52.360,142.0916,6978.3662,4.8906,-0.4236,0.9574,0.0015,2400.0,2400.0,-0.6763,-1.8361,4.1333,-71.6372 2019-06-03 15:39:52.380,142.0583,6978.4209,4.8906,-0.4236,1.1191,0.1751,2400.0,2400.0,-0.6675,-1.8331,4.1425,-71.6372 2019-06-03 15:39:52.400,142.0499,6978.4209,4.8977,-0.4691,1.0924,0.2049,2340.0,2340.0,-0.6851,-1.8301,4.1439,-71.6285 2019-06-03 15:39:52.420,142.0583,6978.3662,4.894,-0.4897,0.9793,-0.0004,2340.0,2340.0,-0.6792,-1.8092,4.1386,-71.6302 2019-06-03 15:39:52.440,142.1,6978.3936,4.894,-0.4897,1.2215,0.1062,2340.0,2340.0,-0.7172,-1.8391,4.1425,-71.6302 2019-06-03 15:39:52.460,142.1166,6978.3936,4.894,-0.4897,0.9715,0.0218,2340.0,2340.0,-0.7201,-1.8301,4.1425,-71.6302 2019-06-03 15:39:52.480,142.0583,6978.4209,4.9012,-0.5185,1.1379,0.1314,2340.0,2340.0,-0.7289,-1.8212,4.1399,-71.6267 2019-06-03 15:39:52.500,142.0583,6978.3662,4.9072,-0.5477,1.2226,0.143,2340.0,2340.0,-0.7289,-1.8391,4.1518,-71.625 2019-06-03 15:39:52.520,142.0499,6978.3394,4.9072,-0.5477,0.8043,0.0214,2340.0,2340.0,-0.726,-1.8152,4.132,-71.625 2019-06-03 15:39:52.540,141.9748,6978.312,4.9072,-0.5477,1.1853,0.082,2340.0,2340.0,-0.7231,-1.8182,4.1439,-71.625 2019-06-03 15:39:52.560,141.9748,6978.4209,4.9095,-0.5762,0.8254,0.0537,2340.0,2340.0,-0.7289,-1.8212,4.1346,-71.6232 2019-06-03 15:39:52.580,141.9163,6978.3936,4.9095,-0.5762,1.2122,0.1159,2340.0,2340.0,-0.726,-1.8152,4.1425,-71.6232 2019-06-03 15:39:52.600,141.9247,6978.3662,4.9199,-0.6236,1.2396,0.1032,2340.0,2340.0,-0.7289,-1.8361,4.1518,-71.6162 2019-06-03 15:39:52.620,141.9163,6978.3662,4.9206,-0.6399,0.8376,0.0488,2340.0,2340.0,-0.726,-1.7943,4.1373,-71.6162 2019-06-03 15:39:52.640,141.9748,6978.3936,4.9206,-0.6399,1.183,0.0448,2340.0,2340.0,-0.726,-1.8182,4.1518,-71.6162 2019-06-03 15:39:52.660,141.9748,6978.3394,4.9206,-0.6399,0.9297,0.0822,2340.0,2340.0,-0.726,-1.8271,4.1465,-71.6162 2019-06-03 15:39:52.680,141.9079,6978.3394,4.9251,-0.6678,1.1468,0.0646,2340.0,2340.0,-0.726,-1.8182,4.1386,-71.6162 2019-06-03 15:39:52.700,141.933,6978.3394,4.9305,-0.6954,1.1442,0.0637,2340.0,2340.0,-0.7201,-1.8212,4.1439,-71.6145 2019-06-03 15:39:52.720,141.9247,6979.1563,4.9305,-0.6954,0.8428,0.1134,2340.0,2340.0,-0.6734,-1.8212,4.1425,-71.6145 2019-06-03 15:39:52.740,141.9748,6980.4629,4.9305,-0.6954,1.1779,-0.0046,2340.0,2340.0,-0.6587,-1.8212,4.1399,-71.6145 2019-06-03 15:39:52.760,141.9664,6981.416,4.9313,-0.7222,0.943,0.1076,2340.0,2340.0,-0.6529,-1.8331,4.1373,-71.6145 2019-06-03 15:39:52.780,141.933,6982.7227,4.9313,-0.7222,1.1594,0.033,2340.0,2340.0,-0.6354,-1.8241,4.1373,-71.6145 2019-06-03 15:39:52.800,141.9163,6983.6216,4.9402,-0.7575,1.1087,0.0473,2340.0,2340.0,-0.6412,-1.8271,4.1505,-71.6057 2019-06-03 15:39:52.820,141.933,6984.4927,4.9421,-0.7694,0.9393,0.1208,2340.0,2340.0,-0.6441,-1.8122,4.1333,-71.6057 2019-06-03 15:39:52.840,141.9832,6985.8267,4.9421,-0.7694,1.1668,0.0092,2340.0,2340.0,-0.6412,-1.8062,4.1425,-71.6057 2019-06-03 15:39:52.860,141.9748,6986.6982,4.9421,-0.7694,1.0525,0.1217,2340.0,2340.0,-0.6471,-1.8182,4.1412,-71.6057 2019-06-03 15:39:52.880,141.9163,6987.0791,4.9472,-0.7907,1.1191,0.0248,2340.0,2340.0,-0.6324,-1.8062,4.1452,-71.6057 2019-06-03 15:39:52.900,141.9247,6987.0249,4.9499,-0.8136,0.9367,0.0419,2340.0,2340.0,-0.6441,-1.8182,4.1465,-71.604 2019-06-03 15:39:52.920,141.9079,6987.0522,4.9499,-0.8136,1.1268,0.1271,2340.0,2340.0,-0.6383,-1.8152,4.1359,-71.604 2019-06-03 15:39:52.940,141.8494,6987.0522,4.9499,-0.8136,0.9671,0.0207,2340.0,2340.0,-0.6412,-1.8122,4.1373,-71.604 2019-06-03 15:39:52.960,141.841,6987.0791,4.9568,-0.8362,1.0602,0.1352,2340.0,2340.0,-0.6471,-1.8212,4.1478,-71.6022 2019-06-03 15:39:52.980,141.7908,6987.1064,4.9649,-0.8574,0.9452,0.0128,2340.0,2340.0,-0.6441,-1.8122,4.1386,-71.5673 2019-06-03 15:39:53.000,141.7991,6987.1064,4.965,-0.8725,0.8317,0.033,2340.0,2340.0,-0.6412,-1.8032,4.1425,-71.5673 2019-06-03 15:39:53.020,141.7991,6987.0791,4.9712,-0.8816,1.1387,0.1405,2340.0,2340.0,-0.6237,-1.8062,4.132,-71.5655 2019-06-03 15:39:53.040,141.8494,6987.0791,4.9712,-0.8816,0.9722,0.0237,2340.0,2340.0,-0.6061,-1.8032,4.1359,-71.5655 2019-06-03 15:39:53.060,141.8494,6987.0791,4.9712,-0.8816,1.0891,0.1239,2340.0,2340.0,-0.612,-1.8152,4.1373,-71.5655 2019-06-03 15:39:53.080,141.7908,6987.0249,4.9758,-0.9063,0.9619,0.025,2340.0,2340.0,-0.6032,-1.8092,4.1425,-71.5655 2019-06-03 15:39:53.100,141.7991,6986.916,4.983,-0.9325,0.9585,0.0504,2340.0,2340.0,-0.612,-1.8122,4.1425,-71.5638 2019-06-03 15:39:53.120,141.7824,6986.9976,4.983,-0.9325,1.1024,0.085,2340.0,2340.0,-0.612,-1.8122,4.1373,-71.5638 2019-06-03 15:39:53.140,141.7069,6987.0249,4.983,-0.9325,0.9238,0.0648,2340.0,2340.0,-0.6149,-1.8092,4.1412,-71.5638 2019-06-03 15:39:53.160,141.7237,6987.0791,4.9933,-0.9552,1.1668,0.0576,2340.0,2340.0,-0.6237,-1.8122,4.1425,-71.562 2019-06-03 15:39:53.180,141.665,6987.0791,4.9933,-0.9552,0.9741,0.0546,2340.0,2340.0,-0.612,-1.8122,4.1439,-71.562 2019-06-03 15:39:53.200,141.665,6987.0791,5.0047,-0.9958,0.9511,0.094,2340.0,2340.0,-0.6178,-1.8122,4.1412,-71.5498 2019-06-03 15:39:53.220,141.665,6987.0522,5.0084,-1.0092,1.0721,0.029,2340.0,2340.0,-0.6149,-1.8152,4.1359,-71.5498 2019-06-03 15:39:53.240,141.7069,6987.0522,5.0084,-1.0092,1.0702,0.1051,2340.0,2340.0,-0.5974,-1.8092,4.128,-71.5498 2019-06-03 15:39:53.260,141.7153,6987.0522,5.0084,-1.0092,1.1679,0.0538,2340.0,2340.0,-0.6003,-1.8152,4.1492,-71.5498 2019-06-03 15:39:53.280,141.6566,6987.0522,5.0161,-1.0378,0.9027,0.0865,2340.0,2340.0,-0.5944,-1.8092,4.1452,-71.5515 2019-06-03 15:39:53.300,141.6566,6986.9702,5.0261,-1.0577,1.0266,0.1174,2340.0,2340.0,-0.5974,-1.8122,4.1452,-71.5498 2019-06-03 15:39:53.320,141.6482,6987.0249,5.0261,-1.0577,1.0159,0.0118,2340.0,2340.0,-0.6208,-1.8092,4.1333,-71.5498 2019-06-03 15:39:53.340,141.7237,6987.0249,5.0261,-1.0577,1.0939,0.1489,2340.0,2340.0,-0.6149,-1.8122,4.1373,-71.5498 2019-06-03 15:39:53.360,141.7069,6987.0522,5.0349,-1.0776,1.1046,0.0131,2340.0,2340.0,-0.6266,-1.8152,4.1425,-71.5498 2019-06-03 15:39:53.380,141.6566,6987.0791,5.0349,-1.0776,0.9804,0.1146,2340.0,2340.0,-0.6032,-1.8062,4.1531,-71.5498 2019-06-03 15:39:53.400,141.665,6987.1338,5.0443,-1.111,1.1276,0.1176,2400.0,2400.0,-0.6149,-1.8062,4.1425,-71.5445 2019-06-03 15:39:53.420,141.665,6987.1064,5.0457,-1.124,1.0018,-0.012,2400.0,2400.0,-0.6032,-1.8122,4.1346,-71.5428 2019-06-03 15:39:53.440,141.7069,6987.1064,5.0457,-1.124,1.1242,0.1591,2400.0,2400.0,-0.574,-1.8122,4.1386,-71.5428 2019-06-03 15:39:53.460,141.7153,6987.1064,5.0457,-1.124,0.892,0.0278,2400.0,2400.0,-0.5798,-1.8152,4.1465,-71.5428 2019-06-03 15:39:53.480,141.6482,6987.0791,5.0544,-1.1423,1.0747,0.1134,2400.0,2400.0,-0.5798,-1.8062,4.1399,-71.541 2019-06-03 15:39:53.500,141.665,6987.0249,5.0605,-1.1615,1.1409,0.1204,2400.0,2400.0,-0.5886,-1.8092,4.1412,-71.5375 2019-06-03 15:39:53.520,141.6566,6986.9976,5.0605,-1.1615,0.9341,0.0281,2400.0,2400.0,-0.5944,-1.8212,4.1399,-71.5375 2019-06-03 15:39:53.540,141.7069,6987.0522,5.0605,-1.1615,1.1734,0.1226,2400.0,2400.0,-0.5857,-1.7943,4.1373,-71.5375 2019-06-03 15:39:53.560,141.7069,6987.0791,5.0662,-1.1862,0.8535,0.0588,2400.0,2400.0,-0.5915,-1.8032,4.1412,-71.534 2019-06-03 15:39:53.580,141.6566,6987.1064,5.0662,-1.1862,1.1538,0.0929,2400.0,2400.0,-0.5798,-1.8032,4.1518,-71.534 2019-06-03 15:39:53.600,141.6398,6987.1338,5.0768,-1.2208,1.1926,0.0565,2400.0,2400.0,-0.5944,-1.8092,4.1386,-71.5201 2019-06-03 15:39:53.620,141.665,6987.1338,5.0804,-1.236,0.8794,0.0981,2400.0,2400.0,-0.5915,-1.8092,4.1373,-71.5201 2019-06-03 15:39:53.640,141.7069,6987.1064,5.0804,-1.236,1.176,0.0659,2400.0,2400.0,-0.5886,-1.8062,4.1306,-71.5201 2019-06-03 15:39:53.660,141.7069,6987.1064,5.0804,-1.236,0.9097,0.107,2400.0,2400.0,-0.5798,-1.8182,4.1558,-71.5201 2019-06-03 15:39:53.680,141.665,6987.1064,5.0886,-1.2525,1.1279,0.0403,2400.0,2400.0,-0.5886,-1.8032,4.1346,-71.5148 2019-06-03 15:39:53.700,141.6566,6987.0522,5.0935,-1.2739,1.1257,0.0437,2400.0,2400.0,-0.5769,-1.8032,4.1452,-71.5113 2019-06-03 15:39:53.720,141.6482,6987.0522,5.0935,-1.2739,0.95,0.1046,2400.0,2400.0,-0.5915,-1.8182,4.1359,-71.5113 2019-06-03 15:39:53.740,141.5894,6987.1338,5.0935,-1.2739,1.2762,0.0355,2400.0,2400.0,-0.5769,-1.8122,4.1425,-71.5113 2019-06-03 15:39:53.760,141.5726,6987.1885,5.0958,-1.2934,0.9108,0.1321,2400.0,2400.0,-0.5886,-1.8182,4.1399,-71.5061 2019-06-03 15:39:53.780,141.5221,6987.188,5.0958,-1.2934,1.1605,0.0134,2400.0,2400.0,-0.5828,-1.8032,4.1412,-71.5061 2019-06-03 15:39:53.800,141.5221,6987.2153,5.107,-1.324,1.1035,-0.0064,2400.0,2400.0,-0.6003,-1.8062,4.1359,-71.4903 2019-06-03 15:39:53.820,141.5221,6987.2427,5.1121,-1.3323,0.9719,0.1372,2400.0,2400.0,-0.5944,-1.8241,4.1386,-71.4868 2019-06-03 15:39:53.840,141.581,6987.27,5.1121,-1.3323,1.21,0.0006,2400.0,2400.0,-0.5828,-1.8152,4.1478,-71.4868 2019-06-03 15:39:53.860,141.581,6987.2427,5.1121,-1.3323,0.9622,0.1616,2400.0,2400.0,-0.5828,-1.8122,4.1492,-71.4868 2019-06-03 15:39:53.880,141.5221,6987.2153,5.1178,-1.3513,1.1161,0.0065,2400.0,2400.0,-0.5798,-1.8092,4.1306,-71.4798 2019-06-03 15:39:53.900,141.5305,6987.0791,5.1175,-1.3695,1.0602,0.0125,2400.0,2400.0,-0.5798,-1.8122,4.1425,-71.4728 2019-06-03 15:39:53.920,141.5137,6987.1064,5.1175,-1.3695,1.0281,0.1302,2400.0,2400.0,-0.5857,-1.8182,4.1373,-71.4728 2019-06-03 15:39:53.940,141.5726,6987.1338,5.1175,-1.3695,1.0022,-0.0058,2400.0,2400.0,-0.5828,-1.8122,4.1425,-71.4728 2019-06-03 15:39:53.960,141.5726,6987.1338,5.1225,-1.3878,1.0673,0.1855,2400.0,2400.0,-0.5857,-1.8152,4.1439,-71.4676 2019-06-03 15:39:53.980,141.5221,6987.1338,5.1225,-1.3878,0.9593,-0.0101,2400.0,2400.0,-0.5857,-1.8122,4.132,-71.4676 2019-06-03 15:39:54.000,141.5221,6987.1338,5.1306,-1.41,0.9667,-0.0131,2400.0,2400.0,-0.5828,-1.8092,4.1373,-71.4326 2019-06-03 15:39:54.020,141.5473,6987.1338,5.1377,-1.4146,1.0595,0.1613,2400.0,2400.0,-0.5857,-1.8152,4.1439,-71.4291 2019-06-03 15:39:54.040,141.581,6987.1338,5.1377,-1.4146,1.098,0.0071,2400.0,2400.0,-0.5886,-1.8062,4.1439,-71.4291 2019-06-03 15:39:54.060,141.581,6987.1338,5.1377,-1.4146,1.149,0.1547,2400.0,2400.0,-0.6032,-1.8122,4.1439,-71.4291 2019-06-03 15:39:54.080,141.5305,6987.1064,5.1404,-1.4304,0.7718,0.0207,2400.0,2400.0,-0.6149,-1.8092,4.1373,-71.4274 2019-06-03 15:39:54.100,141.5305,6987.0522,5.1442,-1.4442,0.9297,0.0481,2400.0,2400.0,-0.6178,-1.8092,4.1425,-71.4256 2019-06-03 15:39:54.120,141.5221,6987.0522,5.1442,-1.4442,1.132,0.0893,2400.0,2400.0,-0.6266,-1.8241,4.1452,-71.4256 2019-06-03 15:39:54.140,141.4379,6987.1338,5.1442,-1.4442,0.8724,0.0704,2400.0,2400.0,-0.6295,-1.8152,4.1492,-71.4256 2019-06-03 15:39:54.160,141.4379,6987.1611,5.15,-1.4537,1.1342,0.0941,2400.0,2400.0,-0.6266,-1.8122,4.1412,-71.4239 2019-06-03 15:39:54.180,141.3958,6987.1064,5.15,-1.4537,0.8753,0.0912,2400.0,2400.0,-0.6208,-1.8092,4.1399,-71.4239 2019-06-03 15:39:54.200,141.3958,6987.1064,5.1575,-1.4729,0.8742,0.1053,2400.0,2400.0,-0.6178,-1.8092,4.1293,-71.4274 2019-06-03 15:39:54.220,141.3958,6987.0522,5.159,-1.4809,1.2026,0.0451,2400.0,2400.0,-0.6178,-1.8182,4.1452,-71.4291 2019-06-03 15:39:54.240,141.4463,6987.0791,5.159,-1.4809,0.9944,0.0957,2400.0,2400.0,-0.6208,-1.8003,4.1425,-71.4291 2019-06-03 15:39:54.260,141.4548,6987.1064,5.159,-1.4809,1.1442,0.0392,2400.0,2400.0,-0.6149,-1.842,4.1452,-71.4291 2019-06-03 15:39:54.280,141.3873,6987.1338,5.1621,-1.4955,0.9641,0.1315,2400.0,2400.0,-0.6178,-1.8032,4.132,-71.4309 2019-06-03 15:39:54.300,141.3958,6987.1338,5.169,-1.5046,0.9948,0.1665,2400.0,2400.0,-0.6091,-1.7913,4.1412,-71.4344 2019-06-03 15:39:54.320,141.3873,6987.9507,5.169,-1.5046,1.0358,-0.0027,2400.0,2400.0,-0.6237,-1.8032,4.1505,-71.4344 2019-06-03 15:39:54.340,141.4379,6989.1489,5.169,-1.5046,0.9611,0.1326,2400.0,2400.0,-0.6237,-1.7973,4.1452,-71.4344 2019-06-03 15:39:54.360,141.4379,6989.9663,5.1729,-1.5176,1.132,-0.0001,2400.0,2400.0,-0.6266,-1.8301,4.1412,-71.4414 2019-06-03 15:39:54.380,141.3958,6991.2461,5.1749,-1.5337,1.0872,0.1307,2400.0,2400.0,-0.6295,-1.8062,4.12,-71.4501 2019-06-03 15:39:54.400,141.3873,6992.0356,5.1793,-1.5382,1.0861,0.1442,2400.0,2400.0,-0.6178,-1.8062,4.1452,-71.4536 2019-06-03 15:39:54.420,141.3958,6992.771,5.178,-1.5504,0.9345,0.0126,2400.0,2400.0,-0.6266,-1.8301,4.1425,-71.4571 2019-06-03 15:39:54.440,141.4463,6993.9424,5.178,-1.5504,0.9955,0.0921,2400.0,2400.0,-0.612,-1.7883,4.1558,-71.4571 2019-06-03 15:39:54.460,141.4463,6994.6777,5.178,-1.5504,0.8757,0.0305,2400.0,2400.0,-0.6266,-1.8062,4.1386,-71.4571 2019-06-03 15:39:54.480,141.3789,6994.9771,5.1832,-1.5607,1.1405,0.0987,2400.0,2400.0,-0.6178,-1.8241,4.132,-71.4659 2019-06-03 15:39:54.500,141.3958,6994.9497,5.1892,-1.5767,1.186,0.12,2400.0,2400.0,-0.6003,-1.8152,4.1346,-71.4746 2019-06-03 15:39:54.520,141.3873,6994.9497,5.1892,-1.5767,0.9696,0.0568,2400.0,2400.0,-0.6003,-1.8241,4.1425,-71.4746 2019-06-03 15:39:54.540,141.4379,6995.0044,5.1892,-1.5767,1.1301,0.0915,2400.0,2400.0,-0.5915,-1.8122,4.1439,-71.4746 2019-06-03 15:39:54.560,141.4379,6995.0859,5.1907,-1.5978,0.8598,0.0385,2400.0,2400.0,-0.6032,-1.8212,4.1518,-71.4868 2019-06-03 15:39:54.580,141.3873,6995.1406,5.1907,-1.5978,1.1424,0.0783,2400.0,2400.0,-0.6441,-1.8271,4.1306,-71.4868 2019-06-03 15:39:54.600,141.3958,6995.1133,5.1994,-1.6205,1.2056,0.0827,2400.0,2400.0,-0.6324,-1.8062,4.1425,-71.4973 2019-06-03 15:39:54.620,141.3873,6995.1133,5.2021,-1.6299,0.8454,0.0986,2400.0,2400.0,-0.6354,-1.8032,4.1492,-71.5043 2019-06-03 15:39:54.640,141.4295,6995.1133,5.2021,-1.6299,1.1068,0.0436,2400.0,2400.0,-0.6295,-1.8032,4.1346,-71.5043 2019-06-03 15:39:54.660,141.4548,6995.0586,5.2021,-1.6299,0.906,0.0799,2400.0,2400.0,-0.612,-1.8032,4.1505,-71.5043 2019-06-03 15:39:54.680,141.3873,6995.1133,5.2064,-1.6483,1.149,0.0424,2400.0,2400.0,-0.6178,-1.8241,4.1333,-71.5201 2019-06-03 15:39:54.700,141.4042,6995.0044,5.208,-1.6665,1.2973,0.0058,2400.0,2400.0,-0.5944,-1.8152,4.1412,-71.534 2019-06-03 15:39:54.720,141.3873,6994.9771,5.208,-1.6665,0.9131,0.1457,2400.0,2400.0,-0.612,-1.8212,4.1492,-71.534 2019-06-03 15:39:54.740,141.4379,6994.9771,5.208,-1.6665,1.1734,0.0169,2400.0,2400.0,-0.6208,-1.8152,4.1359,-71.534 2019-06-03 15:39:54.760,141.4379,6995.0044,5.2098,-1.6863,1.0003,0.1231,2400.0,2400.0,-0.6266,-1.8152,4.1465,-71.5498 2019-06-03 15:39:54.780,141.3958,6995.0586,5.2098,-1.6863,1.0532,0.0081,2400.0,2400.0,-0.6266,-1.8122,4.1359,-71.5498 2019-06-03 15:39:54.800,141.3789,6995.0859,5.2179,-1.7152,1.0895,-0.0084,2400.0,2400.0,-0.612,-1.8032,4.1425,-71.5725 2019-06-03 15:39:54.820,141.3873,6995.0859,5.2248,-1.7228,1.0118,0.1865,2400.0,2400.0,-0.6149,-1.8271,4.1452,-71.5813 2019-06-03 15:39:54.840,141.4379,6995.0859,5.2248,-1.7228,1.0602,-0.0034,2400.0,2400.0,-0.6149,-1.8152,4.1373,-71.5813 2019-06-03 15:39:54.860,141.4632,6994.9771,5.2248,-1.7228,1.0939,0.1499,2400.0,2400.0,-0.6149,-1.8122,4.1386,-71.5813 2019-06-03 15:39:54.880,141.3873,6994.9771,5.2256,-1.7451,0.9005,0.0335,2400.0,2400.0,-0.6208,-1.8122,4.128,-71.5987 2019-06-03 15:39:54.900,141.4042,6994.9229,5.2264,-1.7658,0.9149,-0.0039,2400.0,2400.0,-0.6091,-1.8122,4.1333,-71.6162 2019-06-03 15:39:54.920,141.3789,6994.9229,5.2264,-1.7658,1.1054,0.1686,2400.0,2400.0,-0.612,-1.8152,4.1465,-71.6162 2019-06-03 15:39:54.940,141.3199,6994.8955,5.2264,-1.7658,0.8428,0.0076,2400.0,2400.0,-0.6295,-1.8182,4.1425,-71.6162 2019-06-03 15:39:54.960,141.3114,6994.9229,5.2341,-1.7844,1.2507,0.1137,2400.0,2400.0,-0.6266,-1.8152,4.1465,-71.632 2019-06-03 15:39:54.980,141.2607,6994.9229,5.2341,-1.7844,0.9023,0.0587,2400.0,2400.0,-0.6324,-1.8122,4.1346,-71.632 2019-06-03 15:39:55.000,141.2607,6994.9497,5.2406,-1.8174,0.869,0.0357,2400.0,2400.0,-0.6237,-1.8122,4.1346,-71.6267 2019-06-03 15:39:55.020,141.2607,6994.9497,5.2465,-1.828,1.2074,0.0919,2400.0,2400.0,-0.6149,-1.8152,4.1373,-71.6355 2019-06-03 15:39:55.040,141.3114,6995.0044,5.2465,-1.828,0.8095,0.0574,2400.0,2400.0,-0.6061,-1.8152,4.1373,-71.6355 2019-06-03 15:39:55.060,141.3199,6995.0044,5.2465,-1.828,1.233,0.0614,2400.0,2400.0,-0.6032,-1.8092,4.1412,-71.6355 2019-06-03 15:39:55.080,141.2607,6995.0044,5.2493,-1.8483,0.8443,0.1058,2400.0,2400.0,-0.6237,-1.8152,4.1333,-71.6512 2019-06-03 15:39:55.100,141.2692,6994.9771,5.2558,-1.8726,0.8838,0.1015,2400.0,2400.0,-0.6178,-1.7734,4.1359,-71.6669 2019-06-03 15:39:55.120,141.2607,6994.9497,5.2558,-1.8726,1.22,0.0323,2400.0,2400.0,-0.612,-1.8212,4.1531,-71.6669 2019-06-03 15:39:55.140,141.1762,6994.9497,5.2558,-1.8726,0.8065,0.1286,2400.0,2400.0,-0.6061,-1.8241,4.1425,-71.6669 2019-06-03 15:39:55.160,141.1762,6994.9771,5.265,-1.8981,1.1191,0.0025,2400.0,2400.0,-0.5974,-1.8182,4.1333,-71.6827 2019-06-03 15:39:55.180,141.1339,6995.0044,5.265,-1.8981,0.9815,0.1414,2400.0,2400.0,-0.6003,-1.8152,4.1373,-71.6827 2019-06-03 15:39:55.200,141.1254,6995.0586,5.2698,-1.9413,0.9597,0.135,2400.0,2400.0,-0.6061,-1.8152,4.1373,-71.6897 2019-06-03 15:39:55.220,141.1339,6995.0317,5.2703,-1.9585,1.1139,-0.0018,2400.0,2400.0,-0.6149,-1.8152,4.1518,-71.6967 2019-06-03 15:39:55.240,141.1931,6995.0317,5.2703,-1.9585,1.0011,0.1648,2400.0,2400.0,-0.6295,-1.8122,4.1386,-71.6967 2019-06-03 15:39:55.260,141.1846,6995.0044,5.2703,-1.9585,1.0188,-0.0129,2400.0,2400.0,-0.6237,-1.7973,4.1373,-71.6967 2019-06-03 15:39:55.280,141.1254,6994.9771,5.2767,-1.9893,1.0369,0.1727,2400.0,2400.0,-0.6178,-1.8032,4.132,-71.7141 2019-06-03 15:39:55.300,141.1339,6994.9229,5.2823,-2.0196,1.024,0.1326,2400.0,2400.0,-0.5974,-1.8032,4.1399,-71.7299 2019-06-03 15:39:55.320,141.1169,6994.9497,5.2823,-2.0196,0.899,0.0049,2400.0,2400.0,-0.5886,-1.7973,4.1439,-71.7299 2019-06-03 15:39:55.340,141.0406,6994.9229,5.2823,-2.0196,1.1253,0.1439,2400.0,2400.0,-0.5857,-1.8122,4.132,-71.7299 2019-06-03 15:39:55.360,141.0576,6994.9771,5.2872,-2.0521,0.9327,0.0372,2400.0,2400.0,-0.5857,-1.8122,4.1359,-71.7474 2019-06-03 15:39:55.380,140.9898,6995.0044,5.2872,-2.0521,1.0906,0.1348,2400.0,2400.0,-0.5974,-1.8122,4.1346,-71.7474 2019-06-03 15:39:55.400,141.0067,6994.9771,5.295,-2.0975,1.1742,0.0964,2340.0,2340.0,-0.5915,-1.8092,4.1465,-71.7649 2019-06-03 15:39:55.420,141.0067,6994.9229,5.2962,-2.1148,0.8713,0.0311,2340.0,2340.0,-0.5944,-1.8152,4.1452,-71.7718 2019-06-03 15:39:55.440,141.0491,6995.0044,5.2962,-2.1148,1.1819,0.1069,2340.0,2340.0,-0.6149,-1.8092,4.1293,-71.7718 2019-06-03 15:39:55.460,141.0576,6994.9771,5.2962,-2.1148,0.8716,0.0616,2340.0,2340.0,-0.6003,-1.8062,4.1452,-71.7718 2019-06-03 15:39:55.480,140.9898,6995.0044,5.3036,-2.1427,1.0717,0.0564,2340.0,2340.0,-0.6003,-1.8241,4.1399,-71.7876 2019-06-03 15:39:55.500,140.9982,6994.9771,5.3057,-2.1787,1.1102,0.0244,2340.0,2340.0,-0.5886,-1.7823,4.1333,-71.8051 2019-06-03 15:39:55.520,140.9898,6995.0317,5.3057,-2.1787,0.7929,0.1178,2340.0,2340.0,-0.5886,-1.8152,4.1412,-71.8051 2019-06-03 15:39:55.540,140.9218,6994.9497,5.3057,-2.1787,1.1594,0.0113,2340.0,2340.0,-0.5828,-1.8301,4.1267,-71.8051 2019-06-03 15:39:55.560,140.9218,6994.9771,5.31,-2.2122,0.909,0.1482,2340.0,2340.0,-0.5857,-1.7883,4.1439,-71.8208 2019-06-03 15:39:55.580,140.8623,6995.0586,5.31,-2.2122,1.1224,0.0114,2340.0,2340.0,-0.5915,-1.8122,4.1412,-71.8208 2019-06-03 15:39:55.600,140.8538,6995.0859,5.3171,-2.2597,1.2178,-0.0085,2340.0,2340.0,-0.5798,-1.8062,4.1399,-71.8435 2019-06-03 15:39:55.620,140.8538,6995.0586,5.3224,-2.2749,0.9027,0.1316,2340.0,2340.0,-0.5886,-1.8062,4.1373,-71.8523 2019-06-03 15:39:55.640,140.9218,6995.0586,5.3224,-2.2749,1.0728,-0.0064,2340.0,2340.0,-0.5798,-1.8032,4.1253,-71.8523 2019-06-03 15:39:55.660,140.9218,6994.9771,5.3224,-2.2749,1.0233,0.1663,2340.0,2340.0,-0.574,-1.8032,4.1412,-71.8523 2019-06-03 15:39:55.680,140.8623,6994.8682,5.3269,-2.3085,1.0728,-0.0072,2340.0,2340.0,-0.5711,-1.8062,4.1452,-71.8698 2019-06-03 15:39:55.700,140.8793,6994.8135,5.3269,-2.3443,0.9671,0.0058,2340.0,2340.0,-0.5798,-1.8122,4.1346,-71.8873 2019-06-03 15:39:55.720,140.8538,6994.7866,5.3269,-2.3443,1.2078,0.1406,2340.0,2340.0,-0.574,-1.8092,4.1452,-71.8873 2019-06-03 15:39:55.740,140.7857,6994.8408,5.3269,-2.3443,0.8912,0.0224,2340.0,2340.0,-0.6178,-1.8122,4.1227,-71.8873 2019-06-03 15:39:55.760,140.7857,6994.9229,5.333,-2.3755,1.1253,0.1545,2340.0,2340.0,-0.5886,-1.8062,4.1492,-71.9047 2019-06-03 15:39:55.780,140.7261,6994.9497,5.333,-2.3755,0.8576,0.0261,2340.0,2340.0,-0.6032,-1.8092,4.1452,-71.9047 2019-06-03 15:39:55.800,140.7346,6994.9229,5.3378,-2.4241,0.8291,0.0229,2340.0,2340.0,-0.5944,-1.8032,4.1293,-71.9222 2019-06-03 15:39:55.820,140.7431,6994.8955,5.3447,-2.4369,1.2263,0.0982,2340.0,2340.0,-0.5857,-1.8092,4.1346,-71.931 2019-06-03 15:39:55.840,140.7857,6994.8682,5.3447,-2.4369,0.7991,0.0912,2340.0,2340.0,-0.5564,-1.8122,4.132,-71.931 2019-06-03 15:39:55.860,140.7943,6994.8408,5.3447,-2.4369,1.3069,0.046,2340.0,2340.0,-0.5272,-1.8062,4.1425,-71.931 2019-06-03 15:39:55.880,140.7346,6994.8955,5.3441,-2.4699,0.7884,0.1417,2340.0,2340.0,-0.5301,-1.8122,4.1386,-71.9467 2019-06-03 15:39:55.900,140.7261,6994.9497,5.3508,-2.5001,0.7577,0.1121,2340.0,2340.0,-0.5331,-1.8062,4.1253,-71.9624 2019-06-03 15:39:55.920,140.7261,6995.8486,5.3508,-2.5001,1.264,-0.01,2340.0,2340.0,-0.536,-1.8092,4.1333,-71.9624 2019-06-03 15:39:55.940,140.6494,6997.2109,5.3508,-2.5001,0.8428,0.1594,2340.0,2340.0,-0.5184,-1.8092,4.1399,-71.9624 2019-06-03 15:39:55.960,140.6579,6998.0278,5.36,-2.5278,1.2478,-0.0244,2340.0,2340.0,-0.4775,-1.8062,4.1386,-71.9782 2019-06-03 15:39:55.980,140.6067,6999.417,5.36,-2.5278,0.8598,0.1853,2340.0,2340.0,-0.4775,-1.8092,4.1425,-71.9782 2019-06-03 15:39:56.000,140.5896,7000.3433,5.3675,-2.5715,0.9412,0.1458,2340.0,2340.0,-0.4951,-1.8092,4.1187,-71.9764 2019-06-03 15:39:56.020,140.5981,7001.2695,5.3649,-2.585,1.0854,-0.0317,2340.0,2340.0,-0.4775,-1.8062,4.1373,-71.9834 2019-06-03 15:39:56.040,140.6494,7002.6313,5.3649,-2.585,0.9667,0.1763,2340.0,2340.0,-0.4571,-1.8062,4.1293,-71.9834 2019-06-03 15:39:56.060,140.6579,7003.4761,5.3649,-2.585,1.0203,-0.032,2340.0,2340.0,-0.3811,-1.7794,4.1492,-71.9834 2019-06-03 15:39:56.080,140.5981,7003.7754,5.3702,-2.6079,1.1235,0.2094,2340.0,2340.0,-0.3928,-1.8241,4.132,-71.9974 2019-06-03 15:39:56.100,140.6152,7003.6123,5.3779,-2.6277,1.2526,0.189,2340.0,2340.0,-0.3898,-1.8062,4.1359,-72.0079 2019-06-03 15:39:56.120,140.5896,7003.5576,5.3779,-2.6277,0.831,0.0207,2340.0,2340.0,-0.4308,-1.8032,4.1293,-72.0079 2019-06-03 15:39:56.140,140.6494,7003.6123,5.3779,-2.6277,1.2833,0.1173,2340.0,2340.0,-0.4512,-1.8062,4.1399,-72.0079 2019-06-03 15:39:56.160,140.6408,7003.6938,5.3775,-2.6504,0.8502,0.0284,2340.0,2340.0,-0.4804,-1.7943,4.1399,-72.0201 2019-06-03 15:39:56.180,140.5896,7003.7485,5.3775,-2.6504,1.3587,0.0902,2340.0,2340.0,-0.5769,-1.8092,4.1452,-72.0201 2019-06-03 15:39:56.200,140.5896,7003.7754,5.3799,-2.6811,1.2955,0.0702,2340.0,2340.0,-0.6646,-1.8032,4.1267,-72.0289 2019-06-03 15:39:56.220,140.6152,7003.7485,5.3787,-2.692,0.6893,0.1156,2340.0,2340.0,-0.7201,-1.7973,4.1478,-72.0306 2019-06-03 15:39:56.240,140.6494,7003.7212,5.3787,-2.692,1.3546,0.0516,2340.0,2340.0,-0.7844,-1.8152,4.1465,-72.0306 2019-06-03 15:39:56.260,140.6579,7003.7212,5.3787,-2.692,0.7241,0.0896,2340.0,2340.0,-0.8517,-1.8092,4.1465,-72.0306 2019-06-03 15:39:56.280,140.5981,7003.6938,5.3799,-2.7119,1.2459,0.0149,2340.0,2340.0,-0.9364,-1.8182,4.1465,-72.0376 2019-06-03 15:39:56.300,140.5981,7003.6392,5.3771,-2.7317,1.1283,0.0075,2340.0,2340.0,-1.0563,-1.8182,4.1373,-72.0446 2019-06-03 15:39:56.320,140.5896,7003.6392,5.3771,-2.7317,0.8494,0.1493,2340.0,2340.0,-1.1586,-1.8152,4.1465,-72.0446 2019-06-03 15:39:56.340,140.5212,7003.6123,5.3771,-2.7317,1.1394,-0.0225,2340.0,2340.0,-1.2901,-1.8212,4.1425,-72.0446 2019-06-03 15:39:56.360,140.5127,7003.6123,5.372,-2.7537,0.9523,0.1583,2340.0,2340.0,-1.3573,-1.7973,4.1518,-72.0534 2019-06-03 15:39:56.380,140.4613,7003.6123,5.372,-2.7537,0.9952,-0.0506,2340.0,2340.0,-1.4713,-1.8182,4.1425,-72.0534 2019-06-03 15:39:56.400,140.4699,7003.5576,5.3703,-2.7761,0.8909,-0.0424,2400.0,2400.0,-1.521,-1.8212,4.1386,-72.0778 2019-06-03 15:39:56.420,140.4613,7003.5576,5.3748,-2.7798,1.1712,0.2034,2400.0,2400.0,-1.5473,-1.8122,4.1425,-72.0848 2019-06-03 15:39:56.440,140.5212,7003.6938,5.3748,-2.7798,0.8779,-0.0281,2400.0,2400.0,-1.5649,-1.8152,4.1478,-72.0848 2019-06-03 15:39:56.460,140.5127,7003.6938,5.3748,-2.7798,1.1091,0.1633,2400.0,2400.0,-1.562,-1.8122,4.1452,-72.0848 2019-06-03 15:39:56.480,140.4613,7003.6665,5.3679,-2.7982,0.7733,-0.0079,2400.0,2400.0,-1.5649,-1.8122,4.1492,-72.1023 2019-06-03 15:39:56.500,140.4699,7003.585,5.3634,-2.8153,0.8047,0.0415,2400.0,2400.0,-1.5649,-1.8122,4.1306,-72.1233 2019-06-03 15:39:56.520,140.4613,7003.585,5.3634,-2.8153,1.274,0.1172,2400.0,2400.0,-1.521,-1.8152,4.1465,-72.1233 2019-06-03 15:39:56.540,140.5212,7003.6392,5.3634,-2.8153,0.7562,0.0778,2400.0,2400.0,-1.5064,-1.8122,4.1478,-72.1233 2019-06-03 15:39:56.560,140.5127,7003.6665,5.3647,-2.8218,1.2847,0.0674,2400.0,2400.0,-1.4597,-1.8092,4.1412,-72.146 2019-06-03 15:39:56.580,140.4613,7003.6938,5.3647,-2.8218,0.7259,0.0914,2400.0,2400.0,-1.4217,-1.8152,4.1373,-72.146 2019-06-03 15:39:56.600,140.4528,7003.6665,5.3608,-2.8415,0.8043,0.117,2400.0,2400.0,-1.3281,-1.8152,4.1386,-72.1827 2019-06-03 15:39:56.620,140.4699,7003.6392,5.3614,-2.8443,1.2688,0.0238,2400.0,2400.0,-1.1469,-1.8152,4.1478,-72.1985 2019-06-03 15:39:56.640,140.5041,7003.6665,5.3614,-2.8443,0.7592,0.1524,2400.0,2400.0,-0.9394,-1.8182,4.1452,-72.1985 2019-06-03 15:39:56.660,140.5212,7003.6392,5.3614,-2.8443,1.2844,0.0076,2400.0,2400.0,-0.6792,-1.8092,4.132,-72.1985 2019-06-03 15:39:56.680,140.4613,7003.6665,5.3577,-2.8564,0.858,0.124,2400.0,2400.0,-0.4161,-1.8003,4.132,-72.2317 2019-06-03 15:39:56.700,140.4613,7003.585,5.3628,-2.8646,0.9216,0.1639,2400.0,2400.0,-0.1911,-1.8032,4.128,-72.2684 2019-06-03 15:39:56.720,140.4528,7003.6392,5.3628,-2.8646,1.1749,-0.0272,2400.0,2400.0,0.1071,-1.8032,4.1386,-72.2684 2019-06-03 15:39:56.740,140.5127,7003.8027,5.3628,-2.8646,0.9933,0.1965,2400.0,2400.0,0.2854,-1.8003,4.1306,-72.2684 2019-06-03 15:39:56.760,140.5041,7003.8574,5.3662,-2.8791,1.0743,-0.0087,2400.0,2400.0,0.4345,-1.7943,4.124,-72.3017 2019-06-03 15:39:56.780,140.4613,7003.8574,5.3662,-2.8791,1.1172,0.1557,2400.0,2400.0,0.4549,-1.7913,4.124,-72.3017 2019-06-03 15:39:56.800,140.4613,7003.9116,5.3693,-2.9092,1.0088,0.1736,2400.0,2400.0,0.4578,-1.8182,4.1333,-72.3524 2019-06-03 15:39:56.820,140.4613,7003.9116,5.367,-2.9217,1.0628,-0.0421,2400.0,2400.0,0.414,-1.8092,4.132,-72.3646 2019-06-03 15:39:56.840,140.5127,7003.9663,5.367,-2.9217,1.2318,0.1969,2400.0,2400.0,0.3321,-1.8092,4.1333,-72.3646 2019-06-03 15:39:56.860,140.5127,7003.9937,5.367,-2.9217,0.7784,-0.0282,2400.0,2400.0,0.2152,-1.8122,4.1267,-72.3646 2019-06-03 15:39:56.880,140.4528,7004.0205,5.3758,-2.9435,1.2866,0.1637,2400.0,2400.0,0.0837,-1.8032,4.1359,-72.3856 2019-06-03 15:39:56.900,140.487,7003.939,5.381,-2.9663,1.1912,0.1221,2400.0,2400.0,-0.0215,-1.8062,4.1386,-72.4013 2019-06-03 15:39:56.920,140.4528,7003.8027,5.381,-2.9663,0.7973,0.0068,2400.0,2400.0,-0.156,-1.8062,4.1359,-72.4013 2019-06-03 15:39:56.940,140.5212,7003.7754,5.381,-2.9663,1.2918,0.1052,2400.0,2400.0,-0.3255,-1.8062,4.1373,-72.4013 2019-06-03 15:39:56.960,140.5127,7003.7754,5.3801,-2.9949,0.7211,0.0578,2400.0,2400.0,-0.5155,-1.8003,4.132,-72.4153 2019-06-03 15:39:56.980,140.4613,7003.7212,5.3801,-2.9949,1.2714,0.0526,2400.0,2400.0,-0.6763,-1.8032,4.1465,-72.4153 2019-06-03 15:39:57.000,140.4528,7003.7485,5.3892,-3.0279,1.166,0.0588,2400.0,2400.0,-0.8224,-1.8032,4.1412,-72.4136 2019-06-03 15:39:57.020,140.4613,7003.6665,5.3896,-3.0417,0.7189,0.1071,2400.0,2400.0,-0.9569,-1.8003,4.1425,-72.4188 2019-06-03 15:39:57.040,140.5127,7003.5576,5.3896,-3.0417,1.3247,-0.0065,2400.0,2400.0,-1.1323,-1.8032,4.1386,-72.4188 2019-06-03 15:39:57.060,140.5212,7003.5029,5.3896,-3.0417,0.8128,0.1431,2400.0,2400.0,-1.2492,-1.8003,4.1478,-72.4188 2019-06-03 15:39:57.080,140.4613,7003.5303,5.3933,-3.0642,1.179,-0.0095,2400.0,2400.0,-1.3077,-1.8003,4.1518,-72.431 2019-06-03 15:39:57.100,140.4699,7003.4761,5.3918,-3.0874,1.1242,-0.0075,2400.0,2400.0,-1.334,-1.8062,4.1373,-72.4468 2019-06-03 15:39:57.120,140.4613,7003.5303,5.3918,-3.0874,0.8983,0.1591,2400.0,2400.0,-1.2872,-1.8032,4.1399,-72.4468 2019-06-03 15:39:57.140,140.3842,7003.5576,5.3918,-3.0874,1.0525,-0.0414,2400.0,2400.0,-1.2375,-1.8032,4.1412,-72.4468 2019-06-03 15:39:57.160,140.3757,7003.6123,5.3921,-3.1068,0.9907,0.1896,2400.0,2400.0,-1.0884,-1.8032,4.1346,-72.4643 2019-06-03 15:39:57.180,140.3328,7003.6392,5.3921,-3.1068,0.9674,-0.0414,2400.0,2400.0,-0.8984,-1.8032,4.1439,-72.4643 2019-06-03 15:39:57.200,140.3242,7003.7485,5.3931,-3.1387,0.8753,-0.0399,2400.0,2400.0,-0.7523,-1.8062,4.1373,-72.4957 2019-06-03 15:39:57.220,140.3328,7003.7212,5.3975,-3.1439,1.1697,0.1549,2400.0,2400.0,-0.536,-1.8032,4.1346,-72.5062 2019-06-03 15:39:57.240,140.3671,7003.7485,5.3975,-3.1439,0.7966,-0.0186,2400.0,2400.0,-0.3372,-1.8032,4.1492,-72.5062 2019-06-03 15:39:57.260,140.3842,7003.6938,5.3975,-3.1439,1.1764,0.1707,2400.0,2400.0,-0.1794,-1.8092,4.1253,-72.5062 2019-06-03 15:39:57.280,140.3156,7003.7212,5.3949,-3.1642,0.8886,0.0458,2400.0,2400.0,-0.0245,-1.7823,4.1346,-72.5307 2019-06-03 15:39:57.300,140.3328,7003.7754,5.3945,-3.1853,0.7947,0.0409,2400.0,2400.0,0.0486,-1.8212,4.1293,-72.5534 2019-06-03 15:39:57.320,140.3156,7004.6201,5.3945,-3.1853,1.2973,0.0741,2400.0,2400.0,0.1042,-1.7973,4.1267,-72.5534 2019-06-03 15:39:57.340,140.3757,7005.8735,5.3945,-3.1853,0.7633,0.0672,2400.0,2400.0,0.0954,-1.8003,4.1359,-72.5534 2019-06-03 15:39:57.360,140.3671,7006.7456,5.4,-3.2037,1.2781,0.0658,2400.0,2400.0,0.0574,-1.7913,4.1333,-72.5744 2019-06-03 15:39:57.380,140.3156,7008.0532,5.4,-3.2037,0.8546,0.1224,2400.0,2400.0,0.0252,-1.7734,4.1425,-72.5744 2019-06-03 15:39:57.400,140.3242,7008.9253,5.4007,-3.241,0.7263,0.151,2340.0,2340.0,-0.0566,-1.7973,4.1359,-72.6041 2019-06-03 15:39:57.420,140.3328,7009.7969,5.3979,-3.2511,1.362,-0.0059,2340.0,2340.0,-0.0917,-1.7913,4.132,-72.6129 2019-06-03 15:39:57.440,140.3842,7011.1318,5.3979,-3.2511,0.9123,0.1618,2340.0,2340.0,-0.1385,-1.7943,4.1412,-72.6129 2019-06-03 15:39:57.460,140.3757,7011.9219,5.3979,-3.2511,1.1006,0.0006,2340.0,2340.0,-0.1706,-1.8122,4.1373,-72.6129 2019-06-03 15:39:57.480,140.3156,7012.2764,5.3998,-3.278,0.9515,0.1796,2340.0,2340.0,-0.2086,-1.8032,4.1333,-72.6269 2019-06-03 15:39:57.500,140.3242,7012.249,5.4051,-3.297,1.0251,0.2046,2340.0,2340.0,-0.2291,-1.8032,4.1425,-72.6391 2019-06-03 15:39:57.520,140.3156,7012.249,5.4051,-3.297,1.0414,-0.0091,2340.0,2340.0,-0.2495,-1.8003,4.1373,-72.6391 2019-06-03 15:39:57.540,140.2384,7012.2764,5.4051,-3.297,1.1227,0.1507,2340.0,2340.0,-0.2466,-1.8032,4.1439,-72.6391 2019-06-03 15:39:57.560,140.2384,7012.3311,5.4082,-3.32,0.9441,0.0026,2340.0,2340.0,-0.2554,-1.8032,4.128,-72.6514 2019-06-03 15:39:57.580,140.1868,7012.3579,5.4082,-3.32,1.0765,0.1637,2340.0,2340.0,-0.2408,-1.8032,4.1306,-72.6514 2019-06-03 15:39:57.600,140.1954,7012.3579,5.4102,-3.3511,1.0895,0.2075,2340.0,2340.0,-0.2641,-1.8062,4.1399,-72.6793 2019-06-03 15:39:57.620,140.1868,7012.3579,5.4056,-3.364,0.7529,-0.0241,2340.0,2340.0,-0.2875,-1.8003,4.1346,-72.6846 2019-06-03 15:39:57.640,140.2384,7012.3853,5.4056,-3.364,1.2855,0.1504,2340.0,2340.0,-0.346,-1.8003,4.1412,-72.6846 2019-06-03 15:39:57.660,140.247,7012.3311,5.4056,-3.364,0.7185,0.0524,2340.0,2340.0,-0.3723,-1.8062,4.1346,-72.6846 2019-06-03 15:39:57.680,140.1782,7012.3579,5.4122,-3.3797,1.2492,0.0982,2340.0,2340.0,-0.3665,-1.8032,4.1425,-72.6916 2019-06-03 15:39:57.700,140.1868,7012.3037,5.4149,-3.392,1.2836,0.0954,2340.0,2340.0,-0.3957,-1.8241,4.1386,-72.6986 2019-06-03 15:39:57.720,140.1782,7012.3306,5.4149,-3.392,0.8221,0.072,2340.0,2340.0,-0.422,-1.8152,4.1373,-72.6986 2019-06-03 15:39:57.740,140.2384,7012.3306,5.4149,-3.392,1.3369,0.0604,2340.0,2340.0,-0.4571,-1.7823,4.1333,-72.6986 2019-06-03 15:39:57.760,140.2556,7012.3306,5.4115,-3.4085,0.8531,0.1357,2340.0,2340.0,-0.4746,-1.8003,4.1399,-72.7038 2019-06-03 15:39:57.780,140.1868,7012.3853,5.4115,-3.4085,1.2629,-0.0007,2340.0,2340.0,-0.5068,-1.7823,4.1373,-72.7038 2019-06-03 15:39:57.800,140.1868,7012.3853,5.4189,-3.4259,1.2489,0.0122,2340.0,2340.0,-0.5564,-1.7943,4.1425,-72.7108 2019-06-03 15:39:57.820,140.1868,7012.4399,5.4223,-3.4317,0.9419,0.1335,2340.0,2340.0,-0.6091,-1.8152,4.1399,-72.7126 2019-06-03 15:39:57.840,140.2298,7012.5488,5.4223,-3.4317,1.1409,-0.0063,2340.0,2340.0,-0.6354,-1.8003,4.1412,-72.7126 2019-06-03 15:39:57.860,140.2384,7012.5488,5.4223,-3.4317,0.9593,0.1692,2340.0,2340.0,-0.6704,-1.8003,4.1386,-72.7126 2019-06-03 15:39:57.880,140.1868,7012.4399,5.4214,-3.4458,1.105,-0.0391,2340.0,2340.0,-0.6821,-1.8003,4.1346,-72.7178 2019-06-03 15:39:57.900,140.1954,7012.3853,5.4156,-3.4599,1.0381,-0.0379,2340.0,2340.0,-0.688,-1.8062,4.1478,-72.7265 2019-06-03 15:39:57.920,140.1868,7012.4126,5.4156,-3.4599,1.1723,0.1678,2340.0,2340.0,-0.688,-1.7943,4.1253,-72.7265 2019-06-03 15:39:57.940,140.1094,7012.4399,5.4156,-3.4599,0.8435,0.0143,2340.0,2340.0,-0.6558,-1.7973,4.1425,-72.7265 2019-06-03 15:39:57.960,140.0921,7012.4673,5.4123,-3.4684,1.1849,0.133,2340.0,2340.0,-0.612,-1.8152,4.1452,-72.7335 2019-06-03 15:39:57.980,140.0405,7012.5215,5.4123,-3.4684,0.8983,0.018,2340.0,2340.0,-0.5477,-1.7823,4.1227,-72.7335 2019-06-03 15:39:58.000,140.0491,7012.5488,5.4099,-3.4862,0.7766,0.0081,2340.0,2340.0,-0.4804,-1.7913,4.1359,-72.7335 2019-06-03 15:39:58.020,140.0577,7012.4399,5.4117,-3.4886,1.2489,0.0852,2340.0,2340.0,-0.3928,-1.8003,4.1306,-72.7405 2019-06-03 15:39:58.040,140.1008,7012.4126,5.4117,-3.4886,0.7459,0.0859,2340.0,2340.0,-0.2992,-1.8003,4.1306,-72.7405 2019-06-03 15:39:58.060,140.118,7012.3853,5.4117,-3.4886,1.2711,0.0473,2340.0,2340.0,-0.1998,-1.8062,4.1439,-72.7405 2019-06-03 15:39:58.080,140.0491,7012.4126,5.4037,-3.5019,0.7884,0.1007,2340.0,2340.0,-0.1151,-1.8003,4.1253,-72.751 2019-06-03 15:39:58.100,140.0491,7012.3853,5.4023,-3.5073,0.8694,0.152,2340.0,2340.0,-0.0742,-1.7973,4.1306,-72.7633 2019-06-03 15:39:58.120,140.0405,7012.3853,5.4023,-3.5073,1.1353,-0.018,2340.0,2340.0,-0.0186,-1.8003,4.1253,-72.7633 2019-06-03 15:39:58.140,140.1008,7012.3311,5.4023,-3.5073,0.9012,0.1921,2340.0,2340.0,0.0135,-1.8003,4.1253,-72.7633 2019-06-03 15:39:58.160,140.1094,7012.3037,5.4037,-3.518,1.0998,-0.0503,2340.0,2340.0,0.0135,-1.7973,4.1452,-72.7755 2019-06-03 15:39:58.180,140.0577,7012.3579,5.4037,-3.518,0.9963,0.171,2340.0,2340.0,-0.0332,-1.8003,4.1333,-72.7755 2019-06-03 15:39:58.200,140.0405,7012.4399,5.4015,-3.5327,1.1527,0.1949,2340.0,2340.0,-0.1034,-1.7973,4.1333,-72.7947 2019-06-03 15:39:58.220,140.0577,7012.4126,5.3951,-3.542,0.8402,-0.014,2340.0,2340.0,-0.2057,-1.7973,4.132,-72.8 2019-06-03 15:39:58.240,140.1008,7012.4126,5.3951,-3.542,1.0443,0.165,2340.0,2340.0,-0.2378,-1.8062,4.1518,-72.8 2019-06-03 15:39:58.260,140.1008,7012.4399,5.3951,-3.542,0.8313,-0.0006,2340.0,2340.0,-0.3138,-1.8003,4.1373,-72.8 2019-06-03 15:39:58.280,140.0405,7012.3853,5.3962,-3.5475,1.1183,0.1478,2340.0,2340.0,-0.3518,-1.7943,4.1373,-72.8087 2019-06-03 15:39:58.300,140.0577,7012.3037,5.3981,-3.5535,1.2322,0.1508,2340.0,2340.0,-0.4161,-1.8003,4.1306,-72.8157 2019-06-03 15:39:58.320,140.0491,7012.2764,5.3981,-3.5535,0.7799,0.0474,2340.0,2340.0,-0.4249,-1.8003,4.1439,-72.8157 2019-06-03 15:39:58.340,140.247,7012.2764,5.3981,-3.5535,1.2984,0.1027,2340.0,2340.0,-0.4278,-1.8003,4.1373,-72.8157 2019-06-03 15:39:58.360,140.2212,7012.2764,5.3931,-3.566,0.7614,0.095,2340.0,2340.0,-0.4395,-1.8003,4.1505,-72.8245 2019-06-03 15:39:58.380,140.1782,7012.3037,5.3931,-3.566,1.3358,0.0529,2340.0,2340.0,-0.4395,-1.8003,4.1373,-72.8245 2019-06-03 15:39:58.400,140.1868,7012.3306,5.3939,-3.5785,1.2969,0.0299,2400.0,2400.0,-0.46,-1.8003,4.1293,-72.8612 2019-06-03 15:39:58.420,140.1868,7012.3037,5.3954,-3.5848,0.8594,0.1442,2400.0,2400.0,-0.4571,-1.7973,4.1425,-72.8682 2019-06-03 15:39:58.440,140.2384,7012.2764,5.3954,-3.5848,1.2507,-0.0213,2400.0,2400.0,-0.4308,-1.8003,4.1425,-72.8682 2019-06-03 15:39:58.460,140.247,7012.249,5.3954,-3.5848,0.8827,0.1873,2400.0,2400.0,-0.4366,-1.8092,4.1399,-72.8682 2019-06-03 15:39:58.480,140.1868,7012.2764,5.396,-3.595,1.1908,-0.0333,2400.0,2400.0,-0.422,-1.8003,4.132,-72.8787 2019-06-03 15:39:58.500,140.1954,7012.4126,5.3889,-3.6093,1.0595,-0.036,2400.0,2400.0,-0.422,-1.8003,4.1306,-72.8927 2019-06-03 15:39:58.520,140.1782,7013.3936,5.3889,-3.6093,0.99,0.1782,2400.0,2400.0,-0.4424,-1.8032,4.1346,-72.8927 2019-06-03 15:39:58.540,140.3671,7014.7837,5.3889,-3.6093,1.0602,-0.0486,2400.0,2400.0,-0.4103,-1.7973,4.1545,-72.8927 2019-06-03 15:39:58.560,140.3585,7015.6558,5.3841,-3.6274,1.0784,0.194,2400.0,2400.0,-0.4395,-1.8003,4.1373,-72.9066 2019-06-03 15:39:58.580,140.3156,7016.9639,5.3841,-3.6274,0.8827,-0.0333,2400.0,2400.0,-0.4424,-1.8003,4.1293,-72.9066 2019-06-03 15:39:58.600,140.3242,7017.8901,5.378,-3.6551,0.9541,0.0025,2400.0,2400.0,-0.4366,-1.8003,4.132,-72.9434 2019-06-03 15:39:58.620,140.3328,7018.7622,5.3829,-3.6637,1.1494,0.1653,2400.0,2400.0,-0.4512,-1.8003,4.1386,-72.9521 2019-06-03 15:39:58.640,140.3757,7020.125,5.3829,-3.6637,0.7969,-0.0086,2400.0,2400.0,-0.4278,-1.8003,4.1465,-72.9521 2019-06-03 15:39:58.660,140.3757,7020.915,5.3829,-3.6637,1.3694,0.1687,2400.0,2400.0,-0.4308,-1.8003,4.1386,-72.9521 2019-06-03 15:39:58.680,140.3156,7021.1606,5.3769,-3.6903,0.7544,0.0182,2400.0,2400.0,-0.4366,-1.7943,4.1399,-72.9713 2019-06-03 15:39:58.700,140.3242,7021.0518,5.3759,-3.7192,0.8494,0.0513,2400.0,2400.0,-0.4337,-1.7913,4.1412,-72.9888 2019-06-03 15:39:58.720,140.3156,7021.0518,5.3759,-3.7192,1.1838,0.0886,2400.0,2400.0,-0.4424,-1.7943,4.1386,-72.9888 2019-06-03 15:39:58.740,140.2384,7021.0786,5.3759,-3.7192,0.7659,0.0685,2400.0,2400.0,-0.4483,-1.7943,4.1346,-72.9888 2019-06-03 15:39:58.760,140.2384,7021.1333,5.3784,-3.7488,1.3232,0.0406,2400.0,2400.0,-0.4454,-1.7973,4.1359,-73.0098 2019-06-03 15:39:58.780,140.1868,7021.0786,5.3784,-3.7488,0.8028,0.1241,2400.0,2400.0,-0.4337,-1.7973,4.1386,-73.0098 2019-06-03 15:39:58.800,140.1868,7021.1606,5.3765,-3.7986,0.8842,0.1717,2400.0,2400.0,-0.422,-1.7943,4.1359,-73.0465 2019-06-03 15:39:58.820,140.1954,7021.106,5.3731,-3.8183,1.1394,-0.0192,2400.0,2400.0,-0.4161,-1.7943,4.1306,-73.057 2019-06-03 15:39:58.840,140.247,7021.106,5.3731,-3.8183,0.8709,0.1505,2400.0,2400.0,-0.3986,-1.7943,4.1346,-73.057 2019-06-03 15:39:58.860,140.247,7021.0786,5.3731,-3.8183,1.135,-0.0475,2400.0,2400.0,-0.384,-1.7943,4.1439,-73.057 2019-06-03 15:39:58.880,140.1868,7021.0244,5.3755,-3.8449,1.095,0.1802,2400.0,2400.0,-0.3957,-1.7973,4.1253,-73.0762 2019-06-03 15:39:58.900,140.1868,7020.9697,5.3786,-3.8722,1.0591,0.1567,2400.0,2400.0,-0.4015,-1.7913,4.1412,-73.0955 2019-06-03 15:39:58.920,140.1696,7020.9971,5.3786,-3.8722,0.9401,-0.0127,2400.0,2400.0,-0.4161,-1.8003,4.1359,-73.0955 2019-06-03 15:39:58.940,140.247,7021.0786,5.3786,-3.8722,1.0725,0.1435,2400.0,2400.0,-0.4278,-1.7973,4.1346,-73.0955 2019-06-03 15:39:58.960,140.2384,7021.0518,5.3782,-3.9013,0.8635,-0.0146,2400.0,2400.0,-0.4337,-1.7943,4.1518,-73.1165 2019-06-03 15:39:58.980,140.1868,7021.106,5.3782,-3.9013,1.206,0.1485,2400.0,2400.0,-0.4424,-1.8032,4.1214,-73.1165 2019-06-03 15:39:59.000,140.1868,7021.106,5.383,-3.9324,1.2348,0.1238,2400.0,2400.0,-0.4278,-1.7883,4.1399,-73.1444 2019-06-03 15:39:59.020,140.1954,7021.1606,5.3796,-3.9491,0.8102,0.0277,2400.0,2400.0,-0.4308,-1.7913,4.1373,-73.1549 2019-06-03 15:39:59.040,140.2384,7021.1606,5.3796,-3.9491,1.2514,0.1326,2400.0,2400.0,-0.4278,-1.7883,4.1333,-73.1549 2019-06-03 15:39:59.060,140.247,7021.1333,5.3796,-3.9491,0.6849,0.0333,2400.0,2400.0,-0.4337,-1.7943,4.1439,-73.1549 2019-06-03 15:39:59.080,140.1868,7021.1606,5.3851,-3.9668,1.2363,0.1059,2400.0,2400.0,-0.4249,-1.7913,4.132,-73.1742 2019-06-03 15:39:59.100,140.1954,7021.0518,5.3854,-3.9865,1.247,0.0638,2400.0,2400.0,-0.4103,-1.7913,4.1373,-73.1934 2019-06-03 15:39:59.120,140.1696,7021.106,5.3854,-3.9865,0.8661,0.0934,2400.0,2400.0,-0.3986,-1.8003,4.1399,-73.1934 2019-06-03 15:39:59.140,140.1008,7021.106,5.3854,-3.9865,1.2463,0.0466,2400.0,2400.0,-0.3781,-1.7943,4.1346,-73.1934 2019-06-03 15:39:59.160,140.1094,7021.1333,5.3816,-4.0087,0.8443,0.1076,2400.0,2400.0,-0.3986,-1.7913,4.1425,-73.2126 2019-06-03 15:39:59.180,140.0491,7021.0786,5.3816,-4.0087,1.2245,0.0433,2400.0,2400.0,-0.4074,-1.8062,4.1306,-73.2126 2019-06-03 15:39:59.200,140.0491,7021.1333,5.3896,-4.0323,1.2478,-0.0064,2400.0,2400.0,-0.4074,-1.8032,4.1293,-73.2581 2019-06-03 15:39:59.220,140.0491,7021.1333,5.3922,-4.0394,0.9449,0.1872,2400.0,2400.0,-0.4103,-1.8003,4.1465,-73.2668 2019-06-03 15:39:59.240,140.1008,7021.106,5.3922,-4.0394,1.0935,-0.0305,2400.0,2400.0,-0.4044,-1.8032,4.1346,-73.2668 2019-06-03 15:39:59.260,140.1008,7021.0786,5.3922,-4.0394,1.0107,0.1915,2400.0,2400.0,-0.3957,-1.7973,4.1412,-73.2668 2019-06-03 15:39:59.280,140.0663,7021.0244,5.394,-4.0541,0.9678,-0.0428,2400.0,2400.0,-0.3957,-1.8003,4.132,-73.2861 2019-06-03 15:39:59.300,140.0491,7020.9971,5.3902,-4.0741,1.085,-0.086,2400.0,2400.0,-0.3898,-1.7973,4.1227,-73.3053 2019-06-03 15:39:59.320,140.0405,7020.9697,5.3902,-4.0741,1.0621,0.2283,2400.0,2400.0,-0.4015,-1.8003,4.1373,-73.3053 2019-06-03 15:39:59.340,140.1008,7020.9971,5.3902,-4.0741,0.7921,-0.0259,2400.0,2400.0,-0.4015,-1.7853,4.1399,-73.3053 2019-06-03 15:39:59.360,140.0921,7021.0518,5.3938,-4.0917,1.223,0.1576,2400.0,2400.0,-0.4074,-1.7853,4.1478,-73.3228 2019-06-03 15:39:59.380,140.0491,7021.0786,5.3938,-4.0917,0.7895,0.0418,2400.0,2400.0,-0.4132,-1.7853,4.1293,-73.3228 2019-06-03 15:39:59.400,140.0491,7021.1333,5.3935,-4.1168,0.9123,0.0146,2340.0,2340.0,-0.4074,-1.7794,4.1293,-73.3543 2019-06-03 15:39:59.420,140.0491,7021.1333,5.3991,-4.123,1.2367,0.1543,2340.0,2340.0,-0.4044,-1.7764,4.1373,-73.363 2019-06-03 15:39:59.440,140.1008,7021.1333,5.3991,-4.123,0.6753,0.0303,2340.0,2340.0,-0.3986,-1.7734,4.1452,-73.363 2019-06-03 15:39:59.460,140.1094,7021.1333,5.3991,-4.123,1.3162,0.1252,2340.0,2340.0,-0.4015,-1.7764,4.1386,-73.363 2019-06-03 15:39:59.480,140.0491,7021.1606,5.3945,-4.1418,0.7577,0.0918,2340.0,2340.0,-0.3986,-1.7674,4.1386,-73.3822 2019-06-03 15:39:59.500,140.0577,7021.1333,5.3952,-4.1614,0.7533,0.0454,2340.0,2340.0,-0.3928,-1.7614,4.1412,-73.4015 2019-06-03 15:39:59.520,140.0318,7021.1333,5.3952,-4.1614,1.3132,0.0571,2340.0,2340.0,-0.3957,-1.7584,4.1452,-73.4015 2019-06-03 15:39:59.540,140.3757,7021.106,5.3952,-4.1614,0.7215,0.0985,2340.0,2340.0,-0.3986,-1.7435,4.1346,-73.4015 2019-06-03 15:39:59.560,140.3671,7021.1606,5.4001,-4.1734,1.3236,-0.0003,2340.0,2340.0,-0.3957,-1.7286,4.1452,-73.4207 2019-06-03 15:39:59.580,140.3156,7021.1606,5.4001,-4.1734,0.8768,0.1829,2340.0,2340.0,-0.3957,-1.7047,4.132,-73.4207 2019-06-03 15:39:59.600,140.3156,7021.1606,5.3945,-4.1943,0.838,0.1427,2340.0,2340.0,-0.3781,-1.6538,4.1439,-73.4417 2019-06-03 15:39:59.620,140.3242,7021.2148,5.3912,-4.2018,1.1886,-0.0411,2340.0,2340.0,-0.4044,-1.6538,4.1439,-73.4504 2019-06-03 15:39:59.640,140.3585,7021.188,5.3912,-4.2018,1.0007,0.1562,2340.0,2340.0,-0.3928,-1.6089,4.1452,-73.4504 2019-06-03 15:39:59.660,140.3842,7021.1333,5.3912,-4.2018,1.0736,-0.041,2340.0,2340.0,-0.3898,-1.5999,4.1399,-73.4504 2019-06-03 15:39:59.680,140.3156,7021.188,5.3928,-4.2093,1.1035,0.193,2340.0,2340.0,-0.3957,-1.591,4.1412,-73.4714 2019-06-03 15:39:59.700,140.3242,7021.188,5.3933,-4.2123,1.0462,0.1488,2340.0,2340.0,-0.3986,-1.579,4.1373,-73.4889 2019-06-03 15:39:59.720,140.3242,7022.0327,5.3933,-4.2123,0.8069,-0.0418,2340.0,2340.0,-0.4044,-1.576,4.1531,-73.4889 2019-06-03 15:39:59.740,140.2298,7023.314,5.3933,-4.2123,1.3106,0.159,2340.0,2340.0,-0.422,-1.573,4.128,-73.4889 2019-06-03 15:39:59.760,140.2384,7024.186,5.3898,-4.2173,0.835,-0.0101,2340.0,2340.0,-0.4103,-1.576,4.1412,-73.5064 2019-06-03 15:39:59.780,140.1954,7025.4946,5.3827,-4.2149,1.2385,0.157,2340.0,2340.0,-0.4132,-1.573,4.1425,-73.5326 2019-06-03 15:39:59.800,140.1868,7026.2852,5.3878,-4.2091,1.379,0.1299,2340.0,2340.0,-0.4103,-1.57,4.1492,-73.5431 2019-06-03 15:39:59.820,140.1868,7027.103,5.3825,-4.2094,0.7326,0.0334,2340.0,2340.0,-0.422,-1.564,4.1412,-73.5518 2019-06-03 15:39:59.840,140.247,7028.3022,5.3825,-4.2094,1.2888,0.1046,2340.0,2340.0,-0.4308,-1.558,4.1306,-73.5518 2019-06-03 15:39:59.860,140.247,7029.1475,5.3825,-4.2094,0.8165,0.0756,2340.0,2340.0,-0.4308,-1.549,4.1452,-73.5518 2019-06-03 15:39:59.880,140.1868,7029.4199,5.3824,-4.194,1.3073,0.0595,2340.0,2340.0,-0.4337,-1.552,4.1465,-73.5693 2019-06-03 15:39:59.900,140.1868,7029.3926,5.3772,-4.1842,1.3047,0.0168,2340.0,2340.0,-0.4454,-1.537,4.1412,-73.5886 2019-06-03 15:39:59.920,140.1782,7029.3379,5.3772,-4.1842,0.8147,0.1495,2340.0,2340.0,-0.4454,-1.546,4.1452,-73.5886 2019-06-03 15:39:59.940,140.3757,7029.2837,5.3772,-4.1842,1.1649,0.019,2340.0,2340.0,-0.4366,-1.558,4.1386,-73.5886 2019-06-03 15:39:59.960,140.3585,7029.3652,5.3708,-4.1697,0.8583,0.1546,2340.0,2340.0,-0.4249,-1.555,4.1399,-73.6078 2019-06-03 15:39:59.980,140.3242,7029.3379,5.3708,-4.1697,1.2267,-0.0018,2340.0,2340.0,-0.4132,-1.558,4.1492,-73.6078 2019-06-03 15:40:00.000,140.3156,7029.3652,5.369,-4.1425,1.139,-0.0241,2340.0,2340.0,-0.4278,-1.549,4.132,-73.6358 2019-06-03 15:40:00.020,140.3328,7029.3926,5.3711,-4.1316,1.0277,0.1657,2340.0,2340.0,-0.422,-1.54,4.1478,-73.6463 2019-06-03 15:40:00.040,140.3757,7029.5015,5.3711,-4.1316,0.9338,0.0037,2340.0,2340.0,-0.422,-1.54,4.124,-73.6463 2019-06-03 15:40:00.060,140.3757,7029.4473,5.3711,-4.1316,1.1276,0.1637,2340.0,2340.0,-0.3869,-1.54,4.1439,-73.6463 2019-06-03 15:40:00.080,140.3242,7029.4741,5.368,-4.116,0.8679,-0.0224,2340.0,2340.0,-0.4044,-1.543,4.1492,-73.6673 2019-06-03 15:40:00.100,140.3156,7029.4199,5.3622,-4.1062,0.8487,-0.0298,2340.0,2340.0,-0.4044,-1.54,4.1465,-73.69 2019-06-03 15:40:00.120,140.3242,7029.4199,5.3622,-4.1062,1.2659,0.1866,2340.0,2340.0,-0.4366,-1.543,4.1412,-73.69 2019-06-03 15:40:00.140,140.3671,7029.4473,5.3622,-4.1062,0.8195,0.0185,2340.0,2340.0,-0.4541,-1.543,4.1214,-73.69 2019-06-03 15:40:00.160,140.3671,7029.5015,5.3647,-4.0887,1.2847,0.1322,2340.0,2340.0,-0.422,-1.534,4.1412,-73.7127 2019-06-03 15:40:00.180,140.3242,7029.4741,5.3647,-4.0887,0.649,0.0547,2340.0,2340.0,-0.422,-1.57,4.1465,-73.7127 2019-06-03 15:40:00.200,140.3156,7029.4473,5.3598,-4.0593,0.723,0.0355,2340.0,2340.0,-0.4132,-1.564,4.1386,-73.7582 2019-06-03 15:40:00.220,140.3328,7029.3926,5.3631,-4.0465,1.3162,0.0777,2340.0,2340.0,-0.4308,-1.561,4.1333,-73.7687 2019-06-03 15:40:00.240,140.3757,7029.4199,5.3631,-4.0465,0.8117,0.1299,2340.0,2340.0,-0.4308,-1.561,4.1267,-73.7687 2019-06-03 15:40:00.260,140.3842,7029.3926,5.3631,-4.0465,1.2215,0.0016,2340.0,2340.0,-0.4191,-1.564,4.1399,-73.7687 2019-06-03 15:40:00.280,140.3156,7029.3926,5.3572,-4.0335,0.8047,0.1615,2340.0,2340.0,-0.4161,-1.6029,4.1425,-73.7914 2019-06-03 15:40:00.300,140.3328,7029.3652,5.3589,-4.0129,0.9149,0.1278,2340.0,2340.0,-0.4249,-1.5969,4.132,-73.8106 2019-06-03 15:40:00.320,140.3071,7029.3926,5.3589,-4.0129,1.1449,-0.037,2340.0,2340.0,-0.4278,-1.5969,4.1306,-73.8106 2019-06-03 15:40:00.340,140.3671,7029.3926,5.3589,-4.0129,0.9456,0.1787,2340.0,2340.0,-0.4249,-1.594,4.1373,-73.8106 2019-06-03 15:40:00.360,140.3757,7029.4741,5.3602,-3.991,1.007,-0.0275,2340.0,2340.0,-0.4278,-1.594,4.1399,-73.8316 2019-06-03 15:40:00.380,140.3242,7029.5288,5.3602,-3.991,1.1793,0.1621,2340.0,2340.0,-0.422,-1.5999,4.1439,-73.8316 2019-06-03 15:40:00.400,140.3242,7029.4741,5.3585,-3.9626,1.0484,0.1163,2400.0,2400.0,-0.422,-1.594,4.1333,-73.8753 2019-06-03 15:40:00.420,140.3328,7029.5015,5.3533,-3.9575,1.0122,-0.0049,2400.0,2400.0,-0.4278,-1.5969,4.1373,-73.8841 2019-06-03 15:40:00.440,140.3671,7029.5015,5.3533,-3.9575,1.0492,0.1273,2400.0,2400.0,-0.4337,-1.5969,4.1333,-73.8841 2019-06-03 15:40:00.460,140.3842,7029.4741,5.3533,-3.9575,0.9238,0.0226,2400.0,2400.0,-0.4308,-1.5969,4.1425,-73.8841 2019-06-03 15:40:00.480,140.3156,7029.3652,5.3551,-3.9366,1.1653,0.152,2400.0,2400.0,-0.4278,-1.5969,4.1373,-73.8998 2019-06-03 15:40:00.500,140.3156,7029.2837,5.3554,-3.9209,1.1172,0.122,2400.0,2400.0,-0.4278,-1.594,4.1306,-73.9155 2019-06-03 15:40:00.520,140.3156,7029.2563,5.3554,-3.9209,0.7921,0.0065,2400.0,2400.0,-0.4191,-1.5999,4.1359,-73.9155 2019-06-03 15:40:00.540,140.247,7029.2837,5.3554,-3.9209,1.1875,0.1392,2400.0,2400.0,-0.422,-1.5969,4.1386,-73.9155 2019-06-03 15:40:00.560,140.2384,7029.3379,5.3539,-3.9051,0.8099,0.022,2400.0,2400.0,-0.4249,-1.5969,4.1478,-73.9278 2019-06-03 15:40:00.580,140.1868,7029.3926,5.3539,-3.9051,1.2278,0.104,2400.0,2400.0,-0.4337,-1.5969,4.1399,-73.9278 2019-06-03 15:40:00.600,140.1868,7029.4199,5.3565,-3.89,1.2256,0.1094,2400.0,2400.0,-0.4337,-1.5969,4.1346,-73.9715 2019-06-03 15:40:00.620,140.1954,7029.3652,5.3537,-3.8857,0.7903,0.0973,2400.0,2400.0,-0.4308,-1.5999,4.1333,-73.9785 2019-06-03 15:40:00.640,140.2384,7029.3926,5.3537,-3.8857,1.1767,0.0564,2400.0,2400.0,-0.4278,-1.6089,4.1346,-73.9785 2019-06-03 15:40:00.660,140.2384,7029.4199,5.3537,-3.8857,0.8898,0.1271,2400.0,2400.0,-0.4191,-1.6119,4.1412,-73.9785 2019-06-03 15:40:00.680,140.1868,7029.4473,5.3531,-3.8766,1.1231,-0.009,2400.0,2400.0,-0.4308,-1.6089,4.1412,-73.9907 2019-06-03 15:40:00.700,140.1954,7029.3652,5.3505,-3.8724,1.0983,-0.0009,2400.0,2400.0,-0.4395,-1.6089,4.1386,-74.0047 2019-06-03 15:40:00.720,140.1782,7029.4199,5.3505,-3.8724,0.9489,0.1638,2400.0,2400.0,-0.4308,-1.6119,4.1346,-74.0047 2019-06-03 15:40:00.740,140.2384,7029.3652,5.3505,-3.8724,1.0843,-0.021,2400.0,2400.0,-0.4249,-1.6089,4.1412,-74.0047 2019-06-03 15:40:00.760,140.247,7029.3926,5.3486,-3.871,1.0199,0.1555,2400.0,2400.0,-0.4308,-1.6119,4.1346,-74.0187 2019-06-03 15:40:00.780,140.1868,7029.4741,5.3486,-3.871,1.0133,-0.0448,2400.0,2400.0,-0.422,-1.6119,4.1412,-74.0187 2019-06-03 15:40:00.800,140.1782,7029.5015,5.3484,-3.8625,0.9929,0.0088,2400.0,2400.0,-0.4366,-1.6089,4.1174,-74.0712 2019-06-03 15:40:00.820,140.1954,7029.5015,5.3519,-3.8574,1.0403,0.1311,2400.0,2400.0,-0.4015,-1.6089,4.1452,-74.0764 2019-06-03 15:40:00.840,140.2384,7029.4741,5.3519,-3.8574,0.8206,0.0105,2400.0,2400.0,-0.4308,-1.6119,4.1439,-74.0764 2019-06-03 15:40:00.860,140.247,7029.4741,5.3519,-3.8574,1.1205,0.1163,2400.0,2400.0,-0.4337,-1.6089,4.1359,-74.0764 2019-06-03 15:40:00.880,140.1954,7029.4741,5.3477,-3.8573,0.8753,0.0094,2400.0,2400.0,-0.4308,-1.6059,4.1439,-74.0904 2019-06-03 15:40:00.900,140.1868,7029.4199,5.3466,-3.8575,0.8768,0.0396,2400.0,2400.0,-0.4308,-1.6059,4.1253,-74.1026 2019-06-03 15:40:00.920,140.1868,7029.4199,5.3466,-3.8575,1.2126,0.1195,2400.0,2400.0,-0.4191,-1.6059,4.1452,-74.1026 2019-06-03 15:40:00.940,140.247,7029.4199,5.3466,-3.8575,0.7603,0.052,2400.0,2400.0,-0.4278,-1.6119,4.1412,-74.1026 2019-06-03 15:40:00.960,140.2298,7029.4473,5.3484,-3.8504,1.2718,0.0625,2400.0,2400.0,-0.4103,-1.6089,4.1439,-74.1166 2019-06-03 15:40:00.980,140.1954,7029.4473,5.3484,-3.8504,0.8365,0.0956,2400.0,2400.0,-0.4337,-1.6119,4.1267,-74.1166 2019-06-03 15:40:01.000,140.1782,7029.5015,5.3522,-3.8426,0.858,0.114,2400.0,2400.0,-0.4161,-1.6089,4.1399,-74.1394 2019-06-03 15:40:01.020,140.1868,7029.5015,5.3512,-3.8378,1.2341,0.0173,2400.0,2400.0,-0.4074,-1.6089,4.1425,-74.1463 2019-06-03 15:40:01.040,140.2384,7029.4473,5.3512,-3.8378,0.8953,0.1361,2400.0,2400.0,-0.4132,-1.6089,4.1439,-74.1463 2019-06-03 15:40:01.060,140.2384,7029.4473,5.3512,-3.8378,1.1438,-0.001,2400.0,2400.0,-0.4337,-1.6089,4.132,-74.1463 2019-06-03 15:40:01.080,140.1782,7029.4741,5.3528,-3.8304,0.9256,0.1369,2400.0,2400.0,-0.4337,-1.6089,4.1386,-74.1586 2019-06-03 15:40:01.100,140.1954,7029.5015,5.3596,-3.8166,0.838,0.1619,2400.0,2400.0,-0.4424,-1.6089,4.1346,-74.1726 2019-06-03 15:40:01.120,140.1782,7030.4561,5.3596,-3.8166,1.0909,-0.0239,2400.0,2400.0,-0.4249,-1.6149,4.1399,-74.1726 2019-06-03 15:40:01.140,140.2384,7031.8193,5.3596,-3.8166,1.1523,0.1814,2400.0,2400.0,-0.4278,-1.6119,4.1439,-74.1726 2019-06-03 15:40:01.160,140.2384,7032.6914,5.3655,-3.8017,0.9438,-0.0401,2400.0,2400.0,-0.4191,-1.6059,4.1373,-74.1848 2019-06-03 15:40:01.180,140.1954,7034.0005,5.3634,-3.7883,1.223,0.1808,2400.0,2400.0,-0.4191,-1.6089,4.1346,-74.2093 2019-06-03 15:40:01.200,140.1782,7034.8457,5.3692,-3.778,1.1697,0.1796,2400.0,2400.0,-0.4278,-1.6119,4.1306,-74.2163 2019-06-03 15:40:01.220,140.1868,7035.7178,5.3651,-3.7738,0.7899,-0.012,2400.0,2400.0,-0.422,-1.6089,4.1492,-74.2215 2019-06-03 15:40:01.240,140.2384,7037.0269,5.3651,-3.7738,1.284,0.1276,2400.0,2400.0,-0.4337,-1.6089,4.1399,-74.2215 2019-06-03 15:40:01.260,140.247,7037.8447,5.3651,-3.7738,0.6871,0.0459,2400.0,2400.0,-0.4366,-1.6119,4.1346,-74.2215 2019-06-03 15:40:01.280,140.1868,7038.1445,5.3736,-3.7559,1.2888,0.0851,2400.0,2400.0,-0.4249,-1.6089,4.1439,-74.2355 2019-06-03 15:40:01.300,140.1954,7038.0898,5.3782,-3.7387,1.264,0.0597,2400.0,2400.0,-0.4278,-1.6119,4.1399,-74.2478 2019-06-03 15:40:01.320,140.1868,7038.0625,5.3782,-3.7387,0.7481,0.1252,2400.0,2400.0,-0.3986,-1.6089,4.1465,-74.2478 2019-06-03 15:40:01.340,140.0921,7038.1172,5.3782,-3.7387,1.2729,0.011,2400.0,2400.0,-0.4044,-1.6089,4.1306,-74.2478 2019-06-03 15:40:01.360,140.1094,7038.1719,5.377,-3.7248,0.7973,0.1324,2400.0,2400.0,-0.4249,-1.6089,4.1253,-74.2617 2019-06-03 15:40:01.380,140.0491,7038.2261,5.377,-3.7248,1.2448,0.0042,2400.0,2400.0,-0.4249,-1.6089,4.1412,-74.2617 2019-06-03 15:40:01.400,140.0577,7038.2261,5.3823,-3.6994,1.1642,0.0083,2340.0,2340.0,-0.4308,-1.6089,4.1425,-74.3125 2019-06-03 15:40:01.420,140.0491,7038.2261,5.3857,-3.6884,0.9179,0.1471,2340.0,2340.0,-0.4366,-1.6089,4.1373,-74.3177 2019-06-03 15:40:01.440,140.1008,7038.2261,5.3857,-3.6884,1.0181,-0.052,2340.0,2340.0,-0.422,-1.6089,4.1412,-74.3177 2019-06-03 15:40:01.460,140.1094,7038.2261,5.3857,-3.6884,1.0817,0.2044,2340.0,2340.0,-0.4249,-1.6149,4.1293,-74.3177 2019-06-03 15:40:01.480,140.0491,7038.2808,5.3888,-3.6714,0.9922,-0.0561,2340.0,2340.0,-0.4191,-1.6119,4.1346,-74.3317 2019-06-03 15:40:01.500,140.0491,7038.1992,5.3873,-3.6561,0.919,-0.0446,2340.0,2340.0,-0.4161,-1.6089,4.1478,-74.3439 2019-06-03 15:40:01.520,140.0405,7038.1719,5.3873,-3.6561,1.1871,0.1985,2340.0,2340.0,-0.422,-1.6149,4.1386,-74.3439 2019-06-03 15:40:01.540,139.9628,7038.1445,5.3873,-3.6561,0.8679,-0.0584,2340.0,2340.0,-0.4191,-1.6089,4.1346,-74.3439 2019-06-03 15:40:01.560,139.9801,7038.1992,5.3946,-3.64,1.1668,0.1686,2340.0,2340.0,-0.4337,-1.6059,4.124,-74.3579 2019-06-03 15:40:01.580,139.9197,7038.2261,5.3946,-3.64,0.8354,0.0048,2340.0,2340.0,-0.4132,-1.6119,4.1452,-74.3579 2019-06-03 15:40:01.600,139.911,7038.2808,5.3987,-3.6133,0.6889,0.0389,2340.0,2340.0,-0.4191,-1.6059,4.1359,-74.3841 2019-06-03 15:40:01.620,139.9283,7038.2534,5.403,-3.5991,1.274,0.083,2340.0,2340.0,-0.4161,-1.6119,4.1359,-74.3911 2019-06-03 15:40:01.640,139.9715,7038.3354,5.403,-3.5991,0.7977,0.0551,2340.0,2340.0,-0.422,-1.6119,4.1439,-74.3911 2019-06-03 15:40:01.660,139.9801,7038.3081,5.403,-3.5991,1.287,0.0773,2340.0,2340.0,-0.4278,-1.6119,4.1227,-74.3911 2019-06-03 15:40:01.680,139.911,7038.3081,5.4019,-3.5833,0.808,0.0924,2340.0,2340.0,-0.4103,-1.6089,4.1425,-74.4051 2019-06-03 15:40:01.700,139.9197,7038.2534,5.4027,-3.5626,0.8487,0.1373,2340.0,2340.0,-0.4249,-1.6119,4.1412,-74.4174 2019-06-03 15:40:01.720,139.911,7038.2808,5.4027,-3.5626,1.2252,0.0086,2340.0,2340.0,-0.422,-1.6119,4.1373,-74.4174 2019-06-03 15:40:01.740,139.6861,7038.2808,5.4027,-3.5626,0.8968,0.1603,2340.0,2340.0,-0.4191,-1.6059,4.1373,-74.4174 2019-06-03 15:40:01.760,139.7034,7038.3081,5.4058,-3.5446,1.1427,0.0015,2340.0,2340.0,-0.4308,-1.6059,4.1267,-74.4296 2019-06-03 15:40:01.780,139.6427,7038.3628,5.4058,-3.5446,0.95,0.1672,2340.0,2340.0,-0.4191,-1.6059,4.1452,-74.4296 2019-06-03 15:40:01.800,139.6514,7038.2808,5.4018,-3.5217,1.0203,0.1776,2340.0,2340.0,-0.4278,-1.6089,4.1465,-74.4698 2019-06-03 15:40:01.820,139.6427,7038.2808,5.3948,-3.5177,1.021,-0.0262,2340.0,2340.0,-0.4308,-1.6059,4.1359,-74.4786 2019-06-03 15:40:01.840,139.6947,7038.2808,5.3948,-3.5177,1.0983,0.1792,2340.0,2340.0,-0.422,-1.6059,4.1346,-74.4786 2019-06-03 15:40:01.860,139.7034,7038.2534,5.3948,-3.5177,0.8824,0.027,2340.0,2340.0,-0.422,-1.6089,4.1267,-74.4786 2019-06-03 15:40:01.880,139.6514,7038.2261,5.3935,-3.4995,1.0517,0.1537,2340.0,2340.0,-0.4249,-1.6059,4.1373,-74.4908 2019-06-03 15:40:01.900,139.6427,7038.1719,5.3903,-3.4824,1.1394,0.1505,2340.0,2340.0,-0.4191,-1.6089,4.1558,-74.5048 2019-06-03 15:40:01.920,139.6254,7038.1992,5.3903,-3.4824,0.9009,-0.0125,2340.0,2340.0,-0.4308,-1.6089,4.1293,-74.5048 2019-06-03 15:40:01.940,139.8333,7038.2261,5.3903,-3.4824,1.2496,0.1465,2340.0,2340.0,-0.422,-1.6089,4.1359,-74.5048 2019-06-03 15:40:01.960,139.8246,7038.2808,5.3836,-3.4696,0.8036,0.04,2340.0,2340.0,-0.4249,-1.6089,4.1359,-74.5205 2019-06-03 15:40:01.980,139.7727,7038.2261,5.3836,-3.4696,1.3217,0.1208,2340.0,2340.0,-0.4249,-1.6089,4.1439,-74.5205 2019-06-03 15:40:02.000,139.7813,7038.2534,5.3806,-3.4516,1.2829,0.0912,2340.0,2340.0,-0.4278,-1.6089,4.1425,-74.538 2019-06-03 15:40:02.020,139.7813,7038.2534,5.3735,-3.4506,0.7366,0.0829,2340.0,2340.0,-0.4278,-1.6059,4.1293,-74.5468 2019-06-03 15:40:02.040,139.8246,7038.2534,5.3735,-3.4506,1.2596,0.0501,2340.0,2340.0,-0.4308,-1.6089,4.132,-74.5468 2019-06-03 15:40:02.060,139.8333,7038.2534,5.3735,-3.4506,0.8513,0.1538,2340.0,2340.0,-0.4278,-1.6059,4.1346,-74.5468 2019-06-03 15:40:02.080,139.7727,7038.1445,5.3715,-3.4395,1.2607,-0.0124,2340.0,2340.0,-0.4132,-1.6059,4.1452,-74.5642 2019-06-03 15:40:02.100,139.7813,7038.0898,5.3618,-3.4382,1.1871,-0.0251,2340.0,2340.0,-0.4161,-1.6089,4.1412,-74.5835 2019-06-03 15:40:02.120,139.7727,7038.0352,5.3618,-3.4382,0.889,0.1642,2340.0,2340.0,-0.4278,-1.6089,4.1161,-74.5835 2019-06-03 15:40:02.140,139.5472,7038.0083,5.3618,-3.4382,1.1246,-0.0265,2340.0,2340.0,-0.4191,-1.6089,4.1346,-74.5835 2019-06-03 15:40:02.160,139.5646,7038.0898,5.3515,-3.4411,0.9852,0.1987,2340.0,2340.0,-0.422,-1.6089,4.1412,-74.6062 2019-06-03 15:40:02.180,139.495,7038.1172,5.3515,-3.4411,1.0392,-0.0613,2340.0,2340.0,-0.4044,-1.6059,4.1412,-74.6062 2019-06-03 15:40:02.200,139.5037,7038.1992,5.3452,-3.4451,0.9841,-0.0442,2340.0,2340.0,-0.4103,-1.6089,4.1346,-74.6394 2019-06-03 15:40:02.220,139.5124,7038.1172,5.3471,-3.4444,1.1424,0.157,2340.0,2340.0,-0.4103,-1.6089,4.1174,-74.6517 2019-06-03 15:40:02.240,139.5559,7038.1445,5.3471,-3.4444,0.9171,-0.0313,2340.0,2340.0,-0.4015,-1.6089,4.1465,-74.6517 2019-06-03 15:40:02.260,139.5733,7038.1172,5.3471,-3.4444,1.2415,0.1988,2340.0,2340.0,-0.4161,-1.6089,4.1373,-74.6517 2019-06-03 15:40:02.280,139.5037,7038.1172,5.3385,-3.4544,0.7278,-0.0287,2340.0,2340.0,-0.4103,-1.6059,4.1465,-74.6762 2019-06-03 15:40:02.300,139.5124,7038.1172,5.3327,-3.4631,0.7415,-0.0073,2340.0,2340.0,-0.4191,-1.6089,4.1346,-74.7024 2019-06-03 15:40:02.320,139.5037,7038.1445,5.3327,-3.4631,1.2629,0.1119,2340.0,2340.0,-0.4191,-1.6119,4.1306,-74.7024 2019-06-03 15:40:02.340,139.5646,7038.1445,5.3327,-3.4631,0.8524,0.0671,2340.0,2340.0,-0.422,-1.6119,4.1373,-74.7024 2019-06-03 15:40:02.360,139.5559,7038.1172,5.3332,-3.4642,1.2226,0.0651,2340.0,2340.0,-0.4191,-1.6089,4.1439,-74.7269 2019-06-03 15:40:02.380,139.5124,7038.1445,5.3332,-3.4642,0.8365,0.1007,2340.0,2340.0,-0.4308,-1.6119,4.1359,-74.7269 2019-06-03 15:40:02.400,139.5037,7038.1719,5.3284,-3.479,0.8062,0.1553,2400.0,2400.0,-0.4278,-1.6089,4.1346,-74.7793 2019-06-03 15:40:02.420,139.5211,7038.1172,5.3252,-3.4816,1.1623,0.0104,2400.0,2400.0,-0.422,-1.6089,4.128,-74.7916 2019-06-03 15:40:02.440,139.5646,7038.2261,5.3252,-3.4816,0.9711,0.15,2400.0,2400.0,-0.4074,-1.6089,4.1399,-74.7916 2019-06-03 15:40:02.460,139.5559,7038.1992,5.3252,-3.4816,1.0262,-0.0107,2400.0,2400.0,-0.4161,-1.6119,4.1412,-74.7916 2019-06-03 15:40:02.480,139.495,7038.1992,5.3207,-3.4919,1.0443,0.1966,2400.0,2400.0,-0.422,-1.6089,4.1373,-74.816 2019-06-03 15:40:02.500,139.5124,7038.0625,5.3199,-3.4941,1.0344,0.211,2400.0,2400.0,-0.422,-1.6119,4.1293,-74.8388 2019-06-03 15:40:02.520,139.5124,7038.0898,5.3199,-3.4941,0.8114,-0.0195,2400.0,2400.0,-0.422,-1.6089,4.132,-74.8388 2019-06-03 15:40:02.540,139.4254,7038.0898,5.3199,-3.4941,1.1176,0.1893,2400.0,2400.0,-0.4249,-1.6089,4.1386,-74.8388 2019-06-03 15:40:02.560,139.4254,7038.1445,5.3155,-3.5047,0.6246,-0.0194,2400.0,2400.0,-0.422,-1.6119,4.1306,-74.8632 2019-06-03 15:40:02.580,139.3732,7038.1445,5.303,-3.5148,1.2514,0.1577,2400.0,2400.0,-0.4015,-1.6119,4.1425,-74.8842 2019-06-03 15:40:02.600,139.3645,7038.1445,5.3078,-3.5161,1.3036,0.1229,2400.0,2400.0,-0.4044,-1.6089,4.1346,-74.8947 2019-06-03 15:40:02.620,139.3732,7038.0898,5.301,-3.5261,0.764,0.0906,2400.0,2400.0,-0.4132,-1.6089,4.128,-74.907 2019-06-03 15:40:02.640,139.4254,7038.0352,5.301,-3.5261,1.3213,0.0562,2400.0,2400.0,-0.4191,-1.6119,4.1333,-74.907 2019-06-03 15:40:02.660,139.4428,7038.0083,5.301,-3.5261,0.7307,0.1674,2400.0,2400.0,-0.4249,-1.6089,4.132,-74.907 2019-06-03 15:40:02.680,139.3819,7038.0083,5.3003,-3.5296,1.2318,-0.0323,2400.0,2400.0,-0.4191,-1.6119,4.1359,-74.9279 2019-06-03 15:40:02.700,139.3732,7038.0898,5.2901,-3.5457,1.1878,-0.0442,2400.0,2400.0,-0.422,-1.6119,4.1386,-74.9507 2019-06-03 15:40:02.720,139.3645,7039.0171,5.2901,-3.5457,0.9286,0.1962,2400.0,2400.0,-0.4161,-1.6119,4.1293,-74.9507 2019-06-03 15:40:02.740,139.4254,7040.2988,5.2901,-3.5457,1.0684,-0.057,2400.0,2400.0,-0.4191,-1.6119,4.1333,-74.9507 2019-06-03 15:40:02.760,139.4167,7041.1714,5.2791,-3.5613,1.0943,0.2253,2400.0,2400.0,-0.422,-1.6149,4.1386,-74.9699 2019-06-03 15:40:02.780,139.3645,7042.4805,5.2791,-3.5613,0.9009,-0.0523,2400.0,2400.0,-0.4278,-1.6119,4.1174,-74.9699 2019-06-03 15:40:02.800,139.3645,7043.353,5.2726,-3.5754,0.9438,-0.0235,2400.0,2400.0,-0.4161,-1.6089,4.1399,-75.0066 2019-06-03 15:40:02.820,139.3732,7044.1714,5.2771,-3.5768,1.1546,0.1955,2400.0,2400.0,-0.4074,-1.6149,4.1425,-75.0154 2019-06-03 15:40:02.840,139.4254,7045.4531,5.2771,-3.5768,0.7108,-0.0243,2400.0,2400.0,-0.4074,-1.6089,4.128,-75.0154 2019-06-03 15:40:02.860,139.4254,7046.2437,5.2771,-3.5768,1.3243,0.157,2400.0,2400.0,-0.4132,-1.6119,4.1333,-75.0154 2019-06-03 15:40:02.880,139.3645,7046.5166,5.2661,-3.596,0.6771,0.0345,2400.0,2400.0,-0.4308,-1.6119,4.1161,-75.0363 2019-06-03 15:40:02.900,139.3645,7046.4619,5.2609,-3.6081,0.818,0.0482,2400.0,2400.0,-0.4249,-1.6119,4.1373,-75.0521 2019-06-03 15:40:02.920,139.3732,7046.4346,5.2609,-3.6081,1.25,0.0815,2400.0,2400.0,-0.4278,-1.6149,4.1373,-75.0521 2019-06-03 15:40:02.940,139.1462,7046.4346,5.2609,-3.6081,0.7599,0.1024,2400.0,2400.0,-0.4278,-1.6119,4.1399,-75.0521 2019-06-03 15:40:02.960,139.1637,7046.4346,5.2609,-3.6164,1.3276,0.018,2400.0,2400.0,-0.4249,-1.6149,4.1293,-75.0678 2019-06-03 15:40:02.980,139.0937,7046.5166,5.2609,-3.6164,0.7285,0.1241,2400.0,2400.0,-0.422,-1.6119,4.1253,-75.0678 2019-06-03 15:40:03.000,139.1024,7046.5166,5.2601,-3.6358,0.879,0.1915,2400.0,2400.0,-0.4191,-1.6119,4.1373,-75.094 2019-06-03 15:40:03.020,139.1112,7046.5439,5.2572,-3.6422,1.105,-0.0262,2400.0,2400.0,-0.4161,-1.6209,4.1505,-75.1028 2019-06-03 15:40:03.040,139.1549,7046.5439,5.2572,-3.6422,0.9082,0.1663,2400.0,2400.0,-0.4278,-1.6179,4.1161,-75.1028 2019-06-03 15:40:03.060,139.1637,7046.5166,5.2572,-3.6422,1.1276,-0.0597,2400.0,2400.0,-0.4278,-1.6149,4.1293,-75.1028 2019-06-03 15:40:03.080,139.1024,7046.4619,5.2567,-3.6466,1.0458,0.1914,2400.0,2400.0,-0.4278,-1.6209,4.1346,-75.1168 2019-06-03 15:40:03.100,139.1024,7046.4072,5.2626,-3.6492,1.1083,0.184,2400.0,2400.0,-0.4161,-1.6179,4.1386,-75.129 2019-06-03 15:40:03.120,139.0937,7046.4346,5.2626,-3.6492,0.7041,-0.0064,2400.0,2400.0,-0.4161,-1.6149,4.1399,-75.129 2019-06-03 15:40:03.140,139.1549,7046.4619,5.2626,-3.6492,1.2045,0.1457,2400.0,2400.0,-0.4074,-1.6149,4.1267,-75.129 2019-06-03 15:40:03.160,139.1462,7046.5166,5.2622,-3.6553,0.7248,0.0064,2400.0,2400.0,-0.422,-1.6329,4.1253,-75.143 2019-06-03 15:40:03.180,139.1112,7046.5981,5.2622,-3.6553,1.3483,0.1204,2400.0,2400.0,-0.422,-1.6269,4.1373,-75.143 2019-06-03 15:40:03.200,139.1024,7046.5713,5.2681,-3.6557,1.3735,0.085,2400.0,2400.0,-0.4161,-1.6239,4.1399,-75.164 2019-06-03 15:40:03.220,139.1024,7046.5439,5.2669,-3.664,0.7215,0.1114,2400.0,2400.0,-0.422,-1.6209,4.1452,-75.171 2019-06-03 15:40:03.240,139.1462,7046.6255,5.2669,-3.664,1.3602,0.0474,2400.0,2400.0,-0.4249,-1.6179,4.12,-75.171 2019-06-03 15:40:03.260,139.1549,7046.5981,5.2669,-3.664,0.8339,0.1267,2400.0,2400.0,-0.422,-1.6149,4.1333,-75.171 2019-06-03 15:40:03.280,139.0937,7046.5981,5.2736,-3.668,1.1435,0.0368,2400.0,2400.0,-0.4366,-1.6179,4.1267,-75.1832 2019-06-03 15:40:03.300,139.1024,7046.5713,5.2745,-3.679,1.1893,-0.0213,2400.0,2400.0,-0.4191,-1.6179,4.1452,-75.1955 2019-06-03 15:40:03.320,139.0849,7046.5713,5.2745,-3.679,0.8239,0.1841,2400.0,2400.0,-0.4366,-1.6209,4.1439,-75.1955 2019-06-03 15:40:03.340,139.1549,7046.5439,5.2745,-3.679,1.1191,-0.0294,2400.0,2400.0,-0.4278,-1.6209,4.1306,-75.1955 2019-06-03 15:40:03.360,139.1549,7046.5439,5.2709,-3.6905,1.0743,0.2018,2400.0,2400.0,-0.4191,-1.6209,4.1306,-75.2077 2019-06-03 15:40:03.380,139.0937,7046.6528,5.2709,-3.6905,0.9534,-0.0363,2400.0,2400.0,-0.4191,-1.6209,4.1214,-75.2077 2019-06-03 15:40:03.400,139.1024,7046.6802,5.2696,-3.7019,1.0732,-0.0693,2340.0,2340.0,-0.4044,-1.6209,4.1399,-75.2234 2019-06-03 15:40:03.420,139.1024,7046.6802,5.2773,-3.6986,1.1901,0.2193,2340.0,2340.0,-0.4132,-1.6239,4.1333,-75.2269 2019-06-03 15:40:03.440,139.1462,7046.6802,5.2773,-3.6986,0.7444,-0.0257,2340.0,2340.0,-0.4044,-1.6179,4.1306,-75.2269 2019-06-03 15:40:03.460,139.1724,7046.6802,5.2773,-3.6986,1.2899,0.1605,2340.0,2340.0,-0.4249,-1.6209,4.1306,-75.2269 2019-06-03 15:40:03.480,139.1024,7046.6528,5.2722,-3.6974,0.7892,0.0533,2340.0,2340.0,-0.4454,-1.6239,4.1346,-75.2322 2019-06-03 15:40:03.500,139.0937,7046.6528,5.2688,-3.6982,0.7906,0.0334,2340.0,2340.0,-0.422,-1.6209,4.1531,-75.2392 2019-06-03 15:40:03.520,139.1024,7046.6528,5.2688,-3.6982,1.2966,0.0908,2340.0,2340.0,-0.4191,-1.6388,4.1359,-75.2392 2019-06-03 15:40:03.540,139.1637,7046.6802,5.2688,-3.6982,0.7189,0.0866,2340.0,2340.0,-0.4103,-1.6359,4.1161,-75.2392 2019-06-03 15:40:03.560,139.1462,7046.7075,5.2744,-3.6928,1.3025,0.0574,2340.0,2340.0,-0.422,-1.6299,4.1293,-75.2462 2019-06-03 15:40:03.580,139.0937,7046.7349,5.2744,-3.6928,0.794,0.1197,2340.0,2340.0,-0.4366,-1.6299,4.1333,-75.2462 2019-06-03 15:40:03.600,139.0937,7046.7891,5.2714,-3.6897,0.8062,0.1091,2340.0,2340.0,-0.4132,-1.6329,4.1531,-75.2514 2019-06-03 15:40:03.620,139.1112,7046.7075,5.273,-3.6873,1.2248,-0.0123,2340.0,2340.0,-0.4191,-1.6359,4.1465,-75.2549 2019-06-03 15:40:03.640,139.1549,7046.7075,5.273,-3.6873,0.9352,0.1531,2340.0,2340.0,-0.4249,-1.6388,4.1002,-75.2549 2019-06-03 15:40:03.660,139.1549,7046.6802,5.273,-3.6873,1.1313,-0.0176,2340.0,2340.0,-0.4074,-1.6239,4.1359,-75.2549 2019-06-03 15:40:03.680,139.0937,7046.6802,5.2715,-3.6894,0.9256,0.1918,2340.0,2340.0,-0.4161,-1.6448,4.1465,-75.2654 2019-06-03 15:40:03.700,139.1112,7046.5713,5.2732,-3.68,1.1054,0.1497,2340.0,2340.0,-0.4191,-1.6209,4.1359,-75.2724 2019-06-03 15:40:03.720,139.0849,7046.6528,5.2732,-3.68,0.8776,-0.0342,2340.0,2340.0,-0.4278,-1.6269,4.128,-75.2724 2019-06-03 15:40:03.740,139.1549,7046.6528,5.2732,-3.68,1.2089,0.1563,2340.0,2340.0,-0.4249,-1.6269,4.1134,-75.2724 2019-06-03 15:40:03.760,139.1549,7046.6255,5.2734,-3.676,0.9504,0.0078,2340.0,2340.0,-0.4132,-1.6239,4.1399,-75.2794 2019-06-03 15:40:03.780,139.1024,7046.6802,5.2734,-3.676,1.139,0.1682,2340.0,2340.0,-0.4074,-1.6448,4.1452,-75.2794 2019-06-03 15:40:03.800,139.1024,7046.6802,5.2696,-3.6696,1.2152,0.1131,2340.0,2340.0,-0.4161,-1.6388,4.1306,-75.2864 2019-06-03 15:40:03.820,139.1024,7046.7349,5.266,-3.6696,0.7378,0.0002,2340.0,2340.0,-0.4161,-1.6448,4.1306,-75.2899 2019-06-03 15:40:03.840,139.1462,7046.7349,5.266,-3.6696,1.2278,0.121,2340.0,2340.0,-0.4308,-1.6359,4.1174,-75.2899 2019-06-03 15:40:03.860,139.1549,7046.7622,5.266,-3.6696,0.8128,0.0599,2340.0,2340.0,-0.4191,-1.6329,4.1399,-75.2899 2019-06-03 15:40:03.880,139.1112,7046.6802,5.266,-3.6605,1.3225,0.0732,2340.0,2340.0,-0.3986,-1.6388,4.1531,-75.2969 2019-06-03 15:40:03.900,139.1024,7046.6255,5.2605,-3.6565,1.1908,0.0283,2340.0,2340.0,-0.4161,-1.6329,4.1214,-75.3021 2019-06-03 15:40:03.920,139.1024,7046.6528,5.2605,-3.6565,0.8232,0.1065,2340.0,2340.0,-0.4074,-1.6329,4.1359,-75.3021 2019-06-03 15:40:03.940,139.1549,7046.6528,5.2605,-3.6565,1.1963,0.0247,2340.0,2340.0,-0.4278,-1.6388,4.1227,-75.3021 2019-06-03 15:40:03.960,139.1462,7046.7075,5.254,-3.6573,0.8491,0.187,2340.0,2340.0,-0.4191,-1.6359,4.1478,-75.3109 2019-06-03 15:40:03.980,139.0937,7046.7075,5.2569,-3.6493,1.0447,-0.0172,2340.0,2340.0,-0.4191,-1.6359,4.1373,-75.3004 2019-06-03 15:40:04.000,139.0937,7046.8164,5.2513,-3.6482,1.0451,-0.0469,2340.0,2340.0,-0.4191,-1.6359,4.1267,-75.3039 2019-06-03 15:40:04.020,139.1024,7046.7891,5.2559,-3.6421,1.0721,0.2073,2340.0,2340.0,-0.4191,-1.6329,4.1333,-75.3074 2019-06-03 15:40:04.040,139.1637,7046.7622,5.2559,-3.6421,0.9264,0.0058,2340.0,2340.0,-0.422,-1.6329,4.1253,-75.3074 2019-06-03 15:40:04.060,139.1637,7046.7622,5.2559,-3.6421,1.1246,0.1808,2340.0,2340.0,-0.4103,-1.6359,4.1452,-75.3074 2019-06-03 15:40:04.080,139.0849,7046.7622,5.2518,-3.6408,0.8054,0.0031,2340.0,2340.0,-0.4103,-1.6329,4.1412,-75.3144 2019-06-03 15:40:04.100,139.1112,7046.8438,5.2468,-3.6419,0.7914,-0.0299,2340.0,2340.0,-0.4191,-1.6359,4.124,-75.3249 2019-06-03 15:40:04.120,139.0849,7047.7441,5.2468,-3.6419,1.318,0.1551,2340.0,2340.0,-0.4161,-1.6359,4.1373,-75.3249 2019-06-03 15:40:04.140,139.1462,7049.0806,5.2468,-3.6419,0.7078,0.064,2340.0,2340.0,-0.4308,-1.6329,4.1293,-75.3249 2019-06-03 15:40:04.160,139.1637,7049.9805,5.2506,-3.6377,1.3188,0.0821,2340.0,2340.0,-0.4278,-1.6359,4.1439,-75.3354 2019-06-03 15:40:04.180,139.1112,7051.1538,5.2506,-3.6377,0.7392,0.1113,2340.0,2340.0,-0.4424,-1.6359,4.1333,-75.3354 2019-06-03 15:40:04.200,139.1024,7051.999,5.2473,-3.6391,0.7733,0.0918,2340.0,2340.0,-0.4278,-1.6329,4.1359,-75.3493 2019-06-03 15:40:04.220,139.1024,7052.8994,5.2477,-3.6361,1.2522,0.0101,2340.0,2340.0,-0.4161,-1.6359,4.1359,-75.3563 2019-06-03 15:40:04.240,139.1462,7054.2632,5.2477,-3.6361,0.8487,0.1484,2340.0,2340.0,-0.4044,-1.6359,4.1306,-75.3563 2019-06-03 15:40:04.260,139.1549,7055.0815,5.2477,-3.6361,1.2071,-0.0102,2340.0,2340.0,-0.3986,-1.6359,4.1346,-75.3563 2019-06-03 15:40:04.280,139.1024,7055.436,5.2448,-3.6375,0.8568,0.1829,2340.0,2340.0,-0.4161,-1.6478,4.1399,-75.3686 2019-06-03 15:40:04.300,139.0937,7055.354,5.2484,-3.6342,0.896,0.1587,2340.0,2340.0,-0.4424,-1.6448,4.1187,-75.3843 2019-06-03 15:40:04.320,139.1112,7055.2451,5.2484,-3.6342,1.0776,-0.0478,2340.0,2340.0,-0.422,-1.6359,4.1412,-75.3843 2019-06-03 15:40:04.340,139.0236,7055.2451,5.2484,-3.6342,1.0177,0.1865,2340.0,2340.0,-0.4278,-1.6418,4.1333,-75.3843 2019-06-03 15:40:04.360,139.0236,7055.2451,5.2503,-3.6334,0.9852,-0.0323,2340.0,2340.0,-0.4191,-1.6388,4.1306,-75.3983 2019-06-03 15:40:04.380,138.9535,7055.3271,5.2503,-3.6334,1.1231,0.2017,2340.0,2340.0,-0.4103,-1.6388,4.1399,-75.3983 2019-06-03 15:40:04.400,138.9535,7055.3271,5.2491,-3.6358,1.1124,0.1525,2400.0,2400.0,-0.4103,-1.6418,4.124,-75.4158 2019-06-03 15:40:04.420,138.9622,7055.354,5.2435,-3.639,0.8036,0.0181,2400.0,2400.0,-0.4103,-1.6359,4.1306,-75.4228 2019-06-03 15:40:04.440,139.0324,7055.2998,5.2435,-3.639,1.2625,0.1237,2400.0,2400.0,-0.4103,-1.6359,4.1373,-75.4228 2019-06-03 15:40:04.460,139.0324,7055.1904,5.2435,-3.639,0.656,0.0323,2400.0,2400.0,-0.4132,-1.6388,4.132,-75.4228 2019-06-03 15:40:04.480,138.9622,7055.2178,5.2486,-3.6397,1.3439,0.0701,2400.0,2400.0,-0.4191,-1.6359,4.132,-75.4403 2019-06-03 15:40:04.500,138.971,7055.1904,5.25,-3.6392,1.2304,0.0605,2400.0,2400.0,-0.4278,-1.6388,4.132,-75.4577 2019-06-03 15:40:04.520,138.9535,7055.2178,5.25,-3.6392,0.8491,0.1238,2400.0,2400.0,-0.4103,-1.6388,4.1386,-75.4577 2019-06-03 15:40:04.540,139.0236,7055.1904,5.25,-3.6392,1.2478,0.0353,2400.0,2400.0,-0.3986,-1.6359,4.1412,-75.4577 2019-06-03 15:40:04.560,139.0061,7055.1631,5.2471,-3.6491,0.9068,0.1268,2400.0,2400.0,-0.3898,-1.6329,4.1267,-75.477 2019-06-03 15:40:04.580,138.971,7055.0815,5.2471,-3.6491,1.2396,-0.0298,2400.0,2400.0,-0.3898,-1.6359,4.132,-75.477 2019-06-03 15:40:04.600,138.9622,7054.9995,5.2512,-3.6517,1.0643,-0.0066,2400.0,2400.0,-0.4074,-1.6329,4.1227,-75.505 2019-06-03 15:40:04.620,138.971,7055.0542,5.255,-3.6525,1.0351,0.1603,2400.0,2400.0,-0.4044,-1.6269,4.1478,-75.5154 2019-06-03 15:40:04.640,139.0149,7055.0815,5.255,-3.6525,0.9486,0.0051,2400.0,2400.0,-0.422,-1.6359,4.1359,-75.5154 2019-06-03 15:40:04.660,139.0149,7055.1089,5.255,-3.6525,0.994,0.14,2400.0,2400.0,-0.3957,-1.6299,4.1359,-75.5154 2019-06-03 15:40:04.680,138.9622,7055.1631,5.253,-3.6631,0.8835,-0.0047,2400.0,2400.0,-0.3898,-1.6329,4.1333,-75.5382 2019-06-03 15:40:04.700,138.9535,7055.1631,5.2497,-3.6735,0.7991,0.0129,2400.0,2400.0,-0.3781,-1.6299,4.1333,-75.5592 2019-06-03 15:40:04.720,138.9622,7055.2178,5.2497,-3.6735,1.2574,0.15,2400.0,2400.0,-0.3898,-1.6359,4.1399,-75.5592 2019-06-03 15:40:04.740,139.0236,7055.1631,5.2497,-3.6735,0.7866,0.0239,2400.0,2400.0,-0.3957,-1.6359,4.1412,-75.5592 2019-06-03 15:40:04.760,139.0061,7055.2725,5.2534,-3.6761,1.2396,0.1212,2400.0,2400.0,-0.3957,-1.6299,4.132,-75.5819 2019-06-03 15:40:04.780,138.9622,7055.3813,5.2534,-3.6761,0.717,0.0482,2400.0,2400.0,-0.4074,-1.6329,4.1333,-75.5819 2019-06-03 15:40:04.800,138.9535,7055.4087,5.2495,-3.6839,0.7936,0.0997,2400.0,2400.0,-0.4044,-1.6448,4.1373,-75.6204 2019-06-03 15:40:04.820,138.9535,7055.4087,5.2465,-3.6828,1.3262,0.0396,2400.0,2400.0,-0.3928,-1.6448,4.1386,-75.6309 2019-06-03 15:40:04.840,139.0061,7055.4087,5.2465,-3.6828,0.7851,0.1609,2400.0,2400.0,-0.3781,-1.6448,4.1425,-75.6309 2019-06-03 15:40:04.860,139.0236,7055.3813,5.2465,-3.6828,1.291,-0.0263,2400.0,2400.0,-0.3752,-1.6448,4.1214,-75.6309 2019-06-03 15:40:04.880,138.971,7055.2998,5.2395,-3.6856,0.9149,0.1779,2400.0,2400.0,-0.3898,-1.6448,4.1346,-75.6571 2019-06-03 15:40:04.900,138.971,7055.2725,5.2365,-3.6851,0.9933,0.1899,2400.0,2400.0,-0.3928,-1.6418,4.1439,-75.6816 2019-06-03 15:40:04.920,138.9535,7055.3271,5.2365,-3.6851,1.085,-0.0338,2400.0,2400.0,-0.3869,-1.6418,4.1373,-75.6816 2019-06-03 15:40:04.940,139.1549,7055.3271,5.2365,-3.6851,1.0636,0.2149,2400.0,2400.0,-0.384,-1.6418,4.1386,-75.6816 2019-06-03 15:40:04.960,139.1375,7055.354,5.2329,-3.681,0.8942,-0.036,2400.0,2400.0,-0.3811,-1.6418,4.124,-75.7078 2019-06-03 15:40:04.980,139.1024,7055.4087,5.2329,-3.681,1.2585,0.171,2400.0,2400.0,-0.3869,-1.6418,4.1425,-75.7078 2019-06-03 15:40:05.000,139.1024,7055.354,5.223,-3.6748,1.1627,0.1523,2400.0,2400.0,-0.3957,-1.6418,4.1373,-75.7288 2019-06-03 15:40:05.020,139.1199,7055.2725,5.2125,-3.6739,0.8395,-0.0127,2400.0,2400.0,-0.3869,-1.6418,4.1359,-75.741 2019-06-03 15:40:05.040,139.1549,7055.2725,5.2125,-3.6739,1.2566,0.1485,2400.0,2400.0,-0.3811,-1.6478,4.1386,-75.741 2019-06-03 15:40:05.060,139.1549,7055.2725,5.2125,-3.6739,0.7318,0.0383,2400.0,2400.0,-0.3811,-1.6418,4.1147,-75.741 2019-06-03 15:40:05.080,139.0937,7055.2725,5.2128,-3.6608,1.3291,0.0835,2400.0,2400.0,-0.384,-1.6269,4.1439,-75.7672 2019-06-03 15:40:05.100,139.0937,7055.2451,5.2065,-3.6511,1.2618,0.0985,2400.0,2400.0,-0.3781,-1.6418,4.1465,-75.7952 2019-06-03 15:40:05.120,139.0937,7055.2178,5.2065,-3.6511,0.7688,0.0942,2400.0,2400.0,-0.384,-1.6448,4.132,-75.7952 2019-06-03 15:40:05.140,138.8832,7055.1089,5.2065,-3.6511,1.3435,0.0134,2400.0,2400.0,-0.3898,-1.6418,4.1306,-75.7952 2019-06-03 15:40:05.160,138.8832,7055.1089,5.196,-3.6475,0.8247,0.1569,2400.0,2400.0,-0.3869,-1.6388,4.1346,-75.8232 2019-06-03 15:40:05.180,138.8217,7055.2178,5.196,-3.6475,1.1734,-0.0378,2400.0,2400.0,-0.3898,-1.6388,4.1359,-75.8232 2019-06-03 15:40:05.200,138.8393,7055.2451,5.1888,-3.6309,1.1168,-0.0388,2400.0,2400.0,-0.3898,-1.6418,4.1425,-75.8634 2019-06-03 15:40:05.220,138.8305,7055.2178,5.1895,-3.6249,0.9401,0.169,2400.0,2400.0,-0.384,-1.6388,4.1253,-75.8756 2019-06-03 15:40:05.240,138.8745,7055.2178,5.1895,-3.6249,1.1194,-0.0358,2400.0,2400.0,-0.3898,-1.6388,4.1373,-75.8756 2019-06-03 15:40:05.260,138.8832,7055.2178,5.1895,-3.6249,1.0617,0.1752,2400.0,2400.0,-0.3957,-1.6329,4.1214,-75.8756 2019-06-03 15:40:05.280,138.8393,7055.0815,5.1857,-3.6198,0.9741,-0.0293,2400.0,2400.0,-0.3869,-1.6269,4.1452,-75.9036 2019-06-03 15:40:05.300,138.8393,7055.1357,5.1772,-3.6172,0.8938,-0.0092,2400.0,2400.0,-0.3928,-1.6329,4.1439,-75.9298 2019-06-03 15:40:05.320,138.8217,7056.0088,5.1772,-3.6172,1.0462,0.1607,2400.0,2400.0,-0.384,-1.6299,4.1267,-75.9298 2019-06-03 15:40:05.340,138.5927,7057.1821,5.1772,-3.6172,0.8269,-0.0286,2400.0,2400.0,-0.4074,-1.6299,4.1227,-75.9298 2019-06-03 15:40:05.360,138.6191,7058.0552,5.1743,-3.6094,1.298,0.151,2400.0,2400.0,-0.3986,-1.6299,4.1333,-75.9578 2019-06-03 15:40:05.380,138.5573,7059.3101,5.1757,-3.6084,0.7599,0.0331,2400.0,2400.0,-0.3928,-1.6329,4.1373,-75.9823 2019-06-03 15:40:05.400,138.5573,7060.1289,5.1669,-3.6138,0.7651,0.0928,2340.0,2340.0,-0.3869,-1.6448,4.1439,-75.9945 2019-06-03 15:40:05.420,138.5485,7060.9199,5.1662,-3.6102,1.1523,0.0894,2340.0,2340.0,-0.3928,-1.6388,4.1227,-76.0068 2019-06-03 15:40:05.440,138.6015,7062.1475,5.1662,-3.6102,0.7374,0.0791,2340.0,2340.0,-0.3928,-1.6388,4.1293,-76.0068 2019-06-03 15:40:05.460,138.6191,7062.9932,5.1662,-3.6102,1.2067,0.0535,2340.0,2340.0,-0.4015,-1.6388,4.132,-76.0068 2019-06-03 15:40:05.480,138.5485,7063.2388,5.1554,-3.6184,0.8668,0.1346,2340.0,2340.0,-0.3957,-1.6299,4.1359,-76.033 2019-06-03 15:40:05.500,138.5573,7063.2388,5.1526,-3.6181,0.8624,0.1738,2340.0,2340.0,-0.3986,-1.6418,4.132,-76.0557 2019-06-03 15:40:05.520,138.5397,7063.2388,5.1526,-3.6181,1.1505,0.0068,2340.0,2340.0,-0.4044,-1.6388,4.1293,-76.0557 2019-06-03 15:40:05.540,138.6103,7063.2388,5.1526,-3.6181,0.9652,0.1364,2340.0,2340.0,-0.3957,-1.6359,4.1373,-76.0557 2019-06-03 15:40:05.560,138.6015,7063.2935,5.1496,-3.6188,1.021,0.018,2340.0,2340.0,-0.3869,-1.6359,4.1306,-76.0767 2019-06-03 15:40:05.580,138.5485,7063.2388,5.1496,-3.6188,0.99,0.1776,2340.0,2340.0,-0.3752,-1.6359,4.1346,-76.0767 2019-06-03 15:40:05.600,138.5573,7063.2661,5.1403,-3.6293,1.0662,0.1918,2340.0,2340.0,-0.3781,-1.6388,4.1359,-76.1082 2019-06-03 15:40:05.620,138.5573,7063.2661,5.1336,-3.639,0.9667,-0.006,2340.0,2340.0,-0.384,-1.6359,4.1253,-76.1204 2019-06-03 15:40:05.640,138.6015,7063.3208,5.1336,-3.639,1.1853,0.1306,2340.0,2340.0,-0.3957,-1.6269,4.1373,-76.1204 2019-06-03 15:40:05.660,138.6103,7063.2935,5.1336,-3.639,0.869,0.0624,2340.0,2340.0,-0.4103,-1.6329,4.1227,-76.1204 2019-06-03 15:40:05.680,138.5485,7063.2388,5.1303,-3.6459,1.1653,0.0901,2340.0,2340.0,-0.3928,-1.6299,4.1465,-76.1449 2019-06-03 15:40:05.700,138.5485,7063.1846,5.1255,-3.6628,1.1823,0.0919,2340.0,2340.0,-0.3986,-1.6329,4.1425,-76.1694 2019-06-03 15:40:05.720,138.5397,7063.1846,5.1255,-3.6628,0.7958,0.0823,2340.0,2340.0,-0.3898,-1.6388,4.1293,-76.1694 2019-06-03 15:40:05.740,138.6103,7063.2114,5.1255,-3.6628,1.22,0.033,2340.0,2340.0,-0.3928,-1.6329,4.1306,-76.1694 2019-06-03 15:40:05.760,138.6015,7063.2661,5.1165,-3.682,0.8506,0.101,2340.0,2340.0,-0.3811,-1.6299,4.124,-76.1939 2019-06-03 15:40:05.780,138.5485,7063.2661,5.1165,-3.682,1.166,0.0372,2340.0,2340.0,-0.3694,-1.6329,4.1386,-76.1939 2019-06-03 15:40:05.800,138.5485,7063.3208,5.113,-3.7126,1.0599,0.0406,2340.0,2340.0,-0.3665,-1.6359,4.1439,-76.2306 2019-06-03 15:40:05.820,138.5662,7063.2661,5.1106,-3.7215,0.9537,0.1271,2340.0,2340.0,-0.384,-1.6239,4.1161,-76.2428 2019-06-03 15:40:05.840,138.6103,7063.3208,5.1106,-3.7215,1.0399,-0.0052,2340.0,2340.0,-0.3781,-1.6209,4.1359,-76.2428 2019-06-03 15:40:05.860,138.6103,7063.3481,5.1106,-3.7215,1.0244,0.1496,2340.0,2340.0,-0.3781,-1.6359,4.1373,-76.2428 2019-06-03 15:40:05.880,138.5397,7063.3208,5.1051,-3.7451,1.0014,0.006,2340.0,2340.0,-0.3665,-1.6149,4.1346,-76.2673 2019-06-03 15:40:05.900,138.5573,7063.3208,5.096,-3.7699,0.8273,0.0389,2340.0,2340.0,-0.3694,-1.6209,4.1373,-76.29 2019-06-03 15:40:05.920,138.5397,7063.2935,5.096,-3.7699,1.1098,0.1152,2340.0,2340.0,-0.3723,-1.6209,4.1094,-76.29 2019-06-03 15:40:05.940,138.6103,7063.3755,5.096,-3.7699,0.9053,0.047,2340.0,2340.0,-0.3723,-1.6209,4.1333,-76.29 2019-06-03 15:40:05.960,138.6015,7063.3755,5.0902,-3.791,1.176,0.1035,2340.0,2340.0,-0.3752,-1.6239,4.1399,-76.311 2019-06-03 15:40:05.980,138.5485,7063.4297,5.0902,-3.791,0.9138,0.0545,2340.0,2340.0,-0.3665,-1.6209,4.1386,-76.311 2019-06-03 15:40:06.000,138.5485,7063.4844,5.0814,-3.8315,0.9009,0.0613,2340.0,2340.0,-0.3781,-1.6209,4.132,-76.325 2019-06-03 15:40:06.020,138.5485,7063.4297,5.0811,-3.842,1.1242,0.0799,2340.0,2340.0,-0.3752,-1.6209,4.124,-76.3338 2019-06-03 15:40:06.040,138.5927,7063.5117,5.0811,-3.842,0.8591,0.1045,2340.0,2340.0,-0.3694,-1.6209,4.1253,-76.3338 2019-06-03 15:40:06.060,138.6191,7063.4844,5.0811,-3.842,1.1834,0.0189,2340.0,2340.0,-0.3781,-1.6209,4.1399,-76.3338 2019-06-03 15:40:06.080,138.5485,7063.457,5.076,-3.8628,0.8946,0.1501,2340.0,2340.0,-0.3752,-1.6179,4.1359,-76.353 2019-06-03 15:40:06.100,138.5485,7063.3755,5.0751,-3.881,0.99,0.1775,2340.0,2340.0,-0.384,-1.6179,4.1399,-76.3705 2019-06-03 15:40:06.120,138.5485,7063.3755,5.0751,-3.881,0.9844,-0.0462,2340.0,2340.0,-0.3898,-1.6209,4.1253,-76.3705 2019-06-03 15:40:06.140,138.5927,7063.3755,5.0751,-3.881,1.0573,0.2057,2340.0,2340.0,-0.3811,-1.5969,4.128,-76.3705 2019-06-03 15:40:06.160,138.6015,7063.4297,5.0712,-3.8989,1.0092,-0.0204,2340.0,2340.0,-0.3752,-1.5969,4.1412,-76.3862 2019-06-03 15:40:06.180,138.5485,7063.5117,5.0712,-3.8989,1.1065,0.1639,2340.0,2340.0,-0.3577,-1.552,4.1386,-76.3862 2019-06-03 15:40:06.200,138.5309,7063.5391,5.0666,-3.9252,1.2111,0.1392,2340.0,2340.0,-0.3694,-1.57,4.1267,-76.4054 2019-06-03 15:40:06.220,138.5573,7063.457,5.0633,-3.9347,0.7966,0.0335,2340.0,2340.0,-0.3665,-1.579,4.1267,-76.4142 2019-06-03 15:40:06.240,138.6103,7063.4302,5.0633,-3.9347,1.2045,0.1356,2340.0,2340.0,-0.3811,-1.579,4.1306,-76.4142 2019-06-03 15:40:06.260,138.6103,7063.4028,5.0633,-3.9347,0.7655,0.0963,2340.0,2340.0,-0.3781,-1.579,4.1531,-76.4142 2019-06-03 15:40:06.280,138.5485,7063.4028,5.0611,-3.9488,1.2744,0.0476,2340.0,2340.0,-0.3869,-1.549,4.1253,-76.4282 2019-06-03 15:40:06.300,138.5485,7063.3755,5.0553,-3.964,1.2407,0.0241,2340.0,2340.0,-0.3723,-1.549,4.132,-76.4404 2019-06-03 15:40:06.320,138.5397,7063.3755,5.0553,-3.964,0.8402,0.1273,2340.0,2340.0,-0.3811,-1.552,4.124,-76.4404 2019-06-03 15:40:06.340,138.6103,7063.3755,5.0553,-3.964,1.2163,0.0299,2340.0,2340.0,-0.3577,-1.552,4.1306,-76.4404 2019-06-03 15:40:06.360,138.5927,7063.3208,5.047,-3.9815,0.8883,0.1778,2340.0,2340.0,-0.3635,-1.558,4.132,-76.4544 2019-06-03 15:40:06.380,138.5485,7063.3481,5.047,-3.9815,1.1283,-0.0087,2340.0,2340.0,-0.3606,-1.549,4.1306,-76.4544 2019-06-03 15:40:06.400,138.5573,7063.3481,5.0375,-4.0051,1.0521,-0.0128,2400.0,2400.0,-0.3723,-1.546,4.1333,-76.4701 2019-06-03 15:40:06.420,138.5662,7063.3208,5.0377,-4.0119,1.1198,0.1485,2400.0,2400.0,-0.3957,-1.549,4.1134,-76.4771 2019-06-03 15:40:06.440,138.6015,7063.3481,5.0377,-4.0119,0.9992,-0.0204,2400.0,2400.0,-0.3665,-1.5161,4.1253,-76.4771 2019-06-03 15:40:06.460,138.6015,7063.3481,5.0377,-4.0119,1.152,0.1779,2400.0,2400.0,-0.3752,-1.5011,4.12,-76.4771 2019-06-03 15:40:06.480,138.5485,7063.3208,5.0288,-4.0183,0.7951,-0.0122,2400.0,2400.0,-0.3635,-1.4471,4.1293,-76.4824 2019-06-03 15:40:06.500,138.5573,7063.2661,5.0175,-4.0293,0.8284,-0.0056,2400.0,2400.0,-0.3577,-1.4171,4.1227,-76.4894 2019-06-03 15:40:06.520,138.5397,7063.2935,5.0175,-4.0293,1.1986,0.1269,2400.0,2400.0,-0.3665,-1.4201,4.12,-76.4894 2019-06-03 15:40:06.540,138.7513,7063.3208,5.0175,-4.0293,0.8243,0.0448,2400.0,2400.0,-0.3635,-1.3961,4.1121,-76.4894 2019-06-03 15:40:06.560,138.7249,7063.3481,5.0138,-4.0273,1.3054,0.1116,2400.0,2400.0,-0.3606,-1.3931,4.1359,-76.4981 2019-06-03 15:40:06.580,138.6897,7063.4297,5.0138,-4.0273,0.6427,0.0832,2400.0,2400.0,-0.3694,-1.333,4.1094,-76.4981 2019-06-03 15:40:06.600,138.672,7063.4844,4.9989,-4.0238,0.8365,0.0872,2400.0,2400.0,-0.3694,-1.333,4.1147,-76.5034 2019-06-03 15:40:06.620,138.6897,7063.457,4.9967,-4.0176,1.1938,0.063,2400.0,2400.0,-0.3781,-1.351,4.1147,-76.5069 2019-06-03 15:40:06.640,138.7425,7063.3755,4.9967,-4.0176,0.8709,0.1128,2400.0,2400.0,-0.3606,-1.345,4.1214,-76.5069 2019-06-03 15:40:06.660,138.7425,7063.3208,4.9967,-4.0176,1.1586,0.0155,2400.0,2400.0,-0.3606,-1.363,4.1253,-76.5069 2019-06-03 15:40:06.680,138.6809,7063.2661,4.9895,-4.008,0.9271,0.1418,2400.0,2400.0,-0.3665,-1.357,4.1161,-76.5104 2019-06-03 15:40:06.700,138.6985,7063.1572,4.9892,-3.9903,0.983,0.1576,2400.0,2400.0,-0.3665,-1.366,4.1227,-76.5139 2019-06-03 15:40:06.720,138.672,7063.1846,4.9892,-3.9903,1.0144,-0.0126,2400.0,2400.0,-0.3665,-1.4261,4.1293,-76.5139 2019-06-03 15:40:06.740,138.4513,7063.1572,4.9892,-3.9903,1.034,0.171,2400.0,2400.0,-0.3548,-1.4171,4.124,-76.5139 2019-06-03 15:40:06.760,138.4601,7063.2114,4.987,-3.9786,0.7818,-0.0181,2400.0,2400.0,-0.3343,-1.4411,4.1412,-76.5173 2019-06-03 15:40:06.780,138.3982,7063.1299,4.9834,-3.9613,1.1608,0.1857,2400.0,2400.0,-0.346,-1.4411,4.1161,-76.5278 2019-06-03 15:40:06.800,138.407,7063.1299,4.9875,-3.9501,1.1971,0.1981,2400.0,2400.0,-0.3518,-1.4411,4.1253,-76.5278 2019-06-03 15:40:06.820,138.407,7063.1025,4.982,-3.9477,0.7455,0.0249,2400.0,2400.0,-0.3665,-1.4411,4.1386,-76.5278 2019-06-03 15:40:06.840,138.4601,7063.1299,4.982,-3.9477,1.1675,0.1204,2400.0,2400.0,-0.3694,-1.4381,4.1293,-76.5278 2019-06-03 15:40:06.860,138.4778,7063.1299,4.982,-3.9477,0.8383,0.0698,2400.0,2400.0,-0.3665,-1.4381,4.1346,-76.5278 2019-06-03 15:40:06.880,138.407,7063.1572,4.9809,-3.9269,1.1472,0.1018,2400.0,2400.0,-0.3489,-1.4381,4.1253,-76.5278 2019-06-03 15:40:06.900,138.407,7063.1299,4.9784,-3.9063,1.2219,0.0927,2400.0,2400.0,-0.3343,-1.4381,4.1227,-76.5278 2019-06-03 15:40:06.920,138.407,7063.1572,4.9784,-3.9063,0.7292,0.1221,2400.0,2400.0,-0.3314,-1.4621,4.124,-76.5278 2019-06-03 15:40:06.940,138.4601,7063.1572,4.9784,-3.9063,1.1316,0.0072,2400.0,2400.0,-0.3226,-1.4561,4.1227,-76.5278 2019-06-03 15:40:06.960,138.4601,7063.2114,4.9712,-3.8856,0.8957,0.1718,2400.0,2400.0,-0.3168,-1.4531,4.1439,-76.5243 2019-06-03 15:40:06.980,138.407,7063.2935,4.9712,-3.8856,1.0636,-0.0046,2400.0,2400.0,-0.3138,-1.4531,4.1253,-76.5243 2019-06-03 15:40:07.000,138.3982,7063.2935,4.9718,-3.8464,1.0684,-0.0177,2400.0,2400.0,-0.3051,-1.4531,4.124,-76.5243 2019-06-03 15:40:07.020,138.4159,7063.2935,4.9754,-3.8306,0.9452,0.205,2400.0,2400.0,-0.2963,-1.4741,4.1333,-76.5243 2019-06-03 15:40:07.040,138.469,7063.3208,4.9754,-3.8306,1.0136,-0.0428,2400.0,2400.0,-0.308,-1.4621,4.1412,-76.5243 2019-06-03 15:40:07.060,138.4601,7063.2935,4.9754,-3.8306,1.1239,0.1798,2400.0,2400.0,-0.3372,-1.4651,4.1412,-76.5243 2019-06-03 15:40:07.080,138.3982,7063.2935,4.9709,-3.8043,0.8062,-0.0276,2400.0,2400.0,-0.3752,-1.4681,4.124,-76.5226 2019-06-03 15:40:07.100,138.4247,7063.3755,4.9655,-3.7802,0.9049,-0.0036,2400.0,2400.0,-0.3869,-1.4651,4.1253,-76.5209 2019-06-03 15:40:07.120,138.3982,7064.3032,4.9655,-3.7802,1.2219,0.1884,2400.0,2400.0,-0.3898,-1.4561,4.1412,-76.5209 2019-06-03 15:40:07.140,138.3184,7065.6401,4.9655,-3.7802,0.7259,0.0145,2400.0,2400.0,-0.3781,-1.4591,4.1452,-76.5209 2019-06-03 15:40:07.160,138.3273,7066.541,4.9658,-3.7496,1.2714,0.1034,2400.0,2400.0,-0.3577,-1.4591,4.1478,-76.5191 2019-06-03 15:40:07.180,138.2652,7067.8506,4.9658,-3.7496,0.7233,0.0774,2400.0,2400.0,-0.3606,-1.4591,4.124,-76.5191 2019-06-03 15:40:07.200,138.2652,7068.7515,4.9602,-3.7067,0.7914,0.0754,2400.0,2400.0,-0.3518,-1.4591,4.1253,-76.5209 2019-06-03 15:40:07.220,138.2652,7069.6792,4.9618,-3.6872,1.2378,0.0558,2400.0,2400.0,-0.3694,-1.4621,4.1425,-76.5226 2019-06-03 15:40:07.240,138.3184,7071.0435,4.9618,-3.6872,0.686,0.1131,2400.0,2400.0,-0.3723,-1.4531,4.1492,-76.5226 2019-06-03 15:40:07.260,138.3273,7071.8896,4.9618,-3.6872,1.1316,-0.0143,2400.0,2400.0,-0.3518,-1.4531,4.1584,-76.5226 2019-06-03 15:40:07.280,138.2652,7072.1353,4.9573,-3.656,0.8886,0.1455,2400.0,2400.0,-0.3869,-1.4561,4.1214,-76.5261 2019-06-03 15:40:07.300,138.2741,7072.1353,4.9605,-3.6199,0.9789,0.1491,2400.0,2400.0,-0.3694,-1.4501,4.1333,-76.5313 2019-06-03 15:40:07.320,138.2652,7072.1079,4.9605,-3.6199,1.1209,-0.0069,2400.0,2400.0,-0.3752,-1.4471,4.1373,-76.5313 2019-06-03 15:40:07.340,138.3184,7072.2168,4.9605,-3.6199,0.9253,0.1765,2400.0,2400.0,-0.3518,-1.4141,4.1492,-76.5313 2019-06-03 15:40:07.360,138.3096,7072.2441,4.9621,-3.5867,0.8702,-0.0661,2400.0,2400.0,-0.3577,-1.4171,4.1359,-76.5401 2019-06-03 15:40:07.380,138.2652,7072.2441,4.9621,-3.5867,1.2108,0.1616,2400.0,2400.0,-0.3518,-1.4201,4.124,-76.5401 2019-06-03 15:40:07.400,138.2563,7072.2715,4.9621,-3.5306,1.1364,0.1443,2340.0,2340.0,-0.346,-1.4171,4.1293,-76.5593 2019-06-03 15:40:07.420,138.2741,7072.2715,4.9576,-3.5176,0.7792,0.0178,2340.0,2340.0,-0.346,-1.4051,4.1584,-76.5663 2019-06-03 15:40:07.440,138.3273,7072.2988,4.9576,-3.5176,1.3424,0.1458,2340.0,2340.0,-0.3665,-1.4081,4.1465,-76.5663 2019-06-03 15:40:07.460,138.3273,7072.2441,4.9576,-3.5176,0.7625,0.0341,2340.0,2340.0,-0.3694,-1.4051,4.1386,-76.5663 2019-06-03 15:40:07.480,138.2652,7072.2988,4.9601,-3.4786,1.2685,0.0905,2340.0,2340.0,-0.3898,-1.4051,4.1227,-76.5803 2019-06-03 15:40:07.500,138.2741,7072.2441,4.9617,-3.4384,1.3247,0.0456,2340.0,2340.0,-0.3723,-1.4081,4.132,-76.5943 2019-06-03 15:40:07.520,138.2563,7072.2168,4.9617,-3.4384,0.7629,0.1274,2340.0,2340.0,-0.3781,-1.4111,4.1531,-76.5943 2019-06-03 15:40:07.540,138.1675,7072.2168,4.9617,-3.4384,1.1897,0.0262,2340.0,2340.0,-0.3723,-1.4081,4.1465,-76.5943 2019-06-03 15:40:07.560,138.1764,7072.2441,4.9557,-3.4034,0.8931,0.1471,2340.0,2340.0,-0.3752,-1.4081,4.1373,-76.61 2019-06-03 15:40:07.580,138.123,7072.2715,4.9557,-3.4034,1.1061,-0.0091,2340.0,2340.0,-0.3781,-1.4081,4.1333,-76.61 2019-06-03 15:40:07.600,138.1319,7072.2715,4.9553,-3.348,1.1301,-0.0485,2340.0,2340.0,-0.3723,-1.4081,4.1267,-76.6415 2019-06-03 15:40:07.620,138.1319,7072.2715,4.9586,-3.3251,1.0432,0.1959,2340.0,2340.0,-0.3665,-1.4141,4.1478,-76.6502 2019-06-03 15:40:07.640,138.1675,7072.2715,4.9586,-3.3251,0.9216,-0.0421,2340.0,2340.0,-0.3752,-1.4261,4.1399,-76.6502 2019-06-03 15:40:07.660,138.1853,7072.2441,4.9586,-3.3251,1.0987,0.2176,2340.0,2340.0,-0.3694,-1.4201,4.1386,-76.6502 2019-06-03 15:40:07.680,138.1319,7072.2441,4.9543,-3.2902,0.8761,-0.0216,2340.0,2340.0,-0.3752,-1.4231,4.132,-76.6677 2019-06-03 15:40:07.700,138.1319,7072.1895,4.9457,-3.2558,0.7836,-0.0119,2340.0,2340.0,-0.3694,-1.4231,4.1306,-76.6852 2019-06-03 15:40:07.720,138.1052,7072.1895,4.9457,-3.2558,1.3409,0.1238,2340.0,2340.0,-0.3694,-1.4231,4.1478,-76.6852 2019-06-03 15:40:07.740,138.1764,7072.2168,4.9457,-3.2558,0.747,0.0503,2340.0,2340.0,-0.3606,-1.4291,4.1412,-76.6852 2019-06-03 15:40:07.760,138.1764,7072.2715,4.9471,-3.2226,1.237,0.0936,2340.0,2340.0,-0.3518,-1.4261,4.1306,-76.7044 2019-06-03 15:40:07.780,138.123,7072.3262,4.9471,-3.2226,0.777,0.1043,2340.0,2340.0,-0.3548,-1.4471,4.1306,-76.7044 2019-06-03 15:40:07.800,138.123,7072.3535,4.9405,-3.166,0.6712,0.1021,2340.0,2340.0,-0.3577,-1.4351,4.132,-76.7324 2019-06-03 15:40:07.820,138.1319,7072.3262,4.938,-3.1505,1.1853,-0.0317,2340.0,2340.0,-0.3869,-1.4321,4.1412,-76.7412 2019-06-03 15:40:07.840,138.1764,7072.4082,4.938,-3.1505,0.8724,0.1854,2340.0,2340.0,-0.3957,-1.4321,4.1386,-76.7412 2019-06-03 15:40:07.860,138.1764,7072.4351,4.938,-3.1505,1.1198,-0.0323,2340.0,2340.0,-0.3957,-1.4351,4.1346,-76.7412 2019-06-03 15:40:07.880,138.123,7072.4082,4.9325,-3.1123,0.9911,0.2144,2340.0,2340.0,-0.4015,-1.4501,4.1267,-76.7569 2019-06-03 15:40:07.900,138.1319,7072.2715,4.9325,-3.0745,0.9774,0.1959,2340.0,2340.0,-0.3577,-1.4501,4.1373,-76.7726 2019-06-03 15:40:07.920,138.1141,7072.2988,4.9325,-3.0745,0.9415,-0.0629,2340.0,2340.0,-0.3635,-1.4621,4.1412,-76.7726 2019-06-03 15:40:07.940,138.1853,7072.4082,4.9325,-3.0745,1.1856,0.1761,2340.0,2340.0,-0.3606,-1.4981,4.1267,-76.7726 2019-06-03 15:40:07.960,138.1764,7072.3262,4.9324,-3.0344,0.8616,-0.0025,2340.0,2340.0,-0.3577,-1.4951,4.1253,-76.7884 2019-06-03 15:40:07.980,138.123,7072.2988,4.9324,-3.0344,1.3069,0.1613,2340.0,2340.0,-0.3811,-1.4951,4.1359,-76.7884 2019-06-03 15:40:08.000,138.123,7072.2988,4.9337,-2.9717,1.3927,0.111,2340.0,2340.0,-0.3986,-1.4921,4.1293,-76.8076 2019-06-03 15:40:08.020,138.1319,7072.2441,4.9276,-2.9582,0.7507,0.0426,2340.0,2340.0,-0.4015,-1.4951,4.1465,-76.8164 2019-06-03 15:40:08.040,138.1764,7072.2988,4.9276,-2.9582,1.2651,0.0662,2340.0,2340.0,-0.4161,-1.4981,4.1373,-76.8164 2019-06-03 15:40:08.060,138.1764,7072.3535,4.9276,-2.9582,0.825,0.1023,2340.0,2340.0,-0.4074,-1.4981,4.1253,-76.8164 2019-06-03 15:40:08.080,138.123,7072.3535,4.9291,-2.9206,1.2651,0.036,2340.0,2340.0,-0.4044,-1.5011,4.1333,-76.8338 2019-06-03 15:40:08.100,138.123,7072.2715,4.9221,-2.8961,1.2415,-0.0044,2340.0,2340.0,-0.3928,-1.5011,4.132,-76.8531 2019-06-03 15:40:08.120,138.123,7072.3535,4.9221,-2.8961,0.9456,0.1943,2340.0,2340.0,-0.384,-1.5011,4.1386,-76.8531 2019-06-03 15:40:08.140,138.1764,7072.4897,4.9221,-2.8961,1.0521,-0.0347,2340.0,2340.0,-0.3869,-1.5131,4.1267,-76.8531 2019-06-03 15:40:08.160,138.1675,7072.5171,4.9119,-2.8675,1.0055,0.1972,2340.0,2340.0,-0.3694,-1.5101,4.128,-76.8688 2019-06-03 15:40:08.180,138.1141,7072.5991,4.9078,-2.838,0.98,-0.0381,2340.0,2340.0,-0.3781,-1.5131,4.1386,-76.8863 2019-06-03 15:40:08.200,138.1141,7072.6538,4.9008,-2.8295,0.8694,-0.0437,2340.0,2340.0,-0.3723,-1.5101,4.1386,-76.8968 2019-06-03 15:40:08.220,138.123,7072.6265,4.9029,-2.8105,1.1605,0.2037,2340.0,2340.0,-0.3928,-1.5071,4.128,-76.9055 2019-06-03 15:40:08.240,138.1764,7072.6265,4.9029,-2.8105,0.7747,-0.0149,2340.0,2340.0,-0.384,-1.549,4.1373,-76.9055 2019-06-03 15:40:08.260,138.1764,7072.6538,4.9029,-2.8105,1.2796,0.1802,2340.0,2340.0,-0.3811,-1.549,4.1214,-76.9055 2019-06-03 15:40:08.280,138.123,7072.6265,4.891,-2.7891,0.6235,0.0126,2340.0,2340.0,-0.3811,-1.543,4.1518,-76.9248 2019-06-03 15:40:08.300,138.123,7072.5718,4.884,-2.7642,0.605,0.046,2340.0,2340.0,-0.3898,-1.543,4.1306,-76.9422 2019-06-03 15:40:08.320,138.1052,7072.6265,4.884,-2.7642,1.3413,0.0773,2340.0,2340.0,-0.3723,-1.54,4.132,-76.9422 2019-06-03 15:40:08.340,138.1764,7072.708,4.884,-2.7642,0.7673,0.1018,2340.0,2340.0,-0.384,-1.546,4.1346,-76.9422 2019-06-03 15:40:08.360,138.1764,7072.7354,4.8833,-2.7392,1.2296,0.011,2340.0,2340.0,-0.3752,-1.546,4.1253,-76.9615 2019-06-03 15:40:08.380,138.1141,7072.708,4.8833,-2.7392,0.6841,0.1673,2340.0,2340.0,-0.384,-1.546,4.1373,-76.9615 2019-06-03 15:40:08.400,138.1141,7072.7354,4.8705,-2.7095,0.8224,0.1688,2400.0,2400.0,-0.3811,-1.543,4.1293,-76.993 2019-06-03 15:40:08.420,138.123,7072.7354,4.8651,-2.7001,1.122,-0.0255,2400.0,2400.0,-0.384,-1.54,4.1293,-77.0017 2019-06-03 15:40:08.440,138.1675,7072.708,4.8651,-2.7001,0.99,0.2541,2400.0,2400.0,-0.3986,-1.555,4.1333,-77.0017 2019-06-03 15:40:08.460,138.1853,7072.6812,4.8651,-2.7001,1.0133,-0.0817,2400.0,2400.0,-0.3869,-1.537,4.128,-77.0017 2019-06-03 15:40:08.480,138.1141,7072.708,4.8592,-2.6856,1.0377,0.2342,2400.0,2400.0,-0.3869,-1.54,4.1399,-77.0209 2019-06-03 15:40:08.500,138.1319,7072.5718,4.8586,-2.666,1.1009,0.2106,2400.0,2400.0,-0.3957,-1.546,4.1306,-77.0384 2019-06-03 15:40:08.520,138.1141,7072.5718,4.8586,-2.666,0.875,-0.0211,2400.0,2400.0,-0.384,-1.537,4.1267,-77.0384 2019-06-03 15:40:08.540,138.034,7072.6812,4.8586,-2.666,1.1926,0.2201,2400.0,2400.0,-0.3986,-1.537,4.1306,-77.0384 2019-06-03 15:40:08.560,138.0429,7072.7354,4.8511,-2.6522,0.6967,-0.0205,2400.0,2400.0,-0.3928,-1.537,4.1333,-77.0559 2019-06-03 15:40:08.580,137.9895,7072.708,4.8511,-2.6522,1.2514,0.1086,2400.0,2400.0,-0.3957,-1.537,4.1346,-77.0559 2019-06-03 15:40:08.600,137.9805,7072.7354,4.8418,-2.6327,1.2222,0.1079,2400.0,2400.0,-0.3986,-1.54,4.132,-77.0769 2019-06-03 15:40:08.620,137.9984,7072.7354,4.8363,-2.6264,0.8435,0.061,2400.0,2400.0,-0.3898,-1.54,4.1253,-77.0839 2019-06-03 15:40:08.640,138.0518,7072.7354,4.8363,-2.6264,1.2674,0.0811,2400.0,2400.0,-0.3752,-1.54,4.1293,-77.0839 2019-06-03 15:40:08.660,138.0518,7072.7354,4.8363,-2.6264,0.6993,0.0925,2400.0,2400.0,-0.3665,-1.54,4.1253,-77.0839 2019-06-03 15:40:08.680,137.9895,7072.708,4.8348,-2.6127,1.345,0.0069,2400.0,2400.0,-0.3635,-1.543,4.1386,-77.0979 2019-06-03 15:40:08.700,137.9895,7072.7354,4.8295,-2.6022,1.1401,-0.0122,2400.0,2400.0,-0.3898,-1.549,4.1214,-77.1101 2019-06-03 15:40:08.720,137.9805,7073.6089,4.8295,-2.6022,0.9097,0.1904,2400.0,2400.0,-0.384,-1.549,4.1267,-77.1101 2019-06-03 15:40:08.740,137.8913,7074.8921,4.8295,-2.6022,1.0725,-0.0463,2400.0,2400.0,-0.3898,-1.555,4.1452,-77.1101 2019-06-03 15:40:08.760,137.9092,7075.7925,4.8219,-2.5927,0.9205,0.1979,2400.0,2400.0,-0.3928,-1.555,4.1306,-77.1223 2019-06-03 15:40:08.780,137.8556,7077.021,4.8219,-2.5927,1.0022,-0.0667,2400.0,2400.0,-0.3928,-1.54,4.1452,-77.1223 2019-06-03 15:40:08.800,137.8466,7077.8398,4.8148,-2.5762,0.8912,-0.0383,2400.0,2400.0,-0.4015,-1.546,4.1306,-77.1398 2019-06-03 15:40:08.820,137.8556,7078.6313,4.8184,-2.5643,1.1298,0.1779,2400.0,2400.0,-0.3898,-1.546,4.1267,-77.1433 2019-06-03 15:40:08.840,137.9002,7079.8325,4.8184,-2.5643,0.8287,0.0183,2400.0,2400.0,-0.384,-1.552,4.1373,-77.1433 2019-06-03 15:40:08.860,137.9092,7080.6514,4.8184,-2.5643,1.1605,0.1421,2400.0,2400.0,-0.3811,-1.552,4.1346,-77.1433 2019-06-03 15:40:08.880,137.8466,7080.8696,4.8115,-2.5618,0.7936,0.0287,2400.0,2400.0,-0.384,-1.552,4.132,-77.1521 2019-06-03 15:40:08.900,137.8466,7080.8149,4.8083,-2.555,0.8213,0.0796,2400.0,2400.0,-0.4044,-1.552,4.1359,-77.1608 2019-06-03 15:40:08.920,137.8466,7080.7876,4.8083,-2.555,1.2141,0.0735,2400.0,2400.0,-0.3986,-1.552,4.1187,-77.1608 2019-06-03 15:40:08.940,137.9092,7080.8149,4.8083,-2.555,0.7378,0.0855,2400.0,2400.0,-0.4074,-1.555,4.1558,-77.1608 2019-06-03 15:40:08.960,137.9002,7080.8423,4.8095,-2.545,1.1871,0.0564,2400.0,2400.0,-0.4191,-1.552,4.1346,-77.1678 2019-06-03 15:40:08.980,137.8377,7080.8149,4.8095,-2.545,0.8261,0.1127,2400.0,2400.0,-0.4044,-1.555,4.132,-77.1678 2019-06-03 15:40:09.000,137.8556,7080.8696,4.8068,-2.5423,0.9759,0.1689,2400.0,2400.0,-0.4044,-1.552,4.1253,-77.173 2019-06-03 15:40:09.020,137.8466,7080.8423,4.8021,-2.542,1.0991,-0.0198,2400.0,2400.0,-0.3928,-1.549,4.128,-77.1765 2019-06-03 15:40:09.040,137.9002,7080.897,4.8021,-2.542,0.9948,0.2009,2400.0,2400.0,-0.3957,-1.555,4.1452,-77.1765 2019-06-03 15:40:09.060,137.9181,7080.8696,4.8021,-2.542,0.9948,-0.0277,2400.0,2400.0,-0.3957,-1.561,4.1425,-77.1765 2019-06-03 15:40:09.080,137.8377,7080.9243,4.7979,-2.5404,1.0292,0.181,2400.0,2400.0,-0.3986,-1.561,4.128,-77.1853 2019-06-03 15:40:09.100,137.8556,7080.8149,4.7963,-2.5319,1.142,0.209,2400.0,2400.0,-0.4074,-1.585,4.1306,-77.1905 2019-06-03 15:40:09.120,137.8377,7080.8149,4.7963,-2.5319,0.8273,0.0106,2400.0,2400.0,-0.3869,-1.582,4.1333,-77.1905 2019-06-03 15:40:09.140,137.9002,7080.8149,4.7963,-2.5319,1.206,0.1426,2400.0,2400.0,-0.3928,-1.573,4.1359,-77.1905 2019-06-03 15:40:09.160,137.9002,7080.8423,4.7858,-2.5285,0.8099,0.0359,2400.0,2400.0,-0.4015,-1.573,4.1293,-77.1975 2019-06-03 15:40:09.180,137.8466,7080.897,4.7858,-2.5285,1.2555,0.1211,2400.0,2400.0,-0.3898,-1.57,4.1333,-77.1975 2019-06-03 15:40:09.200,137.8556,7080.8696,4.7761,-2.513,1.1468,0.0986,2400.0,2400.0,-0.3869,-1.582,4.1359,-77.1975 2019-06-03 15:40:09.220,137.8556,7080.8423,4.7669,-2.5056,0.8561,0.0671,2400.0,2400.0,-0.3548,-1.573,4.1386,-77.201 2019-06-03 15:40:09.240,137.9002,7080.7876,4.7669,-2.5056,1.2537,0.041,2400.0,2400.0,-0.3869,-1.576,4.132,-77.201 2019-06-03 15:40:09.260,137.9181,7080.7329,4.7669,-2.5056,0.8065,0.1525,2400.0,2400.0,-0.3898,-1.576,4.132,-77.201 2019-06-03 15:40:09.280,137.8556,7080.7603,4.7629,-2.4852,1.2141,0.0066,2400.0,2400.0,-0.3986,-1.57,4.1267,-77.2063 2019-06-03 15:40:09.300,137.8556,7080.7603,4.7503,-2.4707,1.1298,0.0086,2400.0,2400.0,-0.4015,-1.573,4.1452,-77.2115 2019-06-03 15:40:09.320,137.8377,7080.8149,4.7503,-2.4707,0.8705,0.1566,2400.0,2400.0,-0.3898,-1.57,4.1346,-77.2115 2019-06-03 15:40:09.340,137.9092,7080.8149,4.7503,-2.4707,1.0835,-0.0126,2400.0,2400.0,-0.3811,-1.567,4.1333,-77.2115 2019-06-03 15:40:09.360,137.9002,7080.8423,4.7412,-2.4515,0.9415,0.1473,2400.0,2400.0,-0.3752,-1.567,4.132,-77.2185 2019-06-03 15:40:09.380,137.8556,7080.8149,4.7412,-2.4515,1.0488,0.0197,2400.0,2400.0,-0.3752,-1.567,4.128,-77.2185 2019-06-03 15:40:09.400,137.8556,7080.8423,4.7306,-2.4205,0.8905,0.022,2340.0,2340.0,-0.3869,-1.573,4.1386,-77.2238 2019-06-03 15:40:09.420,137.8466,7080.8423,4.7284,-2.4088,1.0469,0.1253,2340.0,2340.0,-0.3752,-1.564,4.1293,-77.2273 2019-06-03 15:40:09.440,137.9002,7080.8423,4.7284,-2.4088,0.8898,0.0064,2340.0,2340.0,-0.3869,-1.585,4.128,-77.2273 2019-06-03 15:40:09.460,137.9092,7080.8423,4.7284,-2.4088,1.1975,0.0977,2340.0,2340.0,-0.3869,-1.591,4.1333,-77.2273 2019-06-03 15:40:09.480,137.8466,7080.7603,4.7199,-2.3906,0.855,0.0781,2340.0,2340.0,-0.384,-1.573,4.1333,-77.2343 2019-06-03 15:40:09.500,137.8556,7080.7056,4.7137,-2.3709,0.8302,0.0904,2340.0,2340.0,-0.3928,-1.57,4.1399,-77.2412 2019-06-03 15:40:09.520,137.8466,7080.7056,4.7137,-2.3709,1.1464,0.0598,2340.0,2340.0,-0.3898,-1.567,4.132,-77.2412 2019-06-03 15:40:09.540,137.7572,7080.6509,4.7137,-2.3709,0.8151,0.1077,2340.0,2340.0,-0.3869,-1.555,4.128,-77.2412 2019-06-03 15:40:09.560,137.7751,7080.7329,4.7096,-2.3483,1.1823,-0.0118,2340.0,2340.0,-0.3928,-1.564,4.1293,-77.2465 2019-06-03 15:40:09.580,137.7214,7080.8149,4.7096,-2.3483,0.8824,0.164,2340.0,2340.0,-0.384,-1.564,4.124,-77.2465 2019-06-03 15:40:09.600,137.6945,7080.8696,4.6954,-2.3217,0.882,0.1701,2340.0,2340.0,-0.3869,-1.582,4.1333,-77.2517 2019-06-03 15:40:09.620,137.7214,7080.8423,4.6879,-2.3154,1.0732,0.0084,2340.0,2340.0,-0.3986,-1.585,4.1306,-77.2535 2019-06-03 15:40:09.640,137.7662,7080.897,4.6879,-2.3154,0.9859,0.1313,2340.0,2340.0,-0.3869,-1.585,4.1452,-77.2535 2019-06-03 15:40:09.660,137.7662,7080.8696,4.6879,-2.3154,0.8561,-0.0058,2340.0,2340.0,-0.4015,-1.585,4.128,-77.2535 2019-06-03 15:40:09.680,137.7035,7080.8423,4.6836,-2.3006,1.0588,0.1482,2340.0,2340.0,-0.3694,-1.582,4.124,-77.2587 2019-06-03 15:40:09.700,137.7125,7080.8149,4.6782,-2.2836,1.1475,0.1505,2340.0,2340.0,-0.3811,-1.579,4.132,-77.2622 2019-06-03 15:40:09.720,137.7035,7080.8423,4.6782,-2.2836,0.8413,0.0268,2340.0,2340.0,-0.3898,-1.579,4.1333,-77.2622 2019-06-03 15:40:09.740,137.9092,7080.8423,4.6782,-2.2836,1.1017,0.0792,2340.0,2340.0,-0.4074,-1.57,4.1293,-77.2622 2019-06-03 15:40:09.760,137.8913,7080.897,4.6679,-2.2753,0.8003,0.0763,2340.0,2340.0,-0.4191,-1.573,4.1439,-77.2657 2019-06-03 15:40:09.780,137.8466,7080.897,4.6679,-2.2753,1.1886,0.0764,2340.0,2340.0,-0.4132,-1.57,4.1267,-77.2657 2019-06-03 15:40:09.800,137.8556,7080.9243,4.6563,-2.2617,1.2396,0.0507,2340.0,2340.0,-0.4103,-1.573,4.1306,-77.2727 2019-06-03 15:40:09.820,137.8556,7080.897,4.6518,-2.2593,0.8139,0.108,2340.0,2340.0,-0.4103,-1.576,4.1267,-77.2745 2019-06-03 15:40:09.840,137.8913,7080.9512,4.6518,-2.2593,1.1631,0.034,2340.0,2340.0,-0.3928,-1.57,4.1306,-77.2745 2019-06-03 15:40:09.860,137.9092,7080.9512,4.6518,-2.2593,0.8761,0.133,2340.0,2340.0,-0.4249,-1.573,4.132,-77.2745 2019-06-03 15:40:09.880,137.8377,7080.9785,4.6469,-2.2498,1.1579,0.0364,2340.0,2340.0,-0.4015,-1.573,4.1306,-77.2762 2019-06-03 15:40:09.900,137.8556,7080.9243,4.634,-2.2399,1.1468,0.0293,2340.0,2340.0,-0.4015,-1.573,4.128,-77.2762 2019-06-03 15:40:09.920,137.8556,7080.897,4.634,-2.2399,0.9234,0.1463,2340.0,2340.0,-0.4015,-1.582,4.128,-77.2762 2019-06-03 15:40:09.940,137.9092,7080.8696,4.634,-2.2399,1.0762,0.0077,2340.0,2340.0,-0.3957,-1.555,4.132,-77.2762 2019-06-03 15:40:09.960,137.9002,7080.897,4.6262,-2.234,1.1031,0.201,2340.0,2340.0,-0.4044,-1.555,4.132,-77.2797 2019-06-03 15:40:09.980,137.8645,7080.9785,4.6262,-2.234,0.9438,-0.0029,2340.0,2340.0,-0.4044,-1.558,4.128,-77.2797 2019-06-03 15:40:10.000,137.8377,7081.0332,4.6168,-2.2175,0.946,0.0294,2340.0,2340.0,-0.4103,-1.555,4.1253,-77.2745 2019-06-03 15:40:10.020,137.8556,7081.0605,4.6199,-2.209,1.0388,0.1179,2340.0,2340.0,-0.4103,-1.558,4.1333,-77.2745 2019-06-03 15:40:10.040,137.9002,7081.0605,4.6199,-2.209,0.8709,0.0592,2340.0,2340.0,-0.4015,-1.561,4.1333,-77.2745 2019-06-03 15:40:10.060,137.9092,7080.9512,4.6199,-2.209,1.2296,0.0986,2340.0,2340.0,-0.4015,-1.558,4.1399,-77.2745 2019-06-03 15:40:10.080,137.8466,7080.9785,4.6128,-2.1957,0.8003,0.074,2340.0,2340.0,-0.3928,-1.555,4.128,-77.2762 2019-06-03 15:40:10.100,137.8556,7080.9512,4.6078,-2.1855,0.9034,0.0962,2340.0,2340.0,-0.3986,-1.57,4.1253,-77.2797 2019-06-03 15:40:10.120,137.8377,7080.9512,4.6078,-2.1855,1.1527,0.0528,2340.0,2340.0,-0.4074,-1.585,4.128,-77.2797 2019-06-03 15:40:10.140,137.6049,7080.897,4.6078,-2.1855,0.9071,0.0932,2340.0,2340.0,-0.3986,-1.549,4.1293,-77.2797 2019-06-03 15:40:10.160,137.6318,7080.9512,4.6054,-2.1696,1.1264,0.0756,2340.0,2340.0,-0.3898,-1.585,4.1452,-77.2815 2019-06-03 15:40:10.180,137.569,7080.8423,4.6054,-2.1696,0.855,0.0945,2340.0,2340.0,-0.3928,-1.576,4.132,-77.2815 2019-06-03 15:40:10.200,137.569,7080.8696,4.5962,-2.1566,0.9789,0.1293,2340.0,2340.0,-0.3957,-1.567,4.128,-77.2867 2019-06-03 15:40:10.220,137.569,7080.7876,4.5951,-2.1551,1.0932,-0.0003,2340.0,2340.0,-0.4132,-1.57,4.1293,-77.2902 2019-06-03 15:40:10.240,137.6139,7080.7603,4.5951,-2.1551,0.9474,0.16,2340.0,2340.0,-0.4103,-1.567,4.1214,-77.2902 2019-06-03 15:40:10.260,137.6318,7080.7329,4.5951,-2.1551,1.0466,-0.0059,2340.0,2340.0,-0.3811,-1.57,4.1505,-77.2902 2019-06-03 15:40:10.280,137.569,7080.7329,4.5939,-2.141,1.0229,0.1433,2340.0,2340.0,-0.3781,-1.57,4.132,-77.2937 2019-06-03 15:40:10.300,137.56,7080.6782,4.5938,-2.1317,1.1653,0.1145,2340.0,2340.0,-0.384,-1.564,4.1306,-77.2989 2019-06-03 15:40:10.320,137.569,7080.6782,4.5938,-2.1317,0.784,0.031,2340.0,2340.0,-0.3986,-1.567,4.1346,-77.2989 2019-06-03 15:40:10.340,137.6228,7080.624,4.5938,-2.1317,1.1117,0.0966,2340.0,2340.0,-0.3957,-1.567,4.1306,-77.2989 2019-06-03 15:40:10.360,137.6228,7080.6509,4.5904,-2.1189,0.8332,0.0868,2340.0,2340.0,-0.3869,-1.564,4.1505,-77.3059 2019-06-03 15:40:10.380,137.569,7080.6782,4.5904,-2.1189,1.1375,0.0578,2340.0,2340.0,-0.3928,-1.567,4.124,-77.3059 2019-06-03 15:40:10.400,137.56,7080.7056,4.5897,-2.1066,1.183,0.0277,2400.0,2340.0,-0.3928,-1.543,4.1267,-77.3164 2019-06-03 15:40:10.420,137.569,7080.7329,4.5896,-2.1017,0.8857,0.1262,2400.0,2340.0,-0.4074,-1.558,4.1346,-77.3217 2019-06-03 15:40:10.440,137.6139,7080.7876,4.5896,-2.1017,1.1642,0.0131,2400.0,2340.0,-0.3986,-1.558,4.1267,-77.3217 2019-06-03 15:40:10.460,137.6318,7080.7876,4.5896,-2.1017,0.8953,0.1693,2400.0,2340.0,-0.3694,-1.564,4.1492,-77.3217 2019-06-03 15:40:10.480,137.578,7080.7329,4.5895,-2.0915,0.8968,0.0149,2400.0,2340.0,-0.3723,-1.561,4.128,-77.3287 2019-06-03 15:40:10.500,137.569,7080.8149,4.5832,-2.0822,0.9859,-0.0323,2400.0,2340.0,-0.3665,-1.561,4.1333,-77.3357 2019-06-03 15:40:10.520,137.551,7081.7979,4.5832,-2.0822,1.0532,0.2029,2400.0,2340.0,-0.3869,-1.561,4.1346,-77.3357 2019-06-03 15:40:10.540,137.6228,7083.1626,4.5832,-2.0822,0.8935,-0.008,2400.0,2340.0,-0.3781,-1.561,4.1333,-77.3357 2019-06-03 15:40:10.560,137.6139,7084.1182,4.5803,-2.0718,1.179,0.1716,2400.0,2340.0,-0.3869,-1.564,4.1531,-77.3462 2019-06-03 15:40:10.580,137.56,7085.4834,4.5803,-2.0718,0.7607,0.026,2400.0,2340.0,-0.3811,-1.564,4.1346,-77.3462 2019-06-03 15:40:10.600,137.569,7086.3296,4.5726,-2.0539,0.8476,0.0491,2400.0,2340.0,-0.3811,-1.558,4.1214,-77.3619 2019-06-03 15:40:10.620,137.578,7087.1216,4.5757,-2.0436,1.2041,0.1198,2400.0,2340.0,-0.384,-1.576,4.1412,-77.3654 2019-06-03 15:40:10.640,137.6228,7088.4595,4.5757,-2.0436,0.8402,0.064,2400.0,2340.0,-0.3752,-1.564,4.1399,-77.3654 2019-06-03 15:40:10.660,137.6408,7089.3604,4.5757,-2.0436,1.1823,0.0902,2400.0,2340.0,-0.384,-1.573,4.1505,-77.3654 2019-06-03 15:40:10.680,137.569,7089.6333,4.567,-2.0328,0.8787,0.107,2400.0,2340.0,-0.384,-1.585,4.1465,-77.3741 2019-06-03 15:40:10.700,137.56,7089.6333,4.5655,-2.0149,0.9286,0.1074,2400.0,2340.0,-0.384,-1.564,4.1346,-77.3829 2019-06-03 15:40:10.720,137.56,7089.688,4.5655,-2.0149,1.1645,0.0619,2400.0,2340.0,-0.384,-1.567,4.1531,-77.3829 2019-06-03 15:40:10.740,137.6228,7089.6606,4.5655,-2.0149,0.9097,0.1226,2400.0,2340.0,-0.3811,-1.564,4.1359,-77.3829 2019-06-03 15:40:10.760,137.6228,7089.688,4.5635,-1.9971,1.0362,0.0207,2400.0,2340.0,-0.3694,-1.555,4.1664,-77.3916 2019-06-03 15:40:10.780,137.569,7089.7427,4.5635,-1.9971,1.0532,0.146,2400.0,2340.0,-0.3811,-1.558,4.1717,-77.3916 2019-06-03 15:40:10.800,137.569,7089.7695,4.5578,-1.9747,1.0321,0.149,2400.0,2340.0,-0.3752,-1.558,4.173,-77.4074 2019-06-03 15:40:10.820,137.569,7089.7695,4.5545,-1.9709,0.8875,0.0143,2400.0,2340.0,-0.3811,-1.57,4.1968,-77.4126 2019-06-03 15:40:10.840,137.6228,7089.7427,4.5545,-1.9709,1.0917,0.1364,2400.0,2340.0,-0.3548,-1.561,4.2114,-77.4126 2019-06-03 15:40:10.860,137.6228,7089.7427,4.5545,-1.9709,0.8742,0.035,2400.0,2340.0,-0.3635,-1.54,4.2392,-77.4126 2019-06-03 15:40:10.880,137.578,7089.6606,4.5562,-1.951,1.1786,0.1077,2400.0,2340.0,-0.3781,-1.561,4.2763,-77.4248 2019-06-03 15:40:10.900,137.578,7089.5786,4.5556,-1.9306,1.1841,0.1036,2400.0,2340.0,-0.3781,-1.531,4.3306,-77.4371 2019-06-03 15:40:10.920,137.56,7089.5513,4.5556,-1.9306,0.7378,0.0759,2400.0,2340.0,-0.4015,-1.546,4.4153,-77.4371 2019-06-03 15:40:10.940,137.6228,7089.6606,4.5556,-1.9306,1.1779,0.0726,2400.0,2340.0,-0.3811,-1.54,4.5159,-77.4371 2019-06-03 15:40:10.960,137.6139,7089.688,4.5505,-1.913,0.8276,0.1042,2400.0,2340.0,-0.3869,-1.537,4.6457,-77.4493 2019-06-03 15:40:10.980,137.56,7089.7427,4.5505,-1.913,1.1309,0.0216,2400.0,2340.0,-0.384,-1.537,4.7714,-77.4493 2019-06-03 15:40:11.000,137.569,7089.7969,4.5642,-1.8833,1.1978,0.0371,2400.0,2340.0,-0.3781,-1.531,4.8827,-77.4581 2019-06-03 15:40:11.020,137.578,7089.7695,4.5711,-1.8725,0.9071,0.1452,2400.0,2340.0,-0.3811,-1.5191,5.027,-77.4651 2019-06-03 15:40:11.040,137.6228,7089.688,4.5711,-1.8725,0.9571,0.005,2400.0,2340.0,-0.3898,-1.5191,5.1488,-77.4651 2019-06-03 15:40:11.060,137.6318,7089.688,4.5711,-1.8725,1.0832,0.1723,2400.0,2340.0,-0.3869,-1.5131,5.2468,-77.4651 2019-06-03 15:40:11.080,137.56,7089.7695,4.5947,-1.8504,0.8609,-0.0353,2400.0,2340.0,-0.3957,-1.5191,5.3553,-77.4773 2019-06-03 15:40:11.100,137.569,7089.688,4.6279,-1.8303,0.8935,-0.0085,2400.0,2340.0,-0.3928,-1.5161,5.3765,-77.4895 2019-06-03 15:40:11.120,137.551,7089.6606,4.6279,-1.8303,1.1457,0.191,2400.0,2340.0,-0.384,-1.5221,5.3924,-77.4895 2019-06-03 15:40:11.140,137.6318,7089.606,4.6279,-1.8303,0.7566,0.0039,2400.0,2340.0,-0.3928,-1.5191,5.3461,-77.4895 2019-06-03 15:40:11.160,137.6228,7089.606,4.6878,-1.8047,1.2936,0.1244,2400.0,2340.0,-0.384,-1.5071,5.2401,-77.5018 2019-06-03 15:40:11.180,137.569,7089.5786,4.6878,-1.8047,0.7559,0.0473,2400.0,2340.0,-0.3928,-1.528,5.0879,-77.5018 2019-06-03 15:40:11.200,137.569,7089.6606,4.7999,-1.7707,0.8661,0.0652,2400.0,2340.0,-0.384,-1.5251,4.9197,-77.5193 2019-06-03 15:40:11.220,137.578,7089.6606,4.8439,-1.7557,1.3195,0.0858,2400.0,2340.0,-0.3811,-1.5251,4.7119,-77.5245 2019-06-03 15:40:11.240,137.6228,7089.6606,4.8439,-1.7557,0.8258,0.0865,2400.0,2340.0,-0.3986,-1.531,4.5371,-77.5245 2019-06-03 15:40:11.260,137.6228,7089.6333,4.8439,-1.7557,1.2607,0.0289,2400.0,2340.0,-0.4132,-1.534,4.3716,-77.5245 2019-06-03 15:40:11.280,137.56,7089.6606,4.9248,-1.7328,0.9667,0.1332,2400.0,2340.0,-0.4308,-1.57,4.2432,-77.5332 2019-06-03 15:40:11.300,137.569,7089.5513,5.0078,-1.7113,0.8524,0.1341,2400.0,2340.0,-0.4132,-1.567,4.1584,-77.542 2019-06-03 15:40:11.320,137.56,7089.5786,5.0078,-1.7113,1.2496,0.0042,2400.0,2340.0,-0.3957,-1.567,4.1439,-77.542 2019-06-03 15:40:11.340,137.6228,7089.6333,5.0078,-1.7113,0.9977,0.1646,2400.0,2340.0,-0.4044,-1.567,4.132,-77.542 2019-06-03 15:40:11.360,137.6139,7089.606,5.0805,-1.6862,1.1176,-0.0436,2400.0,2340.0,-0.4015,-1.564,4.1518,-77.5525 2019-06-03 15:40:11.380,137.56,7089.606,5.0805,-1.6862,1.2278,0.2211,2400.0,2340.0,-0.4278,-1.57,4.1373,-77.5525 2019-06-03 15:40:11.400,137.569,7089.6606,5.1617,-1.6529,1.24,0.2282,2340.0,2400.0,-0.4132,-1.567,4.1028,-77.563 2019-06-03 15:40:11.420,137.578,7089.6606,5.1747,-1.6495,0.8816,0.0006,2340.0,2400.0,-0.4103,-1.576,4.12,-77.5682 2019-06-03 15:40:11.440,137.6139,7089.606,5.1747,-1.6495,1.3798,0.1924,2340.0,2400.0,-0.3898,-1.579,4.1214,-77.5682 2019-06-03 15:40:11.460,137.6318,7089.5513,5.1747,-1.6495,0.8494,-0.0032,2340.0,2400.0,-0.384,-1.561,4.1333,-77.5682 2019-06-03 15:40:11.480,137.569,7089.606,5.2098,-1.628,1.3165,0.1651,2340.0,2400.0,-0.3869,-1.573,4.1412,-77.5752 2019-06-03 15:40:11.500,137.56,7089.5239,5.2325,-1.6084,1.3713,0.1101,2340.0,2400.0,-0.3928,-1.564,4.1055,-77.5822 2019-06-03 15:40:11.520,137.578,7089.5786,5.2325,-1.6084,0.811,0.1048,2340.0,2400.0,-0.3957,-1.564,4.128,-77.5822 2019-06-03 15:40:11.540,137.6228,7089.606,5.2325,-1.6084,1.4208,0.0521,2340.0,2400.0,-0.4044,-1.585,4.1147,-77.5822 2019-06-03 15:40:11.560,137.6049,7089.6606,5.2383,-1.5926,0.9693,0.1534,2340.0,2400.0,-0.4044,-1.579,4.1028,-77.591 2019-06-03 15:40:11.580,137.569,7089.5786,5.2383,-1.5926,1.2267,-0.0075,2340.0,2400.0,-0.3928,-1.579,4.1306,-77.591 2019-06-03 15:40:11.600,137.569,7089.606,5.2392,-1.5671,1.1867,-0.0472,2340.0,2400.0,-0.384,-1.579,4.1121,-77.6049 2019-06-03 15:40:11.620,137.569,7089.606,5.2397,-1.5545,1.0251,0.2499,2340.0,2400.0,-0.3781,-1.576,4.12,-77.6067 2019-06-03 15:40:11.640,137.6228,7089.6606,5.2397,-1.5545,1.0961,-0.1029,2340.0,2400.0,-0.4015,-1.576,4.1042,-77.6067 2019-06-03 15:40:11.660,137.6228,7089.6333,5.2397,-1.5545,1.1771,0.2247,2340.0,2400.0,-0.3811,-1.576,4.1108,-77.6067 2019-06-03 15:40:11.680,137.56,7089.6606,5.2307,-1.5342,1.0236,-0.0323,2340.0,2400.0,-0.4044,-1.573,4.1187,-77.6137 2019-06-03 15:40:11.700,137.569,7089.606,5.2143,-1.5226,0.7858,-0.0339,2340.0,2400.0,-0.3811,-1.576,4.1187,-77.6224 2019-06-03 15:40:11.720,137.569,7089.606,5.2143,-1.5226,1.3199,0.1864,2340.0,2400.0,-0.384,-1.564,4.1094,-77.6224 2019-06-03 15:40:11.740,137.4791,7089.5786,5.2143,-1.5226,0.7995,-0.021,2340.0,2400.0,-0.3957,-1.576,4.0962,-77.6224 2019-06-03 15:40:11.760,137.4881,7089.606,5.2019,-1.4978,1.3746,0.1384,2340.0,2400.0,-0.3928,-1.54,4.0962,-77.6259 2019-06-03 15:40:11.780,137.4252,7089.6606,5.2019,-1.4978,0.8276,0.0733,2340.0,2400.0,-0.4249,-1.564,4.1028,-77.6259 2019-06-03 15:40:11.800,137.4252,7089.7153,5.1674,-1.474,0.6416,0.0903,2340.0,2400.0,-0.3811,-1.561,4.1094,-77.6382 2019-06-03 15:40:11.820,137.4342,7089.7427,5.1574,-1.4638,1.3291,0.0039,2340.0,2400.0,-0.4044,-1.564,4.0816,-77.6399 2019-06-03 15:40:11.840,137.4971,7089.7153,5.1574,-1.4638,0.8861,0.1728,2340.0,2400.0,-0.4103,-1.564,4.0697,-77.6399 2019-06-03 15:40:11.860,137.4971,7089.6333,5.1574,-1.4638,1.2448,-0.025,2340.0,2400.0,-0.4015,-1.558,4.0525,-77.6399 2019-06-03 15:40:11.880,137.4252,7089.688,5.1326,-1.4525,0.9364,0.2068,2340.0,2400.0,-0.3957,-1.561,4.0432,-77.6452 2019-06-03 15:40:11.900,137.4342,7089.606,5.1103,-1.4302,0.8613,0.1942,2340.0,2400.0,-0.3869,-1.564,4.0128,-77.6487 2019-06-03 15:40:11.920,137.4252,7089.6333,5.1103,-1.4302,1.0055,-0.0579,2340.0,2400.0,-0.3928,-1.564,3.9479,-77.6487 2019-06-03 15:40:11.940,137.4881,7089.6606,5.1103,-1.4302,1.1997,0.1993,2340.0,2400.0,-0.4103,-1.564,3.9016,-77.6487 2019-06-03 15:40:11.960,137.4702,7089.6606,5.08,-1.4126,0.9678,-0.0165,2340.0,2400.0,-0.4161,-1.561,3.8341,-77.6521 2019-06-03 15:40:11.980,137.4342,7089.6606,5.08,-1.4126,1.2097,0.1789,2340.0,2400.0,-0.3986,-1.561,3.7824,-77.6521 2019-06-03 15:40:12.000,137.4342,7089.6333,5.0256,-1.3986,1.2093,0.1665,2340.0,2400.0,-0.4074,-1.564,3.6884,-77.6521 2019-06-03 15:40:12.020,137.4432,7089.6606,4.9996,-1.3938,0.9023,0.015,2340.0,2400.0,-0.3928,-1.561,3.5997,-77.6521 2019-06-03 15:40:12.040,137.4881,7089.606,4.9996,-1.3938,1.2311,0.1415,2340.0,2400.0,-0.3986,-1.567,3.5454,-77.6521 2019-06-03 15:40:12.060,137.4881,7089.5786,4.9996,-1.3938,0.7,0.0512,2340.0,2400.0,-0.3928,-1.561,3.4514,-77.6521 2019-06-03 15:40:12.080,137.4342,7089.6333,4.9588,-1.3801,1.2563,0.0885,2340.0,2400.0,-0.3928,-1.564,3.376,-77.6539 2019-06-03 15:40:12.100,137.4342,7089.5786,4.9054,-1.3688,1.1864,0.0517,2340.0,2400.0,-0.3957,-1.561,3.2899,-77.6539 2019-06-03 15:40:12.120,137.4162,7089.5513,4.9054,-1.3688,0.8195,0.1011,2340.0,2400.0,-0.3928,-1.564,3.1853,-77.6539 2019-06-03 15:40:12.140,137.4881,7089.4966,4.9054,-1.3688,1.1686,0.029,2340.0,2400.0,-0.4132,-1.564,3.1138,-77.6539 2019-06-03 15:40:12.160,137.4881,7089.4966,4.8377,-1.3604,0.9171,0.1563,2340.0,2400.0,-0.4015,-1.561,3.0555,-77.6539 2019-06-03 15:40:12.180,137.4342,7089.5786,4.8377,-1.3604,1.0543,-0.0236,2340.0,2400.0,-0.4044,-1.567,3.037,-77.6539 2019-06-03 15:40:12.200,137.4342,7089.606,4.7188,-1.3414,0.9637,-0.0582,2340.0,2400.0,-0.4074,-1.567,3.0185,-77.6574 2019-06-03 15:40:12.220,137.4342,7089.6333,4.6783,-1.3313,1.0222,0.1787,2340.0,2400.0,-0.3957,-1.564,3.0119,-77.6556 2019-06-03 15:40:12.240,137.4791,7089.6606,4.6783,-1.3313,0.9489,-0.029,2340.0,2400.0,-0.384,-1.567,3.045,-77.6556 2019-06-03 15:40:12.260,137.4881,7089.6333,4.6783,-1.3313,1.1083,0.1408,2340.0,2400.0,-0.3781,-1.564,3.0463,-77.6556 2019-06-03 15:40:12.280,137.4342,7089.5786,4.5782,-1.3164,0.7433,0.0288,2340.0,2400.0,-0.3811,-1.564,3.1072,-77.6539 2019-06-03 15:40:12.300,137.4432,7089.4966,4.468,-1.305,0.7256,0.0228,2340.0,2400.0,-0.4044,-1.567,3.139,-77.6521 2019-06-03 15:40:12.320,137.4252,7089.5786,4.468,-1.305,1.0972,0.1212,2340.0,2400.0,-0.4074,-1.564,3.2263,-77.6521 2019-06-03 15:40:12.340,137.4881,7089.606,4.468,-1.305,0.6368,0.0521,2340.0,2400.0,-0.4132,-1.573,3.3574,-77.6521 2019-06-03 15:40:12.360,137.4791,7089.6606,4.3544,-1.2857,1.1738,0.1029,2340.0,2400.0,-0.3928,-1.57,3.4686,-77.6487 2019-06-03 15:40:12.380,137.4342,7089.6606,4.3544,-1.2857,0.6679,0.0639,2340.0,2400.0,-0.4103,-1.558,3.5785,-77.6487 2019-06-03 15:40:12.400,137.4252,7089.6333,4.1743,-1.2633,0.7019,0.0654,2400.0,2340.0,-0.4103,-1.594,3.6593,-77.6539 2019-06-03 15:40:12.420,137.4432,7089.5786,4.1173,-1.2543,1.0233,0.0579,2400.0,2340.0,-0.4074,-1.579,3.7215,-77.6539 2019-06-03 15:40:12.440,137.4881,7089.5786,4.1173,-1.2543,0.7341,0.1351,2400.0,2340.0,-0.3986,-1.579,3.8049,-77.6539 2019-06-03 15:40:12.460,137.4971,7089.5239,4.1173,-1.2543,0.9164,0.0052,2400.0,2340.0,-0.4015,-1.579,3.8394,-77.6539 2019-06-03 15:40:12.480,137.4252,7089.5239,4.0099,-1.2417,0.8576,0.1359,2400.0,2340.0,-0.4015,-1.576,3.8698,-77.6521 2019-06-03 15:40:12.500,137.4342,7089.4692,3.9138,-1.2228,0.906,0.1569,2400.0,2340.0,-0.422,-1.576,3.8777,-77.6504 2019-06-03 15:40:12.520,137.4162,7089.4419,3.9138,-1.2228,0.8184,0.0009,2400.0,2340.0,-0.4132,-1.564,3.8791,-77.6504 2019-06-03 15:40:12.540,137.3441,7089.415,3.9138,-1.2228,0.9112,0.1538,2400.0,2340.0,-0.4103,-1.561,3.9056,-77.6504 2019-06-03 15:40:12.560,137.3441,7089.415,3.8281,-1.2063,0.6708,0.0066,2400.0,2340.0,-0.3957,-1.561,3.9254,-77.6469 2019-06-03 15:40:12.580,137.29,7089.415,3.8281,-1.2063,0.9608,0.1268,2400.0,2340.0,-0.3957,-1.564,3.9347,-77.6469 2019-06-03 15:40:12.600,137.29,7089.4419,3.7172,-1.1858,0.9386,0.1357,2400.0,2340.0,-0.4337,-1.561,3.936,-77.6521 2019-06-03 15:40:12.620,137.29,7089.4692,3.6827,-1.1797,0.7292,0.0221,2400.0,2340.0,-0.4191,-1.558,3.9532,-77.6521 2019-06-03 15:40:12.640,137.3351,7089.5786,3.6827,-1.1797,1.1375,0.1167,2400.0,2340.0,-0.4249,-1.564,3.9572,-77.6521 2019-06-03 15:40:12.660,137.3441,7089.5239,3.6827,-1.1797,0.565,0.0434,2400.0,2340.0,-0.4103,-1.567,3.9691,-77.6521 2019-06-03 15:40:12.680,137.29,7089.4966,3.6305,-1.1624,1.1087,0.053,2400.0,2340.0,-0.4074,-1.561,3.9691,-77.6556 2019-06-03 15:40:12.700,137.2991,7089.415,3.5864,-1.1483,1.0277,0.0539,2400.0,2340.0,-0.4132,-1.561,3.9731,-77.6574 2019-06-03 15:40:12.720,137.29,7089.4419,3.5864,-1.1483,0.6479,0.1238,2400.0,2340.0,-0.4074,-1.561,3.9797,-77.6574 2019-06-03 15:40:12.740,137.3531,7089.4966,3.5864,-1.1483,1.0514,-0.0165,2400.0,2340.0,-0.4044,-1.564,3.9969,-77.6574 2019-06-03 15:40:12.760,137.3261,7089.5513,3.5469,-1.1381,0.7156,0.1317,2400.0,2340.0,-0.384,-1.561,4.0128,-77.6644 2019-06-03 15:40:12.780,137.281,7089.5786,3.5469,-1.1381,0.9478,-0.048,2400.0,2340.0,-0.3957,-1.561,3.9903,-77.6644 2019-06-03 15:40:12.800,137.29,7089.5513,3.5121,-1.1197,0.9726,0.0048,2400.0,2340.0,-0.4044,-1.564,4.0101,-77.6801 2019-06-03 15:40:12.820,137.29,7089.4966,3.5068,-1.1124,0.9478,0.1441,2400.0,2340.0,-0.3957,-1.558,4.0075,-77.6854 2019-06-03 15:40:12.840,137.3441,7089.4966,3.5068,-1.1124,0.8502,-0.017,2400.0,2340.0,-0.3928,-1.555,4.0154,-77.6854 2019-06-03 15:40:12.860,137.3441,7089.4966,3.5068,-1.1124,1.0144,0.1665,2400.0,2340.0,-0.3957,-1.558,4.0154,-77.6854 2019-06-03 15:40:12.880,137.281,7089.5239,3.4933,-1.1077,0.7703,-0.0419,2400.0,2340.0,-0.3986,-1.558,4.0154,-77.6976 2019-06-03 15:40:12.900,137.29,7089.4966,3.4819,-1.1026,0.8036,0.0092,2400.0,2340.0,-0.4132,-1.567,4.0154,-77.7098 2019-06-03 15:40:12.920,137.272,7089.5239,3.4819,-1.1026,1.0617,0.1567,2400.0,2340.0,-0.3957,-1.567,4.0141,-77.7098 2019-06-03 15:40:12.940,137.1817,7089.5786,3.4819,-1.1026,0.71,0.0098,2400.0,2340.0,-0.3928,-1.567,4.0234,-77.7098 2019-06-03 15:40:12.960,137.2178,7089.5786,3.4798,-1.0935,1.105,0.111,2400.0,2340.0,-0.3957,-1.564,4.0247,-77.7221 2019-06-03 15:40:12.980,137.1456,7089.5786,3.4798,-1.0935,0.6431,0.0629,2400.0,2340.0,-0.3781,-1.567,4.0168,-77.7221 2019-06-03 15:40:13.000,137.1456,7089.606,3.481,-1.0867,0.7019,0.1053,2400.0,2340.0,-0.3986,-1.57,4.0075,-77.7378 2019-06-03 15:40:13.020,137.1546,7089.5786,3.4802,-1.0781,1.0798,0.0214,2400.0,2340.0,-0.3957,-1.573,4.0075,-77.7448 2019-06-03 15:40:13.040,137.2088,7089.6606,3.4802,-1.0781,0.7311,0.1291,2400.0,2340.0,-0.3898,-1.573,3.9982,-77.7448 2019-06-03 15:40:13.060,137.1998,7089.6333,3.4802,-1.0781,1.156,0.0214,2400.0,2340.0,-0.3811,-1.564,3.9148,-77.7448 2019-06-03 15:40:13.080,137.1456,7089.6333,3.4825,-1.0732,0.7703,0.1323,2400.0,2340.0,-0.3928,-1.564,3.7957,-77.7571 2019-06-03 15:40:13.100,137.1456,7089.5239,3.4898,-1.0616,0.754,0.1255,2400.0,2340.0,-0.3898,-1.564,3.7268,-77.7693 2019-06-03 15:40:13.120,137.1456,7089.5239,3.4898,-1.0616,1.0136,-0.0238,2400.0,2340.0,-0.3811,-1.564,3.605,-77.7693 2019-06-03 15:40:13.140,137.5241,7089.5513,3.4898,-1.0616,0.8635,0.1564,2400.0,2340.0,-0.3869,-1.561,3.4686,-77.7693 2019-06-03 15:40:13.160,137.4612,7089.6333,3.4959,-1.0538,0.9634,-0.0336,2400.0,2340.0,-0.3898,-1.561,3.3124,-77.7815 2019-06-03 15:40:13.180,137.4162,7089.7153,3.4959,-1.0538,0.9874,0.1611,2400.0,2340.0,-0.3869,-1.561,3.1231,-77.7815 2019-06-03 15:40:13.200,137.4252,7089.7427,3.4872,-1.0422,1.0103,0.1695,2400.0,2340.0,-0.3811,-1.57,3.0291,-77.799 2019-06-03 15:40:13.220,137.4432,7089.7153,3.4743,-1.0439,0.7629,-0.0381,2400.0,2340.0,-0.3957,-1.564,2.8953,-77.806 2019-06-03 15:40:13.240,137.4881,7089.6606,3.4743,-1.0439,1.1264,0.1509,2400.0,2340.0,-0.3928,-1.564,2.8106,-77.806 2019-06-03 15:40:13.260,137.4971,7089.6333,3.4743,-1.0439,0.615,-0.035,2400.0,2340.0,-0.3928,-1.579,2.7007,-77.806 2019-06-03 15:40:13.280,137.4252,7089.606,3.4488,-1.0345,1.1409,0.1098,2400.0,2340.0,-0.3869,-1.564,2.6199,-77.8183 2019-06-03 15:40:13.300,137.4342,7089.5513,3.3989,-1.0296,1.1154,0.1107,2400.0,2340.0,-0.3986,-1.567,2.6252,-77.8305 2019-06-03 15:40:13.320,137.4162,7089.5786,3.3989,-1.0296,0.6982,0.0466,2400.0,2340.0,-0.3898,-1.567,2.6279,-77.8305 2019-06-03 15:40:13.340,137.6228,7089.5786,3.3989,-1.0296,1.2311,0.0445,2400.0,2340.0,-0.384,-1.555,2.6067,-77.8305 2019-06-03 15:40:13.360,137.6139,7089.5786,3.3232,-1.0266,0.7452,0.0821,2400.0,2340.0,-0.3811,-1.564,2.5868,-77.8445 2019-06-03 15:40:13.380,137.569,7089.5513,3.3232,-1.0266,1.1176,0.0363,2400.0,2340.0,-0.3781,-1.564,2.6001,-77.8445 2019-06-03 15:40:13.400,137.569,7089.5239,3.1862,-1.0189,1.0869,0.0084,2340.0,2400.0,-0.384,-1.564,2.6372,-77.8777 2019-06-03 15:40:13.420,137.578,7089.5513,3.1322,-1.0182,0.7366,0.1123,2340.0,2400.0,-0.3869,-1.57,2.6557,-77.8847 2019-06-03 15:40:13.440,137.6228,7089.6606,3.1322,-1.0182,1.0521,0.0043,2340.0,2400.0,-0.3898,-1.555,2.6967,-77.8847 2019-06-03 15:40:13.460,137.6318,7089.6606,3.1322,-1.0182,0.8136,0.1218,2340.0,2400.0,-0.3898,-1.555,2.8344,-77.8847 2019-06-03 15:40:13.480,137.569,7089.6606,3.0194,-1.009,0.9264,0.0359,2340.0,2400.0,-0.4015,-1.552,2.992,-77.8987 2019-06-03 15:40:13.500,137.569,7089.7427,2.89,-1.0049,0.8849,0.0169,2340.0,2400.0,-0.3928,-1.558,3.1721,-77.9127 2019-06-03 15:40:13.520,137.56,7090.5889,2.89,-1.0049,0.8184,0.1055,2340.0,2400.0,-0.3898,-1.573,3.3574,-77.9127 2019-06-03 15:40:13.540,137.6228,7091.8179,2.89,-1.0049,0.8938,0.0251,2340.0,2400.0,-0.384,-1.567,3.5401,-77.9127 2019-06-03 15:40:13.560,137.6139,7092.6919,2.7657,-0.9972,0.95,0.1305,2340.0,2400.0,-0.3957,-1.57,3.7546,-77.9267 2019-06-03 15:40:13.580,137.569,7093.9478,2.6464,-0.9912,0.6479,0.0421,2340.0,2400.0,-0.4015,-1.57,3.8936,-77.9634 2019-06-03 15:40:13.600,137.569,7094.7671,2.5873,-0.9923,0.794,0.032,2340.0,2400.0,-0.4074,-1.57,4.0101,-77.9704 2019-06-03 15:40:13.620,137.569,7095.5591,2.5384,-0.9897,0.8975,0.0816,2340.0,2400.0,-0.4161,-1.57,4.0658,-77.9774 2019-06-03 15:40:13.640,137.6228,7096.7603,2.5384,-0.9897,0.7311,0.0408,2340.0,2400.0,-0.4103,-1.573,4.0803,-77.9774 2019-06-03 15:40:13.660,137.6408,7097.5522,2.5384,-0.9897,0.9793,0.0677,2340.0,2400.0,-0.4249,-1.573,4.0816,-77.9774 2019-06-03 15:40:13.680,137.56,7097.771,2.4485,-0.992,0.6945,0.1031,2340.0,2400.0,-0.4103,-1.57,4.0949,-77.9931 2019-06-03 15:40:13.700,137.578,7097.6343,2.3782,-0.9889,0.8409,0.097,2340.0,2400.0,-0.4074,-1.57,4.1028,-78.0089 2019-06-03 15:40:13.720,137.569,7096.7334,2.3782,-0.9889,0.7551,0.0329,2340.0,2400.0,-0.3957,-1.573,4.1042,-78.0089 2019-06-03 15:40:13.740,137.7841,7095.5591,2.3782,-0.9889,0.8646,0.068,2340.0,2400.0,-0.3957,-1.57,4.0856,-78.0089 2019-06-03 15:40:13.760,137.7483,7094.7671,2.3248,-0.9925,0.7718,0.0246,2340.0,2400.0,-0.4161,-1.582,4.1028,-78.0246 2019-06-03 15:40:13.780,137.7125,7093.5381,2.3248,-0.9925,0.9356,0.133,2340.0,2400.0,-0.4161,-1.582,4.1068,-78.0246 2019-06-03 15:40:13.800,137.7035,7092.7734,2.2673,-1.007,0.8746,0.1193,2340.0,2400.0,-0.4249,-1.573,4.1134,-78.0613 2019-06-03 15:40:13.820,137.7214,7091.8999,2.2542,-1.0138,0.7803,0.0305,2340.0,2400.0,-0.4308,-1.576,4.1121,-78.07 2019-06-03 15:40:13.840,137.7572,7090.6982,2.2542,-1.0138,1.0414,0.0929,2340.0,2400.0,-0.4191,-1.57,4.0975,-78.07 2019-06-03 15:40:13.860,137.7751,7089.8789,2.2542,-1.0138,0.6797,0.0173,2340.0,2400.0,-0.4191,-1.576,4.1068,-78.07 2019-06-03 15:40:13.880,137.7125,7089.688,2.2395,-1.0194,0.9789,0.1274,2340.0,2400.0,-0.4161,-1.576,4.1108,-78.0858 2019-06-03 15:40:13.900,137.7125,7089.5786,2.2372,-1.0328,0.9179,0.0746,2340.0,2400.0,-0.4044,-1.57,4.1121,-78.1015 2019-06-03 15:40:13.920,137.7035,7089.5513,2.2372,-1.0328,0.7348,0.0894,2340.0,2400.0,-0.4103,-1.567,4.1161,-78.1015 2019-06-03 15:40:13.940,137.7751,7089.5513,2.2372,-1.0328,1.0691,0.0086,2340.0,2400.0,-0.4103,-1.567,4.1081,-78.1015 2019-06-03 15:40:13.960,137.7572,7089.5786,2.2411,-1.0499,0.7178,0.1301,2340.0,2400.0,-0.4132,-1.57,4.124,-78.1173 2019-06-03 15:40:13.980,137.7035,7089.606,2.2411,-1.0499,0.9086,0.025,2340.0,2400.0,-0.4044,-1.57,4.1161,-78.1173 2019-06-03 15:40:14.000,137.7125,7089.688,2.2618,-1.075,0.9449,-0.0078,2340.0,2400.0,-0.3986,-1.567,4.1147,-78.1365 2019-06-03 15:40:14.020,137.7035,7089.688,2.2751,-1.0803,0.9168,0.1601,2340.0,2400.0,-0.4044,-1.57,4.1147,-78.1435 2019-06-03 15:40:14.040,137.7662,7089.6606,2.2751,-1.0803,0.8587,-0.043,2340.0,2400.0,-0.3928,-1.567,4.1227,-78.1435 2019-06-03 15:40:14.060,137.7751,7089.6333,2.2751,-1.0803,1.0026,0.1659,2340.0,2400.0,-0.422,-1.57,4.1293,-78.1435 2019-06-03 15:40:14.080,137.7035,7089.688,2.2947,-1.1025,0.8084,0.0082,2340.0,2400.0,-0.422,-1.573,4.1306,-78.1575 2019-06-03 15:40:14.100,137.7214,7089.5786,2.3147,-1.1277,0.801,-0.0003,2340.0,2400.0,-0.422,-1.57,4.12,-78.1715 2019-06-03 15:40:14.120,137.7035,7089.5786,2.3147,-1.1277,1.1301,0.1422,2340.0,2400.0,-0.4044,-1.573,4.1425,-78.1715 2019-06-03 15:40:14.140,137.7662,7089.606,2.3147,-1.1277,0.7071,0.0302,2340.0,2400.0,-0.3869,-1.567,4.1333,-78.1715 2019-06-03 15:40:14.160,137.7572,7089.6333,2.3447,-1.1411,1.1364,0.1101,2340.0,2400.0,-0.3811,-1.57,4.1399,-78.1837 2019-06-03 15:40:14.180,137.7125,7089.5239,2.3447,-1.1411,0.6542,0.0588,2340.0,2400.0,-0.3811,-1.567,4.1478,-78.1837 2019-06-03 15:40:14.200,137.6945,7089.5239,2.3915,-1.1739,0.7011,0.0739,2340.0,2400.0,-0.3928,-1.564,4.1531,-78.2047 2019-06-03 15:40:14.220,137.7125,7089.5513,2.4123,-1.1826,1.2592,0.067,2340.0,2400.0,-0.4044,-1.567,4.2114,-78.2099 2019-06-03 15:40:14.240,137.7662,7089.5239,2.4123,-1.1826,0.6656,0.0826,2340.0,2400.0,-0.4191,-1.561,4.2193,-78.2099 2019-06-03 15:40:14.260,137.7751,7089.5239,2.4123,-1.1826,1.2071,0.0294,2340.0,2400.0,-0.4161,-1.57,4.2485,-78.2099 2019-06-03 15:40:14.280,137.7125,7089.5786,2.4403,-1.2045,0.8128,0.1603,2340.0,2400.0,-0.4044,-1.567,4.2591,-78.2169 2019-06-03 15:40:14.300,137.7214,7089.5513,2.4735,-1.2218,0.8698,0.1623,2340.0,2400.0,-0.3957,-1.561,4.2869,-78.2239 2019-06-03 15:40:14.320,137.7035,7089.5513,2.4735,-1.2218,1.0647,-0.0183,2340.0,2400.0,-0.4015,-1.564,4.3597,-78.2239 2019-06-03 15:40:14.340,137.9181,7089.5786,2.4735,-1.2218,0.9671,0.1579,2340.0,2400.0,-0.3986,-1.564,4.4378,-78.2239 2019-06-03 15:40:14.360,137.9002,7089.606,2.5138,-1.2413,0.9833,-0.0051,2340.0,2400.0,-0.3928,-1.561,4.5133,-78.2292 2019-06-03 15:40:14.380,137.8466,7089.5786,2.5138,-1.2413,0.9419,0.1537,2340.0,2400.0,-0.3957,-1.567,4.5689,-78.2292 2019-06-03 15:40:14.400,137.8556,7089.6333,2.5701,-1.2744,1.0063,0.1533,2400.0,2340.0,-0.3986,-1.561,4.6073,-78.2414 2019-06-03 15:40:14.420,137.8466,7089.606,2.5898,-1.2881,0.8624,0.0039,2400.0,2340.0,-0.3957,-1.564,4.688,-78.2431 2019-06-03 15:40:14.440,137.9002,7089.6606,2.5898,-1.2881,1.1509,0.1592,2400.0,2340.0,-0.3928,-1.561,4.7463,-78.2431 2019-06-03 15:40:14.460,137.9092,7089.606,2.5898,-1.2881,0.8424,0.0253,2400.0,2340.0,-0.3898,-1.558,4.8297,-78.2431 2019-06-03 15:40:14.480,137.8377,7089.606,2.6387,-1.3047,1.1978,0.1314,2400.0,2340.0,-0.3928,-1.555,4.8721,-78.2431 2019-06-03 15:40:14.500,137.8466,7089.606,2.6917,-1.3236,1.318,0.1381,2400.0,2340.0,-0.3898,-1.54,4.8959,-78.2431 2019-06-03 15:40:14.520,137.8466,7089.5786,2.6917,-1.3236,0.7577,0.0287,2400.0,2340.0,-0.3957,-1.54,4.9714,-78.2431 2019-06-03 15:40:14.540,137.9002,7089.606,2.6917,-1.3236,1.3151,0.1287,2400.0,2340.0,-0.4015,-1.543,5.0376,-78.2431 2019-06-03 15:40:14.560,137.9002,7089.688,2.7496,-1.3443,0.771,0.0888,2400.0,2340.0,-0.4161,-1.54,5.0905,-78.2414 2019-06-03 15:40:14.580,137.8556,7089.7153,2.7496,-1.3443,1.2714,0.0525,2400.0,2340.0,-0.4044,-1.54,5.1501,-78.2414 2019-06-03 15:40:14.600,137.8377,7089.688,2.862,-1.3667,1.2681,0.0217,2400.0,2340.0,-0.4015,-1.5131,5.1845,-78.2397 2019-06-03 15:40:14.620,137.8556,7089.688,2.9031,-1.3698,0.8539,0.1582,2400.0,2340.0,-0.3898,-1.528,5.2759,-78.2362 2019-06-03 15:40:14.640,137.9092,7089.6606,2.9031,-1.3698,1.2644,-0.0071,2400.0,2340.0,-0.384,-1.5221,5.3275,-78.2362 2019-06-03 15:40:14.660,137.9092,7089.606,2.9031,-1.3698,0.9156,0.2061,2400.0,2340.0,-0.4015,-1.5191,5.3831,-78.2362 2019-06-03 15:40:14.680,137.8466,7089.606,2.9908,-1.3805,1.179,-0.0523,2400.0,2340.0,-0.4074,-1.549,5.4282,-78.2292 2019-06-03 15:40:14.700,137.8466,7089.5786,3.0833,-1.3898,1.1227,-0.0683,2400.0,2340.0,-0.4132,-1.531,5.4493,-78.2204 2019-06-03 15:40:14.720,137.8466,7089.5786,3.0833,-1.3898,1.2115,0.2179,2400.0,2340.0,-0.4278,-1.537,5.5076,-78.2204 2019-06-03 15:40:14.740,137.9092,7089.5513,3.0833,-1.3898,0.9767,-0.0314,2400.0,2340.0,-0.4103,-1.537,5.5764,-78.2204 2019-06-03 15:40:14.760,137.8913,7089.606,3.1918,-1.3964,1.2174,0.2202,2400.0,2340.0,-0.4191,-1.534,5.5606,-78.2099 2019-06-03 15:40:14.780,137.8556,7089.5786,3.1918,-1.3964,0.902,-0.0193,2400.0,2340.0,-0.3869,-1.531,5.6003,-78.2099 2019-06-03 15:40:14.800,137.8556,7089.5786,3.3698,-1.3982,0.8472,-0.0012,2400.0,2340.0,-0.4191,-1.534,5.5804,-78.1872 2019-06-03 15:40:14.820,137.8556,7089.606,3.4376,-1.3949,1.4467,0.142,2400.0,2340.0,-0.4074,-1.534,5.636,-78.1802 2019-06-03 15:40:14.840,137.9002,7089.6333,3.4376,-1.3949,0.7962,0.0562,2400.0,2340.0,-0.4103,-1.537,5.6704,-78.1802 2019-06-03 15:40:14.860,137.9092,7089.5513,3.4376,-1.3949,1.4782,0.1309,2400.0,2340.0,-0.4074,-1.537,5.6718,-78.1802 2019-06-03 15:40:14.880,137.8466,7089.5513,3.5593,-1.3995,0.7903,0.0864,2400.0,2340.0,-0.4103,-1.54,5.6546,-78.168 2019-06-03 15:40:14.900,137.8466,7089.4692,3.6933,-1.3956,0.8794,0.1184,2400.0,2340.0,-0.4161,-1.528,5.6215,-78.154 2019-06-03 15:40:14.920,137.8466,7089.4692,3.6933,-1.3956,1.5185,0.0372,2400.0,2340.0,-0.4191,-1.534,5.6387,-78.154 2019-06-03 15:40:14.940,138.0607,7089.4966,3.6933,-1.3956,0.916,0.1867,2400.0,2340.0,-0.4161,-1.549,5.6572,-78.154 2019-06-03 15:40:14.960,138.034,7089.5786,3.8374,-1.3868,1.5273,0.0032,2400.0,2340.0,-0.3957,-1.5131,5.6704,-78.1382 2019-06-03 15:40:14.980,137.9895,7089.606,3.9809,-1.3795,0.9611,0.2381,2400.0,2340.0,-0.4074,-1.5161,5.64,-78.0998 2019-06-03 15:40:15.000,137.9895,7089.5786,4.0506,-1.377,1.0895,0.2543,2400.0,2340.0,-0.4044,-1.5161,5.6003,-78.091 2019-06-03 15:40:15.020,137.9984,7089.5786,4.1156,-1.3754,1.2444,-0.0526,2400.0,2340.0,-0.4132,-1.5161,5.5751,-78.0823 2019-06-03 15:40:15.040,138.0518,7089.6606,4.1156,-1.3754,1.2866,0.2853,2400.0,2340.0,-0.3869,-1.5161,5.5645,-78.0823 2019-06-03 15:40:15.060,138.0696,7089.6333,4.1156,-1.3754,1.1505,-0.0545,2400.0,2340.0,-0.3928,-1.5161,5.5129,-78.0823 2019-06-03 15:40:15.080,137.9984,7089.5786,4.259,-1.3619,1.3746,0.2775,2400.0,2340.0,-0.4015,-1.537,5.4268,-78.063 2019-06-03 15:40:15.100,137.9984,7089.7153,4.406,-1.3445,1.4419,0.2597,2400.0,2340.0,-0.4044,-1.531,5.2838,-78.0438 2019-06-03 15:40:15.120,137.9805,7090.5889,4.406,-1.3445,1.027,-0.003,2400.0,2340.0,-0.3986,-1.531,5.1289,-78.0438 2019-06-03 15:40:15.140,138.1853,7091.7905,4.406,-1.3445,1.5262,0.1688,2400.0,2340.0,-0.4044,-1.552,4.929,-78.0438 2019-06-03 15:40:15.160,138.1675,7092.6919,4.5384,-1.3279,0.9604,0.075,2400.0,2340.0,-0.3957,-1.549,4.7066,-78.0228 2019-06-03 15:40:15.180,138.1141,7093.9751,4.5384,-1.3279,1.6867,0.0905,2400.0,2340.0,-0.3898,-1.564,4.4921,-78.0228 2019-06-03 15:40:15.200,138.123,7094.7944,4.7247,-1.2984,1.6357,0.0839,2400.0,2340.0,-0.4132,-1.561,4.2789,-77.9844 2019-06-03 15:40:15.220,138.1319,7095.5591,4.7732,-1.2872,1.0628,0.1728,2400.0,2340.0,-0.4044,-1.567,4.1425,-77.9721 2019-06-03 15:40:15.240,138.1853,7096.8423,4.7732,-1.2872,1.5122,-0.0163,2400.0,2340.0,-0.4074,-1.582,4.0075,-77.9721 2019-06-03 15:40:15.260,138.1853,7097.6343,4.7732,-1.2872,1.0318,0.232,2400.0,2340.0,-0.3928,-1.579,3.9108,-77.9721 2019-06-03 15:40:15.280,138.123,7097.8257,4.8592,-1.2619,1.5055,-0.0449,2400.0,2340.0,-0.3869,-1.5969,3.8791,-77.9494 2019-06-03 15:40:15.300,138.123,7097.7983,4.9094,-1.2421,1.4157,-0.0088,2400.0,2340.0,-0.3869,-1.591,3.8566,-77.9284 2019-06-03 15:40:15.320,138.123,7097.8525,4.9094,-1.2421,1.0832,0.2733,2400.0,2340.0,-0.3928,-1.585,3.8711,-77.9284 2019-06-03 15:40:15.340,138.3539,7097.8257,4.9094,-1.2421,1.3225,-0.106,2400.0,2340.0,-0.3986,-1.588,3.8725,-77.9284 2019-06-03 15:40:15.360,138.3096,7097.8525,4.9355,-1.2241,1.1915,0.2985,2400.0,2340.0,-0.4044,-1.579,3.8711,-77.9057 2019-06-03 15:40:15.380,138.2652,7097.8525,4.9355,-1.2241,1.1679,-0.0882,2400.0,2340.0,-0.4103,-1.594,3.8605,-77.9057 2019-06-03 15:40:15.400,138.2741,7097.8799,4.9327,-1.1866,1.1154,-0.0463,2400.0,2400.0,-0.4074,-1.594,3.842,-77.8812 2019-06-03 15:40:15.420,138.2741,7097.7983,4.9281,-1.1678,1.3409,0.2676,2400.0,2400.0,-0.3986,-1.582,3.8579,-77.869 2019-06-03 15:40:15.440,138.3184,7097.7983,4.9281,-1.1678,1.0377,-0.06,2400.0,2400.0,-0.3928,-1.6149,3.846,-77.869 2019-06-03 15:40:15.460,138.3273,7097.7983,4.9281,-1.1678,1.3554,0.2267,2400.0,2400.0,-0.3811,-1.588,3.8221,-77.869 2019-06-03 15:40:15.480,138.2652,7097.771,4.8831,-1.1452,0.9504,0.0018,2400.0,2400.0,-0.3957,-1.5999,3.8208,-77.8515 2019-06-03 15:40:15.500,138.2829,7097.689,4.8312,-1.117,0.929,0.0447,2400.0,2400.0,-0.3957,-1.5999,3.7996,-77.8305 2019-06-03 15:40:15.520,138.2652,7097.7163,4.8312,-1.117,1.453,0.1187,2400.0,2400.0,-0.3986,-1.5999,3.8049,-77.8305 2019-06-03 15:40:15.540,138.4778,7097.689,4.8312,-1.117,0.8261,0.0853,2400.0,2400.0,-0.3986,-1.6089,3.8142,-77.8305 2019-06-03 15:40:15.560,138.4513,7097.7163,4.7731,-1.0819,1.3964,0.0725,2400.0,2400.0,-0.4015,-1.5999,3.8089,-77.8113 2019-06-03 15:40:15.580,138.4159,7097.7437,4.7731,-1.0819,0.9504,0.137,2400.0,2400.0,-0.4074,-1.6329,3.8288,-77.8113 2019-06-03 15:40:15.600,138.3982,7097.7437,4.6553,-1.039,0.933,0.1698,2400.0,2400.0,-0.4015,-1.6179,3.8142,-77.8113 2019-06-03 15:40:15.620,138.407,7097.771,4.6123,-1.0247,1.298,0.0054,2400.0,2400.0,-0.3957,-1.594,3.8142,-77.8025 2019-06-03 15:40:15.640,138.4601,7097.7163,4.6123,-1.0247,0.9489,0.1777,2400.0,2400.0,-0.384,-1.5999,3.8327,-77.8025 2019-06-03 15:40:15.660,138.469,7097.7163,4.6123,-1.0247,1.2699,-0.0146,2400.0,2400.0,-0.3928,-1.5999,3.8168,-77.8025 2019-06-03 15:40:15.680,138.4159,7097.6616,4.5279,-0.9937,1.0451,0.1733,2400.0,2400.0,-0.3898,-1.5999,3.8407,-77.7903 2019-06-03 15:40:15.700,138.407,7097.6069,4.4484,-0.9622,1.0406,0.1939,2400.0,2400.0,-0.3928,-1.5969,3.8235,-77.7798 2019-06-03 15:40:15.720,138.407,7097.6069,4.4484,-0.9622,0.9981,-0.0056,2400.0,2400.0,-0.3898,-1.5999,3.8327,-77.7798 2019-06-03 15:40:15.740,138.3096,7097.6616,4.4484,-0.9622,1.1124,0.1859,2400.0,2400.0,-0.4044,-1.6029,3.8446,-77.7798 2019-06-03 15:40:15.760,138.3362,7097.6343,4.3596,-0.9334,0.9245,-0.0043,2400.0,2400.0,-0.3898,-1.5999,3.8407,-77.7728 2019-06-03 15:40:15.780,138.2741,7097.5522,4.3596,-0.9334,1.1912,0.1494,2400.0,2400.0,-0.3928,-1.5999,3.8566,-77.7728 2019-06-03 15:40:15.800,138.2652,7097.5796,4.223,-0.8954,1.1649,0.1617,2400.0,2400.0,-0.3957,-1.5969,3.8566,-77.7885 2019-06-03 15:40:15.820,138.2829,7097.5796,4.1731,-0.8854,0.8369,0.0353,2400.0,2400.0,-0.4103,-1.5999,3.8566,-77.7868 2019-06-03 15:40:15.840,138.3273,7097.5522,4.1731,-0.8854,1.1716,0.1355,2400.0,2400.0,-0.4132,-1.5999,3.8698,-77.7868 2019-06-03 15:40:15.860,138.3273,7097.5796,4.1731,-0.8854,0.7411,0.0497,2400.0,2400.0,-0.3957,-1.6059,3.8685,-77.7868 2019-06-03 15:40:15.880,138.2652,7097.5796,4.0933,-0.8614,1.1919,0.0472,2400.0,2400.0,-0.4015,-1.5969,3.8711,-77.785 2019-06-03 15:40:15.900,138.2829,7097.3887,4.0127,-0.8364,1.1146,0.0488,2400.0,2400.0,-0.3781,-1.5999,3.8777,-77.7868 2019-06-03 15:40:15.920,138.2563,7096.5967,4.0127,-0.8364,0.8406,0.1367,2400.0,2400.0,-0.3811,-1.5969,3.8725,-77.7868 2019-06-03 15:40:15.940,138.1586,7095.4771,4.0127,-0.8364,1.2012,0.0221,2400.0,2400.0,-0.3898,-1.6089,3.8963,-77.7868 2019-06-03 15:40:15.960,138.1853,7094.7124,3.9281,-0.8176,0.8114,0.1287,2400.0,2400.0,-0.3869,-1.6029,3.891,-77.7903 2019-06-03 15:40:15.980,138.1319,7093.4561,3.9281,-0.8176,1.1242,-0.0339,2400.0,2400.0,-0.4015,-1.6089,3.8897,-77.7903 2019-06-03 15:40:16.000,138.1141,7092.7188,3.817,-0.7833,0.9659,-0.0166,2400.0,2400.0,-0.3957,-1.6089,3.8976,-77.813 2019-06-03 15:40:16.020,138.123,7091.9272,3.7856,-0.7716,0.8672,0.1533,2400.0,2400.0,-0.3986,-1.6089,3.8897,-77.8148 2019-06-03 15:40:16.040,138.1764,7090.7529,3.7856,-0.7716,1.01,-0.0023,2400.0,2400.0,-0.4015,-1.6089,3.9201,-77.8148 2019-06-03 15:40:16.060,138.1942,7089.9063,3.7856,-0.7716,0.9841,0.1515,2400.0,2400.0,-0.3957,-1.6029,3.9135,-77.8148 2019-06-03 15:40:16.080,138.1319,7089.688,3.7199,-0.7544,0.8894,-0.0062,2400.0,2400.0,-0.3986,-1.6059,3.9108,-77.8235 2019-06-03 15:40:16.100,138.1319,7089.5513,3.6577,-0.7383,0.8117,-0.0008,2400.0,2400.0,-0.3898,-1.6059,3.9254,-77.8322 2019-06-03 15:40:16.120,138.1141,7089.5239,3.6577,-0.7383,1.0136,0.1341,2400.0,2400.0,-0.384,-1.6029,3.9148,-77.8322 2019-06-03 15:40:16.140,138.3273,7089.5786,3.6577,-0.7383,0.8224,0.0366,2400.0,2400.0,-0.3869,-1.6029,3.936,-77.8322 2019-06-03 15:40:16.160,138.3096,7089.6333,3.6032,-0.7207,1.0381,0.0923,2400.0,2400.0,-0.3898,-1.6089,3.9387,-77.841 2019-06-03 15:40:16.180,138.2652,7089.606,3.6032,-0.7207,0.7744,0.0413,2400.0,2400.0,-0.3986,-1.6029,3.9439,-77.841 2019-06-03 15:40:16.200,138.2652,7089.606,3.5243,-0.6988,0.8487,0.0534,2400.0,2400.0,-0.3957,-1.6089,3.94,-77.8865 2019-06-03 15:40:16.220,138.2829,7089.5786,3.5022,-0.6905,0.9937,0.0709,2400.0,2400.0,-0.384,-1.6059,3.9532,-77.8917 2019-06-03 15:40:16.240,138.3273,7089.4419,3.5022,-0.6905,0.8295,0.067,2400.0,2400.0,-0.4015,-1.6149,3.9585,-77.8917 2019-06-03 15:40:16.260,138.3273,7089.4419,3.5022,-0.6905,1.0136,0.0625,2400.0,2400.0,-0.3957,-1.6059,3.9585,-77.8917 2019-06-03 15:40:16.280,138.2652,7089.4419,3.4607,-0.6774,0.8147,0.1252,2400.0,2400.0,-0.3986,-1.6059,3.9612,-77.9057 2019-06-03 15:40:16.300,138.2652,7089.3877,3.425,-0.6652,0.8816,0.1289,2400.0,2400.0,-0.3957,-1.6029,3.9678,-77.9232 2019-06-03 15:40:16.320,138.2475,7089.3604,3.425,-0.6652,0.99,0.0123,2400.0,2400.0,-0.3957,-1.6029,3.9651,-77.9232 2019-06-03 15:40:16.340,138.1675,7089.3057,3.425,-0.6652,0.9482,0.1211,2400.0,2400.0,-0.3898,-1.5969,3.9876,-77.9232 2019-06-03 15:40:16.360,138.1942,7089.3604,3.3947,-0.6535,0.8213,0.032,2400.0,2400.0,-0.3957,-1.5969,3.9784,-77.9424 2019-06-03 15:40:16.380,138.1497,7089.2783,3.3607,-0.6504,0.9952,0.1349,2400.0,2400.0,-0.3986,-1.5969,3.9863,-77.9809 2019-06-03 15:40:16.400,138.1319,7089.3057,3.3528,-0.6459,1.0884,0.1229,2340.0,2340.0,-0.4015,-1.5999,4.0115,-77.9931 2019-06-03 15:40:16.420,138.1408,7089.3057,3.3374,-0.6474,0.8417,0.0776,2340.0,2340.0,-0.3928,-1.594,3.9916,-78.0036 2019-06-03 15:40:16.440,138.1764,7089.3057,3.3374,-0.6474,1.0014,0.1018,2340.0,2340.0,-0.3869,-1.5969,4.0088,-78.0036 2019-06-03 15:40:16.460,138.1942,7089.251,3.3374,-0.6474,0.8036,0.0656,2340.0,2340.0,-0.3869,-1.5969,3.989,-78.0036 2019-06-03 15:40:16.480,138.1319,7089.2236,3.3188,-0.6403,1.0621,0.1021,2340.0,2340.0,-0.3898,-1.5999,4.0062,-78.0246 2019-06-03 15:40:16.500,138.1408,7089.1689,3.3016,-0.6395,1.0588,0.0542,2340.0,2340.0,-0.3957,-1.5999,4.0128,-78.0491 2019-06-03 15:40:16.520,138.1319,7089.1143,3.3016,-0.6395,0.8676,0.0792,2340.0,2340.0,-0.3957,-1.5999,4.0101,-78.0491 2019-06-03 15:40:16.540,138.1942,7089.1143,3.3016,-0.6395,1.1375,0.0296,2340.0,2340.0,-0.3986,-1.5969,4.0168,-78.0491 2019-06-03 15:40:16.560,138.1764,7089.1689,3.2843,-0.6402,0.7795,0.122,2340.0,2340.0,-0.3869,-1.5999,4.0128,-78.0718 2019-06-03 15:40:16.580,138.123,7089.1963,3.2843,-0.6402,1.1594,0.054,2340.0,2340.0,-0.384,-1.5969,4.0115,-78.0718 2019-06-03 15:40:16.600,138.1408,7089.1689,3.2662,-0.6457,0.9752,0.0287,2340.0,2340.0,-0.3811,-1.5969,4.0194,-78.1225 2019-06-03 15:40:16.620,138.123,7089.1416,3.2617,-0.6488,0.8665,0.0942,2340.0,2340.0,-0.3928,-1.5969,4.0168,-78.133 2019-06-03 15:40:16.640,138.1942,7089.0869,3.2617,-0.6488,1.0288,-0.0177,2340.0,2340.0,-0.4191,-1.594,4.0207,-78.133 2019-06-03 15:40:16.660,138.203,7088.978,3.2617,-0.6488,0.9223,0.1579,2340.0,2340.0,-0.4161,-1.591,4.0221,-78.133 2019-06-03 15:40:16.680,138.1319,7089.0054,3.2537,-0.6505,1.0458,0.0072,2340.0,2340.0,-0.4132,-1.594,4.0207,-78.154 2019-06-03 15:40:16.700,138.1319,7088.9507,3.2425,-0.6565,0.9005,-0.0181,2340.0,2340.0,-0.4015,-1.5999,4.0274,-78.175 2019-06-03 15:40:16.720,138.1141,7088.978,3.2425,-0.6565,1.041,0.1377,2340.0,2340.0,-0.3898,-1.5999,4.0181,-78.175 2019-06-03 15:40:16.740,138.3362,7089.0054,3.2425,-0.6565,0.9082,-0.016,2340.0,2340.0,-0.3811,-1.5999,4.026,-78.175 2019-06-03 15:40:16.760,138.3184,7089.0601,3.2367,-0.6575,1.0247,0.1369,2340.0,2340.0,-0.3898,-1.5969,4.0221,-78.1924 2019-06-03 15:40:16.780,138.2829,7089.0869,3.2367,-0.6575,0.9264,0.0581,2340.0,2340.0,-0.4015,-1.5999,4.0168,-78.1924 2019-06-03 15:40:16.800,138.2741,7089.0601,3.227,-0.6671,0.875,0.0276,2340.0,2340.0,-0.3986,-1.5969,4.0406,-78.2414 2019-06-03 15:40:16.820,138.2829,7089.0869,3.2279,-0.667,1.0665,0.0805,2340.0,2340.0,-0.3957,-1.5969,4.0207,-78.2484 2019-06-03 15:40:16.840,138.3273,7089.1963,3.2279,-0.667,0.8491,0.0498,2340.0,2340.0,-0.3898,-1.6029,4.0274,-78.2484 2019-06-03 15:40:16.860,138.3362,7089.251,3.2279,-0.667,1.1468,0.1067,2340.0,2340.0,-0.3869,-1.5969,4.0313,-78.2484 2019-06-03 15:40:16.880,138.2652,7089.3057,3.2219,-0.6719,0.8258,0.0665,2340.0,2340.0,-0.3869,-1.5969,4.0221,-78.2606 2019-06-03 15:40:16.900,138.2741,7089.333,3.2205,-0.6747,0.929,0.0535,2340.0,2340.0,-0.4015,-1.6029,4.0313,-78.2694 2019-06-03 15:40:16.920,138.2652,7089.3604,3.2205,-0.6747,1.0384,0.0552,2340.0,2340.0,-0.4044,-1.5969,4.03,-78.2694 2019-06-03 15:40:16.940,138.3184,7089.415,3.2205,-0.6747,0.8883,0.1014,2340.0,2340.0,-0.4015,-1.5969,4.0313,-78.2694 2019-06-03 15:40:16.960,138.3273,7089.5239,3.2225,-0.6744,1.1435,0.044,2340.0,2340.0,-0.4074,-1.5969,4.0287,-78.2781 2019-06-03 15:40:16.980,138.2652,7089.6606,3.2225,-0.6744,0.8154,0.1473,2340.0,2340.0,-0.4015,-1.5969,4.0287,-78.2781 2019-06-03 15:40:17.000,138.2741,7089.7153,3.2217,-0.6777,0.9149,0.1249,2340.0,2340.0,-0.3986,-1.5969,4.034,-78.2869 2019-06-03 15:40:17.020,138.2652,7089.6606,3.2185,-0.6805,1.0144,0.0233,2340.0,2340.0,-0.3898,-1.5969,4.026,-78.2904 2019-06-03 15:40:17.040,138.3184,7089.6606,3.2185,-0.6805,0.8931,0.1304,2340.0,2340.0,-0.384,-1.5969,4.0313,-78.2904 2019-06-03 15:40:17.060,138.3362,7089.5513,3.2185,-0.6805,0.9885,0.0177,2340.0,2340.0,-0.3869,-1.591,4.0366,-78.2904 2019-06-03 15:40:17.080,138.2652,7089.4692,3.2181,-0.6824,0.973,0.16,2340.0,2340.0,-0.3957,-1.594,4.0313,-78.2921 2019-06-03 15:40:17.100,138.2652,7089.3877,3.2145,-0.6832,1.0406,0.1412,2340.0,2340.0,-0.4103,-1.591,4.0366,-78.2904 2019-06-03 15:40:17.120,138.2652,7089.333,3.2145,-0.6832,0.8635,0.0177,2340.0,2340.0,-0.4074,-1.5969,4.0221,-78.2904 2019-06-03 15:40:17.140,138.3273,7089.3604,3.2145,-0.6832,1.0395,0.1458,2340.0,2340.0,-0.3986,-1.5999,4.0353,-78.2904 2019-06-03 15:40:17.160,138.3096,7089.3877,3.2107,-0.6825,0.8861,0.0193,2340.0,2340.0,-0.384,-1.6059,4.034,-78.2869 2019-06-03 15:40:17.180,138.2829,7089.415,3.2107,-0.6825,1.0122,0.1316,2340.0,2340.0,-0.3694,-1.5999,4.034,-78.2869 2019-06-03 15:40:17.200,138.2652,7089.3877,3.2015,-0.683,1.0543,0.1156,2340.0,2340.0,-0.3869,-1.6059,4.0327,-78.3026 2019-06-03 15:40:17.220,138.2829,7089.333,3.1958,-0.6839,0.8764,0.0708,2340.0,2340.0,-0.384,-1.6149,4.0274,-78.3008 2019-06-03 15:40:17.240,138.3184,7089.3877,3.1958,-0.6839,1.1239,0.1069,2340.0,2340.0,-0.3898,-1.6059,4.0327,-78.3008 2019-06-03 15:40:17.260,138.3184,7089.415,3.1958,-0.6839,0.7744,0.0721,2340.0,2340.0,-0.3928,-1.6089,4.038,-78.3008 2019-06-03 15:40:17.280,138.2652,7089.4419,3.1888,-0.6767,1.1468,0.0777,2340.0,2340.0,-0.4074,-1.6029,4.026,-78.2921 2019-06-03 15:40:17.300,138.2741,7089.3057,3.1803,-0.674,1.0839,0.0433,2340.0,2340.0,-0.4249,-1.6059,4.038,-78.2851 2019-06-03 15:40:17.320,138.2652,7089.2783,3.1803,-0.674,0.8454,0.0988,2340.0,2340.0,-0.422,-1.6059,4.0406,-78.2851 2019-06-03 15:40:17.340,138.3273,7089.1689,3.1803,-0.674,1.1379,0.0447,2340.0,2340.0,-0.4103,-1.6059,4.0353,-78.2851 2019-06-03 15:40:17.360,138.3273,7089.2236,3.1681,-0.6802,0.7781,0.1186,2340.0,2340.0,-0.3986,-1.6059,4.0393,-78.2781 2019-06-03 15:40:17.380,138.2652,7089.2783,3.1681,-0.6802,1.1006,0.0295,2340.0,2340.0,-0.3869,-1.5999,4.0366,-78.2781 2019-06-03 15:40:17.400,138.2741,7089.3057,3.1515,-0.6835,1.1512,0.0019,2400.0,2400.0,-0.3986,-1.6029,4.0274,-78.2764 2019-06-03 15:40:17.420,138.2652,7089.3604,3.148,-0.6825,0.9001,0.1404,2400.0,2400.0,-0.3986,-1.6059,4.034,-78.2711 2019-06-03 15:40:17.440,138.3184,7089.3604,3.148,-0.6825,1.0462,0.0039,2400.0,2400.0,-0.3986,-1.6029,4.0393,-78.2711 2019-06-03 15:40:17.460,138.3362,7089.333,3.148,-0.6825,0.9933,0.1789,2400.0,2400.0,-0.3986,-1.6029,4.0393,-78.2711 2019-06-03 15:40:17.480,138.2741,7089.333,3.137,-0.6838,0.8746,-0.0242,2400.0,2400.0,-0.4015,-1.6029,4.038,-78.2641 2019-06-03 15:40:17.500,138.2741,7089.2783,3.1232,-0.69,0.929,-0.0778,2400.0,2400.0,-0.4044,-1.6029,4.0406,-78.2554 2019-06-03 15:40:17.520,138.2652,7089.3057,3.1232,-0.69,1.0695,0.2133,2400.0,2400.0,-0.4044,-1.6029,4.0353,-78.2554 2019-06-03 15:40:17.540,138.4778,7089.2783,3.1232,-0.69,0.9445,-0.0113,2400.0,2400.0,-0.4044,-1.6059,4.0366,-78.2554 2019-06-03 15:40:17.560,138.4513,7089.3057,3.1123,-0.6912,1.1424,0.1774,2400.0,2400.0,-0.3986,-1.6059,4.0366,-78.2484 2019-06-03 15:40:17.580,138.4159,7089.2783,3.1123,-0.6912,0.7452,0.0464,2400.0,2400.0,-0.4044,-1.5999,4.034,-78.2484 2019-06-03 15:40:17.600,138.407,7089.3057,3.0919,-0.6961,0.8716,0.0034,2400.0,2400.0,-0.4191,-1.6089,4.0393,-78.2414 2019-06-03 15:40:17.620,138.4159,7089.2783,3.0898,-0.6941,1.1183,0.114,2400.0,2400.0,-0.4044,-1.6149,4.0353,-78.2379 2019-06-03 15:40:17.640,138.469,7089.2783,3.0898,-0.6941,0.8213,0.0877,2400.0,2400.0,-0.4074,-1.6149,4.034,-78.2379 2019-06-03 15:40:17.660,138.4601,7089.251,3.0898,-0.6941,1.1893,0.0741,2400.0,2400.0,-0.4015,-1.6059,4.0393,-78.2379 2019-06-03 15:40:17.680,138.3982,7089.2783,3.0759,-0.6999,0.6952,0.1147,2400.0,2400.0,-0.3957,-1.6119,4.034,-78.2274 2019-06-03 15:40:17.700,138.407,7089.251,3.0663,-0.701,0.7585,0.0915,2400.0,2400.0,-0.3928,-1.6119,4.038,-78.2152 2019-06-03 15:40:17.720,138.3982,7089.2783,3.0663,-0.701,1.179,0.0381,2400.0,2400.0,-0.3928,-1.6119,4.0406,-78.2152 2019-06-03 15:40:17.740,138.4601,7089.251,3.0663,-0.701,0.8077,0.148,2400.0,2400.0,-0.4015,-1.6119,4.0313,-78.2152 2019-06-03 15:40:17.760,138.4513,7089.3057,3.0582,-0.6976,1.1165,-0.0252,2400.0,2400.0,-0.3898,-1.6089,4.0512,-78.2047 2019-06-03 15:40:17.780,138.407,7089.3057,3.0444,-0.6999,0.9271,0.1939,2400.0,2400.0,-0.3957,-1.6059,4.03,-78.2012 2019-06-03 15:40:17.800,138.4159,7089.3057,3.0401,-0.6996,1.0325,0.1679,2400.0,2400.0,-0.3928,-1.6089,4.0406,-78.1942 2019-06-03 15:40:17.820,138.407,7089.3057,3.031,-0.7035,1.0284,-0.0095,2400.0,2400.0,-0.4015,-1.6119,4.0274,-78.1889 2019-06-03 15:40:17.840,138.4513,7089.3877,3.031,-0.7035,0.9608,0.1598,2400.0,2400.0,-0.4103,-1.6059,4.0432,-78.1889 2019-06-03 15:40:17.860,138.4778,7089.333,3.031,-0.7035,0.896,-0.0293,2400.0,2400.0,-0.4132,-1.6089,4.0671,-78.1889 2019-06-03 15:40:17.880,138.407,7089.3057,3.0222,-0.6931,1.1686,0.182,2400.0,2400.0,-0.4074,-1.6089,4.0485,-78.1732 2019-06-03 15:40:17.900,138.4159,7089.2783,3.0136,-0.6855,1.1875,0.1667,2400.0,2400.0,-0.4015,-1.6089,4.0485,-78.1592 2019-06-03 15:40:17.920,138.3982,7089.3057,3.0136,-0.6855,0.7947,0.0076,2400.0,2400.0,-0.384,-1.6089,4.0393,-78.1592 2019-06-03 15:40:17.940,138.4513,7089.4419,3.0136,-0.6855,1.1923,0.1332,2400.0,2400.0,-0.384,-1.6149,4.0525,-78.1592 2019-06-03 15:40:17.960,138.4601,7089.5239,2.9998,-0.6727,0.6605,0.0121,2400.0,2400.0,-0.3928,-1.6119,4.0658,-78.1417 2019-06-03 15:40:17.980,138.407,7089.5786,2.9998,-0.6727,1.2526,0.1148,2400.0,2400.0,-0.3928,-1.6089,4.0578,-78.1417 2019-06-03 15:40:18.000,138.407,7089.5513,2.989,-0.6481,1.1183,0.1155,2400.0,2400.0,-0.4191,-1.6089,4.0552,-78.1155 2019-06-03 15:40:18.020,138.4159,7089.5513,2.9816,-0.6406,0.6601,0.0649,2400.0,2400.0,-0.4074,-1.6059,4.0671,-78.1068 2019-06-03 15:40:18.040,138.4601,7089.606,2.9816,-0.6406,1.3029,0.064,2400.0,2400.0,-0.4015,-1.6119,4.0459,-78.1068 2019-06-03 15:40:18.060,138.469,7089.606,2.9816,-0.6406,0.6819,0.0863,2400.0,2400.0,-0.384,-1.6089,4.0658,-78.1068 2019-06-03 15:40:18.080,138.3982,7089.606,2.9728,-0.6216,1.2722,0.0119,2400.0,2400.0,-0.3957,-1.6119,4.0406,-78.091 2019-06-03 15:40:18.100,138.407,7089.4966,2.9598,-0.604,1.2392,0.0095,2400.0,2400.0,-0.3898,-1.6089,4.0393,-78.0753 2019-06-03 15:40:18.120,138.3893,7089.4966,2.9598,-0.604,0.821,0.1666,2400.0,2400.0,-0.3898,-1.6089,4.0472,-78.0753 2019-06-03 15:40:18.140,138.3096,7089.5239,2.9598,-0.604,1.183,-0.0169,2400.0,2400.0,-0.3811,-1.6059,4.03,-78.0753 2019-06-03 15:40:18.160,138.3273,7089.5239,2.9471,-0.5859,0.9031,0.1581,2400.0,2400.0,-0.384,-1.6089,4.0327,-78.0596 2019-06-03 15:40:18.180,138.2652,7089.5239,2.9471,-0.5859,1.0214,-0.0508,2400.0,2400.0,-0.3869,-1.6089,4.0035,-78.0596 2019-06-03 15:40:18.200,138.2741,7089.5239,2.9394,-0.5582,1.1209,-0.0368,2400.0,2400.0,-0.384,-1.6089,3.9903,-78.0421 2019-06-03 15:40:18.220,138.2652,7089.5239,2.9431,-0.5459,0.9012,0.2294,2400.0,2400.0,-0.4015,-1.6119,3.9665,-78.0333 2019-06-03 15:40:18.240,138.3096,7089.5513,2.9431,-0.5459,1.0506,-0.069,2400.0,2400.0,-0.3781,-1.5999,3.9506,-78.0333 2019-06-03 15:40:18.260,138.3273,7089.5513,2.9431,-0.5459,0.9889,0.2223,2400.0,2400.0,-0.384,-1.5969,3.9453,-78.0333 2019-06-03 15:40:18.280,138.2652,7089.5239,2.9313,-0.5303,0.8224,-0.0825,2400.0,2400.0,-0.3898,-1.594,3.883,-78.0228 2019-06-03 15:40:18.300,138.2829,7089.415,2.9167,-0.5149,1.0022,-0.0394,2400.0,2400.0,-0.3986,-1.5969,3.8407,-78.0106 2019-06-03 15:40:18.320,138.2652,7089.4419,2.9167,-0.5149,1.1335,0.2226,2400.0,2400.0,-0.4044,-1.5969,3.8023,-78.0106 2019-06-03 15:40:18.340,138.4778,7089.4966,2.9167,-0.5149,0.8328,-0.017,2400.0,2400.0,-0.4103,-1.5969,3.7242,-78.0106 2019-06-03 15:40:18.360,138.4424,7089.5513,2.9057,-0.4952,1.1627,0.1742,2400.0,2400.0,-0.4044,-1.591,3.6619,-78.0019 2019-06-03 15:40:18.380,138.3982,7089.606,2.9057,-0.4952,0.7226,0.0,2400.0,2400.0,-0.4044,-1.591,3.5865,-78.0019 2019-06-03 15:40:18.400,138.3893,7089.6333,2.8732,-0.4624,0.8713,0.035,2400.0,2340.0,-0.4044,-1.591,3.5256,-78.0019 2019-06-03 15:40:18.420,138.407,7089.6606,2.8657,-0.4482,1.176,0.1331,2400.0,2340.0,-0.4074,-1.588,3.4766,-77.9984 2019-06-03 15:40:18.440,138.4601,7089.5786,2.8657,-0.4482,0.6457,0.0454,2400.0,2340.0,-0.4015,-1.585,3.4091,-77.9984 2019-06-03 15:40:18.460,138.4601,7089.606,2.8657,-0.4482,1.2463,0.081,2400.0,2340.0,-0.3957,-1.582,3.3627,-77.9984 2019-06-03 15:40:18.480,138.3982,7089.6333,2.8285,-0.4308,0.7233,0.0552,2400.0,2340.0,-0.4074,-1.585,3.3071,-77.9966 2019-06-03 15:40:18.500,138.407,7089.5786,2.7912,-0.4083,0.7984,0.107,2400.0,2340.0,-0.4044,-1.579,3.2819,-77.9931 2019-06-03 15:40:18.520,138.3893,7089.6333,2.7912,-0.4083,1.1065,0.0167,2400.0,2340.0,-0.4044,-1.579,3.2727,-77.9931 2019-06-03 15:40:18.540,138.4601,7089.6606,2.7912,-0.4083,0.808,0.1323,2400.0,2340.0,-0.3986,-1.579,3.2303,-77.9931 2019-06-03 15:40:18.560,138.4601,7089.5786,2.7481,-0.3886,1.1549,-0.0284,2400.0,2340.0,-0.3957,-1.579,3.2383,-77.9931 2019-06-03 15:40:18.580,138.407,7089.4966,2.7481,-0.3886,0.804,0.1529,2400.0,2340.0,-0.3957,-1.579,3.2303,-77.9931 2019-06-03 15:40:18.600,138.3982,7089.5239,2.6536,-0.3642,0.8849,0.1604,2400.0,2340.0,-0.3957,-1.579,3.2555,-78.0228 2019-06-03 15:40:18.620,138.407,7089.5239,2.6173,-0.3576,1.0543,-0.0234,2400.0,2340.0,-0.3928,-1.582,3.3203,-78.0246 2019-06-03 15:40:18.640,138.4513,7089.5513,2.6173,-0.3576,0.7918,0.1645,2400.0,2340.0,-0.4044,-1.579,3.3415,-78.0246 2019-06-03 15:40:18.660,138.469,7089.5239,2.6173,-0.3576,0.9822,-0.0186,2400.0,2340.0,-0.4132,-1.579,3.4263,-78.0246 2019-06-03 15:40:18.680,138.3982,7089.4966,2.545,-0.3448,0.9463,0.1159,2400.0,2340.0,-0.4044,-1.582,3.4885,-78.0298 2019-06-03 15:40:18.700,138.407,7089.415,2.4697,-0.3318,1.0262,0.1146,2400.0,2340.0,-0.3986,-1.579,3.5441,-78.0386 2019-06-03 15:40:18.720,138.3982,7089.415,2.4697,-0.3318,0.7352,0.0228,2400.0,2340.0,-0.3898,-1.591,3.6659,-78.0386 2019-06-03 15:40:18.740,138.6191,7089.4419,2.4697,-0.3318,1.0606,0.1099,2400.0,2340.0,-0.4044,-1.5969,3.7255,-78.0386 2019-06-03 15:40:18.760,138.5838,7089.5239,2.3896,-0.3236,0.8228,0.0546,2400.0,2340.0,-0.4015,-1.5969,3.7996,-78.0491 2019-06-03 15:40:18.780,138.5397,7089.5513,2.3896,-0.3236,1.0847,0.0762,2400.0,2340.0,-0.4015,-1.5969,3.8566,-78.0491 2019-06-03 15:40:18.800,138.5397,7089.606,2.2762,-0.3133,1.0236,0.0779,2400.0,2340.0,-0.4044,-1.5999,3.8751,-78.105 2019-06-03 15:40:18.820,138.5573,7089.5786,2.2435,-0.3077,0.8191,0.0546,2400.0,2340.0,-0.4015,-1.5999,3.9466,-78.1103 2019-06-03 15:40:18.840,138.6103,7089.5239,2.2435,-0.3077,0.9767,0.0403,2400.0,2340.0,-0.4044,-1.5969,3.936,-78.1103 2019-06-03 15:40:18.860,138.6015,7089.5239,2.2435,-0.3077,0.8132,0.0903,2400.0,2340.0,-0.4161,-1.5999,3.936,-78.1103 2019-06-03 15:40:18.880,138.5397,7089.5513,2.1859,-0.2972,0.9974,0.0176,2400.0,2340.0,-0.422,-1.5969,3.9426,-78.1243 2019-06-03 15:40:18.900,138.5485,7089.5239,2.1321,-0.2905,0.9486,0.0345,2400.0,2340.0,-0.4191,-1.5999,3.9347,-78.14 2019-06-03 15:40:18.920,138.5397,7089.5513,2.1321,-0.2905,0.9049,0.1043,2400.0,2340.0,-0.422,-1.5969,3.9545,-78.14 2019-06-03 15:40:18.940,138.5927,7089.606,2.1321,-0.2905,0.9164,0.0346,2400.0,2340.0,-0.4015,-1.5999,3.9598,-78.14 2019-06-03 15:40:18.960,138.5927,7089.6606,2.0888,-0.2849,0.7751,0.1069,2400.0,2340.0,-0.4015,-1.5969,3.9572,-78.1557 2019-06-03 15:40:18.980,138.5485,7089.6606,2.0888,-0.2849,0.9108,0.0186,2400.0,2340.0,-0.4015,-1.5969,3.9572,-78.1557 2019-06-03 15:40:19.000,138.5485,7089.7153,2.0381,-0.2726,0.8561,0.0369,2400.0,2340.0,-0.4074,-1.5969,3.9506,-78.1907 2019-06-03 15:40:19.020,138.5573,7089.688,2.0284,-0.2685,0.9256,0.1052,2400.0,2340.0,-0.4074,-1.5999,3.9625,-78.1977 2019-06-03 15:40:19.040,138.6015,7089.7153,2.0284,-0.2685,0.8794,0.0175,2400.0,2340.0,-0.4044,-1.5999,3.9718,-78.1977 2019-06-03 15:40:19.060,138.6015,7089.688,2.0284,-0.2685,1.0377,0.0936,2400.0,2340.0,-0.4132,-1.5969,3.9665,-78.1977 2019-06-03 15:40:19.080,138.5397,7089.6606,2.0044,-0.2676,0.6971,0.0686,2400.0,2340.0,-0.4044,-1.5969,3.9718,-78.2152 2019-06-03 15:40:19.100,138.5485,7089.5513,1.9886,-0.2663,0.7034,0.064,2400.0,2340.0,-0.4074,-1.5999,3.9625,-78.2309 2019-06-03 15:40:19.120,138.5397,7089.4966,1.9886,-0.2663,1.0059,0.0439,2400.0,2340.0,-0.3928,-1.5999,3.9863,-78.2309 2019-06-03 15:40:19.140,138.4513,7089.4419,1.9886,-0.2663,0.8169,0.0736,2400.0,2340.0,-0.3811,-1.5969,3.9863,-78.2309 2019-06-03 15:40:19.160,138.469,7089.4966,1.9799,-0.2652,1.1335,0.0186,2400.0,2340.0,-0.3928,-1.5969,3.9678,-78.2467 2019-06-03 15:40:19.180,138.3982,7089.4692,1.9729,-0.2659,0.8406,0.1156,2400.0,2340.0,-0.4015,-1.5969,3.9876,-78.2694 2019-06-03 15:40:19.200,138.407,7089.4966,1.9673,-0.2695,0.8295,0.1025,2400.0,2340.0,-0.3986,-1.5969,3.9876,-78.2781 2019-06-03 15:40:19.220,138.3982,7089.5239,1.9643,-0.27,0.9926,-0.0042,2400.0,2340.0,-0.3986,-1.5969,4.0062,-78.2851 2019-06-03 15:40:19.240,138.4601,7089.5513,1.9643,-0.27,0.7714,0.0887,2400.0,2340.0,-0.3986,-1.5969,3.9784,-78.2851 2019-06-03 15:40:19.260,138.469,7089.4966,1.9643,-0.27,0.9859,0.0143,2400.0,2340.0,-0.3898,-1.5999,3.9903,-78.2851 2019-06-03 15:40:19.280,138.3982,7089.5513,1.9632,-0.2728,0.8746,0.139,2400.0,2340.0,-0.4044,-1.5969,3.9982,-78.2991 2019-06-03 15:40:19.300,138.407,7089.333,1.9655,-0.2753,0.9256,0.1217,2400.0,2340.0,-0.4015,-1.5969,3.9943,-78.3131 2019-06-03 15:40:19.320,138.3982,7088.4048,1.9655,-0.2753,1.0399,-0.0133,2400.0,2340.0,-0.4015,-1.5999,4.0075,-78.3131 2019-06-03 15:40:19.340,138.4601,7087.1489,1.9655,-0.2753,0.8827,0.097,2400.0,2340.0,-0.3986,-1.594,3.989,-78.3131 2019-06-03 15:40:19.360,138.4513,7086.3296,1.9689,-0.2775,0.9682,0.0089,2400.0,2340.0,-0.3986,-1.5969,3.9982,-78.3271 2019-06-03 15:40:19.380,138.407,7084.9648,1.9689,-0.2775,0.9948,0.1728,2400.0,2340.0,-0.3986,-1.5999,4.0115,-78.3271 2019-06-03 15:40:19.400,138.407,7084.064,1.972,-0.2862,0.8875,0.1719,2340.0,2400.0,-0.3957,-1.594,3.9982,-78.3481 2019-06-03 15:40:19.420,138.4159,7083.1626,1.9687,-0.2933,0.9571,-0.035,2340.0,2400.0,-0.384,-1.594,3.9982,-78.3533 2019-06-03 15:40:19.440,138.4601,7081.8799,1.9687,-0.2933,1.0051,0.136,2340.0,2400.0,-0.3898,-1.5969,3.9943,-78.3533 2019-06-03 15:40:19.460,138.4601,7081.0059,1.9687,-0.2933,0.8838,0.0018,2340.0,2400.0,-0.3986,-1.594,4.0075,-78.3533 2019-06-03 15:40:19.480,138.407,7080.8423,1.974,-0.2936,1.075,0.1475,2340.0,2400.0,-0.4044,-1.594,4.0128,-78.3621 2019-06-03 15:40:19.500,138.407,7080.8149,1.9808,-0.3018,1.004,0.1322,2340.0,2400.0,-0.4161,-1.5969,3.9929,-78.3708 2019-06-03 15:40:19.520,138.3893,7080.8149,1.9808,-0.3018,0.7936,0.0371,2340.0,2400.0,-0.4044,-1.5999,4.0101,-78.3708 2019-06-03 15:40:19.540,138.6191,7080.8149,1.9808,-0.3018,1.1139,0.0736,2340.0,2400.0,-0.3986,-1.5969,4.0035,-78.3708 2019-06-03 15:40:19.560,138.575,7080.8696,1.9818,-0.3085,0.8358,0.0967,2340.0,2400.0,-0.3928,-1.5969,4.0062,-78.3778 2019-06-03 15:40:19.580,138.5397,7080.9785,1.9818,-0.3085,1.1287,0.0756,2340.0,2400.0,-0.3957,-1.5969,4.0141,-78.3778 2019-06-03 15:40:19.600,138.5485,7081.0059,1.9819,-0.315,1.0403,0.0759,2340.0,2400.0,-0.3986,-1.5969,3.9996,-78.404 2019-06-03 15:40:19.620,138.5485,7081.0059,1.9815,-0.3174,0.9119,0.0991,2340.0,2400.0,-0.4103,-1.5999,4.0115,-78.4075 2019-06-03 15:40:19.640,138.5927,7081.0879,1.9815,-0.3174,1.1028,0.0388,2340.0,2400.0,-0.4044,-1.5969,4.0049,-78.4075 2019-06-03 15:40:19.660,138.6103,7081.0059,1.9815,-0.3174,0.8143,0.1308,2340.0,2400.0,-0.4015,-1.5969,4.0101,-78.4075 2019-06-03 15:40:19.680,138.5573,7080.9243,1.9842,-0.3233,1.0994,0.0254,2340.0,2400.0,-0.4044,-1.5969,4.0128,-78.411 2019-06-03 15:40:19.700,138.5485,7080.8696,1.9832,-0.332,0.9715,0.0387,2340.0,2400.0,-0.3957,-1.591,4.0075,-78.4145 2019-06-03 15:40:19.720,138.5397,7080.8696,1.9832,-0.332,1.0277,0.1237,2340.0,2400.0,-0.4015,-1.5999,4.0115,-78.4145 2019-06-03 15:40:19.740,138.7513,7080.8696,1.9832,-0.332,0.9707,0.0037,2340.0,2400.0,-0.3986,-1.5969,4.0168,-78.4145 2019-06-03 15:40:19.760,138.7161,7080.897,1.9846,-0.3374,1.0077,0.145,2340.0,2400.0,-0.4044,-1.5969,4.0088,-78.4163 2019-06-03 15:40:19.780,138.6809,7080.897,1.9846,-0.3374,0.9438,0.0146,2340.0,2400.0,-0.4015,-1.594,4.0207,-78.4163 2019-06-03 15:40:19.800,138.672,7080.8696,1.9806,-0.3528,0.9582,0.0524,2340.0,2400.0,-0.4015,-1.594,4.0128,-78.432 2019-06-03 15:40:19.820,138.6897,7080.7876,1.9827,-0.3551,1.0225,0.0838,2340.0,2400.0,-0.4044,-1.5969,4.0168,-78.432 2019-06-03 15:40:19.840,138.7425,7080.8423,1.9827,-0.3551,0.8006,0.0743,2340.0,2400.0,-0.4044,-1.5999,4.0221,-78.432 2019-06-03 15:40:19.860,138.7337,7080.8149,1.9827,-0.3551,1.1446,0.1104,2340.0,2400.0,-0.4015,-1.594,4.0247,-78.432 2019-06-03 15:40:19.880,138.6809,7080.8423,1.9762,-0.3676,0.8679,0.0186,2340.0,2400.0,-0.4015,-1.5969,4.0353,-78.4355 2019-06-03 15:40:19.900,138.6897,7080.7876,1.9733,-0.3777,0.9197,0.0413,2340.0,2400.0,-0.384,-1.6029,4.0366,-78.4355 2019-06-03 15:40:19.920,138.6632,7080.7603,1.9733,-0.3777,1.0828,0.0641,2340.0,2400.0,-0.3986,-1.6029,4.0485,-78.4355 2019-06-03 15:40:19.940,138.7337,7080.7056,1.9733,-0.3777,0.7995,0.0832,2340.0,2400.0,-0.4015,-1.5999,4.0922,-78.4355 2019-06-03 15:40:19.960,138.7337,7080.7329,1.9718,-0.3847,1.2026,0.0553,2340.0,2400.0,-0.4132,-1.5999,4.1161,-78.4355 2019-06-03 15:40:19.980,138.672,7080.7603,1.9718,-0.3847,0.8646,0.0847,2340.0,2400.0,-0.4337,-1.6029,4.1505,-78.4355 2019-06-03 15:40:20.000,138.6897,7080.8423,1.9676,-0.3999,0.9671,0.0917,2340.0,2400.0,-0.422,-1.5969,4.1558,-78.4477 2019-06-03 15:40:20.020,138.6809,7080.8149,1.9655,-0.4029,1.0854,0.0082,2340.0,2400.0,-0.4191,-1.5969,4.1809,-78.446 2019-06-03 15:40:20.040,138.7337,7080.8696,1.9655,-0.4029,0.882,0.1622,2340.0,2400.0,-0.4103,-1.5999,4.2326,-78.446 2019-06-03 15:40:20.060,138.7425,7080.8423,1.9655,-0.4029,1.0429,0.0371,2340.0,2400.0,-0.4015,-1.5999,4.2617,-78.446 2019-06-03 15:40:20.080,138.672,7080.8696,1.9636,-0.4088,0.9878,0.1304,2340.0,2400.0,-0.384,-1.5999,4.3372,-78.4425 2019-06-03 15:40:20.100,138.6897,7080.8149,1.9662,-0.4108,0.9637,0.1492,2340.0,2400.0,-0.3898,-1.5999,4.3623,-78.4407 2019-06-03 15:40:20.120,138.6809,7080.8149,1.9662,-0.4108,1.0155,0.0026,2340.0,2400.0,-0.3928,-1.5969,4.4378,-78.4407 2019-06-03 15:40:20.140,138.7337,7080.897,1.9662,-0.4108,1.0909,0.1775,2340.0,2400.0,-0.3986,-1.6029,4.5159,-78.4407 2019-06-03 15:40:20.160,138.7337,7080.9243,1.972,-0.4102,0.8672,0.0409,2340.0,2400.0,-0.4044,-1.5969,4.5649,-78.4355 2019-06-03 15:40:20.180,138.6897,7080.9512,1.972,-0.4102,1.0983,0.1523,2340.0,2400.0,-0.3986,-1.6029,4.643,-78.4355 2019-06-03 15:40:20.200,138.672,7080.9512,1.99,-0.4173,1.0092,0.1421,2340.0,2400.0,-0.4015,-1.6029,4.6735,-78.4442 2019-06-03 15:40:20.220,138.6897,7080.897,1.9957,-0.4193,0.9622,0.0061,2340.0,2400.0,-0.4103,-1.5969,4.7291,-78.4407 2019-06-03 15:40:20.240,138.7337,7080.897,1.9957,-0.4193,1.233,0.168,2340.0,2400.0,-0.4103,-1.6029,4.79,-78.4407 2019-06-03 15:40:20.260,138.7425,7080.897,1.9957,-0.4193,0.7832,0.05,2340.0,2400.0,-0.4074,-1.5999,4.8403,-78.4407 2019-06-03 15:40:20.280,138.672,7080.9243,2.0259,-0.4176,1.1191,0.0967,2340.0,2400.0,-0.4103,-1.5999,4.8919,-78.4337 2019-06-03 15:40:20.300,138.6809,7080.8696,2.0644,-0.4132,1.1449,0.0778,2340.0,2400.0,-0.4044,-1.6029,4.9184,-78.425 2019-06-03 15:40:20.320,138.672,7080.897,2.0644,-0.4132,0.8835,0.0677,2340.0,2400.0,-0.4044,-1.5969,4.9343,-78.425 2019-06-03 15:40:20.340,138.892,7080.8696,2.0644,-0.4132,1.2148,0.0939,2340.0,2400.0,-0.4044,-1.6029,4.9555,-78.425 2019-06-03 15:40:20.360,138.8569,7080.8696,2.1098,-0.4133,0.7714,0.1157,2340.0,2400.0,-0.4074,-1.6029,4.9621,-78.418 2019-06-03 15:40:20.380,138.8217,7080.8696,2.1098,-0.4133,1.1601,0.0375,2340.0,2400.0,-0.4074,-1.6029,4.9714,-78.418 2019-06-03 15:40:20.400,138.8217,7080.9243,2.2013,-0.403,1.1172,0.0469,2400.0,2340.0,-0.4103,-1.6029,4.9661,-78.397 2019-06-03 15:40:20.420,138.8217,7080.897,2.2343,-0.3986,0.9656,0.1076,2400.0,2340.0,-0.4161,-1.6059,4.9687,-78.39 2019-06-03 15:40:20.440,138.8745,7080.9243,2.2343,-0.3986,1.2285,0.0514,2400.0,2340.0,-0.4161,-1.6209,4.97,-78.39 2019-06-03 15:40:20.460,138.8745,7080.897,2.2343,-0.3986,0.9245,0.1459,2400.0,2340.0,-0.4161,-1.6179,4.9581,-78.39 2019-06-03 15:40:20.480,138.8217,7080.8423,2.3115,-0.3936,1.1375,-0.0056,2400.0,2340.0,-0.4103,-1.6149,4.9581,-78.3795 2019-06-03 15:40:20.500,138.8217,7080.7603,2.3898,-0.3864,1.1379,0.0095,2400.0,2340.0,-0.4074,-1.6149,4.9369,-78.3655 2019-06-03 15:40:20.520,138.8217,7080.7603,2.3898,-0.3864,1.007,0.1241,2400.0,2340.0,-0.4132,-1.6179,4.9052,-78.3655 2019-06-03 15:40:20.540,139.0236,7080.7876,2.3898,-0.3864,1.1287,0.0231,2400.0,2340.0,-0.4132,-1.6119,4.8694,-78.3655 2019-06-03 15:40:20.560,139.0061,7080.8423,2.4731,-0.3806,1.0872,0.1692,2400.0,2340.0,-0.4161,-1.6149,4.7913,-78.3516 2019-06-03 15:40:20.580,138.9535,7080.8696,2.5635,-0.3707,1.0972,-0.0231,2400.0,2340.0,-0.4015,-1.6179,4.7304,-78.3253 2019-06-03 15:40:20.600,138.9535,7080.8696,2.6046,-0.3706,1.0676,-0.0127,2400.0,2340.0,-0.3986,-1.6209,4.6523,-78.3201 2019-06-03 15:40:20.620,138.9622,7080.8149,2.6494,-0.364,1.1294,0.1832,2400.0,2340.0,-0.3957,-1.6149,4.5649,-78.3113 2019-06-03 15:40:20.640,139.0061,7080.8423,2.6494,-0.364,1.0088,-0.0125,2400.0,2340.0,-0.3986,-1.6508,4.508,-78.3113 2019-06-03 15:40:20.660,139.0236,7080.8149,2.6494,-0.364,1.2189,0.1906,2400.0,2340.0,-0.4132,-1.6209,4.41,-78.3113 2019-06-03 15:40:20.680,138.9622,7080.8149,2.7318,-0.3575,1.0281,-0.0093,2400.0,2340.0,-0.4249,-1.6089,4.3531,-78.2974 2019-06-03 15:40:20.700,138.9535,7080.7329,2.8068,-0.3501,1.0026,0.0139,2400.0,2340.0,-0.4249,-1.6119,4.3067,-78.2834 2019-06-03 15:40:20.720,138.9535,7080.7329,2.8068,-0.3501,1.2392,0.1535,2400.0,2340.0,-0.4249,-1.6149,4.2644,-78.2834 2019-06-03 15:40:20.740,139.1637,7080.7329,2.8068,-0.3501,0.9922,0.0134,2400.0,2340.0,-0.4191,-1.6269,4.2577,-78.2834 2019-06-03 15:40:20.760,139.1375,7080.7603,2.8744,-0.3341,1.2773,0.1541,2400.0,2340.0,-0.4074,-1.6269,4.2326,-78.2694 2019-06-03 15:40:20.780,139.0937,7080.8423,2.8744,-0.3341,1.0,0.0613,2400.0,2340.0,-0.4044,-1.6269,4.2313,-78.2694 2019-06-03 15:40:20.800,139.0937,7080.8696,2.9534,-0.3157,0.9589,0.1061,2400.0,2340.0,-0.4015,-1.6269,4.218,-78.2327 2019-06-03 15:40:20.820,139.1024,7080.8423,2.9722,-0.3088,1.2988,0.0644,2400.0,2340.0,-0.3986,-1.6239,4.2114,-78.2257 2019-06-03 15:40:20.840,139.1549,7080.897,2.9722,-0.3088,0.9264,0.0955,2400.0,2340.0,-0.4015,-1.6269,4.2087,-78.2257 2019-06-03 15:40:20.860,139.1637,7080.9243,2.9722,-0.3088,1.2189,0.0564,2400.0,2340.0,-0.4015,-1.6209,4.1968,-78.2257 2019-06-03 15:40:20.880,139.0937,7080.9243,3.0051,-0.2962,1.0647,0.1321,2400.0,2340.0,-0.422,-1.6239,4.1929,-78.2117 2019-06-03 15:40:20.900,139.1024,7080.8423,3.0315,-0.28,1.0514,0.1907,2400.0,2340.0,-0.4132,-1.6239,4.1915,-78.1959 2019-06-03 15:40:20.920,139.0937,7080.8149,3.0315,-0.28,1.3321,0.0209,2400.0,2340.0,-0.4191,-1.6239,4.1743,-78.1959 2019-06-03 15:40:20.940,139.1462,7080.8149,3.0315,-0.28,0.9955,0.161,2400.0,2340.0,-0.4132,-1.6239,4.1823,-78.1959 2019-06-03 15:40:20.960,139.1549,7080.8696,3.049,-0.2594,1.2267,0.0076,2400.0,2340.0,-0.4161,-1.6418,4.1611,-78.182 2019-06-03 15:40:20.980,139.0937,7080.897,3.049,-0.2594,1.0299,0.1843,2400.0,2340.0,-0.4074,-1.6388,4.169,-78.182 2019-06-03 15:40:21.000,139.0937,7080.9243,3.0615,-0.2376,1.1653,0.2267,2400.0,2340.0,-0.3986,-1.6329,4.169,-78.161 2019-06-03 15:40:21.020,139.1199,7080.9243,3.0536,-0.2347,1.0251,0.0051,2400.0,2340.0,-0.384,-1.6359,4.1425,-78.1557 2019-06-03 15:40:21.040,139.1549,7080.8423,3.0536,-0.2347,1.193,0.1717,2400.0,2340.0,-0.3869,-1.6388,4.1743,-78.1557 2019-06-03 15:40:21.060,139.1549,7080.8423,3.0536,-0.2347,0.9804,0.0369,2400.0,2340.0,-0.4015,-1.6299,4.1505,-78.1557 2019-06-03 15:40:21.080,139.1024,7080.8149,3.0511,-0.2151,1.1324,0.1454,2400.0,2340.0,-0.4074,-1.6359,4.1598,-78.1452 2019-06-03 15:40:21.100,139.1024,7080.7329,3.044,-0.194,1.1915,0.1988,2400.0,2340.0,-0.422,-1.6418,4.1531,-78.1365 2019-06-03 15:40:21.120,139.0937,7080.7056,3.044,-0.194,1.034,0.0543,2400.0,2340.0,-0.4015,-1.6359,4.1425,-78.1365 2019-06-03 15:40:21.140,139.3034,7080.7329,3.044,-0.194,1.2008,0.1004,2400.0,2340.0,-0.4015,-1.6388,4.1558,-78.1365 2019-06-03 15:40:21.160,139.2685,7080.7329,3.027,-0.1793,0.9094,0.0855,2400.0,2340.0,-0.4015,-1.6418,4.1505,-78.1295 2019-06-03 15:40:21.180,139.2249,7080.7056,3.027,-0.1793,1.1978,0.0815,2400.0,2340.0,-0.3986,-1.6359,4.1492,-78.1295 2019-06-03 15:40:21.200,139.2423,7080.7603,3.0029,-0.1517,1.1908,0.1081,2400.0,2340.0,-0.3928,-1.6388,4.1465,-78.133 2019-06-03 15:40:21.220,139.2249,7080.7603,2.9906,-0.143,0.8909,0.0937,2400.0,2340.0,-0.3928,-1.6388,4.1373,-78.1312 2019-06-03 15:40:21.240,139.286,7080.7876,2.9906,-0.143,1.159,0.0415,2400.0,2340.0,-0.4103,-1.6359,4.1531,-78.1312 2019-06-03 15:40:21.260,139.286,7080.7876,2.9906,-0.143,0.9541,0.1101,2400.0,2340.0,-0.3957,-1.6388,4.1531,-78.1312 2019-06-03 15:40:21.280,139.2249,7080.8149,2.9716,-0.1232,1.2,0.0213,2400.0,2340.0,-0.4015,-1.6418,4.1412,-78.1277 2019-06-03 15:40:21.300,139.2336,7080.7603,2.9486,-0.1075,1.2404,0.0391,2400.0,2340.0,-0.384,-1.6359,4.1478,-78.126 2019-06-03 15:40:21.320,139.2249,7080.7603,2.9486,-0.1075,0.8702,0.1473,2400.0,2340.0,-0.3928,-1.6359,4.1386,-78.126 2019-06-03 15:40:21.340,139.4341,7080.7876,2.9486,-0.1075,1.1213,-0.0174,2400.0,2340.0,-0.3986,-1.6388,4.1492,-78.126 2019-06-03 15:40:21.360,139.4167,7080.8149,2.9237,-0.0927,1.0577,0.167,2400.0,2340.0,-0.4103,-1.6418,4.1412,-78.126 2019-06-03 15:40:21.380,139.3732,7080.8696,2.9237,-0.0927,1.1971,-0.0168,2400.0,2340.0,-0.4015,-1.6418,4.1412,-78.126 2019-06-03 15:40:21.400,139.3645,7080.9243,2.8906,-0.0695,1.1494,-0.0097,2400.0,2400.0,-0.3869,-1.6359,4.1518,-78.147 2019-06-03 15:40:21.420,139.3732,7080.9243,2.882,-0.0636,0.9208,0.1562,2400.0,2400.0,-0.384,-1.6388,4.1373,-78.1487 2019-06-03 15:40:21.440,139.4254,7080.9243,2.882,-0.0636,0.9585,-0.0177,2400.0,2400.0,-0.3781,-1.6388,4.1518,-78.1487 2019-06-03 15:40:21.460,139.4254,7080.8696,2.882,-0.0636,1.1209,0.152,2400.0,2400.0,-0.4044,-1.6359,4.1373,-78.1487 2019-06-03 15:40:21.480,139.3732,7080.8696,2.858,-0.0528,1.051,-0.0218,2400.0,2400.0,-0.4132,-1.6359,4.1465,-78.154 2019-06-03 15:40:21.500,139.3819,7080.624,2.832,-0.0463,0.9371,-0.0244,2400.0,2400.0,-0.4161,-1.6388,4.1505,-78.161 2019-06-03 15:40:21.520,139.3645,7079.7231,2.832,-0.0463,1.149,0.1785,2400.0,2400.0,-0.4132,-1.6359,4.1346,-78.161 2019-06-03 15:40:21.540,139.4254,7078.4946,2.832,-0.0463,0.9249,0.0037,2400.0,2400.0,-0.4132,-1.6388,4.1386,-78.161 2019-06-03 15:40:21.560,139.4167,7077.6758,2.8121,-0.0367,1.1468,0.1263,2400.0,2400.0,-0.3928,-1.6359,4.1412,-78.168 2019-06-03 15:40:21.580,139.3732,7076.3931,2.8121,-0.0367,0.8561,0.0275,2400.0,2400.0,-0.3869,-1.6388,4.1412,-78.168 2019-06-03 15:40:21.600,139.3645,7075.5742,2.7823,-0.0303,0.858,0.0594,2400.0,2400.0,-0.3694,-1.6359,4.1505,-78.1924 2019-06-03 15:40:21.620,139.3732,7074.7007,2.7756,-0.025,1.0946,0.1189,2400.0,2400.0,-0.3811,-1.6388,4.132,-78.1977 2019-06-03 15:40:21.640,139.4254,7073.4453,2.7756,-0.025,0.8687,0.0454,2400.0,2400.0,-0.384,-1.6388,4.1439,-78.1977 2019-06-03 15:40:21.660,139.4341,7072.5718,2.7756,-0.025,1.1938,0.0571,2400.0,2400.0,-0.3928,-1.6388,4.1439,-78.1977 2019-06-03 15:40:21.680,139.3732,7072.4082,2.7561,-0.0253,0.8827,0.0954,2400.0,2400.0,-0.3986,-1.6418,4.1439,-78.2082 2019-06-03 15:40:21.700,139.3819,7072.2715,2.7437,-0.0193,0.7814,0.0995,2400.0,2400.0,-0.3957,-1.6388,4.1492,-78.2204 2019-06-03 15:40:21.720,139.3645,7072.2441,2.7437,-0.0193,1.0976,0.0668,2400.0,2400.0,-0.4044,-1.6388,4.124,-78.2204 2019-06-03 15:40:21.740,139.7294,7072.2441,2.7437,-0.0193,0.9859,0.0897,2400.0,2400.0,-0.3986,-1.6388,4.1505,-78.2204 2019-06-03 15:40:21.760,139.6774,7072.2988,2.7301,-0.0176,1.0662,0.0028,2400.0,2400.0,-0.4132,-1.6388,4.1373,-78.2309 2019-06-03 15:40:21.780,139.6514,7072.2988,2.7301,-0.0176,0.9415,0.1241,2400.0,2400.0,-0.4132,-1.6359,4.1425,-78.2309 2019-06-03 15:40:21.800,139.6427,7072.2988,2.7076,-0.0181,0.9319,0.1218,2400.0,2400.0,-0.4161,-1.6359,4.1478,-78.2659 2019-06-03 15:40:21.820,139.6427,7072.2988,2.6992,-0.022,1.0162,0.0314,2400.0,2400.0,-0.4161,-1.6388,4.1293,-78.2729 2019-06-03 15:40:21.840,139.7034,7072.2715,2.6992,-0.022,0.9338,0.1299,2400.0,2400.0,-0.4132,-1.6388,4.1425,-78.2729 2019-06-03 15:40:21.860,139.7034,7072.2441,2.6992,-0.022,1.0133,-0.0076,2400.0,2400.0,-0.4103,-1.6388,4.1386,-78.2729 2019-06-03 15:40:21.880,139.634,7072.2715,2.6901,-0.033,0.9693,0.1479,2400.0,2400.0,-0.4074,-1.6329,4.1425,-78.2834 2019-06-03 15:40:21.900,139.6514,7072.2168,2.6825,-0.0422,1.0092,0.1254,2400.0,2400.0,-0.4044,-1.6418,4.1531,-78.2956 2019-06-03 15:40:21.920,139.6427,7072.1626,2.6825,-0.0422,0.8428,0.015,2400.0,2400.0,-0.4044,-1.6359,4.1359,-78.2956 2019-06-03 15:40:21.940,139.6947,7072.2441,2.6825,-0.0422,0.9952,0.1124,2400.0,2400.0,-0.4044,-1.6359,4.1386,-78.2956 2019-06-03 15:40:21.960,139.6861,7072.2988,2.6739,-0.0548,0.9585,0.043,2400.0,2400.0,-0.3986,-1.6388,4.1399,-78.3061 2019-06-03 15:40:21.980,139.6427,7072.2988,2.6635,-0.0741,1.0791,0.1271,2400.0,2400.0,-0.3928,-1.6329,4.1412,-78.3236 2019-06-03 15:40:22.000,139.6427,7072.3262,2.6621,-0.0808,1.2023,0.1021,2400.0,2400.0,-0.4015,-1.6359,4.1439,-78.3288 2019-06-03 15:40:22.020,139.6427,7072.3535,2.657,-0.0894,0.8616,0.0625,2400.0,2400.0,-0.4074,-1.6388,4.1386,-78.3341 2019-06-03 15:40:22.040,139.6947,7072.4351,2.657,-0.0894,1.0577,0.0848,2400.0,2400.0,-0.4161,-1.6388,4.1478,-78.3341 2019-06-03 15:40:22.060,139.7121,7072.4351,2.657,-0.0894,0.7995,0.077,2400.0,2400.0,-0.4132,-1.6329,4.1465,-78.3341 2019-06-03 15:40:22.080,139.6427,7072.5171,2.6551,-0.1032,1.2067,0.0954,2400.0,2400.0,-0.4132,-1.6418,4.1478,-78.3428 2019-06-03 15:40:22.100,139.6514,7072.4351,2.6515,-0.1193,1.2152,0.0539,2400.0,2400.0,-0.3781,-1.6388,4.1492,-78.3498 2019-06-03 15:40:22.120,139.6427,7072.3809,2.6515,-0.1193,0.9704,0.087,2400.0,2400.0,-0.3635,-1.6388,4.1306,-78.3498 2019-06-03 15:40:22.140,139.5472,7072.3535,2.6515,-0.1193,1.1897,0.0518,2400.0,2400.0,-0.384,-1.6359,4.1386,-78.3498 2019-06-03 15:40:22.160,139.5646,7072.3809,2.6493,-0.1353,0.8531,0.1201,2400.0,2400.0,-0.3898,-1.6359,4.1545,-78.3533 2019-06-03 15:40:22.180,139.5037,7072.4082,2.6493,-0.1353,1.2156,0.0663,2400.0,2400.0,-0.4103,-1.6359,4.1439,-78.3533 2019-06-03 15:40:22.200,139.5037,7072.4082,2.6487,-0.1566,1.1557,0.0478,2400.0,2400.0,-0.3869,-1.6388,4.1439,-78.3673 2019-06-03 15:40:22.220,139.5124,7072.3262,2.6499,-0.164,0.9641,0.1,2400.0,2400.0,-0.3811,-1.6359,4.1293,-78.3673 2019-06-03 15:40:22.240,139.5559,7072.3809,2.6499,-0.164,1.1693,0.0473,2400.0,2400.0,-0.3869,-1.6359,4.1386,-78.3673 2019-06-03 15:40:22.260,139.5733,7072.2988,2.6499,-0.164,0.9463,0.1386,2400.0,2400.0,-0.3781,-1.6418,4.1505,-78.3673 2019-06-03 15:40:22.280,139.5037,7072.2988,2.6534,-0.1721,1.2,0.0339,2400.0,2400.0,-0.384,-1.6359,4.1452,-78.3638 2019-06-03 15:40:22.300,139.5124,7072.2988,2.6511,-0.1786,1.0869,0.0012,2400.0,2400.0,-0.3898,-1.6418,4.1505,-78.3551 2019-06-03 15:40:22.320,139.495,7072.2988,2.6511,-0.1786,0.9977,0.1487,2400.0,2400.0,-0.4044,-1.6388,4.1346,-78.3551 2019-06-03 15:40:22.340,139.7121,7072.2715,2.6511,-0.1786,1.1819,-0.0174,2400.0,2400.0,-0.4103,-1.6388,4.1505,-78.3551 2019-06-03 15:40:22.360,139.6861,7072.2715,2.653,-0.1852,0.9689,0.1839,2400.0,2400.0,-0.3957,-1.6448,4.1518,-78.3446 2019-06-03 15:40:22.380,139.6514,7072.2988,2.653,-0.1852,1.0333,0.0067,2400.0,2400.0,-0.3957,-1.6418,4.1439,-78.3446 2019-06-03 15:40:22.400,139.634,7072.2715,2.6576,-0.1903,0.9963,-0.0277,2340.0,2400.0,-0.3986,-1.6388,4.1465,-78.3393 2019-06-03 15:40:22.420,139.6514,7072.2715,2.6645,-0.1901,1.0499,0.1534,2340.0,2400.0,-0.3957,-1.6388,4.1412,-78.3323 2019-06-03 15:40:22.440,139.6947,7072.3262,2.6645,-0.1901,1.0688,-0.0036,2340.0,2400.0,-0.3986,-1.6418,4.1518,-78.3323 2019-06-03 15:40:22.460,139.7034,7072.3262,2.6645,-0.1901,1.1013,0.1833,2340.0,2400.0,-0.3957,-1.6359,4.1505,-78.3323 2019-06-03 15:40:22.480,139.6514,7072.3262,2.6664,-0.1901,0.8631,0.0041,2340.0,2400.0,-0.4044,-1.6418,4.1412,-78.3183 2019-06-03 15:40:22.500,139.6427,7072.2988,2.6616,-0.1924,0.9205,-0.0252,2340.0,2400.0,-0.4132,-1.6418,4.1518,-78.3044 2019-06-03 15:40:22.520,139.6427,7072.3262,2.6616,-0.1924,1.1497,0.1145,2340.0,2400.0,-0.4044,-1.6359,4.1465,-78.3044 2019-06-03 15:40:22.540,139.7034,7072.3535,2.6616,-0.1924,0.9378,0.0339,2340.0,2400.0,-0.3986,-1.6388,4.1439,-78.3044 2019-06-03 15:40:22.560,139.6947,7072.4082,2.663,-0.1914,1.2159,0.1188,2340.0,2400.0,-0.3781,-1.6448,4.1505,-78.2886 2019-06-03 15:40:22.580,139.6427,7072.3809,2.663,-0.1914,0.7892,0.09,2340.0,2400.0,-0.3811,-1.6388,4.1333,-78.2886 2019-06-03 15:40:22.600,139.6427,7072.4082,2.6609,-0.1881,0.8561,0.0602,2340.0,2400.0,-0.3986,-1.6388,4.1545,-78.2851 2019-06-03 15:40:22.620,139.66,7072.3809,2.663,-0.1836,1.1449,0.0476,2340.0,2400.0,-0.4044,-1.6388,4.1492,-78.2781 2019-06-03 15:40:22.640,139.7034,7072.3809,2.663,-0.1836,0.8886,0.0573,2340.0,2400.0,-0.4132,-1.6359,4.1452,-78.2781 2019-06-03 15:40:22.660,139.7034,7072.4082,2.663,-0.1836,1.2426,0.0826,2340.0,2400.0,-0.4132,-1.6359,4.1478,-78.2781 2019-06-03 15:40:22.680,139.634,7072.3809,2.6607,-0.1823,0.8443,0.119,2340.0,2400.0,-0.4132,-1.6418,4.1346,-78.2641 2019-06-03 15:40:22.700,139.6514,7072.3262,2.6612,-0.1748,0.9778,0.1093,2340.0,2400.0,-0.4191,-1.6329,4.1492,-78.2484 2019-06-03 15:40:22.720,139.6427,7072.3535,2.6612,-0.1748,1.1838,0.0094,2340.0,2400.0,-0.422,-1.6388,4.1492,-78.2484 2019-06-03 15:40:22.740,139.7034,7072.4082,2.6612,-0.1748,0.923,0.1124,2340.0,2400.0,-0.4191,-1.6418,4.1425,-78.2484 2019-06-03 15:40:22.760,139.6947,7072.4351,2.6642,-0.1652,1.2119,0.0091,2340.0,2400.0,-0.4044,-1.6418,4.1492,-78.2344 2019-06-03 15:40:22.780,139.6427,7072.4351,2.6642,-0.1652,0.8561,0.152,2340.0,2400.0,-0.3869,-1.6359,4.1412,-78.2344 2019-06-03 15:40:22.800,139.6514,7072.4624,2.6661,-0.1581,0.933,0.1356,2340.0,2400.0,-0.3928,-1.6418,4.1478,-78.2187 2019-06-03 15:40:22.820,139.6514,7072.3809,2.664,-0.1585,1.0558,-0.0145,2340.0,2400.0,-0.3928,-1.6418,4.1478,-78.2134 2019-06-03 15:40:22.840,139.6861,7072.3809,2.664,-0.1585,1.0333,0.1399,2340.0,2400.0,-0.3957,-1.6388,4.1386,-78.2134 2019-06-03 15:40:22.860,139.7034,7072.3809,2.664,-0.1585,1.0806,0.0074,2340.0,2400.0,-0.3986,-1.6388,4.1518,-78.2134 2019-06-03 15:40:22.880,139.6427,7072.4082,2.6659,-0.15,0.9497,0.1625,2340.0,2400.0,-0.4103,-1.6388,4.1412,-78.2012 2019-06-03 15:40:22.900,139.6514,7072.1079,2.6706,-0.1528,1.0717,0.1439,2340.0,2400.0,-0.4103,-1.6388,4.1531,-78.1907 2019-06-03 15:40:22.920,139.6427,7071.1802,2.6706,-0.1528,0.8594,-0.0027,2340.0,2400.0,-0.4044,-1.6418,4.1505,-78.1907 2019-06-03 15:40:22.940,140.1524,7069.8701,2.6706,-0.1528,1.0044,0.127,2340.0,2400.0,-0.4015,-1.6448,4.1425,-78.1907 2019-06-03 15:40:22.960,140.0663,7068.9971,2.6747,-0.1547,0.9045,0.0223,2340.0,2400.0,-0.4044,-1.6388,4.1492,-78.1837 2019-06-03 15:40:22.980,140.0405,7067.7144,2.6747,-0.1547,1.0625,0.1401,2340.0,2400.0,-0.4044,-1.6418,4.1492,-78.1837 2019-06-03 15:40:23.000,140.0491,7066.8682,2.6815,-0.1582,1.1061,0.1245,2340.0,2400.0,-0.4044,-1.6388,4.1518,-78.1645 2019-06-03 15:40:23.020,140.0491,7065.9678,2.6797,-0.1614,0.7466,-0.004,2340.0,2400.0,-0.3986,-1.6448,4.1465,-78.1627 2019-06-03 15:40:23.040,140.1008,7064.6035,2.6797,-0.1614,1.1497,0.1324,2340.0,2400.0,-0.3957,-1.6448,4.1346,-78.1627 2019-06-03 15:40:23.060,140.1008,7063.7573,2.6797,-0.1614,0.7962,0.0253,2340.0,2400.0,-0.3957,-1.6478,4.1478,-78.1627 2019-06-03 15:40:23.080,140.0405,7063.5664,2.6832,-0.1547,1.1416,0.1678,2340.0,2400.0,-0.3928,-1.6448,4.1452,-78.1592 2019-06-03 15:40:23.100,140.0577,7063.457,2.6835,-0.1489,1.1686,0.1391,2340.0,2400.0,-0.3869,-1.6359,4.1492,-78.154 2019-06-03 15:40:23.120,140.0405,7063.4844,2.6835,-0.1489,0.8088,-0.007,2340.0,2400.0,-0.3928,-1.6448,4.1505,-78.154 2019-06-03 15:40:23.140,140.2556,7063.5664,2.6835,-0.1489,1.2485,0.1094,2340.0,2400.0,-0.4191,-1.6448,4.1412,-78.154 2019-06-03 15:40:23.160,140.2212,7063.6211,2.6815,-0.1408,0.7304,0.0419,2340.0,2400.0,-0.4161,-1.6508,4.1492,-78.1522 2019-06-03 15:40:23.180,140.1868,7063.6211,2.6815,-0.1408,1.294,0.1305,2340.0,2400.0,-0.422,-1.6448,4.1492,-78.1522 2019-06-03 15:40:23.200,140.1868,7063.6484,2.6822,-0.1258,1.1901,0.072,2340.0,2400.0,-0.4191,-1.6448,4.1492,-78.168 2019-06-03 15:40:23.220,140.1868,7063.6484,2.6821,-0.1243,0.8054,0.065,2340.0,2400.0,-0.4161,-1.6478,4.1492,-78.168 2019-06-03 15:40:23.240,140.2384,7063.6211,2.6821,-0.1243,1.1753,0.0754,2340.0,2400.0,-0.4044,-1.6448,4.1412,-78.168 2019-06-03 15:40:23.260,140.247,7063.6211,2.6821,-0.1243,0.7825,0.0943,2340.0,2400.0,-0.3781,-1.6478,4.1531,-78.168 2019-06-03 15:40:23.280,140.1954,7063.6211,2.6897,-0.1174,1.1483,0.0641,2340.0,2400.0,-0.3811,-1.6448,4.1386,-78.168 2019-06-03 15:40:23.300,140.1954,7063.5391,2.6983,-0.1177,1.1575,0.0332,2340.0,2400.0,-0.3752,-1.6448,4.1531,-78.1697 2019-06-03 15:40:23.320,140.1782,7063.4844,2.6983,-0.1177,0.8613,0.0999,2340.0,2400.0,-0.3898,-1.6448,4.1518,-78.1697 2019-06-03 15:40:23.340,140.2384,7063.4844,2.6983,-0.1177,1.1394,0.0528,2340.0,2400.0,-0.4103,-1.6478,4.1478,-78.1697 2019-06-03 15:40:23.360,140.2384,7063.457,2.7075,-0.1193,0.7681,0.1104,2340.0,2400.0,-0.4191,-1.6418,4.1558,-78.1715 2019-06-03 15:40:23.380,140.1868,7063.4844,2.7075,-0.1193,1.1605,0.0576,2340.0,2400.0,-0.4308,-1.6448,4.1478,-78.1715 2019-06-03 15:40:23.400,140.1868,7063.5391,2.7307,-0.135,1.2318,0.035,2400.0,2340.0,-0.422,-1.6478,4.1492,-78.175 2019-06-03 15:40:23.420,140.1868,7063.5391,2.7406,-0.1432,0.8905,0.1479,2400.0,2340.0,-0.4161,-1.6388,4.1373,-78.175 2019-06-03 15:40:23.440,140.2384,7063.5938,2.7406,-0.1432,1.1416,0.0251,2400.0,2340.0,-0.4103,-1.6299,4.1465,-78.175 2019-06-03 15:40:23.460,140.2556,7063.5938,2.7406,-0.1432,0.8879,0.141,2400.0,2340.0,-0.4074,-1.6359,4.1558,-78.175 2019-06-03 15:40:23.480,140.1868,7063.6484,2.7589,-0.1606,1.0595,0.0149,2400.0,2340.0,-0.4103,-1.6329,4.1558,-78.1767 2019-06-03 15:40:23.500,140.1954,7063.5391,2.7719,-0.1837,1.1967,0.0038,2400.0,2340.0,-0.4132,-1.6359,4.1584,-78.1785 2019-06-03 15:40:23.520,140.1782,7063.6211,2.7719,-0.1837,0.9134,0.1699,2400.0,2340.0,-0.4103,-1.6508,4.1439,-78.1785 2019-06-03 15:40:23.540,139.937,7063.6484,2.7719,-0.1837,1.1401,0.0139,2400.0,2340.0,-0.4191,-1.6478,4.1452,-78.1785 2019-06-03 15:40:23.560,139.9801,7063.73,2.7847,-0.2126,0.9208,0.1612,2400.0,2340.0,-0.422,-1.6508,4.1518,-78.182 2019-06-03 15:40:23.580,139.911,7063.73,2.7847,-0.2126,1.0111,-0.014,2400.0,2340.0,-0.4161,-1.6508,4.1359,-78.182 2019-06-03 15:40:23.600,139.911,7063.7847,2.8086,-0.2498,1.132,-0.0271,2400.0,2340.0,-0.4015,-1.6478,4.1571,-78.1837 2019-06-03 15:40:23.620,139.9283,7063.7026,2.8197,-0.2596,1.0617,0.2005,2400.0,2340.0,-0.4074,-1.6478,4.1518,-78.1837 2019-06-03 15:40:23.640,139.9715,7063.6484,2.8197,-0.2596,1.1549,0.0064,2400.0,2340.0,-0.4015,-1.6448,4.1531,-78.1837 2019-06-03 15:40:23.660,139.9715,7063.6753,2.8197,-0.2596,1.0991,0.1551,2400.0,2340.0,-0.4015,-1.6598,4.1505,-78.1837 2019-06-03 15:40:23.680,139.9197,7063.6753,2.8307,-0.2792,0.9807,0.0191,2400.0,2340.0,-0.3986,-1.6568,4.1439,-78.182 2019-06-03 15:40:23.700,139.911,7063.6211,2.8407,-0.2919,1.0928,-0.0189,2400.0,2340.0,-0.4044,-1.6538,4.1492,-78.1767 2019-06-03 15:40:23.720,139.9024,7063.6484,2.8407,-0.2919,1.2182,0.2065,2400.0,2340.0,-0.4103,-1.6538,4.1518,-78.1767 2019-06-03 15:40:23.740,140.2727,7063.5938,2.8407,-0.2919,1.1109,0.0087,2400.0,2340.0,-0.4103,-1.6568,4.1359,-78.1767 2019-06-03 15:40:23.760,140.2212,7063.6211,2.8555,-0.2942,1.1583,0.1461,2400.0,2340.0,-0.4015,-1.6538,4.1584,-78.168 2019-06-03 15:40:23.780,140.1782,7063.5938,2.8555,-0.2942,0.9556,0.0472,2400.0,2340.0,-0.3957,-1.6538,4.1518,-78.168 2019-06-03 15:40:23.800,140.1868,7063.5938,2.8772,-0.2884,1.0384,0.002,2400.0,2340.0,-0.3957,-1.6568,4.1531,-78.1557 2019-06-03 15:40:23.820,140.1868,7063.5664,2.8873,-0.2819,1.2392,0.1853,2400.0,2340.0,-0.4015,-1.6508,4.1478,-78.147 2019-06-03 15:40:23.840,140.2384,7063.6211,2.8873,-0.2819,0.8813,0.0423,2400.0,2340.0,-0.3986,-1.6538,4.1492,-78.147 2019-06-03 15:40:23.860,140.2384,7063.6211,2.8873,-0.2819,1.2444,0.1011,2400.0,2340.0,-0.3986,-1.6538,4.1531,-78.147 2019-06-03 15:40:23.880,140.1782,7063.5664,2.8877,-0.2738,0.9711,0.0534,2400.0,2340.0,-0.4044,-1.6508,4.1425,-78.1312 2019-06-03 15:40:23.900,140.1954,7063.5117,2.8895,-0.2645,0.9896,0.0314,2400.0,2340.0,-0.4044,-1.6538,4.1425,-78.1173 2019-06-03 15:40:23.920,140.1954,7063.457,2.8895,-0.2645,1.2529,0.1568,2400.0,2340.0,-0.3957,-1.6568,4.1531,-78.1173 2019-06-03 15:40:23.940,140.2384,7063.5664,2.8895,-0.2645,0.8901,0.0447,2400.0,2340.0,-0.4044,-1.6508,4.1518,-78.1173 2019-06-03 15:40:23.960,140.2298,7063.6211,2.8948,-0.2503,1.1608,0.0915,2400.0,2340.0,-0.4044,-1.6568,4.1505,-78.1015 2019-06-03 15:40:23.980,140.1782,7063.6753,2.8948,-0.2503,0.9693,0.0701,2400.0,2340.0,-0.3957,-1.6538,4.1452,-78.1015 2019-06-03 15:40:24.000,140.1782,7063.73,2.8926,-0.2363,0.9582,0.0805,2400.0,2340.0,-0.4044,-1.6538,4.1412,-78.0875 2019-06-03 15:40:24.020,140.1954,7063.6753,2.893,-0.2285,1.1808,0.089,2400.0,2340.0,-0.3928,-1.6568,4.1611,-78.0805 2019-06-03 15:40:24.040,140.247,7063.6753,2.893,-0.2285,0.7747,0.1028,2400.0,2340.0,-0.4074,-1.6538,4.1386,-78.0805 2019-06-03 15:40:24.060,140.2384,7063.6211,2.893,-0.2285,1.1649,0.0209,2400.0,2340.0,-0.4103,-1.6568,4.1571,-78.0805 2019-06-03 15:40:24.080,140.1954,7063.6211,2.8886,-0.2198,0.9778,0.1134,2400.0,2340.0,-0.4074,-1.6538,4.1478,-78.07 2019-06-03 15:40:24.100,140.1868,7063.5117,2.8899,-0.2077,0.9523,0.114,2400.0,2340.0,-0.4015,-1.6568,4.1465,-78.0596 2019-06-03 15:40:24.120,140.1696,7063.5117,2.8899,-0.2077,1.2644,0.0386,2400.0,2340.0,-0.3928,-1.6568,4.1598,-78.0596 2019-06-03 15:40:24.140,140.3928,7063.5664,2.8899,-0.2077,0.9119,0.1194,2400.0,2340.0,-0.3928,-1.6598,4.1412,-78.0596 2019-06-03 15:40:24.160,140.3585,7063.5391,2.8886,-0.1953,0.9933,-0.0091,2400.0,2340.0,-0.3898,-1.6568,4.1465,-78.0508 2019-06-03 15:40:24.180,140.3156,7063.457,2.8886,-0.1953,1.0458,0.1224,2400.0,2340.0,-0.3957,-1.6538,4.1386,-78.0508 2019-06-03 15:40:24.200,140.3242,7063.4302,2.8835,-0.1891,0.9456,0.1426,2400.0,2340.0,-0.3957,-1.6568,4.1545,-78.0578 2019-06-03 15:40:24.220,140.3242,7063.457,2.8822,-0.1862,1.1061,0.0083,2400.0,2340.0,-0.4044,-1.6568,4.173,-78.0578 2019-06-03 15:40:24.240,140.3671,7063.4844,2.8822,-0.1862,1.0577,0.1546,2400.0,2340.0,-0.4103,-1.6538,4.1399,-78.0578 2019-06-03 15:40:24.260,140.3842,7063.5117,2.8822,-0.1862,1.0447,-0.0134,2400.0,2340.0,-0.4103,-1.6568,4.1518,-78.0578 2019-06-03 15:40:24.280,140.3156,7063.5664,2.882,-0.1782,1.1076,0.1134,2400.0,2340.0,-0.4074,-1.6568,4.1465,-78.0561 2019-06-03 15:40:24.300,140.3328,7063.4028,2.8852,-0.1626,1.0558,0.1484,2400.0,2340.0,-0.4161,-1.6508,4.1452,-78.0561 2019-06-03 15:40:24.320,140.3156,7063.3755,2.8852,-0.1626,0.9219,0.0017,2400.0,2340.0,-0.4074,-1.6598,4.1624,-78.0561 2019-06-03 15:40:24.340,140.5298,7063.3481,2.8852,-0.1626,1.0651,0.1527,2400.0,2340.0,-0.4074,-1.6568,4.1452,-78.0561 2019-06-03 15:40:24.360,140.5041,7063.4028,2.8869,-0.1534,0.8165,0.0127,2400.0,2340.0,-0.4132,-1.6538,4.1518,-78.0561 2019-06-03 15:40:24.380,140.4528,7063.457,2.8869,-0.1534,1.0695,0.1122,2400.0,2340.0,-0.4161,-1.6568,4.1584,-78.0561 2019-06-03 15:40:24.400,140.4528,7063.5117,2.8891,-0.1391,1.0136,0.1343,2400.0,2400.0,-0.4191,-1.6538,4.1478,-78.077 2019-06-03 15:40:24.420,140.4699,7063.5391,2.8889,-0.1358,0.8746,0.0261,2400.0,2400.0,-0.4074,-1.6538,4.1571,-78.0788 2019-06-03 15:40:24.440,140.5127,7063.5117,2.8889,-0.1358,1.1468,0.1488,2400.0,2400.0,-0.4015,-1.6598,4.1386,-78.0788 2019-06-03 15:40:24.460,140.5212,7063.457,2.8889,-0.1358,0.835,0.0412,2400.0,2400.0,-0.3869,-1.6598,4.1492,-78.0788 2019-06-03 15:40:24.480,140.4613,7063.5391,2.8899,-0.1253,1.1172,0.1062,2400.0,2400.0,-0.3811,-1.6598,4.1492,-78.0823 2019-06-03 15:40:24.500,140.4613,7063.4844,2.893,-0.1117,1.1989,0.1204,2400.0,2400.0,-0.4161,-1.6568,4.1359,-78.0875 2019-06-03 15:40:24.520,140.4528,7063.5391,2.893,-0.1117,0.8628,0.0117,2400.0,2400.0,-0.4103,-1.6598,4.1624,-78.0875 2019-06-03 15:40:24.540,140.8113,7063.5938,2.893,-0.1117,1.193,0.1208,2400.0,2400.0,-0.4132,-1.6568,4.1452,-78.0875 2019-06-03 15:40:24.560,140.7687,7063.5664,2.8996,-0.0963,0.8313,0.0502,2400.0,2400.0,-0.4044,-1.6568,4.1624,-78.0945 2019-06-03 15:40:24.580,140.7346,7063.4844,2.8996,-0.0963,1.1398,0.0559,2400.0,2400.0,-0.3986,-1.6598,4.1465,-78.0945 2019-06-03 15:40:24.600,140.7346,7063.457,2.9147,-0.0674,1.2293,0.0841,2400.0,2400.0,-0.3928,-1.6568,4.1478,-78.105 2019-06-03 15:40:24.620,140.7261,7063.4297,2.9206,-0.057,0.8587,0.1101,2400.0,2400.0,-0.3928,-1.6568,4.1584,-78.1085 2019-06-03 15:40:24.640,140.7772,7063.457,2.9206,-0.057,1.0521,0.0505,2400.0,2400.0,-0.4074,-1.6568,4.1425,-78.1085 2019-06-03 15:40:24.660,140.7857,7063.4844,2.9206,-0.057,0.956,0.0893,2400.0,2400.0,-0.4191,-1.6568,4.1571,-78.1085 2019-06-03 15:40:24.680,140.7261,7063.5117,2.9309,-0.0324,1.1712,0.0159,2400.0,2400.0,-0.4191,-1.6568,4.1558,-78.1138 2019-06-03 15:40:24.700,140.7346,7063.457,2.9374,-0.0043,1.1734,0.0701,2400.0,2400.0,-0.4161,-1.6568,4.1478,-78.1208 2019-06-03 15:40:24.720,140.7346,7063.457,2.9374,-0.0043,0.9959,0.1044,2400.0,2400.0,-0.4103,-1.6568,4.1518,-78.1208 2019-06-03 15:40:24.740,140.6323,7063.4844,2.9374,-0.0043,1.0699,0.0736,2400.0,2400.0,-0.4044,-1.6598,4.1439,-78.1208 2019-06-03 15:40:24.760,140.6494,7063.5664,2.943,0.0239,1.0432,0.1135,2400.0,2400.0,-0.4132,-1.6568,4.1439,-78.1277 2019-06-03 15:40:24.780,140.5981,7063.5938,2.943,0.0239,1.1486,0.0147,2400.0,2400.0,-0.4044,-1.6568,4.1558,-78.1277 2019-06-03 15:40:24.800,140.5811,7063.5938,2.9563,0.077,1.1616,0.0332,2400.0,2400.0,-0.4161,-1.6568,4.1465,-78.1365 2019-06-03 15:40:24.820,140.5981,7063.5938,2.9625,0.0954,1.088,0.1394,2400.0,2400.0,-0.4161,-1.6598,4.1584,-78.14 2019-06-03 15:40:24.840,140.6494,7063.5664,2.9625,0.0954,0.9789,0.0241,2400.0,2400.0,-0.422,-1.6628,4.1465,-78.14 2019-06-03 15:40:24.860,140.6494,7063.5117,2.9625,0.0954,1.0821,0.1787,2400.0,2400.0,-0.4249,-1.6568,4.1478,-78.14 2019-06-03 15:40:24.880,140.5896,7063.4844,2.971,0.128,1.0547,-0.0344,2400.0,2400.0,-0.4132,-1.6598,4.1505,-78.1452 2019-06-03 15:40:24.900,140.5981,7063.457,2.9765,0.1585,1.1087,-0.0196,2400.0,2400.0,-0.4074,-1.6568,4.1359,-78.1505 2019-06-03 15:40:24.920,140.5896,7063.457,2.9765,0.1585,1.1893,0.168,2400.0,2400.0,-0.3898,-1.6598,4.1611,-78.1505 2019-06-03 15:40:24.940,140.6494,7063.5117,2.9765,0.1585,0.9793,0.0024,2400.0,2400.0,-0.4074,-1.6538,4.1518,-78.1505 2019-06-03 15:40:24.960,140.6323,7063.5938,2.986,0.194,1.1227,0.1511,2400.0,2400.0,-0.4132,-1.6598,4.1531,-78.154 2019-06-03 15:40:24.980,140.5896,7063.6484,2.986,0.194,0.9452,0.0079,2400.0,2400.0,-0.4103,-1.6598,4.1439,-78.154 2019-06-03 15:40:25.000,140.5981,7063.6211,2.9964,0.2435,0.8705,0.0459,2400.0,2400.0,-0.4044,-1.6568,4.1373,-78.1575 2019-06-03 15:40:25.020,140.5981,7063.6211,3.0031,0.2656,1.22,0.1136,2400.0,2400.0,-0.384,-1.6628,4.1584,-78.1575 2019-06-03 15:40:25.040,140.6408,7063.7026,3.0031,0.2656,0.8894,0.0623,2400.0,2400.0,-0.3928,-1.6568,4.1531,-78.1575 2019-06-03 15:40:25.060,140.6579,7063.6753,3.0031,0.2656,1.2311,0.0967,2400.0,2400.0,-0.4015,-1.6568,4.1425,-78.1575 2019-06-03 15:40:25.080,140.5896,7063.7573,3.0068,0.2939,0.7877,0.0677,2400.0,2400.0,-0.4191,-1.6598,4.1478,-78.161 2019-06-03 15:40:25.100,140.5981,7063.5117,3.0115,0.3287,0.8054,0.0723,2400.0,2400.0,-0.4249,-1.6568,4.1492,-78.1645 2019-06-03 15:40:25.120,140.5811,7062.6387,3.0115,0.3287,1.2052,0.0488,2400.0,2400.0,-0.4161,-1.6598,4.169,-78.1645 2019-06-03 15:40:25.140,140.8028,7061.3838,3.0115,0.3287,0.8524,0.1059,2400.0,2400.0,-0.4103,-1.6568,4.1439,-78.1645 2019-06-03 15:40:25.160,140.7687,7060.5654,3.0197,0.3612,1.1446,0.0294,2400.0,2400.0,-0.4074,-1.6538,4.1412,-78.168 2019-06-03 15:40:25.180,140.7261,7059.3921,3.0197,0.3612,0.8798,0.1115,2400.0,2400.0,-0.4044,-1.6568,4.1439,-78.168 2019-06-03 15:40:25.200,140.7261,7058.5737,3.0237,0.4149,0.8439,0.0954,2400.0,2400.0,-0.3986,-1.6568,4.1452,-78.1767 2019-06-03 15:40:25.220,140.7346,7057.728,3.0241,0.4336,1.1486,0.0384,2400.0,2400.0,-0.4015,-1.6568,4.1584,-78.1785 2019-06-03 15:40:25.240,140.7857,7056.582,3.0241,0.4336,0.9356,0.1213,2400.0,2400.0,-0.4044,-1.6538,4.1492,-78.1785 2019-06-03 15:40:25.260,140.7857,7055.7632,3.0241,0.4336,1.1838,0.0074,2400.0,2400.0,-0.422,-1.6568,4.1386,-78.1785 2019-06-03 15:40:25.280,140.7261,7055.5181,3.0271,0.4635,0.9615,0.1439,2400.0,2400.0,-0.4249,-1.6508,4.1425,-78.1785 2019-06-03 15:40:25.300,140.7431,7055.4087,3.0319,0.5027,0.9434,0.1564,2400.0,2400.0,-0.4249,-1.6598,4.1439,-78.1785 2019-06-03 15:40:25.320,140.7261,7055.3813,3.0319,0.5027,1.1179,-0.0332,2400.0,2400.0,-0.4044,-1.6598,4.1584,-78.1785 2019-06-03 15:40:25.340,140.6323,7055.3813,3.0319,0.5027,1.0872,0.1485,2400.0,2400.0,-0.3869,-1.6538,4.1505,-78.1785 2019-06-03 15:40:25.360,140.6494,7055.4087,3.0375,0.5278,1.0795,-0.0405,2400.0,2400.0,-0.3898,-1.6628,4.1452,-78.175 2019-06-03 15:40:25.380,140.5896,7055.436,3.0375,0.5278,1.027,0.166,2400.0,2400.0,-0.3986,-1.6568,4.1465,-78.175 2019-06-03 15:40:25.400,140.5981,7055.3813,3.0432,0.5666,1.0429,0.1426,2340.0,2400.0,-0.4132,-1.6538,4.1412,-78.1924 2019-06-03 15:40:25.420,140.5981,7055.2998,3.0419,0.5805,1.0051,-0.0192,2340.0,2400.0,-0.4132,-1.6568,4.1677,-78.1889 2019-06-03 15:40:25.440,140.6494,7055.2998,3.0419,0.5805,1.112,0.1174,2340.0,2400.0,-0.4161,-1.6568,4.1518,-78.1889 2019-06-03 15:40:25.460,140.6579,7055.2725,3.0419,0.5805,1.0074,-0.0128,2340.0,2400.0,-0.4074,-1.6568,4.1505,-78.1889 2019-06-03 15:40:25.480,140.5896,7055.4087,3.0502,0.6046,1.1642,0.1682,2340.0,2400.0,-0.4132,-1.6598,4.1425,-78.182 2019-06-03 15:40:25.500,140.5981,7055.354,3.0579,0.6337,1.1742,0.1808,2340.0,2400.0,-0.3986,-1.6598,4.1465,-78.175 2019-06-03 15:40:25.520,140.5811,7055.3813,3.0579,0.6337,0.8994,-0.0094,2340.0,2400.0,-0.4132,-1.6628,4.1558,-78.175 2019-06-03 15:40:25.540,141.1,7055.4087,3.0579,0.6337,1.2274,0.1299,2340.0,2400.0,-0.4103,-1.6628,4.1531,-78.175 2019-06-03 15:40:25.560,141.0237,7055.3813,3.0621,0.6621,1.0743,0.0031,2340.0,2400.0,-0.4044,-1.6568,4.1492,-78.168 2019-06-03 15:40:25.580,140.9982,7055.436,3.0621,0.6621,1.2307,0.1557,2340.0,2400.0,-0.4074,-1.6568,4.1505,-78.168 2019-06-03 15:40:25.600,140.9982,7055.4907,3.081,0.6967,1.196,0.1552,2340.0,2400.0,-0.4015,-1.6598,4.1531,-78.1575 2019-06-03 15:40:25.620,141.0152,7055.436,3.0808,0.6972,0.902,0.0085,2340.0,2400.0,-0.4132,-1.6598,4.1584,-78.1557 2019-06-03 15:40:25.640,141.0491,7055.4634,3.0808,0.6972,1.1046,0.1293,2340.0,2400.0,-0.4191,-1.6598,4.1505,-78.1557 2019-06-03 15:40:25.660,141.0491,7055.436,3.0808,0.6972,0.9744,0.0218,2340.0,2400.0,-0.4395,-1.6598,4.1412,-78.1557 2019-06-03 15:40:25.680,140.9898,7055.4634,3.0903,0.7115,1.1342,0.1527,2340.0,2400.0,-0.4424,-1.6598,4.1412,-78.1505 2019-06-03 15:40:25.700,141.0067,7055.354,3.0939,0.7185,1.132,0.1088,2340.0,2400.0,-0.4161,-1.6598,4.1558,-78.1435 2019-06-03 15:40:25.720,140.9898,7055.354,3.0939,0.7185,0.9304,0.0241,2340.0,2400.0,-0.4132,-1.6628,4.1584,-78.1435 2019-06-03 15:40:25.740,140.8963,7055.3813,3.0939,0.7185,1.1002,0.0932,2340.0,2400.0,-0.4132,-1.6688,4.1425,-78.1435 2019-06-03 15:40:25.760,140.9218,7055.4087,3.0928,0.7248,0.9071,0.0497,2340.0,2400.0,-0.4161,-1.6628,4.1399,-78.1382 2019-06-03 15:40:25.780,140.8623,7055.4907,3.0928,0.7248,1.2411,0.1177,2340.0,2400.0,-0.4191,-1.6658,4.1478,-78.1382 2019-06-03 15:40:25.800,140.8538,7055.5181,3.0982,0.7318,1.0939,0.1262,2340.0,2400.0,-0.422,-1.6568,4.1399,-78.1347 2019-06-03 15:40:25.820,140.8623,7055.4634,3.0971,0.7301,0.8565,0.0262,2340.0,2400.0,-0.4074,-1.6448,4.1611,-78.1312 2019-06-03 15:40:25.840,140.9133,7055.4087,3.0971,0.7301,1.1298,0.0755,2340.0,2400.0,-0.422,-1.6658,4.1505,-78.1312 2019-06-03 15:40:25.860,140.9303,7055.4087,3.0971,0.7301,0.865,0.0774,2340.0,2400.0,-0.4191,-1.6628,4.1465,-78.1312 2019-06-03 15:40:25.880,140.8623,7055.436,3.101,0.7379,1.2115,0.0563,2340.0,2400.0,-0.4161,-1.6688,4.1478,-78.1208 2019-06-03 15:40:25.900,140.8538,7055.3813,3.1019,0.7345,1.0514,0.0707,2340.0,2400.0,-0.4074,-1.6628,4.1399,-78.112 2019-06-03 15:40:25.920,140.8538,7055.4087,3.1019,0.7345,0.8746,0.0869,2340.0,2400.0,-0.4074,-1.6628,4.1651,-78.112 2019-06-03 15:40:25.940,140.7602,7055.436,3.1019,0.7345,1.1435,0.026,2340.0,2400.0,-0.4278,-1.6628,4.1346,-78.112 2019-06-03 15:40:25.960,140.7943,7055.436,3.1058,0.7358,0.8835,0.1059,2340.0,2400.0,-0.4249,-1.6568,4.1412,-78.1015 2019-06-03 15:40:25.980,140.7261,7055.3813,3.1058,0.7358,1.1853,0.0149,2340.0,2400.0,-0.4366,-1.6598,4.1571,-78.1015 2019-06-03 15:40:26.000,140.7346,7055.4087,3.1142,0.7359,1.1612,0.0487,2340.0,2400.0,-0.4337,-1.6598,4.1518,-78.084 2019-06-03 15:40:26.020,140.7346,7055.4087,3.1181,0.7362,0.8768,0.1138,2340.0,2400.0,-0.4366,-1.6598,4.1531,-78.077 2019-06-03 15:40:26.040,140.7857,7055.436,3.1181,0.7362,1.0876,0.0168,2340.0,2400.0,-0.4191,-1.6538,4.1518,-78.077 2019-06-03 15:40:26.060,140.7772,7055.4907,3.1181,0.7362,0.9778,0.1366,2340.0,2400.0,-0.4278,-1.6568,4.1373,-78.077 2019-06-03 15:40:26.080,140.7261,7055.4907,3.122,0.7375,1.2085,-0.0102,2340.0,2400.0,-0.422,-1.6628,4.1637,-78.063 2019-06-03 15:40:26.100,140.7346,7055.4087,3.1243,0.7348,1.1298,0.0111,2340.0,2400.0,-0.4278,-1.6598,4.1505,-78.0508 2019-06-03 15:40:26.120,140.7346,7055.3813,3.1243,0.7348,0.9918,0.1567,2340.0,2400.0,-0.4483,-1.6598,4.1558,-78.0508 2019-06-03 15:40:26.140,140.9303,7055.436,3.1243,0.7348,1.0159,-0.0157,2340.0,2400.0,-0.4483,-1.6628,4.1558,-78.0508 2019-06-03 15:40:26.160,140.9048,7055.4634,3.1308,0.7338,1.0181,0.1723,2340.0,2400.0,-0.4512,-1.6538,4.1425,-78.0368 2019-06-03 15:40:26.180,140.8538,7055.4907,3.1308,0.7338,1.0762,-0.0184,2340.0,2400.0,-0.4483,-1.6718,4.1637,-78.0368 2019-06-03 15:40:26.200,140.8623,7055.4907,3.1335,0.7315,1.0573,0.0209,2340.0,2400.0,-0.4512,-1.6688,4.1505,-78.0211 2019-06-03 15:40:26.220,140.8623,7055.4907,3.1389,0.7335,0.9892,0.14,2340.0,2400.0,-0.4512,-1.6688,4.1518,-78.0141 2019-06-03 15:40:26.240,140.9133,7055.5181,3.1389,0.7335,1.0377,0.0171,2340.0,2400.0,-0.4571,-1.6658,4.1478,-78.0141 2019-06-03 15:40:26.260,140.9303,7055.4907,3.1389,0.7335,1.0946,0.1407,2340.0,2400.0,-0.4395,-1.6658,4.1452,-78.0141 2019-06-03 15:40:26.280,140.8623,7055.4634,3.1375,0.7314,0.9071,0.0172,2340.0,2400.0,-0.422,-1.6658,4.1704,-78.0019 2019-06-03 15:40:26.300,140.8708,7055.3813,3.1384,0.7342,0.9548,0.0271,2340.0,2400.0,-0.4278,-1.6688,4.1452,-77.9896 2019-06-03 15:40:26.320,140.8538,7055.4087,3.1384,0.7342,1.132,0.1221,2340.0,2400.0,-0.4395,-1.6658,4.1571,-77.9896 2019-06-03 15:40:26.340,141.2016,7055.436,3.1384,0.7342,0.8894,0.0382,2340.0,2400.0,-0.4571,-1.6688,4.1425,-77.9896 2019-06-03 15:40:26.360,141.1593,7055.4634,3.1461,0.7411,1.1475,0.1317,2340.0,2400.0,-0.4308,-1.6628,4.1545,-77.9791 2019-06-03 15:40:26.380,141.1254,7055.3813,3.1461,0.7411,0.8665,0.0582,2340.0,2400.0,-0.4337,-1.6658,4.1571,-77.9791 2019-06-03 15:40:26.400,141.1254,7055.3271,3.1549,0.7422,0.9071,0.0681,2400.0,2400.0,-0.4015,-1.6658,4.1571,-77.9721 2019-06-03 15:40:26.420,141.1339,7055.3271,3.1592,0.7452,1.2067,0.0579,2400.0,2400.0,-0.4191,-1.6658,4.1373,-77.9669 2019-06-03 15:40:26.440,141.1762,7055.354,3.1592,0.7452,0.9216,0.0604,2400.0,2400.0,-0.4074,-1.6688,4.1677,-77.9669 2019-06-03 15:40:26.460,141.1846,7055.354,3.1592,0.7452,1.2167,0.0948,2400.0,2400.0,-0.422,-1.6628,4.1465,-77.9669 2019-06-03 15:40:26.480,141.1169,7055.3813,3.1634,0.7438,0.936,0.0358,2400.0,2400.0,-0.4103,-1.6688,4.1571,-77.9616 2019-06-03 15:40:26.500,141.1339,7055.2998,3.1732,0.7441,0.9182,0.0684,2400.0,2400.0,-0.4161,-1.6688,4.1412,-77.9546 2019-06-03 15:40:26.520,141.1169,7055.2725,3.1732,0.7441,1.1708,0.0463,2400.0,2400.0,-0.4015,-1.6658,4.1531,-77.9546 2019-06-03 15:40:26.540,141.1846,7055.2451,3.1732,0.7441,0.8646,0.0689,2400.0,2400.0,-0.4191,-1.6718,4.1598,-77.9546 2019-06-03 15:40:26.560,141.1762,7055.2998,3.1847,0.7476,1.2015,0.0839,2400.0,2400.0,-0.4395,-1.6658,4.1346,-77.9476 2019-06-03 15:40:26.580,141.1254,7055.354,3.1847,0.7476,0.9574,0.0596,2400.0,2400.0,-0.4249,-1.6658,4.1611,-77.9476 2019-06-03 15:40:26.600,141.1254,7055.3813,3.1998,0.7459,1.0281,0.1064,2400.0,2400.0,-0.4308,-1.6658,4.1399,-77.9442 2019-06-03 15:40:26.620,141.1339,7055.4087,3.2039,0.7463,1.2537,0.0247,2400.0,2400.0,-0.422,-1.6688,4.1624,-77.9407 2019-06-03 15:40:26.640,141.1677,7055.436,3.2039,0.7463,0.9478,0.1502,2400.0,2400.0,-0.422,-1.6658,4.1545,-77.9407 2019-06-03 15:40:26.660,141.1931,7055.4087,3.2039,0.7463,1.2078,0.0354,2400.0,2400.0,-0.4191,-1.6688,4.1478,-77.9407 2019-06-03 15:40:26.680,141.1339,7055.4087,3.2177,0.7431,0.9719,0.1443,2400.0,2400.0,-0.4191,-1.6658,4.1545,-77.9354 2019-06-03 15:40:26.700,141.1254,7055.436,3.2357,0.7406,1.0088,0.1406,2400.0,2400.0,-0.4074,-1.6658,4.1584,-77.9302 2019-06-03 15:40:26.720,141.1254,7055.436,3.2357,0.7406,1.1542,-0.0225,2400.0,2400.0,-0.4132,-1.6658,4.1412,-77.9302 2019-06-03 15:40:26.740,141.623,7055.4087,3.2357,0.7406,1.0321,0.1878,2400.0,2400.0,-0.4161,-1.6688,4.1584,-77.9302 2019-06-03 15:40:26.760,141.5473,7055.436,3.2524,0.7415,1.1653,0.0037,2400.0,2400.0,-0.422,-1.6628,4.1425,-77.9249 2019-06-03 15:40:26.780,141.5137,7055.3813,3.2524,0.7415,1.0506,0.1329,2400.0,2400.0,-0.4161,-1.6688,4.1677,-77.9249 2019-06-03 15:40:26.800,141.5305,7055.3813,3.2769,0.7379,1.0477,0.1299,2400.0,2400.0,-0.4249,-1.6658,4.1558,-77.9144 2019-06-03 15:40:26.820,141.5305,7055.3271,3.2808,0.7354,1.0399,0.0176,2400.0,2400.0,-0.4278,-1.6718,4.1531,-77.9127 2019-06-03 15:40:26.840,141.5726,7055.3813,3.2808,0.7354,1.1568,0.1351,2400.0,2400.0,-0.4278,-1.6688,4.1571,-77.9127 2019-06-03 15:40:26.860,141.5726,7055.3813,3.2808,0.7354,1.0599,0.0427,2400.0,2400.0,-0.422,-1.6658,4.1399,-77.9127 2019-06-03 15:40:26.880,141.5137,7055.3813,3.2959,0.7347,1.1653,0.1152,2400.0,2400.0,-0.4191,-1.6718,4.169,-77.9092 2019-06-03 15:40:26.900,141.5305,7055.354,3.3099,0.7418,1.183,0.1413,2400.0,2400.0,-0.4161,-1.6777,4.1624,-77.9057 2019-06-03 15:40:26.920,141.5221,7055.354,3.3099,0.7418,1.0436,-0.0128,2400.0,2400.0,-0.4132,-1.6747,4.1478,-77.9057 2019-06-03 15:40:26.940,141.7321,7055.3271,3.3099,0.7418,1.2026,0.1885,2400.0,2400.0,-0.4103,-1.6747,4.1571,-77.9057 2019-06-03 15:40:26.960,141.6985,7055.3271,3.3202,0.7405,1.0281,-0.0005,2400.0,2400.0,-0.422,-1.6747,4.1425,-77.9022 2019-06-03 15:40:26.980,141.6482,7055.2725,3.3202,0.7405,1.176,0.1316,2400.0,2400.0,-0.4249,-1.6747,4.1611,-77.9022 2019-06-03 15:40:27.000,141.6482,7055.2998,3.3419,0.7448,1.0932,0.1308,2400.0,2400.0,-0.4337,-1.6718,4.1531,-77.8917 2019-06-03 15:40:27.020,141.6566,7055.2998,3.3446,0.7487,0.9815,-0.0126,2400.0,2400.0,-0.4337,-1.6747,4.1465,-77.8899 2019-06-03 15:40:27.040,141.6985,7055.2998,3.3446,0.7487,1.1383,0.1609,2400.0,2400.0,-0.4191,-1.6718,4.1611,-77.8899 2019-06-03 15:40:27.060,141.7237,7055.2178,3.3446,0.7487,0.8653,0.0326,2400.0,2400.0,-0.4074,-1.6747,4.1518,-77.8899 2019-06-03 15:40:27.080,141.665,7055.1357,3.359,0.7643,1.2747,0.1233,2400.0,2400.0,-0.4015,-1.6747,4.1611,-77.8795 2019-06-03 15:40:27.100,141.665,7055.0815,3.3716,0.78,1.1039,0.111,2400.0,2400.0,-0.4044,-1.6718,4.1531,-77.8725 2019-06-03 15:40:27.120,141.6566,7055.1089,3.3716,0.78,1.0369,0.0132,2400.0,2400.0,-0.4249,-1.6747,4.1478,-77.8725 2019-06-03 15:40:27.140,141.8661,7055.1089,3.3716,0.78,1.1283,0.146,2400.0,2400.0,-0.4337,-1.6718,4.1545,-77.8725 2019-06-03 15:40:27.160,141.8243,7055.1357,3.3779,0.794,0.8864,0.0735,2400.0,2400.0,-0.4278,-1.6747,4.1531,-77.8655 2019-06-03 15:40:27.180,141.7991,7055.1089,3.3779,0.794,1.1253,0.0825,2400.0,2400.0,-0.4161,-1.6747,4.1558,-77.8655 2019-06-03 15:40:27.200,141.7824,7055.0815,3.3906,0.8218,1.054,0.0936,2400.0,2400.0,-0.4191,-1.6777,4.1518,-77.8602 2019-06-03 15:40:27.220,141.7908,7055.0542,3.3923,0.8297,1.0381,0.0265,2400.0,2400.0,-0.4191,-1.6718,4.1558,-77.8567 2019-06-03 15:40:27.240,141.8494,7055.1089,3.3923,0.8297,1.1938,0.1291,2400.0,2400.0,-0.4161,-1.6718,4.1571,-77.8567 2019-06-03 15:40:27.260,141.8494,7055.1089,3.3923,0.8297,0.9349,0.0762,2400.0,2400.0,-0.422,-1.6777,4.1518,-77.8567 2019-06-03 15:40:27.280,141.7908,7055.1089,3.4023,0.8463,1.1564,0.0901,2400.0,2400.0,-0.4191,-1.6777,4.1637,-77.848 2019-06-03 15:40:27.300,141.8075,7055.1089,3.411,0.8674,1.1361,0.0726,2400.0,2400.0,-0.422,-1.6688,4.1439,-77.8375 2019-06-03 15:40:27.320,141.7908,7055.1357,3.411,0.8674,0.9722,0.0713,2400.0,2400.0,-0.422,-1.6747,4.1505,-77.8375 2019-06-03 15:40:27.340,141.5473,7055.0542,3.411,0.8674,1.2237,0.1214,2400.0,2400.0,-0.422,-1.6747,4.1558,-77.8375 2019-06-03 15:40:27.360,141.6062,7055.1089,3.4214,0.8893,0.842,0.0643,2400.0,2400.0,-0.4132,-1.6418,4.1531,-77.8288 2019-06-03 15:40:27.380,141.5389,7055.0542,3.4348,0.9109,1.0266,0.0741,2400.0,2400.0,-0.4191,-1.6777,4.1677,-77.8183 2019-06-03 15:40:27.400,141.5221,7055.0815,3.4443,0.923,1.1549,0.0911,2400.0,2340.0,-0.422,-1.6957,4.1478,-77.8113 2019-06-03 15:40:27.420,141.5305,7055.0815,3.4474,0.9334,0.9541,0.0728,2400.0,2340.0,-0.4249,-1.6747,4.1439,-77.8043 2019-06-03 15:40:27.440,141.581,7055.1904,3.4474,0.9334,1.3247,0.0905,2400.0,2340.0,-0.4249,-1.6957,4.1598,-77.8043 2019-06-03 15:40:27.460,141.581,7055.1904,3.4474,0.9334,0.8668,0.0924,2400.0,2340.0,-0.4249,-1.6897,4.1531,-77.8043 2019-06-03 15:40:27.480,141.5305,7055.1631,3.4591,0.9609,1.1409,0.0396,2400.0,2340.0,-0.4161,-1.6837,4.169,-77.7885 2019-06-03 15:40:27.500,141.5221,7055.1904,3.4699,0.9868,1.257,0.0625,2400.0,2340.0,-0.4249,-1.6837,4.1359,-77.7728 2019-06-03 15:40:27.520,141.5221,7055.1631,3.4699,0.9868,0.8868,0.1085,2400.0,2340.0,-0.422,-1.6867,4.1505,-77.7728 2019-06-03 15:40:27.540,141.581,7055.2725,3.4699,0.9868,1.2918,0.0281,2400.0,2340.0,-0.4191,-1.6867,4.1624,-77.7728 2019-06-03 15:40:27.560,141.5642,7055.3813,3.4793,1.0062,0.842,0.1337,2400.0,2340.0,-0.4161,-1.6867,4.1545,-77.7571 2019-06-03 15:40:27.580,141.5221,7055.4087,3.4793,1.0062,1.2637,-0.0152,2400.0,2340.0,-0.422,-1.6867,4.1584,-77.7571 2019-06-03 15:40:27.600,141.5221,7055.3813,3.4942,1.0319,1.196,0.0099,2400.0,2340.0,-0.4191,-1.6867,4.1492,-77.7378 2019-06-03 15:40:27.620,141.5305,7055.354,3.4996,1.0377,1.0492,0.1455,2400.0,2340.0,-0.4191,-1.6837,4.1386,-77.7308 2019-06-03 15:40:27.640,141.5978,7055.2998,3.4996,1.0377,1.24,0.0021,2400.0,2340.0,-0.4278,-1.6867,4.1558,-77.7308 2019-06-03 15:40:27.660,141.581,7055.2998,3.4996,1.0377,0.8535,0.155,2400.0,2340.0,-0.4366,-1.6867,4.1651,-77.7308 2019-06-03 15:40:27.680,141.5221,7055.2998,3.5062,1.0473,1.308,-0.0259,2400.0,2340.0,-0.4308,-1.6837,4.1677,-77.7151 2019-06-03 15:40:27.700,141.5305,7055.2725,3.5099,1.0549,1.1534,-0.0088,2400.0,2340.0,-0.4308,-1.6807,4.1425,-77.7011 2019-06-03 15:40:27.720,141.5137,7055.2725,3.5099,1.0549,0.9955,0.1723,2400.0,2340.0,-0.422,-1.6688,4.1439,-77.7011 2019-06-03 15:40:27.740,141.4295,7055.2178,3.5099,1.0549,1.1394,-0.0262,2400.0,2340.0,-0.422,-1.6628,4.1664,-77.7011 2019-06-03 15:40:27.760,141.4463,7055.2178,3.5148,1.0636,1.0018,0.1758,2400.0,2340.0,-0.4161,-1.6628,4.1558,-77.6871 2019-06-03 15:40:27.780,141.4042,7055.1357,3.5148,1.0636,1.0872,-0.0482,2400.0,2340.0,-0.422,-1.6688,4.1611,-77.6871 2019-06-03 15:40:27.800,141.3958,7055.1357,3.5185,1.0753,1.1324,-0.036,2400.0,2340.0,-0.4191,-1.6628,4.1492,-77.6801 2019-06-03 15:40:27.820,141.4211,7055.1357,3.525,1.0834,1.0991,0.2,2400.0,2340.0,-0.4278,-1.6628,4.1571,-77.6731 2019-06-03 15:40:27.840,141.4379,7055.1631,3.525,1.0834,0.9977,-0.0752,2400.0,2340.0,-0.4278,-1.6658,4.1717,-77.6731 2019-06-03 15:40:27.860,141.4463,7055.1631,3.525,1.0834,1.1172,0.179,2400.0,2340.0,-0.4308,-1.6628,4.1505,-77.6731 2019-06-03 15:40:27.880,141.3873,7055.0542,3.5249,1.0868,0.9929,-0.0553,2400.0,2340.0,-0.4249,-1.6598,4.1386,-77.6609 2019-06-03 15:40:27.900,141.3958,7055.0269,3.5245,1.0877,0.9001,-0.0278,2400.0,2340.0,-0.4132,-1.6658,4.1399,-77.6469 2019-06-03 15:40:27.920,141.3873,7055.0269,3.5245,1.0877,1.1043,0.1521,2400.0,2340.0,-0.4132,-1.6658,4.1558,-77.6469 2019-06-03 15:40:27.940,141.4548,7055.0269,3.5245,1.0877,0.916,-0.0079,2400.0,2340.0,-0.3928,-1.6658,4.1982,-77.6469 2019-06-03 15:40:27.960,141.4463,7055.0542,3.5245,1.0859,1.3557,0.1487,2400.0,2340.0,-0.4249,-1.6658,4.1399,-77.6329 2019-06-03 15:40:27.980,141.4042,7055.0815,3.5245,1.0859,0.9452,-0.0009,2400.0,2340.0,-0.4308,-1.6628,4.1452,-77.6329 2019-06-03 15:40:28.000,141.3958,7055.0542,3.5208,1.0829,0.8398,0.0343,2400.0,2340.0,-0.4308,-1.6658,4.1545,-77.6014 2019-06-03 15:40:28.020,141.3958,7054.9722,3.5225,1.0833,1.23,0.1354,2400.0,2340.0,-0.4132,-1.6628,4.1505,-77.5944 2019-06-03 15:40:28.040,141.4463,7054.9995,3.5225,1.0833,0.7026,0.0201,2400.0,2340.0,-0.4015,-1.6777,4.1704,-77.5944 2019-06-03 15:40:28.060,141.4548,7054.9448,3.5225,1.0833,1.3143,0.125,2400.0,2340.0,-0.4044,-1.6688,4.1386,-77.5944 2019-06-03 15:40:28.080,141.3873,7054.9448,3.5187,1.0796,0.6934,0.0335,2400.0,2340.0,-0.4074,-1.6807,4.1531,-77.5822 2019-06-03 15:40:28.100,141.4042,7054.9722,3.5211,1.0768,0.7747,0.0826,2400.0,2340.0,-0.4132,-1.6957,4.1664,-77.57 2019-06-03 15:40:28.120,141.3873,7055.0269,3.5211,1.0768,1.2736,0.0908,2400.0,2340.0,-0.4103,-1.6837,4.1598,-77.57 2019-06-03 15:40:28.140,141.4379,7055.1089,3.5211,1.0768,0.669,0.0697,2400.0,2340.0,-0.4161,-1.6897,4.1677,-77.57 2019-06-03 15:40:28.160,141.4379,7055.1631,3.5224,1.0825,1.2459,0.0366,2400.0,2340.0,-0.4161,-1.6837,4.1306,-77.5577 2019-06-03 15:40:28.180,141.3958,7055.1631,3.5224,1.0825,0.9075,0.1061,2400.0,2340.0,-0.4191,-1.6747,4.1531,-77.5577 2019-06-03 15:40:28.200,141.3958,7055.1631,3.5217,1.0842,0.8114,0.1206,2400.0,2340.0,-0.4161,-1.6867,4.1637,-77.5525 2019-06-03 15:40:28.220,141.4042,7055.1357,3.5207,1.085,1.2326,0.0403,2400.0,2340.0,-0.4074,-1.6837,4.1637,-77.5472 2019-06-03 15:40:28.240,141.4463,7055.1631,3.5207,1.085,0.8317,0.1239,2400.0,2340.0,-0.4132,-1.6867,4.1598,-77.5472 2019-06-03 15:40:28.260,141.4463,7055.1089,3.5207,1.085,1.1124,0.0223,2400.0,2340.0,-0.4191,-1.6777,4.1399,-77.5472 2019-06-03 15:40:28.280,141.3873,7055.1089,3.5271,1.0831,1.0233,0.12,2400.0,2340.0,-0.4191,-1.6837,4.1518,-77.5402 2019-06-03 15:40:28.300,141.3958,7055.0542,3.5374,1.0922,0.8731,0.1581,2400.0,2340.0,-0.3986,-1.6837,4.1717,-77.5315 2019-06-03 15:40:28.320,141.3789,7055.0542,3.5374,1.0922,1.2,0.0008,2400.0,2340.0,-0.4074,-1.6777,4.1558,-77.5315 2019-06-03 15:40:28.340,141.4548,7055.0815,3.5374,1.0922,0.9659,0.1466,2400.0,2340.0,-0.4132,-1.6807,4.1558,-77.5315 2019-06-03 15:40:28.360,141.4379,7055.1089,3.5432,1.0981,0.994,-0.0019,2400.0,2340.0,-0.4337,-1.6837,4.1412,-77.5245 2019-06-03 15:40:28.380,141.3958,7055.1357,3.5432,1.0981,1.1098,0.1467,2400.0,2340.0,-0.4395,-1.6807,4.169,-77.5245 2019-06-03 15:40:28.400,141.3958,7055.1357,3.5547,1.0975,1.0573,0.1591,2340.0,2400.0,-0.4337,-1.6777,4.1677,-77.5297 2019-06-03 15:40:28.420,141.3873,7055.1631,3.5542,1.093,1.0458,0.0036,2340.0,2400.0,-0.4103,-1.6807,4.1531,-77.5297 2019-06-03 15:40:28.440,141.4295,7055.2178,3.5542,1.093,1.0917,0.1332,2340.0,2400.0,-0.4044,-1.6777,4.1518,-77.5297 2019-06-03 15:40:28.460,141.4463,7055.1904,3.5542,1.093,0.9759,-0.0018,2340.0,2400.0,-0.4103,-1.6777,4.1478,-77.5297 2019-06-03 15:40:28.480,141.3958,7055.1631,3.5687,1.098,1.1227,0.1521,2340.0,2400.0,-0.4249,-1.6777,4.1584,-77.528 2019-06-03 15:40:28.500,141.4126,7055.0542,3.5838,1.1026,1.1457,0.1423,2340.0,2400.0,-0.4424,-1.6897,4.1717,-77.5297 2019-06-03 15:40:28.520,141.3789,7055.1089,3.5838,1.1026,0.9637,0.0282,2340.0,2400.0,-0.46,-1.6867,4.1545,-77.5297 2019-06-03 15:40:28.540,141.5894,7055.1357,3.5838,1.1026,1.2307,0.1309,2340.0,2400.0,-0.4483,-1.6897,4.1704,-77.5297 2019-06-03 15:40:28.560,141.5642,7055.1904,3.5941,1.1002,0.8942,0.0183,2340.0,2400.0,-0.4395,-1.6837,4.1465,-77.5332 2019-06-03 15:40:28.580,141.5221,7055.2451,3.5941,1.1002,1.1634,0.149,2340.0,2400.0,-0.4366,-1.6927,4.1439,-77.5332 2019-06-03 15:40:28.600,141.5221,7055.2451,3.6117,1.0926,1.2903,0.1504,2340.0,2400.0,-0.4424,-1.6867,4.1571,-77.5455 2019-06-03 15:40:28.620,141.5305,7055.2451,3.6137,1.0831,0.7943,0.0355,2340.0,2400.0,-0.4571,-1.6837,4.1518,-77.549 2019-06-03 15:40:28.640,141.5894,7055.2451,3.6137,1.0831,1.2803,0.0951,2340.0,2400.0,-0.4629,-1.6867,4.173,-77.549 2019-06-03 15:40:28.660,141.581,7055.2451,3.6137,1.0831,0.8306,0.0549,2340.0,2400.0,-0.4951,-1.6837,4.1333,-77.549 2019-06-03 15:40:28.680,141.5221,7055.3271,3.6287,1.0728,1.1801,0.1108,2340.0,2400.0,-0.4688,-1.6837,4.1558,-77.556 2019-06-03 15:40:28.700,141.5305,7055.2998,3.6392,1.0624,1.2241,0.0974,2340.0,2400.0,-0.4717,-1.6867,4.1584,-77.5612 2019-06-03 15:40:28.720,141.5137,7055.3271,3.6392,1.0624,0.8069,0.0679,2340.0,2400.0,-0.4512,-1.6628,4.1571,-77.5612 2019-06-03 15:40:28.740,141.5726,7055.2998,3.6392,1.0624,1.3021,0.065,2340.0,2400.0,-0.4746,-1.6658,4.1558,-77.5612 2019-06-03 15:40:28.760,141.5894,7055.2725,3.6417,1.0533,0.7851,0.056,2340.0,2400.0,-0.4717,-1.6568,4.1373,-77.5665 2019-06-03 15:40:28.780,141.5305,7055.2178,3.6414,1.0485,1.2108,0.0842,2340.0,2400.0,-0.4775,-1.6837,4.1531,-77.5752 2019-06-03 15:40:28.800,141.5305,7055.2725,3.6453,1.0587,1.2126,0.0803,2340.0,2400.0,-0.4658,-1.7106,4.1677,-77.5752 2019-06-03 15:40:28.820,141.5305,7055.2725,3.6433,1.0623,0.9212,0.0875,2340.0,2400.0,-0.4629,-1.6957,4.1545,-77.577 2019-06-03 15:40:28.840,141.5726,7055.2725,3.6433,1.0623,1.2085,0.0268,2340.0,2400.0,-0.4688,-1.6927,4.1505,-77.577 2019-06-03 15:40:28.860,141.581,7055.2998,3.6433,1.0623,0.835,0.1168,2340.0,2400.0,-0.4717,-1.6807,4.1531,-77.577 2019-06-03 15:40:28.880,141.5305,7055.2998,3.6438,1.0693,1.2282,0.0249,2340.0,2400.0,-0.4775,-1.6718,4.1386,-77.577 2019-06-03 15:40:28.900,141.5389,7055.1904,3.6459,1.0771,1.0503,0.001,2340.0,2400.0,-0.4688,-1.6688,4.1598,-77.5787 2019-06-03 15:40:28.920,141.5221,7055.2178,3.6459,1.0771,0.8417,0.1375,2340.0,2400.0,-0.4688,-1.6718,4.1531,-77.5787 2019-06-03 15:40:28.940,141.581,7055.2998,3.6459,1.0771,1.0662,-0.0312,2340.0,2400.0,-0.4629,-1.6718,4.1558,-77.5787 2019-06-03 15:40:28.960,141.581,7055.2998,3.6493,1.0862,0.9574,0.163,2340.0,2400.0,-0.4688,-1.6718,4.1518,-77.5805 2019-06-03 15:40:28.980,141.5305,7055.2451,3.6493,1.0862,1.2252,-0.0161,2340.0,2400.0,-0.4775,-1.6718,4.1531,-77.5805 2019-06-03 15:40:29.000,141.5305,7055.2178,3.6609,1.0902,1.071,-0.0198,2340.0,2400.0,-0.4688,-1.6718,4.1783,-77.5874 2019-06-03 15:40:29.020,141.5221,7055.2178,3.6694,1.0934,1.0063,0.1554,2340.0,2400.0,-0.4775,-1.6747,4.1518,-77.5892 2019-06-03 15:40:29.040,141.581,7055.2451,3.6694,1.0934,1.0994,-0.0337,2340.0,2400.0,-0.4688,-1.6718,4.1478,-77.5892 2019-06-03 15:40:29.060,141.5894,7055.2178,3.6694,1.0934,1.0562,0.1664,2340.0,2400.0,-0.4863,-1.6747,4.1399,-77.5892 2019-06-03 15:40:29.080,141.5221,7055.2178,3.6764,1.0858,1.1139,-0.0088,2340.0,2400.0,-0.5009,-1.6688,4.1505,-77.5944 2019-06-03 15:40:29.100,141.5389,7055.1357,3.6843,1.0751,0.9219,-0.0082,2340.0,2400.0,-0.5038,-1.6777,4.1756,-77.5997 2019-06-03 15:40:29.120,141.5221,7055.1089,3.6843,1.0751,1.0795,0.1167,2340.0,2400.0,-0.4892,-1.6867,4.1545,-77.5997 2019-06-03 15:40:29.140,141.581,7055.1357,3.6843,1.0751,1.0495,-0.027,2340.0,2400.0,-0.4804,-1.6867,4.1545,-77.5997 2019-06-03 15:40:29.160,141.5726,7055.2178,3.6939,1.0639,1.034,0.1508,2340.0,2400.0,-0.4804,-1.6867,4.1412,-77.6049 2019-06-03 15:40:29.180,141.5305,7055.2178,3.6939,1.0639,1.0994,0.019,2340.0,2400.0,-0.4834,-1.6867,4.1531,-77.6049 2019-06-03 15:40:29.200,141.5305,7055.1357,3.702,1.0514,1.0451,-0.0006,2340.0,2400.0,-0.4892,-1.6927,4.1584,-77.6189 2019-06-03 15:40:29.220,141.5305,7055.1631,3.7081,1.0521,1.1767,0.1613,2340.0,2400.0,-0.498,-1.6867,4.1439,-77.6207 2019-06-03 15:40:29.240,141.5894,7055.1357,3.7081,1.0521,1.0318,-0.0469,2340.0,2400.0,-0.5009,-1.6927,4.1478,-77.6207 2019-06-03 15:40:29.260,141.5894,7055.1631,3.7081,1.0521,1.1475,0.1726,2340.0,2400.0,-0.4951,-1.6897,4.1359,-77.6207 2019-06-03 15:40:29.280,141.5389,7055.2451,3.7116,1.0483,0.9242,0.0294,2340.0,2400.0,-0.4834,-1.6807,4.1452,-77.6242 2019-06-03 15:40:29.300,141.5305,7054.9722,3.7156,1.0409,0.9082,0.0183,2340.0,2400.0,-0.4746,-1.6957,4.1677,-77.6277 2019-06-03 15:40:29.320,141.5221,7054.0176,3.7156,1.0409,1.1449,0.1344,2340.0,2400.0,-0.4804,-1.6598,4.1373,-77.6277 2019-06-03 15:40:29.340,142.0249,7052.7358,3.7156,1.0409,1.0233,0.0141,2340.0,2400.0,-0.4717,-1.6658,4.1505,-77.6277 2019-06-03 15:40:29.360,141.9581,7051.8354,3.7211,1.0381,1.1546,0.1212,2340.0,2400.0,-0.4775,-1.6867,4.1386,-77.6294 2019-06-03 15:40:29.380,141.9247,7050.4717,3.7211,1.0381,0.9537,0.0826,2340.0,2400.0,-0.4892,-1.6867,4.1439,-77.6294 2019-06-03 15:40:29.400,141.9247,7049.626,3.7243,1.0229,0.8824,0.0464,2400.0,2400.0,-0.4921,-1.6897,4.1677,-77.6417 2019-06-03 15:40:29.420,141.9247,7048.6987,3.726,1.0195,1.1479,0.1085,2400.0,2400.0,-0.4951,-1.6837,4.1346,-77.6417 2019-06-03 15:40:29.440,141.9748,7047.4165,3.726,1.0195,0.9752,0.0306,2400.0,2400.0,-0.4921,-1.6837,4.1346,-77.6417 2019-06-03 15:40:29.460,141.9748,7046.5439,3.726,1.0195,1.1579,0.1293,2400.0,2400.0,-0.46,-1.6837,4.1412,-77.6417 2019-06-03 15:40:29.480,141.9079,7046.4346,3.7292,1.005,0.8764,0.0623,2400.0,2400.0,-0.4629,-1.6807,4.1531,-77.6417 2019-06-03 15:40:29.500,141.9247,7046.6255,3.7326,0.9957,0.9438,0.04,2400.0,2400.0,-0.4804,-1.6957,4.1598,-77.6399 2019-06-03 15:40:29.520,141.9163,7047.6074,3.7326,0.9957,1.1997,0.0907,2400.0,2400.0,-0.5038,-1.6987,4.1333,-77.6399 2019-06-03 15:40:29.540,141.9748,7048.917,3.7326,0.9957,0.9356,0.0683,2400.0,2400.0,-0.5389,-1.6837,4.132,-77.6399 2019-06-03 15:40:29.560,141.9748,7049.7896,3.7368,0.9867,1.196,0.0924,2400.0,2400.0,-0.5272,-1.6837,4.1611,-77.6364 2019-06-03 15:40:29.580,141.9163,7051.1265,3.7368,0.9867,0.9767,0.0778,2400.0,2400.0,-0.5214,-1.6867,4.1545,-77.6364 2019-06-03 15:40:29.600,141.9163,7051.9717,3.7392,0.9782,0.9264,0.0314,2400.0,2400.0,-0.5301,-1.6897,4.1611,-77.6294 2019-06-03 15:40:29.620,141.9247,7052.8174,3.7403,0.9779,1.166,0.112,2400.0,2400.0,-0.5272,-1.6897,4.1227,-77.6259 2019-06-03 15:40:29.640,141.9664,7054.1812,3.7403,0.9779,0.9304,0.0543,2400.0,2400.0,-0.5272,-1.6957,4.1465,-77.6259 2019-06-03 15:40:29.660,141.9748,7054.9722,3.7403,0.9779,1.1224,0.068,2400.0,2400.0,-0.5155,-1.6867,4.1531,-77.6259 2019-06-03 15:40:29.680,141.9247,7055.1357,3.7469,0.9762,0.9756,0.0907,2400.0,2400.0,-0.5009,-1.6897,4.1518,-77.6189 2019-06-03 15:40:29.700,141.9247,7055.1631,3.7541,0.9792,1.0066,0.0554,2400.0,2400.0,-0.5038,-1.6927,4.1558,-77.6119 2019-06-03 15:40:29.720,141.9079,7055.1904,3.7541,0.9792,1.0806,0.0515,2400.0,2400.0,-0.5068,-1.7256,4.1386,-77.6119 2019-06-03 15:40:29.740,141.9664,7055.2998,3.7541,0.9792,0.9271,0.0873,2400.0,2400.0,-0.5126,-1.7166,4.1518,-77.6119 2019-06-03 15:40:29.760,141.9581,7055.3813,3.7615,0.9793,1.098,0.0534,2400.0,2400.0,-0.5184,-1.7017,4.1545,-77.6014 2019-06-03 15:40:29.780,141.9247,7055.436,3.7615,0.9793,1.0103,0.1088,2400.0,2400.0,-0.5097,-1.6538,4.1373,-77.6014 2019-06-03 15:40:29.800,141.9163,7055.4634,3.7718,0.9745,0.9711,0.1052,2400.0,2400.0,-0.5184,-1.6987,4.1399,-77.5857 2019-06-03 15:40:29.820,141.9163,7055.4087,3.7726,0.9714,1.0255,0.0168,2400.0,2400.0,-0.5038,-1.6628,4.1333,-77.5822 2019-06-03 15:40:29.840,141.9664,7055.436,3.7726,0.9714,0.9541,0.115,2400.0,2400.0,-0.5068,-1.6688,4.1558,-77.5822 2019-06-03 15:40:29.860,141.9832,7055.4087,3.7726,0.9714,1.0958,0.038,2400.0,2400.0,-0.5126,-1.6747,4.1439,-77.5822 2019-06-03 15:40:29.880,141.9079,7055.4634,3.7794,0.9677,1.0159,0.1393,2400.0,2400.0,-0.5038,-1.6747,4.1531,-77.5717 2019-06-03 15:40:29.900,141.9247,7055.4634,3.7882,0.9681,1.1346,0.1224,2400.0,2400.0,-0.5331,-1.6837,4.1386,-77.5595 2019-06-03 15:40:29.920,141.9163,7055.4087,3.7882,0.9681,1.071,0.0283,2400.0,2400.0,-0.5272,-1.6777,4.1399,-77.5595 2019-06-03 15:40:29.940,141.6734,7055.4087,3.7882,0.9681,1.0233,0.1554,2400.0,2400.0,-0.536,-1.6957,4.1373,-77.5595 2019-06-03 15:40:29.960,141.7153,7055.4634,3.7993,0.9736,1.0406,-0.0252,2400.0,2400.0,-0.5038,-1.6957,4.1518,-77.549 2019-06-03 15:40:29.980,141.6566,7055.5181,3.7993,0.9736,0.9515,0.1677,2400.0,2400.0,-0.5126,-1.6927,4.1386,-77.549 2019-06-03 15:40:30.000,141.6482,7055.5454,3.816,0.9709,1.0573,0.1492,2400.0,2400.0,-0.5068,-1.6957,4.1518,-77.5263 2019-06-03 15:40:30.020,141.665,7055.5181,3.819,0.9701,0.9493,0.025,2400.0,2400.0,-0.5214,-1.6927,4.1359,-77.521 2019-06-03 15:40:30.040,141.7069,7055.5723,3.819,0.9701,1.0654,0.1642,2400.0,2400.0,-0.5331,-1.6957,4.1412,-77.521 2019-06-03 15:40:30.060,141.7237,7055.4907,3.819,0.9701,1.0059,-0.0186,2400.0,2400.0,-0.5301,-1.7256,4.1412,-77.521 2019-06-03 15:40:30.080,141.665,7055.4087,3.833,0.9738,1.0125,0.1724,2400.0,2400.0,-0.5068,-1.7256,4.128,-77.5053 2019-06-03 15:40:30.100,141.665,7055.2998,3.8447,0.9763,1.1172,0.14,2400.0,2400.0,-0.5097,-1.7286,4.1346,-77.493 2019-06-03 15:40:30.120,141.6566,7055.2451,3.8447,0.9763,0.9867,0.0315,2400.0,2400.0,-0.5068,-1.7256,4.1174,-77.493 2019-06-03 15:40:30.140,141.5642,7055.2451,3.8447,0.9763,1.2274,0.161,2400.0,2400.0,-0.5038,-1.7316,4.1359,-77.493 2019-06-03 15:40:30.160,141.581,7055.2725,3.8523,0.978,0.9478,0.0122,2400.0,2400.0,-0.5126,-1.7256,4.1452,-77.479 2019-06-03 15:40:30.180,141.5221,7055.2998,3.8548,0.979,1.1756,0.1378,2400.0,2400.0,-0.5184,-1.7316,4.1293,-77.4598 2019-06-03 15:40:30.200,141.5305,7055.2998,3.862,0.9897,1.2759,0.096,2400.0,2400.0,-0.5214,-1.7286,4.1386,-77.4493 2019-06-03 15:40:30.220,141.5389,7055.1904,3.8614,0.9901,0.8361,0.064,2400.0,2400.0,-0.5184,-1.7256,4.124,-77.4423 2019-06-03 15:40:30.240,141.581,7055.2998,3.8614,0.9901,1.1586,0.0955,2400.0,2400.0,-0.5272,-1.7256,4.1293,-77.4423 2019-06-03 15:40:30.260,141.5894,7055.3271,3.8614,0.9901,0.8731,0.0499,2400.0,2400.0,-0.5214,-1.7345,4.1465,-77.4423 2019-06-03 15:40:30.280,141.5221,7055.354,3.8651,1.0005,1.2603,0.1038,2400.0,2400.0,-0.5126,-1.7316,4.128,-77.4248 2019-06-03 15:40:30.300,141.5389,7055.2725,3.8641,1.0103,1.2492,0.0434,2400.0,2400.0,-0.5243,-1.7286,4.1346,-77.4091 2019-06-03 15:40:30.320,141.5221,7055.2998,3.8641,1.0103,0.7629,0.0851,2400.0,2400.0,-0.5155,-1.7256,4.1293,-77.4091 2019-06-03 15:40:30.340,141.2861,7055.2725,3.8641,1.0103,1.3236,0.0735,2400.0,2400.0,-0.5243,-1.7196,4.1373,-77.4091 2019-06-03 15:40:30.360,141.3283,7055.2725,3.8599,1.0191,0.8243,0.0799,2400.0,2400.0,-0.5272,-1.7345,4.1399,-77.3916 2019-06-03 15:40:30.380,141.2692,7055.354,3.8599,1.0191,1.2529,0.0341,2400.0,2400.0,-0.5155,-1.7256,4.132,-77.3916 2019-06-03 15:40:30.400,141.2607,7055.3271,3.8633,1.0314,1.2115,0.0065,2400.0,2400.0,-0.5272,-1.7286,4.1333,-77.3706 2019-06-03 15:40:30.420,141.2776,7055.2725,3.8652,1.0363,0.9456,0.1238,2400.0,2400.0,-0.5097,-1.7345,4.1346,-77.3601 2019-06-03 15:40:30.440,141.3114,7055.2725,3.8652,1.0363,1.2503,0.0422,2400.0,2400.0,-0.5097,-1.7316,4.1333,-77.3601 2019-06-03 15:40:30.460,141.3283,7055.2998,3.8652,1.0363,0.8324,0.1252,2400.0,2400.0,-0.5097,-1.7584,4.1505,-77.3601 2019-06-03 15:40:30.480,141.2692,7055.2998,3.8657,1.0467,1.2215,0.0173,2400.0,2400.0,-0.5184,-1.7166,4.1253,-77.3409 2019-06-03 15:40:30.500,141.2692,7055.2451,3.8628,1.0514,1.1424,-0.0192,2400.0,2400.0,-0.5243,-1.7196,4.1399,-77.3217 2019-06-03 15:40:30.520,141.2607,7055.2725,3.8628,1.0514,0.9626,0.1458,2400.0,2400.0,-0.5184,-1.7166,4.1386,-77.3217 2019-06-03 15:40:30.540,141.3199,7055.2725,3.8628,1.0514,1.2407,-0.018,2400.0,2400.0,-0.5214,-1.7166,4.132,-77.3217 2019-06-03 15:40:30.560,141.3114,7055.354,3.863,1.0557,1.0118,0.1972,2400.0,2400.0,-0.5068,-1.7076,4.1425,-77.3007 2019-06-03 15:40:30.580,141.2692,7055.436,3.863,1.0557,1.1072,-0.0564,2400.0,2400.0,-0.498,-1.6897,4.1359,-77.3007 2019-06-03 15:40:30.600,141.2607,7055.5181,3.8625,1.0622,1.0994,-0.0344,2400.0,2400.0,-0.498,-1.7136,4.1425,-77.2692 2019-06-03 15:40:30.620,141.2692,7055.5181,3.8711,1.0641,1.0244,0.1777,2400.0,2400.0,-0.498,-1.7106,4.1386,-77.2587 2019-06-03 15:40:30.640,141.3114,7055.5723,3.8711,1.0641,1.0972,-0.007,2400.0,2400.0,-0.498,-1.7047,4.1386,-77.2587 2019-06-03 15:40:30.660,141.3199,7055.5454,3.8711,1.0641,1.0917,0.1829,2400.0,2400.0,-0.5038,-1.7405,4.1518,-77.2587 2019-06-03 15:40:30.680,141.2523,7055.5996,3.8715,1.0582,0.9175,-0.0249,2400.0,2400.0,-0.498,-1.6747,4.1333,-77.243 2019-06-03 15:40:30.700,141.2776,7055.5723,3.8704,1.0472,0.8857,-0.016,2400.0,2400.0,-0.498,-1.6867,4.1452,-77.2273 2019-06-03 15:40:30.720,141.2523,7055.5723,3.8704,1.0472,1.162,0.1397,2400.0,2400.0,-0.4775,-1.7136,4.1373,-77.2273 2019-06-03 15:40:30.740,141.3114,7055.5181,3.8704,1.0472,0.9149,0.0171,2400.0,2400.0,-0.4775,-1.7106,4.1359,-77.2273 2019-06-03 15:40:30.760,141.3114,7055.5181,3.8748,1.037,1.2448,0.125,2400.0,2400.0,-0.4863,-1.7226,4.1518,-77.2133 2019-06-03 15:40:30.780,141.2607,7055.4634,3.8748,1.037,0.7566,0.046,2400.0,2400.0,-0.4775,-1.6777,4.1306,-77.2133 2019-06-03 15:40:30.800,141.2607,7055.4907,3.8781,1.0164,0.7747,0.0542,2400.0,2400.0,-0.4863,-1.6777,4.1359,-77.201 2019-06-03 15:40:30.820,141.2607,7055.4907,3.8813,1.0125,1.2485,0.0996,2400.0,2400.0,-0.4804,-1.6777,4.1412,-77.1958 2019-06-03 15:40:30.840,141.3114,7055.4907,3.8813,1.0125,0.8047,0.0698,2400.0,2400.0,-0.4775,-1.6568,4.1306,-77.1958 2019-06-03 15:40:30.860,141.3283,7055.4634,3.8813,1.0125,1.3036,0.065,2400.0,2400.0,-0.4834,-1.6658,4.1478,-77.1958 2019-06-03 15:40:30.880,141.2692,7055.436,3.8777,1.0001,0.7511,0.089,2400.0,2400.0,-0.4863,-1.6568,4.1253,-77.187 2019-06-03 15:40:30.900,141.2692,7055.354,3.879,0.9914,0.8831,0.1136,2400.0,2400.0,-0.4921,-1.6538,4.1359,-77.18 2019-06-03 15:40:30.920,141.2607,7055.3813,3.879,0.9914,1.1331,0.0172,2400.0,2400.0,-0.4951,-1.6538,4.1373,-77.18 2019-06-03 15:40:30.940,141.1677,7055.4907,3.879,0.9914,0.7991,0.1159,2400.0,2400.0,-0.4892,-1.6329,4.1293,-77.18 2019-06-03 15:40:30.960,141.1762,7055.5181,3.8838,0.9843,1.3151,0.027,2400.0,2400.0,-0.4921,-1.6478,4.1439,-77.1713 2019-06-03 15:40:30.980,141.1169,7055.4907,3.8838,0.9843,0.8191,0.1154,2400.0,2400.0,-0.4892,-1.6388,4.128,-77.1713 2019-06-03 15:40:31.000,141.1254,7055.4907,3.8868,0.9701,0.96,0.1384,2400.0,2400.0,-0.4834,-1.6448,4.1306,-77.1538 2019-06-03 15:40:31.020,141.1339,7055.436,3.8865,0.9631,1.1989,-0.0084,2400.0,2400.0,-0.4775,-1.6388,4.1386,-77.1503 2019-06-03 15:40:31.040,141.1846,7055.436,3.8865,0.9631,0.7995,0.1487,2400.0,2400.0,-0.4658,-1.6269,4.1267,-77.1503 2019-06-03 15:40:31.060,141.1846,7055.4634,3.8865,0.9631,1.2137,-0.0192,2400.0,2400.0,-0.4775,-1.6299,4.132,-77.1503 2019-06-03 15:40:31.080,141.1254,7055.4907,3.8932,0.9544,0.9704,0.1808,2400.0,2400.0,-0.4804,-1.564,4.1293,-77.1468 2019-06-03 15:40:31.100,141.1339,7055.4087,3.9011,0.9493,1.095,0.1777,2400.0,2400.0,-0.5009,-1.567,4.1267,-77.1416 2019-06-03 15:40:31.120,141.1169,7055.4907,3.9011,0.9493,1.0325,-0.0482,2400.0,2400.0,-0.498,-1.57,4.1293,-77.1416 2019-06-03 15:40:31.140,141.1762,7055.4907,3.9011,0.9493,0.9833,0.1712,2400.0,2400.0,-0.4921,-1.555,4.1147,-77.1416 2019-06-03 15:40:31.160,141.1762,7055.4907,3.9062,0.9465,1.0924,-0.0249,2400.0,2400.0,-0.4804,-1.549,4.1425,-77.1398 2019-06-03 15:40:31.180,141.1339,7055.5181,3.9062,0.9465,1.0543,0.1631,2400.0,2400.0,-0.4892,-1.4651,4.1068,-77.1398 2019-06-03 15:40:31.200,141.1254,7055.5454,3.915,0.9457,1.0987,0.1808,2400.0,2400.0,-0.4834,-1.4321,4.1121,-77.1346 2019-06-03 15:40:31.220,141.1423,7055.5181,3.9139,0.9448,0.9722,-0.0344,2400.0,2400.0,-0.4863,-1.3961,4.1108,-77.1328 2019-06-03 15:40:31.240,141.1762,7055.5454,3.9139,0.9448,1.0861,0.1722,2400.0,2400.0,-0.4834,-1.33,4.1081,-77.1328 2019-06-03 15:40:31.260,141.1762,7055.5181,3.9139,0.9448,0.8957,-0.0109,2400.0,2400.0,-0.5009,-1.2669,4.1121,-77.1328 2019-06-03 15:40:31.280,141.1339,7055.4634,3.9193,0.9544,1.1716,0.1549,2400.0,2400.0,-0.4921,-1.1404,4.0962,-77.1276 2019-06-03 15:40:31.300,141.1254,7055.4087,3.9222,0.9663,1.173,0.1689,2400.0,2400.0,-0.4892,-1.1374,4.1055,-77.1206 2019-06-03 15:40:31.320,141.1254,7055.4087,3.9222,0.9663,0.9053,0.0214,2400.0,2400.0,-0.4775,-1.044,4.1161,-77.1206 2019-06-03 15:40:31.340,141.1846,7055.4087,3.9222,0.9663,1.1889,0.1331,2400.0,2400.0,-0.4804,-0.9232,4.1055,-77.1206 2019-06-03 15:40:31.360,141.1762,7055.4087,3.9221,0.984,0.7015,0.0309,2400.0,2400.0,-0.4834,-0.8295,4.1068,-77.1153 2019-06-03 15:40:31.380,141.1254,7055.5181,3.9221,0.984,1.2703,0.1134,2400.0,2400.0,-0.4804,-0.6508,4.0909,-77.1153 2019-06-03 15:40:31.400,141.1254,7055.5181,3.9287,1.031,1.1849,0.121,2340.0,2340.0,-0.4717,-0.5689,4.1015,-77.1084 2019-06-03 15:40:31.420,141.1254,7055.4907,3.9292,1.0481,0.7681,0.0508,2340.0,2340.0,-0.4804,-0.4929,4.1068,-77.1049 2019-06-03 15:40:31.440,141.1846,7055.4907,3.9292,1.0481,1.3628,0.0747,2340.0,2340.0,-0.4892,-0.3743,4.0922,-77.1049 2019-06-03 15:40:31.460,141.1931,7055.436,3.9292,1.0481,0.6712,0.063,2340.0,2340.0,-0.498,-0.3012,4.1028,-77.1049 2019-06-03 15:40:31.480,141.1254,7055.4087,3.9339,1.1063,1.2888,0.0649,2340.0,2340.0,-0.4951,-0.1701,4.0922,-77.0944 2019-06-03 15:40:31.500,141.1339,7055.3813,3.936,1.1712,1.2492,0.056,2340.0,2340.0,-0.5009,-0.1549,4.0909,-77.0839 2019-06-03 15:40:31.520,141.1169,7055.4087,3.936,1.1712,0.6989,0.1253,2340.0,2340.0,-0.4921,-0.0938,4.0949,-77.0839 2019-06-03 15:40:31.540,141.1762,7055.4087,3.936,1.1712,1.3121,-0.0092,2340.0,2340.0,-0.4804,-0.0663,4.0896,-77.0839 2019-06-03 15:40:31.560,141.1762,7055.3813,3.9363,1.2499,0.9423,0.1265,2340.0,2340.0,-0.4775,-0.0632,4.0975,-77.0734 2019-06-03 15:40:31.580,141.1339,7055.354,3.9431,1.3494,1.1431,0.0115,2340.0,2340.0,-0.4804,-0.0113,4.079,-77.0734 2019-06-03 15:40:31.600,141.1254,7055.2998,3.9457,1.4052,1.1372,0.01,2340.0,2340.0,-0.4746,0.001,4.0922,-77.0664 2019-06-03 15:40:31.620,141.1339,7055.2451,3.9533,1.4645,0.9726,0.1409,2340.0,2340.0,-0.4863,-0.0052,4.0949,-77.0594 2019-06-03 15:40:31.640,141.1762,7055.3271,3.9533,1.4645,1.0532,-0.0021,2340.0,2340.0,-0.4863,0.001,4.083,-77.0594 2019-06-03 15:40:31.660,141.1846,7055.3271,3.9533,1.4645,1.0806,0.1286,2340.0,2340.0,-0.498,0.001,4.0949,-77.0594 2019-06-03 15:40:31.680,141.1169,7055.354,3.9579,1.5824,1.0473,0.0083,2340.0,2340.0,-0.4834,-0.0021,4.083,-77.0472 2019-06-03 15:40:31.700,141.1423,7055.3271,3.9606,1.7133,1.1586,-0.0079,2340.0,2340.0,-0.4775,-0.0052,4.0936,-77.0332 2019-06-03 15:40:31.720,141.1254,7055.3271,3.9606,1.7133,1.0521,0.1668,2340.0,2340.0,-0.4863,-0.0021,4.0922,-77.0332 2019-06-03 15:40:31.740,141.3367,7055.3271,3.9606,1.7133,0.9985,-0.035,2340.0,2340.0,-0.4775,-0.0021,4.0869,-77.0332 2019-06-03 15:40:31.760,141.303,7055.4087,3.9664,1.8522,1.1627,0.1681,2340.0,2340.0,-0.498,-0.0143,4.0869,-77.0192 2019-06-03 15:40:31.780,141.2523,7055.5181,3.9664,1.8522,0.9929,0.0102,2340.0,2340.0,-0.4746,-0.0021,4.0949,-77.0192 2019-06-03 15:40:31.800,141.2607,7055.5454,3.9768,2.0811,0.9977,0.0023,2340.0,2340.0,-0.4834,-0.0021,4.0869,-77.0104 2019-06-03 15:40:31.820,141.2607,7055.5454,3.9866,2.1653,1.196,0.1721,2340.0,2340.0,-0.4892,-0.0052,4.1028,-77.0034 2019-06-03 15:40:31.840,141.3114,7055.5996,3.9866,2.1653,0.8642,-0.0283,2340.0,2340.0,-0.4892,-0.0021,4.083,-77.0034 2019-06-03 15:40:31.860,141.3283,7055.5181,3.9866,2.1653,1.2907,0.1585,2340.0,2340.0,-0.4746,-0.0052,4.0896,-77.0034 2019-06-03 15:40:31.880,141.2607,7055.5181,3.9896,2.3238,0.8742,0.0215,2340.0,2340.0,-0.4746,-0.0052,4.0896,-76.993 2019-06-03 15:40:31.900,141.2776,7055.4634,3.9961,2.4914,0.9223,0.0157,2340.0,2340.0,-0.4717,-0.0052,4.0883,-76.9842 2019-06-03 15:40:31.920,141.2523,7055.4907,3.9961,2.4914,1.1634,0.1662,2340.0,2340.0,-0.4951,-0.0052,4.0962,-76.9842 2019-06-03 15:40:31.940,141.4463,7055.4907,3.9961,2.4914,0.7929,0.0018,2340.0,2340.0,-0.498,-0.0021,4.0856,-76.9842 2019-06-03 15:40:31.960,141.4211,7055.5181,4.0061,2.6664,1.2925,0.1186,2340.0,2340.0,-0.498,-0.0571,4.0949,-76.9737 2019-06-03 15:40:31.980,141.3873,7055.4634,4.0061,2.6664,0.764,0.0326,2340.0,2340.0,-0.4804,-0.0296,4.083,-76.9737 2019-06-03 15:40:32.000,141.3873,7055.436,4.0153,2.938,0.7714,0.024,2340.0,2340.0,-0.4717,0.001,4.0856,-76.965 2019-06-03 15:40:32.020,141.3873,7055.354,4.0237,3.0323,1.2441,0.1268,2340.0,2340.0,-0.4834,-0.0113,4.0922,-76.9597 2019-06-03 15:40:32.040,141.4379,7055.4087,4.0237,3.0323,0.8413,0.0201,2340.0,2340.0,-0.4804,-0.0021,4.0684,-76.9597 2019-06-03 15:40:32.060,141.4463,7055.3813,4.0237,3.0323,1.1997,0.0782,2340.0,2340.0,-0.4775,-0.0052,4.0936,-76.9597 2019-06-03 15:40:32.080,141.3789,7055.3813,4.025,3.2196,0.8191,0.0872,2340.0,2340.0,-0.4775,-0.0174,4.0909,-76.9527 2019-06-03 15:40:32.100,141.3958,7055.354,4.0326,3.4143,0.8816,0.11,2340.0,2340.0,-0.4834,-0.0174,4.0909,-76.9457 2019-06-03 15:40:32.120,141.3873,7055.3271,4.0326,3.4143,1.1941,0.0357,2340.0,2340.0,-0.4892,-0.0357,4.0922,-76.9457 2019-06-03 15:40:32.140,141.5978,7055.2725,4.0326,3.4143,0.7733,0.098,2340.0,2340.0,-0.4863,-0.0327,4.0777,-76.9457 2019-06-03 15:40:32.160,141.5642,7055.2998,4.045,3.6135,1.1871,0.0458,2340.0,2340.0,-0.4892,-0.103,4.0909,-76.9388 2019-06-03 15:40:32.180,141.5221,7055.354,4.045,3.6135,0.838,0.1058,2340.0,2340.0,-0.4717,-0.1945,4.0936,-76.9388 2019-06-03 15:40:32.200,141.5221,7055.3813,4.0579,3.9228,0.8879,0.0832,2340.0,2340.0,-0.4717,-0.3073,4.1015,-76.944 2019-06-03 15:40:32.220,141.5305,7055.4087,4.0633,4.0253,1.2211,0.0341,2340.0,2340.0,-0.4834,-0.5355,4.1081,-76.9405 2019-06-03 15:40:32.240,141.5726,7055.436,4.0633,4.0253,0.8816,0.1063,2340.0,2340.0,-0.4834,-0.6295,4.0949,-76.9405 2019-06-03 15:40:32.260,141.5894,7055.3813,4.0633,4.0253,1.1497,0.0364,2340.0,2340.0,-0.4892,-0.9051,4.1055,-76.9405 2019-06-03 15:40:32.280,141.5221,7055.3813,4.072,4.225,0.862,0.1272,2340.0,2340.0,-0.4892,-1.1555,4.1094,-76.9318 2019-06-03 15:40:32.300,141.5221,7055.354,4.0842,4.4178,1.007,0.1131,2340.0,2340.0,-0.4921,-1.318,4.0975,-76.9248 2019-06-03 15:40:32.320,141.5137,7055.3813,4.0842,4.4178,1.0662,0.0143,2340.0,2340.0,-0.4834,-1.534,4.1147,-76.9248 2019-06-03 15:40:32.340,141.581,7055.4907,4.0842,4.4178,1.0185,0.098,2340.0,2340.0,-0.4717,-1.576,4.0989,-76.9248 2019-06-03 15:40:32.360,141.5642,7055.5454,4.0955,4.6013,1.1387,0.054,2340.0,2340.0,-0.4717,-1.6418,4.1068,-76.9125 2019-06-03 15:40:32.380,141.5221,7055.5723,4.0955,4.6013,0.9271,0.0873,2340.0,2340.0,-0.4629,-1.6329,4.1068,-76.9125 2019-06-03 15:40:32.400,141.5305,7055.5181,4.0984,4.8321,0.9926,0.0896,2400.0,2400.0,-0.46,-1.5969,4.1094,-76.9178 2019-06-03 15:40:32.420,141.5305,7055.4634,4.1034,4.8966,1.1135,0.0036,2400.0,2400.0,-0.4541,-1.6299,4.1108,-76.9125 2019-06-03 15:40:32.440,141.5726,7055.5181,4.1034,4.8966,1.0188,0.1563,2400.0,2400.0,-0.4483,-1.6239,4.0936,-76.9125 2019-06-03 15:40:32.460,141.581,7055.5454,4.1034,4.8966,1.1412,-0.0259,2400.0,2400.0,-0.4571,-1.6209,4.1015,-76.9125 2019-06-03 15:40:32.480,141.5221,7055.5723,4.109,5.0159,0.9663,0.1623,2400.0,2400.0,-0.46,-1.6209,4.1068,-76.9038 2019-06-03 15:40:32.500,141.5221,7055.4907,4.1176,5.1187,0.9963,0.1402,2400.0,2400.0,-0.4658,-1.6239,4.1147,-76.895 2019-06-03 15:40:32.520,141.5137,7055.4634,4.1176,5.1187,0.9722,-0.0167,2400.0,2400.0,-0.4746,-1.6209,4.1253,-76.895 2019-06-03 15:40:32.540,141.581,7055.3813,4.1176,5.1187,1.1342,0.1383,2400.0,2400.0,-0.4629,-1.6179,4.1002,-76.895 2019-06-03 15:40:32.560,141.581,7055.436,4.1246,5.2071,1.0051,0.0231,2400.0,2400.0,-0.46,-1.6209,4.1134,-76.8845 2019-06-03 15:40:32.580,141.5305,7055.4907,4.1246,5.2071,1.0987,0.0964,2400.0,2400.0,-0.4629,-1.6209,4.1161,-76.8845 2019-06-03 15:40:32.600,141.5221,7055.5181,4.1288,5.3151,1.0658,0.1316,2400.0,2400.0,-0.4571,-1.6179,4.1214,-76.8863 2019-06-03 15:40:32.620,141.5221,7055.436,4.1297,5.3435,0.8491,0.0143,2400.0,2400.0,-0.4834,-1.6568,4.1055,-76.8811 2019-06-03 15:40:32.640,141.5726,7055.4087,4.1297,5.3435,1.2082,0.1155,2400.0,2400.0,-0.4658,-1.5999,4.0989,-76.8811 2019-06-03 15:40:32.660,141.581,7055.4087,4.1297,5.3435,0.8417,0.0359,2400.0,2400.0,-0.4717,-1.5969,4.1147,-76.8811 2019-06-03 15:40:32.680,141.5305,7055.354,4.1328,5.3949,1.2104,0.0751,2400.0,2400.0,-0.4717,-1.6239,4.1161,-76.8671 2019-06-03 15:40:32.700,141.5221,7055.2725,4.1382,5.4339,1.1945,0.0893,2400.0,2400.0,-0.4658,-1.6209,4.1055,-76.8548 2019-06-03 15:40:32.720,141.5221,7055.3271,4.1382,5.4339,0.7648,0.0488,2400.0,2400.0,-0.4688,-1.6239,4.1187,-76.8548 2019-06-03 15:40:32.740,141.581,7055.354,4.1382,5.4339,1.2548,0.1209,2400.0,2400.0,-0.4658,-1.6119,4.1068,-76.8548 2019-06-03 15:40:32.760,141.5642,7055.4087,4.139,5.456,0.8295,0.0503,2400.0,2400.0,-0.4541,-1.6089,4.1187,-76.8426 2019-06-03 15:40:32.780,141.5221,7055.4907,4.139,5.456,1.176,0.0761,2400.0,2400.0,-0.4571,-1.6418,4.1161,-76.8426 2019-06-03 15:40:32.800,141.5221,7055.4907,4.1454,5.486,1.1634,0.0884,2400.0,2400.0,-0.46,-1.6029,4.1015,-76.8198 2019-06-03 15:40:32.820,141.5305,7055.436,4.1473,5.4923,0.7629,0.0495,2400.0,2400.0,-0.46,-1.6329,4.1161,-76.8111 2019-06-03 15:40:32.840,141.581,7055.4087,4.1473,5.4923,1.1938,0.1041,2400.0,2400.0,-0.4571,-1.6388,4.1028,-76.8111 2019-06-03 15:40:32.860,141.581,7055.3813,4.1473,5.4923,0.8162,0.0988,2400.0,2400.0,-0.46,-1.6418,4.1174,-76.8111 2019-06-03 15:40:32.880,141.5221,7055.354,4.1532,5.5027,1.1838,0.0517,2400.0,2400.0,-0.4658,-1.6359,4.1147,-76.7919 2019-06-03 15:40:32.900,141.5305,7055.3271,4.1543,5.5128,1.1767,0.0261,2400.0,2400.0,-0.4658,-1.6388,4.1028,-76.7691 2019-06-03 15:40:32.920,141.5221,7055.3271,4.1543,5.5128,0.9245,0.1131,2400.0,2400.0,-0.4541,-1.6388,4.1187,-76.7691 2019-06-03 15:40:32.940,141.4211,7055.2998,4.1543,5.5128,1.1283,0.0587,2400.0,2400.0,-0.46,-1.6269,4.1028,-76.7691 2019-06-03 15:40:32.960,141.4548,7055.354,4.1573,5.5184,0.9208,0.1457,2400.0,2400.0,-0.4483,-1.6179,4.1174,-76.7447 2019-06-03 15:40:32.980,141.3958,7055.354,4.1668,5.5301,1.1975,-0.0003,2400.0,2400.0,-0.4571,-1.6179,4.1081,-76.7027 2019-06-03 15:40:33.000,141.3873,7055.3813,4.1675,5.5332,1.2189,-0.0146,2400.0,2400.0,-0.4541,-1.6149,4.1055,-76.687 2019-06-03 15:40:33.020,141.3958,7055.3813,4.176,5.5387,0.994,0.1259,2400.0,2400.0,-0.4658,-1.6149,4.1227,-76.6695 2019-06-03 15:40:33.040,141.4379,7055.436,4.176,5.5387,1.0795,0.0558,2400.0,2400.0,-0.4483,-1.6149,4.1108,-76.6695 2019-06-03 15:40:33.060,141.4463,7055.436,4.176,5.5387,0.9915,0.1458,2400.0,2400.0,-0.4395,-1.6149,4.1161,-76.6695 2019-06-03 15:40:33.080,141.3958,7055.4087,4.1815,5.5492,0.9319,0.0119,2400.0,2400.0,-0.4424,-1.6179,4.1068,-76.6328 2019-06-03 15:40:33.100,141.3958,7055.2725,4.1818,5.5551,1.0743,-0.0004,2400.0,2400.0,-0.4483,-1.6209,4.1108,-76.596 2019-06-03 15:40:33.120,141.3873,7055.2178,4.1818,5.5551,1.0144,0.155,2400.0,2400.0,-0.4688,-1.6209,4.1306,-76.596 2019-06-03 15:40:33.140,141.4548,7055.2451,4.1818,5.5551,1.0924,-0.0061,2400.0,2400.0,-0.46,-1.6209,4.1134,-76.596 2019-06-03 15:40:33.160,141.4295,7055.3271,4.1851,5.5639,1.0144,0.1649,2400.0,2400.0,-0.46,-1.6119,4.1055,-76.5541 2019-06-03 15:40:33.180,141.3789,7055.3813,4.1851,5.5639,1.0,-0.0308,2400.0,2400.0,-0.4483,-1.6269,4.128,-76.5541 2019-06-03 15:40:33.200,141.3873,7055.3813,4.1824,5.5703,1.1202,0.0055,2400.0,2400.0,-0.4746,-1.6269,4.1042,-76.4981 2019-06-03 15:40:33.220,141.3873,7055.4087,4.1857,5.575,1.0218,0.1562,2400.0,2400.0,-0.4629,-1.6329,4.1293,-76.4736 2019-06-03 15:40:33.240,141.4379,7055.3271,4.1857,5.575,1.0362,0.0019,2400.0,2400.0,-0.4541,-1.6269,4.1108,-76.4736 2019-06-03 15:40:33.260,141.4548,7055.3271,4.1857,5.575,1.027,0.1622,2400.0,2400.0,-0.46,-1.6089,4.1121,-76.4736 2019-06-03 15:40:33.280,141.3789,7055.3813,4.1845,5.5748,1.0717,-0.0317,2400.0,2400.0,-0.46,-1.6059,4.128,-76.4264 2019-06-03 15:40:33.300,141.3958,7055.3271,4.1818,5.5724,1.0088,-0.025,2400.0,2400.0,-0.46,-1.6059,4.1081,-76.3757 2019-06-03 15:40:33.320,141.3789,7055.354,4.1818,5.5724,1.1457,0.1648,2400.0,2400.0,-0.46,-1.6119,4.1346,-76.3757 2019-06-03 15:40:33.340,141.4379,7055.3813,4.1818,5.5724,0.9593,0.0144,2400.0,2400.0,-0.4629,-1.6119,4.124,-76.3757 2019-06-03 15:40:33.360,141.4379,7055.4087,4.1829,5.5741,1.0384,0.1559,2400.0,2400.0,-0.4629,-1.6089,4.1134,-76.325 2019-06-03 15:40:33.380,141.3873,7055.354,4.1829,5.5741,1.0706,0.0031,2400.0,2400.0,-0.46,-1.6239,4.1227,-76.325 2019-06-03 15:40:33.400,141.3873,7055.4087,4.178,5.5812,1.0381,0.0108,2400.0,2400.0,-0.46,-1.6209,4.1147,-76.2516 2019-06-03 15:40:33.420,141.4042,7055.354,4.1799,5.5856,1.1368,0.1357,2400.0,2400.0,-0.4688,-1.6239,4.1333,-76.2218 2019-06-03 15:40:33.440,141.4379,7055.4087,4.1799,5.5856,0.9434,0.0195,2400.0,2400.0,-0.46,-1.6209,4.1293,-76.2218 2019-06-03 15:40:33.460,141.4379,7055.3813,4.1799,5.5856,1.0758,0.1683,2400.0,2400.0,-0.4571,-1.6388,4.1187,-76.2218 2019-06-03 15:40:33.480,141.3873,7055.4087,4.1739,5.5923,0.9504,0.0168,2400.0,2400.0,-0.46,-1.6628,4.128,-76.1641 2019-06-03 15:40:33.500,141.3958,7055.3271,4.1673,5.5977,0.8946,0.0149,2400.0,2400.0,-0.4571,-1.6598,4.12,-76.1047 2019-06-03 15:40:33.520,141.3873,7055.3271,4.1673,5.5977,1.1579,0.1426,2400.0,2400.0,-0.4629,-1.7555,4.1346,-76.1047 2019-06-03 15:40:33.540,141.303,7055.3271,4.1673,5.5977,0.9759,0.0115,2400.0,2400.0,-0.4571,-1.7584,4.1214,-76.1047 2019-06-03 15:40:33.560,141.3114,7055.3813,4.1637,5.6074,1.1272,0.1385,2400.0,2400.0,-0.4483,-1.7883,4.12,-76.0452 2019-06-03 15:40:33.580,141.2607,7055.4634,4.1637,5.6074,0.906,0.0184,2400.0,2400.0,-0.46,-1.8391,4.1227,-76.0452 2019-06-03 15:40:33.600,141.2692,7055.4907,4.1547,5.6101,0.8173,0.0457,2400.0,2400.0,-0.4658,-1.854,4.1121,-75.9578 2019-06-03 15:40:33.620,141.2607,7055.436,4.1552,5.6138,1.3103,0.1313,2400.0,2400.0,-0.4863,-2.0238,4.1346,-75.9264 2019-06-03 15:40:33.640,141.3114,7055.4087,4.1552,5.6138,0.8598,0.0463,2400.0,2400.0,-0.4863,-2.0685,4.1267,-75.9264 2019-06-03 15:40:33.660,141.3199,7055.3813,4.1552,5.6138,1.203,0.0784,2400.0,2400.0,-0.4658,-2.122,4.1293,-75.9264 2019-06-03 15:40:33.680,141.2607,7055.4087,4.1493,5.6081,0.9153,0.0698,2400.0,2400.0,-0.4658,-2.2052,4.1214,-75.8669 2019-06-03 15:40:33.700,141.2607,7055.4087,4.147,5.6028,0.8128,0.0768,2400.0,2400.0,-0.4512,-2.2408,4.12,-75.8057 2019-06-03 15:40:33.720,141.2607,7055.436,4.147,5.6028,1.2492,0.0475,2400.0,2400.0,-0.4541,-2.4157,4.1425,-75.8057 2019-06-03 15:40:33.740,141.1593,7055.436,4.147,5.6028,0.852,0.0854,2400.0,2400.0,-0.4834,-2.5015,4.128,-75.8057 2019-06-03 15:40:33.760,141.1846,7055.4907,4.1446,5.5888,1.2781,0.0308,2400.0,2400.0,-0.4775,-2.6079,4.132,-75.748 2019-06-03 15:40:33.780,141.1339,7055.5181,4.1446,5.5888,0.7991,0.1211,2400.0,2400.0,-0.498,-2.7082,4.1333,-75.748 2019-06-03 15:40:33.800,141.1254,7055.4907,4.1366,5.5493,0.8147,0.1204,2400.0,2400.0,-0.4629,-2.7701,4.1293,-75.6483 2019-06-03 15:40:33.820,141.1423,7055.436,4.131,5.5309,1.1771,0.0154,2400.0,2400.0,-0.4541,-2.8908,4.1306,-75.6204 2019-06-03 15:40:33.840,141.1762,7055.436,4.131,5.5309,0.8228,0.1282,2400.0,2400.0,-0.4512,-2.9407,4.1293,-75.6204 2019-06-03 15:40:33.860,141.1846,7055.4087,4.131,5.5309,1.2918,-0.0027,2400.0,2400.0,-0.4541,-3.0171,4.1174,-75.6204 2019-06-03 15:40:33.880,141.1254,7055.4087,4.1264,5.4879,0.977,0.1474,2400.0,2400.0,-0.4717,-3.067,4.1306,-75.5662 2019-06-03 15:40:33.900,141.1423,7055.354,4.1238,5.433,0.9456,0.1446,2400.0,2400.0,-0.4688,-3.0728,4.1333,-75.5119 2019-06-03 15:40:33.920,141.1169,7055.3271,4.1238,5.433,1.1516,0.0053,2400.0,2400.0,-0.4688,-3.1168,4.128,-75.5119 2019-06-03 15:40:33.940,141.3367,7055.3271,4.1238,5.433,0.9952,0.1333,2400.0,2400.0,-0.4688,-3.1168,4.132,-75.5119 2019-06-03 15:40:33.960,141.303,7055.4087,4.1204,5.3677,1.1583,-0.0387,2400.0,2400.0,-0.4541,-3.1022,4.132,-75.4612 2019-06-03 15:40:33.980,141.2523,7055.4907,4.1204,5.3677,1.0499,0.1816,2400.0,2400.0,-0.4775,-3.1139,4.1346,-75.4612 2019-06-03 15:40:34.000,141.2607,7055.5454,4.1143,5.242,1.0096,0.1599,2400.0,2400.0,-0.4717,-3.1198,4.132,-75.3668 2019-06-03 15:40:34.020,141.2607,7055.5454,4.1071,5.1902,1.0088,-0.019,2400.0,2400.0,-0.4717,-3.1168,4.128,-75.3441 2019-06-03 15:40:34.040,141.3114,7055.5181,4.1071,5.1902,1.0358,0.1455,2400.0,2400.0,-0.4424,-3.1139,4.1346,-75.3441 2019-06-03 15:40:34.060,141.3114,7055.4907,4.1071,5.1902,1.1375,-0.0366,2400.0,2400.0,-0.4512,-3.1139,4.1333,-75.3441 2019-06-03 15:40:34.080,141.2607,7055.4907,4.1037,5.0908,1.0976,0.1622,2400.0,2400.0,-0.4541,-3.1198,4.1399,-75.3004 2019-06-03 15:40:34.100,141.2776,7055.436,4.1023,4.9809,1.0784,0.1383,2400.0,2400.0,-0.46,-3.108,4.12,-75.2567 2019-06-03 15:40:34.120,141.2607,7055.3813,4.1023,4.9809,0.9733,0.0163,2400.0,2400.0,-0.4629,-3.111,4.1373,-75.2567 2019-06-03 15:40:34.140,141.3114,7055.436,4.1023,4.9809,1.0691,0.142,2400.0,2400.0,-0.4658,-3.1256,4.1439,-75.2567 2019-06-03 15:40:34.160,141.3114,7055.436,4.0986,4.8613,0.923,-0.0497,2400.0,2400.0,-0.4629,-3.111,4.1439,-75.2182 2019-06-03 15:40:34.180,141.2607,7055.4087,4.0986,4.8613,1.078,0.1916,2400.0,2400.0,-0.46,-3.1198,4.1531,-75.2182 2019-06-03 15:40:34.200,141.2607,7055.4087,4.0984,4.6671,1.1449,0.186,2400.0,2400.0,-0.4775,-3.1139,4.12,-75.185 2019-06-03 15:40:34.220,141.2692,7055.3813,4.0913,4.5975,0.9511,0.0015,2400.0,2400.0,-0.4541,-3.0875,4.1505,-75.1675 2019-06-03 15:40:34.240,141.3114,7055.4634,4.0913,4.5975,1.0602,0.1338,2400.0,2400.0,-0.4804,-2.9172,4.1293,-75.1675 2019-06-03 15:40:34.260,141.3199,7055.4087,4.0913,4.5975,0.8657,-0.0067,2400.0,2400.0,-0.4571,-2.7583,4.1492,-75.1675 2019-06-03 15:40:34.280,141.2607,7055.4087,4.0929,4.4613,1.2363,0.1204,2400.0,2400.0,-0.4775,-2.5872,4.1386,-75.1343 2019-06-03 15:40:34.300,141.2607,7055.354,4.0961,4.3218,1.1775,0.1146,2400.0,2400.0,-0.4688,-2.3654,4.1359,-75.1045 2019-06-03 15:40:34.320,141.2523,7055.3271,4.0961,4.3218,1.0373,0.0273,2400.0,2400.0,-0.4658,-2.2883,4.1399,-75.1045 2019-06-03 15:40:34.340,141.4632,7055.354,4.0961,4.3218,1.1645,0.1105,2400.0,2400.0,-0.4688,-2.1725,4.1399,-75.1045 2019-06-03 15:40:34.360,141.4295,7055.3813,4.0944,4.1852,0.9844,0.0101,2400.0,2400.0,-0.4746,-2.0893,4.1359,-75.0783 2019-06-03 15:40:34.380,141.3873,7055.354,4.0939,4.0508,1.257,0.1326,2400.0,2400.0,-0.4775,-2.0893,4.1425,-75.0661 2019-06-03 15:40:34.400,141.3873,7055.354,4.1007,3.9978,1.1782,0.1056,2340.0,2400.0,-0.4658,-2.0655,4.1346,-75.0521 2019-06-03 15:40:34.420,141.3873,7055.354,4.0992,3.9411,0.8916,0.0647,2340.0,2400.0,-0.4512,-2.0447,4.1399,-75.0416 2019-06-03 15:40:34.440,141.4379,7055.436,4.0992,3.9411,1.2415,0.0743,2340.0,2400.0,-0.4512,-2.0596,4.1399,-75.0416 2019-06-03 15:40:34.460,141.4463,7055.3813,4.0992,3.9411,0.7855,0.0532,2340.0,2400.0,-0.4571,-2.0536,4.1373,-75.0416 2019-06-03 15:40:34.480,141.3789,7055.354,4.1057,3.8411,1.2196,0.072,2340.0,2400.0,-0.4863,-2.0625,4.1452,-75.0189 2019-06-03 15:40:34.500,141.3958,7055.2178,4.1117,3.7493,1.2041,0.0613,2340.0,2400.0,-0.4775,-2.0625,4.1293,-74.9979 2019-06-03 15:40:34.520,141.3789,7055.2725,4.1117,3.7493,0.7958,0.1043,2340.0,2400.0,-0.4658,-2.0596,4.1306,-74.9979 2019-06-03 15:40:34.540,141.4379,7055.354,4.1117,3.7493,1.267,0.0351,2340.0,2400.0,-0.4658,-2.0625,4.1465,-74.9979 2019-06-03 15:40:34.560,141.4379,7055.4087,4.1169,3.6669,0.7943,0.089,2340.0,2400.0,-0.4658,-2.0358,4.1306,-74.9769 2019-06-03 15:40:34.580,141.3873,7055.4087,4.1169,3.6669,1.2563,0.0479,2340.0,2400.0,-0.4629,-2.0566,4.1425,-74.9769 2019-06-03 15:40:34.600,141.3789,7055.436,4.1285,3.5563,1.2733,0.0448,2340.0,2400.0,-0.4688,-2.0774,4.132,-74.9664 2019-06-03 15:40:34.620,141.3958,7055.4087,4.133,3.5234,0.7995,0.1308,2340.0,2400.0,-0.4658,-2.0447,4.1425,-74.9594 2019-06-03 15:40:34.640,141.4379,7055.3813,4.133,3.5234,1.2189,-0.0009,2340.0,2400.0,-0.4892,-2.0744,4.1439,-74.9594 2019-06-03 15:40:34.660,141.4463,7055.3813,4.133,3.5234,0.9242,0.1421,2340.0,2400.0,-0.4834,-2.0298,4.1346,-74.9594 2019-06-03 15:40:34.680,141.3789,7055.3813,4.1433,3.4591,1.1523,-0.0063,2340.0,2400.0,-0.4804,-2.0536,4.1439,-74.9437 2019-06-03 15:40:34.700,141.3958,7055.5996,4.1523,3.398,1.1986,-0.0268,2340.0,2400.0,-0.4629,-2.0566,4.132,-74.9314 2019-06-03 15:40:34.720,141.3789,7056.4453,4.1523,3.398,0.8047,0.1769,2340.0,2400.0,-0.4424,-2.0566,4.1399,-74.9314 2019-06-03 15:40:34.740,141.5978,7057.6733,4.1523,3.398,1.1764,-0.0408,2340.0,2400.0,-0.4541,-2.0625,4.1439,-74.9314 2019-06-03 15:40:34.760,141.5558,7058.5737,4.1608,3.3388,0.9663,0.1337,2340.0,2400.0,-0.46,-2.0596,4.1386,-74.9209 2019-06-03 15:40:34.780,141.5305,7059.7739,4.1608,3.3388,1.1135,-0.0089,2340.0,2400.0,-0.4688,-2.0625,4.1373,-74.9209 2019-06-03 15:40:34.800,141.5221,7060.647,4.1765,3.2603,1.0244,-0.0177,2340.0,2400.0,-0.4629,-2.0566,4.1359,-74.9244 2019-06-03 15:40:34.820,141.5221,7061.4658,4.1846,3.2402,1.0173,0.1489,2340.0,2400.0,-0.4629,-2.0566,4.1412,-74.9209 2019-06-03 15:40:34.840,141.5642,7062.7754,4.1846,3.2402,1.044,-0.0155,2340.0,2400.0,-0.4629,-2.0596,4.1425,-74.9209 2019-06-03 15:40:34.860,141.581,7063.5391,4.1846,3.2402,1.0369,0.1311,2340.0,2400.0,-0.46,-2.0536,4.1214,-74.9209 2019-06-03 15:40:34.880,141.5221,7063.6211,4.1941,3.1884,1.0384,0.0047,2340.0,2400.0,-0.46,-2.0715,4.1373,-74.9174 2019-06-03 15:40:34.900,141.5305,7063.5664,4.2018,3.1454,1.0,-0.0301,2340.0,2400.0,-0.4541,-2.0685,4.1293,-74.914 2019-06-03 15:40:34.920,141.5137,7063.5117,4.2018,3.1454,1.1257,0.171,2340.0,2400.0,-0.4571,-2.0625,4.1465,-74.914 2019-06-03 15:40:34.940,141.5726,7063.4844,4.2018,3.1454,0.9175,-0.0265,2340.0,2400.0,-0.4804,-2.0655,4.1399,-74.914 2019-06-03 15:40:34.960,141.5726,7063.5117,4.2139,3.1017,1.1638,0.1576,2340.0,2400.0,-0.4775,-2.0268,4.1267,-74.9105 2019-06-03 15:40:34.980,141.5305,7063.5391,4.2139,3.1017,1.0014,0.0187,2340.0,2400.0,-0.4951,-2.0566,4.1359,-74.9105 2019-06-03 15:40:35.000,141.5137,7063.5664,4.2286,3.0433,0.9001,0.0191,2340.0,2400.0,-0.4717,-2.0596,4.1412,-74.9279 2019-06-03 15:40:35.020,141.5305,7063.5117,4.2379,3.0277,1.2178,0.1458,2340.0,2400.0,-0.4629,-2.0358,4.1373,-74.9262 2019-06-03 15:40:35.040,141.581,7063.5391,4.2379,3.0277,0.8232,0.0144,2340.0,2400.0,-0.4512,-2.0715,4.1492,-74.9262 2019-06-03 15:40:35.060,141.581,7063.5117,4.2379,3.0277,1.21,0.1211,2340.0,2400.0,-0.46,-2.0536,4.12,-74.9262 2019-06-03 15:40:35.080,141.5137,7063.5391,4.2449,2.9925,0.9219,0.0464,2340.0,2400.0,-0.4688,-2.0566,4.1333,-74.9279 2019-06-03 15:40:35.100,141.5305,7063.5117,4.2558,2.9516,0.8151,0.008,2340.0,2400.0,-0.4688,-2.0566,4.1373,-74.9297 2019-06-03 15:40:35.120,141.5137,7063.5391,4.2558,2.9516,1.2152,0.1092,2340.0,2400.0,-0.4688,-2.0566,4.1333,-74.9297 2019-06-03 15:40:35.140,141.7237,7063.4844,4.2558,2.9516,0.7914,0.0333,2340.0,2400.0,-0.4717,-2.0566,4.1346,-74.9297 2019-06-03 15:40:35.160,141.6985,7063.4844,4.2693,2.9188,1.2296,0.0934,2340.0,2400.0,-0.4658,-2.0536,4.1267,-74.9297 2019-06-03 15:40:35.180,141.6482,7063.5117,4.2693,2.9188,0.8306,0.0697,2340.0,2400.0,-0.4746,-2.0566,4.1346,-74.9297 2019-06-03 15:40:35.200,141.6566,7063.5117,4.2819,2.8581,0.7296,0.0803,2340.0,2400.0,-0.4746,-2.0536,4.1412,-74.9559 2019-06-03 15:40:35.220,141.6566,7063.4844,4.2878,2.8395,1.2696,0.0354,2340.0,2400.0,-0.4804,-2.0566,4.1333,-74.9577 2019-06-03 15:40:35.240,141.6985,7063.5117,4.2878,2.8395,0.8151,0.0928,2340.0,2400.0,-0.4775,-2.0566,4.1359,-74.9577 2019-06-03 15:40:35.260,141.7069,7063.5117,4.2878,2.8395,1.2311,0.0652,2340.0,2400.0,-0.4746,-2.0566,4.1227,-74.9577 2019-06-03 15:40:35.280,141.6566,7063.457,4.2953,2.7971,0.8114,0.1191,2340.0,2400.0,-0.46,-2.0566,4.1492,-74.9612 2019-06-03 15:40:35.300,141.665,7063.3755,4.3059,2.7586,0.8369,0.1046,2340.0,2400.0,-0.4629,-2.0506,4.1346,-74.9664 2019-06-03 15:40:35.320,141.6482,7063.4297,4.3059,2.7586,1.2666,-0.0013,2340.0,2400.0,-0.4366,-2.0387,4.1333,-74.9664 2019-06-03 15:40:35.340,141.7069,7063.4028,4.3059,2.7586,0.9238,0.1311,2340.0,2400.0,-0.4483,-2.0417,4.132,-74.9664 2019-06-03 15:40:35.360,141.6985,7063.457,4.3164,2.7247,1.2448,0.0107,2340.0,2400.0,-0.4454,-2.0387,4.1227,-74.9717 2019-06-03 15:40:35.380,141.665,7063.5391,4.3164,2.7247,0.8635,0.1365,2340.0,2400.0,-0.4629,-2.0506,4.1412,-74.9717 2019-06-03 15:40:35.400,141.6482,7063.5938,4.3238,2.6649,0.9615,0.1024,2400.0,2400.0,-0.4658,-2.0506,4.1399,-74.9961 2019-06-03 15:40:35.420,141.6566,7063.5938,4.3239,2.6466,1.1361,0.0021,2400.0,2400.0,-0.4629,-2.0506,4.1359,-74.9979 2019-06-03 15:40:35.440,141.6985,7063.6211,4.3239,2.6466,1.0044,0.1418,2400.0,2400.0,-0.4688,-2.0506,4.1267,-74.9979 2019-06-03 15:40:35.460,141.7153,7063.6484,4.3239,2.6466,1.1978,0.0081,2400.0,2400.0,-0.4629,-2.0447,4.1267,-74.9979 2019-06-03 15:40:35.480,141.6566,7063.6484,4.3303,2.6112,0.9852,0.1713,2400.0,2400.0,-0.4775,-2.0447,4.1346,-75.0049 2019-06-03 15:40:35.500,141.665,7063.5938,4.3392,2.5796,1.0284,0.1565,2400.0,2400.0,-0.4688,-2.0447,4.1399,-75.0066 2019-06-03 15:40:35.520,141.6482,7063.5664,4.3392,2.5796,1.0806,-0.0319,2400.0,2400.0,-0.4658,-2.0387,4.1293,-75.0066 2019-06-03 15:40:35.540,141.7069,7063.6211,4.3392,2.5796,1.1298,0.15,2400.0,2400.0,-0.4746,-2.0596,4.132,-75.0066 2019-06-03 15:40:35.560,141.7069,7063.5938,4.3456,2.5453,0.994,0.0242,2400.0,2400.0,-0.4717,-2.0596,4.1187,-75.0101 2019-06-03 15:40:35.580,141.6398,7063.5938,4.3456,2.5453,1.1091,0.1567,2400.0,2400.0,-0.4688,-2.0566,4.1412,-75.0101 2019-06-03 15:40:35.600,141.6566,7063.6484,4.3491,2.49,1.0898,0.1405,2400.0,2400.0,-0.4688,-2.0566,4.1439,-75.0346 2019-06-03 15:40:35.620,141.6566,7063.5664,4.3477,2.4692,1.1113,0.0052,2400.0,2400.0,-0.4629,-2.0566,4.1333,-75.0363 2019-06-03 15:40:35.640,141.7069,7063.5938,4.3477,2.4692,1.0429,0.1551,2400.0,2400.0,-0.4629,-2.0596,4.1293,-75.0363 2019-06-03 15:40:35.660,141.7153,7063.5938,4.3477,2.4692,0.9822,0.0313,2400.0,2400.0,-0.46,-2.0536,4.1187,-75.0363 2019-06-03 15:40:35.680,141.6482,7063.5938,4.3557,2.4355,1.2208,0.1484,2400.0,2400.0,-0.4658,-2.0596,4.132,-75.0381 2019-06-03 15:40:35.700,141.6566,7063.4844,4.3603,2.3933,1.1401,0.119,2400.0,2400.0,-0.46,-2.0536,4.1412,-75.0416 2019-06-03 15:40:35.720,141.6482,7063.4844,4.3603,2.3933,0.9486,0.0099,2400.0,2400.0,-0.4658,-1.9941,4.124,-75.0416 2019-06-03 15:40:35.740,141.5642,7063.4844,4.3603,2.3933,1.1568,0.1624,2400.0,2400.0,-0.4775,-1.9941,4.128,-75.0416 2019-06-03 15:40:35.760,141.5894,7063.4844,4.3642,2.3534,0.8524,0.0515,2400.0,2400.0,-0.4717,-1.9256,4.12,-75.0451 2019-06-03 15:40:35.780,141.5305,7063.5117,4.3639,2.3132,1.1756,0.0836,2400.0,2400.0,-0.46,-1.8898,4.1399,-75.0643 2019-06-03 15:40:35.800,141.5221,7063.5391,4.3683,2.295,1.1653,0.0859,2400.0,2400.0,-0.4746,-1.8062,4.1253,-75.0643 2019-06-03 15:40:35.820,141.5389,7063.457,4.3687,2.2755,0.8191,0.0329,2400.0,2400.0,-0.4658,-1.6867,4.1187,-75.0661 2019-06-03 15:40:35.840,141.5726,7063.4844,4.3687,2.2755,1.1346,0.1107,2400.0,2400.0,-0.4658,-1.6418,4.1121,-75.0661 2019-06-03 15:40:35.860,141.581,7063.5117,4.3687,2.2755,0.8221,0.047,2400.0,2400.0,-0.4483,-1.4771,4.1187,-75.0661 2019-06-03 15:40:35.880,141.5221,7063.5391,4.3764,2.2427,1.2012,0.1002,2400.0,2400.0,-0.4629,-1.3931,4.128,-75.0661 2019-06-03 15:40:35.900,141.5305,7063.4297,4.3791,2.2111,1.0954,0.092,2400.0,2400.0,-0.4717,-1.2638,4.1187,-75.0626 2019-06-03 15:40:35.920,141.5221,7063.457,4.3791,2.2111,1.0033,0.0471,2400.0,2400.0,-0.4863,-1.0108,4.1042,-75.0626 2019-06-03 15:40:35.940,141.5726,7063.5117,4.3791,2.2111,1.1438,0.1127,2400.0,2400.0,-0.4921,-0.8325,4.1068,-75.0626 2019-06-03 15:40:35.960,141.5726,7063.5391,4.3815,2.1882,0.8543,0.0365,2400.0,2400.0,-0.4629,-0.6326,4.1134,-75.0608 2019-06-03 15:40:35.980,141.5137,7063.5391,4.3815,2.1882,1.1239,0.0633,2400.0,2400.0,-0.46,-0.5172,4.1187,-75.0608 2019-06-03 15:40:36.000,141.5221,7063.5664,4.3921,2.184,1.1886,0.0658,2400.0,2400.0,-0.4658,-0.3713,4.1055,-75.0433 2019-06-03 15:40:36.020,141.5221,7063.5664,4.3924,2.1921,0.8761,0.0813,2400.0,2400.0,-0.46,-0.2586,4.1028,-75.0398 2019-06-03 15:40:36.040,141.5726,7063.5664,4.3924,2.1921,1.2744,0.0644,2400.0,2400.0,-0.4717,-0.2616,4.1161,-75.0398 2019-06-03 15:40:36.060,141.581,7063.5664,4.3924,2.1921,0.8957,0.0899,2400.0,2400.0,-0.4746,-0.225,4.0989,-75.0398 2019-06-03 15:40:36.080,141.5221,7063.5938,4.3972,2.2197,1.1483,0.0275,2400.0,2400.0,-0.4483,-0.2311,4.1333,-75.0276 2019-06-03 15:40:36.100,141.5221,7063.4844,4.4011,2.2631,1.1853,0.0059,2400.0,2400.0,-0.4541,-0.2433,4.1094,-75.0154 2019-06-03 15:40:36.120,141.5221,7063.5117,4.4011,2.2631,0.8857,0.1317,2400.0,2400.0,-0.4571,-0.2647,4.1161,-75.0154 2019-06-03 15:40:36.140,141.4211,7063.5938,4.4011,2.2631,1.1497,0.0293,2400.0,2400.0,-0.4921,-0.3347,4.1174,-75.0154 2019-06-03 15:40:36.160,141.4463,7063.5938,4.4021,2.3238,0.9341,0.1315,2400.0,2400.0,-0.4892,-0.3347,4.1214,-74.9996 2019-06-03 15:40:36.180,141.3873,7063.5664,4.4021,2.3238,1.223,-0.0102,2400.0,2400.0,-0.4746,-0.42,4.1253,-74.9996 2019-06-03 15:40:36.200,141.3873,7063.5938,4.4078,2.4432,1.1605,-0.0267,2400.0,2400.0,-0.4746,-0.4747,4.1227,-74.9856 2019-06-03 15:40:36.220,141.3873,7063.5664,4.4125,2.4883,0.946,0.1561,2400.0,2400.0,-0.4658,-0.5385,4.1108,-74.9752 2019-06-03 15:40:36.240,141.4379,7063.5117,4.4125,2.4883,1.0636,0.0267,2400.0,2400.0,-0.4688,-0.7478,4.1373,-74.9752 2019-06-03 15:40:36.260,141.4463,7063.5391,4.4125,2.4883,0.9552,0.1293,2400.0,2400.0,-0.4688,-0.9292,4.1293,-74.9752 2019-06-03 15:40:36.280,141.3789,7063.5664,4.4185,2.584,1.1154,-0.0127,2400.0,2400.0,-0.4541,-1.1766,4.1399,-74.9559 2019-06-03 15:40:36.300,141.3873,7063.5117,4.4227,2.6854,1.0063,-0.0059,2400.0,2400.0,-0.4629,-1.318,4.1161,-74.9349 2019-06-03 15:40:36.320,141.3873,7063.5117,4.4227,2.6854,0.9977,0.1587,2400.0,2400.0,-0.4541,-1.4531,4.1227,-74.9349 2019-06-03 15:40:36.340,141.4379,7063.5664,4.4227,2.6854,0.9097,-0.0007,2400.0,2400.0,-0.4688,-1.5969,4.1293,-74.9349 2019-06-03 15:40:36.360,141.4379,7063.5938,4.4301,2.7873,1.0074,0.1401,2400.0,2400.0,-0.4512,-1.6029,4.1373,-74.9122 2019-06-03 15:40:36.380,141.3789,7063.5938,4.4301,2.7873,1.0488,-0.0163,2400.0,2400.0,-0.4629,-1.5999,4.124,-74.9122 2019-06-03 15:40:36.400,141.3873,7063.6211,4.4378,2.9248,0.9523,-0.0046,2400.0,2340.0,-0.4658,-1.6149,4.1333,-74.8895 2019-06-03 15:40:36.420,141.3873,7063.6211,4.4442,2.9683,1.0443,0.1702,2400.0,2340.0,-0.4804,-1.6119,4.1161,-74.879 2019-06-03 15:40:36.440,141.4379,7063.6211,4.4442,2.9683,0.8088,0.0033,2400.0,2340.0,-0.4775,-1.6089,4.1373,-74.879 2019-06-03 15:40:36.460,141.4548,7063.5664,4.4442,2.9683,1.0647,0.1308,2400.0,2340.0,-0.4658,-1.6089,4.1293,-74.879 2019-06-03 15:40:36.480,141.3873,7063.5391,4.4487,3.0437,0.9415,-0.0061,2400.0,2340.0,-0.4571,-1.6089,4.1253,-74.8597 2019-06-03 15:40:36.500,141.3958,7063.457,4.4549,3.1102,0.8502,0.0125,2400.0,2340.0,-0.4629,-1.6089,4.132,-74.8388 2019-06-03 15:40:36.520,141.3873,7063.4028,4.4549,3.1102,1.2074,0.1424,2400.0,2340.0,-0.4571,-1.6059,4.1267,-74.8388 2019-06-03 15:40:36.540,141.4463,7063.4297,4.4549,3.1102,0.8916,0.0595,2400.0,2340.0,-0.4658,-1.6089,4.1306,-74.8388 2019-06-03 15:40:36.560,141.4379,7063.4844,4.4619,3.1739,1.1779,0.1037,2400.0,2340.0,-0.4688,-1.6029,4.124,-74.8195 2019-06-03 15:40:36.580,141.3873,7063.5391,4.4619,3.1739,0.929,0.0454,2400.0,2340.0,-0.4629,-1.5999,4.1253,-74.8195 2019-06-03 15:40:36.600,141.3873,7063.5391,4.4683,3.2576,0.916,0.0851,2400.0,2340.0,-0.46,-1.6029,4.1373,-74.7985 2019-06-03 15:40:36.620,141.3873,7063.5664,4.4706,3.2819,1.2111,0.0643,2400.0,2340.0,-0.46,-1.6029,4.1267,-74.7881 2019-06-03 15:40:36.640,141.4463,7063.6211,4.4706,3.2819,0.9205,0.1076,2400.0,2340.0,-0.4688,-1.6089,4.1333,-74.7881 2019-06-03 15:40:36.660,141.4463,7063.5938,4.4706,3.2819,1.1878,0.0687,2400.0,2340.0,-0.4775,-1.6089,4.1267,-74.7881 2019-06-03 15:40:36.680,141.3789,7063.6211,4.4729,3.3261,0.8524,0.0869,2400.0,2340.0,-0.4804,-1.6059,4.1214,-74.7688 2019-06-03 15:40:36.700,141.3958,7063.5938,4.4815,3.3653,0.9216,0.1466,2400.0,2340.0,-0.4834,-1.6119,4.1373,-74.7478 2019-06-03 15:40:36.720,141.3705,7063.5938,4.4815,3.3653,1.152,-0.0046,2400.0,2340.0,-0.4717,-1.594,4.128,-74.7478 2019-06-03 15:40:36.740,141.4463,7063.6211,4.4815,3.3653,0.8816,0.1747,2400.0,2340.0,-0.4658,-1.6269,4.1386,-74.7478 2019-06-03 15:40:36.760,141.4295,7063.6211,4.4869,3.4079,1.0913,-0.0141,2400.0,2340.0,-0.46,-1.6179,4.1187,-74.7286 2019-06-03 15:40:36.780,141.3873,7063.5938,4.4869,3.4079,0.9253,0.1591,2400.0,2340.0,-0.4541,-1.5999,4.1253,-74.7286 2019-06-03 15:40:36.800,141.3873,7063.5664,4.4925,3.4599,0.9948,0.1741,2400.0,2340.0,-0.4688,-1.6119,4.1359,-74.7146 2019-06-03 15:40:36.820,141.4042,7063.5391,4.4894,3.4732,1.0547,-0.0033,2400.0,2340.0,-0.4629,-1.6089,4.1267,-74.7041 2019-06-03 15:40:36.840,141.4379,7063.5664,4.4894,3.4732,0.9807,0.1453,2400.0,2340.0,-0.4688,-1.6089,4.1267,-74.7041 2019-06-03 15:40:36.860,141.4463,7063.5391,4.4894,3.4732,1.0421,-0.0088,2400.0,2340.0,-0.4834,-1.6089,4.1306,-74.7041 2019-06-03 15:40:36.880,141.3873,7063.4844,4.4967,3.5044,1.0151,0.149,2400.0,2340.0,-0.4746,-1.6059,4.1293,-74.6849 2019-06-03 15:40:36.900,141.3958,7063.3755,4.5049,3.538,1.1623,0.2055,2400.0,2340.0,-0.4775,-1.6089,4.1293,-74.6639 2019-06-03 15:40:36.920,141.3873,7063.4028,4.5049,3.538,0.9057,-0.0441,2400.0,2340.0,-0.4541,-1.6089,4.124,-74.6639 2019-06-03 15:40:36.940,141.4379,7063.3755,4.5049,3.538,1.1727,0.1769,2400.0,2340.0,-0.4571,-1.6059,4.132,-74.6639 2019-06-03 15:40:36.960,141.4295,7063.4028,4.5094,3.568,0.8169,-0.0192,2400.0,2340.0,-0.46,-1.6089,4.128,-74.6412 2019-06-03 15:40:36.980,141.3789,7063.457,4.5094,3.568,1.1853,0.1254,2400.0,2340.0,-0.46,-1.6059,4.132,-74.6412 2019-06-03 15:40:37.000,141.3958,7063.4844,4.5229,3.6097,1.1797,0.1646,2400.0,2340.0,-0.4775,-1.6119,4.128,-74.601 2019-06-03 15:40:37.020,141.3958,7063.457,4.5229,3.62,0.9101,0.0296,2400.0,2340.0,-0.4658,-1.6059,4.128,-74.5905 2019-06-03 15:40:37.040,141.4463,7063.5117,4.5229,3.62,1.2485,0.0942,2400.0,2340.0,-0.4688,-1.6059,4.132,-74.5905 2019-06-03 15:40:37.060,141.4463,7063.4844,4.5229,3.62,0.8088,0.0463,2400.0,2340.0,-0.4658,-1.6089,4.1306,-74.5905 2019-06-03 15:40:37.080,141.3873,7063.4297,4.5336,3.646,1.3236,0.1125,2400.0,2340.0,-0.4688,-1.6059,4.1121,-74.5642 2019-06-03 15:40:37.100,141.3958,7063.6484,4.5414,3.6704,1.298,0.105,2400.0,2340.0,-0.4658,-1.6089,4.1346,-74.5398 2019-06-03 15:40:37.120,141.3789,7064.6309,4.5414,3.6704,0.7078,0.0637,2400.0,2340.0,-0.4688,-1.6059,4.1333,-74.5398 2019-06-03 15:40:37.140,141.2945,7065.9404,4.5414,3.6704,1.3332,0.0476,2400.0,2340.0,-0.46,-1.6059,4.1425,-74.5398 2019-06-03 15:40:37.160,141.3199,7066.814,4.5423,3.6875,0.757,0.0878,2400.0,2340.0,-0.4746,-1.6089,4.1174,-74.5153 2019-06-03 15:40:37.180,141.2692,7068.1782,4.5423,3.6875,1.3654,0.0582,2400.0,2340.0,-0.4688,-1.6089,4.1174,-74.5153 2019-06-03 15:40:37.200,141.2523,7069.0786,4.556,3.722,1.2518,0.0518,2400.0,2340.0,-0.4688,-1.6299,4.1293,-74.4663 2019-06-03 15:40:37.220,141.2692,7069.9521,4.5578,3.7323,0.7781,0.1036,2400.0,2340.0,-0.4717,-1.6239,4.1267,-74.4541 2019-06-03 15:40:37.240,141.3114,7071.3711,4.5578,3.7323,1.254,-0.022,2400.0,2340.0,-0.4658,-1.6209,4.1373,-74.4541 2019-06-03 15:40:37.260,141.3199,7072.2168,4.5578,3.7323,0.8909,0.141,2400.0,2340.0,-0.4775,-1.6179,4.1227,-74.4541 2019-06-03 15:40:37.280,141.2607,7072.3262,4.565,3.7532,1.2355,-0.0156,2400.0,2340.0,-0.4717,-1.6149,4.1187,-74.4261 2019-06-03 15:40:37.300,141.2607,7072.2715,4.5676,3.7738,1.1749,-0.0053,2400.0,2340.0,-0.4629,-1.6209,4.1359,-74.3946 2019-06-03 15:40:37.320,141.2692,7072.2988,4.5676,3.7738,0.9807,0.1507,2400.0,2340.0,-0.4629,-1.6179,4.1359,-74.3946 2019-06-03 15:40:37.340,141.3114,7072.2441,4.5676,3.7738,1.1002,-0.044,2400.0,2340.0,-0.4571,-1.6119,4.132,-74.3946 2019-06-03 15:40:37.360,141.303,7072.2715,4.5713,3.7935,1.125,0.154,2400.0,2340.0,-0.46,-1.6119,4.1161,-74.3667 2019-06-03 15:40:37.380,141.2523,7072.2715,4.5713,3.7935,1.0887,0.0026,2400.0,2340.0,-0.4658,-1.6059,4.1187,-74.3667 2019-06-03 15:40:37.400,141.2523,7072.2441,4.5813,3.826,1.0307,-0.0065,2340.0,2400.0,-0.4746,-1.6149,4.1465,-74.323 2019-06-03 15:40:37.420,141.2607,7072.2441,4.587,3.8383,1.1305,0.1473,2340.0,2400.0,-0.4921,-1.6119,4.132,-74.3072 2019-06-03 15:40:37.440,141.3199,7072.2441,4.587,3.8383,0.9034,-0.0317,2340.0,2400.0,-0.4775,-1.6089,4.1333,-74.3072 2019-06-03 15:40:37.460,141.3199,7072.2715,4.587,3.8383,1.1009,0.1315,2340.0,2400.0,-0.4746,-1.6119,4.1161,-74.3072 2019-06-03 15:40:37.480,141.2607,7072.2441,4.5907,3.8592,0.9804,-0.0048,2340.0,2400.0,-0.4512,-1.6119,4.124,-74.2757 2019-06-03 15:40:37.500,141.2692,7072.2168,4.5955,3.8757,0.7877,0.0165,2340.0,2400.0,-0.46,-1.6119,4.1373,-74.2425 2019-06-03 15:40:37.520,141.2523,7072.2715,4.5955,3.8757,1.233,0.1549,2340.0,2400.0,-0.4571,-1.6149,4.1386,-74.2425 2019-06-03 15:40:37.540,141.303,7072.3262,4.5955,3.8757,0.8502,-0.0113,2340.0,2400.0,-0.4717,-1.6119,4.124,-74.2425 2019-06-03 15:40:37.560,141.3199,7072.3809,4.6034,3.897,1.2481,0.1234,2340.0,2400.0,-0.4658,-1.6119,4.1253,-74.2093 2019-06-03 15:40:37.580,141.2692,7072.3809,4.6034,3.897,0.8997,0.012,2340.0,2400.0,-0.4512,-1.6119,4.1293,-74.2093 2019-06-03 15:40:37.600,141.2776,7072.4082,4.607,3.9206,0.7344,0.0565,2340.0,2400.0,-0.4571,-1.6179,4.1399,-74.1638 2019-06-03 15:40:37.620,141.2692,7072.3809,4.6114,3.9294,1.2522,0.0922,2340.0,2400.0,-0.4746,-1.6149,4.1214,-74.1481 2019-06-03 15:40:37.640,141.303,7072.3809,4.6114,3.9294,0.8206,0.0649,2340.0,2400.0,-0.4921,-1.6059,4.1161,-74.1481 2019-06-03 15:40:37.660,141.3199,7072.3809,4.6114,3.9294,1.1509,0.0611,2340.0,2400.0,-0.4921,-1.6089,4.132,-74.1481 2019-06-03 15:40:37.680,141.2607,7072.3262,4.6127,3.9405,0.8676,0.1052,2340.0,2400.0,-0.4746,-1.6089,4.1333,-74.1149 2019-06-03 15:40:37.700,141.2607,7072.2441,4.6189,3.9584,0.8886,0.1275,2340.0,2400.0,-0.4746,-1.6119,4.1373,-74.0834 2019-06-03 15:40:37.720,141.2607,7072.1895,4.6189,3.9584,1.1849,0.0247,2340.0,2400.0,-0.4863,-1.6089,4.1227,-74.0834 2019-06-03 15:40:37.740,141.1762,7072.1353,4.6189,3.9584,0.9057,0.129,2340.0,2400.0,-0.4775,-1.6119,4.1147,-74.0834 2019-06-03 15:40:37.760,141.1846,7072.1353,4.6225,3.9776,1.1072,0.0357,2340.0,2400.0,-0.4804,-1.6149,4.124,-74.0484 2019-06-03 15:40:37.780,141.1254,7072.1079,4.6225,3.9776,0.9397,0.1178,2340.0,2400.0,-0.4717,-1.6089,4.1267,-74.0484 2019-06-03 15:40:37.800,141.1339,7072.1079,4.624,3.9999,1.0529,0.1453,2340.0,2400.0,-0.4688,-1.6149,4.1346,-74.0012 2019-06-03 15:40:37.820,141.1254,7072.0532,4.6238,4.0098,1.0259,0.0229,2340.0,2400.0,-0.4746,-1.6329,4.124,-73.9855 2019-06-03 15:40:37.840,141.1846,7072.1079,4.6238,4.0098,1.0743,0.1417,2340.0,2400.0,-0.4717,-1.591,4.124,-73.9855 2019-06-03 15:40:37.860,141.1846,7072.0806,4.6238,4.0098,1.0565,0.0211,2340.0,2400.0,-0.4863,-1.6119,4.12,-73.9855 2019-06-03 15:40:37.880,141.1254,7072.0259,4.6273,4.0268,1.0484,0.1024,2340.0,2400.0,-0.4571,-1.6059,4.1399,-73.9523 2019-06-03 15:40:37.900,141.1423,7071.9712,4.6314,4.0531,1.1816,0.1001,2340.0,2400.0,-0.4775,-1.6059,4.1267,-73.919 2019-06-03 15:40:37.920,141.1254,7071.9712,4.6314,4.0531,1.0458,0.0348,2340.0,2400.0,-0.4834,-1.6089,4.1214,-73.919 2019-06-03 15:40:37.940,141.1846,7072.0532,4.6314,4.0531,1.0591,0.1406,2340.0,2400.0,-0.4775,-1.6059,4.1333,-73.919 2019-06-03 15:40:37.960,141.1762,7072.1079,4.6334,4.0778,0.9878,0.014,2340.0,2400.0,-0.4863,-1.6029,4.1333,-73.8823 2019-06-03 15:40:37.980,141.1339,7072.1626,4.6334,4.0778,1.0835,0.1389,2340.0,2400.0,-0.4746,-1.6089,4.128,-73.8823 2019-06-03 15:40:38.000,141.1254,7072.1353,4.641,4.1144,1.1864,0.1455,2340.0,2400.0,-0.4688,-1.6089,4.1306,-73.8194 2019-06-03 15:40:38.020,141.1423,7072.0532,4.639,4.1241,0.8676,-0.0253,2340.0,2400.0,-0.4746,-1.6089,4.124,-73.8036 2019-06-03 15:40:38.040,141.1846,7072.0532,4.639,4.1241,1.1586,0.1487,2340.0,2400.0,-0.4717,-1.6059,4.1293,-73.8036 2019-06-03 15:40:38.060,141.1846,7072.0532,4.639,4.1241,0.9223,0.0167,2340.0,2400.0,-0.4863,-1.6179,4.1293,-73.8036 2019-06-03 15:40:38.080,141.1339,7072.0806,4.6446,4.151,1.0854,0.1144,2340.0,2400.0,-0.4629,-1.6179,4.1346,-73.7704 2019-06-03 15:40:38.100,141.1254,7071.9985,4.6476,4.1779,1.1516,0.0835,2340.0,2400.0,-0.4658,-1.6149,4.1293,-73.7372 2019-06-03 15:40:38.120,141.1169,7072.0259,4.6476,4.1779,0.9308,0.0532,2340.0,2400.0,-0.4658,-1.6119,4.128,-73.7372 2019-06-03 15:40:38.140,141.1846,7072.0259,4.6476,4.1779,1.1542,0.087,2340.0,2400.0,-0.4746,-1.6059,4.128,-73.7372 2019-06-03 15:40:38.160,141.1677,7072.0806,4.6492,4.2018,0.8794,0.0708,2340.0,2400.0,-0.4746,-1.6299,4.1333,-73.7075 2019-06-03 15:40:38.180,141.1423,7072.1895,4.6492,4.2018,1.1705,0.0826,2340.0,2400.0,-0.4775,-1.6179,4.128,-73.7075 2019-06-03 15:40:38.200,141.1254,7072.1895,4.6539,4.2404,1.1912,0.0585,2340.0,2400.0,-0.4804,-1.6209,4.132,-73.6673 2019-06-03 15:40:38.220,141.1254,7072.1626,4.6544,4.2517,0.8469,0.0578,2340.0,2400.0,-0.4921,-1.6179,4.132,-73.6533 2019-06-03 15:40:38.240,141.1762,7072.1626,4.6544,4.2517,1.2174,0.0886,2340.0,2400.0,-0.4775,-1.6179,4.1253,-73.6533 2019-06-03 15:40:38.260,141.1931,7072.1626,4.6544,4.2517,0.9312,0.0881,2340.0,2400.0,-0.4775,-1.6209,4.132,-73.6533 2019-06-03 15:40:38.280,141.1254,7072.1079,4.6571,4.2779,1.2437,0.0333,2340.0,2400.0,-0.4746,-1.6149,4.1253,-73.6218 2019-06-03 15:40:38.300,141.1339,7072.0532,4.6579,4.305,1.1546,0.0415,2340.0,2400.0,-0.4717,-1.6149,4.1373,-73.5938 2019-06-03 15:40:38.320,141.1169,7072.0806,4.6579,4.305,0.9009,0.084,2340.0,2400.0,-0.4863,-1.6209,4.1187,-73.5938 2019-06-03 15:40:38.340,141.1846,7072.0259,4.6579,4.305,1.2463,0.0706,2340.0,2400.0,-0.4658,-1.6209,4.1306,-73.5938 2019-06-03 15:40:38.360,141.1677,7072.1079,4.6569,4.3258,0.9682,0.1321,2340.0,2400.0,-0.4775,-1.7196,4.12,-73.5676 2019-06-03 15:40:38.380,141.1254,7072.1895,4.6569,4.3258,1.1594,0.0146,2340.0,2400.0,-0.4571,-1.7435,4.1306,-73.5676 2019-06-03 15:40:38.400,141.1169,7072.2715,4.6608,4.3585,1.0529,-0.0083,2400.0,2400.0,-0.4775,-1.8391,4.124,-73.5361 2019-06-03 15:40:38.420,141.1423,7072.2715,4.6659,4.3688,0.8524,0.1412,2400.0,2400.0,-0.4717,-1.9017,4.1373,-73.5239 2019-06-03 15:40:38.440,141.1762,7072.2988,4.6659,4.3688,1.1771,0.0005,2400.0,2400.0,-0.4746,-1.9405,4.124,-73.5239 2019-06-03 15:40:38.460,141.1846,7072.3535,4.6659,4.3688,1.0569,0.1707,2400.0,2400.0,-0.4746,-2.003,4.1333,-73.5239 2019-06-03 15:40:38.480,141.1254,7072.3535,4.669,4.3824,1.0436,-0.0289,2400.0,2400.0,-0.4658,-2.0,4.128,-73.4994 2019-06-03 15:40:38.500,141.1254,7072.2988,4.6689,4.3899,0.9966,-0.0284,2400.0,2400.0,-0.4658,-2.006,4.132,-73.4767 2019-06-03 15:40:38.520,141.1254,7072.3535,4.6689,4.3899,0.9489,0.1677,2400.0,2400.0,-0.4746,-2.0238,4.1214,-73.4767 2019-06-03 15:40:38.540,141.1846,7072.3809,4.6689,4.3899,1.1294,-0.0122,2400.0,2400.0,-0.4717,-2.0179,4.1227,-73.4767 2019-06-03 15:40:38.560,141.1762,7072.3535,4.6729,4.3952,1.0148,0.1828,2400.0,2400.0,-0.4717,-2.0179,4.128,-73.4539 2019-06-03 15:40:38.580,141.1254,7072.3262,4.6729,4.3952,1.0355,-0.006,2400.0,2400.0,-0.4863,-1.9494,4.1306,-73.4539 2019-06-03 15:40:38.600,141.1254,7072.3535,4.6767,4.3946,1.0329,0.0251,2400.0,2400.0,-0.4834,-1.9256,4.1359,-73.4329 2019-06-03 15:40:38.620,141.1339,7072.3262,4.683,4.394,1.0092,0.1259,2400.0,2400.0,-0.4892,-1.8629,4.12,-73.4225 2019-06-03 15:40:38.640,141.1846,7072.2988,4.683,4.394,1.0584,0.0101,2400.0,2400.0,-0.4571,-1.7764,4.132,-73.4225 2019-06-03 15:40:38.660,141.1846,7072.2168,4.683,4.394,1.1002,0.1635,2400.0,2400.0,-0.4717,-1.7047,4.132,-73.4225 2019-06-03 15:40:38.680,141.1339,7072.1626,4.6839,4.3883,0.9219,0.0125,2400.0,2400.0,-0.4746,-1.6059,4.132,-73.4015 2019-06-03 15:40:38.700,141.1423,7072.0532,4.6855,4.3831,1.0103,-0.0202,2400.0,2400.0,-0.4717,-1.585,4.1359,-73.3805 2019-06-03 15:40:38.720,141.1339,7072.0532,4.6855,4.3831,1.1124,0.1584,2400.0,2400.0,-0.4834,-1.564,4.1333,-73.3805 2019-06-03 15:40:38.740,141.1762,7071.9985,4.6855,4.3831,1.0122,0.0031,2400.0,2400.0,-0.4746,-1.549,4.1346,-73.3805 2019-06-03 15:40:38.760,141.1762,7071.9985,4.6906,4.3853,1.0987,0.1645,2400.0,2400.0,-0.4717,-1.549,4.128,-73.3595 2019-06-03 15:40:38.780,141.1254,7071.9985,4.6906,4.3853,0.9552,0.0189,2400.0,2400.0,-0.4746,-1.552,4.1227,-73.3595 2019-06-03 15:40:38.800,141.1254,7072.0532,4.6943,4.3914,0.9415,0.0079,2400.0,2400.0,-0.4717,-1.567,4.128,-73.3263 2019-06-03 15:40:38.820,141.1339,7072.0532,4.6996,4.398,1.0884,0.1185,2400.0,2400.0,-0.4834,-1.6508,4.1267,-73.3158 2019-06-03 15:40:38.840,141.1846,7072.0532,4.6996,4.398,1.0321,0.0026,2400.0,2400.0,-0.4658,-1.7286,4.1346,-73.3158 2019-06-03 15:40:38.860,141.1846,7072.0532,4.6996,4.398,1.1224,0.1611,2400.0,2400.0,-0.4746,-1.857,4.1293,-73.3158 2019-06-03 15:40:38.880,141.1254,7072.0532,4.7008,4.405,0.8653,0.033,2400.0,2400.0,-0.4717,-1.8987,4.128,-73.2931 2019-06-03 15:40:38.900,141.1339,7072.2988,4.705,4.4125,0.8554,0.046,2400.0,2400.0,-0.4775,-1.9196,4.1293,-73.2721 2019-06-03 15:40:38.920,141.1254,7073.2271,4.705,4.4125,1.1753,0.1047,2400.0,2400.0,-0.4746,-1.9971,4.124,-73.2721 2019-06-03 15:40:38.940,141.1846,7074.5645,4.705,4.4125,0.8857,0.0406,2400.0,2400.0,-0.4717,-1.9464,4.128,-73.2721 2019-06-03 15:40:38.960,141.1762,7075.4106,4.7081,4.4183,1.2174,0.1087,2400.0,2400.0,-0.4571,-1.9464,4.1373,-73.2494 2019-06-03 15:40:38.980,141.1254,7076.6934,4.7081,4.4183,0.8195,0.0559,2400.0,2400.0,-0.4717,-1.9285,4.1187,-73.2494 2019-06-03 15:40:39.000,141.1254,7077.6216,4.712,4.4165,0.869,0.0899,2400.0,2400.0,-0.46,-1.8689,4.1386,-73.2091 2019-06-03 15:40:39.020,141.1254,7078.4673,4.7148,4.4155,1.1568,0.0781,2400.0,2400.0,-0.4804,-1.8212,4.124,-73.1986 2019-06-03 15:40:39.040,141.1762,7079.7505,4.7148,4.4155,0.8494,0.0769,2400.0,2400.0,-0.4688,-1.7345,4.1452,-73.1986 2019-06-03 15:40:39.060,141.1846,7080.5693,4.7148,4.4155,1.2496,0.0573,2400.0,2400.0,-0.4892,-1.6837,4.1333,-73.1986 2019-06-03 15:40:39.080,141.1169,7080.7329,4.7184,4.4045,0.8772,0.0897,2400.0,2400.0,-0.4775,-1.6059,4.132,-73.1777 2019-06-03 15:40:39.100,141.1254,7080.6782,4.7237,4.4069,0.9367,0.1181,2400.0,2400.0,-0.4746,-1.6089,4.1253,-73.1567 2019-06-03 15:40:39.120,141.1254,7080.6509,4.7237,4.4069,1.1257,0.0287,2400.0,2400.0,-0.4571,-1.6089,4.1293,-73.1567 2019-06-03 15:40:39.140,141.1762,7080.6782,4.7237,4.4069,0.9049,0.1015,2400.0,2400.0,-0.4483,-1.5969,4.1346,-73.1567 2019-06-03 15:40:39.160,141.1762,7080.7603,4.7258,4.4059,1.2489,0.0189,2400.0,2400.0,-0.4571,-1.6508,4.132,-73.1357 2019-06-03 15:40:39.180,141.1254,7080.7876,4.7258,4.4059,0.9852,0.1483,2400.0,2400.0,-0.4775,-1.6628,4.1214,-73.1357 2019-06-03 15:40:39.200,141.1254,7080.7876,4.7296,4.4067,1.0455,0.1466,2400.0,2400.0,-0.4834,-1.6777,4.132,-73.1077 2019-06-03 15:40:39.220,141.1339,7080.7876,4.7279,4.4031,1.0011,-0.0369,2400.0,2400.0,-0.4834,-1.7316,4.1359,-73.0972 2019-06-03 15:40:39.240,141.1846,7080.7603,4.7279,4.4031,0.9297,0.1726,2400.0,2400.0,-0.4863,-1.7286,4.1227,-73.0972 2019-06-03 15:40:39.260,141.1846,7080.7329,4.7279,4.4031,1.058,-0.0294,2400.0,2400.0,-0.4746,-1.7286,4.1399,-73.0972 2019-06-03 15:40:39.280,141.1254,7080.7603,4.7344,4.4072,1.0432,0.1531,2400.0,2400.0,-0.4863,-1.7286,4.1121,-73.0745 2019-06-03 15:40:39.300,141.1254,7080.7329,4.7402,4.4091,1.048,0.1418,2400.0,2400.0,-0.4804,-1.7166,4.1267,-73.0518 2019-06-03 15:40:39.320,141.1169,7080.7876,4.7402,4.4091,0.9452,0.0051,2400.0,2400.0,-0.4804,-1.7226,4.1333,-73.0518 2019-06-03 15:40:39.340,141.1762,7080.7876,4.7402,4.4091,1.0473,0.1413,2400.0,2400.0,-0.4804,-1.7196,4.1267,-73.0518 2019-06-03 15:40:39.360,141.1677,7080.8423,4.7406,4.4069,0.9386,-0.011,2400.0,2400.0,-0.4804,-1.7226,4.1346,-73.0308 2019-06-03 15:40:39.380,141.1254,7080.9243,4.7406,4.4069,1.1531,0.1463,2400.0,2400.0,-0.4804,-1.7226,4.1267,-73.0308 2019-06-03 15:40:39.400,141.1339,7080.9243,4.7454,4.4065,1.1712,0.1371,2340.0,2400.0,-0.4804,-1.7226,4.1333,-73.0133 2019-06-03 15:40:39.420,141.1339,7080.9512,4.7445,4.4018,0.9301,0.0419,2340.0,2400.0,-0.4804,-1.7256,4.1306,-73.0028 2019-06-03 15:40:39.440,141.1846,7080.9785,4.7445,4.4018,1.1971,0.1342,2340.0,2400.0,-0.4746,-1.7226,4.1227,-73.0028 2019-06-03 15:40:39.460,141.1846,7080.9243,4.7445,4.4018,0.7751,0.0185,2340.0,2400.0,-0.4804,-1.7256,4.1399,-73.0028 2019-06-03 15:40:39.480,141.1254,7080.897,4.7493,4.4061,1.2078,0.1,2340.0,2400.0,-0.4775,-1.7286,4.12,-72.9818 2019-06-03 15:40:39.500,141.1254,7080.8423,4.7526,4.4053,1.2404,0.0933,2340.0,2400.0,-0.46,-1.7256,4.1253,-72.9591 2019-06-03 15:40:39.520,141.1169,7080.8423,4.7526,4.4053,0.916,0.0854,2340.0,2400.0,-0.4688,-1.7286,4.1253,-72.9591 2019-06-03 15:40:39.540,141.3367,7080.7876,4.7526,4.4053,1.2607,0.0844,2340.0,2400.0,-0.4688,-1.7286,4.1253,-72.9591 2019-06-03 15:40:39.560,141.303,7080.8149,4.7511,4.4024,0.7337,0.0607,2340.0,2400.0,-0.4717,-1.7256,4.1306,-72.9399 2019-06-03 15:40:39.580,141.2607,7080.8423,4.7511,4.4024,1.2278,0.0703,2340.0,2400.0,-0.4688,-1.7256,4.1359,-72.9399 2019-06-03 15:40:39.600,141.2523,7080.897,4.7609,4.4078,1.2762,0.057,2340.0,2400.0,-0.4629,-1.7256,4.124,-72.9171 2019-06-03 15:40:39.620,141.2692,7080.9243,4.7617,4.4081,0.8221,0.1369,2340.0,2400.0,-0.46,-1.7316,4.1306,-72.9049 2019-06-03 15:40:39.640,141.3114,7080.9785,4.7617,4.4081,1.2452,0.0398,2340.0,2400.0,-0.4746,-1.7256,4.1161,-72.9049 2019-06-03 15:40:39.660,141.3283,7080.9243,4.7617,4.4081,0.8672,0.1032,2340.0,2400.0,-0.4746,-1.7256,4.1359,-72.9049 2019-06-03 15:40:39.680,141.2607,7080.8696,4.7661,4.409,1.1298,0.0372,2340.0,2400.0,-0.4892,-1.7256,4.1267,-72.8839 2019-06-03 15:40:39.700,141.2607,7080.7876,4.7668,4.4088,1.2784,0.0164,2340.0,2400.0,-0.4688,-1.7286,4.1333,-72.8612 2019-06-03 15:40:39.720,141.2607,7080.8149,4.7668,4.4088,0.842,0.1619,2340.0,2400.0,-0.4688,-1.7316,4.1187,-72.8612 2019-06-03 15:40:39.740,141.3199,7080.897,4.7668,4.4088,1.274,-0.0236,2340.0,2400.0,-0.4629,-1.7226,4.1267,-72.8612 2019-06-03 15:40:39.760,141.3114,7080.9243,4.7678,4.4089,0.8783,0.1671,2340.0,2400.0,-0.4688,-1.7286,4.128,-72.8402 2019-06-03 15:40:39.780,141.2607,7080.9243,4.7678,4.4089,1.0858,-0.0375,2340.0,2400.0,-0.4688,-1.7256,4.128,-72.8402 2019-06-03 15:40:39.800,141.2692,7080.8696,4.7725,4.4112,1.1653,-0.065,2340.0,2400.0,-0.4717,-1.7226,4.1227,-72.8105 2019-06-03 15:40:39.820,141.2607,7080.7876,4.7805,4.4117,0.9682,0.2079,2340.0,2400.0,-0.4746,-1.7226,4.1293,-72.7982 2019-06-03 15:40:39.840,141.3114,7080.897,4.7805,4.4117,1.0994,-0.0339,2340.0,2400.0,-0.4775,-1.7256,4.1306,-72.7982 2019-06-03 15:40:39.860,141.3283,7080.8696,4.7805,4.4117,0.9989,0.1479,2340.0,2400.0,-0.4775,-1.7256,4.132,-72.7982 2019-06-03 15:40:39.880,141.2692,7080.8696,4.7847,4.4115,0.9656,0.0119,2340.0,2400.0,-0.4746,-1.7256,4.1214,-72.7773 2019-06-03 15:40:39.900,141.2607,7080.8149,4.7835,4.408,1.0943,-0.0263,2340.0,2400.0,-0.4688,-1.7256,4.1346,-72.7545 2019-06-03 15:40:39.920,141.2438,7080.8423,4.7835,4.408,1.0647,0.1799,2340.0,2400.0,-0.4775,-1.7256,4.1333,-72.7545 2019-06-03 15:40:39.940,141.3199,7080.8149,4.7835,4.408,0.9652,-0.0302,2340.0,2400.0,-0.4775,-1.7286,4.1253,-72.7545 2019-06-03 15:40:39.960,141.3114,7080.8149,4.7886,4.4096,1.1194,0.1643,2340.0,2400.0,-0.4717,-1.7256,4.1306,-72.7318 2019-06-03 15:40:39.980,141.2607,7080.8423,4.7886,4.4096,0.9197,0.0089,2340.0,2400.0,-0.4688,-1.7256,4.12,-72.7318 2019-06-03 15:40:40.000,141.2607,7080.8696,4.7938,4.4107,0.8868,-0.0265,2340.0,2400.0,-0.4571,-1.7256,4.132,-72.6881 2019-06-03 15:40:40.020,141.2607,7080.897,4.8025,4.4146,1.2285,0.1506,2340.0,2400.0,-0.4658,-1.7286,4.1346,-72.6758 2019-06-03 15:40:40.040,141.3114,7080.9785,4.8025,4.4146,0.7718,0.0311,2340.0,2400.0,-0.4658,-1.7196,4.1214,-72.6758 2019-06-03 15:40:40.060,141.3114,7081.0059,4.8025,4.4146,1.3025,0.0956,2340.0,2400.0,-0.4775,-1.7256,4.124,-72.6758 2019-06-03 15:40:40.080,141.2607,7080.9243,4.8036,4.417,0.7629,0.0656,2340.0,2400.0,-0.4804,-1.7375,4.1399,-72.6496 2019-06-03 15:40:40.100,141.2776,7080.8696,4.806,4.4188,0.8435,0.0247,2340.0,2400.0,-0.4775,-1.7345,4.1293,-72.6269 2019-06-03 15:40:40.120,141.2523,7080.9243,4.806,4.4188,1.3495,0.116,2340.0,2400.0,-0.4775,-1.7405,4.1346,-72.6269 2019-06-03 15:40:40.140,141.3114,7080.9785,4.806,4.4188,0.7148,0.031,2340.0,2400.0,-0.4921,-1.7316,4.1108,-72.6269 2019-06-03 15:40:40.160,141.3114,7081.0059,4.8127,4.4267,1.2829,0.0868,2340.0,2400.0,-0.4717,-1.7316,4.1306,-72.5989 2019-06-03 15:40:40.180,141.2607,7081.0059,4.8127,4.4267,0.8609,0.0996,2340.0,2400.0,-0.4688,-1.7345,4.1253,-72.5989 2019-06-03 15:40:40.200,141.2523,7081.0059,4.8137,4.4295,0.8284,0.0791,2340.0,2400.0,-0.4483,-1.7316,4.1359,-72.5779 2019-06-03 15:40:40.220,141.2776,7080.9785,4.8172,4.4347,1.24,0.0424,2340.0,2400.0,-0.46,-1.7345,4.132,-72.5657 2019-06-03 15:40:40.240,141.3114,7080.9512,4.8172,4.4347,0.8199,0.1272,2340.0,2400.0,-0.4717,-1.7375,4.1227,-72.5657 2019-06-03 15:40:40.260,141.3199,7080.897,4.8172,4.4347,1.3051,-0.0057,2340.0,2400.0,-0.4717,-1.7345,4.1333,-72.5657 2019-06-03 15:40:40.280,141.2692,7080.9243,4.8182,4.4366,0.933,0.1697,2340.0,2400.0,-0.4863,-1.7375,4.1227,-72.5412 2019-06-03 15:40:40.300,141.2607,7080.8423,4.8264,4.4471,0.8783,0.1378,2340.0,2400.0,-0.4688,-1.7345,4.1359,-72.5167 2019-06-03 15:40:40.320,141.2607,7080.8696,4.8264,4.4471,1.1856,-0.0143,2340.0,2400.0,-0.4717,-1.7584,4.132,-72.5167 2019-06-03 15:40:40.340,141.4632,7080.8423,4.8264,4.4471,0.882,0.1479,2340.0,2400.0,-0.4775,-1.7166,4.1081,-72.5167 2019-06-03 15:40:40.360,141.4295,7080.8423,4.8335,4.4558,1.1068,-0.0336,2340.0,2400.0,-0.4746,-1.7256,4.1306,-72.4905 2019-06-03 15:40:40.380,141.3873,7080.8149,4.8335,4.4558,0.9726,0.174,2340.0,2400.0,-0.4746,-1.7614,4.1333,-72.4905 2019-06-03 15:40:40.400,141.3958,7080.8423,4.8394,4.4655,0.9911,0.1151,2400.0,2340.0,-0.4658,-1.7166,4.124,-72.4608 2019-06-03 15:40:40.420,141.3873,7080.8696,4.8388,4.465,1.0122,-0.0036,2400.0,2340.0,-0.4658,-1.7196,4.124,-72.4485 2019-06-03 15:40:40.440,141.4379,7080.897,4.8388,4.465,1.1383,0.1305,2400.0,2340.0,-0.46,-1.7196,4.1227,-72.4485 2019-06-03 15:40:40.460,141.4379,7080.8696,4.8388,4.465,1.0832,-0.0142,2400.0,2340.0,-0.4688,-1.7196,4.128,-72.4485 2019-06-03 15:40:40.480,141.3789,7080.8696,4.845,4.4762,1.0284,0.1861,2400.0,2340.0,-0.4804,-1.7286,4.132,-72.4205 2019-06-03 15:40:40.500,141.3958,7080.7876,4.8501,4.486,1.1139,0.0967,2400.0,2340.0,-0.4834,-1.7256,4.128,-72.3943 2019-06-03 15:40:40.520,141.3873,7080.7876,4.8501,4.486,0.9608,-0.0046,2400.0,2340.0,-0.4863,-1.7316,4.124,-72.3943 2019-06-03 15:40:40.540,141.2945,7080.8696,4.8501,4.486,1.0928,0.1368,2400.0,2340.0,-0.4804,-1.7256,4.124,-72.3943 2019-06-03 15:40:40.560,141.3199,7080.897,4.8564,4.4905,0.9719,-0.0081,2400.0,2340.0,-0.4688,-1.7256,4.1373,-72.3681 2019-06-03 15:40:40.580,141.2607,7080.9243,4.8564,4.4905,1.2784,0.1607,2400.0,2340.0,-0.4717,-1.7316,4.124,-72.3681 2019-06-03 15:40:40.600,141.2523,7080.9512,4.861,4.5018,1.2489,0.1029,2400.0,2340.0,-0.4629,-1.7226,4.1253,-72.3471 2019-06-03 15:40:40.620,141.2692,7080.897,4.8604,4.5016,0.8047,0.0119,2400.0,2340.0,-0.4717,-1.7256,4.1293,-72.3349 2019-06-03 15:40:40.640,141.3199,7081.0059,4.8604,4.5016,1.2296,0.1045,2400.0,2340.0,-0.4775,-1.7375,4.128,-72.3349 2019-06-03 15:40:40.660,141.3199,7080.9512,4.8604,4.5016,0.831,0.055,2400.0,2340.0,-0.4775,-1.7316,4.1359,-72.3349 2019-06-03 15:40:40.680,141.2607,7081.0059,4.8669,4.5118,1.2725,0.0717,2400.0,2340.0,-0.4746,-1.7345,4.1253,-72.3051 2019-06-03 15:40:40.700,141.2692,7081.2515,4.8691,4.5158,1.2093,0.0819,2400.0,2340.0,-0.4746,-1.7316,4.1214,-72.2789 2019-06-03 15:40:40.720,141.2523,7082.207,4.8691,4.5158,0.7648,0.0613,2400.0,2340.0,-0.4804,-1.7316,4.1359,-72.2789 2019-06-03 15:40:40.740,141.3114,7083.5996,4.8691,4.5158,1.1919,0.0771,2400.0,2340.0,-0.4804,-1.7345,4.1293,-72.2789 2019-06-03 15:40:40.760,141.303,7084.4185,4.8705,4.5207,0.8465,0.0981,2400.0,2340.0,-0.4746,-1.7345,4.1267,-72.2527 2019-06-03 15:40:40.780,141.2607,7085.729,4.8705,4.5207,1.1812,0.0217,2400.0,2340.0,-0.4658,-1.7345,4.1227,-72.2527 2019-06-03 15:40:40.800,141.2607,7086.521,4.8751,4.5326,1.1938,0.0104,2400.0,2340.0,-0.4688,-1.7345,4.128,-72.2282 2019-06-03 15:40:40.820,141.2607,7087.3672,4.8801,4.5383,0.926,0.161,2400.0,2340.0,-0.4863,-1.7316,4.132,-72.2142 2019-06-03 15:40:40.840,141.3114,7088.7598,4.8801,4.5383,1.0932,0.0168,2400.0,2340.0,-0.4834,-1.7316,4.128,-72.2142 2019-06-03 15:40:40.860,141.3199,7089.5513,4.8801,4.5383,1.0395,0.1689,2400.0,2340.0,-0.4746,-1.7106,4.1187,-72.2142 2019-06-03 15:40:40.880,141.2607,7089.688,4.8815,4.5446,1.0314,-0.0259,2400.0,2340.0,-0.4658,-1.7196,4.1253,-72.1897 2019-06-03 15:40:40.900,141.2692,7089.5786,4.8799,4.5481,1.0994,-0.0516,2400.0,2340.0,-0.4688,-1.7196,4.1253,-72.1653 2019-06-03 15:40:40.920,141.2523,7089.5513,4.8799,4.5481,1.0284,0.1589,2400.0,2340.0,-0.4717,-1.7196,4.1412,-72.1653 2019-06-03 15:40:40.940,141.1508,7089.5786,4.8799,4.5481,1.0055,0.0043,2400.0,2340.0,-0.4834,-1.7495,4.1174,-72.1653 2019-06-03 15:40:40.960,141.1846,7089.6606,4.8821,4.5549,1.021,0.1352,2400.0,2340.0,-0.4746,-1.7405,4.1161,-72.1408 2019-06-03 15:40:40.980,141.1254,7089.7153,4.8821,4.5549,0.9038,-0.01,2400.0,2340.0,-0.4658,-1.7435,4.1399,-72.1408 2019-06-03 15:40:41.000,141.1254,7089.7153,4.8863,4.5692,0.9878,-0.0107,2400.0,2340.0,-0.4717,-1.7435,4.1253,-72.0936 2019-06-03 15:40:41.020,141.1339,7089.7153,4.893,4.5758,1.0521,0.1505,2400.0,2340.0,-0.46,-1.7375,4.1267,-72.0796 2019-06-03 15:40:41.040,141.1762,7089.606,4.893,4.5758,0.9704,0.0219,2400.0,2340.0,-0.4717,-1.7345,4.1134,-72.0796 2019-06-03 15:40:41.060,141.21,7089.606,4.893,4.5758,1.115,0.1367,2400.0,2340.0,-0.4688,-1.7286,4.1333,-72.0796 2019-06-03 15:40:41.080,141.1339,7089.6333,4.894,4.5842,0.879,0.0324,2400.0,2340.0,-0.4688,-1.7375,4.1359,-72.0534 2019-06-03 15:40:41.100,141.1339,7089.5513,4.8975,4.5845,0.9308,-0.0053,2400.0,2340.0,-0.4688,-1.7286,4.1306,-72.0289 2019-06-03 15:40:41.120,141.1169,7089.5513,4.8975,4.5845,1.203,0.147,2400.0,2340.0,-0.46,-1.7286,4.1267,-72.0289 2019-06-03 15:40:41.140,141.1762,7089.5786,4.8975,4.5845,0.8872,0.0224,2400.0,2340.0,-0.4775,-1.7345,4.1227,-72.0289 2019-06-03 15:40:41.160,141.1593,7089.6333,4.9053,4.5909,1.0673,0.1049,2400.0,2340.0,-0.4804,-1.7316,4.1373,-72.0009 2019-06-03 15:40:41.180,141.1339,7089.5786,4.9109,4.5943,0.8857,0.0348,2400.0,2340.0,-0.4804,-1.7316,4.132,-71.9887 2019-06-03 15:40:41.200,141.1339,7089.5786,4.9095,4.5935,0.9534,0.0148,2400.0,2340.0,-0.4775,-1.7316,4.1227,-71.9747 2019-06-03 15:40:41.220,141.1423,7089.4966,4.9145,4.598,1.2318,0.1131,2400.0,2340.0,-0.4571,-1.7316,4.132,-71.9607 2019-06-03 15:40:41.240,141.1846,7089.5239,4.9145,4.598,0.9097,0.0755,2400.0,2340.0,-0.4571,-1.7316,4.1267,-71.9607 2019-06-03 15:40:41.260,141.1762,7089.5239,4.9145,4.598,1.1142,0.0763,2400.0,2340.0,-0.4571,-1.7286,4.1346,-71.9607 2019-06-03 15:40:41.280,141.1169,7089.5513,4.916,4.5943,0.9548,0.082,2400.0,2340.0,-0.4746,-1.7316,4.1306,-71.9362 2019-06-03 15:40:41.300,141.1339,7089.4966,4.9213,4.5983,0.9456,0.0637,2400.0,2340.0,-0.4804,-1.7286,4.1293,-71.91 2019-06-03 15:40:41.320,141.1169,7089.4966,4.9213,4.5983,1.2511,0.0518,2400.0,2340.0,-0.4892,-1.7286,4.128,-71.91 2019-06-03 15:40:41.340,141.0406,7089.5239,4.9213,4.5983,0.8676,0.0974,2400.0,2340.0,-0.4775,-1.7256,4.1306,-71.91 2019-06-03 15:40:41.360,141.0661,7089.606,4.9266,4.6034,1.1771,0.0742,2400.0,2340.0,-0.4571,-1.7256,4.1346,-71.882 2019-06-03 15:40:41.380,141.0067,7089.688,4.9266,4.6034,0.8957,0.0746,2400.0,2340.0,-0.4512,-1.7375,4.1253,-71.882 2019-06-03 15:40:41.400,140.9982,7089.7427,4.9288,4.6046,0.8849,0.0931,2400.0,2400.0,-0.4541,-1.7256,4.1174,-71.8365 2019-06-03 15:40:41.420,140.9982,7089.7969,4.9301,4.6085,1.1645,0.0324,2400.0,2400.0,-0.4658,-1.7226,4.1306,-71.8226 2019-06-03 15:40:41.440,141.0491,7089.7695,4.9301,4.6085,0.8032,0.1243,2400.0,2400.0,-0.4717,-1.7226,4.1306,-71.8226 2019-06-03 15:40:41.460,141.0491,7089.7427,4.9301,4.6085,1.2559,0.0128,2400.0,2400.0,-0.4746,-1.7196,4.1306,-71.8226 2019-06-03 15:40:41.480,141.0152,7089.6606,4.9308,4.6153,0.8639,0.1098,2400.0,2400.0,-0.4775,-1.7256,4.1293,-71.7928 2019-06-03 15:40:41.500,140.9982,7089.5786,4.9357,4.6216,0.8546,0.1335,2400.0,2400.0,-0.4834,-1.7166,4.1227,-71.7649 2019-06-03 15:40:41.520,140.9982,7089.5786,4.9357,4.6216,1.1742,0.0051,2400.0,2400.0,-0.4688,-1.7226,4.1373,-71.7649 2019-06-03 15:40:41.540,141.0576,7089.6333,4.9357,4.6216,0.8502,0.1474,2400.0,2400.0,-0.4658,-1.7375,4.1306,-71.7649 2019-06-03 15:40:41.560,141.0406,7089.6333,4.9389,4.6306,1.2522,0.0077,2400.0,2400.0,-0.4512,-1.7196,4.1306,-71.7369 2019-06-03 15:40:41.580,141.0152,7089.5513,4.9389,4.6306,0.9511,0.1271,2400.0,2400.0,-0.46,-1.7256,4.1147,-71.7369 2019-06-03 15:40:41.600,140.9898,7089.5786,4.9406,4.6486,1.0958,0.1567,2400.0,2400.0,-0.4571,-1.7256,4.124,-71.6862 2019-06-03 15:40:41.620,141.0067,7089.4692,4.9393,4.6519,1.0895,-0.0288,2400.0,2400.0,-0.46,-1.7196,4.1386,-71.6722 2019-06-03 15:40:41.640,141.0576,7089.415,4.9393,4.6519,0.9057,0.1772,2400.0,2400.0,-0.4717,-1.7226,4.132,-71.6722 2019-06-03 15:40:41.660,141.0576,7089.4419,4.9393,4.6519,1.0909,-0.0542,2400.0,2400.0,-0.4804,-1.7226,4.128,-71.6722 2019-06-03 15:40:41.680,140.9982,7089.4419,4.9432,4.6669,1.0628,0.1692,2400.0,2400.0,-0.4775,-1.7226,4.1293,-71.6425 2019-06-03 15:40:41.700,141.0067,7089.3057,4.9494,4.6829,1.0817,0.1772,2400.0,2400.0,-0.4775,-1.7196,4.1147,-71.6127 2019-06-03 15:40:41.720,140.9982,7089.3057,4.9494,4.6829,1.017,-0.0274,2400.0,2400.0,-0.4629,-1.7286,4.1412,-71.6127 2019-06-03 15:40:41.740,141.0576,7089.2783,4.9494,4.6829,1.027,0.1351,2400.0,2400.0,-0.4658,-1.7256,4.1306,-71.6127 2019-06-03 15:40:41.760,141.0576,7089.2783,4.9507,4.7006,0.8912,-0.0086,2400.0,2400.0,-0.4717,-1.7256,4.1214,-71.583 2019-06-03 15:40:41.780,141.0067,7089.333,4.9507,4.7006,1.1176,0.1392,2400.0,2400.0,-0.4717,-1.7226,4.1333,-71.583 2019-06-03 15:40:41.800,140.9982,7089.3877,4.9564,4.7255,1.2211,0.1535,2400.0,2400.0,-0.4717,-1.7256,4.124,-71.5375 2019-06-03 15:40:41.820,141.0067,7089.3877,4.9532,4.731,0.8372,0.0131,2400.0,2400.0,-0.4541,-1.7226,4.1373,-71.5218 2019-06-03 15:40:41.840,141.0491,7089.415,4.9532,4.731,1.2307,0.1064,2400.0,2400.0,-0.4688,-1.7286,4.1253,-71.5218 2019-06-03 15:40:41.860,141.0576,7089.333,4.9532,4.731,0.7954,0.0359,2400.0,2400.0,-0.4746,-1.7226,4.128,-71.5218 2019-06-03 15:40:41.880,140.9982,7089.3877,4.9594,4.7509,1.3054,0.0953,2400.0,2400.0,-0.4804,-1.7226,4.1293,-71.4903 2019-06-03 15:40:41.900,140.9982,7089.333,4.9633,4.7682,1.2204,0.0698,2400.0,2400.0,-0.4775,-1.7226,4.1227,-71.4606 2019-06-03 15:40:41.920,140.9982,7089.3877,4.9633,4.7682,0.8805,0.0998,2400.0,2400.0,-0.4483,-1.7226,4.1478,-71.4606 2019-06-03 15:40:41.940,140.9048,7089.415,4.9633,4.7682,1.2688,0.0337,2400.0,2400.0,-0.4804,-1.7226,4.1187,-71.4606 2019-06-03 15:40:41.960,140.9133,7089.4692,4.9617,4.7806,0.8776,0.1038,2400.0,2400.0,-0.4746,-1.7226,4.1253,-71.4326 2019-06-03 15:40:41.980,140.8623,7089.4966,4.9617,4.7806,1.267,0.0293,2400.0,2400.0,-0.4834,-1.7196,4.124,-71.4326 2019-06-03 15:40:42.000,140.8623,7089.4966,4.969,4.8042,1.1394,0.0003,2400.0,2400.0,-0.4717,-1.7256,4.1359,-71.3714 2019-06-03 15:40:42.020,140.8623,7089.4966,4.973,4.8167,0.9541,0.1365,2400.0,2400.0,-0.4688,-1.7256,4.1333,-71.3557 2019-06-03 15:40:42.040,140.9048,7089.5513,4.973,4.8167,1.135,-0.0523,2400.0,2400.0,-0.4629,-1.7286,4.128,-71.3557 2019-06-03 15:40:42.060,140.9218,7089.5513,4.973,4.8167,1.0665,0.1758,2400.0,2400.0,-0.46,-1.7256,4.1253,-71.3557 2019-06-03 15:40:42.080,140.8623,7089.5239,4.976,4.8286,1.0551,-0.0325,2400.0,2400.0,-0.4571,-1.7256,4.1306,-71.3277 2019-06-03 15:40:42.100,140.8708,7089.7427,4.9762,4.8372,0.9438,-0.031,2400.0,2400.0,-0.46,-1.7226,4.1253,-71.2997 2019-06-03 15:40:42.120,140.8623,7090.6436,4.9762,4.8372,1.0591,0.1638,2400.0,2400.0,-0.46,-1.7226,4.1386,-71.2997 2019-06-03 15:40:42.140,140.9133,7091.8452,4.9762,4.8372,0.9223,-0.052,2400.0,2400.0,-0.4775,-1.7226,4.128,-71.2997 2019-06-03 15:40:42.160,140.9133,7092.7188,4.9818,4.8547,1.1679,0.1724,2400.0,2400.0,-0.4863,-1.7196,4.1253,-71.2718 2019-06-03 15:40:42.180,140.8623,7094.0298,4.9818,4.8547,0.848,-0.0074,2400.0,2400.0,-0.4834,-1.7256,4.1386,-71.2718 2019-06-03 15:40:42.200,140.8538,7094.8491,4.9801,4.8708,0.7444,0.0115,2400.0,2400.0,-0.4658,-1.7196,4.1253,-71.235 2019-06-03 15:40:42.220,140.8708,7095.6953,4.987,4.8802,1.2085,0.1408,2400.0,2400.0,-0.4571,-1.7196,4.1333,-71.2228 2019-06-03 15:40:42.240,140.9048,7096.979,4.987,4.8802,0.8091,0.0259,2400.0,2400.0,-0.4571,-1.7226,4.1267,-71.2228 2019-06-03 15:40:42.260,140.9303,7097.7437,4.987,4.8802,1.1849,0.0814,2400.0,2400.0,-0.4746,-1.7226,4.1227,-71.2228 2019-06-03 15:40:42.280,140.8623,7097.7983,4.984,4.8854,0.8003,0.0954,2400.0,2400.0,-0.4834,-1.7196,4.1346,-71.1983 2019-06-03 15:40:42.300,140.8708,7097.7983,4.9865,4.8945,0.7677,0.1203,2400.0,2400.0,-0.4863,-1.7286,4.1373,-71.1739 2019-06-03 15:40:42.320,140.8538,7097.8257,4.9865,4.8945,1.2659,0.0446,2400.0,2400.0,-0.4863,-1.7196,4.128,-71.1739 2019-06-03 15:40:42.340,140.7687,7097.8257,4.9865,4.8945,0.7489,0.1045,2400.0,2400.0,-0.4658,-1.7166,4.128,-71.1739 2019-06-03 15:40:42.360,140.7772,7097.9346,4.9916,4.9059,1.3202,0.0096,2400.0,2400.0,-0.4775,-1.7256,4.1094,-71.1494 2019-06-03 15:40:42.380,140.7261,7097.9893,4.9916,4.9059,0.7204,0.1255,2400.0,2400.0,-0.4541,-1.7226,4.1478,-71.1494 2019-06-03 15:40:42.400,140.7346,7097.9893,4.99,4.9108,0.7248,0.1479,2340.0,2400.0,-0.4658,-1.7226,4.132,-71.1266 2019-06-03 15:40:42.420,140.7261,7097.9893,4.989,4.9133,1.3254,-0.0086,2340.0,2400.0,-0.4717,-1.7196,4.1267,-71.1161 2019-06-03 15:40:42.440,140.7772,7098.0713,4.989,4.9133,0.8735,0.1651,2340.0,2400.0,-0.4775,-1.7226,4.1214,-71.1161 2019-06-03 15:40:42.460,140.7943,7098.0713,4.989,4.9133,1.1531,-0.0062,2340.0,2400.0,-0.4717,-1.7226,4.1253,-71.1161 2019-06-03 15:40:42.480,140.7261,7098.0439,4.9907,4.9182,0.9818,0.1591,2340.0,2400.0,-0.4688,-1.7226,4.1399,-71.0934 2019-06-03 15:40:42.500,140.7346,7098.0166,4.996,4.9268,0.9859,0.1798,2340.0,2400.0,-0.4746,-1.7226,4.1293,-71.0724 2019-06-03 15:40:42.520,140.7176,7098.0166,4.996,4.9268,1.132,-0.0521,2340.0,2400.0,-0.4834,-1.7226,4.1147,-71.0724 2019-06-03 15:40:42.540,140.7772,7097.9619,4.996,4.9268,0.9171,0.1887,2340.0,2400.0,-0.4892,-1.7196,4.132,-71.0724 2019-06-03 15:40:42.560,140.7857,7097.9893,5.0011,4.934,1.0654,-0.0345,2340.0,2400.0,-0.4892,-1.7196,4.1253,-71.0497 2019-06-03 15:40:42.580,140.7346,7098.0166,4.9973,4.9322,1.1194,0.1884,2340.0,2400.0,-0.4804,-1.7196,4.1346,-71.0322 2019-06-03 15:40:42.600,140.7346,7098.0439,5.0024,4.9359,1.0429,0.1988,2340.0,2400.0,-0.4658,-1.7226,4.1346,-71.0235 2019-06-03 15:40:42.620,140.7431,7098.0439,4.9986,4.9335,1.0192,-0.043,2340.0,2400.0,-0.4834,-1.7196,4.12,-71.0147 2019-06-03 15:40:42.640,140.7772,7098.0713,4.9986,4.9335,1.1405,0.1823,2340.0,2400.0,-0.4892,-1.7226,4.1227,-71.0147 2019-06-03 15:40:42.660,140.7772,7098.0713,4.9986,4.9335,0.8938,0.0181,2340.0,2400.0,-0.4951,-1.7196,4.1346,-71.0147 2019-06-03 15:40:42.680,140.7261,7097.9619,5.0042,4.9368,1.1719,0.1329,2340.0,2400.0,-0.4863,-1.7196,4.1425,-70.9955 2019-06-03 15:40:42.700,140.7346,7097.9072,5.0072,4.936,1.2145,0.121,2340.0,2400.0,-0.4717,-1.7226,4.1293,-70.978 2019-06-03 15:40:42.720,140.7176,7097.8799,5.0072,4.936,0.9182,0.0201,2340.0,2400.0,-0.4746,-1.7226,4.1174,-70.978 2019-06-03 15:40:42.740,140.6323,7097.9072,5.0072,4.936,1.1926,0.1359,2340.0,2400.0,-0.4717,-1.7226,4.124,-70.978 2019-06-03 15:40:42.760,140.6494,7097.9893,5.0092,4.937,0.8413,0.0674,2340.0,2400.0,-0.4746,-1.7226,4.1253,-70.9605 2019-06-03 15:40:42.780,140.5896,7097.9893,5.0092,4.937,1.2607,0.0688,2340.0,2400.0,-0.4775,-1.7226,4.1399,-70.9605 2019-06-03 15:40:42.800,140.5896,7097.9893,5.0126,4.9333,1.2341,0.0829,2340.0,2400.0,-0.4863,-1.7226,4.1267,-70.9326 2019-06-03 15:40:42.820,140.5896,7097.9619,5.0122,4.9317,0.7662,0.0577,2340.0,2400.0,-0.4863,-1.7226,4.1214,-70.9238 2019-06-03 15:40:42.840,140.6408,7097.9893,5.0122,4.9317,1.3213,0.0555,2340.0,2400.0,-0.4863,-1.7226,4.1359,-70.9238 2019-06-03 15:40:42.860,140.6494,7098.0439,5.0122,4.9317,0.7795,0.1389,2340.0,2400.0,-0.4804,-1.7226,4.124,-70.9238 2019-06-03 15:40:42.880,140.5981,7098.0439,5.015,4.9305,1.2293,0.0015,2340.0,2400.0,-0.4629,-1.7256,4.1346,-70.9081 2019-06-03 15:40:42.900,140.5981,7097.9893,5.0135,4.9309,1.2796,0.0109,2340.0,2400.0,-0.4717,-1.7226,4.12,-70.8906 2019-06-03 15:40:42.920,140.5811,7097.9893,5.0135,4.9309,0.8424,0.1038,2340.0,2400.0,-0.4746,-1.7196,4.1227,-70.8906 2019-06-03 15:40:42.940,140.6579,7097.9893,5.0135,4.9309,1.304,0.0234,2340.0,2400.0,-0.4951,-1.7256,4.1306,-70.8906 2019-06-03 15:40:42.960,140.6494,7097.9619,5.0137,4.9274,0.8472,0.1698,2340.0,2400.0,-0.4951,-1.7226,4.128,-70.8749 2019-06-03 15:40:42.980,140.5981,7097.9346,5.0137,4.9274,1.1076,-0.0442,2340.0,2400.0,-0.4717,-1.7226,4.132,-70.8749 2019-06-03 15:40:43.000,140.5981,7097.9346,5.0211,4.9262,1.1009,-0.0489,2340.0,2400.0,-0.4804,-1.7226,4.1187,-70.8311 2019-06-03 15:40:43.020,140.6067,7097.9072,5.0259,4.9325,0.9678,0.1732,2340.0,2400.0,-0.4775,-1.7196,4.1227,-70.8206 2019-06-03 15:40:43.040,140.6408,7097.8799,5.0259,4.9325,1.0577,-0.0317,2340.0,2400.0,-0.4746,-1.7196,4.1333,-70.8206 2019-06-03 15:40:43.060,140.6494,7097.8799,5.0259,4.9325,1.0155,0.1886,2340.0,2400.0,-0.4804,-1.7256,4.1227,-70.8206 2019-06-03 15:40:43.080,140.5896,7097.8799,5.0259,4.9347,0.9519,-0.0338,2340.0,2400.0,-0.4571,-1.7196,4.132,-70.7997 2019-06-03 15:40:43.100,140.6067,7097.771,5.025,4.9318,0.8702,-0.049,2340.0,2400.0,-0.4717,-1.7196,4.1174,-70.7804 2019-06-03 15:40:43.120,140.5896,7097.771,5.025,4.9318,1.0943,0.1481,2340.0,2400.0,-0.4717,-1.7196,4.124,-70.7804 2019-06-03 15:40:43.140,140.6494,7097.8257,5.025,4.9318,0.9164,0.0074,2340.0,2400.0,-0.4688,-1.7196,4.1333,-70.7804 2019-06-03 15:40:43.160,140.6408,7097.8799,5.0308,4.9298,1.2241,0.1741,2340.0,2400.0,-0.4775,-1.7196,4.1174,-70.7577 2019-06-03 15:40:43.180,140.5981,7097.8525,5.0308,4.9298,0.8868,-0.0185,2340.0,2400.0,-0.4688,-1.7196,4.1386,-70.7577 2019-06-03 15:40:43.200,140.5896,7097.9072,5.0301,4.9283,0.7788,-0.0067,2340.0,2400.0,-0.4834,-1.7196,4.1187,-70.7332 2019-06-03 15:40:43.220,140.5981,7097.9072,5.0342,4.9295,1.1693,0.1067,2340.0,2400.0,-0.4717,-1.7226,4.1253,-70.721 2019-06-03 15:40:43.240,140.6494,7097.8525,5.0342,4.9295,0.8213,0.0514,2340.0,2400.0,-0.4717,-1.7226,4.132,-70.721 2019-06-03 15:40:43.260,140.6494,7097.8799,5.0342,4.9295,1.247,0.0993,2340.0,2400.0,-0.4717,-1.7226,4.1174,-70.721 2019-06-03 15:40:43.280,140.5981,7097.9346,5.0314,4.9267,0.6845,0.0709,2340.0,2400.0,-0.4541,-1.7226,4.1412,-70.6982 2019-06-03 15:40:43.300,140.5981,7097.8525,5.0339,4.9228,0.8117,0.1494,2340.0,2400.0,-0.4834,-1.7226,4.1147,-70.6738 2019-06-03 15:40:43.320,140.5896,7097.8799,5.0339,4.9228,1.2496,0.0232,2340.0,2400.0,-0.4717,-1.7226,4.1306,-70.6738 2019-06-03 15:40:43.340,140.4956,7097.9619,5.0339,4.9228,0.8861,0.122,2340.0,2400.0,-0.4746,-1.7226,4.1333,-70.6738 2019-06-03 15:40:43.360,140.5127,7097.9893,5.0361,4.9289,1.2159,0.0314,2340.0,2400.0,-0.4717,-1.7226,4.1214,-70.6458 2019-06-03 15:40:43.380,140.4613,7097.9346,5.0361,4.9289,0.791,0.1254,2340.0,2400.0,-0.4746,-1.7196,4.128,-70.6458 2019-06-03 15:40:43.400,140.4528,7097.9619,5.031,4.9249,0.8539,0.1549,2400.0,2340.0,-0.4775,-1.7226,4.1227,-70.6091 2019-06-03 15:40:43.420,140.4613,7097.9619,5.0275,4.9237,1.1849,-0.0057,2400.0,2340.0,-0.4746,-1.7226,4.124,-70.5968 2019-06-03 15:40:43.440,140.5127,7097.9619,5.0275,4.9237,0.8946,0.1787,2400.0,2340.0,-0.4541,-1.7196,4.1386,-70.5968 2019-06-03 15:40:43.460,140.5212,7097.9619,5.0275,4.9237,0.9852,-0.03,2400.0,2340.0,-0.4629,-1.7196,4.1214,-70.5968 2019-06-03 15:40:43.480,140.4528,7097.9893,5.027,4.9239,0.9474,0.1615,2400.0,2340.0,-0.4658,-1.7196,4.124,-70.5671 2019-06-03 15:40:43.500,140.4613,7097.9072,5.0306,4.9316,0.9915,0.182,2400.0,2340.0,-0.4746,-1.7166,4.1333,-70.5374 2019-06-03 15:40:43.520,140.4528,7097.9072,5.0306,4.9316,1.0525,-0.0285,2400.0,2340.0,-0.4892,-1.7196,4.1147,-70.5374 2019-06-03 15:40:43.540,140.6494,7097.9619,5.0306,4.9316,1.1512,0.1745,2400.0,2340.0,-0.46,-1.7196,4.1452,-70.5374 2019-06-03 15:40:43.560,140.6408,7097.9893,5.0288,4.938,0.8461,-0.0143,2400.0,2340.0,-0.4717,-1.7166,4.1055,-70.5077 2019-06-03 15:40:43.580,140.5896,7098.0166,5.0288,4.938,1.1564,0.184,2400.0,2340.0,-0.46,-1.7166,4.1267,-70.5077 2019-06-03 15:40:43.600,140.5896,7098.0439,5.0289,4.9436,1.1623,0.1869,2400.0,2340.0,-0.4688,-1.7196,4.128,-70.4587 2019-06-03 15:40:43.620,140.5981,7098.0439,5.0222,4.9406,0.9001,0.0156,2400.0,2340.0,-0.4658,-1.7166,4.1253,-70.4447 2019-06-03 15:40:43.640,140.6494,7097.9893,5.0222,4.9406,1.1597,0.1281,2400.0,2340.0,-0.4688,-1.7196,4.1306,-70.4447 2019-06-03 15:40:43.660,140.6494,7097.9619,5.0222,4.9406,0.7341,0.0279,2400.0,2340.0,-0.4717,-1.7166,4.1227,-70.4447 2019-06-03 15:40:43.680,140.5896,7097.9619,5.0253,4.9481,1.2459,0.1058,2400.0,2340.0,-0.498,-1.7166,4.128,-70.4132 2019-06-03 15:40:43.700,140.5896,7097.9346,5.0274,4.9545,1.2478,0.125,2400.0,2340.0,-0.4804,-1.7196,4.1399,-70.3818 2019-06-03 15:40:43.720,140.5896,7097.9619,5.0274,4.9545,0.7662,0.0818,2400.0,2340.0,-0.4892,-1.7226,4.12,-70.3818 2019-06-03 15:40:43.740,140.3414,7097.9619,5.0274,4.9545,1.2392,0.0629,2400.0,2340.0,-0.4688,-1.7196,4.1293,-70.3818 2019-06-03 15:40:43.760,140.3757,7098.0439,5.0218,4.9549,0.8705,0.0881,2400.0,2340.0,-0.4658,-1.7226,4.1253,-70.352 2019-06-03 15:40:43.780,140.3242,7098.0439,5.0218,4.9549,1.2282,0.0297,2400.0,2340.0,-0.4804,-1.7196,4.1214,-70.352 2019-06-03 15:40:43.800,140.3242,7098.0713,5.0259,4.9574,1.2023,0.0672,2400.0,2340.0,-0.4775,-1.7196,4.1452,-70.3048 2019-06-03 15:40:43.820,140.3156,7098.0713,5.0249,4.9601,0.8128,0.1291,2400.0,2340.0,-0.4892,-1.7196,4.1227,-70.2891 2019-06-03 15:40:43.840,140.3671,7098.0713,5.0249,4.9601,1.1949,-0.0178,2400.0,2340.0,-0.4717,-1.7196,4.1333,-70.2891 2019-06-03 15:40:43.860,140.3928,7098.0166,5.0249,4.9601,0.9626,0.1541,2400.0,2340.0,-0.4717,-1.7196,4.1306,-70.2891 2019-06-03 15:40:43.880,140.3156,7097.9619,5.0229,4.9584,1.1523,-0.0196,2400.0,2340.0,-0.4775,-1.7196,4.124,-70.2594 2019-06-03 15:40:43.900,140.3328,7098.208,5.0192,4.9573,1.0636,-0.0113,2400.0,2340.0,-0.4746,-1.7196,4.1333,-70.2314 2019-06-03 15:40:43.920,140.3156,7099.1641,5.0192,4.9573,1.0329,0.1872,2400.0,2340.0,-0.4746,-1.7226,4.124,-70.2314 2019-06-03 15:40:43.940,140.3757,7100.4478,5.0192,4.9573,0.9415,-0.0535,2400.0,2340.0,-0.4804,-1.7196,4.132,-70.2314 2019-06-03 15:40:43.960,140.3757,7101.3491,5.0146,4.9536,1.0987,0.1452,2400.0,2340.0,-0.4834,-1.7196,4.1214,-70.2034 2019-06-03 15:40:43.980,140.3242,7102.7144,5.0157,4.9568,0.9645,-0.0073,2400.0,2340.0,-0.4834,-1.7226,4.128,-70.1562 2019-06-03 15:40:44.000,140.3156,7103.5889,5.0125,4.9522,0.919,0.0191,2400.0,2340.0,-0.4804,-1.7166,4.1359,-70.144 2019-06-03 15:40:44.020,140.3328,7104.4629,5.0148,4.9515,1.1179,0.1394,2400.0,2340.0,-0.4717,-1.7226,4.1147,-70.13 2019-06-03 15:40:44.040,140.3757,7105.8008,5.0148,4.9515,0.8753,0.0003,2400.0,2340.0,-0.4629,-1.7196,4.1346,-70.13 2019-06-03 15:40:44.060,140.3757,7106.5933,5.0148,4.9515,1.1915,0.0993,2400.0,2340.0,-0.4688,-1.7196,4.1174,-70.13 2019-06-03 15:40:44.080,140.3242,7106.7021,5.0105,4.9443,0.8306,0.0209,2400.0,2340.0,-0.4688,-1.7196,4.132,-70.1038 2019-06-03 15:40:44.100,140.3156,7106.7021,5.0118,4.938,0.7921,0.0491,2400.0,2340.0,-0.4688,-1.7196,4.1386,-70.0775 2019-06-03 15:40:44.120,140.3156,7106.7295,5.0118,4.938,1.1904,0.1176,2400.0,2340.0,-0.4804,-1.7166,4.1147,-70.0775 2019-06-03 15:40:44.140,140.0663,7106.6748,5.0118,4.938,0.7455,0.0403,2400.0,2340.0,-0.4717,-1.7196,4.1306,-70.0775 2019-06-03 15:40:44.160,140.1094,7106.7295,5.0141,4.9331,1.2056,0.0301,2400.0,2340.0,-0.4804,-1.7136,4.1214,-70.0495 2019-06-03 15:40:44.180,140.0491,7106.7295,5.0141,4.9331,0.8694,0.0677,2400.0,2340.0,-0.4717,-1.7196,4.1293,-70.0495 2019-06-03 15:40:44.200,140.0491,7106.7568,5.0169,4.9198,0.8631,0.0961,2400.0,2340.0,-0.4688,-1.7256,4.1346,-70.0181 2019-06-03 15:40:44.220,140.0491,7106.7842,5.0148,4.915,1.1753,0.0688,2400.0,2340.0,-0.4658,-1.7226,4.1227,-70.0058 2019-06-03 15:40:44.240,140.1008,7106.7842,5.0148,4.915,0.9282,0.0842,2400.0,2340.0,-0.4775,-1.7166,4.128,-70.0058 2019-06-03 15:40:44.260,140.1008,7106.7568,5.0148,4.915,0.994,0.0107,2400.0,2340.0,-0.4775,-1.7226,4.124,-70.0058 2019-06-03 15:40:44.280,140.0491,7106.7568,5.0162,4.9104,0.9833,0.0912,2400.0,2340.0,-0.4775,-1.7136,4.1187,-69.9796 2019-06-03 15:40:44.300,140.0577,7106.7295,5.0196,4.9098,0.95,0.1113,2400.0,2340.0,-0.4658,-1.7106,4.132,-69.9516 2019-06-03 15:40:44.320,140.0405,7106.7568,5.0196,4.9098,0.98,0.0188,2400.0,2340.0,-0.4717,-1.7136,4.1306,-69.9516 2019-06-03 15:40:44.340,140.2556,7106.7568,5.0196,4.9098,1.1087,0.1448,2400.0,2340.0,-0.4688,-1.7106,4.1293,-69.9516 2019-06-03 15:40:44.360,140.2298,7106.8115,5.0227,4.9071,1.0492,-0.0045,2400.0,2340.0,-0.4629,-1.7136,4.132,-69.9237 2019-06-03 15:40:44.380,140.1868,7106.8389,5.0227,4.9071,0.929,0.1429,2400.0,2340.0,-0.4775,-1.7166,4.1174,-69.9237 2019-06-03 15:40:44.400,140.1782,7106.8389,5.0294,4.9048,1.0503,0.1134,2340.0,2400.0,-0.46,-1.7106,4.1412,-69.8764 2019-06-03 15:40:44.420,140.1954,7106.8115,5.0266,4.9,0.8901,0.0333,2340.0,2400.0,-0.4717,-1.7136,4.124,-69.8642 2019-06-03 15:40:44.440,140.2384,7106.8115,5.0266,4.9,1.1131,0.1118,2340.0,2400.0,-0.4688,-1.7106,4.132,-69.8642 2019-06-03 15:40:44.460,140.2556,7106.7842,5.0266,4.9,0.902,0.0079,2340.0,2400.0,-0.4775,-1.7136,4.1227,-69.8642 2019-06-03 15:40:44.480,140.1868,7106.7295,5.0343,4.9034,1.048,0.1057,2340.0,2400.0,-0.4775,-1.7136,4.1253,-69.8345 2019-06-03 15:40:44.500,140.1868,7106.7021,5.037,4.9009,1.1546,0.0939,2340.0,2400.0,-0.4658,-1.7136,4.1465,-69.8065 2019-06-03 15:40:44.520,140.1868,7106.6748,5.037,4.9009,0.8979,0.0646,2340.0,2400.0,-0.46,-1.7106,4.1253,-69.8065 2019-06-03 15:40:44.540,139.9283,7106.7295,5.037,4.9009,1.1335,0.0826,2340.0,2400.0,-0.4571,-1.7106,4.124,-69.8065 2019-06-03 15:40:44.560,139.9801,7106.7568,5.0384,4.8981,0.8798,0.0597,2340.0,2400.0,-0.4571,-1.7076,4.1293,-69.7785 2019-06-03 15:40:44.580,139.9197,7106.8115,5.0384,4.8981,1.1864,0.0875,2340.0,2400.0,-0.4629,-1.7136,4.1293,-69.7785 2019-06-03 15:40:44.600,139.9197,7106.8389,5.0409,4.8953,1.1209,0.0517,2340.0,2400.0,-0.4658,-1.7166,4.1359,-69.7348 2019-06-03 15:40:44.620,139.9197,7106.7842,5.0408,4.8921,0.8861,0.0753,2340.0,2400.0,-0.4688,-1.7076,4.1253,-69.7208 2019-06-03 15:40:44.640,139.9628,7106.7842,5.0408,4.8921,1.1405,0.0496,2340.0,2400.0,-0.4717,-1.7106,4.124,-69.7208 2019-06-03 15:40:44.660,139.9715,7106.8115,5.0408,4.8921,0.8787,0.1009,2340.0,2400.0,-0.4629,-1.7106,4.1293,-69.7208 2019-06-03 15:40:44.680,139.9024,7106.8389,5.0431,4.8848,1.1594,0.0347,2340.0,2400.0,-0.4688,-1.7076,4.1174,-69.6946 2019-06-03 15:40:44.700,139.9283,7106.7568,5.0375,4.8747,1.156,-0.0083,2340.0,2400.0,-0.4629,-1.7106,4.1359,-69.6701 2019-06-03 15:40:44.720,139.911,7106.7021,5.0375,4.8747,0.9944,0.1181,2340.0,2400.0,-0.4658,-1.7136,4.1253,-69.6701 2019-06-03 15:40:44.740,140.118,7106.6479,5.0375,4.8747,1.1191,0.0084,2340.0,2400.0,-0.4629,-1.7076,4.1306,-69.6701 2019-06-03 15:40:44.760,140.1008,7106.6479,5.0342,4.865,1.0299,0.1435,2340.0,2400.0,-0.46,-1.7076,4.1267,-69.6456 2019-06-03 15:40:44.780,140.0491,7106.7021,5.0342,4.865,1.1409,0.0101,2340.0,2400.0,-0.4658,-1.7106,4.1293,-69.6456 2019-06-03 15:40:44.800,140.0405,7106.7568,5.0303,4.8537,0.9563,-0.0216,2340.0,2400.0,-0.4717,-1.7076,4.132,-69.6089 2019-06-03 15:40:44.820,140.0491,7106.7295,5.0331,4.8511,1.1579,0.1116,2340.0,2400.0,-0.4717,-1.7076,4.12,-69.5949 2019-06-03 15:40:44.840,140.1008,7106.7295,5.0331,4.8511,1.081,0.0013,2340.0,2400.0,-0.4804,-1.7106,4.1267,-69.5949 2019-06-03 15:40:44.860,140.1094,7106.6748,5.0331,4.8511,1.0806,0.1512,2340.0,2400.0,-0.4804,-1.7106,4.1293,-69.5949 2019-06-03 15:40:44.880,140.0491,7106.6479,5.0316,4.849,0.9108,0.0472,2340.0,2400.0,-0.4746,-1.7106,4.1253,-69.5687 2019-06-03 15:40:44.900,140.0491,7106.5933,5.026,4.8418,0.8624,0.0149,2340.0,2400.0,-0.4717,-1.7106,4.1346,-69.5425 2019-06-03 15:40:44.920,140.0405,7106.5933,5.026,4.8418,1.129,0.0878,2340.0,2400.0,-0.4775,-1.7076,4.1214,-69.5425 2019-06-03 15:40:44.940,140.1008,7106.6748,5.026,4.8418,1.0684,0.0531,2340.0,2400.0,-0.4717,-1.7106,4.1227,-69.5425 2019-06-03 15:40:44.960,140.0921,7106.6753,5.025,4.8421,1.1361,0.1287,2340.0,2400.0,-0.4746,-1.7076,4.1267,-69.5145 2019-06-03 15:40:44.980,140.0577,7106.7295,5.025,4.8421,0.7866,0.0735,2340.0,2400.0,-0.4746,-1.7076,4.1187,-69.5145 2019-06-03 15:40:45.000,140.0491,7106.7568,5.0191,4.8399,0.8472,0.0426,2340.0,2400.0,-0.4775,-1.7106,4.1412,-69.4655 2019-06-03 15:40:45.020,140.0491,7106.7842,5.0191,4.8411,1.1242,0.0805,2340.0,2400.0,-0.4863,-1.7076,4.1147,-69.4515 2019-06-03 15:40:45.040,140.1008,7106.7842,5.0191,4.8411,0.9534,0.0485,2340.0,2400.0,-0.4834,-1.7076,4.1227,-69.4515 2019-06-03 15:40:45.060,140.1008,7106.7842,5.0191,4.8411,1.1564,0.1114,2340.0,2400.0,-0.4804,-1.7106,4.128,-69.4515 2019-06-03 15:40:45.080,140.0318,7106.8115,5.0157,4.8404,0.7892,0.0991,2340.0,2400.0,-0.4688,-1.7106,4.1174,-69.4253 2019-06-03 15:40:45.100,140.0491,7106.7568,5.014,4.8421,0.8968,0.0741,2340.0,2400.0,-0.4746,-1.7076,4.1333,-69.3956 2019-06-03 15:40:45.120,140.0405,7106.7568,5.014,4.8421,1.0972,0.0342,2340.0,2400.0,-0.4658,-1.7076,4.1306,-69.3956 2019-06-03 15:40:45.140,139.9542,7106.7021,5.014,4.8421,0.9027,0.0996,2340.0,2400.0,-0.4746,-1.7106,4.128,-69.3956 2019-06-03 15:40:45.160,139.9715,7106.7021,5.0127,4.8418,1.0185,0.0416,2340.0,2400.0,-0.4717,-1.7076,4.1187,-69.3694 2019-06-03 15:40:45.180,139.9197,7106.7021,5.0127,4.8418,0.95,0.1329,2340.0,2400.0,-0.4688,-1.7106,4.1174,-69.3694 2019-06-03 15:40:45.200,139.911,7106.7842,5.01,4.8398,0.9142,0.1141,2340.0,2400.0,-0.4717,-1.7076,4.124,-69.3239 2019-06-03 15:40:45.220,139.9197,7106.8115,5.0066,4.8358,1.0702,0.0047,2340.0,2400.0,-0.4688,-1.6987,4.1333,-69.3117 2019-06-03 15:40:45.240,139.9715,7106.8662,5.0066,4.8358,0.9423,0.1304,2340.0,2400.0,-0.4775,-1.6987,4.1174,-69.3117 2019-06-03 15:40:45.260,139.9715,7106.8389,5.0066,4.8358,1.0584,0.007,2340.0,2400.0,-0.46,-1.7076,4.1346,-69.3117 2019-06-03 15:40:45.280,139.9197,7106.7568,5.0054,4.8374,1.0495,0.1555,2340.0,2400.0,-0.4688,-1.7047,4.1134,-69.2837 2019-06-03 15:40:45.300,139.9197,7106.9482,5.0036,4.8362,1.0314,0.1093,2340.0,2400.0,-0.4658,-1.6987,4.1227,-69.2575 2019-06-03 15:40:45.320,139.911,7107.8496,5.0036,4.8362,1.0107,0.0139,2340.0,2400.0,-0.4688,-1.6987,4.1214,-69.2575 2019-06-03 15:40:45.340,139.66,7109.1611,5.0036,4.8362,1.0658,0.1198,2340.0,2400.0,-0.4688,-1.6987,4.124,-69.2575 2019-06-03 15:40:45.360,139.7034,7110.0625,5.0019,4.8409,0.9253,0.0148,2340.0,2400.0,-0.4746,-1.6987,4.1359,-69.2295 2019-06-03 15:40:45.380,139.634,7111.3467,5.0019,4.8409,1.1897,0.1628,2340.0,2400.0,-0.4688,-1.6987,4.1267,-69.2295 2019-06-03 15:40:45.400,139.66,7112.1665,5.0008,4.8489,1.1472,0.0972,2400.0,2340.0,-0.4834,-1.6957,4.1333,-69.1928 2019-06-03 15:40:45.420,139.6427,7112.9585,4.9965,4.8493,0.8909,0.0504,2400.0,2340.0,-0.4834,-1.7017,4.1293,-69.1805 2019-06-03 15:40:45.440,139.7034,7114.2974,4.9965,4.8493,1.1553,0.1096,2400.0,2340.0,-0.4775,-1.6987,4.1161,-69.1805 2019-06-03 15:40:45.460,139.7034,7115.144,4.9965,4.8493,0.8842,0.0612,2400.0,2340.0,-0.4688,-1.6987,4.124,-69.1805 2019-06-03 15:40:45.480,139.6427,7115.3081,4.9952,4.8567,1.1494,0.0682,2400.0,2340.0,-0.4658,-1.6987,4.1253,-69.1508 2019-06-03 15:40:45.500,139.6427,7115.3081,4.9934,4.8656,1.213,0.0433,2400.0,2340.0,-0.4688,-1.6987,4.128,-69.1228 2019-06-03 15:40:45.520,139.634,7115.3354,4.9934,4.8656,0.879,0.1324,2400.0,2340.0,-0.4629,-1.6987,4.132,-69.1228 2019-06-03 15:40:45.540,139.8419,7115.3354,4.9934,4.8656,1.2219,0.0403,2400.0,2340.0,-0.4658,-1.6957,4.1227,-69.1228 2019-06-03 15:40:45.560,139.8246,7115.3081,4.9857,4.8693,0.9009,0.1216,2400.0,2340.0,-0.4717,-1.7017,4.1346,-69.0948 2019-06-03 15:40:45.580,139.7727,7115.3628,4.9857,4.8693,1.0218,0.0225,2400.0,2340.0,-0.4775,-1.6987,4.1253,-69.0948 2019-06-03 15:40:45.600,139.7727,7115.3901,4.9774,4.8742,1.1926,-0.0014,2400.0,2340.0,-0.4892,-1.7017,4.12,-69.0459 2019-06-03 15:40:45.620,139.7813,7115.3628,4.9793,4.8779,0.8369,0.1787,2400.0,2340.0,-0.4746,-1.6987,4.1253,-69.0319 2019-06-03 15:40:45.640,139.8246,7115.4175,4.9793,4.8779,1.0225,0.0066,2400.0,2340.0,-0.4688,-1.7047,4.124,-69.0319 2019-06-03 15:40:45.660,139.8333,7115.4175,4.9793,4.8779,0.9537,0.1234,2400.0,2340.0,-0.4629,-1.7047,4.1478,-69.0319 2019-06-03 15:40:45.680,139.7813,7115.3628,4.9656,4.8798,0.9456,0.0311,2400.0,2340.0,-0.4688,-1.7076,4.124,-69.0057 2019-06-03 15:40:45.700,139.7813,7115.2808,4.9528,4.8744,1.0347,-0.013,2400.0,2340.0,-0.4688,-1.7076,4.1214,-68.9812 2019-06-03 15:40:45.720,139.7727,7115.2534,4.9528,4.8744,1.1061,0.1893,2400.0,2340.0,-0.4658,-1.7076,4.1293,-68.9812 2019-06-03 15:40:45.740,139.8246,7115.3354,4.9528,4.8744,0.8339,0.0192,2400.0,2340.0,-0.4658,-1.7047,4.1174,-68.9812 2019-06-03 15:40:45.760,139.8246,7115.3901,4.9453,4.8775,1.0691,0.1162,2400.0,2340.0,-0.4571,-1.7076,4.1412,-68.9567 2019-06-03 15:40:45.780,139.764,7115.4175,4.9453,4.8775,0.9142,0.0366,2400.0,2340.0,-0.4688,-1.7076,4.1187,-68.9567 2019-06-03 15:40:45.800,139.7727,7115.4448,4.9366,4.8792,0.8668,0.0375,2400.0,2340.0,-0.4775,-1.7076,4.1253,-68.9252 2019-06-03 15:40:45.820,139.7813,7115.3354,4.9382,4.8833,1.1257,0.1239,2400.0,2340.0,-0.4804,-1.7076,4.1412,-68.9113 2019-06-03 15:40:45.840,139.8333,7115.2534,4.9382,4.8833,0.838,0.075,2400.0,2340.0,-0.4775,-1.7076,4.1214,-68.9113 2019-06-03 15:40:45.860,139.8419,7115.2808,4.9382,4.8833,1.1364,0.0336,2400.0,2340.0,-0.4717,-1.7316,4.132,-68.9113 2019-06-03 15:40:45.880,139.7727,7115.2808,4.9328,4.8826,0.8772,0.1032,2400.0,2340.0,-0.4658,-1.7316,4.1214,-68.8868 2019-06-03 15:40:45.900,139.7727,7115.2261,4.9357,4.8837,0.8624,0.0891,2400.0,2340.0,-0.4658,-1.7316,4.1253,-68.864 2019-06-03 15:40:45.920,139.764,7115.2534,4.9357,4.8837,1.0854,0.0521,2400.0,2340.0,-0.4775,-1.7316,4.132,-68.864 2019-06-03 15:40:45.940,139.5211,7115.2808,4.9357,4.8837,0.9164,0.1213,2400.0,2340.0,-0.4834,-1.7316,4.1227,-68.864 2019-06-03 15:40:45.960,139.5646,7115.2808,4.9377,4.8796,1.0573,-0.0217,2400.0,2340.0,-0.4834,-1.7375,4.1386,-68.8396 2019-06-03 15:40:45.980,139.5124,7115.3354,4.9377,4.8796,0.8813,0.1161,2400.0,2340.0,-0.4804,-1.7405,4.128,-68.8396 2019-06-03 15:40:46.000,139.5037,7115.3628,4.9401,4.8691,0.9948,0.1561,2400.0,2340.0,-0.4746,-1.7405,4.128,-68.7924 2019-06-03 15:40:46.020,139.5124,7115.3628,4.9383,4.8647,0.9874,-0.0007,2400.0,2340.0,-0.4629,-1.7674,4.128,-68.7819 2019-06-03 15:40:46.040,139.5559,7115.3901,4.9383,4.8647,1.0747,0.144,2400.0,2340.0,-0.46,-1.7674,4.1187,-68.7819 2019-06-03 15:40:46.060,139.5559,7115.3354,4.9383,4.8647,1.0325,-0.0059,2400.0,2340.0,-0.4571,-1.7674,4.1346,-68.7819 2019-06-03 15:40:46.080,139.495,7115.3081,4.9377,4.856,1.0333,0.1167,2400.0,2340.0,-0.4688,-1.7644,4.1227,-68.7609 2019-06-03 15:40:46.100,139.5124,7115.1714,4.9419,4.8506,1.0909,0.1255,2400.0,2340.0,-0.4804,-1.7644,4.1227,-68.7382 2019-06-03 15:40:46.120,139.495,7115.1167,4.9419,4.8506,0.9027,0.0286,2400.0,2340.0,-0.4863,-1.7644,4.1346,-68.7382 2019-06-03 15:40:46.140,139.408,7115.1714,4.9419,4.8506,1.152,0.1417,2400.0,2340.0,-0.4892,-1.7644,4.1174,-68.7382 2019-06-03 15:40:46.160,139.4341,7115.2261,4.9405,4.8393,0.9911,0.033,2400.0,2340.0,-0.4658,-1.7674,4.1412,-68.7137 2019-06-03 15:40:46.180,139.3557,7115.2534,4.9405,4.8393,1.0865,0.086,2400.0,2340.0,-0.46,-1.7644,4.1267,-68.7137 2019-06-03 15:40:46.200,139.3645,7115.2808,4.9356,4.8297,1.1597,0.0982,2400.0,2340.0,-0.46,-1.7644,4.1161,-68.6805 2019-06-03 15:40:46.220,139.3645,7115.3081,4.9323,4.8267,0.9005,0.054,2400.0,2340.0,-0.4541,-1.7674,4.1346,-68.67 2019-06-03 15:40:46.240,139.4254,7115.3081,4.9323,4.8267,1.1102,0.0918,2400.0,2340.0,-0.4629,-1.7674,4.124,-68.67 2019-06-03 15:40:46.260,139.4341,7115.2808,4.9323,4.8267,0.9693,0.0811,2400.0,2340.0,-0.4688,-1.7644,4.1359,-68.67 2019-06-03 15:40:46.280,139.3732,7115.3354,4.9305,4.8196,1.1705,0.0378,2400.0,2340.0,-0.4746,-1.7764,4.1267,-68.6455 2019-06-03 15:40:46.300,139.3732,7115.2808,4.9231,4.8114,1.1039,0.0447,2400.0,2340.0,-0.4658,-1.7764,4.1267,-68.6227 2019-06-03 15:40:46.320,139.3557,7115.2808,4.9231,4.8114,0.9212,0.0949,2400.0,2340.0,-0.4512,-1.7764,4.1386,-68.6227 2019-06-03 15:40:46.340,139.5733,7115.3354,4.9231,4.8114,1.081,0.0568,2400.0,2340.0,-0.46,-1.7764,4.1174,-68.6227 2019-06-03 15:40:46.360,139.5472,7115.3901,4.9152,4.7999,0.8642,0.1294,2400.0,2340.0,-0.4804,-1.7734,4.132,-68.6 2019-06-03 15:40:46.380,139.5124,7115.3354,4.9152,4.7999,0.9841,0.0095,2400.0,2340.0,-0.4892,-1.7794,4.1267,-68.6 2019-06-03 15:40:46.400,139.5037,7115.3081,4.9052,4.7866,0.9574,0.0477,2340.0,2400.0,-0.4863,-1.7764,4.1293,-68.5633 2019-06-03 15:40:46.420,139.5124,7115.3354,4.9064,4.7836,1.125,0.1114,2340.0,2400.0,-0.4775,-1.7734,4.1373,-68.5511 2019-06-03 15:40:46.440,139.5559,7115.3354,4.9064,4.7836,1.0425,0.0341,2340.0,2400.0,-0.4688,-1.7764,4.1121,-68.5511 2019-06-03 15:40:46.460,139.5559,7115.3354,4.9064,4.7836,0.9622,0.1136,2340.0,2400.0,-0.4717,-1.7764,4.1306,-68.5511 2019-06-03 15:40:46.480,139.495,7115.3354,4.9005,4.7697,0.963,0.0459,2340.0,2400.0,-0.4717,-1.7794,4.128,-68.5301 2019-06-03 15:40:46.500,139.5211,7115.2808,4.8913,4.7553,0.8432,0.0659,2340.0,2400.0,-0.4746,-1.7794,4.1267,-68.5091 2019-06-03 15:40:46.520,139.495,7115.1987,4.8913,4.7553,1.1557,0.0964,2340.0,2400.0,-0.4775,-1.7794,4.1293,-68.5091 2019-06-03 15:40:46.540,139.5646,7115.2261,4.8913,4.7553,0.8946,0.0393,2340.0,2400.0,-0.4804,-1.7734,4.12,-68.5091 2019-06-03 15:40:46.560,139.5559,7115.2808,4.8869,4.7388,1.068,0.0722,2340.0,2400.0,-0.4921,-1.7764,4.132,-68.4881 2019-06-03 15:40:46.580,139.5037,7115.3628,4.8869,4.7388,0.8369,0.0703,2340.0,2400.0,-0.4863,-1.7764,4.1333,-68.4881 2019-06-03 15:40:46.600,139.5037,7115.4448,4.8752,4.7147,0.8213,0.0744,2340.0,2400.0,-0.4863,-1.7764,4.1227,-68.4566 2019-06-03 15:40:46.620,139.5124,7115.4175,4.8713,4.7065,1.115,0.0485,2340.0,2400.0,-0.4717,-1.7764,4.132,-68.4461 2019-06-03 15:40:46.640,139.5559,7115.3901,4.8713,4.7065,0.8857,0.0628,2340.0,2400.0,-0.4863,-1.7734,4.1147,-68.4461 2019-06-03 15:40:46.660,139.5733,7115.3081,4.8713,4.7065,1.1353,0.0239,2340.0,2400.0,-0.4834,-1.7734,4.1306,-68.4461 2019-06-03 15:40:46.680,139.5037,7115.3081,4.8624,4.6869,0.933,0.1366,2340.0,2400.0,-0.4834,-1.8003,4.1306,-68.4287 2019-06-03 15:40:46.700,139.5037,7115.2261,4.8577,4.6696,0.8846,0.1351,2340.0,2400.0,-0.4804,-1.7704,4.1042,-68.4094 2019-06-03 15:40:46.720,139.495,7115.1987,4.8577,4.6696,1.1897,-0.021,2340.0,2400.0,-0.4688,-1.7674,4.1359,-68.4094 2019-06-03 15:40:46.740,139.5559,7115.1987,4.8577,4.6696,0.8702,0.1315,2340.0,2400.0,-0.4804,-1.8062,4.1253,-68.4094 2019-06-03 15:40:46.760,139.5472,7115.2534,4.8531,4.6545,1.1409,-0.018,2340.0,2400.0,-0.4892,-1.7823,4.132,-68.3902 2019-06-03 15:40:46.780,139.5124,7115.2808,4.8441,4.629,0.9648,0.1873,2340.0,2400.0,-0.498,-1.7823,4.1187,-68.3692 2019-06-03 15:40:46.800,139.5124,7115.2534,4.8429,4.6205,0.9948,0.161,2340.0,2400.0,-0.4921,-1.7823,4.1134,-68.3605 2019-06-03 15:40:46.820,139.5124,7115.2534,4.8366,4.6083,0.9364,-0.0053,2340.0,2400.0,-0.5272,-1.7823,4.124,-68.3517 2019-06-03 15:40:46.840,139.5646,7115.2808,4.8366,4.6083,1.0296,0.1119,2340.0,2400.0,-0.5126,-1.7853,4.1306,-68.3517 2019-06-03 15:40:46.860,139.5646,7115.2808,4.8366,4.6083,0.9574,0.0106,2340.0,2400.0,-0.5126,-1.7853,4.1306,-68.3517 2019-06-03 15:40:46.880,139.495,7115.3081,4.8328,4.5862,1.1793,0.1528,2340.0,2400.0,-0.5097,-1.7883,4.1214,-68.3325 2019-06-03 15:40:46.900,139.5037,7115.5815,4.8291,4.5652,1.0854,0.1427,2340.0,2400.0,-0.5214,-1.7823,4.1068,-68.315 2019-06-03 15:40:46.920,139.495,7116.5376,4.8291,4.5652,0.8935,0.0202,2340.0,2400.0,-0.5301,-1.7853,4.128,-68.315 2019-06-03 15:40:46.940,139.5646,7117.7676,4.8291,4.5652,1.0969,0.1085,2340.0,2400.0,-0.5214,-1.7853,4.132,-68.315 2019-06-03 15:40:46.960,139.5559,7118.7236,4.8221,4.5437,0.8498,0.0609,2340.0,2400.0,-0.5184,-1.7823,4.1161,-68.294 2019-06-03 15:40:46.980,139.495,7120.063,4.8221,4.5437,1.2104,0.0798,2340.0,2400.0,-0.5097,-1.7853,4.1267,-68.294 2019-06-03 15:40:47.000,139.5037,7120.9917,4.8172,4.5179,1.1764,0.0796,2340.0,2400.0,-0.5068,-1.7823,4.1121,-68.2486 2019-06-03 15:40:47.020,139.5124,7121.8662,4.8145,4.5073,0.8406,0.0845,2340.0,2400.0,-0.5184,-1.7853,4.1359,-68.2381 2019-06-03 15:40:47.040,139.5472,7123.2598,4.8145,4.5073,1.1601,0.0285,2340.0,2400.0,-0.5214,-1.7853,4.1293,-68.2381 2019-06-03 15:40:47.060,139.5733,7124.0796,4.8145,4.5073,0.8465,0.1312,2340.0,2400.0,-0.5214,-1.7823,4.12,-68.2381 2019-06-03 15:40:47.080,139.5037,7124.0796,4.8126,4.4935,1.0895,0.0214,2340.0,2400.0,-0.5389,-1.7853,4.1214,-68.2171 2019-06-03 15:40:47.100,139.5124,7124.0522,4.8061,4.4793,1.1072,0.04,2340.0,2400.0,-0.5272,-1.7823,4.1227,-68.1961 2019-06-03 15:40:47.120,139.495,7124.0249,4.8061,4.4793,0.8491,0.1159,2340.0,2400.0,-0.5272,-1.7853,4.124,-68.1961 2019-06-03 15:40:47.140,139.3993,7124.0522,4.8061,4.4793,1.0821,0.0058,2340.0,2400.0,-0.5068,-1.7823,4.1333,-68.1961 2019-06-03 15:40:47.160,139.4167,7124.0522,4.8037,4.4655,1.0621,0.165,2340.0,2400.0,-0.5097,-1.7794,4.1134,-68.1734 2019-06-03 15:40:47.180,139.3732,7124.0249,4.8037,4.4655,0.9593,-0.0313,2340.0,2400.0,-0.5155,-1.7794,4.1346,-68.1734 2019-06-03 15:40:47.200,139.3645,7123.9976,4.7959,4.4401,0.9212,-0.0186,2340.0,2400.0,-0.536,-1.7794,4.1108,-68.1384 2019-06-03 15:40:47.220,139.3732,7123.8887,4.8007,4.4385,1.1002,0.1472,2340.0,2400.0,-0.5389,-1.7764,4.124,-68.1244 2019-06-03 15:40:47.240,139.4254,7123.916,4.8007,4.4385,0.8972,0.011,2340.0,2400.0,-0.536,-1.7764,4.132,-68.1244 2019-06-03 15:40:47.260,139.4254,7123.8887,4.8007,4.4385,1.129,0.1246,2340.0,2400.0,-0.5272,-1.7704,4.1121,-68.1244 2019-06-03 15:40:47.280,139.3645,7123.8887,4.7956,4.4231,0.879,0.0193,2340.0,2400.0,-0.5097,-1.7823,4.128,-68.1034 2019-06-03 15:40:47.300,139.3645,7123.834,4.7956,4.4078,0.8128,0.0422,2340.0,2400.0,-0.5097,-1.7853,4.12,-68.0807 2019-06-03 15:40:47.320,139.3557,7123.8066,4.7956,4.4078,1.2448,0.0572,2340.0,2400.0,-0.5097,-1.7764,4.1306,-68.0807 2019-06-03 15:40:47.340,139.1199,7123.8066,4.7956,4.4078,0.7836,0.1028,2340.0,2400.0,-0.5301,-1.7734,4.1227,-68.0807 2019-06-03 15:40:47.360,139.1637,7123.8613,4.7986,4.3984,1.1568,0.0524,2340.0,2400.0,-0.5214,-1.7764,4.1134,-68.0562 2019-06-03 15:40:47.380,139.1024,7123.9429,4.7986,4.3984,0.8239,0.0857,2340.0,2400.0,-0.5301,-1.7764,4.1293,-68.0562 2019-06-03 15:40:47.400,139.0937,7123.9702,4.7943,4.384,0.8687,0.099,2400.0,2400.0,-0.5243,-1.7734,4.128,-68.0178 2019-06-03 15:40:47.420,139.1024,7123.9702,4.7931,4.379,1.264,0.0382,2400.0,2400.0,-0.5214,-1.7764,4.1134,-68.0055 2019-06-03 15:40:47.440,139.1462,7124.0522,4.7931,4.379,0.842,0.1481,2400.0,2400.0,-0.498,-1.7734,4.12,-68.0055 2019-06-03 15:40:47.460,139.1637,7123.9976,4.7931,4.379,1.1989,0.0128,2400.0,2400.0,-0.5009,-1.7764,4.1147,-68.0055 2019-06-03 15:40:47.480,139.0937,7123.9976,4.7923,4.3727,0.8816,0.1381,2400.0,2400.0,-0.5038,-1.7734,4.132,-67.9793 2019-06-03 15:40:47.500,139.1024,7123.916,4.793,4.3688,0.9977,0.155,2400.0,2400.0,-0.5097,-1.7734,4.1267,-67.9496 2019-06-03 15:40:47.520,139.1024,7123.9976,4.793,4.3688,0.9774,-0.0279,2400.0,2400.0,-0.5418,-1.7764,4.1227,-67.9496 2019-06-03 15:40:47.540,139.1549,7123.9702,4.793,4.3688,1.0514,0.2013,2400.0,2400.0,-0.536,-1.7764,4.1293,-67.9496 2019-06-03 15:40:47.560,139.1375,7123.9976,4.7906,4.3676,0.8927,-0.0252,2400.0,2400.0,-0.536,-1.7734,4.1121,-67.9216 2019-06-03 15:40:47.580,139.0937,7124.0249,4.7906,4.3676,1.0218,0.179,2400.0,2400.0,-0.5214,-1.7794,4.132,-67.9216 2019-06-03 15:40:47.600,139.1024,7124.0249,4.7838,4.3576,1.1205,0.162,2400.0,2400.0,-0.5272,-1.7823,4.1253,-67.8761 2019-06-03 15:40:47.620,139.1024,7123.9976,4.7748,4.3493,0.8624,0.0245,2400.0,2400.0,-0.5272,-1.7823,4.124,-67.8621 2019-06-03 15:40:47.640,139.1549,7123.9976,4.7748,4.3493,1.3406,0.1277,2400.0,2400.0,-0.5126,-1.7764,4.128,-67.8621 2019-06-03 15:40:47.660,139.1549,7123.9976,4.7748,4.3493,0.7341,0.1014,2400.0,2400.0,-0.5214,-1.7764,4.1134,-67.8621 2019-06-03 15:40:47.680,139.0937,7123.9702,4.7725,4.3445,1.1464,0.0403,2400.0,2400.0,-0.5243,-1.7734,4.1386,-67.8324 2019-06-03 15:40:47.700,139.1112,7123.8887,4.7671,4.3398,1.2792,0.0454,2400.0,2400.0,-0.536,-1.7734,4.12,-67.8044 2019-06-03 15:40:47.720,139.0762,7123.916,4.7671,4.3398,0.8676,0.0995,2400.0,2400.0,-0.5272,-1.7704,4.124,-67.8044 2019-06-03 15:40:47.740,138.9886,7123.9429,4.7671,4.3398,1.1993,0.0677,2400.0,2400.0,-0.5126,-1.7734,4.1359,-67.8044 2019-06-03 15:40:47.760,139.0236,7123.9429,4.7559,4.3365,0.8724,0.1271,2400.0,2400.0,-0.5126,-1.7734,4.1174,-67.7765 2019-06-03 15:40:47.780,138.9622,7123.9429,4.7559,4.3365,1.1856,0.004,2400.0,2400.0,-0.5009,-1.7734,4.1346,-67.7765 2019-06-03 15:40:47.800,138.9535,7123.9702,4.7459,4.3306,1.1409,0.024,2400.0,2400.0,-0.5272,-1.7704,4.1121,-67.7345 2019-06-03 15:40:47.820,138.971,7123.9429,4.7439,4.3352,0.8642,0.15,2400.0,2400.0,-0.5243,-1.7764,4.1293,-67.7205 2019-06-03 15:40:47.840,139.0061,7123.9976,4.7439,4.3352,1.0451,-0.028,2400.0,2400.0,-0.5214,-1.7704,4.132,-67.7205 2019-06-03 15:40:47.860,139.0236,7123.9976,4.7439,4.3352,0.8798,0.2048,2400.0,2400.0,-0.5068,-1.7734,4.1253,-67.7205 2019-06-03 15:40:47.880,138.9535,7123.9702,4.7355,4.3313,0.9741,-0.0485,2400.0,2400.0,-0.5097,-1.7734,4.1346,-67.6943 2019-06-03 15:40:47.900,138.9535,7123.8887,4.7263,4.3348,0.9833,0.0085,2400.0,2400.0,-0.5068,-1.7704,4.1253,-67.6698 2019-06-03 15:40:47.920,138.9622,7123.916,4.7263,4.3348,1.1364,0.178,2400.0,2400.0,-0.5214,-1.7734,4.1161,-67.6698 2019-06-03 15:40:47.940,139.1724,7123.9702,4.7263,4.3348,0.9112,-0.0315,2400.0,2400.0,-0.5301,-1.7794,4.1412,-67.6698 2019-06-03 15:40:47.960,139.1375,7123.9976,4.7184,4.3339,1.0192,0.1731,2400.0,2400.0,-0.5418,-1.7734,4.1147,-67.6453 2019-06-03 15:40:47.980,139.0937,7124.0249,4.7184,4.3339,0.9449,0.0008,2400.0,2400.0,-0.5301,-1.7704,4.1267,-67.6453 2019-06-03 15:40:48.000,139.0937,7124.0522,4.7071,4.339,0.8576,0.0356,2400.0,2400.0,-0.5214,-1.7734,4.1227,-67.6034 2019-06-03 15:40:48.020,139.0937,7124.0522,4.7055,4.3421,1.1627,0.1177,2400.0,2400.0,-0.4892,-1.7734,4.1187,-67.5929 2019-06-03 15:40:48.040,139.1549,7124.0522,4.7055,4.3421,0.8224,0.0311,2400.0,2400.0,-0.4775,-1.7704,4.1452,-67.5929 2019-06-03 15:40:48.060,139.1637,7124.0249,4.7055,4.3421,1.1113,0.0989,2400.0,2400.0,-0.4834,-1.7704,4.1134,-67.5929 2019-06-03 15:40:48.080,139.1024,7123.916,4.6941,4.3343,0.8768,0.0529,2400.0,2400.0,-0.4921,-1.7734,4.132,-67.5719 2019-06-03 15:40:48.100,139.1024,7123.834,4.6899,4.3346,0.902,0.1145,2400.0,2400.0,-0.5155,-1.7704,4.124,-67.5509 2019-06-03 15:40:48.120,139.0937,7123.834,4.6899,4.3346,1.1431,0.0515,2400.0,2400.0,-0.5097,-1.7704,4.124,-67.5509 2019-06-03 15:40:48.140,139.1462,7123.8887,4.6899,4.3346,0.8824,0.0835,2400.0,2400.0,-0.5038,-1.7734,4.1293,-67.5509 2019-06-03 15:40:48.160,139.1462,7123.8887,4.6839,4.3329,1.0573,0.0505,2400.0,2400.0,-0.4688,-1.7704,4.1187,-67.5317 2019-06-03 15:40:48.180,139.0937,7123.916,4.6788,4.3262,0.9012,0.1073,2400.0,2400.0,-0.4658,-1.7704,4.1121,-67.5212 2019-06-03 15:40:48.200,139.1112,7123.9429,4.6777,4.3244,0.9389,0.1805,2400.0,2400.0,-0.4571,-1.7704,4.1306,-67.5124 2019-06-03 15:40:48.220,139.1024,7123.834,4.6715,4.3197,1.0969,0.0082,2400.0,2400.0,-0.4658,-1.7674,4.124,-67.5072 2019-06-03 15:40:48.240,139.1549,7123.916,4.6715,4.3197,0.983,0.138,2400.0,2400.0,-0.4746,-1.7674,4.1439,-67.5072 2019-06-03 15:40:48.260,139.1549,7123.9429,4.6715,4.3197,1.0358,0.0187,2400.0,2400.0,-0.5009,-1.7674,4.1081,-67.5072 2019-06-03 15:40:48.280,139.0937,7123.9702,4.6705,4.3189,0.9397,0.123,2400.0,2400.0,-0.5009,-1.7674,4.1161,-67.488 2019-06-03 15:40:48.300,139.0937,7123.8887,4.6724,4.3175,1.0517,0.1668,2400.0,2400.0,-0.5038,-1.7674,4.1267,-67.4722 2019-06-03 15:40:48.320,139.0849,7123.916,4.6724,4.3175,0.9123,0.0283,2400.0,2400.0,-0.4951,-1.7674,4.1346,-67.4722 2019-06-03 15:40:48.340,138.9973,7123.8613,4.6724,4.3175,1.0554,0.1268,2400.0,2400.0,-0.498,-1.7614,4.1346,-67.4722 2019-06-03 15:40:48.360,139.0149,7123.8887,4.6697,4.3106,0.8983,0.0165,2400.0,2400.0,-0.4921,-1.7674,4.1134,-67.4582 2019-06-03 15:40:48.380,138.9535,7123.9702,4.6697,4.3106,1.1546,0.1275,2400.0,2400.0,-0.4863,-1.7674,4.12,-67.4582 2019-06-03 15:40:48.400,138.9535,7123.9429,4.6738,4.2985,1.1538,0.1317,2400.0,2340.0,-0.4804,-1.7614,4.132,-67.432 2019-06-03 15:40:48.420,138.9535,7123.8887,4.6689,4.2894,0.8557,0.0532,2400.0,2340.0,-0.4746,-1.7644,4.1267,-67.4268 2019-06-03 15:40:48.440,138.9973,7123.916,4.6689,4.2894,1.1468,0.0634,2400.0,2340.0,-0.4658,-1.7644,4.1253,-67.4268 2019-06-03 15:40:48.460,139.0236,7123.8887,4.6689,4.2894,0.8498,0.0767,2400.0,2340.0,-0.4278,-1.7614,4.1147,-67.4268 2019-06-03 15:40:48.480,138.9622,7123.8066,4.6751,4.2801,1.1283,0.0095,2400.0,2340.0,-0.4191,-1.7644,4.1174,-67.4128 2019-06-03 15:40:48.500,138.9622,7123.752,4.6743,4.2707,1.0898,0.0159,2400.0,2340.0,-0.3811,-1.7644,4.1412,-67.3988 2019-06-03 15:40:48.520,138.9535,7123.752,4.6743,4.2707,0.8753,0.1354,2400.0,2340.0,-0.3635,-1.7644,4.12,-67.3988 2019-06-03 15:40:48.540,138.8569,7123.834,4.6743,4.2707,1.0517,-0.0305,2400.0,2340.0,-0.2846,-1.7644,4.128,-67.3988 2019-06-03 15:40:48.560,138.8745,7123.8887,4.6711,4.2515,0.9238,0.1467,2400.0,2340.0,-0.1969,-1.7644,4.1108,-67.3865 2019-06-03 15:40:48.580,138.8217,7123.9429,4.6711,4.2515,1.1601,-0.0281,2400.0,2340.0,-0.1121,-1.7674,4.1108,-67.3865 2019-06-03 15:40:48.600,138.8041,7123.9976,4.671,4.2308,1.0284,-0.0233,2400.0,2340.0,-0.0303,-1.7644,4.128,-67.3656 2019-06-03 15:40:48.620,138.8305,7123.9976,4.674,4.2237,0.9733,0.1692,2400.0,2340.0,0.0282,-1.7644,4.1147,-67.3568 2019-06-03 15:40:48.640,138.8832,7124.0249,4.674,4.2237,1.0222,-0.012,2400.0,2340.0,0.0925,-1.7644,4.132,-67.3568 2019-06-03 15:40:48.660,138.8745,7124.0249,4.674,4.2237,1.0924,0.1268,2400.0,2340.0,0.1305,-1.7644,4.1068,-67.3568 2019-06-03 15:40:48.680,138.8129,7124.0522,4.6696,4.2059,0.9175,0.0212,2400.0,2340.0,0.1655,-1.7644,4.1161,-67.3428 2019-06-03 15:40:48.700,138.8217,7124.4077,4.6661,4.1887,0.9201,0.0157,2400.0,2340.0,0.1655,-1.7674,4.1147,-67.3253 2019-06-03 15:40:48.720,138.8129,7125.501,4.6661,4.1887,1.0488,0.1424,2400.0,2340.0,0.2065,-1.7614,4.1161,-67.3253 2019-06-03 15:40:48.740,138.8832,7127.1411,4.6661,4.1887,0.8905,0.0279,2400.0,2340.0,0.2269,-1.7614,4.1227,-67.3253 2019-06-03 15:40:48.760,138.8745,7128.1797,4.6653,4.1758,1.1191,0.0764,2400.0,2340.0,0.2328,-1.7644,4.1121,-67.3061 2019-06-03 15:40:48.780,138.8129,7129.7104,4.6653,4.1758,0.8783,0.0616,2400.0,2340.0,0.2386,-1.7614,4.1147,-67.3061 2019-06-03 15:40:48.800,138.8217,7130.8037,4.6608,4.1439,0.8972,0.0473,2400.0,2340.0,0.2503,-1.7644,4.128,-67.2694 2019-06-03 15:40:48.820,138.8217,7131.8149,4.6605,4.1352,1.1031,0.0909,2400.0,2340.0,0.2532,-1.7674,4.1174,-67.2571 2019-06-03 15:40:48.840,138.8657,7133.4551,4.6605,4.1352,0.889,0.0805,2400.0,2340.0,0.2357,-1.7614,4.12,-67.2571 2019-06-03 15:40:48.860,138.8745,7134.4116,4.6605,4.1352,1.1357,0.0111,2400.0,2340.0,0.2152,-1.7614,4.1108,-67.2571 2019-06-03 15:40:48.880,138.8393,7134.521,4.6596,4.1163,0.9615,0.141,2400.0,2340.0,0.148,-1.7495,4.1134,-67.2274 2019-06-03 15:40:48.900,138.8217,7134.3843,4.6587,4.1017,0.9896,0.1032,2400.0,2340.0,0.1188,-1.7495,4.1425,-67.1959 2019-06-03 15:40:48.920,138.8129,7134.3569,4.6587,4.1017,1.0111,0.0354,2400.0,2340.0,0.0135,-1.7495,4.1147,-67.1959 2019-06-03 15:40:48.940,138.5662,7134.3843,4.6587,4.1017,1.0218,0.1348,2400.0,2340.0,-0.0917,-1.7495,4.1293,-67.1959 2019-06-03 15:40:48.960,138.6103,7134.4116,4.6578,4.0882,1.0,0.0059,2400.0,2340.0,-0.194,-1.7465,4.1174,-67.1592 2019-06-03 15:40:48.980,138.5485,7134.4663,4.6578,4.0882,1.1135,0.143,2400.0,2340.0,-0.3255,-1.7465,4.1147,-67.1592 2019-06-03 15:40:49.000,138.5397,7134.4663,4.657,4.0661,1.068,0.1189,2400.0,2340.0,-0.4044,-1.7495,4.1465,-67.0945 2019-06-03 15:40:49.020,138.5485,7134.4937,4.6539,4.0556,0.9504,0.0206,2400.0,2340.0,-0.498,-1.7495,4.1253,-67.077 2019-06-03 15:40:49.040,138.6103,7134.4116,4.6539,4.0556,1.1568,0.1101,2400.0,2340.0,-0.5594,-1.7525,4.1214,-67.077 2019-06-03 15:40:49.060,138.6015,7134.439,4.6539,4.0556,0.892,0.0476,2400.0,2340.0,-0.5769,-1.7495,4.132,-67.077 2019-06-03 15:40:49.080,138.5397,7134.439,4.6554,4.0452,1.2252,0.0979,2400.0,2340.0,-0.5886,-1.7495,4.124,-67.0386 2019-06-03 15:40:49.100,138.5485,7134.4116,4.6508,4.0314,1.142,0.0631,2400.0,2340.0,-0.5711,-1.7525,4.1465,-67.0036 2019-06-03 15:40:49.120,138.5309,7134.4116,4.6508,4.0314,0.8247,0.0697,2400.0,2340.0,-0.5711,-1.7555,4.12,-67.0036 2019-06-03 15:40:49.140,138.6015,7134.439,4.6508,4.0314,1.2159,0.0287,2400.0,2340.0,-0.5564,-1.7495,4.1147,-67.0036 2019-06-03 15:40:49.160,138.5927,7134.4663,4.6406,4.0145,0.9563,0.1462,2400.0,2340.0,-0.5506,-1.7764,4.1227,-66.9704 2019-06-03 15:40:49.180,138.5397,7134.4116,4.6406,4.0145,1.0602,0.0334,2400.0,2340.0,-0.5594,-1.7525,4.1147,-66.9704 2019-06-03 15:40:49.200,138.5485,7134.4663,4.6308,3.9974,1.0651,-0.0009,2400.0,2340.0,-0.5535,-1.7525,4.1465,-66.9214 2019-06-03 15:40:49.220,138.5485,7134.4663,4.6312,3.9961,0.8506,0.1254,2400.0,2340.0,-0.5652,-1.7525,4.1253,-66.9057 2019-06-03 15:40:49.240,138.5927,7134.521,4.6312,3.9961,1.1309,0.0049,2400.0,2340.0,-0.5711,-1.7495,4.12,-66.9057 2019-06-03 15:40:49.260,138.6015,7134.521,4.6312,3.9961,1.0702,0.179,2400.0,2340.0,-0.5652,-1.7495,4.128,-66.9057 2019-06-03 15:40:49.280,138.5397,7134.4663,4.6227,3.9862,0.8975,0.0044,2400.0,2340.0,-0.5535,-1.7525,4.1094,-66.8742 2019-06-03 15:40:49.300,138.5485,7134.3843,4.6131,3.9787,0.9474,0.0079,2400.0,2340.0,-0.5301,-1.7525,4.1373,-66.8462 2019-06-03 15:40:49.320,138.5397,7134.3296,4.6131,3.9787,1.081,0.1017,2400.0,2340.0,-0.536,-1.7495,4.1293,-66.8462 2019-06-03 15:40:49.340,138.4424,7134.3296,4.6131,3.9787,0.9541,0.05,2400.0,2340.0,-0.5711,-1.7495,4.1134,-66.8462 2019-06-03 15:40:49.360,138.4601,7134.3843,4.608,3.976,1.1512,0.1415,2400.0,2340.0,-0.5828,-1.7495,4.1346,-66.8183 2019-06-03 15:40:49.380,138.3982,7134.439,4.608,3.976,0.7781,0.0827,2400.0,2340.0,-0.5944,-1.7525,4.1227,-66.8183 2019-06-03 15:40:49.400,138.3982,7134.439,4.596,3.972,0.8912,0.0809,2340.0,2400.0,-0.5886,-1.7495,4.132,-66.7833 2019-06-03 15:40:49.420,138.407,7134.439,4.5942,3.9716,1.1283,0.0311,2340.0,2400.0,-0.5828,-1.7525,4.128,-66.7711 2019-06-03 15:40:49.440,138.4601,7134.4116,4.5942,3.9716,0.9057,0.1192,2340.0,2400.0,-0.5711,-1.7525,4.1227,-66.7711 2019-06-03 15:40:49.460,138.469,7134.4116,4.5942,3.9716,1.1276,0.0551,2340.0,2400.0,-0.5681,-1.7495,4.1253,-66.7711 2019-06-03 15:40:49.480,138.407,7134.4116,4.5861,3.9671,0.96,0.1445,2340.0,2400.0,-0.5652,-1.7495,4.1161,-66.7466 2019-06-03 15:40:49.500,138.407,7134.3843,4.5803,3.9701,1.0063,0.1005,2340.0,2400.0,-0.5711,-1.7495,4.128,-66.7238 2019-06-03 15:40:49.520,138.3893,7134.4116,4.5803,3.9701,1.0602,-0.0016,2340.0,2400.0,-0.5886,-1.7495,4.128,-66.7238 2019-06-03 15:40:49.540,138.4513,7134.4663,4.5803,3.9701,1.007,0.1329,2340.0,2400.0,-0.5944,-1.7465,4.1253,-66.7238 2019-06-03 15:40:49.560,138.4513,7134.521,4.5767,3.9637,0.9615,0.0249,2340.0,2400.0,-0.6149,-1.7555,4.1359,-66.7029 2019-06-03 15:40:49.580,138.407,7134.439,4.5678,3.9571,1.081,0.1511,2340.0,2400.0,-0.6237,-1.7555,4.1253,-66.6836 2019-06-03 15:40:49.600,138.3982,7134.439,4.5655,3.9553,1.0884,0.1165,2340.0,2400.0,-0.6529,-1.7525,4.1161,-66.6731 2019-06-03 15:40:49.620,138.3982,7134.439,4.561,3.9512,0.8535,0.0155,2340.0,2400.0,-0.6471,-1.7555,4.1306,-66.6661 2019-06-03 15:40:49.640,138.4513,7134.521,4.561,3.9512,1.1202,0.1327,2340.0,2400.0,-0.6529,-1.7555,4.1253,-66.6661 2019-06-03 15:40:49.660,138.469,7134.4937,4.561,3.9512,0.7496,0.0614,2340.0,2400.0,-0.6558,-1.7525,4.1346,-66.6661 2019-06-03 15:40:49.680,138.3982,7134.4937,4.5563,3.9478,1.1246,0.0965,2340.0,2400.0,-0.6587,-1.7555,4.132,-66.6487 2019-06-03 15:40:49.700,138.407,7134.4116,4.55,3.9428,1.1727,0.0532,2340.0,2400.0,-0.6763,-1.7525,4.1134,-66.6347 2019-06-03 15:40:49.720,138.3893,7134.4116,4.55,3.9428,0.9053,0.0974,2340.0,2400.0,-0.6851,-1.7495,4.1346,-66.6347 2019-06-03 15:40:49.740,138.4601,7134.4116,4.55,3.9428,1.1893,0.0576,2340.0,2400.0,-0.7201,-1.7525,4.124,-66.6347 2019-06-03 15:40:49.760,138.4601,7134.4663,4.5402,3.9365,0.9382,0.1033,2340.0,2400.0,-0.7494,-1.7495,4.1346,-66.6224 2019-06-03 15:40:49.780,138.3982,7134.4937,4.5402,3.9365,0.9918,0.0531,2340.0,2400.0,-0.7698,-1.7555,4.1161,-66.6224 2019-06-03 15:40:49.800,138.3982,7134.4937,4.5339,3.9353,1.1168,-0.0074,2340.0,2400.0,-0.7757,-1.7495,4.1293,-66.6067 2019-06-03 15:40:49.820,138.3982,7134.4663,4.5344,3.9382,0.9892,0.1824,2340.0,2400.0,-0.8254,-1.7525,4.1174,-66.6014 2019-06-03 15:40:49.840,138.4601,7134.5483,4.5344,3.9382,1.0787,-0.0245,2340.0,2400.0,-0.8312,-1.7525,4.1425,-66.6014 2019-06-03 15:40:49.860,138.4601,7134.4937,4.5344,3.9382,1.0721,0.1676,2340.0,2400.0,-0.8751,-1.7525,4.1306,-66.6014 2019-06-03 15:40:49.880,138.3982,7134.439,4.5268,3.938,0.909,0.0062,2340.0,2400.0,-0.9218,-1.7495,4.12,-66.5945 2019-06-03 15:40:49.900,138.4159,7134.439,4.517,3.9336,1.044,0.007,2340.0,2400.0,-0.9481,-1.7555,4.1293,-66.5892 2019-06-03 15:40:49.920,138.3893,7134.4116,4.517,3.9336,1.1301,0.1555,2340.0,2400.0,-0.992,-1.7525,4.1333,-66.5892 2019-06-03 15:40:49.940,138.6191,7134.4937,4.517,3.9336,0.8413,0.0299,2340.0,2400.0,-1.0504,-1.7525,4.12,-66.5892 2019-06-03 15:40:49.960,138.5838,7134.521,4.5122,3.9369,1.1372,0.1074,2340.0,2400.0,-1.1118,-1.7525,4.1333,-66.584 2019-06-03 15:40:49.980,138.5397,7134.5483,4.5122,3.9369,0.9319,0.0687,2340.0,2400.0,-1.2346,-1.7555,4.132,-66.584 2019-06-03 15:40:50.000,138.5397,7134.521,4.5024,3.9335,1.0203,0.0671,2340.0,2400.0,-1.3573,-1.7555,4.1439,-66.57 2019-06-03 15:40:50.020,138.5485,7134.4663,4.5017,3.9326,1.2104,0.0997,2340.0,2400.0,-1.521,-1.7555,4.1359,-66.5717 2019-06-03 15:40:50.040,138.6015,7134.521,4.5017,3.9326,0.7929,0.1034,2340.0,2400.0,-1.7169,-1.7555,4.1267,-66.5717 2019-06-03 15:40:50.060,138.6103,7134.5483,4.5017,3.9326,1.1046,0.0202,2340.0,2400.0,-1.8718,-1.7525,4.1452,-66.5717 2019-06-03 15:40:50.080,138.5397,7134.5757,4.4907,3.9243,0.9778,0.1097,2340.0,2400.0,-2.0764,-1.7555,4.132,-66.5787 2019-06-03 15:40:50.100,138.5485,7134.4937,4.4844,3.9222,0.9023,0.0936,2340.0,2400.0,-2.2401,-1.7525,4.128,-66.5892 2019-06-03 15:40:50.120,138.5397,7134.4937,4.4844,3.9222,1.1693,0.0497,2340.0,2400.0,-2.4242,-1.7525,4.1399,-66.5892 2019-06-03 15:40:50.140,138.7601,7134.4116,4.4844,3.9222,0.8513,0.1085,2340.0,2400.0,-2.5909,-1.7555,4.1293,-66.5892 2019-06-03 15:40:50.160,138.7249,7134.439,4.4806,3.9138,1.0429,-0.0103,2340.0,2400.0,-2.7487,-1.7555,4.1492,-66.6049 2019-06-03 15:40:50.180,138.6809,7134.4116,4.4806,3.9138,0.9778,0.1109,2340.0,2400.0,-2.8802,-1.7555,4.1306,-66.6049 2019-06-03 15:40:50.200,138.672,7134.4116,4.4691,3.905,0.9364,0.1241,2340.0,2400.0,-2.9767,-1.7525,4.1161,-66.6469 2019-06-03 15:40:50.220,138.6809,7134.3843,4.4643,3.8997,1.0384,-0.0143,2340.0,2400.0,-3.0585,-1.7525,4.1373,-66.6644 2019-06-03 15:40:50.240,138.7425,7134.3843,4.4643,3.8997,1.0688,0.1418,2340.0,2400.0,-3.1199,-1.7525,4.128,-66.6644 2019-06-03 15:40:50.260,138.7337,7134.3296,4.4643,3.8997,1.0218,-0.0063,2340.0,2400.0,-3.1345,-1.7525,4.1518,-66.6644 2019-06-03 15:40:50.280,138.6809,7134.2749,4.4604,3.8948,1.0192,0.1338,2340.0,2400.0,-3.1608,-1.7525,4.128,-66.7064 2019-06-03 15:40:50.300,138.6897,7134.2202,4.4587,3.89,1.098,0.1288,2340.0,2400.0,-3.1667,-1.7584,4.1267,-66.7536 2019-06-03 15:40:50.320,138.672,7134.2749,4.4587,3.89,0.8417,0.0183,2340.0,2400.0,-3.1667,-1.7555,4.1439,-66.7536 2019-06-03 15:40:50.340,138.9008,7134.3569,4.4587,3.89,1.1202,0.1165,2340.0,2400.0,-3.1608,-1.7555,4.128,-66.7536 2019-06-03 15:40:50.360,138.8657,7134.4116,4.4577,3.8763,0.9445,0.0407,2340.0,2400.0,-3.1082,-1.7555,4.1439,-66.8113 2019-06-03 15:40:50.380,138.8217,7134.439,4.4577,3.8763,1.0233,0.064,2340.0,2400.0,-3.0468,-1.7525,4.1108,-66.8113 2019-06-03 15:40:50.400,138.8129,7134.4663,4.4558,3.8578,1.1564,0.0748,2400.0,2340.0,-2.9533,-1.7584,4.1214,-66.9109 2019-06-03 15:40:50.420,138.8393,7134.439,4.4572,3.8537,0.7969,0.0683,2400.0,2340.0,-2.8072,-1.7555,4.1399,-66.9459 2019-06-03 15:40:50.440,138.8745,7134.439,4.4572,3.8537,1.0958,0.0585,2400.0,2340.0,-2.6142,-1.7555,4.1293,-66.9459 2019-06-03 15:40:50.460,138.8745,7134.4663,4.4572,3.8537,0.879,0.0984,2400.0,2340.0,-2.395,-1.7555,4.12,-66.9459 2019-06-03 15:40:50.480,138.8129,7134.4663,4.4621,3.8333,1.1276,0.0028,2400.0,2340.0,-2.1787,-1.7584,4.1055,-67.0193 2019-06-03 15:40:50.500,138.8217,7134.4116,4.4629,3.8156,1.1353,0.0156,2400.0,2340.0,-1.9653,-1.7584,4.1134,-67.098 2019-06-03 15:40:50.520,138.8129,7134.3843,4.4629,3.8156,0.8853,0.1362,2400.0,2340.0,-1.7227,-1.7525,4.1306,-67.098 2019-06-03 15:40:50.540,139.0324,7134.4116,4.4629,3.8156,1.0063,0.0328,2400.0,2340.0,-1.4918,-1.7584,4.124,-67.098 2019-06-03 15:40:50.560,139.0061,7134.439,4.4663,3.788,0.9955,0.1238,2400.0,2340.0,-1.3193,-1.7495,4.1055,-67.175 2019-06-03 15:40:50.580,138.971,7134.4116,4.4663,3.788,0.9219,-0.0085,2400.0,2340.0,-1.1644,-1.7525,4.1042,-67.175 2019-06-03 15:40:50.600,138.9535,7134.4663,4.4701,3.74,0.8772,0.0281,2400.0,2340.0,-1.0826,-1.7555,4.1055,-67.2851 2019-06-03 15:40:50.620,138.9622,7134.439,4.4763,3.7246,1.1538,0.1215,2400.0,2340.0,-1.0095,-1.7584,4.124,-67.3183 2019-06-03 15:40:50.640,139.0149,7134.4663,4.4763,3.7246,0.9493,0.051,2400.0,2340.0,-0.9803,-1.7525,4.0949,-67.3183 2019-06-03 15:40:50.660,139.0149,7134.4663,4.4763,3.7246,1.1017,0.1142,2400.0,2340.0,-0.9335,-1.7555,4.1042,-67.3183 2019-06-03 15:40:50.680,138.9447,7134.439,4.4751,3.6837,0.8335,0.0586,2400.0,2340.0,-0.9277,-1.7555,4.1002,-67.3813 2019-06-03 15:40:50.700,138.971,7134.3022,4.4768,3.6339,0.8276,0.0795,2400.0,2340.0,-0.9218,-1.7495,4.1028,-67.4372 2019-06-03 15:40:50.720,138.9447,7134.3022,4.4768,3.6339,1.1268,0.0483,2400.0,2340.0,-0.9277,-1.7525,4.1214,-67.4372 2019-06-03 15:40:50.740,138.8569,7134.3296,4.4768,3.6339,0.7958,0.0938,2400.0,2340.0,-0.9043,-1.7465,4.1068,-67.4372 2019-06-03 15:40:50.760,138.8745,7134.3843,4.4792,3.5807,1.1523,0.0344,2400.0,2340.0,-0.9072,-1.7495,4.0962,-67.4827 2019-06-03 15:40:50.780,138.8305,7134.439,4.4792,3.5807,0.8676,0.108,2400.0,2340.0,-0.8955,-1.7465,4.1028,-67.4827 2019-06-03 15:40:50.800,138.8129,7134.4116,4.4679,3.4935,0.9408,0.1183,2400.0,2340.0,-0.8955,-1.7465,4.1055,-67.5352 2019-06-03 15:40:50.820,138.8217,7134.3569,4.4629,3.4583,1.1427,0.0329,2400.0,2340.0,-0.8838,-1.7495,4.1174,-67.5474 2019-06-03 15:40:50.840,138.8745,7134.3843,4.4629,3.4583,0.9619,0.0945,2400.0,2340.0,-0.878,-1.7465,4.1042,-67.5474 2019-06-03 15:40:50.860,138.8832,7134.3296,4.4629,3.4583,1.0451,0.0225,2400.0,2340.0,-0.8867,-1.7435,4.0922,-67.5474 2019-06-03 15:40:50.880,138.8217,7134.3569,4.4537,3.391,0.9571,0.1631,2400.0,2340.0,-0.8751,-1.7465,4.1094,-67.5701 2019-06-03 15:40:50.900,138.8305,7134.3022,4.4459,3.3209,1.0244,0.1637,2400.0,2340.0,-0.8721,-1.7435,4.1055,-67.5806 2019-06-03 15:40:50.920,138.8129,7134.2749,4.4459,3.3209,1.0125,-0.0304,2400.0,2340.0,-0.8546,-1.7375,4.1214,-67.5806 2019-06-03 15:40:50.940,138.7161,7134.2749,4.4459,3.3209,1.0014,0.1381,2400.0,2340.0,-0.8634,-1.7405,4.0883,-67.5806 2019-06-03 15:40:50.960,138.7249,7134.3022,4.4345,3.2511,1.112,0.0034,2400.0,2340.0,-0.8371,-1.7375,4.0949,-67.5824 2019-06-03 15:40:50.980,138.6809,7134.3569,4.4345,3.2511,1.051,0.189,2400.0,2340.0,-0.8254,-1.7375,4.1121,-67.5824 2019-06-03 15:40:51.000,138.6809,7134.3296,4.4137,3.1355,1.1272,0.1726,2400.0,2340.0,-0.8224,-1.7345,4.0975,-67.5561 2019-06-03 15:40:51.020,138.6809,7134.3296,4.4016,3.0954,0.9308,-0.0005,2400.0,2340.0,-0.8107,-1.7375,4.124,-67.5474 2019-06-03 15:40:51.040,138.7337,7134.3843,4.4016,3.0954,1.061,0.1232,2400.0,2340.0,-0.8224,-1.7375,4.1002,-67.5474 2019-06-03 15:40:51.060,138.7249,7134.4116,4.4016,3.0954,0.9367,0.0489,2400.0,2340.0,-0.8166,-1.7345,4.0975,-67.5474 2019-06-03 15:40:51.080,138.6809,7134.4116,4.387,3.0207,1.1431,0.1184,2400.0,2340.0,-0.8107,-1.7375,4.1042,-67.5229 2019-06-03 15:40:51.100,138.6809,7134.3296,4.3709,2.9417,1.1194,0.1294,2400.0,2340.0,-0.7815,-1.7375,4.1015,-67.4914 2019-06-03 15:40:51.120,138.672,7134.3296,4.3709,2.9417,0.8972,0.051,2400.0,2340.0,-0.7523,-1.7375,4.1028,-67.4914 2019-06-03 15:40:51.140,138.2652,7134.3569,4.3709,2.9417,1.1068,0.057,2400.0,2340.0,-0.7114,-1.7375,4.0975,-67.4914 2019-06-03 15:40:51.160,138.3273,7134.3843,4.3519,2.8581,0.8602,0.1121,2400.0,2340.0,-0.6997,-1.7345,4.0949,-67.4512 2019-06-03 15:40:51.180,138.2652,7134.4116,4.3519,2.8581,0.9818,0.0171,2400.0,2340.0,-0.6734,-1.7405,4.1174,-67.4512 2019-06-03 15:40:51.200,138.2563,7134.4663,4.3242,2.7434,0.8849,0.0571,2400.0,2340.0,-0.6558,-1.7375,4.1068,-67.376 2019-06-03 15:40:51.220,138.2652,7134.4116,4.3173,2.7082,0.9186,0.1454,2400.0,2340.0,-0.6032,-1.7375,4.1094,-67.3463 2019-06-03 15:40:51.240,138.3096,7134.4116,4.3173,2.7082,1.0118,0.001,2400.0,2340.0,-0.5711,-1.7375,4.0909,-67.3463 2019-06-03 15:40:51.260,138.3362,7134.439,4.3173,2.7082,0.9874,0.1532,2400.0,2340.0,-0.5126,-1.7375,4.0936,-67.3463 2019-06-03 15:40:51.280,138.2652,7134.439,4.298,2.6347,0.9537,0.0271,2400.0,2340.0,-0.4132,-1.7375,4.1187,-67.2834 2019-06-03 15:40:51.300,138.2563,7134.4116,4.2755,2.5597,0.8968,0.0495,2400.0,2340.0,-0.3285,-1.7375,4.1042,-67.2134 2019-06-03 15:40:51.320,138.2652,7134.439,4.2755,2.5597,1.0377,0.1335,2400.0,2340.0,-0.2291,-1.7345,4.1108,-67.2134 2019-06-03 15:40:51.340,137.9984,7134.521,4.2755,2.5597,0.9585,0.0214,2400.0,2340.0,-0.1414,-1.7405,4.0975,-67.2134 2019-06-03 15:40:51.360,138.0518,7134.521,4.2582,2.4948,1.1124,0.1369,2400.0,2340.0,-0.0332,-1.7345,4.1002,-67.1348 2019-06-03 15:40:51.380,137.9895,7134.5757,4.2582,2.4948,0.8983,0.0295,2400.0,2340.0,0.1071,-1.7345,4.1227,-67.1348 2019-06-03 15:40:51.400,137.9984,7134.5483,4.2272,2.397,0.8857,0.0756,2340.0,2400.0,0.2182,-1.7375,4.1002,-67.0071 2019-06-03 15:40:51.420,137.9984,7134.4937,4.2182,2.3684,1.1686,0.0632,2340.0,2400.0,0.3409,-1.7345,4.0949,-66.9599 2019-06-03 15:40:51.440,138.0429,7134.4937,4.2182,2.3684,0.8491,0.0921,2340.0,2400.0,0.4754,-1.7375,4.0922,-66.9599 2019-06-03 15:40:51.460,138.0518,7134.4937,4.2182,2.3684,1.2274,0.0515,2340.0,2400.0,0.6391,-1.7375,4.1068,-66.9599 2019-06-03 15:40:51.480,137.9895,7134.439,4.1967,2.3096,1.0003,0.0996,2340.0,2400.0,0.7881,-1.7345,4.1293,-66.8602 2019-06-03 15:40:51.500,137.9984,7134.6577,4.1791,2.2573,1.0403,0.1052,2340.0,2400.0,0.9051,-1.7345,4.1015,-66.7536 2019-06-03 15:40:51.520,137.9805,7135.6147,4.1791,2.2573,1.1446,0.0328,2340.0,2400.0,1.0307,-1.7375,4.0896,-66.7536 2019-06-03 15:40:51.540,137.8824,7136.9814,4.1791,2.2573,1.0399,0.1454,2340.0,2400.0,1.1301,-1.7345,4.0949,-66.7536 2019-06-03 15:40:51.560,137.9092,7137.9111,4.1622,2.2096,0.9744,0.0426,2340.0,2400.0,1.209,-1.7375,4.1042,-66.6364 2019-06-03 15:40:51.580,137.8466,7139.3325,4.1622,2.2096,1.1202,0.1275,2340.0,2400.0,1.2675,-1.7375,4.1214,-66.6364 2019-06-03 15:40:51.600,137.8466,7140.2896,4.1333,2.1369,1.0784,0.1107,2340.0,2400.0,1.2997,-1.7375,4.1055,-66.4528 2019-06-03 15:40:51.620,137.8466,7141.1372,4.1217,2.1166,0.9412,0.0194,2340.0,2400.0,1.2997,-1.7375,4.0949,-66.3846 2019-06-03 15:40:51.640,137.9002,7142.4492,4.1217,2.1166,1.0521,0.1508,2340.0,2400.0,1.3114,-1.7375,4.1134,-66.3846 2019-06-03 15:40:51.660,137.9092,7143.3516,4.1217,2.1166,0.8506,0.0499,2340.0,2400.0,1.2997,-1.7345,4.1055,-66.3846 2019-06-03 15:40:51.680,137.8466,7143.4609,4.1058,2.0804,1.0943,0.1125,2340.0,2400.0,1.3114,-1.7345,4.124,-66.2465 2019-06-03 15:40:51.700,137.8466,7143.3789,4.087,2.0505,1.1379,0.0823,2340.0,2400.0,1.2967,-1.7375,4.0975,-66.0996 2019-06-03 15:40:51.720,137.8377,7143.3789,4.087,2.0505,0.8099,0.0625,2340.0,2400.0,1.3084,-1.7345,4.0989,-66.0996 2019-06-03 15:40:51.740,137.9092,7143.4063,4.087,2.0505,1.1431,0.0904,2340.0,2400.0,1.3143,-1.7345,4.1121,-66.0996 2019-06-03 15:40:51.760,137.9002,7143.4063,4.0652,2.028,0.8576,0.1024,2340.0,2400.0,1.3172,-1.7345,4.1068,-65.9492 2019-06-03 15:40:51.780,137.8466,7143.3789,4.0652,2.028,1.0488,0.0366,2340.0,2400.0,1.3435,-1.7375,4.1412,-65.9492 2019-06-03 15:40:51.800,137.8377,7143.3789,4.0406,2.0097,1.1446,0.0318,2340.0,2400.0,1.3084,-1.7375,4.1015,-65.7202 2019-06-03 15:40:51.820,137.8556,7143.3516,4.032,2.0058,0.9068,0.1104,2340.0,2400.0,1.3055,-1.7375,4.1081,-65.6415 2019-06-03 15:40:51.840,137.9092,7143.2969,4.032,2.0058,1.1209,0.0719,2340.0,2400.0,1.2558,-1.7345,4.1174,-65.6415 2019-06-03 15:40:51.860,137.9092,7143.2695,4.032,2.0058,0.9929,0.1046,2340.0,2400.0,1.2383,-1.7345,4.1253,-65.6415 2019-06-03 15:40:51.880,137.8466,7143.2695,4.0167,2.0062,0.842,0.0075,2340.0,2400.0,1.1827,-1.7375,4.132,-65.4806 2019-06-03 15:40:51.900,137.8556,7143.1875,3.9978,2.0133,0.8487,0.0196,2340.0,2400.0,1.1126,-1.7345,4.12,-65.3215 2019-06-03 15:40:51.920,137.8377,7143.1328,3.9978,2.0133,1.0292,0.1373,2340.0,2400.0,0.9606,-1.7375,4.1108,-65.3215 2019-06-03 15:40:51.940,137.7393,7143.2148,3.9978,2.0133,0.9689,0.0062,2340.0,2400.0,0.832,-1.7375,4.1439,-65.3215 2019-06-03 15:40:51.960,137.7662,7143.2422,3.9836,2.0332,1.1009,0.1575,2340.0,2400.0,0.6332,-1.7345,4.1267,-65.1607 2019-06-03 15:40:51.980,137.7125,7143.2695,3.9836,2.0332,0.8169,-0.0186,2340.0,2400.0,0.4608,-1.7375,4.1346,-65.1607 2019-06-03 15:40:52.000,137.7035,7143.3242,3.9592,2.0747,0.7881,-0.006,2340.0,2400.0,0.3,-1.7375,4.1187,-64.9194 2019-06-03 15:40:52.020,137.7125,7143.3242,3.9556,2.0961,1.1176,0.1162,2340.0,2400.0,0.1334,-1.7345,4.1293,-64.8442 2019-06-03 15:40:52.040,137.7662,7143.2695,3.9556,2.0961,0.7918,0.0516,2340.0,2400.0,-0.0128,-1.7405,4.1505,-64.8442 2019-06-03 15:40:52.060,137.7751,7143.2695,3.9556,2.0961,1.1538,0.0799,2340.0,2400.0,-0.1589,-1.7405,4.1346,-64.8442 2019-06-03 15:40:52.080,137.7035,7143.3242,3.9389,2.136,0.8727,0.0785,2340.0,2400.0,-0.2525,-1.7375,4.1399,-64.7008 2019-06-03 15:40:52.100,137.7214,7143.2422,3.9288,2.1898,0.8868,0.0988,2340.0,2400.0,-0.3021,-1.7375,4.1333,-64.5679 2019-06-03 15:40:52.120,137.7125,7143.2148,3.9288,2.1898,1.2126,0.0265,2340.0,2400.0,-0.3694,-1.7375,4.1253,-64.5679 2019-06-03 15:40:52.140,137.927,7143.2695,3.9288,2.1898,0.8898,0.1072,2340.0,2400.0,-0.4278,-1.7375,4.1465,-64.5679 2019-06-03 15:40:52.160,137.8824,7143.3242,3.9156,2.255,0.9145,0.0173,2340.0,2400.0,-0.4541,-1.7405,4.1439,-64.449 2019-06-03 15:40:52.180,137.8466,7143.2695,3.9156,2.255,0.9952,0.1276,2340.0,2400.0,-0.4892,-1.7405,4.1346,-64.449 2019-06-03 15:40:52.200,137.8377,7143.2969,3.9004,2.359,0.9841,0.1427,2340.0,2400.0,-0.5068,-1.7614,4.1346,-64.2986 2019-06-03 15:40:52.220,137.8466,7143.2969,3.8906,2.3973,0.9774,0.004,2340.0,2400.0,-0.5126,-1.7644,4.132,-64.2567 2019-06-03 15:40:52.240,137.9092,7143.2969,3.8906,2.3973,1.1113,0.1256,2340.0,2400.0,-0.5214,-1.7943,4.1492,-64.2567 2019-06-03 15:40:52.260,137.9092,7143.2695,3.8906,2.3973,0.9256,0.0345,2340.0,2400.0,-0.5331,-1.7913,4.1373,-64.2567 2019-06-03 15:40:52.280,137.8466,7143.2969,3.8845,2.4798,1.095,0.1383,2340.0,2400.0,-0.5301,-1.7794,4.1492,-64.1815 2019-06-03 15:40:52.300,137.8466,7143.2422,3.8769,2.572,1.1823,0.1424,2340.0,2400.0,-0.5535,-1.7883,4.1214,-64.1203 2019-06-03 15:40:52.320,137.8377,7143.2148,3.8769,2.572,0.8317,0.0464,2340.0,2400.0,-0.5448,-1.7823,4.1214,-64.1203 2019-06-03 15:40:52.340,138.3716,7143.2422,3.8769,2.572,1.0577,0.0643,2340.0,2400.0,-0.5448,-1.7794,4.1531,-64.1203 2019-06-03 15:40:52.360,138.3007,7143.3242,3.8653,2.6609,0.8668,0.0802,2340.0,2400.0,-0.5448,-1.7764,4.1386,-64.0783 2019-06-03 15:40:52.380,138.2652,7143.3242,3.8653,2.6609,1.1449,0.0651,2340.0,2400.0,-0.5418,-1.7794,4.1386,-64.0783 2019-06-03 15:40:52.400,138.2563,7143.3516,3.8558,2.8056,1.0906,0.0808,2400.0,2340.0,-0.5448,-1.7794,4.1306,-64.0399 2019-06-03 15:40:52.420,138.2652,7143.3516,3.8499,2.8522,0.8746,0.1052,2400.0,2340.0,-0.5418,-1.7794,4.1293,-64.0346 2019-06-03 15:40:52.440,138.3184,7143.4609,3.8499,2.8522,1.22,0.0162,2400.0,2340.0,-0.5418,-1.7794,4.1478,-64.0346 2019-06-03 15:40:52.460,138.3184,7143.4063,3.8499,2.8522,0.9933,0.1479,2400.0,2340.0,-0.5418,-1.7764,4.1373,-64.0346 2019-06-03 15:40:52.480,138.2563,7143.4336,3.8435,2.95,1.0732,0.003,2400.0,2340.0,-0.5389,-1.7764,4.1293,-64.0364 2019-06-03 15:40:52.500,138.2652,7143.4063,3.8365,3.0492,1.0222,0.009,2400.0,2340.0,-0.536,-1.7764,4.132,-64.0503 2019-06-03 15:40:52.520,138.2652,7143.3516,3.8365,3.0492,0.973,0.1378,2400.0,2340.0,-0.5331,-1.7794,4.1306,-64.0503 2019-06-03 15:40:52.540,138.7953,7143.3242,3.8365,3.0492,0.9659,-0.0341,2400.0,2340.0,-0.5301,-1.7764,4.1531,-64.0503 2019-06-03 15:40:52.560,138.7073,7143.3789,3.8286,3.1427,1.0088,0.1171,2400.0,2340.0,-0.5448,-1.7794,4.132,-64.0818 2019-06-03 15:40:52.580,138.672,7143.4336,3.8286,3.1427,1.0377,0.0061,2400.0,2340.0,-0.5535,-1.7794,4.1187,-64.0818 2019-06-03 15:40:52.600,138.6897,7143.3789,3.8248,3.286,0.96,0.0168,2400.0,2340.0,-0.5477,-1.7823,4.1359,-64.1465 2019-06-03 15:40:52.620,138.6809,7143.3242,3.826,3.3343,1.0336,0.1312,2400.0,2340.0,-0.5389,-1.7764,4.1227,-64.1745 2019-06-03 15:40:52.640,138.7337,7143.3516,3.826,3.3343,0.8616,0.018,2400.0,2340.0,-0.5272,-1.7823,4.1531,-64.1745 2019-06-03 15:40:52.660,138.7513,7143.2969,3.826,3.3343,1.0562,0.066,2400.0,2340.0,-0.5331,-1.7853,4.1267,-64.1745 2019-06-03 15:40:52.680,138.6809,7143.3516,3.8232,3.4231,1.0148,0.0532,2400.0,2340.0,-0.5418,-1.7704,4.1147,-64.2409 2019-06-03 15:40:52.700,138.6809,7143.3242,3.8284,3.5075,0.8742,0.0341,2400.0,2340.0,-0.5389,-1.7734,4.1412,-64.3179 2019-06-03 15:40:52.720,138.6809,7143.3516,3.8284,3.5075,1.1076,0.1051,2400.0,2340.0,-0.5418,-1.7734,4.1333,-64.3179 2019-06-03 15:40:52.740,139.0499,7143.2695,3.8284,3.5075,0.98,0.059,2400.0,2340.0,-0.5418,-1.7734,4.1399,-64.3179 2019-06-03 15:40:52.760,138.9973,7143.3242,3.8339,3.585,1.0994,0.0411,2400.0,2340.0,-0.5418,-1.7734,4.1267,-64.4053 2019-06-03 15:40:52.780,138.9535,7143.3789,3.8339,3.585,0.9903,0.0851,2400.0,2340.0,-0.5564,-1.7704,4.1134,-64.4053 2019-06-03 15:40:52.800,138.9535,7143.3516,3.8413,3.6957,0.842,0.0857,2400.0,2340.0,-0.5448,-1.7674,4.1505,-64.5452 2019-06-03 15:40:52.820,138.971,7143.3242,3.843,3.724,0.9319,0.042,2400.0,2340.0,-0.5564,-1.7704,4.1267,-64.5994 2019-06-03 15:40:52.840,139.0149,7143.3516,3.843,3.724,1.0229,0.1025,2400.0,2340.0,-0.5448,-1.7704,4.1373,-64.5994 2019-06-03 15:40:52.860,139.0149,7143.3242,3.843,3.724,0.9648,-0.0095,2400.0,2340.0,-0.5448,-1.7734,4.124,-64.5994 2019-06-03 15:40:52.880,138.9535,7143.2969,3.8566,3.7842,0.9404,0.1354,2400.0,2340.0,-0.5535,-1.7734,4.1227,-64.706 2019-06-03 15:40:52.900,138.9622,7143.2695,3.87,3.8403,0.9615,0.1247,2400.0,2340.0,-0.5564,-1.7704,4.1478,-64.8214 2019-06-03 15:40:52.920,138.9447,7143.2695,3.87,3.8403,0.7866,0.0385,2400.0,2340.0,-0.5477,-1.7734,4.1333,-64.8214 2019-06-03 15:40:52.940,139.0236,7143.2969,3.87,3.8403,1.0935,0.1067,2400.0,2340.0,-0.5448,-1.7704,4.1214,-64.8214 2019-06-03 15:40:52.960,139.0149,7143.2969,3.8841,3.8877,0.8446,-0.008,2400.0,2340.0,-0.5389,-1.7704,4.1094,-64.9386 2019-06-03 15:40:52.980,138.9447,7143.3242,3.8841,3.8877,1.0492,0.1564,2400.0,2340.0,-0.5331,-1.7704,4.1253,-64.9386 2019-06-03 15:40:53.000,138.9535,7143.3242,3.9055,3.9406,1.1616,0.1104,2400.0,2340.0,-0.5214,-1.7674,4.1439,-65.0995 2019-06-03 15:40:53.020,138.9622,7143.2422,3.9107,3.9495,0.8798,0.0781,2400.0,2340.0,-0.5126,-1.7704,4.132,-65.1607 2019-06-03 15:40:53.040,138.9973,7143.2695,3.9107,3.9495,1.1668,0.0594,2400.0,2340.0,-0.5331,-1.7704,4.1161,-65.1607 2019-06-03 15:40:53.060,139.0149,7143.2422,3.9107,3.9495,0.8295,0.095,2400.0,2340.0,-0.5331,-1.7644,4.1227,-65.1607 2019-06-03 15:40:53.080,138.971,7143.2422,3.9324,3.9716,1.2111,0.048,2400.0,2340.0,-0.5652,-1.7704,4.1055,-65.2813 2019-06-03 15:40:53.100,138.9622,7143.1328,3.946,3.9798,1.2389,0.0087,2400.0,2340.0,-0.5418,-1.7704,4.1465,-65.402 2019-06-03 15:40:53.120,138.9622,7143.1602,3.946,3.9798,0.8898,0.1366,2400.0,2340.0,-0.536,-1.7674,4.128,-65.402 2019-06-03 15:40:53.140,139.1724,7143.2148,3.946,3.9798,1.1157,0.002,2400.0,2340.0,-0.5477,-1.7674,4.1121,-65.402 2019-06-03 15:40:53.160,139.1462,7143.2422,3.9588,3.9742,0.9145,0.1841,2400.0,2340.0,-0.5418,-1.7644,4.1081,-65.5244 2019-06-03 15:40:53.180,139.0937,7143.3516,3.9588,3.9742,1.1771,0.0006,2400.0,2340.0,-0.536,-1.7644,4.1108,-65.5244 2019-06-03 15:40:53.200,139.0849,7143.3789,3.9813,3.96,1.0762,-0.0335,2400.0,2340.0,-0.536,-1.7674,4.1267,-65.6957 2019-06-03 15:40:53.220,139.1112,7143.2969,3.9949,3.951,0.9989,0.1729,2400.0,2340.0,-0.5155,-1.7525,4.124,-65.7517 2019-06-03 15:40:53.240,139.1637,7143.2695,3.9949,3.951,1.01,-0.0262,2400.0,2340.0,-0.5243,-1.7555,4.0989,-65.7517 2019-06-03 15:40:53.260,139.1637,7143.2695,3.9949,3.951,1.0932,0.2184,2400.0,2340.0,-0.5126,-1.7555,4.1161,-65.7517 2019-06-03 15:40:53.280,139.1024,7143.2422,4.0087,3.9285,0.9548,-0.0171,2400.0,2340.0,-0.5243,-1.7525,4.1134,-65.8601 2019-06-03 15:40:53.300,139.1199,7143.1875,4.0178,3.8898,0.8949,-0.0398,2400.0,2340.0,-0.5126,-1.7555,4.128,-65.9632 2019-06-03 15:40:53.320,139.0849,7143.1875,4.0178,3.8898,1.0924,0.1635,2400.0,2340.0,-0.5184,-1.7495,4.1015,-65.9632 2019-06-03 15:40:53.340,138.9886,7143.1875,4.0178,3.8898,0.8494,-0.003,2400.0,2340.0,-0.5331,-1.7465,4.0989,-65.9632 2019-06-03 15:40:53.360,139.0236,7143.2148,4.0325,3.8529,1.2178,0.1816,2400.0,2340.0,-0.5214,-1.7525,4.1187,-66.0559 2019-06-03 15:40:53.380,138.9535,7143.2695,4.0325,3.8529,0.6716,0.0512,2400.0,2340.0,-0.536,-1.7495,4.1055,-66.0559 2019-06-03 15:40:53.400,138.971,7143.2695,4.0439,3.7757,0.7285,0.0287,2340.0,2400.0,-0.5184,-1.7495,4.128,-66.1801 2019-06-03 15:40:53.420,138.9622,7143.2148,4.0504,3.7516,1.2189,0.0794,2340.0,2400.0,-0.5301,-1.7525,4.1042,-66.2185 2019-06-03 15:40:53.440,139.0149,7143.2148,4.0504,3.7516,0.8199,0.0866,2340.0,2400.0,-0.536,-1.7495,4.1028,-66.2185 2019-06-03 15:40:53.460,139.0236,7143.1875,4.0504,3.7516,1.2063,0.0476,2340.0,2400.0,-0.5418,-1.7495,4.1134,-66.2185 2019-06-03 15:40:53.480,138.9535,7143.1602,4.0486,3.6869,0.7755,0.1867,2340.0,2400.0,-0.5389,-1.7495,4.0975,-66.2885 2019-06-03 15:40:53.500,138.9798,7143.0508,4.0509,3.6238,0.8494,0.1622,2340.0,2400.0,-0.5126,-1.7495,4.1147,-66.3497 2019-06-03 15:40:53.520,138.9622,7143.0234,4.0509,3.6238,1.1139,-0.0385,2340.0,2400.0,-0.5184,-1.7525,4.1042,-66.3497 2019-06-03 15:40:53.540,138.8569,7142.9961,4.0509,3.6238,0.9108,0.1982,2340.0,2400.0,-0.5272,-1.7465,4.1002,-66.3497 2019-06-03 15:40:53.560,138.8745,7143.0234,4.0515,3.5526,1.0706,-0.0286,2340.0,2400.0,-0.5243,-1.7495,4.1147,-66.4004 2019-06-03 15:40:53.580,138.8217,7143.0781,4.0515,3.5526,1.0318,0.223,2340.0,2400.0,-0.5214,-1.7465,4.1055,-66.4004 2019-06-03 15:40:53.600,138.8129,7143.1055,4.041,3.4359,1.1068,0.1686,2340.0,2400.0,-0.5155,-1.7465,4.1094,-66.4563 2019-06-03 15:40:53.620,138.8217,7143.1328,4.0323,3.3922,0.8831,-0.0271,2340.0,2400.0,-0.5097,-1.7465,4.1028,-66.4721 2019-06-03 15:40:53.640,138.892,7143.1055,4.0323,3.3922,1.1738,0.1671,2340.0,2400.0,-0.5214,-1.7435,4.0989,-66.4721 2019-06-03 15:40:53.660,138.8745,7143.1328,4.0323,3.3922,0.7925,0.0189,2340.0,2400.0,-0.5272,-1.7465,4.1081,-66.4721 2019-06-03 15:40:53.680,138.8129,7143.1328,4.0286,3.3122,1.2692,0.1542,2340.0,2400.0,-0.5272,-1.7435,4.1055,-66.4913 2019-06-03 15:40:53.700,138.8305,7143.1055,4.0186,3.2277,1.2932,0.1098,2340.0,2400.0,-0.5068,-1.7435,4.1134,-66.5 2019-06-03 15:40:53.720,138.8129,7143.1602,4.0186,3.2277,0.7389,0.0646,2340.0,2400.0,-0.5097,-1.7435,4.0949,-66.5 2019-06-03 15:40:53.740,138.5573,7143.1875,4.0186,3.2277,1.2729,0.0979,2340.0,2400.0,-0.5214,-1.7435,4.1028,-66.5 2019-06-03 15:40:53.760,138.6015,7143.2969,3.9961,3.1383,0.8136,0.1,2340.0,2400.0,-0.5155,-1.7405,4.1147,-66.4983 2019-06-03 15:40:53.780,138.5485,7143.3516,3.9961,3.1383,1.1608,0.0534,2340.0,2400.0,-0.5214,-1.7405,4.0909,-66.4983 2019-06-03 15:40:53.800,138.5485,7143.4336,3.9705,3.0005,1.257,0.0142,2340.0,2400.0,-0.5243,-1.7435,4.1081,-66.4773 2019-06-03 15:40:53.820,138.5573,7143.4063,3.9618,2.9558,0.8923,0.1686,2340.0,2400.0,-0.536,-1.7435,4.0989,-66.4651 2019-06-03 15:40:53.840,138.6015,7143.3789,3.9618,2.9558,1.1146,0.0046,2340.0,2400.0,-0.5214,-1.7435,4.1068,-66.4651 2019-06-03 15:40:53.860,138.6015,7143.3789,3.9618,2.9558,0.9726,0.1592,2340.0,2400.0,-0.5184,-1.7375,4.1134,-66.4651 2019-06-03 15:40:53.880,138.5485,7143.3516,3.9422,2.8628,0.9356,0.0339,2340.0,2400.0,-0.5214,-1.7375,4.0883,-66.4301 2019-06-03 15:40:53.900,138.5485,7143.2969,3.9176,2.7726,0.9652,-0.0085,2340.0,2400.0,-0.5272,-1.7345,4.1002,-66.3864 2019-06-03 15:40:53.920,138.5485,7143.2422,3.9176,2.7726,1.1649,0.1702,2340.0,2400.0,-0.5243,-1.7375,4.1134,-66.3864 2019-06-03 15:40:53.940,138.123,7143.2422,3.9176,2.7726,0.9105,0.0287,2340.0,2400.0,-0.5155,-1.7375,4.1094,-66.3864 2019-06-03 15:40:53.960,138.1942,7143.2148,3.8965,2.682,1.1531,0.1775,2340.0,2400.0,-0.5009,-1.7345,4.1134,-66.3322 2019-06-03 15:40:53.980,138.1319,7143.1602,3.8965,2.682,0.7929,0.0326,2340.0,2400.0,-0.5009,-1.7316,4.0869,-66.3322 2019-06-03 15:40:54.000,138.123,7143.1875,3.8638,2.5482,0.7692,0.0122,2340.0,2400.0,-0.5068,-1.7345,4.0989,-66.222 2019-06-03 15:40:54.020,138.123,7143.2148,3.8566,2.5107,1.3006,0.1283,2340.0,2400.0,-0.5155,-1.7345,4.1121,-66.1835 2019-06-03 15:40:54.040,138.1764,7143.2695,3.8566,2.5107,0.7355,0.1015,2340.0,2400.0,-0.5097,-1.7286,4.1134,-66.1835 2019-06-03 15:40:54.060,138.1942,7143.2422,3.8566,2.5107,1.2496,0.0466,2340.0,2400.0,-0.5155,-1.7316,4.1161,-66.1835 2019-06-03 15:40:54.080,138.123,7143.2148,3.8265,2.431,0.6937,0.1342,2340.0,2400.0,-0.5184,-1.7316,4.1015,-66.0996 2019-06-03 15:40:54.100,138.1319,7143.1055,3.8041,2.3549,0.7592,0.1042,2340.0,2400.0,-0.5331,-1.7286,4.0975,-66.0104 2019-06-03 15:40:54.120,138.123,7143.0781,3.8041,2.3549,1.26,0.0636,2340.0,2400.0,-0.5097,-1.7286,4.124,-66.0104 2019-06-03 15:40:54.140,138.034,7143.1055,3.8041,2.3549,0.7082,0.151,2340.0,2400.0,-0.5126,-1.7316,4.1068,-66.0104 2019-06-03 15:40:54.160,138.0429,7143.1328,3.7817,2.2881,1.2063,-0.0488,2340.0,2400.0,-0.5097,-1.7256,4.1108,-65.9125 2019-06-03 15:40:54.180,137.9895,7143.1602,3.7817,2.2881,0.8398,0.2061,2340.0,2400.0,-0.5184,-1.7286,4.1028,-65.9125 2019-06-03 15:40:54.200,137.9895,7143.1055,3.7479,2.1864,0.9711,0.1893,2340.0,2400.0,-0.5214,-1.7226,4.1121,-65.7622 2019-06-03 15:40:54.220,138.0073,7143.1055,3.7331,2.1533,0.9985,-0.0615,2340.0,2400.0,-0.5214,-1.7256,4.1253,-65.7079 2019-06-03 15:40:54.240,138.0518,7143.0781,3.7331,2.1533,0.9585,0.2475,2340.0,2400.0,-0.5126,-1.7226,4.0989,-65.7079 2019-06-03 15:40:54.260,138.0607,7143.1055,3.7331,2.1533,0.9286,-0.0615,2340.0,2400.0,-0.5097,-1.7196,4.1134,-65.7079 2019-06-03 15:40:54.280,137.9984,7143.1055,3.7105,2.0987,1.2015,0.1771,2340.0,2400.0,-0.5214,-1.7256,4.1174,-65.596 2019-06-03 15:40:54.300,137.9895,7143.0508,3.6899,2.0558,1.2315,0.1534,2340.0,2400.0,-0.5331,-1.7226,4.1187,-65.4789 2019-06-03 15:40:54.320,137.9984,7143.0781,3.6899,2.0558,0.74,0.019,2340.0,2400.0,-0.5418,-1.7286,4.1227,-65.4789 2019-06-03 15:40:54.340,138.0518,7142.9961,3.6899,2.0558,1.1645,0.1582,2340.0,2400.0,-0.5331,-1.7226,4.1068,-65.4789 2019-06-03 15:40:54.360,138.0429,7143.0234,3.6634,2.0149,0.7256,0.0182,2340.0,2400.0,-0.5272,-1.7226,4.12,-65.3617 2019-06-03 15:40:54.380,137.9984,7142.9688,3.6634,2.0149,1.2437,0.0887,2340.0,2400.0,-0.5214,-1.7256,4.1306,-65.3617 2019-06-03 15:40:54.400,137.9984,7142.9961,3.6324,1.9648,1.1793,0.0753,2400.0,2340.0,-0.5448,-1.7256,4.1108,-65.1869 2019-06-03 15:40:54.420,137.9984,7142.9961,3.6216,1.9568,0.7929,0.0858,2400.0,2340.0,-0.5477,-1.7226,4.1346,-65.1274 2019-06-03 15:40:54.440,138.0429,7143.0508,3.6216,1.9568,1.2736,0.0672,2400.0,2340.0,-0.5564,-1.7256,4.1094,-65.1274 2019-06-03 15:40:54.460,138.0518,7143.0781,3.6216,1.9568,0.6923,0.107,2400.0,2340.0,-0.5389,-1.7226,4.1399,-65.1274 2019-06-03 15:40:54.480,137.9984,7143.1328,3.6021,1.9396,1.061,-0.0143,2400.0,2340.0,-0.574,-1.7226,4.1147,-65.0068 2019-06-03 15:40:54.500,138.0073,7143.0781,3.5792,1.9251,1.0802,-0.0059,2400.0,2340.0,-0.5594,-1.7226,4.1267,-64.8896 2019-06-03 15:40:54.520,137.9805,7143.0234,3.5792,1.9251,0.9375,0.1798,2400.0,2340.0,-0.5652,-1.7256,4.1253,-64.8896 2019-06-03 15:40:54.540,137.8913,7143.0781,3.5792,1.9251,0.9179,0.0046,2400.0,2340.0,-0.5389,-1.7256,4.124,-64.8896 2019-06-03 15:40:54.560,137.9181,7143.1328,3.5613,1.9113,1.1131,0.1747,2400.0,2340.0,-0.5623,-1.7256,4.12,-64.7742 2019-06-03 15:40:54.580,137.8466,7143.1602,3.5613,1.9113,0.7825,-0.0466,2400.0,2340.0,-0.5623,-1.7405,4.1306,-64.7742 2019-06-03 15:40:54.600,137.8377,7143.1875,3.5372,1.9071,0.8554,0.0035,2400.0,2340.0,-0.5886,-1.7375,4.1174,-64.6116 2019-06-03 15:40:54.620,137.8556,7143.1602,3.537,1.913,1.1727,0.1277,2400.0,2340.0,-0.6003,-1.7375,4.1492,-64.5574 2019-06-03 15:40:54.640,137.9092,7143.0781,3.537,1.913,0.6926,0.0247,2400.0,2340.0,-0.6208,-1.7375,4.1293,-64.5574 2019-06-03 15:40:54.660,137.9181,7142.9961,3.537,1.913,1.2156,0.1416,2400.0,2340.0,-0.6412,-1.7375,4.1134,-64.5574 2019-06-03 15:40:54.680,137.8466,7143.0234,3.5202,1.9166,0.7023,0.0156,2400.0,2340.0,-0.6266,-1.7345,4.1333,-64.456 2019-06-03 15:40:54.700,137.8466,7142.9961,3.5078,1.9232,0.7222,0.0156,2400.0,2340.0,-0.6558,-1.7375,4.1214,-64.3598 2019-06-03 15:40:54.720,137.8466,7142.9961,3.5078,1.9232,1.2433,0.0884,2400.0,2340.0,-0.6412,-1.7375,4.1518,-64.3598 2019-06-03 15:40:54.740,137.9092,7143.0508,3.5078,1.9232,0.7385,0.0673,2400.0,2340.0,-0.6617,-1.7375,4.12,-64.3598 2019-06-03 15:40:54.760,137.8913,7143.0781,3.5032,1.9392,1.1534,0.0821,2400.0,2340.0,-0.6704,-1.7375,4.12,-64.2672 2019-06-03 15:40:54.780,137.8466,7143.0781,3.5032,1.9392,0.7415,0.0842,2400.0,2340.0,-0.6997,-1.7375,4.1333,-64.2672 2019-06-03 15:40:54.800,137.8466,7143.0781,3.4832,1.9669,0.7329,0.102,2400.0,2340.0,-0.7114,-1.7405,4.1333,-64.1413 2019-06-03 15:40:54.820,137.8466,7143.0781,3.4768,1.9828,1.1501,-0.0069,2400.0,2340.0,-0.7172,-1.7375,4.1531,-64.1028 2019-06-03 15:40:54.840,137.9092,7143.1875,3.4768,1.9828,0.8772,0.1287,2400.0,2340.0,-0.7377,-1.7345,4.1214,-64.1028 2019-06-03 15:40:54.860,137.9092,7143.1602,3.4768,1.9828,1.0928,-0.0158,2400.0,2340.0,-0.7464,-1.7375,4.124,-64.1028 2019-06-03 15:40:54.880,137.8466,7143.1602,3.4679,2.0094,0.9648,0.1771,2400.0,2340.0,-0.7435,-1.7375,4.1346,-64.0329 2019-06-03 15:40:54.900,137.8556,7143.1328,3.4647,2.0472,0.8491,0.1796,2400.0,2340.0,-0.7406,-1.7375,4.1386,-63.9699 2019-06-03 15:40:54.920,137.8466,7143.1328,3.4647,2.0472,0.9781,-0.0771,2400.0,2340.0,-0.7347,-1.7405,4.1465,-63.9699 2019-06-03 15:40:54.940,138.2119,7143.1055,3.4647,2.0472,1.139,0.1744,2400.0,2340.0,-0.7347,-1.7375,4.132,-63.9699 2019-06-03 15:40:54.960,138.1675,7143.1328,3.4601,2.0865,1.0051,-0.0335,2400.0,2340.0,-0.764,-1.7375,4.1267,-63.9157 2019-06-03 15:40:54.980,138.123,7143.2148,3.4493,2.1324,1.0728,0.1766,2400.0,2340.0,-0.7698,-1.7405,4.1386,-63.851 2019-06-03 15:40:55.000,138.123,7143.2422,3.4477,2.1553,1.1013,0.1505,2400.0,2340.0,-0.7581,-1.7375,4.1412,-63.8318 2019-06-03 15:40:55.020,138.1319,7143.1875,3.4387,2.1747,0.8901,-0.0049,2400.0,2340.0,-0.764,-1.7345,4.1373,-63.816 2019-06-03 15:40:55.040,138.1764,7143.2148,3.4387,2.1747,1.1975,0.1001,2400.0,2340.0,-0.7698,-1.7405,4.128,-63.816 2019-06-03 15:40:55.060,138.1853,7143.1602,3.4387,2.1747,0.8539,0.0558,2400.0,2340.0,-0.7669,-1.7375,4.1386,-63.816 2019-06-03 15:40:55.080,138.123,7143.1602,3.435,2.2225,1.2263,0.1202,2400.0,2340.0,-0.7669,-1.7405,4.1373,-63.7863 2019-06-03 15:40:55.100,138.123,7143.1055,3.43,2.2668,1.2307,0.081,2400.0,2340.0,-0.7581,-1.7375,4.1293,-63.7671 2019-06-03 15:40:55.120,138.1141,7143.1328,3.43,2.2668,0.7337,0.0615,2400.0,2340.0,-0.7523,-1.7375,4.1386,-63.7671 2019-06-03 15:40:55.140,138.4955,7143.2148,3.43,2.2668,1.1645,0.0266,2400.0,2340.0,-0.7552,-1.7345,4.1333,-63.7671 2019-06-03 15:40:55.160,138.4424,7143.2969,3.4227,2.3062,0.8494,0.1395,2400.0,2340.0,-0.7581,-1.7405,4.1359,-63.7583 2019-06-03 15:40:55.180,138.3982,7143.3242,3.4227,2.3062,1.1945,0.0271,2400.0,2340.0,-0.7523,-1.7375,4.1373,-63.7583 2019-06-03 15:40:55.200,138.407,7143.3242,3.4128,2.3701,1.2282,0.0021,2400.0,2340.0,-0.7552,-1.7405,4.1227,-63.7566 2019-06-03 15:40:55.220,138.407,7143.3242,3.4137,2.3918,0.9064,0.1497,2400.0,2340.0,-0.764,-1.7405,4.1412,-63.7618 2019-06-03 15:40:55.240,138.4601,7143.3242,3.4137,2.3918,1.034,-0.0292,2400.0,2340.0,-0.7727,-1.7375,4.1425,-63.7618 2019-06-03 15:40:55.260,138.469,7143.3242,3.4137,2.3918,1.0151,0.1424,2400.0,2340.0,-0.7844,-1.7405,4.1333,-63.7618 2019-06-03 15:40:55.280,138.3893,7143.3789,3.411,2.4327,0.997,0.0116,2400.0,2340.0,-0.764,-1.7405,4.1373,-63.7793 2019-06-03 15:40:55.300,138.3982,7143.2969,3.4066,2.4689,0.9301,0.0003,2400.0,2340.0,-0.7669,-1.7405,4.1134,-63.8055 2019-06-03 15:40:55.320,138.3982,7143.2695,3.4066,2.4689,1.0621,0.1463,2400.0,2340.0,-0.7552,-1.7435,4.1399,-63.8055 2019-06-03 15:40:55.340,138.7777,7143.2148,3.4066,2.4689,0.9038,-0.0223,2400.0,2340.0,-0.7611,-1.7405,4.1373,-63.8055 2019-06-03 15:40:55.360,138.7249,7143.2969,3.4092,2.5067,1.1109,0.1357,2400.0,2340.0,-0.764,-1.7375,4.1253,-63.8405 2019-06-03 15:40:55.380,138.6809,7143.3242,3.4092,2.5067,0.8432,0.0104,2400.0,2340.0,-0.7727,-1.7405,4.1306,-63.8405 2019-06-03 15:40:55.400,138.672,7143.3516,3.4066,2.5586,0.7237,0.0384,2340.0,2400.0,-0.7669,-1.7375,4.128,-63.8912 2019-06-03 15:40:55.420,138.6809,7143.3516,3.4132,2.5759,1.3095,0.1126,2340.0,2400.0,-0.7727,-1.7405,4.1359,-63.914 2019-06-03 15:40:55.440,138.7425,7143.3789,3.4132,2.5759,0.6989,0.0288,2340.0,2400.0,-0.7698,-1.7405,4.1293,-63.914 2019-06-03 15:40:55.460,138.7337,7143.3516,3.4132,2.5759,1.25,0.0695,2340.0,2400.0,-0.7669,-1.7375,4.12,-63.914 2019-06-03 15:40:55.480,138.6809,7143.3242,3.4154,2.6041,0.7145,0.0909,2340.0,2400.0,-0.7611,-1.7375,4.1306,-63.9682 2019-06-03 15:40:55.500,138.6809,7143.2969,3.4216,2.6304,0.7326,0.1328,2340.0,2400.0,-0.7552,-1.7405,4.1293,-64.0259 2019-06-03 15:40:55.520,138.6809,7143.2422,3.4216,2.6304,1.2681,0.0143,2340.0,2400.0,-0.7611,-1.7405,4.1306,-64.0259 2019-06-03 15:40:55.540,138.9008,7143.2695,3.4216,2.6304,0.8261,0.1187,2340.0,2400.0,-0.7757,-1.7405,4.1267,-64.0259 2019-06-03 15:40:55.560,138.8569,7143.3242,3.4318,2.6557,1.0998,0.018,2340.0,2400.0,-0.7727,-1.7405,4.124,-64.0888 2019-06-03 15:40:55.580,138.8129,7143.3516,3.4318,2.6557,0.8635,0.1195,2340.0,2400.0,-0.7698,-1.7405,4.1373,-64.0888 2019-06-03 15:40:55.600,138.8393,7143.3516,3.4392,2.6799,0.8465,0.1306,2340.0,2400.0,-0.7552,-1.7405,4.1253,-64.1797 2019-06-03 15:40:55.620,138.8217,7143.3516,3.4426,2.6842,1.1427,-0.0137,2340.0,2400.0,-0.7523,-1.7435,4.1267,-64.2147 2019-06-03 15:40:55.640,138.8657,7143.3242,3.4426,2.6842,0.9315,0.1796,2340.0,2400.0,-0.7523,-1.7405,4.124,-64.2147 2019-06-03 15:40:55.660,138.892,7143.3242,3.4426,2.6842,1.0318,-0.004,2340.0,2400.0,-0.7552,-1.7405,4.1174,-64.2147 2019-06-03 15:40:55.680,138.8217,7143.3242,3.4542,2.694,1.004,0.1585,2340.0,2400.0,-0.7581,-1.7465,4.1346,-64.2864 2019-06-03 15:40:55.700,138.8217,7143.2969,3.4661,2.7022,1.0366,0.1585,2340.0,2400.0,-0.764,-1.7405,4.1293,-64.3598 2019-06-03 15:40:55.720,138.8041,7143.2969,3.4661,2.7022,0.99,-0.0338,2340.0,2400.0,-0.7727,-1.7405,4.1187,-64.3598 2019-06-03 15:40:55.740,139.1899,7143.2422,3.4661,2.7022,1.0488,0.1612,2340.0,2400.0,-0.7727,-1.7495,4.12,-64.3598 2019-06-03 15:40:55.760,139.1287,7143.2969,3.4779,2.704,0.8768,0.0218,2340.0,2400.0,-0.7698,-1.7465,4.1161,-64.4333 2019-06-03 15:40:55.780,139.0937,7143.3242,3.4779,2.704,1.2696,0.1649,2340.0,2400.0,-0.7435,-1.7435,4.1373,-64.4333 2019-06-03 15:40:55.800,139.0849,7143.4063,3.4888,2.6939,1.1723,0.128,2340.0,2400.0,-0.7377,-1.7465,4.124,-64.5434 2019-06-03 15:40:55.820,139.0937,7143.4609,3.4875,2.6857,0.8757,0.0012,2340.0,2400.0,-0.7347,-1.7465,4.1214,-64.5801 2019-06-03 15:40:55.840,139.1462,7143.5703,3.4875,2.6857,1.2803,0.1549,2340.0,2400.0,-0.7523,-1.7465,4.1147,-64.5801 2019-06-03 15:40:55.860,139.1375,7143.5977,3.4875,2.6857,0.7696,0.0678,2340.0,2400.0,-0.7698,-1.7465,4.12,-64.5801 2019-06-03 15:40:55.880,139.0937,7143.5977,3.499,2.6778,1.1975,0.0609,2340.0,2400.0,-0.764,-1.7465,4.1267,-64.6536 2019-06-03 15:40:55.900,139.1024,7143.2695,3.5076,2.6572,1.2307,0.0729,2340.0,2400.0,-0.7611,-1.7465,4.1161,-64.7253 2019-06-03 15:40:55.920,139.0762,7142.3403,3.5076,2.6572,0.7951,0.0806,2340.0,2400.0,-0.7581,-1.7465,4.1121,-64.7253 2019-06-03 15:40:55.940,139.1462,7141.0278,3.5076,2.6572,1.2577,0.0488,2340.0,2400.0,-0.7464,-1.7465,4.1214,-64.7253 2019-06-03 15:40:55.960,139.1375,7140.1802,3.5138,2.6335,0.8554,0.157,2340.0,2400.0,-0.7406,-1.7465,4.1147,-64.7952 2019-06-03 15:40:55.980,139.0762,7138.8403,3.5138,2.6335,1.1875,-0.0363,2340.0,2400.0,-0.7318,-1.7465,4.128,-64.7952 2019-06-03 15:40:56.000,139.0937,7137.9932,3.5204,2.5934,1.1816,-0.0171,2340.0,2400.0,-0.7435,-1.7465,4.1055,-64.8756 2019-06-03 15:40:56.020,139.1112,7137.0635,3.5253,2.579,0.8639,0.159,2340.0,2400.0,-0.7523,-1.7435,4.1068,-64.9071 2019-06-03 15:40:56.040,139.1462,7135.7236,3.5253,2.579,1.1387,-0.0129,2340.0,2400.0,-0.7611,-1.7405,4.1214,-64.9071 2019-06-03 15:40:56.060,139.1549,7134.7944,3.5253,2.579,1.0425,0.193,2340.0,2400.0,-0.764,-1.7405,4.1081,-64.9071 2019-06-03 15:40:56.080,139.0849,7134.7671,3.5299,2.5415,0.9989,-0.0466,2340.0,2400.0,-0.7435,-1.7435,4.1306,-64.9683 2019-06-03 15:40:56.100,139.0937,7134.7397,3.5305,2.4915,0.8809,-0.0389,2340.0,2400.0,-0.7464,-1.7405,4.1055,-65.0278 2019-06-03 15:40:56.120,139.0849,7134.7397,3.5305,2.4915,1.0991,0.1771,2340.0,2400.0,-0.7347,-1.7405,4.1094,-65.0278 2019-06-03 15:40:56.140,138.9886,7134.7944,3.5305,2.4915,0.8517,0.0201,2340.0,2400.0,-0.726,-1.7435,4.124,-65.0278 2019-06-03 15:40:56.160,139.0061,7134.7124,3.5353,2.4446,1.1131,0.1523,2340.0,2400.0,-0.7377,-1.7405,4.1055,-65.0802 2019-06-03 15:40:56.180,138.9447,7134.7671,3.5353,2.4446,0.8398,0.0073,2340.0,2400.0,-0.7347,-1.7405,4.1214,-65.0802 2019-06-03 15:40:56.200,138.9535,7134.7124,3.5343,2.3546,0.7551,0.0298,2340.0,2400.0,-0.7435,-1.7435,4.1081,-65.1519 2019-06-03 15:40:56.220,138.9535,7134.6851,3.537,2.3263,1.2311,0.0859,2340.0,2400.0,-0.7406,-1.7405,4.1121,-65.1729 2019-06-03 15:40:56.240,139.0061,7134.7124,3.537,2.3263,0.8136,0.1046,2340.0,2400.0,-0.7406,-1.7435,4.1161,-65.1729 2019-06-03 15:40:56.260,139.0061,7134.6851,3.537,2.3263,1.1904,0.0754,2340.0,2400.0,-0.7231,-1.7405,4.1108,-65.1729 2019-06-03 15:40:56.280,138.9447,7134.7124,3.5318,2.2629,0.7551,0.1142,2340.0,2400.0,-0.7231,-1.7435,4.1121,-65.2096 2019-06-03 15:40:56.300,138.9622,7134.5757,3.5326,2.1965,0.7659,0.1472,2340.0,2400.0,-0.7201,-1.7435,4.1121,-65.2411 2019-06-03 15:40:56.320,138.9447,7134.6304,3.5326,2.1965,1.2219,-0.0246,2340.0,2400.0,-0.7406,-1.7405,4.1055,-65.2411 2019-06-03 15:40:56.340,139.0061,7134.6304,3.5326,2.1965,0.9548,0.2092,2340.0,2400.0,-0.7377,-1.7405,4.1121,-65.2411 2019-06-03 15:40:56.360,139.0149,7134.6577,3.5302,2.1335,1.1105,-0.0293,2340.0,2400.0,-0.7318,-1.7405,4.1147,-65.2621 2019-06-03 15:40:56.380,138.9535,7134.7944,3.521,2.0594,0.831,0.2059,2340.0,2400.0,-0.7406,-1.7405,4.1094,-65.2778 2019-06-03 15:40:56.400,138.9447,7134.7944,3.5199,2.0253,0.9334,0.241,2400.0,2340.0,-0.7435,-1.7405,4.1108,-65.2831 2019-06-03 15:40:56.420,138.9535,7134.7671,3.5092,1.9878,1.0425,-0.0431,2400.0,2340.0,-0.7406,-1.7435,4.1068,-65.2866 2019-06-03 15:40:56.440,139.0061,7134.6851,3.5092,1.9878,1.058,0.2241,2400.0,2340.0,-0.726,-1.7435,4.1147,-65.2866 2019-06-03 15:40:56.460,139.0149,7134.603,3.5092,1.9878,0.9752,-0.0317,2400.0,2340.0,-0.7231,-1.7405,4.1094,-65.2866 2019-06-03 15:40:56.480,138.9535,7134.5757,3.5029,1.9196,1.0255,0.1989,2400.0,2340.0,-0.7172,-1.7435,4.1108,-65.2831 2019-06-03 15:40:56.500,138.9622,7134.4663,3.495,1.8567,1.0917,0.2053,2400.0,2340.0,-0.7377,-1.7405,4.1002,-65.2726 2019-06-03 15:40:56.520,138.9535,7134.4663,3.495,1.8567,0.845,0.0083,2400.0,2340.0,-0.726,-1.7405,4.1147,-65.2726 2019-06-03 15:40:56.540,138.6897,7134.4116,3.495,1.8567,1.2134,0.1808,2400.0,2340.0,-0.7172,-1.7405,4.1094,-65.2726 2019-06-03 15:40:56.560,138.7425,7134.4116,3.478,1.789,0.7814,0.0076,2400.0,2340.0,-0.7026,-1.7375,4.1121,-65.2551 2019-06-03 15:40:56.580,138.6897,7134.3296,3.478,1.789,1.3069,0.1441,2400.0,2340.0,-0.7055,-1.7375,4.1042,-65.2551 2019-06-03 15:40:56.600,138.6809,7134.3569,3.4627,1.6871,1.365,0.1213,2400.0,2340.0,-0.6997,-1.7405,4.1121,-65.2166 2019-06-03 15:40:56.620,138.6897,7134.3022,3.4488,1.6501,0.7274,0.0736,2400.0,2340.0,-0.7172,-1.7375,4.1015,-65.1991 2019-06-03 15:40:56.640,138.7337,7134.3296,3.4488,1.6501,1.2196,0.0379,2400.0,2340.0,-0.688,-1.7345,4.1306,-65.1991 2019-06-03 15:40:56.660,138.7337,7134.3296,3.4488,1.6501,0.7844,0.147,2400.0,2340.0,-0.6851,-1.7375,4.1068,-65.1991 2019-06-03 15:40:56.680,138.672,7134.3569,3.44,1.5909,1.3506,-0.0062,2400.0,2340.0,-0.65,-1.7375,4.1068,-65.1589 2019-06-03 15:40:56.700,138.6897,7134.2476,3.4208,1.5327,1.3084,-0.0144,2400.0,2340.0,-0.6354,-1.7375,4.1094,-65.1117 2019-06-03 15:40:56.720,138.672,7134.2202,3.4208,1.5327,0.865,0.186,2400.0,2340.0,-0.612,-1.7375,4.1055,-65.1117 2019-06-03 15:40:56.740,138.575,7134.2476,3.4208,1.5327,1.1453,-0.0597,2400.0,2340.0,-0.5944,-1.7375,4.124,-65.1117 2019-06-03 15:40:56.760,138.6015,7134.3022,3.4013,1.4727,0.8849,0.212,2400.0,2340.0,-0.5944,-1.7345,4.1081,-65.0592 2019-06-03 15:40:56.780,138.5485,7134.3569,3.4013,1.4727,1.1834,-0.065,2400.0,2340.0,-0.574,-1.7405,4.1068,-65.0592 2019-06-03 15:40:56.800,138.5397,7134.3296,3.3828,1.3901,1.0961,-0.0411,2400.0,2340.0,-0.5681,-1.7375,4.1108,-64.9788 2019-06-03 15:40:56.820,138.5485,7134.3843,3.3799,1.3663,0.8983,0.1913,2400.0,2340.0,-0.5535,-1.7345,4.1068,-64.9456 2019-06-03 15:40:56.840,138.6015,7134.3296,3.3799,1.3663,0.9286,-0.064,2400.0,2340.0,-0.5214,-1.7375,4.128,-64.9456 2019-06-03 15:40:56.860,138.6103,7134.3022,3.3799,1.3663,1.1198,0.2034,2400.0,2340.0,-0.5272,-1.7345,4.1094,-64.9456 2019-06-03 15:40:56.880,138.5397,7134.3022,3.3617,1.3124,0.9016,-0.05,2400.0,2340.0,-0.5126,-1.7316,4.1055,-64.8792 2019-06-03 15:40:56.900,138.5485,7134.2476,3.3455,1.2598,0.798,-0.0201,2400.0,2340.0,-0.5155,-1.7345,4.1108,-64.8092 2019-06-03 15:40:56.920,138.5309,7134.2202,3.3455,1.2598,1.1908,0.1633,2400.0,2340.0,-0.5126,-1.7375,4.1227,-64.8092 2019-06-03 15:40:56.940,138.4336,7134.2202,3.3455,1.2598,0.8317,0.0082,2400.0,2340.0,-0.4804,-1.7375,4.128,-64.8092 2019-06-03 15:40:56.960,138.4513,7134.2476,3.3354,1.2093,1.2185,0.1149,2400.0,2340.0,-0.4571,-1.7345,4.1081,-64.7358 2019-06-03 15:40:56.980,138.3982,7134.3022,3.3354,1.2093,0.8154,0.0354,2400.0,2340.0,-0.4366,-1.7345,4.1108,-64.7358 2019-06-03 15:40:57.000,138.407,7134.3022,3.3166,1.1384,0.7437,0.075,2400.0,2340.0,-0.4044,-1.7375,4.1267,-64.6186 2019-06-03 15:40:57.020,138.407,7134.3022,3.3118,1.1173,1.2222,0.0671,2400.0,2340.0,-0.3694,-1.7375,4.1253,-64.5784 2019-06-03 15:40:57.040,138.469,7134.3843,3.3118,1.1173,0.8217,0.0867,2400.0,2340.0,-0.2963,-1.7375,4.1214,-64.5784 2019-06-03 15:40:57.060,138.4601,7134.3569,3.3118,1.1173,1.176,0.0218,2400.0,2340.0,-0.2554,-1.7345,4.1081,-64.5784 2019-06-03 15:40:57.080,138.3982,7134.3569,3.2985,1.0745,0.7696,0.1196,2400.0,2340.0,-0.2174,-1.7345,4.1121,-64.5015 2019-06-03 15:40:57.100,138.407,7134.3022,3.2912,1.043,0.808,0.1742,2400.0,2340.0,-0.1969,-1.7345,4.1214,-64.4193 2019-06-03 15:40:57.120,138.3893,7134.2749,3.2912,1.043,1.0636,-0.0222,2400.0,2340.0,-0.1472,-1.7345,4.1214,-64.4193 2019-06-03 15:40:57.140,138.3007,7134.2476,3.2912,1.043,0.8875,0.1801,2400.0,2340.0,-0.0654,-1.7316,4.1306,-64.4193 2019-06-03 15:40:57.160,138.3184,7134.2476,3.2821,1.0126,1.0181,-0.067,2400.0,2340.0,-0.0128,-1.7345,4.1108,-64.3371 2019-06-03 15:40:57.180,138.2652,7134.3022,3.2821,1.0126,0.9785,0.1815,2400.0,2340.0,0.0749,-1.7345,4.12,-64.3371 2019-06-03 15:40:57.200,138.2652,7134.3022,3.2679,0.9749,1.0802,0.1994,2400.0,2340.0,0.1363,-1.7345,4.1147,-64.2147 2019-06-03 15:40:57.220,138.2652,7134.3022,3.2556,0.9602,0.9696,-0.0042,2400.0,2340.0,0.2532,-1.7375,4.1161,-64.1727 2019-06-03 15:40:57.240,138.3184,7134.3022,3.2556,0.9602,1.0943,0.1564,2400.0,2340.0,0.3468,-1.7375,4.1214,-64.1727 2019-06-03 15:40:57.260,138.3273,7134.2749,3.2556,0.9602,0.8284,-0.0019,2400.0,2340.0,0.4403,-1.7525,4.1134,-64.1727 2019-06-03 15:40:57.280,138.2652,7134.3022,3.25,0.9459,1.1546,0.1119,2400.0,2340.0,0.5075,-1.7495,4.1068,-64.0853 2019-06-03 15:40:57.300,138.2741,7134.2476,3.2418,0.9342,1.1257,0.0972,2400.0,2340.0,0.5894,-1.7495,4.124,-63.9996 2019-06-03 15:40:57.320,138.2475,7134.2476,3.2418,0.9342,0.7562,0.0715,2400.0,2340.0,0.6858,-1.7525,4.1068,-63.9996 2019-06-03 15:40:57.340,138.4866,7134.2749,3.2418,0.9342,1.2729,0.0881,2400.0,2340.0,0.8261,-1.7435,4.1253,-63.9996 2019-06-03 15:40:57.360,138.4336,7134.3569,3.2279,0.9246,0.7322,0.0679,2400.0,2340.0,0.9109,-1.7465,4.1081,-63.9087 2019-06-03 15:40:57.380,138.3982,7134.3569,3.2279,0.9246,1.2256,0.0612,2400.0,2340.0,0.984,-1.7465,4.0962,-63.9087 2019-06-03 15:40:57.400,138.407,7134.3843,3.2192,0.9168,1.2037,0.0406,2340.0,2400.0,1.0424,-1.7465,4.1227,-63.7776 2019-06-03 15:40:57.420,138.4159,7134.3569,3.2141,0.9131,0.6997,0.1245,2340.0,2400.0,1.0775,-1.7465,4.1147,-63.7286 2019-06-03 15:40:57.440,138.4601,7134.3569,3.2141,0.9131,1.2359,-0.0119,2340.0,2400.0,1.1067,-1.7435,4.1227,-63.7286 2019-06-03 15:40:57.460,138.469,7134.3296,3.2141,0.9131,0.8594,0.1688,2340.0,2400.0,1.1097,-1.7435,4.1055,-63.7286 2019-06-03 15:40:57.480,138.3982,7134.3843,3.2087,0.9094,1.2196,-0.0133,2340.0,2400.0,1.1009,-1.7435,4.0962,-63.6324 2019-06-03 15:40:57.500,138.407,7134.3569,3.1956,0.9099,1.2219,-0.0551,2340.0,2400.0,1.1126,-1.7435,4.1293,-63.5363 2019-06-03 15:40:57.520,138.3982,7134.3296,3.1956,0.9099,0.8376,0.2215,2340.0,2400.0,1.1097,-1.7435,4.1187,-63.5363 2019-06-03 15:40:57.540,138.628,7134.3022,3.1956,0.9099,1.1424,-0.0686,2340.0,2400.0,1.1447,-1.7495,4.1227,-63.5363 2019-06-03 15:40:57.560,138.5927,7134.3569,3.1886,0.9085,0.9926,0.1933,2340.0,2400.0,1.1535,-1.7435,4.1042,-63.4401 2019-06-03 15:40:57.580,138.5485,7134.3843,3.1886,0.9085,0.9212,-0.0332,2340.0,2400.0,1.1974,-1.7435,4.1055,-63.4401 2019-06-03 15:40:57.600,138.5397,7134.4116,3.1779,0.9183,0.9216,-0.0479,2340.0,2400.0,1.2266,-1.7495,4.1333,-63.3002 2019-06-03 15:40:57.620,138.5485,7134.439,3.1791,0.9288,1.227,0.1528,2340.0,2400.0,1.247,-1.7465,4.1147,-63.2513 2019-06-03 15:40:57.640,138.5927,7134.4116,3.1791,0.9288,0.8587,0.0023,2340.0,2400.0,1.2792,-1.7465,4.1134,-63.2513 2019-06-03 15:40:57.660,138.6015,7134.3843,3.1791,0.9288,1.2703,0.1308,2340.0,2400.0,1.288,-1.7435,4.1121,-63.2513 2019-06-03 15:40:57.680,138.5397,7134.3296,3.1688,0.9474,0.8328,0.0537,2340.0,2400.0,1.2967,-1.7435,4.1068,-63.1534 2019-06-03 15:40:57.700,138.5485,7134.2749,3.1582,0.9672,0.8332,0.0256,2340.0,2400.0,1.3143,-1.7465,4.1359,-63.0572 2019-06-03 15:40:57.720,138.5397,7134.3022,3.1582,0.9672,1.3191,0.0625,2340.0,2400.0,1.323,-1.7614,4.1306,-63.0572 2019-06-03 15:40:57.740,138.4424,7134.2749,3.1582,0.9672,0.7285,0.0842,2340.0,2400.0,1.3289,-1.7555,4.1081,-63.0572 2019-06-03 15:40:57.760,138.4513,7134.3569,3.1537,0.9964,1.3321,0.0347,2340.0,2400.0,1.3406,-1.7614,4.1147,-62.961 2019-06-03 15:40:57.780,138.407,7134.3569,3.1483,1.0308,0.8221,0.1634,2340.0,2400.0,1.3698,-1.7555,4.1002,-62.8753 2019-06-03 15:40:57.800,138.407,7134.3843,3.144,1.0494,0.8642,0.1351,2340.0,2400.0,1.4137,-1.7555,4.1425,-62.8281 2019-06-03 15:40:57.820,138.407,7134.4116,3.1376,1.065,1.2152,-0.0308,2340.0,2400.0,1.402,-1.7584,4.12,-62.7827 2019-06-03 15:40:57.840,138.4513,7134.3843,3.1376,1.065,0.9045,0.149,2340.0,2400.0,1.4078,-1.7555,4.1161,-62.7827 2019-06-03 15:40:57.860,138.469,7134.3569,3.1376,1.065,1.1113,0.0152,2340.0,2400.0,1.3961,-1.7555,4.1187,-62.7827 2019-06-03 15:40:57.880,138.4159,7134.3843,3.1291,1.1105,0.8909,0.1672,2340.0,2400.0,1.402,-1.7584,4.1108,-62.6935 2019-06-03 15:40:57.900,138.3982,7134.3569,3.1209,1.1582,0.8628,0.1517,2340.0,2400.0,1.4166,-1.7555,4.1306,-62.6061 2019-06-03 15:40:57.920,138.3982,7134.3569,3.1209,1.1582,0.9452,-0.054,2340.0,2400.0,1.4166,-1.7555,4.1267,-62.6061 2019-06-03 15:40:57.940,138.6191,7134.3843,3.1209,1.1582,1.0876,0.1693,2340.0,2400.0,1.4078,-1.7584,4.1055,-62.6061 2019-06-03 15:40:57.960,138.6015,7134.439,3.1117,1.2125,0.9796,0.0189,2340.0,2400.0,1.4078,-1.7525,4.1214,-62.5239 2019-06-03 15:40:57.980,138.5485,7134.4116,3.1117,1.2125,1.1068,0.1629,2340.0,2400.0,1.399,-1.7555,4.1108,-62.5239 2019-06-03 15:40:58.000,138.5397,7134.4937,3.0972,1.293,1.162,0.1442,2340.0,2400.0,1.4166,-1.7584,4.1293,-62.3875 2019-06-03 15:40:58.020,138.5485,7134.5483,3.0901,1.3183,0.6741,-0.0027,2340.0,2400.0,1.4137,-1.7584,4.1253,-62.3525 2019-06-03 15:40:58.040,138.5927,7134.5757,3.0901,1.3183,1.2322,0.1338,2340.0,2400.0,1.4078,-1.7555,4.1121,-62.3525 2019-06-03 15:40:58.060,138.6015,7134.5483,3.0901,1.3183,0.8805,0.026,2340.0,2400.0,1.4049,-1.7584,4.1227,-62.3525 2019-06-03 15:40:58.080,138.5397,7134.521,3.0828,1.3844,1.1941,0.1525,2340.0,2400.0,1.4049,-1.7614,4.1081,-62.2843 2019-06-03 15:40:58.100,138.5485,7134.4116,3.0724,1.451,1.3025,0.0725,2340.0,2400.0,1.4078,-1.7614,4.1227,-62.2214 2019-06-03 15:40:58.120,138.5397,7134.4116,3.0724,1.451,0.7415,0.0666,2340.0,2400.0,1.4166,-1.7614,4.12,-62.2214 2019-06-03 15:40:58.140,138.9184,7134.439,3.0724,1.451,1.1631,0.051,2340.0,2400.0,1.4166,-1.7614,4.1068,-62.2214 2019-06-03 15:40:58.160,138.8569,7134.439,3.0586,1.5185,0.804,0.1104,2340.0,2400.0,1.4195,-1.7584,4.1346,-62.1672 2019-06-03 15:40:58.180,138.8129,7134.439,3.0586,1.5185,1.1716,0.035,2340.0,2400.0,1.3932,-1.7734,4.1042,-62.1672 2019-06-03 15:40:58.200,138.8217,7134.439,3.0437,1.6325,1.2999,-0.0115,2340.0,2400.0,1.4224,-1.7704,4.1373,-62.0885 2019-06-03 15:40:58.220,138.8217,7134.4116,3.0416,1.6734,0.8361,0.1396,2340.0,2400.0,1.3932,-1.7734,4.1108,-62.0675 2019-06-03 15:40:58.240,138.8745,7134.3569,3.0416,1.6734,1.156,-0.0375,2340.0,2400.0,1.4049,-1.7704,4.1055,-62.0675 2019-06-03 15:40:58.260,138.8832,7134.3296,3.0416,1.6734,0.9926,0.1909,2340.0,2400.0,1.4078,-1.7674,4.1174,-62.0675 2019-06-03 15:40:58.280,138.8129,7134.3569,3.0312,1.7512,1.0151,-0.0151,2340.0,2400.0,1.4224,-1.7734,4.1134,-62.0325 2019-06-03 15:40:58.300,138.8305,7134.3296,3.0186,1.829,1.0177,-0.0381,2340.0,2400.0,1.4195,-1.7704,4.128,-62.0046 2019-06-03 15:40:58.320,138.8129,7134.3569,3.0186,1.829,1.0713,0.193,2340.0,2400.0,1.4137,-1.7704,4.1333,-62.0046 2019-06-03 15:40:58.340,139.1899,7134.3296,3.0186,1.829,0.7807,-0.016,2340.0,2400.0,1.3903,-1.7704,4.0949,-62.0046 2019-06-03 15:40:58.360,139.1375,7134.3296,3.0128,1.9073,1.2078,0.1305,2340.0,2400.0,1.3961,-1.7704,4.1187,-61.9836 2019-06-03 15:40:58.380,139.0937,7134.4116,3.0128,1.9073,0.6416,0.0293,2340.0,2400.0,1.4166,-1.7704,4.1267,-61.9836 2019-06-03 15:40:58.400,139.1024,7134.4116,3.002,2.0311,0.8683,0.0061,2400.0,2340.0,1.4166,-1.7674,4.1214,-61.9574 2019-06-03 15:40:58.420,139.1024,7134.439,3.0037,2.0776,1.2052,0.1509,2400.0,2340.0,1.4107,-1.7704,4.1147,-61.9504 2019-06-03 15:40:58.440,139.1462,7134.4663,3.0037,2.0776,0.7918,0.0558,2400.0,2340.0,1.4253,-1.7704,4.0989,-61.9504 2019-06-03 15:40:58.460,139.1549,7134.4663,3.0037,2.0776,1.3021,0.0492,2400.0,2340.0,1.4283,-1.7704,4.1267,-61.9504 2019-06-03 15:40:58.480,139.0937,7134.439,2.9936,2.1588,0.7067,0.1242,2400.0,2340.0,1.4166,-1.7345,4.12,-61.9469 2019-06-03 15:40:58.500,139.1024,7134.3843,2.9928,2.2434,0.7452,0.0979,2400.0,2340.0,1.4195,-1.6897,4.128,-61.9469 2019-06-03 15:40:58.520,139.0849,7134.3843,2.9928,2.2434,1.2304,0.0311,2400.0,2340.0,1.4049,-1.6897,4.1161,-61.9469 2019-06-03 15:40:58.540,139.3034,7134.3569,2.9928,2.2434,0.8509,0.1627,2400.0,2340.0,1.402,-1.6598,4.1081,-61.9469 2019-06-03 15:40:58.560,139.2773,7134.4116,2.9904,2.3353,1.1309,-0.0368,2400.0,2340.0,1.4049,-1.6658,4.1227,-61.9486 2019-06-03 15:40:58.580,139.2249,7134.439,2.9904,2.3353,0.8102,0.1618,2400.0,2340.0,1.4253,-1.6508,4.1346,-61.9486 2019-06-03 15:40:58.600,139.2249,7134.4663,2.9832,2.4648,0.9441,0.1552,2400.0,2340.0,1.4195,-1.6119,4.1253,-61.9556 2019-06-03 15:40:58.620,139.2336,7134.4116,2.9806,2.5046,0.9822,0.0068,2400.0,2340.0,1.4253,-1.6149,4.124,-61.9626 2019-06-03 15:40:58.640,139.2773,7134.3843,2.9806,2.5046,0.9974,0.1668,2400.0,2340.0,1.4137,-1.57,4.1028,-61.9626 2019-06-03 15:40:58.660,139.2947,7134.3569,2.9806,2.5046,1.0059,-0.0454,2400.0,2340.0,1.437,-1.537,4.1412,-61.9626 2019-06-03 15:40:58.680,139.2249,7134.3843,2.9813,2.5914,1.0499,0.1678,2400.0,2340.0,1.4283,-1.5191,4.1346,-61.9783 2019-06-03 15:40:58.700,139.2336,7134.3569,2.9842,2.6768,1.1394,0.1616,2400.0,2340.0,1.4166,-1.4831,4.124,-61.9993 2019-06-03 15:40:58.720,139.2161,7134.3569,2.9842,2.6768,0.8872,0.002,2400.0,2340.0,1.4078,-1.4771,4.132,-61.9993 2019-06-03 15:40:58.740,139.5993,7134.3843,2.9842,2.6768,1.1941,0.1771,2400.0,2340.0,1.4049,-1.4051,4.1094,-61.9993 2019-06-03 15:40:58.760,139.5385,7134.3843,2.9821,2.76,0.8165,-0.0114,2400.0,2340.0,1.4137,-1.3781,4.1346,-62.0238 2019-06-03 15:40:58.780,139.495,7134.4116,2.9821,2.76,1.2252,0.1018,2400.0,2340.0,1.4253,-1.357,4.128,-62.0238 2019-06-03 15:40:58.800,139.495,7134.439,2.9844,2.8836,1.2592,0.0698,2400.0,2340.0,1.4224,-1.336,4.1161,-62.057 2019-06-03 15:40:58.820,139.5124,7134.3843,2.986,2.9253,0.7954,0.0876,2400.0,2340.0,1.437,-1.333,4.1333,-62.0728 2019-06-03 15:40:58.840,139.5559,7134.3843,2.986,2.9253,1.2929,0.0685,2400.0,2340.0,1.4312,-1.324,4.1134,-62.0728 2019-06-03 15:40:58.860,139.5646,7134.3843,2.986,2.9253,0.8132,0.0888,2400.0,2340.0,1.44,-1.2909,4.1439,-62.0728 2019-06-03 15:40:58.880,139.5037,7134.4116,2.9896,3.0081,1.206,0.0395,2400.0,2340.0,1.4312,-1.2939,4.132,-62.106 2019-06-03 15:40:58.900,139.5124,7134.3296,2.9897,3.0863,1.1571,0.0351,2400.0,2340.0,1.4312,-1.2909,4.1253,-62.141 2019-06-03 15:40:58.920,139.495,7134.3296,2.9897,3.0863,0.8487,0.1361,2400.0,2340.0,1.4312,-1.2879,4.1359,-62.141 2019-06-03 15:40:58.940,139.408,7134.3296,2.9897,3.0863,1.2204,0.0263,2400.0,2340.0,1.4253,-1.2789,4.1161,-62.141 2019-06-03 15:40:58.960,139.4254,7134.3843,2.9924,3.1662,0.9186,0.1308,2400.0,2340.0,1.4341,-1.2699,4.1386,-62.1777 2019-06-03 15:40:58.980,139.3645,7134.4116,2.9924,3.1662,1.1279,0.007,2400.0,2340.0,1.4312,-1.2699,4.1306,-62.1777 2019-06-03 15:40:59.000,139.3645,7134.4663,3.0025,3.288,1.0577,0.0296,2400.0,2340.0,1.4312,-1.2548,4.1293,-62.2179 2019-06-03 15:40:59.020,139.3732,7134.439,3.0101,3.3275,1.0684,0.1381,2400.0,2340.0,1.4224,-1.2578,4.1293,-62.2354 2019-06-03 15:40:59.040,139.4167,7134.3569,3.0101,3.3275,0.9563,0.0469,2400.0,2340.0,1.4341,-1.2488,4.1253,-62.2354 2019-06-03 15:40:59.060,139.4341,7134.3569,3.0101,3.3275,0.8931,0.1161,2400.0,2340.0,1.4195,-1.2458,4.1386,-62.2354 2019-06-03 15:40:59.080,139.3819,7134.3296,3.0143,3.4029,0.9401,0.021,2400.0,2340.0,1.4283,-1.2488,4.1386,-62.2721 2019-06-03 15:40:59.100,139.3645,7134.2476,3.0183,3.476,0.8383,0.0335,2400.0,2340.0,1.4224,-1.2458,4.1161,-62.3071 2019-06-03 15:40:59.120,139.3645,7134.3022,3.0183,3.476,1.162,0.1041,2400.0,2340.0,1.4429,-1.2428,4.1306,-62.3071 2019-06-03 15:40:59.140,139.5819,7134.3296,3.0183,3.476,0.9293,0.0718,2400.0,2340.0,1.4517,-1.2368,4.1227,-62.3071 2019-06-03 15:40:59.160,139.5472,7134.3022,3.0282,3.5469,1.068,0.0891,2400.0,2340.0,1.4429,-1.2187,4.1412,-62.3403 2019-06-03 15:40:59.180,139.5037,7134.3022,3.0282,3.5469,0.7984,0.0848,2400.0,2340.0,1.4341,-1.2037,4.1359,-62.3403 2019-06-03 15:40:59.200,139.495,7134.3843,3.0365,3.6494,0.7359,0.0995,2400.0,2340.0,1.4195,-1.1645,4.1094,-62.3735 2019-06-03 15:40:59.220,139.5124,7134.3296,3.0403,3.6846,1.2452,0.043,2400.0,2340.0,1.437,-1.1465,4.1333,-62.3875 2019-06-03 15:40:59.240,139.5646,7134.3296,3.0403,3.6846,0.882,0.1239,2400.0,2340.0,1.4283,-1.1374,4.128,-62.3875 2019-06-03 15:40:59.260,139.5559,7134.3843,3.0403,3.6846,1.1494,0.0492,2400.0,2340.0,1.437,-1.1073,4.1306,-62.3875 2019-06-03 15:40:59.280,139.495,7134.3569,3.0464,3.7494,0.9105,0.1192,2400.0,2340.0,1.4341,-1.1073,4.1373,-62.4137 2019-06-03 15:40:59.300,139.5124,7134.3022,3.0572,3.8186,0.936,0.1456,2400.0,2340.0,1.4224,-1.1013,4.1055,-62.4365 2019-06-03 15:40:59.320,139.4863,7134.2749,3.0572,3.8186,1.054,0.0244,2400.0,2340.0,1.4253,-1.0802,4.1267,-62.4365 2019-06-03 15:40:59.340,139.5559,7134.3569,3.0572,3.8186,1.0144,0.1239,2400.0,2340.0,1.4253,-1.0711,4.1267,-62.4365 2019-06-03 15:40:59.360,139.5646,7134.439,3.0684,3.8923,1.0865,0.0156,2400.0,2340.0,1.44,-1.0349,4.1373,-62.4522 2019-06-03 15:40:59.380,139.5037,7134.4663,3.0684,3.8923,0.9378,0.135,2400.0,2340.0,1.4312,-1.0289,4.1333,-62.4522 2019-06-03 15:40:59.400,139.5037,7134.521,3.0791,4.0061,1.0048,0.1698,2400.0,2400.0,1.4312,-1.0198,4.12,-62.4644 2019-06-03 15:40:59.420,139.5124,7134.4937,3.0794,4.0448,1.0081,-0.0289,2400.0,2400.0,1.437,-1.0017,4.1306,-62.4679 2019-06-03 15:40:59.440,139.5559,7134.4663,3.0794,4.0448,1.0007,0.1567,2400.0,2400.0,1.4487,-1.0017,4.128,-62.4679 2019-06-03 15:40:59.460,139.5646,7134.4116,3.0794,4.0448,1.0728,0.0021,2400.0,2400.0,1.44,-0.9746,4.124,-62.4679 2019-06-03 15:40:59.480,139.495,7134.4663,3.0896,4.123,1.0954,0.1343,2400.0,2400.0,1.4341,-0.9746,4.1386,-62.4732 2019-06-03 15:40:59.500,139.5037,7134.4116,3.0993,4.2096,1.1242,0.1472,2400.0,2400.0,1.4253,-0.9715,4.1306,-62.4714 2019-06-03 15:40:59.520,139.495,7134.3569,3.0993,4.2096,0.8868,0.0056,2400.0,2400.0,1.4341,-0.9625,4.1293,-62.4714 2019-06-03 15:40:59.540,139.408,7134.3569,3.0993,4.2096,1.1309,0.1277,2400.0,2400.0,1.4312,-0.9595,4.1253,-62.4714 2019-06-03 15:40:59.560,139.4254,7134.4116,3.1023,4.2926,0.9245,-0.0082,2400.0,2400.0,1.4312,-0.9323,4.1359,-62.4662 2019-06-03 15:40:59.580,139.3732,7134.439,3.1023,4.2926,1.0884,0.1264,2400.0,2400.0,1.4283,-0.9141,4.1359,-62.4662 2019-06-03 15:40:59.600,139.3645,7134.4663,3.1137,4.4213,1.1653,0.1354,2400.0,2400.0,1.4283,-0.893,4.1227,-62.4452 2019-06-03 15:40:59.620,139.3645,7134.4937,3.1133,4.4652,0.8554,0.0582,2400.0,2400.0,1.4341,-0.89,4.1306,-62.4382 2019-06-03 15:40:59.640,139.4341,7134.4937,3.1133,4.4652,1.1904,0.0717,2400.0,2400.0,1.44,-0.8809,4.132,-62.4382 2019-06-03 15:40:59.660,139.4254,7134.4663,3.1133,4.4652,0.8591,0.0697,2400.0,2400.0,1.44,-0.8446,4.1452,-62.4382 2019-06-03 15:40:59.680,139.3557,7134.4663,3.119,4.551,1.2104,0.0792,2400.0,2400.0,1.4341,-0.8265,4.1452,-62.4172 2019-06-03 15:40:59.700,139.3819,7134.0288,3.1212,4.6425,1.081,0.0868,2400.0,2400.0,1.4224,-0.8083,4.1227,-62.3927 2019-06-03 15:40:59.720,139.3557,7132.8535,3.1212,4.6425,0.9267,0.0834,2400.0,2400.0,1.4253,-0.8053,4.1346,-62.3927 2019-06-03 15:40:59.740,139.4254,7131.2954,3.1212,4.6425,1.1065,0.0659,2400.0,2400.0,1.4166,-0.7992,4.1359,-62.3927 2019-06-03 15:40:59.760,139.4167,7130.2842,3.1221,4.734,0.9101,0.0936,2400.0,2400.0,1.4195,-0.8022,4.1452,-62.363 2019-06-03 15:40:59.780,139.3645,7128.6992,3.1221,4.734,1.0861,0.0315,2400.0,2400.0,1.4137,-0.8053,4.1439,-62.363 2019-06-03 15:40:59.800,139.3645,7127.6602,3.1247,4.8813,0.9789,0.0247,2400.0,2400.0,1.4224,-0.7992,4.1306,-62.3053 2019-06-03 15:40:59.820,139.3732,7126.6489,3.1284,4.9334,0.9338,0.1511,2400.0,2400.0,1.4312,-0.7962,4.1505,-62.2843 2019-06-03 15:40:59.840,139.4167,7125.1455,3.1284,4.9334,1.0199,-0.0399,2400.0,2400.0,1.4253,-0.7901,4.1412,-62.2843 2019-06-03 15:40:59.860,139.4341,7124.1069,3.1284,4.9334,1.041,0.205,2400.0,2400.0,1.4253,-0.775,4.1558,-62.2843 2019-06-03 15:40:59.880,139.3645,7124.0249,3.1283,5.0354,0.9611,-0.0489,2400.0,2400.0,1.4137,-0.778,4.1558,-62.2406 2019-06-03 15:40:59.900,139.3645,7123.9702,3.1264,5.1366,0.9944,-0.0031,2400.0,2400.0,1.4107,-0.775,4.1439,-62.1934 2019-06-03 15:40:59.920,139.3557,7123.9976,3.1264,5.1366,1.0547,0.1607,2400.0,2400.0,1.4195,-0.7447,4.1505,-62.1934 2019-06-03 15:40:59.940,139.4254,7123.9976,3.1264,5.1366,0.9626,-0.005,2400.0,2400.0,1.4224,-0.7447,4.1651,-62.1934 2019-06-03 15:40:59.960,139.4167,7124.0796,3.1312,5.2456,1.075,0.1459,2400.0,2400.0,1.4078,-0.7266,4.1531,-62.1392 2019-06-03 15:40:59.980,139.3645,7124.0796,3.1312,5.2456,0.9423,0.0185,2400.0,2400.0,1.4224,-0.7266,4.177,-62.1392 2019-06-03 15:41:00.000,139.3645,7124.0796,3.1332,5.4128,0.9467,0.0345,2400.0,2400.0,1.402,-0.7266,4.1518,-62.0413 2019-06-03 15:41:00.020,139.3645,7124.0522,3.136,5.4723,1.1305,0.0969,2400.0,2400.0,1.4166,-0.7175,4.177,-62.0098 2019-06-03 15:41:00.040,139.4167,7124.0796,3.136,5.4723,0.9023,0.0421,2400.0,2400.0,1.402,-0.7205,4.1704,-62.0098 2019-06-03 15:41:00.060,139.4341,7124.0522,3.136,5.4723,1.2544,0.0817,2400.0,2400.0,1.4049,-0.7235,4.1531,-62.0098 2019-06-03 15:41:00.080,139.3645,7124.0796,3.1335,5.5872,0.8265,0.0943,2400.0,2400.0,1.402,-0.7235,4.1571,-61.9469 2019-06-03 15:41:00.100,139.3819,7124.0249,3.137,5.7099,0.8757,0.0778,2400.0,2400.0,1.4195,-0.7326,4.1637,-61.8787 2019-06-03 15:41:00.120,139.3557,7124.0249,3.137,5.7099,1.1975,0.0426,2400.0,2400.0,1.4107,-0.7296,4.1664,-61.8787 2019-06-03 15:41:00.140,139.4167,7123.9976,3.137,5.7099,0.8938,0.1165,2400.0,2400.0,1.402,-0.7266,4.1743,-61.8787 2019-06-03 15:41:00.160,139.4254,7124.0522,3.1404,5.84,1.2958,0.0192,2400.0,2400.0,1.3932,-0.7266,4.1545,-61.807 2019-06-03 15:41:00.180,139.3645,7124.1069,3.1404,5.84,0.8905,0.1576,2400.0,2400.0,1.3961,-0.7296,4.1624,-61.807 2019-06-03 15:41:00.200,139.3645,7124.1343,3.1408,6.0382,0.8983,0.1683,2400.0,2400.0,1.402,-0.7266,4.1558,-61.6933 2019-06-03 15:41:00.220,139.3732,7124.1069,3.1364,6.1046,1.1394,-0.0341,2400.0,2400.0,1.4078,-0.7175,4.169,-61.6566 2019-06-03 15:41:00.240,139.4167,7124.1069,3.1364,6.1046,1.0961,0.155,2400.0,2400.0,1.399,-0.7266,4.1637,-61.6566 2019-06-03 15:41:00.260,139.4341,7124.0522,3.1364,6.1046,0.9626,-0.0361,2400.0,2400.0,1.3903,-0.7235,4.1584,-61.6566 2019-06-03 15:41:00.280,139.3645,7124.0522,3.1374,6.244,1.0802,0.1893,2400.0,2400.0,1.3844,-0.7235,4.1783,-61.5762 2019-06-03 15:41:00.300,139.3645,7123.9976,3.1397,6.3868,1.0266,0.176,2400.0,2400.0,1.3873,-0.7235,4.1717,-61.4957 2019-06-03 15:41:00.320,139.3645,7123.9976,3.1397,6.3868,1.014,-0.014,2400.0,2400.0,1.402,-0.7235,4.173,-61.4957 2019-06-03 15:41:00.340,139.4254,7123.9702,3.1397,6.3868,1.1335,0.1595,2400.0,2400.0,1.3932,-0.7235,4.1809,-61.4957 2019-06-03 15:41:00.360,139.4167,7124.0522,3.1376,6.5343,0.872,0.0118,2400.0,2400.0,1.3844,-0.7205,4.1651,-61.4136 2019-06-03 15:41:00.380,139.3732,7124.0522,3.1376,6.5343,1.2559,0.1399,2400.0,2400.0,1.364,-0.7144,4.1756,-61.4136 2019-06-03 15:41:00.400,139.3645,7124.0522,3.1367,6.7555,1.0588,0.1237,2340.0,2340.0,1.3669,-0.7235,4.1756,-61.2877 2019-06-03 15:41:00.420,139.3732,7124.0249,3.1313,6.829,0.9785,0.0284,2340.0,2340.0,1.364,-0.7205,4.1756,-61.2457 2019-06-03 15:41:00.440,139.4167,7123.9702,3.1313,6.829,1.1915,0.0931,2340.0,2340.0,1.3523,-0.7235,4.1849,-61.2457 2019-06-03 15:41:00.460,139.4254,7123.9702,3.1313,6.829,0.889,0.0812,2340.0,2340.0,1.3435,-0.7175,4.1571,-61.2457 2019-06-03 15:41:00.480,139.3645,7123.9429,3.1337,6.9845,1.2211,0.0752,2340.0,2340.0,1.3377,-0.7144,4.173,-61.16 2019-06-03 15:41:00.500,139.3732,7123.834,3.1294,7.1403,1.1124,0.0823,2340.0,2340.0,1.3347,-0.7266,4.1783,-61.0726 2019-06-03 15:41:00.520,139.3557,7123.8613,3.1294,7.1403,0.8827,0.0656,2340.0,2340.0,1.3406,-0.7296,4.1862,-61.0726 2019-06-03 15:41:00.540,139.4254,7123.8066,3.1294,7.1403,1.1194,0.045,2340.0,2340.0,1.3435,-0.7235,4.1889,-61.0726 2019-06-03 15:41:00.560,139.4254,7123.8613,3.1257,7.2958,0.8968,0.1326,2340.0,2340.0,1.3318,-0.7266,4.1664,-60.9887 2019-06-03 15:41:00.580,139.3732,7123.8613,3.1228,7.4606,1.1745,0.0195,2340.0,2340.0,1.2997,-0.7235,4.1836,-60.8977 2019-06-03 15:41:00.600,139.3645,7123.9702,3.1207,7.5415,1.2134,0.0159,2340.0,2340.0,1.2821,-0.7296,4.1889,-60.854 2019-06-03 15:41:00.620,139.3732,7123.9429,3.121,7.6273,0.8657,0.1035,2340.0,2340.0,1.285,-0.7417,4.1942,-60.8103 2019-06-03 15:41:00.640,139.4167,7123.9702,3.121,7.6273,1.1583,0.0342,2340.0,2340.0,1.285,-0.7356,4.1929,-60.8103 2019-06-03 15:41:00.660,139.4341,7123.9702,3.121,7.6273,0.9186,0.1451,2340.0,2340.0,1.2909,-0.7356,4.1651,-60.8103 2019-06-03 15:41:00.680,139.3732,7123.9429,3.1176,7.7935,1.0869,-0.0003,2340.0,2340.0,1.3114,-0.7356,4.1876,-60.7246 2019-06-03 15:41:00.700,139.3732,7123.8887,3.1087,7.966,1.1571,0.0059,2340.0,2340.0,1.3026,-0.7356,4.1836,-60.6407 2019-06-03 15:41:00.720,139.3645,7123.916,3.1087,7.966,0.9408,0.1235,2340.0,2340.0,1.2997,-0.7356,4.1915,-60.6407 2019-06-03 15:41:00.740,139.5733,7123.9702,3.1087,7.966,1.1583,-0.0079,2340.0,2340.0,1.2763,-0.7417,4.1849,-60.6407 2019-06-03 15:41:00.760,139.5472,7123.9976,3.1033,8.1392,1.0909,0.1799,2340.0,2340.0,1.2792,-0.7356,4.1796,-60.555 2019-06-03 15:41:00.780,139.5037,7124.0249,3.1033,8.1392,1.0355,-0.0427,2340.0,2340.0,1.2734,-0.7356,4.1902,-60.555 2019-06-03 15:41:00.800,139.5037,7124.0796,3.0976,8.4072,1.0599,0.0023,2340.0,2340.0,1.2821,-0.7326,4.1902,-60.4239 2019-06-03 15:41:00.820,139.5124,7124.0249,3.0982,8.5004,1.0861,0.1289,2340.0,2340.0,1.285,-0.7356,4.1796,-60.3837 2019-06-03 15:41:00.840,139.5646,7124.0796,3.0982,8.5004,0.9996,0.0104,2340.0,2340.0,1.3026,-0.7326,4.1955,-60.3837 2019-06-03 15:41:00.860,139.5646,7124.0796,3.0982,8.5004,1.1416,0.1358,2340.0,2340.0,1.2938,-0.7417,4.1783,-60.3837 2019-06-03 15:41:00.880,139.495,7124.1343,3.0928,8.681,0.9837,-0.0067,2340.0,2340.0,1.2967,-0.7417,4.1995,-60.3032 2019-06-03 15:41:00.900,139.5124,7124.0796,3.0892,8.8618,0.9212,0.0189,2340.0,2340.0,1.2909,-0.7387,4.1915,-60.2246 2019-06-03 15:41:00.920,139.495,7124.0796,3.0892,8.8618,1.1941,0.1137,2340.0,2340.0,1.2938,-0.7417,4.1889,-60.2246 2019-06-03 15:41:00.940,139.5646,7124.1069,3.0892,8.8618,0.8827,0.0749,2340.0,2340.0,1.285,-0.7387,4.1902,-60.2246 2019-06-03 15:41:00.960,139.5559,7124.0796,3.0866,9.0475,1.1497,0.0763,2340.0,2340.0,1.285,-0.7568,4.1809,-60.1476 2019-06-03 15:41:00.980,139.5037,7124.1069,3.0866,9.0475,0.8317,0.0743,2340.0,2340.0,1.2909,-0.7599,4.2008,-60.1476 2019-06-03 15:41:01.000,139.5037,7124.1343,3.0818,9.323,0.7592,0.1149,2340.0,2340.0,1.2792,-0.7599,4.1929,-60.0217 2019-06-03 15:41:01.020,139.5124,7124.1069,3.0774,9.4166,1.1904,0.0288,2340.0,2340.0,1.2763,-0.7538,4.1902,-59.9868 2019-06-03 15:41:01.040,139.5559,7124.1069,3.0774,9.4166,0.8469,0.133,2340.0,2340.0,1.2763,-0.7568,4.1968,-59.9868 2019-06-03 15:41:01.060,139.5646,7124.1069,3.0774,9.4166,1.0817,0.045,2340.0,2340.0,1.288,-0.7599,4.1836,-59.9868 2019-06-03 15:41:01.080,139.5037,7124.1069,3.0719,9.6006,0.8938,0.1155,2340.0,2340.0,1.2967,-0.7568,4.1982,-59.9186 2019-06-03 15:41:01.100,139.5037,7124.0249,3.0709,9.7901,0.791,0.1247,2340.0,2340.0,1.2909,-0.7568,4.1982,-59.8504 2019-06-03 15:41:01.120,139.5037,7124.0522,3.0709,9.7901,1.1542,-0.0027,2340.0,2340.0,1.2821,-0.7599,4.1982,-59.8504 2019-06-03 15:41:01.140,139.7207,7124.0796,3.0709,9.7901,0.9556,0.1655,2340.0,2340.0,1.2704,-0.7599,4.2021,-59.8504 2019-06-03 15:41:01.160,139.6774,7124.1069,3.0677,9.9742,1.0821,0.0081,2340.0,2340.0,1.2792,-0.7538,4.1955,-59.7874 2019-06-03 15:41:01.180,139.6427,7124.1069,3.0677,9.9742,0.8735,0.13,2340.0,2340.0,1.3055,-0.7568,4.2127,-59.7874 2019-06-03 15:41:01.200,139.6427,7124.1069,3.0623,10.2474,0.9852,0.1621,2340.0,2340.0,1.3026,-0.7599,4.2101,-59.693 2019-06-03 15:41:01.220,139.6427,7124.0796,3.0562,10.3346,1.0196,0.0003,2340.0,2340.0,1.3084,-0.7568,4.2114,-59.665 2019-06-03 15:41:01.240,139.7034,7124.0249,3.0562,10.3346,1.0536,0.1677,2340.0,2340.0,1.2967,-0.7568,4.2101,-59.665 2019-06-03 15:41:01.260,139.7034,7124.0249,3.0562,10.3346,0.9278,0.0071,2340.0,2340.0,1.2909,-0.7599,4.2114,-59.665 2019-06-03 15:41:01.280,139.6427,7124.0249,3.0556,10.5177,1.0717,0.1552,2340.0,2340.0,1.2763,-0.7538,4.2074,-59.6073 2019-06-03 15:41:01.300,139.6427,7123.9976,3.0561,10.701,1.1645,0.161,2340.0,2340.0,1.2763,-0.7599,4.2233,-59.5549 2019-06-03 15:41:01.320,139.6254,7124.0522,3.0561,10.701,0.9922,0.0207,2340.0,2340.0,1.2734,-0.7599,4.2074,-59.5549 2019-06-03 15:41:01.340,139.8419,7124.0522,3.0561,10.701,1.1128,0.1141,2340.0,2340.0,1.3055,-0.7599,4.2273,-59.5549 2019-06-03 15:41:01.360,139.8246,7124.0522,3.0527,10.881,0.9127,0.0613,2340.0,2340.0,1.2909,-0.7599,4.2127,-59.5042 2019-06-03 15:41:01.380,139.7727,7124.0249,3.0527,10.881,1.1157,0.0839,2340.0,2340.0,1.3055,-0.7599,4.2273,-59.5042 2019-06-03 15:41:01.400,139.7727,7124.0249,3.0524,11.1515,1.2026,0.1072,2400.0,2400.0,1.2763,-0.769,4.2299,-59.4272 2019-06-03 15:41:01.420,139.7727,7124.0796,3.0517,11.2392,0.7906,0.0754,2400.0,2400.0,1.2734,-0.7841,4.2299,-59.4045 2019-06-03 15:41:01.440,139.8246,7124.1069,3.0517,11.2392,1.2074,0.0867,2400.0,2400.0,1.2675,-0.7841,4.2366,-59.4045 2019-06-03 15:41:01.460,139.8419,7124.0249,3.0517,11.2392,0.8776,0.0786,2400.0,2400.0,1.2617,-0.7841,4.2286,-59.4045 2019-06-03 15:41:01.480,139.7813,7123.9429,3.0568,11.42,1.1745,0.0791,2400.0,2400.0,1.2734,-0.7841,4.2471,-59.3573 2019-06-03 15:41:01.500,139.7727,7123.834,3.0622,11.5965,1.2115,0.1019,2400.0,2400.0,1.2529,-0.8113,4.2432,-59.3101 2019-06-03 15:41:01.520,139.7727,7123.8613,3.0622,11.5965,0.8247,0.0836,2400.0,2400.0,1.2704,-0.8083,4.2445,-59.3101 2019-06-03 15:41:01.540,139.8419,7123.8887,3.0622,11.5965,1.2052,0.0654,2400.0,2400.0,1.285,-0.8113,4.2511,-59.3101 2019-06-03 15:41:01.560,139.816,7123.9429,3.0658,11.7713,0.9197,0.0938,2400.0,2400.0,1.2792,-0.8113,4.2471,-59.2629 2019-06-03 15:41:01.580,139.7727,7123.9702,3.0658,11.7713,1.1638,0.0467,2400.0,2400.0,1.2821,-0.8113,4.2644,-59.2629 2019-06-03 15:41:01.600,139.7813,7123.9429,3.0793,12.0328,1.1627,0.0786,2400.0,2400.0,1.25,-0.8325,4.2591,-59.1894 2019-06-03 15:41:01.620,139.7813,7123.9429,3.0816,12.1183,0.9227,0.1177,2400.0,2400.0,1.2412,-0.8325,4.2485,-59.165 2019-06-03 15:41:01.640,139.8333,7123.9429,3.0816,12.1183,1.1693,-0.0008,2400.0,2400.0,1.212,-0.8386,4.263,-59.165 2019-06-03 15:41:01.660,139.8333,7123.9429,3.0816,12.1183,0.9733,0.1476,2400.0,2400.0,1.2178,-0.8507,4.2577,-59.165 2019-06-03 15:41:01.680,139.7727,7123.9976,3.0902,12.2861,1.1967,-0.0121,2400.0,2400.0,1.2178,-0.8476,4.2644,-59.1195 2019-06-03 15:41:01.700,139.7813,7123.6152,3.0973,12.4534,1.162,-0.0178,2400.0,2400.0,1.2032,-0.8476,4.2617,-59.0705 2019-06-03 15:41:01.720,139.764,7122.7134,3.0973,12.4534,0.933,0.1993,2400.0,2400.0,1.2061,-0.8567,4.2524,-59.0705 2019-06-03 15:41:01.740,139.9887,7121.4565,3.0973,12.4534,1.1372,-0.0549,2400.0,2400.0,1.2003,-0.8537,4.2683,-59.0705 2019-06-03 15:41:01.760,139.9628,7120.6094,3.1044,12.6192,0.8957,0.1844,2400.0,2400.0,1.1769,-0.8567,4.2644,-59.0233 2019-06-03 15:41:01.780,139.911,7119.3252,3.1044,12.6192,1.1956,-0.0225,2400.0,2400.0,1.1623,-0.8567,4.267,-59.0233 2019-06-03 15:41:01.800,139.9197,7118.4507,3.122,12.8668,1.0451,-0.0113,2400.0,2400.0,1.1301,-0.8567,4.2683,-58.9481 2019-06-03 15:41:01.820,139.9197,7117.5762,3.1304,12.9497,1.0554,0.1635,2400.0,2400.0,1.1272,-0.8567,4.2564,-58.9219 2019-06-03 15:41:01.840,139.9628,7116.292,3.1304,12.9497,0.9667,-0.0152,2400.0,2400.0,1.1301,-0.8597,4.2697,-58.9219 2019-06-03 15:41:01.860,139.9715,7115.4175,3.1304,12.9497,1.0736,0.1643,2400.0,2400.0,1.1214,-0.8597,4.2697,-58.9219 2019-06-03 15:41:01.880,139.9197,7115.3081,3.1396,13.1103,0.956,-0.0265,2400.0,2400.0,1.1272,-0.8567,4.2723,-58.8712 2019-06-03 15:41:01.900,139.9197,7115.2261,3.1505,13.2677,0.9404,0.0564,2400.0,2400.0,1.1272,-0.8597,4.2749,-58.8187 2019-06-03 15:41:01.920,139.911,7115.144,3.1505,13.2677,1.1616,0.1439,2400.0,2400.0,1.1272,-0.8597,4.2657,-58.8187 2019-06-03 15:41:01.940,140.1266,7115.1714,3.1505,13.2677,0.9108,0.0206,2400.0,2400.0,1.1214,-0.8597,4.2908,-58.8187 2019-06-03 15:41:01.960,140.0921,7115.2261,3.1626,13.4258,1.146,0.1182,2400.0,2400.0,1.1126,-0.8688,4.2895,-58.7645 2019-06-03 15:41:01.980,140.0405,7115.2808,3.1769,13.5818,0.906,0.0296,2400.0,2400.0,1.1038,-0.8627,4.2736,-58.7051 2019-06-03 15:41:02.000,140.0491,7115.3354,3.1808,13.6564,0.9511,0.0644,2400.0,2400.0,1.098,-0.8748,4.2869,-58.6771 2019-06-03 15:41:02.020,140.0405,7115.3354,3.1874,13.7338,1.1409,0.1386,2400.0,2400.0,1.095,-0.8779,4.2882,-58.6491 2019-06-03 15:41:02.040,140.1008,7115.2808,3.1874,13.7338,0.9482,0.0121,2400.0,2400.0,1.095,-0.8748,4.3054,-58.6491 2019-06-03 15:41:02.060,140.118,7115.2261,3.1874,13.7338,1.2097,0.1085,2400.0,2400.0,1.0892,-0.8839,4.2948,-58.6491 2019-06-03 15:41:02.080,140.0491,7115.3081,3.1967,13.8799,0.8298,0.0359,2400.0,2400.0,1.0921,-0.8809,4.2908,-58.5932 2019-06-03 15:41:02.100,140.0491,7115.2534,3.2093,14.0311,0.9205,0.0868,2400.0,2400.0,1.0834,-0.9141,4.3014,-58.532 2019-06-03 15:41:02.120,140.0491,7115.2534,3.2093,14.0311,1.1486,0.0757,2400.0,2400.0,1.0804,-0.8748,4.3054,-58.532 2019-06-03 15:41:02.140,140.247,7115.2808,3.2093,14.0311,0.8591,0.0947,2400.0,2400.0,1.0571,-0.8809,4.3253,-58.532 2019-06-03 15:41:02.160,140.2298,7115.3081,3.2211,14.1823,1.25,0.0222,2400.0,2400.0,1.0191,-0.9081,4.3213,-58.469 2019-06-03 15:41:02.180,140.1868,7115.2808,3.2211,14.1823,0.7892,0.1155,2400.0,2400.0,1.0278,-0.896,4.3226,-58.469 2019-06-03 15:41:02.200,140.1782,7115.3354,3.2377,14.4016,0.9308,0.1509,2400.0,2400.0,1.0278,-0.9021,4.3411,-58.3624 2019-06-03 15:41:02.220,140.1868,7115.3628,3.2407,14.4737,1.1938,0.0306,2400.0,2400.0,1.0337,-0.9111,4.3464,-58.3309 2019-06-03 15:41:02.240,140.2384,7115.3628,3.2407,14.4737,0.9223,0.1405,2400.0,2400.0,1.0278,-0.9141,4.3451,-58.3309 2019-06-03 15:41:02.260,140.2384,7115.3901,3.2407,14.4737,1.2015,-0.0116,2400.0,2400.0,1.0191,-0.9081,4.3411,-58.3309 2019-06-03 15:41:02.280,140.1868,7115.4175,3.2514,14.6126,0.9563,0.1616,2400.0,2400.0,1.0015,-0.9111,4.3451,-58.261 2019-06-03 15:41:02.300,140.1954,7115.3354,3.2669,14.7625,1.0085,0.1748,2400.0,2400.0,1.0044,-0.9232,4.3703,-58.1858 2019-06-03 15:41:02.320,140.1868,7115.3354,3.2669,14.7625,0.9726,0.0083,2400.0,2400.0,1.0132,-0.9262,4.3623,-58.1858 2019-06-03 15:41:02.340,140.2384,7115.3354,3.2669,14.7625,0.9807,0.1516,2400.0,2400.0,1.0249,-0.9232,4.3597,-58.1858 2019-06-03 15:41:02.360,140.2298,7115.3901,3.2775,14.9033,1.1091,-0.0187,2400.0,2400.0,1.0191,-0.9232,4.3597,-58.1088 2019-06-03 15:41:02.380,140.1782,7115.3901,3.2775,14.9033,1.1039,0.1445,2400.0,2400.0,0.9927,-0.9232,4.3504,-58.1088 2019-06-03 15:41:02.400,140.1782,7115.4175,3.2957,15.1123,1.1183,0.1534,2340.0,2400.0,0.9927,-0.9232,4.3928,-57.9742 2019-06-03 15:41:02.420,140.1782,7115.3901,3.2975,15.1772,0.9855,0.0067,2340.0,2400.0,0.9489,-0.9262,4.3769,-57.934 2019-06-03 15:41:02.440,140.2384,7115.3628,3.2975,15.1772,1.149,0.1523,2340.0,2400.0,0.9606,-0.9323,4.3822,-57.934 2019-06-03 15:41:02.460,140.247,7115.3354,3.2975,15.1772,0.8598,-0.0446,2340.0,2400.0,0.9489,-0.9444,4.3742,-57.934 2019-06-03 15:41:02.480,140.1868,7115.3354,3.3099,15.3244,1.2688,0.1512,2340.0,2400.0,0.9547,-0.9474,4.3769,-57.8483 2019-06-03 15:41:02.500,140.1868,7115.2808,3.3207,15.4676,1.2111,0.1503,2340.0,2400.0,0.9577,-0.9444,4.4021,-57.7591 2019-06-03 15:41:02.520,140.1782,7115.2808,3.3207,15.4676,0.8199,0.0207,2340.0,2400.0,0.9489,-0.9444,4.3915,-57.7591 2019-06-03 15:41:02.540,140.2384,7115.3354,3.3207,15.4676,1.2208,0.1207,2340.0,2400.0,0.9635,-0.9413,4.3941,-57.7591 2019-06-03 15:41:02.560,140.2298,7115.3354,3.3264,15.5998,0.7921,0.0274,2340.0,2400.0,0.946,-0.9534,4.3915,-57.6717 2019-06-03 15:41:02.580,140.1954,7115.3628,3.3264,15.5998,1.3173,0.0643,2340.0,2400.0,0.9518,-0.9625,4.3968,-57.6717 2019-06-03 15:41:02.600,140.1782,7115.3901,3.3395,15.8124,1.2766,0.067,2340.0,2400.0,0.946,-0.9595,4.4034,-57.5143 2019-06-03 15:41:02.620,140.1868,7115.3901,3.3421,15.8774,0.7285,0.1058,2340.0,2400.0,0.9518,-0.9625,4.4087,-57.4671 2019-06-03 15:41:02.640,140.2384,7115.3901,3.3421,15.8774,1.2951,0.034,2340.0,2400.0,0.9518,-0.9595,4.4047,-57.4671 2019-06-03 15:41:02.660,140.2384,7115.3901,3.3421,15.8774,0.8265,0.1105,2340.0,2400.0,0.9489,-0.9595,4.4126,-57.4671 2019-06-03 15:41:02.680,140.1782,7115.3901,3.3521,16.0132,1.2211,0.0461,2340.0,2400.0,0.946,-0.9564,4.41,-57.371 2019-06-03 15:41:02.700,140.1782,7115.3081,3.3552,16.1468,1.2041,0.0467,2340.0,2400.0,0.9547,-0.9655,4.4272,-57.2757 2019-06-03 15:41:02.720,140.1782,7115.3354,3.3552,16.1468,0.8202,0.1174,2340.0,2400.0,0.9431,-0.9685,4.4193,-57.2757 2019-06-03 15:41:02.740,140.4014,7115.3628,3.3552,16.1468,1.3006,0.0259,2340.0,2400.0,0.9431,-0.9564,4.4365,-57.2757 2019-06-03 15:41:02.760,140.3671,7115.4175,3.3575,16.2775,0.831,0.1333,2340.0,2400.0,0.9255,-0.9957,4.4365,-57.1795 2019-06-03 15:41:02.780,140.3156,7115.4722,3.3575,16.2775,1.2821,0.0101,2340.0,2400.0,0.9343,-0.9504,4.4365,-57.1795 2019-06-03 15:41:02.800,140.3242,7115.5269,3.372,16.4808,1.2104,-0.038,2340.0,2400.0,0.9197,-0.9504,4.4484,-57.023 2019-06-03 15:41:02.820,140.3242,7115.4722,3.3792,16.5499,0.8986,0.2046,2340.0,2400.0,0.9343,-0.9625,4.4563,-56.9714 2019-06-03 15:41:02.840,140.3671,7115.5269,3.3792,16.5499,1.4035,-0.0294,2340.0,2400.0,0.9284,-0.9625,4.4484,-56.9714 2019-06-03 15:41:02.860,140.3928,7115.4995,3.3792,16.5499,1.0314,0.1902,2340.0,2400.0,0.9197,-0.9625,4.4524,-56.9714 2019-06-03 15:41:02.880,140.3156,7115.4722,3.3867,16.6857,1.1886,0.0012,2340.0,2400.0,0.9226,-0.9655,4.455,-56.8691 2019-06-03 15:41:02.900,140.3242,7115.3354,3.3899,16.8224,1.1427,-0.0485,2340.0,2400.0,0.9314,-0.9625,4.4762,-56.7668 2019-06-03 15:41:02.920,140.3156,7115.2808,3.3899,16.8224,0.9959,0.1854,2340.0,2400.0,0.9401,-0.9655,4.4709,-56.7668 2019-06-03 15:41:02.940,140.3757,7115.2261,3.3899,16.8224,1.1509,-0.0464,2340.0,2400.0,0.9431,-0.9655,4.4722,-56.7668 2019-06-03 15:41:02.960,140.3671,7115.2261,3.3981,16.9619,1.1157,0.2049,2340.0,2400.0,0.9372,-0.9746,4.4881,-56.6611 2019-06-03 15:41:02.980,140.3242,7115.2808,3.3981,16.9619,1.0266,-0.0297,2340.0,2400.0,0.908,-0.9715,4.463,-56.6611 2019-06-03 15:41:03.000,140.3156,7115.2534,3.4082,17.1781,0.9929,-0.0909,2340.0,2400.0,0.9226,-0.9776,4.4947,-56.4818 2019-06-03 15:41:03.020,140.3242,7115.1987,3.4165,17.2555,1.2278,0.2082,2340.0,2400.0,0.9051,-0.9776,4.4908,-56.4241 2019-06-03 15:41:03.040,140.3842,7115.1714,3.4165,17.2555,0.977,-0.0502,2340.0,2400.0,0.8904,-0.9776,4.4828,-56.4241 2019-06-03 15:41:03.060,140.3842,7115.1714,3.4165,17.2555,1.1971,0.228,2340.0,2400.0,0.9021,-1.0017,4.4908,-56.4241 2019-06-03 15:41:03.080,140.3242,7115.2261,3.4191,17.3995,0.9889,-0.0068,2340.0,2400.0,0.8992,-1.0017,4.4762,-56.3114 2019-06-03 15:41:03.100,140.3242,7115.1714,3.4222,17.5452,0.8509,-0.0386,2340.0,2400.0,0.9051,-1.0047,4.4987,-56.2003 2019-06-03 15:41:03.120,140.3071,7115.1714,3.4222,17.5452,1.3332,0.1671,2340.0,2400.0,0.9021,-1.0078,4.4921,-56.2003 2019-06-03 15:41:03.140,140.3757,7115.1987,3.4222,17.5452,0.8909,-0.0042,2340.0,2400.0,0.8992,-0.9987,4.4961,-56.2003 2019-06-03 15:41:03.160,140.3757,7115.1167,3.4313,17.6926,1.3265,0.1591,2340.0,2400.0,0.8934,-1.0017,4.4881,-56.084 2019-06-03 15:41:03.180,140.3156,7115.144,3.4313,17.6926,0.8805,0.0509,2340.0,2400.0,0.9021,-0.9987,4.4749,-56.084 2019-06-03 15:41:03.200,140.3156,7115.144,3.4374,17.914,0.9116,0.0281,2340.0,2400.0,0.9051,-0.9987,4.4947,-55.9206 2019-06-03 15:41:03.220,140.3242,7115.1167,3.4431,17.9886,1.355,0.1078,2340.0,2400.0,0.9109,-1.0047,4.4921,-55.8629 2019-06-03 15:41:03.240,140.3671,7115.144,3.4431,17.9886,0.8594,0.0314,2340.0,2400.0,0.9021,-1.0017,4.4947,-55.8629 2019-06-03 15:41:03.260,140.3842,7115.0894,3.4431,17.9886,1.2918,0.1143,2340.0,2400.0,0.8904,-1.0047,4.4802,-55.8629 2019-06-03 15:41:03.280,140.3242,7115.0894,3.4474,18.1339,0.8273,0.0986,2340.0,2400.0,0.9138,-1.0078,4.4908,-55.7466 2019-06-03 15:41:03.300,140.3156,7115.0073,3.4546,18.2794,0.8284,0.0909,2340.0,2400.0,0.9051,-1.0017,4.4921,-55.6303 2019-06-03 15:41:03.320,140.3242,7115.062,3.4546,18.2794,1.3465,0.0126,2340.0,2400.0,0.9138,-1.0047,4.5053,-55.6303 2019-06-03 15:41:03.340,140.5298,7115.144,3.4546,18.2794,0.8077,0.1268,2340.0,2400.0,0.8904,-1.0078,4.4802,-55.6303 2019-06-03 15:41:03.360,140.5041,7115.1714,3.4634,18.4264,1.3339,0.0535,2340.0,2400.0,0.8992,-1.0138,4.4921,-55.514 2019-06-03 15:41:03.380,140.4528,7115.1987,3.4678,18.5721,0.875,0.098,2340.0,2400.0,0.8992,-1.0319,4.4788,-55.4091 2019-06-03 15:41:03.400,140.4528,7115.2261,3.4677,18.642,0.8923,0.1132,2400.0,2400.0,0.9021,-1.0319,4.4947,-55.3532 2019-06-03 15:41:03.420,140.4613,7115.1987,3.4703,18.7111,1.1546,-0.0047,2400.0,2400.0,0.908,-1.0711,4.4987,-55.2963 2019-06-03 15:41:03.440,140.5127,7115.1987,3.4703,18.7111,1.0148,0.1402,2400.0,2400.0,0.8875,-1.0711,4.4868,-55.2963 2019-06-03 15:41:03.460,140.5127,7115.1714,3.4703,18.7111,1.2311,0.0071,2400.0,2400.0,0.8904,-1.0651,4.4974,-55.2963 2019-06-03 15:41:03.480,140.4528,7115.1714,3.4747,18.8491,0.9412,0.1731,2400.0,2400.0,0.8817,-1.0621,4.4735,-55.1801 2019-06-03 15:41:03.500,140.4699,7114.7617,3.4816,18.9922,1.0007,0.1552,2400.0,2400.0,0.9051,-1.0621,4.5014,-55.0629 2019-06-03 15:41:03.520,140.4442,7113.8604,3.4816,18.9922,1.0939,-0.0381,2400.0,2400.0,0.8992,-1.0651,4.5,-55.0629 2019-06-03 15:41:03.540,140.5041,7112.6582,3.4816,18.9922,1.1301,0.175,2400.0,2400.0,0.9051,-1.0681,4.4961,-55.0629 2019-06-03 15:41:03.560,140.5127,7111.8384,3.4853,19.1327,0.9977,-0.0059,2400.0,2400.0,0.9021,-1.0681,4.5014,-54.9458 2019-06-03 15:41:03.580,140.4528,7110.5815,3.4853,19.1327,1.1531,0.1909,2400.0,2400.0,0.8846,-1.0711,4.4815,-54.9458 2019-06-03 15:41:03.600,140.4528,7109.7896,3.4888,19.3418,1.237,0.1451,2400.0,2400.0,0.9021,-1.0651,4.4987,-54.7796 2019-06-03 15:41:03.620,140.4528,7108.9971,3.486,19.408,0.9881,-0.0018,2400.0,2400.0,0.9021,-1.0741,4.5,-54.7219 2019-06-03 15:41:03.640,140.5127,7107.6587,3.486,19.408,1.2004,0.1396,2400.0,2400.0,0.8904,-1.0711,4.4894,-54.7219 2019-06-03 15:41:03.660,140.5127,7106.8936,3.486,19.408,0.9915,0.0125,2400.0,2400.0,0.8904,-1.0982,4.5159,-54.7219 2019-06-03 15:41:03.680,140.4528,7106.8389,3.4894,19.5582,1.3631,0.1453,2400.0,2400.0,0.8583,-1.0922,4.5,-54.6022 2019-06-03 15:41:03.700,140.4613,7106.7295,3.4875,19.7042,1.2685,0.123,2400.0,2400.0,0.8641,-1.0952,4.5066,-54.4841 2019-06-03 15:41:03.720,140.4528,7106.7021,3.4875,19.7042,0.8524,0.0091,2400.0,2400.0,0.8583,-1.0892,4.4934,-54.4841 2019-06-03 15:41:03.740,140.6664,7106.7568,3.4875,19.7042,1.1671,0.1257,2400.0,2400.0,0.87,-1.0922,4.4921,-54.4841 2019-06-03 15:41:03.760,140.6323,7106.8115,3.483,19.8463,0.9463,0.0416,2400.0,2400.0,0.87,-1.0952,4.5093,-54.367 2019-06-03 15:41:03.780,140.5896,7106.7568,3.483,19.8463,1.2807,0.1389,2400.0,2400.0,0.8758,-1.0922,4.508,-54.367 2019-06-03 15:41:03.800,140.5896,7106.7842,3.4891,20.0703,1.3384,0.1213,2400.0,2400.0,0.8817,-1.0922,4.5053,-54.2105 2019-06-03 15:41:03.820,140.5896,7106.8115,3.4884,20.1392,0.8554,0.0378,2400.0,2400.0,0.8729,-1.0982,4.5066,-54.1519 2019-06-03 15:41:03.840,140.6494,7106.7295,3.4884,20.1392,1.3025,0.132,2400.0,2400.0,0.8612,-1.0922,4.4961,-54.1519 2019-06-03 15:41:03.860,140.6494,7106.7295,3.4884,20.1392,0.8302,0.0551,2400.0,2400.0,0.8612,-1.1254,4.5159,-54.1519 2019-06-03 15:41:03.880,140.5896,7106.8115,3.4905,20.2901,1.3469,0.095,2400.0,2400.0,0.8583,-1.1224,4.4947,-54.0313 2019-06-03 15:41:03.900,140.5981,7106.7295,3.4884,20.4354,1.3184,0.0551,2400.0,2400.0,0.8671,-1.1163,4.5066,-53.9132 2019-06-03 15:41:03.920,140.5811,7106.7295,3.4884,20.4354,0.8724,0.1268,2400.0,2400.0,0.8671,-1.1224,4.5159,-53.9132 2019-06-03 15:41:03.940,140.7943,7106.7295,3.4884,20.4354,1.3036,0.0458,2400.0,2400.0,0.87,-1.1193,4.508,-53.9132 2019-06-03 15:41:03.960,140.7687,7106.7568,3.4834,20.5823,0.8613,0.1259,2400.0,2400.0,0.8758,-1.1193,4.5292,-53.7978 2019-06-03 15:41:03.980,140.7261,7106.7568,3.4834,20.5823,1.3742,0.0442,2400.0,2400.0,0.8612,-1.1193,4.5014,-53.7978 2019-06-03 15:41:04.000,140.7261,7106.8115,3.4906,20.8049,1.392,0.0207,2400.0,2400.0,0.8554,-1.1163,4.4987,-53.6501 2019-06-03 15:41:04.020,140.7346,7106.8389,3.4938,20.8779,0.9478,0.1716,2400.0,2400.0,0.8495,-1.1254,4.5014,-53.5906 2019-06-03 15:41:04.040,140.7772,7106.8115,3.4938,20.8779,1.2892,0.0515,2400.0,2400.0,0.8583,-1.1193,4.508,-53.5906 2019-06-03 15:41:04.060,140.7943,7106.7568,3.4938,20.8779,0.9467,0.1247,2400.0,2400.0,0.8671,-1.1284,4.5358,-53.5906 2019-06-03 15:41:04.080,140.7261,7106.8389,3.493,21.0228,1.1845,0.0258,2400.0,2400.0,0.8729,-1.1254,4.5212,-53.4761 2019-06-03 15:41:04.100,140.7261,7106.7842,3.4908,21.1644,1.2492,-0.0134,2400.0,2400.0,0.87,-1.1254,4.5278,-53.3633 2019-06-03 15:41:04.120,140.7261,7106.7568,3.4908,21.1644,0.9449,0.1631,2400.0,2400.0,0.8641,-1.1284,4.508,-53.3633 2019-06-03 15:41:04.140,140.6323,7106.8389,3.4908,21.1644,1.2895,0.0121,2400.0,2400.0,0.87,-1.1314,4.5027,-53.3633 2019-06-03 15:41:04.160,140.6408,7106.8389,3.4909,21.3064,1.0447,0.1574,2400.0,2400.0,0.8641,-1.1284,4.5265,-53.2514 2019-06-03 15:41:04.180,140.5896,7106.8389,3.4909,21.3064,1.1501,-0.0411,2400.0,2400.0,0.8524,-1.1284,4.5093,-53.2514 2019-06-03 15:41:04.200,140.5896,7106.8662,3.4998,21.522,1.051,-0.06,2400.0,2400.0,0.8407,-1.1374,4.5186,-53.1273 2019-06-03 15:41:04.220,140.5981,7106.8662,3.5085,21.5974,1.1046,0.2165,2400.0,2400.0,0.8466,-1.1645,4.5384,-53.067 2019-06-03 15:41:04.240,140.6408,7106.9209,3.5085,21.5974,1.1046,-0.0402,2400.0,2400.0,0.8583,-1.1495,4.5199,-53.067 2019-06-03 15:41:04.260,140.6494,7106.8662,3.5085,21.5974,1.2577,0.1695,2400.0,2400.0,0.8671,-1.1525,4.5252,-53.067 2019-06-03 15:41:04.280,140.5896,7106.8936,3.5084,21.7374,0.97,0.0084,2400.0,2400.0,0.8554,-1.1525,4.5066,-52.9551 2019-06-03 15:41:04.300,140.5981,7106.8389,3.5125,21.8764,1.0273,-0.0125,2400.0,2400.0,0.8407,-1.1465,4.5172,-52.844 2019-06-03 15:41:04.320,140.5896,7106.8115,3.5125,21.8764,1.3376,0.1747,2400.0,2400.0,0.8378,-1.1495,4.5543,-52.844 2019-06-03 15:41:04.340,140.9473,7106.8389,3.5125,21.8764,0.95,0.0504,2400.0,2400.0,0.8378,-1.1495,4.5464,-52.844 2019-06-03 15:41:04.360,140.8963,7106.8662,3.52,22.0154,1.2969,0.0934,2400.0,2400.0,0.8437,-1.1495,4.545,-52.7304 2019-06-03 15:41:04.380,140.8538,7106.8662,3.5304,22.1549,0.8764,0.0504,2400.0,2400.0,0.8612,-1.1525,4.5186,-52.6456 2019-06-03 15:41:04.400,140.8538,7106.8389,3.5292,22.2213,0.9474,0.0119,2400.0,2340.0,0.87,-1.1525,4.5186,-52.5931 2019-06-03 15:41:04.420,140.8623,7106.8115,3.5365,22.2921,1.2825,0.1663,2400.0,2340.0,0.8641,-1.1615,4.5397,-52.5354 2019-06-03 15:41:04.440,140.9133,7106.8936,3.5365,22.2921,0.983,0.0412,2400.0,2340.0,0.8407,-1.1555,4.5252,-52.5354 2019-06-03 15:41:04.460,140.9133,7106.8389,3.5365,22.2921,1.3676,0.1178,2400.0,2340.0,0.8232,-1.1555,4.5464,-52.5354 2019-06-03 15:41:04.480,140.8623,7106.8115,3.5382,22.4245,0.8313,0.0628,2400.0,2340.0,0.8349,-1.1555,4.5543,-52.4261 2019-06-03 15:41:04.500,140.8623,7106.7295,3.545,22.5562,0.8328,0.0569,2400.0,2340.0,0.8349,-1.1585,4.549,-52.3151 2019-06-03 15:41:04.520,140.8623,7106.7021,3.545,22.5562,1.3025,0.1238,2400.0,2340.0,0.8407,-1.1555,4.5649,-52.3151 2019-06-03 15:41:04.540,140.9133,7106.7021,3.545,22.5562,0.8498,0.099,2400.0,2340.0,0.8437,-1.1525,4.5278,-52.3151 2019-06-03 15:41:04.560,140.9048,7106.7842,3.5534,22.6948,1.2792,0.0348,2400.0,2340.0,0.8495,-1.1555,4.5278,-52.2023 2019-06-03 15:41:04.580,140.8538,7106.7842,3.5534,22.6948,0.8598,0.1309,2400.0,2340.0,0.8378,-1.1555,4.5318,-52.2023 2019-06-03 15:41:04.600,140.8623,7106.7568,3.5629,22.8879,0.8942,0.097,2400.0,2340.0,0.8349,-1.1555,4.5345,-52.0616 2019-06-03 15:41:04.620,140.8623,7106.7021,3.5676,22.9521,1.3961,0.0655,2400.0,2340.0,0.8407,-1.1585,4.5676,-52.0056 2019-06-03 15:41:04.640,140.9048,7106.7295,3.5676,22.9521,0.8565,0.1374,2400.0,2340.0,0.8437,-1.1615,4.5503,-52.0056 2019-06-03 15:41:04.660,140.9133,7106.7021,3.5676,22.9521,1.3924,-0.0024,2400.0,2340.0,0.8524,-1.1675,4.5715,-52.0056 2019-06-03 15:41:04.680,140.8623,7106.7021,3.569,23.0737,0.8676,0.1554,2400.0,2340.0,0.8437,-1.1706,4.5371,-51.8963 2019-06-03 15:41:04.700,140.8708,7106.6479,3.5776,23.1972,0.8672,0.1363,2400.0,2340.0,0.8466,-1.1675,4.5252,-51.7835 2019-06-03 15:41:04.720,140.8538,7106.6206,3.5776,23.1972,1.3103,0.0193,2400.0,2340.0,0.8407,-1.1706,4.5278,-51.7835 2019-06-03 15:41:04.740,140.9133,7106.6206,3.5776,23.1972,0.9885,0.1525,2400.0,2340.0,0.8407,-1.1736,4.5212,-51.7835 2019-06-03 15:41:04.760,140.9133,7106.6748,3.5856,23.317,1.2452,-0.0447,2400.0,2340.0,0.8407,-1.1766,4.5623,-51.6708 2019-06-03 15:41:04.780,140.8623,7106.7295,3.5896,23.427,1.1346,0.1745,2400.0,2340.0,0.8466,-1.1796,4.5728,-51.5772 2019-06-03 15:41:04.800,140.8453,7106.7568,3.5932,23.4872,1.0924,0.1645,2400.0,2340.0,0.8495,-1.1796,4.5517,-51.5213 2019-06-03 15:41:04.820,140.8623,7106.7295,3.593,23.5387,1.1098,-0.0202,2400.0,2340.0,0.8524,-1.1796,4.5596,-51.4671 2019-06-03 15:41:04.840,140.9133,7106.7021,3.593,23.5387,1.0706,0.2147,2400.0,2340.0,0.832,-1.1796,4.5331,-51.4671 2019-06-03 15:41:04.860,140.9133,7106.7021,3.593,23.5387,1.0451,-0.0618,2400.0,2340.0,0.8407,-1.1796,4.5345,-51.4671 2019-06-03 15:41:04.880,140.8538,7106.7021,3.5976,23.6494,1.152,0.1664,2400.0,2340.0,0.8407,-1.1766,4.5265,-51.3543 2019-06-03 15:41:04.900,140.8708,7106.6206,3.6062,23.7573,1.1431,0.1854,2400.0,2340.0,0.8437,-1.1796,4.5199,-51.2397 2019-06-03 15:41:04.920,140.8538,7106.6479,3.6062,23.7573,1.0296,-0.0115,2400.0,2340.0,0.8378,-1.1826,4.5609,-51.2397 2019-06-03 15:41:04.940,140.9133,7106.6748,3.6062,23.7573,1.2788,0.1854,2400.0,2340.0,0.8349,-1.1946,4.5517,-51.2397 2019-06-03 15:41:04.960,140.9048,7106.7295,3.6106,23.8639,0.9057,-0.0148,2400.0,2340.0,0.8554,-1.2007,4.5689,-51.1243 2019-06-03 15:41:04.980,140.8538,7106.8115,3.6106,23.8639,1.3428,0.1341,2400.0,2340.0,0.8524,-1.1946,4.5358,-51.1243 2019-06-03 15:41:05.000,140.8623,7106.8662,3.6185,24.0198,1.1742,0.1486,2400.0,2340.0,0.8407,-1.1916,4.5027,-50.9722 2019-06-03 15:41:05.020,140.8708,7106.8936,3.6186,24.0696,0.9744,0.0131,2400.0,2340.0,0.8437,-1.1946,4.5424,-50.9119 2019-06-03 15:41:05.040,140.9048,7106.8936,3.6186,24.0696,1.1952,0.1537,2400.0,2340.0,0.8174,-1.2037,4.5305,-50.9119 2019-06-03 15:41:05.060,140.9218,7106.8389,3.6186,24.0696,0.8609,-0.0038,2400.0,2340.0,0.8524,-1.2007,4.5702,-50.9119 2019-06-03 15:41:05.080,140.8538,7106.8936,3.6223,24.1749,1.213,0.1032,2400.0,2340.0,0.8407,-1.2007,4.5464,-50.7904 2019-06-03 15:41:05.100,140.8623,7106.3745,3.6228,24.275,1.2674,0.139,2400.0,2340.0,0.8554,-1.2007,4.5384,-50.6662 2019-06-03 15:41:05.120,140.8623,7105.4185,3.6228,24.275,0.8761,0.0476,2400.0,2340.0,0.8378,-1.2037,4.5411,-50.6662 2019-06-03 15:41:05.140,141.0661,7104.0801,3.6228,24.275,1.291,0.1195,2400.0,2340.0,0.8437,-1.2037,4.5186,-50.6662 2019-06-03 15:41:05.160,141.0322,7103.1787,3.6196,24.3708,0.8838,0.0494,2400.0,2340.0,0.8407,-1.2007,4.5384,-50.543 2019-06-03 15:41:05.180,140.9982,7101.813,3.6196,24.3708,1.2696,0.0503,2400.0,2340.0,0.8349,-1.2007,4.5517,-50.543 2019-06-03 15:41:05.200,140.9898,7100.939,3.6199,24.5221,1.2818,0.0954,2400.0,2340.0,0.8144,-1.2037,4.5437,-50.376 2019-06-03 15:41:05.220,140.9898,7100.1196,3.6184,24.5724,0.9996,0.0607,2400.0,2340.0,0.8378,-1.2187,4.5848,-50.3122 2019-06-03 15:41:05.240,141.0491,7098.7813,3.6184,24.5724,1.3705,0.1169,2400.0,2340.0,0.8466,-1.2157,4.545,-50.3122 2019-06-03 15:41:05.260,141.0576,7097.9072,3.6184,24.5724,0.9737,0.0823,2400.0,2340.0,0.8495,-1.2157,4.5265,-50.3122 2019-06-03 15:41:05.280,140.9898,7097.8257,3.6154,24.6701,1.2248,0.0613,2400.0,2340.0,0.8524,-1.2127,4.504,-50.1836 2019-06-03 15:41:05.300,141.0067,7097.7437,3.6091,24.7666,1.3347,0.0922,2400.0,2340.0,0.8466,-1.1796,4.5199,-50.056 2019-06-03 15:41:05.320,140.9813,7097.7437,3.6091,24.7666,0.916,0.1036,2400.0,2340.0,0.8378,-1.2007,4.5755,-50.056 2019-06-03 15:41:05.340,141.0491,7097.771,3.6091,24.7666,1.1801,0.0676,2400.0,2340.0,0.8349,-1.1946,4.5556,-50.056 2019-06-03 15:41:05.360,141.0406,7097.8799,3.6031,24.863,1.0133,0.1146,2400.0,2340.0,0.832,-1.1977,4.5556,-49.9249 2019-06-03 15:41:05.380,140.9982,7097.8257,3.5984,24.9561,1.2722,0.0212,2400.0,2340.0,0.8378,-1.2007,4.5517,-49.7797 2019-06-03 15:41:05.400,140.9898,7097.8257,3.5952,25.0046,1.3339,0.0458,2400.0,2400.0,0.8407,-1.1946,4.5345,-49.7142 2019-06-03 15:41:05.420,141.0067,7097.8257,3.5945,25.0525,1.0695,0.1277,2400.0,2400.0,0.8437,-1.2007,4.5358,-49.6442 2019-06-03 15:41:05.440,141.0491,7097.9072,3.5945,25.0525,1.1076,0.0366,2400.0,2400.0,0.8524,-1.2037,4.5186,-49.6442 2019-06-03 15:41:05.460,141.0491,7097.8525,3.5945,25.0525,1.0665,0.1267,2400.0,2400.0,0.8407,-1.2007,4.5358,-49.6442 2019-06-03 15:41:05.480,140.9982,7097.8799,3.5882,25.1504,1.1675,-0.0097,2400.0,2400.0,0.8349,-1.2007,4.5649,-49.507 2019-06-03 15:41:05.500,140.9982,7097.8799,3.5788,25.2448,1.3014,0.0225,2400.0,2400.0,0.8144,-1.2007,4.557,-49.3714 2019-06-03 15:41:05.520,140.9898,7097.8525,3.5788,25.2448,0.9959,0.1442,2400.0,2400.0,0.8203,-1.2037,4.5636,-49.3714 2019-06-03 15:41:05.540,140.8963,7097.8525,3.5788,25.2448,1.0721,0.0107,2400.0,2400.0,0.8291,-1.2037,4.5411,-49.3714 2019-06-03 15:41:05.560,140.9133,7097.9072,3.5718,25.3407,1.1227,0.1347,2400.0,2400.0,0.8291,-1.2007,4.5358,-49.2324 2019-06-03 15:41:05.580,140.8623,7097.9346,3.5657,25.439,1.1579,0.0047,2400.0,2400.0,0.8378,-1.2007,4.5477,-49.0891 2019-06-03 15:41:05.600,140.8538,7097.9346,3.5583,25.4876,1.1938,0.0196,2400.0,2400.0,0.8349,-1.2007,4.5331,-49.02 2019-06-03 15:41:05.620,140.8623,7097.9619,3.5555,25.5392,1.1634,0.1308,2400.0,2400.0,0.832,-1.2067,4.5517,-48.9457 2019-06-03 15:41:05.640,140.9048,7097.9893,3.5555,25.5392,1.071,0.0324,2400.0,2400.0,0.8232,-1.2037,4.5397,-48.9457 2019-06-03 15:41:05.660,140.9218,7097.9893,3.5555,25.5392,1.1279,0.1552,2400.0,2400.0,0.8203,-1.2067,4.5517,-48.9457 2019-06-03 15:41:05.680,140.8538,7097.9893,3.5453,25.6389,1.0014,-0.007,2400.0,2400.0,0.832,-1.2067,4.5583,-48.8014 2019-06-03 15:41:05.700,140.8708,7097.8525,3.5306,25.7366,1.0784,0.0389,2400.0,2400.0,0.8495,-1.2037,4.545,-48.6581 2019-06-03 15:41:05.720,140.8453,7097.8525,3.5306,25.7366,1.2019,0.1328,2400.0,2400.0,0.87,-1.2097,4.5596,-48.6581 2019-06-03 15:41:05.740,140.9048,7097.9346,3.5306,25.7366,0.9833,0.0255,2400.0,2400.0,0.8495,-1.2067,4.5424,-48.6581 2019-06-03 15:41:05.760,140.9048,7097.9619,3.5197,25.8411,1.0969,0.1376,2400.0,2400.0,0.8349,-1.2097,4.5517,-48.5112 2019-06-03 15:41:05.780,140.8623,7097.9619,3.5087,25.9435,1.058,0.022,2400.0,2400.0,0.8086,-1.2067,4.5503,-48.3739 2019-06-03 15:41:05.800,140.8538,7097.9893,3.4979,25.9941,0.9426,0.0241,2400.0,2400.0,0.8115,-1.2097,4.5424,-48.3022 2019-06-03 15:41:05.820,140.8708,7097.9072,3.4947,26.0475,1.2182,0.1287,2400.0,2400.0,0.8378,-1.2097,4.557,-48.2244 2019-06-03 15:41:05.840,140.9133,7097.8525,3.4947,26.0475,1.0074,0.027,2400.0,2400.0,0.8495,-1.2067,4.5596,-48.2244 2019-06-03 15:41:05.860,140.9218,7097.9072,3.4947,26.0475,1.1383,0.1301,2400.0,2400.0,0.8437,-1.2157,4.5728,-48.2244 2019-06-03 15:41:05.880,140.8623,7097.9619,3.4776,26.1477,1.0085,0.0168,2400.0,2400.0,0.832,-1.2488,4.5649,-48.0775 2019-06-03 15:41:05.900,140.8623,7097.9072,3.4616,26.2488,0.9837,0.0056,2400.0,2400.0,0.8261,-1.2488,4.5715,-47.928 2019-06-03 15:41:05.920,140.8453,7097.8525,3.4616,26.2488,1.1838,0.1447,2400.0,2400.0,0.8203,-1.2578,4.5755,-47.928 2019-06-03 15:41:05.940,140.9133,7097.8525,3.4616,26.2488,0.9415,0.0138,2400.0,2400.0,0.8291,-1.2909,4.5636,-47.928 2019-06-03 15:41:05.960,140.9133,7097.9346,3.4486,26.3515,1.2777,0.108,2400.0,2400.0,0.832,-1.2909,4.5702,-47.7759 2019-06-03 15:41:05.980,140.8623,7097.9072,3.4384,26.458,0.9182,0.0606,2400.0,2400.0,0.8174,-1.315,4.5623,-47.6317 2019-06-03 15:41:06.000,140.8623,7097.9619,3.4263,26.5035,0.9534,0.0543,2400.0,2400.0,0.8466,-1.318,4.5874,-47.5591 2019-06-03 15:41:06.020,140.8538,7097.9619,3.4201,26.556,1.3184,0.0645,2400.0,2400.0,0.8378,-1.327,4.6179,-47.4813 2019-06-03 15:41:06.040,140.9218,7097.9346,3.4201,26.556,0.9323,0.0605,2400.0,2400.0,0.8378,-1.327,4.6073,-47.4813 2019-06-03 15:41:06.060,140.9048,7097.9346,3.4201,26.556,1.311,0.0782,2400.0,2400.0,0.8291,-1.336,4.6126,-47.4813 2019-06-03 15:41:06.080,140.8623,7097.9346,3.4022,26.6509,1.0229,0.0917,2400.0,2400.0,0.8349,-1.366,4.6139,-47.33 2019-06-03 15:41:06.100,140.8708,7097.8799,3.388,26.7518,0.9338,0.084,2400.0,2400.0,0.832,-1.363,4.6086,-47.1753 2019-06-03 15:41:06.120,140.8453,7097.7983,3.388,26.7518,1.2625,0.0378,2400.0,2400.0,0.8349,-1.3811,4.6629,-47.1753 2019-06-03 15:41:06.140,140.9133,7097.8257,3.388,26.7518,0.8298,0.082,2400.0,2400.0,0.8261,-1.3991,4.6708,-47.1753 2019-06-03 15:41:06.160,140.9048,7097.9072,3.3742,26.8522,1.3631,0.0261,2400.0,2400.0,0.8261,-1.3841,4.688,-47.0188 2019-06-03 15:41:06.180,140.8538,7097.9072,3.3608,26.949,0.8535,0.1712,2400.0,2400.0,0.8291,-1.3841,4.7105,-46.8562 2019-06-03 15:41:06.200,140.8538,7097.9619,3.3515,26.9941,0.7773,0.1439,2400.0,2400.0,0.8378,-1.3781,4.7039,-46.7793 2019-06-03 15:41:06.220,140.8708,7097.9346,3.3432,27.0451,1.3946,-0.0057,2400.0,2400.0,0.8407,-1.3931,4.745,-46.7014 2019-06-03 15:41:06.240,140.9133,7097.8799,3.3432,27.0451,0.9319,0.1484,2400.0,2400.0,0.8378,-1.4171,4.7582,-46.7014 2019-06-03 15:41:06.260,140.9218,7097.8257,3.3432,27.0451,1.2759,0.0129,2400.0,2400.0,0.8378,-1.4321,4.7847,-46.7014 2019-06-03 15:41:06.280,140.8623,7097.9346,3.3316,27.1448,1.0296,0.1534,2400.0,2400.0,0.8291,-1.4561,4.8416,-46.5415 2019-06-03 15:41:06.300,140.8623,7097.8799,3.3262,27.2481,1.081,0.1774,2400.0,2400.0,0.8495,-1.4561,4.8641,-46.3788 2019-06-03 15:41:06.320,140.8538,7097.9072,3.3262,27.2481,1.1131,-0.0227,2400.0,2400.0,0.8466,-1.4891,4.9065,-46.3788 2019-06-03 15:41:06.340,140.9133,7097.9346,3.3262,27.2481,1.0403,0.1332,2400.0,2400.0,0.8495,-1.5071,4.9356,-46.3788 2019-06-03 15:41:06.360,140.9048,7097.9893,3.3195,27.3428,1.166,0.0073,2400.0,2400.0,0.8203,-1.5221,4.9264,-46.2145 2019-06-03 15:41:06.380,140.8708,7097.9346,3.3155,27.4383,1.0983,0.1739,2400.0,2400.0,0.8378,-1.57,4.9767,-46.0755 2019-06-03 15:41:06.400,140.8538,7097.9346,3.3165,27.4886,1.1608,0.1875,2340.0,2400.0,0.8261,-1.567,4.97,-45.9907 2019-06-03 15:41:06.420,140.8623,7097.9619,3.3127,27.5327,0.9874,-0.0629,2340.0,2400.0,0.8378,-1.5999,5.0045,-45.9076 2019-06-03 15:41:06.440,140.9218,7097.9893,3.3127,27.5327,1.22,0.1894,2340.0,2400.0,0.8407,-1.6149,5.0389,-45.9076 2019-06-03 15:41:06.460,140.9133,7097.9893,3.3127,27.5327,1.0699,-0.0344,2340.0,2400.0,0.8349,-1.6179,5.0561,-45.9076 2019-06-03 15:41:06.480,140.8538,7098.0166,3.3174,27.6261,1.1446,0.1911,2340.0,2400.0,0.8349,-1.6149,5.0958,-45.7363 2019-06-03 15:41:06.500,140.8708,7097.9346,3.3249,27.7171,1.2581,0.1673,2340.0,2400.0,0.8261,-1.6179,5.1064,-45.5588 2019-06-03 15:41:06.520,140.8453,7097.9346,3.3249,27.7171,0.8975,-0.0165,2340.0,2400.0,0.8232,-1.6149,5.1051,-45.5588 2019-06-03 15:41:06.540,140.9133,7097.8799,3.3249,27.7171,1.2685,0.1528,2340.0,2400.0,0.8086,-1.6149,5.0799,-45.5588 2019-06-03 15:41:06.560,140.9133,7097.9346,3.3339,27.8,1.01,0.035,2340.0,2400.0,0.8261,-1.6239,5.0919,-45.3848 2019-06-03 15:41:06.580,140.8623,7097.9893,3.3453,27.8819,1.3454,0.0967,2340.0,2400.0,0.8203,-1.6598,5.0998,-45.2047 2019-06-03 15:41:06.600,140.8538,7097.9619,3.3562,27.9214,1.4312,0.1146,2340.0,2400.0,0.8144,-1.6448,5.1024,-45.1129 2019-06-03 15:41:06.620,140.8623,7097.9893,3.363,27.9582,0.9108,0.0646,2340.0,2400.0,0.8203,-1.6388,5.125,-45.0229 2019-06-03 15:41:06.640,140.9133,7097.9072,3.363,27.9582,1.3635,0.1178,2340.0,2400.0,0.832,-1.6388,5.1475,-45.0229 2019-06-03 15:41:06.660,140.9133,7097.8257,3.363,27.9582,0.9467,0.064,2340.0,2400.0,0.8291,-1.6359,5.1448,-45.0229 2019-06-03 15:41:06.680,140.8708,7097.7437,3.3835,28.0402,1.3924,0.105,2340.0,2400.0,0.8349,-1.6448,5.1461,-44.841 2019-06-03 15:41:06.700,140.8538,7097.7437,3.4031,28.1137,1.3979,0.1094,2340.0,2400.0,0.8232,-1.6418,5.1223,-44.6627 2019-06-03 15:41:06.720,140.8708,7097.771,3.4031,28.1137,0.9567,0.0819,2340.0,2400.0,0.8115,-1.6508,5.1422,-44.6627 2019-06-03 15:41:06.740,140.9133,7097.7983,3.4031,28.1137,1.3861,0.0806,2340.0,2400.0,0.8174,-1.6628,5.1753,-44.6627 2019-06-03 15:41:06.760,140.8963,7097.9072,3.4237,28.1846,1.0192,0.1374,2340.0,2400.0,0.8203,-1.6628,5.1859,-44.4834 2019-06-03 15:41:06.780,140.8623,7097.8799,3.4466,28.2584,1.3742,0.0104,2340.0,2400.0,0.8261,-1.6927,5.1859,-44.2937 2019-06-03 15:41:06.800,140.8538,7097.9072,3.4594,28.2961,1.3931,0.0186,2340.0,2400.0,0.8407,-1.6957,5.162,-44.2019 2019-06-03 15:41:06.820,140.8623,7097.9346,3.4747,28.3356,1.0347,0.1613,2340.0,2400.0,0.8437,-1.6927,5.1581,-44.1101 2019-06-03 15:41:06.840,140.9218,7097.9893,3.4747,28.3356,1.3103,0.0267,2340.0,2400.0,0.8407,-1.6957,5.1819,-44.1101 2019-06-03 15:41:06.860,140.9133,7097.9619,3.4747,28.3356,1.044,0.1766,2340.0,2400.0,0.8291,-1.6987,5.2176,-44.1101 2019-06-03 15:41:06.880,140.8623,7097.9893,3.5023,28.4089,1.264,-0.0201,2340.0,2400.0,0.8291,-1.6987,5.2229,-43.9274 2019-06-03 15:41:06.900,140.8538,7097.9346,3.5283,28.4769,1.2348,-0.0225,2340.0,2400.0,0.8203,-1.6987,5.1872,-43.7473 2019-06-03 15:41:06.920,140.8538,7097.8799,3.5283,28.4769,1.068,0.1929,2340.0,2400.0,0.8115,-1.7017,5.1766,-43.7473 2019-06-03 15:41:06.940,141.0746,7097.8257,3.5283,28.4769,1.3343,-0.0289,2340.0,2400.0,0.8174,-1.7106,5.2057,-43.7473 2019-06-03 15:41:06.960,141.0491,7097.8799,3.5558,28.5519,1.1756,0.224,2340.0,2400.0,0.8203,-1.7076,5.2031,-43.5637 2019-06-03 15:41:06.980,140.9982,7097.8799,3.5884,28.6297,1.2171,-0.0481,2340.0,2400.0,0.8407,-1.7226,5.2243,-43.3749 2019-06-03 15:41:07.000,140.9898,7097.8799,3.5999,28.6641,1.1301,-0.0277,2340.0,2400.0,0.8291,-1.7047,5.1965,-43.2848 2019-06-03 15:41:07.020,140.9982,7097.9072,3.6201,28.7021,1.2544,0.1895,2340.0,2400.0,0.8261,-1.7106,5.1885,-43.1895 2019-06-03 15:41:07.040,141.0491,7097.9619,3.6201,28.7021,1.1139,-0.0199,2340.0,2400.0,0.8144,-1.7435,5.1925,-43.1895 2019-06-03 15:41:07.060,141.0576,7097.8799,3.6201,28.7021,1.2703,0.2024,2340.0,2400.0,0.8144,-1.7047,5.2017,-43.1895 2019-06-03 15:41:07.080,140.9982,7097.8257,3.6462,28.7742,1.1368,-0.0224,2340.0,2400.0,0.8261,-1.7136,5.2256,-43.0094 2019-06-03 15:41:07.100,140.9982,7097.7437,3.6734,28.8437,1.0018,-0.0174,2340.0,2400.0,0.8232,-1.7136,5.1766,-42.8276 2019-06-03 15:41:07.120,140.9898,7097.7437,3.6734,28.8437,1.2511,0.1909,2340.0,2400.0,0.8261,-1.7106,5.1779,-42.8276 2019-06-03 15:41:07.140,141.0491,7097.771,3.6734,28.8437,1.0835,0.0095,2340.0,2400.0,0.8086,-1.7286,5.1647,-42.8276 2019-06-03 15:41:07.160,141.0406,7097.7983,3.7045,28.915,1.2193,0.2082,2340.0,2400.0,0.832,-1.7256,5.1991,-42.644 2019-06-03 15:41:07.180,140.9982,7097.771,3.7331,28.9864,1.0218,0.0067,2340.0,2400.0,0.8291,-1.7256,5.2176,-42.4691 2019-06-03 15:41:07.200,140.9982,7097.7163,3.7434,29.016,0.9937,0.0272,2340.0,2400.0,0.8291,-1.7226,5.1859,-42.3808 2019-06-03 15:41:07.220,140.9982,7097.6616,3.7587,29.056,1.3443,0.1544,2340.0,2400.0,0.8144,-1.7256,5.1647,-42.289 2019-06-03 15:41:07.240,141.0491,7097.7163,3.7587,29.056,1.1597,0.0395,2340.0,2400.0,0.8174,-1.7226,5.1819,-42.289 2019-06-03 15:41:07.260,141.0491,7097.7437,3.7587,29.056,1.3868,0.155,2340.0,2400.0,0.8115,-1.7166,5.1845,-42.289 2019-06-03 15:41:07.280,140.9898,7097.771,3.7807,29.1235,1.0403,0.0602,2340.0,2400.0,0.8261,-1.7166,5.211,-42.1098 2019-06-03 15:41:07.300,140.9982,7097.7163,3.8059,29.1904,0.9848,0.0739,2340.0,2400.0,0.8291,-1.7196,5.1845,-41.9297 2019-06-03 15:41:07.320,140.9898,7097.7983,3.8059,29.1904,1.3998,0.1366,2340.0,2400.0,0.8378,-1.7226,5.166,-41.9297 2019-06-03 15:41:07.340,141.0576,7097.771,3.8059,29.1904,1.0614,0.055,2340.0,2400.0,0.8407,-1.7345,5.1753,-41.9297 2019-06-03 15:41:07.360,141.0406,7097.8525,3.8322,29.2616,1.345,0.1343,2340.0,2400.0,0.8261,-1.7136,5.1739,-41.7496 2019-06-03 15:41:07.380,141.0067,7097.8257,3.8558,29.3294,1.1313,0.0727,2340.0,2400.0,0.8086,-1.7226,5.2057,-41.5783 2019-06-03 15:41:07.400,140.9982,7097.8525,3.8644,29.3633,1.0858,0.0886,2400.0,2400.0,0.7881,-1.7256,5.166,-41.4908 2019-06-03 15:41:07.420,141.0067,7097.8257,3.8723,29.4,1.4071,0.12,2400.0,2400.0,0.8086,-1.7256,5.1739,-41.4017 2019-06-03 15:41:07.440,141.0406,7097.7983,3.8723,29.4,1.0895,0.0732,2400.0,2400.0,0.8115,-1.7405,5.1713,-41.4017 2019-06-03 15:41:07.460,141.0491,7097.771,3.8723,29.4,1.3003,0.1152,2400.0,2400.0,0.8174,-1.7316,5.162,-41.4017 2019-06-03 15:41:07.480,140.9898,7097.7163,3.8895,29.4651,1.1242,0.0896,2400.0,2400.0,0.8291,-1.7316,5.1779,-41.2259 2019-06-03 15:41:07.500,140.9982,7097.6616,3.9096,29.5316,1.0843,0.1154,2400.0,2400.0,0.8437,-1.7375,5.1673,-41.0467 2019-06-03 15:41:07.520,140.9813,7097.689,3.9096,29.5316,1.5299,0.0844,2400.0,2400.0,0.8349,-1.7286,5.166,-41.0467 2019-06-03 15:41:07.540,141.2016,7097.7983,3.9096,29.5316,1.0066,0.1084,2400.0,2400.0,0.8261,-1.7316,5.1647,-41.0467 2019-06-03 15:41:07.560,141.1677,7097.9072,3.9285,29.5991,1.4504,0.0618,2400.0,2400.0,0.8261,-1.7286,5.1634,-40.8692 2019-06-03 15:41:07.580,141.1254,7097.9619,3.943,29.6649,1.0381,0.1521,2400.0,2400.0,0.8057,-1.7286,5.1607,-40.6909 2019-06-03 15:41:07.600,141.1339,7097.9893,3.95,29.6948,1.1283,0.1753,2400.0,2400.0,0.8144,-1.7286,5.1594,-40.6043 2019-06-03 15:41:07.620,141.1169,7097.9893,3.953,29.7226,1.433,0.0124,2400.0,2400.0,0.8057,-1.7226,5.1475,-40.5195 2019-06-03 15:41:07.640,141.1762,7098.0166,3.953,29.7226,1.139,0.1459,2400.0,2400.0,0.8057,-1.7286,5.1594,-40.5195 2019-06-03 15:41:07.660,141.1846,7098.0166,3.953,29.7226,1.4205,0.0484,2400.0,2400.0,0.8144,-1.7286,5.1395,-40.5195 2019-06-03 15:41:07.680,141.1254,7098.0439,3.9657,29.7912,1.0229,0.1311,2400.0,2400.0,0.8144,-1.7256,5.1435,-40.3455 2019-06-03 15:41:07.700,141.1254,7097.5249,3.9815,29.8579,1.0832,0.1727,2400.0,2400.0,0.8144,-1.7226,5.1236,-40.1689 2019-06-03 15:41:07.720,141.1169,7096.6514,3.9815,29.8579,1.2955,0.0175,2400.0,2400.0,0.8232,-1.7106,5.1369,-40.1689 2019-06-03 15:41:07.740,141.1762,7095.395,3.9815,29.8579,1.1738,0.177,2400.0,2400.0,0.8232,-1.7674,5.1408,-40.1689 2019-06-03 15:41:07.760,141.1762,7094.5483,3.9944,29.9245,1.3509,0.0138,2400.0,2400.0,0.8115,-1.7166,5.0998,-39.9932 2019-06-03 15:41:07.780,141.1339,7093.2925,4.0016,29.9825,1.1638,0.1857,2400.0,2400.0,0.8115,-1.7226,5.1144,-39.8236 2019-06-03 15:41:07.800,141.1169,7092.4458,4.0091,30.0176,1.173,0.2024,2400.0,2400.0,0.8057,-1.7525,5.0972,-39.7344 2019-06-03 15:41:07.820,141.1339,7091.5996,4.0084,30.0467,1.2814,-0.0293,2400.0,2400.0,0.8291,-1.7256,5.1144,-39.6514 2019-06-03 15:41:07.840,141.1762,7090.3159,4.0084,30.0467,1.2367,0.215,2400.0,2400.0,0.8144,-1.7405,5.1091,-39.6514 2019-06-03 15:41:07.860,141.1762,7089.5239,4.0084,30.0467,1.1431,-0.0325,2400.0,2400.0,0.8232,-1.7316,5.0985,-39.6514 2019-06-03 15:41:07.880,141.1254,7089.4692,4.0207,30.1118,1.2526,0.2043,2400.0,2400.0,0.8057,-1.7316,5.0945,-39.4748 2019-06-03 15:41:07.900,141.1423,7089.3604,4.0298,30.1759,1.2951,0.2079,2400.0,2400.0,0.8203,-1.7345,5.0998,-39.3008 2019-06-03 15:41:07.920,141.1169,7089.3604,4.0298,30.1759,1.1679,-0.0069,2400.0,2400.0,0.8174,-1.7316,5.0905,-39.3008 2019-06-03 15:41:07.940,141.0322,7089.4419,4.0298,30.1759,1.3587,0.1991,2400.0,2400.0,0.8115,-1.7405,5.0972,-39.3008 2019-06-03 15:41:07.960,141.0406,7089.5239,4.0355,30.2373,1.0573,0.0032,2400.0,2400.0,0.8115,-1.7047,5.0852,-39.1303 2019-06-03 15:41:07.980,140.9898,7089.5513,4.0391,30.2957,1.477,0.1592,2400.0,2400.0,0.7823,-1.7106,5.0813,-38.9686 2019-06-03 15:41:08.000,140.9898,7089.606,4.0471,30.3311,1.3953,0.1591,2400.0,2400.0,0.8174,-1.7106,5.0932,-38.8794 2019-06-03 15:41:08.020,140.9982,7089.5786,4.0463,30.3573,1.0203,0.0168,2400.0,2400.0,0.8174,-1.7106,5.076,-38.7963 2019-06-03 15:41:08.040,141.0406,7089.606,4.0463,30.3573,1.4489,0.1479,2400.0,2400.0,0.8378,-1.7166,5.0998,-38.7963 2019-06-03 15:41:08.060,141.0576,7089.606,4.0463,30.3573,0.8997,0.0421,2400.0,2400.0,0.8203,-1.7106,5.0614,-38.7963 2019-06-03 15:41:08.080,140.9982,7089.6333,4.0535,30.4213,1.4881,0.0881,2400.0,2400.0,0.8232,-1.7166,5.068,-38.6232 2019-06-03 15:41:08.100,141.0067,7089.5513,4.0559,30.4838,1.4341,0.0851,2400.0,2400.0,0.8261,-1.7136,5.0641,-38.4519 2019-06-03 15:41:08.120,140.9898,7089.5786,4.0559,30.4838,0.9293,0.0813,2400.0,2400.0,0.8203,-1.7017,5.072,-38.4519 2019-06-03 15:41:08.140,141.0406,7089.5786,4.0559,30.4838,1.4737,0.0893,2400.0,2400.0,0.8144,-1.7345,5.0866,-38.4519 2019-06-03 15:41:08.160,141.0491,7089.606,4.0543,30.5442,0.9489,0.1069,2400.0,2400.0,0.8027,-1.7345,5.0588,-38.2832 2019-06-03 15:41:08.180,140.9898,7089.606,4.0563,30.6084,1.5595,0.0305,2400.0,2400.0,0.8057,-1.7375,5.072,-38.1232 2019-06-03 15:41:08.200,140.9898,7089.606,4.0601,30.6399,1.5162,0.0253,2400.0,2400.0,0.8174,-1.7375,5.0707,-38.0357 2019-06-03 15:41:08.220,140.9982,7089.606,4.0613,30.6712,0.9334,0.1691,2400.0,2400.0,0.8115,-1.7106,5.0574,-37.9492 2019-06-03 15:41:08.240,141.0491,7089.606,4.0613,30.6712,1.4112,-0.002,2400.0,2400.0,0.8144,-1.7584,5.0786,-37.9492 2019-06-03 15:41:08.260,141.0491,7089.5786,4.0613,30.6712,1.0477,0.1854,2400.0,2400.0,0.8115,-1.7495,5.0521,-37.9492 2019-06-03 15:41:08.280,140.9982,7089.5786,4.0651,30.738,1.3546,-0.0056,2400.0,2400.0,0.8057,-1.7525,5.0693,-37.7761 2019-06-03 15:41:08.300,140.9982,7089.4966,4.0605,30.7977,1.4142,-0.0265,2400.0,2400.0,0.8057,-1.7525,5.0641,-37.6082 2019-06-03 15:41:08.320,140.9982,7089.4419,4.0605,30.7977,1.1113,0.2296,2400.0,2400.0,0.8203,-1.7495,5.0442,-37.6082 2019-06-03 15:41:08.340,141.0491,7089.4419,4.0605,30.7977,1.3435,-0.0472,2400.0,2400.0,0.8232,-1.8032,5.0588,-37.6082 2019-06-03 15:41:08.360,141.0406,7089.4966,4.0599,30.8587,1.1191,0.2311,2400.0,2400.0,0.8232,-1.8092,5.0521,-37.4386 2019-06-03 15:41:08.380,140.9898,7089.5239,4.0599,30.8587,1.193,-0.0433,2400.0,2400.0,0.8115,-1.8659,5.068,-37.4386 2019-06-03 15:41:08.400,140.9898,7089.5513,4.0628,30.9485,1.0939,-0.0602,2340.0,2340.0,0.8203,-1.8898,5.0614,-37.2008 2019-06-03 15:41:08.420,141.0152,7089.5513,4.0666,30.9824,1.2844,0.2219,2340.0,2340.0,0.8144,-1.8898,5.0376,-37.1116 2019-06-03 15:41:08.440,141.0491,7089.415,4.0666,30.9824,1.0381,-0.0455,2340.0,2340.0,0.7969,-1.9583,5.0588,-37.1116 2019-06-03 15:41:08.460,141.0491,7089.3877,4.0666,30.9824,1.2814,0.2166,2340.0,2340.0,0.8027,-1.9524,5.0535,-37.1116 2019-06-03 15:41:08.480,140.9982,7089.4419,4.0653,31.037,1.1043,-0.0235,2340.0,2340.0,0.8086,-1.9732,5.0641,-36.9429 2019-06-03 15:41:08.500,141.0067,7089.3877,4.0628,31.0866,1.0636,-0.0044,2340.0,2340.0,0.8203,-1.9851,5.0548,-36.7742 2019-06-03 15:41:08.520,140.9898,7089.3877,4.0628,31.0866,1.3465,0.1503,2340.0,2340.0,0.8407,-1.9762,5.0376,-36.7742 2019-06-03 15:41:08.540,141.0491,7089.3877,4.0628,31.0866,0.9482,0.0168,2340.0,2340.0,0.8203,-2.0119,5.0455,-36.7742 2019-06-03 15:41:08.560,141.0491,7089.415,4.0643,31.14,1.426,0.1335,2340.0,2340.0,0.832,-2.009,5.0468,-36.6019 2019-06-03 15:41:08.580,141.0067,7089.415,4.0689,31.1863,1.0384,0.0628,2340.0,2340.0,0.8232,-2.009,5.0654,-36.4472 2019-06-03 15:41:08.600,140.9898,7089.4692,4.067,31.2045,0.9781,0.0745,2340.0,2340.0,0.8144,-2.0119,5.0654,-36.3633 2019-06-03 15:41:08.620,140.9982,7089.4692,4.0672,31.2263,1.4512,0.0908,2340.0,2340.0,0.8144,-2.003,5.0402,-36.2785 2019-06-03 15:41:08.640,141.0576,7089.4966,4.0672,31.2263,0.9315,0.0921,2340.0,2340.0,0.7998,-2.009,5.0508,-36.2785 2019-06-03 15:41:08.660,141.0576,7089.4419,4.0672,31.2263,1.4194,0.0959,2340.0,2340.0,0.7998,-2.0238,5.0389,-36.2785 2019-06-03 15:41:08.680,140.9982,7089.4419,4.0634,31.2619,0.9892,0.1196,2340.0,2340.0,0.8057,-2.0238,5.0521,-36.1097 2019-06-03 15:41:08.700,140.9982,7089.3877,4.0648,31.2987,0.8942,0.1073,2340.0,2340.0,0.8232,-2.0238,5.0693,-35.9401 2019-06-03 15:41:08.720,140.9898,7089.4419,4.0648,31.2987,1.4715,0.0413,2340.0,2340.0,0.8407,-2.009,5.0323,-35.9401 2019-06-03 15:41:08.740,141.0491,7089.4966,4.0648,31.2987,0.9356,0.1241,2340.0,2340.0,0.8203,-2.0477,5.0468,-35.9401 2019-06-03 15:41:08.760,141.0406,7089.5513,4.0675,31.3349,1.4467,0.0701,2340.0,2340.0,0.8291,-2.0506,5.0468,-35.7696 2019-06-03 15:41:08.780,140.9982,7089.5786,4.0666,31.361,1.0125,0.1259,2340.0,2340.0,0.8057,-2.0893,5.0561,-35.6114 2019-06-03 15:41:08.800,140.9982,7089.5786,4.0636,31.371,0.9511,0.1591,2340.0,2340.0,0.794,-2.0804,5.0614,-35.5301 2019-06-03 15:41:08.820,140.9898,7089.4966,4.0607,31.3824,1.3605,-0.0166,2340.0,2340.0,0.7998,-2.0804,5.0362,-35.4479 2019-06-03 15:41:08.840,141.0491,7089.5513,4.0607,31.3824,1.152,0.1883,2340.0,2340.0,0.7969,-2.1131,5.0482,-35.4479 2019-06-03 15:41:08.860,141.0576,7089.5239,4.0607,31.3824,1.2215,0.0001,2340.0,2340.0,0.8261,-2.1101,5.0442,-35.4479 2019-06-03 15:41:08.880,140.9898,7089.5513,4.0605,31.4066,1.0455,0.232,2340.0,2340.0,0.8349,-2.1339,5.0535,-35.2792 2019-06-03 15:41:08.900,140.9982,7089.4966,4.0632,31.4298,1.1457,0.2341,2340.0,2340.0,0.8261,-2.1488,5.0588,-35.1078 2019-06-03 15:41:08.920,140.9898,7089.4692,4.0632,31.4298,1.21,-0.041,2340.0,2340.0,0.8203,-2.1517,5.027,-35.1078 2019-06-03 15:41:08.940,140.8963,7089.4692,4.0632,31.4298,1.2381,0.1963,2340.0,2340.0,0.794,-2.1696,5.0508,-35.1078 2019-06-03 15:41:08.960,140.9218,7089.4966,4.0645,31.4455,1.054,0.0029,2340.0,2340.0,0.7998,-2.1577,5.0442,-34.94 2019-06-03 15:41:08.980,140.8623,7089.5786,4.0625,31.4569,1.3128,0.218,2340.0,2340.0,0.8057,-2.1636,5.0495,-34.7774 2019-06-03 15:41:09.000,140.8538,7089.606,4.0661,31.4659,1.3724,0.1939,2340.0,2340.0,0.8057,-2.1696,5.0561,-34.6891 2019-06-03 15:41:09.020,140.8623,7089.5786,4.0616,31.4656,0.96,-0.0066,2340.0,2340.0,0.8115,-2.1547,5.0389,-34.6077 2019-06-03 15:41:09.040,140.9133,7089.6333,4.0616,31.4656,1.4911,0.169,2340.0,2340.0,0.8057,-2.1814,5.0455,-34.6077 2019-06-03 15:41:09.060,140.9218,7089.5786,4.0616,31.4656,0.8646,0.047,2340.0,2340.0,0.8144,-2.1666,5.0508,-34.6077 2019-06-03 15:41:09.080,140.8538,7089.6333,4.0638,31.4737,1.375,0.1692,2340.0,2340.0,0.8057,-2.1547,5.0468,-34.4355 2019-06-03 15:41:09.100,140.8708,7089.606,4.065,31.4788,1.3905,0.1719,2340.0,2340.0,0.8115,-2.1606,5.0693,-34.2624 2019-06-03 15:41:09.120,140.8538,7089.606,4.065,31.4788,0.9364,0.0019,2340.0,2340.0,0.7998,-2.1577,5.031,-34.2624 2019-06-03 15:41:09.140,140.9133,7089.6606,4.065,31.4788,1.4101,0.1301,2340.0,2340.0,0.8027,-2.1547,5.0415,-34.2624 2019-06-03 15:41:09.160,140.9048,7089.7153,4.0593,31.4764,0.8513,0.0731,2340.0,2340.0,0.7998,-2.1577,5.0429,-34.0937 2019-06-03 15:41:09.180,140.8538,7089.7153,4.0553,31.4698,1.4896,0.1364,2340.0,2340.0,0.8115,-2.1577,5.0641,-33.9267 2019-06-03 15:41:09.200,140.8623,7089.6606,4.0589,31.4724,1.4978,0.1062,2340.0,2340.0,0.8086,-2.1606,5.0601,-33.8358 2019-06-03 15:41:09.220,140.8623,7089.606,4.0543,31.4687,0.8776,0.0735,2340.0,2340.0,0.8261,-2.1547,5.0429,-33.7501 2019-06-03 15:41:09.240,140.9048,7089.6333,4.0543,31.4687,1.4626,0.0889,2340.0,2340.0,0.8115,-2.1606,5.0429,-33.7501 2019-06-03 15:41:09.260,140.9218,7089.5239,4.0543,31.4687,0.9301,0.1223,2340.0,2340.0,0.8203,-2.1547,5.0415,-33.7501 2019-06-03 15:41:09.280,140.8538,7089.5239,4.0535,31.4674,1.3831,0.0629,2340.0,2340.0,0.7969,-2.1606,5.0455,-33.5726 2019-06-03 15:41:09.300,140.8623,7089.4692,4.0467,31.4606,1.3609,0.0065,2340.0,2340.0,0.8027,-2.1725,5.0667,-33.3986 2019-06-03 15:41:09.320,140.8538,7089.4692,4.0467,31.4606,1.0288,0.1704,2340.0,2340.0,0.7998,-2.1606,5.0402,-33.3986 2019-06-03 15:41:09.340,140.7687,7089.4692,4.0467,31.4606,1.3964,0.0068,2340.0,2340.0,0.7969,-2.1666,5.0521,-33.3986 2019-06-03 15:41:09.360,140.7857,7089.5513,4.0365,31.4541,1.0173,0.1649,2340.0,2340.0,0.8203,-2.1666,5.0468,-33.2238 2019-06-03 15:41:09.380,140.7346,7089.606,4.0324,31.4495,1.274,0.0167,2340.0,2340.0,0.8203,-2.1606,5.0389,-33.0507 2019-06-03 15:41:09.400,140.7176,7089.6333,4.0301,31.4473,1.2015,-0.0262,2400.0,2400.0,0.8203,-2.1696,5.0561,-32.9598 2019-06-03 15:41:09.420,140.7346,7089.606,4.0288,31.4488,1.1812,0.2154,2400.0,2400.0,0.8057,-2.1577,5.0336,-32.8671 2019-06-03 15:41:09.440,140.7772,7089.6333,4.0288,31.4488,1.2984,-0.035,2400.0,2400.0,0.794,-2.1725,5.0574,-32.8671 2019-06-03 15:41:09.460,140.7857,7089.5786,4.0288,31.4488,1.0765,0.234,2400.0,2400.0,0.8027,-2.1933,5.0521,-32.8671 2019-06-03 15:41:09.480,140.7261,7089.5786,4.0207,31.442,1.2359,-0.0439,2400.0,2400.0,0.7911,-2.1517,5.0415,-32.6879 2019-06-03 15:41:09.500,140.7346,7089.5513,4.0115,31.4357,1.223,-0.0474,2400.0,2400.0,0.7823,-2.1606,5.0508,-32.5086 2019-06-03 15:41:09.520,140.7176,7089.5786,4.0115,31.4357,1.2023,0.2064,2400.0,2400.0,0.7969,-2.1577,5.0257,-32.5086 2019-06-03 15:41:09.540,140.7772,7089.5239,4.0115,31.4357,1.3047,-0.0119,2400.0,2400.0,0.8027,-2.1577,5.0442,-32.5086 2019-06-03 15:41:09.560,140.7857,7089.5786,4.0036,31.4276,1.1497,0.1963,2400.0,2400.0,0.8174,-2.1606,5.0482,-32.3268 2019-06-03 15:41:09.580,140.7261,7089.606,3.9966,31.4208,1.1812,-0.0081,2400.0,2400.0,0.8115,-2.1577,5.0455,-32.1484 2019-06-03 15:41:09.600,140.7346,7089.6333,3.9903,31.4149,1.0987,-0.0231,2400.0,2400.0,0.7969,-2.1606,5.0521,-32.0584 2019-06-03 15:41:09.620,140.7346,7089.6333,3.9895,31.4145,1.2415,0.1982,2400.0,2400.0,0.8115,-2.1636,5.0323,-31.9657 2019-06-03 15:41:09.640,140.7772,7089.6333,3.9895,31.4145,1.1224,-0.0172,2400.0,2400.0,0.7998,-2.1636,5.0323,-31.9657 2019-06-03 15:41:09.660,140.7943,7089.5786,3.9895,31.4145,1.2603,0.1649,2400.0,2400.0,0.7969,-2.1636,5.031,-31.9657 2019-06-03 15:41:09.680,140.7261,7089.5239,3.9769,31.4064,1.0684,0.0002,2400.0,2400.0,0.7969,-2.1814,5.031,-31.7839 2019-06-03 15:41:09.700,140.7346,7089.4692,3.9675,31.3981,1.0177,-0.0283,2400.0,2400.0,0.7852,-2.2111,5.0455,-31.5994 2019-06-03 15:41:09.720,140.7176,7089.5239,3.9675,31.3981,1.3051,0.2067,2400.0,2400.0,0.7998,-2.1606,5.0323,-31.5994 2019-06-03 15:41:09.740,140.6237,7089.5513,3.9675,31.3981,1.004,-0.0097,2400.0,2400.0,0.7998,-2.1755,5.0376,-31.5994 2019-06-03 15:41:09.760,140.6494,7089.5786,3.959,31.3994,1.3798,0.1424,2400.0,2400.0,0.8115,-2.1755,5.0336,-31.4141 2019-06-03 15:41:09.780,140.5981,7089.6333,3.9519,31.3959,1.1198,0.0251,2400.0,2400.0,0.8057,-2.1339,5.0217,-31.2322 2019-06-03 15:41:09.800,140.5896,7089.688,3.9434,31.3933,1.0976,0.0329,2400.0,2400.0,0.7969,-2.1606,5.0376,-31.1422 2019-06-03 15:41:09.820,140.5981,7089.688,3.9412,31.3972,1.2245,0.1363,2400.0,2400.0,0.8027,-2.1696,5.0204,-31.0477 2019-06-03 15:41:09.840,140.6494,7089.7153,3.9412,31.3972,1.0473,0.0792,2400.0,2400.0,0.8261,-2.1666,5.0508,-31.0477 2019-06-03 15:41:09.860,140.6494,7089.7427,3.9412,31.3972,1.3483,0.0981,2400.0,2400.0,0.8057,-2.1696,5.0415,-31.0477 2019-06-03 15:41:09.880,140.5811,7089.7427,3.9279,31.397,1.0784,0.0732,2400.0,2400.0,0.8086,-2.1577,5.0257,-30.865 2019-06-03 15:41:09.900,140.5981,7089.6606,3.9189,31.4016,1.034,0.0891,2400.0,2400.0,0.7764,-2.1636,5.0243,-30.6788 2019-06-03 15:41:09.920,140.5811,7089.688,3.9189,31.4016,1.3731,0.1133,2400.0,2400.0,0.7969,-2.1636,5.0124,-30.6788 2019-06-03 15:41:09.940,140.6494,7089.7153,3.9189,31.4016,1.0806,0.0908,2400.0,2400.0,0.794,-2.1636,5.027,-30.6788 2019-06-03 15:41:09.960,140.6408,7089.7153,3.9104,31.4106,1.3332,0.0896,2400.0,2400.0,0.7969,-2.1636,5.0323,-30.49 2019-06-03 15:41:09.980,140.5896,7089.7153,3.9104,31.4106,1.0296,0.0673,2400.0,2400.0,0.8057,-2.1636,5.0296,-30.49 2019-06-03 15:41:10.000,140.5896,7089.7695,3.894,31.4187,0.9889,0.1109,2400.0,2400.0,0.7969,-2.1666,5.0389,-30.2137 2019-06-03 15:41:10.020,140.5896,7089.7969,3.8901,31.4221,1.3095,0.0618,2400.0,2400.0,0.8086,-2.1844,5.0243,-30.1202 2019-06-03 15:41:10.040,140.6408,7089.7969,3.8901,31.4221,1.0983,0.1369,2400.0,2400.0,0.8057,-2.1814,5.0111,-30.1202 2019-06-03 15:41:10.060,140.6494,7089.8242,3.8901,31.4221,1.3121,0.019,2400.0,2400.0,0.8115,-2.1814,5.0257,-30.1202 2019-06-03 15:41:10.080,140.5896,7089.7969,3.8815,31.425,1.0506,0.1333,2400.0,2400.0,0.8057,-2.1785,4.9965,-29.9339 2019-06-03 15:41:10.100,140.5981,7089.2236,3.8745,31.4346,1.0532,0.1838,2400.0,2400.0,0.7969,-2.1963,5.031,-29.7468 2019-06-03 15:41:10.120,140.5896,7088.3501,3.8745,31.4346,1.3154,0.0101,2400.0,2400.0,0.7998,-2.1874,5.0362,-29.7468 2019-06-03 15:41:10.140,140.8028,7087.0669,3.8745,31.4346,1.0074,0.2014,2400.0,2400.0,0.7969,-2.1547,5.0376,-29.7468 2019-06-03 15:41:10.160,140.7687,7086.1934,3.8649,31.437,1.2847,-0.0129,2400.0,2400.0,0.8027,-2.1933,5.0336,-29.5615 2019-06-03 15:41:10.180,140.7346,7084.8555,3.8582,31.4388,1.0917,0.1569,2400.0,2400.0,0.7998,-2.1874,4.9846,-29.3954 2019-06-03 15:41:10.200,140.7261,7083.9546,3.8534,31.4385,1.1246,0.1922,2400.0,2400.0,0.7852,-2.1903,5.0058,-29.3027 2019-06-03 15:41:10.220,140.7346,7083.0264,3.8478,31.4377,1.1645,-0.0042,2400.0,2400.0,0.7969,-2.1933,5.0204,-29.2135 2019-06-03 15:41:10.240,140.7772,7081.6611,3.8478,31.4377,1.1394,0.189,2400.0,2400.0,0.7998,-2.1903,5.0257,-29.2135 2019-06-03 15:41:10.260,140.7943,7080.8696,3.8478,31.4377,1.1671,-0.0212,2400.0,2400.0,0.794,-2.1903,5.0415,-29.2135 2019-06-03 15:41:10.280,140.7346,7080.8149,3.8418,31.4405,1.152,0.1652,2400.0,2400.0,0.794,-2.1844,5.0018,-29.0299 2019-06-03 15:41:10.300,140.7261,7080.8149,3.8349,31.4517,1.2574,0.196,2400.0,2400.0,0.7969,-2.1874,5.027,-28.8463 2019-06-03 15:41:10.320,140.7261,7080.8149,3.8349,31.4517,1.0262,0.0155,2400.0,2400.0,0.7969,-2.1963,5.019,-28.8463 2019-06-03 15:41:10.340,140.7857,7080.8149,3.8349,31.4517,1.1638,0.1718,2400.0,2400.0,0.7998,-2.1963,5.0111,-28.8463 2019-06-03 15:41:10.360,140.7772,7080.8696,3.826,31.4517,1.112,0.0205,2400.0,2400.0,0.8027,-2.2022,5.0336,-28.6663 2019-06-03 15:41:10.380,140.7346,7080.897,3.8174,31.4567,1.2259,0.1321,2400.0,2400.0,0.8144,-2.1785,5.0137,-28.4975 2019-06-03 15:41:10.400,140.7176,7080.9512,3.8171,31.463,1.3232,0.131,2400.0,2400.0,0.8144,-2.1814,5.0296,-28.4048 2019-06-03 15:41:10.420,140.7346,7080.9512,3.8119,31.4611,1.0014,0.0454,2400.0,2400.0,0.8144,-2.1814,5.0137,-28.317 2019-06-03 15:41:10.440,140.7772,7081.0059,3.8119,31.4611,1.3332,0.147,2400.0,2400.0,0.8027,-2.1814,5.0071,-28.317 2019-06-03 15:41:10.460,140.7857,7080.9243,3.8119,31.4611,0.9578,0.0339,2400.0,2400.0,0.7969,-2.2082,5.0296,-28.317 2019-06-03 15:41:10.480,140.7346,7080.8696,3.8089,31.4707,1.412,0.1277,2400.0,2400.0,0.7911,-2.2052,5.0151,-28.1347 2019-06-03 15:41:10.500,140.7346,7080.7876,3.8015,31.4759,1.4519,0.1177,2400.0,2400.0,0.8027,-2.2052,5.0455,-27.9572 2019-06-03 15:41:10.520,140.7261,7080.7603,3.8015,31.4759,0.9094,0.0601,2400.0,2400.0,0.8027,-2.1963,5.019,-27.9572 2019-06-03 15:41:10.540,140.7857,7080.7603,3.8015,31.4759,1.4001,0.0977,2400.0,2400.0,0.8086,-2.1963,5.0045,-27.9572 2019-06-03 15:41:10.560,140.7687,7080.8149,3.7903,31.4783,0.9045,0.0833,2400.0,2400.0,0.8057,-2.2082,5.031,-27.7819 2019-06-03 15:41:10.580,140.7261,7080.8149,3.7874,31.4799,1.4471,0.0762,2400.0,2400.0,0.7969,-2.1844,5.0058,-27.618 2019-06-03 15:41:10.600,140.7346,7080.8423,3.7872,31.4851,1.4375,0.0427,2400.0,2400.0,0.7881,-2.2082,5.0257,-27.5284 2019-06-03 15:41:10.620,140.7346,7080.8149,3.7852,31.4877,0.9545,0.1401,2400.0,2400.0,0.7998,-2.2111,5.0376,-27.4414 2019-06-03 15:41:10.640,140.7857,7080.7876,3.7852,31.4877,1.4567,0.0177,2400.0,2400.0,0.7998,-2.1993,5.0151,-27.4414 2019-06-03 15:41:10.660,140.7857,7080.8149,3.7852,31.4877,0.9778,0.1655,2400.0,2400.0,0.7969,-2.1993,5.0336,-27.4414 2019-06-03 15:41:10.680,140.7261,7080.8423,3.7812,31.4897,1.3691,0.006,2400.0,2400.0,0.8057,-2.1993,5.0151,-27.2661 2019-06-03 15:41:10.700,140.7261,7080.8149,3.7712,31.4914,1.3827,-0.0127,2400.0,2400.0,0.8057,-2.2408,5.027,-27.0978 2019-06-03 15:41:10.720,140.7176,7080.8696,3.7712,31.4914,0.9585,0.1773,2400.0,2400.0,0.8203,-2.226,5.0336,-27.0978 2019-06-03 15:41:10.740,140.7772,7080.8696,3.7712,31.4914,1.409,-0.0396,2400.0,2400.0,0.8174,-2.1666,5.0045,-27.0978 2019-06-03 15:41:10.760,140.7857,7080.8423,3.7652,31.491,1.1161,0.2036,2400.0,2400.0,0.7998,-2.2052,5.0336,-26.9291 2019-06-03 15:41:10.780,140.7346,7080.8423,3.7672,31.4951,1.173,-0.021,2400.0,2400.0,0.7969,-2.1993,5.0164,-26.7604 2019-06-03 15:41:10.800,140.7261,7080.897,3.7644,31.4958,1.3173,-0.0125,2400.0,2400.0,0.7677,-2.2022,5.019,-26.6777 2019-06-03 15:41:10.820,140.7261,7080.897,3.7677,31.5008,1.1468,0.1924,2400.0,2400.0,0.7881,-2.2052,5.031,-26.5912 2019-06-03 15:41:10.840,140.7772,7080.9512,3.7677,31.5008,1.173,-0.0673,2400.0,2400.0,0.7911,-2.2022,4.9859,-26.5912 2019-06-03 15:41:10.860,140.7772,7080.9512,3.7677,31.5008,1.3358,0.2253,2400.0,2400.0,0.794,-2.2022,5.0283,-26.5912 2019-06-03 15:41:10.880,140.7346,7080.9243,3.7649,31.5011,1.0373,-0.0089,2400.0,2400.0,0.8144,-2.1993,5.0151,-26.4255 2019-06-03 15:41:10.900,140.7346,7080.8696,3.7632,31.4982,1.0344,-0.0056,2400.0,2400.0,0.8027,-2.2052,5.023,-26.2607 2019-06-03 15:41:10.920,140.7261,7080.897,3.7632,31.4982,1.2759,0.1417,2400.0,2400.0,0.7881,-2.2022,5.0349,-26.2607 2019-06-03 15:41:10.940,140.7857,7080.9243,3.7632,31.4982,0.9556,-0.0193,2400.0,2400.0,0.7823,-2.1993,5.0005,-26.2607 2019-06-03 15:41:10.960,140.7772,7080.9785,3.7693,31.4997,1.4157,0.1579,2400.0,2400.0,0.7589,-2.2052,5.0283,-26.0924 2019-06-03 15:41:10.980,140.7176,7080.9512,3.7766,31.5013,0.9389,0.0613,2400.0,2400.0,0.7735,-2.2052,5.0005,-25.935 2019-06-03 15:41:11.000,140.7261,7080.9785,3.7731,31.4956,0.9456,0.0671,2400.0,2400.0,0.8057,-2.2052,5.0217,-25.8577 2019-06-03 15:41:11.020,140.7346,7080.9512,3.7763,31.4958,1.4112,0.0921,2400.0,2400.0,0.8144,-2.2052,5.0336,-25.7742 2019-06-03 15:41:11.040,140.7772,7080.8696,3.7763,31.4958,0.8853,0.0904,2400.0,2400.0,0.8144,-2.2022,5.0243,-25.7742 2019-06-03 15:41:11.060,140.7943,7080.8696,3.7763,31.4958,1.4301,0.0598,2400.0,2400.0,0.7735,-2.2082,5.0283,-25.7742 2019-06-03 15:41:11.080,140.7261,7080.8696,3.7782,31.4923,0.8591,0.1336,2400.0,2400.0,0.7764,-2.1963,4.9912,-25.6124 2019-06-03 15:41:11.100,140.7346,7080.7876,3.7834,31.4879,0.8402,0.1359,2400.0,2400.0,0.7735,-2.1874,4.9952,-25.4468 2019-06-03 15:41:11.120,140.7176,7080.8423,3.7834,31.4879,1.4689,0.0294,2400.0,2400.0,0.7735,-2.1993,5.0336,-25.4468 2019-06-03 15:41:11.140,140.7772,7080.9243,3.7834,31.4879,0.8657,0.1296,2400.0,2400.0,0.794,-2.1993,5.031,-25.4468 2019-06-03 15:41:11.160,140.7772,7080.9785,3.7905,31.4877,1.4256,0.0077,2400.0,2400.0,0.7852,-2.2082,5.0349,-25.2815 2019-06-03 15:41:11.180,140.7346,7080.9243,3.7905,31.4877,0.9486,0.1659,2400.0,2400.0,0.7969,-2.2052,5.0018,-25.2815 2019-06-03 15:41:11.200,140.7261,7080.9512,3.7964,31.4757,0.9397,0.1864,2400.0,2400.0,0.7998,-2.2022,4.9979,-25.045 2019-06-03 15:41:11.220,140.7346,7080.9785,3.7959,31.4691,1.3583,-0.0275,2400.0,2400.0,0.7852,-2.2082,5.0243,-24.9655 2019-06-03 15:41:11.240,140.7772,7080.9785,3.7959,31.4691,1.0395,0.1838,2400.0,2400.0,0.794,-2.1963,5.0151,-24.9655 2019-06-03 15:41:11.260,140.7772,7081.0059,3.7959,31.4691,1.3199,-0.0098,2400.0,2400.0,0.7823,-2.2082,5.0362,-24.9655 2019-06-03 15:41:11.280,140.7176,7081.0332,3.8008,31.4643,1.1394,0.1923,2400.0,2400.0,0.7852,-2.2111,5.0283,-24.8024 2019-06-03 15:41:11.300,140.7431,7080.8696,3.8078,31.4611,1.0602,0.2059,2400.0,2400.0,0.7852,-2.2111,5.0164,-24.6368 2019-06-03 15:41:11.320,140.7261,7080.8423,3.8078,31.4611,1.3158,-0.0634,2400.0,2400.0,0.794,-2.2111,5.031,-24.6368 2019-06-03 15:41:11.340,140.7857,7080.8149,3.8078,31.4611,1.1117,0.2165,2400.0,2400.0,0.7911,-2.2052,4.9952,-24.6368 2019-06-03 15:41:11.360,140.7772,7080.8696,3.8129,31.4534,1.1912,-0.0386,2400.0,2400.0,0.7823,-2.2082,5.027,-24.472 2019-06-03 15:41:11.380,140.7176,7080.8696,3.8129,31.4534,1.1701,0.217,2400.0,2400.0,0.794,-2.2052,5.0243,-24.472 2019-06-03 15:41:11.400,140.7261,7080.8423,3.8169,31.4429,1.2441,0.2201,2340.0,2400.0,0.7969,-2.2082,5.0283,-24.232 2019-06-03 15:41:11.420,140.7261,7080.8423,3.8135,31.4329,1.0817,-0.0456,2340.0,2400.0,0.7823,-2.2022,5.0376,-24.1542 2019-06-03 15:41:11.440,140.7857,7080.7329,3.8135,31.4329,1.2452,0.2025,2340.0,2400.0,0.794,-2.1933,5.0071,-24.1542 2019-06-03 15:41:11.460,140.7943,7080.6782,3.8135,31.4329,1.0676,0.0008,2340.0,2400.0,0.7823,-2.2082,5.0243,-24.1542 2019-06-03 15:41:11.480,140.7346,7080.6509,3.8172,31.428,1.3151,0.1919,2340.0,2400.0,0.7969,-2.2022,5.0084,-23.9863 2019-06-03 15:41:11.500,140.7346,7080.624,3.819,31.4217,1.3458,0.2021,2340.0,2400.0,0.8057,-2.2022,5.0177,-23.8198 2019-06-03 15:41:11.520,140.7176,7080.624,3.819,31.4217,0.9826,-0.0085,2340.0,2400.0,0.794,-2.2052,5.031,-23.8198 2019-06-03 15:41:11.540,140.7772,7080.6509,3.819,31.4217,1.3853,0.1838,2340.0,2400.0,0.7969,-2.1993,5.0177,-23.8198 2019-06-03 15:41:11.560,140.7772,7080.7329,3.8178,31.4149,1.0384,0.0194,2340.0,2400.0,0.7911,-2.1993,5.0283,-23.6554 2019-06-03 15:41:11.580,140.7431,7080.6782,3.8161,31.4031,1.3975,0.1571,2340.0,2400.0,0.794,-2.1933,5.0164,-23.5037 2019-06-03 15:41:11.600,140.7261,7080.7329,3.8212,31.4064,1.4068,0.1463,2340.0,2400.0,0.7911,-2.1933,5.0031,-23.415 2019-06-03 15:41:11.620,140.7261,7080.7603,3.8185,31.4018,0.9267,0.0413,2340.0,2400.0,0.7969,-2.1903,5.0296,-23.3328 2019-06-03 15:41:11.640,140.7857,7080.8423,3.8185,31.4018,1.4512,0.1341,2340.0,2400.0,0.7881,-2.1903,4.9992,-23.3328 2019-06-03 15:41:11.660,140.7772,7080.897,3.8185,31.4018,0.9171,0.0576,2340.0,2400.0,0.7998,-2.1963,5.027,-23.3328 2019-06-03 15:41:11.680,140.7261,7080.9243,3.8214,31.4018,1.4208,0.1024,2340.0,2400.0,0.8086,-2.1903,5.0137,-23.1623 2019-06-03 15:41:11.700,140.7346,7080.9243,3.82,31.3977,1.5347,0.0897,2340.0,2400.0,0.8027,-2.1844,5.0058,-22.9931 2019-06-03 15:41:11.720,140.7261,7080.8696,3.82,31.3977,0.8853,0.1113,2340.0,2400.0,0.7794,-2.1874,5.0243,-22.9931 2019-06-03 15:41:11.740,140.7857,7080.8423,3.82,31.3977,1.4401,0.0543,2340.0,2400.0,0.7998,-2.1725,5.0018,-22.9931 2019-06-03 15:41:11.760,140.7772,7080.9243,3.8167,31.3896,0.9648,0.1382,2340.0,2400.0,0.7852,-2.1755,5.0296,-22.8257 2019-06-03 15:41:11.780,140.7346,7080.9512,3.8167,31.3896,1.2973,0.0203,2340.0,2400.0,0.7998,-2.1933,5.0137,-22.8257 2019-06-03 15:41:11.800,140.7176,7080.9243,3.8208,31.3874,1.4142,0.0122,2340.0,2400.0,0.7998,-2.1844,4.9886,-22.5753 2019-06-03 15:41:11.820,140.7431,7080.9785,3.8226,31.3881,1.0817,0.1649,2340.0,2400.0,0.7881,-2.1874,5.0164,-22.4869 2019-06-03 15:41:11.840,140.7687,7080.9785,3.8226,31.3881,1.3132,0.0184,2340.0,2400.0,0.8027,-2.1814,4.9965,-22.4869 2019-06-03 15:41:11.860,140.7943,7080.897,3.8226,31.3881,0.9556,0.1695,2340.0,2400.0,0.7911,-2.1933,5.0137,-22.4869 2019-06-03 15:41:11.880,140.7346,7080.897,3.8233,31.3839,1.3232,0.0068,2340.0,2400.0,0.8027,-2.1874,5.0177,-22.3152 2019-06-03 15:41:11.900,140.7261,7080.8423,3.82,31.3789,1.3824,0.0066,2340.0,2400.0,0.7823,-2.1517,4.9873,-22.1434 2019-06-03 15:41:11.920,140.7261,7080.8423,3.82,31.3789,1.1305,0.1735,2340.0,2400.0,0.7823,-2.1993,5.0257,-22.1434 2019-06-03 15:41:11.940,140.7857,7080.9243,3.82,31.3789,1.2156,0.025,2340.0,2400.0,0.7881,-2.1785,4.9899,-22.1434 2019-06-03 15:41:11.960,140.7687,7080.9243,3.8174,31.3714,1.1035,0.1675,2340.0,2400.0,0.8057,-2.1903,5.0257,-21.9707 2019-06-03 15:41:11.980,140.7261,7080.897,3.8174,31.3714,1.1272,0.0041,2340.0,2400.0,0.8027,-2.1844,5.0137,-21.9707 2019-06-03 15:41:12.000,140.7261,7080.8696,3.8148,31.3677,1.2074,-0.0172,2340.0,2400.0,0.7998,-2.1874,4.9793,-21.7075 2019-06-03 15:41:12.020,140.7346,7080.8149,3.8183,31.3679,1.227,0.2068,2340.0,2400.0,0.7794,-2.1785,5.0124,-21.6162 2019-06-03 15:41:12.040,140.7772,7080.8149,3.8183,31.3679,1.2115,-0.0026,2340.0,2400.0,0.7911,-2.1814,5.0071,-21.6162 2019-06-03 15:41:12.060,140.7857,7080.8149,3.8183,31.3679,1.2566,0.2236,2340.0,2400.0,0.7764,-2.1785,5.023,-21.6162 2019-06-03 15:41:12.080,140.7261,7080.897,3.8104,31.3673,1.105,-0.0073,2340.0,2400.0,0.7852,-2.1755,5.0124,-21.4426 2019-06-03 15:41:12.100,140.7346,7080.8423,3.8022,31.366,1.149,-0.0229,2340.0,2400.0,0.8086,-2.1636,4.9952,-21.2678 2019-06-03 15:41:12.120,140.7261,7080.897,3.8022,31.366,1.2648,0.2064,2340.0,2400.0,0.7881,-2.2022,5.0111,-21.2678 2019-06-03 15:41:12.140,140.7857,7080.8696,3.8022,31.366,1.1072,0.0106,2340.0,2400.0,0.8086,-2.1933,5.0045,-21.2678 2019-06-03 15:41:12.160,140.7772,7080.9243,3.7994,31.3644,1.2374,0.1622,2340.0,2400.0,0.7998,-2.1903,5.0137,-21.0903 2019-06-03 15:41:12.180,140.7261,7080.9512,3.7954,31.362,1.0632,0.0168,2340.0,2400.0,0.794,-2.1903,5.0204,-20.9115 2019-06-03 15:41:12.200,140.7261,7081.0059,3.7888,31.3594,1.021,0.0199,2340.0,2400.0,0.7881,-2.1903,5.0098,-20.8254 2019-06-03 15:41:12.220,140.7261,7080.9785,3.7897,31.3612,1.4401,0.1448,2340.0,2400.0,0.7589,-2.1903,5.0296,-20.7336 2019-06-03 15:41:12.240,140.7687,7081.0059,3.7897,31.3612,1.054,0.0692,2340.0,2400.0,0.7881,-2.1874,5.0058,-20.7336 2019-06-03 15:41:12.260,140.7857,7080.9243,3.7897,31.3612,1.3347,0.1239,2340.0,2400.0,0.7852,-2.1785,5.0124,-20.7336 2019-06-03 15:41:12.280,140.7261,7080.8149,3.7786,31.3555,1.0673,0.0751,2340.0,2400.0,0.7969,-2.1755,5.0098,-20.5579 2019-06-03 15:41:12.300,140.7346,7080.7603,3.7713,31.3531,1.1057,0.0513,2340.0,2400.0,0.7998,-2.1696,4.9979,-20.3795 2019-06-03 15:41:12.320,140.7261,7080.7603,3.7713,31.3531,1.4301,0.1086,2340.0,2400.0,0.7969,-2.1844,5.0323,-20.3795 2019-06-03 15:41:12.340,140.9218,7080.7876,3.7713,31.3531,0.9907,0.0832,2340.0,2400.0,0.794,-2.1814,5.0283,-20.3795 2019-06-03 15:41:12.360,140.9048,7080.8423,3.7652,31.354,1.2914,0.0519,2340.0,2400.0,0.7794,-2.1785,5.0177,-20.199 2019-06-03 15:41:12.380,140.8623,7080.9243,3.7591,31.3446,1.0606,0.1251,2340.0,2400.0,0.7764,-2.1785,5.0031,-20.0263 2019-06-03 15:41:12.400,140.8538,7080.9243,3.7541,31.3437,1.0296,0.1046,2400.0,2340.0,0.7852,-2.1755,4.9886,-19.938 2019-06-03 15:41:12.420,140.8708,7080.8423,3.749,31.3397,1.3225,0.0475,2400.0,2340.0,0.7881,-2.1814,5.031,-19.8502 2019-06-03 15:41:12.440,140.9133,7080.9243,3.749,31.3397,0.9952,0.1275,2400.0,2340.0,0.8057,-2.1814,5.0296,-19.8502 2019-06-03 15:41:12.460,140.9133,7080.9512,3.749,31.3397,1.3354,0.0193,2400.0,2340.0,0.7969,-2.1785,5.0257,-19.8502 2019-06-03 15:41:12.480,140.8623,7080.9785,3.7393,31.3341,0.977,0.145,2400.0,2340.0,0.7852,-2.1785,5.0177,-19.674 2019-06-03 15:41:12.500,140.8708,7080.9243,3.7334,31.3314,1.0832,0.1744,2400.0,2340.0,0.7823,-2.1814,4.9992,-19.493 2019-06-03 15:41:12.520,140.8453,7080.9785,3.7334,31.3314,1.2474,0.0053,2400.0,2340.0,0.7823,-2.1993,5.0283,-19.493 2019-06-03 15:41:12.540,140.9218,7080.9512,3.7334,31.3314,1.075,0.1653,2400.0,2340.0,0.7852,-2.1903,5.0151,-19.493 2019-06-03 15:41:12.560,140.9048,7080.9512,3.7275,31.3297,1.3413,-0.0179,2400.0,2340.0,0.7823,-2.1903,5.023,-19.3142 2019-06-03 15:41:12.580,140.8538,7081.0332,3.7275,31.3297,1.0998,0.1888,2400.0,2340.0,0.794,-2.1903,5.0296,-19.3142 2019-06-03 15:41:12.600,140.8623,7081.0332,3.7146,31.3279,1.0695,0.1874,2400.0,2340.0,0.7881,-2.1874,5.0031,-19.0533 2019-06-03 15:41:12.620,140.8623,7081.0059,3.707,31.3227,1.1483,0.0003,2400.0,2340.0,0.7881,-2.1933,5.0389,-18.9672 2019-06-03 15:41:12.640,140.9048,7081.0605,3.707,31.3227,1.0983,0.1437,2400.0,2340.0,0.7969,-2.1874,5.019,-18.9672 2019-06-03 15:41:12.660,140.9218,7081.0879,3.707,31.3227,1.2381,-0.0091,2400.0,2340.0,0.794,-2.1903,5.0243,-18.9672 2019-06-03 15:41:12.680,140.8538,7081.0332,3.7,31.321,1.2067,0.1655,2400.0,2340.0,0.7823,-2.1933,5.0349,-18.7875 2019-06-03 15:41:12.700,140.8708,7080.897,3.6948,31.3203,1.3014,0.1637,2400.0,2340.0,0.7911,-2.1844,5.0177,-18.607 2019-06-03 15:41:12.720,140.8538,7080.8696,3.6948,31.3203,1.0092,0.0344,2400.0,2340.0,0.7881,-2.1933,5.027,-18.607 2019-06-03 15:41:12.740,140.9133,7080.897,3.6948,31.3203,1.2337,0.1384,2400.0,2340.0,0.8057,-2.1933,5.027,-18.607 2019-06-03 15:41:12.760,140.9048,7080.9512,3.6852,31.317,1.1431,-0.0097,2400.0,2340.0,0.7969,-2.1844,5.0177,-18.4308 2019-06-03 15:41:12.780,140.8538,7080.9785,3.6755,31.3151,1.3136,0.1368,2400.0,2340.0,0.7735,-2.1874,5.0349,-18.2577 2019-06-03 15:41:12.800,140.8538,7080.9785,3.6749,31.3194,1.3498,0.1432,2400.0,2340.0,0.7706,-2.1844,5.0204,-18.1659 2019-06-03 15:41:12.820,140.8623,7080.9243,3.6696,31.3185,0.9497,0.0545,2400.0,2340.0,0.7764,-2.1874,5.0283,-18.078 2019-06-03 15:41:12.840,140.9133,7080.8423,3.6696,31.3185,1.3665,0.1246,2400.0,2340.0,0.8027,-2.1874,5.027,-18.078 2019-06-03 15:41:12.860,140.9218,7080.8423,3.6696,31.3185,0.977,0.0656,2400.0,2340.0,0.7998,-2.1874,5.0336,-18.078 2019-06-03 15:41:12.880,140.8538,7080.897,3.6642,31.3264,1.4068,0.0562,2400.0,2340.0,0.7823,-2.1903,5.0389,-17.8958 2019-06-03 15:41:12.900,140.8708,7080.8149,3.6577,31.3312,1.4619,0.0613,2400.0,2340.0,0.7998,-2.1903,5.031,-17.7152 2019-06-03 15:41:12.920,140.8453,7080.8423,3.6577,31.3312,0.8909,0.1158,2400.0,2340.0,0.7794,-2.1963,5.0349,-17.7152 2019-06-03 15:41:12.940,140.9048,7080.9243,3.6577,31.3312,1.402,0.0776,2400.0,2340.0,0.7677,-2.2022,5.019,-17.7152 2019-06-03 15:41:12.960,140.9048,7080.9243,3.6477,31.3356,0.9352,0.1118,2400.0,2340.0,0.7764,-2.1844,5.0323,-17.5364 2019-06-03 15:41:12.980,140.8623,7080.897,3.642,31.3454,1.3258,0.0694,2400.0,2340.0,0.7794,-2.1933,5.0535,-17.3572 2019-06-03 15:41:13.000,140.8708,7080.9512,3.6413,31.3561,1.3476,0.0498,2400.0,2340.0,0.8057,-2.1903,5.0495,-17.2641 2019-06-03 15:41:13.020,140.8623,7080.9243,3.6405,31.3599,0.9526,0.1394,2400.0,2340.0,0.7998,-2.2082,5.0442,-17.1727 2019-06-03 15:41:13.040,140.9048,7080.897,3.6405,31.3599,1.3924,0.0237,2400.0,2340.0,0.794,-2.2022,5.0336,-17.1727 2019-06-03 15:41:13.060,140.9133,7080.9512,3.6405,31.3599,0.9175,0.1701,2400.0,2340.0,0.7881,-2.1993,5.0442,-17.1727 2019-06-03 15:41:13.080,140.8623,7080.9785,3.6376,31.3688,1.3513,-0.0068,2400.0,2340.0,0.7794,-2.2052,5.0746,-16.99 2019-06-03 15:41:13.100,140.8623,7080.4053,3.6281,31.3769,1.3361,-0.0,2400.0,2340.0,0.7881,-2.1993,5.0535,-16.813 2019-06-03 15:41:13.120,140.8623,7079.4502,3.6281,31.3769,1.0358,0.1924,2400.0,2340.0,0.7911,-2.2022,5.0442,-16.813 2019-06-03 15:41:13.140,140.9133,7078.2217,3.6281,31.3769,1.2692,-0.0441,2400.0,2340.0,0.7911,-2.2022,5.0402,-16.813 2019-06-03 15:41:13.160,140.9048,7077.4575,3.6248,31.3861,1.0051,0.2173,2400.0,2340.0,0.8027,-2.2022,5.0588,-16.6316 2019-06-03 15:41:13.180,140.8623,7076.2295,3.625,31.3972,1.1793,-0.0646,2400.0,2340.0,0.7794,-2.1993,5.0773,-16.451 2019-06-03 15:41:13.200,140.8453,7075.4106,3.619,31.3994,1.2551,-0.0722,2400.0,2340.0,0.7911,-2.1963,5.0707,-16.364 2019-06-03 15:41:13.220,140.8708,7074.5098,3.6243,31.4101,1.1864,0.2515,2400.0,2340.0,0.7911,-2.1993,5.0627,-16.2692 2019-06-03 15:41:13.240,140.9218,7073.1724,3.6243,31.4101,1.0092,-0.0643,2400.0,2340.0,0.8027,-2.1993,5.0707,-16.2692 2019-06-03 15:41:13.260,140.9133,7072.3809,3.6243,31.4101,1.2367,0.1979,2400.0,2340.0,0.7969,-2.1993,5.0667,-16.2692 2019-06-03 15:41:13.280,140.8623,7072.3535,3.619,31.4154,1.1405,-0.0335,2400.0,2340.0,0.7764,-2.2022,5.0839,-16.093 2019-06-03 15:41:13.300,140.8623,7072.2441,3.6151,31.4226,1.1412,-0.0416,2400.0,2340.0,0.7823,-2.2022,5.0773,-15.9169 2019-06-03 15:41:13.320,140.8453,7072.2441,3.6151,31.4226,1.375,0.2147,2400.0,2340.0,0.7706,-2.2022,5.0707,-15.9169 2019-06-03 15:41:13.340,140.9048,7072.2988,3.6151,31.4226,1.0351,-0.014,2400.0,2340.0,0.7677,-2.1993,5.0707,-15.9169 2019-06-03 15:41:13.360,140.9048,7072.3262,3.6164,31.4315,1.3324,0.1742,2400.0,2340.0,0.7735,-2.1963,5.0588,-15.7372 2019-06-03 15:41:13.380,140.8538,7072.4082,3.62,31.4423,0.9667,0.0265,2400.0,2340.0,0.7823,-2.1993,5.0866,-15.5615 2019-06-03 15:41:13.400,140.8623,7072.4082,3.615,31.4409,0.9756,0.0117,2340.0,2400.0,0.7911,-2.1963,5.0826,-15.4775 2019-06-03 15:41:13.420,140.8538,7072.4082,3.6194,31.4508,1.4685,0.1488,2340.0,2400.0,0.794,-2.1993,5.0733,-15.3857 2019-06-03 15:41:13.440,140.9048,7072.4897,3.6194,31.4508,0.9375,0.0149,2340.0,2400.0,0.7764,-2.1963,5.0601,-15.3857 2019-06-03 15:41:13.460,140.9218,7072.4897,3.6194,31.4508,1.3809,0.1684,2340.0,2400.0,0.7794,-2.1696,5.0548,-15.3857 2019-06-03 15:41:13.480,140.8623,7072.5171,3.617,31.453,0.9611,0.0609,2340.0,2400.0,0.7823,-2.1814,5.0813,-15.2126 2019-06-03 15:41:13.500,140.8623,7072.4624,3.6188,31.4593,0.9304,0.0398,2340.0,2400.0,0.7823,-2.1874,5.0879,-15.0373 2019-06-03 15:41:13.520,140.8623,7072.4082,3.6188,31.4593,1.4341,0.0878,2340.0,2400.0,0.7823,-2.1874,5.0852,-15.0373 2019-06-03 15:41:13.540,140.9133,7072.2988,3.6188,31.4593,0.9242,0.0829,2340.0,2400.0,0.7794,-2.1933,5.0693,-15.0373 2019-06-03 15:41:13.560,140.9133,7072.3262,3.6261,31.467,1.4482,0.0872,2340.0,2400.0,0.7823,-2.1844,5.0574,-14.8603 2019-06-03 15:41:13.580,140.8623,7072.2988,3.6345,31.4724,1.0107,0.1156,2340.0,2400.0,0.7794,-2.1844,5.072,-14.6911 2019-06-03 15:41:13.600,140.8453,7072.3262,3.6335,31.4694,0.8139,0.0934,2340.0,2400.0,0.7852,-2.1844,5.0892,-14.6072 2019-06-03 15:41:13.620,140.8623,7072.3262,3.6363,31.4744,1.5244,0.0466,2340.0,2400.0,0.7794,-2.2052,5.0932,-14.5198 2019-06-03 15:41:13.640,140.9133,7072.3262,3.6363,31.4744,0.9426,0.137,2340.0,2400.0,0.7706,-2.2022,5.076,-14.5198 2019-06-03 15:41:13.660,140.9133,7072.3262,3.6363,31.4744,1.4671,0.0503,2340.0,2400.0,0.7911,-2.2022,5.0641,-14.5198 2019-06-03 15:41:13.680,140.8623,7072.2988,3.6403,31.4788,0.9926,0.171,2340.0,2400.0,0.7794,-2.1993,5.0693,-14.3484 2019-06-03 15:41:13.700,140.8623,7072.2715,3.6484,31.4838,0.9012,0.1439,2340.0,2400.0,0.7881,-2.1963,5.0839,-14.1747 2019-06-03 15:41:13.720,140.8538,7072.3262,3.6484,31.4838,1.2814,0.0032,2340.0,2400.0,0.7794,-2.1993,5.0879,-14.1747 2019-06-03 15:41:13.740,140.9048,7072.3809,3.6484,31.4838,0.9678,0.1623,2340.0,2400.0,0.7794,-2.2022,5.0839,-14.1747 2019-06-03 15:41:13.760,140.9133,7072.4624,3.6557,31.4927,1.3565,-0.0042,2340.0,2400.0,0.794,-2.1963,5.076,-13.9998 2019-06-03 15:41:13.780,140.8623,7072.4082,3.6625,31.4993,0.9811,0.2192,2340.0,2400.0,0.7911,-2.2052,5.0839,-13.8387 2019-06-03 15:41:13.800,140.8538,7072.4082,3.6663,31.5008,1.0281,0.1723,2340.0,2400.0,0.7969,-2.1963,5.0879,-13.7533 2019-06-03 15:41:13.820,140.8623,7072.3535,3.665,31.503,1.2962,-0.0479,2340.0,2400.0,0.7911,-2.1963,5.0839,-13.6702 2019-06-03 15:41:13.840,140.9133,7072.3809,3.665,31.503,1.0835,0.204,2340.0,2400.0,0.7911,-2.1993,5.0905,-13.6702 2019-06-03 15:41:13.860,140.9218,7072.3809,3.665,31.503,1.314,-0.0219,2340.0,2400.0,0.7881,-2.1903,5.0733,-13.6702 2019-06-03 15:41:13.880,140.8538,7072.4082,3.6735,31.5089,1.2082,0.2324,2340.0,2400.0,0.7677,-2.1963,5.0879,-13.4975 2019-06-03 15:41:13.900,140.8623,7072.3535,3.6832,31.5209,1.1945,0.1966,2340.0,2400.0,0.7589,-2.1993,5.0932,-13.3223 2019-06-03 15:41:13.920,140.8453,7072.3262,3.6832,31.5209,1.1642,-0.0576,2340.0,2400.0,0.7589,-2.1963,5.0958,-13.3223 2019-06-03 15:41:13.940,141.0746,7072.4082,3.6832,31.5209,1.166,0.1955,2340.0,2400.0,0.7794,-2.1993,5.0972,-13.3223 2019-06-03 15:41:13.960,141.0406,7072.4351,3.6917,31.5247,1.149,0.0076,2340.0,2400.0,0.794,-2.1963,5.0879,-13.1509 2019-06-03 15:41:13.980,140.9898,7072.4897,3.6917,31.5247,1.26,0.21,2340.0,2400.0,0.7852,-2.2052,5.0879,-13.1509 2019-06-03 15:41:14.000,140.9898,7072.5444,3.7014,31.5325,1.2252,0.1589,2340.0,2400.0,0.7881,-2.2052,5.0919,-12.8936 2019-06-03 15:41:14.020,141.0067,7072.5171,3.7022,31.5323,1.1571,-0.0073,2340.0,2400.0,0.7823,-2.1963,5.1011,-12.8104 2019-06-03 15:41:14.040,141.0491,7072.5718,3.7022,31.5323,1.2237,0.1702,2340.0,2400.0,0.7677,-2.1963,5.1011,-12.8104 2019-06-03 15:41:14.060,141.0491,7072.5171,3.7022,31.5323,1.2067,0.0193,2340.0,2400.0,0.7794,-2.1993,5.1077,-12.8104 2019-06-03 15:41:14.080,140.9898,7072.5171,3.7114,31.5404,1.4157,0.1913,2340.0,2400.0,0.756,-2.2022,5.0905,-12.6392 2019-06-03 15:41:14.100,141.0067,7072.3262,3.7204,31.543,1.2777,0.1549,2340.0,2400.0,0.7823,-2.2022,5.1024,-12.467 2019-06-03 15:41:14.120,140.9898,7072.3535,3.7204,31.543,1.0817,0.0353,2340.0,2400.0,0.7823,-2.2022,5.1051,-12.467 2019-06-03 15:41:14.140,141.0491,7072.3535,3.7204,31.543,1.3528,0.1515,2340.0,2400.0,0.7823,-2.2082,5.1104,-12.467 2019-06-03 15:41:14.160,141.0406,7072.3535,3.7267,31.5472,1.0872,0.0394,2340.0,2400.0,0.7852,-2.2052,5.1024,-12.2981 2019-06-03 15:41:14.180,140.9982,7072.4082,3.7343,31.5507,1.4456,0.1403,2340.0,2400.0,0.7823,-2.2082,5.1104,-12.1387 2019-06-03 15:41:14.200,140.9982,7072.3809,3.7409,31.5539,1.3802,0.1129,2340.0,2400.0,0.7677,-2.2052,5.0945,-12.0511 2019-06-03 15:41:14.220,140.9982,7072.3809,3.7422,31.5524,1.0107,0.0801,2340.0,2400.0,0.7706,-2.2052,5.1144,-11.9671 2019-06-03 15:41:14.240,141.0491,7072.3535,3.7422,31.5524,1.3624,0.1221,2340.0,2400.0,0.7735,-2.2082,5.1197,-11.9671 2019-06-03 15:41:14.260,141.0576,7072.3535,3.7422,31.5524,1.1006,0.0724,2340.0,2400.0,0.7969,-2.2111,5.1157,-11.9671 2019-06-03 15:41:14.280,140.9982,7072.3809,3.752,31.5568,1.3047,0.1433,2340.0,2400.0,0.7911,-2.2022,5.113,-11.794 2019-06-03 15:41:14.300,140.9982,7072.3262,3.7581,31.5555,1.3106,0.1363,2340.0,2400.0,0.7823,-2.2052,5.1117,-11.6236 2019-06-03 15:41:14.320,140.9813,7072.3262,3.7581,31.5555,1.0296,0.0818,2340.0,2400.0,0.7648,-2.2052,5.117,-11.6236 2019-06-03 15:41:14.340,141.0406,7072.2715,3.7581,31.5555,1.4456,0.0891,2340.0,2400.0,0.7531,-2.2082,5.1236,-11.6236 2019-06-03 15:41:14.360,141.0491,7072.3262,3.7637,31.5535,0.9989,0.1015,2340.0,2400.0,0.7531,-2.2022,5.121,-11.454 2019-06-03 15:41:14.380,140.9982,7072.2715,3.77,31.5515,1.3961,0.0696,2340.0,2400.0,0.7589,-2.2052,5.1236,-11.2826 2019-06-03 15:41:14.400,140.9898,7072.3535,3.7753,31.5522,1.281,0.0547,2400.0,2400.0,0.7648,-2.2022,5.1144,-11.1963 2019-06-03 15:41:14.420,140.9982,7072.3809,3.7809,31.5507,1.1313,0.1153,2400.0,2400.0,0.7911,-2.1993,5.1303,-11.1084 2019-06-03 15:41:14.440,141.0491,7072.4351,3.7809,31.5507,1.4748,0.0466,2400.0,2400.0,0.7823,-2.2378,5.1289,-11.1084 2019-06-03 15:41:14.460,141.0491,7072.3809,3.7809,31.5507,0.9918,0.1244,2400.0,2400.0,0.7794,-2.2289,5.1303,-11.1084 2019-06-03 15:41:14.480,140.9898,7072.4351,3.7894,31.5476,1.3221,0.0347,2400.0,2400.0,0.7648,-2.2289,5.1461,-10.9353 2019-06-03 15:41:14.500,141.0067,7072.4351,3.7954,31.5421,1.2932,0.0106,2400.0,2400.0,0.7384,-2.2319,5.1303,-10.7639 2019-06-03 15:41:14.520,140.9898,7072.4082,3.7954,31.5421,1.0691,0.175,2400.0,2400.0,0.756,-2.226,5.1395,-10.7639 2019-06-03 15:41:14.540,141.0406,7072.5171,3.7954,31.5421,1.3838,0.0062,2400.0,2400.0,0.7618,-2.2289,5.1289,-10.7639 2019-06-03 15:41:14.560,141.0491,7072.5718,3.8018,31.5371,1.1231,0.1534,2400.0,2400.0,0.8027,-2.2289,5.1408,-10.5913 2019-06-03 15:41:14.580,140.9898,7072.5444,3.8018,31.5371,1.3373,0.0347,2400.0,2400.0,0.7881,-2.2289,5.1355,-10.5913 2019-06-03 15:41:14.600,140.9898,7072.5171,3.8149,31.529,1.2004,0.0158,2400.0,2400.0,0.7735,-2.226,5.125,-10.3345 2019-06-03 15:41:14.620,140.9982,7072.4624,3.8212,31.5314,1.1409,0.1696,2400.0,2400.0,0.7589,-2.2319,5.1488,-10.2442 2019-06-03 15:41:14.640,141.0491,7072.4624,3.8212,31.5314,1.1749,0.0201,2400.0,2400.0,0.7384,-2.2408,5.1408,-10.2442 2019-06-03 15:41:14.660,141.0491,7072.3535,3.8212,31.5314,1.25,0.1668,2400.0,2400.0,0.7531,-2.2319,5.1488,-10.2442 2019-06-03 15:41:14.680,140.9898,7072.3809,3.8262,31.5236,1.2263,0.0428,2400.0,2400.0,0.7472,-2.2794,5.1422,-10.0696 2019-06-03 15:41:14.700,140.9982,7072.3262,3.8299,31.5159,1.2137,0.0149,2400.0,2400.0,0.7618,-2.2646,5.1382,-9.8943 2019-06-03 15:41:14.720,140.9898,7072.2988,3.8299,31.5159,1.2178,0.1854,2400.0,2400.0,0.7677,-2.2468,5.1395,-9.8943 2019-06-03 15:41:14.740,141.0491,7072.2988,3.8299,31.5159,1.1294,0.0227,2400.0,2400.0,0.7648,-2.2468,5.1528,-9.8943 2019-06-03 15:41:14.760,141.0406,7072.4082,3.8361,31.5089,1.2459,0.1631,2400.0,2400.0,0.756,-2.2408,5.1408,-9.7166 2019-06-03 15:41:14.780,140.9898,7072.4624,3.8361,31.5089,1.2182,0.0142,2400.0,2400.0,0.7589,-2.2586,5.1435,-9.7166 2019-06-03 15:41:14.800,140.9982,7072.4897,3.8407,31.4956,1.1264,0.0187,2400.0,2400.0,0.7531,-2.2557,5.1382,-9.4501 2019-06-03 15:41:14.820,140.9982,7072.5444,3.8466,31.4973,1.2936,0.1711,2400.0,2400.0,0.7648,-2.2527,5.1554,-9.3581 2019-06-03 15:41:14.840,141.0406,7072.5991,3.8466,31.4973,1.0506,0.0332,2400.0,2400.0,0.7735,-2.2794,5.1567,-9.3581 2019-06-03 15:41:14.860,141.0491,7072.5718,3.8466,31.4973,1.3154,0.1448,2400.0,2400.0,0.7735,-2.2616,5.1408,-9.3581 2019-06-03 15:41:14.880,140.9982,7072.4897,3.8479,31.4816,1.0614,0.0398,2400.0,2400.0,0.7706,-2.2616,5.1435,-9.1811 2019-06-03 15:41:14.900,140.9982,7071.9438,3.8531,31.472,0.9401,0.0617,2400.0,2400.0,0.7414,-2.2616,5.1355,-9.0006 2019-06-03 15:41:14.920,140.9813,7071.0161,3.8531,31.472,1.3916,0.1271,2400.0,2400.0,0.756,-2.2557,5.1528,-9.0006 2019-06-03 15:41:14.940,141.0491,7069.7339,3.8531,31.472,0.956,0.0527,2400.0,2400.0,0.7648,-2.2646,5.1607,-9.0006 2019-06-03 15:41:14.960,141.0491,7068.8604,3.8592,31.4628,1.2773,0.1122,2400.0,2400.0,0.7764,-2.2557,5.1395,-8.8185 2019-06-03 15:41:14.980,140.9898,7067.5503,3.8592,31.4628,0.95,0.0583,2400.0,2400.0,0.7706,-2.2616,5.1395,-8.8185 2019-06-03 15:41:15.000,140.9898,7066.6772,3.8646,31.4412,0.8949,0.1101,2400.0,2400.0,0.7443,-2.2586,5.1342,-8.5501 2019-06-03 15:41:15.020,141.0067,7065.7222,3.8689,31.4385,1.4412,0.0976,2400.0,2400.0,0.7531,-2.2468,5.1634,-8.4579 2019-06-03 15:41:15.040,141.0491,7064.4121,3.8689,31.4385,1.0395,0.1372,2400.0,2400.0,0.7443,-2.2764,5.1554,-8.4579 2019-06-03 15:41:15.060,141.0491,7063.6211,3.8689,31.4385,1.3642,0.0415,2400.0,2400.0,0.756,-2.2557,5.1395,-8.4579 2019-06-03 15:41:15.080,140.9982,7063.6484,3.8709,31.4219,0.9515,0.1001,2400.0,2400.0,0.7472,-2.2586,5.1369,-8.2804 2019-06-03 15:41:15.100,140.9982,7063.5664,3.8793,31.4134,0.953,0.1608,2400.0,2400.0,0.7472,-2.2616,5.1461,-8.0966 2019-06-03 15:41:15.120,140.9813,7063.5938,3.8793,31.4134,1.4907,0.0359,2400.0,2400.0,0.7472,-2.2586,5.1541,-8.0966 2019-06-03 15:41:15.140,141.0406,7063.5938,3.8793,31.4134,0.9474,0.1963,2400.0,2400.0,0.7531,-2.2616,5.1541,-8.0966 2019-06-03 15:41:15.160,141.0406,7063.5938,3.8869,31.4025,1.4782,0.0117,2400.0,2400.0,0.7531,-2.2616,5.1303,-7.9132 2019-06-03 15:41:15.180,140.9898,7063.6484,3.8869,31.4025,0.9367,0.1566,2400.0,2400.0,0.7501,-2.2586,5.1422,-7.9132 2019-06-03 15:41:15.200,140.9898,7063.7026,3.8915,31.3824,1.0606,0.2204,2400.0,2400.0,0.7384,-2.2616,5.1422,-7.645 2019-06-03 15:41:15.220,141.0067,7063.7026,3.891,31.3736,1.3909,-0.0327,2400.0,2400.0,0.756,-2.2616,5.1541,-7.5552 2019-06-03 15:41:15.240,141.0406,7063.7026,3.891,31.3736,1.0414,0.2366,2400.0,2400.0,0.756,-2.2586,5.1514,-7.5552 2019-06-03 15:41:15.260,141.0576,7063.6753,3.891,31.3736,1.3336,-0.0047,2400.0,2400.0,0.7443,-2.2586,5.1329,-7.5552 2019-06-03 15:41:15.280,140.9898,7063.7026,3.8953,31.3561,1.0558,0.1897,2400.0,2400.0,0.7501,-2.2616,5.1528,-7.3733 2019-06-03 15:41:15.300,140.9982,7063.6484,3.9024,31.3463,1.122,0.2199,2400.0,2400.0,0.7238,-2.2586,5.1369,-7.188 2019-06-03 15:41:15.320,140.9898,7063.7026,3.9024,31.3463,1.2958,-0.0209,2400.0,2400.0,0.7501,-2.2586,5.1581,-7.188 2019-06-03 15:41:15.340,141.0491,7063.73,3.9024,31.3463,1.2185,0.2418,2400.0,2400.0,0.7326,-2.2616,5.1488,-7.188 2019-06-03 15:41:15.360,141.0406,7063.7573,3.9061,31.3349,1.2045,-0.0191,2400.0,2400.0,0.7384,-2.2586,5.1342,-7.0036 2019-06-03 15:41:15.380,140.9982,7063.73,3.9061,31.3349,1.314,0.1973,2400.0,2400.0,0.7472,-2.2586,5.1369,-7.0036 2019-06-03 15:41:15.400,140.9898,7063.73,3.9098,31.3161,1.2759,0.1807,2340.0,2400.0,0.7443,-2.2616,5.1422,-6.7319 2019-06-03 15:41:15.420,140.9982,7063.7026,3.9059,31.3072,1.146,-0.0256,2340.0,2400.0,0.7706,-2.2646,5.1594,-6.6422 2019-06-03 15:41:15.440,141.0491,7063.6484,3.9059,31.3072,1.3276,0.2328,2340.0,2400.0,0.7472,-2.2646,5.1541,-6.6422 2019-06-03 15:41:15.460,141.0491,7063.6211,3.9059,31.3072,0.9818,-0.0231,2340.0,2400.0,0.7414,-2.2646,5.1408,-6.6422 2019-06-03 15:41:15.480,140.9982,7063.5938,3.909,31.3,1.4179,0.1997,2340.0,2400.0,0.7268,-2.2646,5.1316,-6.4547 2019-06-03 15:41:15.500,140.9982,7063.5391,3.9103,31.2941,1.4171,0.1791,2340.0,2400.0,0.7384,-2.2646,5.1461,-6.2672 2019-06-03 15:41:15.520,140.9813,7063.5938,3.9103,31.2941,0.9193,-0.0056,2340.0,2400.0,0.756,-2.2646,5.1581,-6.2672 2019-06-03 15:41:15.540,141.0406,7063.7026,3.9103,31.2941,1.5207,0.1707,2340.0,2400.0,0.7414,-2.2616,5.1475,-6.2672 2019-06-03 15:41:15.560,141.0491,7063.7026,3.9067,31.2834,0.9275,0.0644,2340.0,2400.0,0.7384,-2.2646,5.1382,-6.083 2019-06-03 15:41:15.580,140.9982,7063.73,3.9067,31.2834,1.5129,0.1245,2340.0,2400.0,0.7326,-2.2675,5.1475,-6.083 2019-06-03 15:41:15.600,140.9898,7063.7847,3.9074,31.2755,1.4393,0.1226,2340.0,2400.0,0.7355,-2.2646,5.1435,-5.8021 2019-06-03 15:41:15.620,140.9982,7063.8394,3.9039,31.2737,0.9031,0.0564,2340.0,2400.0,0.7618,-2.2616,5.1594,-5.7093 2019-06-03 15:41:15.640,141.0491,7063.7847,3.9039,31.2737,1.571,0.0579,2340.0,2400.0,0.7443,-2.2942,5.1541,-5.7093 2019-06-03 15:41:15.660,141.0491,7063.7573,3.9039,31.2737,0.9641,0.151,2340.0,2400.0,0.7472,-2.2942,5.1382,-5.7093 2019-06-03 15:41:15.680,140.9982,7063.6753,3.9036,31.2737,1.4926,0.0151,2340.0,2400.0,0.7472,-2.2883,5.1528,-5.519 2019-06-03 15:41:15.700,140.9982,7063.5391,3.8981,31.2674,1.4227,0.0016,2340.0,2400.0,0.7268,-2.2942,5.1355,-5.3329 2019-06-03 15:41:15.720,140.9898,7063.5117,3.8981,31.2674,0.9482,0.1543,2340.0,2400.0,0.7648,-2.2913,5.162,-5.3329 2019-06-03 15:41:15.740,141.0406,7063.4844,3.8981,31.2674,1.3716,-0.022,2340.0,2400.0,0.7414,-2.2942,5.1541,-5.3329 2019-06-03 15:41:15.760,141.0406,7063.5117,3.8941,31.2608,1.1068,0.1495,2340.0,2400.0,0.7472,-2.2972,5.1408,-5.1454 2019-06-03 15:41:15.780,140.9982,7063.457,3.892,31.2613,1.4097,0.0181,2340.0,2400.0,0.7268,-2.2942,5.1514,-4.953 2019-06-03 15:41:15.800,140.9898,7063.5117,3.8901,31.2593,1.4097,0.0195,2340.0,2400.0,0.7297,-2.3328,5.1554,-4.8598 2019-06-03 15:41:15.820,140.9982,7063.5117,3.8906,31.2593,1.1091,0.1541,2340.0,2400.0,0.7326,-2.3239,5.1488,-4.7645 2019-06-03 15:41:15.840,141.0491,7063.5117,3.8906,31.2593,1.254,-0.0107,2340.0,2400.0,0.7297,-2.3328,5.1448,-4.7645 2019-06-03 15:41:15.860,141.0491,7063.5664,3.8906,31.2593,1.1124,0.1686,2340.0,2400.0,0.7268,-2.3387,5.1435,-4.7645 2019-06-03 15:41:15.880,140.9982,7063.5938,3.888,31.256,1.233,-0.0252,2340.0,2400.0,0.7238,-2.3387,5.1594,-4.5767 2019-06-03 15:41:15.900,140.9982,7063.5391,3.8818,31.2482,1.2352,-0.0328,2340.0,2400.0,0.7209,-2.3416,5.1607,-4.3918 2019-06-03 15:41:15.920,140.9813,7063.5391,3.8818,31.2482,1.2252,0.2151,2340.0,2400.0,0.6975,-2.3446,5.1408,-4.3918 2019-06-03 15:41:15.940,141.0406,7063.5938,3.8818,31.2482,1.203,-0.0499,2340.0,2400.0,0.6858,-2.3594,5.1395,-4.3918 2019-06-03 15:41:15.960,141.0406,7063.5938,3.8799,31.2458,1.254,0.2139,2340.0,2400.0,0.6829,-2.3594,5.1408,-4.2034 2019-06-03 15:41:15.980,140.9982,7063.6211,3.8799,31.2458,1.2862,-0.028,2340.0,2400.0,0.6917,-2.3446,5.1673,-4.2034 2019-06-03 15:41:16.000,140.9898,7063.6484,3.8746,31.2412,1.1845,-0.0003,2340.0,2400.0,0.6888,-2.3594,5.162,-3.9266 2019-06-03 15:41:16.020,140.9982,7063.6211,3.8787,31.2425,1.2452,0.1956,2340.0,2400.0,0.6771,-2.3654,5.1461,-3.8307 2019-06-03 15:41:16.040,141.0491,7063.5938,3.8787,31.2425,1.1357,-0.033,2340.0,2400.0,0.6537,-2.3742,5.1408,-3.8307 2019-06-03 15:41:16.060,141.0576,7063.5664,3.8787,31.2425,1.2766,0.2072,2340.0,2400.0,0.6391,-2.3713,5.1382,-3.8307 2019-06-03 15:41:16.080,140.9898,7063.6484,3.8748,31.2368,1.1775,-0.0006,2340.0,2400.0,0.6332,-2.3831,5.1634,-3.6476 2019-06-03 15:41:16.100,140.9982,7063.5664,3.8744,31.2322,1.0192,0.0162,2340.0,2400.0,0.6244,-2.392,5.1634,-3.4631 2019-06-03 15:41:16.120,140.9898,7063.5391,3.8744,31.2322,1.3428,0.1451,2340.0,2400.0,0.6069,-2.392,5.1435,-3.4631 2019-06-03 15:41:16.140,140.8963,7063.5664,3.8744,31.2322,1.1083,0.0128,2340.0,2400.0,0.5777,-2.395,5.1528,-3.4631 2019-06-03 15:41:16.160,140.9048,7063.5938,3.8777,31.2287,1.2966,0.1689,2340.0,2400.0,0.5368,-2.3979,5.1435,-3.2773 2019-06-03 15:41:16.180,140.8623,7063.6211,3.8777,31.2287,1.1264,0.0229,2340.0,2400.0,0.5309,-2.3979,5.1634,-3.2773 2019-06-03 15:41:16.200,140.8538,7063.6753,3.8784,31.2134,1.0247,0.069,2340.0,2400.0,0.5163,-2.3979,5.1607,-3.0041 2019-06-03 15:41:16.220,140.8623,7063.73,3.8805,31.2139,1.2078,0.1186,2340.0,2400.0,0.5134,-2.3979,5.1488,-2.9133 2019-06-03 15:41:16.240,140.9133,7063.6753,3.8805,31.2139,1.0418,0.0661,2340.0,2400.0,0.4988,-2.4009,5.1514,-2.9133 2019-06-03 15:41:16.260,140.9218,7063.6211,3.8805,31.2139,1.3594,0.1372,2340.0,2400.0,0.4812,-2.4127,5.1355,-2.9133 2019-06-03 15:41:16.280,140.8623,7063.6211,3.8828,31.201,1.0347,0.0692,2340.0,2400.0,0.49,-2.4039,5.1607,-2.7376 2019-06-03 15:41:16.300,140.8623,7063.5938,3.8883,31.1909,1.0872,0.0918,2340.0,2400.0,0.4812,-2.4098,5.162,-2.5614 2019-06-03 15:41:16.320,140.8453,7063.6211,3.8883,31.1909,1.3469,0.0537,2340.0,2400.0,0.4812,-2.4068,5.1528,-2.5614 2019-06-03 15:41:16.340,140.9133,7063.6211,3.8883,31.1909,1.0747,0.1214,2340.0,2400.0,0.4725,-2.4068,5.1501,-2.5614 2019-06-03 15:41:16.360,140.9133,7063.6484,3.8965,31.1811,1.3909,0.0715,2340.0,2400.0,0.4461,-2.4098,5.1435,-2.3853 2019-06-03 15:41:16.380,140.8623,7063.5664,3.9027,31.1682,1.0299,0.1313,2340.0,2400.0,0.4491,-2.4098,5.1594,-2.2161 2019-06-03 15:41:16.400,140.8623,7063.5664,3.9059,31.1551,1.1046,0.1514,2400.0,2340.0,0.4491,-2.4098,5.1607,-2.1325 2019-06-03 15:41:16.420,140.8623,7063.5664,3.9079,31.1457,1.311,0.0157,2400.0,2340.0,0.4549,-2.4098,5.1541,-2.0492 2019-06-03 15:41:16.440,140.8963,7063.6753,3.9079,31.1457,1.068,0.1638,2400.0,2340.0,0.4637,-2.4068,5.1541,-2.0492 2019-06-03 15:41:16.460,140.9218,7063.6484,3.9079,31.1457,1.3805,0.0202,2400.0,2340.0,0.4491,-2.4068,5.1316,-2.0492 2019-06-03 15:41:16.480,140.8538,7063.6484,3.9163,31.1308,1.041,0.1641,2400.0,2340.0,0.4578,-2.4127,5.1594,-1.883 2019-06-03 15:41:16.500,140.8623,7063.5664,3.9269,31.1159,1.0961,0.1857,2400.0,2340.0,0.4491,-2.4068,5.1581,-1.7156 2019-06-03 15:41:16.520,140.8538,7063.5664,3.9269,31.1159,1.3369,-0.0164,2400.0,2340.0,0.4345,-2.4098,5.1514,-1.7156 2019-06-03 15:41:16.540,140.9133,7063.6484,3.9269,31.1159,1.1346,0.1939,2400.0,2340.0,0.4374,-2.4127,5.1541,-1.7156 2019-06-03 15:41:16.560,140.9048,7063.73,3.9403,31.0991,1.2337,0.0076,2400.0,2340.0,0.4315,-2.4098,5.1422,-1.551 2019-06-03 15:41:16.580,140.8538,7063.7847,3.9403,31.0991,1.1834,0.1667,2400.0,2340.0,0.4345,-2.4127,5.1607,-1.551 2019-06-03 15:41:16.600,140.8538,7063.7847,3.9555,31.0683,1.2511,0.1961,2400.0,2340.0,0.4315,-2.4127,5.1581,-1.3105 2019-06-03 15:41:16.620,140.8623,7063.7573,3.9575,31.0523,1.2799,-0.0146,2400.0,2340.0,0.4228,-2.4127,5.1475,-1.2348 2019-06-03 15:41:16.640,140.9133,7063.812,3.9575,31.0523,1.213,0.2053,2400.0,2340.0,0.4228,-2.4127,5.1475,-1.2348 2019-06-03 15:41:16.660,140.9133,7063.7573,3.9575,31.0523,1.0865,0.0131,2400.0,2340.0,0.4169,-2.4127,5.1475,-1.2348 2019-06-03 15:41:16.680,140.8538,7063.812,3.9728,31.0355,1.1571,0.1692,2400.0,2340.0,0.4198,-2.4098,5.1501,-1.0757 2019-06-03 15:41:16.700,140.8708,7063.7026,3.9905,31.0119,1.2921,0.1772,2400.0,2340.0,0.4169,-2.4246,5.1528,-0.9161 2019-06-03 15:41:16.720,140.8453,7063.7026,3.9905,31.0119,1.1135,0.0182,2400.0,2340.0,0.4111,-2.4246,5.1501,-0.9161 2019-06-03 15:41:16.740,141.0746,7063.73,3.9905,31.0119,1.267,0.1832,2400.0,2340.0,0.414,-2.4305,5.1567,-0.9161 2019-06-03 15:41:16.760,141.0406,7063.6753,4.0053,30.989,0.9519,0.0711,2400.0,2340.0,0.4198,-2.4275,5.1501,-0.7609 2019-06-03 15:41:16.780,140.9982,7063.6484,4.0166,30.9594,1.3598,0.1283,2400.0,2340.0,0.414,-2.4275,5.1528,-0.6076 2019-06-03 15:41:16.800,140.9898,7063.6211,4.0311,30.9524,1.3842,0.1336,2400.0,2340.0,0.414,-2.4305,5.1581,-0.5275 2019-06-03 15:41:16.820,140.9982,7063.6211,4.0367,30.9356,0.9774,0.0708,2400.0,2340.0,0.4023,-2.4305,5.1382,-0.4527 2019-06-03 15:41:16.840,141.0406,7063.6484,4.0367,30.9356,1.3957,0.1135,2400.0,2340.0,0.3906,-2.4335,5.1554,-0.4527 2019-06-03 15:41:16.860,141.0576,7063.5938,4.0367,30.9356,1.0196,0.1009,2400.0,2340.0,0.3877,-2.4453,5.1488,-0.4527 2019-06-03 15:41:16.880,140.9982,7063.5938,4.0588,30.9151,1.3998,0.0767,2400.0,2340.0,0.3877,-2.4423,5.1501,-0.2957 2019-06-03 15:41:16.900,140.9898,7063.5391,4.0774,30.8873,1.3735,0.106,2400.0,2340.0,0.3877,-2.4423,5.1581,-0.1433 2019-06-03 15:41:16.920,140.9982,7063.5664,4.0774,30.8873,0.9848,0.111,2400.0,2340.0,0.3818,-2.4394,5.1355,-0.1433 2019-06-03 15:41:16.940,141.0491,7063.5938,4.0774,30.8873,1.5044,0.0388,2400.0,2340.0,0.3965,-2.4423,5.1594,-0.1433 2019-06-03 15:41:16.960,141.0406,7063.7026,4.0928,30.8611,1.0181,0.1637,2400.0,2340.0,0.3789,-2.4394,5.1408,0.0084 2019-06-03 15:41:16.980,140.9898,7063.7026,4.1102,30.8283,1.4489,0.0179,2400.0,2340.0,0.376,-2.4364,5.1541,0.1639 2019-06-03 15:41:17.000,140.9898,7063.7026,4.1219,30.82,1.3387,0.0297,2400.0,2340.0,0.3643,-2.4483,5.1567,0.2428 2019-06-03 15:41:17.020,140.9982,7063.6484,4.1334,30.8073,0.9844,0.1785,2400.0,2340.0,0.3643,-2.4601,5.1408,0.3196 2019-06-03 15:41:17.040,141.0491,7063.6753,4.1334,30.8073,1.4526,-0.0286,2400.0,2340.0,0.3701,-2.4335,5.1528,0.3196 2019-06-03 15:41:17.060,141.0576,7063.5391,4.1334,30.8073,1.0525,0.221,2400.0,2340.0,0.3701,-2.4512,5.1488,0.3196 2019-06-03 15:41:17.080,140.9982,7063.457,4.1514,30.7791,1.3909,-0.06,2400.0,2340.0,0.3906,-2.4453,5.1567,0.4746 2019-06-03 15:41:17.100,141.0067,7063.3755,4.1675,30.7474,1.3646,-0.0177,2400.0,2340.0,0.3731,-2.4453,5.1488,0.6266 2019-06-03 15:41:17.120,140.9813,7063.3755,4.1675,30.7474,1.0713,0.2246,2400.0,2340.0,0.376,-2.4512,5.1448,0.6266 2019-06-03 15:41:17.140,140.8878,7063.4028,4.1675,30.7474,1.2899,-0.0442,2400.0,2340.0,0.3818,-2.4512,5.1567,0.6266 2019-06-03 15:41:17.160,140.9218,7063.4028,4.1855,30.7181,1.044,0.2226,2400.0,2340.0,0.3818,-2.4483,5.1435,0.7795 2019-06-03 15:41:17.180,140.8708,7063.4302,4.2075,30.6871,1.4049,-0.0259,2400.0,2340.0,0.3935,-2.4483,5.1461,0.9312 2019-06-03 15:41:17.200,140.8538,7063.4028,4.2171,30.6729,1.2662,-0.0011,2400.0,2340.0,0.3643,-2.4453,5.1435,1.0097 2019-06-03 15:41:17.220,140.8793,7063.3481,4.2309,30.6583,1.1594,0.1845,2400.0,2340.0,0.3468,-2.4542,5.1408,1.0909 2019-06-03 15:41:17.240,140.9133,7063.4028,4.2309,30.6583,1.1767,-0.0147,2400.0,2340.0,0.3409,-2.4453,5.1607,1.0909 2019-06-03 15:41:17.260,140.9133,7063.4302,4.2309,30.6583,1.1246,0.2001,2400.0,2340.0,0.3292,-2.4483,5.1501,1.0909 2019-06-03 15:41:17.280,140.8538,7063.4302,4.2475,30.6207,1.2437,0.0093,2400.0,2340.0,0.3555,-2.4453,5.1514,1.2471 2019-06-03 15:41:17.300,140.8623,7063.3755,4.263,30.5818,1.1368,0.0335,2400.0,2340.0,0.3351,-2.4453,5.1475,1.4055 2019-06-03 15:41:17.320,140.8538,7063.3755,4.263,30.5818,1.3358,0.1829,2400.0,2340.0,0.3497,-2.4483,5.1422,1.4055 2019-06-03 15:41:17.340,140.9218,7063.3208,4.263,30.5818,1.098,-0.0029,2400.0,2340.0,0.3614,-2.4512,5.1501,1.4055 2019-06-03 15:41:17.360,140.9133,7063.4302,4.2808,30.5402,1.3916,0.1774,2400.0,2340.0,0.3526,-2.4483,5.1528,1.5635 2019-06-03 15:41:17.380,140.8623,7063.457,4.2995,30.5,0.96,0.0418,2400.0,2340.0,0.3438,-2.4423,5.1435,1.7236 2019-06-03 15:41:17.400,140.8623,7063.4844,4.3042,30.4751,1.0654,0.0436,2400.0,2400.0,0.3263,-2.4512,5.1528,1.801 2019-06-03 15:41:17.420,140.8623,7063.4844,4.3149,30.4557,1.4275,0.164,2400.0,2400.0,0.3117,-2.4483,5.1369,1.8821 2019-06-03 15:41:17.440,140.9133,7063.4844,4.3149,30.4557,1.0247,0.0314,2400.0,2400.0,0.3263,-2.4453,5.1528,1.8821 2019-06-03 15:41:17.460,140.9133,7063.457,4.3149,30.4557,1.5347,0.1254,2400.0,2400.0,0.3263,-2.4483,5.1541,1.8821 2019-06-03 15:41:17.480,140.8623,7063.3755,4.3253,30.4054,0.8694,0.0613,2400.0,2400.0,0.3351,-2.4453,5.1448,2.04 2019-06-03 15:41:17.500,140.8623,7063.2661,4.341,30.3584,0.9903,0.1074,2400.0,2400.0,0.3321,-2.4512,5.1408,2.2023 2019-06-03 15:41:17.520,140.8538,7063.2935,4.341,30.3584,1.419,0.0839,2400.0,2400.0,0.3321,-2.4512,5.1448,2.2023 2019-06-03 15:41:17.540,140.9133,7063.3481,4.341,30.3584,0.9593,0.1355,2400.0,2400.0,0.3321,-2.4483,5.1514,2.2023 2019-06-03 15:41:17.560,140.9048,7063.3755,4.3562,30.3158,1.4552,0.0046,2400.0,2400.0,0.3292,-2.4453,5.1475,2.3656 2019-06-03 15:41:17.580,140.8708,7063.3755,4.368,30.2629,0.9748,0.1309,2400.0,2400.0,0.3263,-2.4512,5.1342,2.5277 2019-06-03 15:41:17.600,140.8623,7063.3481,4.3745,30.2393,1.0318,0.1728,2400.0,2400.0,0.3292,-2.4483,5.1461,2.6101 2019-06-03 15:41:17.620,140.8708,7063.2661,4.3764,30.2124,1.3776,0.0454,2400.0,2400.0,0.3321,-2.4483,5.1355,2.6901 2019-06-03 15:41:17.640,140.9048,7063.2935,4.3764,30.2124,0.9474,0.1619,2400.0,2400.0,0.3468,-2.4453,5.1594,2.6901 2019-06-03 15:41:17.660,140.9218,7063.2661,4.3764,30.2124,1.4586,-0.0098,2400.0,2400.0,0.3351,-2.4453,5.1408,2.6901 2019-06-03 15:41:17.680,140.8623,7063.2935,4.3876,30.1628,1.1264,0.1843,2400.0,2400.0,0.3292,-2.4423,5.1329,2.854 2019-06-03 15:41:17.700,140.8623,7063.2661,4.401,30.1208,1.0758,0.2085,2400.0,2400.0,0.3234,-2.4483,5.1448,3.0225 2019-06-03 15:41:17.720,140.8538,7063.2935,4.401,30.1208,1.1742,-0.0263,2400.0,2400.0,0.3205,-2.4453,5.1355,3.0225 2019-06-03 15:41:17.740,140.7687,7063.2935,4.401,30.1208,1.0114,0.2317,2400.0,2400.0,0.338,-2.4453,5.1528,3.0225 2019-06-03 15:41:17.760,140.7772,7063.3481,4.4122,30.0692,1.1686,-0.096,2400.0,2400.0,0.3263,-2.4483,5.1408,3.19 2019-06-03 15:41:17.780,140.7346,7063.3755,4.4122,30.0692,1.1782,0.2415,2400.0,2400.0,0.3263,-2.4483,5.1355,3.19 2019-06-03 15:41:17.800,140.7261,7063.4028,4.4272,29.9953,1.2337,0.2517,2400.0,2400.0,0.3438,-2.4483,5.1514,3.4461 2019-06-03 15:41:17.820,140.7346,7063.4028,4.425,29.9632,1.088,-0.0338,2400.0,2400.0,0.3321,-2.4483,5.1342,3.5247 2019-06-03 15:41:17.840,140.7772,7063.457,4.425,29.9632,1.2596,0.2329,2400.0,2400.0,0.3351,-2.4453,5.1355,3.5247 2019-06-03 15:41:17.860,140.7943,7063.4297,4.425,29.9632,1.0517,-0.0648,2400.0,2400.0,0.3263,-2.4453,5.1488,3.5247 2019-06-03 15:41:17.880,140.7261,7063.3755,4.438,29.9189,1.409,0.2181,2400.0,2400.0,0.3263,-2.4453,5.1369,3.6979 2019-06-03 15:41:17.900,140.7346,7063.3481,4.4493,29.8695,1.4445,0.1954,2400.0,2400.0,0.3409,-2.4453,5.1528,3.8704 2019-06-03 15:41:17.920,140.7261,7063.3208,4.4493,29.8695,0.8694,0.0296,2400.0,2400.0,0.3321,-2.4512,5.1303,3.8704 2019-06-03 15:41:17.940,140.6237,7063.457,4.4493,29.8695,1.4571,0.1535,2400.0,2400.0,0.3321,-2.4453,5.1342,3.8704 2019-06-03 15:41:17.960,140.6323,7063.5391,4.4547,29.8179,0.9345,0.0102,2400.0,2400.0,0.3205,-2.4453,5.1448,4.039 2019-06-03 15:41:17.980,140.5896,7063.6484,4.4593,29.7637,1.4623,0.16,2400.0,2400.0,0.3205,-2.4423,5.1422,4.212 2019-06-03 15:41:18.000,140.5896,7063.7026,4.4675,29.7438,1.4149,0.125,2400.0,2400.0,0.3234,-2.4394,5.1501,4.3025 2019-06-03 15:41:18.020,140.6067,7063.6484,4.4684,29.716,0.7984,0.0961,2400.0,2400.0,0.3263,-2.4394,5.1289,4.3871 2019-06-03 15:41:18.040,140.6408,7063.7026,4.4684,29.716,1.5488,0.0995,2400.0,2400.0,0.3321,-2.4423,5.1369,4.3871 2019-06-03 15:41:18.060,140.6408,7063.6484,4.4684,29.716,0.9012,0.1172,2400.0,2400.0,0.3321,-2.4423,5.1488,4.3871 2019-06-03 15:41:18.080,140.5896,7063.6753,4.4789,29.6688,1.4915,0.0678,2400.0,2400.0,0.3263,-2.4394,5.1329,4.5635 2019-06-03 15:41:18.100,140.5981,7063.6211,4.4816,29.6192,1.514,0.0313,2400.0,2400.0,0.3292,-2.4423,5.1488,4.7353 2019-06-03 15:41:18.120,140.5811,7063.5938,4.4816,29.6192,0.9837,0.1899,2400.0,2400.0,0.3146,-2.4394,5.1369,4.7353 2019-06-03 15:41:18.140,140.6494,7063.5938,4.4816,29.6192,1.4623,0.0,2400.0,2400.0,0.3205,-2.4394,5.1342,4.7353 2019-06-03 15:41:18.160,140.6494,7063.5664,4.4856,29.5641,1.0003,0.2077,2400.0,2400.0,0.3205,-2.4483,5.1382,4.9067 2019-06-03 15:41:18.180,140.5896,7063.5664,4.4925,29.5165,1.4057,-0.0262,2400.0,2400.0,0.3234,-2.4423,5.1382,5.0828 2019-06-03 15:41:18.200,140.5981,7063.5664,4.4945,29.4931,1.3783,-0.0473,2400.0,2400.0,0.3321,-2.4423,5.1554,5.17 2019-06-03 15:41:18.220,140.5981,7063.5664,4.5015,29.4701,1.1509,0.2265,2400.0,2400.0,0.3146,-2.4453,5.1408,5.2612 2019-06-03 15:41:18.240,140.6408,7063.5391,4.5015,29.4701,1.3594,-0.042,2400.0,2400.0,0.3146,-2.4423,5.1316,5.2612 2019-06-03 15:41:18.260,140.6579,7063.5117,4.5015,29.4701,1.1575,0.2464,2400.0,2400.0,0.3234,-2.4423,5.1329,5.2612 2019-06-03 15:41:18.280,140.6067,7063.4844,4.5057,29.424,1.2692,-0.0102,2400.0,2400.0,0.3292,-2.4453,5.1329,5.4366 2019-06-03 15:41:18.300,140.5981,7063.3208,4.5036,29.372,1.2659,-0.0685,2400.0,2400.0,0.3614,-2.4423,5.162,5.6076 2019-06-03 15:41:18.320,140.5896,7063.2935,4.5036,29.372,1.1808,0.2383,2400.0,2400.0,0.3321,-2.4423,5.1329,5.6076 2019-06-03 15:41:18.340,140.6494,7063.2935,4.5036,29.372,1.2404,-0.0882,2400.0,2400.0,0.3175,-2.4453,5.1236,5.6076 2019-06-03 15:41:18.360,140.6408,7063.3208,4.5105,29.3268,1.3728,0.2509,2400.0,2400.0,0.3146,-2.4453,5.1382,5.7848 2019-06-03 15:41:18.380,140.5896,7063.2935,4.5175,29.2811,1.1424,-0.0066,2400.0,2400.0,0.3117,-2.4394,5.1382,5.9645 2019-06-03 15:41:18.400,140.5811,7063.3481,4.5156,29.2551,1.0684,-0.0415,2340.0,2400.0,0.3321,-2.4483,5.1607,6.0489 2019-06-03 15:41:18.420,140.5981,7063.2935,4.524,29.2334,1.4131,0.1794,2340.0,2400.0,0.3263,-2.4483,5.125,6.1401 2019-06-03 15:41:18.440,140.6579,7063.2114,4.524,29.2334,0.9859,0.0003,2340.0,2400.0,0.3263,-2.4364,5.1276,6.1401 2019-06-03 15:41:18.460,140.6579,7063.2114,4.524,29.2334,1.372,0.2048,2340.0,2400.0,0.3088,-2.4423,5.1408,6.1401 2019-06-03 15:41:18.480,140.5896,7063.2388,4.5244,29.1867,0.9693,0.0139,2340.0,2400.0,0.3205,-2.4364,5.1382,6.315 2019-06-03 15:41:18.500,140.6067,7063.1572,4.5267,29.1379,0.9545,-0.0213,2340.0,2400.0,0.3263,-2.4335,5.1448,6.4889 2019-06-03 15:41:18.520,140.5811,7063.1572,4.5267,29.1379,1.3957,0.1494,2340.0,2400.0,0.3292,-2.4335,5.1369,6.4889 2019-06-03 15:41:18.540,140.6408,7063.2114,4.5267,29.1379,1.0133,0.0281,2340.0,2400.0,0.3234,-2.4305,5.1276,6.4889 2019-06-03 15:41:18.560,140.6494,7063.2935,4.5366,29.1008,1.4449,0.1678,2340.0,2400.0,0.3321,-2.4335,5.1422,6.667 2019-06-03 15:41:18.580,140.5896,7063.3481,4.5366,29.1008,0.9981,0.0939,2340.0,2400.0,0.3234,-2.4335,5.1289,6.667 2019-06-03 15:41:18.600,140.5896,7063.4297,4.543,29.0299,0.9966,0.075,2340.0,2400.0,0.3205,-2.4335,5.1488,6.9302 2019-06-03 15:41:18.620,140.6067,7063.457,4.5472,29.0098,1.3587,0.057,2340.0,2400.0,0.3175,-2.4364,5.1342,7.0186 2019-06-03 15:41:18.640,140.6408,7063.4297,4.5472,29.0098,0.9781,0.1055,2340.0,2400.0,0.3234,-2.4305,5.1408,7.0186 2019-06-03 15:41:18.660,140.6494,7063.4028,4.5472,29.0098,1.4308,0.0856,2340.0,2400.0,0.3234,-2.4364,5.1355,7.0186 2019-06-03 15:41:18.680,140.5896,7063.457,4.5496,28.9694,1.0384,0.1354,2340.0,2400.0,0.338,-2.4335,5.1355,7.1902 2019-06-03 15:41:18.700,140.5981,7063.3755,4.5552,28.932,0.9349,0.1075,2340.0,2400.0,0.3351,-2.4335,5.1435,7.3631 2019-06-03 15:41:18.720,140.5896,7063.3755,4.5552,28.932,1.3373,0.0339,2340.0,2400.0,0.3321,-2.4335,5.1435,7.3631 2019-06-03 15:41:18.740,140.6494,7063.457,4.5552,28.932,1.0162,0.1378,2340.0,2400.0,0.3175,-2.4335,5.1289,7.3631 2019-06-03 15:41:18.760,140.6408,7063.457,4.5642,28.8966,1.3546,0.0457,2340.0,2400.0,0.3175,-2.4364,5.1435,7.5362 2019-06-03 15:41:18.780,140.5981,7063.4844,4.5687,28.8582,0.9963,0.1957,2340.0,2400.0,0.3205,-2.4305,5.1276,7.706 2019-06-03 15:41:18.800,140.5896,7063.5391,4.5714,28.8413,1.1705,0.2016,2340.0,2400.0,0.3292,-2.4335,5.1514,7.7913 2019-06-03 15:41:18.820,140.5981,7063.5664,4.5728,28.821,1.2744,-0.0745,2340.0,2400.0,0.3234,-2.4394,5.1448,7.8735 2019-06-03 15:41:18.840,140.6494,7063.5117,4.5728,28.821,1.1804,0.2448,2340.0,2400.0,0.3351,-2.4305,5.125,7.8735 2019-06-03 15:41:18.860,140.6494,7063.5117,4.5728,28.821,1.335,-0.0082,2340.0,2400.0,0.3292,-2.4364,5.1316,7.8735 2019-06-03 15:41:18.880,140.5896,7063.4844,4.5812,28.7878,1.1597,0.2206,2340.0,2400.0,0.3117,-2.4364,5.1223,8.0424 2019-06-03 15:41:18.900,140.5981,7063.3755,4.593,28.757,1.1653,0.2002,2340.0,2400.0,0.3321,-2.4335,5.1554,8.2116 2019-06-03 15:41:18.920,140.5811,7063.4297,4.593,28.757,1.1823,-0.048,2340.0,2400.0,0.3175,-2.4364,5.1329,8.2116 2019-06-03 15:41:18.940,140.6408,7063.457,4.593,28.757,1.2352,0.1904,2340.0,2400.0,0.3234,-2.4335,5.125,8.2116 2019-06-03 15:41:18.960,140.6408,7063.5117,4.6033,28.7253,1.1272,-0.0195,2340.0,2400.0,0.3205,-2.4364,5.121,8.3785 2019-06-03 15:41:18.980,140.5981,7063.5391,4.6108,28.6899,1.183,0.2107,2340.0,2400.0,0.3321,-2.4364,5.1342,8.5413 2019-06-03 15:41:19.000,140.5896,7063.5664,4.6202,28.6761,1.3099,0.1855,2340.0,2400.0,0.3088,-2.4335,5.125,8.6266 2019-06-03 15:41:19.020,140.5981,7063.6484,4.6237,28.6577,0.997,-0.0334,2340.0,2400.0,0.3205,-2.4335,5.1342,8.7064 2019-06-03 15:41:19.040,140.6408,7063.6753,4.6237,28.6577,1.3598,0.1875,2340.0,2400.0,0.3263,-2.4335,5.1183,8.7064 2019-06-03 15:41:19.060,140.6579,7063.6753,4.6237,28.6577,1.0136,-0.0025,2340.0,2400.0,0.3497,-2.4305,5.1183,8.7064 2019-06-03 15:41:19.080,140.5896,7063.6753,4.6392,28.6284,1.3365,0.1901,2340.0,2400.0,0.3438,-2.4364,5.1157,8.873 2019-06-03 15:41:19.100,140.5981,7063.6211,4.654,28.5971,1.3236,0.1546,2340.0,2400.0,0.3263,-2.4335,5.1157,9.0365 2019-06-03 15:41:19.120,140.5981,7063.5938,4.654,28.5971,1.0665,0.0421,2340.0,2400.0,0.3058,-2.4335,5.1263,9.0365 2019-06-03 15:41:19.140,140.6494,7063.5938,4.654,28.5971,1.3639,0.1308,2340.0,2400.0,0.2941,-2.4364,5.113,9.0365 2019-06-03 15:41:19.160,140.6408,7063.6211,4.6622,28.5625,0.9463,0.0733,2340.0,2400.0,0.3058,-2.4453,5.1117,9.1955 2019-06-03 15:41:19.180,140.5981,7063.5938,4.6764,28.5268,1.3391,0.0976,2340.0,2400.0,0.3175,-2.4364,5.1038,9.3505 2019-06-03 15:41:19.200,140.5811,7063.6211,4.6865,28.5151,1.3835,0.0748,2340.0,2400.0,0.3205,-2.4275,5.1024,9.433 2019-06-03 15:41:19.220,140.5896,7063.6484,4.6946,28.4975,1.0614,0.1374,2340.0,2400.0,0.3205,-2.4335,5.113,9.5122 2019-06-03 15:41:19.240,140.6408,7063.7026,4.6946,28.4975,1.4134,0.1044,2340.0,2400.0,0.3146,-2.4335,5.0945,9.5122 2019-06-03 15:41:19.260,140.6494,7063.6484,4.6946,28.4975,0.9156,0.1,2340.0,2400.0,0.3088,-2.4275,5.1051,9.5122 2019-06-03 15:41:19.280,140.5981,7063.6753,4.7094,28.4605,1.3358,0.0899,2340.0,2400.0,0.2941,-2.4157,5.0932,9.6719 2019-06-03 15:41:19.300,140.5981,7063.6211,4.7226,28.4236,1.3446,0.0542,2340.0,2400.0,0.3,-2.4187,5.1051,9.8276 2019-06-03 15:41:19.320,140.5811,7063.6484,4.7226,28.4236,1.0514,0.1583,2340.0,2400.0,0.3088,-2.4157,5.1091,9.8276 2019-06-03 15:41:19.340,140.7943,7063.73,4.7226,28.4236,1.3546,0.0283,2340.0,2400.0,0.3117,-2.389,5.0945,9.8276 2019-06-03 15:41:19.360,140.7687,7063.7847,4.7347,28.3824,1.0466,0.1726,2340.0,2400.0,0.3205,-2.4098,5.1064,9.9801 2019-06-03 15:41:19.380,140.7176,7063.7847,4.7521,28.3447,1.3443,0.0343,2340.0,2400.0,0.3088,-2.395,5.0919,10.1379 2019-06-03 15:41:19.400,140.7261,7063.73,4.759,28.3293,1.2777,-0.0303,2400.0,2340.0,0.3029,-2.3624,5.0932,10.2132 2019-06-03 15:41:19.420,140.7261,7063.6753,4.7726,28.3153,1.1128,0.1961,2400.0,2340.0,0.3029,-2.3772,5.1038,10.2935 2019-06-03 15:41:19.440,140.7772,7063.73,4.7726,28.3153,1.2544,0.0088,2400.0,2340.0,0.3029,-2.3772,5.0905,10.2935 2019-06-03 15:41:19.460,140.7857,7063.73,4.7726,28.3153,1.1686,0.1688,2400.0,2340.0,0.3205,-2.3742,5.1091,10.2935 2019-06-03 15:41:19.480,140.7261,7063.73,4.7879,28.2808,1.1764,0.0143,2400.0,2340.0,0.3146,-2.3742,5.0879,10.4459 2019-06-03 15:41:19.500,140.7261,7063.1572,4.8017,28.2464,1.2607,-0.0574,2400.0,2340.0,0.3146,-2.3713,5.0852,10.5961 2019-06-03 15:41:19.520,140.7176,7062.3384,4.8017,28.2464,1.2204,0.2305,2400.0,2340.0,0.3175,-2.3742,5.0958,10.5961 2019-06-03 15:41:19.540,140.6323,7061.1108,4.8017,28.2464,1.2496,-0.0079,2400.0,2340.0,0.3088,-2.3742,5.0733,10.5961 2019-06-03 15:41:19.560,140.6494,7060.3472,4.8216,28.2111,1.2544,0.209,2400.0,2340.0,0.3117,-2.3713,5.0866,10.7488 2019-06-03 15:41:19.580,140.5981,7059.1465,4.8416,28.1835,1.1257,-0.0117,2400.0,2340.0,0.3058,-2.3713,5.0733,10.9016 2019-06-03 15:41:19.600,140.5811,7058.3281,4.846,28.1623,1.193,-0.0369,2400.0,2340.0,0.3146,-2.3713,5.076,10.9726 2019-06-03 15:41:19.620,140.5981,7057.5098,4.8608,28.1472,1.1472,0.2398,2400.0,2340.0,0.3146,-2.3654,5.0746,11.0515 2019-06-03 15:41:19.640,140.6408,7056.2817,4.8608,28.1472,1.0895,-0.0296,2400.0,2340.0,0.3175,-2.3624,5.068,11.0515 2019-06-03 15:41:19.660,140.6494,7055.5181,4.8608,28.1472,1.2814,0.1841,2400.0,2340.0,0.3029,-2.3594,5.0614,11.0515 2019-06-03 15:41:19.680,140.5981,7055.436,4.8713,28.1124,1.0706,0.0168,2400.0,2340.0,0.2941,-2.3594,5.0535,11.1988 2019-06-03 15:41:19.700,140.5981,7055.7905,4.8866,28.0701,0.9907,0.0064,2400.0,2340.0,0.2912,-2.3624,5.0455,11.3483 2019-06-03 15:41:19.720,140.5811,7056.6367,4.8866,28.0701,1.3184,0.1742,2400.0,2340.0,0.3146,-2.3594,5.0641,11.3483 2019-06-03 15:41:19.740,140.6408,7057.9189,4.8866,28.0701,0.9678,0.0348,2400.0,2340.0,0.3175,-2.3594,5.0442,11.3483 2019-06-03 15:41:19.760,140.6408,7058.7373,4.9065,28.0403,1.3066,0.1232,2400.0,2340.0,0.3321,-2.3624,5.0588,11.5005 2019-06-03 15:41:19.780,140.5811,7059.9648,4.9231,28.0045,1.048,0.0494,2400.0,2340.0,0.3088,-2.3535,5.0495,11.6496 2019-06-03 15:41:19.800,140.5981,7060.7563,4.9261,27.9847,0.9552,0.077,2400.0,2340.0,0.2941,-2.3535,5.0376,11.721 2019-06-03 15:41:19.820,140.5981,7061.5474,4.9357,27.9691,1.4308,0.1062,2400.0,2340.0,0.2912,-2.3565,5.0415,11.7983 2019-06-03 15:41:19.840,140.6408,7062.8022,4.9357,27.9691,0.9245,0.1187,2400.0,2340.0,0.3058,-2.3416,5.031,11.7983 2019-06-03 15:41:19.860,140.6579,7063.5117,4.9357,27.9691,1.2895,0.052,2400.0,2340.0,0.3117,-2.3328,5.0349,11.7983 2019-06-03 15:41:19.880,140.5896,7063.5117,4.9469,27.9344,0.8905,0.1244,2400.0,2340.0,0.3088,-2.3535,5.031,11.9452 2019-06-03 15:41:19.900,140.5896,7063.457,4.9593,27.9007,1.0018,0.1529,2400.0,2340.0,0.3058,-2.3387,5.0336,12.0935 2019-06-03 15:41:19.920,140.5811,7063.457,4.9593,27.9007,1.3679,0.0199,2400.0,2340.0,0.3117,-2.3446,5.0468,12.0935 2019-06-03 15:41:19.940,140.6408,7063.4844,4.9593,27.9007,1.0092,0.1899,2400.0,2340.0,0.3175,-2.3416,5.0243,12.0935 2019-06-03 15:41:19.960,140.6494,7063.5117,4.9748,27.8707,1.4094,-0.0206,2400.0,2340.0,0.3175,-2.3387,5.0164,12.2459 2019-06-03 15:41:19.980,140.5896,7063.5391,4.9748,27.8707,1.0247,0.1915,2400.0,2340.0,0.3205,-2.3387,5.023,12.2459 2019-06-03 15:41:20.000,140.5896,7063.5664,4.9895,27.8224,1.2182,0.1757,2400.0,2340.0,0.3088,-2.3387,5.0257,12.4655 2019-06-03 15:41:20.020,140.5896,7063.5391,4.9918,27.8025,1.3151,-0.0154,2400.0,2340.0,0.3088,-2.3387,5.0415,12.538 2019-06-03 15:41:20.040,140.6408,7063.6211,4.9918,27.8025,1.1202,0.2384,2400.0,2340.0,0.3146,-2.3328,5.027,12.538 2019-06-03 15:41:20.060,140.6494,7063.6484,4.9918,27.8025,1.2655,-0.0594,2400.0,2340.0,0.3058,-2.3387,5.0164,12.538 2019-06-03 15:41:20.080,140.5896,7063.6211,5.0023,27.7729,1.1316,0.206,2400.0,2340.0,0.3029,-2.3357,5.0243,12.6881 2019-06-03 15:41:20.100,140.6067,7063.5664,5.0148,27.7441,1.2211,0.2022,2400.0,2340.0,0.3,-2.3328,5.0084,12.8407 2019-06-03 15:41:20.120,140.5811,7063.5938,5.0148,27.7441,1.0884,-0.0448,2400.0,2340.0,0.3029,-2.3387,5.0283,12.8407 2019-06-03 15:41:20.140,140.4956,7063.6484,5.0148,27.7441,1.2962,0.2153,2400.0,2340.0,0.3,-2.3328,5.0177,12.8407 2019-06-03 15:41:20.160,140.5041,7063.7026,5.0223,27.7124,1.1298,-0.0275,2400.0,2340.0,0.3058,-2.3298,5.0243,12.9904 2019-06-03 15:41:20.180,140.4613,7063.7847,5.0286,27.676,1.3395,0.1995,2400.0,2340.0,0.3029,-2.3328,5.019,13.1352 2019-06-03 15:41:20.200,140.4442,7063.812,5.0374,27.6666,1.3539,0.1816,2400.0,2340.0,0.3088,-2.3298,5.0164,13.213 2019-06-03 15:41:20.220,140.4613,7063.73,5.0374,27.6477,0.9234,-0.0253,2400.0,2340.0,0.3058,-2.3298,5.0151,13.2848 2019-06-03 15:41:20.240,140.5127,7063.7026,5.0374,27.6477,1.3443,0.1849,2400.0,2340.0,0.3029,-2.3328,5.0084,13.2848 2019-06-03 15:41:20.260,140.5127,7063.7026,5.0374,27.6477,0.9175,0.0008,2400.0,2340.0,0.3029,-2.3328,5.0098,13.2848 2019-06-03 15:41:20.280,140.4613,7063.7026,5.0498,27.6175,1.4227,0.1367,2400.0,2340.0,0.3058,-2.3268,5.019,13.4371 2019-06-03 15:41:20.300,140.4613,7063.6484,5.0557,27.5873,1.4327,0.1134,2400.0,2340.0,0.3058,-2.3298,5.0137,13.5878 2019-06-03 15:41:20.320,140.4528,7063.6484,5.0557,27.5873,0.8816,0.0939,2400.0,2340.0,0.3146,-2.3298,5.0283,13.5878 2019-06-03 15:41:20.340,140.5127,7063.6484,5.0557,27.5873,1.4959,0.076,2400.0,2340.0,0.3029,-2.3268,4.9939,13.5878 2019-06-03 15:41:20.360,140.4956,7063.6484,5.0612,27.5499,0.9164,0.0994,2400.0,2340.0,0.3117,-2.3268,5.0018,13.735 2019-06-03 15:41:20.380,140.4613,7063.6211,5.0689,27.521,1.4678,0.0274,2400.0,2340.0,0.3175,-2.3268,5.0018,13.885 2019-06-03 15:41:20.400,140.4613,7063.6211,5.0719,27.508,1.4153,0.0346,2340.0,2400.0,0.3321,-2.3268,4.9939,13.9611 2019-06-03 15:41:20.420,140.4613,7063.6484,5.079,27.4928,0.9933,0.1614,2340.0,2400.0,0.3234,-2.3239,5.0045,14.0375 2019-06-03 15:41:20.440,140.5041,7063.7026,5.079,27.4928,1.4231,-0.0194,2340.0,2400.0,0.3,-2.3179,5.0084,14.0375 2019-06-03 15:41:20.460,140.5127,7063.7026,5.079,27.4928,1.0066,0.2104,2340.0,2400.0,0.2825,-2.3179,5.0177,14.0375 2019-06-03 15:41:20.480,140.4613,7063.6753,5.0858,27.4612,1.3199,-0.0725,2340.0,2400.0,0.2912,-2.3209,4.9952,14.1879 2019-06-03 15:41:20.500,140.4528,7063.5938,5.0899,27.4261,1.3014,-0.0491,2340.0,2400.0,0.3029,-2.3179,4.974,14.3367 2019-06-03 15:41:20.520,140.4528,7063.5938,5.0899,27.4261,1.0429,0.2186,2340.0,2400.0,0.3205,-2.315,4.9859,14.3367 2019-06-03 15:41:20.540,140.3585,7063.6211,5.0899,27.4261,1.1486,-0.0734,2340.0,2400.0,0.3175,-2.312,4.9926,14.3367 2019-06-03 15:41:20.560,140.3757,7063.7026,5.0981,27.3944,1.1538,0.2143,2340.0,2400.0,0.3,-2.309,5.0124,14.4879 2019-06-03 15:41:20.580,140.3242,7063.7026,5.112,27.362,1.1897,-0.0393,2340.0,2400.0,0.2912,-2.309,5.0217,14.6411 2019-06-03 15:41:20.600,140.3156,7063.6753,5.1086,27.342,1.1797,-0.0378,2340.0,2400.0,0.2854,-2.3061,5.0018,14.7121 2019-06-03 15:41:20.620,140.3328,7063.6753,5.1196,27.3322,1.1435,0.2219,2340.0,2400.0,0.3029,-2.309,5.0098,14.793 2019-06-03 15:41:20.640,140.3757,7063.6484,5.1196,27.3322,1.0381,-0.0497,2340.0,2400.0,0.3029,-2.312,4.9806,14.793 2019-06-03 15:41:20.660,140.3757,7063.6753,5.1196,27.3322,1.3202,0.2014,2340.0,2400.0,0.3029,-2.3061,4.9846,14.793 2019-06-03 15:41:20.680,140.3156,7063.6753,5.1241,27.2902,1.0358,-0.0235,2340.0,2400.0,0.3,-2.312,4.9979,14.9407 2019-06-03 15:41:20.700,140.3328,7063.6484,5.1311,27.2487,0.9933,-0.0043,2340.0,2400.0,0.3058,-2.309,5.0137,15.0895 2019-06-03 15:41:20.720,140.3156,7063.6484,5.1311,27.2487,1.4101,0.1727,2340.0,2400.0,0.3,-2.3061,5.0349,15.0895 2019-06-03 15:41:20.740,140.2212,7063.7026,5.1311,27.2487,0.9412,0.0143,2340.0,2400.0,0.2941,-2.2913,5.0111,15.0895 2019-06-03 15:41:20.760,140.2384,7063.7026,5.1437,27.2123,1.4341,0.1377,2340.0,2400.0,0.2941,-2.2972,4.9714,15.2413 2019-06-03 15:41:20.780,140.1782,7063.6753,5.1571,27.1765,0.9131,0.0645,2340.0,2400.0,0.3175,-2.3031,4.9926,15.3925 2019-06-03 15:41:20.800,140.1868,7063.6484,5.1547,27.1522,0.8694,0.0868,2340.0,2400.0,0.3058,-2.2972,4.97,15.4619 2019-06-03 15:41:20.820,140.1954,7063.6211,5.1637,27.1355,1.5015,0.067,2340.0,2400.0,0.3029,-2.3001,5.0071,15.5378 2019-06-03 15:41:20.840,140.2384,7063.6211,5.1637,27.1355,0.8236,0.1003,2340.0,2400.0,0.2883,-2.2972,5.0018,15.5378 2019-06-03 15:41:20.860,140.247,7063.5664,5.1637,27.1355,1.477,0.0446,2340.0,2400.0,0.2883,-2.3001,5.0257,15.5378 2019-06-03 15:41:20.880,140.1868,7063.5664,5.172,27.0942,0.9079,0.1514,2340.0,2400.0,0.2941,-2.2972,5.0217,15.6843 2019-06-03 15:41:20.900,140.1868,7063.457,5.1863,27.0592,0.8886,0.1825,2340.0,2400.0,0.3,-2.2942,4.9886,15.8355 2019-06-03 15:41:20.920,140.1782,7063.457,5.1863,27.0592,1.4667,-0.0072,2340.0,2400.0,0.3029,-2.2972,5.0005,15.8355 2019-06-03 15:41:20.940,140.2384,7063.4844,5.1863,27.0592,1.0022,0.1948,2340.0,2400.0,0.2854,-2.2972,4.9687,15.8355 2019-06-03 15:41:20.960,140.2298,7063.5391,5.2017,27.0253,1.3498,-0.0021,2340.0,2400.0,0.3058,-2.2972,5.0005,15.9861 2019-06-03 15:41:20.980,140.1868,7063.6211,5.2103,26.9854,1.0506,0.1875,2340.0,2400.0,0.2854,-2.3001,5.0177,16.1366 2019-06-03 15:41:21.000,140.1782,7063.7026,5.2152,26.9654,1.0155,0.1996,2340.0,2400.0,0.2941,-2.2913,5.0151,16.2108 2019-06-03 15:41:21.020,140.1868,7063.6753,5.217,26.9424,1.2551,-0.0501,2340.0,2400.0,0.2854,-2.2942,5.0283,16.2832 2019-06-03 15:41:21.040,140.2384,7063.6753,5.217,26.9424,1.1409,0.2182,2340.0,2400.0,0.3088,-2.2942,5.0031,16.2832 2019-06-03 15:41:21.060,140.2384,7063.73,5.217,26.9424,1.3258,-0.0094,2340.0,2400.0,0.3088,-2.2883,4.9912,16.2832 2019-06-03 15:41:21.080,140.1868,7063.6753,5.23,26.9056,1.2921,0.2215,2340.0,2400.0,0.3058,-2.2883,5.0084,16.4318 2019-06-03 15:41:21.100,140.1868,7063.6484,5.2437,26.8681,1.2833,0.2119,2340.0,2400.0,0.3058,-2.2853,4.9886,16.5805 2019-06-03 15:41:21.120,140.1782,7063.6753,5.2437,26.8681,0.9863,-0.0661,2340.0,2400.0,0.2854,-2.2853,5.0018,16.5805 2019-06-03 15:41:21.140,140.2384,7063.6484,5.2437,26.8681,1.2921,0.2213,2340.0,2400.0,0.3146,-2.2824,5.0257,16.5805 2019-06-03 15:41:21.160,140.2298,7063.7026,5.2536,26.8293,1.0688,-0.018,2340.0,2400.0,0.3,-2.2853,4.9965,16.7272 2019-06-03 15:41:21.180,140.1782,7063.6753,5.2536,26.8293,1.3321,0.1891,2340.0,2400.0,0.3088,-2.2794,5.023,16.7272 2019-06-03 15:41:21.200,140.1868,7063.6753,5.2688,26.7736,1.3694,0.1897,2340.0,2400.0,0.3,-2.2794,4.9806,16.9498 2019-06-03 15:41:21.220,140.1954,7063.6211,5.2689,26.751,0.9105,-0.0141,2340.0,2400.0,0.2912,-2.2764,4.9806,17.0208 2019-06-03 15:41:21.240,140.2298,7063.6753,5.2689,26.751,1.4364,0.1393,2340.0,2400.0,0.2971,-2.2764,4.9952,17.0208 2019-06-03 15:41:21.260,140.247,7063.6753,5.2689,26.751,0.9082,0.0733,2340.0,2400.0,0.3,-2.2557,4.9965,17.0208 2019-06-03 15:41:21.280,140.1782,7063.6753,5.2811,26.718,1.4604,0.0865,2340.0,2400.0,0.3117,-2.2616,5.0336,17.1708 2019-06-03 15:41:21.300,140.1868,7063.6211,5.2903,26.679,1.4071,0.084,2340.0,2400.0,0.3029,-2.2586,4.9965,17.3181 2019-06-03 15:41:21.320,140.1782,7063.6211,5.2903,26.679,0.9715,0.1197,2340.0,2400.0,0.3,-2.2616,5.0031,17.3181 2019-06-03 15:41:21.340,140.2384,7063.6484,5.2903,26.679,1.3668,0.0165,2340.0,2400.0,0.2854,-2.2646,4.9793,17.3181 2019-06-03 15:41:21.360,140.2384,7063.6753,5.2951,26.6401,1.0758,0.1732,2340.0,2400.0,0.2971,-2.2586,4.982,17.4643 2019-06-03 15:41:21.380,140.1868,7063.7026,5.3042,26.6031,1.3199,0.0057,2340.0,2400.0,0.3,-2.2586,4.9979,17.6124 2019-06-03 15:41:21.400,140.1782,7063.73,5.3081,26.5842,1.2633,0.0085,2400.0,2400.0,0.3029,-2.2616,4.9859,17.6866 2019-06-03 15:41:21.420,140.1868,7063.7573,5.314,26.5688,1.0218,0.1833,2400.0,2400.0,0.2941,-2.2616,4.9939,17.7623 2019-06-03 15:41:21.440,140.2384,7063.7026,5.314,26.5688,1.2119,-0.0083,2400.0,2400.0,0.3029,-2.2557,5.0058,17.7623 2019-06-03 15:41:21.460,140.2384,7063.6753,5.314,26.5688,1.014,0.1896,2400.0,2400.0,0.2941,-2.2171,4.9833,17.7623 2019-06-03 15:41:21.480,140.1782,7063.73,5.3213,26.5297,1.2455,-0.031,2400.0,2400.0,0.2912,-2.2349,5.0058,17.9108 2019-06-03 15:41:21.500,140.1954,7063.6484,5.3242,26.4903,1.139,-0.0299,2400.0,2400.0,0.2825,-2.2349,4.9687,18.0572 2019-06-03 15:41:21.520,140.1696,7063.6211,5.3242,26.4903,1.1276,0.2317,2400.0,2400.0,0.3029,-2.2289,4.9926,18.0572 2019-06-03 15:41:21.540,140.0835,7063.7026,5.3242,26.4903,1.173,-0.053,2400.0,2400.0,0.3175,-2.2319,4.9965,18.0572 2019-06-03 15:41:21.560,140.1008,7063.7573,5.3321,26.456,1.2392,0.227,2400.0,2400.0,0.3234,-2.2319,4.9939,18.2071 2019-06-03 15:41:21.580,140.0405,7063.7026,5.3384,26.4242,0.9423,-0.0422,2400.0,2400.0,0.3175,-2.2319,5.0151,18.3558 2019-06-03 15:41:21.600,140.0491,7063.7573,5.3366,26.4047,0.9933,-0.0049,2400.0,2400.0,0.3029,-2.2289,4.974,18.4271 2019-06-03 15:41:21.620,140.0491,7063.7847,5.3431,26.392,1.3077,0.1763,2400.0,2400.0,0.2912,-2.2349,4.9753,18.5048 2019-06-03 15:41:21.640,140.1008,7063.7573,5.3431,26.392,0.919,0.016,2400.0,2400.0,0.2971,-2.2319,4.978,18.5048 2019-06-03 15:41:21.660,140.1094,7063.73,5.3431,26.392,1.3909,0.1337,2400.0,2400.0,0.3088,-2.226,4.9873,18.5048 2019-06-03 15:41:21.680,140.0405,7063.7026,5.3452,26.3564,0.8073,0.0601,2400.0,2400.0,0.3205,-2.2289,5.0243,18.6499 2019-06-03 15:41:21.700,140.0491,7063.6211,5.3522,26.3245,0.8539,0.1061,2400.0,2400.0,0.3234,-2.223,4.9912,18.7993 2019-06-03 15:41:21.720,140.0405,7063.5938,5.3522,26.3245,1.436,0.0797,2400.0,2400.0,0.3146,-2.2111,4.9753,18.7993 2019-06-03 15:41:21.740,140.0921,7063.6211,5.3522,26.3245,0.9364,0.1471,2400.0,2400.0,0.3088,-2.226,4.97,18.7993 2019-06-03 15:41:21.760,140.0921,7063.6753,5.3639,26.2993,1.3846,0.0321,2400.0,2400.0,0.3058,-2.22,4.9661,18.9492 2019-06-03 15:41:21.780,140.0491,7063.6753,5.3673,26.2723,0.8949,0.1519,2400.0,2400.0,0.2912,-2.22,4.9912,19.0968 2019-06-03 15:41:21.800,140.0491,7063.7026,5.3716,26.255,0.9105,0.1729,2400.0,2400.0,0.2912,-2.223,4.9846,19.1704 2019-06-03 15:41:21.820,140.0491,7063.6484,5.3713,26.2398,1.3942,-0.0241,2400.0,2400.0,0.2941,-2.22,4.9952,19.2412 2019-06-03 15:41:21.840,140.1008,7063.7026,5.3713,26.2398,1.0762,0.2037,2400.0,2400.0,0.3205,-2.2171,5.019,19.2412 2019-06-03 15:41:21.860,140.1008,7063.6484,5.3713,26.2398,1.23,-0.012,2400.0,2400.0,0.3117,-2.223,4.9661,19.2412 2019-06-03 15:41:21.880,140.0318,7063.6484,5.3806,26.2107,1.2429,0.1942,2400.0,2400.0,0.3088,-2.2171,4.9621,19.387 2019-06-03 15:41:21.900,140.0491,7063.5938,5.3908,26.1877,1.1531,0.2026,2400.0,2400.0,0.3058,-2.2171,4.9489,19.5358 2019-06-03 15:41:21.920,140.0405,7063.5938,5.3908,26.1877,1.2888,-0.0141,2400.0,2400.0,0.2912,-2.2171,4.9528,19.5358 2019-06-03 15:41:21.940,139.9542,7063.5938,5.3908,26.1877,1.2481,0.187,2400.0,2400.0,0.2854,-2.2171,4.9873,19.5358 2019-06-03 15:41:21.960,139.9628,7063.6484,5.4006,26.1607,1.0288,0.0418,2400.0,2400.0,0.3,-2.2171,5.0031,19.6821 2019-06-03 15:41:21.980,139.9197,7063.7026,5.4066,26.133,1.3365,0.127,2400.0,2400.0,0.3029,-2.2171,5.0283,19.8253 2019-06-03 15:41:22.000,139.911,7063.7026,5.4153,26.1215,1.3154,0.1523,2400.0,2400.0,0.3029,-2.2171,4.9979,19.8996 2019-06-03 15:41:22.020,139.911,7063.7026,5.4163,26.1045,1.0599,0.0465,2400.0,2400.0,0.3058,-2.22,4.974,19.9696 2019-06-03 15:41:22.040,139.9542,7063.73,5.4163,26.1045,1.2566,0.1424,2400.0,2400.0,0.3029,-2.2141,4.9727,19.9696 2019-06-03 15:41:22.060,139.9801,7063.7026,5.4163,26.1045,0.9552,0.044,2400.0,2400.0,0.3088,-2.2141,4.9555,19.9696 2019-06-03 15:41:22.080,139.911,7063.73,5.4287,26.0815,1.3524,0.1167,2400.0,2400.0,0.2912,-2.2171,4.9595,20.1187 2019-06-03 15:41:22.100,139.911,7063.6484,5.4384,26.0557,1.3228,0.1345,2400.0,2400.0,0.3,-2.2141,4.9767,20.2647 2019-06-03 15:41:22.120,139.911,7063.6211,5.4384,26.0557,0.9641,0.0947,2400.0,2400.0,0.2912,-2.2141,4.9939,20.2647 2019-06-03 15:41:22.140,139.8073,7063.5664,5.4384,26.0557,1.3117,0.0893,2400.0,2400.0,0.3117,-2.226,5.027,20.2647 2019-06-03 15:41:22.160,139.8246,7063.5664,5.4442,26.0264,0.9948,0.1219,2400.0,2400.0,0.3058,-2.2171,4.982,20.4075 2019-06-03 15:41:22.180,139.7813,7063.5664,5.4534,25.9959,1.3901,0.0406,2400.0,2400.0,0.3058,-2.2171,4.9767,20.5515 2019-06-03 15:41:22.200,139.7727,7063.5664,5.4613,25.9856,1.3705,0.0251,2400.0,2400.0,0.2912,-2.226,4.9568,20.6244 2019-06-03 15:41:22.220,139.7813,7063.5664,5.4666,25.9738,1.041,0.1829,2400.0,2400.0,0.3,-2.22,4.9661,20.6961 2019-06-03 15:41:22.240,139.8333,7063.5938,5.4666,25.9738,1.284,0.0048,2400.0,2400.0,0.2941,-2.223,4.9767,20.6961 2019-06-03 15:41:22.260,139.8333,7063.5391,5.4666,25.9738,1.0861,0.1837,2400.0,2400.0,0.3,-2.2171,4.974,20.6961 2019-06-03 15:41:22.280,139.7727,7063.5391,5.4782,25.9456,1.2777,-0.0286,2400.0,2400.0,0.2941,-2.226,4.9939,20.8391 2019-06-03 15:41:22.300,139.7813,7063.5117,5.4864,25.9136,1.2548,-0.035,2400.0,2400.0,0.3,-2.2349,5.0005,20.9798 2019-06-03 15:41:22.320,139.764,7063.5938,5.4864,25.9136,1.1908,0.2055,2400.0,2400.0,0.3058,-2.2378,4.9979,20.9798 2019-06-03 15:41:22.340,139.8333,7063.6211,5.4864,25.9136,1.0961,-0.0256,2400.0,2400.0,0.3263,-2.2378,5.0098,20.9798 2019-06-03 15:41:22.360,139.8246,7063.6753,5.4971,25.8849,1.2537,0.1888,2400.0,2400.0,0.3029,-2.2378,4.9634,21.1215 2019-06-03 15:41:22.380,139.7727,7063.7026,5.5101,25.8612,1.2385,-0.0071,2400.0,2400.0,0.2971,-2.2378,4.97,21.2659 2019-06-03 15:41:22.400,139.7727,7063.7026,5.5144,25.8445,1.1372,-0.0136,2340.0,2340.0,0.3029,-2.2378,4.974,21.3355 2019-06-03 15:41:22.420,139.7813,7063.6753,5.5225,25.8345,1.1834,0.1884,2340.0,2340.0,0.2971,-2.2349,4.9939,21.4073 2019-06-03 15:41:22.440,139.8246,7063.7026,5.5225,25.8345,1.027,-0.0393,2340.0,2340.0,0.2883,-2.2378,5.023,21.4073 2019-06-03 15:41:22.460,139.8246,7063.7026,5.5225,25.8345,1.2751,0.1576,2340.0,2340.0,0.2912,-2.2319,4.9793,21.4073 2019-06-03 15:41:22.480,139.7813,7063.6484,5.5337,25.8058,1.0381,0.0228,2340.0,2340.0,0.2971,-2.2378,5.0098,21.5484 2019-06-03 15:41:22.500,139.7813,7063.5938,5.5467,25.7792,1.0077,0.0439,2340.0,2340.0,0.2941,-2.2468,4.9926,21.6909 2019-06-03 15:41:22.520,139.7727,7063.5938,5.5467,25.7792,1.2529,0.137,2340.0,2340.0,0.3117,-2.2527,5.0005,21.6909 2019-06-03 15:41:22.540,139.8333,7063.5938,5.5467,25.7792,1.0532,0.0393,2340.0,2340.0,0.2971,-2.2794,4.9979,21.6909 2019-06-03 15:41:22.560,139.816,7063.6211,5.5623,25.7556,1.3324,0.1104,2340.0,2340.0,0.3,-2.2735,4.9846,21.8338 2019-06-03 15:41:22.580,139.7727,7063.5938,5.5623,25.7556,1.0196,0.047,2340.0,2340.0,0.2912,-2.3031,4.9992,21.8338 2019-06-03 15:41:22.600,139.7727,7063.6753,5.5834,25.712,0.9689,0.0649,2340.0,2340.0,0.3088,-2.3298,5.0257,22.0459 2019-06-03 15:41:22.620,139.7813,7063.6211,5.5894,25.6998,1.3724,0.1059,2340.0,2340.0,0.3029,-2.3209,4.9979,22.1174 2019-06-03 15:41:22.640,139.8333,7063.6211,5.5894,25.6998,0.9719,0.0771,2340.0,2340.0,0.3029,-2.3179,5.0243,22.1174 2019-06-03 15:41:22.660,139.8246,7063.6211,5.5894,25.6998,1.2851,0.0679,2340.0,2340.0,0.2883,-2.3268,4.9873,22.1174 2019-06-03 15:41:22.680,139.7813,7063.5938,5.603,25.6722,0.9123,0.1082,2340.0,2340.0,0.2825,-2.3268,4.9979,22.2589 2019-06-03 15:41:22.700,139.7727,7063.5117,5.6205,25.6444,1.0392,0.1089,2340.0,2340.0,0.3,-2.3713,5.0177,22.4029 2019-06-03 15:41:22.720,139.764,7063.5117,5.6205,25.6444,1.3058,0.0471,2340.0,2340.0,0.3205,-2.3654,5.0296,22.4029 2019-06-03 15:41:22.740,139.8246,7063.5938,5.6205,25.6444,1.0591,0.1389,2340.0,2340.0,0.3058,-2.3772,5.0415,22.4029 2019-06-03 15:41:22.760,139.8246,7063.6211,5.6379,25.6173,1.2622,0.0056,2340.0,2340.0,0.3,-2.3594,5.0164,22.5477 2019-06-03 15:41:22.780,139.7727,7063.6211,5.6508,25.5872,1.0943,0.2149,2340.0,2340.0,0.2678,-2.3713,4.9939,22.689 2019-06-03 15:41:22.800,139.7813,7063.5938,5.6618,25.5729,1.1516,0.2198,2340.0,2340.0,0.2737,-2.3713,5.0164,22.7631 2019-06-03 15:41:22.820,139.7813,7063.5938,5.6648,25.553,1.2026,-0.0191,2340.0,2340.0,0.2737,-2.3594,4.9886,22.8314 2019-06-03 15:41:22.840,139.816,7063.7026,5.6648,25.553,1.0684,0.2091,2340.0,2340.0,0.2825,-2.3772,5.0283,22.8314 2019-06-03 15:41:22.860,139.8333,7063.7026,5.6648,25.553,1.1028,-0.0024,2340.0,2340.0,0.2883,-2.389,5.0217,22.8314 2019-06-03 15:41:22.880,139.7727,7063.7847,5.6842,25.5236,1.2677,0.2183,2340.0,2340.0,0.2883,-2.3861,5.0283,22.9771 2019-06-03 15:41:22.900,139.7727,7063.6484,5.7023,25.4907,1.2111,0.1899,2340.0,2340.0,0.2912,-2.3861,5.0296,23.122 2019-06-03 15:41:22.920,139.7727,7063.6484,5.7023,25.4907,1.1072,0.0032,2340.0,2340.0,0.2941,-2.3802,4.9979,23.122 2019-06-03 15:41:22.940,139.6774,7063.7026,5.7023,25.4907,1.247,0.1524,2340.0,2340.0,0.2854,-2.3861,5.0071,23.122 2019-06-03 15:41:22.960,139.6947,7063.7026,5.7164,25.4552,0.9526,0.0463,2340.0,2340.0,0.2971,-2.3831,5.0058,23.2637 2019-06-03 15:41:22.980,139.6427,7063.7026,5.7296,25.416,1.3827,0.1476,2340.0,2340.0,0.2854,-2.3831,5.0084,23.4043 2019-06-03 15:41:23.000,139.6427,7063.7026,5.7436,25.4007,1.3569,0.1363,2340.0,2340.0,0.2883,-2.3861,5.0323,23.4791 2019-06-03 15:41:23.020,139.6427,7063.6753,5.748,25.3774,0.9445,0.0692,2340.0,2340.0,0.2708,-2.3861,5.0151,23.548 2019-06-03 15:41:23.040,139.6947,7063.6211,5.748,25.3774,1.2918,0.0615,2340.0,2340.0,0.2825,-2.3831,5.0243,23.548 2019-06-03 15:41:23.060,139.6947,7063.6484,5.748,25.3774,0.9759,0.107,2340.0,2340.0,0.2825,-2.3802,4.9979,23.548 2019-06-03 15:41:23.080,139.6427,7063.7026,5.7693,25.3399,1.3968,0.0656,2340.0,2340.0,0.2883,-2.3713,4.9833,23.6932 2019-06-03 15:41:23.100,139.6514,7063.5664,5.7857,25.299,1.3358,0.0668,2340.0,2340.0,0.2941,-2.4098,5.0084,23.8352 2019-06-03 15:41:23.120,139.634,7063.5938,5.7857,25.299,0.9352,0.101,2340.0,2340.0,0.2912,-2.3979,4.9965,23.8352 2019-06-03 15:41:23.140,139.5385,7063.6484,5.7857,25.299,1.4619,-0.0019,2340.0,2340.0,0.2678,-2.3861,5.0349,23.8352 2019-06-03 15:41:23.160,139.5559,7063.73,5.7991,25.2536,1.0033,0.1765,2340.0,2340.0,0.2708,-2.3831,5.0177,23.9747 2019-06-03 15:41:23.180,139.5037,7063.7026,5.8175,25.2129,1.2751,0.0108,2340.0,2340.0,0.2795,-2.3802,5.0058,24.1171 2019-06-03 15:41:23.200,139.5124,7063.73,5.8269,25.1894,1.2611,-0.0066,2340.0,2340.0,0.2854,-2.3831,5.0124,24.1876 2019-06-03 15:41:23.220,139.5124,7063.6753,5.8385,25.1708,1.0011,0.1799,2340.0,2340.0,0.2912,-2.3802,4.9753,24.26 2019-06-03 15:41:23.240,139.5559,7063.6484,5.8385,25.1708,1.193,-0.0354,2340.0,2340.0,0.2883,-2.3802,4.982,24.26 2019-06-03 15:41:23.260,139.5646,7063.6484,5.8385,25.1708,1.1723,0.1761,2340.0,2340.0,0.2941,-2.395,4.9873,24.26 2019-06-03 15:41:23.280,139.495,7063.6753,5.8551,25.1262,1.1597,0.0045,2340.0,2340.0,0.2912,-2.3861,5.0124,24.4018 2019-06-03 15:41:23.300,139.5037,7063.5664,5.8693,25.0767,1.1682,-0.0103,2340.0,2340.0,0.2854,-2.389,5.0455,24.5409 2019-06-03 15:41:23.320,139.495,7063.5391,5.8693,25.0767,1.2618,0.1802,2340.0,2340.0,0.2678,-2.3861,4.9952,24.5409 2019-06-03 15:41:23.340,139.5646,7063.5664,5.8693,25.0767,1.0488,-0.0234,2340.0,2340.0,0.2678,-2.3861,5.0084,24.5409 2019-06-03 15:41:23.360,139.5559,7063.5938,5.8846,25.0325,1.3284,0.1869,2340.0,2340.0,0.2766,-2.3861,4.9846,24.6846 2019-06-03 15:41:23.380,139.5037,7063.5938,5.9016,24.9888,1.0699,-0.0,2340.0,2340.0,0.2912,-2.3831,4.982,24.8248 2019-06-03 15:41:23.400,139.5037,7063.6484,5.9068,24.9607,1.0236,-0.0163,2400.0,2400.0,0.2825,-2.389,5.0098,24.8928 2019-06-03 15:41:23.420,139.5037,7063.5938,5.9177,24.9394,1.2892,0.1873,2400.0,2400.0,0.2912,-2.3861,5.0018,24.9655 2019-06-03 15:41:23.440,139.5559,7063.6753,5.9177,24.9394,0.9722,0.0295,2400.0,2400.0,0.2678,-2.389,5.0243,24.9655 2019-06-03 15:41:23.460,139.5646,7063.6211,5.9177,24.9394,1.4083,0.116,2400.0,2400.0,0.2825,-2.3831,5.0204,24.9655 2019-06-03 15:41:23.480,139.5037,7063.6211,5.93,24.8878,0.9456,0.0743,2400.0,2400.0,0.2883,-2.3802,4.9912,25.1042 2019-06-03 15:41:23.500,139.5124,7064.0576,5.9457,24.8395,0.96,0.1006,2400.0,2400.0,0.2883,-2.3831,5.0071,25.2445 2019-06-03 15:41:23.520,139.495,7064.958,5.9457,24.8395,1.3409,0.0701,2400.0,2400.0,0.2912,-2.389,4.974,25.2445 2019-06-03 15:41:23.540,139.3993,7066.3228,5.9457,24.8395,1.0325,0.1655,2400.0,2400.0,0.2854,-2.3831,5.0217,25.2445 2019-06-03 15:41:23.560,139.4167,7067.2231,5.9635,24.795,1.3435,-0.008,2400.0,2400.0,0.2795,-2.3831,5.027,25.3867 2019-06-03 15:41:23.580,139.3645,7068.5874,5.9778,24.7422,1.0588,0.1942,2400.0,2400.0,0.2854,-2.3861,5.0111,25.5259 2019-06-03 15:41:23.600,139.3645,7069.4609,5.9864,24.7183,1.0125,0.161,2400.0,2400.0,0.2795,-2.3831,5.023,25.5965 2019-06-03 15:41:23.620,139.3732,7070.3066,5.9899,24.6906,1.3421,0.0229,2400.0,2400.0,0.2971,-2.3802,4.9979,25.6638 2019-06-03 15:41:23.640,139.4167,7071.6714,5.9899,24.6906,1.0939,0.2134,2400.0,2400.0,0.2883,-2.3831,5.0071,25.6638 2019-06-03 15:41:23.660,139.4254,7072.4082,5.9899,24.6906,1.1816,-0.0438,2400.0,2400.0,0.2912,-2.3802,5.0151,25.6638 2019-06-03 15:41:23.680,139.3645,7072.4624,6.0058,24.6407,1.1727,0.2261,2400.0,2400.0,0.2825,-2.3802,4.9873,25.8033 2019-06-03 15:41:23.700,139.3819,7072.4082,6.025,24.5921,1.139,0.209,2400.0,2400.0,0.2766,-2.3831,5.0283,25.9449 2019-06-03 15:41:23.720,139.3557,7072.4351,6.025,24.5921,1.0251,0.007,2400.0,2400.0,0.2854,-2.3831,5.0071,25.9449 2019-06-03 15:41:23.740,139.4254,7072.4351,6.025,24.5921,1.4194,0.2208,2400.0,2400.0,0.2912,-2.3831,5.019,25.9449 2019-06-03 15:41:23.760,139.4167,7072.4624,6.0382,24.539,0.9541,-0.0314,2400.0,2400.0,0.2854,-2.3831,5.0296,26.082 2019-06-03 15:41:23.780,139.3732,7072.4624,6.0489,24.4836,1.3254,0.1833,2400.0,2400.0,0.2825,-2.3802,5.0071,26.2165 2019-06-03 15:41:23.800,139.3645,7072.4624,6.0621,24.4627,1.3972,0.1354,2400.0,2400.0,0.2649,-2.3802,5.0137,26.2889 2019-06-03 15:41:23.820,139.3645,7072.4624,6.065,24.4351,0.8986,0.0971,2400.0,2400.0,0.2854,-2.3772,5.0137,26.3564 2019-06-03 15:41:23.840,139.4167,7072.4351,6.065,24.4351,1.3912,0.0991,2400.0,2400.0,0.2854,-2.3772,5.0045,26.3564 2019-06-03 15:41:23.860,139.4341,7072.3809,6.065,24.4351,0.8801,0.1172,2400.0,2400.0,0.2883,-2.3772,5.0177,26.3564 2019-06-03 15:41:23.880,139.3732,7072.3262,6.0829,24.3856,1.4604,0.0398,2400.0,2400.0,0.2912,-2.3772,4.9939,26.495 2019-06-03 15:41:23.900,139.3732,7072.2715,6.0951,24.3345,1.4745,0.0021,2400.0,2400.0,0.2766,-2.3772,5.0084,26.631 2019-06-03 15:41:23.920,139.3645,7072.2988,6.0951,24.3345,0.9541,0.1814,2400.0,2400.0,0.2766,-2.3831,4.9979,26.631 2019-06-03 15:41:23.940,139.2598,7072.2988,6.0951,24.3345,1.2884,0.0171,2400.0,2400.0,0.2737,-2.3772,4.9992,26.631 2019-06-03 15:41:23.960,139.286,7072.3535,6.1059,24.2791,1.0455,0.1664,2400.0,2400.0,0.2883,-2.3802,5.0151,26.7648 2019-06-03 15:41:23.980,139.2336,7072.3809,6.1237,24.2319,1.3446,0.0278,2400.0,2400.0,0.2883,-2.3772,4.978,26.8993 2019-06-03 15:41:24.000,139.2161,7072.4624,6.1306,24.2082,1.2855,-0.0055,2400.0,2400.0,0.2708,-2.3802,4.9926,26.9678 2019-06-03 15:41:24.020,139.2423,7072.4351,6.1422,24.1856,1.0296,0.1965,2400.0,2400.0,0.2766,-2.3772,5.0031,27.038 2019-06-03 15:41:24.040,139.2947,7072.4897,6.1422,24.1856,1.3184,-0.008,2400.0,2400.0,0.2737,-2.3772,4.9979,27.038 2019-06-03 15:41:24.060,139.286,7072.4351,6.1422,24.1856,1.162,0.1927,2400.0,2400.0,0.2883,-2.3772,5.027,27.038 2019-06-03 15:41:24.080,139.2249,7072.4624,6.1566,24.134,1.1031,-0.0094,2400.0,2400.0,0.2941,-2.3742,4.9899,27.174 2019-06-03 15:41:24.100,139.2336,7072.4351,6.1673,24.087,1.0895,-0.0232,2400.0,2400.0,0.2854,-2.3772,4.9912,27.3087 2019-06-03 15:41:24.120,139.2161,7072.4351,6.1673,24.087,1.2696,0.1951,2400.0,2400.0,0.2854,-2.3742,4.9965,27.3087 2019-06-03 15:41:24.140,139.1375,7072.4624,6.1673,24.087,1.0225,0.0133,2400.0,2400.0,0.2825,-2.3742,4.9886,27.3087 2019-06-03 15:41:24.160,139.1462,7072.4897,6.181,24.0429,1.389,0.1522,2400.0,2400.0,0.2941,-2.3742,5.0283,27.4445 2019-06-03 15:41:24.180,139.1024,7072.4897,6.1987,24.0026,0.9219,0.0295,2400.0,2400.0,0.2795,-2.3654,4.982,27.581 2019-06-03 15:41:24.200,139.1024,7072.4897,6.2017,23.9744,0.9933,0.0588,2400.0,2400.0,0.2883,-2.3713,4.9859,27.6454 2019-06-03 15:41:24.220,139.1024,7072.5171,6.2114,23.9548,1.416,0.0858,2400.0,2400.0,0.2795,-2.3713,4.9674,27.7145 2019-06-03 15:41:24.240,139.1549,7072.5171,6.2114,23.9548,1.0114,0.1155,2400.0,2400.0,0.2795,-2.3654,4.9886,27.7145 2019-06-03 15:41:24.260,139.1549,7072.5171,6.2114,23.9548,1.3406,0.0507,2400.0,2400.0,0.2678,-2.3742,5.019,27.7145 2019-06-03 15:41:24.280,139.0937,7072.5444,6.2234,23.9122,0.8158,0.1506,2400.0,2400.0,0.2825,-2.3713,5.0071,27.8488 2019-06-03 15:41:24.300,139.1112,7072.4351,6.2386,23.873,0.9038,0.2032,2400.0,2400.0,0.2795,-2.3683,4.9952,27.9841 2019-06-03 15:41:24.320,139.0937,7072.4897,6.2386,23.873,1.2955,-0.0464,2400.0,2400.0,0.2883,-2.3713,4.9939,27.9841 2019-06-03 15:41:24.340,139.1549,7072.5171,6.2386,23.873,1.1087,0.2176,2400.0,2400.0,0.2883,-2.3742,4.97,27.9841 2019-06-03 15:41:24.360,139.1462,7072.5171,6.2554,23.834,1.3206,-0.0436,2400.0,2400.0,0.2941,-2.3742,4.9965,28.1196 2019-06-03 15:41:24.380,139.1024,7072.4624,6.2663,23.7938,1.1035,0.2226,2400.0,2400.0,0.2766,-2.3654,4.9793,28.2521 2019-06-03 15:41:24.400,139.0849,7072.4624,6.2764,23.777,1.1901,0.2545,2400.0,2400.0,0.2825,-2.3654,5.0111,28.3211 2019-06-03 15:41:24.420,139.1024,7072.4351,6.2777,23.7529,1.0743,-0.0298,2400.0,2400.0,0.2825,-2.3683,5.0257,28.3852 2019-06-03 15:41:24.440,139.1462,7072.4082,6.2777,23.7529,1.22,0.2092,2400.0,2400.0,0.2795,-2.3624,4.9992,28.3852 2019-06-03 15:41:24.460,139.1637,7072.3262,6.2777,23.7529,1.048,-0.0205,2400.0,2400.0,0.2912,-2.3713,5.0018,28.3852 2019-06-03 15:41:24.480,139.0937,7072.3262,6.2952,23.718,1.3676,0.1673,2400.0,2400.0,0.2795,-2.3594,4.9674,28.5201 2019-06-03 15:41:24.500,139.1024,7072.2441,6.3099,23.6806,1.3742,0.1757,2400.0,2400.0,0.2854,-2.3594,4.9965,28.6544 2019-06-03 15:41:24.520,139.0849,7072.2715,6.3099,23.6806,0.8979,0.0164,2400.0,2400.0,0.2795,-2.3624,5.0111,28.6544 2019-06-03 15:41:24.540,138.9886,7072.3262,6.3099,23.6806,1.4696,0.1369,2400.0,2400.0,0.2941,-2.3594,5.019,28.6544 2019-06-03 15:41:24.560,139.0149,7072.4082,6.3189,23.6384,0.8439,0.0554,2400.0,2400.0,0.2854,-2.3654,5.0243,28.7849 2019-06-03 15:41:24.580,138.9535,7072.4082,6.3189,23.6384,1.3188,0.1171,2400.0,2400.0,0.2825,-2.3654,4.974,28.7849 2019-06-03 15:41:24.600,138.9535,7072.4082,6.347,23.5844,1.3809,0.0986,2400.0,2400.0,0.2766,-2.3654,4.9952,28.9849 2019-06-03 15:41:24.620,138.9535,7072.3809,6.3533,23.563,0.8406,0.1186,2400.0,2400.0,0.2737,-2.3713,5.019,29.0511 2019-06-03 15:41:24.640,139.0061,7072.3809,6.3533,23.563,1.4256,0.0261,2400.0,2400.0,0.2737,-2.3654,5.0058,29.0511 2019-06-03 15:41:24.660,139.0236,7072.2988,6.3533,23.563,0.9282,0.151,2400.0,2400.0,0.2737,-2.3683,5.0217,29.0511 2019-06-03 15:41:24.680,138.9535,7072.3262,6.372,23.5259,1.2951,0.0209,2400.0,2400.0,0.2912,-2.3654,4.9846,29.1847 2019-06-03 15:41:24.700,138.9622,7072.2441,6.3818,23.4816,1.3029,-0.0432,2400.0,2400.0,0.2941,-2.3624,4.9912,29.3128 2019-06-03 15:41:24.720,138.9535,7072.2441,6.3818,23.4816,1.0961,0.2259,2400.0,2400.0,0.2912,-2.3802,5.0164,29.3128 2019-06-03 15:41:24.740,139.0061,7072.2168,6.3818,23.4816,1.1653,-0.0494,2400.0,2400.0,0.2825,-2.3772,4.9939,29.3128 2019-06-03 15:41:24.760,139.0149,7072.2441,6.3993,23.4389,1.1993,0.1978,2400.0,2400.0,0.2591,-2.3772,5.0177,29.4435 2019-06-03 15:41:24.780,138.9622,7072.2715,6.4212,23.4071,1.0628,0.0133,2400.0,2400.0,0.2766,-2.3713,5.0058,29.5761 2019-06-03 15:41:24.800,138.9535,7072.3262,6.4243,23.3836,1.1109,-0.0073,2400.0,2400.0,0.2766,-2.3742,5.0005,29.6382 2019-06-03 15:41:24.820,138.9622,7072.3809,6.4385,23.3679,1.2973,0.1976,2400.0,2400.0,0.2854,-2.3772,5.023,29.7062 2019-06-03 15:41:24.840,139.0061,7072.4351,6.4385,23.3679,0.8764,-0.0126,2400.0,2400.0,0.2883,-2.3654,4.982,29.7062 2019-06-03 15:41:24.860,139.0149,7072.4897,6.4385,23.3679,1.4767,0.1331,2400.0,2400.0,0.2854,-2.3713,5.0098,29.7062 2019-06-03 15:41:24.880,138.9535,7072.4897,6.4523,23.3294,0.8125,0.0829,2400.0,2400.0,0.2825,-2.3713,5.0018,29.8347 2019-06-03 15:41:24.900,138.971,7072.981,6.4699,23.2918,0.8779,0.0996,2400.0,2400.0,0.2825,-2.3683,5.0098,29.9639 2019-06-03 15:41:24.920,138.9447,7073.9092,6.4699,23.2918,1.4353,0.0656,2400.0,2400.0,0.2649,-2.3683,5.0296,29.9639 2019-06-03 15:41:24.940,138.8569,7075.1919,6.4699,23.2918,0.8498,0.1382,2400.0,2400.0,0.2678,-2.3654,4.9833,29.9639 2019-06-03 15:41:24.960,138.8745,7076.1201,6.4918,23.2596,1.4168,-0.0125,2400.0,2400.0,0.2678,-2.3713,4.9912,30.0968 2019-06-03 15:41:24.980,138.8217,7077.3755,6.5094,23.2233,0.916,0.1952,2400.0,2400.0,0.2883,-2.3713,5.0005,30.2216 2019-06-03 15:41:25.000,138.8129,7078.1943,6.516,23.2022,0.9119,0.2018,2400.0,2400.0,0.2883,-2.3505,4.9899,30.2843 2019-06-03 15:41:25.020,138.8217,7078.959,6.5214,23.1816,1.3772,-0.0197,2400.0,2400.0,0.2854,-2.3565,5.0204,30.3472 2019-06-03 15:41:25.040,138.8657,7080.2417,6.5214,23.1816,0.963,0.2251,2400.0,2400.0,0.2737,-2.3535,4.9873,30.3472 2019-06-03 15:41:25.060,138.8832,7080.9785,6.5214,23.1816,1.1963,-0.033,2400.0,2400.0,0.2766,-2.3535,5.0058,30.3472 2019-06-03 15:41:25.080,138.8217,7080.9785,6.54,23.1421,1.1013,0.2105,2400.0,2400.0,0.2737,-2.3594,4.9992,30.4742 2019-06-03 15:41:25.100,138.8217,7080.897,6.5631,23.1041,1.2178,0.2179,2400.0,2400.0,0.2795,-2.3565,5.0018,30.6045 2019-06-03 15:41:25.120,138.8129,7080.9243,6.5631,23.1041,1.1353,-0.0083,2400.0,2400.0,0.2678,-2.3624,4.9952,30.6045 2019-06-03 15:41:25.140,138.7161,7080.9512,6.5631,23.1041,1.2611,0.2103,2400.0,2400.0,0.2708,-2.3624,4.9714,30.6045 2019-06-03 15:41:25.160,138.7337,7080.9512,6.5829,23.0609,0.9382,-0.0009,2400.0,2400.0,0.2708,-2.3594,4.9899,30.7295 2019-06-03 15:41:25.180,138.6809,7080.9785,6.5996,23.0174,1.4497,0.1641,2400.0,2400.0,0.2708,-2.3594,4.9912,30.8513 2019-06-03 15:41:25.200,138.672,7081.0059,6.6139,23.0022,1.466,0.1409,2400.0,2400.0,0.2766,-2.3594,5.0137,30.9173 2019-06-03 15:41:25.220,138.6897,7080.9512,6.6216,22.9776,0.8731,0.0532,2400.0,2400.0,0.2678,-2.3683,5.0323,30.9787 2019-06-03 15:41:25.240,138.7337,7080.9512,6.6216,22.9776,1.4748,0.1144,2400.0,2400.0,0.2708,-2.3565,5.0005,30.9787 2019-06-03 15:41:25.260,138.7425,7080.9785,6.6216,22.9776,0.9541,0.1332,2400.0,2400.0,0.2708,-2.3594,4.9965,30.9787 2019-06-03 15:41:25.280,138.6809,7080.9512,6.6453,22.9388,1.3539,0.0433,2400.0,2400.0,0.2825,-2.3713,5.0111,31.1059 2019-06-03 15:41:25.300,138.6809,7080.897,6.6609,22.8973,1.46,0.0293,2400.0,2400.0,0.2766,-2.3535,5.0005,31.2298 2019-06-03 15:41:25.320,138.672,7080.9243,6.6609,22.8973,0.9345,0.1599,2400.0,2400.0,0.2825,-2.3654,5.0243,31.2298 2019-06-03 15:41:25.340,138.5838,7081.0059,6.6609,22.8973,1.3287,0.0233,2400.0,2400.0,0.2678,-2.3683,4.978,31.2298 2019-06-03 15:41:25.360,138.6015,7081.0605,6.6805,22.8533,1.0606,0.2168,2400.0,2400.0,0.2708,-2.3683,4.9992,31.3546 2019-06-03 15:41:25.380,138.5485,7081.0879,6.7042,22.8175,1.2821,-0.0588,2400.0,2400.0,0.2678,-2.3683,5.0098,31.4796 2019-06-03 15:41:25.400,138.5485,7081.0879,6.7115,22.7943,1.23,-0.0458,2340.0,2340.0,0.2708,-2.3654,4.9912,31.5402 2019-06-03 15:41:25.420,138.5573,7081.0332,6.7278,22.777,1.152,0.2183,2340.0,2340.0,0.2649,-2.3654,5.0045,31.6064 2019-06-03 15:41:25.440,138.5927,7081.0332,6.7278,22.777,1.1006,-0.028,2340.0,2340.0,0.2708,-2.3594,4.9992,31.6064 2019-06-03 15:41:25.460,138.6015,7081.0059,6.7278,22.777,1.1653,0.234,2340.0,2340.0,0.2766,-2.3654,5.0098,31.6064 2019-06-03 15:41:25.480,138.5397,7080.9785,6.7447,22.7337,1.0173,-0.0436,2340.0,2340.0,0.2854,-2.3654,5.0243,31.7288 2019-06-03 15:41:25.500,138.5485,7080.8696,6.7625,22.6866,0.9242,-0.0395,2340.0,2340.0,0.2737,-2.3535,4.9899,31.8505 2019-06-03 15:41:25.520,138.5397,7080.8696,6.7625,22.6866,1.4408,0.1539,2340.0,2340.0,0.2678,-2.3565,4.9806,31.8505 2019-06-03 15:41:25.540,138.6015,7080.9243,6.7625,22.6866,0.8979,0.0738,2340.0,2340.0,0.262,-2.3594,4.9767,31.8505 2019-06-03 15:41:25.560,138.5927,7080.9243,6.7883,22.6457,1.4574,0.1204,2340.0,2340.0,0.2708,-2.3535,4.9873,31.9767 2019-06-03 15:41:25.580,138.5397,7080.9243,6.8133,22.6039,0.8358,0.097,2340.0,2340.0,0.2737,-2.3535,5.0045,32.101 2019-06-03 15:41:25.600,138.5485,7080.9785,6.819,22.5766,0.7858,0.1302,2340.0,2340.0,0.2678,-2.3535,4.9806,32.1594 2019-06-03 15:41:25.620,138.5397,7080.9512,6.8289,22.5527,1.3705,0.0151,2340.0,2340.0,0.2678,-2.3594,4.9912,32.2208 2019-06-03 15:41:25.640,138.6015,7080.9243,6.8289,22.5527,0.983,0.1965,2340.0,2340.0,0.2649,-2.3416,4.978,32.2208 2019-06-03 15:41:25.660,138.6103,7080.9243,6.8289,22.5527,1.2592,0.005,2340.0,2340.0,0.2678,-2.2942,4.978,32.2208 2019-06-03 15:41:25.680,138.5397,7080.897,6.8488,22.503,0.9929,0.2007,2340.0,2340.0,0.2766,-2.3387,4.9873,32.3436 2019-06-03 15:41:25.700,138.5573,7080.8149,6.8744,22.4537,0.9249,0.2254,2340.0,2340.0,0.2766,-2.3239,4.9608,32.4684 2019-06-03 15:41:25.720,138.5309,7080.8696,6.8744,22.4537,1.2696,-0.0384,2340.0,2340.0,0.2678,-2.3357,4.9873,32.4684 2019-06-03 15:41:25.740,138.2918,7080.9512,6.8744,22.4537,1.2263,0.2522,2340.0,2340.0,0.2591,-2.3594,4.9952,32.4684 2019-06-03 15:41:25.760,138.3096,7080.9512,6.8946,22.4056,1.0728,-0.029,2340.0,2340.0,0.2649,-2.3446,5.0005,32.5913 2019-06-03 15:41:25.780,138.2652,7080.9785,6.9071,22.3474,1.3424,0.2198,2340.0,2340.0,0.2649,-2.3505,5.0018,32.708 2019-06-03 15:41:25.800,138.2563,7080.9785,6.9223,22.3286,1.3358,0.1918,2340.0,2340.0,0.2708,-2.3328,4.9648,32.7718 2019-06-03 15:41:25.820,138.2652,7080.9243,6.9272,22.2972,0.9352,0.0123,2340.0,2340.0,0.2766,-2.3268,4.9661,32.8304 2019-06-03 15:41:25.840,138.3184,7080.9243,6.9272,22.2972,1.4341,0.1554,2340.0,2340.0,0.2854,-2.3268,4.9648,32.8304 2019-06-03 15:41:25.860,138.3184,7080.9512,6.9272,22.2972,0.8909,0.0881,2340.0,2340.0,0.2766,-2.3268,4.9634,32.8304 2019-06-03 15:41:25.880,138.2652,7080.897,6.9479,22.2507,1.4611,0.0923,2340.0,2340.0,0.2708,-2.3268,4.9939,32.9541 2019-06-03 15:41:25.900,138.2652,7080.8423,6.9648,22.1986,1.524,0.0525,2340.0,2340.0,0.262,-2.3268,4.9727,33.0763 2019-06-03 15:41:25.920,138.2652,7080.8423,6.9648,22.1986,0.9138,0.1767,2340.0,2340.0,0.262,-2.3268,5.0045,33.0763 2019-06-03 15:41:25.940,138.1675,7080.8423,6.9648,22.1986,1.3472,-0.0241,2340.0,2340.0,0.2678,-2.3328,4.9992,33.0763 2019-06-03 15:41:25.960,138.1675,7080.8696,6.9795,22.1458,1.0192,0.2195,2340.0,2340.0,0.2737,-2.3298,4.9687,33.1965 2019-06-03 15:41:25.980,138.1319,7080.8696,6.9984,22.1007,1.3014,-0.0239,2340.0,2340.0,0.2737,-2.3328,4.982,33.3169 2019-06-03 15:41:26.000,138.123,7080.9243,7.0062,22.0764,1.2633,-0.0161,2340.0,2340.0,0.2678,-2.3328,4.9595,33.3788 2019-06-03 15:41:26.020,138.123,7080.9243,7.0187,22.0559,1.1139,0.227,2340.0,2340.0,0.2708,-2.3357,4.9714,33.443 2019-06-03 15:41:26.040,138.1764,7080.9512,7.0187,22.0559,1.0532,-0.0619,2340.0,2340.0,0.2737,-2.3298,4.9767,33.443 2019-06-03 15:41:26.060,138.1853,7080.8696,7.0187,22.0559,1.1971,0.2319,2340.0,2340.0,0.2854,-2.3179,4.9727,33.443 2019-06-03 15:41:26.080,138.1141,7080.897,7.0312,22.0052,0.9641,-0.0308,2340.0,2340.0,0.2708,-2.3357,4.9714,33.5641 2019-06-03 15:41:26.100,138.123,7081.3608,7.0442,21.9532,0.8705,0.0117,2340.0,2340.0,0.2825,-2.3328,4.9542,33.6871 2019-06-03 15:41:26.120,138.1141,7082.2891,7.0442,21.9532,1.4552,0.1527,2340.0,2340.0,0.2795,-2.3328,4.974,33.6871 2019-06-03 15:41:26.140,138.0251,7083.709,7.0442,21.9532,0.8439,0.0296,2340.0,2340.0,0.2825,-2.3357,5.0045,33.6871 2019-06-03 15:41:26.160,138.0429,7084.6372,7.0635,21.9105,1.483,0.1033,2340.0,2340.0,0.2766,-2.3209,4.9846,33.8126 2019-06-03 15:41:26.180,137.9805,7086.002,7.079,21.8632,0.811,0.0914,2340.0,2340.0,0.2532,-2.3268,5.0058,33.9341 2019-06-03 15:41:26.200,137.9895,7086.876,7.082,21.8347,0.8372,0.1586,2340.0,2340.0,0.2591,-2.3239,4.9674,33.9934 2019-06-03 15:41:26.220,137.9895,7087.8042,7.0862,21.8109,1.4415,-0.0077,2340.0,2340.0,0.2708,-2.3268,4.9674,34.0543 2019-06-03 15:41:26.240,138.0518,7089.1416,7.0862,21.8109,0.9408,0.2185,2340.0,2340.0,0.2766,-2.3298,4.9714,34.0543 2019-06-03 15:41:26.260,138.0429,7089.8516,7.0862,21.8109,1.2603,-0.0433,2340.0,2340.0,0.2708,-2.3268,4.9489,34.0543 2019-06-03 15:41:26.280,137.9984,7089.8516,7.0978,21.7605,1.1372,0.2104,2340.0,2340.0,0.2678,-2.3328,4.982,34.177 2019-06-03 15:41:26.300,137.9895,7089.7695,7.1153,21.7152,1.1531,0.231,2340.0,2340.0,0.2854,-2.3476,4.982,34.3026 2019-06-03 15:41:26.320,137.9805,7089.7969,7.1153,21.7152,1.1117,-0.0352,2340.0,2340.0,0.2941,-2.3357,4.9965,34.3026 2019-06-03 15:41:26.340,137.8913,7089.7153,7.1153,21.7152,1.2389,0.2308,2340.0,2340.0,0.2678,-2.3624,4.9952,34.3026 2019-06-03 15:41:26.360,137.9002,7089.7427,7.1262,21.6662,0.8731,-0.033,2340.0,2340.0,0.2649,-2.3565,4.9595,34.4281 2019-06-03 15:41:26.380,137.8466,7089.7427,7.1334,21.6135,1.4955,0.1907,2340.0,2340.0,0.262,-2.3505,4.9727,34.5437 2019-06-03 15:41:26.400,137.8466,7089.7153,7.1463,21.5963,1.4005,0.1591,2340.0,2400.0,0.262,-2.3565,4.9502,34.6099 2019-06-03 15:41:26.420,137.8466,7089.7427,7.1468,21.5685,0.8868,0.0707,2340.0,2400.0,0.2854,-2.3328,4.9648,34.6694 2019-06-03 15:41:26.440,137.9002,7089.7427,7.1468,21.5685,1.4526,0.1146,2340.0,2400.0,0.2678,-2.3387,4.982,34.6694 2019-06-03 15:41:26.460,137.9002,7089.7153,7.1468,21.5685,0.8872,0.1162,2340.0,2400.0,0.2649,-2.3328,4.9687,34.6694 2019-06-03 15:41:26.480,137.8377,7089.7153,7.1626,21.5237,1.4597,0.0414,2340.0,2400.0,0.2532,-2.3387,4.9965,34.7953 2019-06-03 15:41:26.500,137.8645,7089.6606,7.1717,21.4806,1.3184,0.0115,2340.0,2400.0,0.2708,-2.3446,4.9899,34.9194 2019-06-03 15:41:26.520,137.8377,7089.6606,7.1717,21.4806,0.8713,0.1899,2340.0,2400.0,0.2766,-2.3476,4.9595,34.9194 2019-06-03 15:41:26.540,137.7393,7089.606,7.1717,21.4806,1.2829,-0.0426,2340.0,2400.0,0.2883,-2.3476,4.9687,34.9194 2019-06-03 15:41:26.560,137.7662,7089.6606,7.1793,21.432,1.0991,0.2216,2340.0,2400.0,0.2737,-2.3446,4.9131,35.0431 2019-06-03 15:41:26.580,137.7125,7089.688,7.1931,21.3965,1.1409,-0.0527,2340.0,2400.0,0.2591,-2.3476,4.9515,35.1662 2019-06-03 15:41:26.600,137.7035,7089.7153,7.1943,21.3713,1.0946,-0.0824,2340.0,2400.0,0.262,-2.3446,4.9661,35.2272 2019-06-03 15:41:26.620,137.7125,7089.688,7.2044,21.3559,1.2995,0.2514,2340.0,2400.0,0.2708,-2.3416,4.982,35.2932 2019-06-03 15:41:26.640,137.7662,7089.6333,7.2044,21.3559,0.9234,-0.0599,2340.0,2400.0,0.2591,-2.3446,5.0151,35.2932 2019-06-03 15:41:26.660,137.7751,7089.5786,7.2044,21.3559,1.3875,0.2063,2340.0,2400.0,0.2825,-2.3387,4.9634,35.2932 2019-06-03 15:41:26.680,137.7035,7089.6333,7.2093,21.3117,0.9393,0.0179,2340.0,2400.0,0.2795,-2.3446,4.9634,35.418 2019-06-03 15:41:26.700,137.7125,7089.5786,7.2166,21.2691,0.7821,0.0546,2340.0,2400.0,0.2912,-2.3772,4.9595,35.5443 2019-06-03 15:41:26.720,137.6945,7089.606,7.2166,21.2691,1.4471,0.0835,2340.0,2400.0,0.2737,-2.3624,4.9343,35.5443 2019-06-03 15:41:26.740,137.6139,7089.6333,7.2166,21.2691,0.7918,0.1027,2340.0,2400.0,0.2649,-2.3654,4.9634,35.5443 2019-06-03 15:41:26.760,137.6228,7089.688,7.2293,21.2328,1.4608,0.0499,2340.0,2400.0,0.2591,-2.3476,4.9634,35.673 2019-06-03 15:41:26.780,137.56,7089.6606,7.2397,21.1985,0.8864,0.1883,2340.0,2400.0,0.2649,-2.3446,4.9979,35.7948 2019-06-03 15:41:26.800,137.569,7089.7153,7.2408,21.1734,0.8794,0.1997,2340.0,2400.0,0.2708,-2.3594,5.0084,35.8562 2019-06-03 15:41:26.820,137.569,7089.688,7.2402,21.1532,1.2781,-0.0311,2340.0,2400.0,0.2678,-2.3328,4.9674,35.9189 2019-06-03 15:41:26.840,137.6139,7089.6606,7.2402,21.1532,1.1523,0.218,2340.0,2400.0,0.2561,-2.3446,4.9687,35.9189 2019-06-03 15:41:26.860,137.6318,7089.6606,7.2402,21.1532,1.1634,-0.0172,2340.0,2400.0,0.2591,-2.3683,4.929,35.9189 2019-06-03 15:41:26.880,137.56,7089.6606,7.2505,21.1135,1.1512,0.2652,2340.0,2400.0,0.2561,-2.3654,4.9356,36.047 2019-06-03 15:41:26.900,137.56,7090.1519,7.2639,21.0768,1.2378,0.2361,2340.0,2400.0,0.2766,-2.3654,4.9661,36.1764 2019-06-03 15:41:26.920,137.569,7090.9985,7.2639,21.0768,0.9493,-0.0444,2340.0,2400.0,0.2591,-2.3802,4.9595,36.1764 2019-06-03 15:41:26.940,137.6139,7092.2002,7.2639,21.0768,1.4319,0.2165,2340.0,2400.0,0.2561,-2.3802,5.0098,36.1764 2019-06-03 15:41:26.960,137.6139,7093.0469,7.2717,21.0328,0.8132,0.0256,2340.0,2400.0,0.2561,-2.3802,4.9873,36.3012 2019-06-03 15:41:26.980,137.56,7094.3027,7.2779,20.9957,1.4208,0.1561,2340.0,2400.0,0.2591,-2.3772,4.9753,36.4138 2019-06-03 15:41:27.000,137.56,7095.1494,7.2908,20.9787,1.4837,0.1228,2340.0,2400.0,0.2795,-2.3802,4.982,36.4795 2019-06-03 15:41:27.020,137.569,7095.9688,7.2907,20.9543,0.8291,0.0943,2340.0,2400.0,0.2708,-2.3713,4.933,36.5399 2019-06-03 15:41:27.040,137.6228,7097.2246,7.2907,20.9543,1.3735,0.0552,2340.0,2400.0,0.2708,-2.3742,4.9634,36.5399 2019-06-03 15:41:27.060,137.6318,7097.8525,7.2907,20.9543,0.8457,0.1477,2340.0,2400.0,0.2825,-2.3772,4.9489,36.5399 2019-06-03 15:41:27.080,137.569,7097.7437,7.3084,20.9149,1.4604,0.0076,2340.0,2400.0,0.2883,-2.3713,4.9714,36.6671 2019-06-03 15:41:27.100,137.578,7097.7163,7.3157,20.8695,1.2821,-0.0166,2340.0,2400.0,0.2737,-2.3772,4.9886,36.7897 2019-06-03 15:41:27.120,137.56,7097.7437,7.3157,20.8695,0.9434,0.2023,2340.0,2400.0,0.2561,-2.3742,4.97,36.7897 2019-06-03 15:41:27.140,137.4702,7097.7983,7.3157,20.8695,1.3232,-0.05,2340.0,2400.0,0.2445,-2.3742,4.9912,36.7897 2019-06-03 15:41:27.160,137.4791,7097.9072,7.3238,20.8239,1.0983,0.258,2340.0,2400.0,0.2561,-2.3772,4.9648,36.9108 2019-06-03 15:41:27.180,137.4432,7097.9072,7.3415,20.7936,1.0133,-0.0439,2340.0,2400.0,0.2678,-2.3742,4.9621,37.0286 2019-06-03 15:41:27.200,137.4342,7097.8525,7.3456,20.7683,0.997,-0.051,2340.0,2400.0,0.2649,-2.3802,4.9581,37.0885 2019-06-03 15:41:27.220,137.4342,7097.771,7.3599,20.7528,1.2248,0.2411,2340.0,2400.0,0.2766,-2.3772,4.9436,37.1523 2019-06-03 15:41:27.240,137.4881,7097.7983,7.3599,20.7528,1.0333,-0.0222,2340.0,2400.0,0.262,-2.3713,4.9952,37.1523 2019-06-03 15:41:27.260,137.4971,7097.7983,7.3599,20.7528,1.3772,0.2065,2340.0,2400.0,0.262,-2.3683,4.9912,37.1523 2019-06-03 15:41:27.280,137.4252,7097.771,7.3692,20.7074,0.8546,0.0351,2340.0,2400.0,0.2708,-2.3713,4.9926,37.271 2019-06-03 15:41:27.300,137.4252,7097.7437,7.3851,20.6628,0.8428,0.0295,2340.0,2400.0,0.2532,-2.3713,4.9912,37.3903 2019-06-03 15:41:27.320,137.4162,7097.7163,7.3851,20.6628,1.5085,0.1307,2340.0,2400.0,0.2561,-2.3713,4.9621,37.3903 2019-06-03 15:41:27.340,137.3351,7097.6069,7.3851,20.6628,0.8683,0.126,2340.0,2400.0,0.2445,-2.3683,4.9661,37.3903 2019-06-03 15:41:27.360,137.3351,7097.7163,7.4064,20.6273,1.3809,0.0181,2340.0,2400.0,0.262,-2.3742,4.9648,37.5114 2019-06-03 15:41:27.380,137.29,7097.771,7.4064,20.6273,0.8809,0.2073,2340.0,2400.0,0.2445,-2.3742,4.9674,37.5114 2019-06-03 15:41:27.400,137.281,7097.771,7.4323,20.567,0.9889,0.2135,2400.0,2340.0,0.2532,-2.3772,5.0283,37.6786 2019-06-03 15:41:27.420,137.29,7097.771,7.438,20.5419,1.2093,-0.0451,2400.0,2340.0,0.2532,-2.3742,4.9899,37.7348 2019-06-03 15:41:27.440,137.3531,7097.771,7.438,20.5419,1.0965,0.2835,2400.0,2340.0,0.2766,-2.3772,4.9965,37.7348 2019-06-03 15:41:27.460,137.3441,7097.689,7.438,20.5419,1.1017,-0.0799,2400.0,2340.0,0.2737,-2.4039,4.9859,37.7348 2019-06-03 15:41:27.480,137.29,7097.5796,7.4586,20.5022,1.2167,0.2533,2400.0,2340.0,0.262,-2.389,4.9608,37.8502 2019-06-03 15:41:27.500,137.2991,7097.4976,7.4794,20.4654,1.3014,0.236,2400.0,2340.0,0.2298,-2.392,4.97,37.9669 2019-06-03 15:41:27.520,137.272,7097.5249,7.4794,20.4654,0.95,-0.0103,2400.0,2340.0,0.2503,-2.392,4.9595,37.9669 2019-06-03 15:41:27.540,137.1817,7097.4976,7.4794,20.4654,1.3384,0.2091,2400.0,2340.0,0.2561,-2.389,4.9767,37.9669 2019-06-03 15:41:27.560,137.1908,7097.5522,7.4961,20.4243,0.825,0.0165,2400.0,2340.0,0.262,-2.392,4.9965,38.0792 2019-06-03 15:41:27.580,137.1456,7097.5796,7.513,20.3853,1.4737,0.1352,2400.0,2340.0,0.2766,-2.3861,4.9727,38.1828 2019-06-03 15:41:27.600,137.1456,7097.5796,7.5291,20.3722,1.4467,0.0747,2400.0,2340.0,0.2649,-2.389,4.9886,38.2429 2019-06-03 15:41:27.620,137.1636,7097.5796,7.5382,20.3499,0.8077,0.1259,2400.0,2340.0,0.262,-2.392,4.9687,38.2987 2019-06-03 15:41:27.640,137.1998,7097.5796,7.5382,20.3499,1.4123,0.0634,2400.0,2340.0,0.2357,-2.3654,4.9581,38.2987 2019-06-03 15:41:27.660,137.2088,7097.6069,7.5382,20.3499,0.8905,0.1487,2400.0,2340.0,0.1948,-2.3861,4.9714,38.2987 2019-06-03 15:41:27.680,137.1365,7097.6343,7.5623,20.3123,1.4105,-0.0097,2400.0,2340.0,0.1714,-2.3831,4.9383,38.4119 2019-06-03 15:41:27.700,137.1456,7097.5796,7.5778,20.2704,1.3539,-0.0296,2400.0,2340.0,0.1626,-2.3831,4.9714,38.5196 2019-06-03 15:41:27.720,137.1365,7097.6069,7.5778,20.2704,0.9678,0.2257,2400.0,2340.0,0.1655,-2.3831,4.9674,38.5196 2019-06-03 15:41:27.740,137.046,7097.6069,7.5778,20.2704,1.2352,-0.0411,2400.0,2340.0,0.1685,-2.3742,4.9793,38.5196 2019-06-03 15:41:27.760,137.0551,7097.6616,7.5965,20.2268,1.1209,0.2521,2400.0,2340.0,0.1772,-2.3861,5.0257,38.6276 2019-06-03 15:41:27.780,137.0098,7097.689,7.6242,20.1964,1.0477,-0.0541,2400.0,2340.0,0.1918,-2.3742,4.9714,38.7308 2019-06-03 15:41:27.800,136.9917,7097.7437,7.6295,20.1727,1.0229,-0.0293,2400.0,2340.0,0.1538,-2.3772,4.9581,38.7819 2019-06-03 15:41:27.820,137.0007,7097.771,7.6483,20.1585,1.3343,0.2236,2400.0,2340.0,0.1685,-2.3831,4.9515,38.8392 2019-06-03 15:41:27.840,137.046,7097.8525,7.6483,20.1585,0.9915,-0.0052,2400.0,2340.0,0.1655,-2.3831,4.9449,38.8392 2019-06-03 15:41:27.860,137.0551,7097.8799,7.6483,20.1585,1.3376,0.1651,2400.0,2340.0,0.1802,-2.3831,4.9939,38.8392 2019-06-03 15:41:27.880,137.0007,7097.8525,7.6655,20.1144,0.8642,0.0216,2400.0,2340.0,0.1831,-2.3831,4.9687,38.9441 2019-06-03 15:41:27.900,137.0098,7098.3716,7.6877,20.0725,0.8565,0.0912,2400.0,2340.0,0.1831,-2.3802,4.9992,39.0486 2019-06-03 15:41:27.920,136.9917,7099.3003,7.6877,20.0725,1.5407,0.076,2400.0,2340.0,0.1831,-2.3802,5.0018,39.0486 2019-06-03 15:41:27.940,137.046,7100.7207,7.6877,20.0725,0.8358,0.1676,2400.0,2340.0,0.1714,-2.389,4.974,39.0486 2019-06-03 15:41:27.960,137.046,7101.6768,7.7151,20.0357,1.4323,-0.0025,2400.0,2340.0,0.1685,-2.3979,4.982,39.1544 2019-06-03 15:41:27.980,136.9917,7103.0151,7.7399,19.997,0.9267,0.2016,2400.0,2340.0,0.1626,-2.389,4.9489,39.2532 2019-06-03 15:41:28.000,136.9917,7103.9165,7.7508,19.9756,0.9663,0.2085,2400.0,2340.0,0.1626,-2.389,4.9753,39.3045 2019-06-03 15:41:28.020,137.0189,7104.7905,7.7593,19.9485,1.2078,-0.0374,2400.0,2340.0,0.1655,-2.4246,5.0151,39.3539 2019-06-03 15:41:28.040,137.0551,7106.0469,7.7593,19.9485,1.0011,0.2549,2400.0,2340.0,0.1714,-2.4187,5.0045,39.3539 2019-06-03 15:41:28.060,137.0641,7106.7021,7.7593,19.9485,1.1901,-0.0453,2400.0,2340.0,0.186,-2.4157,5.0257,39.3539 2019-06-03 15:41:28.080,137.0007,7106.6479,7.785,19.9056,1.3062,0.2207,2400.0,2340.0,0.1655,-2.4157,4.9581,39.4571 2019-06-03 15:41:28.100,137.0007,7106.5386,7.8107,19.865,1.3502,0.2265,2400.0,2340.0,0.1743,-2.4157,5.0005,39.5611 2019-06-03 15:41:28.120,136.9917,7106.4565,7.8107,19.865,0.9242,-0.0216,2400.0,2340.0,0.1597,-2.4098,4.9939,39.5611 2019-06-03 15:41:28.140,136.901,7106.4292,7.8107,19.865,1.3646,0.1869,2400.0,2340.0,0.1714,-2.389,4.9873,39.5611 2019-06-03 15:41:28.160,136.9191,7106.3745,7.8295,19.8159,0.828,0.0265,2400.0,2340.0,0.1743,-2.4039,5.023,39.6606 2019-06-03 15:41:28.180,136.8737,7106.2651,7.8528,19.7681,1.4194,0.1314,2400.0,2340.0,0.1802,-2.3979,5.0031,39.7576 2019-06-03 15:41:28.200,136.8646,7106.3198,7.8685,19.7495,1.4785,0.0893,2400.0,2340.0,0.1772,-2.395,5.0151,39.8114 2019-06-03 15:41:28.220,136.8646,7106.4019,7.8791,19.7239,0.7977,0.1088,2400.0,2340.0,0.1714,-2.4009,5.0217,39.8621 2019-06-03 15:41:28.240,136.9191,7106.5112,7.8791,19.7239,1.4245,0.0177,2400.0,2340.0,0.1772,-2.392,4.9886,39.8621 2019-06-03 15:41:28.260,136.9191,7106.4839,7.8791,19.7239,0.9323,0.154,2400.0,2340.0,0.1509,-2.3979,5.019,39.8621 2019-06-03 15:41:28.280,136.8556,7106.5386,7.9069,19.6762,1.2836,0.0021,2400.0,2340.0,0.1626,-2.395,5.0084,39.9659 2019-06-03 15:41:28.300,136.8737,7106.4292,7.9233,19.6262,1.3066,-0.0293,2400.0,2340.0,0.1655,-2.395,5.0283,40.0669 2019-06-03 15:41:28.320,136.8556,7106.4292,7.9233,19.6262,1.1002,0.2558,2400.0,2340.0,0.1802,-2.3979,5.0415,40.0669 2019-06-03 15:41:28.340,136.7646,7106.5112,7.9233,19.6262,1.176,-0.0553,2400.0,2340.0,0.1772,-2.392,5.0018,40.0669 2019-06-03 15:41:28.360,136.7737,7106.5659,7.9449,19.5731,1.2784,0.2387,2400.0,2340.0,0.1685,-2.3979,5.027,40.1674 2019-06-03 15:41:28.380,136.7191,7106.5386,7.9722,19.5318,0.9552,-0.0135,2400.0,2340.0,0.1685,-2.389,5.0217,40.2693 2019-06-03 15:41:28.400,136.7191,7106.5386,7.9773,19.5028,0.9301,-0.0177,2340.0,2340.0,0.1743,-2.3713,5.0336,40.3169 2019-06-03 15:41:28.420,136.7191,7106.5386,7.9967,19.4847,1.3635,0.1945,2340.0,2340.0,0.1772,-2.3802,5.0641,40.3718 2019-06-03 15:41:28.440,136.7737,7106.5659,7.9967,19.4847,0.7918,0.0441,2340.0,2340.0,0.1714,-2.3535,5.0442,40.3718 2019-06-03 15:41:28.460,136.7919,7106.5659,7.9967,19.4847,1.5314,0.0745,2340.0,2340.0,0.1597,-2.3505,5.0588,40.3718 2019-06-03 15:41:28.480,136.7282,7106.5933,8.0117,19.4312,0.7903,0.155,2340.0,2340.0,0.1626,-2.2883,5.0535,40.4721 2019-06-03 15:41:28.500,136.7191,7107.1396,8.0355,19.3852,0.9349,0.1771,2340.0,2340.0,0.1685,-2.2497,5.0495,40.5759 2019-06-03 15:41:28.520,136.71,7107.9863,8.0355,19.3852,1.416,-0.0144,2340.0,2340.0,0.186,-2.2289,5.0905,40.5759 2019-06-03 15:41:28.540,136.6098,7109.2705,8.0355,19.3852,0.9101,0.2195,2340.0,2340.0,0.1831,-2.125,5.072,40.5759 2019-06-03 15:41:28.560,136.6371,7110.1992,8.0641,19.3427,1.2518,-0.061,2340.0,2340.0,0.1802,-2.1161,5.0879,40.681 2019-06-03 15:41:28.580,136.5824,7111.4561,8.0837,19.2959,1.0654,0.2573,2340.0,2340.0,0.2006,-2.0298,5.0905,40.7816 2019-06-03 15:41:28.600,136.5824,7112.3301,8.0984,19.2769,1.1464,0.2581,2340.0,2340.0,0.2123,-1.9971,5.0932,40.8347 2019-06-03 15:41:28.620,136.5733,7113.1226,8.1062,19.2511,1.0909,-0.0559,2340.0,2340.0,0.1977,-1.9732,5.1077,40.8852 2019-06-03 15:41:28.640,136.628,7114.3794,8.1062,19.2511,1.2674,0.2411,2340.0,2340.0,0.186,-1.8629,5.0919,40.8852 2019-06-03 15:41:28.660,136.6371,7115.0347,8.1062,19.2511,0.9989,-0.0236,2340.0,2340.0,0.1685,-1.8659,5.1024,40.8852 2019-06-03 15:41:28.680,136.5733,7115.062,8.1339,19.2197,1.352,0.1939,2340.0,2340.0,0.1743,-1.8122,5.1011,40.9918 2019-06-03 15:41:28.700,136.5824,7115.062,8.1617,19.1911,1.4478,0.1409,2340.0,2340.0,0.1889,-1.7913,5.0945,41.0983 2019-06-03 15:41:28.720,136.5641,7115.062,8.1617,19.1911,0.7666,0.0885,2340.0,2340.0,0.1889,-1.7943,5.1024,41.0983 2019-06-03 15:41:28.740,136.3172,7115.062,8.1617,19.1911,1.4164,0.0449,2340.0,2340.0,0.2006,-1.7704,5.0945,41.0983 2019-06-03 15:41:28.760,136.3447,7115.144,8.1845,19.1651,0.9426,0.1798,2340.0,2340.0,0.2006,-1.7674,5.1038,41.2034 2019-06-03 15:41:28.780,136.2896,7115.144,8.214,19.1513,1.4031,-0.0185,2340.0,2340.0,0.2006,-1.7644,5.1038,41.3061 2019-06-03 15:41:28.800,136.2988,7115.2261,8.2279,19.1459,1.298,-0.0424,2340.0,2340.0,0.2006,-1.7316,5.0945,41.3599 2019-06-03 15:41:28.820,136.2896,7115.2261,8.2471,19.1431,1.0928,0.2174,2340.0,2340.0,0.1948,-1.7405,5.1051,41.417 2019-06-03 15:41:28.840,136.3538,7115.2534,8.2471,19.1431,1.2063,-0.0232,2340.0,2340.0,0.1889,-1.7256,5.1024,41.417 2019-06-03 15:41:28.860,136.3538,7115.1987,8.2471,19.1431,1.1919,0.2602,2340.0,2340.0,0.1831,-1.7196,5.1011,41.417 2019-06-03 15:41:28.880,136.2896,7115.144,8.275,19.1346,1.0292,-0.0447,2340.0,2340.0,0.1889,-1.7196,5.1011,41.5241 2019-06-03 15:41:28.900,136.2896,7115.0894,8.3025,19.1299,0.9756,-0.0299,2340.0,2340.0,0.2006,-1.6867,5.0839,41.6331 2019-06-03 15:41:28.920,136.2805,7115.144,8.3025,19.1299,1.4157,0.1503,2340.0,2340.0,0.1977,-1.6897,5.0985,41.6331 2019-06-03 15:41:28.940,136.1795,7115.1987,8.3025,19.1299,0.8554,0.0812,2340.0,2340.0,0.1918,-1.6807,5.0852,41.6331 2019-06-03 15:41:28.960,136.1887,7115.2808,8.3386,19.1357,1.4327,0.1058,2340.0,2340.0,0.1977,-1.6538,5.0919,41.7459 2019-06-03 15:41:28.980,136.1335,7115.2261,8.3724,19.147,0.973,0.1322,2340.0,2340.0,0.186,-1.6598,5.0945,41.8523 2019-06-03 15:41:29.000,136.1427,7115.2534,8.3824,19.1491,0.9327,0.1493,2340.0,2340.0,0.1889,-1.6179,5.0879,41.9052 2019-06-03 15:41:29.020,136.1519,7115.3081,8.3979,19.1531,1.3665,-0.0271,2340.0,2340.0,0.1802,-1.6179,5.0879,41.9605 2019-06-03 15:41:29.040,136.1979,7115.3354,8.3979,19.1531,0.973,0.2134,2340.0,2340.0,0.1918,-1.6209,5.0852,41.9605 2019-06-03 15:41:29.060,136.1979,7115.3628,8.3979,19.1531,1.2433,-0.021,2340.0,2340.0,0.1948,-1.6029,5.0773,41.9605 2019-06-03 15:41:29.080,136.1335,7115.3628,8.4262,19.1706,1.1242,0.1975,2340.0,2340.0,0.2123,-1.5969,5.0826,42.0737 2019-06-03 15:41:29.100,136.1519,7115.8545,8.4595,19.1936,1.1653,0.2193,2340.0,2340.0,0.2094,-1.594,5.0693,42.1887 2019-06-03 15:41:29.120,136.1243,7116.7563,8.4595,19.1936,1.0699,-0.0165,2340.0,2340.0,0.2065,-1.594,5.0839,42.1887 2019-06-03 15:41:29.140,136.0415,7118.0952,8.4595,19.1936,1.2873,0.1787,2340.0,2340.0,0.2065,-1.591,5.0932,42.1887 2019-06-03 15:41:29.160,136.0599,7119.0518,8.4874,19.2183,0.9168,0.0428,2340.0,2340.0,0.1948,-1.573,5.0773,42.3037 2019-06-03 15:41:29.180,135.9955,7120.3086,8.4874,19.2183,1.382,0.1192,2340.0,2340.0,0.1948,-1.567,5.0773,42.3037 2019-06-03 15:41:29.200,135.9955,7121.2378,8.5301,19.2682,1.3813,0.1299,2340.0,2340.0,0.1743,-1.558,5.0389,42.4742 2019-06-03 15:41:29.220,135.9955,7122.085,8.5424,19.2876,0.9578,0.1039,2340.0,2340.0,0.1918,-1.558,5.0535,42.5314 2019-06-03 15:41:29.240,136.0415,7123.4785,8.5424,19.2876,1.4075,0.0308,2340.0,2340.0,0.2035,-1.558,5.0693,42.5314 2019-06-03 15:41:29.260,136.0692,7124.1616,8.5424,19.2876,0.9234,0.1974,2340.0,2340.0,0.2152,-1.555,5.0799,42.5314 2019-06-03 15:41:29.280,135.9955,7124.0796,8.5692,19.3239,1.3665,-0.0177,2340.0,2340.0,0.2123,-1.558,5.0958,42.6486 2019-06-03 15:41:29.300,136.0047,7124.0249,8.5895,19.362,1.257,-0.0005,2340.0,2340.0,0.2035,-1.549,5.0614,42.7644 2019-06-03 15:41:29.320,135.9955,7124.0249,8.5895,19.362,1.2267,0.2354,2340.0,2340.0,0.1977,-1.546,5.0508,42.7644 2019-06-03 15:41:29.340,135.894,7124.0249,8.5895,19.362,1.0798,-0.0472,2340.0,2340.0,0.1977,-1.543,5.0535,42.7644 2019-06-03 15:41:29.360,135.894,7124.0522,8.6116,19.4016,1.2507,0.2206,2340.0,2340.0,0.2035,-1.534,5.0468,42.8798 2019-06-03 15:41:29.380,135.8478,7124.1069,8.6403,19.4561,1.0865,0.0006,2340.0,2340.0,0.2006,-1.531,5.0786,42.993 2019-06-03 15:41:29.400,135.8478,7124.1069,8.6469,19.4745,0.9297,0.0457,2400.0,2400.0,0.1889,-1.531,5.0641,43.0483 2019-06-03 15:41:29.420,135.8571,7124.0522,8.6595,19.5009,1.419,0.1482,2400.0,2400.0,0.1918,-1.5191,5.0667,43.1078 2019-06-03 15:41:29.440,135.9125,7124.0796,8.6595,19.5009,0.848,0.0779,2400.0,2400.0,0.2094,-1.5161,5.0693,43.1078 2019-06-03 15:41:29.460,135.9125,7124.1069,8.6595,19.5009,1.3768,0.0897,2400.0,2400.0,0.2123,-1.5071,5.0402,43.1078 2019-06-03 15:41:29.480,135.8478,7124.0796,8.6752,19.5483,0.9116,0.1266,2400.0,2400.0,0.2065,-1.5071,5.0548,43.2212 2019-06-03 15:41:29.500,135.8571,7123.9976,8.6965,19.6026,0.8417,0.1853,2400.0,2400.0,0.1918,-1.4831,5.0362,43.3386 2019-06-03 15:41:29.520,135.8386,7124.0249,8.6965,19.6026,1.2703,-0.0014,2400.0,2400.0,0.1831,-1.4621,5.0362,43.3386 2019-06-03 15:41:29.540,135.7554,7123.916,8.6965,19.6026,1.0166,0.217,2400.0,2400.0,0.1802,-1.5041,5.0429,43.3386 2019-06-03 15:41:29.560,135.7646,7123.9429,8.72,19.6553,1.2544,-0.0043,2400.0,2400.0,0.186,-1.4681,5.0296,43.4564 2019-06-03 15:41:29.580,135.7091,7123.8887,8.7362,19.7125,1.1583,0.189,2400.0,2400.0,0.2035,-1.4711,5.0561,43.5648 2019-06-03 15:41:29.600,135.6998,7123.9702,8.7488,19.7425,1.1453,0.2251,2400.0,2400.0,0.2094,-1.4681,5.0389,43.624 2019-06-03 15:41:29.620,135.7091,7123.9429,8.75,19.7683,1.0347,0.0018,2400.0,2400.0,0.2152,-1.4681,5.0402,43.6791 2019-06-03 15:41:29.640,135.7646,7124.0522,8.75,19.7683,1.227,0.1805,2400.0,2400.0,0.2065,-1.4621,5.0402,43.6791 2019-06-03 15:41:29.660,135.7646,7124.0522,8.75,19.7683,1.0373,0.0403,2400.0,2400.0,0.2035,-1.4381,5.0124,43.6791 2019-06-03 15:41:29.680,135.7091,7124.0249,8.7708,19.8322,1.3454,0.1268,2400.0,2400.0,0.2065,-1.4381,5.027,43.7971 2019-06-03 15:41:29.700,135.7184,7124.7085,8.7878,19.8963,1.3691,0.1112,2400.0,2400.0,0.1948,-1.4321,5.0084,43.9139 2019-06-03 15:41:29.720,135.6998,7125.8291,8.7878,19.8963,0.8628,0.1209,2400.0,2400.0,0.2094,-1.3901,5.0243,43.9139 2019-06-03 15:41:29.740,135.44,7127.4692,8.7878,19.8963,1.264,0.0603,2400.0,2400.0,0.2035,-1.4051,5.0362,43.9139 2019-06-03 15:41:29.760,135.4586,7128.5625,8.8,19.9588,0.9604,0.1461,2400.0,2400.0,0.2035,-1.4051,5.0204,44.0284 2019-06-03 15:41:29.780,135.4027,7130.1201,8.8153,20.0307,1.3206,-0.0049,2400.0,2400.0,0.1889,-1.3991,5.0323,44.1383 2019-06-03 15:41:29.800,135.412,7131.1318,8.8237,20.0653,1.22,-0.0326,2400.0,2400.0,0.2006,-1.4021,5.0177,44.1973 2019-06-03 15:41:29.820,135.4214,7132.1431,8.8314,20.1029,1.1124,0.2271,2400.0,2400.0,0.1918,-1.3811,5.0177,44.2563 2019-06-03 15:41:29.840,135.4678,7133.7007,8.8314,20.1029,1.0865,-0.0128,2400.0,2400.0,0.1802,-1.4201,5.0323,44.2563 2019-06-03 15:41:29.860,135.4772,7134.521,8.8314,20.1029,1.1549,0.1878,2400.0,2400.0,0.2065,-1.3781,5.0177,44.2563 2019-06-03 15:41:29.880,135.412,7134.439,8.8416,20.1741,1.0765,-0.013,2400.0,2400.0,0.1977,-1.3841,5.0217,44.3726 2019-06-03 15:41:29.900,135.412,7134.3296,8.8531,20.2456,1.0432,0.0177,2400.0,2400.0,0.224,-1.3871,5.0217,44.4882 2019-06-03 15:41:29.920,135.3934,7134.3843,8.8531,20.2456,1.2674,0.1639,2400.0,2400.0,0.2123,-1.3871,4.9965,44.4882 2019-06-03 15:41:29.940,135.3003,7134.439,8.8531,20.2456,1.0547,0.0629,2400.0,2400.0,0.1918,-1.3931,5.0323,44.4882 2019-06-03 15:41:29.960,135.3376,7134.439,8.8679,20.3228,1.2415,0.0965,2400.0,2400.0,0.1802,-1.3871,4.9992,44.6063 2019-06-03 15:41:29.980,135.2816,7134.4116,8.8823,20.4066,0.9345,0.1366,2400.0,2400.0,0.1714,-1.372,5.0177,44.7166 2019-06-03 15:41:30.000,135.2536,7134.4663,8.8848,20.4419,1.0381,0.1445,2400.0,2400.0,0.1948,-1.3811,5.0257,44.773 2019-06-03 15:41:30.020,135.2723,7134.4663,8.8877,20.4772,1.1904,0.031,2400.0,2400.0,0.2094,-1.3811,5.0084,44.8299 2019-06-03 15:41:30.040,135.3189,7134.5483,8.8877,20.4772,1.1864,0.1878,2400.0,2400.0,0.2006,-1.3811,5.0362,44.8299 2019-06-03 15:41:30.060,135.3282,7134.5757,8.8877,20.4772,0.9789,-0.0021,2400.0,2400.0,0.1977,-1.3781,4.9912,44.8299 2019-06-03 15:41:30.080,135.263,7134.5483,8.9,20.5547,1.2015,0.2226,2400.0,2400.0,0.2006,-1.3811,5.0137,44.9461 2019-06-03 15:41:30.100,135.2723,7134.4116,8.9142,20.6345,1.2725,0.1974,2400.0,2400.0,0.1948,-1.3841,5.031,45.0642 2019-06-03 15:41:30.120,135.263,7134.3296,8.9142,20.6345,0.9278,0.0575,2400.0,2400.0,0.1948,-1.3811,5.0084,45.0642 2019-06-03 15:41:30.140,135.1696,7134.3569,8.9142,20.6345,1.3128,0.1235,2400.0,2400.0,0.1918,-1.3811,5.031,45.0642 2019-06-03 15:41:30.160,135.1789,7134.4116,8.9209,20.7125,0.8879,0.095,2400.0,2400.0,0.2035,-1.3811,5.0111,45.178 2019-06-03 15:41:30.180,135.1229,7134.4116,8.9297,20.7907,1.3676,0.0826,2400.0,2400.0,0.1948,-1.3811,5.019,45.2847 2019-06-03 15:41:30.200,135.1229,7134.439,8.939,20.8332,1.2877,0.0485,2400.0,2400.0,0.186,-1.3811,5.0376,45.345 2019-06-03 15:41:30.220,135.1229,7134.3569,8.9439,20.8689,0.8335,0.1791,2400.0,2400.0,0.186,-1.3781,5.0005,45.4019 2019-06-03 15:41:30.240,135.1883,7134.3569,8.9439,20.8689,1.2703,-0.0176,2400.0,2400.0,0.1831,-1.3781,5.0257,45.4019 2019-06-03 15:41:30.260,135.1976,7134.3296,8.9439,20.8689,1.0181,0.2128,2400.0,2400.0,0.2006,-1.3781,4.9873,45.4019 2019-06-03 15:41:30.280,135.1229,7134.3843,8.9587,20.9488,1.1335,-0.0088,2400.0,2400.0,0.2094,-1.375,4.9846,45.5179 2019-06-03 15:41:30.300,135.1322,7134.9585,8.9659,21.0185,1.068,-0.0072,2400.0,2400.0,0.2035,-1.375,5.0257,45.6283 2019-06-03 15:41:30.320,135.1135,7135.915,8.9659,21.0185,1.3169,0.2389,2400.0,2400.0,0.2035,-1.3781,5.019,45.6283 2019-06-03 15:41:30.340,135.0105,7137.2549,8.9659,21.0185,0.9156,-0.0172,2400.0,2400.0,0.186,-1.3781,5.0323,45.6283 2019-06-03 15:41:30.360,135.0293,7138.1846,8.9797,21.0949,1.3905,0.1824,2400.0,2400.0,0.1918,-1.3811,5.027,45.7439 2019-06-03 15:41:30.380,134.9824,7139.5513,9.0002,21.1734,0.8077,0.0463,2400.0,2400.0,0.2035,-1.357,5.0124,45.8545 2019-06-03 15:41:30.400,134.9731,7140.3989,9.0032,21.2041,0.7378,0.0696,2340.0,2340.0,0.2094,-1.366,5.0243,45.9091 2019-06-03 15:41:30.420,134.9824,7141.2739,9.015,21.2422,1.4223,0.0936,2340.0,2340.0,0.2123,-1.372,4.9833,45.9671 2019-06-03 15:41:30.440,135.0387,7142.668,9.015,21.2422,0.9282,0.1418,2340.0,2340.0,0.2094,-1.372,4.9899,45.9671 2019-06-03 15:41:30.460,135.0387,7143.3789,9.015,21.2422,1.4504,0.0192,2340.0,2340.0,0.186,-1.372,4.9965,45.9671 2019-06-03 15:41:30.480,134.9731,7143.3242,9.0272,21.3065,0.8616,0.2232,2340.0,2340.0,0.186,-1.372,5.0164,46.0781 2019-06-03 15:41:30.500,134.9824,7143.2969,9.0471,21.3804,0.9315,0.21,2340.0,2340.0,0.1772,-1.372,5.0415,46.1935 2019-06-03 15:41:30.520,134.9543,7143.2969,9.0471,21.3804,1.1568,-0.0271,2340.0,2340.0,0.1802,-1.369,5.0177,46.1935 2019-06-03 15:41:30.540,134.71,7143.2695,9.0471,21.3804,1.1216,0.2582,2340.0,2340.0,0.1918,-1.366,5.0151,46.1935 2019-06-03 15:41:30.560,134.7383,7143.3242,9.0654,21.4519,1.0355,-0.0463,2340.0,2340.0,0.1889,-1.372,4.9899,46.3087 2019-06-03 15:41:30.580,134.6723,7143.3516,9.0791,21.5171,1.2396,0.2827,2340.0,2340.0,0.1918,-1.369,4.982,46.4121 2019-06-03 15:41:30.600,134.6817,7143.4063,9.0946,21.5573,1.3006,0.2341,2340.0,2340.0,0.186,-1.369,5.019,46.4744 2019-06-03 15:41:30.620,134.6817,7143.3789,9.0972,21.5871,0.73,-0.0229,2340.0,2340.0,0.1772,-1.369,4.9886,46.529 2019-06-03 15:41:30.640,134.7288,7143.3789,9.0972,21.5871,1.4541,0.1607,2340.0,2340.0,0.1772,-1.363,5.0151,46.529 2019-06-03 15:41:30.660,134.7477,7143.3789,9.0972,21.5871,0.7877,0.0817,2340.0,2340.0,0.1772,-1.3811,5.0257,46.529 2019-06-03 15:41:30.680,134.6817,7143.3242,9.1192,21.6596,1.3709,0.0922,2340.0,2340.0,0.1889,-1.3781,5.0111,46.6492 2019-06-03 15:41:30.700,134.6817,7143.2422,9.1313,21.7291,1.3857,0.0264,2340.0,2340.0,0.186,-1.375,5.0204,46.7659 2019-06-03 15:41:30.720,134.6629,7143.2422,9.1313,21.7291,0.8136,0.1821,2340.0,2340.0,0.1948,-1.3781,4.9939,46.7659 2019-06-03 15:41:30.740,134.578,7143.2969,9.1313,21.7291,1.3654,-0.0271,2340.0,2340.0,0.1802,-1.366,4.9753,46.7659 2019-06-03 15:41:30.760,134.5875,7143.3242,9.1417,21.7921,1.0044,0.2692,2340.0,2340.0,0.1772,-1.363,4.9912,46.8802 2019-06-03 15:41:30.780,134.5403,7143.2969,9.1616,21.8693,1.1812,-0.0495,2340.0,2340.0,0.1889,-1.363,4.9833,46.9976 2019-06-03 15:41:30.800,134.5308,7143.3242,9.1652,21.9034,1.0569,-0.0838,2340.0,2340.0,0.186,-1.366,5.0124,47.0562 2019-06-03 15:41:30.820,134.5403,7143.2969,9.1793,21.9432,1.1804,0.2642,2340.0,2340.0,0.1889,-1.366,5.0071,47.1198 2019-06-03 15:41:30.840,134.6063,7143.3516,9.1793,21.9432,0.9401,-0.0299,2340.0,2340.0,0.2006,-1.36,5.0031,47.1198 2019-06-03 15:41:30.860,134.5875,7143.3789,9.1793,21.9432,1.3154,0.2131,2340.0,2340.0,0.2065,-1.36,5.023,47.1198 2019-06-03 15:41:30.880,134.5403,7143.4336,9.1875,22.0109,0.7581,0.0538,2340.0,2340.0,0.2065,-1.36,4.9926,47.2385 2019-06-03 15:41:30.900,134.5308,7143.8711,9.1969,22.0816,0.7999,0.0616,2340.0,2340.0,0.2006,-1.36,5.0005,47.3593 2019-06-03 15:41:30.920,134.5214,7144.7188,9.1969,22.0816,1.4711,0.0966,2340.0,2340.0,0.1772,-1.36,4.978,47.3593 2019-06-03 15:41:30.940,134.4363,7146.0317,9.1969,22.0816,0.8247,0.1645,2340.0,2340.0,0.1685,-1.36,4.974,47.3593 2019-06-03 15:41:30.960,134.4458,7146.9067,9.2106,22.1563,1.352,-0.0116,2340.0,2340.0,0.1802,-1.357,4.9965,47.4846 2019-06-03 15:41:30.980,134.3795,7148.2192,9.2184,22.2272,0.8975,0.2506,2340.0,2340.0,0.1977,-1.357,4.9952,47.6046 2019-06-03 15:41:31.000,134.3795,7149.0396,9.2237,22.2623,1.0584,0.264,2340.0,2340.0,0.1977,-1.357,5.0018,47.6658 2019-06-03 15:41:31.020,134.3985,7149.8325,9.2235,22.2901,1.0443,-0.0532,2340.0,2340.0,0.2035,-1.363,5.0058,47.7263 2019-06-03 15:41:31.040,134.4363,7151.063,9.2235,22.2901,1.1812,0.2771,2340.0,2340.0,0.2006,-1.357,4.9939,47.7263 2019-06-03 15:41:31.060,134.4458,7151.7744,9.2235,22.2901,1.0151,-0.0693,2340.0,2340.0,0.1918,-1.357,5.0098,47.7263 2019-06-03 15:41:31.080,134.3795,7151.8564,9.231,22.363,1.3332,0.2604,2340.0,2340.0,0.186,-1.357,4.9648,47.8529 2019-06-03 15:41:31.100,134.389,7151.7471,9.2405,22.4334,1.3864,0.1762,2340.0,2340.0,0.1831,-1.336,4.9648,47.9812 2019-06-03 15:41:31.120,134.3701,7151.7471,9.2405,22.4334,0.8543,0.0811,2340.0,2340.0,0.1831,-1.339,4.9648,47.9812 2019-06-03 15:41:31.140,134.1139,7151.8018,9.2405,22.4334,1.5037,0.1006,2340.0,2340.0,0.1918,-1.336,4.978,47.9812 2019-06-03 15:41:31.160,134.1424,7151.8838,9.2404,22.4983,0.8276,0.155,2340.0,2340.0,0.2006,-1.333,5.0243,48.1044 2019-06-03 15:41:31.180,134.0948,7151.9385,9.2443,22.5656,1.4071,0.0244,2340.0,2340.0,0.1918,-1.333,5.0098,48.227 2019-06-03 15:41:31.200,134.0758,7151.9932,9.2475,22.6032,1.4105,-0.0228,2340.0,2340.0,0.1743,-1.339,4.9952,48.2917 2019-06-03 15:41:31.220,134.0853,7151.9932,9.2538,22.637,0.9386,0.2636,2340.0,2340.0,0.186,-1.357,4.9886,48.3588 2019-06-03 15:41:31.240,134.1519,7151.9385,9.2538,22.637,1.2766,-0.0506,2340.0,2340.0,0.1918,-1.333,4.9661,48.3588 2019-06-03 15:41:31.260,134.1519,7151.9111,9.2538,22.637,0.9149,0.246,2340.0,2340.0,0.1889,-1.327,4.9793,48.3588 2019-06-03 15:41:31.280,134.0758,7151.9111,9.2532,22.7073,1.1494,-0.064,2340.0,2340.0,0.1918,-1.33,4.9608,48.4871 2019-06-03 15:41:31.300,134.0948,7152.4033,9.2466,22.7693,1.0943,-0.0392,2340.0,2340.0,0.1772,-1.327,4.9661,48.6135 2019-06-03 15:41:31.320,134.0758,7153.2783,9.2466,22.7693,1.2648,0.2515,2340.0,2340.0,0.1831,-1.33,4.9992,48.6135 2019-06-03 15:41:31.340,133.9901,7154.646,9.2466,22.7693,0.9271,0.0076,2340.0,2340.0,0.1918,-1.327,4.9912,48.6135 2019-06-03 15:41:31.360,133.9996,7155.5488,9.2489,22.8439,1.3128,0.1656,2340.0,2340.0,0.1977,-1.33,5.0071,48.7474 2019-06-03 15:41:31.380,133.9424,7156.8618,9.2535,22.9222,0.8306,0.0437,2340.0,2340.0,0.1977,-1.327,4.9648,48.8777 2019-06-03 15:41:31.400,133.9424,7157.7915,9.2464,22.9535,0.8265,0.0822,2400.0,2340.0,0.1948,-1.327,4.9555,48.9413 2019-06-03 15:41:31.420,133.9424,7158.667,9.2491,22.9946,1.4848,0.0689,2400.0,2340.0,0.1918,-1.327,4.9634,49.0117 2019-06-03 15:41:31.440,133.9901,7159.98,9.2491,22.9946,0.774,0.1847,2400.0,2340.0,0.1889,-1.324,4.9369,49.0117 2019-06-03 15:41:31.460,133.9996,7160.6636,9.2491,22.9946,1.3184,-0.0067,2400.0,2340.0,0.1977,-1.321,4.9687,49.0117 2019-06-03 15:41:31.480,133.9424,7160.6636,9.2429,23.0646,0.9034,0.2051,2400.0,2340.0,0.1918,-1.321,4.9661,49.1452 2019-06-03 15:41:31.500,133.9424,7160.5542,9.2434,23.143,1.0569,0.2234,2400.0,2340.0,0.1948,-1.321,4.9648,49.2834 2019-06-03 15:41:31.520,133.9424,7160.5269,9.2434,23.143,1.1109,-0.0427,2400.0,2340.0,0.2035,-1.324,4.982,49.2834 2019-06-03 15:41:31.540,133.6652,7160.5269,9.2434,23.143,1.0647,0.2532,2400.0,2340.0,0.2035,-1.321,4.9502,49.2834 2019-06-03 15:41:31.560,133.694,7160.5815,9.2433,23.2182,1.0425,-0.0491,2400.0,2340.0,0.1948,-1.321,4.9475,49.4228 2019-06-03 15:41:31.580,133.6461,7160.5542,9.2353,23.2936,1.2969,0.2326,2400.0,2340.0,0.1802,-1.321,4.9303,49.555 2019-06-03 15:41:31.600,133.6269,7160.5815,9.2377,23.3351,1.3051,0.1907,2400.0,2340.0,0.1831,-1.321,4.925,49.628 2019-06-03 15:41:31.620,133.6365,7160.6089,9.2298,23.368,0.8872,0.0168,2400.0,2340.0,0.1918,-1.318,4.9475,49.6958 2019-06-03 15:41:31.640,133.694,7160.6089,9.2298,23.368,1.291,0.1753,2400.0,2340.0,0.2006,-1.2969,4.9422,49.6958 2019-06-03 15:41:31.660,133.694,7160.6089,9.2298,23.368,0.8095,0.0759,2400.0,2340.0,0.2065,-1.3089,4.9595,49.6958 2019-06-03 15:41:31.680,133.6365,7160.6362,9.2296,23.4502,1.3957,0.0926,2400.0,2340.0,0.1918,-1.315,4.9489,49.8403 2019-06-03 15:41:31.700,133.6461,7160.5815,9.218,23.5263,1.3565,0.0587,2400.0,2340.0,0.1918,-1.3089,4.9449,49.981 2019-06-03 15:41:31.720,133.6269,7160.5815,9.218,23.5263,0.8587,0.1655,2400.0,2340.0,0.1889,-1.315,4.9449,49.981 2019-06-03 15:41:31.740,133.6844,7160.6089,9.218,23.5263,1.2829,0.0044,2400.0,2340.0,0.1831,-1.318,4.9197,49.981 2019-06-03 15:41:31.760,133.7036,7160.6636,9.2054,23.6014,0.9737,0.231,2400.0,2340.0,0.1889,-1.312,4.9237,50.1235 2019-06-03 15:41:31.780,133.6461,7160.6909,9.2015,23.6879,1.0743,-0.0244,2400.0,2340.0,0.186,-1.312,4.9118,50.2682 2019-06-03 15:41:31.800,133.6269,7160.7456,9.1915,23.7252,1.108,-0.0391,2400.0,2340.0,0.1977,-1.3089,4.9211,50.3388 2019-06-03 15:41:31.820,133.6365,7160.7183,9.1925,23.7718,1.1161,0.2148,2400.0,2340.0,0.1977,-1.3059,4.9422,50.416 2019-06-03 15:41:31.840,133.694,7160.7729,9.1925,23.7718,0.9511,-0.0067,2400.0,2340.0,0.1918,-1.3089,4.9369,50.416 2019-06-03 15:41:31.860,133.7131,7160.7183,9.1925,23.7718,1.3539,0.1595,2400.0,2340.0,0.1831,-1.2999,4.9369,50.416 2019-06-03 15:41:31.880,133.6365,7160.7183,9.1731,23.8473,0.828,0.0879,2400.0,2340.0,0.1802,-1.3029,4.9277,50.5598 2019-06-03 15:41:31.900,133.6461,7161.1836,9.1551,23.9316,0.7707,0.0746,2400.0,2340.0,0.1889,-1.2999,4.9171,50.7065 2019-06-03 15:41:31.920,133.6365,7162.0591,9.1551,23.9316,1.3443,0.0694,2400.0,2340.0,0.2035,-1.3029,4.9224,50.7065 2019-06-03 15:41:31.940,133.5309,7163.3721,9.1551,23.9316,0.8247,0.1578,2400.0,2340.0,0.1889,-1.2999,4.8919,50.7065 2019-06-03 15:41:31.960,133.5309,7164.2476,9.1433,24.0177,1.372,-0.003,2400.0,2340.0,0.1948,-1.2999,4.9038,50.8586 2019-06-03 15:41:31.980,133.4829,7165.5059,9.1282,24.1044,0.936,0.2715,2400.0,2340.0,0.1948,-1.2999,4.9091,51.0028 2019-06-03 15:41:32.000,133.4829,7166.2993,9.1179,24.1462,0.9275,0.2473,2400.0,2340.0,0.1977,-1.2939,4.9118,51.0769 2019-06-03 15:41:32.020,133.4829,7167.1201,9.1055,24.187,1.1509,-0.0889,2400.0,2340.0,0.1918,-1.2969,4.9449,51.1495 2019-06-03 15:41:32.040,133.5405,7168.3789,9.1055,24.187,1.0307,0.262,2400.0,2340.0,0.1802,-1.2849,4.9264,51.1495 2019-06-03 15:41:32.060,133.5502,7169.0625,9.1055,24.187,0.9833,-0.0485,2400.0,2340.0,0.1831,-1.2608,4.9184,51.1495 2019-06-03 15:41:32.080,133.4733,7169.0898,9.0906,24.2739,1.193,0.2582,2400.0,2340.0,0.2006,-1.2729,4.9052,51.3009 2019-06-03 15:41:32.100,133.4829,7168.9805,9.0779,24.3624,1.2588,0.2136,2400.0,2340.0,0.2006,-1.2729,4.8813,51.4546 2019-06-03 15:41:32.120,133.4733,7168.8984,9.0779,24.3624,0.7814,0.0315,2400.0,2340.0,0.2035,-1.2759,4.9012,51.4546 2019-06-03 15:41:32.140,133.3771,7168.8711,9.0779,24.3624,1.3491,0.1156,2400.0,2340.0,0.1977,-1.2849,4.8919,51.4546 2019-06-03 15:41:32.160,133.3964,7168.9258,9.0561,24.4466,0.8224,0.1098,2400.0,2340.0,0.1831,-1.2729,4.9131,51.6034 2019-06-03 15:41:32.180,133.3386,7169.0078,9.0375,24.532,1.3343,0.0463,2400.0,2340.0,0.186,-1.2759,4.933,51.7494 2019-06-03 15:41:32.200,133.3482,7169.0078,9.0308,24.577,1.3565,0.0357,2400.0,2340.0,0.186,-1.2759,4.9303,51.8268 2019-06-03 15:41:32.220,133.3482,7169.0352,9.0232,24.6209,0.8909,0.2036,2400.0,2340.0,0.186,-1.2789,4.9369,51.9035 2019-06-03 15:41:32.240,133.3964,7169.0078,9.0232,24.6209,1.2929,-0.034,2400.0,2340.0,0.1918,-1.2819,4.9065,51.9035 2019-06-03 15:41:32.260,133.406,7168.9805,9.0232,24.6209,0.9489,0.2343,2400.0,2340.0,0.1948,-1.2789,4.888,51.9035 2019-06-03 15:41:32.280,133.3386,7169.0078,9.0049,24.7054,1.1031,-0.0401,2400.0,2340.0,0.2094,-1.2729,4.9052,52.0543 2019-06-03 15:41:32.300,133.3482,7168.9531,8.9827,24.7864,1.1013,0.0003,2400.0,2340.0,0.2035,-1.2759,4.9025,52.2034 2019-06-03 15:41:32.320,133.3289,7168.9531,8.9827,24.7864,1.1257,0.21,2400.0,2340.0,0.1918,-1.2759,4.925,52.2034 2019-06-03 15:41:32.340,133.2325,7168.9531,8.9827,24.7864,1.0251,-0.0017,2400.0,2340.0,0.1714,-1.2759,4.9158,52.2034 2019-06-03 15:41:32.360,133.2325,7169.0078,8.9647,24.8704,1.2385,0.2012,2400.0,2340.0,0.1772,-1.2759,4.9184,52.3553 2019-06-03 15:41:32.380,133.1842,7168.9805,8.9497,24.9578,0.9045,0.0073,2400.0,2340.0,0.1918,-1.2789,4.9422,52.5042 2019-06-03 15:41:32.400,133.1842,7168.9805,8.9344,24.9934,0.9164,0.0442,2340.0,2400.0,0.2094,-1.2759,4.9264,52.5761 2019-06-03 15:41:32.420,133.1842,7168.9531,8.9282,25.0403,1.3443,0.1078,2340.0,2400.0,0.2065,-1.2759,4.9211,52.6532 2019-06-03 15:41:32.440,133.2422,7168.9805,8.9282,25.0403,0.9704,0.1284,2340.0,2400.0,0.2123,-1.2819,4.9131,52.6532 2019-06-03 15:41:32.460,133.2422,7168.9805,8.9282,25.0403,1.2888,0.0662,2340.0,2400.0,0.1977,-1.2729,4.8959,52.6532 2019-06-03 15:41:32.480,133.1746,7168.9258,8.9088,25.1198,0.9404,0.1541,2340.0,2400.0,0.2123,-1.2819,4.933,52.801 2019-06-03 15:41:32.500,133.1939,7169.4185,8.8952,25.2067,0.9068,0.1815,2340.0,2400.0,0.2035,-1.2939,4.9237,52.9529 2019-06-03 15:41:32.520,133.1746,7170.3486,8.8952,25.2067,1.2537,-0.0025,2340.0,2400.0,0.1918,-1.2638,4.929,52.9529 2019-06-03 15:41:32.540,133.0876,7171.7168,8.8952,25.2067,1.007,0.2326,2340.0,2400.0,0.1889,-1.2879,4.9475,52.9529 2019-06-03 15:41:32.560,133.0876,7172.6201,8.8825,25.2918,1.0543,0.0043,2340.0,2400.0,0.1889,-1.2879,4.9264,53.1037 2019-06-03 15:41:32.580,133.0295,7173.9883,8.8825,25.2918,1.1183,0.1716,2340.0,2400.0,0.2094,-1.2909,4.9449,53.1037 2019-06-03 15:41:32.600,133.0295,7174.8911,8.8579,25.4198,1.0832,0.1846,2340.0,2400.0,0.2094,-1.2849,4.9038,53.3231 2019-06-03 15:41:32.620,133.0489,7175.7124,8.8469,25.4577,0.9482,0.021,2340.0,2400.0,0.2123,-1.2819,4.8946,53.3948 2019-06-03 15:41:32.640,133.0876,7177.1079,8.8469,25.4577,1.2049,0.1901,2340.0,2400.0,0.2065,-1.2999,4.9105,53.3948 2019-06-03 15:41:32.660,133.0973,7177.8193,8.8469,25.4577,0.8609,0.0618,2340.0,2400.0,0.1977,-1.2879,4.9171,53.3948 2019-06-03 15:41:32.680,133.0295,7177.7373,8.8385,25.5453,1.2692,0.0698,2340.0,2400.0,0.1948,-1.2879,4.9462,53.5454 2019-06-03 15:41:32.700,133.0489,7177.6001,8.8262,25.6292,1.2725,0.0891,2340.0,2400.0,0.1889,-1.2909,4.9462,53.6934 2019-06-03 15:41:32.720,133.0198,7177.6001,8.8262,25.6292,0.9068,0.1299,2340.0,2400.0,0.1802,-1.2909,4.9277,53.6934 2019-06-03 15:41:32.740,132.9229,7177.6279,8.8262,25.6292,1.1464,0.053,2340.0,2400.0,0.2006,-1.2999,4.9475,53.6934 2019-06-03 15:41:32.760,132.9326,7177.6826,8.8137,25.7115,1.0447,0.2019,2340.0,2400.0,0.1977,-1.2969,4.9078,53.8387 2019-06-03 15:41:32.780,132.8744,7177.7373,8.8037,25.7989,1.0133,-0.0191,2340.0,2400.0,0.2065,-1.327,4.9131,53.9841 2019-06-03 15:41:32.800,132.8841,7177.7646,8.7976,25.8382,1.0344,0.002,2340.0,2400.0,0.1918,-1.324,4.8906,54.0558 2019-06-03 15:41:32.820,132.8841,7177.71,8.7953,25.8823,1.1701,0.2019,2340.0,2400.0,0.186,-1.321,4.8933,54.1318 2019-06-03 15:41:32.840,132.9423,7177.7373,8.7953,25.8823,0.9153,0.0419,2340.0,2400.0,0.1948,-1.324,4.9343,54.1318 2019-06-03 15:41:32.860,132.9423,7177.7373,8.7953,25.8823,1.2655,0.1598,2340.0,2400.0,0.1918,-1.327,4.925,54.1318 2019-06-03 15:41:32.880,132.8744,7177.8193,8.783,25.9631,0.8602,0.0484,2340.0,2400.0,0.1977,-1.36,4.9396,54.2756 2019-06-03 15:41:32.900,132.8841,7177.7646,8.7721,26.0401,0.8476,0.1064,2340.0,2400.0,0.1918,-1.375,4.9264,54.4212 2019-06-03 15:41:32.920,132.8744,7177.7646,8.7721,26.0401,1.3458,0.0656,2340.0,2400.0,0.1918,-1.3901,4.9131,54.4212 2019-06-03 15:41:32.940,132.6019,7177.792,8.7721,26.0401,0.9441,0.1547,2340.0,2400.0,0.1948,-1.4291,4.9237,54.4212 2019-06-03 15:41:32.960,132.6312,7177.7646,8.7652,26.1215,1.2115,0.0261,2340.0,2400.0,0.1977,-1.4261,4.9065,54.5679 2019-06-03 15:41:32.980,132.5727,7177.792,8.7652,26.1215,1.1172,0.219,2340.0,2400.0,0.2006,-1.4471,4.9052,54.5679 2019-06-03 15:41:33.000,132.5629,7177.8467,8.7515,26.2337,1.0662,0.2494,2340.0,2400.0,0.2065,-1.4681,4.9038,54.7803 2019-06-03 15:41:33.020,132.5727,7177.8467,8.7407,26.2627,1.0739,-0.0291,2340.0,2400.0,0.2065,-1.4891,4.8946,54.8474 2019-06-03 15:41:33.040,132.6409,7177.8193,8.7407,26.2627,1.2226,0.2101,2340.0,2400.0,0.2035,-1.5251,4.9158,54.8474 2019-06-03 15:41:33.060,132.6409,7177.7646,8.7407,26.2627,0.8402,0.0366,2340.0,2400.0,0.1918,-1.534,4.8919,54.8474 2019-06-03 15:41:33.080,132.5727,7177.792,8.7348,26.3367,1.3831,0.17,2340.0,2400.0,0.1889,-1.534,4.9038,54.9919 2019-06-03 15:41:33.100,132.5824,7178.2573,8.7272,26.4055,1.3506,0.1804,2340.0,2400.0,0.1918,-1.537,4.9105,55.1339 2019-06-03 15:41:33.120,132.5629,7179.1055,8.7272,26.4055,0.8125,0.1016,2340.0,2400.0,0.1918,-1.537,4.8972,55.1339 2019-06-03 15:41:33.140,132.4652,7180.5015,8.7272,26.4055,1.3528,0.0527,2340.0,2400.0,0.2094,-1.546,4.9144,55.1339 2019-06-03 15:41:33.160,132.475,7181.4048,8.7117,26.4624,0.8354,0.1798,2340.0,2400.0,0.2094,-1.564,4.8972,55.2692 2019-06-03 15:41:33.180,132.4163,7182.6914,8.7117,26.4624,1.3472,0.0049,2340.0,2400.0,0.1918,-1.558,4.8946,55.2692 2019-06-03 15:41:33.200,132.4261,7183.6221,8.7006,26.5525,1.2466,0.0189,2340.0,2400.0,0.186,-1.561,4.9078,55.478 2019-06-03 15:41:33.220,132.4261,7184.4976,8.6963,26.5798,0.9119,0.2232,2340.0,2400.0,0.186,-1.558,4.8893,55.5473 2019-06-03 15:41:33.240,132.4848,7185.7021,8.6963,26.5798,1.0673,-0.0625,2340.0,2400.0,0.1802,-1.576,4.9052,55.5473 2019-06-03 15:41:33.260,132.4946,7186.4136,8.6963,26.5798,1.1531,0.2682,2340.0,2400.0,0.1948,-1.6059,4.9025,55.5473 2019-06-03 15:41:33.280,132.4163,7186.5229,8.6851,26.6278,0.9142,-0.0414,2340.0,2400.0,0.2123,-1.6059,4.9012,55.6834 2019-06-03 15:41:33.300,132.4261,7186.4409,8.6705,26.6707,0.9682,0.0009,2340.0,2400.0,0.2065,-1.6628,4.8893,55.8185 2019-06-03 15:41:33.320,132.4066,7186.4136,8.6705,26.6707,1.2566,0.2088,2340.0,2400.0,0.2211,-1.6568,4.884,55.8185 2019-06-03 15:41:33.340,132.3086,7186.4409,8.6705,26.6707,0.8062,0.032,2340.0,2400.0,0.1977,-1.6957,4.8972,55.8185 2019-06-03 15:41:33.360,132.3282,7186.3862,8.661,26.7164,1.3868,0.1368,2340.0,2400.0,0.1889,-1.7166,4.8999,55.9557 2019-06-03 15:41:33.380,132.2694,7186.3589,8.661,26.7164,0.8043,0.1056,2340.0,2400.0,0.1772,-1.6867,4.8959,55.9557 2019-06-03 15:41:33.400,132.2596,7186.4136,8.6435,26.7716,0.7807,0.1519,2340.0,2340.0,0.186,-1.6867,4.9078,56.1588 2019-06-03 15:41:33.420,132.2694,7186.3862,8.637,26.7908,1.3421,0.0285,2340.0,2340.0,0.1977,-1.6897,4.8933,56.2263 2019-06-03 15:41:33.440,132.3184,7186.3589,8.637,26.7908,0.8358,0.2055,2340.0,2340.0,0.1977,-1.6927,4.9065,56.2263 2019-06-03 15:41:33.460,132.338,7186.3042,8.637,26.7908,1.2688,-0.047,2340.0,2340.0,0.1889,-1.6897,4.9052,56.2263 2019-06-03 15:41:33.480,132.2694,7186.3315,8.6227,26.8205,1.0151,0.2541,2340.0,2340.0,0.1655,-1.6867,4.8919,56.3614 2019-06-03 15:41:33.500,132.2792,7186.2222,8.6142,26.8527,1.0662,0.2409,2340.0,2340.0,0.1831,-1.6957,4.9105,56.5004 2019-06-03 15:41:33.520,132.2498,7186.2222,8.6142,26.8527,0.9153,-0.0262,2340.0,2340.0,0.1772,-1.6927,4.8893,56.5004 2019-06-03 15:41:33.540,131.9942,7186.2769,8.6142,26.8527,1.26,0.2416,2340.0,2340.0,0.1977,-1.6927,4.888,56.5004 2019-06-03 15:41:33.560,132.0139,7186.3315,8.6002,26.8779,0.7788,-0.0294,2340.0,2340.0,0.186,-1.7525,4.884,56.637 2019-06-03 15:41:33.580,131.9548,7186.3589,8.5799,26.8949,1.2995,0.1893,2340.0,2340.0,0.1918,-1.7555,4.8906,56.7699 2019-06-03 15:41:33.600,131.9646,7186.3315,8.5786,26.9105,1.4105,0.1578,2340.0,2340.0,0.1918,-1.7973,4.9038,56.8436 2019-06-03 15:41:33.620,131.9646,7186.2769,8.5653,26.9109,0.6882,0.0887,2340.0,2340.0,0.186,-1.7883,4.8999,56.9094 2019-06-03 15:41:33.640,132.0139,7186.2495,8.5653,26.9109,1.5,0.0825,2340.0,2340.0,0.1831,-1.7764,4.9038,56.9094 2019-06-03 15:41:33.660,132.0336,7186.2495,8.5653,26.9109,0.7015,0.1323,2340.0,2340.0,0.1714,-1.7764,4.8946,56.9094 2019-06-03 15:41:33.680,131.9548,7186.2769,8.5551,26.9278,1.3191,0.0156,2340.0,2340.0,0.1772,-1.7823,4.8827,57.0501 2019-06-03 15:41:33.700,131.9646,7186.8242,8.5338,26.9349,1.2511,-0.0584,2340.0,2340.0,0.1918,-1.7794,4.8959,57.1852 2019-06-03 15:41:33.720,131.9449,7187.7275,8.5338,26.9349,0.8561,0.2748,2340.0,2340.0,0.2065,-1.7794,4.8999,57.1852 2019-06-03 15:41:33.740,131.8561,7189.042,8.5338,26.9349,1.0843,-0.0911,2340.0,2340.0,0.1831,-1.7853,4.8866,57.1852 2019-06-03 15:41:33.760,131.866,7190.0,8.514,26.937,1.0591,0.2935,2340.0,2340.0,0.1802,-1.8062,4.9012,57.3203 2019-06-03 15:41:33.780,131.8067,7191.314,8.514,26.937,0.909,-0.0686,2340.0,2340.0,0.1685,-1.8062,4.8655,57.3203 2019-06-03 15:41:33.800,131.8067,7192.1899,8.4864,26.9424,0.9393,-0.09,2340.0,2340.0,0.1948,-1.8062,4.8986,57.5288 2019-06-03 15:41:33.820,131.8067,7193.1211,8.4847,26.9502,1.3088,0.2581,2340.0,2340.0,0.1802,-1.8062,4.8893,57.6026 2019-06-03 15:41:33.840,131.866,7194.4624,8.4847,26.9502,0.7995,-0.0168,2340.0,2340.0,0.1802,-1.8092,4.9052,57.6026 2019-06-03 15:41:33.860,131.866,7195.2017,8.4847,26.9502,1.4083,0.1849,2340.0,2340.0,0.1714,-1.8122,4.9118,57.6026 2019-06-03 15:41:33.880,131.8067,7195.2017,8.4605,26.9473,0.6978,0.0901,2340.0,2340.0,0.1685,-1.8092,4.8893,57.7373 2019-06-03 15:41:33.900,131.8166,7195.0923,8.4406,26.9467,0.7278,0.0861,2340.0,2340.0,0.186,-1.8092,4.8933,57.8759 2019-06-03 15:41:33.920,131.7968,7195.0923,8.4406,26.9467,1.4782,0.0172,2340.0,2340.0,0.1714,-1.8062,4.8747,57.8759 2019-06-03 15:41:33.940,131.688,7195.1196,8.4406,26.9467,0.8491,0.2181,2340.0,2340.0,0.1772,-1.8092,4.8747,57.8759 2019-06-03 15:41:33.960,131.6979,7195.1743,8.4248,26.953,1.2326,-0.0204,2340.0,2340.0,0.1626,-1.8212,4.88,58.0188 2019-06-03 15:41:33.980,131.6484,7195.147,8.4248,26.953,0.8372,0.2645,2340.0,2340.0,0.1685,-1.8062,4.8787,58.0188 2019-06-03 15:41:34.000,131.6385,7195.2017,8.3902,26.953,0.9767,0.2572,2340.0,2340.0,0.1655,-1.7943,4.8853,58.2304 2019-06-03 15:41:34.020,131.6484,7195.147,8.3744,26.9506,1.0059,-0.0828,2340.0,2340.0,0.1772,-1.7973,4.8972,58.2981 2019-06-03 15:41:34.040,131.7078,7195.0923,8.3744,26.9506,1.2533,0.2716,2340.0,2340.0,0.1948,-1.7973,4.888,58.2981 2019-06-03 15:41:34.060,131.7276,7195.0371,8.3744,26.9506,0.889,-0.0055,2340.0,2340.0,0.1948,-1.7973,4.8999,58.2981 2019-06-03 15:41:34.080,131.6385,7195.0923,8.3549,26.9543,1.3299,0.2213,2340.0,2340.0,0.186,-1.7973,4.8774,58.4441 2019-06-03 15:41:34.100,131.6484,7195.0371,8.333,26.9574,1.4881,0.1772,2340.0,2340.0,0.1743,-1.7973,4.88,58.5897 2019-06-03 15:41:34.120,131.6385,7195.0649,8.333,26.9574,0.7596,0.0492,2340.0,2340.0,0.1626,-1.7973,4.88,58.5897 2019-06-03 15:41:34.140,131.3604,7195.147,8.333,26.9574,1.3946,0.0975,2340.0,2340.0,0.1685,-1.7943,4.8668,58.5897 2019-06-03 15:41:34.160,131.4002,7195.1743,8.3012,26.9484,0.8335,0.1745,2340.0,2340.0,0.1889,-1.7913,4.8933,58.7309 2019-06-03 15:41:34.180,131.3405,7195.2017,8.3012,26.9484,1.3779,0.0144,2340.0,2340.0,0.186,-1.7943,4.8906,58.7309 2019-06-03 15:41:34.200,131.3305,7195.2017,8.2617,26.9467,1.3358,-0.0458,2340.0,2340.0,0.186,-1.7973,4.8972,58.9525 2019-06-03 15:41:34.220,131.3405,7195.229,8.2517,26.9473,0.9119,0.2634,2340.0,2340.0,0.1685,-1.7943,4.8986,59.0281 2019-06-03 15:41:34.240,131.4002,7195.2563,8.2517,26.9473,1.1316,-0.0508,2340.0,2340.0,0.1626,-1.7943,4.8707,59.0281 2019-06-03 15:41:34.260,131.3902,7195.2837,8.2517,26.9473,1.048,0.2677,2340.0,2340.0,0.1655,-1.7943,4.88,59.0281 2019-06-03 15:41:34.280,131.3205,7195.311,8.222,26.9446,0.9693,-0.0259,2340.0,2340.0,0.1714,-1.7913,4.8694,59.175 2019-06-03 15:41:34.300,131.3405,7195.8042,8.1894,26.9343,0.8868,-0.0539,2340.0,2340.0,0.1772,-1.7794,4.8694,59.321 2019-06-03 15:41:34.320,131.3305,7196.5981,8.1894,26.9343,1.2337,0.2421,2340.0,2340.0,0.1743,-1.7823,4.8866,59.321 2019-06-03 15:41:34.340,131.2308,7197.7754,8.1894,26.9343,0.7877,0.0372,2340.0,2340.0,0.1743,-1.7584,4.88,59.321 2019-06-03 15:41:34.360,131.2408,7198.6519,8.1615,26.9332,1.4123,0.1314,2340.0,2340.0,0.1831,-1.7555,4.9038,59.4723 2019-06-03 15:41:34.380,131.1709,7199.8291,8.1615,26.9332,0.693,0.1184,2340.0,2340.0,0.1743,-1.6927,4.8972,59.4723 2019-06-03 15:41:34.400,131.1809,7200.7056,8.1129,26.9245,0.6368,0.1116,2400.0,2340.0,0.1655,-1.6538,4.8747,59.6987 2019-06-03 15:41:34.420,131.1909,7201.4722,8.0977,26.9254,1.4378,0.0555,2400.0,2340.0,0.1802,-1.6568,4.88,59.7752 2019-06-03 15:41:34.440,131.2308,7202.7046,8.0977,26.9254,0.7477,0.2106,2400.0,2340.0,0.1772,-1.6388,4.8469,59.7752 2019-06-03 15:41:34.460,131.2607,7203.2798,8.0977,26.9254,1.2267,-0.0598,2400.0,2340.0,0.1889,-1.6239,4.8774,59.7752 2019-06-03 15:41:34.480,131.1809,7203.2246,8.0634,26.921,0.8857,0.304,2400.0,2340.0,0.1772,-1.6239,4.884,59.9243 2019-06-03 15:41:34.500,131.1809,7203.1699,8.0358,26.9277,1.017,0.2612,2400.0,2340.0,0.1655,-1.6089,4.8774,60.0803 2019-06-03 15:41:34.520,131.1709,7203.1699,8.0358,26.9277,0.9863,-0.0375,2400.0,2340.0,0.1685,-1.591,4.8986,60.0803 2019-06-03 15:41:34.540,131.0609,7203.2246,8.0358,26.9277,1.2108,0.2626,2400.0,2340.0,0.1772,-1.591,4.8813,60.0803 2019-06-03 15:41:34.560,131.071,7203.2798,8.0033,26.9372,0.8402,-0.0528,2400.0,2340.0,0.186,-1.585,4.8893,60.2342 2019-06-03 15:41:34.580,131.0309,7203.2246,8.0033,26.9372,1.3165,0.2076,2400.0,2340.0,0.1831,-1.582,4.884,60.2342 2019-06-03 15:41:34.600,131.0209,7203.1973,7.9507,26.948,1.3772,0.1669,2400.0,2340.0,0.1451,-1.537,4.8456,60.4659 2019-06-03 15:41:34.620,131.0309,7203.1699,7.9282,26.9516,0.72,0.0846,2400.0,2340.0,0.1626,-1.534,4.8602,60.5428 2019-06-03 15:41:34.640,131.081,7203.2798,7.9282,26.9516,1.3605,0.0897,2400.0,2340.0,0.1743,-1.531,4.8575,60.5428 2019-06-03 15:41:34.660,131.081,7203.252,7.9282,26.9516,0.7071,0.1623,2400.0,2340.0,0.1655,-1.531,4.8721,60.5428 2019-06-03 15:41:34.680,131.0109,7203.252,7.8962,26.9685,1.355,-0.0418,2400.0,2340.0,0.1802,-1.534,4.8919,60.7015 2019-06-03 15:41:34.700,131.0209,7203.2246,7.8529,26.9812,1.2659,-0.0675,2400.0,2340.0,0.1743,-1.531,4.8681,60.8549 2019-06-03 15:41:34.720,131.0109,7203.1973,7.8529,26.9812,0.983,0.2756,2400.0,2340.0,0.1831,-1.531,4.8919,60.8549 2019-06-03 15:41:34.740,131.091,7203.1699,7.8529,26.9812,1.0314,-0.05,2400.0,2340.0,0.1772,-1.5071,4.8668,60.8549 2019-06-03 15:41:34.760,131.081,7203.2246,7.8167,26.994,0.9963,0.2677,2400.0,2340.0,0.1772,-1.4741,4.8588,61.0114 2019-06-03 15:41:34.780,131.0209,7203.1973,7.7848,27.0215,0.8931,-0.063,2400.0,2340.0,0.1714,-1.4801,4.8522,61.1762 2019-06-03 15:41:34.800,131.0109,7203.1973,7.7612,27.0292,0.818,-0.0155,2400.0,2340.0,0.1772,-1.4741,4.8482,61.2518 2019-06-03 15:41:34.820,131.0209,7203.1973,7.7491,27.0478,1.2459,0.1996,2400.0,2340.0,0.186,-1.4711,4.8707,61.3362 2019-06-03 15:41:34.840,131.071,7203.2798,7.7491,27.0478,0.7807,0.0591,2400.0,2340.0,0.186,-1.4681,4.8933,61.3362 2019-06-03 15:41:34.860,131.091,7203.252,7.7491,27.0478,1.4523,0.1136,2400.0,2340.0,0.1772,-1.4681,4.8959,61.3362 2019-06-03 15:41:34.880,131.0209,7203.252,7.7064,27.072,0.6412,0.1137,2400.0,2340.0,0.1772,-1.4681,4.8959,61.4905 2019-06-03 15:41:34.900,131.0209,7203.8271,7.6698,27.1021,0.7415,0.1576,2400.0,2340.0,0.1743,-1.4681,4.8641,61.6501 2019-06-03 15:41:34.920,131.0209,7204.731,7.6698,27.1021,1.3624,-0.0195,2400.0,2340.0,0.1743,-1.4681,4.8628,61.6501 2019-06-03 15:41:34.940,130.9107,7206.1553,7.6698,27.1021,0.7378,0.2648,2400.0,2340.0,0.1802,-1.4681,4.8575,61.6501 2019-06-03 15:41:34.960,130.9107,7207.1138,7.6383,27.1445,1.2463,-0.0773,2400.0,2340.0,0.1948,-1.4591,4.8602,61.8135 2019-06-03 15:41:34.980,130.8605,7208.4834,7.5984,27.1828,1.014,0.2865,2400.0,2340.0,0.1802,-1.4531,4.8575,61.97 2019-06-03 15:41:35.000,130.8705,7209.3325,7.5807,27.2031,0.9867,0.2576,2400.0,2340.0,0.1889,-1.4321,4.8694,62.0505 2019-06-03 15:41:35.020,130.8705,7210.1543,7.5558,27.2185,0.9267,-0.0655,2400.0,2340.0,0.1831,-1.4291,4.88,62.1257 2019-06-03 15:41:35.040,130.9307,7211.4961,7.5558,27.2185,1.1327,0.2648,2400.0,2340.0,0.1889,-1.4261,4.8774,62.1257 2019-06-03 15:41:35.060,130.9307,7212.1812,7.5558,27.2185,0.8306,-0.0131,2400.0,2340.0,0.1772,-1.4111,4.8549,62.1257 2019-06-03 15:41:35.080,130.8605,7212.2085,7.5239,27.2681,1.3765,0.1819,2400.0,2340.0,0.148,-1.4141,4.839,62.2883 2019-06-03 15:41:35.100,130.8605,7212.1538,7.4895,27.3161,1.3642,0.1627,2400.0,2340.0,0.1714,-1.4111,4.8443,62.45 2019-06-03 15:41:35.120,130.8505,7212.2085,7.4895,27.3161,0.7233,0.0864,2400.0,2340.0,0.1918,-1.4141,4.8615,62.45 2019-06-03 15:41:35.140,130.75,7212.1538,7.4895,27.3161,1.3742,0.0426,2400.0,2340.0,0.186,-1.4111,4.8628,62.45 2019-06-03 15:41:35.160,130.76,7212.126,7.4482,27.3588,0.7396,0.1977,2400.0,2340.0,0.1802,-1.4111,4.8615,62.6061 2019-06-03 15:41:35.180,130.7097,7212.1538,7.4147,27.4129,1.3095,-0.0116,2400.0,2340.0,0.1597,-1.4111,4.8615,62.7643 2019-06-03 15:41:35.200,130.6997,7212.1812,7.3964,27.4394,1.2219,-0.0326,2400.0,2340.0,0.1772,-1.4081,4.8522,62.8443 2019-06-03 15:41:35.220,130.7097,7212.1812,7.3827,27.4741,0.9682,0.2525,2400.0,2340.0,0.1743,-1.4051,4.8469,62.9265 2019-06-03 15:41:35.240,130.76,7212.2358,7.3827,27.4741,1.051,-0.0789,2400.0,2340.0,0.1685,-1.4111,4.8456,62.9265 2019-06-03 15:41:35.260,130.76,7212.2085,7.3827,27.4741,1.2396,0.2425,2400.0,2340.0,0.1772,-1.4051,4.8456,62.9265 2019-06-03 15:41:35.280,130.6997,7212.0986,7.3452,27.5301,0.8354,-0.0216,2400.0,2340.0,0.1685,-1.4051,4.8535,63.083 2019-06-03 15:41:35.300,130.7097,7212.0439,7.3084,27.5876,0.7795,-0.0099,2400.0,2340.0,0.1802,-1.4111,4.8602,63.2395 2019-06-03 15:41:35.320,130.6896,7212.0986,7.3084,27.5876,1.338,0.1543,2400.0,2340.0,0.1743,-1.4051,4.8602,63.2395 2019-06-03 15:41:35.340,130.5889,7212.2085,7.3084,27.5876,0.706,0.0523,2400.0,2340.0,0.1714,-1.4081,4.8655,63.2395 2019-06-03 15:41:35.360,130.5989,7212.2632,7.2781,27.653,1.4264,0.0762,2400.0,2340.0,0.1597,-1.4081,4.8429,63.3986 2019-06-03 15:41:35.380,130.5384,7212.2905,7.2454,27.726,0.7466,0.1367,2400.0,2340.0,0.1831,-1.4381,4.8562,63.5538 2019-06-03 15:41:35.400,130.5485,7212.2905,7.2234,27.7525,0.6642,0.2146,2340.0,2400.0,0.1831,-1.4351,4.8456,63.6272 2019-06-03 15:41:35.420,130.5586,7212.2358,7.206,27.7835,1.3014,-0.0731,2340.0,2400.0,0.1831,-1.4321,4.8509,63.7033 2019-06-03 15:41:35.440,130.609,7212.2085,7.206,27.7835,0.9042,0.2822,2340.0,2400.0,0.1685,-1.4291,4.8602,63.7033 2019-06-03 15:41:35.460,130.6191,7212.1538,7.206,27.7835,1.0743,-0.0903,2340.0,2400.0,0.1743,-1.4261,4.8615,63.7033 2019-06-03 15:41:35.480,130.5384,7212.1538,7.1714,27.8514,1.1287,0.2659,2340.0,2400.0,0.1889,-1.4291,4.8747,63.858 2019-06-03 15:41:35.500,130.5485,7212.0439,7.1421,27.9219,1.0802,0.2977,2340.0,2400.0,0.1772,-1.4261,4.8628,64.0132 2019-06-03 15:41:35.520,130.5283,7212.0713,7.1421,27.9219,0.8983,-0.0631,2340.0,2400.0,0.1743,-1.4291,4.8535,64.0132 2019-06-03 15:41:35.540,130.6191,7212.0986,7.1421,27.9219,1.2747,0.2425,2340.0,2400.0,0.1626,-1.4291,4.8443,64.0132 2019-06-03 15:41:35.560,130.609,7212.0986,7.1024,27.9903,0.7008,0.0328,2340.0,2400.0,0.1597,-1.4261,4.835,64.1644 2019-06-03 15:41:35.580,130.5586,7212.0986,7.0632,28.0502,1.3798,0.1168,2340.0,2400.0,0.1685,-1.4321,4.8562,64.31 2019-06-03 15:41:35.600,130.5384,7212.126,7.0511,28.0898,1.416,0.1073,2340.0,2400.0,0.1685,-1.4261,4.8602,64.3887 2019-06-03 15:41:35.620,130.5485,7212.126,7.0306,28.1206,0.706,0.1244,2340.0,2400.0,0.1831,-1.4261,4.8668,64.4608 2019-06-03 15:41:35.640,130.609,7212.1538,7.0306,28.1206,1.3254,0.0327,2340.0,2400.0,0.186,-1.4261,4.8615,64.4608 2019-06-03 15:41:35.660,130.609,7212.1812,7.0306,28.1206,0.7463,0.228,2340.0,2400.0,0.1714,-1.4261,4.839,64.4608 2019-06-03 15:41:35.680,130.5384,7212.1538,6.9998,28.1874,1.2233,-0.0526,2340.0,2400.0,0.1685,-1.4261,4.8429,64.6103 2019-06-03 15:41:35.700,130.5586,7212.6738,6.9583,28.25,1.274,-0.0677,2340.0,2400.0,0.1597,-1.4261,4.8469,64.7528 2019-06-03 15:41:35.720,130.5384,7213.4961,6.9583,28.25,0.9597,0.2743,2340.0,2400.0,0.1597,-1.4261,4.8456,64.7528 2019-06-03 15:41:35.740,130.609,7214.7837,6.9583,28.25,1.0917,-0.0558,2340.0,2400.0,0.1743,-1.4291,4.8522,64.7528 2019-06-03 15:41:35.760,130.609,7215.6602,6.9218,28.3151,1.0806,0.2749,2340.0,2400.0,0.1772,-1.4291,4.8482,64.8962 2019-06-03 15:41:35.780,130.5485,7217.0024,6.8914,28.3898,0.8162,-0.0641,2340.0,2400.0,0.186,-1.4261,4.8588,65.0405 2019-06-03 15:41:35.800,130.5384,7217.9067,6.869,28.4165,0.7977,-0.0425,2340.0,2400.0,0.1802,-1.4231,4.8522,65.1086 2019-06-03 15:41:35.820,130.5586,7218.7285,6.8559,28.4549,1.3439,0.1743,2340.0,2400.0,0.1743,-1.4231,4.8284,65.1843 2019-06-03 15:41:35.840,130.609,7219.9336,6.8559,28.4549,0.7673,0.0421,2340.0,2400.0,0.1743,-1.4231,4.8363,65.1843 2019-06-03 15:41:35.860,130.6191,7220.5913,6.8559,28.4549,1.2685,0.1568,2340.0,2400.0,0.1714,-1.4231,4.8284,65.1843 2019-06-03 15:41:35.880,130.5485,7220.6187,6.8187,28.5182,0.7836,0.079,2340.0,2400.0,0.1802,-1.4261,4.8588,65.3237 2019-06-03 15:41:35.900,130.5384,7220.5913,6.7867,28.5875,0.7244,0.1311,2340.0,2400.0,0.1772,-1.4231,4.8522,65.4684 2019-06-03 15:41:35.920,130.5384,7220.6187,6.7867,28.5875,1.3639,-0.0055,2340.0,2400.0,0.1831,-1.4231,4.8443,65.4684 2019-06-03 15:41:35.940,130.4374,7220.646,6.7867,28.5875,0.8176,0.251,2340.0,2400.0,0.1831,-1.4231,4.8456,65.4684 2019-06-03 15:41:35.960,130.4374,7220.6733,6.7597,28.6555,1.1272,-0.0542,2340.0,2400.0,0.1772,-1.4261,4.8244,65.6118 2019-06-03 15:41:35.980,130.3969,7220.5913,6.7248,28.7185,0.9434,0.2355,2340.0,2400.0,0.186,-1.4351,4.8443,65.7499 2019-06-03 15:41:36.000,130.3868,7220.6187,6.7132,28.7508,0.9985,0.289,2340.0,2400.0,0.1655,-1.4651,4.8403,65.8225 2019-06-03 15:41:36.020,130.3868,7220.6187,6.6892,28.776,1.0059,-0.0734,2340.0,2400.0,0.1626,-1.4651,4.8324,65.8867 2019-06-03 15:41:36.040,130.4475,7220.6187,6.6892,28.776,1.2466,0.2497,2340.0,2400.0,0.1685,-1.4711,4.8562,65.8867 2019-06-03 15:41:36.060,130.4475,7220.5913,6.6892,28.776,0.8524,0.0025,2340.0,2400.0,0.1714,-1.4651,4.8416,65.8867 2019-06-03 15:41:36.080,130.3666,7220.646,6.6632,28.8409,1.2049,0.1384,2340.0,2400.0,0.1889,-1.4681,4.835,66.0288 2019-06-03 15:41:36.100,130.3969,7220.564,6.6341,28.9016,1.2711,0.1671,2340.0,2400.0,0.1889,-1.4681,4.8416,66.1691 2019-06-03 15:41:36.120,130.3767,7220.5366,6.6341,28.9016,0.7311,0.0889,2340.0,2400.0,0.1948,-1.4681,4.8271,66.1691 2019-06-03 15:41:36.140,130.4475,7220.5913,6.6341,28.9016,1.3043,0.0848,2340.0,2400.0,0.1918,-1.4681,4.8469,66.1691 2019-06-03 15:41:36.160,130.4374,7220.646,6.5994,28.9541,0.7844,0.1483,2340.0,2400.0,0.1743,-1.4711,4.8416,66.3033 2019-06-03 15:41:36.180,130.3868,7220.6733,6.5695,29.0077,1.257,0.021,2340.0,2400.0,0.1772,-1.4711,4.8324,66.4388 2019-06-03 15:41:36.200,130.3868,7220.728,6.5588,29.0358,1.227,0.0196,2340.0,2400.0,0.1743,-1.4681,4.8376,66.5105 2019-06-03 15:41:36.220,130.3868,7220.7559,6.5475,29.0647,0.8498,0.2527,2340.0,2400.0,0.1802,-1.4681,4.8151,66.5809 2019-06-03 15:41:36.240,130.4576,7220.7007,6.5475,29.0647,1.0913,-0.0575,2340.0,2400.0,0.1918,-1.4711,4.839,66.5809 2019-06-03 15:41:36.260,130.4576,7220.6733,6.5475,29.0647,0.9903,0.2654,2340.0,2400.0,0.1802,-1.4771,4.8429,66.5809 2019-06-03 15:41:36.280,130.3868,7220.7007,6.5155,29.1158,1.0395,-0.0539,2340.0,2400.0,0.1802,-1.4801,4.8337,66.719 2019-06-03 15:41:36.300,130.3868,7220.6187,6.4846,29.1628,1.0347,-0.0119,2340.0,2400.0,0.1772,-1.4771,4.8456,66.8554 2019-06-03 15:41:36.320,130.3767,7220.6187,6.4846,29.1628,1.1486,0.2121,2340.0,2400.0,0.1626,-1.4741,4.8324,66.8554 2019-06-03 15:41:36.340,130.4475,7220.6187,6.4846,29.1628,0.8557,-0.0141,2340.0,2400.0,0.1685,-1.4711,4.831,66.8554 2019-06-03 15:41:36.360,130.4374,7220.6187,6.4562,29.2138,1.1882,0.1663,2340.0,2400.0,0.1626,-1.4711,4.8284,66.9966 2019-06-03 15:41:36.380,130.3868,7220.5366,6.4323,29.2618,0.8735,0.0503,2340.0,2400.0,0.1743,-1.4741,4.8244,67.1409 2019-06-03 15:41:36.400,130.3767,7220.5366,6.4143,29.2833,0.8232,0.109,2400.0,2340.0,0.1772,-1.4741,4.8363,67.2091 2019-06-03 15:41:36.420,130.3969,7220.5093,6.4009,29.3045,1.1187,0.0962,2400.0,2340.0,0.186,-1.4711,4.8403,67.279 2019-06-03 15:41:36.440,130.4475,7220.5093,6.4009,29.3045,0.9134,0.1476,2400.0,2340.0,0.1831,-1.4741,4.8496,67.279 2019-06-03 15:41:36.460,130.4475,7220.4814,6.4009,29.3045,1.1705,0.0256,2400.0,2340.0,0.1743,-1.4711,4.8429,67.279 2019-06-03 15:41:36.480,130.3767,7220.5093,6.3703,29.3442,0.9804,0.1912,2400.0,2340.0,0.1831,-1.4651,4.8376,67.4193 2019-06-03 15:41:36.500,130.3868,7220.4268,6.3444,29.3932,0.9563,0.2382,2400.0,2340.0,0.1772,-1.4681,4.8337,67.5653 2019-06-03 15:41:36.520,130.3767,7220.4268,6.3444,29.3932,0.9682,-0.0009,2400.0,2340.0,0.1802,-1.4681,4.8324,67.5653 2019-06-03 15:41:36.540,130.2957,7220.4814,6.3444,29.3932,1.1568,0.2056,2400.0,2340.0,0.1831,-1.4651,4.8363,67.5653 2019-06-03 15:41:36.560,130.2856,7220.5366,6.3134,29.4365,0.9071,-0.0003,2400.0,2340.0,0.1772,-1.4681,4.8456,67.707 2019-06-03 15:41:36.580,130.2247,7220.5913,6.3134,29.4365,1.179,0.1386,2400.0,2340.0,0.1714,-1.4681,4.8337,67.707 2019-06-03 15:41:36.600,130.2349,7220.6187,6.2702,29.4948,1.2248,0.1293,2400.0,2340.0,0.1772,-1.4651,4.8416,67.9207 2019-06-03 15:41:36.620,130.2349,7220.6187,6.2523,29.5106,0.7914,0.1101,2400.0,2340.0,0.1772,-1.4681,4.8363,67.9907 2019-06-03 15:41:36.640,130.2856,7220.6187,6.2523,29.5106,1.2259,0.0637,2400.0,2340.0,0.1802,-1.4651,4.8496,67.9907 2019-06-03 15:41:36.660,130.3058,7220.5913,6.2523,29.5106,0.9045,0.1276,2400.0,2340.0,0.1685,-1.4621,4.8429,67.9907 2019-06-03 15:41:36.680,130.245,7220.564,6.2237,29.5519,1.1346,0.0445,2400.0,2340.0,0.1714,-1.4621,4.831,68.1345 2019-06-03 15:41:36.700,130.2349,7220.4814,6.1895,29.5851,1.1057,0.0613,2400.0,2340.0,0.1743,-1.4531,4.8363,68.2752 2019-06-03 15:41:36.720,130.2247,7220.4814,6.1895,29.5851,0.9682,0.1908,2400.0,2340.0,0.1831,-1.4561,4.8376,68.2752 2019-06-03 15:41:36.740,130.2957,7220.4814,6.1895,29.5851,0.9471,-0.0211,2400.0,2340.0,0.1831,-1.4531,4.8416,68.2752 2019-06-03 15:41:36.760,130.2856,7220.5366,6.1567,29.6181,1.2185,0.2011,2400.0,2340.0,0.1802,-1.4531,4.8469,68.4164 2019-06-03 15:41:36.780,130.245,7220.564,6.1567,29.6181,0.7622,-0.0118,2400.0,2340.0,0.1772,-1.4561,4.8337,68.4164 2019-06-03 15:41:36.800,130.2247,7220.5366,6.1077,29.6697,0.8091,0.0215,2400.0,2340.0,0.1831,-1.4531,4.8549,68.6297 2019-06-03 15:41:36.820,130.245,7220.5093,6.0958,29.6887,1.2415,0.1712,2400.0,2340.0,0.1743,-1.4561,4.8482,68.7032 2019-06-03 15:41:36.840,130.2957,7220.5366,6.0958,29.6887,0.7607,0.0671,2400.0,2340.0,0.1743,-1.4531,4.8337,68.7032 2019-06-03 15:41:36.860,130.2957,7220.5093,6.0958,29.6887,1.2496,0.0685,2400.0,2340.0,0.1743,-1.4531,4.8403,68.7032 2019-06-03 15:41:36.880,130.2247,7220.5093,6.0592,29.7165,0.8102,0.143,2400.0,2340.0,0.1626,-1.4591,4.8271,68.8461 2019-06-03 15:41:36.900,130.2349,7221.1118,6.0256,29.7525,0.8927,0.171,2400.0,2340.0,0.1714,-1.4591,4.8496,68.9921 2019-06-03 15:41:36.920,130.2247,7222.0161,6.0256,29.7525,1.2622,-0.0264,2400.0,2340.0,0.1685,-1.4591,4.8549,68.9921 2019-06-03 15:41:36.940,130.1232,7223.3315,6.0256,29.7525,0.7921,0.2405,2400.0,2340.0,0.1743,-1.4561,4.8469,68.9921 2019-06-03 15:41:36.960,130.1334,7224.208,5.9948,29.786,1.0314,-0.0661,2400.0,2340.0,0.1772,-1.4591,4.8496,69.1394 2019-06-03 15:41:36.980,130.0622,7225.5234,5.9948,29.786,1.0935,0.2578,2400.0,2340.0,0.1918,-1.4531,4.8231,69.1394 2019-06-03 15:41:37.000,130.0724,7226.4277,5.942,29.8286,1.1261,0.2348,2400.0,2340.0,0.1948,-1.4561,4.831,69.3584 2019-06-03 15:41:37.020,130.0724,7227.332,5.9203,29.8373,0.8672,-0.038,2400.0,2340.0,0.1802,-1.4711,4.8376,69.4279 2019-06-03 15:41:37.040,130.1232,7228.7568,5.9203,29.8373,1.3066,0.1936,2400.0,2340.0,0.1714,-1.4651,4.8324,69.4279 2019-06-03 15:41:37.060,130.1435,7229.4419,5.9203,29.8373,0.696,0.0326,2400.0,2340.0,0.1509,-1.4681,4.8482,69.4279 2019-06-03 15:41:37.080,130.0622,7229.4146,5.8876,29.871,1.3291,0.1476,2400.0,2340.0,0.1655,-1.4711,4.8429,69.5788 2019-06-03 15:41:37.100,130.0825,7229.332,5.8528,29.9011,1.3705,0.0887,2400.0,2340.0,0.1714,-1.4681,4.8469,69.7265 2019-06-03 15:41:37.120,130.0724,7229.3599,5.8528,29.9011,0.5488,0.1558,2400.0,2340.0,0.1802,-1.4651,4.8562,69.7265 2019-06-03 15:41:37.140,130.1334,7229.4692,5.8528,29.9011,1.4134,0.0082,2400.0,2340.0,0.1977,-1.4651,4.831,69.7265 2019-06-03 15:41:37.160,130.1232,7229.5239,5.809,29.9219,0.7696,0.2094,2400.0,2340.0,0.1772,-1.4741,4.8218,69.8703 2019-06-03 15:41:37.180,130.0825,7229.5513,5.809,29.9219,1.2167,-0.0489,2400.0,2340.0,0.1802,-1.4831,4.8218,69.8703 2019-06-03 15:41:37.200,130.0622,7229.5513,5.753,29.9615,1.1882,-0.0778,2400.0,2340.0,0.1714,-1.4831,4.8072,70.0954 2019-06-03 15:41:37.220,130.0724,7229.5513,5.7401,29.98,0.9278,0.2999,2400.0,2340.0,0.1772,-1.4861,4.8522,70.1763 2019-06-03 15:41:37.240,130.1435,7229.5239,5.7401,29.98,1.0159,-0.0847,2400.0,2340.0,0.1714,-1.4831,4.8244,70.1763 2019-06-03 15:41:37.260,130.1334,7229.4419,5.7401,29.98,1.0958,0.2852,2400.0,2340.0,0.1831,-1.4831,4.8443,70.1763 2019-06-03 15:41:37.280,130.0622,7229.4966,5.6974,30.0037,0.936,-0.0598,2400.0,2340.0,0.1743,-1.4861,4.8337,70.3262 2019-06-03 15:41:37.300,130.0724,7229.4146,5.6501,30.0242,0.9193,-0.0726,2400.0,2340.0,0.186,-1.4831,4.8324,70.4744 2019-06-03 15:41:37.320,130.052,7229.4146,5.6501,30.0242,1.277,0.2581,2400.0,2340.0,0.1655,-1.4861,4.8218,70.4744 2019-06-03 15:41:37.340,130.1334,7229.4146,5.6501,30.0242,0.7311,0.0015,2400.0,2340.0,0.1743,-1.4861,4.7993,70.4744 2019-06-03 15:41:37.360,130.1334,7229.4419,5.6093,30.0513,1.3147,0.1649,2400.0,2340.0,0.1831,-1.4891,4.835,70.6305 2019-06-03 15:41:37.380,130.0724,7229.3872,5.6093,30.0513,0.6915,0.0967,2400.0,2340.0,0.1655,-1.5041,4.8416,70.6305 2019-06-03 15:41:37.400,130.0622,7229.4146,5.543,30.0887,0.6612,0.1164,2340.0,2340.0,0.186,-1.5011,4.8456,70.8617 2019-06-03 15:41:37.420,130.0724,7229.4966,5.5217,30.1029,1.4523,0.0372,2340.0,2340.0,0.1743,-1.5041,4.8443,70.9426 2019-06-03 15:41:37.440,130.1232,7229.5513,5.5217,30.1029,0.5935,0.1912,2340.0,2340.0,0.1772,-1.5011,4.8191,70.9426 2019-06-03 15:41:37.460,130.1435,7229.4966,5.5217,30.1029,1.3332,-0.0325,2340.0,2340.0,0.1743,-1.4981,4.8244,70.9426 2019-06-03 15:41:37.480,130.0724,7229.4692,5.4735,30.1271,0.7832,0.2741,2340.0,2340.0,0.1772,-1.5041,4.835,71.0978 2019-06-03 15:41:37.500,130.0724,7229.4419,5.4299,30.1601,0.8003,0.2666,2340.0,2340.0,0.1831,-1.5011,4.8337,71.2608 2019-06-03 15:41:37.520,130.0724,7229.4419,5.4299,30.1601,1.0532,-0.1058,2340.0,2340.0,0.1802,-1.5131,4.8469,71.2608 2019-06-03 15:41:37.540,129.9706,7229.5513,5.4299,30.1601,1.0292,0.292,2340.0,2340.0,0.1772,-1.5191,4.839,71.2608 2019-06-03 15:41:37.560,129.9604,7229.5513,5.3853,30.1901,0.9149,-0.0959,2340.0,2340.0,0.186,-1.555,4.8456,71.4235 2019-06-03 15:41:37.580,129.9094,7229.5513,5.3853,30.1901,1.1072,0.3025,2340.0,2340.0,0.1831,-1.588,4.8535,71.4235 2019-06-03 15:41:37.600,129.9196,7229.5791,5.3134,30.2375,1.2219,0.2466,2340.0,2340.0,0.1802,-1.588,4.8416,71.6713 2019-06-03 15:41:37.620,129.9094,7229.4966,5.2817,30.2458,0.7707,-0.0179,2340.0,2340.0,0.1772,-1.6329,4.8429,71.7487 2019-06-03 15:41:37.640,129.9808,7229.5513,5.2817,30.2458,1.3543,0.1736,2340.0,2340.0,0.1655,-1.6359,4.8271,71.7487 2019-06-03 15:41:37.660,129.991,7229.4966,5.2817,30.2458,0.6838,0.0823,2340.0,2340.0,0.1714,-1.6359,4.831,71.7487 2019-06-03 15:41:37.680,129.8992,7229.4966,5.2388,30.2865,1.3461,0.0802,2340.0,2340.0,0.1772,-1.6628,4.8363,71.9205 2019-06-03 15:41:37.700,129.9196,7229.4146,5.1853,30.3123,1.3816,-0.004,2340.0,2340.0,0.1977,-1.6628,4.8284,72.0857 2019-06-03 15:41:37.720,129.889,7229.4419,5.1853,30.3123,0.7707,0.2074,2340.0,2340.0,0.1977,-1.6747,4.8429,72.0857 2019-06-03 15:41:37.740,129.9706,7229.4146,5.1853,30.3123,1.2119,-0.0206,2340.0,2340.0,0.186,-1.7017,4.835,72.0857 2019-06-03 15:41:37.760,129.9808,7229.4146,5.1311,30.337,0.9112,0.2552,2340.0,2340.0,0.186,-1.6987,4.8337,72.2523 2019-06-03 15:41:37.780,129.9196,7229.4966,5.0812,30.3684,1.1501,-0.0439,2340.0,2340.0,0.1714,-1.7047,4.8218,72.4214 2019-06-03 15:41:37.800,129.9094,7229.4966,5.053,30.3807,1.135,-0.0572,2340.0,2340.0,0.1655,-1.7017,4.7926,72.5058 2019-06-03 15:41:37.820,129.9298,7229.4966,5.0331,30.399,0.9438,0.2573,2340.0,2340.0,0.1743,-1.7047,4.8324,72.5963 2019-06-03 15:41:37.840,129.9706,7229.5239,5.0331,30.399,0.9744,-0.0627,2340.0,2340.0,0.1685,-1.7136,4.8324,72.5963 2019-06-03 15:41:37.860,129.9808,7229.5239,5.0331,30.399,1.1264,0.2479,2340.0,2340.0,0.1831,-1.6777,4.8416,72.5963 2019-06-03 15:41:37.880,129.9094,7229.4146,4.9757,30.4205,0.7122,-0.0265,2340.0,2340.0,0.186,-1.6807,4.8588,72.7646 2019-06-03 15:41:37.900,129.9094,7229.3047,4.9198,30.4386,0.6863,-0.0187,2340.0,2340.0,0.1831,-1.6807,4.831,72.9364 2019-06-03 15:41:37.920,129.8992,7229.332,4.9198,30.4386,1.2962,0.1696,2340.0,2340.0,0.1831,-1.6807,4.8443,72.9364 2019-06-03 15:41:37.940,129.7869,7229.3047,4.9198,30.4386,0.7474,0.0794,2340.0,2340.0,0.1655,-1.6927,4.8257,72.9364 2019-06-03 15:41:37.960,129.8074,7229.3872,4.868,30.4677,1.3735,0.0783,2340.0,2340.0,0.1802,-1.6897,4.8231,73.1125 2019-06-03 15:41:37.980,129.746,7229.3599,4.868,30.4677,0.6867,0.1553,2340.0,2340.0,0.1831,-1.6897,4.8549,73.1125 2019-06-03 15:41:38.000,129.746,7229.3599,4.7798,30.5002,0.6827,0.1691,2340.0,2340.0,0.1831,-1.6897,4.8456,73.3748 2019-06-03 15:41:38.020,129.746,7229.3599,4.7511,30.5109,1.3413,-0.0137,2340.0,2340.0,0.1889,-1.6927,4.8628,73.4614 2019-06-03 15:41:38.040,129.8074,7229.4419,4.7511,30.5109,0.7651,0.2679,2340.0,2340.0,0.1918,-1.6867,4.8694,73.4614 2019-06-03 15:41:38.060,129.8176,7229.4966,4.7511,30.5109,1.1409,-0.0978,2340.0,2340.0,0.1889,-1.6927,4.8496,73.4614 2019-06-03 15:41:38.080,129.7358,7229.4966,4.6929,30.5335,0.9142,0.3037,2340.0,2340.0,0.1831,-1.7166,4.8562,73.6353 2019-06-03 15:41:38.100,129.746,7229.4692,4.6419,30.5634,1.0543,0.2826,2340.0,2340.0,0.1802,-1.7106,4.8509,73.8154 2019-06-03 15:41:38.120,129.7358,7229.4692,4.6419,30.5634,1.0177,-0.0751,2340.0,2340.0,0.1802,-1.7106,4.8509,73.8154 2019-06-03 15:41:38.140,129.8074,7229.5513,4.6419,30.5634,1.1368,0.2679,2340.0,2340.0,0.1831,-1.7166,4.8588,73.8154 2019-06-03 15:41:38.160,129.8074,7229.5791,4.5841,30.5907,0.9134,-0.01,2340.0,2340.0,0.186,-1.7106,4.8549,73.9916 2019-06-03 15:41:38.180,129.746,7229.5513,4.5841,30.5907,1.1982,0.2016,2340.0,2340.0,0.1772,-1.7136,4.8747,73.9916 2019-06-03 15:41:38.200,129.7358,7229.5791,4.4996,30.627,1.22,0.1636,2340.0,2340.0,0.1743,-1.7106,4.8681,74.2552 2019-06-03 15:41:38.220,129.7563,7229.4966,4.4676,30.6373,0.767,0.0609,2340.0,2340.0,0.1772,-1.7106,4.8641,74.3422 2019-06-03 15:41:38.240,129.8074,7229.5239,4.4676,30.6373,1.3106,0.1049,2340.0,2340.0,0.186,-1.7106,4.8575,74.3422 2019-06-03 15:41:38.260,129.8074,7229.4966,4.4676,30.6373,0.7452,0.1043,2340.0,2340.0,0.1948,-1.7076,4.835,74.3422 2019-06-03 15:41:38.280,129.7563,7229.4966,4.4141,30.6642,1.2333,0.0412,2340.0,2340.0,0.1918,-1.7106,4.8628,74.5201 2019-06-03 15:41:38.300,129.746,7229.3599,4.3568,30.6825,1.2492,-0.0003,2340.0,2340.0,0.1714,-1.7106,4.8509,74.6936 2019-06-03 15:41:38.320,129.746,7229.3599,4.3568,30.6825,0.8287,0.2503,2340.0,2340.0,0.186,-1.7047,4.8641,74.6936 2019-06-03 15:41:38.340,130.0011,7229.3872,4.3568,30.6825,1.1216,-0.0506,2340.0,2340.0,0.1831,-1.7316,4.8615,74.6936 2019-06-03 15:41:38.360,129.9604,7229.4419,4.299,30.7015,1.0584,0.2249,2340.0,2340.0,0.1948,-1.7316,4.8429,74.8663 2019-06-03 15:41:38.380,129.9094,7229.4966,4.299,30.7015,1.0969,-0.0402,2340.0,2340.0,0.186,-1.7316,4.8403,74.8663 2019-06-03 15:41:38.400,129.9094,7229.5513,4.2181,30.7367,0.9867,-0.0383,2400.0,2400.0,0.186,-1.7316,4.8363,75.1273 2019-06-03 15:41:38.420,129.9196,7229.5513,4.1959,30.7553,1.1497,0.2332,2400.0,2400.0,0.186,-1.7316,4.8324,75.2186 2019-06-03 15:41:38.440,129.9808,7229.4692,4.1959,30.7553,0.8169,0.0046,2400.0,2400.0,0.1889,-1.7316,4.8456,75.2186 2019-06-03 15:41:38.460,129.9808,7229.4692,4.1959,30.7553,1.2478,0.1412,2400.0,2400.0,0.1918,-1.7316,4.8204,75.2186 2019-06-03 15:41:38.480,129.9094,7229.4692,4.1403,30.7743,0.8698,0.054,2400.0,2400.0,0.1802,-1.7316,4.8324,75.3882 2019-06-03 15:41:38.500,129.9196,7229.3599,4.0895,30.8003,0.8028,0.1021,2400.0,2400.0,0.1802,-1.7345,4.8271,75.5622 2019-06-03 15:41:38.520,129.8992,7229.3872,4.0895,30.8003,1.2466,0.0761,2400.0,2400.0,0.1802,-1.7316,4.8006,75.5622 2019-06-03 15:41:38.540,129.9706,7229.3872,4.0895,30.8003,0.8369,0.1846,2400.0,2400.0,0.1772,-1.7345,4.8271,75.5622 2019-06-03 15:41:38.560,129.9706,7229.4146,4.0418,30.8298,1.1117,-0.0024,2400.0,2400.0,0.186,-1.7375,4.8178,75.7384 2019-06-03 15:41:38.580,129.9094,7229.3599,4.0418,30.8298,0.8794,0.1991,2400.0,2400.0,0.186,-1.7375,4.8324,75.7384 2019-06-03 15:41:38.600,129.9094,7229.4146,3.9638,30.8679,0.7603,0.2299,2400.0,2400.0,0.1802,-1.7704,4.8271,75.9928 2019-06-03 15:41:38.620,129.9196,7229.3599,3.936,30.8808,1.0787,-0.0475,2400.0,2400.0,0.1918,-1.7704,4.8138,76.0767 2019-06-03 15:41:38.640,129.991,7229.3872,3.936,30.8808,1.142,0.2516,2400.0,2400.0,0.1802,-1.7614,4.8257,76.0767 2019-06-03 15:41:38.660,129.991,7229.2773,3.936,30.8808,0.9367,-0.0142,2400.0,2400.0,0.1889,-1.7674,4.8271,76.0767 2019-06-03 15:41:38.680,129.9094,7229.332,3.8887,30.9096,1.0732,0.1823,2400.0,2400.0,0.1685,-1.7644,4.8297,76.2503 2019-06-03 15:41:38.700,129.9196,7229.2773,3.8432,30.9387,1.179,0.1896,2400.0,2400.0,0.1918,-1.7674,4.8429,76.4225 2019-06-03 15:41:38.720,129.9094,7229.2227,3.8432,30.9387,0.97,0.0088,2400.0,2400.0,0.1948,-1.7674,4.8125,76.4225 2019-06-03 15:41:38.740,129.9808,7229.2227,3.8432,30.9387,1.2037,0.1774,2400.0,2400.0,0.186,-1.7704,4.835,76.4225 2019-06-03 15:41:38.760,129.9706,7229.2227,3.7915,30.9621,0.8065,0.0515,2400.0,2400.0,0.1772,-1.7674,4.8072,76.5904 2019-06-03 15:41:38.780,129.9094,7229.2773,3.7915,30.9621,1.2141,0.0967,2400.0,2400.0,0.1655,-1.7764,4.8178,76.5904 2019-06-03 15:41:38.800,129.9094,7229.2773,3.7228,31.0008,1.2392,0.1032,2400.0,2400.0,0.1597,-1.7913,4.8284,76.8435 2019-06-03 15:41:38.820,129.9196,7229.2773,3.698,31.0141,0.8443,0.0848,2400.0,2400.0,0.1714,-1.7883,4.8125,76.9261 2019-06-03 15:41:38.840,129.9706,7229.2227,3.698,31.0141,1.1294,0.0752,2400.0,2400.0,0.1714,-1.7943,4.8297,76.9261 2019-06-03 15:41:38.860,129.991,7229.1128,3.698,31.0141,0.8184,0.186,2400.0,2400.0,0.186,-1.8003,4.8125,76.9261 2019-06-03 15:41:38.880,129.9094,7229.0854,3.6546,31.0383,1.0621,-0.0138,2400.0,2400.0,0.1831,-1.8092,4.8125,77.0957 2019-06-03 15:41:38.900,129.9196,7229.0034,3.6054,31.0609,0.9992,0.0011,2400.0,2400.0,0.1802,-1.845,4.8045,77.26 2019-06-03 15:41:38.920,129.9094,7228.9761,3.6054,31.0609,1.0972,0.1728,2400.0,2400.0,0.1802,-1.848,4.7953,77.26 2019-06-03 15:41:38.940,130.1435,7229.0581,3.6054,31.0609,0.977,0.0403,2400.0,2400.0,0.1685,-1.9256,4.8019,77.26 2019-06-03 15:41:38.960,130.1334,7229.0854,3.5581,31.0834,1.1897,0.1807,2400.0,2400.0,0.1743,-1.9434,4.79,77.424 2019-06-03 15:41:38.980,130.0622,7229.1128,3.5581,31.0834,0.9105,0.0074,2400.0,2400.0,0.1831,-1.9434,4.7834,77.424 2019-06-03 15:41:39.000,130.0825,7229.1128,3.4926,31.1144,0.8298,0.0416,2400.0,2400.0,0.1743,-1.9464,4.7887,77.6674 2019-06-03 15:41:39.020,130.0825,7229.168,3.4709,31.1266,1.2692,0.1235,2400.0,2400.0,0.1831,-1.9494,4.7648,77.7501 2019-06-03 15:41:39.040,130.1435,7229.2227,3.4709,31.1266,0.8894,0.0985,2400.0,2400.0,0.1626,-1.9941,4.7622,77.7501 2019-06-03 15:41:39.060,130.1435,7229.1953,3.4709,31.1266,1.0972,0.0705,2400.0,2400.0,0.1626,-2.0238,4.737,77.7501 2019-06-03 15:41:39.080,130.0825,7229.1953,3.4261,31.1393,0.852,0.1353,2400.0,2400.0,0.1685,-2.006,4.7291,77.9101 2019-06-03 15:41:39.100,130.0724,7229.0854,3.3836,31.1522,0.858,0.1735,2400.0,2400.0,0.1655,-2.0268,4.7304,78.0705 2019-06-03 15:41:39.120,130.0622,7229.0854,3.3836,31.1522,1.0943,-0.0046,2400.0,2400.0,0.1802,-2.0179,4.7172,78.0705 2019-06-03 15:41:39.140,130.316,7229.1406,3.3836,31.1522,1.0325,0.1896,2400.0,2400.0,0.1743,-2.0149,4.7079,78.0705 2019-06-03 15:41:39.160,130.2856,7229.1953,3.3425,31.1614,0.923,0.0065,2400.0,2400.0,0.1568,-2.0238,4.6801,78.23 2019-06-03 15:41:39.180,130.245,7229.1406,3.2943,31.1664,1.071,0.1854,2400.0,2400.0,0.1685,-2.0209,4.6682,78.3817 2019-06-03 15:41:39.200,130.2349,7229.1406,3.274,31.1697,1.0917,0.2246,2400.0,2400.0,0.1685,-2.0298,4.6708,78.46 2019-06-03 15:41:39.220,130.2349,7229.1128,3.2454,31.1645,0.7866,0.0072,2400.0,2400.0,0.1714,-2.0298,4.6536,78.5325 2019-06-03 15:41:39.240,130.2957,7229.168,3.2454,31.1645,1.26,0.1514,2400.0,2400.0,0.1626,-2.0268,4.6602,78.5325 2019-06-03 15:41:39.260,130.3058,7229.2227,3.2454,31.1645,0.8206,0.0494,2400.0,2400.0,0.1451,-2.0268,4.6338,78.5325 2019-06-03 15:41:39.280,130.2247,7229.3047,3.2018,31.1682,1.2814,0.1268,2400.0,2400.0,0.1538,-2.0358,4.651,78.6877 2019-06-03 15:41:39.300,130.2349,7229.2773,3.1533,31.1677,1.3043,0.1156,2400.0,2400.0,0.148,-2.0982,4.6483,78.839 2019-06-03 15:41:39.320,130.2146,7229.2773,3.1533,31.1677,0.6863,0.1291,2400.0,2400.0,0.1743,-2.0893,4.6417,78.839 2019-06-03 15:41:39.340,130.2957,7229.332,3.1533,31.1677,1.2208,0.0149,2400.0,2400.0,0.1655,-2.0893,4.6417,78.839 2019-06-03 15:41:39.360,130.3058,7229.4146,3.0973,31.1623,0.8298,0.165,2400.0,2400.0,0.1655,-2.1071,4.6271,78.9841 2019-06-03 15:41:39.380,130.245,7229.3872,3.0973,31.1623,1.2348,0.0136,2400.0,2400.0,0.1538,-2.1012,4.6139,78.9841 2019-06-03 15:41:39.400,130.2247,7229.4146,3.0185,31.1553,1.1923,0.0057,2340.0,2340.0,0.1509,-2.122,4.639,79.2057 2019-06-03 15:41:39.420,130.245,7229.4146,2.9953,31.1537,0.8968,0.2004,2340.0,2340.0,0.1568,-2.125,4.6285,79.2805 2019-06-03 15:41:39.440,130.2957,7229.3872,2.9953,31.1537,1.0277,-0.0334,2340.0,2340.0,0.1568,-2.128,4.639,79.2805 2019-06-03 15:41:39.460,130.3058,7229.3599,2.9953,31.1537,1.004,0.2261,2340.0,2340.0,0.1568,-2.1577,4.6192,79.2805 2019-06-03 15:41:39.480,130.2247,7229.3599,2.9415,31.1428,0.9626,-0.0451,2340.0,2340.0,0.1743,-2.1547,4.6139,79.4252 2019-06-03 15:41:39.500,130.2349,7228.6748,2.8834,31.1293,0.8872,0.0067,2340.0,2340.0,0.1714,-2.1547,4.6377,79.5663 2019-06-03 15:41:39.520,130.2247,7227.7979,2.8834,31.1293,1.2518,0.2122,2340.0,2340.0,0.1685,-2.1517,4.6192,79.5663 2019-06-03 15:41:39.540,130.4677,7226.5923,2.8834,31.1293,0.8065,-0.0175,2340.0,2340.0,0.1685,-2.1577,4.6364,79.5663 2019-06-03 15:41:39.560,130.4374,7225.77,2.8286,31.1183,1.1923,0.1735,2340.0,2340.0,0.1334,-2.1636,4.6152,79.7102 2019-06-03 15:41:39.580,130.3767,7224.4272,2.8286,31.1183,0.7178,0.0405,2340.0,2340.0,0.1538,-2.1606,4.6165,79.7102 2019-06-03 15:41:39.600,130.3767,7223.5508,2.7454,31.0941,0.622,0.0815,2340.0,2340.0,0.1509,-2.1577,4.6298,79.9217 2019-06-03 15:41:39.620,130.3868,7222.5913,2.7212,31.0871,1.3739,0.0741,2340.0,2340.0,0.1685,-2.1636,4.6298,79.9947 2019-06-03 15:41:39.640,130.4475,7221.2764,2.7212,31.0871,0.6301,0.1373,2340.0,2340.0,0.1597,-2.1577,4.6218,79.9947 2019-06-03 15:41:39.660,130.4576,7220.564,2.7212,31.0871,1.2437,0.0105,2340.0,2340.0,0.1626,-2.1577,4.6324,79.9947 2019-06-03 15:41:39.680,130.3868,7220.564,2.6625,31.0646,0.7696,0.1996,2340.0,2340.0,0.1655,-2.1606,4.6099,80.1346 2019-06-03 15:41:39.700,130.3868,7220.4814,2.6093,31.0467,0.7625,0.2456,2340.0,2340.0,0.1597,-2.1903,4.6285,80.2797 2019-06-03 15:41:39.720,130.3767,7220.5093,2.6093,31.0467,1.2333,-0.0426,2340.0,2340.0,0.1597,-2.2022,4.6218,80.2797 2019-06-03 15:41:39.740,130.6292,7220.564,2.6093,31.0467,0.8583,0.2473,2340.0,2340.0,0.1626,-2.1933,4.6218,80.2797 2019-06-03 15:41:39.760,130.609,7220.6187,2.5594,31.0246,1.112,-0.0619,2340.0,2340.0,0.1509,-2.1933,4.6218,80.4249 2019-06-03 15:41:39.780,130.5485,7220.6733,2.5594,31.0246,0.9478,0.2487,2340.0,2340.0,0.1714,-2.1903,4.6112,80.4249 2019-06-03 15:41:39.800,130.5384,7220.646,2.4768,30.9796,1.0196,0.2745,2340.0,2340.0,0.1655,-2.2052,4.6245,80.6399 2019-06-03 15:41:39.820,130.5586,7220.5913,2.445,30.9579,0.9256,-0.0664,2340.0,2340.0,0.1597,-2.1993,4.6285,80.7068 2019-06-03 15:41:39.840,130.6191,7220.646,2.445,30.9579,1.0492,0.2754,2340.0,2340.0,0.1568,-2.1993,4.6338,80.7068 2019-06-03 15:41:39.860,130.5989,7220.646,2.445,30.9579,0.8657,-0.0327,2340.0,2340.0,0.1422,-2.1993,4.6152,80.7068 2019-06-03 15:41:39.880,130.5485,7220.646,2.3937,30.926,1.1912,0.2055,2340.0,2340.0,0.1714,-2.1993,4.6139,80.8511 2019-06-03 15:41:39.900,130.5485,7220.564,2.342,30.8906,1.2866,0.2173,2340.0,2340.0,0.1655,-2.226,4.6152,80.9958 2019-06-03 15:41:39.920,130.5384,7220.564,2.342,30.8906,0.6512,0.0092,2340.0,2340.0,0.1685,-2.223,4.6285,80.9958 2019-06-03 15:41:39.940,130.7801,7220.5366,2.342,30.8906,1.3465,0.1488,2340.0,2340.0,0.1714,-2.226,4.6179,80.9958 2019-06-03 15:41:39.960,130.76,7220.6187,2.2843,30.8484,0.656,0.0979,2340.0,2340.0,0.1568,-2.2468,4.6192,81.1335 2019-06-03 15:41:39.980,130.6997,7220.7007,2.2843,30.8484,1.3099,0.066,2340.0,2340.0,0.1568,-2.2289,4.6179,81.1335 2019-06-03 15:41:40.000,130.6997,7220.7559,2.2078,30.7881,1.4534,0.0414,2340.0,2340.0,0.1568,-2.2349,4.6298,81.3512 2019-06-03 15:41:40.020,130.7097,7220.7832,2.1824,30.7647,0.5943,0.1576,2340.0,2340.0,0.1422,-2.2527,4.6192,81.4237 2019-06-03 15:41:40.040,130.76,7220.7832,2.1824,30.7647,1.3114,-0.0155,2340.0,2340.0,0.1597,-2.2349,4.6218,81.4237 2019-06-03 15:41:40.060,130.7701,7220.7559,2.1824,30.7647,0.7466,0.2382,2340.0,2340.0,0.1626,-2.2557,4.6351,81.4237 2019-06-03 15:41:40.080,130.6997,7220.7559,2.1343,30.7227,1.2777,-0.0707,2340.0,2340.0,0.1685,-2.2557,4.6179,81.5706 2019-06-03 15:41:40.100,130.7097,7220.6733,2.0763,30.6701,1.2629,-0.0991,2340.0,2340.0,0.1714,-2.2527,4.6417,81.7109 2019-06-03 15:41:40.120,130.6997,7220.646,2.0763,30.6701,0.8339,0.2768,2340.0,2340.0,0.148,-2.2675,4.6192,81.7109 2019-06-03 15:41:40.140,130.9408,7220.6733,2.0763,30.6701,1.1682,-0.0914,2340.0,2340.0,0.1626,-2.2705,4.6364,81.7109 2019-06-03 15:41:40.160,130.9207,7220.6733,2.0239,30.6211,0.9164,0.3125,2340.0,2340.0,0.1363,-2.2675,4.6232,81.8552 2019-06-03 15:41:40.180,130.8705,7220.646,2.0239,30.6211,0.9922,-0.0918,2340.0,2340.0,0.1714,-2.2705,4.6324,81.8552 2019-06-03 15:41:40.200,130.8605,7220.7007,1.9459,30.542,0.9685,-0.1079,2340.0,2340.0,0.1685,-2.2883,4.6298,82.0724 2019-06-03 15:41:40.220,130.8806,7220.646,1.9286,30.5201,1.0118,0.2476,2340.0,2340.0,0.1772,-2.3268,4.6324,82.1502 2019-06-03 15:41:40.240,130.9307,7220.6733,1.9286,30.5201,0.8968,-0.0483,2340.0,2340.0,0.1831,-2.3239,4.6298,82.1502 2019-06-03 15:41:40.260,130.9207,7220.6733,1.9286,30.5201,1.2097,0.2566,2340.0,2340.0,0.1597,-2.3239,4.639,82.1502 2019-06-03 15:41:40.280,130.8505,7220.728,1.8737,30.4605,0.7699,-0.0236,2340.0,2340.0,0.1714,-2.3239,4.6377,82.2932 2019-06-03 15:41:40.300,130.8705,7220.0161,1.821,30.4034,0.7156,-0.0201,2340.0,2340.0,0.1538,-2.3239,4.6324,82.4383 2019-06-03 15:41:40.320,130.8505,7219.1665,1.821,30.4034,1.3302,0.129,2340.0,2340.0,0.1538,-2.3357,4.6377,82.4383 2019-06-03 15:41:40.340,131.091,7217.8242,1.821,30.4034,0.7156,0.0828,2340.0,2340.0,0.1655,-2.3298,4.6245,82.4383 2019-06-03 15:41:40.360,131.081,7216.9478,1.7759,30.3468,1.362,0.0837,2340.0,2340.0,0.1772,-2.3387,4.6589,82.5887 2019-06-03 15:41:40.380,131.0209,7215.6875,1.7759,30.3468,0.6224,0.138,2340.0,2340.0,0.1743,-2.3328,4.6298,82.5887 2019-06-03 15:41:40.400,131.0109,7214.8384,1.6997,30.2511,0.7008,0.158,2400.0,2400.0,0.1743,-2.3298,4.643,82.8125 2019-06-03 15:41:40.420,131.0209,7213.9614,1.6757,30.2178,1.2988,-0.037,2400.0,2400.0,0.148,-2.3328,4.6298,82.8855 2019-06-03 15:41:40.440,131.081,7212.7017,1.6757,30.2178,0.7126,0.2177,2400.0,2400.0,0.1597,-2.3298,4.6285,82.8855 2019-06-03 15:41:40.460,131.091,7211.9893,1.6757,30.2178,1.2089,-0.0479,2400.0,2400.0,0.1597,-2.3328,4.6457,82.8855 2019-06-03 15:41:40.480,131.0209,7211.9893,1.6266,30.1492,0.7914,0.2576,2400.0,2400.0,0.1743,-2.3298,4.6271,83.0346 2019-06-03 15:41:40.500,131.0209,7211.9619,1.5835,30.0821,0.8639,0.2521,2400.0,2400.0,0.1743,-2.3328,4.6311,83.1876 2019-06-03 15:41:40.520,131.0209,7211.9893,1.5835,30.0821,1.0569,-0.0942,2400.0,2400.0,0.1685,-2.3416,4.6457,83.1876 2019-06-03 15:41:40.540,131.2508,7212.0713,1.5835,30.0821,0.9119,0.298,2400.0,2400.0,0.1743,-2.3387,4.6377,83.1876 2019-06-03 15:41:40.560,131.2308,7212.126,1.5365,30.0122,0.933,-0.0893,2400.0,2400.0,0.1626,-2.3624,4.6536,83.3366 2019-06-03 15:41:40.580,131.1809,7212.1812,1.484,29.9296,1.0366,0.2621,2400.0,2400.0,0.1714,-2.3565,4.643,83.4831 2019-06-03 15:41:40.600,131.1809,7212.2085,1.4675,29.8972,1.1002,0.2391,2400.0,2400.0,0.1685,-2.3476,4.6496,83.563 2019-06-03 15:41:40.620,131.1909,7212.1538,1.4385,29.855,0.858,-0.0411,2400.0,2400.0,0.1685,-2.3505,4.6563,83.633 2019-06-03 15:41:40.640,131.2408,7212.1812,1.4385,29.855,1.1105,0.2205,2400.0,2400.0,0.1889,-2.3476,4.651,83.633 2019-06-03 15:41:40.660,131.2508,7212.2085,1.4385,29.855,0.7622,-0.0094,2400.0,2400.0,0.1948,-2.3535,4.6655,83.633 2019-06-03 15:41:40.680,131.1809,7212.2632,1.3942,29.7792,1.2171,0.171,2400.0,2400.0,0.1948,-2.3505,4.6655,83.7855 2019-06-03 15:41:40.700,131.1809,7212.1538,1.3474,29.7064,1.3084,0.1404,2400.0,2400.0,0.1918,-2.3505,4.6695,83.9385 2019-06-03 15:41:40.720,131.1709,7212.1538,1.3474,29.7064,0.6893,0.068,2400.0,2400.0,0.1802,-2.3565,4.696,83.9385 2019-06-03 15:41:40.740,131.4002,7212.1812,1.3474,29.7064,1.3569,0.1104,2400.0,2400.0,0.1831,-2.3565,4.696,83.9385 2019-06-03 15:41:40.760,131.4002,7212.1538,1.2938,29.6273,0.6974,0.1229,2400.0,2400.0,0.1831,-2.389,4.7105,84.0845 2019-06-03 15:41:40.780,131.3405,7212.126,1.2938,29.6273,1.3088,0.0301,2400.0,2400.0,0.1948,-2.3831,4.7105,84.0845 2019-06-03 15:41:40.800,131.3305,7212.1538,1.2271,29.513,1.2973,0.0101,2400.0,2400.0,0.1948,-2.3831,4.7105,84.3175 2019-06-03 15:41:40.820,131.3305,7212.1538,1.2063,29.4778,0.8021,0.2134,2400.0,2400.0,0.1918,-2.4187,4.7383,84.3949 2019-06-03 15:41:40.840,131.3803,7212.1538,1.2063,29.4778,1.2551,-0.0553,2400.0,2400.0,0.1889,-2.395,4.7383,84.3949 2019-06-03 15:41:40.860,131.4101,7212.1538,1.2063,29.4778,0.7544,0.2405,2400.0,2400.0,0.1831,-2.395,4.7582,84.3949 2019-06-03 15:41:40.880,131.3504,7212.126,1.1597,29.4037,1.1882,-0.0418,2400.0,2400.0,0.1772,-2.3979,4.7489,84.5488 2019-06-03 15:41:40.900,131.3405,7212.0713,1.1103,29.3226,1.1782,-0.0596,2400.0,2400.0,0.1743,-2.395,4.737,84.6996 2019-06-03 15:41:40.920,131.3405,7212.0166,1.1103,29.3226,0.987,0.2665,2400.0,2400.0,0.1714,-2.392,4.7476,84.6996 2019-06-03 15:41:40.940,131.7375,7212.126,1.1103,29.3226,1.034,-0.0805,2400.0,2400.0,0.1743,-2.395,4.7436,84.6996 2019-06-03 15:41:40.960,131.6979,7212.1538,1.066,29.2409,1.0026,0.2592,2400.0,2400.0,0.1714,-2.4187,4.7767,84.8539 2019-06-03 15:41:40.980,131.6385,7212.1812,1.066,29.2409,0.973,-0.05,2400.0,2400.0,0.1831,-2.4187,4.79,84.8539 2019-06-03 15:41:41.000,131.6484,7212.1812,0.9991,29.1235,1.0051,-0.0403,2400.0,2400.0,0.1889,-2.392,4.7913,85.086 2019-06-03 15:41:41.020,131.6583,7212.126,0.9848,29.0894,1.1442,0.2509,2400.0,2400.0,0.1802,-2.3979,4.8112,85.1678 2019-06-03 15:41:41.040,131.7078,7212.0986,0.9848,29.0894,0.8602,-0.0299,2400.0,2400.0,0.1831,-2.4068,4.7781,85.1678 2019-06-03 15:41:41.060,131.7177,7212.0986,0.9848,29.0894,1.1449,0.1952,2400.0,2400.0,0.186,-2.4098,4.7873,85.1678 2019-06-03 15:41:41.080,131.6385,7212.126,0.9375,29.0033,0.7718,0.0059,2400.0,2400.0,0.1889,-2.4187,4.7873,85.3186 2019-06-03 15:41:41.100,131.6484,7211.4141,0.8974,28.9257,0.8187,0.0482,2400.0,2400.0,0.1918,-2.4187,4.7807,85.4733 2019-06-03 15:41:41.120,131.6385,7210.5376,0.8974,28.9257,1.2588,0.1566,2400.0,2400.0,0.186,-2.4246,4.8284,85.4733 2019-06-03 15:41:41.140,132.0434,7209.2505,0.8974,28.9257,0.639,0.0956,2400.0,2400.0,0.1889,-2.4187,4.8231,85.4733 2019-06-03 15:41:41.160,132.0139,7208.4287,0.8629,28.8518,1.2648,0.0543,2400.0,2400.0,0.186,-2.4275,4.8522,85.6324 2019-06-03 15:41:41.180,131.9646,7207.0591,0.8629,28.8518,0.6867,0.1547,2400.0,2400.0,0.1714,-2.4631,4.8443,85.6324 2019-06-03 15:41:41.200,131.9646,7206.21,0.8046,28.7408,0.7533,0.202,2400.0,2400.0,0.1889,-2.4423,4.8271,85.865 2019-06-03 15:41:41.220,131.9548,7205.3335,0.7862,28.7052,1.2729,0.0049,2400.0,2400.0,0.1918,-2.4808,4.839,85.9419 2019-06-03 15:41:41.240,132.0139,7203.9917,0.7862,28.7052,0.8247,0.1945,2400.0,2400.0,0.1889,-2.4719,4.8204,85.9419 2019-06-03 15:41:41.260,132.0238,7203.252,0.7862,28.7052,1.2089,-0.0295,2400.0,2400.0,0.1889,-2.469,4.8376,85.9419 2019-06-03 15:41:41.280,131.9646,7203.252,0.7527,28.6322,0.8383,0.1992,2400.0,2400.0,0.1568,-2.4749,4.8535,86.0967 2019-06-03 15:41:41.300,131.9646,7203.1426,0.7261,28.5692,0.8531,0.2344,2400.0,2400.0,0.1743,-2.4631,4.8535,86.2553 2019-06-03 15:41:41.320,131.9548,7203.1152,0.7261,28.5692,1.1268,-0.0275,2400.0,2400.0,0.1597,-2.466,4.8721,86.2553 2019-06-03 15:41:41.340,132.2007,7203.1152,0.7261,28.5692,0.9271,0.2284,2400.0,2400.0,0.186,-2.469,4.8946,86.2553 2019-06-03 15:41:41.360,132.1713,7203.1699,0.6968,28.4984,1.1668,-0.0397,2400.0,2400.0,0.1889,-2.469,4.8853,86.4127 2019-06-03 15:41:41.380,132.1123,7203.1426,0.6968,28.4984,0.9567,0.1954,2400.0,2400.0,0.186,-2.4808,4.9025,86.4127 2019-06-03 15:41:41.400,132.1123,7203.2246,0.6543,28.3939,1.1253,0.2127,2400.0,2340.0,0.1918,-2.4778,4.8827,86.647 2019-06-03 15:41:41.420,132.1123,7203.252,0.6362,28.3576,0.9963,0.0018,2400.0,2340.0,0.1889,-2.4956,4.8972,86.7222 2019-06-03 15:41:41.440,132.1811,7203.252,0.6362,28.3576,1.0839,0.2012,2400.0,2340.0,0.1831,-2.4897,4.8959,86.7222 2019-06-03 15:41:41.460,132.1909,7203.2246,0.6362,28.3576,0.9756,-0.0225,2400.0,2340.0,0.1918,-2.4897,4.8999,86.7222 2019-06-03 15:41:41.480,132.1123,7203.252,0.6138,28.2921,1.1298,0.1814,2400.0,2340.0,0.1714,-2.5222,4.9065,86.8796 2019-06-03 15:41:41.500,132.132,7203.1973,0.5915,28.2263,1.2248,0.1877,2400.0,2340.0,0.1831,-2.4956,4.9025,87.0361 2019-06-03 15:41:41.520,132.1123,7203.252,0.5915,28.2263,0.8409,0.0432,2400.0,2340.0,0.1772,-2.5399,4.9197,87.0361 2019-06-03 15:41:41.540,132.5043,7203.3071,0.5915,28.2263,1.1682,0.1369,2400.0,2340.0,0.186,-2.5133,4.9383,87.0361 2019-06-03 15:41:41.560,132.4848,7203.3345,0.5661,28.1546,0.8428,0.0604,2400.0,2340.0,0.1889,-2.5163,4.9343,87.1882 2019-06-03 15:41:41.580,132.4261,7203.2246,0.5661,28.1546,1.2759,0.0586,2400.0,2340.0,0.1743,-2.5636,4.9449,87.1882 2019-06-03 15:41:41.600,132.4163,7203.2246,0.5394,28.0567,1.2899,0.0722,2400.0,2340.0,0.1889,-2.5429,4.9383,87.4225 2019-06-03 15:41:41.620,132.4261,7203.252,0.5316,28.0232,0.9112,0.1756,2400.0,2340.0,0.186,-2.5813,4.9436,87.4999 2019-06-03 15:41:41.640,132.475,7203.3071,0.5316,28.0232,1.078,0.0353,2400.0,2340.0,0.186,-2.5813,4.9515,87.4999 2019-06-03 15:41:41.660,132.4848,7203.2798,0.5316,28.0232,0.9552,0.1591,2400.0,2340.0,0.1831,-2.5813,4.9436,87.4999 2019-06-03 15:41:41.680,132.4163,7203.2798,0.5169,27.9588,1.2463,0.0226,2400.0,2340.0,0.1831,-2.5931,4.97,87.6533 2019-06-03 15:41:41.700,132.4359,7202.5674,0.4983,27.8911,1.1553,0.0257,2400.0,2340.0,0.1831,-2.5931,4.9581,87.8037 2019-06-03 15:41:41.720,132.4359,7201.6914,0.4983,27.8911,0.9781,0.1725,2400.0,2340.0,0.1831,-2.6285,4.9674,87.8037 2019-06-03 15:41:41.740,132.8258,7200.4863,0.4983,27.8911,0.9656,0.039,2400.0,2340.0,0.1802,-2.6374,4.9674,87.8037 2019-06-03 15:41:41.760,132.7772,7199.7197,0.4839,27.8207,1.0155,0.1633,2400.0,2340.0,0.1918,-2.6374,4.9714,87.9536 2019-06-03 15:41:41.780,132.7188,7198.5151,0.4839,27.8207,0.9852,0.0092,2400.0,2340.0,0.1743,-2.6433,4.9806,87.9536 2019-06-03 15:41:41.800,132.7286,7197.7207,0.4674,27.7153,0.9589,0.0246,2400.0,2340.0,0.1889,-2.6403,4.9833,88.1796 2019-06-03 15:41:41.820,132.7286,7196.9268,0.4666,27.6837,1.1642,0.1929,2400.0,2340.0,0.1772,-2.6521,4.9886,88.2565 2019-06-03 15:41:41.840,132.7967,7195.8042,0.4666,27.6837,0.8923,0.0279,2400.0,2340.0,0.1802,-2.6757,5.0045,88.2565 2019-06-03 15:41:41.860,132.8064,7195.147,0.4666,27.6837,1.183,0.1421,2400.0,2340.0,0.186,-2.6757,5.0058,88.2565 2019-06-03 15:41:41.880,132.748,7195.2017,0.4542,27.6049,0.8838,0.0321,2400.0,2340.0,0.1831,-2.6934,5.0243,88.4021 2019-06-03 15:41:41.900,132.7383,7195.2017,0.446,27.5277,0.8857,0.0363,2400.0,2340.0,0.1977,-2.6905,5.023,88.549 2019-06-03 15:41:41.920,132.7286,7195.2017,0.446,27.5277,1.2496,0.1523,2400.0,2340.0,0.1685,-2.7524,5.0098,88.549 2019-06-03 15:41:41.940,133.1069,7195.2563,0.446,27.5277,0.8772,0.0541,2400.0,2340.0,0.1714,-2.7495,5.0283,88.549 2019-06-03 15:41:41.960,133.0876,7195.2563,0.4426,27.4477,1.1372,0.1077,2400.0,2340.0,0.1772,-2.7495,5.0098,88.6963 2019-06-03 15:41:41.980,133.0489,7195.2017,0.4414,27.3653,0.8443,0.075,2400.0,2340.0,0.1802,-2.7789,5.0323,88.8471 2019-06-03 15:41:42.000,133.0295,7195.1196,0.4331,27.319,0.862,0.0567,2400.0,2340.0,0.1831,-2.7671,5.031,88.9166 2019-06-03 15:41:42.020,133.0489,7195.1196,0.4334,27.2788,1.2429,0.0787,2400.0,2340.0,0.1714,-2.7907,5.0336,88.9905 2019-06-03 15:41:42.040,133.0876,7195.147,0.4334,27.2788,0.8849,0.1311,2400.0,2340.0,0.1685,-2.8084,5.0508,88.9905 2019-06-03 15:41:42.060,133.0973,7195.1196,0.4334,27.2788,1.1971,-0.0019,2400.0,2340.0,0.1714,-2.7936,5.0362,88.9905 2019-06-03 15:41:42.080,133.0295,7195.2017,0.4285,27.1857,0.8923,0.1739,2400.0,2340.0,0.1626,-2.8143,5.0508,89.1347 2019-06-03 15:41:42.100,133.0392,7195.1743,0.4289,27.0934,0.8694,0.1596,2400.0,2340.0,0.1772,-2.8201,5.0429,89.279 2019-06-03 15:41:42.120,133.0392,7195.1743,0.4289,27.0934,1.2755,0.0034,2400.0,2340.0,0.1772,-2.8407,5.0296,89.279 2019-06-03 15:41:42.140,133.4252,7195.229,0.4289,27.0934,0.8931,0.1729,2400.0,2340.0,0.1655,-2.8407,5.0389,89.279 2019-06-03 15:41:42.160,133.3964,7195.311,0.4299,26.9967,1.2844,0.0061,2400.0,2340.0,0.1655,-2.8437,5.0323,89.4224 2019-06-03 15:41:42.180,133.3386,7195.3657,0.4299,26.9967,0.9759,0.1965,2400.0,2340.0,0.1509,-2.879,5.0561,89.4224 2019-06-03 15:41:42.200,133.3386,7195.4209,0.4261,26.8438,0.9349,0.1722,2400.0,2340.0,0.1597,-2.8672,5.0693,89.6335 2019-06-03 15:41:42.220,133.3386,7195.4482,0.4226,26.79,1.1963,-0.0012,2400.0,2340.0,0.1568,-2.9113,5.0641,89.7013 2019-06-03 15:41:42.240,133.3867,7195.4482,0.4226,26.79,1.0754,0.1967,2400.0,2340.0,0.1626,-2.9143,5.076,89.7013 2019-06-03 15:41:42.260,133.4156,7195.3384,0.4226,26.79,1.0924,-0.0101,2400.0,2340.0,0.1655,-2.9113,5.0468,89.7013 2019-06-03 15:41:42.280,133.3386,7195.229,0.4243,26.6855,1.0495,0.2215,2400.0,2340.0,0.1334,-2.929,5.0535,89.8416 2019-06-03 15:41:42.300,133.3482,7194.4624,0.4283,26.5765,1.0994,0.1917,2400.0,2340.0,0.1626,-2.926,5.0693,89.9819 2019-06-03 15:41:42.320,133.3289,7193.5317,0.4283,26.5765,1.112,0.0064,2400.0,2340.0,0.1626,-2.9407,5.0627,89.9819 2019-06-03 15:41:42.340,133.5405,7192.2178,0.4283,26.5765,1.0869,0.1738,2400.0,2340.0,0.1363,-2.976,5.0826,89.9819 2019-06-03 15:41:42.360,133.5309,7191.314,0.426,26.468,1.1316,0.0012,2400.0,2340.0,0.1392,-3.02,5.0839,90.12 2019-06-03 15:41:42.380,133.4829,7190.0273,0.426,26.468,1.1664,0.2353,2400.0,2340.0,0.0983,-3.0787,5.0879,90.12 2019-06-03 15:41:42.400,133.4925,7189.0693,0.4266,26.2904,1.1472,0.1948,2340.0,2400.0,0.1012,-3.0758,5.0786,90.3285 2019-06-03 15:41:42.420,133.4925,7188.1382,0.4237,26.2285,1.0403,0.0131,2340.0,2400.0,0.1158,-3.111,5.068,90.395 2019-06-03 15:41:42.440,133.5405,7186.9063,0.4237,26.2285,1.0787,0.1735,2340.0,2400.0,0.1012,-3.1696,5.0773,90.395 2019-06-03 15:41:42.460,133.5309,7186.2222,0.4237,26.2285,1.0662,0.013,2340.0,2400.0,0.11,-3.1696,5.0667,90.395 2019-06-03 15:41:42.480,133.4733,7186.3315,0.4278,26.1045,1.2433,0.1958,2340.0,2400.0,0.0954,-3.2428,5.0932,90.5336 2019-06-03 15:41:42.500,133.4829,7186.2769,0.4301,25.9789,1.2614,0.16,2340.0,2400.0,0.0954,-3.2486,5.1038,90.6721 2019-06-03 15:41:42.520,133.4637,7186.2769,0.4301,25.9789,1.0077,0.0202,2340.0,2400.0,0.1012,-3.2633,5.0892,90.6721 2019-06-03 15:41:42.540,133.8947,7186.1675,0.4301,25.9789,1.1623,0.1396,2340.0,2400.0,0.0954,-3.2925,5.0905,90.6721 2019-06-03 15:41:42.560,133.8566,7186.1675,0.4305,25.843,0.9715,0.0482,2340.0,2400.0,0.0954,-3.3013,5.072,90.8085 2019-06-03 15:41:42.580,133.7801,7186.2222,0.4305,25.843,1.3306,0.1622,2340.0,2400.0,0.0837,-3.3597,5.0707,90.8085 2019-06-03 15:41:42.600,133.7801,7186.2495,0.4352,25.6301,1.3017,0.1205,2340.0,2400.0,0.0837,-3.3539,5.0773,91.0144 2019-06-03 15:41:42.620,133.7897,7186.2495,0.435,25.5547,1.0192,0.0843,2340.0,2400.0,0.0837,-3.3656,5.0866,91.0813 2019-06-03 15:41:42.640,133.8374,7186.2769,0.435,25.5547,1.2703,0.0921,2340.0,2400.0,0.0662,-3.4035,5.0998,91.0813 2019-06-03 15:41:42.660,133.8374,7186.2769,0.435,25.5547,0.9922,0.1165,2340.0,2400.0,0.0691,-3.3918,5.0905,91.0813 2019-06-03 15:41:42.680,133.7992,7186.1675,0.4399,25.4043,1.2847,0.1256,2340.0,2400.0,0.0457,-3.4064,5.0773,91.2181 2019-06-03 15:41:42.700,133.7992,7186.085,0.4411,25.2431,1.2821,0.081,2340.0,2400.0,0.0603,-3.4006,5.0746,91.351 2019-06-03 15:41:42.720,133.7897,7186.1401,0.4411,25.2431,0.9345,0.1113,2340.0,2400.0,0.0486,-3.4064,5.0548,91.351 2019-06-03 15:41:42.740,134.1614,7186.1675,0.4411,25.2431,1.2858,0.0606,2340.0,2400.0,0.0428,-3.4386,5.0826,91.351 2019-06-03 15:41:42.760,134.1329,7186.2222,0.4425,25.0747,1.0003,0.1543,2340.0,2400.0,0.0457,-3.4327,5.0892,91.4843 2019-06-03 15:41:42.780,134.0758,7186.2495,0.4425,25.0747,1.2533,0.0624,2340.0,2400.0,0.0282,-3.4823,5.0919,91.4843 2019-06-03 15:41:42.800,134.0758,7186.2769,0.4467,24.8111,1.2185,0.0381,2340.0,2400.0,0.0311,-3.4794,5.0879,91.6858 2019-06-03 15:41:42.820,134.1044,7186.1675,0.4515,24.7252,1.0251,0.1738,2340.0,2400.0,0.0311,-3.4706,5.068,91.7545 2019-06-03 15:41:42.840,134.1614,7186.1401,0.4515,24.7252,1.2977,0.0016,2340.0,2400.0,0.0223,-3.4969,5.0733,91.7545 2019-06-03 15:41:42.860,134.1519,7186.1123,0.4515,24.7252,1.0688,0.1915,2340.0,2400.0,0.0252,-3.4794,5.0574,91.7545 2019-06-03 15:41:42.880,134.0853,7186.1675,0.4531,24.5417,1.2559,0.0205,2340.0,2400.0,0.0194,-3.5231,5.0733,91.8865 2019-06-03 15:41:42.900,134.0948,7185.4829,0.4553,24.3498,1.0625,0.0046,2340.0,2400.0,0.0223,-3.5231,5.0839,92.0154 2019-06-03 15:41:42.920,134.0758,7184.6348,0.4553,24.3498,1.1767,0.1884,2340.0,2400.0,0.0048,-3.4881,5.0773,92.0154 2019-06-03 15:41:42.940,134.4552,7183.3208,0.4553,24.3498,1.1294,-0.0147,2340.0,2400.0,-0.0157,-3.5406,5.0892,92.0154 2019-06-03 15:41:42.960,134.4552,7182.4722,0.4609,24.1542,1.1191,0.1989,2340.0,2400.0,-0.0098,-3.5173,5.0667,92.1457 2019-06-03 15:41:42.980,134.3795,7181.2134,0.4609,24.1542,1.0858,0.0084,2340.0,2400.0,-0.0274,-3.5406,5.0614,92.1457 2019-06-03 15:41:43.000,134.389,7180.3921,0.4685,23.8517,1.0177,0.0179,2340.0,2400.0,-0.0303,-3.5348,5.0733,92.3424 2019-06-03 15:41:43.020,134.389,7179.5435,0.4779,23.7535,1.1867,0.1757,2340.0,2400.0,-0.0215,-3.5319,5.0601,92.4102 2019-06-03 15:41:43.040,134.4458,7178.2573,0.4779,23.7535,1.1383,-0.0012,2340.0,2400.0,-0.0274,-3.5319,5.0813,92.4102 2019-06-03 15:41:43.060,134.4552,7177.6001,0.4779,23.7535,1.1449,0.2095,2340.0,2400.0,-0.0215,-3.5319,5.0826,92.4102 2019-06-03 15:41:43.080,134.3795,7177.6279,0.4804,23.5454,1.0606,0.0079,2340.0,2400.0,-0.0274,-3.5639,5.0773,92.5356 2019-06-03 15:41:43.100,134.389,7177.5454,0.4854,23.3326,0.8816,0.0088,2340.0,2400.0,-0.042,-3.5552,5.0733,92.6637 2019-06-03 15:41:43.120,134.389,7177.4907,0.4854,23.3326,1.1993,0.1537,2340.0,2400.0,-0.0449,-3.561,5.0601,92.6637 2019-06-03 15:41:43.140,134.7665,7177.5728,0.4854,23.3326,1.0177,0.0047,2340.0,2400.0,-0.0683,-3.5901,5.0614,92.6637 2019-06-03 15:41:43.160,134.7288,7177.6001,0.4971,23.124,1.1963,0.1996,2340.0,2400.0,-0.0332,-3.5726,5.0641,92.7918 2019-06-03 15:41:43.180,134.6723,7177.6553,0.4971,23.124,1.0144,-0.0017,2340.0,2400.0,-0.0508,-3.5901,5.0707,92.7918 2019-06-03 15:41:43.200,134.6723,7177.7373,0.5058,22.7988,0.9504,-0.0036,2340.0,2400.0,-0.042,-3.5843,5.0786,92.9806 2019-06-03 15:41:43.220,134.6912,7177.71,0.5136,22.6919,1.287,0.1596,2340.0,2400.0,-0.042,-3.5668,5.0707,93.0453 2019-06-03 15:41:43.240,134.7571,7177.6553,0.5136,22.6919,0.9855,0.0291,2340.0,2400.0,-0.0537,-3.5814,5.0799,93.0453 2019-06-03 15:41:43.260,134.7383,7177.5728,0.5136,22.6919,1.2263,0.1723,2340.0,2400.0,-0.0332,-3.5756,5.0535,93.0453 2019-06-03 15:41:43.280,134.6817,7177.5728,0.5204,22.4717,0.9585,0.0626,2340.0,2400.0,-0.0478,-3.5814,5.0455,93.1677 2019-06-03 15:41:43.300,134.6817,7176.8613,0.5289,22.2474,0.9737,0.0753,2340.0,2400.0,-0.0391,-3.5785,5.0601,93.2901 2019-06-03 15:41:43.320,134.6723,7175.9585,0.5289,22.2474,1.2736,0.0974,2340.0,2400.0,-0.0449,-3.5785,5.0535,93.2901 2019-06-03 15:41:43.340,135.0574,7174.6724,0.5289,22.2474,0.956,0.0918,2340.0,2400.0,-0.042,-3.6251,5.0813,93.2901 2019-06-03 15:41:43.360,135.0387,7173.7695,0.5426,22.0263,1.2796,0.1146,2340.0,2400.0,-0.0303,-3.593,5.0813,93.4147 2019-06-03 15:41:43.380,134.9731,7172.4282,0.5518,21.8009,0.9478,0.0872,2340.0,2400.0,-0.0449,-3.5989,5.0614,93.5362 2019-06-03 15:41:43.400,134.9824,7171.5801,0.5532,21.6844,0.9456,0.0767,2400.0,2400.0,-0.0274,-3.5901,5.0641,93.5944 2019-06-03 15:41:43.420,134.9918,7170.7593,0.5576,21.5748,1.3225,0.1429,2400.0,2400.0,-0.0332,-3.5901,5.0402,93.6542 2019-06-03 15:41:43.440,135.0387,7169.5005,0.5576,21.5748,0.9622,0.0826,2400.0,2400.0,-0.042,-3.5901,5.0535,93.6542 2019-06-03 15:41:43.460,135.0387,7168.7617,0.5576,21.5748,1.2614,0.1299,2400.0,2400.0,-0.0362,-3.5872,5.0482,93.6542 2019-06-03 15:41:43.480,134.9731,7168.8438,0.5669,21.3466,0.892,0.102,2400.0,2400.0,-0.042,-3.5989,5.0627,93.7714 2019-06-03 15:41:43.500,134.9731,7168.7891,0.5801,21.1185,1.021,0.1104,2400.0,2400.0,-0.0362,-3.5901,5.0826,93.889 2019-06-03 15:41:43.520,134.9731,7168.7891,0.5801,21.1185,1.3269,0.0458,2400.0,2400.0,-0.0274,-3.593,5.0667,93.889 2019-06-03 15:41:43.540,135.3469,7168.8984,0.5801,21.1185,0.9493,0.1419,2400.0,2400.0,-0.0362,-3.6047,5.0654,93.889 2019-06-03 15:41:43.560,135.3096,7169.0078,0.5971,20.8916,1.3099,0.0595,2400.0,2400.0,-0.0362,-3.5959,5.0402,94.0066 2019-06-03 15:41:43.580,135.2536,7169.0625,0.5971,20.8916,0.97,0.1706,2400.0,2400.0,-0.0303,-3.6134,5.0429,94.0066 2019-06-03 15:41:43.600,135.263,7169.1172,0.612,20.5434,1.0166,0.1588,2400.0,2400.0,-0.0332,-3.6134,5.0508,94.1775 2019-06-03 15:41:43.620,135.2723,7169.1445,0.6173,20.4291,1.2711,0.0067,2400.0,2400.0,-0.0128,-3.6076,5.0548,94.2321 2019-06-03 15:41:43.640,135.3282,7169.1719,0.6173,20.4291,0.9001,0.1823,2400.0,2400.0,-0.0303,-3.6076,5.0693,94.2321 2019-06-03 15:41:43.660,135.3189,7169.1445,0.6173,20.4291,1.311,0.0214,2400.0,2400.0,-0.0157,-3.6076,5.0641,94.2321 2019-06-03 15:41:43.680,135.2536,7169.1445,0.6309,20.1989,1.0033,0.1611,2400.0,2400.0,-0.0478,-3.6105,5.0455,94.3436 2019-06-03 15:41:43.700,135.263,7169.1172,0.6494,19.9691,1.0151,0.1392,2400.0,2400.0,-0.0391,-3.6047,5.0641,94.4529 2019-06-03 15:41:43.720,135.2536,7169.1172,0.6494,19.9691,1.281,0.0244,2400.0,2400.0,-0.0449,-3.5872,5.0349,94.4529 2019-06-03 15:41:43.740,135.7924,7169.1719,0.6494,19.9691,1.0247,0.1683,2400.0,2400.0,-0.0332,-3.5959,5.0548,94.4529 2019-06-03 15:41:43.760,135.7554,7169.2271,0.667,19.745,1.2929,0.0329,2400.0,2400.0,-0.0245,-3.5901,5.0588,94.5617 2019-06-03 15:41:43.780,135.7091,7169.1992,0.667,19.745,1.0369,0.1904,2400.0,2400.0,-0.0449,-3.6338,5.0641,94.5617 2019-06-03 15:41:43.800,135.6906,7169.1992,0.688,19.3992,1.0632,0.162,2400.0,2400.0,-0.0391,-3.6367,5.0654,94.72 2019-06-03 15:41:43.820,135.7091,7169.2271,0.6917,19.2854,1.1512,-0.0054,2400.0,2400.0,-0.0245,-3.5959,5.0296,94.7711 2019-06-03 15:41:43.840,135.7554,7169.2817,0.6917,19.2854,1.0506,0.2194,2400.0,2400.0,-0.0215,-3.6134,5.0429,94.7711 2019-06-03 15:41:43.860,135.7646,7169.2817,0.6917,19.2854,1.227,-0.0026,2400.0,2400.0,-0.0157,-3.5901,5.0323,94.7711 2019-06-03 15:41:43.880,135.6906,7169.2544,0.7108,19.0579,1.1246,0.2183,2400.0,2400.0,-0.0157,-3.5872,5.0521,94.8738 2019-06-03 15:41:43.900,135.7091,7168.5703,0.7313,18.8336,1.0895,0.1865,2400.0,2400.0,-0.0245,-3.5901,5.0667,94.977 2019-06-03 15:41:43.920,135.7091,7167.6948,0.7313,18.8336,1.2577,-0.0018,2400.0,2400.0,-0.0215,-3.5901,5.0455,94.977 2019-06-03 15:41:43.940,136.0784,7166.4907,0.7313,18.8336,1.0521,0.2095,2400.0,2400.0,-0.0332,-3.5959,5.0482,94.977 2019-06-03 15:41:43.960,136.0415,7165.7251,0.7498,18.6082,1.2555,0.0134,2400.0,2400.0,-0.0215,-3.5668,5.0349,95.0758 2019-06-03 15:41:43.980,135.9863,7164.521,0.7498,18.6082,1.1094,0.2155,2400.0,2400.0,-0.0157,-3.6309,5.0296,95.0758 2019-06-03 15:41:44.000,135.9955,7163.7549,0.7799,18.2685,1.0111,0.1974,2400.0,2400.0,-0.0128,-3.6309,5.0429,95.2235 2019-06-03 15:41:44.020,135.9863,7162.9346,0.784,18.1529,1.2252,0.0102,2400.0,2400.0,-0.0128,-3.5814,5.0376,95.2681 2019-06-03 15:41:44.040,136.0507,7161.7305,0.784,18.1529,1.1675,0.2074,2400.0,2400.0,-0.0478,-3.5872,5.0521,95.2681 2019-06-03 15:41:44.060,136.0507,7161.019,0.784,18.1529,1.1131,0.0062,2400.0,2400.0,-0.0303,-3.5843,5.0521,95.2681 2019-06-03 15:41:44.080,135.9955,7161.0742,0.8061,17.9309,1.1346,0.2093,2400.0,2400.0,-0.0215,-3.5668,5.0323,95.3639 2019-06-03 15:41:44.100,136.0047,7161.0464,0.8297,17.7108,1.0887,0.2041,2400.0,2400.0,-0.0069,-3.5901,5.0323,95.4587 2019-06-03 15:41:44.120,135.9863,7161.0464,0.8297,17.7108,1.2278,-0.004,2400.0,2400.0,0.0048,-3.5901,5.0151,95.4587 2019-06-03 15:41:44.140,136.363,7161.1016,0.8297,17.7108,1.1786,0.2225,2400.0,2400.0,-0.0128,-3.5843,5.0243,95.4587 2019-06-03 15:41:44.160,136.3538,7161.1289,0.8504,17.4925,1.1424,-0.0133,2400.0,2400.0,-0.0069,-3.5581,5.0296,95.5492 2019-06-03 15:41:44.180,136.2988,7161.0464,0.8504,17.4925,1.1464,0.202,2400.0,2400.0,-0.0098,-3.5668,5.0336,95.5492 2019-06-03 15:41:44.200,136.2896,7160.9644,0.8844,17.1655,1.1128,0.1765,2400.0,2400.0,-0.0157,-3.5639,5.0389,95.6838 2019-06-03 15:41:44.220,136.2988,7160.9097,0.8907,17.0543,1.1697,-0.0189,2400.0,2400.0,-0.0128,-3.561,5.0336,95.7267 2019-06-03 15:41:44.240,136.3447,7160.855,0.8907,17.0543,1.2992,0.2321,2400.0,2400.0,-0.0303,-3.5668,5.0323,95.7267 2019-06-03 15:41:44.260,136.363,7160.7456,0.8907,17.0543,1.0351,0.0013,2400.0,2400.0,-0.0069,-3.5581,5.0296,95.7267 2019-06-03 15:41:44.280,136.2896,7160.6636,0.917,16.8423,1.2245,0.1942,2400.0,2400.0,-0.0069,-3.5581,5.019,95.8172 2019-06-03 15:41:44.300,136.2896,7159.8979,0.9437,16.6287,1.1997,0.167,2400.0,2400.0,-0.004,-3.561,5.0243,95.905 2019-06-03 15:41:44.320,136.2896,7158.9678,0.9437,16.6287,1.0229,0.0093,2400.0,2400.0,0.0018,-3.5581,5.0177,95.905 2019-06-03 15:41:44.340,136.6645,7157.6001,0.9437,16.6287,1.3354,0.1734,2400.0,2400.0,-0.004,-3.5697,5.0349,95.905 2019-06-03 15:41:44.360,136.628,7156.7251,0.9671,16.4162,1.0425,0.0366,2400.0,2400.0,-0.0069,-3.5464,5.031,95.9898 2019-06-03 15:41:44.380,136.5641,7155.4941,0.9671,16.4162,1.2692,0.157,2400.0,2400.0,-0.0157,-3.5523,5.0349,95.9898 2019-06-03 15:41:44.400,136.5733,7154.6733,1.0069,16.0974,1.2947,0.1226,2400.0,2340.0,-0.0274,-3.5581,5.0323,96.1157 2019-06-03 15:41:44.420,136.5733,7153.853,1.0172,15.9904,1.0898,0.0756,2400.0,2340.0,-0.0332,-3.5523,4.9939,96.1546 2019-06-03 15:41:44.440,136.6371,7152.5947,1.0172,15.9904,1.3912,0.1399,2400.0,2340.0,-0.0274,-3.5872,5.0071,96.1546 2019-06-03 15:41:44.460,136.6462,7151.8291,1.0172,15.9904,0.9704,0.0742,2400.0,2340.0,-0.0069,-3.5668,5.0045,96.1546 2019-06-03 15:41:44.480,136.5824,7151.7744,1.0498,15.7794,1.264,0.1058,2400.0,2340.0,-0.0157,-3.5581,5.027,96.2355 2019-06-03 15:41:44.500,136.5824,7151.7471,1.0771,15.5655,1.2792,0.1092,2400.0,2340.0,-0.0186,-3.5785,5.0389,96.3124 2019-06-03 15:41:44.520,136.5733,7151.7471,1.0771,15.5655,0.9267,0.0734,2400.0,2340.0,-0.0128,-3.5697,5.0098,96.3124 2019-06-03 15:41:44.540,136.9282,7151.7744,1.0771,15.5655,1.362,0.1354,2400.0,2340.0,-0.0186,-3.561,5.0151,96.3124 2019-06-03 15:41:44.560,136.91,7151.7744,1.1002,15.3507,0.8757,0.043,2400.0,2340.0,-0.0157,-3.5639,4.9926,96.3846 2019-06-03 15:41:44.580,136.8646,7151.8018,1.1002,15.3507,1.3054,0.1306,2400.0,2340.0,-0.0215,-3.5639,4.9992,96.3846 2019-06-03 15:41:44.600,136.8646,7151.7744,1.1473,15.0265,1.3495,0.0781,2400.0,2340.0,-0.0478,-3.5785,5.0071,96.4921 2019-06-03 15:41:44.620,136.8737,7151.7471,1.1614,14.9186,0.9833,0.1195,2400.0,2340.0,-0.0449,-3.5785,4.9939,96.5262 2019-06-03 15:41:44.640,136.9282,7151.8018,1.1614,14.9186,1.3661,0.069,2400.0,2340.0,-0.0595,-3.5872,5.019,96.5262 2019-06-03 15:41:44.660,136.9191,7151.8018,1.1614,14.9186,1.0066,0.1491,2400.0,2340.0,-0.0391,-3.5581,5.0204,96.5262 2019-06-03 15:41:44.680,136.8556,7151.8291,1.195,14.7,1.3838,0.0269,2400.0,2340.0,-0.0566,-3.5668,4.9833,96.5953 2019-06-03 15:41:44.700,136.8646,7151.7744,1.2245,14.4791,1.446,-0.0009,2400.0,2340.0,-0.0566,-3.5697,5.0031,96.6591 2019-06-03 15:41:44.720,136.8556,7151.8018,1.2245,14.4791,1.0277,0.1828,2400.0,2340.0,-0.0478,-3.5639,4.978,96.6591 2019-06-03 15:41:44.740,137.2178,7151.8018,1.2245,14.4791,1.3036,0.043,2400.0,2340.0,-0.0478,-3.5668,5.0058,96.6591 2019-06-03 15:41:44.760,137.1908,7151.9111,1.2557,14.2562,0.8898,0.1296,2400.0,2340.0,-0.0478,-3.5668,5.0058,96.7212 2019-06-03 15:41:44.780,137.1365,7151.9385,1.2557,14.2562,1.4068,0.036,2400.0,2340.0,-0.0478,-3.5785,5.0124,96.7212 2019-06-03 15:41:44.800,137.1365,7151.9932,1.3103,13.9227,1.3805,0.0222,2400.0,2340.0,-0.0625,-3.6018,5.0084,96.8112 2019-06-03 15:41:44.820,137.1456,7151.9932,1.3289,13.813,0.987,0.1569,2400.0,2340.0,-0.0537,-3.5639,4.9846,96.8401 2019-06-03 15:41:44.840,137.1908,7152.0205,1.3289,13.813,1.3021,0.0522,2400.0,2340.0,-0.0654,-3.593,4.9873,96.8401 2019-06-03 15:41:44.860,137.1998,7152.0205,1.3289,13.813,0.9711,0.1531,2400.0,2340.0,-0.0537,-3.5814,4.978,96.8401 2019-06-03 15:41:44.880,137.1365,7151.9385,1.3659,13.5865,1.4275,0.0311,2400.0,2340.0,-0.0566,-3.5581,4.978,96.896 2019-06-03 15:41:44.900,137.1365,7151.2275,1.399,13.3568,1.3446,0.0198,2400.0,2340.0,-0.0683,-3.5872,4.9992,96.9472 2019-06-03 15:41:44.920,137.1456,7150.3794,1.399,13.3568,0.9867,0.1779,2400.0,2340.0,-0.0625,-3.5814,5.0084,96.9472 2019-06-03 15:41:44.940,137.5061,7149.1216,1.399,13.3568,1.4042,0.0191,2400.0,2340.0,-0.0858,-3.5785,5.0243,96.9472 2019-06-03 15:41:44.960,137.4791,7148.3286,1.4324,13.1265,1.0081,0.1687,2400.0,2340.0,-0.1034,-3.5814,4.974,96.9974 2019-06-03 15:41:44.980,137.4162,7147.0708,1.4324,13.1265,1.3025,0.0003,2400.0,2340.0,-0.1121,-3.5843,4.9634,96.9974 2019-06-03 15:41:45.000,137.4252,7146.2505,1.4869,12.7863,1.4009,0.0075,2400.0,2340.0,-0.1355,-3.5959,4.974,97.07 2019-06-03 15:41:45.020,137.4252,7145.375,1.5081,12.6767,1.0399,0.2023,2400.0,2340.0,-0.1238,-3.5756,4.97,97.0945 2019-06-03 15:41:45.040,137.4881,7144.1445,1.5081,12.6767,1.2215,0.0277,2400.0,2340.0,-0.1472,-3.5843,5.0031,97.0945 2019-06-03 15:41:45.060,137.4881,7143.4609,1.5081,12.6767,1.0573,0.1747,2400.0,2340.0,-0.1648,-3.5785,4.9714,97.0945 2019-06-03 15:41:45.080,137.4252,7143.4609,1.5448,12.4483,1.3321,-0.0036,2400.0,2340.0,-0.1531,-3.5843,4.974,97.1395 2019-06-03 15:41:45.100,137.4342,7143.4609,1.5788,12.2222,1.3029,-0.0093,2400.0,2340.0,-0.1765,-3.6221,4.9767,97.1806 2019-06-03 15:41:45.120,137.4072,7143.4336,1.5788,12.2222,0.9504,0.2122,2400.0,2340.0,-0.1618,-3.593,4.97,97.1806 2019-06-03 15:41:45.140,137.6318,7143.4336,1.5788,12.2222,1.2855,0.0003,2400.0,2340.0,-0.1969,-3.593,4.9661,97.1806 2019-06-03 15:41:45.160,137.6139,7143.4609,1.6146,11.9976,0.9637,0.1926,2400.0,2340.0,-0.1706,-3.5872,4.9687,97.2208 2019-06-03 15:41:45.180,137.56,7143.4609,1.6146,11.9976,1.4208,-0.0293,2400.0,2340.0,-0.1881,-3.5872,4.9396,97.2208 2019-06-03 15:41:45.200,137.569,7143.4609,1.6736,11.6591,1.4057,-0.0209,2400.0,2340.0,-0.1823,-3.5901,4.9806,97.2789 2019-06-03 15:41:45.220,137.56,7143.4336,1.6991,11.5478,0.9896,0.2116,2400.0,2340.0,-0.194,-3.593,4.9661,97.2986 2019-06-03 15:41:45.240,137.6139,7143.4336,1.6991,11.5478,1.2707,0.0072,2400.0,2340.0,-0.2174,-3.5901,4.974,97.2986 2019-06-03 15:41:45.260,137.6318,7143.4063,1.6991,11.5478,1.0026,0.1951,2400.0,2340.0,-0.2291,-3.5843,4.9542,97.2986 2019-06-03 15:41:45.280,137.569,7143.3516,1.7356,11.3195,1.3983,-0.0329,2400.0,2340.0,-0.2291,-3.593,4.9475,97.3327 2019-06-03 15:41:45.300,137.569,7143.2969,1.7722,11.0898,1.3165,-0.041,2400.0,2340.0,-0.2495,-3.5872,4.9581,97.3659 2019-06-03 15:41:45.320,137.56,7143.2969,1.7722,11.0898,1.0736,0.2268,2400.0,2340.0,-0.2495,-3.5901,4.9515,97.3659 2019-06-03 15:41:45.340,137.927,7143.3242,1.7722,11.0898,1.2274,-0.0057,2400.0,2340.0,-0.2788,-3.5901,4.9674,97.3659 2019-06-03 15:41:45.360,137.8913,7143.3789,1.8118,10.8575,1.0199,0.2086,2400.0,2340.0,-0.2875,-3.5872,4.9595,97.3974 2019-06-03 15:41:45.380,137.8466,7143.4336,1.8118,10.8575,1.3369,-0.0529,2400.0,2340.0,-0.2875,-3.5989,4.9568,97.3974 2019-06-03 15:41:45.400,137.8377,7143.4609,1.8716,10.5035,1.2444,-0.0627,2400.0,2400.0,-0.2963,-3.593,4.9661,97.4411 2019-06-03 15:41:45.420,137.8466,7143.4609,1.8992,10.3918,1.1068,0.264,2400.0,2400.0,-0.2905,-3.5901,4.9489,97.4582 2019-06-03 15:41:45.440,137.9002,7143.4609,1.8992,10.3918,1.2259,-0.0493,2400.0,2400.0,-0.3109,-3.6309,4.9542,97.4582 2019-06-03 15:41:45.460,137.9002,7143.4063,1.8992,10.3918,1.1006,0.2296,2400.0,2400.0,-0.3138,-3.5843,4.9502,97.4582 2019-06-03 15:41:45.480,137.8466,7143.3789,1.935,10.1502,1.2256,-0.076,2400.0,2400.0,-0.3314,-3.593,4.9422,97.4831 2019-06-03 15:41:45.500,137.8466,7142.668,1.9728,9.9106,1.0972,-0.0382,2400.0,2400.0,-0.3343,-3.6251,4.9528,97.508 2019-06-03 15:41:45.520,137.8377,7141.7114,1.9728,9.9106,1.2259,0.2226,2400.0,2400.0,-0.3343,-3.5989,4.9197,97.508 2019-06-03 15:41:45.540,138.0518,7140.3442,1.9728,9.9106,1.1091,-0.0216,2400.0,2400.0,-0.3811,-3.5843,4.9396,97.508 2019-06-03 15:41:45.560,138.034,7139.4692,2.0145,9.6718,1.2326,0.2023,2400.0,2400.0,-0.3781,-3.5843,4.933,97.5325 2019-06-03 15:41:45.580,137.9805,7138.1846,2.0145,9.6718,1.0954,-0.054,2400.0,2400.0,-0.3869,-3.5959,4.9489,97.5325 2019-06-03 15:41:45.600,137.9895,7137.3369,2.0714,9.3123,1.0218,0.0013,2400.0,2400.0,-0.4074,-3.628,4.9542,97.5683 2019-06-03 15:41:45.620,137.9984,7136.4346,2.0984,9.1982,1.3154,0.2021,2400.0,2400.0,-0.4103,-3.5901,4.9237,97.5819 2019-06-03 15:41:45.640,138.034,7135.1226,2.0984,9.1982,1.027,0.0051,2400.0,2400.0,-0.422,-3.6251,4.9237,97.5819 2019-06-03 15:41:45.660,138.0518,7134.3843,2.0984,9.1982,1.2899,0.2157,2400.0,2400.0,-0.4103,-3.6134,4.9184,97.5819 2019-06-03 15:41:45.680,137.9895,7134.439,2.1346,8.9539,0.9922,-0.0313,2400.0,2400.0,-0.4191,-3.6134,4.9078,97.6029 2019-06-03 15:41:45.700,137.9895,7134.4116,2.1737,8.7132,0.909,0.0171,2400.0,2400.0,-0.4191,-3.6221,4.9422,97.6256 2019-06-03 15:41:45.720,137.9895,7134.439,2.1737,8.7132,1.4231,0.1738,2400.0,2400.0,-0.4337,-3.6134,4.9158,97.6256 2019-06-03 15:41:45.740,138.1942,7134.4663,2.1737,8.7132,0.8901,0.068,2400.0,2400.0,-0.46,-3.6105,4.9595,97.6256 2019-06-03 15:41:45.760,138.1764,7134.4663,2.2185,8.4746,1.3668,0.151,2400.0,2400.0,-0.4951,-3.6105,4.9078,97.6483 2019-06-03 15:41:45.780,138.1319,7134.521,2.2185,8.4746,0.9471,0.0393,2400.0,2400.0,-0.5068,-3.6105,4.8933,97.6483 2019-06-03 15:41:45.800,138.1052,7134.5483,2.2741,8.1071,0.9589,0.0868,2400.0,2400.0,-0.536,-3.6134,4.8999,97.6789 2019-06-03 15:41:45.820,138.1319,7134.5757,2.293,7.9848,1.4778,0.1031,2400.0,2400.0,-0.5331,-3.6076,4.8813,97.689 2019-06-03 15:41:45.840,138.1764,7134.603,2.293,7.9848,0.8332,0.1177,2400.0,2400.0,-0.5652,-3.6338,4.9078,97.689 2019-06-03 15:41:45.860,138.1764,7134.5757,2.293,7.9848,1.4837,0.0699,2400.0,2400.0,-0.5594,-3.6105,4.9078,97.689 2019-06-03 15:41:45.880,138.1052,7134.521,2.3281,7.7354,0.9563,0.1022,2400.0,2400.0,-0.5564,-3.5989,4.9025,97.7056 2019-06-03 15:41:45.900,138.1319,7134.439,2.3678,7.4894,0.9315,0.1595,2400.0,2400.0,-0.5711,-3.6512,4.9171,97.7235 2019-06-03 15:41:45.920,138.1141,7134.439,2.3678,7.4894,1.4578,0.0337,2400.0,2400.0,-0.5564,-3.6047,4.8787,97.7235 2019-06-03 15:41:45.940,138.3184,7134.439,2.3678,7.4894,0.9249,0.1607,2400.0,2400.0,-0.5974,-3.6221,4.8681,97.7235 2019-06-03 15:41:45.960,138.3184,7134.4116,2.4084,7.2426,1.4689,0.0395,2400.0,2400.0,-0.5974,-3.628,4.8496,97.7423 2019-06-03 15:41:45.980,138.2563,7134.4116,2.4084,7.2426,0.9242,0.146,2400.0,2400.0,-0.5915,-3.6163,4.8443,97.7423 2019-06-03 15:41:46.000,138.2652,7134.439,2.4583,6.8633,0.8997,0.1878,2400.0,2400.0,-0.5915,-3.628,4.8694,97.7624 2019-06-03 15:41:46.020,138.2652,7134.439,2.4713,6.7374,1.4046,0.0101,2400.0,2400.0,-0.5681,-3.5843,4.8668,97.7677 2019-06-03 15:41:46.040,138.3184,7134.4937,2.4713,6.7374,1.0288,0.1844,2400.0,2400.0,-0.5798,-3.6309,4.8933,97.7677 2019-06-03 15:41:46.060,138.3184,7134.4663,2.4713,6.7374,1.3816,-0.0109,2400.0,2400.0,-0.5828,-3.6105,4.8747,97.7677 2019-06-03 15:41:46.080,138.2563,7134.4937,2.5066,6.4861,1.1024,0.1967,2400.0,2400.0,-0.5886,-3.5989,4.8535,97.7812 2019-06-03 15:41:46.100,138.2652,7134.4663,2.5443,6.2346,0.9977,0.2089,2400.0,2400.0,-0.6061,-3.628,4.8549,97.7952 2019-06-03 15:41:46.120,138.2563,7134.4663,2.5443,6.2346,1.3487,-0.0346,2400.0,2400.0,-0.6032,-3.5814,4.8231,97.7952 2019-06-03 15:41:46.140,138.469,7134.439,2.5443,6.2346,1.0118,0.2338,2400.0,2400.0,-0.6178,-3.5959,4.8244,97.7952 2019-06-03 15:41:46.160,138.4424,7134.4663,2.5777,5.9842,1.2944,-0.0664,2400.0,2400.0,-0.5915,-3.5959,4.8443,97.8096 2019-06-03 15:41:46.180,138.407,7134.4663,2.5777,5.9842,1.0913,0.2222,2400.0,2400.0,-0.6061,-3.593,4.8443,97.8096 2019-06-03 15:41:46.200,138.3982,7134.4937,2.6234,5.6011,1.0284,0.2689,2400.0,2400.0,-0.6003,-3.6047,4.876,97.8289 2019-06-03 15:41:46.220,138.3982,7134.4663,2.6318,5.4728,1.2378,-0.0582,2400.0,2400.0,-0.6032,-3.5959,4.8443,97.8328 2019-06-03 15:41:46.240,138.4513,7134.4663,2.6318,5.4728,1.1734,0.2287,2400.0,2400.0,-0.6061,-3.6047,4.8469,97.8328 2019-06-03 15:41:46.260,138.4601,7134.4116,2.6318,5.4728,1.1738,-0.0496,2400.0,2400.0,-0.6149,-3.6018,4.8098,97.8328 2019-06-03 15:41:46.280,138.3982,7134.4116,2.6654,5.2176,1.1656,0.2062,2400.0,2400.0,-0.612,-3.5959,4.7913,97.8459 2019-06-03 15:41:46.300,138.407,7134.3843,2.7025,4.9722,1.0525,0.2308,2400.0,2400.0,-0.6061,-3.6018,4.7834,97.8599 2019-06-03 15:41:46.320,138.3982,7134.4116,2.7025,4.9722,1.2089,-0.0328,2400.0,2400.0,-0.5828,-3.5697,4.7701,97.8599 2019-06-03 15:41:46.340,138.6015,7134.439,2.7025,4.9722,1.176,0.2238,2400.0,2400.0,-0.5915,-3.5901,4.8019,97.8599 2019-06-03 15:41:46.360,138.5927,7134.4663,2.7321,4.7189,1.159,-0.0402,2400.0,2400.0,-0.6061,-3.6134,4.7847,97.8717 2019-06-03 15:41:46.380,138.5485,7134.4937,2.7321,4.7189,1.1583,0.2561,2400.0,2400.0,-0.6003,-3.593,4.7913,97.8717 2019-06-03 15:41:46.400,138.5397,7134.521,2.7771,4.3414,1.1257,0.2349,2340.0,2400.0,-0.612,-3.6018,4.7993,97.8909 2019-06-03 15:41:46.420,138.5485,7134.521,2.7832,4.2104,1.2097,-0.0438,2340.0,2400.0,-0.6178,-3.5901,4.7529,97.8949 2019-06-03 15:41:46.440,138.6015,7134.5483,2.7832,4.2104,1.2134,0.2183,2340.0,2400.0,-0.6091,-3.5872,4.7582,97.8949 2019-06-03 15:41:46.460,138.6103,7134.521,2.7832,4.2104,1.0987,-0.037,2340.0,2400.0,-0.6091,-3.5814,4.7185,97.8949 2019-06-03 15:41:46.480,138.5397,7134.4937,2.8155,3.9575,1.1963,0.2461,2340.0,2400.0,-0.6003,-3.5319,4.7132,97.908 2019-06-03 15:41:46.500,138.5485,7133.6191,2.8456,3.7102,1.2215,0.2217,2340.0,2400.0,-0.612,-3.5697,4.7291,97.9207 2019-06-03 15:41:46.520,138.5397,7132.5527,2.8456,3.7102,1.1235,-0.0301,2340.0,2400.0,-0.6149,-3.5144,4.7066,97.9207 2019-06-03 15:41:46.540,138.7425,7131.0225,2.8456,3.7102,1.2289,0.2039,2340.0,2400.0,-0.6266,-3.5056,4.7357,97.9207 2019-06-03 15:41:46.560,138.7249,7129.9834,2.8673,3.4556,1.1479,-0.0387,2340.0,2400.0,-0.6178,-3.5085,4.7132,97.9329 2019-06-03 15:41:46.580,138.672,7128.4805,2.8673,3.4556,1.1693,0.22,2340.0,2400.0,-0.5974,-3.494,4.7172,97.9329 2019-06-03 15:41:46.600,138.6809,7127.4419,2.9051,3.0819,1.2137,0.2383,2340.0,2400.0,-0.5974,-3.4998,4.7304,97.9517 2019-06-03 15:41:46.620,138.6809,7126.4302,2.9087,2.9546,1.0525,-0.0447,2340.0,2400.0,-0.5886,-3.4561,4.6986,97.9556 2019-06-03 15:41:46.640,138.7337,7124.8726,2.9087,2.9546,1.1305,0.1751,2340.0,2400.0,-0.612,-3.4706,4.7132,97.9556 2019-06-03 15:41:46.660,138.7425,7124.0249,2.9087,2.9546,1.0946,-0.0348,2340.0,2400.0,-0.6178,-3.4736,4.6933,97.9556 2019-06-03 15:41:46.680,138.672,7124.1343,2.9357,2.7133,1.1054,0.2162,2340.0,2400.0,-0.6295,-3.4444,4.6867,97.9687 2019-06-03 15:41:46.700,138.6809,7124.0796,2.9616,2.4767,1.1242,0.2229,2340.0,2400.0,-0.6383,-3.4736,4.7079,97.9818 2019-06-03 15:41:46.720,138.6632,7124.0796,2.9616,2.4767,1.1154,-0.0334,2340.0,2400.0,-0.6149,-3.4736,4.6682,97.9818 2019-06-03 15:41:46.740,138.8832,7124.0522,2.9616,2.4767,1.1076,0.2085,2340.0,2400.0,-0.6149,-3.4677,4.692,97.9818 2019-06-03 15:41:46.760,138.8745,7124.0249,2.9797,2.2401,1.1926,-0.0335,2340.0,2400.0,-0.612,-3.4648,4.6695,97.9941 2019-06-03 15:41:46.780,138.8217,7124.0522,2.9797,2.2401,1.1464,0.2067,2340.0,2400.0,-0.6091,-3.4561,4.6827,97.9941 2019-06-03 15:41:46.800,138.8129,7124.0249,3.0121,1.8908,1.1645,0.2239,2340.0,2400.0,-0.6149,-3.4561,4.692,98.0133 2019-06-03 15:41:46.820,138.8217,7124.0249,3.0158,1.7715,1.1486,-0.0318,2340.0,2400.0,-0.6061,-3.4473,4.6576,98.0177 2019-06-03 15:41:46.840,138.8657,7124.0249,3.0158,1.7715,1.2274,0.1916,2340.0,2400.0,-0.6266,-3.4181,4.6483,98.0177 2019-06-03 15:41:46.860,138.8832,7124.0249,3.0158,1.7715,1.1205,0.0001,2340.0,2400.0,-0.6295,-3.4181,4.6364,98.0177 2019-06-03 15:41:46.880,138.8129,7124.0249,3.0395,1.543,1.0373,0.2219,2340.0,2400.0,-0.6149,-3.3948,4.6443,98.0277 2019-06-03 15:41:46.900,138.8217,7123.9976,3.0643,1.318,1.1061,0.2566,2340.0,2400.0,-0.6178,-3.3772,4.6682,98.0369 2019-06-03 15:41:46.920,138.8129,7123.9976,3.0643,1.318,1.1353,-0.0326,2340.0,2400.0,-0.6032,-3.2837,4.6377,98.0369 2019-06-03 15:41:46.940,138.8745,7123.9702,3.0643,1.318,1.1749,0.2006,2340.0,2400.0,-0.6032,-3.2691,4.6563,98.0369 2019-06-03 15:41:46.960,138.8569,7124.0522,3.083,1.0931,1.1216,-0.0333,2340.0,2400.0,-0.6091,-3.1959,4.643,98.0426 2019-06-03 15:41:46.980,138.8217,7124.1343,3.083,1.0931,1.2134,0.2186,2340.0,2400.0,-0.6091,-3.1608,4.6377,98.0426 2019-06-03 15:41:47.000,138.8129,7124.189,3.1147,0.7649,1.1982,0.2332,2340.0,2400.0,-0.6091,-3.1754,4.651,98.0496 2019-06-03 15:41:47.020,138.8217,7124.1069,3.1175,0.6525,1.1745,-0.0066,2340.0,2400.0,-0.6266,-3.1286,4.5993,98.0496 2019-06-03 15:41:47.040,138.8745,7124.1616,3.1175,0.6525,1.1941,0.1841,2340.0,2400.0,-0.612,-3.1227,4.6099,98.0496 2019-06-03 15:41:47.060,138.8832,7124.1069,3.1175,0.6525,0.9826,-0.0046,2340.0,2400.0,-0.6091,-3.0963,4.5861,98.0496 2019-06-03 15:41:47.080,138.8129,7124.0796,3.1397,0.4456,1.2233,0.1832,2340.0,2400.0,-0.5915,-3.0611,4.5967,98.0505 2019-06-03 15:41:47.100,138.8217,7124.0249,3.1619,0.2413,1.2119,0.2167,2340.0,2400.0,-0.5886,-3.064,4.6258,98.05 2019-06-03 15:41:47.120,138.8129,7124.0249,3.1619,0.2413,1.0858,-0.0027,2340.0,2400.0,-0.6061,-3.0611,4.6007,98.05 2019-06-03 15:41:47.140,138.8745,7123.9976,3.1619,0.2413,1.3173,0.1675,2340.0,2400.0,-0.6149,-3.0582,4.6086,98.05 2019-06-03 15:41:47.160,138.8657,7123.9976,3.1758,0.0381,1.0092,0.0171,2340.0,2400.0,-0.6324,-3.0611,4.5795,98.0461 2019-06-03 15:41:47.180,138.8217,7124.0249,3.1758,0.0381,1.2337,0.1852,2340.0,2400.0,-0.6091,-3.0523,4.5676,98.0461 2019-06-03 15:41:47.200,138.8129,7124.0249,3.2066,-0.2557,1.21,0.1859,2340.0,2400.0,-0.6061,-3.0523,4.5623,98.0365 2019-06-03 15:41:47.220,138.8217,7123.9976,3.2108,-0.3544,1.0473,0.0018,2340.0,2400.0,-0.5857,-3.0318,4.5437,98.0313 2019-06-03 15:41:47.240,138.8657,7124.0249,3.2108,-0.3544,1.2478,0.1537,2340.0,2400.0,-0.6061,-3.0318,4.5676,98.0313 2019-06-03 15:41:47.260,138.8745,7124.0522,3.2108,-0.3544,1.0229,0.029,2340.0,2400.0,-0.6061,-2.9907,4.5676,98.0313 2019-06-03 15:41:47.280,138.8129,7124.0796,3.2336,-0.5444,1.3077,0.1671,2340.0,2400.0,-0.6003,-2.9319,4.5517,98.0203 2019-06-03 15:41:47.300,138.8305,7124.0249,3.2522,-0.7301,1.2185,0.1836,2340.0,2400.0,-0.5886,-2.9202,4.549,98.0085 2019-06-03 15:41:47.320,138.8217,7124.0249,3.2522,-0.7301,1.0192,0.0133,2340.0,2400.0,-0.5886,-2.8996,4.5,98.0085 2019-06-03 15:41:47.340,139.0236,7123.9976,3.2522,-0.7301,1.3106,0.1256,2340.0,2400.0,-0.5886,-2.8054,4.5093,98.0085 2019-06-03 15:41:47.360,139.0061,7123.9976,3.2654,-0.9181,0.9474,0.0774,2340.0,2400.0,-0.5798,-2.7612,4.5093,97.9915 2019-06-03 15:41:47.380,138.9535,7124.0522,3.2654,-0.9181,1.2544,0.1163,2340.0,2400.0,-0.5798,-2.661,4.5014,97.9915 2019-06-03 15:41:47.400,138.9535,7124.1069,3.2914,-1.1834,1.2733,0.1519,2400.0,2400.0,-0.5828,-2.6315,4.5133,97.9652 2019-06-03 15:41:47.420,138.9535,7124.1069,3.2965,-1.2716,0.9467,0.0591,2400.0,2400.0,-0.5828,-2.5311,4.4881,97.9556 2019-06-03 15:41:47.440,139.0061,7124.0796,3.2965,-1.2716,1.2544,0.095,2400.0,2400.0,-0.5711,-2.4542,4.4987,97.9556 2019-06-03 15:41:47.460,139.0149,7124.0796,3.2965,-1.2716,0.9245,0.0712,2400.0,2400.0,-0.574,-2.3802,4.4696,97.9556 2019-06-03 15:41:47.480,138.9622,7124.0796,3.3132,-1.4346,1.3735,0.1067,2400.0,2400.0,-0.5418,-2.2883,4.4881,97.9346 2019-06-03 15:41:47.500,138.9622,7123.9976,3.3237,-1.5909,1.2925,0.1401,2400.0,2400.0,-0.5477,-2.1993,4.4788,97.9145 2019-06-03 15:41:47.520,138.9447,7124.0249,3.3237,-1.5909,0.8195,0.0807,2400.0,2400.0,-0.5155,-2.0447,4.4444,97.9145 2019-06-03 15:41:47.540,139.1549,7124.0522,3.3237,-1.5909,1.3554,0.0733,2400.0,2400.0,-0.4892,-1.8689,4.4484,97.9145 2019-06-03 15:41:47.560,139.1549,7124.0522,3.3298,-1.7382,0.9438,0.1109,2400.0,2400.0,-0.4629,-1.6897,4.4471,97.8914 2019-06-03 15:41:47.580,139.0937,7124.0522,3.3298,-1.7382,1.3642,0.0669,2400.0,2400.0,-0.4191,-1.552,4.455,97.8914 2019-06-03 15:41:47.600,139.0937,7124.1069,3.3473,-1.9262,1.4097,0.0926,2400.0,2400.0,-0.4015,-1.4501,4.4563,97.8586 2019-06-03 15:41:47.620,139.1024,7124.0522,3.3522,-1.9828,0.8361,0.0871,2400.0,2400.0,-0.3723,-1.333,4.4365,97.8468 2019-06-03 15:41:47.640,139.1462,7124.0796,3.3522,-1.9828,1.3554,0.0711,2400.0,2400.0,-0.3168,-1.2548,4.4457,97.8468 2019-06-03 15:41:47.660,139.1549,7124.0796,3.3522,-1.9828,0.9345,0.126,2400.0,2400.0,-0.2729,-1.1946,4.4312,97.8468 2019-06-03 15:41:47.680,139.0937,7124.0796,3.366,-2.0775,1.3387,0.0311,2400.0,2400.0,-0.2261,-1.1675,4.4404,97.8232 2019-06-03 15:41:47.700,139.1024,7124.0522,3.3706,-2.1568,1.4001,0.0259,2400.0,2400.0,-0.2261,-1.1706,4.4444,97.8 2019-06-03 15:41:47.720,139.0849,7124.0796,3.3706,-2.1568,0.8794,0.1335,2400.0,2400.0,-0.2057,-1.1224,4.3994,97.8 2019-06-03 15:41:47.740,139.3034,7124.0522,3.3706,-2.1568,1.3291,0.0181,2400.0,2400.0,-0.1765,-1.1284,4.414,97.8 2019-06-03 15:41:47.760,139.2773,7124.0522,3.3752,-2.2191,0.8909,0.1619,2400.0,2400.0,-0.1618,-1.1434,4.4087,97.7768 2019-06-03 15:41:47.780,139.2249,7124.0249,3.3752,-2.2191,1.3199,-0.0083,2400.0,2400.0,-0.1355,-1.1043,4.4113,97.7768 2019-06-03 15:41:47.800,139.2249,7124.0249,3.3947,-2.2726,1.379,-0.0311,2400.0,2400.0,-0.118,-1.1133,4.4272,97.7449 2019-06-03 15:41:47.820,139.2249,7124.0522,3.4034,-2.2834,0.8347,0.2007,2400.0,2400.0,-0.1151,-1.1314,4.3968,97.734 2019-06-03 15:41:47.840,139.2773,7124.0522,3.4034,-2.2834,1.3639,-0.0637,2400.0,2400.0,-0.0888,-1.1254,4.4047,97.734 2019-06-03 15:41:47.860,139.286,7123.9976,3.4034,-2.2834,0.9101,0.2439,2400.0,2400.0,-0.0742,-1.1284,4.3941,97.734 2019-06-03 15:41:47.880,139.2249,7123.9429,3.4147,-2.2967,1.233,-0.0944,2400.0,2400.0,-0.0362,-1.1284,4.4021,97.713 2019-06-03 15:41:47.900,139.2336,7123.8613,3.4223,-2.2978,1.3199,-0.0849,2400.0,2400.0,-0.0362,-1.1254,4.406,97.6933 2019-06-03 15:41:47.920,139.2161,7123.916,3.4223,-2.2978,0.9238,0.2324,2400.0,2400.0,-0.0449,-1.1284,4.3862,97.6933 2019-06-03 15:41:47.940,139.2773,7124.0522,3.4223,-2.2978,1.3243,-0.0611,2400.0,2400.0,-0.0362,-1.1284,4.4021,97.6933 2019-06-03 15:41:47.960,139.2773,7124.1069,3.4321,-2.2916,0.9774,0.2403,2400.0,2400.0,-0.0362,-1.1254,4.3928,97.6732 2019-06-03 15:41:47.980,139.2249,7124.1343,3.4321,-2.2916,1.3317,-0.062,2400.0,2400.0,-0.004,-1.1314,4.4073,97.6732 2019-06-03 15:41:48.000,139.2249,7124.189,3.4514,-2.2558,1.2407,-0.083,2400.0,2400.0,-0.0069,-1.1404,4.406,97.6422 2019-06-03 15:41:48.020,139.2423,7124.1616,3.4637,-2.2393,0.9992,0.2331,2400.0,2400.0,-0.0186,-1.1465,4.3968,97.6339 2019-06-03 15:41:48.040,139.286,7124.1616,3.4637,-2.2393,1.1908,-0.0601,2400.0,2400.0,-0.0362,-1.2007,4.3981,97.6339 2019-06-03 15:41:48.060,139.286,7124.1616,3.4637,-2.2393,1.0262,0.2506,2400.0,2400.0,-0.0303,-1.2458,4.4007,97.6339 2019-06-03 15:41:48.080,139.2249,7124.1616,3.4744,-2.2048,1.183,-0.0924,2400.0,2400.0,-0.0157,-1.2428,4.4047,97.6151 2019-06-03 15:41:48.100,139.2336,7124.1069,3.4834,-2.1699,1.0969,-0.0896,2400.0,2400.0,-0.0128,-1.2699,4.4113,97.5967 2019-06-03 15:41:48.120,139.2161,7124.1069,3.4834,-2.1699,1.1412,0.239,2400.0,2400.0,-0.0303,-1.315,4.3875,97.5967 2019-06-03 15:41:48.140,139.4341,7124.1069,3.4834,-2.1699,1.0847,-0.045,2400.0,2400.0,-0.0186,-1.312,4.406,97.5967 2019-06-03 15:41:48.160,139.4341,7124.0522,3.4989,-2.1276,1.132,0.2154,2400.0,2400.0,-0.042,-1.339,4.3954,97.5779 2019-06-03 15:41:48.180,139.3645,7124.0796,3.4989,-2.1276,1.0702,-0.0548,2400.0,2400.0,-0.0215,-1.336,4.4087,97.5779 2019-06-03 15:41:48.200,139.3645,7124.1343,3.5236,-2.0536,0.9648,-0.0356,2400.0,2400.0,-0.0508,-1.351,4.3968,97.5425 2019-06-03 15:41:48.220,139.3645,7124.0796,3.5365,-2.0293,1.1801,0.2279,2400.0,2400.0,-0.0537,-1.366,4.3862,97.5338 2019-06-03 15:41:48.240,139.4167,7124.1069,3.5365,-2.0293,1.0199,-0.0558,2400.0,2400.0,-0.0654,-1.3781,4.4021,97.5338 2019-06-03 15:41:48.260,139.4254,7124.0796,3.5365,-2.0293,1.2063,0.2185,2400.0,2400.0,-0.0654,-1.3811,4.3981,97.5338 2019-06-03 15:41:48.280,139.3732,7123.9976,3.5477,-1.9832,0.9504,-0.0652,2400.0,2400.0,-0.0537,-1.3811,4.3968,97.5141 2019-06-03 15:41:48.300,139.3819,7123.8887,3.563,-1.9378,0.8868,-0.0528,2400.0,2400.0,-0.0595,-1.3841,4.3928,97.4962 2019-06-03 15:41:48.320,139.3645,7123.8887,3.563,-1.9378,1.23,0.2093,2400.0,2400.0,-0.0508,-1.3811,4.3769,97.4962 2019-06-03 15:41:48.340,139.4167,7123.916,3.563,-1.9378,0.946,-0.0233,2400.0,2400.0,-0.0478,-1.3841,4.3888,97.4962 2019-06-03 15:41:48.360,139.4167,7123.9976,3.5825,-1.8858,1.2111,0.1879,2400.0,2400.0,-0.0449,-1.3841,4.3954,97.4761 2019-06-03 15:41:48.380,139.3645,7124.0249,3.5825,-1.8858,0.9652,-0.0082,2400.0,2400.0,-0.042,-1.3901,4.3862,97.4761 2019-06-03 15:41:48.400,139.3557,7124.0522,3.6061,-1.8073,0.9171,0.0217,2400.0,2400.0,-0.0478,-1.4081,4.3862,97.442 2019-06-03 15:41:48.420,139.3819,7123.9976,3.617,-1.7845,1.2437,0.141,2400.0,2400.0,-0.0595,-1.4051,4.3742,97.4319 2019-06-03 15:41:48.440,139.4341,7123.9429,3.617,-1.7845,0.9722,0.0336,2400.0,2400.0,-0.0449,-1.4171,4.3782,97.4319 2019-06-03 15:41:48.460,139.4254,7123.9429,3.617,-1.7845,1.2374,0.1491,2400.0,2400.0,-0.0391,-1.4141,4.3848,97.4319 2019-06-03 15:41:48.480,139.3645,7123.8887,3.6309,-1.7365,0.9441,0.0061,2400.0,2400.0,-0.0245,-1.4171,4.3782,97.4123 2019-06-03 15:41:48.500,139.3732,7123.8066,3.6468,-1.6919,0.9045,0.0308,2400.0,2400.0,-0.0332,-1.4171,4.3716,97.3939 2019-06-03 15:41:48.520,139.347,7123.7793,3.6468,-1.6919,1.2052,0.1454,2400.0,2400.0,-0.0303,-1.4411,4.3742,97.3939 2019-06-03 15:41:48.540,139.4254,7123.834,3.6468,-1.6919,0.9489,0.0162,2400.0,2400.0,-0.0274,-1.4381,4.3769,97.3939 2019-06-03 15:41:48.560,139.4167,7123.752,3.6651,-1.6446,1.196,0.1227,2400.0,2400.0,-0.0274,-1.4411,4.3729,97.3747 2019-06-03 15:41:48.580,139.3645,7123.6973,3.6651,-1.6446,0.9389,0.0153,2400.0,2400.0,-0.0186,-1.4321,4.3597,97.3747 2019-06-03 15:41:48.600,139.3732,7123.7246,3.6866,-1.5753,0.9737,0.0391,2400.0,2400.0,-0.0274,-1.4351,4.3517,97.3449 2019-06-03 15:41:48.620,139.3732,7123.7246,3.693,-1.5533,1.2089,0.1564,2400.0,2400.0,-0.0332,-1.4501,4.3504,97.3375 2019-06-03 15:41:48.640,139.4167,7123.752,3.693,-1.5533,0.9349,0.0552,2400.0,2400.0,-0.0449,-1.4471,4.3491,97.3375 2019-06-03 15:41:48.660,139.4341,7123.752,3.693,-1.5533,1.1893,0.1216,2400.0,2400.0,-0.0508,-1.4831,4.3517,97.3375 2019-06-03 15:41:48.680,139.3645,7123.752,3.7021,-1.5122,1.0488,0.0254,2400.0,2400.0,-0.042,-1.4741,4.3411,97.3231 2019-06-03 15:41:48.700,139.3819,7123.6152,3.7167,-1.4723,0.9489,0.0532,2400.0,2400.0,-0.0449,-1.4711,4.3345,97.3091 2019-06-03 15:41:48.720,139.3645,7123.6152,3.7167,-1.4723,1.2396,0.1227,2400.0,2400.0,-0.0478,-1.4801,4.3279,97.3091 2019-06-03 15:41:48.740,139.4254,7123.6699,3.7167,-1.4723,1.0288,0.0509,2400.0,2400.0,-0.0391,-1.4771,4.3345,97.3091 2019-06-03 15:41:48.760,139.4167,7123.6973,3.7311,-1.4284,1.1908,0.1128,2400.0,2400.0,-0.0537,-1.4831,4.3306,97.2973 2019-06-03 15:41:48.780,139.3732,7123.6699,3.7421,-1.3871,0.9567,0.0509,2400.0,2400.0,-0.0625,-1.4831,4.3239,97.2838 2019-06-03 15:41:48.800,139.3645,7123.752,3.7469,-1.3683,0.8805,0.0859,2400.0,2400.0,-0.0595,-1.4801,4.3253,97.2785 2019-06-03 15:41:48.820,139.3732,7123.752,3.751,-1.3518,1.1834,0.1123,2400.0,2400.0,-0.0625,-1.4831,4.308,97.2737 2019-06-03 15:41:48.840,139.4341,7123.8066,3.751,-1.3518,0.9582,0.0452,2400.0,2400.0,-0.0449,-1.4861,4.3292,97.2737 2019-06-03 15:41:48.860,139.4254,7123.6973,3.751,-1.3518,1.1949,0.1064,2400.0,2400.0,-0.0595,-1.4831,4.3107,97.2737 2019-06-03 15:41:48.880,139.3645,7123.7246,3.7595,-1.3204,0.9193,0.0812,2400.0,2400.0,-0.0595,-1.4891,4.3107,97.2645 2019-06-03 15:41:48.900,139.3732,7123.6426,3.7701,-1.2857,0.896,0.1135,2400.0,2400.0,-0.0625,-1.4831,4.3067,97.2566 2019-06-03 15:41:48.920,139.3557,7123.6699,3.7701,-1.2857,1.2326,0.0916,2400.0,2400.0,-0.08,-1.5011,4.2935,97.2566 2019-06-03 15:41:48.940,139.4167,7123.6973,3.7701,-1.2857,0.9082,0.0927,2400.0,2400.0,-0.0742,-1.4981,4.3107,97.2566 2019-06-03 15:41:48.960,139.4167,7123.752,3.7808,-1.2546,1.2437,0.0468,2400.0,2400.0,-0.0742,-1.4951,4.3028,97.2483 2019-06-03 15:41:48.980,139.3645,7123.7793,3.7808,-1.2546,0.9057,0.0801,2400.0,2400.0,-0.0742,-1.4951,4.2869,97.2483 2019-06-03 15:41:49.000,139.3645,7123.8066,3.7882,-1.2087,0.9223,0.1245,2400.0,2400.0,-0.0683,-1.4921,4.2922,97.2396 2019-06-03 15:41:49.020,139.3906,7123.8066,3.7891,-1.1969,1.2097,0.0823,2400.0,2400.0,-0.0683,-1.4981,4.2723,97.2374 2019-06-03 15:41:49.040,139.4254,7123.8613,3.7891,-1.1969,0.8849,0.1114,2400.0,2400.0,-0.0508,-1.4951,4.2829,97.2374 2019-06-03 15:41:49.060,139.4254,7123.916,3.7891,-1.1969,1.1975,0.0307,2400.0,2400.0,-0.0537,-1.4981,4.2802,97.2374 2019-06-03 15:41:49.080,139.3645,7123.9429,3.7941,-1.1745,0.906,0.1023,2400.0,2400.0,-0.0595,-1.4981,4.2657,97.233 2019-06-03 15:41:49.100,139.3645,7123.1777,3.8051,-1.1473,0.8813,0.1296,2400.0,2400.0,-0.0654,-1.4981,4.271,97.2317 2019-06-03 15:41:49.120,139.3645,7122.3037,3.8051,-1.1473,1.2282,0.0568,2400.0,2400.0,-0.0625,-1.4951,4.2697,97.2317 2019-06-03 15:41:49.140,139.4341,7121.0464,3.8051,-1.1473,0.8709,0.1104,2400.0,2400.0,-0.0508,-1.4951,4.2802,97.2317 2019-06-03 15:41:49.160,139.4167,7120.2266,3.8132,-1.1221,1.2341,0.0475,2400.0,2400.0,-0.0595,-1.5011,4.2683,97.2317 2019-06-03 15:41:49.180,139.3645,7118.9424,3.8132,-1.1221,0.916,0.1302,2400.0,2400.0,-0.0595,-1.4981,4.2617,97.2317 2019-06-03 15:41:49.200,139.3645,7118.0679,3.8156,-1.0844,0.9926,0.1517,2400.0,2400.0,-0.0742,-1.5221,4.2644,97.2344 2019-06-03 15:41:49.220,139.3645,7117.1392,3.8135,-1.0756,1.0743,0.0371,2400.0,2400.0,-0.0654,-1.5221,4.2697,97.2352 2019-06-03 15:41:49.240,139.4254,7115.8545,3.8135,-1.0756,0.9038,0.1363,2400.0,2400.0,-0.0654,-1.5221,4.2697,97.2352 2019-06-03 15:41:49.260,139.4341,7115.1714,3.8135,-1.0756,1.2204,0.005,2400.0,2400.0,-0.0683,-1.5251,4.263,97.2352 2019-06-03 15:41:49.280,139.3557,7115.2261,3.8193,-1.0537,0.8912,0.1417,2400.0,2400.0,-0.0888,-1.5251,4.2564,97.2409 2019-06-03 15:41:49.300,139.3732,7115.1167,3.8261,-1.0293,0.9123,0.1803,2400.0,2400.0,-0.08,-1.5251,4.271,97.2479 2019-06-03 15:41:49.320,139.3645,7115.0894,3.8261,-1.0293,1.1682,-0.0022,2400.0,2400.0,-0.0742,-1.5251,4.2657,97.2479 2019-06-03 15:41:49.340,139.4167,7115.1714,3.8261,-1.0293,0.896,0.1693,2400.0,2400.0,-0.0742,-1.5251,4.263,97.2479 2019-06-03 15:41:49.360,139.4167,7115.2534,3.8308,-1.0104,1.1997,-0.0521,2400.0,2400.0,-0.0683,-1.528,4.2617,97.2571 2019-06-03 15:41:49.380,139.3732,7115.3354,3.8308,-1.0104,0.8857,0.2059,2400.0,2400.0,-0.0712,-1.531,4.2564,97.2571 2019-06-03 15:41:49.400,139.3557,7115.3354,3.8406,-0.9773,1.0643,0.2253,2400.0,2400.0,-0.0683,-1.528,4.267,97.2663 2019-06-03 15:41:49.420,139.3732,7115.3354,3.8373,-0.969,1.1179,-0.018,2400.0,2400.0,-0.0829,-1.528,4.2591,97.2711 2019-06-03 15:41:49.440,139.4167,7115.4175,3.8373,-0.969,0.8772,0.2287,2400.0,2400.0,-0.0858,-1.531,4.2657,97.2711 2019-06-03 15:41:49.460,139.4254,7115.4448,3.8373,-0.969,1.0651,-0.0647,2400.0,2400.0,-0.0917,-1.528,4.2577,97.2711 2019-06-03 15:41:49.480,139.3645,7115.4995,3.8467,-0.9499,1.1113,0.1911,2400.0,2400.0,-0.1034,-1.528,4.2551,97.2824 2019-06-03 15:41:49.500,139.3645,7115.4175,3.8575,-0.9224,1.1893,0.2108,2400.0,2400.0,-0.1034,-1.528,4.267,97.2956 2019-06-03 15:41:49.520,139.3645,7115.4175,3.8575,-0.9224,1.048,-0.0144,2400.0,2400.0,-0.1034,-1.528,4.2604,97.2956 2019-06-03 15:41:49.540,139.2773,7115.3354,3.8575,-0.9224,1.0177,0.1945,2400.0,2400.0,-0.0975,-1.531,4.2644,97.2956 2019-06-03 15:41:49.560,139.2685,7115.4175,3.8598,-0.9059,0.98,-0.0427,2400.0,2400.0,-0.1063,-1.546,4.2644,97.3082 2019-06-03 15:41:49.580,139.2249,7115.4448,3.8598,-0.9059,1.0591,0.1893,2400.0,2400.0,-0.118,-1.549,4.2604,97.3082 2019-06-03 15:41:49.600,139.2249,7115.4722,3.8711,-0.8664,1.1505,0.1901,2400.0,2400.0,-0.1385,-1.546,4.2591,97.3279 2019-06-03 15:41:49.620,139.2249,7115.3901,3.8698,-0.8573,0.9238,0.0046,2400.0,2400.0,-0.1385,-1.549,4.2604,97.3336 2019-06-03 15:41:49.640,139.2685,7115.4175,3.8698,-0.8573,1.1738,0.1789,2400.0,2400.0,-0.1443,-1.546,4.2604,97.3336 2019-06-03 15:41:49.660,139.3034,7115.3628,3.8698,-0.8573,0.74,-0.0415,2400.0,2400.0,-0.1355,-1.555,4.2657,97.3336 2019-06-03 15:41:49.680,139.2249,7115.3081,3.8815,-0.8291,1.2681,0.1672,2400.0,2400.0,-0.1501,-1.561,4.2418,97.3493 2019-06-03 15:41:49.700,139.2511,7115.2261,3.8895,-0.8005,1.2559,0.1253,2400.0,2400.0,-0.1238,-1.576,4.2617,97.3646 2019-06-03 15:41:49.720,139.2249,7115.2261,3.8895,-0.8005,0.7821,0.0497,2400.0,2400.0,-0.1589,-1.594,4.2392,97.3646 2019-06-03 15:41:49.740,139.2773,7115.2261,3.8895,-0.8005,1.3003,0.1037,2400.0,2400.0,-0.1531,-1.594,4.2498,97.3646 2019-06-03 15:41:49.760,139.2773,7115.2261,3.8904,-0.7775,0.8735,0.0609,2400.0,2400.0,-0.1735,-1.6209,4.2432,97.3782 2019-06-03 15:41:49.780,139.2336,7115.2261,3.8904,-0.7775,1.2511,0.114,2400.0,2400.0,-0.1677,-1.6179,4.2299,97.3782 2019-06-03 15:41:49.800,139.2249,7115.144,3.9068,-0.7283,1.2267,0.082,2400.0,2400.0,-0.1677,-1.6688,4.2379,97.397 2019-06-03 15:41:49.820,139.2423,7115.0894,3.9082,-0.7189,0.703,0.0858,2400.0,2400.0,-0.1648,-1.6628,4.2405,97.4031 2019-06-03 15:41:49.840,139.2773,7115.144,3.9082,-0.7189,1.3613,0.0601,2400.0,2400.0,-0.1589,-1.6628,4.2524,97.4031 2019-06-03 15:41:49.860,139.286,7115.1167,3.9082,-0.7189,0.8935,0.0863,2400.0,2400.0,-0.1852,-1.6598,4.2339,97.4031 2019-06-03 15:41:49.880,139.2249,7115.1167,3.919,-0.6897,1.264,0.0796,2400.0,2400.0,-0.1618,-1.6598,4.2432,97.4188 2019-06-03 15:41:49.900,139.2336,7115.0347,3.9249,-0.6648,1.2851,0.0379,2400.0,2400.0,-0.1735,-1.6658,4.2339,97.4306 2019-06-03 15:41:49.920,139.2161,7115.0073,3.9249,-0.6648,0.8543,0.1249,2400.0,2400.0,-0.1706,-1.6598,4.2418,97.4306 2019-06-03 15:41:49.940,139.286,7115.062,3.9249,-0.6648,1.2659,0.0369,2400.0,2400.0,-0.1765,-1.6807,4.2445,97.4306 2019-06-03 15:41:49.960,139.2773,7115.0894,3.9291,-0.6396,0.8528,0.1106,2400.0,2400.0,-0.1648,-1.7256,4.2471,97.4437 2019-06-03 15:41:49.980,139.2161,7115.2261,3.9291,-0.6396,1.2293,0.0659,2400.0,2400.0,-0.1735,-1.7196,4.2286,97.4437 2019-06-03 15:41:50.000,139.2336,7115.2534,3.9448,-0.5977,1.237,0.016,2400.0,2400.0,-0.156,-1.7166,4.2471,97.4586 2019-06-03 15:41:50.020,139.2249,7115.2534,3.9508,-0.5849,0.8413,0.1316,2400.0,2400.0,-0.1765,-1.7226,4.2405,97.463 2019-06-03 15:41:50.040,139.2773,7115.3081,3.9508,-0.5849,1.1919,0.0171,2400.0,2400.0,-0.1765,-1.7196,4.2418,97.463 2019-06-03 15:41:50.060,139.2947,7115.3081,3.9508,-0.5849,0.8787,0.1415,2400.0,2400.0,-0.1852,-1.7286,4.2299,97.463 2019-06-03 15:41:50.080,139.2249,7115.3628,3.9619,-0.5607,1.2563,0.0313,2400.0,2400.0,-0.1823,-1.7226,4.2366,97.4739 2019-06-03 15:41:50.100,139.2336,7116.0186,3.9655,-0.5376,1.1764,0.0043,2400.0,2400.0,-0.1881,-1.7465,4.2352,97.484 2019-06-03 15:41:50.120,139.2161,7116.9478,3.9655,-0.5376,0.8975,0.1355,2400.0,2400.0,-0.1735,-1.7644,4.2339,97.484 2019-06-03 15:41:50.140,139.2773,7118.2593,3.9655,-0.5376,1.2289,-0.0058,2400.0,2400.0,-0.1852,-1.7614,4.2299,97.484 2019-06-03 15:41:50.160,139.2773,7119.1064,3.9724,-0.5189,0.9334,0.1586,2400.0,2400.0,-0.1881,-1.7614,4.222,97.4918 2019-06-03 15:41:50.180,139.2249,7120.4453,3.9839,-0.4936,1.1949,0.0037,2400.0,2400.0,-0.194,-1.7614,4.2101,97.4975 2019-06-03 15:41:50.200,139.2249,7121.3198,3.9863,-0.4845,1.0972,-0.0465,2400.0,2400.0,-0.1765,-1.7614,4.2273,97.5014 2019-06-03 15:41:50.220,139.2249,7122.1396,3.995,-0.4747,1.0055,0.1774,2400.0,2400.0,-0.1823,-1.7644,4.2087,97.5045 2019-06-03 15:41:50.240,139.2773,7123.4512,3.995,-0.4747,1.0828,-0.0408,2400.0,2400.0,-0.1794,-1.7644,4.2035,97.5045 2019-06-03 15:41:50.260,139.286,7124.0522,3.995,-0.4747,0.9733,0.2034,2400.0,2400.0,-0.1794,-1.7674,4.1836,97.5045 2019-06-03 15:41:50.280,139.2249,7123.9702,4.0026,-0.4585,1.149,-0.0417,2400.0,2400.0,-0.1911,-1.7674,4.1359,97.5089 2019-06-03 15:41:50.300,139.2249,7123.2324,4.0015,-0.4474,1.0088,-0.0392,2400.0,2400.0,-0.1823,-1.8122,4.1108,97.5119 2019-06-03 15:41:50.320,139.2161,7122.3857,4.0015,-0.4474,1.0284,0.1476,2400.0,2400.0,-0.1735,-1.8241,4.0432,97.5119 2019-06-03 15:41:50.340,139.286,7121.0737,4.0015,-0.4474,1.132,-0.0434,2400.0,2400.0,-0.1765,-1.7883,3.9612,97.5119 2019-06-03 15:41:50.360,139.2773,7120.2539,4.0059,-0.4373,1.0762,0.1902,2400.0,2400.0,-0.1969,-1.8062,3.8645,97.5141 2019-06-03 15:41:50.380,139.2249,7118.9697,4.0059,-0.4373,1.0725,0.002,2400.0,2400.0,-0.1852,-1.8032,3.7652,97.5141 2019-06-03 15:41:50.400,139.2249,7118.1499,4.0064,-0.4199,1.017,-0.044,2340.0,2400.0,-0.1823,-1.8032,3.6606,97.515 2019-06-03 15:41:50.420,139.2249,7117.3027,4.0072,-0.4143,0.9452,0.1552,2340.0,2400.0,-0.1823,-1.8212,3.5229,97.5154 2019-06-03 15:41:50.440,139.2773,7116.0459,4.0072,-0.4143,1.0806,-0.0198,2340.0,2400.0,-0.1823,-1.8212,3.3985,97.5154 2019-06-03 15:41:50.460,139.286,7115.4175,4.0072,-0.4143,1.0166,0.1483,2340.0,2400.0,-0.1881,-1.8212,3.2965,97.5154 2019-06-03 15:41:50.480,139.2249,7115.4175,3.9912,-0.4066,1.075,0.0452,2340.0,2400.0,-0.1911,-1.8212,3.1548,97.5154 2019-06-03 15:41:50.500,139.2423,7116.0459,3.9591,-0.4036,1.0802,0.0026,2340.0,2400.0,-0.1794,-1.842,3.09,97.5132 2019-06-03 15:41:50.520,139.2336,7116.8931,3.9591,-0.4036,1.0658,0.1008,2340.0,2400.0,-0.1911,-1.8391,2.9721,97.5132 2019-06-03 15:41:50.540,139.4341,7118.2866,3.9591,-0.4036,1.1446,0.0067,2340.0,2400.0,-0.1881,-1.8361,2.8821,97.5132 2019-06-03 15:41:50.560,139.4167,7119.2158,3.9178,-0.4008,1.0606,0.1933,2340.0,2400.0,-0.1998,-1.8391,2.8106,97.5111 2019-06-03 15:41:50.580,139.3645,7120.5273,3.9178,-0.4008,0.9589,0.0124,2340.0,2400.0,-0.1911,-1.8391,2.7153,97.5111 2019-06-03 15:41:50.600,139.3645,7121.4019,3.8141,-0.3953,0.9767,-0.0262,2340.0,2400.0,-0.1998,-1.8391,2.6478,97.5049 2019-06-03 15:41:50.620,139.3732,7122.249,3.7734,-0.393,1.0225,0.132,2340.0,2400.0,-0.1911,-1.8391,2.5471,97.5032 2019-06-03 15:41:50.640,139.4254,7123.5605,3.7734,-0.393,0.9585,-0.021,2340.0,2400.0,-0.1969,-1.842,2.4558,97.5032 2019-06-03 15:41:50.660,139.4254,7124.1616,3.7734,-0.393,1.0869,0.1625,2340.0,2400.0,-0.1911,-1.8391,2.379,97.5032 2019-06-03 15:41:50.680,139.3645,7124.1343,3.6712,-0.3933,0.8554,0.0405,2340.0,2400.0,-0.1969,-1.8391,2.3353,97.4962 2019-06-03 15:41:50.700,139.3732,7123.3691,3.5499,-0.3978,0.8787,0.003,2340.0,2400.0,-0.1969,-1.842,2.33,97.487 2019-06-03 15:41:50.720,139.3645,7122.522,3.5499,-0.3978,0.9911,0.0634,2340.0,2400.0,-0.2057,-1.8391,2.326,97.487 2019-06-03 15:41:50.740,139.2685,7121.2104,3.5499,-0.3978,0.7784,0.0717,2340.0,2400.0,-0.2145,-1.8391,2.326,97.487 2019-06-03 15:41:50.760,139.2685,7120.3633,3.4138,-0.4018,1.0314,0.0651,2340.0,2400.0,-0.2115,-1.842,2.3406,97.4761 2019-06-03 15:41:50.780,139.2249,7119.0791,3.4138,-0.4018,0.7699,0.101,2340.0,2400.0,-0.2174,-1.842,2.3379,97.4761 2019-06-03 15:41:50.800,139.2336,7118.2319,3.1736,-0.4105,0.8465,0.0605,2340.0,2400.0,-0.2203,-1.8689,2.3353,97.4612 2019-06-03 15:41:50.820,139.2249,7117.4121,3.0872,-0.4131,0.9704,0.0707,2340.0,2400.0,-0.232,-1.8898,2.3207,97.4534 2019-06-03 15:41:50.840,139.2773,7116.1553,3.0872,-0.4131,0.7633,0.032,2340.0,2400.0,-0.2261,-1.8778,2.3353,97.4534 2019-06-03 15:41:50.860,139.286,7115.4995,3.0872,-0.4131,0.9848,0.1032,2340.0,2400.0,-0.2232,-1.8808,2.3618,97.4534 2019-06-03 15:41:50.880,139.2336,7115.4995,2.9106,-0.4224,0.7877,0.0279,2340.0,2400.0,-0.232,-1.8838,2.3909,97.4372 2019-06-03 15:41:50.900,139.2249,7115.3901,2.7246,-0.4335,0.8154,0.0143,2340.0,2400.0,-0.2349,-1.8778,2.4955,97.4197 2019-06-03 15:41:50.920,139.2249,7115.3901,2.7246,-0.4335,0.8975,0.0609,2340.0,2400.0,-0.2408,-1.8808,2.6809,97.4197 2019-06-03 15:41:50.940,139.2773,7115.3901,2.7246,-0.4335,0.7089,0.0482,2340.0,2400.0,-0.2525,-1.8778,2.9178,97.4197 2019-06-03 15:41:50.960,139.2773,7115.3901,2.5385,-0.4476,0.8753,0.0997,2340.0,2400.0,-0.2408,-1.8749,3.221,97.4005 2019-06-03 15:41:50.980,139.2161,7115.3628,2.5385,-0.4476,0.6586,0.0512,2340.0,2400.0,-0.2525,-1.848,3.4898,97.4005 2019-06-03 15:41:51.000,139.2249,7115.3628,2.2556,-0.4739,0.6834,0.0254,2340.0,2400.0,-0.2437,-1.845,3.7453,97.3804 2019-06-03 15:41:51.020,139.2336,7115.3628,2.1726,-0.4866,0.8339,0.0692,2340.0,2400.0,-0.2554,-1.8271,3.9996,97.369 2019-06-03 15:41:51.040,139.286,7115.3628,2.1726,-0.4866,0.6753,0.0671,2340.0,2400.0,-0.2466,-1.8212,4.1849,97.369 2019-06-03 15:41:51.060,139.2947,7115.3901,2.1726,-0.4866,0.7259,0.0798,2340.0,2400.0,-0.2466,-1.8212,4.3107,97.369 2019-06-03 15:41:51.080,139.2249,7115.3901,2.023,-0.5104,0.7514,0.0636,2340.0,2400.0,-0.2583,-1.8182,4.3557,97.3458 2019-06-03 15:41:51.100,139.2336,7115.3354,1.9063,-0.536,0.7096,0.0198,2340.0,2400.0,-0.2525,-1.8122,4.3848,97.3218 2019-06-03 15:41:51.120,139.2161,7115.3081,1.9063,-0.536,0.842,0.0766,2340.0,2400.0,-0.2525,-1.8003,4.3915,97.3218 2019-06-03 15:41:51.140,139.2773,7115.3901,1.9063,-0.536,0.6786,0.0642,2340.0,2400.0,-0.2466,-1.8032,4.3928,97.3218 2019-06-03 15:41:51.160,139.2773,7115.4175,1.8227,-0.5646,0.8213,0.0897,2340.0,2400.0,-0.2408,-1.8062,4.3954,97.2982 2019-06-03 15:41:51.180,139.2249,7115.3901,1.8227,-0.5646,0.781,0.0559,2340.0,2400.0,-0.2466,-1.8032,4.3716,97.2982 2019-06-03 15:41:51.200,139.2336,7115.3628,1.7507,-0.6093,0.7444,0.0427,2340.0,2400.0,-0.2408,-1.8032,4.3848,97.2689 2019-06-03 15:41:51.220,139.2336,7115.3628,1.7422,-0.6253,0.8154,0.0792,2340.0,2400.0,-0.2495,-1.8122,4.3716,97.2575 2019-06-03 15:41:51.240,139.2773,7115.3628,1.7422,-0.6253,0.7892,0.0725,2340.0,2400.0,-0.2437,-1.8092,4.3822,97.2575 2019-06-03 15:41:51.260,139.286,7115.3354,1.7422,-0.6253,0.8195,0.0482,2340.0,2400.0,-0.2378,-1.8062,4.3888,97.2575 2019-06-03 15:41:51.280,139.2161,7115.3628,1.7398,-0.6593,0.8187,0.0814,2340.0,2400.0,-0.2378,-1.8092,4.3822,97.2361 2019-06-03 15:41:51.300,139.2336,7115.2808,1.7593,-0.6959,0.7685,0.0686,2340.0,2400.0,-0.2203,-1.8062,4.3782,97.2142 2019-06-03 15:41:51.320,139.2161,7115.2534,1.7593,-0.6959,0.8409,0.0375,2340.0,2400.0,-0.2203,-1.8032,4.3782,97.2142 2019-06-03 15:41:51.340,139.286,7115.2261,1.7593,-0.6959,0.7599,0.1291,2340.0,2400.0,-0.2378,-1.8092,4.3888,97.2142 2019-06-03 15:41:51.360,139.286,7115.2808,1.7925,-0.7305,0.936,-0.0102,2340.0,2400.0,-0.2437,-1.8062,4.3981,97.195 2019-06-03 15:41:51.380,139.2336,7115.2808,1.7925,-0.7305,0.7311,0.1306,2340.0,2400.0,-0.232,-1.8062,4.3795,97.195 2019-06-03 15:41:51.400,139.2161,7115.3081,1.8725,-0.7918,0.7411,0.1067,2460.0,2400.0,-0.2203,-1.8032,4.3862,97.1644 2019-06-03 15:41:51.420,139.2336,7115.2808,1.9016,-0.8144,0.8938,-0.0009,2460.0,2400.0,-0.2261,-1.8032,4.3742,97.1552 2019-06-03 15:41:51.440,139.286,7115.3081,1.9016,-0.8144,0.828,0.1273,2460.0,2400.0,-0.2174,-1.8062,4.3862,97.1552 2019-06-03 15:41:51.460,139.286,7115.2808,1.9016,-0.8144,0.9256,0.0192,2460.0,2400.0,-0.2203,-1.8032,4.3915,97.1552 2019-06-03 15:41:51.480,139.2249,7115.2808,1.9696,-0.8563,0.7718,0.1288,2460.0,2400.0,-0.2232,-1.8092,4.3676,97.1399 2019-06-03 15:41:51.500,139.2336,7115.2261,2.0437,-0.8964,0.8983,0.1079,2460.0,2400.0,-0.2145,-1.8092,4.3769,97.1273 2019-06-03 15:41:51.520,139.2161,7115.2808,2.0437,-0.8964,0.956,0.0056,2460.0,2400.0,-0.2145,-1.8062,4.3716,97.1273 2019-06-03 15:41:51.540,139.4254,7115.3081,2.0437,-0.8964,0.8354,0.1572,2460.0,2400.0,-0.2115,-1.8092,4.3716,97.1273 2019-06-03 15:41:51.560,139.4167,7115.3354,2.12,-0.9372,0.9719,-0.0253,2460.0,2400.0,-0.2115,-1.8092,4.369,97.1159 2019-06-03 15:41:51.580,139.3645,7115.3354,2.2019,-0.9813,0.8979,0.1751,2460.0,2400.0,-0.2261,-1.8092,4.357,97.1006 2019-06-03 15:41:51.600,139.3557,7115.3628,2.2452,-0.9992,0.9201,0.1445,2460.0,2400.0,-0.2261,-1.8032,4.361,97.0971 2019-06-03 15:41:51.620,139.3645,7115.3081,2.2815,-1.0235,0.9382,-0.0036,2460.0,2400.0,-0.2232,-1.8062,4.3676,97.0949 2019-06-03 15:41:51.640,139.4167,7115.3628,2.2815,-1.0235,0.9467,0.1665,2460.0,2400.0,-0.1998,-1.8062,4.3478,97.0949 2019-06-03 15:41:51.660,139.4341,7115.3628,2.2815,-1.0235,0.9593,-0.0561,2460.0,2400.0,-0.1881,-1.8062,4.3438,97.0949 2019-06-03 15:41:51.680,139.3645,7115.3354,2.3626,-1.0653,0.9996,0.2299,2460.0,2400.0,-0.1998,-1.8062,4.3279,97.0901 2019-06-03 15:41:51.700,139.3645,7115.2808,2.4444,-1.1018,1.021,0.189,2460.0,2400.0,-0.2086,-1.8032,4.3411,97.0888 2019-06-03 15:41:51.720,139.3645,7115.2808,2.4444,-1.1018,0.936,-0.0064,2460.0,2400.0,-0.2145,-1.8032,4.3359,97.0888 2019-06-03 15:41:51.740,139.5646,7115.3081,2.4444,-1.1018,0.9489,0.1942,2460.0,2400.0,-0.2145,-1.8062,4.3266,97.0888 2019-06-03 15:41:51.760,139.5646,7115.3081,2.5168,-1.1447,0.9645,-0.0722,2460.0,2400.0,-0.2057,-1.8062,4.3239,97.0892 2019-06-03 15:41:51.780,139.5124,7115.3354,2.5168,-1.1447,1.0521,0.1978,2460.0,2400.0,-0.2086,-1.8062,4.3041,97.0892 2019-06-03 15:41:51.800,139.495,7115.3628,2.6306,-1.1974,1.0865,0.1823,2460.0,2400.0,-0.2057,-1.8032,4.316,97.0849 2019-06-03 15:41:51.820,139.5037,7115.3354,2.6603,-1.2204,0.9449,-0.0263,2460.0,2400.0,-0.2174,-1.8122,4.3028,97.0862 2019-06-03 15:41:51.840,139.5646,7115.3628,2.6603,-1.2204,1.112,0.2116,2460.0,2400.0,-0.2086,-1.8062,4.2776,97.0862 2019-06-03 15:41:51.860,139.5559,7115.3354,2.6603,-1.2204,1.0307,-0.0617,2460.0,2400.0,-0.2115,-1.8122,4.2882,97.0862 2019-06-03 15:41:51.880,139.495,7115.3081,2.7253,-1.2513,1.1912,0.2091,2460.0,2400.0,-0.2086,-1.8152,4.2644,97.0932 2019-06-03 15:41:51.900,139.5211,7115.2261,2.7874,-1.2818,1.1989,0.1837,2460.0,2400.0,-0.2145,-1.8122,4.267,97.1019 2019-06-03 15:41:51.920,139.495,7115.2534,2.7874,-1.2818,0.8912,0.0087,2460.0,2400.0,-0.2203,-1.8152,4.2644,97.1019 2019-06-03 15:41:51.940,139.7034,7115.3628,2.7874,-1.2818,1.237,0.184,2460.0,2400.0,-0.2145,-1.8122,4.2617,97.1019 2019-06-03 15:41:51.960,139.6861,7115.3901,2.8371,-1.3123,0.8646,-0.0187,2460.0,2400.0,-0.2232,-1.8152,4.2538,97.1102 2019-06-03 15:41:51.980,139.6427,7115.4175,2.8371,-1.3123,1.2677,0.1741,2460.0,2400.0,-0.2145,-1.8122,4.2445,97.1102 2019-06-03 15:41:52.000,139.634,7115.4175,2.9188,-1.3536,1.2248,0.1647,2460.0,2400.0,-0.2145,-1.8122,4.2418,97.1216 2019-06-03 15:41:52.020,139.6427,7115.3901,2.9352,-1.3713,0.838,0.0229,2460.0,2400.0,-0.1998,-1.8182,4.2538,97.1273 2019-06-03 15:41:52.040,139.6947,7115.4175,2.9352,-1.3713,1.2581,0.1488,2460.0,2400.0,-0.2028,-1.8092,4.2392,97.1273 2019-06-03 15:41:52.060,139.7121,7115.3901,2.9352,-1.3713,0.7699,0.0456,2460.0,2400.0,-0.2115,-1.8122,4.2445,97.1273 2019-06-03 15:41:52.080,139.6427,7115.3901,2.9764,-1.3969,1.3151,0.102,2460.0,2400.0,-0.2261,-1.8152,4.2326,97.1399 2019-06-03 15:41:52.100,139.6427,7115.3354,3.0072,-1.4262,1.304,0.0924,2460.0,2400.0,-0.2291,-1.8122,4.2379,97.1522 2019-06-03 15:41:52.120,139.6514,7115.3081,3.0072,-1.4262,0.7622,0.114,2460.0,2400.0,-0.2291,-1.8122,4.2286,97.1522 2019-06-03 15:41:52.140,139.8333,7115.3081,3.0072,-1.4262,1.2995,0.0952,2460.0,2400.0,-0.2203,-1.8152,4.2273,97.1522 2019-06-03 15:41:52.160,139.816,7115.3901,3.0292,-1.4538,0.7599,0.0657,2460.0,2400.0,-0.2057,-1.8152,4.2339,97.164 2019-06-03 15:41:52.180,139.7727,7115.3901,3.0292,-1.4538,1.2866,0.0729,2460.0,2400.0,-0.2028,-1.8122,4.2167,97.164 2019-06-03 15:41:52.200,139.7727,7115.3901,3.07,-1.4882,1.3679,0.0691,2460.0,2400.0,-0.2086,-1.8152,4.218,97.1802 2019-06-03 15:41:52.220,139.7727,7115.4448,3.081,-1.501,0.896,0.1213,2460.0,2400.0,-0.2086,-1.8152,4.2193,97.1863 2019-06-03 15:41:52.240,139.8333,7115.4448,3.081,-1.501,1.3805,0.0687,2460.0,2400.0,-0.2057,-1.8092,4.214,97.1863 2019-06-03 15:41:52.260,139.8246,7115.3901,3.081,-1.501,0.8184,0.1259,2460.0,2400.0,-0.2145,-1.8271,4.2207,97.1863 2019-06-03 15:41:52.280,139.764,7115.3628,3.0983,-1.5222,1.4238,0.0235,2460.0,2400.0,-0.2174,-1.8241,4.1995,97.1968 2019-06-03 15:41:52.300,139.7727,7115.2808,3.1066,-1.5396,1.3543,-0.0088,2460.0,2400.0,-0.2086,-1.8182,4.218,97.209 2019-06-03 15:41:52.320,139.7727,7115.2808,3.1066,-1.5396,0.8709,0.1905,2460.0,2400.0,-0.2086,-1.8212,4.214,97.209 2019-06-03 15:41:52.340,139.9801,7115.3081,3.1066,-1.5396,1.2548,-0.0137,2460.0,2400.0,-0.2086,-1.8212,4.2035,97.209 2019-06-03 15:41:52.360,139.9628,7115.3628,3.114,-1.5635,0.7936,0.1558,2460.0,2400.0,-0.2028,-1.8212,4.2233,97.2182 2019-06-03 15:41:52.380,139.9024,7115.3628,3.114,-1.5635,1.2355,-0.0245,2460.0,2400.0,-0.2145,-1.8212,4.1915,97.2182 2019-06-03 15:41:52.400,139.911,7115.3901,3.1274,-1.5821,1.2548,-0.0146,2700.0,2340.0,-0.2086,-1.8241,4.218,97.2317 2019-06-03 15:41:52.420,139.9197,7115.3628,3.1362,-1.5874,1.0122,0.1921,2700.0,2340.0,-0.2115,-1.8212,4.2524,97.237 2019-06-03 15:41:52.440,139.9542,7115.3628,3.1362,-1.5874,1.2699,-0.0076,2700.0,2340.0,-0.2115,-1.8212,4.2842,97.237 2019-06-03 15:41:52.460,139.9801,7115.3354,3.1362,-1.5874,0.8912,0.1805,2700.0,2340.0,-0.2145,-1.8212,4.357,97.237 2019-06-03 15:41:52.480,139.9197,7115.3354,3.1372,-1.5999,1.1967,-0.0371,2700.0,2340.0,-0.2028,-1.8212,4.3915,97.2479 2019-06-03 15:41:52.500,139.9197,7115.3081,3.1371,-1.6158,1.1668,-0.0405,2700.0,2340.0,-0.2232,-1.8212,4.4391,97.2562 2019-06-03 15:41:52.520,139.911,7115.3354,3.1371,-1.6158,1.0077,0.2062,2700.0,2340.0,-0.2028,-1.8212,4.5649,97.2562 2019-06-03 15:41:52.540,139.9715,7115.3354,3.1371,-1.6158,1.1398,-0.0189,2700.0,2340.0,-0.2115,-1.8212,4.6721,97.2562 2019-06-03 15:41:52.560,139.9542,7115.3628,3.1424,-1.6246,1.0625,0.1699,2700.0,2340.0,-0.2086,-1.8241,4.8575,97.2658 2019-06-03 15:41:52.580,139.9197,7115.3901,3.1424,-1.6246,0.9648,-0.0373,2700.0,2340.0,-0.2086,-1.8212,5.0111,97.2658 2019-06-03 15:41:52.600,139.9197,7115.4448,3.1585,-1.6343,1.0932,-0.0104,2700.0,2340.0,-0.2174,-1.8241,5.1263,97.2759 2019-06-03 15:41:52.620,139.911,7115.3901,3.1765,-1.6354,1.1594,0.2125,2700.0,2340.0,-0.1998,-1.8361,5.3222,97.2798 2019-06-03 15:41:52.640,139.9628,7115.4448,3.1765,-1.6354,0.8916,-0.0141,2700.0,2340.0,-0.2028,-1.8331,5.4348,97.2798 2019-06-03 15:41:52.660,139.9628,7115.4448,3.1765,-1.6354,1.2196,0.1997,2700.0,2340.0,-0.1998,-1.8391,5.5923,97.2798 2019-06-03 15:41:52.680,139.9024,7115.3901,3.2026,-1.6454,0.8949,-0.0212,2700.0,2340.0,-0.2086,-1.8331,5.7247,97.2851 2019-06-03 15:41:52.700,139.9197,7115.3081,3.251,-1.6542,0.9807,-0.0189,2700.0,2340.0,-0.2115,-1.8301,5.8068,97.2877 2019-06-03 15:41:52.720,139.9024,7115.3081,3.251,-1.6542,1.2263,0.171,2700.0,2340.0,-0.1969,-1.8391,5.922,97.2877 2019-06-03 15:41:52.740,140.118,7115.3081,3.251,-1.6542,0.8376,0.0403,2700.0,2340.0,-0.2086,-1.8331,5.9816,97.2877 2019-06-03 15:41:52.760,140.0921,7115.3354,3.327,-1.6568,1.2962,0.1309,2700.0,2340.0,-0.1969,-1.8331,6.0465,97.2907 2019-06-03 15:41:52.780,140.0405,7115.3628,3.327,-1.6568,0.8428,0.0738,2700.0,2340.0,-0.2086,-1.8361,6.0875,97.2907 2019-06-03 15:41:52.800,140.0405,7115.3628,3.4756,-1.6597,0.9608,0.0422,2700.0,2340.0,-0.2086,-1.8361,6.1299,97.2907 2019-06-03 15:41:52.820,140.0491,7115.3354,3.5386,-1.6584,1.3461,0.1076,2700.0,2340.0,-0.2145,-1.8361,6.2,97.2925 2019-06-03 15:41:52.840,140.0921,7115.3354,3.5386,-1.6584,0.8287,0.1114,2700.0,2340.0,-0.2115,-1.8361,6.2398,97.2925 2019-06-03 15:41:52.860,140.1008,7115.3081,3.5386,-1.6584,1.3073,0.0655,2700.0,2340.0,-0.2115,-1.842,6.302,97.2925 2019-06-03 15:41:52.880,140.0491,7115.2808,3.6699,-1.6619,0.9574,0.1252,2700.0,2340.0,-0.2291,-1.8361,6.3258,97.2942 2019-06-03 15:41:52.900,140.0491,7115.2261,3.827,-1.6593,0.9689,0.1049,2700.0,2340.0,-0.2057,-1.8391,6.3735,97.2956 2019-06-03 15:41:52.920,140.0405,7115.2808,3.827,-1.6593,1.3121,0.0702,2700.0,2340.0,-0.2115,-1.845,6.4119,97.2956 2019-06-03 15:41:52.940,140.1094,7115.2261,3.827,-1.6593,0.9615,0.1335,2700.0,2340.0,-0.2086,-1.848,6.4821,97.2956 2019-06-03 15:41:52.960,140.0921,7115.2261,3.9993,-1.6558,1.3084,0.0241,2700.0,2340.0,-0.2174,-1.848,6.539,97.2977 2019-06-03 15:41:52.980,140.0405,7115.2534,4.189,-1.6554,1.0699,0.1669,2700.0,2340.0,-0.2203,-1.854,6.5655,97.2899 2019-06-03 15:41:53.000,140.0405,7115.2808,4.283,-1.659,0.9634,0.1586,2700.0,2340.0,-0.2115,-1.854,6.5853,97.2907 2019-06-03 15:41:53.020,140.0491,7115.2261,4.3824,-1.6565,1.3569,0.0306,2700.0,2340.0,-0.2057,-1.854,6.6277,97.2903 2019-06-03 15:41:53.040,140.0921,7115.1987,4.3824,-1.6565,1.0506,0.1801,2700.0,2340.0,-0.2028,-1.851,6.6476,97.2903 2019-06-03 15:41:53.060,140.1094,7115.2534,4.3824,-1.6565,1.4338,0.001,2700.0,2340.0,-0.2115,-1.857,6.6926,97.2903 2019-06-03 15:41:53.080,140.0405,7115.2534,4.5902,-1.6597,1.0876,0.2024,2700.0,2340.0,-0.2115,-1.851,6.727,97.2899 2019-06-03 15:41:53.100,140.0577,7115.2534,4.8133,-1.659,1.1449,0.2136,2700.0,2340.0,-0.2057,-1.848,6.7469,97.2877 2019-06-03 15:41:53.120,140.0405,7115.2808,4.8133,-1.659,1.4689,0.0092,2700.0,2340.0,-0.2145,-1.8838,6.7786,97.2877 2019-06-03 15:41:53.140,140.2384,7115.3081,4.8133,-1.659,1.2285,0.2159,2700.0,2340.0,-0.2115,-1.8689,6.8157,97.2877 2019-06-03 15:41:53.160,140.2384,7115.3354,5.0462,-1.6589,1.4904,-0.012,2700.0,2340.0,-0.2291,-1.8778,6.8382,97.2842 2019-06-03 15:41:53.180,140.1868,7115.3628,5.0462,-1.6589,1.2156,0.2451,2700.0,2340.0,-0.232,-1.8778,6.8713,97.2842 2019-06-03 15:41:53.200,140.1782,7115.4448,5.4042,-1.655,1.2688,0.2385,2700.0,2340.0,-0.232,-1.8689,6.8713,97.265 2019-06-03 15:41:53.220,140.1954,7115.4175,5.5213,-1.6579,1.3901,-0.0229,2700.0,2340.0,-0.2291,-1.8719,6.862,97.2628 2019-06-03 15:41:53.240,140.2384,7115.3901,5.5213,-1.6579,1.3702,0.246,2700.0,2340.0,-0.2291,-1.8659,6.8276,97.2628 2019-06-03 15:41:53.260,140.247,7115.3628,5.5213,-1.6579,1.4745,-0.0171,2700.0,2340.0,-0.2232,-1.8629,6.8064,97.2628 2019-06-03 15:41:53.280,140.1868,7115.3354,5.7692,-1.6549,1.3417,0.2514,2700.0,2340.0,-0.2232,-1.8689,6.7243,97.2571 2019-06-03 15:41:53.300,140.1868,7115.2534,6.0225,-1.65,1.4101,0.2537,2700.0,2340.0,-0.2174,-1.8659,6.5867,97.2514 2019-06-03 15:41:53.320,140.1782,7115.2534,6.0225,-1.65,1.5022,-0.0088,2700.0,2340.0,-0.2232,-1.8659,6.2954,97.2514 2019-06-03 15:41:53.340,140.5212,7115.3081,6.0225,-1.65,1.4275,0.2226,2700.0,2340.0,-0.2525,-1.8659,5.8214,97.2514 2019-06-03 15:41:53.360,140.5041,7115.3081,6.2734,-1.6457,1.5739,0.004,2700.0,2340.0,-0.2554,-1.848,5.2666,97.2444 2019-06-03 15:41:53.380,140.4442,7115.2808,6.2734,-1.6457,1.4179,0.2247,2700.0,2340.0,-0.2554,-1.845,4.6443,97.2444 2019-06-03 15:41:53.400,140.4528,7115.2808,6.6319,-1.6363,1.5248,0.2231,2520.0,2400.0,-0.2495,-1.8301,4.2299,97.2199 2019-06-03 15:41:53.420,140.4528,7115.2261,6.7331,-1.6347,1.4881,-0.0018,2520.0,2400.0,-0.2437,-1.8241,3.8208,97.2156 2019-06-03 15:41:53.440,140.5127,7115.2808,6.7331,-1.6347,1.5451,0.2081,2520.0,2400.0,-0.2554,-1.8182,3.368,97.2156 2019-06-03 15:41:53.460,140.5212,7115.2808,6.7331,-1.6347,1.5022,-0.0004,2520.0,2400.0,-0.2671,-1.8122,3.1138,97.2156 2019-06-03 15:41:53.480,140.4613,7115.2534,6.9055,-1.6236,1.5395,0.2202,2520.0,2400.0,-0.2554,-1.8212,3.0754,97.2081 2019-06-03 15:41:53.500,140.4613,7115.8818,7.0211,-1.6077,1.4427,0.2386,2520.0,2400.0,-0.2583,-1.8182,3.0516,97.2007 2019-06-03 15:41:53.520,140.4528,7116.7563,7.0211,-1.6077,1.4893,-0.0162,2520.0,2400.0,-0.2583,-1.8212,3.037,97.2007 2019-06-03 15:41:53.540,140.6494,7118.1226,7.0211,-1.6077,1.5185,0.2393,2520.0,2400.0,-0.27,-1.8182,3.0397,97.2007 2019-06-03 15:41:53.560,140.6408,7119.0791,7.0736,-1.5944,1.287,-0.0029,2520.0,2400.0,-0.27,-1.8212,3.1045,97.1915 2019-06-03 15:41:53.580,140.5981,7120.418,7.0736,-1.5944,1.5943,0.1756,2520.0,2400.0,-0.2554,-1.8212,3.1535,97.1915 2019-06-03 15:41:53.600,140.5981,7121.2925,7.0596,-1.5576,1.551,0.1969,2520.0,2400.0,-0.2437,-1.8182,3.176,97.1762 2019-06-03 15:41:53.620,140.5896,7122.1123,7.0269,-1.5489,1.1993,0.0625,2520.0,2400.0,-0.2495,-1.8212,3.1787,97.171 2019-06-03 15:41:53.640,140.6494,7123.4512,7.0269,-1.5489,1.5336,0.1244,2520.0,2400.0,-0.2671,-1.842,3.1429,97.171 2019-06-03 15:41:53.660,140.6408,7124.0796,7.0269,-1.5489,1.1261,0.1058,2520.0,2400.0,-0.2612,-1.8331,3.1813,97.171 2019-06-03 15:41:53.680,140.5811,7124.0522,6.9462,-1.5192,1.5388,0.0814,2520.0,2400.0,-0.2554,-1.8361,3.1932,97.1614 2019-06-03 15:41:53.700,140.5896,7123.9702,6.8289,-1.4973,1.5669,0.0761,2520.0,2400.0,-0.2495,-1.8331,3.2052,97.1504 2019-06-03 15:41:53.720,140.5811,7123.9429,6.8289,-1.4973,1.0055,0.1305,2520.0,2400.0,-0.2466,-1.854,3.2422,97.1504 2019-06-03 15:41:53.740,140.6408,7123.9429,6.8289,-1.4973,1.5155,0.0579,2520.0,2400.0,-0.2437,-1.854,3.221,97.1504 2019-06-03 15:41:53.760,140.6323,7123.9976,6.69,-1.4765,1.021,0.1831,2520.0,2400.0,-0.2408,-1.851,3.2488,97.1369 2019-06-03 15:41:53.780,140.5811,7123.9702,6.69,-1.4765,1.4382,0.0023,2520.0,2400.0,-0.232,-1.86,3.2316,97.1369 2019-06-03 15:41:53.800,140.5896,7123.9976,6.4454,-1.4365,1.4752,0.0052,2520.0,2400.0,-0.2291,-1.851,3.2396,97.1238 2019-06-03 15:41:53.820,140.5896,7123.9976,6.3628,-1.4249,0.9811,0.1584,2520.0,2400.0,-0.2554,-1.854,3.2647,97.1163 2019-06-03 15:41:53.840,140.6408,7124.0249,6.3628,-1.4249,1.294,-0.0019,2520.0,2400.0,-0.2466,-1.86,3.2859,97.1163 2019-06-03 15:41:53.860,140.6494,7124.0249,6.3628,-1.4249,0.9412,0.2168,2520.0,2400.0,-0.2554,-1.857,3.3389,97.1163 2019-06-03 15:41:53.880,140.5896,7124.0796,6.184,-1.4016,1.3195,-0.0608,2520.0,2400.0,-0.2261,-1.86,3.3865,97.0988 2019-06-03 15:41:53.900,140.5981,7124.0249,5.994,-1.3857,1.2866,-0.0386,2520.0,2400.0,-0.2408,-1.854,3.3826,97.0787 2019-06-03 15:41:53.920,140.5725,7124.0249,5.994,-1.3857,1.0236,0.1963,2520.0,2400.0,-0.2378,-1.86,3.4289,97.0787 2019-06-03 15:41:53.940,140.3585,7124.0796,5.994,-1.3857,1.102,-0.0215,2520.0,2400.0,-0.2349,-1.857,3.458,97.0787 2019-06-03 15:41:53.960,140.3585,7124.1069,5.8142,-1.37,0.8816,0.2226,2520.0,2400.0,-0.232,-1.854,3.507,97.0573 2019-06-03 15:41:53.980,140.3156,7124.1616,5.8142,-1.37,1.0606,-0.091,2520.0,2400.0,-0.2291,-1.86,3.5375,97.0573 2019-06-03 15:41:54.000,140.3156,7124.1616,5.5377,-1.3436,1.0484,-0.0704,2520.0,2400.0,-0.2145,-1.851,3.5547,97.0376 2019-06-03 15:41:54.020,140.3242,7124.1616,5.4596,-1.332,0.9404,0.192,2520.0,2400.0,-0.232,-1.854,3.6169,97.0272 2019-06-03 15:41:54.040,140.3757,7124.1069,5.4596,-1.332,0.8247,-0.0372,2520.0,2400.0,-0.2261,-1.857,3.6619,97.0272 2019-06-03 15:41:54.060,140.3757,7124.0522,5.4596,-1.332,1.0255,0.2027,2520.0,2400.0,-0.232,-1.854,3.6897,97.0272 2019-06-03 15:41:54.080,140.3156,7124.0249,5.2924,-1.3243,0.8184,-0.0701,2520.0,2400.0,-0.2349,-1.854,3.7189,97.0014 2019-06-03 15:41:54.100,140.3156,7123.2871,5.1369,-1.3233,0.8853,-0.0443,2520.0,2400.0,-0.2378,-1.854,3.7255,96.9747 2019-06-03 15:41:54.120,140.2985,7122.4131,5.1369,-1.3233,1.0162,0.1664,2520.0,2400.0,-0.2349,-1.854,3.7612,96.9747 2019-06-03 15:41:54.140,139.937,7121.0737,5.1369,-1.3233,0.8206,-0.0048,2520.0,2400.0,-0.2261,-1.848,3.801,96.9747 2019-06-03 15:41:54.160,139.9542,7120.2266,5.0028,-1.3185,0.9349,0.177,2520.0,2400.0,-0.2408,-1.842,3.8115,96.9472 2019-06-03 15:41:54.180,139.911,7118.8877,5.0028,-1.3185,0.7004,-0.0084,2520.0,2400.0,-0.2349,-1.8391,3.8407,96.9472 2019-06-03 15:41:54.200,139.911,7118.0405,4.807,-1.32,0.7219,-0.0203,2520.0,2400.0,-0.2554,-1.842,3.8327,96.9174 2019-06-03 15:41:54.220,139.911,7117.1934,4.7573,-1.3202,1.1838,0.0954,2520.0,2400.0,-0.2466,-1.845,3.8711,96.9026 2019-06-03 15:41:54.240,139.9628,7115.9365,4.7573,-1.3202,0.6453,0.0447,2520.0,2400.0,-0.2495,-1.8361,3.8751,96.9026 2019-06-03 15:41:54.260,139.9801,7115.2534,4.7573,-1.3202,1.0835,0.1231,2520.0,2400.0,-0.2291,-1.8331,3.8804,96.9026 2019-06-03 15:41:54.280,139.9197,7115.2808,4.6549,-1.3285,0.6157,0.037,2520.0,2400.0,-0.2349,-1.8361,3.883,96.8742 2019-06-03 15:41:54.300,139.911,7115.2261,4.5699,-1.3398,0.6882,0.0217,2520.0,2400.0,-0.2261,-1.8301,3.8963,96.8453 2019-06-03 15:41:54.320,139.9024,7115.2261,4.5699,-1.3398,1.0669,0.0996,2520.0,2400.0,-0.2261,-1.8331,3.9148,96.8453 2019-06-03 15:41:54.340,139.6861,7115.2261,4.5699,-1.3398,0.6712,0.0526,2520.0,2400.0,-0.232,-1.8331,3.9161,96.8453 2019-06-03 15:41:54.360,139.6861,7115.2534,4.5033,-1.3496,1.1453,0.0982,2520.0,2400.0,-0.2261,-1.8092,3.9267,96.8165 2019-06-03 15:41:54.380,139.6427,7115.2808,4.4421,-1.3623,0.5843,0.0311,2520.0,2400.0,-0.232,-1.8241,3.9347,96.7933 2019-06-03 15:41:54.400,139.634,7115.2808,4.4112,-1.3746,0.6213,0.0775,2400.0,2400.0,-0.2261,-1.8182,3.9373,96.7789 2019-06-03 15:41:54.420,139.6514,7115.2808,4.3885,-1.3811,1.0037,0.0424,2400.0,2400.0,-0.2349,-1.8241,3.9453,96.7662 2019-06-03 15:41:54.440,139.6947,7115.3081,4.3885,-1.3811,0.7359,0.0866,2400.0,2400.0,-0.2174,-1.8271,3.9665,96.7662 2019-06-03 15:41:54.460,139.6947,7115.2534,4.3885,-1.3811,1.0344,0.0551,2400.0,2400.0,-0.2291,-1.8241,3.9638,96.7662 2019-06-03 15:41:54.480,139.634,7115.2261,4.3482,-1.4025,0.6815,0.0994,2400.0,2400.0,-0.2291,-1.8241,3.9704,96.7404 2019-06-03 15:41:54.500,139.6427,7115.1714,4.3214,-1.4217,0.7093,0.1144,2400.0,2400.0,-0.2349,-1.8241,3.9651,96.7164 2019-06-03 15:41:54.520,139.634,7115.1987,4.3214,-1.4217,1.0092,0.0123,2400.0,2400.0,-0.2349,-1.8212,3.985,96.7164 2019-06-03 15:41:54.540,139.5472,7115.2261,4.3214,-1.4217,0.7452,0.1177,2400.0,2400.0,-0.2378,-1.8212,3.9996,96.7164 2019-06-03 15:41:54.560,139.5472,7115.2808,4.3022,-1.4462,1.0647,-0.0029,2400.0,2400.0,-0.2291,-1.8212,3.9956,96.6923 2019-06-03 15:41:54.580,139.5037,7115.3081,4.3022,-1.4462,0.7307,0.1409,2400.0,2400.0,-0.2408,-1.8212,4.0009,96.6923 2019-06-03 15:41:54.600,139.5037,7115.2808,4.2823,-1.4823,0.8213,0.1518,2400.0,2400.0,-0.2495,-1.8241,3.9784,96.6595 2019-06-03 15:41:54.620,139.5124,7115.2534,4.2743,-1.4991,1.0192,-0.015,2400.0,2400.0,-0.2495,-1.8241,4.0115,96.649 2019-06-03 15:41:54.640,139.5559,7115.2534,4.2743,-1.4991,0.8657,0.1092,2400.0,2400.0,-0.2525,-1.8241,4.0075,96.649 2019-06-03 15:41:54.660,139.5646,7115.2534,4.2743,-1.4991,0.9474,0.0172,2400.0,2400.0,-0.2174,-1.8212,4.0168,96.649 2019-06-03 15:41:54.680,139.495,7115.2534,4.2742,-1.5273,0.9301,0.1101,2400.0,2400.0,-0.2291,-1.8271,4.0115,96.6311 2019-06-03 15:41:54.700,139.5037,7115.1987,4.2796,-1.5573,0.9711,0.1284,2400.0,2400.0,-0.2145,-1.8212,4.0115,96.6149 2019-06-03 15:41:54.720,139.495,7115.1987,4.2796,-1.5573,0.8727,0.0119,2400.0,2400.0,-0.232,-1.8182,4.0128,96.6149 2019-06-03 15:41:54.740,139.5559,7115.144,4.2796,-1.5573,0.9833,0.124,2400.0,2400.0,-0.2203,-1.8301,4.0207,96.6149 2019-06-03 15:41:54.760,139.5472,7115.1714,4.286,-1.5912,0.8343,0.0244,2400.0,2400.0,-0.232,-1.8062,4.026,96.6005 2019-06-03 15:41:54.780,139.5037,7115.2261,4.286,-1.5912,1.0536,0.1434,2400.0,2400.0,-0.2466,-1.8241,4.0207,96.6005 2019-06-03 15:41:54.800,139.5037,7115.2808,4.3043,-1.6439,1.0114,0.1304,2400.0,2400.0,-0.2378,-1.8241,4.0181,96.5817 2019-06-03 15:41:54.820,139.5037,7115.3081,4.3063,-1.6637,0.9352,0.0108,2400.0,2400.0,-0.2378,-1.8212,4.0221,96.5769 2019-06-03 15:41:54.840,139.5559,7115.3354,4.3063,-1.6637,1.031,0.1145,2400.0,2400.0,-0.2203,-1.8271,4.0353,96.5769 2019-06-03 15:41:54.860,139.5646,7115.2534,4.3063,-1.6637,0.7836,0.045,2400.0,2400.0,-0.2232,-1.8212,4.0274,96.5769 2019-06-03 15:41:54.880,139.5037,7115.2808,4.3231,-1.6966,1.1202,0.1183,2400.0,2400.0,-0.232,-1.8212,4.0247,96.5686 2019-06-03 15:41:54.900,139.5037,7115.2261,4.3377,-1.7348,1.0728,0.1249,2400.0,2400.0,-0.232,-1.8212,4.0207,96.5612 2019-06-03 15:41:54.920,139.4863,7115.2261,4.3377,-1.7348,0.9049,0.0311,2400.0,2400.0,-0.2291,-1.8212,4.0327,96.5612 2019-06-03 15:41:54.940,139.408,7115.2808,4.3377,-1.7348,1.0798,0.1073,2400.0,2400.0,-0.2291,-1.8212,4.0353,96.5612 2019-06-03 15:41:54.960,139.408,7115.3354,4.3509,-1.7725,0.8054,0.0481,2400.0,2400.0,-0.2261,-1.8212,4.0313,96.5559 2019-06-03 15:41:54.980,139.3645,7115.3354,4.3509,-1.7725,1.1135,0.1048,2400.0,2400.0,-0.2291,-1.8212,4.03,96.5559 2019-06-03 15:41:55.000,139.3732,7115.3354,4.3799,-1.8281,1.1139,0.098,2400.0,2400.0,-0.2261,-1.8182,4.0274,96.5507 2019-06-03 15:41:55.020,139.3732,7115.3628,4.3858,-1.8473,0.8273,0.0793,2400.0,2400.0,-0.2261,-1.8212,4.0353,96.5502 2019-06-03 15:41:55.040,139.4254,7115.3628,4.3858,-1.8473,1.1227,0.0562,2400.0,2400.0,-0.2203,-1.8212,4.0393,96.5502 2019-06-03 15:41:55.060,139.4254,7115.3901,4.3858,-1.8473,0.8653,0.0984,2400.0,2400.0,-0.2028,-1.8182,4.0274,96.5502 2019-06-03 15:41:55.080,139.3645,7115.4995,4.4036,-1.8855,1.129,0.0646,2400.0,2400.0,-0.2028,-1.8212,4.0366,96.5516 2019-06-03 15:41:55.100,139.3645,7116.21,4.4159,-1.9221,1.098,0.0505,2400.0,2400.0,-0.2203,-1.8182,4.0221,96.5551 2019-06-03 15:41:55.120,139.3645,7117.0571,4.4159,-1.9221,0.8779,0.1078,2400.0,2400.0,-0.2115,-1.8152,4.0485,96.5551 2019-06-03 15:41:55.140,139.4254,7118.314,4.4159,-1.9221,1.115,0.011,2400.0,2400.0,-0.2203,-1.8182,4.0327,96.5551 2019-06-03 15:41:55.160,139.4167,7119.2158,4.4263,-1.9608,0.9001,0.1053,2400.0,2400.0,-0.2057,-1.8092,4.0207,96.5607 2019-06-03 15:41:55.180,139.3645,7120.5547,4.4263,-1.9608,1.095,0.0232,2400.0,2400.0,-0.1881,-1.8271,4.0353,96.5607 2019-06-03 15:41:55.200,139.3645,7121.4565,4.447,-2.0101,1.1061,0.0417,2400.0,2400.0,-0.1618,-1.8212,4.0327,96.5721 2019-06-03 15:41:55.220,139.3645,7122.3311,4.4532,-2.0264,0.9119,0.1366,2400.0,2400.0,-0.156,-1.8182,4.0366,96.5773 2019-06-03 15:41:55.240,139.4341,7123.6152,4.4532,-2.0264,1.0499,0.0016,2400.0,2400.0,-0.156,-1.8152,4.038,96.5773 2019-06-03 15:41:55.260,139.4341,7124.1616,4.4532,-2.0264,1.0551,0.1177,2400.0,2400.0,-0.1677,-1.8182,4.0287,96.5773 2019-06-03 15:41:55.280,139.3732,7124.0522,4.4623,-2.0615,0.9929,0.0013,2400.0,2400.0,-0.2028,-1.8182,4.0313,96.5891 2019-06-03 15:41:55.300,139.3906,7123.9702,4.4684,-2.0959,0.9977,0.0278,2400.0,2400.0,-0.194,-1.8122,4.0366,96.6018 2019-06-03 15:41:55.320,139.3557,7123.9976,4.4684,-2.0959,0.9042,0.1573,2400.0,2400.0,-0.1969,-1.8182,4.034,96.6018 2019-06-03 15:41:55.340,139.2685,7124.0249,4.4684,-2.0959,1.0662,-0.0125,2400.0,2400.0,-0.1823,-1.8182,4.0406,96.6018 2019-06-03 15:41:55.360,139.2685,7124.0796,4.4757,-2.1322,0.9811,0.1267,2400.0,2400.0,-0.1823,-1.8122,4.0247,96.6162 2019-06-03 15:41:55.380,139.2161,7124.0796,4.4757,-2.1322,1.0325,-0.016,2400.0,2400.0,-0.1852,-1.851,4.0459,96.6162 2019-06-03 15:41:55.400,139.2336,7124.0249,4.4842,-2.1764,0.9796,0.0341,2400.0,2400.0,-0.1823,-1.8271,4.034,96.6364 2019-06-03 15:41:55.420,139.2423,7123.9429,4.4884,-2.1919,0.9634,0.1305,2400.0,2400.0,-0.1765,-1.8062,4.0353,96.6451 2019-06-03 15:41:55.440,139.286,7123.916,4.4884,-2.1919,1.0118,0.0425,2400.0,2400.0,-0.1735,-1.8092,4.0419,96.6451 2019-06-03 15:41:55.460,139.2947,7123.9429,4.4884,-2.1919,1.0262,0.0904,2400.0,2400.0,-0.1765,-1.8062,4.0234,96.6451 2019-06-03 15:41:55.480,139.2161,7123.9429,4.487,-2.2247,0.9826,0.0192,2400.0,2400.0,-0.1765,-1.8092,4.0459,96.6617 2019-06-03 15:41:55.500,139.2336,7123.8887,4.485,-2.2558,0.9134,0.0262,2400.0,2400.0,-0.1677,-1.8122,4.034,96.6783 2019-06-03 15:41:55.520,139.2161,7123.8613,4.485,-2.2558,1.0296,0.1591,2400.0,2400.0,-0.156,-1.8122,4.0366,96.6783 2019-06-03 15:41:55.540,139.286,7123.834,4.485,-2.2558,0.9467,0.0138,2400.0,2400.0,-0.1648,-1.8122,4.0327,96.6783 2019-06-03 15:41:55.560,139.286,7123.8066,4.4835,-2.2818,0.9256,0.1124,2400.0,2400.0,-0.1618,-1.8152,4.0287,96.6945 2019-06-03 15:41:55.580,139.2336,7123.8613,4.4835,-2.2818,1.0037,0.0043,2400.0,2400.0,-0.1765,-1.8241,4.0393,96.6945 2019-06-03 15:41:55.600,139.2336,7123.8887,4.4787,-2.3189,0.9848,0.0266,2400.0,2400.0,-0.1648,-1.8271,4.0353,96.7155 2019-06-03 15:41:55.620,139.2336,7123.916,4.4795,-2.3271,0.9867,0.159,2400.0,2400.0,-0.1648,-1.8271,4.026,96.7247 2019-06-03 15:41:55.640,139.2685,7123.9429,4.4795,-2.3271,0.9497,-0.0036,2400.0,2400.0,-0.1618,-1.8271,4.0353,96.7247 2019-06-03 15:41:55.660,139.286,7123.9429,4.4795,-2.3271,0.9256,0.1393,2400.0,2400.0,-0.1765,-1.8182,4.0287,96.7247 2019-06-03 15:41:55.680,139.2336,7123.8887,4.4705,-2.3483,0.9977,-0.0036,2400.0,2400.0,-0.1969,-1.8241,4.038,96.7404 2019-06-03 15:41:55.700,139.2423,7123.7793,4.4644,-2.3696,0.9615,-0.0144,2400.0,2400.0,-0.1765,-1.8182,4.038,96.7548 2019-06-03 15:41:55.720,139.2336,7123.7793,4.4644,-2.3696,1.0469,0.1655,2400.0,2400.0,-0.1677,-1.8182,4.0274,96.7548 2019-06-03 15:41:55.740,139.4341,7123.8066,4.4644,-2.3696,0.9715,-0.0085,2400.0,2400.0,-0.156,-1.8241,4.0366,96.7548 2019-06-03 15:41:55.760,139.4254,7123.8613,4.4616,-2.3831,1.0469,0.1282,2400.0,2400.0,-0.1706,-1.8182,4.0207,96.7701 2019-06-03 15:41:55.780,139.3732,7123.916,4.4583,-2.3931,0.95,-0.0053,2400.0,2400.0,-0.1765,-1.8212,4.0353,96.7832 2019-06-03 15:41:55.800,139.3645,7123.9429,4.4509,-2.4003,0.8986,0.0121,2400.0,2400.0,-0.1881,-1.8241,4.0366,96.7898 2019-06-03 15:41:55.820,139.3819,7123.8887,4.4509,-2.4034,1.1401,0.1366,2400.0,2400.0,-0.1735,-1.8182,4.0353,96.7972 2019-06-03 15:41:55.840,139.4341,7123.7793,4.4509,-2.4034,0.8942,0.0207,2400.0,2400.0,-0.1677,-1.8271,4.0327,96.7972 2019-06-03 15:41:55.860,139.4341,7123.7793,4.4509,-2.4034,1.1094,0.129,2400.0,2400.0,-0.1531,-1.8241,4.0234,96.7972 2019-06-03 15:41:55.880,139.3732,7123.7793,4.4413,-2.4116,0.8554,0.037,2400.0,2400.0,-0.1589,-1.8271,4.0313,96.8108 2019-06-03 15:41:55.900,139.3732,7123.752,4.4336,-2.4177,0.8295,0.0178,2400.0,2400.0,-0.1589,-1.8271,4.0393,96.823 2019-06-03 15:41:55.920,139.3645,7123.752,4.4336,-2.4177,1.2226,0.1257,2400.0,2400.0,-0.1706,-1.8062,4.0327,96.823 2019-06-03 15:41:55.940,139.4254,7123.8066,4.4336,-2.4177,0.7633,0.0314,2400.0,2400.0,-0.194,-1.8212,4.0419,96.823 2019-06-03 15:41:55.960,139.4167,7123.8066,4.4309,-2.4172,1.1742,0.0672,2400.0,2400.0,-0.1881,-1.8212,4.0247,96.8339 2019-06-03 15:41:55.980,139.3732,7123.7246,4.4309,-2.4172,0.8191,0.0919,2400.0,2400.0,-0.1852,-1.8241,4.0313,96.8339 2019-06-03 15:41:56.000,139.3732,7123.752,4.4201,-2.4134,0.7755,0.0893,2400.0,2400.0,-0.1618,-1.8182,4.0353,96.8471 2019-06-03 15:41:56.020,139.3732,7123.7793,4.4161,-2.411,1.2489,0.0412,2400.0,2400.0,-0.156,-1.8152,4.0353,96.851 2019-06-03 15:41:56.040,139.4254,7123.834,4.4161,-2.411,0.7758,0.1046,2400.0,2400.0,-0.1677,-1.842,4.0366,96.851 2019-06-03 15:41:56.060,139.4341,7123.8613,4.4161,-2.411,1.2259,0.0521,2400.0,2400.0,-0.1735,-1.8182,4.0207,96.851 2019-06-03 15:41:56.080,139.3645,7123.8887,4.4076,-2.4071,0.9175,0.1194,2400.0,2400.0,-0.1911,-1.8391,4.0327,96.8562 2019-06-03 15:41:56.100,139.3819,7123.7793,4.4034,-2.3984,0.8339,0.0939,2400.0,2400.0,-0.1852,-1.8361,4.0353,96.8632 2019-06-03 15:41:56.120,139.3557,7123.7793,4.4034,-2.3984,1.2374,0.0094,2400.0,2400.0,-0.1823,-1.8182,4.0419,96.8632 2019-06-03 15:41:56.140,139.4167,7123.8613,4.4034,-2.3984,0.8805,0.1668,2400.0,2400.0,-0.1881,-1.8212,4.0353,96.8632 2019-06-03 15:41:56.160,139.4254,7123.9429,4.3997,-2.3901,1.2152,-0.0191,2400.0,2400.0,-0.1648,-1.8241,4.0207,96.8672 2019-06-03 15:41:56.180,139.3645,7123.9702,4.3997,-2.3901,0.9903,0.1954,2400.0,2400.0,-0.156,-1.8241,4.03,96.8672 2019-06-03 15:41:56.200,139.3645,7124.0249,4.388,-2.3762,0.9131,0.1525,2400.0,2400.0,-0.1589,-1.8241,4.0327,96.8693 2019-06-03 15:41:56.220,139.3732,7124.0249,4.379,-2.3756,1.0728,-0.0488,2400.0,2400.0,-0.1618,-1.8241,4.0353,96.8693 2019-06-03 15:41:56.240,139.4254,7124.0249,4.379,-2.3756,1.0185,0.1738,2400.0,2400.0,-0.1881,-1.8361,4.034,96.8693 2019-06-03 15:41:56.260,139.4254,7123.9976,4.379,-2.3756,0.9855,-0.0096,2400.0,2400.0,-0.1794,-1.8331,4.0221,96.8693 2019-06-03 15:41:56.280,139.3557,7123.9702,4.375,-2.3625,1.0103,0.1701,2400.0,2400.0,-0.1735,-1.8331,4.038,96.8672 2019-06-03 15:41:56.300,139.3732,7123.916,4.37,-2.3536,0.9833,0.1375,2400.0,2400.0,-0.1794,-1.8361,4.0393,96.865 2019-06-03 15:41:56.320,139.3645,7123.916,4.37,-2.3536,0.9179,-0.0165,2400.0,2400.0,-0.1706,-1.8241,4.0366,96.865 2019-06-03 15:41:56.340,139.4167,7123.9976,4.37,-2.3536,1.1283,0.1561,2400.0,2400.0,-0.1823,-1.8301,4.0406,96.865 2019-06-03 15:41:56.360,139.4167,7124.0522,4.3613,-2.347,0.8901,0.0189,2400.0,2400.0,-0.1706,-1.8241,4.026,96.8593 2019-06-03 15:41:56.380,139.3645,7123.9976,4.3613,-2.347,1.129,0.1326,2400.0,2400.0,-0.1794,-1.8092,4.0419,96.8593 2019-06-03 15:41:56.400,139.3645,7124.0249,4.3527,-2.3356,1.1557,0.1422,2340.0,2400.0,-0.1765,-1.8212,4.0538,96.8466 2019-06-03 15:41:56.420,139.3645,7124.0522,4.3449,-2.3344,0.8905,-0.0085,2340.0,2400.0,-0.1765,-1.8241,4.0327,96.8405 2019-06-03 15:41:56.440,139.4167,7124.1069,4.3449,-2.3344,1.2481,0.143,2340.0,2400.0,-0.1794,-1.8241,4.0446,96.8405 2019-06-03 15:41:56.460,139.4254,7124.1343,4.3449,-2.3344,0.7304,0.0502,2340.0,2400.0,-0.1735,-1.7973,4.0274,96.8405 2019-06-03 15:41:56.480,139.3557,7124.2163,4.3432,-2.3287,1.2433,0.081,2340.0,2400.0,-0.1648,-1.8122,4.0393,96.8283 2019-06-03 15:41:56.500,139.3819,7125.0361,4.3368,-2.3275,1.2189,0.055,2340.0,2400.0,-0.156,-1.8241,4.0406,96.813 2019-06-03 15:41:56.520,139.3645,7126.0205,4.3368,-2.3275,0.8849,0.0622,2340.0,2400.0,-0.1648,-1.8212,4.0406,96.813 2019-06-03 15:41:56.540,139.5646,7127.6055,4.3368,-2.3275,1.0861,0.0861,2340.0,2400.0,-0.1881,-1.8212,4.0446,96.813 2019-06-03 15:41:56.560,139.5559,7128.6719,4.3252,-2.3238,0.7751,0.1046,2340.0,2400.0,-0.1823,-1.8182,4.0327,96.7981 2019-06-03 15:41:56.580,139.5037,7130.2295,4.3252,-2.3238,1.25,0.0932,2340.0,2400.0,-0.1911,-1.8182,4.03,96.7981 2019-06-03 15:41:56.600,139.495,7131.2681,4.3189,-2.3163,1.2034,0.0717,2340.0,2400.0,-0.1618,-1.8212,4.0485,96.7706 2019-06-03 15:41:56.620,139.5037,7132.3071,4.3151,-2.3154,0.7991,0.0382,2340.0,2400.0,-0.1618,-1.8212,4.0353,96.7588 2019-06-03 15:41:56.640,139.5646,7133.8101,4.3151,-2.3154,1.1997,0.0853,2340.0,2400.0,-0.1501,-1.8182,4.0406,96.7588 2019-06-03 15:41:56.660,139.5646,7134.4663,4.3151,-2.3154,0.7799,0.1105,2340.0,2400.0,-0.1618,-1.8182,4.0221,96.7588 2019-06-03 15:41:56.680,139.5037,7134.439,4.3119,-2.3159,1.1971,0.0281,2340.0,2400.0,-0.1589,-1.8152,4.0631,96.7347 2019-06-03 15:41:56.700,139.5211,7134.3569,4.3021,-2.3177,1.2674,0.0144,2340.0,2400.0,-0.1706,-1.8212,4.0975,96.7085 2019-06-03 15:41:56.720,139.495,7134.3569,4.3021,-2.3177,0.7444,0.1119,2340.0,2400.0,-0.1648,-1.8122,4.1505,96.7085 2019-06-03 15:41:56.740,139.5733,7134.3296,4.3021,-2.3177,1.1679,0.0122,2340.0,2400.0,-0.1735,-1.8212,4.2379,96.7085 2019-06-03 15:41:56.760,139.5559,7134.4116,4.294,-2.3252,0.9304,0.1591,2340.0,2400.0,-0.1706,-1.8212,4.2697,96.6805 2019-06-03 15:41:56.780,139.495,7134.3843,4.294,-2.3252,1.1623,-0.006,2340.0,2400.0,-0.1648,-1.8212,4.3478,96.6805 2019-06-03 15:41:56.800,139.5037,7134.3843,4.2915,-2.3357,1.1272,-0.0263,2340.0,2400.0,-0.1589,-1.8212,4.3875,96.632 2019-06-03 15:41:56.820,139.5037,7134.4116,4.2953,-2.3366,0.9327,0.1698,2340.0,2400.0,-0.1531,-1.7674,4.3954,96.6162 2019-06-03 15:41:56.840,139.5646,7134.3843,4.2953,-2.3366,1.0173,-0.0265,2340.0,2400.0,-0.1881,-1.7764,4.3848,96.6162 2019-06-03 15:41:56.860,139.5733,7134.3569,4.2953,-2.3366,0.9034,0.1887,2340.0,2400.0,-0.1618,-1.7704,4.3928,96.6162 2019-06-03 15:41:56.880,139.5037,7134.3569,4.2995,-2.3472,1.0503,-0.0311,2340.0,2400.0,-0.1706,-1.7794,4.3928,96.5848 2019-06-03 15:41:56.900,139.5037,7134.2749,4.3084,-2.3616,1.054,-0.0326,2340.0,2400.0,-0.1589,-1.7823,4.3994,96.5524 2019-06-03 15:41:56.920,139.495,7134.2749,4.3084,-2.3616,0.9493,0.1584,2340.0,2400.0,-0.1531,-1.7764,4.3729,96.5524 2019-06-03 15:41:56.940,139.5559,7134.2476,4.3084,-2.3616,1.0325,-0.0089,2340.0,2400.0,-0.156,-1.7794,4.3782,96.5524 2019-06-03 15:41:56.960,139.5559,7134.3022,4.3273,-2.3732,1.0114,0.1759,2340.0,2400.0,-0.1589,-1.7794,4.3464,96.5205 2019-06-03 15:41:56.980,139.5037,7134.3022,4.3273,-2.3732,1.0736,-0.0115,2340.0,2400.0,-0.1531,-1.7764,4.3531,96.5205 2019-06-03 15:41:57.000,139.5037,7134.3296,4.3618,-2.3947,0.831,-0.0269,2340.0,2400.0,-0.1648,-1.7794,4.3517,96.4707 2019-06-03 15:41:57.020,139.5211,7134.3296,4.3785,-2.3982,1.2126,0.146,2340.0,2400.0,-0.1501,-1.7794,4.3464,96.4563 2019-06-03 15:41:57.040,139.5559,7134.3569,4.3785,-2.3982,0.8321,0.0244,2340.0,2400.0,-0.1852,-1.7764,4.3359,96.4563 2019-06-03 15:41:57.060,139.5646,7134.3569,4.3785,-2.3982,1.1324,0.147,2340.0,2400.0,-0.1648,-1.7794,4.3239,96.4563 2019-06-03 15:41:57.080,139.5037,7134.3296,4.4027,-2.4134,0.7947,0.019,2340.0,2400.0,-0.1677,-1.7794,4.3041,96.4252 2019-06-03 15:41:57.100,139.5124,7134.2749,4.4326,-2.4296,0.7322,0.036,2340.0,2400.0,-0.1618,-1.7823,4.3213,96.3959 2019-06-03 15:41:57.120,139.4863,7134.2476,4.4326,-2.4296,1.2392,0.1088,2340.0,2400.0,-0.1677,-1.7764,4.3001,96.3959 2019-06-03 15:41:57.140,139.4167,7134.3022,4.4326,-2.4296,0.8616,0.0717,2340.0,2400.0,-0.1589,-1.7794,4.3014,96.3959 2019-06-03 15:41:57.160,139.4167,7134.3843,4.466,-2.4388,1.2348,0.0815,2340.0,2400.0,-0.1618,-1.7794,4.2683,96.3693 2019-06-03 15:41:57.180,139.3732,7134.4116,4.4979,-2.4544,0.7692,0.0811,2340.0,2400.0,-0.156,-1.7764,4.2697,96.3404 2019-06-03 15:41:57.200,139.3732,7134.4116,4.5099,-2.468,0.7296,0.0879,2340.0,2400.0,-0.1706,-1.7764,4.271,96.3264 2019-06-03 15:41:57.220,139.3645,7134.3843,4.5217,-2.4751,1.2611,0.0495,2340.0,2400.0,-0.1648,-1.7764,4.2617,96.3129 2019-06-03 15:41:57.240,139.4167,7134.4663,4.5217,-2.4751,0.8176,0.1458,2340.0,2400.0,-0.1765,-1.7883,4.2524,96.3129 2019-06-03 15:41:57.260,139.4254,7134.4937,4.5217,-2.4751,1.173,0.0064,2340.0,2400.0,-0.1706,-1.7794,4.2352,96.3129 2019-06-03 15:41:57.280,139.3645,7134.521,4.5484,-2.4948,0.8861,0.152,2340.0,2400.0,-0.1648,-1.7823,4.2471,96.2884 2019-06-03 15:41:57.300,139.3645,7134.439,4.5777,-2.5071,0.8979,0.1503,2340.0,2400.0,-0.1648,-1.8032,4.2564,96.2657 2019-06-03 15:41:57.320,139.3557,7134.4663,4.5777,-2.5071,1.1882,0.0021,2340.0,2400.0,-0.156,-1.7883,4.2524,96.2657 2019-06-03 15:41:57.340,139.4254,7134.3843,4.5777,-2.5071,0.8631,0.1921,2340.0,2400.0,-0.1677,-1.7883,4.2432,96.2657 2019-06-03 15:41:57.360,139.4167,7134.4116,4.6025,-2.5208,1.1246,-0.0414,2340.0,2400.0,-0.1618,-1.7853,4.2326,96.2456 2019-06-03 15:41:57.380,139.3645,7134.4937,4.6025,-2.5208,0.9352,0.2052,2340.0,2400.0,-0.1648,-1.7584,4.2286,96.2456 2019-06-03 15:41:57.400,139.3645,7134.521,4.6361,-2.5396,0.9741,0.2016,2400.0,2340.0,-0.1589,-1.7734,4.2458,96.2185 2019-06-03 15:41:57.420,139.3732,7134.4663,4.6386,-2.5472,1.1453,-0.0378,2400.0,2340.0,-0.1589,-1.7704,4.2405,96.2088 2019-06-03 15:41:57.440,139.4167,7134.521,4.6386,-2.5472,1.0292,0.1948,2400.0,2340.0,-0.1648,-1.7674,4.2405,96.2088 2019-06-03 15:41:57.460,139.4167,7134.5483,4.6386,-2.5472,0.97,-0.0121,2400.0,2340.0,-0.1706,-1.7674,4.2392,96.2088 2019-06-03 15:41:57.480,139.3645,7134.4663,4.6597,-2.5594,1.1124,0.1741,2400.0,2340.0,-0.1881,-1.7555,4.2286,96.1931 2019-06-03 15:41:57.500,139.3819,7134.439,4.6794,-2.5687,1.1165,0.1956,2400.0,2340.0,-0.194,-1.7614,4.2352,96.18 2019-06-03 15:41:57.520,139.3557,7134.439,4.6794,-2.5687,0.98,0.007,2400.0,2340.0,-0.1881,-1.7316,4.226,96.18 2019-06-03 15:41:57.540,139.2773,7134.4663,4.6794,-2.5687,1.2348,0.1692,2400.0,2340.0,-0.1881,-1.7226,4.2366,96.18 2019-06-03 15:41:57.560,139.2685,7134.521,4.6897,-2.5795,0.8857,0.021,2400.0,2340.0,-0.2028,-1.7345,4.2299,96.1686 2019-06-03 15:41:57.580,139.2161,7134.5483,4.6897,-2.5795,1.2056,0.1402,2400.0,2340.0,-0.1998,-1.7226,4.2326,96.1686 2019-06-03 15:41:57.600,139.2249,7134.5757,4.7109,-2.5986,1.2126,0.1845,2400.0,2340.0,-0.2203,-1.7226,4.2339,96.1529 2019-06-03 15:41:57.620,139.2249,7134.521,4.7116,-2.6071,0.8576,0.0081,2400.0,2340.0,-0.1998,-1.7196,4.2299,96.149 2019-06-03 15:41:57.640,139.2773,7134.4663,4.7116,-2.6071,1.2611,0.1542,2400.0,2340.0,-0.2086,-1.6957,4.2299,96.149 2019-06-03 15:41:57.660,139.286,7134.4116,4.7116,-2.6071,0.821,0.022,2400.0,2340.0,-0.1969,-1.6628,4.2299,96.149 2019-06-03 15:41:57.680,139.2249,7134.4663,4.7235,-2.6174,1.196,0.1088,2400.0,2340.0,-0.2086,-1.5999,4.2273,96.1433 2019-06-03 15:41:57.700,139.2249,7134.439,4.7293,-2.6242,1.1941,0.1457,2400.0,2340.0,-0.2291,-1.5999,4.2299,96.1389 2019-06-03 15:41:57.720,139.2249,7134.439,4.7293,-2.6242,0.8739,0.068,2400.0,2340.0,-0.2232,-1.3841,4.2233,96.1389 2019-06-03 15:41:57.740,139.2773,7134.439,4.7293,-2.6242,1.1938,0.1077,2400.0,2340.0,-0.2261,-1.2338,4.2339,96.1389 2019-06-03 15:41:57.760,139.2773,7134.4663,4.729,-2.6356,0.9001,0.0622,2400.0,2340.0,-0.1881,-0.899,4.2366,96.1358 2019-06-03 15:41:57.780,139.2336,7134.4663,4.729,-2.6356,1.169,0.0847,2400.0,2340.0,-0.2028,-0.5081,4.2114,96.1358 2019-06-03 15:41:57.800,139.2249,7134.521,4.7347,-2.6374,1.1952,0.1163,2400.0,2340.0,-0.1969,-0.1457,4.2313,96.1337 2019-06-03 15:41:57.820,139.2336,7134.5483,4.7338,-2.6288,0.8132,0.043,2400.0,2340.0,-0.2086,0.3443,4.2207,96.1341 2019-06-03 15:41:57.840,139.286,7134.5757,4.7338,-2.6288,1.2378,0.104,2400.0,2340.0,-0.2086,0.8807,4.2339,96.1341 2019-06-03 15:41:57.860,139.2773,7134.5483,4.7338,-2.6288,0.933,0.0774,2400.0,2340.0,-0.2115,1.4551,4.222,96.1341 2019-06-03 15:41:57.880,139.2249,7134.4937,4.7373,-2.5988,1.2337,0.0327,2400.0,2340.0,-0.2115,1.9898,4.2207,96.1372 2019-06-03 15:41:57.900,139.2336,7134.4663,4.7364,-2.5337,1.2637,0.0735,2400.0,2340.0,-0.2203,2.3135,4.2326,96.1428 2019-06-03 15:41:57.920,139.2161,7134.439,4.7364,-2.5337,0.9463,0.0881,2400.0,2340.0,-0.2086,2.6607,4.2352,96.1428 2019-06-03 15:41:57.940,139.286,7134.4937,4.7364,-2.5337,1.1497,0.0708,2400.0,2340.0,-0.194,2.8761,4.2445,96.1428 2019-06-03 15:41:57.960,139.2685,7134.5757,4.7338,-2.4275,0.9948,0.1125,2400.0,2340.0,-0.2057,3.0285,4.222,96.1516 2019-06-03 15:41:57.980,139.2249,7134.603,4.7338,-2.4275,1.1705,0.0198,2400.0,2340.0,-0.1881,3.0412,4.2246,96.1516 2019-06-03 15:41:58.000,139.2249,7134.603,4.7463,-2.1648,1.129,0.0412,2400.0,2340.0,-0.2028,3.0094,4.2352,96.1691 2019-06-03 15:41:58.020,139.2336,7134.5483,4.7525,-2.0551,0.997,0.1127,2400.0,2340.0,-0.2028,2.9046,4.2366,96.1769 2019-06-03 15:41:58.040,139.2773,7134.5483,4.7525,-2.0551,1.1205,0.0267,2400.0,2340.0,-0.2057,2.7652,4.2445,96.1769 2019-06-03 15:41:58.060,139.2947,7134.4937,4.7525,-2.0551,1.0192,0.1109,2400.0,2340.0,-0.2261,2.6987,4.2313,96.1769 2019-06-03 15:41:58.080,139.2249,7134.4663,4.7641,-1.8005,1.146,0.0332,2400.0,2340.0,-0.2174,2.6228,4.2379,96.197 2019-06-03 15:41:58.100,139.2249,7134.3843,4.7714,-1.5103,1.1372,0.0317,2400.0,2340.0,-0.2174,2.5469,4.2551,96.2185 2019-06-03 15:41:58.120,139.2161,7134.3843,4.7714,-1.5103,1.0222,0.1238,2400.0,2340.0,-0.2086,2.5438,4.2511,96.2185 2019-06-03 15:41:58.140,139.2773,7134.4116,4.7714,-1.5103,1.1009,0.0021,2400.0,2340.0,-0.2145,2.5154,4.2498,96.2185 2019-06-03 15:41:58.160,139.2773,7134.3569,4.7795,-1.1906,0.8842,0.1506,2400.0,2340.0,-0.2115,2.4933,4.2485,96.2399 2019-06-03 15:41:58.180,139.2423,7134.4116,4.7795,-1.1906,1.0558,-0.0354,2400.0,2340.0,-0.2028,2.4712,4.2564,96.2399 2019-06-03 15:41:58.200,139.2249,7134.3296,4.7994,-0.66,1.007,0.003,2400.0,2340.0,-0.2145,2.4112,4.2591,96.27 2019-06-03 15:41:58.220,139.2336,7134.3569,4.8091,-0.4745,1.0144,0.1494,2400.0,2340.0,-0.1969,2.3513,4.2551,96.281 2019-06-03 15:41:58.240,139.286,7134.3843,4.8091,-0.4745,1.1483,0.0049,2400.0,2340.0,-0.2174,2.1688,4.2511,96.281 2019-06-03 15:41:58.260,139.286,7134.4116,4.8091,-0.4745,0.9852,0.1263,2400.0,2340.0,-0.2174,1.8926,4.2471,96.281 2019-06-03 15:41:58.280,139.2161,7134.3843,4.821,-0.0914,1.0136,0.0207,2400.0,2340.0,-0.2086,1.5362,4.2339,96.3011 2019-06-03 15:41:58.300,139.2336,7134.2202,4.8347,0.2972,0.8742,0.0375,2400.0,2340.0,-0.1969,1.0449,4.2418,96.3186 2019-06-03 15:41:58.320,139.2161,7134.2202,4.8347,0.2972,1.0288,0.1216,2400.0,2340.0,-0.1998,0.3566,4.2246,96.3186 2019-06-03 15:41:58.340,139.286,7134.2202,4.8347,0.2972,0.9604,0.0329,2400.0,2340.0,-0.2057,-0.3774,4.222,96.3186 2019-06-03 15:41:58.360,139.286,7134.2476,4.85,0.6923,1.1808,0.1148,2400.0,2340.0,-0.2145,-0.9746,4.222,96.3339 2019-06-03 15:41:58.380,139.2249,7134.3569,4.85,0.6923,0.9386,0.0674,2400.0,2340.0,-0.2174,-1.5131,4.2127,96.3339 2019-06-03 15:41:58.400,139.2161,7134.3843,4.8719,1.2581,0.8879,0.0489,2340.0,2400.0,-0.2174,-1.9434,4.222,96.3457 2019-06-03 15:41:58.420,139.2336,7134.3022,4.8776,1.4266,1.0743,0.1064,2340.0,2400.0,-0.2261,-2.1577,4.2021,96.3483 2019-06-03 15:41:58.440,139.2773,7134.2202,4.8776,1.4266,0.9537,0.0326,2340.0,2400.0,-0.2115,-2.2972,4.2114,96.3483 2019-06-03 15:41:58.460,139.2947,7134.2202,4.8776,1.4266,1.146,0.089,2340.0,2400.0,-0.2203,-2.395,4.2061,96.3483 2019-06-03 15:41:58.480,139.2336,7134.1382,4.8887,1.7331,0.9352,0.0542,2340.0,2400.0,-0.2145,-2.3446,4.2008,96.3492 2019-06-03 15:41:58.500,139.2336,7134.0835,4.8989,1.9963,0.8295,0.0656,2340.0,2400.0,-0.2174,-2.3001,4.2061,96.3452 2019-06-03 15:41:58.520,139.2249,7134.1108,4.8989,1.9963,1.0669,0.0552,2340.0,2400.0,-0.2203,-2.1963,4.1968,96.3452 2019-06-03 15:41:58.540,139.286,7134.0835,4.8989,1.9963,0.9267,0.0992,2340.0,2400.0,-0.2203,-2.1428,4.1968,96.3452 2019-06-03 15:41:58.560,139.2773,7134.0288,4.9089,2.2208,1.1649,0.0154,2340.0,2400.0,-0.232,-2.0863,4.1929,96.3378 2019-06-03 15:41:58.580,139.2336,7134.0562,4.9136,2.4118,0.8753,0.1549,2340.0,2400.0,-0.2174,-1.9077,4.1809,96.3277 2019-06-03 15:41:58.600,139.2249,7134.1108,4.9178,2.4945,0.8476,0.1477,2340.0,2400.0,-0.2115,-1.9047,4.1836,96.3212 2019-06-03 15:41:58.620,139.2336,7134.0835,4.9177,2.5682,1.1364,-0.0179,2340.0,2400.0,-0.1911,-1.842,4.1902,96.3142 2019-06-03 15:41:58.640,139.286,7134.1929,4.9177,2.5682,0.855,0.1271,2340.0,2400.0,-0.2174,-1.8331,4.1743,96.3142 2019-06-03 15:41:58.660,139.2947,7134.2749,4.9177,2.5682,1.2352,-0.0248,2340.0,2400.0,-0.2203,-1.845,4.1849,96.3142 2019-06-03 15:41:58.680,139.2161,7134.2749,4.9249,2.7017,0.8694,0.166,2340.0,2400.0,-0.2232,-1.845,4.1783,96.3002 2019-06-03 15:41:58.700,139.2423,7134.1655,4.9327,2.8148,0.8761,0.162,2340.0,2400.0,-0.2145,-1.857,4.1902,96.2871 2019-06-03 15:41:58.720,139.2161,7134.1382,4.9327,2.8148,1.0736,0.0037,2340.0,2400.0,-0.2115,-1.857,4.1717,96.2871 2019-06-03 15:41:58.740,139.286,7134.1382,4.9327,2.8148,0.929,0.1412,2340.0,2400.0,-0.2145,-1.857,4.1584,96.2871 2019-06-03 15:41:58.760,139.2773,7134.1655,4.9391,2.9104,1.1139,-0.028,2340.0,2400.0,-0.2232,-1.8629,4.1704,96.2731 2019-06-03 15:41:58.780,139.2249,7134.1108,4.9391,2.9104,0.9867,0.1716,2340.0,2400.0,-0.2145,-1.857,4.1717,96.2731 2019-06-03 15:41:58.800,139.2249,7134.1382,4.9443,3.0149,0.9375,0.1865,2340.0,2400.0,-0.2145,-1.8629,4.177,96.253 2019-06-03 15:41:58.820,139.2336,7134.1108,4.9418,3.0399,1.0377,-0.0215,2340.0,2400.0,-0.2057,-1.8719,4.169,96.2456 2019-06-03 15:41:58.840,139.2773,7134.1382,4.9418,3.0399,0.9467,0.1982,2340.0,2400.0,-0.2057,-1.8689,4.1677,96.2456 2019-06-03 15:41:58.860,139.286,7134.1382,4.9418,3.0399,0.9955,-0.0203,2340.0,2400.0,-0.2261,-1.8689,4.1624,96.2456 2019-06-03 15:41:58.880,139.2249,7134.1929,4.9456,3.0863,1.0569,0.162,2340.0,2400.0,-0.2145,-1.854,4.1664,96.2351 2019-06-03 15:41:58.900,139.2249,7134.1655,4.9499,3.1231,1.0477,0.1837,2340.0,2400.0,-0.2203,-1.845,4.1637,96.2272 2019-06-03 15:41:58.920,139.2161,7134.2476,4.9499,3.1231,0.8898,0.0165,2340.0,2400.0,-0.2115,-1.854,4.1677,96.2272 2019-06-03 15:41:58.940,139.1549,7134.3569,4.9499,3.1231,1.1549,0.1308,2340.0,2400.0,-0.2174,-1.854,4.1558,96.2272 2019-06-03 15:41:58.960,139.1287,7134.439,4.9492,3.1456,0.8986,0.0483,2340.0,2400.0,-0.2145,-1.854,4.1664,96.2211 2019-06-03 15:41:58.980,139.0937,7134.439,4.9492,3.1456,1.1793,0.1159,2340.0,2400.0,-0.2115,-1.845,4.1558,96.2211 2019-06-03 15:41:59.000,139.0937,7134.4937,4.9522,3.1622,1.152,0.1082,2340.0,2400.0,-0.1998,-1.851,4.1717,96.2145 2019-06-03 15:41:59.020,139.0937,7134.4663,4.9503,3.1613,0.8132,0.0546,2340.0,2400.0,-0.2203,-1.854,4.1558,96.2137 2019-06-03 15:41:59.040,139.1462,7134.4937,4.9503,3.1613,1.2304,0.0917,2340.0,2400.0,-0.2086,-1.845,4.1545,96.2137 2019-06-03 15:41:59.060,139.1637,7134.439,4.9503,3.1613,0.7899,0.0777,2340.0,2400.0,-0.2232,-1.8898,4.1584,96.2137 2019-06-03 15:41:59.080,139.0849,7134.4937,4.9519,3.1621,1.1997,0.0861,2340.0,2400.0,-0.2115,-1.8629,4.1558,96.2171 2019-06-03 15:41:59.100,139.0937,7134.439,4.9488,3.1526,1.2955,0.0605,2340.0,2400.0,-0.2145,-1.8659,4.1558,96.2233 2019-06-03 15:41:59.120,139.0849,7134.439,4.9488,3.1526,0.7688,0.0607,2340.0,2400.0,-0.2174,-1.8808,4.1492,96.2233 2019-06-03 15:41:59.140,139.0061,7134.4663,4.9488,3.1526,1.2326,0.0663,2340.0,2400.0,-0.2086,-1.8689,4.1518,96.2233 2019-06-03 15:41:59.160,139.0149,7134.439,4.9419,3.1386,0.8084,0.1185,2340.0,2400.0,-0.2232,-1.8749,4.1518,96.2333 2019-06-03 15:41:59.180,138.9622,7134.3843,4.9419,3.1386,1.2907,0.0457,2340.0,2400.0,-0.2086,-1.848,4.1505,96.2333 2019-06-03 15:41:59.200,138.9622,7134.3843,4.9389,3.1068,1.3657,0.0251,2340.0,2400.0,-0.2145,-1.86,4.1478,96.2569 2019-06-03 15:41:59.220,138.9622,7134.3843,4.9403,3.0947,0.899,0.0998,2340.0,2400.0,-0.2115,-1.8778,4.1531,96.2665 2019-06-03 15:41:59.240,139.0149,7134.3296,4.9403,3.0947,1.2847,0.0282,2340.0,2400.0,-0.2086,-1.86,4.1571,96.2665 2019-06-03 15:41:59.260,139.0149,7134.2476,4.9403,3.0947,0.9234,0.1536,2340.0,2400.0,-0.2057,-1.8659,4.1545,96.2665 2019-06-03 15:41:59.280,138.9535,7134.1929,4.9361,3.0668,1.1771,-0.0148,2340.0,2400.0,-0.2028,-1.86,4.1425,96.2888 2019-06-03 15:41:59.300,138.971,7134.0835,4.9245,3.0365,1.1908,-0.0474,2340.0,2400.0,-0.2115,-1.8659,4.1478,96.3142 2019-06-03 15:41:59.320,138.9535,7134.0562,4.9245,3.0365,0.8886,0.1937,2340.0,2400.0,-0.2174,-1.8629,4.1492,96.3142 2019-06-03 15:41:59.340,138.8745,7134.1108,4.9245,3.0365,1.0739,-0.0622,2340.0,2400.0,-0.2145,-1.857,4.1452,96.3142 2019-06-03 15:41:59.360,138.8569,7134.1929,4.9191,3.0061,0.9852,0.2297,2340.0,2400.0,-0.2145,-1.8629,4.1478,96.3444 2019-06-03 15:41:59.380,138.8217,7134.1655,4.9191,3.0061,0.9486,-0.0479,2340.0,2400.0,-0.194,-1.86,4.1439,96.3444 2019-06-03 15:41:59.400,138.8217,7134.1382,4.9093,2.9551,1.0063,-0.0639,2400.0,2400.0,-0.1998,-1.86,4.1505,96.3964 2019-06-03 15:41:59.420,138.8217,7134.1382,4.9141,2.9442,1.0998,0.178,2400.0,2400.0,-0.2145,-1.8629,4.1478,96.4169 2019-06-03 15:41:59.440,138.8745,7134.1655,4.9141,2.9442,0.9659,-0.0024,2400.0,2400.0,-0.1998,-1.8629,4.1452,96.4169 2019-06-03 15:41:59.460,138.8832,7134.1382,4.9141,2.9442,1.1546,0.2003,2400.0,2400.0,-0.2086,-1.8659,4.173,96.4169 2019-06-03 15:41:59.480,138.8217,7134.1108,4.9008,2.9141,0.8842,-0.0238,2400.0,2400.0,-0.2232,-1.8987,4.1412,96.4589 2019-06-03 15:41:59.500,138.8217,7134.0562,4.8905,2.8825,0.8199,-0.0029,2400.0,2400.0,-0.2203,-1.9196,4.1677,96.5035 2019-06-03 15:41:59.520,138.8129,7134.0562,4.8905,2.8825,1.1542,0.1267,2400.0,2400.0,-0.2291,-1.9583,4.1558,96.5035 2019-06-03 15:41:59.540,138.7337,7134.0835,4.8905,2.8825,0.855,0.0416,2400.0,2400.0,-0.2086,-1.9851,4.1611,96.5035 2019-06-03 15:41:59.560,138.7249,7134.1382,4.8852,2.8535,1.2759,0.1322,2400.0,2400.0,-0.2174,-2.1636,4.1598,96.5507 2019-06-03 15:41:59.580,138.6897,7134.1108,4.8852,2.8535,0.7008,0.0623,2400.0,2400.0,-0.2145,-2.3031,4.1558,96.5507 2019-06-03 15:41:59.600,138.6809,7134.1382,4.8695,2.8,0.723,0.0782,2400.0,2400.0,-0.2145,-2.4867,4.1598,96.6267 2019-06-03 15:41:59.620,138.6897,7134.1108,4.8667,2.7815,1.2548,0.0283,2400.0,2400.0,-0.2261,-2.6905,4.1598,96.6517 2019-06-03 15:41:59.640,138.7425,7134.2202,4.8667,2.7815,0.774,0.1347,2400.0,2400.0,-0.2028,-2.9084,4.1545,96.6517 2019-06-03 15:41:59.660,138.7337,7134.2202,4.8667,2.7815,1.2685,0.0256,2400.0,2400.0,-0.2086,-3.2954,4.1664,96.6517 2019-06-03 15:41:59.680,138.672,7134.2749,4.8561,2.7327,0.7274,0.1231,2400.0,2400.0,-0.2203,-3.6251,4.1611,96.7054 2019-06-03 15:41:59.700,138.6809,7134.9858,4.8501,2.6748,0.8206,0.1366,2400.0,2400.0,-0.2291,-3.8749,4.1611,96.7592 2019-06-03 15:41:59.720,138.6809,7135.8604,4.8501,2.6748,1.1224,-0.003,2400.0,2400.0,-0.2291,-4.2739,4.173,96.7592 2019-06-03 15:41:59.740,138.5927,7137.2275,4.8501,2.6748,0.8605,0.1526,2400.0,2400.0,-0.2057,-4.616,4.173,96.7592 2019-06-03 15:41:59.760,138.6015,7138.2119,4.8429,2.5938,1.1963,-0.019,2400.0,2400.0,-0.2086,-4.9993,4.1598,96.8125 2019-06-03 15:41:59.780,138.5397,7139.606,4.8429,2.5938,0.848,0.1674,2400.0,2400.0,-0.2028,-5.2839,4.1677,96.8125 2019-06-03 15:41:59.800,138.5397,7140.481,4.8294,2.4051,0.8983,0.1727,2400.0,2400.0,-0.2203,-5.4767,4.1558,96.8886 2019-06-03 15:41:59.820,138.5485,7141.356,4.8218,2.3199,1.0529,-0.0408,2400.0,2400.0,-0.2261,-5.6943,4.1929,96.9126 2019-06-03 15:41:59.840,138.5838,7142.7227,4.8218,2.3199,0.9293,0.1683,2400.0,2400.0,-0.2261,-5.7733,4.1796,96.9126 2019-06-03 15:41:59.860,138.6103,7143.2969,4.8218,2.3199,0.9304,-0.0116,2400.0,2400.0,-0.2145,-5.8888,4.1968,96.9126 2019-06-03 15:41:59.880,138.5573,7143.2695,4.8144,2.1238,1.0835,0.1711,2400.0,2400.0,-0.2086,-5.9028,4.1849,96.959 2019-06-03 15:41:59.900,138.5485,7143.1875,4.8051,1.8808,1.078,0.1631,2400.0,2400.0,-0.2174,-5.8944,4.1902,97.0022 2019-06-03 15:41:59.920,138.5309,7143.1875,4.8051,1.8808,0.8469,0.0058,2400.0,2400.0,-0.232,-5.8972,4.2021,97.0022 2019-06-03 15:41:59.940,138.4513,7143.1875,4.8051,1.8808,1.0458,0.1521,2400.0,2400.0,-0.2174,-5.8268,4.2021,97.0022 2019-06-03 15:41:59.960,138.4424,7143.2695,4.7911,1.5893,0.8306,-0.0296,2400.0,2400.0,-0.2174,-5.7761,4.2167,97.042 2019-06-03 15:41:59.980,138.3982,7143.2969,4.7911,1.5893,1.1405,0.1879,2400.0,2400.0,-0.2232,-5.6435,4.2127,97.042 2019-06-03 15:42:00.000,138.3982,7143.3242,4.7785,1.0803,1.1043,0.1895,2400.0,2400.0,-0.2174,-5.5927,4.2167,97.0988 2019-06-03 15:42:00.020,138.407,7143.2969,4.7681,0.893,0.75,0.0116,2400.0,2400.0,-0.2437,-5.4342,4.2114,97.115 2019-06-03 15:42:00.040,138.4513,7143.3789,4.7681,0.893,1.2333,0.1431,2400.0,2400.0,-0.2115,-5.1901,4.222,97.115 2019-06-03 15:42:00.060,138.4513,7143.3789,4.7681,0.893,0.6113,0.0444,2400.0,2400.0,-0.2232,-4.9451,4.2074,97.115 2019-06-03 15:42:00.080,138.3982,7143.3789,4.7606,0.5115,1.2677,0.1105,2400.0,2400.0,-0.2086,-4.2623,4.2087,97.1491 2019-06-03 15:42:00.100,138.407,7143.3242,4.7494,0.1152,1.3121,0.1116,2400.0,2400.0,-0.2261,-3.6803,4.1849,97.1819 2019-06-03 15:42:00.120,138.3716,7143.3242,4.7494,0.1152,0.8032,0.0758,2400.0,2400.0,-0.2232,-3.0347,4.1849,97.1819 2019-06-03 15:42:00.140,138.3184,7143.3516,4.7494,0.1152,1.1871,0.064,2400.0,2400.0,-0.2115,-2.3624,4.1651,97.1819 2019-06-03 15:42:00.160,138.3096,7143.4336,4.73,-0.2835,0.71,0.1092,2400.0,2400.0,-0.2086,-1.8122,4.1704,97.2138 2019-06-03 15:42:00.180,138.2475,7143.4609,4.73,-0.2835,1.1786,0.0628,2400.0,2400.0,-0.2203,-1.357,4.1783,97.2138 2019-06-03 15:42:00.200,138.2652,7143.4336,4.7201,-0.832,1.2037,0.0736,2400.0,2400.0,-0.2145,-1.1525,4.177,97.2671 2019-06-03 15:42:00.220,138.2652,7143.4063,4.7165,-0.9932,0.8088,0.1244,2400.0,2400.0,-0.2291,-0.9715,4.1756,97.2855 2019-06-03 15:42:00.240,138.3096,7143.4883,4.7165,-0.9932,1.2008,0.0322,2400.0,2400.0,-0.2261,-0.899,4.1783,97.2855 2019-06-03 15:42:00.260,138.3184,7143.4883,4.7165,-0.9932,0.8779,0.1338,2400.0,2400.0,-0.2437,-0.9866,4.1809,97.2855 2019-06-03 15:42:00.280,138.2652,7143.4883,4.712,-1.2752,1.0366,0.0215,2400.0,2400.0,-0.2525,-1.0771,4.1743,97.3244 2019-06-03 15:42:00.300,138.2652,7143.4063,4.7042,-1.5057,1.1867,0.0082,2400.0,2400.0,-0.2349,-1.1645,4.177,97.3642 2019-06-03 15:42:00.320,138.2475,7143.4336,4.7042,-1.5057,0.8365,0.1564,2400.0,2400.0,-0.2232,-1.3871,4.177,97.3642 2019-06-03 15:42:00.340,138.3184,7143.4063,4.7042,-1.5057,1.1697,-0.0069,2400.0,2400.0,-0.2232,-1.4741,4.1809,97.3642 2019-06-03 15:42:00.360,138.3096,7143.4336,4.6961,-1.6956,0.9719,0.1516,2400.0,2400.0,-0.2437,-1.6149,4.1664,97.4053 2019-06-03 15:42:00.380,138.2652,7143.5156,4.6961,-1.6956,1.044,0.0092,2400.0,2400.0,-0.2495,-1.6538,4.1717,97.4053 2019-06-03 15:42:00.400,138.2652,7143.5156,4.6943,-1.9189,1.1571,-0.0116,2400.0,2340.0,-0.2495,-1.6568,4.177,97.4687 2019-06-03 15:42:00.420,138.2652,7143.5156,4.6968,-1.9786,0.9918,0.1527,2400.0,2340.0,-0.2408,-1.6747,4.1849,97.4896 2019-06-03 15:42:00.440,138.3184,7143.4883,4.6968,-1.9786,1.0895,-0.0021,2400.0,2340.0,-0.2291,-1.6658,4.1717,97.4896 2019-06-03 15:42:00.460,138.3184,7143.4609,4.6968,-1.9786,0.9963,0.1175,2400.0,2340.0,-0.2203,-1.6688,4.1756,97.4896 2019-06-03 15:42:00.480,138.2652,7143.4063,4.6945,-2.0814,1.0214,0.0309,2400.0,2340.0,-0.232,-1.6658,4.1558,97.5268 2019-06-03 15:42:00.500,138.2652,7143.3516,4.6882,-2.1642,1.0029,0.0159,2400.0,2340.0,-0.2203,-1.6658,4.1743,97.5626 2019-06-03 15:42:00.520,138.2563,7143.3789,4.6882,-2.1642,1.0188,0.1453,2400.0,2340.0,-0.232,-1.6837,4.1743,97.5626 2019-06-03 15:42:00.540,138.4601,7143.3516,4.6882,-2.1642,0.9034,0.004,2400.0,2340.0,-0.2145,-1.6777,4.173,97.5626 2019-06-03 15:42:00.560,138.4601,7143.4336,4.689,-2.2308,1.1279,0.0975,2400.0,2340.0,-0.2261,-1.6777,4.1823,97.5911 2019-06-03 15:42:00.580,138.3982,7143.4063,4.689,-2.2308,0.9082,0.0466,2400.0,2340.0,-0.2291,-1.6747,4.1651,97.5911 2019-06-03 15:42:00.600,138.3982,7143.4609,4.6881,-2.2983,1.0344,0.0543,2400.0,2340.0,-0.2261,-1.6718,4.1637,97.6243 2019-06-03 15:42:00.620,138.407,7143.4063,4.6906,-2.3123,1.1398,0.1236,2400.0,2340.0,-0.2349,-1.6777,4.1756,97.6321 2019-06-03 15:42:00.640,138.4513,7143.4336,4.6906,-2.3123,0.8139,0.0754,2400.0,2340.0,-0.2145,-1.6747,4.1651,97.6321 2019-06-03 15:42:00.660,138.4601,7143.3789,4.6906,-2.3123,1.0902,0.0583,2400.0,2340.0,-0.2378,-1.6747,4.1664,97.6321 2019-06-03 15:42:00.680,138.3982,7143.3516,4.6849,-2.3361,0.865,0.0756,2400.0,2340.0,-0.232,-1.6747,4.1704,97.6439 2019-06-03 15:42:00.700,138.407,7143.2422,4.686,-2.3495,0.9286,0.0467,2400.0,2340.0,-0.2291,-1.6747,4.173,97.6474 2019-06-03 15:42:00.720,138.3982,7143.2422,4.686,-2.3495,1.1656,0.1371,2400.0,2340.0,-0.2261,-1.6777,4.1849,97.6474 2019-06-03 15:42:00.740,138.5927,7143.2695,4.686,-2.3495,0.9053,0.0629,2400.0,2340.0,-0.232,-1.6747,4.1571,97.6474 2019-06-03 15:42:00.760,138.6015,7143.2695,4.689,-2.3508,1.139,0.0611,2400.0,2340.0,-0.2291,-1.6718,4.1664,97.6453 2019-06-03 15:42:00.780,138.5485,7143.3242,4.689,-2.3508,0.8776,0.0913,2400.0,2340.0,-0.2408,-1.6777,4.1637,97.6453 2019-06-03 15:42:00.800,138.5397,7143.3516,4.6865,-2.3433,0.9057,0.0675,2400.0,2340.0,-0.2115,-1.6718,4.1756,97.6282 2019-06-03 15:42:00.820,138.5397,7143.4063,4.6869,-2.3364,1.0621,0.0631,2400.0,2340.0,-0.2174,-1.6777,4.1704,97.6186 2019-06-03 15:42:00.840,138.6015,7143.4336,4.6869,-2.3364,0.8972,0.0669,2400.0,2340.0,-0.2145,-1.6747,4.1584,97.6186 2019-06-03 15:42:00.860,138.6015,7143.4609,4.6869,-2.3364,1.1816,0.0304,2400.0,2340.0,-0.2261,-1.6777,4.1611,97.6186 2019-06-03 15:42:00.880,138.5397,7143.4883,4.6858,-2.3202,0.858,0.1105,2400.0,2340.0,-0.2261,-1.6777,4.1651,97.595 2019-06-03 15:42:00.900,138.5573,7144.1445,4.6885,-2.2989,0.8443,0.0894,2400.0,2340.0,-0.2203,-1.6747,4.1651,97.5626 2019-06-03 15:42:00.920,138.5309,7144.9102,4.6885,-2.2989,1.1035,0.0296,2400.0,2340.0,-0.2174,-1.6807,4.1717,97.5626 2019-06-03 15:42:00.940,138.7249,7146.2505,4.6885,-2.2989,0.9474,0.1236,2400.0,2340.0,-0.2174,-1.6747,4.1664,97.5626 2019-06-03 15:42:00.960,138.7249,7147.1528,4.6918,-2.2756,1.0181,-0.0395,2400.0,2340.0,-0.2145,-1.6747,4.1677,97.5237 2019-06-03 15:42:00.980,138.672,7148.438,4.6918,-2.2756,0.9382,0.1596,2400.0,2340.0,-0.2291,-1.6747,4.1598,97.5237 2019-06-03 15:42:01.000,138.672,7149.313,4.6948,-2.2342,1.0307,0.1277,2400.0,2340.0,-0.2232,-1.6747,4.1664,97.4525 2019-06-03 15:42:01.020,138.6897,7150.1606,4.6925,-2.2239,1.0554,0.0167,2400.0,2340.0,-0.2261,-1.6777,4.177,97.4258 2019-06-03 15:42:01.040,138.7249,7151.3916,4.6925,-2.2239,1.0961,0.1293,2400.0,2340.0,-0.2261,-1.6718,4.1571,97.4258 2019-06-03 15:42:01.060,138.7337,7151.9385,4.6925,-2.2239,0.9456,0.0074,2400.0,2340.0,-0.194,-1.6747,4.1637,97.4258 2019-06-03 15:42:01.080,138.6809,7151.9385,4.6961,-2.1999,1.0665,0.1159,2400.0,2340.0,-0.1969,-1.6747,4.1531,97.3681 2019-06-03 15:42:01.100,138.672,7151.8564,4.6988,-2.1744,1.0736,0.0972,2400.0,2340.0,-0.1648,-1.6747,4.1651,97.3052 2019-06-03 15:42:01.120,138.6809,7151.8564,4.6988,-2.1744,0.9312,0.0433,2400.0,2340.0,-0.1794,-1.6747,4.1651,97.3052 2019-06-03 15:42:01.140,138.8832,7151.8564,4.6988,-2.1744,1.0632,0.1156,2400.0,2340.0,-0.1794,-1.6807,4.1677,97.3052 2019-06-03 15:42:01.160,138.8745,7151.8291,4.7003,-2.1557,0.9992,0.0427,2400.0,2340.0,-0.1794,-1.6718,4.1611,97.2365 2019-06-03 15:42:01.180,138.8217,7151.8018,4.7003,-2.1557,1.1494,0.1146,2400.0,2340.0,-0.2057,-1.6718,4.1598,97.2365 2019-06-03 15:42:01.200,138.8129,7151.8564,4.703,-2.1258,1.1501,0.0808,2400.0,2340.0,-0.194,-1.6747,4.1664,97.1286 2019-06-03 15:42:01.220,138.8217,7151.8291,4.7036,-2.1197,0.9249,0.0913,2400.0,2340.0,-0.1911,-1.6718,4.1677,97.0914 2019-06-03 15:42:01.240,138.8745,7151.8564,4.7036,-2.1197,1.0506,0.0723,2400.0,2340.0,-0.1881,-1.6747,4.1584,97.0914 2019-06-03 15:42:01.260,138.8745,7151.8838,4.7036,-2.1197,0.9652,0.0826,2400.0,2340.0,-0.1765,-1.6747,4.1584,97.0914 2019-06-03 15:42:01.280,138.8129,7151.8564,4.7054,-2.1024,1.1634,0.065,2400.0,2340.0,-0.1852,-1.6688,4.1584,97.0127 2019-06-03 15:42:01.300,138.8305,7151.8018,4.7045,-2.0921,1.146,0.0058,2400.0,2340.0,-0.1648,-1.6119,4.173,96.9319 2019-06-03 15:42:01.320,138.8129,7151.7744,4.7045,-2.0921,0.9482,0.1199,2400.0,2340.0,-0.1823,-1.6119,4.1651,96.9319 2019-06-03 15:42:01.340,138.8657,7151.8564,4.7045,-2.0921,1.142,0.0352,2400.0,2340.0,-0.1881,-1.5969,4.1571,96.9319 2019-06-03 15:42:01.360,138.8657,7151.8564,4.7046,-2.0803,0.943,0.1521,2400.0,2340.0,-0.1881,-1.582,4.1743,96.8501 2019-06-03 15:42:01.380,138.8129,7151.9385,4.7046,-2.0803,1.1172,0.0149,2400.0,2340.0,-0.1998,-1.561,4.1558,96.8501 2019-06-03 15:42:01.400,138.8217,7151.9111,4.7047,-2.0636,0.9719,-0.0116,2340.0,2400.0,-0.156,-1.5251,4.1783,96.7247 2019-06-03 15:42:01.420,138.8305,7151.8838,4.7106,-2.0547,0.9234,0.1304,2340.0,2400.0,-0.1735,-1.528,4.1651,96.6849 2019-06-03 15:42:01.440,138.8657,7151.8291,4.7106,-2.0547,0.9778,-0.0,2340.0,2400.0,-0.1618,-1.5251,4.1611,96.6849 2019-06-03 15:42:01.460,138.8745,7151.7744,4.7106,-2.0547,0.9338,0.1692,2340.0,2400.0,-0.1677,-1.4891,4.1704,96.6849 2019-06-03 15:42:01.480,138.8129,7151.8018,4.7128,-2.0468,1.0369,0.0019,2340.0,2400.0,-0.1765,-1.5041,4.173,96.6018 2019-06-03 15:42:01.500,138.8217,7151.7744,4.7115,-2.0371,0.9911,-0.0229,2340.0,2400.0,-0.1823,-1.4951,4.169,96.5205 2019-06-03 15:42:01.520,138.8041,7151.7744,4.7115,-2.0371,1.0399,0.1419,2340.0,2400.0,-0.1881,-1.5011,4.169,96.5205 2019-06-03 15:42:01.540,138.8745,7151.8018,4.7115,-2.0371,0.9582,0.0009,2340.0,2400.0,-0.1911,-1.5011,4.1531,96.5205 2019-06-03 15:42:01.560,138.8569,7151.8564,4.7177,-2.0334,0.9959,0.168,2340.0,2400.0,-0.1794,-1.4981,4.1637,96.4414 2019-06-03 15:42:01.580,138.8217,7151.8291,4.7177,-2.0334,0.9955,-0.0015,2340.0,2400.0,-0.1648,-1.5041,4.169,96.4414 2019-06-03 15:42:01.600,138.8129,7151.9111,4.7204,-2.0237,1.0854,-0.018,2340.0,2400.0,-0.1735,-1.5071,4.1571,96.3273 2019-06-03 15:42:01.620,138.8217,7151.9111,4.7262,-2.0218,1.0292,0.1641,2340.0,2400.0,-0.1852,-1.5071,4.1611,96.2893 2019-06-03 15:42:01.640,138.8745,7151.9111,4.7262,-2.0218,0.8694,0.0299,2340.0,2400.0,-0.194,-1.5041,4.1611,96.2893 2019-06-03 15:42:01.660,138.8745,7151.9111,4.7262,-2.0218,1.1882,0.1457,2340.0,2400.0,-0.1852,-1.5041,4.1611,96.2893 2019-06-03 15:42:01.680,138.8129,7151.9111,4.7262,-2.0259,0.9131,0.0425,2340.0,2400.0,-0.1765,-1.5071,4.1651,96.2163 2019-06-03 15:42:01.700,138.8305,7151.8291,4.7266,-2.0326,0.8679,0.022,2340.0,2400.0,-0.1648,-1.5041,4.1598,96.1455 2019-06-03 15:42:01.720,138.8041,7151.7471,4.7266,-2.0326,1.1242,0.1005,2340.0,2400.0,-0.1677,-1.5041,4.1664,96.1455 2019-06-03 15:42:01.740,138.7249,7151.7471,4.7266,-2.0326,0.7607,0.073,2340.0,2400.0,-0.1881,-1.5101,4.1571,96.1455 2019-06-03 15:42:01.760,138.7249,7151.8018,4.7296,-2.0355,1.196,0.0899,2340.0,2400.0,-0.1852,-1.5101,4.1704,96.0786 2019-06-03 15:42:01.780,138.672,7151.8018,4.7296,-2.0355,0.9352,0.1113,2340.0,2400.0,-0.194,-1.5131,4.1651,96.0786 2019-06-03 15:42:01.800,138.6632,7151.8291,4.7292,-2.0512,0.7611,0.077,2340.0,2400.0,-0.1823,-1.5071,4.1584,95.985 2019-06-03 15:42:01.820,138.6897,7151.7744,4.7288,-2.0556,1.1963,0.0366,2340.0,2400.0,-0.1706,-1.5071,4.1704,95.9562 2019-06-03 15:42:01.840,138.7337,7151.7744,4.7288,-2.0556,0.8776,0.1412,2340.0,2400.0,-0.1677,-1.5101,4.1704,95.9562 2019-06-03 15:42:01.860,138.7425,7151.6924,4.7288,-2.0556,1.2596,0.0305,2340.0,2400.0,-0.1677,-1.5101,4.1664,95.9562 2019-06-03 15:42:01.880,138.6809,7151.7744,4.7267,-2.0669,0.7747,0.1558,2340.0,2400.0,-0.1735,-1.5071,4.173,95.9015 2019-06-03 15:42:01.900,138.6809,7151.7471,4.7297,-2.0778,0.7633,0.11,2340.0,2400.0,-0.1823,-1.4951,4.1571,95.8517 2019-06-03 15:42:01.920,138.672,7151.7744,4.7297,-2.0778,1.2503,-0.0013,2340.0,2400.0,-0.1735,-1.4711,4.173,95.8517 2019-06-03 15:42:01.940,138.5838,7151.7744,4.7297,-2.0778,0.8764,0.1901,2340.0,2400.0,-0.1648,-1.4711,4.173,95.8517 2019-06-03 15:42:01.960,138.5927,7151.8291,4.7314,-2.0881,1.2074,-0.0681,2340.0,2400.0,-0.1472,-1.4741,4.1677,95.8067 2019-06-03 15:42:01.980,138.5397,7151.9111,4.7314,-2.0881,0.8772,0.25,2340.0,2400.0,-0.1385,-1.4711,4.1783,95.8067 2019-06-03 15:42:02.000,138.5397,7151.8838,4.7311,-2.1076,0.8587,0.2054,2340.0,2400.0,-0.1385,-1.4621,4.173,95.7477 2019-06-03 15:42:02.020,138.5485,7151.9111,4.7221,-2.1163,0.9929,-0.0633,2340.0,2400.0,-0.1355,-1.4291,4.1717,95.7311 2019-06-03 15:42:02.040,138.5927,7151.9932,4.7221,-2.1163,1.085,0.2098,2340.0,2400.0,-0.1385,-1.4231,4.1756,95.7311 2019-06-03 15:42:02.060,138.6015,7151.9932,4.7221,-2.1163,1.034,-0.0678,2340.0,2400.0,-0.1297,-1.4201,4.1717,95.7311 2019-06-03 15:42:02.080,138.5309,7152.0205,4.7227,-2.1236,1.2348,0.2171,2340.0,2400.0,-0.118,-1.4231,4.1915,95.7053 2019-06-03 15:42:02.100,138.5573,7151.9111,4.7227,-2.1324,1.156,0.1733,2340.0,2400.0,-0.1063,-1.4111,4.1717,95.6847 2019-06-03 15:42:02.120,138.522,7151.9111,4.7227,-2.1324,0.8853,0.0061,2340.0,2400.0,-0.0508,-1.3781,4.1809,95.6847 2019-06-03 15:42:02.140,138.4424,7151.8564,4.7227,-2.1324,1.1272,0.1569,2340.0,2400.0,-0.0128,-1.3781,4.1743,95.6847 2019-06-03 15:42:02.160,138.4424,7151.8838,4.7151,-2.1434,0.7884,-0.0053,2340.0,2400.0,0.0545,-1.363,4.1743,95.6685 2019-06-03 15:42:02.180,138.3982,7151.8291,4.7151,-2.1434,1.3058,0.1665,2340.0,2400.0,0.1246,-1.36,4.1915,95.6685 2019-06-03 15:42:02.200,138.3893,7151.8291,4.7142,-2.1487,1.2093,0.1293,2340.0,2400.0,0.1626,-1.36,4.1823,95.6598 2019-06-03 15:42:02.220,138.407,7151.8018,4.708,-2.1537,0.7725,0.0508,2340.0,2400.0,0.3,-1.339,4.177,95.6602 2019-06-03 15:42:02.240,138.4601,7151.8018,4.708,-2.1537,1.3365,0.098,2340.0,2400.0,0.4257,-1.345,4.1743,95.6602 2019-06-03 15:42:02.260,138.4601,7151.7744,4.708,-2.1537,0.7241,0.074,2340.0,2400.0,0.6741,-1.33,4.2021,95.6602 2019-06-03 15:42:02.280,138.3982,7151.7744,4.7064,-2.1558,1.3713,0.0416,2340.0,2400.0,0.8846,-1.33,4.1783,95.6664 2019-06-03 15:42:02.300,138.407,7151.6924,4.6997,-2.1591,1.2622,0.0531,2340.0,2400.0,1.136,-1.333,4.1876,95.6795 2019-06-03 15:42:02.320,138.3982,7151.7197,4.6997,-2.1591,0.7899,0.1528,2340.0,2400.0,1.399,-1.33,4.1743,95.6795 2019-06-03 15:42:02.340,138.3096,7151.8018,4.6997,-2.1591,1.2378,0.0185,2340.0,2400.0,1.7001,-1.33,4.1876,95.6795 2019-06-03 15:42:02.360,138.3007,7151.9111,4.6912,-2.1577,0.7932,0.1351,2340.0,2400.0,2.0363,-1.327,4.1915,95.7044 2019-06-03 15:42:02.380,138.2652,7151.8838,4.6912,-2.1577,1.2818,-0.0311,2340.0,2400.0,2.3022,-1.324,4.1862,95.7044 2019-06-03 15:42:02.400,138.2652,7151.8564,4.6861,-2.1457,1.1849,-0.0081,2400.0,2400.0,2.5741,-1.315,4.1809,95.7634 2019-06-03 15:42:02.420,138.2652,7151.8291,4.6892,-2.1392,0.9367,0.1942,2400.0,2400.0,2.8693,-1.3059,4.1796,95.7909 2019-06-03 15:42:02.440,138.3184,7151.8564,4.6892,-2.1392,1.1057,-0.0419,2400.0,2400.0,3.1558,-1.3059,4.2048,95.7909 2019-06-03 15:42:02.460,138.3273,7151.8291,4.6892,-2.1392,1.0669,0.1702,2400.0,2400.0,3.4364,-1.3059,4.1955,95.7909 2019-06-03 15:42:02.480,138.2563,7151.8564,4.6802,-2.1329,0.9149,-0.0517,2400.0,2400.0,3.6585,-1.3029,4.1889,95.8543 2019-06-03 15:42:02.500,138.2563,7151.8018,4.6742,-2.1265,0.9164,-0.0135,2400.0,2400.0,3.8134,-1.3029,4.1743,95.9352 2019-06-03 15:42:02.520,138.2475,7151.7471,4.6742,-2.1265,1.0033,0.1963,2400.0,2400.0,4.0122,-1.2999,4.1968,95.9352 2019-06-03 15:42:02.540,138.0251,7151.7471,4.6742,-2.1265,0.8764,-0.0238,2400.0,2400.0,4.1584,-1.3029,4.1995,95.9352 2019-06-03 15:42:02.560,138.034,7151.8018,4.6746,-2.1152,1.0776,0.1774,2400.0,2400.0,4.3016,-1.2969,4.1968,96.0327 2019-06-03 15:42:02.580,137.9805,7151.8291,4.6757,-2.0947,0.7648,-0.0293,2400.0,2400.0,4.3571,-1.2999,4.1968,96.1472 2019-06-03 15:42:02.600,137.9895,7151.8291,4.6688,-2.0925,0.7929,0.0506,2400.0,2400.0,4.398,-1.2969,4.1836,96.2097 2019-06-03 15:42:02.620,137.9895,7151.8291,4.6721,-2.0779,1.1756,0.1497,2400.0,2400.0,4.4565,-1.2969,4.2008,96.2783 2019-06-03 15:42:02.640,138.034,7151.8838,4.6721,-2.0779,0.7011,0.0474,2400.0,2400.0,4.474,-1.315,4.2048,96.2783 2019-06-03 15:42:02.660,138.0429,7151.8564,4.6721,-2.0779,1.3476,0.1232,2400.0,2400.0,4.4857,-1.321,4.1862,96.2783 2019-06-03 15:42:02.680,137.9895,7151.8291,4.666,-2.057,0.6923,0.057,2400.0,2400.0,4.4916,-1.318,4.2008,96.4252 2019-06-03 15:42:02.700,137.9984,7151.7471,4.6698,-2.0257,0.727,0.0938,2400.0,2400.0,4.4857,-1.321,4.1915,96.587 2019-06-03 15:42:02.720,137.9716,7151.7471,4.6698,-2.0257,1.2481,0.0866,2400.0,2400.0,4.5003,-1.318,4.2061,96.587 2019-06-03 15:42:02.740,137.7483,7151.8018,4.6698,-2.0257,0.7341,0.1032,2400.0,2400.0,4.4974,-1.318,4.2074,96.587 2019-06-03 15:42:02.760,137.7483,7151.9111,4.6769,-1.9846,1.2637,0.0502,2400.0,2400.0,4.5003,-1.318,4.1968,96.7627 2019-06-03 15:42:02.780,137.6945,7151.9658,4.6769,-1.9846,0.7581,0.088,2400.0,2400.0,4.4916,-1.318,4.2008,96.7627 2019-06-03 15:42:02.800,137.7125,7151.9658,4.6845,-1.9134,0.8383,0.1006,2400.0,2400.0,4.4916,-1.324,4.2061,97.0451 2019-06-03 15:42:02.820,137.7125,7151.8564,4.6849,-1.8842,1.2947,0.0267,2400.0,2400.0,4.4799,-1.324,4.2087,97.1456 2019-06-03 15:42:02.840,137.7572,7151.8564,4.6849,-1.8842,0.7888,0.1316,2400.0,2400.0,4.4945,-1.321,4.218,97.1456 2019-06-03 15:42:02.860,137.7662,7151.8291,4.6849,-1.8842,1.2496,-0.0009,2400.0,2400.0,4.4974,-1.321,4.2035,97.1456 2019-06-03 15:42:02.880,137.6945,7151.8564,4.6916,-1.821,0.8213,0.1696,2400.0,2400.0,4.4916,-1.324,4.2127,97.3519 2019-06-03 15:42:02.900,137.7125,7151.8291,4.6999,-1.7416,0.9142,0.2098,2400.0,2400.0,4.4887,-1.327,4.218,97.5666 2019-06-03 15:42:02.920,137.6856,7151.8564,4.6999,-1.7416,1.1716,-0.0863,2400.0,2400.0,4.4857,-1.33,4.2167,97.5666 2019-06-03 15:42:02.940,137.4881,7151.7471,4.6999,-1.7416,0.994,0.2705,2400.0,2400.0,4.474,-1.3841,4.218,97.5666 2019-06-03 15:42:02.960,137.4791,7151.7744,4.7064,-1.6553,1.0018,-0.0844,2400.0,2400.0,4.4477,-1.3841,4.2061,97.7856 2019-06-03 15:42:02.980,137.4162,7151.8291,4.7064,-1.6553,1.0632,0.2458,2400.0,2400.0,4.4068,-1.3871,4.2114,97.7856 2019-06-03 15:42:03.000,137.4252,7151.9111,4.7182,-1.5026,0.9948,0.2355,2400.0,2400.0,4.398,-1.3991,4.2193,98.1161 2019-06-03 15:42:03.020,137.4342,7151.9111,4.7114,-1.4493,1.0554,-0.0786,2400.0,2400.0,4.3834,-1.3961,4.222,98.228 2019-06-03 15:42:03.040,137.4791,7151.9932,4.7114,-1.4493,1.2182,0.2124,2400.0,2400.0,4.3483,-1.4021,4.2246,98.228 2019-06-03 15:42:03.060,137.4791,7151.9932,4.7114,-1.4493,0.9027,-0.0183,2400.0,2400.0,4.3162,-1.4051,4.2061,98.228 2019-06-03 15:42:03.080,137.4252,7151.9658,4.7192,-1.3235,1.2744,0.184,2400.0,2400.0,4.3045,-1.4081,4.2207,98.4513 2019-06-03 15:42:03.100,137.4342,7152.7041,4.7209,-1.1868,1.1623,0.1643,2400.0,2400.0,4.287,-1.4081,4.2233,98.6712 2019-06-03 15:42:03.120,137.4252,7153.5796,4.7209,-1.1868,0.9049,-0.0019,2400.0,2400.0,4.2928,-1.4051,4.222,98.6712 2019-06-03 15:42:03.140,137.6228,7154.9473,4.7209,-1.1868,1.3032,0.134,2400.0,2400.0,4.2694,-1.4231,4.2286,98.6712 2019-06-03 15:42:03.160,137.6139,7155.877,4.7152,-1.0392,0.821,0.0359,2400.0,2400.0,4.246,-1.4321,4.2061,98.8872 2019-06-03 15:42:03.180,137.56,7157.2446,4.7152,-1.0392,1.3458,0.0826,2400.0,2400.0,4.2431,-1.4351,4.2154,98.8872 2019-06-03 15:42:03.200,137.56,7158.1201,4.7103,-0.7876,1.2825,0.0784,2400.0,2400.0,4.2285,-1.4621,4.2246,99.198 2019-06-03 15:42:03.220,137.569,7158.9678,4.7021,-0.6996,0.808,0.0592,2400.0,2400.0,4.2022,-1.4681,4.222,99.2981 2019-06-03 15:42:03.240,137.6139,7160.1987,4.7021,-0.6996,1.2211,0.0479,2400.0,2400.0,4.0765,-1.4681,4.2286,99.2981 2019-06-03 15:42:03.260,137.6228,7160.7729,4.7021,-0.6996,0.8879,0.103,2400.0,2400.0,3.9157,-1.4651,4.2061,99.2981 2019-06-03 15:42:03.280,137.569,7160.7456,4.6933,-0.5096,1.2256,0.0074,2400.0,2400.0,3.6439,-1.4831,4.2207,99.4908 2019-06-03 15:42:03.300,137.56,7160.7183,4.6759,-0.3127,1.1205,0.0262,2400.0,2400.0,3.3955,-1.5221,4.2273,99.6744 2019-06-03 15:42:03.320,137.56,7160.7183,4.6759,-0.3127,0.9641,0.1159,2400.0,2400.0,3.0155,-1.534,4.2286,99.6744 2019-06-03 15:42:03.340,137.9092,7160.7456,4.6759,-0.3127,0.9922,-0.0242,2400.0,2400.0,2.5332,-1.555,4.226,99.6744 2019-06-03 15:42:03.360,137.9092,7160.7183,4.6547,-0.1033,1.0577,0.163,2400.0,2400.0,2.0596,-1.561,4.2048,99.8436 2019-06-03 15:42:03.380,137.8466,7160.7183,4.6547,-0.1033,0.9719,-0.0229,2400.0,2400.0,1.5715,-1.567,4.2233,99.8436 2019-06-03 15:42:03.400,137.8466,7160.7729,4.6185,0.2376,1.0088,-0.0261,2340.0,2340.0,1.171,-1.594,4.2233,100.0657 2019-06-03 15:42:03.420,137.8556,7160.7456,4.6064,0.3588,1.0865,0.1665,2340.0,2340.0,0.7268,-1.5969,4.226,100.129 2019-06-03 15:42:03.440,137.9092,7160.8003,4.6064,0.3588,0.8395,-0.0581,2340.0,2340.0,0.2912,-1.594,4.2193,100.129 2019-06-03 15:42:03.460,137.9002,7160.7456,4.6064,0.3588,1.1697,0.1854,2340.0,2340.0,-0.0069,-1.594,4.2021,100.129 2019-06-03 15:42:03.480,137.8377,7160.7456,4.5733,0.6048,0.8801,-0.0098,2340.0,2340.0,-0.2437,-1.594,4.214,100.2331 2019-06-03 15:42:03.500,137.8556,7160.6362,4.5378,0.8568,0.7544,-0.0061,2340.0,2340.0,-0.3752,-1.6059,4.2273,100.3083 2019-06-03 15:42:03.520,137.8466,7160.5815,4.5378,0.8568,1.1753,0.0885,2340.0,2340.0,-0.4834,-1.6089,4.214,100.3083 2019-06-03 15:42:03.540,138.1853,7160.6089,4.5378,0.8568,0.8439,0.0476,2340.0,2340.0,-0.5155,-1.6418,4.2233,100.3083 2019-06-03 15:42:03.560,138.1764,7160.6636,4.5028,1.1247,1.1486,0.1085,2340.0,2340.0,-0.5214,-1.6418,4.2035,100.3515 2019-06-03 15:42:03.580,138.1141,7160.7456,4.5028,1.1247,0.9426,0.0648,2340.0,2340.0,-0.5097,-1.6418,4.2154,100.3515 2019-06-03 15:42:03.600,138.1141,7160.7729,4.4388,1.5311,0.8402,0.0689,2340.0,2340.0,-0.4804,-1.6568,4.222,100.3537 2019-06-03 15:42:03.620,138.1319,7160.8003,4.4177,1.666,1.1398,0.0403,2340.0,2340.0,-0.4658,-1.6538,4.2114,100.3384 2019-06-03 15:42:03.640,138.1675,7160.7183,4.4177,1.666,1.0055,0.0802,2340.0,2340.0,-0.46,-1.6508,4.2193,100.3384 2019-06-03 15:42:03.660,138.1853,7160.7183,4.4177,1.666,0.9534,0.0808,2340.0,2340.0,-0.4688,-1.6807,4.2127,100.3384 2019-06-03 15:42:03.680,138.123,7160.7456,4.3774,1.9398,1.0303,0.0451,2340.0,2340.0,-0.4629,-1.6837,4.2101,100.2864 2019-06-03 15:42:03.700,138.1141,7160.7183,4.34,2.2127,1.0418,0.097,2340.0,2340.0,-0.4658,-1.6867,4.218,100.2042 2019-06-03 15:42:03.720,138.1319,7160.7183,4.34,2.2127,0.9319,0.0143,2340.0,2340.0,-0.4571,-1.6927,4.2154,100.2042 2019-06-03 15:42:03.740,138.892,7160.7183,4.34,2.2127,1.0551,0.1119,2340.0,2340.0,-0.4454,-1.7136,4.2167,100.2042 2019-06-03 15:42:03.760,138.8745,7160.7456,4.3038,2.4845,0.9142,0.0266,2340.0,2340.0,-0.4366,-1.7375,4.2008,100.0949 2019-06-03 15:42:03.780,138.8217,7160.7183,4.3038,2.4845,1.0122,0.1059,2340.0,2340.0,-0.4044,-1.7555,4.2114,100.0949 2019-06-03 15:42:03.800,138.8217,7160.7729,4.2574,2.8737,1.0791,0.1433,2340.0,2340.0,-0.4074,-1.8212,4.2114,99.8812 2019-06-03 15:42:03.820,138.8217,7160.7456,4.2402,2.995,0.8687,-0.0019,2340.0,2340.0,-0.4044,-1.8241,4.2048,99.7977 2019-06-03 15:42:03.840,138.8657,7160.7729,4.2402,2.995,0.9874,0.1183,2340.0,2340.0,-0.3898,-1.8212,4.222,99.7977 2019-06-03 15:42:03.860,138.8745,7160.7729,4.2402,2.995,0.8849,0.0445,2340.0,2340.0,-0.4015,-1.851,4.2101,99.7977 2019-06-03 15:42:03.880,138.8041,7160.8276,4.2197,3.2365,1.0895,0.0893,2340.0,2340.0,-0.3869,-1.848,4.2101,99.6145 2019-06-03 15:42:03.900,138.8305,7160.8276,4.2079,3.4636,1.0787,0.1079,2340.0,2340.0,-0.3957,-1.848,4.2233,99.4135 2019-06-03 15:42:03.920,138.8217,7160.7456,4.2079,3.4636,0.8642,0.0213,2340.0,2340.0,-0.4132,-1.845,4.2061,99.4135 2019-06-03 15:42:03.940,139.2947,7160.7456,4.2079,3.4636,1.1187,0.1146,2340.0,2340.0,-0.4044,-1.845,4.226,99.4135 2019-06-03 15:42:03.960,139.2947,7160.7456,4.1981,3.6688,0.7699,0.0494,2340.0,2340.0,-0.4044,-1.845,4.2193,99.1931 2019-06-03 15:42:03.980,139.2336,7160.8276,4.1924,3.86,1.0865,0.0623,2340.0,2340.0,-0.3869,-1.845,4.226,98.9553 2019-06-03 15:42:04.000,139.2249,7160.9097,4.1972,3.9496,1.0011,0.0503,2340.0,2340.0,-0.3957,-1.848,4.2299,98.8338 2019-06-03 15:42:04.020,139.2336,7160.855,4.2005,4.0343,0.9278,0.089,2340.0,2340.0,-0.4044,-1.851,4.2154,98.7079 2019-06-03 15:42:04.040,139.286,7160.8276,4.2005,4.0343,1.0529,0.0517,2340.0,2340.0,-0.4015,-1.848,4.226,98.7079 2019-06-03 15:42:04.060,139.2947,7160.7183,4.2005,4.0343,0.8927,0.1095,2340.0,2340.0,-0.4015,-1.848,4.2445,98.7079 2019-06-03 15:42:04.080,139.2249,7160.6909,4.2123,4.1814,1.0784,0.0387,2340.0,2340.0,-0.3957,-1.845,4.2392,98.4487 2019-06-03 15:42:04.100,139.2249,7160.6636,4.23,4.3095,1.0251,0.0308,2340.0,2340.0,-0.3928,-1.845,4.2524,98.1834 2019-06-03 15:42:04.120,139.2161,7160.6636,4.23,4.3095,0.9064,0.1021,2340.0,2340.0,-0.3957,-1.842,4.2352,98.1834 2019-06-03 15:42:04.140,139.286,7160.6909,4.23,4.3095,0.9878,0.0207,2340.0,2340.0,-0.3811,-1.8361,4.2524,98.1834 2019-06-03 15:42:04.160,139.2685,7160.7456,4.2561,4.4186,0.9493,0.1332,2340.0,2340.0,-0.3781,-1.8241,4.2485,97.9119 2019-06-03 15:42:04.180,139.2249,7160.6909,4.2561,4.4186,0.9094,0.0083,2340.0,2340.0,-0.3723,-1.8003,4.2551,97.9119 2019-06-03 15:42:04.200,139.2249,7160.6636,4.3033,4.5387,0.8339,0.0048,2340.0,2340.0,-0.3898,-1.8003,4.2551,97.5001 2019-06-03 15:42:04.220,139.2249,7160.6909,4.3246,4.5662,1.1009,0.1407,2340.0,2340.0,-0.3811,-1.8003,4.2352,97.3624 2019-06-03 15:42:04.240,139.286,7160.7456,4.3246,4.5662,0.7851,0.03,2340.0,2340.0,-0.3781,-1.7764,4.2498,97.3624 2019-06-03 15:42:04.260,139.286,7160.8003,4.3246,4.5662,1.1601,0.126,2340.0,2340.0,-0.3811,-1.7584,4.2511,97.3624 2019-06-03 15:42:04.280,139.2161,7160.8003,4.3626,4.6061,0.7381,0.041,2340.0,2340.0,-0.3577,-1.7584,4.2551,97.0905 2019-06-03 15:42:04.300,139.2423,7160.6909,4.4079,4.6264,0.7677,0.0875,2340.0,2340.0,-0.3577,-1.7495,4.2551,96.8234 2019-06-03 15:42:04.320,139.2074,7160.6362,4.4079,4.6264,1.2381,0.0841,2340.0,2340.0,-0.3548,-1.7047,4.2471,96.8234 2019-06-03 15:42:04.340,139.1462,7160.6636,4.4079,4.6264,0.6971,0.1247,2340.0,2340.0,-0.3548,-1.6927,4.2418,96.8234 2019-06-03 15:42:04.360,139.1549,7160.6909,4.4561,4.6306,1.2122,0.0518,2340.0,2340.0,-0.3518,-1.6927,4.2524,96.5625 2019-06-03 15:42:04.380,139.0937,7160.7183,4.4561,4.6306,0.7825,0.1107,2340.0,2340.0,-0.3226,-1.6897,4.2485,96.5625 2019-06-03 15:42:04.400,139.0937,7160.7456,4.5202,4.5916,0.777,0.1401,2400.0,2400.0,-0.3255,-1.6897,4.2471,96.1865 2019-06-03 15:42:04.420,139.0937,7160.7183,4.5396,4.5704,1.1187,0.0266,2400.0,2400.0,-0.3226,-1.6867,4.2432,96.0672 2019-06-03 15:42:04.440,139.1462,7160.7456,4.5396,4.5704,0.8269,0.157,2400.0,2400.0,-0.3138,-1.6897,4.2392,96.0672 2019-06-03 15:42:04.460,139.1549,7160.6909,4.5396,4.5704,1.1671,0.0052,2400.0,2400.0,-0.3168,-1.6837,4.2471,96.0672 2019-06-03 15:42:04.480,139.0937,7160.6636,4.5808,4.5102,0.7877,0.1635,2400.0,2400.0,-0.3051,-1.6388,4.2498,95.8377 2019-06-03 15:42:04.500,139.0937,7159.8433,4.6211,4.44,0.8764,0.1945,2400.0,2400.0,-0.3021,-1.6359,4.2485,95.6231 2019-06-03 15:42:04.520,139.0762,7158.9951,4.6211,4.44,1.1671,-0.0119,2400.0,2400.0,-0.3051,-1.6388,4.2352,95.6231 2019-06-03 15:42:04.540,138.8569,7157.6548,4.6211,4.44,0.8602,0.2232,2400.0,2400.0,-0.2963,-1.6239,4.2392,95.6231 2019-06-03 15:42:04.560,138.8569,7156.8345,4.6546,4.3499,1.0617,-0.0596,2400.0,2400.0,-0.3021,-1.6269,4.2471,95.4255 2019-06-03 15:42:04.580,138.8129,7155.5488,4.6546,4.3499,0.9282,0.2235,2400.0,2400.0,-0.3021,-1.6209,4.2498,95.4255 2019-06-03 15:42:04.600,138.8217,7154.6733,4.6937,4.1893,1.0166,0.2763,2400.0,2400.0,-0.3197,-1.6149,4.2511,95.1615 2019-06-03 15:42:04.620,138.8217,7153.771,4.6954,4.1248,1.0122,-0.0603,2400.0,2400.0,-0.3548,-1.6089,4.2405,95.0819 2019-06-03 15:42:04.640,138.8832,7152.4307,4.6954,4.1248,1.0381,0.2435,2400.0,2400.0,-0.3694,-1.564,4.2418,95.0819 2019-06-03 15:42:04.660,138.8832,7151.8564,4.6954,4.1248,0.9608,-0.0506,2400.0,2400.0,-0.3518,-1.561,4.2564,95.0819 2019-06-03 15:42:04.680,138.8041,7151.9111,4.7125,4.0016,1.1242,0.2296,2400.0,2400.0,-0.3401,-1.546,4.2471,94.942 2019-06-03 15:42:04.700,138.8217,7152.6768,4.7235,3.8714,1.2023,0.2348,2400.0,2400.0,-0.3401,-1.543,4.2485,94.8236 2019-06-03 15:42:04.720,138.7953,7153.5249,4.7235,3.8714,0.8872,-0.0021,2400.0,2400.0,-0.346,-1.549,4.2471,94.8236 2019-06-03 15:42:04.740,138.4424,7154.8101,4.7235,3.8714,1.2733,0.1814,2400.0,2400.0,-0.3606,-1.531,4.2392,94.8236 2019-06-03 15:42:04.760,138.4424,7155.6855,4.7177,3.7284,0.6823,0.0174,2400.0,2400.0,-0.3986,-1.5251,4.2524,94.7252 2019-06-03 15:42:04.780,138.3982,7157.0259,4.7177,3.7284,1.3398,0.1531,2400.0,2400.0,-0.4658,-1.5221,4.2418,94.7252 2019-06-03 15:42:04.800,138.3982,7157.9556,4.707,3.507,1.3373,0.1474,2400.0,2400.0,-0.5652,-1.5161,4.2498,94.6221 2019-06-03 15:42:04.820,138.4159,7158.8584,4.6955,3.4262,0.7951,0.0756,2400.0,2400.0,-0.764,-1.5161,4.2445,94.598 2019-06-03 15:42:04.840,138.4424,7160.1987,4.6955,3.4262,1.2818,0.0854,2400.0,2400.0,-0.9978,-1.4801,4.2485,94.598 2019-06-03 15:42:04.860,138.4513,7160.7456,4.6955,3.4262,0.7847,0.1332,2400.0,2400.0,-1.2989,-1.4771,4.2577,94.598 2019-06-03 15:42:04.880,138.3982,7160.6909,4.6791,3.2754,1.2167,0.0415,2400.0,2400.0,-1.6496,-1.4771,4.2366,94.5709 2019-06-03 15:42:04.900,138.407,7160.5815,4.6509,3.1187,1.1975,0.0686,2400.0,2400.0,-1.9507,-1.4801,4.2538,94.5626 2019-06-03 15:42:04.920,138.3716,7160.5815,4.6509,3.1187,0.8021,0.144,2400.0,2400.0,-2.4067,-1.4801,4.2471,94.5626 2019-06-03 15:42:04.940,138.0251,7160.6089,4.6509,3.1187,1.2729,0.0094,2400.0,2400.0,-2.8773,-1.4711,4.2524,94.5626 2019-06-03 15:42:04.960,138.0251,7160.6909,4.6172,2.9643,0.916,0.1708,2400.0,2400.0,-3.3567,-1.4621,4.2538,94.574 2019-06-03 15:42:04.980,137.9805,7160.7183,4.6172,2.9643,1.1616,0.004,2400.0,2400.0,-3.8507,-1.4591,4.2445,94.574 2019-06-03 15:42:05.000,137.9895,7160.8003,4.5742,2.7386,1.0917,0.0156,2400.0,2400.0,-4.2628,-1.4591,4.2551,94.6181 2019-06-03 15:42:05.020,137.9895,7160.7456,4.5602,2.6687,0.879,0.185,2400.0,2400.0,-4.6983,-1.4591,4.2591,94.6387 2019-06-03 15:42:05.040,138.034,7160.7456,4.5602,2.6687,1.0469,-0.0262,2400.0,2400.0,-5.0929,-1.4561,4.2617,94.6387 2019-06-03 15:42:05.060,138.0518,7160.7183,4.5602,2.6687,1.0895,0.188,2400.0,2400.0,-5.4759,-1.4561,4.2538,94.6387 2019-06-03 15:42:05.080,137.9895,7160.7729,4.5224,2.5309,0.9793,-0.0284,2400.0,2400.0,-5.7185,-1.4621,4.2564,94.6841 2019-06-03 15:42:05.100,137.9895,7160.7183,4.4857,2.3984,0.9238,-0.014,2400.0,2400.0,-5.8705,-1.4621,4.2617,94.7322 2019-06-03 15:42:05.120,137.9538,7160.7456,4.4857,2.3984,1.0003,0.1777,2400.0,2400.0,-6.002,-1.4591,4.2657,94.7322 2019-06-03 15:42:05.140,137.7572,7160.7456,4.4857,2.3984,0.9142,-0.0267,2400.0,2400.0,-6.0751,-1.4591,4.267,94.7322 2019-06-03 15:42:05.160,137.7572,7160.7183,4.4545,2.2783,1.2019,0.1887,2400.0,2400.0,-6.1481,-1.4591,4.2551,94.7799 2019-06-03 15:42:05.180,137.7125,7160.6909,4.4545,2.2783,0.7847,-0.0098,2400.0,2400.0,-6.1511,-1.4591,4.2524,94.7799 2019-06-03 15:42:05.200,137.7035,7160.7183,4.4089,2.0997,0.8554,0.0085,2400.0,2400.0,-6.1365,-1.4621,4.2723,94.8467 2019-06-03 15:42:05.220,137.7125,7160.7183,4.3975,2.0507,1.1497,0.156,2400.0,2400.0,-6.1423,-1.4681,4.263,94.8695 2019-06-03 15:42:05.240,137.7572,7160.7729,4.3975,2.0507,0.7518,-0.0144,2400.0,2400.0,-6.1043,-1.4651,4.263,94.8695 2019-06-03 15:42:05.260,137.7662,7160.7729,4.3975,2.0507,1.1372,0.1346,2400.0,2400.0,-6.0751,-1.4651,4.2538,94.8695 2019-06-03 15:42:05.280,137.6945,7160.6909,4.3675,1.9487,0.784,0.0537,2400.0,2400.0,-5.926,-1.4651,4.2591,94.9106 2019-06-03 15:42:05.300,137.7125,7160.5815,4.344,1.8545,0.8117,0.0464,2400.0,2400.0,-5.7418,-1.4621,4.2683,94.9495 2019-06-03 15:42:05.320,137.7035,7160.5815,4.344,1.8545,1.1908,0.0712,2400.0,2400.0,-5.4612,-1.4651,4.2644,94.9495 2019-06-03 15:42:05.340,137.6139,7160.6362,4.344,1.8545,0.7696,0.0809,2400.0,2400.0,-4.9468,-1.4651,4.2524,94.9495 2019-06-03 15:42:05.360,137.6139,7160.7183,4.3243,1.7652,1.125,0.0437,2400.0,2400.0,-4.409,-1.4651,4.2471,94.9866 2019-06-03 15:42:05.380,137.56,7160.7183,4.3066,1.6769,0.8742,0.1042,2400.0,2400.0,-3.7776,-1.4621,4.2418,95.0216 2019-06-03 15:42:05.400,137.56,7160.7456,4.2942,1.6378,0.8136,0.1086,2340.0,2400.0,-3.2427,-1.4651,4.2538,95.0413 2019-06-03 15:42:05.420,137.56,7160.6909,4.2839,1.5955,1.041,0.0449,2340.0,2400.0,-2.661,-1.4681,4.2458,95.0605 2019-06-03 15:42:05.440,137.6228,7160.6636,4.2839,1.5955,0.9456,0.1299,2340.0,2400.0,-2.0413,-1.4621,4.2299,95.0605 2019-06-03 15:42:05.460,137.6318,7160.6636,4.2839,1.5955,0.9859,0.0052,2340.0,2400.0,-1.524,-1.4621,4.2339,95.0605 2019-06-03 15:42:05.480,137.56,7160.6909,4.2631,1.515,1.027,0.1674,2340.0,2400.0,-1.0884,-1.4621,4.2233,95.1064 2019-06-03 15:42:05.500,137.569,7160.6089,4.2465,1.4416,0.943,0.1589,2340.0,2400.0,-0.7757,-1.4561,4.2379,95.1676 2019-06-03 15:42:05.520,137.551,7160.6362,4.2465,1.4416,0.9038,0.0182,2340.0,2400.0,-0.6003,-1.4621,4.2339,95.1676 2019-06-03 15:42:05.540,137.6139,7160.5815,4.2465,1.4416,0.9689,0.1287,2340.0,2400.0,-0.4921,-1.4561,4.2286,95.1676 2019-06-03 15:42:05.560,137.6049,7160.6362,4.2272,1.3633,0.8768,0.014,2340.0,2400.0,-0.4629,-1.4561,4.2392,95.2415 2019-06-03 15:42:05.580,137.569,7160.6362,4.2272,1.3633,1.0192,0.1476,2340.0,2400.0,-0.4337,-1.4531,4.2405,95.2415 2019-06-03 15:42:05.600,137.56,7160.6909,4.196,1.2524,1.0059,0.1378,2340.0,2400.0,-0.422,-1.4531,4.2405,95.3857 2019-06-03 15:42:05.620,137.578,7160.7183,4.1823,1.2144,0.8953,0.0202,2340.0,2400.0,-0.46,-1.4531,4.2445,95.4408 2019-06-03 15:42:05.640,137.6139,7160.7183,4.1823,1.2144,1.1109,0.1435,2340.0,2400.0,-0.5331,-1.4501,4.2366,95.4408 2019-06-03 15:42:05.660,137.6228,7160.7183,4.1823,1.2144,0.9116,0.0173,2340.0,2400.0,-0.5828,-1.4531,4.2432,95.4408 2019-06-03 15:42:05.680,137.56,7160.6909,4.1631,1.1489,1.105,0.1503,2340.0,2400.0,-0.5974,-1.4501,4.2366,95.5632 2019-06-03 15:42:05.700,137.569,7160.6362,4.1453,1.0869,1.0639,0.1092,2340.0,2400.0,-0.5798,-1.4501,4.2524,95.6983 2019-06-03 15:42:05.720,137.5421,7160.6362,4.1453,1.0869,0.9094,0.0435,2340.0,2400.0,-0.5974,-1.4471,4.2511,95.6983 2019-06-03 15:42:05.740,137.3351,7160.6636,4.1453,1.0869,1.0488,0.1283,2340.0,2400.0,-0.6032,-1.4351,4.2445,95.6983 2019-06-03 15:42:05.760,137.3351,7160.6636,4.1254,1.0253,0.8842,0.0384,2340.0,2400.0,-0.5974,-1.4321,4.2498,95.8425 2019-06-03 15:42:05.780,137.272,7160.6636,4.1254,1.0253,1.1483,0.1476,2340.0,2400.0,-0.6061,-1.4291,4.2352,95.8425 2019-06-03 15:42:05.800,137.281,7160.7183,4.1034,0.9491,1.0861,0.0861,2340.0,2400.0,-0.5857,-1.4261,4.2577,96.0768 2019-06-03 15:42:05.820,137.281,7160.6909,4.0943,0.9239,0.916,0.066,2340.0,2400.0,-0.6032,-1.4321,4.2564,96.1573 2019-06-03 15:42:05.840,137.3351,7160.6636,4.0943,0.9239,1.1616,0.0802,2340.0,2400.0,-0.6061,-1.4261,4.2511,96.1573 2019-06-03 15:42:05.860,137.3441,7160.6362,4.0943,0.9239,0.9278,0.0881,2340.0,2400.0,-0.6178,-1.4291,4.2485,96.1573 2019-06-03 15:42:05.880,137.281,7160.6362,4.0834,0.8882,1.1353,0.0709,2340.0,2400.0,-0.6003,-1.4291,4.2485,96.3225 2019-06-03 15:42:05.900,137.281,7160.5815,4.0672,0.8534,1.1701,0.0263,2340.0,2400.0,-0.5915,-1.4291,4.263,96.4921 2019-06-03 15:42:05.920,137.263,7160.5815,4.0672,0.8534,0.9201,0.128,2340.0,2400.0,-0.6003,-1.4291,4.2604,96.4921 2019-06-03 15:42:05.940,137.037,7160.6636,4.0672,0.8534,1.0884,-0.0091,2340.0,2400.0,-0.6091,-1.4291,4.2524,96.4921 2019-06-03 15:42:05.960,137.046,7160.6362,4.0539,0.8277,0.9641,0.1732,2340.0,2400.0,-0.6032,-1.4291,4.2604,96.6643 2019-06-03 15:42:05.980,136.9917,7160.6362,4.0539,0.8277,0.9911,-0.0094,2340.0,2400.0,-0.6091,-1.4261,4.2577,96.6643 2019-06-03 15:42:06.000,137.0007,7160.6636,4.0454,0.809,1.0802,-0.0421,2340.0,2400.0,-0.612,-1.4291,4.271,96.9222 2019-06-03 15:42:06.020,137.0007,7160.6089,4.0481,0.8102,0.9793,0.1622,2340.0,2400.0,-0.6441,-1.4291,4.267,97.0092 2019-06-03 15:42:06.040,137.046,7160.6909,4.0481,0.8102,1.0691,-0.0148,2340.0,2400.0,-0.6734,-1.4291,4.2551,97.0092 2019-06-03 15:42:06.060,137.0551,7160.6636,4.0481,0.8102,1.0946,0.1867,2340.0,2400.0,-0.6529,-1.4321,4.2749,97.0092 2019-06-03 15:42:06.080,137.0007,7160.6636,4.0399,0.815,0.9205,0.0322,2340.0,2400.0,-0.6617,-1.4411,4.2683,97.178 2019-06-03 15:42:06.100,137.0007,7160.5542,4.0322,0.8244,1.0192,-0.027,2340.0,2400.0,-0.6441,-1.4411,4.2776,97.3432 2019-06-03 15:42:06.120,136.9826,7160.5815,4.0322,0.8244,1.061,0.1473,2340.0,2400.0,-0.6675,-1.4411,4.2683,97.3432 2019-06-03 15:42:06.140,137.0641,7160.6089,4.0322,0.8244,0.8983,-0.0155,2340.0,2400.0,-0.6675,-1.4351,4.2697,97.3432 2019-06-03 15:42:06.160,137.046,7160.6909,4.0323,0.8511,1.1693,0.1503,2340.0,2400.0,-0.6617,-1.4381,4.2723,97.5058 2019-06-03 15:42:06.180,136.9917,7160.7183,4.0323,0.8511,0.8376,0.0752,2340.0,2400.0,-0.6675,-1.4381,4.2683,97.5058 2019-06-03 15:42:06.200,136.9917,7160.6909,4.0285,0.9004,0.9493,0.0305,2340.0,2400.0,-0.6558,-1.4351,4.2736,97.7388 2019-06-03 15:42:06.220,136.9917,7160.6909,4.0299,0.9233,1.1875,0.0923,2340.0,2400.0,-0.6704,-1.4411,4.271,97.8144 2019-06-03 15:42:06.240,137.0551,7160.6909,4.0299,0.9233,0.8398,0.0582,2340.0,2400.0,-0.6734,-1.4381,4.271,97.8144 2019-06-03 15:42:06.260,137.0641,7160.6909,4.0299,0.9233,1.1919,0.093,2340.0,2400.0,-0.6704,-1.4381,4.2789,97.8144 2019-06-03 15:42:06.280,136.9917,7160.6909,4.0277,0.973,0.909,0.0727,2340.0,2400.0,-0.6704,-1.4381,4.2789,97.9574 2019-06-03 15:42:06.300,136.9917,7160.6362,4.03,1.0316,0.9578,0.044,2340.0,2400.0,-0.6792,-1.4381,4.2723,98.0942 2019-06-03 15:42:06.320,137.0007,7160.6362,4.03,1.0316,1.115,0.0938,2340.0,2400.0,-0.6763,-1.4381,4.2855,98.0942 2019-06-03 15:42:06.340,137.2088,7160.6909,4.03,1.0316,0.862,0.0869,2340.0,2400.0,-0.6704,-1.4381,4.2723,98.0942 2019-06-03 15:42:06.360,137.1908,7160.7456,4.0357,1.0965,1.0884,0.0336,2340.0,2400.0,-0.6587,-1.4411,4.2895,98.2205 2019-06-03 15:42:06.380,137.1456,7160.7183,4.0357,1.0965,0.9386,0.1209,2340.0,2400.0,-0.6675,-1.4381,4.2789,98.2205 2019-06-03 15:42:06.400,137.1365,7160.7456,4.0409,1.2109,0.9785,0.0978,2400.0,2340.0,-0.6763,-1.4411,4.271,98.3919 2019-06-03 15:42:06.420,137.1365,7160.7729,4.0425,1.2518,1.0943,0.0378,2400.0,2340.0,-0.6821,-1.4411,4.2829,98.4448 2019-06-03 15:42:06.440,137.1998,7160.7729,4.0425,1.2518,1.0192,0.1186,2400.0,2340.0,-0.6967,-1.4411,4.2697,98.4448 2019-06-03 15:42:06.460,137.1998,7160.7729,4.0425,1.2518,0.977,0.0185,2400.0,2340.0,-0.6792,-1.4411,4.2855,98.4448 2019-06-03 15:42:06.480,137.1275,7160.8003,4.0472,1.3403,1.0388,0.1442,2400.0,2340.0,-0.688,-1.4411,4.2763,98.5392 2019-06-03 15:42:06.500,137.1546,7160.7183,4.0529,1.4356,1.0462,0.1081,2400.0,2340.0,-0.6851,-1.4411,4.2697,98.6231 2019-06-03 15:42:06.520,137.1456,7160.7183,4.0529,1.4356,1.004,0.0399,2400.0,2340.0,-0.6851,-1.4651,4.2789,98.6231 2019-06-03 15:42:06.540,137.4881,7160.8003,4.0529,1.4356,1.0373,0.1234,2400.0,2340.0,-0.6909,-1.4711,4.2644,98.6231 2019-06-03 15:42:06.560,137.4881,7160.8276,4.0572,1.5335,0.9356,-0.0016,2400.0,2340.0,-0.6967,-1.4831,4.2723,98.6961 2019-06-03 15:42:06.580,137.4252,7160.8276,4.0572,1.5335,1.1209,0.1052,2400.0,2340.0,-0.7084,-1.4981,4.2683,98.6961 2019-06-03 15:42:06.600,137.4252,7160.8823,4.0675,1.6894,1.1479,0.0645,2400.0,2340.0,-0.7114,-1.4981,4.2723,98.7831 2019-06-03 15:42:06.620,137.4252,7160.8823,4.0692,1.7417,0.902,0.0856,2400.0,2340.0,-0.7143,-1.5101,4.2736,98.8067 2019-06-03 15:42:06.640,137.4791,7160.9097,4.0692,1.7417,1.1978,0.0942,2400.0,2340.0,-0.6967,-1.552,4.2657,98.8067 2019-06-03 15:42:06.660,137.4881,7160.855,4.0692,1.7417,0.8539,0.0872,2400.0,2340.0,-0.6967,-1.558,4.267,98.8067 2019-06-03 15:42:06.680,137.4252,7160.855,4.0756,1.8489,1.169,0.0732,2400.0,2340.0,-0.6997,-1.576,4.2697,98.8439 2019-06-03 15:42:06.700,137.4252,7160.8003,4.0797,1.956,1.1335,0.0369,2400.0,2340.0,-0.7172,-1.594,4.2604,98.8697 2019-06-03 15:42:06.720,137.4342,7160.7456,4.0797,1.956,0.9889,0.089,2400.0,2340.0,-0.7114,-1.6209,4.2749,98.8697 2019-06-03 15:42:06.740,137.7751,7160.8276,4.0797,1.956,1.139,0.0804,2400.0,2340.0,-0.7114,-1.6568,4.263,98.8697 2019-06-03 15:42:06.760,137.7662,7160.8276,4.0857,2.0607,0.9112,0.1094,2400.0,2340.0,-0.6909,-1.7017,4.2789,98.8819 2019-06-03 15:42:06.780,137.7125,7160.7729,4.0936,2.1725,1.0928,0.023,2400.0,2340.0,-0.6997,-1.7644,4.2763,98.8845 2019-06-03 15:42:06.800,137.7035,7160.7456,4.0939,2.2253,1.1531,-0.0003,2400.0,2340.0,-0.7084,-1.8092,4.2644,98.8806 2019-06-03 15:42:06.820,137.7035,7160.6909,4.1025,2.2777,0.9719,0.1287,2400.0,2340.0,-0.7143,-1.851,4.2683,98.8754 2019-06-03 15:42:06.840,137.7841,7160.7183,4.1025,2.2777,1.0406,0.0564,2400.0,2340.0,-0.7143,-1.8898,4.2604,98.8754 2019-06-03 15:42:06.860,137.7572,7160.6362,4.1025,2.2777,0.9922,0.1312,2400.0,2340.0,-0.7084,-1.9732,4.2763,98.8754 2019-06-03 15:42:06.880,137.6945,7160.6362,4.1093,2.3793,1.0547,0.0209,2400.0,2340.0,-0.7114,-2.0119,4.2683,98.8539 2019-06-03 15:42:06.900,137.7125,7160.5542,4.1145,2.4691,1.0029,-0.0077,2400.0,2340.0,-0.7114,-2.0417,4.263,98.8238 2019-06-03 15:42:06.920,137.7125,7160.5542,4.1145,2.4691,1.0673,0.1355,2400.0,2340.0,-0.7055,-2.1161,4.2763,98.8238 2019-06-03 15:42:06.940,138.0518,7160.6362,4.1145,2.4691,0.9412,0.0692,2400.0,2340.0,-0.7026,-2.1666,4.2657,98.8238 2019-06-03 15:42:06.960,138.0429,7160.7183,4.1266,2.5544,1.0185,0.0741,2400.0,2340.0,-0.6821,-2.2171,4.2763,98.7844 2019-06-03 15:42:06.980,137.9895,7160.7456,4.1266,2.5544,0.9497,0.0643,2400.0,2340.0,-0.6967,-2.2497,4.2564,98.7844 2019-06-03 15:42:07.000,137.9895,7160.7183,4.1447,2.6595,0.9423,0.0674,2400.0,2340.0,-0.7055,-2.2557,4.2551,98.7062 2019-06-03 15:42:07.020,138.0073,7160.7456,4.1524,2.6932,1.1534,0.1049,2400.0,2340.0,-0.7055,-2.2646,4.2657,98.6769 2019-06-03 15:42:07.040,138.034,7160.8276,4.1524,2.6932,0.8328,0.0726,2400.0,2340.0,-0.6909,-2.3061,4.2551,98.6769 2019-06-03 15:42:07.060,138.0607,7160.8003,4.1524,2.6932,1.1246,0.0774,2400.0,2340.0,-0.6792,-2.2972,4.2551,98.6769 2019-06-03 15:42:07.080,137.9895,7160.8003,4.1627,2.7386,0.9016,0.0833,2400.0,2340.0,-0.6997,-2.3001,4.2564,98.6104 2019-06-03 15:42:07.100,137.9895,7160.7456,4.1797,2.7766,0.9341,0.0838,2400.0,2340.0,-0.7172,-2.3001,4.2458,98.5379 2019-06-03 15:42:07.120,137.9895,7160.7729,4.1797,2.7766,1.1261,0.0656,2400.0,2340.0,-0.7201,-2.2972,4.2617,98.5379 2019-06-03 15:42:07.140,138.1853,7160.6909,4.1797,2.7766,0.9094,0.107,2400.0,2340.0,-0.7114,-2.2972,4.2471,98.5379 2019-06-03 15:42:07.160,138.1675,7160.7456,4.1964,2.7997,1.142,0.0344,2400.0,2340.0,-0.7143,-2.2824,4.2326,98.4601 2019-06-03 15:42:07.180,138.1319,7160.7183,4.1964,2.7997,0.9153,0.1456,2400.0,2340.0,-0.7114,-2.2824,4.2445,98.4601 2019-06-03 15:42:07.200,138.1141,7160.6636,4.2196,2.8152,0.8365,0.1613,2400.0,2340.0,-0.7289,-2.2468,4.2273,98.3311 2019-06-03 15:42:07.220,138.123,7160.6089,4.2242,2.814,1.146,-0.0163,2400.0,2340.0,-0.7231,-2.2052,4.2551,98.2852 2019-06-03 15:42:07.240,138.1764,7160.6089,4.2242,2.814,0.9186,0.1641,2400.0,2340.0,-0.7289,-2.1963,4.2352,98.2852 2019-06-03 15:42:07.260,138.1942,7160.5815,4.2242,2.814,1.0233,-0.0166,2400.0,2340.0,-0.7318,-2.125,4.2193,98.2852 2019-06-03 15:42:07.280,138.123,7160.4722,4.2411,2.8029,1.0776,0.1737,2400.0,2340.0,-0.7464,-2.122,4.2246,98.193 2019-06-03 15:42:07.300,138.123,7160.4448,4.2613,2.787,0.9996,0.176,2400.0,2340.0,-0.7581,-2.1042,4.2193,98.0977 2019-06-03 15:42:07.320,138.123,7160.4448,4.2613,2.787,0.9645,0.0003,2400.0,2340.0,-0.7611,-2.0834,4.2273,98.0977 2019-06-03 15:42:07.340,138.1764,7160.4722,4.2613,2.787,1.0403,0.1575,2400.0,2340.0,-0.7494,-2.0536,4.226,98.0977 2019-06-03 15:42:07.360,138.1764,7160.5542,4.2754,2.7603,0.9933,0.0104,2400.0,2340.0,-0.7581,-2.0358,4.2127,97.9998 2019-06-03 15:42:07.380,138.1141,7160.5815,4.2754,2.7603,1.1324,0.1345,2400.0,2340.0,-0.7727,-2.0417,4.2167,97.9998 2019-06-03 15:42:07.400,138.1141,7160.6362,4.3001,2.7056,1.1387,0.1636,2400.0,2400.0,-0.7815,-2.0387,4.2114,97.8512 2019-06-03 15:42:07.420,138.1319,7160.5542,4.3034,2.6816,0.8975,0.0274,2400.0,2400.0,-0.8049,-2.0328,4.2114,97.8013 2019-06-03 15:42:07.440,138.1853,7160.5815,4.3034,2.6816,1.2085,0.1255,2400.0,2400.0,-0.8107,-2.0358,4.2101,97.8013 2019-06-03 15:42:07.460,138.1853,7160.5542,4.3034,2.6816,0.9571,0.0734,2400.0,2400.0,-0.8078,-2.0238,4.1942,97.8013 2019-06-03 15:42:07.480,138.123,7160.5542,4.3178,2.6355,1.1375,0.0915,2400.0,2400.0,-0.8107,-2.0298,4.2035,97.7034 2019-06-03 15:42:07.500,138.123,7160.4722,4.329,2.5765,1.1505,0.0857,2400.0,2400.0,-0.8224,-2.0298,4.1929,97.6059 2019-06-03 15:42:07.520,138.1141,7160.4995,4.329,2.5765,0.8742,0.1023,2400.0,2400.0,-0.8137,-2.0268,4.2021,97.6059 2019-06-03 15:42:07.540,138.1853,7160.4448,4.329,2.5765,1.2019,0.0569,2400.0,2400.0,-0.8078,-2.0238,4.1982,97.6059 2019-06-03 15:42:07.560,138.1675,7160.4175,4.3334,2.5139,0.8935,0.0976,2400.0,2400.0,-0.8049,-2.0268,4.177,97.5111 2019-06-03 15:42:07.580,138.123,7160.4175,4.3334,2.5139,1.1901,0.0292,2400.0,2400.0,-0.802,-2.0238,4.1664,97.5111 2019-06-03 15:42:07.600,138.123,7160.4448,4.3434,2.4158,1.1919,0.0268,2400.0,2400.0,-0.8049,-2.0268,4.1664,97.3747 2019-06-03 15:42:07.620,138.123,7160.4175,4.3467,2.3815,0.923,0.1457,2400.0,2400.0,-0.7903,-2.0268,4.1889,97.3327 2019-06-03 15:42:07.640,138.1764,7160.4722,4.3467,2.3815,1.1472,0.0206,2400.0,2400.0,-0.7932,-2.0238,4.1783,97.3327 2019-06-03 15:42:07.660,138.1853,7160.4448,4.3467,2.3815,0.9449,0.1658,2400.0,2400.0,-0.7932,-2.0268,4.1558,97.3327 2019-06-03 15:42:07.680,138.1141,7160.4995,4.3494,2.3055,1.0425,-0.013,2400.0,2400.0,-0.8078,-2.0238,4.1518,97.2483 2019-06-03 15:42:07.700,138.1319,7160.4448,4.3474,2.2242,1.0514,0.0085,2400.0,2400.0,-0.8049,-2.0268,4.1637,97.1714 2019-06-03 15:42:07.720,138.1052,7160.4995,4.3474,2.2242,0.9741,0.1573,2400.0,2400.0,-0.802,-2.0268,4.1717,97.1714 2019-06-03 15:42:07.740,138.0518,7160.5542,4.3474,2.2242,1.0114,-0.005,2400.0,2400.0,-0.8137,-2.0238,4.1637,97.1714 2019-06-03 15:42:07.760,138.0518,7160.5542,4.346,2.142,1.0525,0.1766,2400.0,2400.0,-0.8283,-2.0238,4.1505,97.1006 2019-06-03 15:42:07.780,137.9805,7160.6089,4.346,2.142,1.0658,0.0052,2400.0,2400.0,-0.8195,-2.0268,4.1558,97.1006 2019-06-03 15:42:07.800,137.9805,7160.6362,4.3378,2.0076,0.9582,0.0015,2400.0,2400.0,-0.8107,-2.0209,4.1518,97.0062 2019-06-03 15:42:07.820,137.9895,7160.6362,4.3384,1.9657,1.0369,0.1634,2400.0,2400.0,-0.7786,-2.0149,4.173,96.9791 2019-06-03 15:42:07.840,138.0518,7160.6909,4.3384,1.9657,1.0136,-0.0006,2400.0,2400.0,-0.7932,-2.0209,4.1558,96.9791 2019-06-03 15:42:07.860,138.0429,7160.7183,4.3384,1.9657,1.0003,0.1527,2400.0,2400.0,-0.7932,-2.0119,4.1425,96.9791 2019-06-03 15:42:07.880,137.9895,7160.6909,4.3241,1.8695,0.9752,0.0137,2400.0,2400.0,-0.802,-2.009,4.1478,96.9301 2019-06-03 15:42:07.900,137.9895,7160.6362,4.3116,1.7729,0.9038,-0.0005,2400.0,2400.0,-0.7961,-2.0119,4.1518,96.8908 2019-06-03 15:42:07.920,137.9805,7160.6909,4.3116,1.7729,1.0658,0.1714,2400.0,2400.0,-0.8137,-2.009,4.1518,96.8908 2019-06-03 15:42:07.940,137.8913,7160.7456,4.3116,1.7729,0.9452,-0.0043,2400.0,2400.0,-0.8107,-2.0119,4.1492,96.8908 2019-06-03 15:42:07.960,137.8913,7160.8276,4.2998,1.6717,1.1878,0.1374,2400.0,2400.0,-0.8224,-2.009,4.1373,96.8593 2019-06-03 15:42:07.980,137.8377,7160.855,4.2998,1.6717,0.8705,0.0547,2400.0,2400.0,-0.8166,-2.0,4.1492,96.8593 2019-06-03 15:42:08.000,137.8466,7160.8823,4.2764,1.5163,0.8317,0.0437,2400.0,2400.0,-0.8049,-2.006,4.1558,96.8265 2019-06-03 15:42:08.020,137.8466,7160.855,4.2688,1.465,1.2222,0.125,2400.0,2400.0,-0.7991,-1.9851,4.1439,96.82 2019-06-03 15:42:08.040,137.9002,7160.8823,4.2688,1.465,0.7622,0.0531,2400.0,2400.0,-0.7991,-1.9911,4.1439,96.82 2019-06-03 15:42:08.060,137.9002,7160.855,4.2688,1.465,1.2762,0.0901,2400.0,2400.0,-0.8254,-1.9881,4.1346,96.82 2019-06-03 15:42:08.080,137.8377,7160.8276,4.2474,1.3587,0.8439,0.1068,2400.0,2400.0,-0.8254,-1.9851,4.1558,96.8134 2019-06-03 15:42:08.100,137.8556,7160.7456,4.2303,1.254,0.7692,0.13,2400.0,2400.0,-0.8195,-1.9822,4.1505,96.8147 2019-06-03 15:42:08.120,137.8377,7160.7183,4.2303,1.254,1.2629,0.0083,2400.0,2400.0,-0.8049,-1.9851,4.1505,96.8147 2019-06-03 15:42:08.140,137.7572,7160.6909,4.2303,1.254,0.8162,0.1485,2400.0,2400.0,-0.8107,-1.9881,4.1359,96.8147 2019-06-03 15:42:08.160,137.7662,7160.6636,4.2155,1.155,1.2426,-0.0099,2400.0,2400.0,-0.8107,-1.9822,4.1293,96.8261 2019-06-03 15:42:08.180,137.7125,7160.6089,4.1925,1.0475,0.8838,0.1854,2400.0,2400.0,-0.8049,-1.9822,4.1492,96.844 2019-06-03 15:42:08.200,137.7035,7160.6362,4.1819,0.9959,0.8036,0.1925,2400.0,2400.0,-0.8049,-1.9792,4.1505,96.8558 2019-06-03 15:42:08.220,137.7125,7160.6362,4.1653,0.9414,1.2285,-0.0363,2400.0,2400.0,-0.8254,-1.9822,4.1373,96.8693 2019-06-03 15:42:08.240,137.7751,7160.6636,4.1653,0.9414,0.9168,0.1902,2400.0,2400.0,-0.84,-1.9822,4.1465,96.8693 2019-06-03 15:42:08.260,137.7751,7160.6362,4.1653,0.9414,1.0362,-0.0437,2400.0,2400.0,-0.8458,-1.9792,4.1346,96.8693 2019-06-03 15:42:08.280,137.7125,7160.5542,4.1461,0.8408,1.0303,0.1978,2400.0,2400.0,-0.8224,-1.9792,4.1505,96.9034 2019-06-03 15:42:08.300,137.7214,7160.4722,4.1301,0.7439,0.9634,0.2197,2400.0,2400.0,-0.8166,-1.9792,4.1505,96.945 2019-06-03 15:42:08.320,137.7035,7160.4722,4.1301,0.7439,0.9811,-0.0675,2400.0,2400.0,-0.8107,-1.9732,4.1439,96.945 2019-06-03 15:42:08.340,137.6228,7160.4995,4.1301,0.7439,1.1076,0.2055,2400.0,2400.0,-0.8341,-1.9762,4.1359,96.945 2019-06-03 15:42:08.360,137.6139,7160.5269,4.1059,0.646,0.8291,-0.0097,2400.0,2400.0,-0.8487,-1.9762,4.1359,96.9926 2019-06-03 15:42:08.380,137.569,7160.4995,4.1059,0.646,1.2352,0.1502,2400.0,2400.0,-0.8517,-1.9732,4.1505,96.9926 2019-06-03 15:42:08.400,137.569,7160.4995,4.0757,0.5046,1.1435,0.1644,2340.0,2340.0,-0.8487,-1.9762,4.1505,97.0739 2019-06-03 15:42:08.420,137.578,7160.4995,4.0602,0.4575,0.777,-0.0152,2340.0,2340.0,-0.8429,-1.9762,4.1505,97.1032 2019-06-03 15:42:08.440,137.6228,7160.4995,4.0602,0.4575,1.2241,0.1336,2340.0,2340.0,-0.8341,-1.9732,4.1452,97.1032 2019-06-03 15:42:08.460,137.6318,7160.4722,4.0602,0.4575,0.7248,0.0537,2340.0,2340.0,-0.8429,-1.9732,4.1333,97.1032 2019-06-03 15:42:08.480,137.569,7160.4722,4.0431,0.3727,1.3069,0.0597,2340.0,2340.0,-0.8341,-1.9792,4.1492,97.1684 2019-06-03 15:42:08.500,137.569,7160.3901,4.0223,0.2926,1.4042,0.0768,2340.0,2340.0,-0.8429,-1.9762,4.1425,97.2374 2019-06-03 15:42:08.520,137.551,7160.4448,4.0223,0.2926,0.6542,0.0978,2340.0,2340.0,-0.84,-1.9703,4.1545,97.2374 2019-06-03 15:42:08.540,137.3351,7160.4722,4.0223,0.2926,1.3147,0.0253,2340.0,2340.0,-0.8487,-1.9732,4.1531,97.2374 2019-06-03 15:42:08.560,137.3441,7160.4448,3.9987,0.2137,0.7389,0.1562,2340.0,2340.0,-0.8487,-1.9673,4.1333,97.31 2019-06-03 15:42:08.580,137.29,7160.3901,3.9987,0.2137,1.2489,-0.0467,2340.0,2340.0,-0.8283,-1.9703,4.1584,97.31 2019-06-03 15:42:08.600,137.281,7160.4175,3.9708,0.1051,1.1675,-0.036,2340.0,2340.0,-0.84,-1.9703,4.1518,97.4228 2019-06-03 15:42:08.620,137.2991,7160.4175,3.9654,0.0748,0.7662,0.171,2340.0,2340.0,-0.8487,-1.9643,4.1571,97.4612 2019-06-03 15:42:08.640,137.3441,7160.4995,3.9654,0.0748,1.0562,-0.0152,2340.0,2340.0,-0.8634,-1.9703,4.1518,97.4612 2019-06-03 15:42:08.660,137.3441,7160.4722,3.9654,0.0748,0.8568,0.2079,2340.0,2340.0,-0.8692,-1.9643,4.1373,97.4612 2019-06-03 15:42:08.680,137.29,7160.4995,3.9441,0.0079,0.97,-0.0811,2340.0,2340.0,-0.8546,-1.9643,4.169,97.5395 2019-06-03 15:42:08.700,137.281,7160.4175,3.9204,-0.0567,0.8864,-0.0563,2340.0,2340.0,-0.8487,-1.9792,4.1611,97.6173 2019-06-03 15:42:08.720,137.281,7160.4175,3.9204,-0.0567,1.0658,0.1889,2340.0,2340.0,-0.8604,-1.9673,4.1465,97.6173 2019-06-03 15:42:08.740,137.3441,7160.5542,3.9204,-0.0567,0.8114,-0.0149,2340.0,2340.0,-0.8575,-1.9643,4.1531,97.6173 2019-06-03 15:42:08.760,137.3351,7160.6089,3.9046,-0.113,1.1856,0.1796,2340.0,2340.0,-0.8604,-1.9673,4.1373,97.6977 2019-06-03 15:42:08.780,137.281,7160.6636,3.9046,-0.113,0.7758,-0.0234,2340.0,2340.0,-0.8283,-1.9673,4.1717,97.6977 2019-06-03 15:42:08.800,137.281,7160.6636,3.8791,-0.1917,0.7659,0.0053,2340.0,2340.0,-0.8575,-1.9613,4.1531,97.8153 2019-06-03 15:42:08.820,137.281,7160.6362,3.874,-0.2106,1.1202,0.1375,2340.0,2340.0,-0.8575,-1.9673,4.1558,97.8546 2019-06-03 15:42:08.840,137.3351,7160.6362,3.874,-0.2106,0.7093,0.045,2340.0,2340.0,-0.8604,-1.9673,4.1531,97.8546 2019-06-03 15:42:08.860,137.3441,7160.6636,3.874,-0.2106,1.2256,0.1213,2340.0,2340.0,-0.8517,-1.9554,4.1531,97.8546 2019-06-03 15:42:08.880,137.29,7160.6909,3.8541,-0.2598,0.706,0.0252,2340.0,2340.0,-0.8575,-1.9643,4.1743,97.9294 2019-06-03 15:42:08.900,137.281,7160.5815,3.8428,-0.3003,0.7548,0.0469,2340.0,2340.0,-0.8663,-1.9732,4.1624,98.0024 2019-06-03 15:42:08.920,137.29,7160.5815,3.8428,-0.3003,1.2078,0.0756,2340.0,2340.0,-0.8663,-1.9762,4.1492,98.0024 2019-06-03 15:42:08.940,137.4971,7160.6636,3.8428,-0.3003,0.6453,0.077,2340.0,2340.0,-0.8663,-1.9762,4.1545,98.0024 2019-06-03 15:42:08.960,137.4791,7160.7456,3.8334,-0.3334,1.2085,0.0887,2340.0,2340.0,-0.8546,-1.9732,4.1571,98.0745 2019-06-03 15:42:08.980,137.4342,7160.7183,3.8334,-0.3334,0.7178,0.0928,2340.0,2340.0,-0.8487,-1.9703,4.1584,98.0745 2019-06-03 15:42:09.000,137.4162,7160.7183,3.8136,-0.3862,0.7825,0.1404,2340.0,2340.0,-0.8458,-1.9703,4.1637,98.1689 2019-06-03 15:42:09.020,137.4342,7160.6909,3.805,-0.4016,1.2481,-0.0001,2340.0,2340.0,-0.8546,-1.9703,4.1465,98.1995 2019-06-03 15:42:09.040,137.4791,7160.7729,3.805,-0.4016,0.7954,0.1686,2340.0,2340.0,-0.8546,-1.9703,4.1571,98.1995 2019-06-03 15:42:09.060,137.4881,7160.8003,3.805,-0.4016,1.0773,-0.0049,2340.0,2340.0,-0.8692,-1.9703,4.1531,98.1995 2019-06-03 15:42:09.080,137.4252,7160.8003,3.7954,-0.4303,0.8324,0.1503,2340.0,2340.0,-0.8634,-1.9703,4.1704,98.2546 2019-06-03 15:42:09.100,137.4342,7160.6636,3.7892,-0.4454,0.9005,0.1564,2340.0,2340.0,-0.8751,-1.9732,4.1584,98.3071 2019-06-03 15:42:09.120,137.4162,7160.6636,3.7892,-0.4454,1.1653,0.0206,2340.0,2340.0,-0.8663,-1.9703,4.1492,98.3071 2019-06-03 15:42:09.140,137.4791,7160.6909,3.7892,-0.4454,0.8842,0.144,2340.0,2340.0,-0.8604,-1.9732,4.1558,98.3071 2019-06-03 15:42:09.160,137.4702,7160.7729,3.7815,-0.4616,1.0562,0.0067,2340.0,2340.0,-0.8721,-1.9732,4.1558,98.353 2019-06-03 15:42:09.180,137.4162,7160.7729,3.7815,-0.4616,1.0702,0.1688,2340.0,2340.0,-0.8604,-1.9703,4.1637,98.353 2019-06-03 15:42:09.200,137.4252,7160.7729,3.7703,-0.4811,1.0384,0.1837,2340.0,2340.0,-0.878,-1.9673,4.1531,98.4102 2019-06-03 15:42:09.220,137.4252,7160.7183,3.762,-0.4889,0.9164,-0.0302,2340.0,2340.0,-0.8809,-1.9732,4.1465,98.426 2019-06-03 15:42:09.240,137.4791,7160.6636,3.762,-0.4889,1.1357,0.181,2340.0,2340.0,-0.8751,-1.9732,4.1637,98.426 2019-06-03 15:42:09.260,137.4881,7160.6089,3.762,-0.4889,0.744,-0.0183,2340.0,2340.0,-0.8721,-1.9703,4.1558,98.426 2019-06-03 15:42:09.280,137.4252,7160.6089,3.7617,-0.4933,1.1483,0.1701,2340.0,2340.0,-0.8546,-1.9732,4.169,98.4553 2019-06-03 15:42:09.300,137.4252,7160.5269,3.7612,-0.4976,1.2067,0.1673,2340.0,2340.0,-0.8867,-1.9762,4.1531,98.4771 2019-06-03 15:42:09.320,137.4252,7160.5542,3.7612,-0.4976,0.8391,0.0419,2340.0,2340.0,-0.878,-1.9703,4.1545,98.4771 2019-06-03 15:42:09.340,137.6228,7160.6089,3.7612,-0.4976,1.1719,0.1262,2340.0,2340.0,-0.8692,-1.9732,4.1743,98.4771 2019-06-03 15:42:09.360,137.6228,7160.6636,3.7523,-0.5043,0.6815,0.0609,2340.0,2340.0,-0.8721,-1.9703,4.1637,98.4933 2019-06-03 15:42:09.380,137.569,7160.6909,3.7523,-0.5043,1.2969,0.0997,2340.0,2340.0,-0.8721,-1.9703,4.1651,98.4933 2019-06-03 15:42:09.400,137.569,7160.7456,3.7518,-0.5058,1.26,0.1106,2400.0,2400.0,-0.8897,-1.9703,4.1611,98.5055 2019-06-03 15:42:09.420,137.569,7160.8003,3.7481,-0.5105,0.7877,0.1149,2400.0,2400.0,-0.8809,-1.9703,4.1598,98.5051 2019-06-03 15:42:09.440,137.6228,7160.9097,3.7481,-0.5105,1.2311,0.04,2400.0,2400.0,-0.8751,-1.9703,4.177,98.5051 2019-06-03 15:42:09.460,137.6139,7160.8823,3.7481,-0.5105,0.8672,0.104,2400.0,2400.0,-0.878,-1.9762,4.1584,98.5051 2019-06-03 15:42:09.480,137.551,7160.8823,3.7485,-0.5096,1.2396,0.0306,2400.0,2400.0,-0.8751,-1.9703,4.1651,98.5025 2019-06-03 15:42:09.500,137.569,7160.7729,3.7463,-0.5107,1.2355,0.0637,2400.0,2400.0,-0.8897,-1.9703,4.1637,98.4942 2019-06-03 15:42:09.520,137.569,7160.7456,3.7463,-0.5107,0.7529,0.1271,2400.0,2400.0,-0.8809,-1.9762,4.1518,98.4942 2019-06-03 15:42:09.540,137.9092,7160.7456,3.7463,-0.5107,1.1601,-0.0157,2400.0,2400.0,-0.8692,-1.9732,4.1704,98.4942 2019-06-03 15:42:09.560,137.9092,7160.8003,3.7408,-0.5126,0.9153,0.1451,2400.0,2400.0,-0.8604,-1.9732,4.1611,98.4784 2019-06-03 15:42:09.580,137.8377,7160.8276,3.7436,-0.5153,1.1383,-0.0165,2400.0,2400.0,-0.8634,-1.9732,4.1651,98.4566 2019-06-03 15:42:09.600,137.8377,7160.8003,3.7445,-0.5169,1.1542,0.0104,2400.0,2400.0,-0.8663,-1.9732,4.1704,98.4435 2019-06-03 15:42:09.620,137.8466,7160.855,3.7471,-0.5172,0.8909,0.1762,2400.0,2400.0,-0.8721,-1.9762,4.1558,98.429 2019-06-03 15:42:09.640,137.8913,7160.8823,3.7471,-0.5172,1.1065,-0.0561,2400.0,2400.0,-0.8692,-1.9732,4.1704,98.429 2019-06-03 15:42:09.660,137.9092,7160.8276,3.7471,-0.5172,1.0469,0.1861,2400.0,2400.0,-0.8721,-1.9732,4.1518,98.429 2019-06-03 15:42:09.680,137.8466,7160.855,3.7469,-0.5251,0.9896,-0.0332,2400.0,2400.0,-0.8721,-1.9732,4.1717,98.3962 2019-06-03 15:42:09.700,137.8466,7161.4844,3.7462,-0.5366,0.9722,0.0047,2400.0,2400.0,-0.9014,-1.9792,4.1584,98.3582 2019-06-03 15:42:09.720,137.8556,7162.2778,3.7462,-0.5366,0.9952,0.1843,2400.0,2400.0,-0.8897,-1.9703,4.1598,98.3582 2019-06-03 15:42:09.740,138.1853,7163.4814,3.7462,-0.5366,0.9937,-0.053,2400.0,2400.0,-0.8897,-1.9792,4.173,98.3582 2019-06-03 15:42:09.760,138.1764,7164.3569,3.7474,-0.5468,1.1398,0.1536,2400.0,2400.0,-0.8634,-1.9792,4.1558,98.3167 2019-06-03 15:42:09.780,138.123,7165.5605,3.7474,-0.5468,0.9608,0.0042,2400.0,2400.0,-0.8517,-1.9762,4.1624,98.3167 2019-06-03 15:42:09.800,138.1141,7166.3813,3.7472,-0.5707,0.8809,0.0153,2400.0,2400.0,-0.8634,-1.9762,4.1651,98.2433 2019-06-03 15:42:09.820,138.123,7167.1748,3.7497,-0.5778,1.223,0.1466,2400.0,2400.0,-0.8721,-1.9732,4.1531,98.217 2019-06-03 15:42:09.840,138.1764,7168.4609,3.7497,-0.5778,0.7921,0.0064,2400.0,2400.0,-0.8838,-1.9762,4.169,98.217 2019-06-03 15:42:09.860,138.1764,7169.0078,3.7497,-0.5778,1.3273,0.1186,2400.0,2400.0,-0.8809,-1.9762,4.1743,98.217 2019-06-03 15:42:09.880,138.1141,7168.9805,3.7464,-0.6005,0.7622,0.0375,2400.0,2400.0,-0.8867,-1.9762,4.1518,98.1628 2019-06-03 15:42:09.900,138.1319,7168.1597,3.7476,-0.6238,0.8254,0.0637,2400.0,2400.0,-0.8751,-1.9762,4.1677,98.106 2019-06-03 15:42:09.920,138.1141,7167.3389,3.7476,-0.6238,1.1812,0.1127,2400.0,2400.0,-0.8692,-1.9792,4.1439,98.106 2019-06-03 15:42:09.940,138.3273,7166.0806,3.7476,-0.6238,0.7433,0.0412,2400.0,2400.0,-0.8546,-1.9732,4.169,98.106 2019-06-03 15:42:09.960,138.3184,7165.2871,3.7518,-0.6445,1.2378,0.0872,2400.0,2400.0,-0.8663,-1.9762,4.1571,98.0465 2019-06-03 15:42:09.980,138.2563,7164.1382,3.7518,-0.6445,0.7655,0.0684,2400.0,2400.0,-0.8751,-1.9792,4.1558,98.0465 2019-06-03 15:42:10.000,138.2563,7163.3447,3.751,-0.6901,0.7681,0.1102,2400.0,2400.0,-0.8838,-1.9762,4.1598,97.953 2019-06-03 15:42:10.020,138.2652,7162.5239,3.7501,-0.7077,1.2049,0.0466,2400.0,2400.0,-0.878,-1.9762,4.1598,97.9211 2019-06-03 15:42:10.040,138.3096,7161.293,3.7501,-0.7077,0.7518,0.1265,2400.0,2400.0,-0.8751,-1.9732,4.1664,97.9211 2019-06-03 15:42:10.060,138.3273,7160.7729,3.7501,-0.7077,1.1642,-0.0272,2400.0,2400.0,-0.8809,-1.9762,4.1571,97.9211 2019-06-03 15:42:10.080,138.2741,7160.8003,3.7496,-0.7427,0.9504,0.1468,2400.0,2400.0,-0.878,-1.9732,4.1452,97.8577 2019-06-03 15:42:10.100,138.2652,7160.7729,3.7526,-0.7733,0.8727,0.1763,2400.0,2400.0,-0.8838,-1.9732,4.1558,97.7956 2019-06-03 15:42:10.120,138.2563,7160.7456,3.7526,-0.7733,1.0044,-0.0002,2400.0,2400.0,-0.8809,-1.9732,4.1545,97.7956 2019-06-03 15:42:10.140,138.3096,7160.7456,3.7526,-0.7733,1.0373,0.1655,2400.0,2400.0,-0.8663,-1.9732,4.1624,97.7956 2019-06-03 15:42:10.160,138.3096,7160.7729,3.7526,-0.8096,0.9881,-0.0402,2400.0,2400.0,-0.8721,-1.9703,4.1545,97.7331 2019-06-03 15:42:10.180,138.2563,7160.8003,3.7526,-0.8096,1.0092,0.1842,2400.0,2400.0,-0.8751,-1.9732,4.1492,97.7331 2019-06-03 15:42:10.200,138.2652,7160.8276,3.7519,-0.8699,1.0395,0.2012,2400.0,2400.0,-0.8721,-1.9732,4.1545,97.6404 2019-06-03 15:42:10.220,138.2652,7160.7456,3.7459,-0.8972,0.8957,-0.0102,2400.0,2400.0,-0.8721,-1.9732,4.1558,97.6098 2019-06-03 15:42:10.240,138.3273,7160.8003,3.7459,-0.8972,1.1431,0.1673,2400.0,2400.0,-0.8721,-1.9673,4.1571,97.6098 2019-06-03 15:42:10.260,138.3184,7160.8003,3.7459,-0.8972,0.9989,-0.0052,2400.0,2400.0,-0.8721,-1.9732,4.1571,97.6098 2019-06-03 15:42:10.280,138.2563,7160.855,3.7466,-0.9405,1.0569,0.1605,2400.0,2400.0,-0.8838,-1.9673,4.1399,97.5508 2019-06-03 15:42:10.300,138.2652,7160.8276,3.7464,-0.989,1.2267,0.1564,2400.0,2400.0,-0.8663,-1.9673,4.1624,97.4936 2019-06-03 15:42:10.320,138.2475,7160.8003,3.7464,-0.989,0.825,0.0186,2400.0,2400.0,-0.878,-1.9703,4.1452,97.4936 2019-06-03 15:42:10.340,138.3184,7160.8003,3.7464,-0.989,1.2311,0.1648,2400.0,2400.0,-0.8692,-1.9703,4.1531,97.4936 2019-06-03 15:42:10.360,138.3184,7160.7729,3.74,-1.0451,0.8376,0.014,2400.0,2400.0,-0.8692,-1.9703,4.1545,97.4376 2019-06-03 15:42:10.380,138.2652,7160.8276,3.74,-1.0451,1.1438,0.1397,2400.0,2400.0,-0.8721,-1.9703,4.1452,97.4376 2019-06-03 15:42:10.400,138.2652,7160.8003,3.7359,-1.1309,1.1915,0.1,2340.0,2400.0,-0.8575,-1.9673,4.1624,97.3589 2019-06-03 15:42:10.420,138.2652,7160.7729,3.7305,-1.1656,0.7096,0.0692,2340.0,2400.0,-0.8663,-1.9703,4.1465,97.3331 2019-06-03 15:42:10.440,138.3184,7160.7729,3.7305,-1.1656,1.2122,0.0961,2340.0,2400.0,-0.8604,-1.9703,4.1558,97.3331 2019-06-03 15:42:10.460,138.3096,7160.7729,3.7305,-1.1656,0.7252,0.0659,2340.0,2400.0,-0.8692,-1.9703,4.1545,97.3331 2019-06-03 15:42:10.480,138.2563,7160.6636,3.7279,-1.2267,1.1298,0.1265,2340.0,2400.0,-0.8692,-1.9673,4.1452,97.2868 2019-06-03 15:42:10.500,138.2741,7160.5542,3.718,-1.2909,1.2119,0.0844,2340.0,2400.0,-0.8663,-1.9673,4.1584,97.244 2019-06-03 15:42:10.520,138.2563,7160.5269,3.718,-1.2909,0.8398,0.093,2340.0,2400.0,-0.8692,-1.9703,4.1531,97.244 2019-06-03 15:42:10.540,138.3184,7160.5269,3.718,-1.2909,1.1812,0.1058,2340.0,2400.0,-0.8604,-1.9703,4.1545,97.244 2019-06-03 15:42:10.560,138.3096,7160.6089,3.708,-1.3604,0.7851,0.0754,2340.0,2400.0,-0.8751,-1.9703,4.1399,97.2029 2019-06-03 15:42:10.580,138.2652,7160.6636,3.708,-1.3604,1.1346,0.0982,2340.0,2400.0,-0.8692,-1.9673,4.1399,97.2029 2019-06-03 15:42:10.600,138.2652,7160.6636,3.6965,-1.4644,1.1475,0.043,2340.0,2400.0,-0.8634,-1.9732,4.1531,97.1496 2019-06-03 15:42:10.620,138.2741,7160.6089,3.6916,-1.4996,0.9493,0.1122,2340.0,2400.0,-0.8692,-1.9703,4.1478,97.1343 2019-06-03 15:42:10.640,138.3184,7160.6909,3.6916,-1.4996,1.1046,0.0413,2340.0,2400.0,-0.878,-1.9673,4.1518,97.1343 2019-06-03 15:42:10.660,138.3184,7160.6636,3.6916,-1.4996,1.0133,0.1375,2340.0,2400.0,-0.8751,-1.9732,4.1518,97.1343 2019-06-03 15:42:10.680,138.2563,7160.7183,3.6832,-1.5696,1.2078,0.023,2340.0,2400.0,-0.8751,-1.9732,4.1386,97.1085 2019-06-03 15:42:10.700,138.2652,7160.6636,3.6712,-1.6475,1.0739,-0.0479,2340.0,2400.0,-0.8429,-1.9703,4.1571,97.084 2019-06-03 15:42:10.720,138.2475,7160.6636,3.6712,-1.6475,0.9796,0.1808,2340.0,2400.0,-0.8634,-1.9732,4.1386,97.084 2019-06-03 15:42:10.740,138.3096,7160.6636,3.6712,-1.6475,1.0858,-0.0407,2340.0,2400.0,-0.8575,-1.9703,4.1505,97.084 2019-06-03 15:42:10.760,138.3273,7160.6909,3.6622,-1.7264,1.0351,0.214,2340.0,2400.0,-0.8692,-1.9673,4.1425,97.0652 2019-06-03 15:42:10.780,138.2652,7160.7183,3.6622,-1.7264,1.0832,-0.0286,2340.0,2400.0,-0.8692,-1.9703,4.1425,97.0652 2019-06-03 15:42:10.800,138.2563,7160.6909,3.6458,-1.8428,0.9622,-0.0505,2340.0,2400.0,-0.8692,-1.9703,4.1611,97.0442 2019-06-03 15:42:10.820,138.2652,7160.6636,3.6483,-1.8791,1.0488,0.1648,2340.0,2400.0,-0.8634,-1.9703,4.1359,97.039 2019-06-03 15:42:10.840,138.3184,7160.6909,3.6483,-1.8791,1.0458,-0.0273,2340.0,2400.0,-0.8546,-1.9732,4.1359,97.039 2019-06-03 15:42:10.860,138.3184,7160.6909,3.6483,-1.8791,1.0118,0.1974,2340.0,2400.0,-0.8487,-1.9703,4.1412,97.039 2019-06-03 15:42:10.880,138.2563,7160.6909,3.6371,-1.9586,0.9855,0.0134,2340.0,2400.0,-0.84,-1.9673,4.1452,97.0333 2019-06-03 15:42:10.900,138.2652,7160.6089,3.6244,-2.04,0.9116,-0.0146,2340.0,2400.0,-0.8429,-1.9673,4.1531,97.0298 2019-06-03 15:42:10.920,138.2475,7160.6089,3.6244,-2.04,1.0728,0.1485,2340.0,2400.0,-0.8517,-1.9703,4.1492,97.0298 2019-06-03 15:42:10.940,138.1675,7160.6089,3.6244,-2.04,0.9441,0.0015,2340.0,2400.0,-0.8663,-1.9673,4.1373,97.0298 2019-06-03 15:42:10.960,138.1675,7160.6089,3.617,-2.117,1.1294,0.1777,2340.0,2400.0,-0.8575,-1.9703,4.1518,97.0315 2019-06-03 15:42:10.980,138.123,7160.6636,3.6128,-2.1982,0.7884,0.0347,2340.0,2400.0,-0.8575,-1.9703,4.1412,97.0341 2019-06-03 15:42:11.000,138.1141,7160.7183,3.6034,-2.2393,0.8576,0.0104,2340.0,2400.0,-0.8487,-1.9703,4.1545,97.0376 2019-06-03 15:42:11.020,138.123,7160.7183,3.6033,-2.2762,1.115,0.1184,2340.0,2400.0,-0.8517,-1.9673,4.1465,97.0424 2019-06-03 15:42:11.040,138.1764,7160.7729,3.6033,-2.2762,0.8454,0.0378,2340.0,2400.0,-0.8517,-1.9673,4.1518,97.0424 2019-06-03 15:42:11.060,138.1853,7160.7729,3.6033,-2.2762,1.0898,0.1238,2340.0,2400.0,-0.8517,-1.9673,4.1518,97.0424 2019-06-03 15:42:11.080,138.1141,7160.7183,3.5914,-2.3573,0.774,0.0628,2340.0,2400.0,-0.8692,-1.9673,4.1373,97.0516 2019-06-03 15:42:11.100,138.1319,7160.6636,3.5827,-2.4347,0.8506,0.0386,2340.0,2400.0,-0.8517,-1.9673,4.1611,97.0648 2019-06-03 15:42:11.120,138.1141,7160.7183,3.5827,-2.4347,1.1253,0.0741,2340.0,2400.0,-0.8575,-1.9703,4.1505,97.0648 2019-06-03 15:42:11.140,138.1764,7160.8003,3.5827,-2.4347,0.9205,0.0568,2340.0,2400.0,-0.8487,-1.9673,4.1465,97.0648 2019-06-03 15:42:11.160,138.1675,7160.855,3.5773,-2.5086,1.173,0.1197,2340.0,2400.0,-0.8517,-1.9673,4.1412,97.0792 2019-06-03 15:42:11.180,138.1141,7160.8276,3.5773,-2.5086,0.7729,0.0848,2340.0,2400.0,-0.8546,-1.9673,4.1412,97.0792 2019-06-03 15:42:11.200,138.1141,7160.8276,3.5635,-2.6192,0.9249,0.0524,2340.0,2400.0,-0.8663,-1.9673,4.1571,97.1071 2019-06-03 15:42:11.220,138.1319,7160.7729,3.5609,-2.6543,1.0909,0.0529,2340.0,2400.0,-0.8867,-1.9643,4.1492,97.1172 2019-06-03 15:42:11.240,138.1764,7160.8003,3.5609,-2.6543,1.0111,0.0852,2340.0,2400.0,-0.8926,-1.9673,4.1531,97.1172 2019-06-03 15:42:11.260,138.1853,7160.7729,3.5609,-2.6543,1.1102,0.033,2340.0,2400.0,-0.8809,-1.9613,4.1571,97.1172 2019-06-03 15:42:11.280,138.123,7160.8003,3.5552,-2.7171,0.9537,0.139,2340.0,2400.0,-0.8692,-1.9613,4.1399,97.1412 2019-06-03 15:42:11.300,138.123,7160.7183,3.5479,-2.7823,1.0355,0.1385,2340.0,2400.0,-0.8575,-1.9673,4.1571,97.1653 2019-06-03 15:42:11.320,138.1052,7160.6909,3.5479,-2.7823,1.041,-0.0332,2340.0,2400.0,-0.8575,-1.9613,4.1518,97.1653 2019-06-03 15:42:11.340,138.1764,7160.6909,3.5479,-2.7823,0.943,0.1704,2340.0,2400.0,-0.8663,-1.9643,4.1478,97.1653 2019-06-03 15:42:11.360,138.1675,7160.6636,3.541,-2.8417,1.0096,-0.0195,2340.0,2400.0,-0.8721,-1.9643,4.1598,97.1911 2019-06-03 15:42:11.380,138.1052,7160.6636,3.541,-2.8417,1.0865,0.1876,2340.0,2400.0,-0.8809,-1.9643,4.1531,97.1911 2019-06-03 15:42:11.400,138.1319,7160.6636,3.5329,-2.9288,1.0414,0.1631,2400.0,2400.0,-0.8751,-1.9613,4.1598,97.2339 2019-06-03 15:42:11.420,138.1141,7160.7183,3.5251,-2.9601,0.9896,0.0003,2400.0,2400.0,-0.8838,-1.9673,4.1518,97.2475 2019-06-03 15:42:11.440,138.1586,7160.7729,3.5251,-2.9601,0.9767,0.161,2400.0,2400.0,-0.8751,-1.9613,4.1478,97.2475 2019-06-03 15:42:11.460,138.1853,7160.7456,3.5251,-2.9601,0.926,0.0136,2400.0,2400.0,-0.8692,-1.9613,4.1598,97.2475 2019-06-03 15:42:11.480,138.123,7160.7729,3.5181,-3.0128,0.9597,0.1571,2400.0,2400.0,-0.8634,-1.9613,4.1531,97.2763 2019-06-03 15:42:11.500,138.123,7160.6909,3.5124,-3.0594,1.0473,0.1432,2400.0,2400.0,-0.8692,-1.9613,4.1531,97.3074 2019-06-03 15:42:11.520,138.1141,7160.7456,3.5124,-3.0594,0.9534,-0.0055,2400.0,2400.0,-0.878,-1.9643,4.1611,97.3074 2019-06-03 15:42:11.540,138.1675,7160.7729,3.5124,-3.0594,1.0776,0.1657,2400.0,2400.0,-0.8809,-1.9583,4.1412,97.3074 2019-06-03 15:42:11.560,138.1675,7160.8823,3.5054,-3.1113,0.8916,-0.0078,2400.0,2400.0,-0.8604,-1.9643,4.1624,97.3362 2019-06-03 15:42:11.580,138.1141,7160.8823,3.5054,-3.1113,0.997,0.1741,2400.0,2400.0,-0.8663,-1.9613,4.1518,97.3362 2019-06-03 15:42:11.600,138.123,7160.8823,3.4998,-3.1772,1.0532,0.1259,2400.0,2400.0,-0.8634,-1.9643,4.1584,97.3808 2019-06-03 15:42:11.620,138.1319,7160.7729,3.4934,-3.2028,0.8395,0.0351,2400.0,2400.0,-0.8809,-1.9613,4.1505,97.3935 2019-06-03 15:42:11.640,138.1764,7160.7729,3.4934,-3.2028,1.2326,0.1214,2400.0,2400.0,-0.8867,-1.9613,4.1452,97.3935 2019-06-03 15:42:11.660,138.1764,7160.7729,3.4934,-3.2028,0.8831,0.0327,2400.0,2400.0,-0.878,-1.9613,4.1717,97.3935 2019-06-03 15:42:11.680,138.1141,7160.8003,3.4934,-3.2028,1.081,0.0933,2400.0,2400.0,-0.8867,-1.9643,4.1558,97.3935 2019-06-03 15:42:11.700,138.1141,7161.5117,3.4837,-3.279,1.2921,0.0869,2400.0,2400.0,-0.8751,-1.9583,4.1558,97.4503 2019-06-03 15:42:11.720,138.1052,7162.3325,3.4837,-3.279,0.7821,0.091,2400.0,2400.0,-0.8663,-1.9494,4.1531,97.4503 2019-06-03 15:42:11.740,138.1764,7163.5635,3.4837,-3.279,1.1941,0.0878,2400.0,2400.0,-0.8692,-1.9494,4.1505,97.4503 2019-06-03 15:42:11.760,138.1675,7164.4116,3.4761,-3.3098,0.7892,0.079,2400.0,2400.0,-0.8721,-1.9524,4.1558,97.4765 2019-06-03 15:42:11.780,138.1141,7165.6157,3.4761,-3.3098,1.2159,0.0723,2400.0,2400.0,-0.8692,-1.9524,4.1571,97.4765 2019-06-03 15:42:11.800,138.1141,7166.4634,3.4732,-3.3565,1.3217,0.018,2400.0,2400.0,-0.8692,-1.9494,4.1558,97.515 2019-06-03 15:42:11.820,138.123,7167.2568,3.4742,-3.3694,0.7869,0.1598,2400.0,2400.0,-0.8692,-1.9583,4.1505,97.5264 2019-06-03 15:42:11.840,138.1675,7168.5703,3.4742,-3.3694,1.0932,-0.0075,2400.0,2400.0,-0.8663,-1.9494,4.1492,97.5264 2019-06-03 15:42:11.860,138.1764,7169.0625,3.4742,-3.3694,0.8339,0.15,2400.0,2400.0,-0.878,-1.9494,4.1651,97.5264 2019-06-03 15:42:11.880,138.1141,7169.0352,3.4699,-3.396,1.162,-0.0109,2400.0,2400.0,-0.8926,-1.9554,4.1598,97.5491 2019-06-03 15:42:11.900,138.1319,7168.9805,3.463,-3.4239,1.1756,-0.0424,2400.0,2400.0,-0.8897,-1.9524,4.1611,97.5683 2019-06-03 15:42:11.920,138.1141,7168.9531,3.463,-3.4239,0.9389,0.2059,2400.0,2400.0,-0.8751,-1.9524,4.1531,97.5683 2019-06-03 15:42:11.940,138.3184,7168.9805,3.463,-3.4239,1.1483,-0.0294,2400.0,2400.0,-0.8721,-1.9524,4.1425,97.5683 2019-06-03 15:42:11.960,138.3096,7169.0352,3.4597,-3.4472,0.8572,0.1552,2400.0,2400.0,-0.8751,-1.9494,4.1717,97.5867 2019-06-03 15:42:11.980,138.2652,7169.1172,3.4597,-3.4472,0.9807,-0.0155,2400.0,2400.0,-0.8692,-1.9554,4.1584,97.5867 2019-06-03 15:42:12.000,138.2475,7169.1172,3.459,-3.4775,1.0869,-0.0239,2400.0,2400.0,-0.8663,-1.9494,4.1637,97.6068 2019-06-03 15:42:12.020,138.2652,7169.1172,3.4666,-3.4826,1.0754,0.1827,2400.0,2400.0,-0.8634,-1.9583,4.1531,97.6116 2019-06-03 15:42:12.040,138.3184,7169.0352,3.4666,-3.4826,0.9763,0.0199,2400.0,2400.0,-0.8575,-1.9345,4.1412,97.6116 2019-06-03 15:42:12.060,138.3184,7168.9805,3.4666,-3.4826,1.0721,0.1613,2400.0,2400.0,-0.8634,-1.9762,4.1743,97.6116 2019-06-03 15:42:12.080,138.2563,7168.9805,3.4588,-3.5056,0.9545,-0.0137,2400.0,2400.0,-0.8692,-1.9703,4.1637,97.6195 2019-06-03 15:42:12.100,138.2652,7168.9531,3.4536,-3.5269,0.9523,-0.0153,2400.0,2400.0,-0.8721,-1.9643,4.1545,97.6221 2019-06-03 15:42:12.120,138.2563,7168.9531,3.4536,-3.5269,1.0891,0.1898,2400.0,2400.0,-0.8663,-1.9673,4.1651,97.6221 2019-06-03 15:42:12.140,138.3096,7168.9531,3.4536,-3.5269,0.872,0.0262,2400.0,2400.0,-0.8663,-1.9643,4.1386,97.6221 2019-06-03 15:42:12.160,138.3184,7168.9258,3.4544,-3.5425,1.0798,0.1179,2400.0,2400.0,-0.8546,-1.9643,4.1704,97.6221 2019-06-03 15:42:12.180,138.2563,7168.8711,3.4544,-3.5425,0.8114,0.0402,2400.0,2400.0,-0.8487,-1.9613,4.1664,97.6221 2019-06-03 15:42:12.200,138.2652,7168.8711,3.4512,-3.57,0.8676,0.0823,2400.0,2400.0,-0.8575,-1.9613,4.1531,97.6125 2019-06-03 15:42:12.220,138.2563,7168.8984,3.4535,-3.5764,1.2078,0.1043,2400.0,2400.0,-0.8634,-1.9613,4.1518,97.6072 2019-06-03 15:42:12.240,138.3096,7168.9531,3.4535,-3.5764,0.8221,0.0702,2400.0,2400.0,-0.8634,-1.9613,4.1478,97.6072 2019-06-03 15:42:12.260,138.3184,7168.9805,3.4535,-3.5764,1.1897,0.061,2400.0,2400.0,-0.8604,-1.9643,4.173,97.6072 2019-06-03 15:42:12.280,138.2652,7168.9531,3.4495,-3.5973,0.8413,0.0616,2400.0,2400.0,-0.8575,-1.9643,4.1651,97.5937 2019-06-03 15:42:12.300,138.2741,7168.105,3.4504,-3.6117,0.8983,0.0875,2400.0,2400.0,-0.8604,-1.9643,4.1492,97.5744 2019-06-03 15:42:12.320,138.2563,7167.2842,3.4504,-3.6117,0.9719,0.0773,2400.0,2400.0,-0.8546,-1.9613,4.1571,97.5744 2019-06-03 15:42:12.340,138.4601,7166.0806,3.4504,-3.6117,0.875,0.0863,2400.0,2400.0,-0.8487,-1.9613,4.1598,97.5744 2019-06-03 15:42:12.360,138.4513,7165.3145,3.452,-3.6301,1.1653,0.0183,2400.0,2400.0,-0.8575,-1.9643,4.169,97.5521 2019-06-03 15:42:12.380,138.3982,7164.1108,3.4525,-3.6506,0.8498,0.0668,2400.0,2400.0,-0.8575,-1.9673,4.1558,97.5255 2019-06-03 15:42:12.400,138.3893,7163.3174,3.4495,-3.6607,0.8642,0.099,2400.0,2340.0,-0.8575,-1.9583,4.1492,97.5102 2019-06-03 15:42:12.420,138.3982,7162.5239,3.4498,-3.6697,1.1671,0.0463,2400.0,2340.0,-0.8604,-1.9613,4.173,97.4944 2019-06-03 15:42:12.440,138.4601,7161.2383,3.4498,-3.6697,0.8136,0.1316,2400.0,2340.0,-0.8663,-1.9613,4.1531,97.4944 2019-06-03 15:42:12.460,138.469,7160.7183,3.4498,-3.6697,1.1013,0.0062,2400.0,2340.0,-0.8487,-1.9613,4.1783,97.4944 2019-06-03 15:42:12.480,138.3982,7160.7729,3.4484,-3.6923,0.9519,0.1199,2400.0,2340.0,-0.8634,-1.9613,4.1492,97.4604 2019-06-03 15:42:12.500,138.407,7161.5117,3.4497,-3.7127,1.0196,0.1536,2400.0,2340.0,-0.8634,-1.9643,4.1518,97.4219 2019-06-03 15:42:12.520,138.407,7162.3052,3.4497,-3.7127,1.027,-0.0152,2400.0,2340.0,-0.8692,-1.9643,4.1704,97.4219 2019-06-03 15:42:12.540,138.7337,7163.5088,3.4497,-3.7127,0.9741,0.1614,2400.0,2340.0,-0.8604,-1.9613,4.1571,97.4219 2019-06-03 15:42:12.560,138.7337,7164.4116,3.4513,-3.735,1.0351,-0.018,2400.0,2340.0,-0.8487,-1.9613,4.1624,97.3804 2019-06-03 15:42:12.580,138.6809,7165.5605,3.4513,-3.735,1.0451,0.1636,2400.0,2340.0,-0.8312,-1.9583,4.1545,97.3804 2019-06-03 15:42:12.600,138.672,7166.3813,3.4505,-3.7668,1.0932,0.1584,2400.0,2340.0,-0.8371,-1.9613,4.1492,97.3148 2019-06-03 15:42:12.620,138.6897,7167.1201,3.4485,-3.7834,0.9145,0.0134,2400.0,2340.0,-0.84,-1.9643,4.173,97.2916 2019-06-03 15:42:12.640,138.7249,7168.4063,3.4485,-3.7834,1.0617,0.1451,2400.0,2340.0,-0.8487,-1.9613,4.1571,97.2916 2019-06-03 15:42:12.660,138.7337,7168.8984,3.4485,-3.7834,0.9985,0.0107,2400.0,2340.0,-0.8575,-1.9583,4.1624,97.2916 2019-06-03 15:42:12.680,138.672,7168.8438,3.4522,-3.8083,1.0662,0.1105,2400.0,2340.0,-0.8575,-1.9643,4.1611,97.2431 2019-06-03 15:42:12.700,138.672,7168.0503,3.4534,-3.8373,1.1013,0.1352,2400.0,2340.0,-0.8604,-1.9613,4.1505,97.192 2019-06-03 15:42:12.720,138.6897,7167.2021,3.4534,-3.8373,0.8099,0.041,2400.0,2340.0,-0.8604,-1.9583,4.1624,97.192 2019-06-03 15:42:12.740,138.8832,7165.9438,3.4534,-3.8373,1.0965,0.1287,2400.0,2340.0,-0.8604,-1.9643,4.1558,97.192 2019-06-03 15:42:12.760,138.8745,7165.1777,3.4501,-3.8694,0.8509,0.0374,2400.0,2340.0,-0.8575,-1.9583,4.1611,97.1404 2019-06-03 15:42:12.780,138.8217,7164.0562,3.4501,-3.8694,1.1094,0.102,2400.0,2340.0,-0.8487,-1.9583,4.1571,97.1404 2019-06-03 15:42:12.800,138.8129,7163.2627,3.4528,-3.9238,1.193,0.0837,2400.0,2340.0,-0.8458,-1.9583,4.1478,97.0582 2019-06-03 15:42:12.820,138.8217,7162.4692,3.4512,-3.9415,0.8206,0.0868,2400.0,2340.0,-0.8429,-1.9613,4.1624,97.0298 2019-06-03 15:42:12.840,138.8745,7161.2656,3.4512,-3.9415,1.1057,0.0823,2400.0,2340.0,-0.8575,-1.9583,4.1545,97.0298 2019-06-03 15:42:12.860,138.8832,7160.6909,3.4512,-3.9415,0.9242,0.082,2400.0,2340.0,-0.8604,-1.9643,4.1611,97.0298 2019-06-03 15:42:12.880,138.8129,7160.7456,3.4536,-3.98,1.2097,0.0396,2400.0,2340.0,-0.8517,-1.9583,4.1598,96.9738 2019-06-03 15:42:12.900,138.8305,7160.7183,3.4504,-4.0216,1.2326,0.0592,2400.0,2340.0,-0.84,-1.9583,4.1558,96.9161 2019-06-03 15:42:12.920,138.8217,7160.7183,3.4504,-4.0216,0.8702,0.0891,2400.0,2340.0,-0.8429,-1.9583,4.1598,96.9161 2019-06-03 15:42:12.940,139.0061,7160.7729,3.4504,-4.0216,1.1176,0.067,2400.0,2340.0,-0.8546,-1.9613,4.1505,96.9161 2019-06-03 15:42:12.960,139.0061,7160.8003,3.4477,-4.0684,0.8835,0.1051,2400.0,2340.0,-0.8604,-1.9583,4.1598,96.8597 2019-06-03 15:42:12.980,138.9535,7160.7729,3.4477,-4.0684,1.1061,0.0094,2400.0,2340.0,-0.8634,-1.9583,4.1571,96.8597 2019-06-03 15:42:13.000,138.9535,7160.7456,3.4483,-4.131,1.122,0.0266,2400.0,2340.0,-0.8604,-1.9554,4.1518,96.7736 2019-06-03 15:42:13.020,138.9622,7160.7183,3.4513,-4.15,0.9057,0.127,2400.0,2340.0,-0.8575,-1.9554,4.1584,96.7461 2019-06-03 15:42:13.040,139.0061,7160.7183,3.4513,-4.15,1.068,0.0058,2400.0,2340.0,-0.8458,-1.9613,4.1505,96.7461 2019-06-03 15:42:13.060,139.0236,7160.7183,3.4513,-4.15,0.8979,0.1538,2400.0,2340.0,-0.8487,-1.9554,4.1492,96.7461 2019-06-03 15:42:13.080,138.9535,7160.7183,3.4511,-4.2005,1.0702,-0.0022,2400.0,2340.0,-0.8487,-1.9613,4.1624,96.6875 2019-06-03 15:42:13.100,138.9535,7160.6362,3.4462,-4.2487,1.0828,-0.0198,2400.0,2340.0,-0.8546,-1.9583,4.1492,96.6324 2019-06-03 15:42:13.120,138.9535,7160.6636,3.4462,-4.2487,0.9149,0.1739,2400.0,2340.0,-0.8546,-1.9583,4.1558,96.6324 2019-06-03 15:42:13.140,139.0149,7160.6089,3.4462,-4.2487,1.0806,-0.0244,2400.0,2340.0,-0.8546,-1.9613,4.1492,96.6324 2019-06-03 15:42:13.160,139.0061,7160.6362,3.446,-4.3007,0.987,0.1926,2400.0,2340.0,-0.8604,-1.9583,4.1558,96.5804 2019-06-03 15:42:13.180,138.9535,7160.7456,3.446,-4.3007,1.0251,-0.0209,2400.0,2340.0,-0.8634,-1.9613,4.1531,96.5804 2019-06-03 15:42:13.200,138.9535,7160.7729,3.4439,-4.3836,0.9393,-0.0211,2400.0,2340.0,-0.8517,-1.9613,4.1531,96.5022 2019-06-03 15:42:13.220,138.9622,7160.7456,3.4493,-4.4074,1.1146,0.1639,2400.0,2340.0,-0.8487,-1.9554,4.1545,96.4777 2019-06-03 15:42:13.240,138.9973,7160.8003,3.4493,-4.4074,0.9327,-0.0233,2400.0,2340.0,-0.84,-1.9554,4.1439,96.4777 2019-06-03 15:42:13.260,139.0149,7160.8276,3.4493,-4.4074,1.1305,0.164,2400.0,2340.0,-0.84,-1.9583,4.1465,96.4777 2019-06-03 15:42:13.280,138.9535,7160.7456,3.4431,-4.4664,0.8635,-0.0095,2400.0,2340.0,-0.8429,-1.9554,4.1545,96.4287 2019-06-03 15:42:13.300,138.971,7160.7183,3.4371,-4.5251,0.8779,-0.0073,2400.0,2340.0,-0.8371,-1.9583,4.1505,96.382 2019-06-03 15:42:13.320,138.9359,7160.7183,3.4371,-4.5251,1.1294,0.1379,2400.0,2340.0,-0.8371,-1.9613,4.1545,96.382 2019-06-03 15:42:13.340,138.8569,7160.7456,3.4371,-4.5251,0.8287,-0.0134,2400.0,2340.0,-0.8224,-1.9554,4.1492,96.382 2019-06-03 15:42:13.360,138.8569,7160.7456,3.4373,-4.582,1.2126,0.1216,2400.0,2340.0,-0.8195,-1.9554,4.1359,96.3391 2019-06-03 15:42:13.380,138.8129,7160.8276,3.4373,-4.582,0.7618,0.0344,2400.0,2340.0,-0.8107,-1.9613,4.1505,96.3391 2019-06-03 15:42:13.400,138.8129,7160.855,3.4287,-4.6709,0.7799,0.0715,2340.0,2400.0,-0.8137,-1.9583,4.1478,96.2797 2019-06-03 15:42:13.420,138.8305,7160.7456,3.43,-4.7005,1.2563,0.0566,2340.0,2400.0,-0.8107,-1.9583,4.1637,96.2617 2019-06-03 15:42:13.440,138.8745,7160.8003,3.43,-4.7005,0.7418,0.059,2340.0,2400.0,-0.8341,-1.9613,4.1412,96.2617 2019-06-03 15:42:13.460,138.8745,7160.7729,3.43,-4.7005,1.2722,0.0692,2340.0,2400.0,-0.8195,-1.9583,4.1346,96.2617 2019-06-03 15:42:13.480,138.8129,7160.7729,3.4238,-4.7648,0.7869,0.1313,2340.0,2400.0,-0.764,-1.9554,4.1545,96.2268 2019-06-03 15:42:13.500,138.8129,7160.7456,3.4219,-4.8274,0.7562,0.1354,2340.0,2400.0,-0.7494,-1.9583,4.1412,96.1953 2019-06-03 15:42:13.520,138.8129,7160.7729,3.4219,-4.8274,1.385,0.0128,2340.0,2400.0,-0.7231,-1.9583,4.1598,96.1953 2019-06-03 15:42:13.540,138.892,7160.7183,3.4219,-4.8274,0.7204,0.1509,2340.0,2400.0,-0.7318,-1.9583,4.132,96.1953 2019-06-03 15:42:13.560,138.8657,7160.6909,3.4212,-4.886,1.2404,-0.0247,2340.0,2400.0,-0.726,-1.9554,4.1465,96.1682 2019-06-03 15:42:13.580,138.8129,7160.7183,3.4212,-4.886,0.9164,0.185,2340.0,2400.0,-0.7377,-1.9583,4.1492,96.1682 2019-06-03 15:42:13.600,138.8129,7160.7183,3.4118,-4.9767,0.7274,0.1845,2340.0,2400.0,-0.726,-1.9583,4.1584,96.1332 2019-06-03 15:42:13.620,138.8217,7160.7456,3.4056,-5.009,1.2293,-0.0573,2340.0,2400.0,-0.7435,-1.9554,4.1545,96.124 2019-06-03 15:42:13.640,138.8745,7160.7729,3.4056,-5.009,0.8698,0.2116,2340.0,2400.0,-0.7347,-1.9554,4.1465,96.124 2019-06-03 15:42:13.660,138.8745,7160.7456,3.4056,-5.009,1.1139,-0.0771,2340.0,2400.0,-0.7406,-1.9583,4.1412,96.124 2019-06-03 15:42:13.680,138.8129,7160.6909,3.4027,-5.0628,0.8742,0.225,2340.0,2400.0,-0.726,-1.9554,4.1637,96.1061 2019-06-03 15:42:13.700,138.8305,7160.6089,3.4002,-5.113,0.9482,0.2448,2340.0,2400.0,-0.7347,-1.9524,4.1505,96.0921 2019-06-03 15:42:13.720,138.8041,7160.6362,3.4002,-5.113,1.0192,-0.0719,2340.0,2400.0,-0.7289,-1.9554,4.1545,96.0921 2019-06-03 15:42:13.740,138.7249,7160.6909,3.4002,-5.113,1.0059,0.2287,2340.0,2400.0,-0.7377,-1.9554,4.1492,96.0921 2019-06-03 15:42:13.760,138.7249,7160.7729,3.3935,-5.1661,0.9071,-0.06,2340.0,2400.0,-0.7406,-1.9554,4.1598,96.0812 2019-06-03 15:42:13.780,138.672,7160.7729,3.3935,-5.1661,1.1253,0.2215,2340.0,2400.0,-0.7318,-1.9554,4.1823,96.0812 2019-06-03 15:42:13.800,138.6632,7160.8276,3.3855,-5.2479,1.2104,0.2025,2340.0,2400.0,-0.7318,-1.9554,4.1571,96.0672 2019-06-03 15:42:13.820,138.6897,7160.855,3.377,-5.2755,0.8676,-0.0389,2340.0,2400.0,-0.726,-1.9524,4.1743,96.0637 2019-06-03 15:42:13.840,138.7337,7160.8276,3.377,-5.2755,1.1793,0.1799,2340.0,2400.0,-0.7464,-1.9464,4.1531,96.0637 2019-06-03 15:42:13.860,138.7425,7160.8003,3.377,-5.2755,1.0026,0.0135,2340.0,2400.0,-0.7347,-1.8928,4.1756,96.0637 2019-06-03 15:42:13.880,138.6809,7160.8276,3.3732,-5.3233,1.1546,0.1533,2340.0,2400.0,-0.7318,-1.848,4.1796,96.0589 2019-06-03 15:42:13.900,138.6809,7160.7729,3.3672,-5.3722,1.2759,0.1402,2340.0,2400.0,-0.7289,-1.8062,4.1743,96.0558 2019-06-03 15:42:13.920,138.672,7160.7456,3.3672,-5.3722,0.7781,0.0149,2340.0,2400.0,-0.7406,-1.7286,4.173,96.0558 2019-06-03 15:42:13.940,138.7337,7160.7456,3.3672,-5.3722,1.2015,0.1436,2340.0,2400.0,-0.7406,-1.6807,4.1717,96.0558 2019-06-03 15:42:13.960,138.7337,7160.7456,3.3569,-5.4192,0.8261,0.0562,2340.0,2400.0,-0.7377,-1.6179,4.1717,96.0541 2019-06-03 15:42:13.980,138.6809,7160.6909,3.3569,-5.4192,1.2318,0.1066,2340.0,2400.0,-0.7231,-1.6149,4.2061,96.0541 2019-06-03 15:42:14.000,138.672,7160.6909,3.3532,-5.4768,1.1779,0.1189,2340.0,2400.0,-0.7406,-1.564,4.1823,96.0537 2019-06-03 15:42:14.020,138.672,7160.7183,3.3504,-5.4921,0.7596,0.0359,2340.0,2400.0,-0.7406,-1.555,4.2061,96.0545 2019-06-03 15:42:14.040,138.7337,7160.7183,3.3504,-5.4921,1.2367,0.114,2340.0,2400.0,-0.7435,-1.552,4.1942,96.0545 2019-06-03 15:42:14.060,138.7337,7160.6909,3.3504,-5.4921,0.7415,0.1082,2340.0,2400.0,-0.7406,-1.5221,4.1968,96.0545 2019-06-03 15:42:14.080,138.672,7160.7183,3.347,-5.518,1.2881,0.0383,2340.0,2400.0,-0.7172,-1.5191,4.2246,96.0554 2019-06-03 15:42:14.100,138.6809,7160.6636,3.3431,-5.5394,1.2137,0.0287,2340.0,2400.0,-0.726,-1.4861,4.2035,96.0585 2019-06-03 15:42:14.120,138.672,7160.6362,3.3431,-5.5394,0.9401,0.1217,2340.0,2400.0,-0.7464,-1.4921,4.2193,96.0585 2019-06-03 15:42:14.140,138.7249,7160.6909,3.3431,-5.5394,1.193,0.0304,2340.0,2400.0,-0.7464,-1.4441,4.2127,96.0585 2019-06-03 15:42:14.160,138.7337,7160.7183,3.3405,-5.5587,0.8284,0.1634,2340.0,2400.0,-0.7464,-1.3931,4.218,96.0602 2019-06-03 15:42:14.180,138.6809,7160.7456,3.3405,-5.5587,1.0813,-0.0111,2340.0,2400.0,-0.7464,-1.3991,4.2352,96.0602 2019-06-03 15:42:14.200,138.672,7160.7456,3.3388,-5.5706,1.1046,-0.0207,2340.0,2400.0,-0.7406,-1.3931,4.2313,96.0642 2019-06-03 15:42:14.220,138.6809,7160.7183,3.3428,-5.5706,0.9227,0.1646,2340.0,2400.0,-0.7435,-1.3871,4.2471,96.0655 2019-06-03 15:42:14.240,138.7337,7160.7183,3.3428,-5.5706,1.1039,-0.0014,2340.0,2400.0,-0.7347,-1.3931,4.2697,96.0655 2019-06-03 15:42:14.260,138.7337,7160.6636,3.3428,-5.5706,0.9707,0.1582,2340.0,2400.0,-0.7347,-1.3841,4.2736,96.0655 2019-06-03 15:42:14.280,138.672,7160.7183,3.3444,-5.5712,1.0347,-0.008,2340.0,2400.0,-0.7523,-1.3871,4.3014,96.0663 2019-06-03 15:42:14.300,138.6809,7160.6362,3.3465,-5.5683,0.9977,-0.0225,2340.0,2400.0,-0.7611,-1.3871,4.2961,96.0668 2019-06-03 15:42:14.320,138.6809,7160.6362,3.3465,-5.5683,1.0107,0.1506,2340.0,2400.0,-0.7786,-1.3901,4.3147,96.0668 2019-06-03 15:42:14.340,138.8745,7160.6909,3.3465,-5.5683,1.0961,0.0183,2340.0,2400.0,-0.764,-1.4021,4.3359,96.0668 2019-06-03 15:42:14.360,138.8569,7160.6909,3.3565,-5.5573,0.9515,0.1747,2340.0,2400.0,-0.7552,-1.3991,4.3411,96.0655 2019-06-03 15:42:14.380,138.8129,7160.7456,3.3565,-5.5573,0.9523,-0.0074,2340.0,2400.0,-0.7435,-1.4051,4.3637,96.0655 2019-06-03 15:42:14.400,138.8217,7160.7729,3.3716,-5.53,0.9238,-0.0007,2400.0,2400.0,-0.7464,-1.4171,4.3517,96.0598 2019-06-03 15:42:14.420,138.8217,7160.7456,3.3828,-5.5175,1.0429,0.1611,2400.0,2400.0,-0.7552,-1.4171,4.3795,96.0572 2019-06-03 15:42:14.440,138.8745,7160.7729,3.3828,-5.5175,0.9556,-0.0077,2400.0,2400.0,-0.7698,-1.4171,4.3968,96.0572 2019-06-03 15:42:14.460,138.8745,7160.8276,3.3828,-5.5175,1.1009,0.1736,2400.0,2400.0,-0.7786,-1.4261,4.4047,96.0572 2019-06-03 15:42:14.480,138.8217,7160.8276,3.3956,-5.4967,0.8809,-0.0177,2400.0,2400.0,-0.7991,-1.4351,4.4444,96.048 2019-06-03 15:42:14.500,138.8217,7160.7456,3.4137,-5.4737,0.9534,0.0175,2400.0,2400.0,-0.7903,-1.4321,4.4484,96.0375 2019-06-03 15:42:14.520,138.8041,7160.7729,3.4137,-5.4737,1.1313,0.1475,2400.0,2400.0,-0.7991,-1.4321,4.4696,96.0375 2019-06-03 15:42:14.540,138.8745,7160.7456,3.4137,-5.4737,0.8247,0.0128,2400.0,2400.0,-0.802,-1.4501,4.4921,96.0375 2019-06-03 15:42:14.560,138.8745,7160.7456,3.4361,-5.4445,1.1642,0.1468,2400.0,2400.0,-0.802,-1.4501,4.4974,96.0235 2019-06-03 15:42:14.580,138.8217,7160.8003,3.4361,-5.4445,0.8661,0.014,2400.0,2400.0,-0.8107,-1.5011,4.5172,96.0235 2019-06-03 15:42:14.600,138.8129,7160.8276,3.4718,-5.3999,0.9079,0.0558,2400.0,2400.0,-0.8254,-1.5041,4.5186,95.9981 2019-06-03 15:42:14.620,138.8305,7160.8276,3.4875,-5.3808,1.1139,0.1268,2400.0,2400.0,-0.8283,-1.5221,4.5305,95.9877 2019-06-03 15:42:14.640,138.8657,7160.8003,3.4875,-5.3808,0.8801,0.0595,2400.0,2400.0,-0.8254,-1.543,4.553,95.9877 2019-06-03 15:42:14.660,138.8832,7160.7456,3.4875,-5.3808,1.2074,0.12,2400.0,2400.0,-0.8312,-1.573,4.5464,95.9877 2019-06-03 15:42:14.680,138.8129,7160.7183,3.5147,-5.3504,0.9123,0.0817,2400.0,2400.0,-0.8283,-1.6029,4.5715,95.9654 2019-06-03 15:42:14.700,138.8217,7160.6909,3.548,-5.3171,0.9216,0.0642,2400.0,2400.0,-0.84,-1.6299,4.545,95.9413 2019-06-03 15:42:14.720,138.8217,7160.7183,3.548,-5.3171,1.1483,0.0997,2400.0,2400.0,-0.8283,-1.6747,4.5662,95.9413 2019-06-03 15:42:14.740,139.0061,7160.7729,3.548,-5.3171,0.9929,0.0842,2400.0,2400.0,-0.8341,-1.7076,4.5821,95.9413 2019-06-03 15:42:14.760,138.9973,7160.8003,3.5863,-5.286,1.1812,0.096,2400.0,2400.0,-0.8341,-1.7106,4.5781,95.9125 2019-06-03 15:42:14.780,138.9447,7160.7456,3.5863,-5.286,1.0136,0.0863,2400.0,2400.0,-0.8634,-1.7614,4.5887,95.9125 2019-06-03 15:42:14.800,138.9535,7160.7456,3.6443,-5.2483,1.0506,0.0762,2400.0,2400.0,-0.878,-1.7614,4.5887,95.8653 2019-06-03 15:42:14.820,138.9622,7160.7456,3.6636,-5.2382,1.2341,0.0628,2400.0,2400.0,-0.8955,-1.7644,4.5914,95.8478 2019-06-03 15:42:14.840,139.0061,7160.7456,3.6636,-5.2382,1.0281,0.0915,2400.0,2400.0,-0.8926,-1.7853,4.6285,95.8478 2019-06-03 15:42:14.860,139.0149,7160.7456,3.6636,-5.2382,1.1509,0.0598,2400.0,2400.0,-0.9101,-1.7823,4.6152,95.8478 2019-06-03 15:42:14.880,138.9535,7160.7183,3.7038,-5.2179,0.9918,0.0708,2400.0,2400.0,-0.9423,-1.8152,4.6218,95.8115 2019-06-03 15:42:14.900,138.9622,7160.6362,3.7486,-5.2045,0.9737,0.1323,2400.0,2400.0,-0.951,-1.8122,4.6152,95.7708 2019-06-03 15:42:14.920,138.9447,7160.6089,3.7486,-5.2045,1.2958,0.0281,2400.0,2400.0,-0.9715,-1.8152,4.6271,95.7708 2019-06-03 15:42:14.940,139.0149,7160.6636,3.7486,-5.2045,0.926,0.1441,2400.0,2400.0,-0.989,-1.848,4.639,95.7708 2019-06-03 15:42:14.960,139.0061,7160.6909,3.7921,-5.1902,1.2111,0.0097,2400.0,2400.0,-0.9978,-1.8391,4.6165,95.7284 2019-06-03 15:42:14.980,138.9535,7160.7183,3.7921,-5.1902,1.0011,0.1754,2400.0,2400.0,-1.0124,-1.857,4.643,95.7284 2019-06-03 15:42:15.000,138.9535,7160.7456,3.8607,-5.1777,0.9804,0.2158,2400.0,2400.0,-1.0154,-1.857,4.6298,95.6572 2019-06-03 15:42:15.020,138.9622,7160.7456,3.8761,-5.1794,1.1276,-0.0244,2400.0,2400.0,-1.0154,-1.848,4.6364,95.6318 2019-06-03 15:42:15.040,139.0061,7160.7456,3.8761,-5.1794,1.1216,0.1881,2400.0,2400.0,-1.027,-1.851,4.6589,95.6318 2019-06-03 15:42:15.060,139.0149,7160.7183,3.8761,-5.1794,1.1046,-0.0102,2400.0,2400.0,-1.0446,-1.8361,4.6364,95.6318 2019-06-03 15:42:15.080,138.9447,7160.7456,3.9232,-5.1784,1.102,0.1622,2400.0,2400.0,-1.0826,-1.8659,4.6629,95.5807 2019-06-03 15:42:15.100,138.9622,7160.6362,3.9718,-5.1776,1.1091,0.1638,2400.0,2400.0,-1.0884,-1.8659,4.6616,95.5274 2019-06-03 15:42:15.120,138.9535,7160.6362,3.9718,-5.1776,1.1009,0.0111,2400.0,2400.0,-1.0972,-1.8331,4.6549,95.5274 2019-06-03 15:42:15.140,139.1462,7160.6362,3.9718,-5.1776,1.1716,0.1866,2400.0,2400.0,-1.1147,-1.8361,4.6629,95.5274 2019-06-03 15:42:15.160,139.1462,7160.6636,4.0143,-5.1832,1.1276,0.0079,2400.0,2400.0,-1.1235,-1.8361,4.6496,95.4714 2019-06-03 15:42:15.180,139.0937,7160.7183,4.0143,-5.1832,1.1753,0.1448,2400.0,2400.0,-1.1498,-1.8361,4.6708,95.4714 2019-06-03 15:42:15.200,139.0849,7160.7183,4.0816,-5.1951,1.1941,0.1561,2400.0,2400.0,-1.144,-1.8391,4.6761,95.3835 2019-06-03 15:42:15.220,139.0937,7160.7183,4.0982,-5.2025,0.9774,0.0467,2400.0,2400.0,-1.1469,-1.842,4.6721,95.3525 2019-06-03 15:42:15.240,139.1462,7160.7456,4.0982,-5.2025,1.2958,0.1095,2400.0,2400.0,-1.1527,-1.8361,4.688,95.3525 2019-06-03 15:42:15.260,139.1549,7160.7183,4.0982,-5.2025,0.953,0.0783,2400.0,2400.0,-1.1674,-1.8331,4.6788,95.3525 2019-06-03 15:42:15.280,139.0937,7160.7456,4.146,-5.2136,1.2884,0.082,2400.0,2400.0,-1.179,-1.845,4.6894,95.2896 2019-06-03 15:42:15.300,139.0937,7160.7456,4.1893,-5.2302,1.3173,0.0963,2400.0,2400.0,-1.1644,-1.842,4.6854,95.2249 2019-06-03 15:42:15.320,139.1024,7160.8003,4.1893,-5.2302,0.9815,0.0897,2400.0,2400.0,-1.1498,-1.8331,4.6655,95.2249 2019-06-03 15:42:15.340,139.286,7160.8276,4.1893,-5.2302,1.2566,0.0881,2400.0,2400.0,-1.103,-1.842,4.6827,95.2249 2019-06-03 15:42:15.360,139.286,7160.855,4.2295,-5.2515,0.9179,0.0649,2400.0,2400.0,-1.0943,-1.8391,4.6616,95.1597 2019-06-03 15:42:15.380,139.2249,7160.8276,4.2295,-5.2515,1.2677,0.0524,2400.0,2400.0,-1.065,-1.8391,4.7145,95.1597 2019-06-03 15:42:15.400,139.2249,7160.855,4.2943,-5.2845,1.2725,0.0752,2400.0,2340.0,-1.0709,-1.842,4.6894,95.0583 2019-06-03 15:42:15.420,139.2249,7160.8276,4.3127,-5.2979,0.9937,0.1265,2400.0,2340.0,-1.03,-1.8212,4.6947,95.0242 2019-06-03 15:42:15.440,139.286,7160.855,4.3127,-5.2979,1.3217,0.0363,2400.0,2340.0,-1.0095,-1.842,4.7013,95.0242 2019-06-03 15:42:15.460,139.286,7160.7456,4.3127,-5.2979,0.9504,0.13,2400.0,2340.0,-0.9657,-1.842,4.6721,95.0242 2019-06-03 15:42:15.480,139.2161,7160.6909,4.3563,-5.3263,1.2796,-0.0087,2400.0,2340.0,-0.9452,-1.8391,4.6761,94.9551 2019-06-03 15:42:15.500,139.2336,7160.5815,4.3922,-5.3619,1.2818,0.019,2400.0,2340.0,-0.9043,-1.842,4.6708,94.887 2019-06-03 15:42:15.520,139.2249,7160.5542,4.3922,-5.3619,1.0229,0.1564,2400.0,2340.0,-0.8897,-1.842,4.6589,94.887 2019-06-03 15:42:15.540,139.286,7160.6089,4.3922,-5.3619,1.1841,0.0065,2400.0,2340.0,-0.8867,-1.8391,4.6814,94.887 2019-06-03 15:42:15.560,139.2685,7160.6089,4.4296,-5.3991,1.1046,0.1913,2400.0,2340.0,-0.878,-1.842,4.6867,94.8179 2019-06-03 15:42:15.580,139.2249,7160.6909,4.4296,-5.3991,1.3169,-0.0412,2400.0,2340.0,-0.8867,-1.842,4.7132,94.8179 2019-06-03 15:42:15.600,139.2249,7160.6909,4.4882,-5.4592,1.2392,-0.0306,2400.0,2340.0,-0.8751,-1.8361,4.7132,94.716 2019-06-03 15:42:15.620,139.2336,7160.6909,4.5111,-5.4772,0.9826,0.208,2400.0,2340.0,-0.8692,-1.8361,4.6841,94.6833 2019-06-03 15:42:15.640,139.2773,7160.7456,4.5111,-5.4772,1.1612,-0.0487,2400.0,2340.0,-0.8546,-1.8391,4.6973,94.6833 2019-06-03 15:42:15.660,139.286,7160.6909,4.5111,-5.4772,1.0632,0.1949,2400.0,2340.0,-0.8487,-1.8361,4.6563,94.6833 2019-06-03 15:42:15.680,139.2336,7160.7183,4.5437,-5.5214,1.2085,-0.0073,2400.0,2340.0,-0.84,-1.8301,4.6788,94.6181 2019-06-03 15:42:15.700,139.2336,7161.457,4.5754,-5.5686,1.2174,-0.001,2400.0,2340.0,-0.8517,-1.8301,4.6602,94.556 2019-06-03 15:42:15.720,139.2074,7162.3325,4.5754,-5.5686,1.0418,0.2275,2400.0,2340.0,-0.8517,-1.7943,4.6708,94.556 2019-06-03 15:42:15.740,139.1462,7163.5635,4.5754,-5.5686,1.1172,-0.0491,2400.0,2340.0,-0.8371,-1.8003,4.7225,94.556 2019-06-03 15:42:15.760,139.1375,7164.4116,4.609,-5.6151,1.2015,0.2226,2400.0,2340.0,-0.8429,-1.7973,4.6933,94.497 2019-06-03 15:42:15.780,139.1024,7165.6431,4.609,-5.6151,1.0909,-0.0404,2400.0,2340.0,-0.84,-1.7973,4.7145,94.497 2019-06-03 15:42:15.800,139.0937,7166.4912,4.6559,-5.6849,1.0776,-0.0199,2400.0,2340.0,-0.8283,-1.7973,4.696,94.4162 2019-06-03 15:42:15.820,139.0937,7167.3389,4.6754,-5.7064,1.1782,0.2067,2400.0,2340.0,-0.84,-1.7106,4.6695,94.3913 2019-06-03 15:42:15.840,139.1462,7168.625,4.6754,-5.7064,0.9867,0.015,2400.0,2340.0,-0.8458,-1.6867,4.6973,94.3913 2019-06-03 15:42:15.860,139.1549,7169.1172,4.6754,-5.7064,1.2518,0.1642,2400.0,2340.0,-0.8429,-1.6179,4.6695,94.3913 2019-06-03 15:42:15.880,139.0849,7168.9805,4.7039,-5.7575,0.9441,0.025,2400.0,2340.0,-0.84,-1.591,4.6947,94.3419 2019-06-03 15:42:15.900,139.1024,7168.105,4.7322,-5.8035,0.9131,0.0372,2400.0,2340.0,-0.8166,-1.594,4.7039,94.2964 2019-06-03 15:42:15.920,139.0674,7167.3389,4.7322,-5.8035,1.3054,0.1483,2400.0,2340.0,-0.802,-1.567,4.6947,94.2964 2019-06-03 15:42:15.940,138.9973,7166.1626,4.7322,-5.8035,1.0203,0.0397,2400.0,2340.0,-0.8166,-1.555,4.7092,94.2964 2019-06-03 15:42:15.960,138.9973,7165.3418,4.7646,-5.8439,1.325,0.117,2400.0,2340.0,-0.802,-1.549,4.6841,94.2549 2019-06-03 15:42:15.980,138.9447,7164.1382,4.7646,-5.8439,0.9049,0.0958,2400.0,2340.0,-0.8049,-1.543,4.6827,94.2549 2019-06-03 15:42:16.000,138.9535,7163.3447,4.8077,-5.9057,0.8927,0.1093,2400.0,2340.0,-0.7874,-1.546,4.6947,94.1985 2019-06-03 15:42:16.020,138.9622,7162.4692,4.8206,-5.9241,1.3949,0.0862,2400.0,2340.0,-0.7903,-1.549,4.6695,94.1823 2019-06-03 15:42:16.040,138.9973,7161.2656,4.8206,-5.9241,0.9171,0.1035,2400.0,2340.0,-0.7961,-1.549,4.7052,94.1823 2019-06-03 15:42:16.060,139.0236,7160.7729,4.8206,-5.9241,1.3487,0.0732,2400.0,2340.0,-0.7991,-1.546,4.6721,94.1823 2019-06-03 15:42:16.080,138.9535,7160.8003,4.8492,-5.9622,0.9086,0.1523,2400.0,2340.0,-0.7903,-1.546,4.7013,94.1526 2019-06-03 15:42:16.100,138.9447,7161.5117,4.8814,-5.9941,0.8949,0.1567,2400.0,2340.0,-0.7874,-1.549,4.7026,94.1263 2019-06-03 15:42:16.120,138.9359,7162.2778,4.8814,-5.9941,1.3709,0.0384,2400.0,2340.0,-0.7757,-1.546,4.688,94.1263 2019-06-03 15:42:16.140,138.8745,7163.5088,4.8814,-5.9941,0.9308,0.1778,2400.0,2340.0,-0.802,-1.552,4.6867,94.1263 2019-06-03 15:42:16.160,138.8657,7164.3296,4.9145,-6.0234,1.3147,-0.005,2400.0,2340.0,-0.7991,-1.549,4.6602,94.1036 2019-06-03 15:42:16.180,138.8129,7165.6431,4.9145,-6.0234,1.0003,0.2428,2400.0,2340.0,-0.8049,-1.552,4.6735,94.1036 2019-06-03 15:42:16.200,138.8129,7166.5186,4.9579,-6.0685,0.9267,0.2453,2400.0,2340.0,-0.7991,-1.555,4.6867,94.0748 2019-06-03 15:42:16.220,138.8129,7167.3115,4.9649,-6.0872,1.3373,-0.0634,2400.0,2340.0,-0.7991,-1.552,4.6814,94.066 2019-06-03 15:42:16.240,138.8745,7168.625,4.9649,-6.0872,1.0044,0.2223,2400.0,2340.0,-0.802,-1.546,4.7052,94.066 2019-06-03 15:42:16.260,138.8745,7169.1172,4.9649,-6.0872,1.2337,-0.0591,2400.0,2340.0,-0.8049,-1.549,4.6721,94.066 2019-06-03 15:42:16.280,138.8041,7169.0625,4.9979,-6.1079,0.9693,0.2561,2400.0,2340.0,-0.8078,-1.546,4.6788,94.052 2019-06-03 15:42:16.300,138.8217,7168.9805,5.0315,-6.1286,0.9412,0.2611,2400.0,2340.0,-0.8078,-1.549,4.7,94.0424 2019-06-03 15:42:16.320,138.7953,7169.0352,5.0315,-6.1286,1.2049,-0.0681,2400.0,2340.0,-0.7991,-1.552,4.6814,94.0424 2019-06-03 15:42:16.340,138.7337,7168.9805,5.0315,-6.1286,1.2692,0.2266,2400.0,2340.0,-0.8049,-1.552,4.6986,94.0424 2019-06-03 15:42:16.360,138.7337,7168.9531,5.0589,-6.1487,1.0366,-0.0455,2400.0,2340.0,-0.8078,-1.549,4.6496,94.0341 2019-06-03 15:42:16.380,138.6809,7168.9258,5.08,-6.1699,1.1742,0.2483,2400.0,2340.0,-0.802,-1.555,4.6721,94.0289 2019-06-03 15:42:16.400,138.672,7168.8984,5.1027,-6.1745,1.2248,0.2237,2340.0,2400.0,-0.802,-1.552,4.6894,94.0262 2019-06-03 15:42:16.420,138.6809,7168.8438,5.1091,-6.1883,0.983,-0.0492,2340.0,2400.0,-0.8107,-1.546,4.6801,94.0241 2019-06-03 15:42:16.440,138.7249,7168.8984,5.1091,-6.1883,1.3905,0.1922,2340.0,2400.0,-0.8254,-1.549,4.7066,94.0241 2019-06-03 15:42:16.460,138.7425,7168.8984,5.1091,-6.1883,0.9127,0.0195,2340.0,2400.0,-0.8166,-1.549,4.6894,94.0241 2019-06-03 15:42:16.480,138.6809,7168.8711,5.1442,-6.1954,1.2496,0.1747,2340.0,2400.0,-0.8195,-1.549,4.6735,94.0227 2019-06-03 15:42:16.500,138.6809,7168.8164,5.1746,-6.2075,1.4582,0.1619,2340.0,2400.0,-0.8049,-1.546,4.7092,94.0206 2019-06-03 15:42:16.520,138.6544,7168.8711,5.1746,-6.2075,0.764,0.0514,2340.0,2400.0,-0.8224,-1.546,4.6629,94.0206 2019-06-03 15:42:16.540,138.5927,7168.8984,5.1746,-6.2075,1.4907,0.0909,2340.0,2400.0,-0.8049,-1.546,4.6894,94.0206 2019-06-03 15:42:16.560,138.5927,7168.9805,5.1963,-6.2146,0.7954,0.0989,2340.0,2400.0,-0.8195,-1.543,4.6669,94.0223 2019-06-03 15:42:16.580,138.5397,7169.0078,5.1963,-6.2146,1.4582,0.0933,2340.0,2400.0,-0.8166,-1.528,4.6801,94.0223 2019-06-03 15:42:16.600,138.5397,7169.0078,5.2474,-6.216,1.4674,0.0861,2340.0,2400.0,-0.8575,-1.534,4.6841,94.0236 2019-06-03 15:42:16.620,138.5309,7169.0078,5.2613,-6.2153,0.7352,0.0952,2340.0,2400.0,-0.8692,-1.4921,4.6894,94.0254 2019-06-03 15:42:16.640,138.6015,7169.0625,5.2613,-6.2153,1.3624,0.0248,2340.0,2400.0,-0.8751,-1.4951,4.7145,94.0254 2019-06-03 15:42:16.660,138.6015,7169.0625,5.2613,-6.2153,0.8624,0.1701,2340.0,2400.0,-0.8546,-1.4981,4.7119,94.0254 2019-06-03 15:42:16.680,138.5397,7169.0352,5.2944,-6.212,1.3376,0.0117,2340.0,2400.0,-0.8224,-1.4771,4.7185,94.028 2019-06-03 15:42:16.700,138.5573,7168.9531,5.3175,-6.2048,1.3469,0.0022,2340.0,2400.0,-0.8283,-1.5071,4.7026,94.0324 2019-06-03 15:42:16.720,138.5397,7168.9258,5.3175,-6.2048,0.9404,0.205,2340.0,2400.0,-0.8078,-1.5011,4.651,94.0324 2019-06-03 15:42:16.740,138.5927,7168.9258,5.3175,-6.2048,1.2777,-0.0425,2340.0,2400.0,-0.8107,-1.5011,4.6642,94.0324 2019-06-03 15:42:16.760,138.6015,7168.9531,5.3433,-6.1961,1.0606,0.2103,2340.0,2400.0,-0.8166,-1.5041,4.6761,94.0341 2019-06-03 15:42:16.780,138.5485,7168.9531,5.3433,-6.1961,1.1679,-0.0239,2340.0,2400.0,-0.8224,-1.5041,4.6973,94.0341 2019-06-03 15:42:16.800,138.5309,7168.9258,5.3912,-6.1756,1.0728,-0.0301,2340.0,2400.0,-0.8224,-1.5041,4.7105,94.0372 2019-06-03 15:42:16.820,138.5485,7168.8984,5.4105,-6.1632,1.0277,0.2113,2340.0,2400.0,-0.8166,-1.5011,4.6774,94.0376 2019-06-03 15:42:16.840,138.6015,7168.8984,5.4105,-6.1632,1.2108,-0.029,2340.0,2400.0,-0.802,-1.5011,4.7092,94.0376 2019-06-03 15:42:16.860,138.6103,7168.9258,5.4105,-6.1632,1.105,0.2106,2340.0,2400.0,-0.7844,-1.5011,4.7,94.0376 2019-06-03 15:42:16.880,138.5397,7168.8984,5.4373,-6.1421,1.1649,-0.0414,2340.0,2400.0,-0.802,-1.5011,4.688,94.0385 2019-06-03 15:42:16.900,138.5485,7168.8438,5.4667,-6.1252,1.0114,-0.0454,2340.0,2400.0,-0.802,-1.5011,4.6933,94.0372 2019-06-03 15:42:16.920,138.522,7168.8164,5.4667,-6.1252,1.2629,0.2302,2340.0,2400.0,-0.7991,-1.4981,4.6655,94.0372 2019-06-03 15:42:16.940,138.4513,7168.8438,5.4667,-6.1252,1.1087,-0.0167,2340.0,2400.0,-0.8107,-1.5041,4.7052,94.0372 2019-06-03 15:42:16.960,138.4424,7168.8711,5.4993,-6.1005,1.2888,0.1834,2340.0,2400.0,-0.802,-1.5041,4.7039,94.0359 2019-06-03 15:42:16.980,138.3982,7168.8711,5.4993,-6.1005,0.9315,0.0131,2340.0,2400.0,-0.7991,-1.4921,4.696,94.0359 2019-06-03 15:42:17.000,138.3982,7168.9258,5.5472,-6.0641,0.95,-0.001,2340.0,2400.0,-0.8224,-1.5161,4.7158,94.0306 2019-06-03 15:42:17.020,138.3982,7168.8984,5.5672,-6.0473,1.3395,0.1456,2340.0,2400.0,-0.8107,-1.5041,4.6827,94.028 2019-06-03 15:42:17.040,138.4601,7168.9258,5.5672,-6.0473,0.9918,0.0759,2340.0,2400.0,-0.802,-1.4921,4.7026,94.028 2019-06-03 15:42:17.060,138.4601,7168.9258,5.5672,-6.0473,1.1904,0.09,2340.0,2400.0,-0.7991,-1.4951,4.6721,94.028 2019-06-03 15:42:17.080,138.3982,7168.9531,5.5935,-6.0239,0.919,0.0962,2340.0,2400.0,-0.7991,-1.4951,4.6563,94.0219 2019-06-03 15:42:17.100,138.407,7168.8711,5.6284,-5.9943,0.98,0.0849,2340.0,2400.0,-0.8283,-1.4981,4.6748,94.014 2019-06-03 15:42:17.120,138.3982,7168.8438,5.6284,-5.9943,1.3184,0.1056,2340.0,2400.0,-0.8049,-1.4951,4.6801,94.014 2019-06-03 15:42:17.140,138.4601,7168.8984,5.6284,-5.9943,0.9164,0.093,2340.0,2400.0,-0.802,-1.4981,4.7225,94.014 2019-06-03 15:42:17.160,138.4424,7168.9531,5.6626,-5.9603,1.3683,0.0486,2340.0,2400.0,-0.7844,-1.4981,4.7211,94.0044 2019-06-03 15:42:17.180,138.3982,7169.0078,5.6626,-5.9603,1.0473,0.1473,2340.0,2400.0,-0.7874,-1.4981,4.7013,94.0044 2019-06-03 15:42:17.200,138.3982,7169.0078,5.7085,-5.9145,1.017,0.1503,2340.0,2400.0,-0.802,-1.5011,4.7158,93.9869 2019-06-03 15:42:17.220,138.3982,7169.0078,5.7223,-5.8996,1.2407,0.0257,2340.0,2400.0,-0.7903,-1.4981,4.6761,93.9795 2019-06-03 15:42:17.240,138.4601,7168.9805,5.7223,-5.8996,1.0588,0.1936,2340.0,2400.0,-0.7903,-1.4981,4.6721,93.9795 2019-06-03 15:42:17.260,138.4601,7168.9805,5.7223,-5.8996,1.2093,-0.055,2340.0,2400.0,-0.7874,-1.5011,4.6748,93.9795 2019-06-03 15:42:17.280,138.3893,7168.9805,5.7552,-5.8658,1.2148,0.1728,2340.0,2400.0,-0.7844,-1.4951,4.6774,93.9629 2019-06-03 15:42:17.300,138.3982,7168.9258,5.7917,-5.827,1.206,0.1902,2340.0,2400.0,-0.8078,-1.4951,4.7105,93.9445 2019-06-03 15:42:17.320,138.3804,7168.8984,5.7917,-5.827,1.0798,0.0182,2340.0,2400.0,-0.7815,-1.4981,4.7119,93.9445 2019-06-03 15:42:17.340,138.4513,7168.8984,5.7917,-5.827,1.081,0.1915,2340.0,2400.0,-0.7961,-1.4981,4.7039,93.9445 2019-06-03 15:42:17.360,138.4513,7168.9258,5.8214,-5.7907,1.058,-0.0253,2340.0,2400.0,-0.7815,-1.4981,4.7172,93.9235 2019-06-03 15:42:17.380,138.3982,7168.8711,5.8214,-5.7907,1.2267,0.1493,2340.0,2400.0,-0.7932,-1.4981,4.6761,93.9235 2019-06-03 15:42:17.400,138.3982,7168.8711,5.8697,-5.7335,1.2318,0.1871,2400.0,2400.0,-0.7991,-1.4951,4.696,93.8885 2019-06-03 15:42:17.420,138.3982,7168.8711,5.8817,-5.7195,1.0129,0.0345,2400.0,2400.0,-0.802,-1.4981,4.6536,93.8746 2019-06-03 15:42:17.440,138.4513,7168.9531,5.8817,-5.7195,1.3276,0.1764,2400.0,2400.0,-0.7932,-1.5011,4.6616,93.8746 2019-06-03 15:42:17.460,138.469,7168.8984,5.8817,-5.7195,0.869,0.0177,2400.0,2400.0,-0.8049,-1.4951,4.6814,93.8746 2019-06-03 15:42:17.480,138.3982,7168.9531,5.9157,-5.6795,1.3195,0.1026,2400.0,2400.0,-0.8049,-1.4981,4.6814,93.8466 2019-06-03 15:42:17.500,138.407,7168.8984,5.9471,-5.6427,1.2862,0.1021,2400.0,2400.0,-0.8195,-1.4981,4.7105,93.8164 2019-06-03 15:42:17.520,138.3982,7168.8711,5.9471,-5.6427,0.8568,0.0949,2400.0,2400.0,-0.8049,-1.5011,4.6947,93.8164 2019-06-03 15:42:17.540,138.469,7168.8984,5.9471,-5.6427,1.3206,0.0859,2400.0,2400.0,-0.7903,-1.4981,4.696,93.8164 2019-06-03 15:42:17.560,138.4424,7168.9805,5.9717,-5.6069,0.983,0.104,2400.0,2400.0,-0.7844,-1.5011,4.6748,93.7845 2019-06-03 15:42:17.580,138.3893,7169.0352,5.9717,-5.6069,1.2433,0.0382,2400.0,2400.0,-0.7874,-1.4951,4.6377,93.7845 2019-06-03 15:42:17.600,138.407,7169.0078,6.0195,-5.5478,1.3117,0.0442,2400.0,2400.0,-0.8107,-1.4981,4.651,93.7303 2019-06-03 15:42:17.620,138.3982,7169.0352,6.0366,-5.5298,1.0177,0.1237,2400.0,2400.0,-0.8107,-1.4981,4.6496,93.7119 2019-06-03 15:42:17.640,138.4513,7169.0352,6.0366,-5.5298,1.2792,0.0468,2400.0,2400.0,-0.8254,-1.4921,4.6695,93.7119 2019-06-03 15:42:17.660,138.469,7168.9531,6.0366,-5.5298,1.0595,0.1652,2400.0,2400.0,-0.8312,-1.4981,4.6986,93.7119 2019-06-03 15:42:17.680,138.3893,7169.0625,6.0673,-5.4948,1.2744,0.0095,2400.0,2400.0,-0.8254,-1.4891,4.6695,93.6735 2019-06-03 15:42:17.700,138.3982,7169.8564,6.0917,-5.4613,1.2529,-0.0146,2400.0,2400.0,-0.8341,-1.4951,4.6841,93.6333 2019-06-03 15:42:17.720,138.3893,7170.7046,6.0917,-5.4613,1.0721,0.153,2400.0,2400.0,-0.8224,-1.4981,4.6496,93.6333 2019-06-03 15:42:17.740,138.3184,7172.0454,6.0917,-5.4613,1.1801,0.0149,2400.0,2400.0,-0.8254,-1.4921,4.6351,93.6333 2019-06-03 15:42:17.760,138.3096,7172.9209,6.1206,-5.4325,1.1124,0.1966,2400.0,2400.0,-0.8224,-1.5041,4.6563,93.5913 2019-06-03 15:42:17.780,138.2652,7174.207,6.1538,-5.3984,0.9944,-0.01,2400.0,2400.0,-0.8458,-1.4711,4.6245,93.5489 2019-06-03 15:42:17.800,138.2563,7175.083,6.1632,-5.3865,1.125,-0.0192,2400.0,2400.0,-0.8458,-1.4741,4.6589,93.5275 2019-06-03 15:42:17.820,138.2652,7175.9585,6.1851,-5.3693,1.0418,0.1946,2400.0,2400.0,-0.8429,-1.4921,4.6735,93.5039 2019-06-03 15:42:17.840,138.3184,7177.2446,6.1851,-5.3693,1.1475,-0.0221,2400.0,2400.0,-0.8371,-1.4891,4.6616,93.5039 2019-06-03 15:42:17.860,138.3184,7177.7373,6.1851,-5.3693,1.1453,0.2246,2400.0,2400.0,-0.8487,-1.5011,4.6642,93.5039 2019-06-03 15:42:17.880,138.2652,7177.6826,6.2105,-5.3427,1.0732,-0.0024,2400.0,2400.0,-0.8487,-1.4951,4.6112,93.4571 2019-06-03 15:42:17.900,138.2652,7177.5728,6.2332,-5.3189,1.0588,0.0043,2400.0,2400.0,-0.8458,-1.4921,4.6377,93.4099 2019-06-03 15:42:17.920,138.2563,7177.6001,6.2332,-5.3189,1.1557,0.1494,2400.0,2400.0,-0.8458,-1.4921,4.6364,93.4099 2019-06-03 15:42:17.940,138.3184,7177.6553,6.2332,-5.3189,1.0517,0.0252,2400.0,2400.0,-0.8429,-1.4951,4.6457,93.4099 2019-06-03 15:42:17.960,138.3096,7177.7373,6.2626,-5.2935,1.2418,0.1469,2400.0,2400.0,-0.8546,-1.4981,4.6576,93.3614 2019-06-03 15:42:17.980,138.2475,7177.7646,6.2626,-5.2935,1.0281,0.071,2400.0,2400.0,-0.8429,-1.4951,4.6483,93.3614 2019-06-03 15:42:18.000,138.2563,7177.792,6.301,-5.2564,1.0074,0.0393,2400.0,2400.0,-0.8604,-1.4981,4.6457,93.2897 2019-06-03 15:42:18.020,138.2563,7177.8193,6.3155,-5.2425,1.2071,0.1201,2400.0,2400.0,-0.8546,-1.4951,4.6483,93.2652 2019-06-03 15:42:18.040,138.3096,7177.792,6.3155,-5.2425,0.9674,0.0275,2400.0,2400.0,-0.8546,-1.4861,4.6324,93.2652 2019-06-03 15:42:18.060,138.3273,7177.8193,6.3155,-5.2425,1.314,0.1276,2400.0,2400.0,-0.8604,-1.4921,4.6285,93.2652 2019-06-03 15:42:18.080,138.2563,7177.8193,6.3387,-5.2213,0.8724,0.0899,2400.0,2400.0,-0.8458,-1.4891,4.6179,93.2175 2019-06-03 15:42:18.100,138.2652,7177.7373,6.3618,-5.1952,0.9286,0.1192,2400.0,2400.0,-0.8458,-1.4921,4.639,93.1682 2019-06-03 15:42:18.120,138.2386,7177.7646,6.3618,-5.1952,1.3247,0.0377,2400.0,2400.0,-0.8487,-1.4891,4.6443,93.1682 2019-06-03 15:42:18.140,138.1764,7177.8467,6.3618,-5.1952,0.9068,0.1266,2400.0,2400.0,-0.8487,-1.4891,4.6338,93.1682 2019-06-03 15:42:18.160,138.1675,7177.8467,6.3898,-5.1718,1.3254,0.0265,2400.0,2400.0,-0.8751,-1.4831,4.6192,93.1201 2019-06-03 15:42:18.180,138.1141,7177.874,6.3898,-5.1718,0.9264,0.1764,2400.0,2400.0,-0.8634,-1.4861,4.6007,93.1201 2019-06-03 15:42:18.200,138.1141,7177.9287,6.4217,-5.1402,0.9205,0.1889,2400.0,2400.0,-0.8546,-1.4891,4.6205,93.0488 2019-06-03 15:42:18.220,138.1319,7177.874,6.4298,-5.1309,1.2337,-0.0134,2400.0,2400.0,-0.8458,-1.4891,4.6285,93.0243 2019-06-03 15:42:18.240,138.1675,7177.8193,6.4298,-5.1309,0.9082,0.1711,2400.0,2400.0,-0.8429,-1.4831,4.6192,93.0243 2019-06-03 15:42:18.260,138.1764,7177.7646,6.4298,-5.1309,1.2337,-0.028,2400.0,2400.0,-0.8487,-1.4831,4.6364,93.0243 2019-06-03 15:42:18.280,138.1141,7177.7646,6.453,-5.1113,1.0606,0.2451,2400.0,2400.0,-0.8575,-1.4831,4.5914,92.9767 2019-06-03 15:42:18.300,138.123,7177.6553,6.4799,-5.0901,0.9841,0.2444,2400.0,2400.0,-0.8458,-1.4831,4.6112,92.9308 2019-06-03 15:42:18.320,138.1141,7177.6279,6.4799,-5.0901,1.2023,-0.075,2400.0,2400.0,-0.8634,-1.4831,4.6046,92.9308 2019-06-03 15:42:18.340,138.1853,7177.6279,6.4799,-5.0901,1.1198,0.229,2400.0,2400.0,-0.8517,-1.4831,4.6007,92.9308 2019-06-03 15:42:18.360,138.1675,7177.6553,6.4994,-5.074,1.0425,-0.0568,2400.0,2400.0,-0.8809,-1.4831,4.6073,92.8849 2019-06-03 15:42:18.380,138.1141,7177.71,6.4994,-5.074,1.2651,0.2266,2400.0,2400.0,-0.8487,-1.4801,4.602,92.8849 2019-06-03 15:42:18.400,138.123,7177.7646,6.5303,-5.048,1.1908,0.203,2340.0,2400.0,-0.8458,-1.4771,4.5967,92.8193 2019-06-03 15:42:18.420,138.123,7177.8193,6.535,-5.0461,0.8853,-0.0072,2340.0,2400.0,-0.84,-1.4801,4.602,92.7962 2019-06-03 15:42:18.440,138.1764,7177.874,6.535,-5.0461,1.2692,0.1604,2340.0,2400.0,-0.8458,-1.4801,4.5715,92.7962 2019-06-03 15:42:18.460,138.1764,7177.8467,6.535,-5.0461,0.8302,0.0375,2340.0,2400.0,-0.8604,-1.4831,4.602,92.7962 2019-06-03 15:42:18.480,138.1141,7177.792,6.5597,-5.0278,1.3617,0.1236,2340.0,2400.0,-0.8341,-1.4831,4.602,92.7542 2019-06-03 15:42:18.500,138.123,7177.71,6.5765,-5.0129,1.4885,0.114,2340.0,2400.0,-0.8371,-1.4681,4.5954,92.7131 2019-06-03 15:42:18.520,138.0874,7177.71,6.5765,-5.0129,0.7396,0.1086,2340.0,2400.0,-0.8487,-1.4861,4.598,92.7131 2019-06-03 15:42:18.540,137.8913,7177.71,6.5765,-5.0129,1.4733,0.0619,2340.0,2400.0,-0.8663,-1.4681,4.5649,92.7131 2019-06-03 15:42:18.560,137.8913,7177.792,6.5897,-5.003,0.8435,0.1656,2340.0,2400.0,-0.878,-1.4651,4.5914,92.6738 2019-06-03 15:42:18.580,137.8466,7177.7646,6.5897,-5.003,1.2932,0.0186,2340.0,2400.0,-0.8721,-1.4651,4.5649,92.6738 2019-06-03 15:42:18.600,137.8466,7177.71,6.6199,-4.9834,1.4523,-0.019,2340.0,2400.0,-0.8458,-1.4591,4.6007,92.6196 2019-06-03 15:42:18.620,137.8556,7177.6826,6.6343,-4.9739,0.8879,0.2045,2340.0,2400.0,-0.8546,-1.4681,4.5954,92.6021 2019-06-03 15:42:18.640,137.9092,7177.6826,6.6343,-4.9739,1.3631,-0.0298,2340.0,2400.0,-0.8341,-1.4681,4.5795,92.6021 2019-06-03 15:42:18.660,137.9002,7177.6553,6.6343,-4.9739,0.9659,0.285,2340.0,2400.0,-0.8487,-1.4621,4.5821,92.6021 2019-06-03 15:42:18.680,137.8466,7177.7373,6.6509,-4.9602,1.1945,-0.0749,2340.0,2400.0,-0.8487,-1.4621,4.5556,92.5688 2019-06-03 15:42:18.700,137.8466,7178.4761,6.6616,-4.9527,1.2529,-0.1018,2340.0,2400.0,-0.8575,-1.4561,4.5649,92.5382 2019-06-03 15:42:18.720,137.8288,7179.2974,6.6616,-4.9527,1.061,0.2729,2340.0,2400.0,-0.8721,-1.4621,4.5795,92.5382 2019-06-03 15:42:18.740,137.7662,7180.5288,6.6616,-4.9527,1.0991,-0.0638,2340.0,2400.0,-0.8575,-1.4561,4.5636,92.5382 2019-06-03 15:42:18.760,137.7572,7181.4048,6.6815,-4.9409,1.1191,0.2694,2340.0,2400.0,-0.8487,-1.4531,4.594,92.5103 2019-06-03 15:42:18.780,137.7035,7182.8008,6.6815,-4.9409,0.9367,-0.0633,2340.0,2400.0,-0.8458,-1.4561,4.5649,92.5103 2019-06-03 15:42:18.800,137.7035,7183.7314,6.7026,-4.9284,1.0144,-0.0637,2340.0,2400.0,-0.8429,-1.4531,4.5662,92.4705 2019-06-03 15:42:18.820,137.7035,7184.6069,6.7207,-4.9187,1.2681,0.2305,2340.0,2400.0,-0.8604,-1.4591,4.5702,92.4587 2019-06-03 15:42:18.840,137.7483,7185.9209,6.7207,-4.9187,0.9401,-0.007,2340.0,2400.0,-0.8575,-1.4591,4.5609,92.4587 2019-06-03 15:42:18.860,137.7751,7186.4136,6.7207,-4.9187,1.3679,0.1653,2340.0,2400.0,-0.8634,-1.4591,4.5861,92.4587 2019-06-03 15:42:18.880,137.7125,7186.3862,6.7284,-4.9123,0.7366,0.0416,2340.0,2400.0,-0.8487,-1.4561,4.5676,92.4342 2019-06-03 15:42:18.900,137.7125,7186.3315,6.7446,-4.904,0.8687,0.0187,2340.0,2400.0,-0.8604,-1.4321,4.553,92.4106 2019-06-03 15:42:18.920,137.6945,7186.3315,6.7446,-4.904,1.3513,0.1455,2340.0,2400.0,-0.8604,-1.4681,4.5649,92.4106 2019-06-03 15:42:18.940,137.6049,7186.3589,6.7446,-4.904,0.7914,0.0926,2340.0,2400.0,-0.8546,-1.4621,4.5477,92.4106 2019-06-03 15:42:18.960,137.6049,7186.3862,6.767,-4.8902,1.3857,0.0578,2340.0,2400.0,-0.8517,-1.4621,4.5834,92.3896 2019-06-03 15:42:18.980,137.56,7186.4683,6.767,-4.8902,0.7914,0.1318,2340.0,2400.0,-0.8458,-1.4651,4.5702,92.3896 2019-06-03 15:42:19.000,137.56,7186.4956,6.7859,-4.8747,0.6852,0.1569,2340.0,2400.0,-0.8487,-1.4201,4.5517,92.3599 2019-06-03 15:42:19.020,137.578,7186.4136,6.793,-4.8683,1.2762,-0.0326,2340.0,2400.0,-0.8604,-1.4591,4.5636,92.3512 2019-06-03 15:42:19.040,137.6228,7186.3315,6.793,-4.8683,0.818,0.2397,2340.0,2400.0,-0.84,-1.4591,4.557,92.3512 2019-06-03 15:42:19.060,137.6228,7186.3589,6.793,-4.8683,1.2341,-0.0771,2340.0,2400.0,-0.8429,-1.4531,4.5742,92.3512 2019-06-03 15:42:19.080,137.569,7186.3589,6.8073,-4.8584,0.8665,0.2355,2340.0,2400.0,-0.8224,-1.4561,4.5649,92.3328 2019-06-03 15:42:19.100,137.56,7186.2769,6.8306,-4.8412,0.9948,0.2405,2340.0,2400.0,-0.84,-1.4561,4.5424,92.3166 2019-06-03 15:42:19.120,137.5331,7186.2495,6.8306,-4.8412,1.0373,-0.0588,2340.0,2400.0,-0.8487,-1.4531,4.5662,92.3166 2019-06-03 15:42:19.140,137.4881,7186.2495,6.8306,-4.8412,1.1205,0.2556,2340.0,2400.0,-0.8429,-1.4501,4.557,92.3166 2019-06-03 15:42:19.160,137.4702,7186.1948,6.8461,-4.8303,1.0432,-0.0687,2340.0,2400.0,-0.8341,-1.4411,4.5795,92.3013 2019-06-03 15:42:19.180,137.4252,7186.1948,6.8534,-4.8212,1.1098,0.2205,2340.0,2400.0,-0.8137,-1.4381,4.5689,92.2878 2019-06-03 15:42:19.200,137.4252,7186.2495,6.8668,-4.8114,1.2222,0.2108,2340.0,2400.0,-0.8341,-1.4321,4.5305,92.2816 2019-06-03 15:42:19.220,137.4252,7186.3042,6.8686,-4.8104,0.9142,0.0084,2340.0,2400.0,-0.8283,-1.4321,4.5636,92.2747 2019-06-03 15:42:19.240,137.4881,7186.3589,6.8686,-4.8104,1.3487,0.1713,2340.0,2400.0,-0.8224,-1.4261,4.5358,92.2747 2019-06-03 15:42:19.260,137.4791,7186.3589,6.8686,-4.8104,0.8347,0.0342,2340.0,2400.0,-0.8078,-1.4291,4.5623,92.2747 2019-06-03 15:42:19.280,137.4252,7186.3589,6.8879,-4.7949,1.2733,0.1189,2340.0,2400.0,-0.8078,-1.4321,4.5437,92.2633 2019-06-03 15:42:19.300,137.4342,7186.2495,6.9015,-4.7817,1.4171,0.1011,2340.0,2400.0,-0.8078,-1.4201,4.5225,92.2537 2019-06-03 15:42:19.320,137.4072,7186.2769,6.9015,-4.7817,0.7966,0.1013,2340.0,2400.0,-0.8254,-1.4321,4.5397,92.2537 2019-06-03 15:42:19.340,137.3351,7186.3589,6.9015,-4.7817,1.3964,0.0515,2340.0,2400.0,-0.8137,-1.4291,4.5265,92.2537 2019-06-03 15:42:19.360,137.3351,7186.4136,6.9112,-4.7729,0.7433,0.1534,2340.0,2400.0,-0.8166,-1.4171,4.5292,92.2454 2019-06-03 15:42:19.380,137.281,7186.4136,6.9112,-4.7729,1.3883,-0.011,2340.0,2400.0,-0.8137,-1.4231,4.5384,92.2454 2019-06-03 15:42:19.400,137.272,7186.4409,6.9356,-4.7491,1.3047,-0.0284,2400.0,2340.0,-0.8107,-1.4171,4.5066,92.2366 2019-06-03 15:42:19.420,137.3081,7186.3042,6.9455,-4.7415,0.9807,0.2574,2400.0,2340.0,-0.802,-1.4201,4.5199,92.2349 2019-06-03 15:42:19.440,137.3531,7186.3042,6.9455,-4.7415,1.1283,-0.0756,2400.0,2340.0,-0.8078,-1.4201,4.4841,92.2349 2019-06-03 15:42:19.460,137.3441,7186.3042,6.9455,-4.7415,0.99,0.2607,2400.0,2340.0,-0.7991,-1.4171,4.4961,92.2349 2019-06-03 15:42:19.480,137.281,7186.3315,6.9573,-4.7287,1.0403,-0.097,2400.0,2340.0,-0.8078,-1.4201,4.4908,92.2292 2019-06-03 15:42:19.500,137.281,7187.1255,6.9665,-4.7199,1.0684,-0.0453,2400.0,2340.0,-0.7991,-1.4231,4.4802,92.2266 2019-06-03 15:42:19.520,137.254,7187.9741,6.9665,-4.7199,1.2034,0.2267,2400.0,2340.0,-0.8078,-1.4201,4.4762,92.2266 2019-06-03 15:42:19.540,137.1908,7189.2881,6.9665,-4.7199,0.8417,-0.0387,2400.0,2340.0,-0.8049,-1.4201,4.4497,92.2266 2019-06-03 15:42:19.560,137.1998,7190.1919,6.9836,-4.7039,1.301,0.2021,2400.0,2340.0,-0.8137,-1.4201,4.4431,92.2244 2019-06-03 15:42:19.580,137.1546,7191.5332,6.9836,-4.7039,0.7241,-0.0208,2400.0,2340.0,-0.8137,-1.4201,4.4418,92.2244 2019-06-03 15:42:19.600,137.1456,7192.3818,6.9988,-4.6896,0.8213,0.0079,2400.0,2340.0,-0.8107,-1.4171,4.4153,92.2226 2019-06-03 15:42:19.620,137.1365,7193.2852,7.0075,-4.6763,1.3583,0.1505,2400.0,2340.0,-0.8137,-1.4171,4.4272,92.2235 2019-06-03 15:42:19.640,137.1908,7194.6543,7.0075,-4.6763,0.8102,0.0344,2400.0,2340.0,-0.8137,-1.4171,4.4087,92.2235 2019-06-03 15:42:19.660,137.1998,7195.1196,7.0075,-4.6763,1.3154,0.1177,2400.0,2340.0,-0.8283,-1.4171,4.3875,92.2235 2019-06-03 15:42:19.680,137.1365,7195.0923,7.0131,-4.6637,0.7307,0.0787,2400.0,2340.0,-0.8166,-1.4171,4.3928,92.2253 2019-06-03 15:42:19.700,137.1546,7194.9551,7.0239,-4.6464,0.7825,0.1083,2400.0,2340.0,-0.7961,-1.4141,4.3716,92.2261 2019-06-03 15:42:19.720,137.1365,7194.9277,7.0239,-4.6464,1.3398,0.0296,2400.0,2340.0,-0.7932,-1.4171,4.3822,92.2261 2019-06-03 15:42:19.740,137.0641,7194.9277,7.0239,-4.6464,0.7844,0.1463,2400.0,2340.0,-0.802,-1.4111,4.3822,92.2261 2019-06-03 15:42:19.760,137.046,7195.0098,7.035,-4.6273,1.2296,-0.0047,2400.0,2340.0,-0.8166,-1.3781,4.3517,92.2279 2019-06-03 15:42:19.780,137.0007,7195.0371,7.035,-4.6273,1.0307,0.1914,2400.0,2340.0,-0.84,-1.3871,4.3491,92.2279 2019-06-03 15:42:19.800,136.9917,7195.0649,7.0377,-4.5928,0.9508,0.1832,2400.0,2340.0,-0.8254,-1.3811,4.3491,92.2336 2019-06-03 15:42:19.820,137.0007,7195.0649,7.0344,-4.5868,1.0747,-0.0318,2400.0,2340.0,-0.8224,-1.3841,4.3517,92.234 2019-06-03 15:42:19.840,137.0641,7194.9277,7.0344,-4.5868,1.0584,0.1995,2400.0,2340.0,-0.8107,-1.4021,4.3478,92.234 2019-06-03 15:42:19.860,137.0641,7194.873,7.0344,-4.5868,0.9648,-0.0678,2400.0,2340.0,-0.7961,-1.3991,4.3332,92.234 2019-06-03 15:42:19.880,137.0007,7194.873,7.0372,-4.5616,1.2544,0.2179,2400.0,2340.0,-0.8049,-1.3961,4.3332,92.2379 2019-06-03 15:42:19.900,137.0007,7194.873,7.0417,-4.5345,1.2019,0.1886,2400.0,2340.0,-0.8107,-1.3961,4.3253,92.2432 2019-06-03 15:42:19.920,136.9826,7194.873,7.0417,-4.5345,0.8816,-0.0199,2400.0,2340.0,-0.802,-1.3901,4.3464,92.2432 2019-06-03 15:42:19.940,136.91,7194.8457,7.0417,-4.5345,1.2984,0.1585,2400.0,2340.0,-0.8254,-1.3931,4.3306,92.2432 2019-06-03 15:42:19.960,136.91,7194.9004,7.0377,-4.5111,0.8687,0.0311,2400.0,2340.0,-0.8137,-1.3931,4.32,92.2476 2019-06-03 15:42:19.980,136.8646,7194.8184,7.0377,-4.5111,1.1801,0.1366,2400.0,2340.0,-0.8078,-1.3931,4.3213,92.2476 2019-06-03 15:42:20.000,136.8646,7194.8457,7.0376,-4.4738,1.3628,0.0952,2400.0,2340.0,-0.8049,-1.3961,4.3067,92.2541 2019-06-03 15:42:20.020,136.8646,7194.9551,7.0354,-4.4606,0.8062,0.1061,2400.0,2340.0,-0.8078,-1.3931,4.3041,92.2563 2019-06-03 15:42:20.040,136.91,7195.0371,7.0354,-4.4606,1.274,0.0526,2400.0,2340.0,-0.8049,-1.3931,4.3253,92.2563 2019-06-03 15:42:20.060,136.9191,7195.0371,7.0354,-4.4606,0.8084,0.1209,2400.0,2340.0,-0.8224,-1.3961,4.2948,92.2563 2019-06-03 15:42:20.080,136.8465,7195.147,7.0345,-4.4332,1.2677,0.0364,2400.0,2340.0,-0.8254,-1.3961,4.308,92.2607 2019-06-03 15:42:20.100,136.8646,7195.9136,7.0263,-4.408,1.1841,-0.0084,2400.0,2340.0,-0.8224,-1.3931,4.2855,92.2633 2019-06-03 15:42:20.120,136.8374,7196.6528,7.0263,-4.408,0.9282,0.1766,2400.0,2340.0,-0.8049,-1.3901,4.3133,92.2633 2019-06-03 15:42:20.140,136.7737,7197.9399,7.0263,-4.408,1.0732,-0.0349,2400.0,2340.0,-0.8166,-1.3931,4.3001,92.2633 2019-06-03 15:42:20.160,136.7646,7198.8438,7.0209,-4.3844,1.0173,0.1648,2400.0,2340.0,-0.7991,-1.3901,4.2975,92.2646 2019-06-03 15:42:20.180,136.71,7200.103,7.0209,-4.3844,1.0665,0.014,2400.0,2340.0,-0.8049,-1.3931,4.2975,92.2646 2019-06-03 15:42:20.200,136.71,7200.9248,7.0137,-4.3414,0.9992,-0.0049,2400.0,2340.0,-0.7991,-1.3931,4.2922,92.2677 2019-06-03 15:42:20.220,136.7191,7201.7461,7.0171,-4.3241,1.115,0.1685,2400.0,2340.0,-0.8049,-1.3871,4.3001,92.2685 2019-06-03 15:42:20.240,136.7646,7202.9785,7.0171,-4.3241,0.7744,-0.0231,2400.0,2340.0,-0.8195,-1.3931,4.2948,92.2685 2019-06-03 15:42:20.260,136.7828,7203.3618,7.0171,-4.3241,1.1616,0.1565,2400.0,2340.0,-0.8078,-1.3871,4.2802,92.2685 2019-06-03 15:42:20.280,136.7191,7203.3071,7.0101,-4.2966,0.8498,-0.0009,2400.0,2340.0,-0.8195,-1.3931,4.2855,92.2677 2019-06-03 15:42:20.300,136.7191,7203.2246,7.0062,-4.2664,0.8446,0.01,2400.0,2340.0,-0.7991,-1.3931,4.2948,92.2655 2019-06-03 15:42:20.320,136.6827,7203.1973,7.0062,-4.2664,1.3003,0.136,2400.0,2340.0,-0.8166,-1.3871,4.2908,92.2655 2019-06-03 15:42:20.340,136.4819,7203.1699,7.0062,-4.2664,0.8158,0.0402,2400.0,2340.0,-0.8341,-1.4051,4.2908,92.2655 2019-06-03 15:42:20.360,136.4728,7203.2246,7.0056,-4.2303,1.2189,0.1192,2400.0,2340.0,-0.8254,-1.4021,4.2842,92.2637 2019-06-03 15:42:20.380,136.4179,7203.252,7.0056,-4.2303,0.7311,0.0937,2400.0,2340.0,-0.8312,-1.3961,4.308,92.2637 2019-06-03 15:42:20.400,136.4362,7203.1699,6.9977,-4.1855,0.7832,0.087,2340.0,2400.0,-0.7991,-1.3991,4.3173,92.2563 2019-06-03 15:42:20.420,136.4362,7203.0879,6.997,-4.1655,1.1834,0.0208,2340.0,2400.0,-0.8224,-1.4051,4.2908,92.2537 2019-06-03 15:42:20.440,136.4819,7203.1152,6.997,-4.1655,0.9308,0.1541,2340.0,2400.0,-0.8049,-1.3991,4.3147,92.2537 2019-06-03 15:42:20.460,136.5002,7203.1152,6.997,-4.1655,1.1309,0.0226,2340.0,2400.0,-0.7991,-1.3931,4.312,92.2537 2019-06-03 15:42:20.480,136.4179,7203.1152,6.9947,-4.1283,0.9678,0.1976,2340.0,2400.0,-0.8049,-1.3991,4.3319,92.2484 2019-06-03 15:42:20.500,136.427,7203.0605,6.9959,-4.0907,1.0122,0.1866,2340.0,2400.0,-0.8049,-1.3991,4.3186,92.2414 2019-06-03 15:42:20.520,136.4088,7203.0879,6.9959,-4.0907,1.1557,-0.0409,2340.0,2400.0,-0.8195,-1.3781,4.3041,92.2414 2019-06-03 15:42:20.540,136.363,7202.9512,6.9959,-4.0907,1.0026,0.2137,2340.0,2400.0,-0.8341,-1.3991,4.3306,92.2414 2019-06-03 15:42:20.560,136.3447,7202.9512,6.9952,-4.047,0.9678,-0.0168,2340.0,2400.0,-0.8341,-1.4021,4.312,92.2353 2019-06-03 15:42:20.580,136.2896,7203.0332,6.9952,-4.047,1.0906,0.1856,2340.0,2400.0,-0.8078,-1.3991,4.3438,92.2353 2019-06-03 15:42:20.600,136.2896,7203.0332,6.991,-3.9911,1.0462,0.1788,2340.0,2400.0,-0.8049,-1.3991,4.3292,92.2274 2019-06-03 15:42:20.620,136.2896,7203.0059,6.9861,-3.9742,0.8957,-0.0003,2340.0,2400.0,-0.7874,-1.3991,4.3239,92.2235 2019-06-03 15:42:20.640,136.3447,7203.0879,6.9861,-3.9742,1.1401,0.1454,2340.0,2400.0,-0.802,-1.4021,4.3279,92.2235 2019-06-03 15:42:20.660,136.3447,7203.0879,6.9861,-3.9742,0.8779,0.049,2340.0,2400.0,-0.7961,-1.3931,4.3266,92.2235 2019-06-03 15:42:20.680,136.2988,7203.0059,6.9899,-3.9327,1.2037,0.1105,2340.0,2400.0,-0.8107,-1.3931,4.3398,92.2152 2019-06-03 15:42:20.700,136.2988,7202.9512,6.9915,-3.8922,1.2422,0.1027,2340.0,2400.0,-0.8137,-1.3991,4.3451,92.2073 2019-06-03 15:42:20.720,136.2805,7203.0059,6.9915,-3.8922,0.865,0.0861,2340.0,2400.0,-0.8078,-1.3901,4.3213,92.2073 2019-06-03 15:42:20.740,136.2071,7203.0605,6.9915,-3.8922,1.1945,0.1051,2340.0,2400.0,-0.8166,-1.3931,4.3398,92.2073 2019-06-03 15:42:20.760,136.1979,7203.1426,6.9883,-3.855,0.8321,0.0987,2340.0,2400.0,-0.8137,-1.3931,4.3213,92.196 2019-06-03 15:42:20.780,136.1427,7203.1699,6.9883,-3.855,1.1568,0.0434,2340.0,2400.0,-0.8078,-1.3901,4.3478,92.196 2019-06-03 15:42:20.800,136.1335,7203.1699,6.9906,-3.7974,1.1035,0.0025,2340.0,2400.0,-0.8137,-1.3871,4.3438,92.1767 2019-06-03 15:42:20.820,136.1611,7203.0332,6.9917,-3.7754,0.9918,0.1499,2340.0,2400.0,-0.8049,-1.3931,4.3411,92.1702 2019-06-03 15:42:20.840,136.2071,7203.0332,6.9917,-3.7754,1.0824,0.0082,2340.0,2400.0,-0.8195,-1.3901,4.3504,92.1702 2019-06-03 15:42:20.860,136.2162,7203.0605,6.9917,-3.7754,1.0233,0.1701,2340.0,2400.0,-0.8166,-1.3901,4.361,92.1702 2019-06-03 15:42:20.880,136.1427,7203.0879,6.991,-3.7381,0.9016,-0.0102,2340.0,2400.0,-0.8283,-1.3931,4.3835,92.1553 2019-06-03 15:42:20.900,136.1427,7203.8271,6.9894,-3.704,0.9671,-0.0235,2340.0,2400.0,-0.8312,-1.4081,4.3862,92.1387 2019-06-03 15:42:20.920,136.1427,7204.6763,6.9894,-3.704,1.0277,0.1936,2340.0,2400.0,-0.8107,-1.375,4.3848,92.1387 2019-06-03 15:42:20.940,136.2071,7206.0186,6.9894,-3.704,0.9249,0.0033,2340.0,2400.0,-0.8107,-1.3931,4.3981,92.1387 2019-06-03 15:42:20.960,136.2071,7206.8677,6.9926,-3.6668,1.1605,0.1581,2340.0,2400.0,-0.802,-1.3991,4.4034,92.1217 2019-06-03 15:42:20.980,136.1519,7208.2642,6.9926,-3.6668,0.9049,0.0472,2340.0,2400.0,-0.802,-1.3871,4.4365,92.1217 2019-06-03 15:42:21.000,136.1427,7209.1953,6.9966,-3.6191,0.7596,0.0271,2340.0,2400.0,-0.8312,-1.3961,4.4603,92.0932 2019-06-03 15:42:21.020,136.1427,7210.0171,7.0,-3.5974,1.1679,0.124,2340.0,2400.0,-0.8458,-1.3871,4.4881,92.0828 2019-06-03 15:42:21.040,136.1979,7211.4414,7.0,-3.5974,0.8498,0.0975,2340.0,2400.0,-0.8721,-1.3961,4.5278,92.0828 2019-06-03 15:42:21.060,136.1979,7211.9619,7.0,-3.5974,1.1424,0.0497,2340.0,2400.0,-0.8517,-1.3961,4.5742,92.0828 2019-06-03 15:42:21.080,136.1335,7211.9072,7.0036,-3.5678,0.9027,0.1347,2340.0,2400.0,-0.8546,-1.3961,4.6298,92.0618 2019-06-03 15:42:21.100,136.1519,7211.8247,7.0171,-3.5288,0.8838,0.1524,2340.0,2400.0,-0.8575,-1.3931,4.6735,92.0395 2019-06-03 15:42:21.120,136.1243,7211.8799,7.0171,-3.5288,1.135,0.0182,2340.0,2400.0,-0.8663,-1.3961,4.6841,92.0395 2019-06-03 15:42:21.140,136.0599,7211.9072,7.0171,-3.5288,0.9116,0.2024,2340.0,2400.0,-0.8692,-1.3931,4.7383,92.0395 2019-06-03 15:42:21.160,136.0507,7211.9346,7.0345,-3.4911,0.9401,0.0061,2340.0,2400.0,-0.8634,-1.3901,4.7569,92.0172 2019-06-03 15:42:21.180,135.9955,7211.9893,7.0345,-3.4911,1.0835,0.1771,2340.0,2400.0,-0.8634,-1.3961,4.7767,92.0172 2019-06-03 15:42:21.200,136.0047,7211.9893,7.0654,-3.4361,1.0303,0.1663,2340.0,2400.0,-0.8663,-1.3961,4.8072,91.98 2019-06-03 15:42:21.220,136.0047,7211.9346,7.0759,-3.4218,0.9308,0.025,2340.0,2400.0,-0.8663,-1.3961,4.8072,91.9673 2019-06-03 15:42:21.240,136.0507,7211.9346,7.0759,-3.4218,1.1812,0.1657,2340.0,2400.0,-0.8692,-1.3961,4.8297,91.9673 2019-06-03 15:42:21.260,136.0599,7211.9346,7.0759,-3.4218,0.798,0.0632,2340.0,2400.0,-0.8838,-1.3961,4.8284,91.9673 2019-06-03 15:42:21.280,136.0047,7211.9619,7.1101,-3.3898,1.166,0.1171,2340.0,2400.0,-0.8867,-1.3961,4.8376,91.9411 2019-06-03 15:42:21.300,135.9955,7211.9072,7.1492,-3.3555,1.1938,0.1252,2340.0,2400.0,-0.9131,-1.4021,4.8549,91.9145 2019-06-03 15:42:21.320,135.9678,7211.9072,7.1492,-3.3555,0.8239,0.0952,2340.0,2400.0,-0.8897,-1.3931,4.8668,91.9145 2019-06-03 15:42:21.340,135.7646,7211.9346,7.1492,-3.3555,1.2278,0.0753,2340.0,2400.0,-0.8897,-1.3961,4.8933,91.9145 2019-06-03 15:42:21.360,135.7554,7211.8799,7.1865,-3.3258,0.7984,0.1208,2340.0,2400.0,-0.8838,-1.3961,4.88,91.8878 2019-06-03 15:42:21.380,135.7091,7211.9619,7.1865,-3.3258,1.2245,0.0375,2340.0,2400.0,-0.8721,-1.3961,4.8853,91.8878 2019-06-03 15:42:21.400,135.7091,7211.9893,7.262,-3.2842,1.3095,0.0735,2400.0,2340.0,-0.8838,-1.3991,4.8959,91.8454 2019-06-03 15:42:21.420,135.7091,7211.9619,7.2899,-3.2694,0.8332,0.1443,2400.0,2340.0,-0.8809,-1.3931,4.8959,91.8305 2019-06-03 15:42:21.440,135.7554,7211.9893,7.2899,-3.2694,1.2326,0.0055,2400.0,2340.0,-0.8955,-1.3991,4.9158,91.8305 2019-06-03 15:42:21.460,135.7739,7211.9619,7.2899,-3.2694,1.0395,0.1882,2400.0,2340.0,-0.8838,-1.4021,4.9436,91.8305 2019-06-03 15:42:21.480,135.7091,7212.0166,7.345,-3.2461,1.041,-0.0299,2400.0,2340.0,-0.8838,-1.3961,4.9356,91.8012 2019-06-03 15:42:21.500,135.7091,7212.729,7.3966,-3.2241,1.0255,-0.001,2400.0,2340.0,-0.8692,-1.4021,4.9661,91.7706 2019-06-03 15:42:21.520,135.6906,7213.5508,7.3966,-3.2241,1.1342,0.1693,2400.0,2340.0,-0.8721,-1.4141,4.9303,91.7706 2019-06-03 15:42:21.540,135.6071,7214.8657,7.3966,-3.2241,0.8539,0.0289,2400.0,2340.0,-0.8663,-1.4021,4.925,91.7706 2019-06-03 15:42:21.560,135.6071,7215.7148,7.456,-3.2055,1.22,0.1409,2400.0,2340.0,-0.8867,-1.4021,4.9224,91.7409 2019-06-03 15:42:21.580,135.5515,7217.0298,7.456,-3.2055,0.9471,0.0435,2400.0,2340.0,-0.9072,-1.4021,4.8893,91.7409 2019-06-03 15:42:21.600,135.5422,7217.9067,7.5493,-3.1792,0.8787,0.0513,2400.0,2340.0,-0.8984,-1.4021,4.9237,91.6976 2019-06-03 15:42:21.620,135.57,7218.7559,7.5836,-3.171,1.3469,0.1083,2400.0,2340.0,-0.8984,-1.4021,4.9224,91.6836 2019-06-03 15:42:21.640,135.6164,7220.0435,7.5836,-3.171,0.8905,0.1118,2400.0,2340.0,-0.8663,-1.4021,4.9542,91.6836 2019-06-03 15:42:21.660,135.6164,7220.4814,7.5836,-3.171,1.2799,0.0559,2400.0,2340.0,-0.8838,-1.3991,4.978,91.6836 2019-06-03 15:42:21.680,135.5608,7220.4814,7.6454,-3.1564,0.8849,0.1358,2400.0,2340.0,-0.8867,-1.4021,4.97,91.6557 2019-06-03 15:42:21.700,135.5608,7220.4268,7.7124,-3.14,0.8398,0.1744,2400.0,2340.0,-0.9043,-1.3991,4.9714,91.6281 2019-06-03 15:42:21.720,135.5329,7220.4541,7.7124,-3.14,1.1764,0.0068,2400.0,2340.0,-0.878,-1.3961,4.9502,91.6281 2019-06-03 15:42:21.740,135.4678,7220.5366,7.7124,-3.14,0.9878,0.1724,2400.0,2340.0,-0.8838,-1.3901,4.9158,91.6281 2019-06-03 15:42:21.760,135.4586,7220.564,7.7796,-3.1219,1.1486,-0.0049,2400.0,2340.0,-0.8809,-1.4141,4.9118,91.6019 2019-06-03 15:42:21.780,135.4027,7220.5913,7.7796,-3.1219,1.1006,0.2136,2400.0,2340.0,-0.8721,-1.3991,4.8959,91.6019 2019-06-03 15:42:21.800,135.4214,7220.5913,7.8756,-3.0982,1.1749,0.2194,2400.0,2340.0,-0.8692,-1.4021,4.9224,91.5643 2019-06-03 15:42:21.820,135.412,7220.6187,7.9015,-3.0948,0.8798,0.0137,2400.0,2340.0,-0.878,-1.3781,4.9264,91.5521 2019-06-03 15:42:21.840,135.4586,7220.6187,7.9015,-3.0948,1.3225,0.1553,2400.0,2340.0,-0.8838,-1.36,4.9237,91.5521 2019-06-03 15:42:21.860,135.4772,7220.6187,7.9015,-3.0948,0.8642,0.0375,2400.0,2340.0,-0.9043,-1.3781,4.9078,91.5521 2019-06-03 15:42:21.880,135.4214,7220.6187,7.9674,-3.0795,1.311,0.1553,2400.0,2340.0,-0.8926,-1.375,4.8535,91.5293 2019-06-03 15:42:21.900,135.4214,7220.4541,8.0268,-3.062,1.3461,0.1402,2400.0,2340.0,-0.8867,-1.3781,4.8509,91.5092 2019-06-03 15:42:21.920,135.3841,7220.4541,8.0268,-3.062,0.798,0.0762,2400.0,2340.0,-0.8809,-1.3931,4.8244,91.5092 2019-06-03 15:42:21.940,135.1789,7220.4268,8.0268,-3.062,1.4005,0.0769,2400.0,2340.0,-0.8809,-1.366,4.8032,91.5092 2019-06-03 15:42:21.960,135.1696,7220.4541,8.0798,-3.0569,0.9648,0.1523,2400.0,2340.0,-0.9043,-1.366,4.8178,91.4887 2019-06-03 15:42:21.980,135.1322,7220.4814,8.1361,-3.0464,1.3213,0.0378,2400.0,2340.0,-0.8955,-1.366,4.7887,91.4716 2019-06-03 15:42:22.000,135.1135,7220.4814,8.1615,-3.0405,1.3032,0.0037,2400.0,2340.0,-0.8897,-1.375,4.8191,91.462 2019-06-03 15:42:22.020,135.1322,7220.4814,8.1884,-3.0363,0.9863,0.1875,2400.0,2340.0,-0.8867,-1.3871,4.79,91.4537 2019-06-03 15:42:22.040,135.1883,7220.4268,8.1884,-3.0363,1.129,-0.0329,2400.0,2340.0,-0.8838,-1.3811,4.7516,91.4537 2019-06-03 15:42:22.060,135.1883,7220.4814,8.1884,-3.0363,1.1568,0.2446,2400.0,2340.0,-0.8838,-1.3811,4.7423,91.4537 2019-06-03 15:42:22.080,135.1229,7220.5913,8.2327,-3.0264,1.0277,-0.0014,2400.0,2340.0,-0.8692,-1.375,4.6774,91.438 2019-06-03 15:42:22.100,135.1229,7221.3857,8.2675,-3.0236,0.953,0.0053,2400.0,2340.0,-0.8634,-1.372,4.7105,91.4231 2019-06-03 15:42:22.120,135.0948,7222.2627,8.2675,-3.0236,1.3169,0.1998,2400.0,2340.0,-0.8692,-1.372,4.6986,91.4231 2019-06-03 15:42:22.140,135.048,7223.6328,8.2675,-3.0236,0.9005,0.0238,2400.0,2340.0,-0.8809,-1.369,4.6774,91.4231 2019-06-03 15:42:22.160,135.0105,7224.6191,8.3061,-3.0173,1.3901,0.1665,2400.0,2340.0,-0.8984,-1.372,4.6947,91.41 2019-06-03 15:42:22.180,134.9637,7225.8799,8.3061,-3.0173,0.8358,0.087,2400.0,2340.0,-0.8897,-1.372,4.6563,91.41 2019-06-03 15:42:22.200,134.9731,7226.7563,8.3499,-3.008,0.8642,0.1143,2400.0,2340.0,-0.8897,-1.372,4.6748,91.3943 2019-06-03 15:42:22.220,134.9731,7227.6333,8.3646,-3.0046,1.2833,0.0503,2400.0,2340.0,-0.8926,-1.372,4.6549,91.389 2019-06-03 15:42:22.240,135.0293,7228.9487,8.3646,-3.0046,1.0233,0.156,2400.0,2340.0,-0.8838,-1.369,4.6338,91.389 2019-06-03 15:42:22.260,135.0387,7229.4146,8.3646,-3.0046,1.2514,0.0277,2400.0,2340.0,-0.8955,-1.3931,4.643,91.389 2019-06-03 15:42:22.280,134.9731,7229.3599,8.3888,-2.9983,1.0063,0.1933,2400.0,2340.0,-0.8751,-1.3901,4.6046,91.3803 2019-06-03 15:42:22.300,134.9824,7229.1953,8.4139,-2.9838,1.0932,0.2495,2400.0,2340.0,-0.8809,-1.363,4.6152,91.3746 2019-06-03 15:42:22.320,134.9637,7229.1953,8.4139,-2.9838,1.0898,-0.0619,2400.0,2340.0,-0.8867,-1.366,4.602,91.3746 2019-06-03 15:42:22.340,135.0293,7229.2227,8.4139,-2.9838,1.1945,0.2381,2400.0,2340.0,-0.8838,-1.363,4.5848,91.3746 2019-06-03 15:42:22.360,135.0293,7229.2773,8.4324,-2.9727,0.9955,-0.0264,2400.0,2340.0,-0.8926,-1.375,4.6086,91.3667 2019-06-03 15:42:22.380,134.9637,7229.3047,8.4324,-2.9727,1.2903,0.1784,2400.0,2340.0,-0.8751,-1.372,4.5967,91.3667 2019-06-03 15:42:22.400,134.9637,7229.3599,8.451,-2.9583,1.4168,0.1646,2340.0,2400.0,-0.8838,-1.375,4.6007,91.3567 2019-06-03 15:42:22.420,134.9637,7229.332,8.451,-2.9566,0.7995,0.0581,2340.0,2400.0,-0.8926,-1.372,4.5834,91.3527 2019-06-03 15:42:22.440,135.0293,7229.332,8.451,-2.9566,1.3809,0.1202,2340.0,2400.0,-0.8867,-1.372,4.5596,91.3527 2019-06-03 15:42:22.460,135.0387,7229.3599,8.451,-2.9566,0.821,0.141,2340.0,2400.0,-0.8867,-1.366,4.5702,91.3527 2019-06-03 15:42:22.480,134.9731,7229.4692,8.4613,-2.9364,1.3066,0.0263,2340.0,2400.0,-0.8809,-1.369,4.5345,91.3475 2019-06-03 15:42:22.500,134.9824,7230.2095,8.4625,-2.9249,1.2858,0.0067,2340.0,2400.0,-0.8721,-1.372,4.5623,91.3414 2019-06-03 15:42:22.520,134.9543,7231.0313,8.4625,-2.9249,0.902,0.1891,2340.0,2400.0,-0.8721,-1.369,4.5636,91.3414 2019-06-03 15:42:22.540,134.8886,7232.3472,8.4625,-2.9249,1.2577,0.0134,2340.0,2400.0,-0.8692,-1.366,4.5583,91.3414 2019-06-03 15:42:22.560,134.8699,7233.2515,8.4617,-2.9108,0.9545,0.2122,2340.0,2400.0,-0.8897,-1.369,4.5609,91.3339 2019-06-03 15:42:22.580,134.8229,7234.5122,8.4617,-2.9108,1.0891,-0.0077,2340.0,2400.0,-0.8809,-1.369,4.5265,91.3339 2019-06-03 15:42:22.600,134.8229,7235.3071,8.4627,-2.8836,1.1301,-0.0339,2340.0,2400.0,-0.9043,-1.369,4.5066,91.3261 2019-06-03 15:42:22.620,134.8229,7236.1021,8.4685,-2.8704,1.2496,0.2497,2340.0,2400.0,-0.9043,-1.375,4.5292,91.3226 2019-06-03 15:42:22.640,134.8792,7237.335,8.4685,-2.8704,0.9493,-0.0326,2340.0,2400.0,-0.8897,-1.366,4.5119,91.3226 2019-06-03 15:42:22.660,134.8886,7237.7739,8.4685,-2.8704,1.284,0.2448,2340.0,2400.0,-0.8751,-1.366,4.5517,91.3226 2019-06-03 15:42:22.680,134.8229,7237.7461,8.4615,-2.8557,0.7962,-0.0196,2340.0,2400.0,-0.8663,-1.369,4.5186,91.3191 2019-06-03 15:42:22.700,134.8229,7237.6641,8.4574,-2.8375,0.8095,0.0002,2340.0,2400.0,-0.8721,-1.366,4.508,91.3125 2019-06-03 15:42:22.720,134.7853,7237.6367,8.4574,-2.8375,1.3125,0.1661,2340.0,2400.0,-0.8955,-1.369,4.5014,91.3125 2019-06-03 15:42:22.740,134.5875,7237.6367,8.4574,-2.8375,0.7803,0.0787,2340.0,2400.0,-0.8926,-1.366,4.4987,91.3125 2019-06-03 15:42:22.760,134.5875,7237.6367,8.4583,-2.8105,1.3757,0.0786,2340.0,2400.0,-0.8926,-1.366,4.5239,91.309 2019-06-03 15:42:22.780,134.5308,7237.6094,8.4583,-2.8105,0.8276,0.1291,2340.0,2400.0,-0.8809,-1.366,4.5053,91.309 2019-06-03 15:42:22.800,134.5308,7237.6094,8.4472,-2.7788,0.9186,0.1482,2340.0,2400.0,-0.878,-1.363,4.4961,91.3012 2019-06-03 15:42:22.820,134.5403,7237.6094,8.444,-2.7676,1.2322,0.0303,2340.0,2400.0,-0.8751,-1.366,4.504,91.299 2019-06-03 15:42:22.840,134.5875,7237.6641,8.444,-2.7676,0.8727,0.189,2340.0,2400.0,-0.8692,-1.363,4.4921,91.299 2019-06-03 15:42:22.860,134.5969,7237.6094,8.444,-2.7676,1.1379,-0.0263,2340.0,2400.0,-0.8867,-1.363,4.5146,91.299 2019-06-03 15:42:22.880,134.5214,7237.582,8.4375,-2.7466,1.0839,0.2168,2340.0,2400.0,-0.8955,-1.366,4.5093,91.2942 2019-06-03 15:42:22.900,134.5308,7237.5269,8.4364,-2.7188,1.1697,0.2317,2340.0,2400.0,-0.8984,-1.366,4.4894,91.2902 2019-06-03 15:42:22.920,134.5119,7237.5542,8.4364,-2.7188,0.8975,-0.0194,2340.0,2400.0,-0.8984,-1.363,4.4894,91.2902 2019-06-03 15:42:22.940,134.4269,7237.6641,8.4364,-2.7188,1.2208,0.1845,2340.0,2400.0,-0.878,-1.363,4.4722,91.2902 2019-06-03 15:42:22.960,134.4363,7237.7461,8.4263,-2.6964,0.804,0.0453,2340.0,2400.0,-0.878,-1.366,4.4961,91.2845 2019-06-03 15:42:22.980,134.389,7237.7461,8.4263,-2.6964,1.2814,0.1162,2340.0,2400.0,-0.8897,-1.375,4.4868,91.2845 2019-06-03 15:42:23.000,134.3795,7237.6914,8.4177,-2.6589,1.2389,0.1183,2340.0,2400.0,-0.8838,-1.357,4.4683,91.2776 2019-06-03 15:42:23.020,134.3795,7237.6641,8.4127,-2.6446,0.8239,0.1234,2340.0,2400.0,-0.8867,-1.357,4.4775,91.2762 2019-06-03 15:42:23.040,134.4363,7237.6914,8.4127,-2.6446,1.2459,0.0269,2340.0,2400.0,-0.878,-1.354,4.463,91.2762 2019-06-03 15:42:23.060,134.4458,7237.6914,8.4127,-2.6446,0.8598,0.1777,2340.0,2400.0,-0.878,-1.351,4.4802,91.2762 2019-06-03 15:42:23.080,134.3795,7237.7461,8.4099,-2.6166,1.1568,-0.0091,2340.0,2400.0,-0.8984,-1.354,4.4709,91.2719 2019-06-03 15:42:23.100,134.3795,7238.5415,8.4004,-2.5893,1.149,0.0067,2340.0,2400.0,-0.8867,-1.348,4.4563,91.2679 2019-06-03 15:42:23.120,134.3417,7239.3638,8.4004,-2.5893,0.9822,0.2091,2340.0,2400.0,-0.8867,-1.366,4.463,91.2679 2019-06-03 15:42:23.140,133.9901,7240.7344,8.4004,-2.5893,0.9685,-0.0265,2340.0,2400.0,-0.878,-1.36,4.4683,91.2679 2019-06-03 15:42:23.160,133.9711,7241.7212,8.3927,-2.5637,1.1446,0.2305,2340.0,2400.0,-0.878,-1.351,4.4775,91.2649 2019-06-03 15:42:23.180,133.9234,7243.0918,8.3927,-2.5637,0.8361,-0.0314,2340.0,2400.0,-0.9131,-1.357,4.4524,91.2649 2019-06-03 15:42:23.200,133.9424,7243.9966,8.3797,-2.5198,0.8879,0.0088,2340.0,2400.0,-0.8838,-1.357,4.4497,91.2561 2019-06-03 15:42:23.220,133.9424,7244.874,8.3833,-2.5008,1.1819,0.1991,2340.0,2400.0,-0.8838,-1.345,4.451,91.2548 2019-06-03 15:42:23.240,133.9901,7246.1895,8.3833,-2.5008,0.7747,0.0116,2340.0,2400.0,-0.8721,-1.348,4.459,91.2548 2019-06-03 15:42:23.260,133.9996,7246.6558,8.3833,-2.5008,1.321,0.1368,2340.0,2400.0,-0.8809,-1.345,4.4643,91.2548 2019-06-03 15:42:23.280,133.9329,7246.5732,8.3714,-2.4771,0.649,0.0778,2340.0,2400.0,-0.8955,-1.357,4.4735,91.2509 2019-06-03 15:42:23.300,133.9329,7246.4912,8.3672,-2.4471,0.7836,0.1207,2340.0,2400.0,-0.8926,-1.357,4.4537,91.2474 2019-06-03 15:42:23.320,133.9329,7246.5186,8.3672,-2.4471,1.3151,0.0432,2340.0,2400.0,-0.878,-1.357,4.4802,91.2474 2019-06-03 15:42:23.340,133.9901,7246.4365,8.3672,-2.4471,0.7518,0.1604,2340.0,2400.0,-0.8838,-1.354,4.4656,91.2474 2019-06-03 15:42:23.360,133.9996,7246.4639,8.3681,-2.4165,1.2141,-0.0232,2340.0,2400.0,-0.8692,-1.342,4.4802,91.2435 2019-06-03 15:42:23.380,133.9329,7246.5186,8.3632,-2.3866,0.9674,0.2086,2340.0,2400.0,-0.8926,-1.345,4.4775,91.24 2019-06-03 15:42:23.400,133.9329,7246.5732,8.3617,-2.372,0.9826,0.2112,2340.0,2340.0,-0.8663,-1.345,4.4908,91.2386 2019-06-03 15:42:23.420,133.9424,7246.5459,8.3553,-2.364,0.9541,-0.0349,2340.0,2340.0,-0.8692,-1.351,4.4894,91.2356 2019-06-03 15:42:23.440,133.9901,7246.6011,8.3553,-2.364,1.1117,0.2267,2340.0,2340.0,-0.8692,-1.36,4.4961,91.2356 2019-06-03 15:42:23.460,134.0092,7246.5732,8.3553,-2.364,0.8798,-0.0587,2340.0,2340.0,-0.878,-1.351,4.4881,91.2356 2019-06-03 15:42:23.480,133.9424,7246.5732,8.358,-2.3342,1.1819,0.2305,2340.0,2340.0,-0.9014,-1.351,4.4894,91.233 2019-06-03 15:42:23.500,133.9424,7246.4912,8.3632,-2.3067,1.1819,0.189,2340.0,2340.0,-0.878,-1.351,4.4974,91.2303 2019-06-03 15:42:23.520,133.9043,7246.5459,8.3632,-2.3067,0.7685,0.0383,2340.0,2340.0,-0.878,-1.354,4.5053,91.2303 2019-06-03 15:42:23.540,133.694,7246.5186,8.3632,-2.3067,1.2866,0.087,2340.0,2340.0,-0.8721,-1.357,4.5119,91.2303 2019-06-03 15:42:23.560,133.6748,7246.4912,8.3601,-2.2853,0.8017,0.1113,2340.0,2340.0,-0.878,-1.348,4.4987,91.2264 2019-06-03 15:42:23.580,133.6269,7246.5186,8.3601,-2.2853,1.2744,0.0737,2340.0,2340.0,-0.8721,-1.351,4.5133,91.2264 2019-06-03 15:42:23.600,133.6269,7246.5459,8.3633,-2.251,1.2045,0.0339,2340.0,2340.0,-0.8663,-1.348,4.5066,91.2212 2019-06-03 15:42:23.620,133.6461,7246.4912,8.3681,-2.2377,0.9223,0.1681,2340.0,2340.0,-0.8634,-1.351,4.5239,91.2199 2019-06-03 15:42:23.640,133.6844,7246.5459,8.3681,-2.2377,1.0628,-0.0244,2340.0,2340.0,-0.8721,-1.351,4.5146,91.2199 2019-06-03 15:42:23.660,133.694,7246.5732,8.3681,-2.2377,0.9852,0.1941,2340.0,2340.0,-0.878,-1.351,4.5133,91.2199 2019-06-03 15:42:23.680,133.6269,7246.6284,8.3739,-2.2185,0.9216,-0.0019,2340.0,2340.0,-0.8955,-1.348,4.5331,91.2155 2019-06-03 15:42:23.700,133.6365,7247.3687,8.3759,-2.203,0.8051,-0.0093,2340.0,2340.0,-0.8663,-1.348,4.5305,91.2107 2019-06-03 15:42:23.720,133.5885,7248.3008,8.3759,-2.203,1.2174,0.168,2340.0,2340.0,-0.8692,-1.348,4.5305,91.2107 2019-06-03 15:42:23.740,133.3964,7249.6445,8.3759,-2.203,0.7614,0.0223,2340.0,2340.0,-0.8692,-1.345,4.5371,91.2107 2019-06-03 15:42:23.760,133.3867,7250.522,8.3856,-2.1809,1.227,0.1263,2340.0,2340.0,-0.8663,-1.345,4.5278,91.2072 2019-06-03 15:42:23.780,133.3289,7251.7832,8.3856,-2.1809,0.6889,0.1011,2340.0,2340.0,-0.8867,-1.351,4.553,91.2072 2019-06-03 15:42:23.800,133.3386,7252.6606,8.3971,-2.1606,0.7355,0.1114,2340.0,2340.0,-0.8926,-1.348,4.5371,91.198 2019-06-03 15:42:23.820,133.3482,7253.4556,8.4011,-2.1524,1.3165,0.0278,2340.0,2340.0,-0.8897,-1.345,4.5384,91.1958 2019-06-03 15:42:23.840,133.3964,7254.6895,8.4011,-2.1524,0.8565,0.1665,2340.0,2340.0,-0.8867,-1.345,4.5424,91.1958 2019-06-03 15:42:23.860,133.3964,7255.1011,8.4011,-2.1524,1.2267,0.0126,2340.0,2340.0,-0.8692,-1.336,4.5265,91.1958 2019-06-03 15:42:23.880,133.3289,7255.0186,8.4081,-2.14,0.9474,0.2332,2340.0,2340.0,-0.8692,-1.351,4.5517,91.1897 2019-06-03 15:42:23.900,133.3386,7254.9092,8.4207,-2.1219,1.0414,0.21,2340.0,2340.0,-0.8692,-1.351,4.5464,91.1849 2019-06-03 15:42:23.920,133.3097,7254.9365,8.4207,-2.1219,0.9175,-0.0454,2340.0,2340.0,-0.878,-1.336,4.5252,91.1849 2019-06-03 15:42:23.940,133.2422,7255.0186,8.4207,-2.1219,1.2736,0.2087,2340.0,2340.0,-0.8926,-1.339,4.5424,91.1849 2019-06-03 15:42:23.960,133.2325,7255.0186,8.4304,-2.1101,0.8661,0.0366,2340.0,2340.0,-0.8838,-1.339,4.5278,91.1783 2019-06-03 15:42:23.980,133.1746,7255.0737,8.4304,-2.1101,1.2895,0.1782,2340.0,2340.0,-0.8809,-1.336,4.5464,91.1783 2019-06-03 15:42:24.000,133.1842,7255.1558,8.4423,-2.092,1.2995,0.1258,2340.0,2340.0,-0.8692,-1.339,4.5397,91.1683 2019-06-03 15:42:24.020,133.1746,7255.1831,8.4419,-2.0883,0.7315,0.0645,2340.0,2340.0,-0.8692,-1.336,4.5239,91.1652 2019-06-03 15:42:24.040,133.2325,7255.1558,8.4419,-2.0883,1.304,0.0753,2340.0,2340.0,-0.8751,-1.336,4.5345,91.1652 2019-06-03 15:42:24.060,133.2518,7255.2104,8.4419,-2.0883,0.7289,0.1601,2340.0,2340.0,-0.8663,-1.336,4.5331,91.1652 2019-06-03 15:42:24.080,133.1746,7255.293,8.4571,-2.0717,1.2496,-0.0238,2340.0,2340.0,-0.8692,-1.336,4.557,91.1595 2019-06-03 15:42:24.100,133.1939,7256.061,8.4598,-2.0655,1.2097,-0.0597,2340.0,2340.0,-0.8721,-1.336,4.5384,91.1512 2019-06-03 15:42:24.120,133.1649,7256.8838,8.4598,-2.0655,0.879,0.242,2340.0,2340.0,-0.8809,-1.336,4.5172,91.1512 2019-06-03 15:42:24.140,133.0876,7258.2549,8.4598,-2.0655,1.0839,-0.0637,2340.0,2340.0,-0.8809,-1.333,4.5411,91.1512 2019-06-03 15:42:24.160,133.0876,7259.1602,8.4664,-2.0567,1.0898,0.2741,2340.0,2340.0,-0.8721,-1.336,4.5305,91.1438 2019-06-03 15:42:24.180,133.0295,7260.4214,8.4664,-2.0567,0.835,-0.0582,2340.0,2340.0,-0.8692,-1.324,4.5397,91.1438 2019-06-03 15:42:24.200,133.0295,7261.354,8.4791,-2.0418,0.7873,-0.0553,2340.0,2340.0,-0.8809,-1.318,4.5239,91.1307 2019-06-03 15:42:24.220,133.0392,7262.1768,8.4883,-2.0305,1.267,0.1881,2340.0,2340.0,-0.8751,-1.312,4.5159,91.1267 2019-06-03 15:42:24.240,133.0876,7263.4385,8.4883,-2.0305,0.7788,0.0541,2340.0,2340.0,-0.8897,-1.315,4.5411,91.1267 2019-06-03 15:42:24.260,133.0973,7263.8496,8.4883,-2.0305,1.4049,0.1333,2340.0,2340.0,-0.878,-1.315,4.5278,91.1267 2019-06-03 15:42:24.280,133.0295,7263.8496,8.4908,-2.0262,0.6616,0.1034,2340.0,2340.0,-0.8809,-1.3059,4.557,91.1154 2019-06-03 15:42:24.300,133.0392,7263.7676,8.5005,-2.013,0.6778,0.1183,2340.0,2340.0,-0.8984,-1.312,4.5345,91.1053 2019-06-03 15:42:24.320,132.9908,7263.7676,8.5005,-2.013,1.4578,0.0409,2340.0,2340.0,-0.8838,-1.3059,4.5186,91.1053 2019-06-03 15:42:24.340,132.7967,7263.8496,8.5005,-2.013,0.791,0.2025,2340.0,2340.0,-0.8809,-1.3059,4.5278,91.1053 2019-06-03 15:42:24.360,132.7675,7263.8774,8.516,-1.9932,1.1878,-0.0361,2340.0,2340.0,-0.8692,-1.3089,4.5278,91.0953 2019-06-03 15:42:24.380,132.7286,7263.8774,8.516,-1.9932,0.855,0.2671,2340.0,2340.0,-0.8604,-1.312,4.5437,91.0953 2019-06-03 15:42:24.400,132.7286,7263.9321,8.5266,-1.9733,0.9593,0.2542,2400.0,2340.0,-0.8751,-1.312,4.5292,91.0773 2019-06-03 15:42:24.420,132.7286,7263.9595,8.5227,-1.9707,1.0388,-0.0561,2400.0,2340.0,-0.8751,-1.3059,4.508,91.0717 2019-06-03 15:42:24.440,132.7967,7264.0142,8.5227,-1.9707,1.1246,0.2731,2400.0,2340.0,-0.8809,-1.3089,4.5305,91.0717 2019-06-03 15:42:24.460,132.7967,7263.9321,8.5227,-1.9707,0.7858,-0.0646,2400.0,2340.0,-0.8751,-1.3029,4.5278,91.0717 2019-06-03 15:42:24.480,132.7383,7263.9321,8.5371,-1.9505,1.3199,0.2336,2400.0,2340.0,-0.8809,-1.3059,4.5252,91.0603 2019-06-03 15:42:24.500,132.7286,7264.563,8.5499,-1.9283,1.3713,0.1971,2400.0,2340.0,-0.8809,-1.3089,4.5358,91.0502 2019-06-03 15:42:24.520,132.7188,7265.3311,8.5499,-1.9283,0.6886,0.0762,2400.0,2340.0,-0.8809,-1.3059,4.5133,91.0502 2019-06-03 15:42:24.540,132.6214,7266.5928,8.5499,-1.9283,1.3435,0.0969,2400.0,2340.0,-0.8809,-1.3029,4.5265,91.0502 2019-06-03 15:42:24.560,132.6214,7267.416,8.5488,-1.9143,0.6804,0.1369,2400.0,2340.0,-0.8809,-1.3059,4.5212,91.038 2019-06-03 15:42:24.580,132.5727,7268.5679,8.5488,-1.9143,1.4049,0.0165,2400.0,2340.0,-0.878,-1.312,4.5345,91.038 2019-06-03 15:42:24.600,132.5629,7269.3638,8.5595,-1.8761,1.2692,-0.009,2400.0,2340.0,-0.8838,-1.336,4.5292,91.0218 2019-06-03 15:42:24.620,132.5824,7270.1318,8.5637,-1.8644,0.8202,0.2215,2400.0,2340.0,-0.8751,-1.2969,4.5053,91.0166 2019-06-03 15:42:24.640,132.6409,7271.3389,8.5637,-1.8644,1.1538,-0.0385,2400.0,2340.0,-0.8751,-1.3029,4.5212,91.0166 2019-06-03 15:42:24.660,132.6409,7271.75,8.5637,-1.8644,0.896,0.2195,2400.0,2340.0,-0.8721,-1.324,4.5186,91.0166 2019-06-03 15:42:24.680,132.5727,7271.7227,8.5675,-1.8377,1.1013,-0.074,2400.0,2340.0,-0.8721,-1.2939,4.5318,91.0061 2019-06-03 15:42:24.700,132.5727,7271.6406,8.5659,-1.8157,1.0055,-0.037,2400.0,2340.0,-0.8867,-1.2999,4.5371,90.996 2019-06-03 15:42:24.720,132.5629,7271.6406,8.5659,-1.8157,1.1793,0.2393,2400.0,2340.0,-0.878,-1.2969,4.5186,90.996 2019-06-03 15:42:24.740,132.6312,7271.6406,8.5659,-1.8157,0.855,0.0057,2400.0,2340.0,-0.8809,-1.2939,4.5146,90.996 2019-06-03 15:42:24.760,132.6214,7271.6953,8.5731,-1.7881,1.2851,0.1631,2400.0,2340.0,-0.878,-1.2999,4.5265,90.9869 2019-06-03 15:42:24.780,132.5629,7271.7227,8.5798,-1.761,0.7648,0.0241,2400.0,2340.0,-0.8838,-1.2939,4.5252,90.9764 2019-06-03 15:42:24.800,132.5727,7271.75,8.5744,-1.753,0.6915,0.0869,2400.0,2340.0,-0.8809,-1.2999,4.5437,90.9707 2019-06-03 15:42:24.820,132.5727,7271.75,8.5769,-1.7397,1.3336,0.0814,2400.0,2340.0,-0.8809,-1.2999,4.5225,90.9659 2019-06-03 15:42:24.840,132.6214,7271.8325,8.5769,-1.7397,0.6949,0.1773,2400.0,2340.0,-0.8809,-1.312,4.5212,90.9659 2019-06-03 15:42:24.860,132.6409,7271.8599,8.5769,-1.7397,1.1941,-0.0069,2400.0,2340.0,-0.8721,-1.318,4.5265,90.9659 2019-06-03 15:42:24.880,132.5629,7271.8325,8.5765,-1.7194,0.8546,0.2017,2400.0,2340.0,-0.878,-1.2699,4.5133,90.9558 2019-06-03 15:42:24.900,132.5824,7271.75,8.5821,-1.6997,0.9212,0.265,2400.0,2340.0,-0.8809,-1.2909,4.5437,90.944 2019-06-03 15:42:24.920,132.5531,7271.7227,8.5821,-1.6997,0.9264,-0.0623,2400.0,2340.0,-0.8809,-1.2939,4.5265,90.944 2019-06-03 15:42:24.940,132.475,7271.7227,8.5821,-1.6997,1.0847,0.2524,2400.0,2340.0,-0.8634,-1.2909,4.5384,90.944 2019-06-03 15:42:24.960,132.4652,7271.7778,8.5847,-1.6818,0.9278,-0.0475,2400.0,2340.0,-0.8751,-1.2969,4.5172,90.9331 2019-06-03 15:42:24.980,132.4163,7271.8599,8.5847,-1.6818,1.1235,0.1899,2400.0,2340.0,-0.878,-1.2969,4.5133,90.9331 2019-06-03 15:42:25.000,132.4163,7271.9146,8.588,-1.661,1.2914,0.2035,2400.0,2340.0,-0.8867,-1.2969,4.5424,90.9139 2019-06-03 15:42:25.020,132.4359,7271.8599,8.5839,-1.6583,0.8158,0.0497,2400.0,2340.0,-0.8838,-1.2969,4.5305,90.9073 2019-06-03 15:42:25.040,132.4848,7271.8872,8.5839,-1.6583,1.1878,0.1304,2400.0,2340.0,-0.8692,-1.2969,4.5331,90.9073 2019-06-03 15:42:25.060,132.475,7271.8325,8.5839,-1.6583,0.909,0.0868,2400.0,2340.0,-0.8751,-1.2939,4.5212,90.9073 2019-06-03 15:42:25.080,132.4163,7271.9424,8.5898,-1.6436,1.1919,0.081,2400.0,2340.0,-0.8721,-1.2909,4.5212,90.8924 2019-06-03 15:42:25.100,132.4261,7272.7651,8.5882,-1.6304,1.1963,0.0507,2400.0,2340.0,-0.8838,-1.2969,4.5331,90.8776 2019-06-03 15:42:25.120,132.3772,7273.6436,8.5882,-1.6304,0.8376,0.171,2400.0,2340.0,-0.878,-1.2969,4.5265,90.8776 2019-06-03 15:42:25.140,132.1713,7274.9878,8.5882,-1.6304,1.0159,0.0278,2400.0,2340.0,-0.8867,-1.2909,4.5146,90.8776 2019-06-03 15:42:25.160,132.1713,7275.8657,8.5882,-1.6186,1.0913,0.2042,2400.0,2340.0,-0.8809,-1.2969,4.5358,90.8614 2019-06-03 15:42:25.180,132.1025,7277.2104,8.5882,-1.6186,0.9937,0.0205,2400.0,2340.0,-0.8751,-1.2939,4.5146,90.8614 2019-06-03 15:42:25.200,132.132,7278.1157,8.593,-1.6015,0.9197,0.0221,2400.0,2340.0,-0.8634,-1.2939,4.5477,90.8365 2019-06-03 15:42:25.220,132.1123,7278.9663,8.5996,-1.5936,1.1915,0.1606,2400.0,2340.0,-0.8634,-1.2939,4.5345,90.8282 2019-06-03 15:42:25.240,132.1615,7280.3384,8.5996,-1.5936,0.7633,0.0611,2400.0,2340.0,-0.8634,-1.2939,4.5212,90.8282 2019-06-03 15:42:25.260,132.1811,7280.8047,8.5996,-1.5936,1.2851,0.1384,2400.0,2340.0,-0.8692,-1.2909,4.5358,90.8282 2019-06-03 15:42:25.280,132.1221,7280.6948,8.5995,-1.5893,0.7333,0.122,2400.0,2340.0,-0.8751,-1.2939,4.5199,90.8094 2019-06-03 15:42:25.300,132.1221,7280.6128,8.6037,-1.5807,0.7932,0.1315,2400.0,2340.0,-0.878,-1.2909,4.5331,90.7923 2019-06-03 15:42:25.320,132.073,7280.6401,8.6037,-1.5807,1.3014,0.0279,2400.0,2340.0,-0.878,-1.2939,4.5305,90.7923 2019-06-03 15:42:25.340,131.866,7280.6948,8.6037,-1.5807,0.7278,0.1887,2400.0,2340.0,-0.8692,-1.2909,4.5252,90.7923 2019-06-03 15:42:25.360,131.8463,7280.75,8.6116,-1.5732,1.2951,-0.0202,2400.0,2340.0,-0.8692,-1.2909,4.5424,90.7735 2019-06-03 15:42:25.380,131.7968,7280.832,8.6116,-1.5732,0.818,0.254,2400.0,2340.0,-0.8663,-1.2909,4.5265,90.7735 2019-06-03 15:42:25.400,131.7968,7280.8872,8.6154,-1.569,0.8369,0.2823,2340.0,2400.0,-0.8751,-1.2879,4.5265,90.7429 2019-06-03 15:42:25.420,131.8067,7280.8872,8.611,-1.5721,1.0887,-0.1077,2340.0,2400.0,-0.8838,-1.2909,4.5358,90.7325 2019-06-03 15:42:25.440,131.866,7280.9419,8.611,-1.5721,1.0207,0.2713,2340.0,2400.0,-0.8838,-1.2909,4.5278,90.7325 2019-06-03 15:42:25.460,131.8759,7280.832,8.611,-1.5721,0.9489,-0.1027,2340.0,2400.0,-0.8838,-1.2909,4.549,90.7325 2019-06-03 15:42:25.480,131.8067,7280.7773,8.6184,-1.5659,1.1449,0.282,2340.0,2400.0,-0.8721,-1.2879,4.5212,90.7123 2019-06-03 15:42:25.500,131.8166,7280.6675,8.6287,-1.5602,1.0691,0.2739,2340.0,2400.0,-0.8663,-1.2909,4.5305,90.6922 2019-06-03 15:42:25.520,131.7771,7280.6128,8.6287,-1.5602,0.8036,-0.0597,2340.0,2400.0,-0.8604,-1.2939,4.5318,90.6922 2019-06-03 15:42:25.540,131.6979,7280.6128,8.6287,-1.5602,1.2707,0.1863,2340.0,2400.0,-0.8751,-1.2879,4.5265,90.6922 2019-06-03 15:42:25.560,131.6979,7280.6401,8.6267,-1.5615,0.7156,0.0238,2340.0,2400.0,-0.878,-1.2909,4.549,90.6708 2019-06-03 15:42:25.580,131.6484,7280.6401,8.6267,-1.5615,1.2958,0.1328,2340.0,2400.0,-0.8809,-1.2909,4.5252,90.6708 2019-06-03 15:42:25.600,131.6385,7280.6128,8.6385,-1.5534,1.3587,0.1161,2340.0,2400.0,-0.8809,-1.2909,4.5265,90.6398 2019-06-03 15:42:25.620,131.6484,7280.6128,8.6383,-1.5549,0.6926,0.1268,2340.0,2400.0,-0.8692,-1.2939,4.5437,90.6284 2019-06-03 15:42:25.640,131.6979,7280.6675,8.6383,-1.5549,1.2614,0.0189,2340.0,2400.0,-0.8751,-1.2849,4.5212,90.6284 2019-06-03 15:42:25.660,131.7078,7280.6401,8.6383,-1.5549,0.7766,0.196,2340.0,2400.0,-0.8809,-1.2849,4.5371,90.6284 2019-06-03 15:42:25.680,131.6385,7280.75,8.6479,-1.5513,1.1601,-0.0158,2340.0,2400.0,-0.8751,-1.2849,4.5212,90.6074 2019-06-03 15:42:25.700,131.6583,7281.4907,8.6483,-1.5571,1.0976,-0.0449,2340.0,2400.0,-0.8751,-1.2849,4.5252,90.5869 2019-06-03 15:42:25.720,131.6286,7282.2866,8.6483,-1.5571,1.0114,0.2662,2340.0,2400.0,-0.8663,-1.2849,4.5477,90.5869 2019-06-03 15:42:25.740,131.5592,7283.5215,8.6483,-1.5571,0.9526,-0.0564,2340.0,2400.0,-0.8663,-1.2819,4.5265,90.5869 2019-06-03 15:42:25.760,131.5492,7284.3726,8.6517,-1.5623,1.0906,0.2293,2340.0,2400.0,-0.8721,-1.2789,4.5371,90.5646 2019-06-03 15:42:25.780,131.4897,7285.6895,8.6517,-1.5623,0.9301,0.0154,2340.0,2400.0,-0.8751,-1.2819,4.5159,90.5646 2019-06-03 15:42:25.800,131.4996,7286.5679,8.6625,-1.5782,0.875,0.043,2340.0,2400.0,-0.878,-1.2819,4.5278,90.5327 2019-06-03 15:42:25.820,131.4996,7287.4185,8.669,-1.5838,1.2607,0.1479,2340.0,2400.0,-0.8721,-1.2819,4.5424,90.5226 2019-06-03 15:42:25.840,131.579,7288.6812,8.669,-1.5838,0.8657,0.0802,2340.0,2400.0,-0.8663,-1.2819,4.5278,90.5226 2019-06-03 15:42:25.860,131.5592,7289.1201,8.669,-1.5838,1.2518,0.0767,2340.0,2400.0,-0.8751,-1.2819,4.5358,90.5226 2019-06-03 15:42:25.880,131.4897,7289.0928,8.6711,-1.6017,0.9378,0.1456,2340.0,2400.0,-0.8692,-1.2819,4.5278,90.4995 2019-06-03 15:42:25.900,131.5095,7289.0654,8.6764,-1.6198,0.9005,0.1482,2340.0,2400.0,-0.8634,-1.2789,4.5292,90.475 2019-06-03 15:42:25.920,131.4599,7289.0928,8.6764,-1.6198,1.0358,0.0271,2340.0,2400.0,-0.8721,-1.2849,4.5424,90.475 2019-06-03 15:42:25.940,131.4002,7289.1201,8.6764,-1.6198,1.0085,0.1927,2340.0,2400.0,-0.8663,-1.2789,4.5239,90.475 2019-06-03 15:42:25.960,131.3902,7289.1475,8.6834,-1.6371,0.9944,0.0103,2340.0,2400.0,-0.878,-1.2789,4.5331,90.4518 2019-06-03 15:42:25.980,131.3405,7289.1475,8.6834,-1.6371,1.054,0.2147,2340.0,2400.0,-0.8751,-1.2759,4.5252,90.4518 2019-06-03 15:42:26.000,131.3405,7289.1475,8.6902,-1.6676,1.1142,0.2177,2340.0,2400.0,-0.878,-1.2759,4.5239,90.4138 2019-06-03 15:42:26.020,131.3405,7289.1475,8.6873,-1.6803,0.7777,0.0058,2340.0,2400.0,-0.8838,-1.2729,4.5397,90.4015 2019-06-03 15:42:26.040,131.3902,7289.1201,8.6873,-1.6803,1.3017,0.1701,2340.0,2400.0,-0.8751,-1.2789,4.5186,90.4015 2019-06-03 15:42:26.060,131.4002,7289.0928,8.6873,-1.6803,0.7452,0.0686,2340.0,2400.0,-0.8751,-1.2759,4.5278,90.4015 2019-06-03 15:42:26.080,131.3305,7289.1201,8.6941,-1.6972,1.3543,0.098,2340.0,2400.0,-0.8575,-1.2759,4.5371,90.3779 2019-06-03 15:42:26.100,131.3405,7289.9438,8.6963,-1.7187,1.3698,0.0746,2340.0,2400.0,-0.8604,-1.2729,4.5225,90.3543 2019-06-03 15:42:26.120,131.2906,7290.8496,8.6963,-1.7187,0.6741,0.1878,2340.0,2400.0,-0.8692,-1.2729,4.5424,90.3543 2019-06-03 15:42:26.140,131.081,7292.167,8.6963,-1.7187,1.2233,-0.011,2340.0,2400.0,-0.8751,-1.2759,4.5252,90.3543 2019-06-03 15:42:26.160,131.071,7293.1006,8.6944,-1.7455,0.8032,0.2084,2340.0,2400.0,-0.8721,-1.2759,4.5305,90.3316 2019-06-03 15:42:26.180,131.0109,7294.4731,8.6985,-1.7618,1.1764,-0.0414,2340.0,2400.0,-0.8721,-1.2759,4.5265,90.3093 2019-06-03 15:42:26.200,131.0109,7295.4336,8.6953,-1.7742,1.179,-0.0588,2340.0,2400.0,-0.8604,-1.2699,4.5199,90.2997 2019-06-03 15:42:26.220,131.0309,7296.2847,8.7046,-1.7795,0.8986,0.2813,2340.0,2400.0,-0.8663,-1.2729,4.5331,90.2909 2019-06-03 15:42:26.240,131.071,7297.6299,8.7046,-1.7795,0.9012,-0.0713,2340.0,2400.0,-0.8634,-1.2699,4.5239,90.2909 2019-06-03 15:42:26.260,131.091,7298.0688,8.7046,-1.7795,1.1512,0.2878,2340.0,2400.0,-0.8692,-1.2729,4.5331,90.2909 2019-06-03 15:42:26.280,131.0109,7298.0415,8.7012,-1.8016,0.8376,-0.0505,2340.0,2400.0,-0.8604,-1.2699,4.5371,90.2721 2019-06-03 15:42:26.300,131.0309,7298.0142,8.6972,-1.8255,0.8036,-0.0475,2340.0,2400.0,-0.8575,-1.2669,4.5212,90.2551 2019-06-03 15:42:26.320,130.9708,7297.9863,8.6972,-1.8255,1.2944,0.2249,2340.0,2400.0,-0.8517,-1.2699,4.5358,90.2551 2019-06-03 15:42:26.340,130.76,7298.0415,8.6972,-1.8255,0.706,0.0088,2340.0,2400.0,-0.8575,-1.2669,4.5212,90.2551 2019-06-03 15:42:26.360,130.75,7298.0962,8.7054,-1.8407,1.3691,0.166,2340.0,2400.0,-0.8692,-1.2699,4.5345,90.2394 2019-06-03 15:42:26.380,130.7097,7298.0962,8.7054,-1.8407,0.7596,0.1139,2340.0,2400.0,-0.8721,-1.2729,4.5371,90.2394 2019-06-03 15:42:26.400,130.6997,7298.124,8.7041,-1.8741,0.652,0.1254,2400.0,2340.0,-0.8634,-1.2669,4.5212,90.2166 2019-06-03 15:42:26.420,130.7097,7298.124,8.7064,-1.8831,1.4212,0.0504,2400.0,2340.0,-0.8575,-1.2669,4.5384,90.2096 2019-06-03 15:42:26.440,130.76,7298.124,8.7064,-1.8831,0.6671,0.1785,2400.0,2340.0,-0.8634,-1.2669,4.5265,90.2096 2019-06-03 15:42:26.460,130.7701,7298.0962,8.7064,-1.8831,1.3838,0.0099,2400.0,2340.0,-0.8604,-1.2638,4.5292,90.2096 2019-06-03 15:42:26.480,130.6997,7298.1787,8.7063,-1.9091,0.6819,0.2588,2400.0,2340.0,-0.8546,-1.2638,4.5371,90.1952 2019-06-03 15:42:26.500,130.7097,7298.124,8.7129,-1.9308,0.7311,0.2787,2400.0,2340.0,-0.8575,-1.2699,4.5159,90.1817 2019-06-03 15:42:26.520,130.6594,7298.0962,8.7129,-1.9308,1.2895,-0.0918,2400.0,2340.0,-0.8634,-1.2638,4.5358,90.1817 2019-06-03 15:42:26.540,130.4576,7298.124,8.7129,-1.9308,0.8228,0.3079,2400.0,2340.0,-0.8634,-1.2638,4.5265,90.1817 2019-06-03 15:42:26.560,130.4273,7298.1514,8.7196,-1.9551,1.1272,-0.0794,2400.0,2340.0,-0.8663,-1.2638,4.5252,90.169 2019-06-03 15:42:26.580,130.3767,7298.124,8.7196,-1.9551,1.0403,0.3305,2400.0,2340.0,-0.8634,-1.2608,4.5358,90.169 2019-06-03 15:42:26.600,130.3767,7298.2061,8.7217,-1.9982,1.0296,0.3094,2400.0,2340.0,-0.8517,-1.2669,4.5199,90.1511 2019-06-03 15:42:26.620,130.3767,7298.2061,8.7131,-2.0155,0.9445,-0.0905,2400.0,2340.0,-0.8604,-1.2608,4.5358,90.1454 2019-06-03 15:42:26.640,130.4374,7298.1787,8.7131,-2.0155,1.1546,0.2768,2400.0,2340.0,-0.8604,-1.2608,4.5225,90.1454 2019-06-03 15:42:26.660,130.4576,7298.0688,8.7131,-2.0155,0.8469,-0.0128,2400.0,2340.0,-0.8604,-1.2338,4.5212,90.1454 2019-06-03 15:42:26.680,130.3767,7298.0962,8.7205,-2.0408,1.2677,0.2187,2400.0,2340.0,-0.8634,-1.2308,4.5358,90.1353 2019-06-03 15:42:26.700,130.3868,7298.8101,8.7226,-2.069,1.1893,0.1884,2400.0,2340.0,-0.8604,-1.2308,4.5265,90.1262 2019-06-03 15:42:26.720,130.3666,7299.6338,8.7226,-2.069,0.7799,0.0483,2400.0,2340.0,-0.8634,-1.2338,4.5265,90.1262 2019-06-03 15:42:26.740,130.2957,7300.9517,8.7226,-2.069,1.2429,0.1348,2400.0,2340.0,-0.8546,-1.2308,4.5305,90.1262 2019-06-03 15:42:26.760,130.2754,7301.7754,8.7176,-2.1015,0.7729,0.1423,2400.0,2340.0,-0.8546,-1.2308,4.5239,90.1174 2019-06-03 15:42:26.780,130.2247,7303.0112,8.7176,-2.1015,1.1668,0.0541,2400.0,2340.0,-0.8546,-1.2338,4.5424,90.1174 2019-06-03 15:42:26.800,130.2146,7303.8623,8.7187,-2.1438,1.1316,0.0771,2400.0,2340.0,-0.8575,-1.2308,4.5172,90.106 2019-06-03 15:42:26.820,130.2349,7304.7134,8.7222,-2.1554,0.8365,0.1805,2400.0,2340.0,-0.8575,-1.2338,4.5278,90.103 2019-06-03 15:42:26.840,130.2957,7306.0586,8.7222,-2.1554,1.1157,0.0238,2400.0,2340.0,-0.8546,-1.2308,4.5292,90.103 2019-06-03 15:42:26.860,130.3058,7306.4707,8.7222,-2.1554,0.9282,0.2021,2400.0,2340.0,-0.8487,-1.2308,4.5278,90.103 2019-06-03 15:42:26.880,130.2247,7306.498,8.72,-2.1823,0.98,0.0348,2400.0,2340.0,-0.8517,-1.2308,4.5384,90.0964 2019-06-03 15:42:26.900,130.245,7306.3882,8.7169,-2.2119,0.95,0.0497,2400.0,2340.0,-0.8575,-1.2308,4.5172,90.0899 2019-06-03 15:42:26.920,130.2044,7306.4155,8.7169,-2.2119,1.1379,0.174,2400.0,2340.0,-0.8838,-1.2247,4.5172,90.0899 2019-06-03 15:42:26.940,130.1232,7306.4429,8.7169,-2.2119,0.7773,0.0651,2400.0,2340.0,-0.8751,-1.2277,4.5371,90.0899 2019-06-03 15:42:26.960,130.1232,7306.4429,8.7196,-2.2319,1.1416,0.1528,2400.0,2340.0,-0.8721,-1.2277,4.5225,90.0855 2019-06-03 15:42:26.980,130.0622,7306.4155,8.7196,-2.2319,0.8224,0.0773,2400.0,2340.0,-0.8692,-1.2277,4.5331,90.0855 2019-06-03 15:42:27.000,130.0622,7306.3882,8.7206,-2.2636,0.8069,0.1018,2400.0,2340.0,-0.8575,-1.2277,4.5265,90.0798 2019-06-03 15:42:27.020,130.0622,7306.3882,8.7227,-2.2713,1.2108,0.094,2400.0,2340.0,-0.8604,-1.2247,4.5199,90.0781 2019-06-03 15:42:27.040,130.1232,7306.4155,8.7227,-2.2713,0.7644,0.1352,2400.0,2340.0,-0.8663,-1.2247,4.5371,90.0781 2019-06-03 15:42:27.060,130.1435,7306.3608,8.7227,-2.2713,1.1878,0.0955,2400.0,2340.0,-0.8634,-1.2247,4.5225,90.0781 2019-06-03 15:42:27.080,130.0622,7306.3057,8.7205,-2.2904,0.8302,0.1524,2400.0,2340.0,-0.8575,-1.2247,4.5371,90.0737 2019-06-03 15:42:27.100,130.0724,7306.1958,8.724,-2.3025,0.8276,0.1899,2400.0,2340.0,-0.8604,-1.2097,4.5159,90.0719 2019-06-03 15:42:27.120,130.0317,7306.2236,8.724,-2.3025,1.1216,0.0022,2400.0,2340.0,-0.8604,-1.2157,4.5225,90.0719 2019-06-03 15:42:27.140,129.7971,7306.3057,8.724,-2.3025,0.9175,0.2417,2400.0,2340.0,-0.8575,-1.2127,4.5278,90.0719 2019-06-03 15:42:27.160,129.7971,7306.3057,8.7303,-2.3104,1.0077,0.0148,2400.0,2340.0,-0.8604,-1.2097,4.5278,90.0706 2019-06-03 15:42:27.180,129.7358,7306.3335,8.7303,-2.3104,1.1028,0.2287,2400.0,2340.0,-0.8575,-1.2097,4.5345,90.0706 2019-06-03 15:42:27.200,129.7358,7306.3335,8.7342,-2.3269,1.2,0.1936,2400.0,2340.0,-0.8634,-1.2067,4.5278,90.0685 2019-06-03 15:42:27.220,129.746,7306.3335,8.7301,-2.3347,0.8347,0.0302,2400.0,2340.0,-0.8692,-1.2067,4.5225,90.0671 2019-06-03 15:42:27.240,129.8074,7306.4155,8.7301,-2.3347,1.2252,0.2061,2400.0,2340.0,-0.8634,-1.2037,4.5305,90.0671 2019-06-03 15:42:27.260,129.8176,7306.3882,8.7301,-2.3347,0.7045,0.0659,2400.0,2340.0,-0.8604,-1.2097,4.5225,90.0671 2019-06-03 15:42:27.280,129.746,7306.4707,8.7371,-2.3372,1.4009,0.1444,2400.0,2340.0,-0.8458,-1.2067,4.5358,90.0667 2019-06-03 15:42:27.300,129.746,7307.2671,8.7376,-2.3417,1.3957,0.0764,2400.0,2340.0,-0.8546,-1.2097,4.5186,90.0654 2019-06-03 15:42:27.320,129.7358,7308.146,8.7376,-2.3417,0.784,0.1314,2400.0,2340.0,-0.8692,-1.2067,4.5172,90.0654 2019-06-03 15:42:27.340,129.8176,7309.4912,8.7376,-2.3417,1.2866,0.0528,2400.0,2340.0,-0.8721,-1.2097,4.5292,90.0654 2019-06-03 15:42:27.360,129.7971,7310.3975,8.734,-2.3493,0.7215,0.2046,2400.0,2340.0,-0.878,-1.2067,4.5265,90.0641 2019-06-03 15:42:27.380,129.746,7311.7158,8.734,-2.3493,1.21,-0.0034,2400.0,2340.0,-0.8575,-1.2037,4.5411,90.0641 2019-06-03 15:42:27.400,129.7563,7312.5947,8.737,-2.3493,1.2256,-0.0454,2400.0,2340.0,-0.8575,-1.2067,4.5212,90.0623 2019-06-03 15:42:27.420,129.746,7313.4736,8.7422,-2.3435,0.825,0.2372,2400.0,2340.0,-0.8546,-1.1977,4.5172,90.0623 2019-06-03 15:42:27.440,129.8074,7314.8467,8.7422,-2.3435,1.0972,-0.0295,2400.0,2340.0,-0.8604,-1.1977,4.5371,90.0623 2019-06-03 15:42:27.460,129.8074,7315.231,8.7422,-2.3435,0.8535,0.2912,2400.0,2340.0,-0.8692,-1.1977,4.5305,90.0623 2019-06-03 15:42:27.480,129.746,7315.1763,8.7441,-2.3391,1.0155,-0.0873,2400.0,2340.0,-0.8751,-1.1946,4.5384,90.0597 2019-06-03 15:42:27.500,129.746,7315.0664,8.7394,-2.3399,0.963,-0.0887,2400.0,2340.0,-0.8809,-1.1977,4.5292,90.0558 2019-06-03 15:42:27.520,129.7051,7315.0938,8.7394,-2.3399,1.115,0.3047,2400.0,2340.0,-0.878,-1.1977,4.5106,90.0558 2019-06-03 15:42:27.540,129.4899,7315.1211,8.7394,-2.3399,0.8295,-0.0717,2400.0,2340.0,-0.8604,-1.1977,4.5397,90.0558 2019-06-03 15:42:27.560,129.4796,7315.1484,8.7402,-2.3345,1.1716,0.2915,2400.0,2340.0,-0.8604,-1.1946,4.5199,90.0527 2019-06-03 15:42:27.580,129.4385,7315.1211,8.748,-2.3251,0.7673,-0.0607,2400.0,2340.0,-0.8604,-1.1946,4.5278,90.0492 2019-06-03 15:42:27.600,129.4179,7315.1211,8.7385,-2.3287,0.6712,-0.0255,2400.0,2340.0,-0.8692,-1.1946,4.5239,90.0457 2019-06-03 15:42:27.620,129.4282,7315.0664,8.7426,-2.3208,1.2441,0.2041,2400.0,2340.0,-0.8692,-1.1946,4.5133,90.044 2019-06-03 15:42:27.640,129.4899,7315.0938,8.7426,-2.3208,0.7148,0.0774,2400.0,2340.0,-0.8634,-1.1977,4.5345,90.044 2019-06-03 15:42:27.660,129.5001,7315.0938,8.7426,-2.3208,1.3121,0.1349,2400.0,2340.0,-0.8575,-1.1946,4.5212,90.044 2019-06-03 15:42:27.680,129.4282,7315.1484,8.7365,-2.3173,0.6139,0.1137,2400.0,2340.0,-0.8604,-1.1916,4.5239,90.037 2019-06-03 15:42:27.700,129.4385,7315.9453,8.7418,-2.304,0.6808,0.1687,2400.0,2340.0,-0.8634,-1.1977,4.5252,90.03 2019-06-03 15:42:27.720,129.4179,7316.8242,8.7418,-2.304,1.4049,0.0378,2400.0,2340.0,-0.8634,-1.1946,4.5186,90.03 2019-06-03 15:42:27.740,129.5001,7318.1704,8.7418,-2.304,0.7681,0.2359,2400.0,2340.0,-0.8575,-1.1886,4.5305,90.03 2019-06-03 15:42:27.760,129.4899,7319.104,8.7512,-2.2864,1.2322,-0.0185,2400.0,2340.0,-0.8604,-1.1946,4.5265,90.0234 2019-06-03 15:42:27.780,129.4179,7320.4229,8.7512,-2.2864,0.7163,0.2692,2400.0,2340.0,-0.8663,-1.1977,4.5252,90.0234 2019-06-03 15:42:27.800,129.4282,7321.3018,8.7515,-2.266,0.8435,0.2981,2400.0,2340.0,-0.8663,-1.1946,4.5305,90.0107 2019-06-03 15:42:27.820,129.4385,7322.1807,8.7432,-2.2639,1.1926,-0.0933,2400.0,2340.0,-0.8721,-1.1977,4.5133,90.0046 2019-06-03 15:42:27.840,129.4899,7323.5542,8.7432,-2.2639,0.9896,0.3394,2400.0,2340.0,-0.8663,-1.1946,4.5292,90.0046 2019-06-03 15:42:27.860,129.5001,7323.9385,8.7432,-2.2639,0.997,-0.071,2400.0,2340.0,-0.8663,-1.1946,4.5106,90.0046 2019-06-03 15:42:27.880,129.4282,7323.8013,8.7487,-2.2465,0.9722,0.3085,2400.0,2340.0,-0.8604,-1.1916,4.5199,89.9946 2019-06-03 15:42:27.900,129.4385,7323.7461,8.7597,-2.2254,1.0965,0.3067,2400.0,2340.0,-0.8634,-1.1946,4.5225,89.9828 2019-06-03 15:42:27.920,129.4282,7323.7188,8.7597,-2.2254,0.8635,-0.037,2400.0,2340.0,-0.8604,-1.1916,4.5146,89.9828 2019-06-03 15:42:27.940,129.4899,7323.7461,8.7597,-2.2254,1.1668,0.2821,2400.0,2340.0,-0.8634,-1.1946,4.5212,89.9828 2019-06-03 15:42:27.960,129.4899,7323.7739,8.7569,-2.2123,0.7844,0.0126,2400.0,2340.0,-0.8663,-1.1886,4.5119,89.9679 2019-06-03 15:42:27.980,129.4282,7323.7739,8.7569,-2.2123,1.173,0.205,2400.0,2340.0,-0.8634,-1.1916,4.5186,89.9679 2019-06-03 15:42:28.000,129.4179,7323.7739,8.7642,-2.188,1.2718,0.1909,2400.0,2340.0,-0.8692,-1.1916,4.5159,89.9447 2019-06-03 15:42:28.020,129.4385,7323.7461,8.7604,-2.1824,0.717,0.0795,2400.0,2340.0,-0.8604,-1.1916,4.5093,89.9364 2019-06-03 15:42:28.040,129.4899,7323.8564,8.7604,-2.1824,1.2392,0.1194,2400.0,2340.0,-0.8546,-1.1916,4.5252,89.9364 2019-06-03 15:42:28.060,129.5001,7323.8286,8.7604,-2.1824,0.798,0.1872,2400.0,2340.0,-0.8546,-1.1916,4.5172,89.9364 2019-06-03 15:42:28.080,129.4385,7323.8838,8.7685,-2.1676,1.2289,0.0564,2400.0,2340.0,-0.8575,-1.1916,4.504,89.9189 2019-06-03 15:42:28.100,129.4282,7324.6807,8.7676,-2.1569,1.1982,0.0416,2400.0,2340.0,-0.8517,-1.1946,4.5199,89.8997 2019-06-03 15:42:28.120,129.3974,7325.5322,8.7676,-2.1569,0.7551,0.2191,2400.0,2340.0,-0.8604,-1.1946,4.5093,89.8997 2019-06-03 15:42:28.140,129.3356,7326.7959,8.7676,-2.1569,1.2208,0.0023,2400.0,2340.0,-0.8634,-1.1916,4.5159,89.8997 2019-06-03 15:42:28.160,129.3253,7327.6479,8.7648,-2.1435,0.8776,0.2601,2400.0,2340.0,-0.8663,-1.1916,4.5093,89.8809 2019-06-03 15:42:28.180,129.2532,7328.9941,8.7648,-2.1435,0.943,-0.0023,2400.0,2340.0,-0.8663,-1.1886,4.5066,89.8809 2019-06-03 15:42:28.200,129.2635,7329.873,8.7669,-2.1263,0.9989,-0.0024,2400.0,2340.0,-0.8692,-1.1916,4.5159,89.8494 2019-06-03 15:42:28.220,129.2738,7330.6973,8.7713,-2.1179,1.0336,0.2776,2400.0,2340.0,-0.8575,-1.1946,4.5053,89.8385 2019-06-03 15:42:28.240,129.3356,7332.0435,8.7713,-2.1179,0.8679,-0.0125,2400.0,2340.0,-0.8517,-1.1916,4.5133,89.8385 2019-06-03 15:42:28.260,129.3356,7332.5107,8.7713,-2.1179,1.1468,0.2078,2400.0,2340.0,-0.8546,-1.1886,4.5,89.8385 2019-06-03 15:42:28.280,129.2738,7332.4834,8.7666,-2.1147,0.7958,0.0451,2400.0,2340.0,-0.8546,-1.1946,4.5,89.8158 2019-06-03 15:42:28.300,129.2635,7332.4561,8.7637,-2.1085,0.7884,0.077,2400.0,2340.0,-0.8634,-1.1916,4.5066,89.7926 2019-06-03 15:42:28.320,129.2429,7332.5107,8.7637,-2.1085,1.3003,0.1433,2400.0,2340.0,-0.8634,-1.1916,4.5,89.7926 2019-06-03 15:42:28.340,129.1604,7332.5659,8.7637,-2.1085,0.8328,0.1035,2400.0,2340.0,-0.8634,-1.1946,4.5027,89.7926 2019-06-03 15:42:28.360,129.1604,7332.5659,8.7668,-2.1012,1.2045,0.0891,2400.0,2340.0,-0.8634,-1.1916,4.5,89.7681 2019-06-03 15:42:28.380,129.0984,7332.5933,8.7668,-2.1012,0.8236,0.1204,2400.0,2340.0,-0.8692,-1.1886,4.4921,89.7681 2019-06-03 15:42:28.400,129.0984,7332.6206,8.7658,-2.0992,0.8875,0.1913,2400.0,2400.0,-0.8575,-1.1916,4.4987,89.7288 2019-06-03 15:42:28.420,129.1191,7332.6206,8.7643,-2.1009,1.1235,0.0515,2400.0,2400.0,-0.8546,-1.1946,4.4947,89.7152 2019-06-03 15:42:28.440,129.1604,7332.5659,8.7643,-2.1009,0.8938,0.2107,2400.0,2400.0,-0.8458,-1.1886,4.5,89.7152 2019-06-03 15:42:28.460,129.1707,7332.5381,8.7643,-2.1009,0.9944,-0.0135,2400.0,2400.0,-0.8575,-1.1916,4.4894,89.7152 2019-06-03 15:42:28.480,129.0984,7332.5381,8.7642,-2.1004,1.0344,0.2457,2400.0,2400.0,-0.8546,-1.1916,4.4815,89.689 2019-06-03 15:42:28.500,129.0984,7332.4561,8.7685,-2.101,1.1512,0.2798,2400.0,2400.0,-0.8575,-1.1886,4.4855,89.6624 2019-06-03 15:42:28.520,129.0984,7332.4282,8.7685,-2.101,0.8801,0.0216,2400.0,2400.0,-0.8604,-1.1886,4.4828,89.6624 2019-06-03 15:42:28.540,129.1604,7332.5381,8.7685,-2.101,1.1938,0.2227,2400.0,2400.0,-0.8575,-1.1706,4.4881,89.6624 2019-06-03 15:42:28.560,129.1604,7332.5659,8.7632,-2.111,0.6601,0.0387,2400.0,2400.0,-0.8575,-1.1706,4.4749,89.6335 2019-06-03 15:42:28.580,129.0984,7332.5381,8.7632,-2.111,1.3262,0.163,2400.0,2400.0,-0.8604,-1.1675,4.4577,89.6335 2019-06-03 15:42:28.600,129.0984,7332.5933,8.761,-2.1209,1.3517,0.1522,2400.0,2400.0,-0.8575,-1.1675,4.4616,89.592 2019-06-03 15:42:28.620,129.1087,7332.5659,8.7573,-2.1318,0.6886,0.1688,2400.0,2400.0,-0.8663,-1.1706,4.4683,89.5771 2019-06-03 15:42:28.640,129.1604,7332.5381,8.7573,-2.1318,1.4153,0.064,2400.0,2400.0,-0.8634,-1.1555,4.4696,89.5771 2019-06-03 15:42:28.660,129.1707,7332.5381,8.7573,-2.1318,0.6017,0.2378,2400.0,2400.0,-0.8604,-1.1585,4.4683,89.5771 2019-06-03 15:42:28.680,129.1087,7332.5933,8.7616,-2.1386,1.3853,-0.0448,2400.0,2400.0,-0.8604,-1.1585,4.4484,89.55 2019-06-03 15:42:28.700,129.1087,7333.2529,8.7518,-2.1529,1.3354,-0.0473,2400.0,2400.0,-0.8517,-1.1495,4.4537,89.522 2019-06-03 15:42:28.720,129.0777,7333.9946,8.7518,-2.1529,0.7433,0.3488,2400.0,2400.0,-0.8604,-1.1495,4.4471,89.522 2019-06-03 15:42:28.740,129.0157,7335.2588,8.7518,-2.1529,1.1723,-0.103,2400.0,2400.0,-0.8546,-1.1374,4.4444,89.522 2019-06-03 15:42:28.760,128.9949,7336.0835,8.7439,-2.1703,0.875,0.3608,2400.0,2400.0,-0.8546,-1.1314,4.4444,89.4936 2019-06-03 15:42:28.780,128.9432,7337.375,8.7439,-2.1703,1.0392,-0.1036,2400.0,2400.0,-0.8575,-1.1254,4.4325,89.4936 2019-06-03 15:42:28.800,128.9432,7338.2544,8.7396,-2.1915,0.9966,-0.0877,2400.0,2400.0,-0.8546,-1.1013,4.4444,89.453 2019-06-03 15:42:28.820,128.9535,7339.0513,8.7487,-2.194,1.1194,0.3521,2400.0,2400.0,-0.8517,-1.0982,4.4418,89.4398 2019-06-03 15:42:28.840,129.0157,7340.2876,8.7487,-2.194,0.9208,-0.08,2400.0,2400.0,-0.8546,-1.1013,4.4312,89.4398 2019-06-03 15:42:28.860,129.0053,7340.6724,8.7487,-2.194,1.3291,0.314,2400.0,2400.0,-0.8604,-1.1073,4.4378,89.4398 2019-06-03 15:42:28.880,128.9328,7340.7002,8.7347,-2.2135,0.6993,-0.0257,2400.0,2400.0,-0.8692,-1.1043,4.4073,89.4114 2019-06-03 15:42:28.900,128.9535,7340.6724,8.7231,-2.229,0.7089,0.0177,2400.0,2400.0,-0.8575,-1.1043,4.4219,89.3852 2019-06-03 15:42:28.920,128.9121,7340.7002,8.7231,-2.229,1.3491,0.1851,2400.0,2400.0,-0.8604,-1.1013,4.4246,89.3852 2019-06-03 15:42:28.940,128.8395,7340.7002,8.7231,-2.229,0.5366,0.1235,2400.0,2400.0,-0.8517,-1.0982,4.4113,89.3852 2019-06-03 15:42:28.960,128.8395,7340.7827,8.7209,-2.2386,1.4552,0.0642,2400.0,2400.0,-0.8487,-1.1013,4.4126,89.3603 2019-06-03 15:42:28.980,128.7772,7340.8374,8.7209,-2.2386,0.6116,0.2065,2400.0,2400.0,-0.8458,-1.1043,4.4007,89.3603 2019-06-03 15:42:29.000,128.7772,7340.8647,8.7044,-2.2681,0.717,0.2619,2400.0,2400.0,-0.84,-1.0952,4.4126,89.3214 2019-06-03 15:42:29.020,128.7876,7340.8647,8.6966,-2.2817,1.2071,-0.0436,2400.0,2400.0,-0.8546,-1.1043,4.414,89.3092 2019-06-03 15:42:29.040,128.8291,7340.8926,8.6966,-2.2817,0.7795,0.3059,2400.0,2400.0,-0.8517,-1.0952,4.4021,89.3092 2019-06-03 15:42:29.060,128.8602,7340.8647,8.6966,-2.2817,1.1368,-0.0949,2400.0,2400.0,-0.8546,-1.0982,4.4073,89.3092 2019-06-03 15:42:29.080,128.7772,7340.9199,8.6839,-2.3036,0.8347,0.3259,2400.0,2400.0,-0.8575,-1.0982,4.3888,89.2869 2019-06-03 15:42:29.100,128.7876,7341.6895,8.6779,-2.3236,0.9622,0.3345,2400.0,2400.0,-0.8371,-1.0952,4.4034,89.2667 2019-06-03 15:42:29.120,128.7668,7342.5415,8.6779,-2.3236,0.9689,-0.0692,2400.0,2400.0,-0.8429,-1.0952,4.4073,89.2667 2019-06-03 15:42:29.140,128.8395,7343.8062,8.6779,-2.3236,1.0026,0.2682,2400.0,2400.0,-0.8487,-1.0922,4.4047,89.2667 2019-06-03 15:42:29.160,128.8395,7344.7407,8.6619,-2.3541,0.8531,-0.0579,2400.0,2400.0,-0.8604,-1.0922,4.4073,89.2462 2019-06-03 15:42:29.180,128.7668,7346.1426,8.6619,-2.3541,1.2163,0.2686,2400.0,2400.0,-0.8721,-1.0892,4.3888,89.2462 2019-06-03 15:42:29.200,128.7772,7347.022,8.6455,-2.4046,1.25,0.2481,2400.0,2400.0,-0.8575,-1.0952,4.4073,89.2165 2019-06-03 15:42:29.220,128.7772,7347.9014,8.6323,-2.4283,0.6878,0.0208,2400.0,2400.0,-0.8546,-1.0892,4.4087,89.2073 2019-06-03 15:42:29.240,128.8395,7349.166,8.6323,-2.4283,1.2241,0.1527,2400.0,2400.0,-0.8429,-1.0892,4.3994,89.2073 2019-06-03 15:42:29.260,128.8602,7349.5781,8.6323,-2.4283,0.6797,0.1081,2400.0,2400.0,-0.8487,-1.0982,4.406,89.2073 2019-06-03 15:42:29.280,128.7668,7349.5234,8.6275,-2.4586,1.257,0.0631,2400.0,2400.0,-0.8517,-1.1013,4.3941,89.1916 2019-06-03 15:42:29.300,128.7876,7349.4683,8.6118,-2.5006,1.2337,0.0177,2400.0,2400.0,-0.84,-1.0802,4.3994,89.1745 2019-06-03 15:42:29.320,128.7252,7349.4956,8.6118,-2.5006,0.7832,0.2507,2400.0,2400.0,-0.8429,-1.1133,4.406,89.1745 2019-06-03 15:42:29.340,128.5169,7349.4683,8.6118,-2.5006,1.1187,-0.0357,2400.0,2400.0,-0.8458,-1.0952,4.3941,89.1745 2019-06-03 15:42:29.360,128.5064,7349.4956,8.5931,-2.543,0.7644,0.266,2400.0,2400.0,-0.8429,-1.0892,4.3981,89.1575 2019-06-03 15:42:29.380,128.4438,7349.4956,8.5931,-2.543,1.0114,-0.0484,2400.0,2400.0,-0.8546,-1.0952,4.3915,89.1575 2019-06-03 15:42:29.400,128.4438,7349.5234,8.5711,-2.5989,1.014,-0.0415,2340.0,2340.0,-0.8487,-1.0892,4.3901,89.1352 2019-06-03 15:42:29.420,128.4542,7349.5781,8.5718,-2.6161,0.9907,0.2891,2340.0,2340.0,-0.8429,-1.0952,4.3941,89.1295 2019-06-03 15:42:29.440,128.5064,7349.606,8.5718,-2.6161,0.9023,-0.0106,2340.0,2340.0,-0.8458,-1.0771,4.3901,89.1295 2019-06-03 15:42:29.460,128.5169,7349.606,8.5718,-2.6161,1.1705,0.2141,2340.0,2340.0,-0.8458,-1.0771,4.3941,89.1295 2019-06-03 15:42:29.480,128.4542,7349.5781,8.5514,-2.6562,0.8298,0.0381,2340.0,2340.0,-0.8546,-1.0832,4.3915,89.1168 2019-06-03 15:42:29.500,128.4542,7349.5234,8.5367,-2.6924,0.8151,0.0357,2340.0,2340.0,-0.8517,-1.0771,4.3941,89.105 2019-06-03 15:42:29.520,128.4333,7349.4683,8.5367,-2.6924,1.2026,0.1755,2340.0,2340.0,-0.8517,-1.0802,4.4021,89.105 2019-06-03 15:42:29.540,128.3602,7349.4409,8.5367,-2.6924,0.8698,0.1131,2340.0,2340.0,-0.8517,-1.0832,4.3954,89.105 2019-06-03 15:42:29.560,128.3497,7349.4409,8.528,-2.727,1.2208,0.0791,2340.0,2340.0,-0.8487,-1.0802,4.41,89.0945 2019-06-03 15:42:29.580,128.2869,7349.4409,8.528,-2.727,0.7415,0.1945,2340.0,2340.0,-0.8663,-1.0802,4.3981,89.0945 2019-06-03 15:42:29.600,128.2974,7349.5234,8.5064,-2.7819,0.8879,0.2011,2340.0,2340.0,-0.8458,-1.0771,4.406,89.0779 2019-06-03 15:42:29.620,128.2869,7349.4956,8.4992,-2.8013,0.9826,0.0386,2340.0,2340.0,-0.8429,-1.0711,4.4113,89.0731 2019-06-03 15:42:29.640,128.3602,7349.5234,8.4992,-2.8013,0.9604,0.221,2340.0,2340.0,-0.8517,-1.056,4.3968,89.0731 2019-06-03 15:42:29.660,128.3706,7349.4683,8.4992,-2.8013,0.9719,-0.0036,2340.0,2340.0,-0.8458,-1.053,4.4087,89.0731 2019-06-03 15:42:29.680,128.2869,7349.5781,8.4875,-2.8344,1.0344,0.2436,2340.0,2340.0,-0.8458,-1.053,4.4073,89.0652 2019-06-03 15:42:29.700,128.2974,7350.4033,8.4803,-2.8636,1.115,0.207,2340.0,2340.0,-0.8341,-1.0198,4.4073,89.0574 2019-06-03 15:42:29.720,128.2764,7351.3105,8.4803,-2.8636,0.6534,0.0503,2340.0,2340.0,-0.8312,-1.0017,4.41,89.0574 2019-06-03 15:42:29.740,128.3497,7352.6851,8.4803,-2.8636,1.1753,0.1685,2340.0,2340.0,-0.8283,-0.9715,4.3994,89.0574 2019-06-03 15:42:29.760,128.3602,7353.5649,8.4632,-2.8965,0.7448,0.0534,2340.0,2340.0,-0.8341,-0.9383,4.4021,89.0508 2019-06-03 15:42:29.780,128.3078,7354.8296,8.4632,-2.8965,1.1797,0.1314,2340.0,2340.0,-0.8312,-0.9413,4.4113,89.0508 2019-06-03 15:42:29.800,128.2869,7355.7095,8.4445,-2.9361,1.1779,0.0904,2340.0,2340.0,-0.8312,-0.9292,4.4021,89.039 2019-06-03 15:42:29.820,128.2974,7356.5889,8.4379,-2.9505,0.7514,0.1648,2340.0,2340.0,-0.8254,-0.9232,4.4153,89.0355 2019-06-03 15:42:29.840,128.3497,7357.9087,8.4379,-2.9505,1.1375,0.0302,2340.0,2340.0,-0.8341,-0.9051,4.4021,89.0355 2019-06-03 15:42:29.860,128.3602,7358.3486,8.4379,-2.9505,0.8864,0.2088,2340.0,2340.0,-0.8341,-0.8809,4.41,89.0355 2019-06-03 15:42:29.880,128.2869,7358.376,8.4263,-2.9716,1.0909,0.0052,2340.0,2340.0,-0.8312,-0.8779,4.4087,89.0276 2019-06-03 15:42:29.900,128.2974,7358.2935,8.4067,-2.9954,0.9704,-0.0012,2340.0,2340.0,-0.8254,-0.8083,4.3994,89.0211 2019-06-03 15:42:29.920,128.2555,7358.2661,8.4067,-2.9954,1.139,0.2399,2340.0,2340.0,-0.8078,-0.8325,4.4126,89.0211 2019-06-03 15:42:29.940,128.0455,7358.2388,8.4067,-2.9954,0.8114,-0.0194,2340.0,2340.0,-0.8107,-0.8325,4.4007,89.0211 2019-06-03 15:42:29.960,128.0034,7358.2661,8.3969,-3.0138,1.142,0.2823,2340.0,2340.0,-0.8137,-0.8325,4.4073,89.015 2019-06-03 15:42:29.980,127.9508,7358.2388,8.3969,-3.0138,0.7437,0.0201,2340.0,2340.0,-0.8341,-0.8355,4.4047,89.015 2019-06-03 15:42:30.000,127.9508,7358.2935,8.3765,-3.0321,0.6542,0.0179,2340.0,2340.0,-0.8166,-0.8355,4.4007,89.0058 2019-06-03 15:42:30.020,127.9613,7358.2935,8.3768,-3.0318,1.3635,0.1427,2340.0,2340.0,-0.8341,-0.8325,4.4126,89.0032 2019-06-03 15:42:30.040,128.0245,7358.1836,8.3768,-3.0318,0.6161,0.0952,2340.0,2340.0,-0.8312,-0.8355,4.3968,89.0032 2019-06-03 15:42:30.060,128.0455,7358.1011,8.3768,-3.0318,1.4116,0.0874,2340.0,2340.0,-0.8166,-0.8325,4.4007,89.0032 2019-06-03 15:42:30.080,127.9613,7358.0459,8.3612,-3.041,0.592,0.2146,2340.0,2340.0,-0.8166,-0.8355,4.4153,88.9966 2019-06-03 15:42:30.100,127.9613,7357.9912,8.3523,-3.0427,0.5399,0.2027,2340.0,2340.0,-0.8137,-0.8325,4.3981,88.9892 2019-06-03 15:42:30.120,127.9403,7358.0737,8.3523,-3.0427,1.2097,-0.0414,2340.0,2340.0,-0.8283,-0.8355,4.414,88.9892 2019-06-03 15:42:30.140,127.856,7358.1284,8.3523,-3.0427,0.8376,0.2896,2340.0,2340.0,-0.8312,-0.8325,4.3968,88.9892 2019-06-03 15:42:30.160,127.8454,7358.1563,8.3463,-3.0364,1.0895,-0.0884,2340.0,2340.0,-0.8254,-0.8204,4.3928,88.9826 2019-06-03 15:42:30.180,127.7926,7358.1284,8.3463,-3.0364,0.9323,0.35,2340.0,2340.0,-0.8166,-0.8234,4.4087,88.9826 2019-06-03 15:42:30.200,127.7926,7358.1563,8.3243,-3.0242,0.9338,0.3348,2340.0,2340.0,-0.8166,-0.8234,4.3915,88.9678 2019-06-03 15:42:30.220,127.7926,7358.1284,8.3079,-3.0252,0.7855,-0.112,2340.0,2340.0,-0.8078,-0.8234,4.3968,88.9634 2019-06-03 15:42:30.240,127.856,7358.1836,8.3079,-3.0252,1.1941,0.2828,2340.0,2340.0,-0.8107,-0.8265,4.3915,88.9634 2019-06-03 15:42:30.260,127.8665,7358.1563,8.3079,-3.0252,0.791,-0.0114,2340.0,2340.0,-0.8078,-0.8234,4.3901,88.9634 2019-06-03 15:42:30.280,127.8032,7358.2109,8.3014,-3.0073,1.3217,0.2399,2340.0,2340.0,-0.8137,-0.8234,4.4047,88.9564 2019-06-03 15:42:30.300,127.8032,7359.0361,8.2946,-2.9901,1.3439,0.1977,2340.0,2340.0,-0.8166,-0.8265,4.3941,88.9485 2019-06-03 15:42:30.320,127.7821,7359.8887,8.2946,-2.9901,0.578,0.0731,2340.0,2340.0,-0.8107,-0.8234,4.4007,88.9485 2019-06-03 15:42:30.340,127.856,7361.2085,8.2946,-2.9901,1.3276,0.0896,2340.0,2340.0,-0.8224,-0.8234,4.4007,88.9485 2019-06-03 15:42:30.360,127.8454,7362.1162,8.2751,-2.9754,0.6749,0.1784,2340.0,2340.0,-0.8107,-0.8265,4.3901,88.9398 2019-06-03 15:42:30.380,127.7926,7363.4912,8.2751,-2.9754,1.3413,0.0127,2340.0,2340.0,-0.8137,-0.8204,4.4087,88.9398 2019-06-03 15:42:30.400,127.7926,7364.3711,8.2616,-2.938,1.3424,-0.0165,2400.0,2400.0,-0.8107,-0.8234,4.3968,88.9271 2019-06-03 15:42:30.420,127.7926,7365.2783,8.2611,-2.9219,0.6571,0.2969,2400.0,2400.0,-0.8224,-0.8234,4.3981,88.924 2019-06-03 15:42:30.440,127.856,7366.626,8.2611,-2.9219,1.1364,-0.0978,2400.0,2400.0,-0.8166,-0.8234,4.3994,88.924 2019-06-03 15:42:30.460,127.8771,7367.0386,8.2611,-2.9219,0.8517,0.3445,2400.0,2400.0,-0.8078,-0.8204,4.3941,88.924 2019-06-03 15:42:30.480,127.7926,7366.9561,8.2488,-2.8936,1.004,-0.1059,2400.0,2400.0,-0.8195,-0.8234,4.4087,88.9144 2019-06-03 15:42:30.500,127.7926,7366.8735,8.2335,-2.8714,0.9752,-0.1148,2400.0,2400.0,-0.8254,-0.8234,4.3968,88.9065 2019-06-03 15:42:30.520,127.7926,7366.9009,8.2335,-2.8714,1.0876,0.3413,2400.0,2400.0,-0.8224,-0.8204,4.4007,88.9065 2019-06-03 15:42:30.540,127.856,7366.9282,8.2335,-2.8714,0.7895,-0.0741,2400.0,2400.0,-0.8224,-0.8416,4.4021,88.9065 2019-06-03 15:42:30.560,127.8454,7366.9834,8.2264,-2.8412,1.1642,0.2696,2400.0,2400.0,-0.8078,-0.8386,4.3981,88.8982 2019-06-03 15:42:30.580,127.7926,7367.0386,8.2264,-2.8412,0.6353,-0.0119,2400.0,2400.0,-0.8107,-0.8386,4.4073,88.8982 2019-06-03 15:42:30.600,127.7926,7367.0386,8.2081,-2.8,0.6083,0.0195,2400.0,2400.0,-0.8137,-0.8416,4.4007,88.8829 2019-06-03 15:42:30.620,127.8032,7366.9834,8.2073,-2.7803,1.3609,0.1603,2400.0,2400.0,-0.8049,-0.8386,4.3981,88.8781 2019-06-03 15:42:30.640,127.856,7367.0107,8.2073,-2.7803,0.6612,0.1213,2400.0,2400.0,-0.8137,-0.8416,4.3981,88.8781 2019-06-03 15:42:30.660,127.856,7366.9834,8.2073,-2.7803,1.2995,0.0638,2400.0,2400.0,-0.8107,-0.8386,4.3941,88.8781 2019-06-03 15:42:30.680,127.7926,7367.0107,8.1896,-2.7528,0.6745,0.2249,2400.0,2400.0,-0.8107,-0.8446,4.414,88.8668 2019-06-03 15:42:30.700,127.7926,7366.9282,8.1861,-2.7174,0.6316,0.2334,2400.0,2400.0,-0.8283,-0.8446,4.4007,88.8554 2019-06-03 15:42:30.720,127.7504,7366.9561,8.1861,-2.7174,1.2193,-0.0127,2400.0,2400.0,-0.8049,-0.8416,4.3981,88.8554 2019-06-03 15:42:30.740,127.7081,7366.8735,8.1861,-2.7174,0.7618,0.3062,2400.0,2400.0,-0.802,-0.8446,4.3968,88.8554 2019-06-03 15:42:30.760,127.687,7366.8735,8.1812,-2.6804,1.0399,-0.0644,2400.0,2400.0,-0.7932,-0.8416,4.3915,88.8419 2019-06-03 15:42:30.780,127.6341,7366.8735,8.1812,-2.6804,0.9382,0.306,2400.0,2400.0,-0.802,-0.8416,4.4153,88.8419 2019-06-03 15:42:30.800,127.6447,7366.8735,8.1628,-2.6298,0.9038,0.2918,2400.0,2400.0,-0.8137,-0.8446,4.3994,88.82 2019-06-03 15:42:30.820,127.6341,7366.8184,8.1498,-2.6178,0.97,-0.0628,2400.0,2400.0,-0.8078,-0.8446,4.3968,88.8121 2019-06-03 15:42:30.840,127.6976,7366.791,8.1498,-2.6178,1.1087,0.3113,2400.0,2400.0,-0.8107,-0.8446,4.3968,88.8121 2019-06-03 15:42:30.860,127.6976,7366.791,8.1498,-2.6178,0.7396,-0.0588,2400.0,2400.0,-0.7961,-0.8386,4.3941,88.8121 2019-06-03 15:42:30.880,127.6447,7366.791,8.1441,-2.5846,1.2245,0.2317,2400.0,2400.0,-0.7874,-0.8416,4.4073,88.7973 2019-06-03 15:42:30.900,127.6341,7367.5337,8.1373,-2.554,1.2674,0.1896,2400.0,2400.0,-0.7991,-0.8416,4.3954,88.7811 2019-06-03 15:42:30.920,127.6023,7368.3311,8.1373,-2.554,0.7407,0.0847,2400.0,2400.0,-0.7961,-0.8416,4.3954,88.7811 2019-06-03 15:42:30.940,127.5281,7369.624,8.1373,-2.554,1.2085,0.1181,2400.0,2400.0,-0.8107,-0.8416,4.4073,88.7811 2019-06-03 15:42:30.960,127.5281,7370.5039,8.1198,-2.5297,0.6782,0.1601,2400.0,2400.0,-0.8049,-0.8386,4.3968,88.7654 2019-06-03 15:42:30.980,127.4539,7371.9067,8.1198,-2.5297,1.2411,0.0173,2400.0,2400.0,-0.7932,-0.8416,4.4126,88.7654 2019-06-03 15:42:31.000,127.4645,7372.8418,8.1058,-2.4913,1.1819,0.003,2400.0,2400.0,-0.7932,-0.8446,4.4021,88.7396 2019-06-03 15:42:31.020,127.4751,7373.667,8.105,-2.4758,0.8228,0.2716,2400.0,2400.0,-0.7786,-0.8446,4.3994,88.7308 2019-06-03 15:42:31.040,127.5387,7374.9048,8.105,-2.4758,1.0066,0.0205,2400.0,2400.0,-0.7844,-0.8386,4.406,88.7308 2019-06-03 15:42:31.060,127.5387,7375.3999,8.105,-2.4758,0.9741,0.2328,2400.0,2400.0,-0.7932,-0.8446,4.3954,88.7308 2019-06-03 15:42:31.080,127.4539,7375.3999,8.0906,-2.4582,0.9863,-0.0418,2400.0,2400.0,-0.7961,-0.8416,4.4007,88.7112 2019-06-03 15:42:31.100,127.4645,7375.3174,8.0765,-2.4388,0.8757,0.002,2400.0,2400.0,-0.8078,-0.8416,4.3981,88.6919 2019-06-03 15:42:31.120,127.4326,7375.3174,8.0765,-2.4388,1.1353,0.225,2400.0,2400.0,-0.802,-0.8416,4.3954,88.6919 2019-06-03 15:42:31.140,127.3582,7375.3174,8.0765,-2.4388,0.7296,0.0695,2400.0,2400.0,-0.7903,-0.8416,4.4034,88.6919 2019-06-03 15:42:31.160,127.3689,7375.2349,8.0662,-2.4172,1.1272,0.1595,2400.0,2400.0,-0.7698,-0.8386,4.3928,88.6714 2019-06-03 15:42:31.180,127.2944,7375.1802,8.0662,-2.4172,0.8406,0.081,2400.0,2400.0,-0.764,-0.8446,4.406,88.6714 2019-06-03 15:42:31.200,127.2944,7375.2349,8.0457,-2.3941,0.74,0.1561,2400.0,2400.0,-0.7932,-0.8597,4.3941,88.6377 2019-06-03 15:42:31.220,127.2944,7375.1802,8.0395,-2.3881,1.1146,0.0573,2400.0,2400.0,-0.7786,-0.8537,4.3994,88.6268 2019-06-03 15:42:31.240,127.3476,7375.1802,8.0395,-2.3881,0.8102,0.2332,2400.0,2400.0,-0.7903,-0.8476,4.406,88.6268 2019-06-03 15:42:31.260,127.3582,7375.1802,8.0395,-2.3881,0.8343,0.0161,2400.0,2400.0,-0.7874,-0.8507,4.3941,88.6268 2019-06-03 15:42:31.280,127.2944,7375.2349,8.0272,-2.3753,1.0639,0.2312,2400.0,2400.0,-0.7903,-0.8446,4.3981,88.6045 2019-06-03 15:42:31.300,127.305,7375.1802,8.021,-2.3582,1.0325,0.2745,2400.0,2400.0,-0.7932,-0.8507,4.4126,88.5822 2019-06-03 15:42:31.320,127.2944,7375.2349,8.021,-2.3582,0.7881,0.0138,2400.0,2400.0,-0.7786,-0.8476,4.3968,88.5822 2019-06-03 15:42:31.340,127.3582,7375.3452,8.021,-2.3582,1.2818,0.205,2400.0,2400.0,-0.7698,-0.8537,4.4034,88.5822 2019-06-03 15:42:31.360,127.3476,7375.3726,8.0043,-2.3501,0.6198,0.0788,2400.0,2400.0,-0.7669,-0.8507,4.3901,88.5586 2019-06-03 15:42:31.380,127.2838,7375.4824,8.0043,-2.3501,1.3262,0.1067,2400.0,2400.0,-0.7669,-0.8476,4.3994,88.5586 2019-06-03 15:42:31.400,127.2944,7375.5649,7.988,-2.3373,1.294,0.1208,2400.0,2340.0,-0.7786,-0.8537,4.4126,88.5245 2019-06-03 15:42:31.420,127.2944,7375.5649,7.9794,-2.3372,0.6941,0.166,2400.0,2340.0,-0.7757,-0.8507,4.3954,88.5136 2019-06-03 15:42:31.440,127.3582,7375.6201,7.9794,-2.3372,1.2884,0.0113,2400.0,2340.0,-0.7757,-0.8507,4.4021,88.5136 2019-06-03 15:42:31.460,127.3689,7375.6201,7.9794,-2.3372,0.7333,0.2768,2400.0,2340.0,-0.7727,-0.8537,4.3968,88.5136 2019-06-03 15:42:31.480,127.2944,7375.7026,7.9704,-2.3328,1.041,-0.0744,2400.0,2340.0,-0.7727,-0.8476,4.3981,88.4908 2019-06-03 15:42:31.500,127.305,7376.5278,7.9504,-2.337,0.9678,-0.0363,2400.0,2340.0,-0.7698,-0.8476,4.4166,88.4677 2019-06-03 15:42:31.520,127.2838,7377.4082,7.9504,-2.337,1.014,0.3025,2400.0,2340.0,-0.7669,-0.8537,4.3981,88.4677 2019-06-03 15:42:31.540,127.3476,7378.7837,7.9504,-2.337,0.8587,-0.0638,2400.0,2340.0,-0.7727,-0.8537,4.3981,88.4677 2019-06-03 15:42:31.560,127.3689,7379.6367,7.9365,-2.3396,1.1509,0.2812,2400.0,2340.0,-0.7727,-0.8507,4.3981,88.4436 2019-06-03 15:42:31.580,127.2944,7380.9297,7.9293,-2.3393,0.6335,-0.0116,2400.0,2340.0,-0.7757,-0.8507,4.3941,88.4178 2019-06-03 15:42:31.600,127.2944,7381.8379,7.9144,-2.3487,0.6501,0.0422,2400.0,2340.0,-0.7698,-0.8507,4.4113,88.4043 2019-06-03 15:42:31.620,127.2944,7382.7183,7.9118,-2.3455,1.3635,0.1566,2400.0,2340.0,-0.7727,-0.8507,4.3901,88.3925 2019-06-03 15:42:31.640,127.3582,7384.0938,7.9118,-2.3455,0.5506,0.1172,2400.0,2340.0,-0.7757,-0.8507,4.4034,88.3925 2019-06-03 15:42:31.660,127.3582,7384.5063,7.9118,-2.3455,1.4134,0.0597,2400.0,2340.0,-0.7786,-0.8688,4.4021,88.3925 2019-06-03 15:42:31.680,127.2838,7384.479,7.8929,-2.3585,0.5284,0.2138,2400.0,2340.0,-0.7698,-0.8507,4.3954,88.3671 2019-06-03 15:42:31.700,127.2944,7384.3687,7.8826,-2.3604,0.6039,0.2786,2400.0,2340.0,-0.7669,-0.8507,4.406,88.3413 2019-06-03 15:42:31.720,127.2625,7384.3687,7.8826,-2.3604,1.2285,-0.0748,2400.0,2340.0,-0.7552,-0.8567,4.3928,88.3413 2019-06-03 15:42:31.740,127.1879,7384.479,7.8826,-2.3604,0.7581,0.3375,2400.0,2340.0,-0.7698,-0.8507,4.4047,88.3413 2019-06-03 15:42:31.760,127.1665,7384.5337,7.8746,-2.3617,1.1431,-0.1372,2400.0,2340.0,-0.7844,-0.8688,4.4034,88.3177 2019-06-03 15:42:31.780,127.1132,7384.5615,7.8746,-2.3617,0.8727,0.3792,2400.0,2340.0,-0.7786,-0.8688,4.3928,88.3177 2019-06-03 15:42:31.800,127.1132,7384.5889,7.8537,-2.3747,0.9867,0.3914,2400.0,2340.0,-0.7786,-0.8688,4.41,88.2771 2019-06-03 15:42:31.820,127.1239,7384.5615,7.835,-2.385,0.8206,-0.1149,2400.0,2340.0,-0.7611,-0.8658,4.3888,88.2631 2019-06-03 15:42:31.840,127.1879,7384.5337,7.835,-2.385,1.1094,0.3429,2400.0,2340.0,-0.764,-0.8386,4.3915,88.2631 2019-06-03 15:42:31.860,127.1879,7384.5063,7.835,-2.385,0.7666,-0.077,2400.0,2340.0,-0.7727,-0.8476,4.406,88.2631 2019-06-03 15:42:31.880,127.1132,7384.5337,7.8309,-2.3882,1.2337,0.2616,2400.0,2340.0,-0.7727,-0.8386,4.3915,88.2386 2019-06-03 15:42:31.900,127.1345,7384.479,7.8185,-2.3945,1.3058,0.2369,2400.0,2340.0,-0.7757,-0.8476,4.4021,88.2133 2019-06-03 15:42:31.920,127.1132,7384.4238,7.8185,-2.3945,0.5961,0.0689,2400.0,2340.0,-0.764,-0.8688,4.3928,88.2133 2019-06-03 15:42:31.940,127.1772,7384.3687,7.8185,-2.3945,1.3432,0.1259,2400.0,2340.0,-0.7581,-0.8597,4.3954,88.2133 2019-06-03 15:42:31.960,127.1772,7384.3965,7.795,-2.4074,0.7045,0.1603,2400.0,2340.0,-0.764,-0.8567,4.4047,88.1875 2019-06-03 15:42:31.980,127.1345,7384.3413,7.795,-2.4074,1.1878,0.0678,2400.0,2340.0,-0.7611,-0.8567,4.3901,88.1875 2019-06-03 15:42:32.000,127.1239,7384.3413,7.779,-2.4198,1.1893,0.0639,2400.0,2340.0,-0.764,-0.8597,4.4021,88.1521 2019-06-03 15:42:32.020,127.1345,7384.314,7.7757,-2.4253,0.8099,0.2134,2400.0,2340.0,-0.7669,-0.8567,4.3954,88.1407 2019-06-03 15:42:32.040,127.1879,7384.2588,7.7757,-2.4253,1.1875,0.0034,2400.0,2340.0,-0.764,-0.8597,4.3941,88.1407 2019-06-03 15:42:32.060,127.1985,7384.2036,7.7757,-2.4253,0.9023,0.2649,2400.0,2340.0,-0.7844,-0.8597,4.3968,88.1407 2019-06-03 15:42:32.080,127.1239,7384.2861,7.7626,-2.4377,1.0048,-0.0084,2400.0,2340.0,-0.7611,-0.8567,4.3941,88.118 2019-06-03 15:42:32.100,127.1239,7385.1118,7.7429,-2.4554,0.9415,-0.0246,2400.0,2340.0,-0.7669,-0.8658,4.3981,88.0944 2019-06-03 15:42:32.120,127.0918,7385.9648,7.7429,-2.4554,1.0373,0.2769,2400.0,2340.0,-0.7611,-0.8627,4.4021,88.0944 2019-06-03 15:42:32.140,127.0384,7387.2305,7.7429,-2.4554,0.9511,-0.0161,2400.0,2340.0,-0.7611,-0.8627,4.3915,88.0944 2019-06-03 15:42:32.160,127.0277,7388.0562,7.7287,-2.47,1.1963,0.2266,2400.0,2340.0,-0.764,-0.8627,4.3954,88.0725 2019-06-03 15:42:32.180,126.9635,7389.4043,7.7287,-2.47,0.7315,0.0723,2400.0,2340.0,-0.7611,-0.8627,4.3928,88.0725 2019-06-03 15:42:32.200,126.9635,7390.2852,7.7082,-2.495,0.7588,0.0899,2400.0,2340.0,-0.7669,-0.8597,4.406,88.0388 2019-06-03 15:42:32.220,126.9635,7391.1655,7.7037,-2.5036,1.1253,0.1101,2400.0,2340.0,-0.7698,-0.8658,4.4034,88.027 2019-06-03 15:42:32.240,127.017,7392.5142,7.7037,-2.5036,0.818,0.1482,2400.0,2340.0,-0.7669,-0.8597,4.3981,88.027 2019-06-03 15:42:32.260,127.0384,7392.8994,7.7037,-2.5036,1.132,0.0348,2400.0,2340.0,-0.7757,-0.8597,4.3981,88.027 2019-06-03 15:42:32.280,126.9635,7392.8442,7.6874,-2.5232,0.865,0.2287,2400.0,2340.0,-0.7669,-0.8567,4.3901,88.0061 2019-06-03 15:42:32.300,126.9742,7392.7891,7.6743,-2.5407,0.8583,0.2363,2400.0,2340.0,-0.7669,-0.8567,4.3994,87.9842 2019-06-03 15:42:32.320,126.9635,7392.8442,7.6743,-2.5407,1.0318,-0.0247,2400.0,2340.0,-0.7669,-0.8688,4.4021,87.9842 2019-06-03 15:42:32.340,127.017,7392.9268,7.6743,-2.5407,1.01,0.2619,2400.0,2340.0,-0.7611,-0.8537,4.3968,87.9842 2019-06-03 15:42:32.360,127.0277,7392.9541,7.6604,-2.561,0.8132,-0.0122,2400.0,2340.0,-0.7698,-0.8597,4.3994,87.9619 2019-06-03 15:42:32.380,126.9635,7393.0093,7.6604,-2.561,1.1094,0.2722,2400.0,2340.0,-0.764,-0.8597,4.3915,87.9619 2019-06-03 15:42:32.400,126.9635,7392.9819,7.6392,-2.5917,1.1202,0.2592,2340.0,2400.0,-0.7611,-0.8567,4.3941,87.9309 2019-06-03 15:42:32.420,126.9742,7392.9268,7.6252,-2.6089,0.6631,-0.0089,2340.0,2400.0,-0.764,-0.8597,4.4047,87.9191 2019-06-03 15:42:32.440,127.0384,7392.8994,7.6252,-2.6089,1.412,0.2015,2340.0,2400.0,-0.7611,-0.8597,4.3915,87.9191 2019-06-03 15:42:32.460,127.0384,7392.8994,7.6252,-2.6089,0.6579,0.0889,2340.0,2400.0,-0.764,-0.8809,4.4021,87.9191 2019-06-03 15:42:32.480,126.9635,7392.8994,7.616,-2.6279,1.3236,0.1617,2340.0,2400.0,-0.764,-0.8718,4.3901,87.8981 2019-06-03 15:42:32.500,126.9742,7392.7617,7.5978,-2.648,1.4131,0.1249,2340.0,2400.0,-0.764,-0.8718,4.3954,87.8758 2019-06-03 15:42:32.520,126.9742,7392.7617,7.5978,-2.648,0.4963,0.1859,2340.0,2400.0,-0.7698,-0.8779,4.4021,87.8758 2019-06-03 15:42:32.540,127.1985,7392.6792,7.5978,-2.648,1.4049,0.0085,2340.0,2400.0,-0.764,-0.8416,4.3941,87.8758 2019-06-03 15:42:32.560,127.1879,7392.6792,7.5736,-2.6755,0.5728,0.2769,2340.0,2400.0,-0.7698,-0.8416,4.4007,87.8531 2019-06-03 15:42:32.580,127.1239,7392.7065,7.5736,-2.6755,1.2637,-0.0387,2340.0,2400.0,-0.7669,-0.8416,4.3941,87.8531 2019-06-03 15:42:32.600,127.1345,7392.7344,7.5546,-2.7028,1.3066,-0.0627,2340.0,2400.0,-0.7669,-0.8416,4.3994,87.8207 2019-06-03 15:42:32.620,127.1239,7392.7065,7.557,-2.7102,0.5551,0.358,2340.0,2400.0,-0.7698,-0.8567,4.4047,87.8098 2019-06-03 15:42:32.640,127.1879,7392.7617,7.557,-2.7102,1.3003,-0.1233,2340.0,2400.0,-0.7698,-0.8567,4.3941,87.8098 2019-06-03 15:42:32.660,127.1985,7392.7065,7.557,-2.7102,0.7614,0.3875,2340.0,2400.0,-0.7669,-0.8537,4.4073,87.8098 2019-06-03 15:42:32.680,127.1132,7392.7065,7.5397,-2.731,1.108,-0.125,2340.0,2400.0,-0.7698,-0.8507,4.3994,87.7884 2019-06-03 15:42:32.700,127.1345,7392.624,7.5168,-2.7582,1.1941,-0.1323,2340.0,2400.0,-0.7669,-0.8567,4.3968,87.7665 2019-06-03 15:42:32.720,127.1239,7392.624,7.5168,-2.7582,0.8557,0.3902,2340.0,2400.0,-0.7727,-0.8567,4.4034,87.7665 2019-06-03 15:42:32.740,127.1772,7392.624,7.5168,-2.7582,1.0643,-0.1259,2340.0,2400.0,-0.7727,-0.8537,4.3954,87.7665 2019-06-03 15:42:32.760,127.1879,7392.624,7.5024,-2.781,0.9915,0.3576,2340.0,2400.0,-0.7669,-0.8507,4.406,87.7447 2019-06-03 15:42:32.780,127.1239,7392.7065,7.5024,-2.781,0.9012,-0.0567,2340.0,2400.0,-0.764,-0.8537,4.3981,87.7447 2019-06-03 15:42:32.800,127.1132,7392.7065,7.4776,-2.8126,0.8772,-0.063,2340.0,2400.0,-0.7611,-0.8567,4.3915,87.7106 2019-06-03 15:42:32.820,127.1345,7392.7065,7.4799,-2.8157,0.9985,0.2982,2340.0,2400.0,-0.7669,-0.8507,4.4047,87.7009 2019-06-03 15:42:32.840,127.1879,7392.7065,7.4799,-2.8157,0.7936,-0.0414,2340.0,2400.0,-0.764,-0.8537,4.3928,87.7009 2019-06-03 15:42:32.860,127.1985,7392.7065,7.4799,-2.8157,1.1231,0.2442,2340.0,2400.0,-0.7727,-0.8567,4.3981,87.7009 2019-06-03 15:42:32.880,127.1239,7392.8169,7.4584,-2.8403,0.8402,0.0395,2340.0,2400.0,-0.7611,-0.8537,4.3954,87.68 2019-06-03 15:42:32.900,127.1345,7393.6699,7.4431,-2.8599,0.8014,0.0281,2340.0,2400.0,-0.7552,-0.8537,4.3915,87.6594 2019-06-03 15:42:32.920,127.1132,7394.5508,7.4431,-2.8599,1.1878,0.2094,2340.0,2400.0,-0.764,-0.8507,4.4021,87.6594 2019-06-03 15:42:32.940,127.1985,7395.8994,7.4431,-2.8599,0.6841,0.0602,2340.0,2400.0,-0.7581,-0.8567,4.3928,87.6594 2019-06-03 15:42:32.960,127.1985,7396.7251,7.4362,-2.8759,1.2341,0.1295,2340.0,2400.0,-0.764,-0.8567,4.4021,87.6402 2019-06-03 15:42:32.980,127.1345,7397.9912,7.4283,-2.8903,0.7607,0.151,2340.0,2400.0,-0.7611,-0.8567,4.3981,87.6236 2019-06-03 15:42:33.000,127.1345,7398.8721,7.4154,-2.9027,0.8173,0.158,2340.0,2400.0,-0.7581,-0.8537,4.3954,87.6135 2019-06-03 15:42:33.020,127.1239,7399.8076,7.4098,-2.9107,1.156,0.0981,2340.0,2400.0,-0.764,-0.8567,4.3994,87.6035 2019-06-03 15:42:33.040,127.1879,7401.1016,7.4098,-2.9107,0.7174,0.1706,2340.0,2400.0,-0.7581,-0.8537,4.3941,87.6035 2019-06-03 15:42:33.060,127.1985,7401.5693,7.4098,-2.9107,1.1952,0.0331,2340.0,2400.0,-0.7581,-0.8567,4.3981,87.6035 2019-06-03 15:42:33.080,127.1239,7401.542,7.3936,-2.9271,0.8306,0.2322,2340.0,2400.0,-0.7611,-0.8597,4.3981,87.5842 2019-06-03 15:42:33.100,127.1239,7401.459,7.3863,-2.9432,0.7936,0.2341,2340.0,2400.0,-0.764,-0.8567,4.3941,87.5646 2019-06-03 15:42:33.120,127.1345,7401.3765,7.3863,-2.9432,1.0088,0.0273,2340.0,2400.0,-0.7698,-0.8597,4.4007,87.5646 2019-06-03 15:42:33.140,127.1985,7401.459,7.3863,-2.9432,0.9205,0.2321,2340.0,2400.0,-0.7669,-0.8567,4.3915,87.5646 2019-06-03 15:42:33.160,127.1879,7401.5142,7.3759,-2.9587,1.0051,0.0191,2340.0,2400.0,-0.7581,-0.8597,4.3981,87.5444 2019-06-03 15:42:33.180,127.1239,7401.5142,7.3759,-2.9587,0.8879,0.2488,2340.0,2400.0,-0.7581,-0.8537,4.3994,87.5444 2019-06-03 15:42:33.200,127.1132,7401.542,7.3586,-2.9862,0.9907,0.2537,2340.0,2400.0,-0.7581,-0.8567,4.3915,87.5117 2019-06-03 15:42:33.220,127.1239,7401.542,7.3494,-2.9968,0.8642,0.0448,2340.0,2400.0,-0.7669,-0.8567,4.3994,87.5012 2019-06-03 15:42:33.240,127.2092,7401.459,7.3494,-2.9968,0.9704,0.2013,2340.0,2400.0,-0.7669,-0.8537,4.3928,87.5012 2019-06-03 15:42:33.260,127.1985,7401.4316,7.3494,-2.9968,0.9796,0.0262,2340.0,2400.0,-0.7581,-0.8537,4.4007,87.5012 2019-06-03 15:42:33.280,127.1345,7401.4316,7.3422,-3.0146,1.0725,0.2064,2340.0,2400.0,-0.7523,-0.8507,4.3994,87.4811 2019-06-03 15:42:33.300,127.1345,7401.3765,7.333,-3.0333,1.0725,0.2058,2340.0,2400.0,-0.7464,-0.8507,4.3954,87.4601 2019-06-03 15:42:33.320,127.1132,7401.3491,7.333,-3.0333,0.8661,0.0727,2340.0,2400.0,-0.7581,-0.8567,4.3994,87.4601 2019-06-03 15:42:33.340,127.1985,7401.3218,7.333,-3.0333,1.1098,0.1716,2340.0,2400.0,-0.7552,-0.8507,4.3915,87.4601 2019-06-03 15:42:33.360,127.1772,7401.2939,7.3191,-3.0572,0.8239,0.0695,2340.0,2400.0,-0.7611,-0.8537,4.4007,87.4382 2019-06-03 15:42:33.380,127.1345,7401.2666,7.3191,-3.0572,1.1442,0.1628,2340.0,2400.0,-0.7552,-0.8597,4.4034,87.4382 2019-06-03 15:42:33.400,127.1345,7401.2666,7.3048,-3.0878,1.169,0.1512,2400.0,2340.0,-0.7552,-0.8507,4.3915,87.4054 2019-06-03 15:42:33.420,127.1452,7401.2666,7.2982,-3.0989,0.7581,0.1221,2400.0,2340.0,-0.7581,-0.8597,4.4073,87.395 2019-06-03 15:42:33.440,127.1879,7401.3218,7.2982,-3.0989,1.1427,0.1145,2400.0,2340.0,-0.7669,-0.8537,4.3901,87.395 2019-06-03 15:42:33.460,127.2092,7401.2666,7.2982,-3.0989,0.8872,0.1304,2400.0,2340.0,-0.7698,-0.8567,4.3968,87.395 2019-06-03 15:42:33.480,127.1345,7401.3491,7.2903,-3.1178,1.1538,0.1312,2400.0,2340.0,-0.7611,-0.8567,4.4047,87.3731 2019-06-03 15:42:33.500,127.1345,7402.1475,7.276,-3.1404,1.1431,0.1178,2400.0,2340.0,-0.7523,-0.8597,4.3954,87.3521 2019-06-03 15:42:33.520,127.1239,7403.001,7.276,-3.1404,0.7999,0.1577,2400.0,2340.0,-0.7552,-0.8597,4.3994,87.3521 2019-06-03 15:42:33.540,127.1985,7404.2671,7.276,-3.1404,1.1509,0.0812,2400.0,2340.0,-0.7611,-0.8597,4.3901,87.3521 2019-06-03 15:42:33.560,127.1879,7405.1758,7.2632,-3.1647,0.8247,0.1544,2400.0,2340.0,-0.7669,-0.8597,4.3994,87.3307 2019-06-03 15:42:33.580,127.1345,7406.4419,7.2632,-3.1647,1.1901,0.0683,2400.0,2340.0,-0.7581,-0.8567,4.4073,87.3307 2019-06-03 15:42:33.600,127.1345,7407.3232,7.2485,-3.1936,1.2167,0.0537,2400.0,2340.0,-0.7581,-0.8627,4.3875,87.3001 2019-06-03 15:42:33.620,127.1345,7408.1763,7.2479,-3.201,0.8546,0.2319,2400.0,2340.0,-0.7581,-0.8597,4.3968,87.2909 2019-06-03 15:42:33.640,127.1985,7409.4429,7.2479,-3.201,1.0529,0.0249,2400.0,2340.0,-0.7523,-0.8567,4.3901,87.2909 2019-06-03 15:42:33.660,127.2092,7409.856,7.2479,-3.201,0.8472,0.2455,2400.0,2340.0,-0.7464,-0.8597,4.3981,87.2909 2019-06-03 15:42:33.680,127.1345,7409.8833,7.2348,-3.2179,1.1424,0.0156,2400.0,2340.0,-0.7435,-0.8567,4.4021,87.2717 2019-06-03 15:42:33.700,127.1452,7409.8281,7.2181,-3.2416,1.0728,0.0169,2400.0,2340.0,-0.7464,-0.8567,4.3915,87.2533 2019-06-03 15:42:33.720,127.1345,7409.8281,7.2181,-3.2416,0.8702,0.2682,2400.0,2340.0,-0.7552,-0.8597,4.3994,87.2533 2019-06-03 15:42:33.740,127.3582,7409.8281,7.2181,-3.2416,1.1065,-0.003,2400.0,2340.0,-0.7523,-0.8597,4.3981,87.2533 2019-06-03 15:42:33.760,127.3689,7409.8281,7.2079,-3.2595,0.8502,0.2898,2400.0,2340.0,-0.764,-0.8537,4.3994,87.235 2019-06-03 15:42:33.780,127.2944,7409.8281,7.2079,-3.2595,1.115,-0.0183,2400.0,2340.0,-0.7552,-0.8597,4.406,87.235 2019-06-03 15:42:33.800,127.2944,7409.856,7.1899,-3.2846,1.0007,0.0034,2400.0,2340.0,-0.7581,-0.8567,4.3901,87.2083 2019-06-03 15:42:33.820,127.305,7409.8281,7.1932,-3.289,0.8901,0.2912,2400.0,2340.0,-0.7611,-0.8597,4.3968,87.2004 2019-06-03 15:42:33.840,127.3582,7409.8281,7.1932,-3.289,1.0273,-0.0083,2400.0,2340.0,-0.7523,-0.8597,4.3928,87.2004 2019-06-03 15:42:33.860,127.3795,7409.7734,7.1932,-3.289,0.9171,0.2956,2400.0,2340.0,-0.7494,-0.8567,4.4007,87.2004 2019-06-03 15:42:33.880,127.305,7409.7456,7.1793,-3.3052,0.9841,-0.0192,2400.0,2340.0,-0.7347,-0.8597,4.406,87.1829 2019-06-03 15:42:33.900,127.2944,7409.6904,7.1646,-3.3241,1.0381,-0.0211,2400.0,2340.0,-0.7347,-0.8567,4.3915,87.1655 2019-06-03 15:42:33.920,127.2838,7409.6904,7.1646,-3.3241,0.99,0.2915,2400.0,2340.0,-0.7435,-0.8597,4.3981,87.1655 2019-06-03 15:42:33.940,127.3689,7409.7456,7.1646,-3.3241,1.0233,0.0061,2400.0,2340.0,-0.7523,-0.8567,4.3901,87.1655 2019-06-03 15:42:33.960,127.3582,7409.8008,7.1558,-3.3382,0.9193,0.2963,2400.0,2340.0,-0.7435,-0.8597,4.4021,87.1493 2019-06-03 15:42:33.980,127.2838,7409.856,7.1558,-3.3382,0.9752,0.0177,2400.0,2340.0,-0.7377,-0.8597,4.406,87.1493 2019-06-03 15:42:34.000,127.2944,7409.9385,7.1384,-3.3604,1.0173,-0.0018,2400.0,2340.0,-0.7318,-0.8567,4.3915,87.1257 2019-06-03 15:42:34.020,127.305,7409.9385,7.1409,-3.3625,1.0333,0.2643,2400.0,2340.0,-0.7406,-0.8597,4.3968,87.1187 2019-06-03 15:42:34.040,127.3582,7410.021,7.1409,-3.3625,1.0074,0.0085,2400.0,2340.0,-0.7347,-0.8627,4.3954,87.1187 2019-06-03 15:42:34.060,127.3582,7410.021,7.1409,-3.3625,1.0162,0.2813,2400.0,2340.0,-0.7406,-0.8627,4.4047,87.1187 2019-06-03 15:42:34.080,127.2838,7410.0483,7.1269,-3.382,0.997,-0.0174,2400.0,2340.0,-0.7523,-0.8627,4.4047,87.1016 2019-06-03 15:42:34.100,127.305,7409.9658,7.1123,-3.3985,0.9915,-0.0244,2400.0,2340.0,-0.7464,-0.8627,4.3875,87.0855 2019-06-03 15:42:34.120,127.305,7409.9937,7.1123,-3.3985,1.0303,0.2654,2400.0,2340.0,-0.7435,-0.8627,4.3994,87.0855 2019-06-03 15:42:34.140,127.5175,7409.9937,7.1123,-3.3985,0.8787,0.0203,2400.0,2340.0,-0.7435,-0.8658,4.3968,87.0855 2019-06-03 15:42:34.160,127.5281,7410.021,7.1059,-3.4115,1.0994,0.2674,2400.0,2340.0,-0.7435,-0.8597,4.4021,87.0702 2019-06-03 15:42:34.180,127.4539,7409.9937,7.1059,-3.4115,0.8594,0.0081,2400.0,2340.0,-0.7435,-0.8688,4.4034,87.0702 2019-06-03 15:42:34.200,127.4645,7409.9937,7.0859,-3.4382,0.9227,0.0045,2400.0,2340.0,-0.7464,-0.8597,4.3954,87.0452 2019-06-03 15:42:34.220,127.4645,7409.9937,7.0869,-3.4419,1.156,0.218,2400.0,2340.0,-0.7523,-0.8658,4.4047,87.0378 2019-06-03 15:42:34.240,127.5175,7410.0483,7.0869,-3.4419,0.7807,0.0768,2400.0,2340.0,-0.7464,-0.8658,4.3954,87.0378 2019-06-03 15:42:34.260,127.5387,7410.0483,7.0869,-3.4419,1.2148,0.2066,2400.0,2340.0,-0.7435,-0.8627,4.3981,87.0378 2019-06-03 15:42:34.280,127.4645,7410.0762,7.072,-3.4619,0.7529,0.0683,2400.0,2340.0,-0.7494,-0.8658,4.4021,87.0208 2019-06-03 15:42:34.300,127.4751,7410.8745,7.0624,-3.479,0.7991,0.057,2400.0,2340.0,-0.7464,-0.8658,4.3901,87.005 2019-06-03 15:42:34.320,127.4857,7411.7007,7.0624,-3.479,1.2256,0.1639,2400.0,2340.0,-0.7494,-0.8627,4.4021,87.005 2019-06-03 15:42:34.340,127.7081,7413.0225,7.0624,-3.479,0.7862,0.1037,2400.0,2340.0,-0.7494,-0.8658,4.3981,87.005 2019-06-03 15:42:34.360,127.6976,7413.9038,7.0607,-3.4915,1.2333,0.1626,2400.0,2340.0,-0.7406,-0.8627,4.4073,86.9897 2019-06-03 15:42:34.380,127.6447,7415.1978,7.0513,-3.505,0.73,0.1238,2400.0,2340.0,-0.7435,-0.8627,4.406,86.9718 2019-06-03 15:42:34.400,127.6447,7416.1064,7.0392,-3.5171,0.7193,0.1278,2400.0,2400.0,-0.7464,-0.8627,4.3901,86.9635 2019-06-03 15:42:34.420,127.6447,7416.9326,7.0345,-3.5212,1.3162,0.0865,2400.0,2400.0,-0.7464,-0.8627,4.4087,86.9552 2019-06-03 15:42:34.440,127.7081,7418.3096,7.0345,-3.5212,0.6963,0.1938,2400.0,2400.0,-0.7464,-0.8658,4.3994,86.9552 2019-06-03 15:42:34.460,127.7187,7418.75,7.0345,-3.5212,1.2895,0.0756,2400.0,2400.0,-0.7435,-0.8658,4.4021,86.9552 2019-06-03 15:42:34.480,127.6341,7418.7222,7.0211,-3.5357,0.6623,0.1911,2400.0,2400.0,-0.7435,-0.8627,4.4047,86.939 2019-06-03 15:42:34.500,127.6341,7418.6948,7.0177,-3.5453,0.6531,0.2177,2400.0,2400.0,-0.7406,-0.8627,4.3901,86.9233 2019-06-03 15:42:34.520,127.6129,7418.75,7.0177,-3.5453,1.3772,-0.0067,2400.0,2400.0,-0.7523,-0.8658,4.4021,86.9233 2019-06-03 15:42:34.540,127.7081,7418.8052,7.0177,-3.5453,0.7163,0.275,2400.0,2400.0,-0.7406,-0.8688,4.4034,86.9233 2019-06-03 15:42:34.560,127.7081,7418.8599,7.0149,-3.5515,1.3047,-0.0276,2400.0,2400.0,-0.7377,-0.8658,4.3968,86.9084 2019-06-03 15:42:34.580,127.6447,7418.8599,7.0149,-3.5515,0.6416,0.3189,2400.0,2400.0,-0.7289,-0.8688,4.4087,86.9084 2019-06-03 15:42:34.600,127.6341,7418.8325,6.9971,-3.566,0.7477,0.3348,2400.0,2400.0,-0.7347,-0.8658,4.3848,86.8848 2019-06-03 15:42:34.620,127.6341,7418.8052,6.9827,-3.5738,1.2622,-0.1046,2400.0,2400.0,-0.7347,-0.8688,4.406,86.8769 2019-06-03 15:42:34.640,127.6976,7418.9429,6.9827,-3.5738,0.7378,0.3433,2400.0,2400.0,-0.7406,-0.8658,4.4034,86.8769 2019-06-03 15:42:34.660,127.7081,7418.9429,6.9827,-3.5738,1.2152,-0.0848,2400.0,2400.0,-0.7406,-0.8658,4.4034,86.8769 2019-06-03 15:42:34.680,127.6341,7418.9429,6.9746,-3.5816,0.7533,0.3713,2400.0,2400.0,-0.7552,-0.8658,4.4087,86.8625 2019-06-03 15:42:34.700,127.6447,7418.8599,6.9718,-3.5856,0.7784,0.3702,2400.0,2400.0,-0.7377,-0.8688,4.3901,86.8468 2019-06-03 15:42:34.720,127.6341,7418.8877,6.9718,-3.5856,1.1583,-0.1414,2400.0,2400.0,-0.7377,-0.8658,4.4007,86.8468 2019-06-03 15:42:34.740,127.7081,7418.8599,6.9718,-3.5856,0.9094,0.3981,2400.0,2400.0,-0.7289,-0.8658,4.406,86.8468 2019-06-03 15:42:34.760,127.6976,7418.915,6.9596,-3.5919,1.0329,-0.1021,2400.0,2400.0,-0.7231,-0.8658,4.3954,86.831 2019-06-03 15:42:34.780,127.6341,7418.9429,6.9596,-3.5919,0.8798,0.3857,2400.0,2400.0,-0.7347,-0.8627,4.4087,86.831 2019-06-03 15:42:34.800,127.6235,7418.915,6.9441,-3.6009,1.0233,0.3714,2400.0,2400.0,-0.7347,-0.8658,4.3888,86.8057 2019-06-03 15:42:34.820,127.6341,7418.8877,6.9275,-3.6084,0.9386,-0.0841,2400.0,2400.0,-0.7435,-0.8658,4.3981,86.7978 2019-06-03 15:42:34.840,127.687,7418.8877,6.9275,-3.6084,1.078,0.3113,2400.0,2400.0,-0.7435,-0.8688,4.4034,86.7978 2019-06-03 15:42:34.860,127.7081,7418.8599,6.9275,-3.6084,0.8857,-0.0408,2400.0,2400.0,-0.726,-0.8658,4.4007,86.7978 2019-06-03 15:42:34.880,127.6341,7418.7773,6.9262,-3.6106,1.2119,0.2835,2400.0,2400.0,-0.726,-0.8658,4.41,86.7817 2019-06-03 15:42:34.900,127.6447,7418.75,6.9181,-3.6131,1.3025,0.2732,2400.0,2400.0,-0.7201,-0.8658,4.3954,86.7646 2019-06-03 15:42:34.920,127.6447,7418.7773,6.9181,-3.6131,0.6808,0.027,2400.0,2400.0,-0.7318,-0.8658,4.3954,86.7646 2019-06-03 15:42:34.940,127.856,7418.8325,6.9181,-3.6131,1.2182,0.1836,2400.0,2400.0,-0.7318,-0.8658,4.4047,86.7646 2019-06-03 15:42:34.960,127.856,7418.8877,6.8986,-3.6236,0.6619,0.0852,2400.0,2400.0,-0.7377,-0.8658,4.4021,86.7484 2019-06-03 15:42:34.980,127.7926,7418.9429,6.8986,-3.6236,1.4504,0.1154,2400.0,2400.0,-0.7377,-0.8718,4.4126,86.7484 2019-06-03 15:42:35.000,127.7926,7418.915,6.8902,-3.6266,1.4264,0.0927,2400.0,2400.0,-0.7377,-0.8688,4.3888,86.7226 2019-06-03 15:42:35.020,127.7926,7418.8599,6.8857,-3.6304,0.6131,0.2202,2400.0,2400.0,-0.726,-0.8658,4.3994,86.7143 2019-06-03 15:42:35.040,127.8665,7418.915,6.8857,-3.6304,1.3668,-0.0099,2400.0,2400.0,-0.7318,-0.8718,4.4047,86.7143 2019-06-03 15:42:35.060,127.8665,7418.9429,6.8857,-3.6304,0.5998,0.2857,2400.0,2400.0,-0.7318,-0.8688,4.3981,86.7143 2019-06-03 15:42:35.080,127.7926,7418.9702,6.8779,-3.6303,1.3524,-0.0421,2400.0,2400.0,-0.7406,-0.8658,4.4126,86.6986 2019-06-03 15:42:35.100,127.8032,7418.915,6.8609,-3.637,1.2526,-0.0366,2400.0,2400.0,-0.7435,-0.8688,4.3888,86.6807 2019-06-03 15:42:35.120,127.7715,7418.8877,6.8609,-3.637,0.6605,0.3479,2400.0,2400.0,-0.7377,-0.8627,4.4047,86.6807 2019-06-03 15:42:35.140,127.8665,7418.8599,6.8609,-3.637,1.1775,-0.1242,2400.0,2400.0,-0.7347,-0.8688,4.4034,86.6807 2019-06-03 15:42:35.160,127.8454,7418.9429,6.8483,-3.6401,0.7733,0.3441,2400.0,2400.0,-0.7143,-0.8688,4.4113,86.6632 2019-06-03 15:42:35.180,127.7821,7418.9976,6.8483,-3.6401,1.1878,-0.1051,2400.0,2400.0,-0.7231,-0.8688,4.4073,86.6632 2019-06-03 15:42:35.200,127.7926,7418.9976,6.8388,-3.6428,1.0321,-0.0764,2400.0,2400.0,-0.7172,-0.8718,4.3862,86.6361 2019-06-03 15:42:35.220,127.8032,7419.0254,6.8445,-3.6388,0.9656,0.3869,2400.0,2400.0,-0.7201,-0.8658,4.3941,86.6282 2019-06-03 15:42:35.240,127.8454,7419.0527,6.8445,-3.6388,0.902,-0.0896,2400.0,2400.0,-0.726,-0.8658,4.4087,86.6282 2019-06-03 15:42:35.260,127.8665,7419.0254,6.8445,-3.6388,1.048,0.3098,2400.0,2400.0,-0.7347,-0.8627,4.4047,86.6282 2019-06-03 15:42:35.280,127.7821,7419.0806,6.8272,-3.6461,0.8583,-0.049,2400.0,2400.0,-0.7347,-0.8688,4.41,86.6085 2019-06-03 15:42:35.300,127.7926,7419.8516,6.8181,-3.6506,0.8276,0.0023,2400.0,2400.0,-0.7318,-0.8627,4.3875,86.5898 2019-06-03 15:42:35.320,127.8032,7420.6777,6.8181,-3.6506,1.1649,0.2757,2400.0,2400.0,-0.7318,-0.8658,4.3954,86.5898 2019-06-03 15:42:35.340,128.0245,7422.0,6.8181,-3.6506,0.7015,0.0104,2400.0,2400.0,-0.7231,-0.8748,4.414,86.5898 2019-06-03 15:42:35.360,128.0245,7422.9087,6.8148,-3.6518,1.3765,0.1957,2400.0,2400.0,-0.7143,-0.8658,4.4047,86.5705 2019-06-03 15:42:35.380,127.9613,7424.1758,6.8148,-3.6518,0.6198,0.0744,2400.0,2400.0,-0.7289,-0.8748,4.41,86.5705 2019-06-03 15:42:35.400,127.9508,7425.0298,6.7973,-3.6614,0.6801,0.1294,2400.0,2400.0,-0.726,-0.8718,4.3941,86.5395 2019-06-03 15:42:35.420,127.9613,7425.856,6.7934,-3.6612,1.3435,0.1255,2400.0,2400.0,-0.7231,-0.8718,4.3981,86.5294 2019-06-03 15:42:35.440,128.0245,7427.1777,6.7934,-3.6612,0.5865,0.1842,2400.0,2400.0,-0.726,-0.8779,4.4073,86.5294 2019-06-03 15:42:35.460,128.0245,7427.5908,6.7934,-3.6612,1.3716,0.0288,2400.0,2400.0,-0.7289,-0.8779,4.3941,86.5294 2019-06-03 15:42:35.480,127.9613,7427.5361,6.7796,-3.6713,0.5536,0.2571,2400.0,2400.0,-0.7289,-0.8718,4.4126,86.5058 2019-06-03 15:42:35.500,127.9719,7427.4258,6.7764,-3.676,0.6723,0.2924,2400.0,2400.0,-0.7289,-0.8748,4.4021,86.4827 2019-06-03 15:42:35.520,127.9192,7427.4531,6.7764,-3.676,1.2918,-0.0331,2400.0,2400.0,-0.7289,-0.8748,4.406,86.4827 2019-06-03 15:42:35.540,127.8665,7427.4531,6.7764,-3.676,0.6697,0.3337,2400.0,2400.0,-0.7289,-0.8779,4.4047,86.4827 2019-06-03 15:42:35.560,127.8454,7427.4531,6.7731,-3.6784,1.2651,-0.0993,2400.0,2400.0,-0.7201,-0.8718,4.3928,86.4582 2019-06-03 15:42:35.580,127.7821,7427.5083,6.7731,-3.6784,0.8287,0.3786,2400.0,2400.0,-0.726,-0.8748,4.406,86.4582 2019-06-03 15:42:35.600,127.7821,7427.5361,6.7556,-3.6892,0.8287,0.3896,2400.0,2400.0,-0.7231,-0.8718,4.4073,86.421 2019-06-03 15:42:35.620,127.8032,7427.481,6.7387,-3.6985,1.1342,-0.1077,2400.0,2400.0,-0.7231,-0.8718,4.4007,86.4075 2019-06-03 15:42:35.640,127.8454,7427.5361,6.7387,-3.6985,0.8247,0.3902,2400.0,2400.0,-0.7201,-0.8718,4.41,86.4075 2019-06-03 15:42:35.660,127.8771,7427.5635,6.7387,-3.6985,1.0373,-0.1243,2400.0,2400.0,-0.7289,-0.8718,4.3915,86.4075 2019-06-03 15:42:35.680,127.7926,7427.5635,6.7345,-3.7021,1.0506,0.3372,2400.0,2400.0,-0.7347,-0.8718,4.41,86.3821 2019-06-03 15:42:35.700,127.7926,7427.5083,6.7323,-3.7056,1.0196,0.3378,2400.0,2400.0,-0.726,-0.8688,4.406,86.3563 2019-06-03 15:42:35.720,127.8138,7427.5083,6.7323,-3.7056,0.8953,-0.0708,2400.0,2400.0,-0.7201,-0.8718,4.3994,86.3563 2019-06-03 15:42:35.740,128.014,7427.5635,6.7323,-3.7056,1.1727,0.3111,2400.0,2400.0,-0.7231,-0.8779,4.406,86.3563 2019-06-03 15:42:35.760,128.035,7427.5635,6.7169,-3.7138,0.7315,-0.0373,2400.0,2400.0,-0.7289,-0.8718,4.3915,86.3305 2019-06-03 15:42:35.780,127.9613,7427.5635,6.6994,-3.7256,1.3217,0.2274,2400.0,2400.0,-0.726,-0.8718,4.4126,86.3021 2019-06-03 15:42:35.800,127.9613,7427.5361,6.7063,-3.7226,1.2936,0.2006,2400.0,2400.0,-0.7231,-0.8748,4.3994,86.2894 2019-06-03 15:42:35.820,127.9613,7427.4531,6.6952,-3.7326,0.6549,0.0689,2400.0,2400.0,-0.7172,-0.8718,4.3994,86.2763 2019-06-03 15:42:35.840,128.0245,7427.4258,6.6952,-3.7326,1.3757,0.1467,2400.0,2400.0,-0.7231,-0.8718,4.4047,86.2763 2019-06-03 15:42:35.860,128.035,7427.4258,6.6952,-3.7326,0.5765,0.1454,2400.0,2400.0,-0.7231,-0.8748,4.3954,86.2763 2019-06-03 15:42:35.880,127.9508,7427.4531,6.6942,-3.7378,1.3291,0.0418,2400.0,2400.0,-0.726,-0.8718,4.4073,86.2505 2019-06-03 15:42:35.900,127.9719,7427.3706,6.6794,-3.7519,1.3598,0.0287,2400.0,2400.0,-0.7231,-0.8718,4.406,86.2239 2019-06-03 15:42:35.920,127.9508,7427.3706,6.6794,-3.7519,0.6142,0.2559,2400.0,2400.0,-0.7231,-0.8718,4.4021,86.2239 2019-06-03 15:42:35.940,128.0245,7427.4531,6.6794,-3.7519,1.3783,0.0021,2400.0,2400.0,-0.7318,-0.8718,4.4087,86.2239 2019-06-03 15:42:35.960,128.0245,7427.4531,6.6647,-3.7679,0.6146,0.2927,2400.0,2400.0,-0.7318,-0.8748,4.3968,86.1959 2019-06-03 15:42:35.980,127.9613,7427.5635,6.6647,-3.7679,1.3291,-0.075,2400.0,2400.0,-0.7318,-0.8748,4.4087,86.1959 2019-06-03 15:42:36.000,127.9508,7427.6187,6.6511,-3.7871,1.2526,-0.1,2400.0,2400.0,-0.726,-0.8718,4.4007,86.1548 2019-06-03 15:42:36.020,127.9613,7427.5908,6.655,-3.7909,0.6594,0.3779,2400.0,2400.0,-0.7172,-0.8718,4.3968,86.1413 2019-06-03 15:42:36.040,128.0245,7427.5908,6.655,-3.7909,1.1767,-0.1236,2400.0,2400.0,-0.7231,-0.8779,4.4007,86.1413 2019-06-03 15:42:36.060,128.035,7427.5635,6.655,-3.7909,0.8816,0.3899,2400.0,2400.0,-0.7172,-0.8658,4.3954,86.1413 2019-06-03 15:42:36.080,127.9613,7427.5361,6.6406,-3.8061,1.1024,-0.1116,2400.0,2400.0,-0.7406,-0.8688,4.4021,86.112 2019-06-03 15:42:36.100,127.9613,7427.4258,6.6227,-3.8274,1.102,-0.1222,2400.0,2400.0,-0.7318,-0.8779,4.4087,86.0831 2019-06-03 15:42:36.120,127.9719,7427.4258,6.6227,-3.8274,0.8435,0.3665,2400.0,2400.0,-0.7377,-0.8748,4.3928,86.0831 2019-06-03 15:42:36.140,128.1821,7427.4258,6.6227,-3.8274,0.9571,-0.093,2400.0,2400.0,-0.7289,-0.8779,4.414,86.0831 2019-06-03 15:42:36.160,128.1821,7427.481,6.6154,-3.843,1.017,0.3597,2400.0,2400.0,-0.7289,-0.8748,4.3848,86.0543 2019-06-03 15:42:36.180,128.1296,7427.5083,6.6154,-3.843,0.8842,-0.0721,2400.0,2400.0,-0.7172,-0.8748,4.4113,86.0543 2019-06-03 15:42:36.200,128.1191,7427.5361,6.5945,-3.8681,0.7751,-0.059,2400.0,2400.0,-0.7231,-0.8748,4.4021,86.0123 2019-06-03 15:42:36.220,128.1401,7427.5361,6.5967,-3.8704,1.1335,0.2988,2400.0,2400.0,-0.7172,-0.8748,4.3994,85.9983 2019-06-03 15:42:36.240,128.1926,7427.5083,6.5967,-3.8704,0.7577,-0.0284,2400.0,2400.0,-0.7377,-0.8748,4.406,85.9983 2019-06-03 15:42:36.260,128.1926,7427.5083,6.5967,-3.8704,1.2925,0.2661,2400.0,2400.0,-0.7201,-0.8718,4.3875,85.9983 2019-06-03 15:42:36.280,128.1191,7427.646,6.5804,-3.8906,0.7378,0.0188,2400.0,2400.0,-0.726,-0.8779,4.4034,85.9695 2019-06-03 15:42:36.300,128.1296,7428.4727,6.5707,-3.9096,0.6923,0.0296,2400.0,2400.0,-0.726,-0.8809,4.4113,85.9402 2019-06-03 15:42:36.320,128.1191,7429.3267,6.5707,-3.9096,1.3683,0.1811,2400.0,2400.0,-0.7289,-0.8779,4.4021,85.9402 2019-06-03 15:42:36.340,128.1926,7430.7041,6.5707,-3.9096,0.669,0.0939,2400.0,2400.0,-0.7347,-0.8839,4.4073,85.9402 2019-06-03 15:42:36.360,128.1926,7431.5854,6.5706,-3.9191,1.3753,0.1457,2400.0,2400.0,-0.7318,-0.8809,4.3888,85.9139 2019-06-03 15:42:36.380,128.1191,7432.8804,6.5706,-3.9191,0.6494,0.1793,2400.0,2400.0,-0.7289,-0.8779,4.3994,85.9139 2019-06-03 15:42:36.400,128.1296,7433.8447,6.5502,-3.9454,0.5543,0.1903,2340.0,2340.0,-0.7231,-0.8779,4.414,85.8742 2019-06-03 15:42:36.420,128.1296,7434.6987,6.543,-3.9518,1.4412,0.0099,2340.0,2340.0,-0.7231,-0.8779,4.3954,85.8611 2019-06-03 15:42:36.440,128.1821,7436.0762,6.543,-3.9518,0.6701,0.2739,2340.0,2340.0,-0.7318,-0.8779,4.41,85.8611 2019-06-03 15:42:36.460,128.203,7436.4614,6.543,-3.9518,1.3753,-0.0273,2340.0,2340.0,-0.7289,-0.8779,4.3901,85.8611 2019-06-03 15:42:36.480,128.1296,7436.4067,6.533,-3.9694,0.7514,0.3545,2340.0,2340.0,-0.7201,-0.8779,4.4047,85.8344 2019-06-03 15:42:36.500,128.1191,7436.3237,6.5294,-3.9803,0.6065,0.3335,2340.0,2340.0,-0.7201,-0.8779,4.4113,85.8099 2019-06-03 15:42:36.520,128.1401,7436.2412,6.5294,-3.9803,1.3787,-0.1136,2340.0,2340.0,-0.7201,-0.8779,4.3928,85.8099 2019-06-03 15:42:36.540,128.3497,7436.2964,6.5294,-3.9803,0.6475,0.3804,2340.0,2340.0,-0.726,-0.8839,4.4047,85.8099 2019-06-03 15:42:36.560,128.3497,7436.3516,6.523,-3.9952,1.2781,-0.1068,2340.0,2340.0,-0.7172,-0.8748,4.3954,85.785 2019-06-03 15:42:36.580,128.2869,7436.3789,6.523,-3.9952,0.7921,0.4155,2340.0,2340.0,-0.7201,-0.8688,4.4034,85.785 2019-06-03 15:42:36.600,128.2869,7436.3789,6.5047,-4.0198,0.6324,0.3948,2340.0,2340.0,-0.7231,-0.8748,4.4126,85.7483 2019-06-03 15:42:36.620,128.2974,7436.2964,6.4867,-4.0343,1.2995,-0.1726,2340.0,2340.0,-0.7201,-0.8718,4.3941,85.7343 2019-06-03 15:42:36.640,128.3602,7436.2686,6.4867,-4.0343,0.7914,0.4413,2340.0,2340.0,-0.7377,-0.8688,4.4047,85.7343 2019-06-03 15:42:36.660,128.3602,7436.2964,6.4867,-4.0343,1.0802,-0.1304,2340.0,2340.0,-0.7289,-0.8748,4.3968,85.7343 2019-06-03 15:42:36.680,128.2764,7436.3789,6.4832,-4.0451,0.9142,0.4388,2340.0,2340.0,-0.7231,-0.8748,4.4087,85.7098 2019-06-03 15:42:36.700,128.2974,7436.3516,6.4822,-4.0549,0.8402,0.4385,2340.0,2340.0,-0.726,-0.8748,4.41,85.6862 2019-06-03 15:42:36.720,128.2764,7436.3516,6.4822,-4.0549,1.1915,-0.1637,2340.0,2340.0,-0.7143,-0.8718,4.3888,85.6862 2019-06-03 15:42:36.740,128.3602,7436.4067,6.4822,-4.0549,0.8432,0.4396,2340.0,2340.0,-0.7201,-0.8779,4.3994,85.6862 2019-06-03 15:42:36.760,128.3497,7436.4614,6.4685,-4.0669,1.0506,-0.1384,2340.0,2340.0,-0.7143,-0.8748,4.3981,85.6626 2019-06-03 15:42:36.780,128.2869,7436.4341,6.4685,-4.0669,0.9892,0.4289,2340.0,2340.0,-0.7143,-0.8748,4.4073,85.6626 2019-06-03 15:42:36.800,128.2869,7436.4893,6.46,-4.0863,0.8923,0.4237,2340.0,2340.0,-0.7289,-0.8718,4.4087,85.6281 2019-06-03 15:42:36.820,128.2974,7436.5166,6.4411,-4.1005,0.9796,-0.1623,2340.0,2340.0,-0.7318,-0.8718,4.3848,85.6158 2019-06-03 15:42:36.840,128.3497,7436.5166,6.4411,-4.1005,1.0425,0.3939,2340.0,2340.0,-0.7289,-0.8779,4.4034,85.6158 2019-06-03 15:42:36.860,128.3602,7436.4893,6.4411,-4.1005,0.9023,-0.0994,2340.0,2340.0,-0.7201,-0.8718,4.3981,85.6158 2019-06-03 15:42:36.880,128.2974,7436.4893,6.4431,-4.1117,1.0266,0.3821,2340.0,2340.0,-0.7172,-0.8748,4.4007,85.594 2019-06-03 15:42:36.900,128.2974,7436.3789,6.4391,-4.1205,0.9955,0.3904,2340.0,2340.0,-0.7231,-0.8748,4.4113,85.5717 2019-06-03 15:42:36.920,128.2974,7436.3516,6.4391,-4.1205,0.8864,-0.1085,2340.0,2340.0,-0.7114,-0.8779,4.3915,85.5717 2019-06-03 15:42:36.940,128.3497,7436.3789,6.4391,-4.1205,1.2,0.3259,2340.0,2340.0,-0.7231,-0.8809,4.4007,85.5717 2019-06-03 15:42:36.960,128.3497,7436.4614,6.4219,-4.1385,0.8369,-0.0444,2340.0,2340.0,-0.7231,-0.8748,4.4034,85.5476 2019-06-03 15:42:36.980,128.2869,7436.5444,6.4219,-4.1385,1.1342,0.332,2340.0,2340.0,-0.726,-0.8748,4.406,85.5476 2019-06-03 15:42:37.000,128.2869,7436.5718,6.4212,-4.1568,1.0725,0.3058,2340.0,2340.0,-0.726,-0.8748,4.4087,85.517 2019-06-03 15:42:37.020,128.2974,7436.5444,6.4082,-4.1689,0.7673,-0.0419,2340.0,2340.0,-0.726,-0.8718,4.3941,85.5048 2019-06-03 15:42:37.040,128.3602,7436.4893,6.4082,-4.1689,1.2241,0.267,2340.0,2340.0,-0.7231,-0.8809,4.4007,85.5048 2019-06-03 15:42:37.060,128.3602,7436.4614,6.4082,-4.1689,0.7777,0.0023,2340.0,2340.0,-0.7172,-0.8779,4.4034,85.5048 2019-06-03 15:42:37.080,128.2974,7436.4341,6.4114,-4.18,1.2625,0.2841,2340.0,2340.0,-0.7201,-0.8718,4.4007,85.4838 2019-06-03 15:42:37.100,128.2869,7436.3789,6.4043,-4.1917,1.2537,0.2699,2340.0,2340.0,-0.7201,-0.8748,4.4113,85.4624 2019-06-03 15:42:37.120,128.2974,7436.4067,6.4043,-4.1917,0.7156,0.0053,2340.0,2340.0,-0.7231,-0.8779,4.3835,85.4624 2019-06-03 15:42:37.140,128.5064,7436.3789,6.4043,-4.1917,1.3539,0.2112,2340.0,2340.0,-0.7318,-0.8779,4.4021,85.4624 2019-06-03 15:42:37.160,128.5169,7436.4067,6.3875,-4.206,0.7648,0.0649,2340.0,2340.0,-0.7406,-0.8748,4.3954,85.4414 2019-06-03 15:42:37.180,128.4542,7436.3789,6.3789,-4.2188,1.2481,0.243,2340.0,2340.0,-0.7231,-0.8748,4.414,85.4239 2019-06-03 15:42:37.200,128.4438,7436.3789,6.3873,-4.2171,1.314,0.2129,2340.0,2340.0,-0.7377,-0.9081,4.41,85.4147 2019-06-03 15:42:37.220,128.4542,7436.3237,6.3785,-4.2259,0.6283,0.0653,2340.0,2340.0,-0.726,-0.8779,4.3941,85.4047 2019-06-03 15:42:37.240,128.5169,7436.4067,6.3785,-4.2259,1.2252,0.1863,2340.0,2340.0,-0.726,-0.8809,4.4047,85.4047 2019-06-03 15:42:37.260,128.5064,7436.3789,6.3785,-4.2259,0.7226,0.1102,2340.0,2340.0,-0.7201,-0.8809,4.4007,85.4047 2019-06-03 15:42:37.280,128.4438,7436.4614,6.3808,-4.2253,1.2714,0.1805,2340.0,2340.0,-0.7172,-0.8839,4.41,85.3876 2019-06-03 15:42:37.300,128.4542,7437.2334,6.3693,-4.2315,1.3151,0.1898,2340.0,2340.0,-0.7172,-0.8809,4.4126,85.3706 2019-06-03 15:42:37.320,128.4647,7438.0322,6.3693,-4.2315,0.6139,0.1009,2340.0,2340.0,-0.7172,-0.8809,4.3915,85.3706 2019-06-03 15:42:37.340,128.6836,7439.2725,6.3693,-4.2315,1.3114,0.1413,2340.0,2340.0,-0.726,-0.8869,4.4021,85.3706 2019-06-03 15:42:37.360,128.6732,7440.1816,6.3535,-4.2395,0.6501,0.1468,2340.0,2340.0,-0.7289,-0.8748,4.3994,85.3535 2019-06-03 15:42:37.380,128.6107,7441.4766,6.3535,-4.2395,1.3232,0.1313,2340.0,2340.0,-0.726,-0.8658,4.406,85.3535 2019-06-03 15:42:37.400,128.6107,7442.3857,6.3516,-4.2399,1.3909,0.1527,2400.0,2400.0,-0.7318,-0.9172,4.4166,85.3299 2019-06-03 15:42:37.420,128.6211,7443.2124,6.3475,-4.246,0.6446,0.1302,2400.0,2400.0,-0.726,-0.899,4.3968,85.3216 2019-06-03 15:42:37.440,128.6836,7444.48,6.3475,-4.246,1.311,0.1288,2400.0,2400.0,-0.726,-0.899,4.4047,85.3216 2019-06-03 15:42:37.460,128.694,7444.7554,6.3475,-4.246,0.7344,0.1633,2400.0,2400.0,-0.7201,-0.899,4.3981,85.3216 2019-06-03 15:42:37.480,128.6107,7444.7007,6.3455,-4.2456,1.3605,0.1194,2400.0,2400.0,-0.7201,-0.899,4.4047,85.305 2019-06-03 15:42:37.500,128.6211,7444.6177,6.3363,-4.25,1.3916,0.1449,2400.0,2400.0,-0.7201,-0.899,4.4126,85.2884 2019-06-03 15:42:37.520,128.6107,7444.6177,6.3363,-4.25,0.6264,0.1489,2400.0,2400.0,-0.7201,-0.9021,4.3954,85.2884 2019-06-03 15:42:37.540,128.6732,7444.7007,6.3363,-4.25,1.2796,0.0933,2400.0,2400.0,-0.7231,-0.899,4.41,85.2884 2019-06-03 15:42:37.560,128.6628,7444.728,6.3229,-4.2555,0.679,0.1777,2400.0,2400.0,-0.7231,-0.899,4.4073,85.2705 2019-06-03 15:42:37.580,128.6211,7444.728,6.3229,-4.2555,1.3532,0.0958,2400.0,2400.0,-0.7201,-0.893,4.4034,85.2705 2019-06-03 15:42:37.600,128.6211,7444.7007,6.3206,-4.2561,1.3502,0.1141,2400.0,2400.0,-0.7347,-0.893,4.41,85.2438 2019-06-03 15:42:37.620,128.6315,7444.7007,6.319,-4.2573,0.6671,0.1753,2400.0,2400.0,-0.7318,-0.8869,4.3941,85.2342 2019-06-03 15:42:37.640,128.6836,7444.7554,6.319,-4.2573,1.3424,0.0904,2400.0,2400.0,-0.7289,-0.893,4.4206,85.2342 2019-06-03 15:42:37.660,128.6836,7444.7832,6.319,-4.2573,0.7104,0.2066,2400.0,2400.0,-0.7231,-0.8869,4.3954,85.2342 2019-06-03 15:42:37.680,128.6003,7444.8384,6.3178,-4.2545,1.2866,0.0832,2400.0,2400.0,-0.7084,-0.8869,4.4113,85.2154 2019-06-03 15:42:37.700,128.6107,7444.7832,6.3098,-4.2571,1.3716,0.0849,2400.0,2400.0,-0.726,-0.893,4.4047,85.194 2019-06-03 15:42:37.720,128.6315,7444.7554,6.3098,-4.2571,0.7311,0.2043,2400.0,2400.0,-0.7143,-0.8839,4.3981,85.194 2019-06-03 15:42:37.740,128.8291,7444.728,6.3098,-4.2571,1.2833,0.0637,2400.0,2400.0,-0.7201,-0.8869,4.4126,85.194 2019-06-03 15:42:37.760,128.8499,7444.8105,6.3011,-4.2606,0.7444,0.21,2400.0,2400.0,-0.7143,-0.8869,4.406,85.173 2019-06-03 15:42:37.780,128.7668,7444.8384,6.3011,-4.2606,1.325,0.0529,2400.0,2400.0,-0.7289,-0.8839,4.406,85.173 2019-06-03 15:42:37.800,128.7772,7444.8657,6.3001,-4.2569,1.257,0.0709,2400.0,2400.0,-0.7347,-0.9021,4.4166,85.1393 2019-06-03 15:42:37.820,128.7772,7444.8657,6.3011,-4.257,0.7248,0.2306,2400.0,2400.0,-0.726,-0.899,4.3928,85.1284 2019-06-03 15:42:37.840,128.8291,7444.8384,6.3011,-4.257,1.2655,0.0299,2400.0,2400.0,-0.7231,-0.899,4.4179,85.1284 2019-06-03 15:42:37.860,128.8602,7444.8384,6.3011,-4.257,0.6949,0.2497,2400.0,2400.0,-0.7231,-0.9021,4.4034,85.1284 2019-06-03 15:42:37.880,128.7772,7444.7832,6.299,-4.256,1.3254,0.0087,2400.0,2400.0,-0.7231,-0.899,4.4087,85.1048 2019-06-03 15:42:37.900,128.7772,7444.7007,6.2903,-4.2591,1.2788,0.0244,2400.0,2400.0,-0.7435,-0.9021,4.4073,85.0795 2019-06-03 15:42:37.920,128.7668,7444.7007,6.2903,-4.2591,0.7252,0.2716,2400.0,2400.0,-0.7289,-0.896,4.3928,85.0795 2019-06-03 15:42:37.940,128.8291,7444.728,6.2903,-4.2591,1.2637,-0.0073,2400.0,2400.0,-0.726,-0.896,4.41,85.0795 2019-06-03 15:42:37.960,128.8395,7444.7832,6.2845,-4.2617,0.7437,0.2722,2400.0,2400.0,-0.7114,-0.893,4.4087,85.0537 2019-06-03 15:42:37.980,128.7772,7444.8384,6.2845,-4.2617,1.2836,-0.013,2400.0,2400.0,-0.7143,-0.89,4.4047,85.0537 2019-06-03 15:42:38.000,128.7772,7444.8384,6.2859,-4.2593,1.2711,-0.0122,2400.0,2400.0,-0.726,-0.899,4.4193,85.0161 2019-06-03 15:42:38.020,128.7876,7444.7832,6.2918,-4.2565,0.713,0.3173,2400.0,2400.0,-0.726,-0.8779,4.3954,85.0021 2019-06-03 15:42:38.040,128.8395,7444.8105,6.2918,-4.2565,1.2444,-0.0351,2400.0,2400.0,-0.7289,-0.89,4.4179,85.0021 2019-06-03 15:42:38.060,128.8499,7444.7832,6.2918,-4.2565,0.7696,0.2933,2400.0,2400.0,-0.7201,-0.899,4.41,85.0021 2019-06-03 15:42:38.080,128.7668,7444.8384,6.2877,-4.2584,1.2699,-0.0528,2400.0,2400.0,-0.7143,-0.8537,4.3981,84.9737 2019-06-03 15:42:38.100,128.7876,7444.8105,6.2801,-4.2616,1.186,-0.0545,2400.0,2400.0,-0.7201,-0.8869,4.41,84.9435 2019-06-03 15:42:38.120,128.7876,7444.8105,6.2801,-4.2616,0.8321,0.3127,2400.0,2400.0,-0.7084,-0.8748,4.3954,84.9435 2019-06-03 15:42:38.140,129.0053,7444.7007,6.2801,-4.2616,1.2307,-0.0588,2400.0,2400.0,-0.7172,-0.8809,4.4193,84.9435 2019-06-03 15:42:38.160,129.0053,7444.7007,6.276,-4.2686,0.8202,0.3293,2400.0,2400.0,-0.7201,-0.8839,4.4007,84.912 2019-06-03 15:42:38.180,128.9432,7444.6729,6.276,-4.2686,1.1575,-0.0457,2400.0,2400.0,-0.7172,-0.8809,4.4073,84.912 2019-06-03 15:42:38.200,128.9432,7444.7007,6.2757,-4.2726,1.1327,-0.0314,2400.0,2400.0,-0.7377,-0.8869,4.4073,84.8648 2019-06-03 15:42:38.220,128.9432,7444.728,6.2827,-4.2725,0.879,0.3252,2400.0,2400.0,-0.726,-0.8809,4.3981,84.8487 2019-06-03 15:42:38.240,128.9949,7444.728,6.2827,-4.2725,1.169,-0.0454,2400.0,2400.0,-0.7347,-0.8809,4.41,84.8487 2019-06-03 15:42:38.260,129.0157,7444.728,6.2827,-4.2725,0.8432,0.3107,2400.0,2400.0,-0.7289,-0.8839,4.4073,84.8487 2019-06-03 15:42:38.280,128.9432,7444.6455,6.2775,-4.2819,1.1871,-0.0593,2400.0,2400.0,-0.7114,-0.8809,4.4007,84.815 2019-06-03 15:42:38.300,128.9535,7444.6177,6.2709,-4.2942,1.1357,-0.0523,2400.0,2400.0,-0.7172,-0.8839,4.4113,84.7809 2019-06-03 15:42:38.320,128.9432,7444.6177,6.2709,-4.2942,0.9452,0.363,2400.0,2400.0,-0.7201,-0.8809,4.3862,84.7809 2019-06-03 15:42:38.340,129.0053,7444.7007,6.2709,-4.2942,1.213,-0.05,2400.0,2400.0,-0.7172,-0.8839,4.41,84.7809 2019-06-03 15:42:38.360,128.9949,7444.7554,6.2674,-4.3042,0.9763,0.3123,2400.0,2400.0,-0.7172,-0.8809,4.4021,84.7464 2019-06-03 15:42:38.380,128.9432,7444.7832,6.2674,-4.3042,1.0425,-0.0516,2400.0,2400.0,-0.7143,-0.8809,4.4007,84.7464 2019-06-03 15:42:38.400,128.9432,7444.7832,6.2634,-4.3179,1.0514,-0.0439,2400.0,2400.0,-0.7231,-0.9172,4.406,84.6961 2019-06-03 15:42:38.420,128.9535,7444.7007,6.271,-4.3165,0.9474,0.3353,2400.0,2400.0,-0.7055,-0.893,4.3968,84.6782 2019-06-03 15:42:38.440,129.0157,7444.6729,6.271,-4.3165,1.0451,-0.0286,2400.0,2400.0,-0.7114,-0.8748,4.4087,84.6782 2019-06-03 15:42:38.460,129.0157,7444.6177,6.271,-4.3165,0.9364,0.3038,2400.0,2400.0,-0.7114,-0.8809,4.4166,84.6782 2019-06-03 15:42:38.480,128.9432,7444.6455,6.2632,-4.328,1.0344,-0.0129,2400.0,2400.0,-0.7231,-0.8718,4.3994,84.6423 2019-06-03 15:42:38.500,128.9432,7444.6177,6.2584,-4.3421,0.9548,-0.0248,2400.0,2400.0,-0.7289,-0.8748,4.406,84.6065 2019-06-03 15:42:38.520,128.9432,7444.6455,6.2584,-4.3421,1.0366,0.3088,2400.0,2400.0,-0.7231,-0.8748,4.3901,84.6065 2019-06-03 15:42:38.540,129.1707,7444.6729,6.2584,-4.3421,0.96,0.0055,2400.0,2400.0,-0.7143,-0.8779,4.4087,84.6065 2019-06-03 15:42:38.560,129.1707,7444.6729,6.2574,-4.3507,1.0499,0.2556,2400.0,2400.0,-0.7231,-0.896,4.4073,84.5702 2019-06-03 15:42:38.580,129.0984,7444.6729,6.2577,-4.3625,0.9826,0.0257,2400.0,2400.0,-0.7201,-0.8748,4.4021,84.5317 2019-06-03 15:42:38.600,129.0984,7444.7007,6.2516,-4.372,0.8162,0.0167,2400.0,2400.0,-0.7289,-0.89,4.4087,84.5129 2019-06-03 15:42:38.620,129.1087,7444.728,6.2556,-4.3751,1.146,0.2554,2400.0,2400.0,-0.7143,-0.8809,4.3901,84.4941 2019-06-03 15:42:38.640,129.1604,7444.8105,6.2556,-4.3751,0.8176,0.0372,2400.0,2400.0,-0.7084,-0.8839,4.406,84.4941 2019-06-03 15:42:38.660,129.1707,7444.8384,6.2556,-4.3751,1.146,0.2041,2400.0,2400.0,-0.7055,-0.893,4.4166,84.4941 2019-06-03 15:42:38.680,129.0984,7444.8936,6.2485,-4.3931,0.8838,0.0622,2400.0,2400.0,-0.7084,-0.8869,4.4034,84.4561 2019-06-03 15:42:38.700,129.1087,7445.665,6.2452,-4.4073,0.8909,0.0612,2400.0,2400.0,-0.726,-0.89,4.4087,84.419 2019-06-03 15:42:38.720,129.1191,7446.5469,6.2452,-4.4073,1.1494,0.2038,2400.0,2400.0,-0.7143,-0.893,4.3901,84.419 2019-06-03 15:42:38.740,129.3356,7447.98,6.2452,-4.4073,0.8387,0.0898,2400.0,2400.0,-0.7055,-0.89,4.4047,84.419 2019-06-03 15:42:38.760,129.3253,7448.9448,6.2456,-4.4201,1.1727,0.1527,2400.0,2400.0,-0.7026,-0.893,4.4126,84.3809 2019-06-03 15:42:38.780,129.2738,7450.2954,6.2456,-4.4201,0.8912,0.0818,2400.0,2400.0,-0.7114,-0.893,4.3968,84.3809 2019-06-03 15:42:38.800,129.2532,7451.1772,6.2364,-4.4466,0.8099,0.0939,2400.0,2400.0,-0.7143,-0.896,4.4166,84.3254 2019-06-03 15:42:38.820,129.2635,7451.9766,6.2345,-4.4542,1.2396,0.182,2400.0,2400.0,-0.7143,-0.893,4.3901,84.3066 2019-06-03 15:42:38.840,129.3356,7453.2441,6.2345,-4.4542,0.8395,0.12,2400.0,2400.0,-0.7143,-0.89,4.4021,84.3066 2019-06-03 15:42:38.860,129.3459,7453.5752,6.2345,-4.4542,1.1934,0.1152,2400.0,2400.0,-0.7114,-0.9021,4.4047,84.3066 2019-06-03 15:42:38.880,129.2635,7453.5474,6.2275,-4.4766,0.9778,0.1357,2400.0,2400.0,-0.7143,-0.8869,4.3981,84.2681 2019-06-03 15:42:38.900,129.2738,7453.437,6.2279,-4.493,0.9127,0.1408,2400.0,2400.0,-0.7231,-0.893,4.4047,84.2305 2019-06-03 15:42:38.920,129.2738,7453.4097,6.2279,-4.493,1.1664,0.1341,2400.0,2400.0,-0.7231,-0.89,4.3928,84.2305 2019-06-03 15:42:38.940,129.4796,7453.4648,6.2279,-4.493,0.8661,0.1578,2400.0,2400.0,-0.7172,-0.893,4.4073,84.2305 2019-06-03 15:42:38.960,129.4899,7453.4922,6.2267,-4.5087,1.1793,0.0703,2400.0,2400.0,-0.7143,-0.893,4.4034,84.1934 2019-06-03 15:42:38.980,129.4282,7453.52,6.2267,-4.5087,1.0111,0.1736,2400.0,2400.0,-0.7143,-0.8869,4.3981,84.1934 2019-06-03 15:42:39.000,129.4282,7453.6304,6.2203,-4.5373,0.8461,0.208,2400.0,2400.0,-0.7114,-0.8869,4.4087,84.1409 2019-06-03 15:42:39.020,129.4385,7453.6304,6.2148,-4.5464,1.1294,0.0903,2400.0,2400.0,-0.7026,-0.893,4.3835,84.1235 2019-06-03 15:42:39.040,129.4899,7453.6577,6.2148,-4.5464,0.906,0.205,2400.0,2400.0,-0.6997,-0.8869,4.3981,84.1235 2019-06-03 15:42:39.060,129.5001,7453.6851,6.2148,-4.5464,1.0839,0.0444,2400.0,2400.0,-0.7201,-0.89,4.3981,84.1235 2019-06-03 15:42:39.080,129.4179,7453.7954,6.2109,-4.5628,0.9134,0.2317,2400.0,2400.0,-0.7201,-0.8839,4.4021,84.0885 2019-06-03 15:42:39.100,129.4282,7453.7681,6.2118,-4.5748,0.916,0.2594,2400.0,2400.0,-0.7289,-0.9021,4.4153,84.0544 2019-06-03 15:42:39.120,129.4282,7453.7129,6.2118,-4.5748,1.0935,0.0248,2400.0,2400.0,-0.7055,-0.896,4.3915,84.0544 2019-06-03 15:42:39.140,129.5001,7453.6851,6.2118,-4.5748,0.9722,0.2862,2400.0,2400.0,-0.6909,-0.8839,4.3928,84.0544 2019-06-03 15:42:39.160,129.4796,7453.6851,6.2083,-4.5912,1.0181,-0.005,2400.0,2400.0,-0.6763,-0.8869,4.3968,84.0212 2019-06-03 15:42:39.180,129.4179,7453.7129,6.2083,-4.5912,0.96,0.2523,2400.0,2400.0,-0.6821,-0.8748,4.3981,84.0212 2019-06-03 15:42:39.200,129.4282,7453.7954,6.2015,-4.6159,0.9219,0.2808,2400.0,2400.0,-0.7026,-0.8809,4.4153,83.9726 2019-06-03 15:42:39.220,129.4282,7453.7954,6.1932,-4.6284,0.9482,0.0182,2400.0,2400.0,-0.6967,-0.8779,4.3928,83.956 2019-06-03 15:42:39.240,129.5001,7453.7129,6.1932,-4.6284,1.0913,0.2606,2400.0,2400.0,-0.6997,-0.8718,4.3915,83.956 2019-06-03 15:42:39.260,129.5001,7453.6304,6.1932,-4.6284,0.842,0.0239,2400.0,2400.0,-0.6967,-0.8839,4.3968,83.956 2019-06-03 15:42:39.280,129.4282,7453.6304,6.1937,-4.6469,0.9364,0.2361,2400.0,2400.0,-0.6909,-0.8748,4.3901,83.925 2019-06-03 15:42:39.300,129.4282,7453.5474,6.1915,-4.6614,1.0484,0.2813,2400.0,2400.0,-0.6967,-0.8779,4.414,83.8948 2019-06-03 15:42:39.320,129.4077,7453.6025,6.1915,-4.6614,0.9138,0.0101,2400.0,2400.0,-0.6909,-0.8809,4.3941,83.8948 2019-06-03 15:42:39.340,129.4899,7453.6577,6.1915,-4.6614,1.0876,0.25,2400.0,2400.0,-0.6909,-0.8809,4.3915,83.8948 2019-06-03 15:42:39.360,129.4796,7453.6577,6.1859,-4.6828,0.9275,0.015,2400.0,2400.0,-0.688,-0.8718,4.3981,83.8647 2019-06-03 15:42:39.380,129.4282,7453.6025,6.1859,-4.6828,1.0506,0.2491,2400.0,2400.0,-0.6909,-0.8718,4.3928,83.8647 2019-06-03 15:42:39.400,129.4282,7453.5752,6.1856,-4.709,1.2067,0.236,2400.0,2400.0,-0.6997,-0.8688,4.4087,83.8201 2019-06-03 15:42:39.420,129.4282,7453.5752,6.1779,-4.7187,0.8147,0.0689,2400.0,2400.0,-0.6967,-0.8748,4.3928,83.8052 2019-06-03 15:42:39.440,129.4796,7453.6304,6.1779,-4.7187,1.142,0.2146,2400.0,2400.0,-0.6938,-0.8688,4.3875,83.8052 2019-06-03 15:42:39.460,129.5001,7453.6304,6.1779,-4.7187,0.8983,0.0676,2400.0,2400.0,-0.6851,-0.8658,4.3981,83.8052 2019-06-03 15:42:39.480,129.4282,7453.6304,6.181,-4.7301,1.1497,0.1833,2400.0,2400.0,-0.6851,-0.8537,4.3862,83.7777 2019-06-03 15:42:39.500,129.4282,7453.5474,6.1761,-4.7434,1.2422,0.1814,2400.0,2400.0,-0.688,-0.8507,4.4113,83.7506 2019-06-03 15:42:39.520,129.4385,7453.52,6.1761,-4.7434,0.842,0.1116,2400.0,2400.0,-0.6851,-0.8507,4.3848,83.7506 2019-06-03 15:42:39.540,129.6642,7453.52,6.1761,-4.7434,1.1779,0.1451,2400.0,2400.0,-0.6792,-0.8416,4.3888,83.7506 2019-06-03 15:42:39.560,129.6539,7453.6025,6.168,-4.7596,0.8983,0.1586,2400.0,2400.0,-0.7084,-0.8416,4.3928,83.7235 2019-06-03 15:42:39.580,129.5822,7453.6577,6.168,-4.7596,1.2119,0.1057,2400.0,2400.0,-0.7026,-0.8234,4.3848,83.7235 2019-06-03 15:42:39.600,129.5925,7453.6851,6.164,-4.7687,1.2736,0.0998,2400.0,2400.0,-0.7143,-0.8325,4.3981,83.6916 2019-06-03 15:42:39.620,129.5925,7453.6851,6.1629,-4.7738,0.7722,0.1792,2400.0,2400.0,-0.6938,-0.8265,4.3928,83.6793 2019-06-03 15:42:39.640,129.6437,7453.7129,6.1629,-4.7738,1.3387,0.0437,2400.0,2400.0,-0.7026,-0.8144,4.3848,83.6793 2019-06-03 15:42:39.660,129.6642,7453.6577,6.1629,-4.7738,0.7407,0.2496,2400.0,2400.0,-0.7143,-0.8204,4.3994,83.6793 2019-06-03 15:42:39.680,129.5925,7453.6577,6.1598,-4.781,1.2252,0.0279,2400.0,2400.0,-0.7084,-0.8174,4.3848,83.6566 2019-06-03 15:42:39.700,129.6027,7453.6304,6.1486,-4.7927,1.2404,0.0165,2400.0,2400.0,-0.6997,-0.8174,4.4007,83.6356 2019-06-03 15:42:39.720,129.613,7453.6304,6.1486,-4.7927,0.7703,0.2808,2400.0,2400.0,-0.6851,-0.8174,4.3875,83.6356 2019-06-03 15:42:39.740,129.7971,7453.6577,6.1486,-4.7927,1.2925,-0.0296,2400.0,2400.0,-0.6851,-0.775,4.3848,83.6356 2019-06-03 15:42:39.760,129.8074,7453.6851,6.1397,-4.8039,0.7729,0.314,2400.0,2400.0,-0.6967,-0.7962,4.3928,83.6142 2019-06-03 15:42:39.780,129.746,7453.6851,6.1397,-4.8039,1.159,-0.0214,2400.0,2400.0,-0.688,-0.7659,4.3769,83.6142 2019-06-03 15:42:39.800,129.746,7453.7129,6.1335,-4.8097,1.0821,-0.0415,2400.0,2400.0,-0.6821,-0.7659,4.3968,83.5832 2019-06-03 15:42:39.820,129.7563,7453.6577,6.1392,-4.8071,0.8261,0.3453,2400.0,2400.0,-0.6763,-0.7629,4.3928,83.5727 2019-06-03 15:42:39.840,129.8074,7453.6577,6.1392,-4.8071,1.2333,-0.0824,2400.0,2400.0,-0.6763,-0.7053,4.3875,83.5727 2019-06-03 15:42:39.860,129.8074,7453.6025,6.1392,-4.8071,0.8339,0.345,2400.0,2400.0,-0.6909,-0.7084,4.3954,83.5727 2019-06-03 15:42:39.880,129.7358,7453.6851,6.132,-4.8102,1.1287,-0.0366,2400.0,2400.0,-0.6851,-0.672,4.3835,83.5521 2019-06-03 15:42:39.900,129.746,7454.5122,6.123,-4.8137,1.085,-0.0608,2400.0,2400.0,-0.6821,-0.6781,4.3888,83.5307 2019-06-03 15:42:39.920,129.7358,7455.3667,6.123,-4.8137,0.8853,0.3302,2400.0,2400.0,-0.6851,-0.6902,4.3875,83.5307 2019-06-03 15:42:39.940,129.8074,7456.6074,6.123,-4.8137,1.1664,-0.066,2400.0,2400.0,-0.6763,-0.6841,4.3835,83.5307 2019-06-03 15:42:39.960,129.7971,7457.4897,6.1216,-4.812,1.0547,0.3351,2400.0,2400.0,-0.6734,-0.6872,4.3915,83.5097 2019-06-03 15:42:39.980,129.7358,7458.7852,6.1253,-4.803,0.9589,-0.0189,2400.0,2400.0,-0.6646,-0.6781,4.3663,83.4914 2019-06-03 15:42:40.000,129.746,7459.6948,6.1137,-4.8041,1.0066,-0.0172,2400.0,2400.0,-0.6587,-0.6811,4.3888,83.4809 2019-06-03 15:42:40.020,129.746,7460.5493,6.1191,-4.7969,1.0451,0.2781,2400.0,2400.0,-0.6763,-0.672,4.3809,83.4708 2019-06-03 15:42:40.040,129.7971,7461.8726,6.1191,-4.7969,0.9308,-0.0225,2400.0,2400.0,-0.6675,-0.6235,4.3875,83.4708 2019-06-03 15:42:40.060,129.8176,7462.2036,6.1191,-4.7969,1.179,0.2668,2400.0,2400.0,-0.688,-0.6417,4.3954,83.4708 2019-06-03 15:42:40.080,129.7358,7462.0933,6.112,-4.7893,0.7629,0.0341,2400.0,2400.0,-0.6821,-0.6295,4.369,83.4511 2019-06-03 15:42:40.100,129.7563,7462.0103,6.1087,-4.7793,0.7795,0.0439,2400.0,2400.0,-0.6792,-0.6235,4.3901,83.431 2019-06-03 15:42:40.120,129.7665,7462.0933,6.1087,-4.7793,1.1812,0.2032,2400.0,2400.0,-0.6763,-0.672,4.3928,83.431 2019-06-03 15:42:40.140,129.9706,7462.1758,6.1087,-4.7793,0.7936,0.0655,2400.0,2400.0,-0.6704,-0.6113,4.3888,83.431 2019-06-03 15:42:40.160,129.9706,7462.2036,6.1153,-4.7639,1.2548,0.1485,2400.0,2400.0,-0.6851,-0.6144,4.3968,83.4114 2019-06-03 15:42:40.180,129.9094,7462.2588,6.1153,-4.7639,0.6719,0.1566,2400.0,2400.0,-0.6792,-0.6113,4.3742,83.4114 2019-06-03 15:42:40.200,129.8992,7462.2588,6.1101,-4.7439,0.7585,0.1813,2400.0,2400.0,-0.6792,-0.6144,4.3981,83.3838 2019-06-03 15:42:40.220,129.9196,7462.2588,6.1094,-4.7347,1.2718,0.0409,2400.0,2400.0,-0.6909,-0.6144,4.3875,83.3738 2019-06-03 15:42:40.240,129.9706,7462.314,6.1094,-4.7347,0.7474,0.2216,2400.0,2400.0,-0.6851,-0.5749,4.3888,83.3738 2019-06-03 15:42:40.260,129.9808,7462.2861,6.1094,-4.7347,1.3291,0.0183,2400.0,2400.0,-0.7084,-0.5931,4.3928,83.3738 2019-06-03 15:42:40.280,129.9094,7462.2588,6.1069,-4.7196,0.7307,0.2814,2400.0,2400.0,-0.6851,-0.5901,4.3795,83.3528 2019-06-03 15:42:40.300,129.9094,7462.2036,6.113,-4.7002,0.7977,0.2594,2400.0,2400.0,-0.688,-0.5901,4.3888,83.3322 2019-06-03 15:42:40.320,129.9094,7462.1758,6.113,-4.7002,1.1912,-0.0171,2400.0,2400.0,-0.688,-0.5871,4.3968,83.3322 2019-06-03 15:42:40.340,129.9808,7462.1758,6.113,-4.7002,0.774,0.2822,2400.0,2400.0,-0.6909,-0.584,4.3888,83.3322 2019-06-03 15:42:40.360,129.9706,7462.2036,6.1164,-4.6818,1.1749,-0.037,2400.0,2400.0,-0.7084,-0.5901,4.4087,83.3095 2019-06-03 15:42:40.380,129.8992,7462.231,6.1164,-4.6818,0.8768,0.3262,2400.0,2400.0,-0.7026,-0.581,4.3954,83.3095 2019-06-03 15:42:40.400,129.9094,7462.2588,6.1123,-4.6534,0.9086,0.3186,2340.0,2400.0,-0.6997,-0.5689,4.4021,83.2772 2019-06-03 15:42:40.420,129.9094,7462.231,6.1042,-4.6489,1.1087,-0.0723,2340.0,2400.0,-0.7026,-0.5719,4.4232,83.2649 2019-06-03 15:42:40.440,129.9604,7462.2588,6.1042,-4.6489,0.9526,0.3264,2340.0,2400.0,-0.6967,-0.5719,4.4259,83.2649 2019-06-03 15:42:40.460,129.9706,7462.231,6.1042,-4.6489,1.0159,-0.0404,2340.0,2400.0,-0.6938,-0.6053,4.4722,83.2649 2019-06-03 15:42:40.480,129.9094,7462.1484,6.1115,-4.6272,1.0843,0.333,2340.0,2400.0,-0.688,-0.5901,4.4656,83.2404 2019-06-03 15:42:40.500,129.9094,7462.0654,6.1166,-4.6063,1.0651,0.3155,2340.0,2400.0,-0.6763,-0.584,4.4894,83.216 2019-06-03 15:42:40.520,129.8992,7462.0654,6.1166,-4.6063,0.9308,-0.0442,2340.0,2400.0,-0.6763,-0.5871,4.504,83.216 2019-06-03 15:42:40.540,129.9706,7462.0933,6.1166,-4.6063,1.081,0.3023,2340.0,2400.0,-0.6704,-0.5871,4.4868,83.216 2019-06-03 15:42:40.560,129.9604,7462.0654,6.1148,-4.5843,0.8102,0.0119,2340.0,2400.0,-0.6763,-0.5871,4.504,83.1906 2019-06-03 15:42:40.580,129.9094,7462.0933,6.1148,-4.5843,1.1738,0.2481,2340.0,2400.0,-0.6646,-0.5931,4.4934,83.1906 2019-06-03 15:42:40.600,129.9094,7462.0933,6.1263,-4.5462,1.2037,0.2057,2340.0,2400.0,-0.6558,-0.5871,4.5093,83.1535 2019-06-03 15:42:40.620,129.9094,7462.0103,6.1253,-4.5397,0.8228,0.0836,2340.0,2400.0,-0.6529,-0.5871,4.549,83.1408 2019-06-03 15:42:40.640,129.991,7462.0381,6.1253,-4.5397,1.2792,0.176,2340.0,2400.0,-0.6441,-0.5689,4.5384,83.1408 2019-06-03 15:42:40.660,129.9706,7462.0103,6.1253,-4.5397,0.6967,0.1395,2340.0,2400.0,-0.6587,-0.5871,4.5821,83.1408 2019-06-03 15:42:40.680,129.9094,7462.0381,6.1376,-4.5126,1.2936,0.1406,2340.0,2400.0,-0.6587,-0.584,4.5636,83.115 2019-06-03 15:42:40.700,129.9094,7461.9829,6.1429,-4.4915,1.3572,0.0896,2340.0,2400.0,-0.6587,-0.5567,4.5609,83.0883 2019-06-03 15:42:40.720,129.9196,7461.9829,6.1429,-4.4915,0.7551,0.1684,2340.0,2400.0,-0.6734,-0.5628,4.5768,83.0883 2019-06-03 15:42:40.740,130.1334,7461.9829,6.1429,-4.4915,1.4068,0.1023,2340.0,2400.0,-0.6558,-0.5446,4.5649,83.0883 2019-06-03 15:42:40.760,130.1334,7461.9556,6.1487,-4.4723,0.7119,0.2571,2340.0,2400.0,-0.6704,-0.5506,4.5993,83.0608 2019-06-03 15:42:40.780,130.0622,7462.0381,6.1487,-4.4723,1.3354,0.0305,2340.0,2400.0,-0.6558,-0.5506,4.6218,83.0608 2019-06-03 15:42:40.800,130.0724,7462.0103,6.169,-4.4356,1.4412,-0.0247,2340.0,2400.0,-0.6587,-0.5355,4.6364,83.0228 2019-06-03 15:42:40.820,130.0825,7462.0381,6.1839,-4.4226,0.7045,0.2976,2340.0,2400.0,-0.6558,-0.5446,4.6841,83.0083 2019-06-03 15:42:40.840,130.1232,7461.9829,6.1839,-4.4226,1.4123,-0.045,2340.0,2400.0,-0.6383,-0.5355,4.6589,83.0083 2019-06-03 15:42:40.860,130.1435,7461.9829,6.1839,-4.4226,0.73,0.3854,2340.0,2400.0,-0.6295,-0.5415,4.6721,83.0083 2019-06-03 15:42:40.880,130.0622,7461.9004,6.1975,-4.3981,1.1727,-0.089,2340.0,2400.0,-0.6266,-0.5415,4.651,82.9808 2019-06-03 15:42:40.900,130.0724,7461.79,6.2063,-4.3819,1.3217,-0.1195,2340.0,2400.0,-0.6266,-0.5203,4.6483,82.9532 2019-06-03 15:42:40.920,130.0927,7461.8174,6.2063,-4.3819,0.865,0.3977,2340.0,2400.0,-0.6471,-0.5324,4.6616,82.9532 2019-06-03 15:42:40.940,130.3058,7461.79,6.2063,-4.3819,1.2315,-0.0926,2340.0,2400.0,-0.6295,-0.5294,4.6708,82.9532 2019-06-03 15:42:40.960,130.2957,7461.79,6.2253,-4.3609,0.8949,0.417,2340.0,2400.0,-0.6383,-0.5355,4.7198,82.9257 2019-06-03 15:42:40.980,130.245,7461.8174,6.2253,-4.3609,1.0551,-0.1065,2340.0,2400.0,-0.6208,-0.5324,4.7542,82.9257 2019-06-03 15:42:41.000,130.2146,7461.8726,6.2593,-4.3242,1.1287,-0.1278,2340.0,2400.0,-0.6237,-0.5142,4.7423,82.8881 2019-06-03 15:42:41.020,130.245,7461.8174,6.2842,-4.3049,1.034,0.3865,2340.0,2400.0,-0.6266,-0.5233,4.7582,82.8746 2019-06-03 15:42:41.040,130.2957,7461.8174,6.2842,-4.3049,0.9663,-0.0728,2340.0,2400.0,-0.6324,-0.5203,4.7172,82.8746 2019-06-03 15:42:41.060,130.3058,7461.8174,6.2842,-4.3049,1.0477,0.3876,2340.0,2400.0,-0.6208,-0.5263,4.7251,82.8746 2019-06-03 15:42:41.080,130.2349,7461.9004,6.3015,-4.2835,0.9401,-0.0631,2340.0,2400.0,-0.6237,-0.5324,4.7278,82.8462 2019-06-03 15:42:41.100,130.2349,7462.7275,6.3256,-4.2608,0.9238,-0.0756,2340.0,2400.0,-0.6149,-0.5233,4.7251,82.8177 2019-06-03 15:42:41.120,130.2247,7463.6099,6.3256,-4.2608,1.2544,0.3281,2340.0,2400.0,-0.6295,-0.5233,4.7569,82.8177 2019-06-03 15:42:41.140,130.2957,7464.9883,6.3256,-4.2608,0.835,-0.0235,2340.0,2400.0,-0.6178,-0.5233,4.7648,82.8177 2019-06-03 15:42:41.160,130.2856,7465.9258,6.363,-4.2308,1.3095,0.307,2340.0,2400.0,-0.6178,-0.5476,4.7913,82.7902 2019-06-03 15:42:41.180,130.2247,7467.1943,6.363,-4.2308,0.723,0.0116,2340.0,2400.0,-0.6178,-0.5355,4.7953,82.7902 2019-06-03 15:42:41.200,130.2247,7468.104,6.4048,-4.1859,0.852,0.0056,2340.0,2400.0,-0.6178,-0.5172,4.7781,82.7522 2019-06-03 15:42:41.220,130.2552,7468.9312,6.4297,-4.1654,1.392,0.2239,2340.0,2400.0,-0.6295,-0.5324,4.782,82.7386 2019-06-03 15:42:41.240,130.2957,7470.2822,6.4297,-4.1654,0.7341,0.1007,2340.0,2400.0,-0.6237,-0.5172,4.7701,82.7386 2019-06-03 15:42:41.260,130.316,7470.6685,6.4297,-4.1654,1.4079,0.1754,2340.0,2400.0,-0.6178,-0.5233,4.7741,82.7386 2019-06-03 15:42:41.280,130.2349,7470.6406,6.4551,-4.1383,0.6523,0.1409,2340.0,2400.0,-0.6266,-0.5203,4.7926,82.712 2019-06-03 15:42:41.300,130.2349,7470.6133,6.4942,-4.1022,0.7577,0.1705,2340.0,2400.0,-0.6208,-0.5112,4.7834,82.687 2019-06-03 15:42:41.320,130.2247,7470.6406,6.4942,-4.1022,1.4626,0.0829,2340.0,2400.0,-0.6295,-0.5172,4.8218,82.687 2019-06-03 15:42:41.340,130.3058,7470.6958,6.4942,-4.1022,0.6897,0.2275,2340.0,2400.0,-0.6237,-0.5172,4.8297,82.687 2019-06-03 15:42:41.360,130.2957,7470.6685,6.5403,-4.0636,1.4904,0.0484,2340.0,2400.0,-0.5974,-0.5142,4.8522,82.6626 2019-06-03 15:42:41.380,130.245,7470.8062,6.5764,-4.0323,0.6364,0.2628,2340.0,2400.0,-0.6003,-0.5112,4.8535,82.6424 2019-06-03 15:42:41.400,130.2349,7470.8892,6.5907,-4.0194,0.7463,0.2928,2400.0,2340.0,-0.6003,-0.4747,4.8376,82.6293 2019-06-03 15:42:41.420,130.2349,7470.9165,6.6055,-4.006,1.3487,-0.0143,2400.0,2340.0,-0.6354,-0.4777,4.839,82.6167 2019-06-03 15:42:41.440,130.2856,7470.9717,6.6055,-4.006,0.7374,0.3161,2400.0,2340.0,-0.6149,-0.4625,4.835,82.6167 2019-06-03 15:42:41.460,130.2856,7471.0269,6.6055,-4.006,1.4131,-0.0605,2400.0,2340.0,-0.6178,-0.4443,4.8165,82.6167 2019-06-03 15:42:41.480,130.2247,7470.9717,6.6425,-3.9772,0.7178,0.3505,2400.0,2340.0,-0.5974,-0.4412,4.8469,82.5922 2019-06-03 15:42:41.500,130.2552,7470.9165,6.6889,-3.9422,0.8483,0.364,2400.0,2340.0,-0.6003,-0.4139,4.8469,82.5686 2019-06-03 15:42:41.520,130.2146,7470.9995,6.6889,-3.9422,1.2733,-0.0572,2400.0,2340.0,-0.6032,-0.4169,4.8866,82.5686 2019-06-03 15:42:41.540,130.2957,7471.0269,6.6889,-3.9422,0.8594,0.3718,2400.0,2340.0,-0.612,-0.3621,4.8641,82.5686 2019-06-03 15:42:41.560,130.2856,7471.0542,6.7287,-3.9075,1.3273,-0.1033,2400.0,2340.0,-0.6091,-0.3378,4.8509,82.5437 2019-06-03 15:42:41.580,130.2247,7471.082,6.7287,-3.9075,0.9426,0.3598,2400.0,2340.0,-0.6149,-0.3378,4.8416,82.5437 2019-06-03 15:42:41.600,130.2349,7471.1094,6.7876,-3.8548,1.01,0.3543,2400.0,2340.0,-0.6003,-0.3287,4.835,82.5122 2019-06-03 15:42:41.620,130.2349,7471.0269,6.7978,-3.8414,1.2082,-0.0377,2400.0,2340.0,-0.6032,-0.3378,4.8429,82.4999 2019-06-03 15:42:41.640,130.2957,7470.9995,6.7978,-3.8414,1.0162,0.3479,2400.0,2340.0,-0.5769,-0.2677,4.8535,82.4999 2019-06-03 15:42:41.660,130.316,7470.9443,6.7978,-3.8414,1.0699,-0.0735,2400.0,2340.0,-0.5681,-0.283,4.8535,82.4999 2019-06-03 15:42:41.680,130.2247,7470.9717,6.8398,-3.7994,1.1124,0.3269,2400.0,2340.0,-0.574,-0.286,4.8681,82.4781 2019-06-03 15:42:41.700,130.2349,7470.8613,6.8852,-3.7521,1.1845,0.3442,2400.0,2340.0,-0.574,-0.2677,4.8535,82.4575 2019-06-03 15:42:41.720,130.2247,7470.834,6.8852,-3.7521,1.0259,-0.004,2400.0,2340.0,-0.5828,-0.2616,4.8456,82.4575 2019-06-03 15:42:41.740,130.2957,7470.751,6.8852,-3.7521,1.142,0.3125,2400.0,2340.0,-0.574,-0.2555,4.8403,82.4575 2019-06-03 15:42:41.760,130.2957,7470.751,6.9203,-3.7096,0.977,-0.0245,2400.0,2340.0,-0.5652,-0.2433,4.8376,82.4361 2019-06-03 15:42:41.780,130.2349,7470.7236,6.9203,-3.7096,1.2478,0.2981,2400.0,2340.0,-0.5711,-0.2433,4.8668,82.4361 2019-06-03 15:42:41.800,130.2349,7470.751,6.9842,-3.6318,1.287,0.3035,2400.0,2340.0,-0.5681,-0.2067,4.8628,82.4081 2019-06-03 15:42:41.820,130.2349,7470.7236,6.9972,-3.6116,0.9031,0.0334,2400.0,2340.0,-0.5798,-0.2403,4.8628,82.3972 2019-06-03 15:42:41.840,130.2957,7470.6958,6.9972,-3.6116,1.2866,0.2735,2400.0,2340.0,-0.5681,-0.2189,4.8443,82.3972 2019-06-03 15:42:41.860,130.3058,7470.6406,6.9972,-3.6116,0.8698,0.0281,2400.0,2340.0,-0.5652,-0.2189,4.8324,82.3972 2019-06-03 15:42:41.880,130.2247,7470.6133,7.0414,-3.558,1.3017,0.2236,2400.0,2340.0,-0.5652,-0.225,4.835,82.3771 2019-06-03 15:42:41.900,130.245,7470.6133,7.0828,-3.5011,1.3861,0.2296,2400.0,2340.0,-0.5594,-0.2189,4.8231,82.357 2019-06-03 15:42:41.920,130.245,7470.6133,7.0828,-3.5011,0.7858,0.1132,2400.0,2340.0,-0.5623,-0.2189,4.8284,82.357 2019-06-03 15:42:41.940,130.4475,7470.6958,7.0828,-3.5011,1.3284,0.189,2400.0,2340.0,-0.5477,-0.2159,4.8244,82.357 2019-06-03 15:42:41.960,130.4475,7470.751,7.1159,-3.4462,0.8872,0.0891,2400.0,2340.0,-0.5448,-0.2189,4.8244,82.3382 2019-06-03 15:42:41.980,130.3868,7470.8062,7.1159,-3.4462,1.3857,0.1717,2400.0,2340.0,-0.5506,-0.2464,4.839,82.3382 2019-06-03 15:42:42.000,130.3868,7470.8613,7.185,-3.348,1.3117,0.1697,2400.0,2340.0,-0.5477,-0.161,4.8151,82.3129 2019-06-03 15:42:42.020,130.3969,7470.8613,7.2045,-3.3166,0.7999,0.1595,2400.0,2340.0,-0.5506,-0.2159,4.8271,82.3037 2019-06-03 15:42:42.040,130.4576,7470.8892,7.2045,-3.3166,1.2503,0.1238,2400.0,2340.0,-0.5477,-0.1976,4.7993,82.3037 2019-06-03 15:42:42.060,130.4576,7470.8892,7.2045,-3.3166,0.9582,0.139,2400.0,2340.0,-0.5448,-0.2006,4.7979,82.3037 2019-06-03 15:42:42.080,130.3868,7471.0269,7.247,-3.2457,1.2633,0.1211,2400.0,2340.0,-0.5594,-0.2189,4.8165,82.2858 2019-06-03 15:42:42.100,130.3868,7471.8267,7.2803,-3.1736,1.2847,0.1567,2400.0,2340.0,-0.5301,-0.2006,4.8059,82.2674 2019-06-03 15:42:42.120,130.3767,7472.6538,7.2803,-3.1736,0.9238,0.1843,2400.0,2340.0,-0.5477,-0.2067,4.8165,82.2674 2019-06-03 15:42:42.140,130.4475,7473.9502,7.2803,-3.1736,1.2555,0.1232,2400.0,2340.0,-0.5477,-0.2067,4.8231,82.2674 2019-06-03 15:42:42.160,130.4273,7474.8052,7.3127,-3.106,0.9789,0.1533,2400.0,2340.0,-0.5477,-0.1915,4.8006,82.249 2019-06-03 15:42:42.180,130.3969,7476.0186,7.3127,-3.106,1.2193,0.0954,2400.0,2340.0,-0.5506,-0.2098,4.8257,82.249 2019-06-03 15:42:42.200,130.3868,7476.8184,7.3674,-2.9905,1.3321,0.1217,2400.0,2340.0,-0.536,-0.2006,4.794,82.2285 2019-06-03 15:42:42.220,130.3868,7477.646,7.3885,-2.9518,0.923,0.2247,2400.0,2340.0,-0.5272,-0.2159,4.8045,82.2202 2019-06-03 15:42:42.240,130.4475,7478.8042,7.3885,-2.9518,1.2459,0.0665,2400.0,2340.0,-0.5331,-0.1854,4.7979,82.2202 2019-06-03 15:42:42.260,130.4475,7479.1074,7.3885,-2.9518,1.0081,0.2194,2400.0,2340.0,-0.5331,-0.1823,4.7953,82.2202 2019-06-03 15:42:42.280,130.3767,7479.0249,7.4218,-2.8781,1.2666,0.029,2400.0,2340.0,-0.5535,-0.2067,4.8098,82.2036 2019-06-03 15:42:42.300,130.3868,7478.9419,7.4479,-2.8092,1.3188,0.0365,2400.0,2340.0,-0.5331,-0.1976,4.7993,82.1878 2019-06-03 15:42:42.320,130.3868,7478.9419,7.4479,-2.8092,0.9253,0.277,2400.0,2340.0,-0.5331,-0.2006,4.8085,82.1878 2019-06-03 15:42:42.340,130.609,7478.9419,7.4479,-2.8092,1.2263,0.0322,2400.0,2340.0,-0.5331,-0.1976,4.8072,82.1878 2019-06-03 15:42:42.360,130.5989,7478.9971,7.4756,-2.7377,0.9659,0.2679,2400.0,2340.0,-0.5331,-0.1945,4.79,82.173 2019-06-03 15:42:42.380,130.5485,7478.9971,7.4756,-2.7377,1.2951,-0.0253,2400.0,2340.0,-0.5564,-0.1976,4.8006,82.173 2019-06-03 15:42:42.400,130.5485,7479.0522,7.5211,-2.6245,1.2555,-0.0206,2340.0,2400.0,-0.5418,-0.1854,4.786,82.1516 2019-06-03 15:42:42.420,130.5485,7479.0522,7.5446,-2.5816,0.8986,0.3125,2340.0,2400.0,-0.5214,-0.1915,4.7966,82.1459 2019-06-03 15:42:42.440,130.609,7479.0522,7.5446,-2.5816,1.1708,-0.0335,2340.0,2400.0,-0.5038,-0.1884,4.794,82.1459 2019-06-03 15:42:42.460,130.6191,7479.0801,7.5446,-2.5816,1.0162,0.3134,2340.0,2400.0,-0.5038,-0.1762,4.7913,82.1459 2019-06-03 15:42:42.480,130.5485,7479.0801,7.5684,-2.5055,1.2085,-0.0512,2340.0,2400.0,-0.5214,-0.2037,4.7993,82.1336 2019-06-03 15:42:42.500,130.5384,7479.0522,7.5912,-2.4318,1.2263,-0.0364,2340.0,2400.0,-0.5184,-0.1915,4.7807,82.1209 2019-06-03 15:42:42.520,130.5182,7479.0801,7.5912,-2.4318,0.9992,0.3433,2340.0,2400.0,-0.5272,-0.1915,4.7834,82.1209 2019-06-03 15:42:42.540,130.4576,7479.1074,7.5912,-2.4318,1.173,-0.0308,2340.0,2400.0,-0.5214,-0.1854,4.7807,82.1209 2019-06-03 15:42:42.560,130.4374,7479.1353,7.6205,-2.3548,1.0662,0.3195,2340.0,2400.0,-0.5184,-0.1854,4.7714,82.11 2019-06-03 15:42:42.580,130.3767,7479.2178,7.6205,-2.3548,1.0969,-0.0183,2340.0,2400.0,-0.5184,-0.1854,4.79,82.11 2019-06-03 15:42:42.600,130.3969,7479.2456,7.6628,-2.2359,1.0532,-0.0445,2340.0,2400.0,-0.5068,-0.1732,4.786,82.0991 2019-06-03 15:42:42.620,130.3868,7479.1904,7.6861,-2.1918,1.1472,0.3458,2340.0,2400.0,-0.5184,-0.1884,4.7926,82.0956 2019-06-03 15:42:42.640,130.4374,7479.2178,7.6861,-2.1918,1.085,-0.0192,2340.0,2400.0,-0.5184,-0.1854,4.7993,82.0956 2019-06-03 15:42:42.660,130.4576,7479.1626,7.6861,-2.1918,1.1505,0.2948,2340.0,2400.0,-0.5155,-0.1518,4.7807,82.0956 2019-06-03 15:42:42.680,130.3868,7479.1904,7.7089,-2.1184,0.8805,0.0076,2340.0,2400.0,-0.5184,-0.1884,4.7979,82.0847 2019-06-03 15:42:42.700,130.3868,7479.1074,7.7334,-2.0429,0.8609,-0.0074,2340.0,2400.0,-0.5155,-0.1884,4.7767,82.0751 2019-06-03 15:42:42.720,130.3969,7479.1904,7.7334,-2.0429,1.2322,0.2622,2340.0,2400.0,-0.5126,-0.1823,4.7887,82.0751 2019-06-03 15:42:42.740,130.5989,7479.1904,7.7334,-2.0429,0.882,0.0309,2340.0,2400.0,-0.5155,-0.1823,4.79,82.0751 2019-06-03 15:42:42.760,130.609,7479.2456,7.7687,-1.9637,1.4253,0.2558,2340.0,2400.0,-0.5097,-0.1823,4.7887,82.0663 2019-06-03 15:42:42.780,130.5485,7479.3008,7.7687,-1.9637,0.7392,0.0667,2340.0,2400.0,-0.5214,-0.2006,4.8045,82.0663 2019-06-03 15:42:42.800,130.5384,7479.3008,7.8008,-1.8461,0.7115,0.0551,2340.0,2400.0,-0.5097,-0.1945,4.8112,82.0554 2019-06-03 15:42:42.820,130.5586,7479.2456,7.8187,-1.8018,1.4397,0.1915,2340.0,2400.0,-0.5068,-0.1884,4.8059,82.0523 2019-06-03 15:42:42.840,130.5989,7479.3008,7.8187,-1.8018,0.7788,0.1304,2340.0,2400.0,-0.5038,-0.1915,4.8218,82.0523 2019-06-03 15:42:42.860,130.609,7479.2729,7.8187,-1.8018,1.4401,0.1205,2340.0,2400.0,-0.498,-0.1884,4.7926,82.0523 2019-06-03 15:42:42.880,130.5485,7479.3833,7.8393,-1.7236,0.7507,0.2204,2340.0,2400.0,-0.5009,-0.2189,4.8324,82.0444 2019-06-03 15:42:42.900,130.5485,7480.2661,7.8687,-1.6429,0.6605,0.2213,2340.0,2400.0,-0.5097,-0.2159,4.8112,82.0375 2019-06-03 15:42:42.920,130.498,7481.1211,7.8687,-1.6429,1.6383,0.0101,2340.0,2400.0,-0.5068,-0.225,4.8271,82.0375 2019-06-03 15:42:42.940,130.4475,7482.3901,7.8687,-1.6429,0.7048,0.2722,2340.0,2400.0,-0.5331,-0.2403,4.8191,82.0375 2019-06-03 15:42:42.960,130.4374,7483.3555,7.9034,-1.5597,1.4904,-0.0122,2340.0,2400.0,-0.5126,-0.2494,4.831,82.0322 2019-06-03 15:42:42.980,130.3767,7484.7349,7.9034,-1.5597,0.6923,0.3548,2340.0,2400.0,-0.5214,-0.3469,4.8522,82.0322 2019-06-03 15:42:43.000,130.3767,7485.6177,7.9405,-1.4428,0.7189,0.3575,2340.0,2400.0,-0.5126,-0.3378,4.8456,82.0283 2019-06-03 15:42:43.020,130.3767,7486.4727,7.9462,-1.409,1.4083,-0.1348,2340.0,2400.0,-0.5155,-0.3926,4.839,82.0257 2019-06-03 15:42:43.040,130.4475,7487.7417,7.9462,-1.409,0.8768,0.3974,2340.0,2400.0,-0.5126,-0.4321,4.8509,82.0257 2019-06-03 15:42:43.060,130.4576,7488.1001,7.9462,-1.409,1.4064,-0.1016,2340.0,2400.0,-0.498,-0.4625,4.8496,82.0257 2019-06-03 15:42:43.080,130.3868,7488.0728,7.9784,-1.3317,0.9304,0.4672,2340.0,2400.0,-0.5097,-0.5689,4.8813,82.0222 2019-06-03 15:42:43.100,130.3868,7488.0176,8.0163,-1.2553,0.8176,0.435,2340.0,2400.0,-0.4951,-0.5658,4.8734,82.0204 2019-06-03 15:42:43.120,130.3767,7488.0449,8.0163,-1.2553,1.2884,-0.1677,2340.0,2400.0,-0.4951,-0.5962,4.8641,82.0204 2019-06-03 15:42:43.140,130.4374,7488.0728,8.0163,-1.2553,1.0399,0.4033,2340.0,2400.0,-0.5214,-0.6174,4.876,82.0204 2019-06-03 15:42:43.160,130.4475,7488.1279,8.046,-1.1842,1.1387,-0.1039,2340.0,2400.0,-0.5272,-0.6113,4.8681,82.0195 2019-06-03 15:42:43.180,130.3868,7488.1831,8.046,-1.1842,1.0236,0.4332,2340.0,2400.0,-0.5301,-0.6174,4.8933,82.0195 2019-06-03 15:42:43.200,130.3868,7488.2383,8.0926,-1.0854,1.0173,0.3939,2340.0,2400.0,-0.5097,-0.578,4.9038,82.0195 2019-06-03 15:42:43.220,130.3969,7488.2104,8.0961,-1.0608,1.0081,-0.1015,2340.0,2400.0,-0.5038,-0.584,4.9025,82.0178 2019-06-03 15:42:43.240,130.4475,7488.2104,8.0961,-1.0608,1.1786,0.3415,2340.0,2400.0,-0.5097,-0.6113,4.9131,82.0178 2019-06-03 15:42:43.260,130.4475,7488.2104,8.0961,-1.0608,1.0477,-0.0408,2340.0,2400.0,-0.5068,-0.5871,4.9091,82.0178 2019-06-03 15:42:43.280,130.3767,7488.2104,8.1358,-0.9951,1.3291,0.37,2340.0,2400.0,-0.5214,-0.6083,4.9264,82.0178 2019-06-03 15:42:43.300,130.3868,7488.1279,8.1722,-0.9361,1.3439,0.3169,2340.0,2400.0,-0.5068,-0.5931,4.9422,82.0178 2019-06-03 15:42:43.320,130.3767,7488.1001,8.1722,-0.9361,0.8121,-0.0161,2340.0,2400.0,-0.5214,-0.5901,4.933,82.0178 2019-06-03 15:42:43.340,130.4576,7488.1279,8.1722,-0.9361,1.4208,0.2269,2340.0,2400.0,-0.5331,-0.6083,4.9449,82.0178 2019-06-03 15:42:43.360,130.4475,7488.1553,8.199,-0.883,0.8276,0.0974,2340.0,2400.0,-0.5301,-0.5901,4.9277,82.0178 2019-06-03 15:42:43.380,130.3767,7488.1279,8.199,-0.883,1.4733,0.2193,2340.0,2400.0,-0.5272,-0.5931,4.9542,82.0178 2019-06-03 15:42:43.400,130.3868,7488.1553,8.2557,-0.7988,1.5665,0.151,2400.0,2400.0,-0.536,-0.5749,4.9449,82.0226 2019-06-03 15:42:43.420,130.3767,7488.1553,8.2719,-0.7753,0.7607,0.1393,2400.0,2400.0,-0.5243,-0.5689,4.9528,82.0239 2019-06-03 15:42:43.440,130.4475,7488.1831,8.2719,-0.7753,1.3979,0.0805,2400.0,2400.0,-0.5301,-0.581,4.9449,82.0239 2019-06-03 15:42:43.460,130.4475,7488.2104,8.2719,-0.7753,0.8032,0.2423,2400.0,2400.0,-0.5068,-0.578,4.9502,82.0239 2019-06-03 15:42:43.480,130.3767,7488.2104,8.3144,-0.7184,1.5307,0.0583,2400.0,2400.0,-0.5126,-0.584,4.9489,82.0265 2019-06-03 15:42:43.500,130.3969,7488.1279,8.3436,-0.6735,1.5077,0.0098,2400.0,2400.0,-0.5184,-0.578,4.9528,82.0261 2019-06-03 15:42:43.520,130.3767,7488.1001,8.3436,-0.6735,0.8276,0.2787,2400.0,2400.0,-0.5272,-0.5719,4.9396,82.0261 2019-06-03 15:42:43.540,130.4576,7488.1553,8.3436,-0.6735,1.4068,-0.0557,2400.0,2400.0,-0.5448,-0.581,4.9462,82.0261 2019-06-03 15:42:43.560,130.4273,7488.2383,8.3769,-0.6271,0.892,0.3488,2400.0,2400.0,-0.5448,-0.581,4.9436,82.0274 2019-06-03 15:42:43.580,130.3868,7488.1831,8.3769,-0.6271,1.3358,-0.0483,2400.0,2400.0,-0.5389,-0.578,4.9648,82.0274 2019-06-03 15:42:43.600,130.3767,7488.2104,8.4366,-0.5492,1.2237,-0.0713,2400.0,2400.0,-0.5506,-0.578,4.9489,82.0292 2019-06-03 15:42:43.620,130.3969,7488.1831,8.4682,-0.5183,1.0473,0.3646,2400.0,2400.0,-0.536,-0.5749,4.933,82.0313 2019-06-03 15:42:43.640,130.4475,7488.1279,8.4682,-0.5183,1.1583,-0.0857,2400.0,2400.0,-0.5448,-0.581,4.9409,82.0313 2019-06-03 15:42:43.660,130.4576,7488.1001,8.4682,-0.5183,1.0011,0.3819,2400.0,2400.0,-0.5418,-0.578,4.9528,82.0313 2019-06-03 15:42:43.680,130.3767,7488.2656,8.5021,-0.4712,1.0762,-0.094,2400.0,2400.0,-0.5418,-0.5901,4.9714,82.0322 2019-06-03 15:42:43.700,130.3868,7489.0659,8.5393,-0.4272,0.8794,-0.0822,2400.0,2400.0,-0.5535,-0.5901,4.9608,82.034 2019-06-03 15:42:43.720,130.3666,7489.9487,8.5393,-0.4272,1.3128,0.3544,2400.0,2400.0,-0.5418,-0.5931,4.9449,82.034 2019-06-03 15:42:43.740,130.4475,7491.3008,8.5393,-0.4272,0.9744,-0.0225,2400.0,2400.0,-0.5389,-0.6386,4.9528,82.034 2019-06-03 15:42:43.760,130.4475,7492.1563,8.587,-0.3765,1.2781,0.3218,2400.0,2400.0,-0.5301,-0.5931,4.9475,82.0361 2019-06-03 15:42:43.780,130.3767,7493.4253,8.587,-0.3765,0.7185,0.0025,2400.0,2400.0,-0.5331,-0.6204,4.9687,82.0361 2019-06-03 15:42:43.800,130.3767,7494.3359,8.6485,-0.3093,0.7267,0.0174,2400.0,2400.0,-0.5564,-0.6235,4.9648,82.0375 2019-06-03 15:42:43.820,130.3868,7495.2188,8.6764,-0.2798,1.3642,0.2538,2400.0,2400.0,-0.5418,-0.6235,4.9634,82.0396 2019-06-03 15:42:43.840,130.4374,7496.5986,8.6764,-0.2798,0.8369,0.0992,2400.0,2400.0,-0.5506,-0.6993,4.9608,82.0396 2019-06-03 15:42:43.860,130.4576,7496.8745,8.6764,-0.2798,1.4364,0.1839,2400.0,2400.0,-0.5301,-0.6872,4.9489,82.0396 2019-06-03 15:42:43.880,130.3969,7496.7915,8.7093,-0.244,0.7363,0.1405,2400.0,2400.0,-0.5389,-0.7023,4.9581,82.0388 2019-06-03 15:42:43.900,130.3868,7496.6538,8.7554,-0.2028,0.7448,0.1371,2400.0,2400.0,-0.5535,-0.7053,4.9515,82.0396 2019-06-03 15:42:43.920,130.3565,7496.6538,8.7554,-0.2028,1.4441,0.1449,2400.0,2400.0,-0.5418,-0.6993,4.9581,82.0396 2019-06-03 15:42:43.940,130.2957,7496.6538,8.7554,-0.2028,0.7559,0.2169,2400.0,2400.0,-0.5448,-0.7266,4.9674,82.0396 2019-06-03 15:42:43.960,130.2856,7496.7363,8.8053,-0.1599,1.5066,0.075,2400.0,2400.0,-0.5448,-0.7205,4.9608,82.041 2019-06-03 15:42:43.980,130.2247,7496.7915,8.8471,-0.1236,0.7548,0.2475,2400.0,2400.0,-0.5506,-0.7568,4.9608,82.0427 2019-06-03 15:42:44.000,130.2349,7496.7915,8.865,-0.1099,0.8398,0.2436,2400.0,2400.0,-0.5564,-0.7629,4.9595,82.0423 2019-06-03 15:42:44.020,130.2349,7496.7915,8.8811,-0.0936,1.321,0.0019,2400.0,2400.0,-0.5535,-0.7478,4.9555,82.0414 2019-06-03 15:42:44.040,130.3058,7496.7642,8.8811,-0.0936,0.8646,0.3423,2400.0,2400.0,-0.5564,-0.7811,4.9714,82.0414 2019-06-03 15:42:44.060,130.2957,7496.7642,8.8811,-0.0936,1.3258,-0.0253,2400.0,2400.0,-0.5535,-0.7659,4.9608,82.0414 2019-06-03 15:42:44.080,130.2247,7496.7915,8.9234,-0.0641,0.9903,0.3431,2400.0,2400.0,-0.5506,-0.772,4.9595,82.0427 2019-06-03 15:42:44.100,130.2349,7496.7642,8.9724,-0.0315,1.0037,0.3384,2400.0,2400.0,-0.5564,-0.8113,4.9528,82.0427 2019-06-03 15:42:44.120,130.2146,7496.8193,8.9724,-0.0315,1.3269,-0.0506,2400.0,2400.0,-0.5418,-0.8113,4.9634,82.0427 2019-06-03 15:42:44.140,130.2957,7496.7915,8.9724,-0.0315,0.9637,0.4009,2400.0,2400.0,-0.5594,-0.8083,4.9674,82.0427 2019-06-03 15:42:44.160,130.2856,7496.7642,9.0176,-0.0011,1.0821,-0.0686,2400.0,2400.0,-0.5594,-0.8113,4.9648,82.0427 2019-06-03 15:42:44.180,130.2349,7496.6812,9.0176,-0.0011,1.2219,0.3213,2400.0,2400.0,-0.5535,-0.8113,4.9568,82.0427 2019-06-03 15:42:44.200,130.2349,7496.7363,9.0776,0.0374,1.1512,0.3376,2400.0,2400.0,-0.5535,-0.8113,4.9528,82.0392 2019-06-03 15:42:44.220,130.245,7496.7642,9.0871,0.0459,1.1353,-0.0235,2400.0,2400.0,-0.5389,-0.8113,4.9409,82.0383 2019-06-03 15:42:44.240,130.2856,7496.7915,9.0871,0.0459,1.1782,0.372,2400.0,2400.0,-0.5389,-0.8234,4.9648,82.0383 2019-06-03 15:42:44.260,130.2856,7496.7915,9.0871,0.0459,0.9023,-0.021,2400.0,2400.0,-0.5506,-0.8174,4.9542,82.0383 2019-06-03 15:42:44.280,130.2247,7496.8467,9.134,0.0743,1.3739,0.2986,2400.0,2400.0,-0.5477,-0.8386,4.9687,82.0392 2019-06-03 15:42:44.300,130.245,7497.647,9.1821,0.1006,1.3099,0.2866,2400.0,2400.0,-0.5681,-0.8446,4.9515,82.0414 2019-06-03 15:42:44.320,130.2044,7498.5303,9.1821,0.1006,1.054,0.0522,2400.0,2400.0,-0.5506,-0.8325,4.9502,82.0414 2019-06-03 15:42:44.340,130.1435,7499.9653,9.1821,0.1006,1.4682,0.2691,2400.0,2400.0,-0.5535,-0.8688,4.9568,82.0414 2019-06-03 15:42:44.360,130.113,7500.9038,9.2161,0.1191,0.7562,0.0809,2400.0,2400.0,-0.5389,-0.8295,4.9568,82.0418 2019-06-03 15:42:44.380,130.0724,7502.2559,9.2161,0.1191,1.4689,0.1696,2400.0,2400.0,-0.5564,-0.8234,4.9542,82.0418 2019-06-03 15:42:44.400,130.0622,7503.1665,9.2818,0.1516,1.3506,0.1917,2400.0,2340.0,-0.5535,-0.8325,4.9674,82.0449 2019-06-03 15:42:44.420,130.0724,7504.022,9.2982,0.1597,0.7877,0.1345,2400.0,2340.0,-0.5448,-0.8295,4.9542,82.0453 2019-06-03 15:42:44.440,130.1334,7505.3193,9.2982,0.1597,1.4482,0.1506,2400.0,2340.0,-0.5448,-0.8325,4.9595,82.0453 2019-06-03 15:42:44.460,130.1435,7505.6504,9.2982,0.1597,0.7644,0.1857,2400.0,2340.0,-0.5448,-0.8295,4.9595,82.0453 2019-06-03 15:42:44.480,130.0622,7505.6782,9.343,0.1791,1.3813,0.058,2400.0,2340.0,-0.5535,-0.8295,4.9555,82.0462 2019-06-03 15:42:44.500,130.0825,7505.5674,9.3786,0.1929,1.3254,0.0645,2400.0,2340.0,-0.5652,-0.8355,4.9581,82.0471 2019-06-03 15:42:44.520,130.052,7505.5674,9.3786,0.1929,0.923,0.2457,2400.0,2340.0,-0.5418,-0.8355,4.9555,82.0471 2019-06-03 15:42:44.540,130.1232,7505.623,9.3786,0.1929,1.2799,0.0305,2400.0,2340.0,-0.5564,-0.8355,4.9621,82.0471 2019-06-03 15:42:44.560,130.1334,7505.6782,9.415,0.2044,0.8938,0.2888,2400.0,2340.0,-0.5564,-0.8325,4.9542,82.0471 2019-06-03 15:42:44.580,130.0724,7505.6504,9.415,0.2044,1.3358,-0.0243,2400.0,2340.0,-0.5506,-0.8355,4.9555,82.0471 2019-06-03 15:42:44.600,130.0622,7505.6504,9.4729,0.2258,1.3228,0.0033,2400.0,2340.0,-0.5623,-0.8295,4.9528,82.0471 2019-06-03 15:42:44.620,130.0825,7505.623,9.4989,0.2374,1.0185,0.3028,2400.0,2340.0,-0.5506,-0.8295,4.9502,82.0471 2019-06-03 15:42:44.640,130.1232,7505.623,9.4989,0.2374,1.1675,-0.003,2400.0,2340.0,-0.5506,-0.8355,4.9568,82.0471 2019-06-03 15:42:44.660,130.1435,7505.5952,9.4989,0.2374,1.0858,0.3412,2400.0,2340.0,-0.5506,-0.8325,4.9568,82.0471 2019-06-03 15:42:44.680,130.052,7505.623,9.5332,0.2493,1.0839,-0.0607,2400.0,2340.0,-0.5477,-0.8295,4.9568,82.0466 2019-06-03 15:42:44.700,130.0724,7505.5122,9.5666,0.257,1.0895,-0.0135,2400.0,2340.0,-0.5535,-0.8325,4.9555,82.0458 2019-06-03 15:42:44.720,130.0418,7505.4849,9.5666,0.257,1.1708,0.2879,2400.0,2340.0,-0.5477,-0.8265,4.9383,82.0458 2019-06-03 15:42:44.740,129.9808,7505.5122,9.5666,0.257,1.0329,-0.0004,2400.0,2340.0,-0.5418,-0.8295,4.9515,82.0458 2019-06-03 15:42:44.760,129.9604,7505.54,9.6056,0.2706,1.2633,0.3144,2400.0,2340.0,-0.5506,-0.8234,4.9528,82.0462 2019-06-03 15:42:44.780,129.8992,7505.5952,9.6056,0.2706,1.0136,0.0196,2400.0,2340.0,-0.5477,-0.8234,4.9595,82.0462 2019-06-03 15:42:44.800,129.9094,7505.623,9.6583,0.2846,0.8927,0.0656,2400.0,2340.0,-0.5594,-0.8355,4.9462,82.0405 2019-06-03 15:42:44.820,129.8992,7505.6504,9.6806,0.2951,1.2918,0.2487,2400.0,2340.0,-0.5448,-0.8265,4.9383,82.0414 2019-06-03 15:42:44.840,129.9706,7505.623,9.6806,0.2951,0.9563,0.0457,2400.0,2340.0,-0.5535,-0.8265,4.9383,82.0414 2019-06-03 15:42:44.860,129.9706,7505.54,9.6806,0.2951,1.3025,0.2178,2400.0,2340.0,-0.5564,-0.8204,4.9436,82.0414 2019-06-03 15:42:44.880,129.9094,7505.6504,9.7131,0.3028,0.9097,0.0963,2400.0,2340.0,-0.5535,-0.8053,4.9396,82.0405 2019-06-03 15:42:44.900,129.9094,7506.4785,9.7514,0.3103,0.8528,0.1353,2400.0,2340.0,-0.5506,-0.8325,4.9568,82.041 2019-06-03 15:42:44.920,129.8992,7507.3618,9.7514,0.3103,1.3576,0.1643,2400.0,2340.0,-0.5506,-0.8113,4.9211,82.041 2019-06-03 15:42:44.940,129.9604,7508.6592,9.7514,0.3103,0.9493,0.1451,2400.0,2340.0,-0.5418,-0.8174,4.9369,82.041 2019-06-03 15:42:44.960,129.9604,7509.5977,9.7911,0.3253,1.2858,0.1058,2400.0,2340.0,-0.5506,-0.8265,4.929,82.0431 2019-06-03 15:42:44.980,129.9094,7510.7847,9.7911,0.3253,1.0107,0.1913,2400.0,2340.0,-0.5331,-0.8204,4.9489,82.0431 2019-06-03 15:42:45.000,129.8992,7511.6406,9.8452,0.339,0.9123,0.2029,2400.0,2340.0,-0.5418,-0.8174,4.9489,82.0418 2019-06-03 15:42:45.020,129.9094,7512.4961,9.8573,0.3441,1.3099,0.1101,2400.0,2340.0,-0.5272,-0.8022,4.933,82.0414 2019-06-03 15:42:45.040,129.9706,7513.7935,9.8573,0.3441,0.9704,0.2006,2400.0,2340.0,-0.5331,-0.8083,4.9422,82.0414 2019-06-03 15:42:45.060,129.9808,7514.0972,9.8573,0.3441,1.2588,0.0785,2400.0,2340.0,-0.5331,-0.8083,4.9237,82.0414 2019-06-03 15:42:45.080,129.8992,7514.0142,9.8943,0.3533,1.0118,0.2366,2400.0,2340.0,-0.5272,-0.7992,4.9264,82.0414 2019-06-03 15:42:45.100,129.9094,7513.9316,9.9348,0.3682,0.9426,0.2765,2400.0,2340.0,-0.5331,-0.8083,4.9383,82.0401 2019-06-03 15:42:45.120,129.8788,7513.8486,9.9348,0.3682,1.2263,0.0342,2400.0,2340.0,-0.5243,-0.8022,4.9184,82.0401 2019-06-03 15:42:45.140,129.8176,7513.7935,9.9348,0.3682,1.0632,0.2643,2400.0,2340.0,-0.5155,-0.8022,4.9237,82.0401 2019-06-03 15:42:45.160,129.7971,7513.8213,9.97,0.3785,1.1867,0.0106,2400.0,2340.0,-0.5126,-0.8022,4.9171,82.0396 2019-06-03 15:42:45.180,129.746,7513.8213,9.97,0.3785,1.0747,0.3087,2400.0,2340.0,-0.4892,-0.7871,4.925,82.0396 2019-06-03 15:42:45.200,129.746,7513.8213,10.024,0.3926,1.0884,0.3279,2400.0,2340.0,-0.4951,-0.7992,4.9343,82.0379 2019-06-03 15:42:45.220,129.746,7513.7935,10.0316,0.3947,1.0514,0.0098,2400.0,2340.0,-0.4863,-0.7629,4.9211,82.037 2019-06-03 15:42:45.240,129.7971,7513.8486,10.0316,0.3947,1.1793,0.274,2400.0,2340.0,-0.4951,-0.7992,4.9264,82.037 2019-06-03 15:42:45.260,129.8278,7513.7935,10.0316,0.3947,1.0695,0.0104,2400.0,2340.0,-0.5038,-0.8022,4.9184,82.037 2019-06-03 15:42:45.280,129.746,7513.9316,10.0704,0.4089,1.1967,0.2904,2400.0,2340.0,-0.5038,-0.7932,4.9131,82.0361 2019-06-03 15:42:45.300,129.746,7514.8428,10.11,0.425,1.146,0.2928,2400.0,2340.0,-0.5068,-0.7932,4.9237,82.0357 2019-06-03 15:42:45.320,129.7153,7515.6987,10.11,0.425,0.9837,0.0459,2400.0,2340.0,-0.4921,-0.7962,4.9131,82.0357 2019-06-03 15:42:45.340,129.6539,7517.1064,10.11,0.425,1.2459,0.2326,2400.0,2340.0,-0.4951,-0.7932,4.9131,82.0357 2019-06-03 15:42:45.360,129.6539,7518.0176,10.1387,0.4344,0.9693,0.0439,2400.0,2340.0,-0.5038,-0.7962,4.9171,82.0348 2019-06-03 15:42:45.380,129.5925,7519.4258,10.1667,0.4431,1.2703,0.2436,2400.0,2340.0,-0.5009,-0.7962,4.9118,82.027 2019-06-03 15:42:45.400,129.6027,7520.3096,10.1907,0.4533,1.25,0.2523,2520.0,2400.0,-0.5009,-0.7932,4.9264,82.0278 2019-06-03 15:42:45.420,129.5925,7521.1377,10.2023,0.4554,0.9974,0.0813,2520.0,2400.0,-0.5009,-0.7901,4.9025,82.027 2019-06-03 15:42:45.440,129.6539,7522.4629,10.2023,0.4554,1.3439,0.2048,2520.0,2400.0,-0.498,-0.7901,4.9091,82.027 2019-06-03 15:42:45.460,129.6642,7522.7393,10.2023,0.4554,0.9068,0.1017,2520.0,2400.0,-0.5126,-0.7901,4.9052,82.027 2019-06-03 15:42:45.480,129.5925,7522.7114,10.2399,0.4696,1.4552,0.1841,2520.0,2400.0,-0.4921,-0.7871,4.9091,82.0274 2019-06-03 15:42:45.500,129.5925,7522.6563,10.2706,0.4821,1.439,0.1612,2520.0,2400.0,-0.5068,-0.7871,4.9171,82.0278 2019-06-03 15:42:45.520,129.5207,7522.6836,10.2706,0.4821,0.8494,0.1747,2520.0,2400.0,-0.5009,-0.7841,4.9078,82.0278 2019-06-03 15:42:45.540,129.3459,7522.6563,10.2706,0.4821,1.3121,0.0778,2520.0,2400.0,-0.5068,-0.775,4.9025,82.0278 2019-06-03 15:42:45.560,129.315,7522.6836,10.2975,0.4928,0.9134,0.2224,2520.0,2400.0,-0.5009,-0.778,4.9171,82.0283 2019-06-03 15:42:45.580,129.2738,7522.7666,10.2975,0.4928,1.3835,0.0698,2520.0,2400.0,-0.4892,-0.7629,4.9038,82.0283 2019-06-03 15:42:45.600,129.2635,7522.8218,10.3443,0.5152,1.2607,0.079,2520.0,2400.0,-0.4951,-0.7659,4.9158,82.0283 2019-06-03 15:42:45.620,129.2738,7522.8496,10.3641,0.5233,0.9164,0.2451,2520.0,2400.0,-0.498,-0.7659,4.9025,82.0296 2019-06-03 15:42:45.640,129.3253,7522.9048,10.3641,0.5233,1.3421,0.0402,2520.0,2400.0,-0.5009,-0.7629,4.8972,82.0296 2019-06-03 15:42:45.660,129.3356,7522.9048,10.3641,0.5233,0.9264,0.3052,2520.0,2400.0,-0.5097,-0.769,4.9065,82.0296 2019-06-03 15:42:45.680,129.2738,7522.9878,10.3951,0.5379,1.3095,-0.0185,2520.0,2400.0,-0.5009,-0.7659,4.9052,82.0322 2019-06-03 15:42:45.700,129.2635,7523.8438,10.42,0.5484,1.1978,-0.0164,2520.0,2400.0,-0.5097,-0.7629,4.9171,82.0353 2019-06-03 15:42:45.720,129.2944,7524.7275,10.42,0.5484,0.9637,0.329,2520.0,2400.0,-0.5038,-0.7659,4.9065,82.0353 2019-06-03 15:42:45.740,129.4899,7525.9976,10.42,0.5484,1.1975,-0.0271,2520.0,2400.0,-0.4863,-0.7629,4.8933,82.0353 2019-06-03 15:42:45.760,129.4899,7526.9092,10.4517,0.5635,1.132,0.3673,2520.0,2400.0,-0.4951,-0.7599,4.9038,82.0392 2019-06-03 15:42:45.780,129.4282,7528.207,10.4517,0.5635,1.1457,-0.0363,2520.0,2400.0,-0.4951,-0.7599,4.9025,82.0392 2019-06-03 15:42:45.800,129.4179,7529.0908,10.4924,0.5818,1.0773,-0.0253,2520.0,2400.0,-0.5097,-0.7629,4.9118,82.0357 2019-06-03 15:42:45.820,129.4385,7529.8916,10.5181,0.5923,1.2196,0.2758,2520.0,2400.0,-0.5272,-0.7659,4.9038,82.0396 2019-06-03 15:42:45.840,129.4899,7531.1621,10.5181,0.5923,0.9977,0.0482,2520.0,2400.0,-0.5184,-0.7659,4.8933,82.0396 2019-06-03 15:42:45.860,129.4899,7531.438,10.5181,0.5923,1.2944,0.2719,2520.0,2400.0,-0.5068,-0.778,4.9038,82.0396 2019-06-03 15:42:45.880,129.4282,7531.355,10.546,0.6006,0.9582,0.0567,2520.0,2400.0,-0.4834,-0.7659,4.8959,82.0423 2019-06-03 15:42:45.900,129.4282,7531.3276,10.5734,0.6145,0.8642,0.0673,2520.0,2400.0,-0.4834,-0.7659,4.8986,82.0471 2019-06-03 15:42:45.920,129.3974,7531.355,10.5734,0.6145,1.3506,0.1604,2520.0,2400.0,-0.4951,-0.769,4.8933,82.0471 2019-06-03 15:42:45.940,129.3356,7531.355,10.5734,0.6145,0.8912,0.1524,2520.0,2400.0,-0.4951,-0.7629,4.8933,82.0471 2019-06-03 15:42:45.960,129.315,7531.355,10.6109,0.6326,1.3802,0.1348,2520.0,2400.0,-0.5184,-0.7629,4.9184,82.0532 2019-06-03 15:42:45.980,129.2532,7531.3828,10.6109,0.6326,0.7688,0.1885,2520.0,2400.0,-0.5097,-0.7629,4.9078,82.0532 2019-06-03 15:42:46.000,129.2635,7531.4106,10.6541,0.6495,0.8065,0.2089,2520.0,2400.0,-0.5068,-0.7659,4.8919,82.0589 2019-06-03 15:42:46.020,129.2738,7531.3828,10.6676,0.6551,1.3968,0.0332,2520.0,2400.0,-0.4921,-0.769,4.8827,82.0606 2019-06-03 15:42:46.040,129.3253,7531.438,10.6676,0.6551,0.8476,0.2779,2520.0,2400.0,-0.4804,-0.7599,4.8721,82.0606 2019-06-03 15:42:46.060,129.3356,7531.4106,10.6676,0.6551,1.358,0.0244,2520.0,2400.0,-0.4892,-0.7568,4.8959,82.0606 2019-06-03 15:42:46.080,129.2738,7531.521,10.6975,0.6669,0.8387,0.2771,2520.0,2400.0,-0.4892,-0.7599,4.8986,82.0672 2019-06-03 15:42:46.100,129.2738,7532.3218,10.7335,0.6858,0.8761,0.3238,2520.0,2400.0,-0.5009,-0.7538,4.9052,82.0742 2019-06-03 15:42:46.120,129.212,7533.1504,10.7335,0.6858,1.2282,-0.0583,2520.0,2400.0,-0.5155,-0.7568,4.8906,82.0742 2019-06-03 15:42:46.140,129.0157,7534.5039,10.7335,0.6858,1.0033,0.378,2520.0,2400.0,-0.498,-0.7568,4.8866,82.0742 2019-06-03 15:42:46.160,128.9949,7535.4155,10.7652,0.7014,1.2,-0.0603,2520.0,2400.0,-0.4951,-0.7538,4.888,82.0803 2019-06-03 15:42:46.180,128.9432,7536.7969,10.7652,0.7014,0.926,0.3767,2520.0,2400.0,-0.4804,-0.7447,4.8787,82.0803 2019-06-03 15:42:46.200,128.9328,7537.7358,10.8113,0.7191,1.1424,0.3939,2520.0,2400.0,-0.4863,-0.7447,4.8787,82.0851 2019-06-03 15:42:46.220,128.9535,7538.5645,10.8161,0.7186,0.9674,-0.0516,2520.0,2400.0,-0.4921,-0.7538,4.8933,82.0869 2019-06-03 15:42:46.240,129.0157,7539.8906,10.8161,0.7186,1.1712,0.3474,2520.0,2400.0,-0.4892,-0.7356,4.8906,82.0869 2019-06-03 15:42:46.260,129.0157,7540.2217,10.8161,0.7186,0.8753,-0.0331,2520.0,2400.0,-0.4951,-0.7508,4.9078,82.0869 2019-06-03 15:42:46.280,128.9432,7540.3047,10.8551,0.7352,1.3247,0.2949,2520.0,2400.0,-0.4951,-0.7508,4.8827,82.0943 2019-06-03 15:42:46.300,128.9535,7540.2217,10.887,0.7499,1.3957,0.275,2520.0,2400.0,-0.4951,-0.7508,4.8747,82.1004 2019-06-03 15:42:46.320,128.9328,7540.2495,10.887,0.7499,0.7514,0.0889,2520.0,2400.0,-0.4951,-0.7538,4.8747,82.1004 2019-06-03 15:42:46.340,129.0053,7540.2773,10.887,0.7499,1.3676,0.1943,2520.0,2400.0,-0.4717,-0.7478,4.8827,82.1004 2019-06-03 15:42:46.360,129.0053,7540.2495,10.907,0.7576,0.7163,0.1342,2520.0,2400.0,-0.4804,-0.7538,4.9012,82.1057 2019-06-03 15:42:46.380,128.9432,7540.2495,10.907,0.7576,1.4445,0.1183,2520.0,2400.0,-0.4863,-0.7478,4.8893,82.1057 2019-06-03 15:42:46.400,128.9432,7540.2773,10.9556,0.7796,1.5181,0.116,2880.0,2400.0,-0.5009,-0.7447,4.8827,82.1192 2019-06-03 15:42:46.420,128.9328,7540.2495,10.9714,0.7828,0.8151,0.2314,2880.0,2400.0,-0.4863,-0.7599,4.8986,82.1223 2019-06-03 15:42:46.440,128.9949,7540.1943,10.9714,0.7828,1.4896,0.02,2880.0,2400.0,-0.4834,-0.7568,4.8893,82.1223 2019-06-03 15:42:46.460,129.026,7540.2217,10.9714,0.7828,0.6549,0.3226,2880.0,2400.0,-0.4951,-0.7568,4.8999,82.1223 2019-06-03 15:42:46.480,128.9432,7540.2495,11.0012,0.7995,1.4142,-0.0295,2880.0,2400.0,-0.4951,-0.7387,4.8707,82.1288 2019-06-03 15:42:46.500,128.9535,7540.1392,11.0214,0.8114,1.4456,-0.0477,2880.0,2400.0,-0.4892,-0.7296,4.8707,82.1341 2019-06-03 15:42:46.520,128.9121,7540.1392,11.0214,0.8114,0.9474,0.3927,2880.0,2400.0,-0.4863,-0.7387,4.8853,82.1341 2019-06-03 15:42:46.540,128.8395,7540.1665,11.0214,0.8114,1.2703,-0.1035,2880.0,2400.0,-0.4717,-0.7356,4.8813,82.1341 2019-06-03 15:42:46.560,128.8395,7540.2217,11.0469,0.8254,0.9778,0.3972,2880.0,2400.0,-0.4834,-0.7326,4.9078,82.1397 2019-06-03 15:42:46.580,128.7772,7540.2217,11.0469,0.8254,1.0954,-0.089,2880.0,2400.0,-0.5009,-0.7326,4.8919,82.1397 2019-06-03 15:42:46.600,128.7772,7540.2217,11.0893,0.8492,1.0813,-0.0742,2880.0,2400.0,-0.5009,-0.7356,4.8827,82.1454 2019-06-03 15:42:46.620,128.7876,7540.1943,11.1144,0.8641,1.2725,0.3885,2880.0,2400.0,-0.5038,-0.7356,4.884,82.1494 2019-06-03 15:42:46.640,128.8499,7540.1113,11.1144,0.8641,0.953,-0.066,2880.0,2400.0,-0.4746,-0.7326,4.8668,82.1494 2019-06-03 15:42:46.660,128.8395,7540.1113,11.1144,0.8641,1.3513,0.3202,2880.0,2400.0,-0.4746,-0.7356,4.8866,82.1494 2019-06-03 15:42:46.680,128.7668,7540.2773,11.1341,0.8745,0.8032,0.0217,2880.0,2400.0,-0.4834,-0.7326,4.8628,82.1542 2019-06-03 15:42:46.700,128.7772,7541.0786,11.1614,0.8906,0.8128,0.064,2880.0,2400.0,-0.4804,-0.7356,4.8721,82.1585 2019-06-03 15:42:46.720,128.7148,7541.7969,11.1614,0.8906,1.4234,0.2138,2880.0,2400.0,-0.4921,-0.7326,4.8986,82.1585 2019-06-03 15:42:46.740,128.5169,7542.9849,11.1614,0.8906,0.6989,0.1356,2880.0,2400.0,-0.4834,-0.7296,4.8866,82.1585 2019-06-03 15:42:46.760,128.496,7543.8413,11.1974,0.9087,1.517,0.0855,2880.0,2400.0,-0.4892,-0.7296,4.8972,82.1634 2019-06-03 15:42:46.780,128.4333,7545.0293,11.2265,0.925,0.6434,0.2237,2880.0,2400.0,-0.4921,-0.7296,4.8747,82.1642 2019-06-03 15:42:46.800,128.4438,7545.8579,11.2366,0.9298,0.8032,0.2766,2880.0,2400.0,-0.4863,-0.7266,4.8721,82.166 2019-06-03 15:42:46.820,128.4542,7546.6318,11.2482,0.9356,1.3532,-0.0029,2880.0,2400.0,-0.4863,-0.7296,4.8774,82.1668 2019-06-03 15:42:46.840,128.5064,7547.8472,11.2482,0.9356,0.7644,0.339,2880.0,2400.0,-0.4688,-0.7296,4.8655,82.1668 2019-06-03 15:42:46.860,128.5273,7548.0957,11.2482,0.9356,1.352,-0.0709,2880.0,2400.0,-0.4951,-0.7296,4.8602,82.1668 2019-06-03 15:42:46.880,128.4438,7548.2339,11.2765,0.9524,0.9175,0.3828,2880.0,2400.0,-0.4892,-0.7296,4.8588,82.1708 2019-06-03 15:42:46.900,128.4542,7549.1182,11.3152,0.9744,1.0122,0.3902,2880.0,2400.0,-0.4892,-0.7266,4.8615,82.1765 2019-06-03 15:42:46.920,128.4124,7550.0024,11.3152,0.9744,1.1057,-0.0927,2880.0,2400.0,-0.4834,-0.7266,4.8972,82.1765 2019-06-03 15:42:46.940,128.3602,7551.3843,11.3152,0.9744,1.1242,0.3643,2880.0,2400.0,-0.4746,-0.7296,4.88,82.1765 2019-06-03 15:42:46.960,128.3497,7552.3516,11.3408,0.9938,0.8909,-0.075,2880.0,2400.0,-0.4804,-0.7266,4.8906,82.1804 2019-06-03 15:42:46.980,128.2869,7553.7607,11.3408,0.9938,1.3025,0.3418,2880.0,2400.0,-0.4951,-0.7235,4.8615,82.1804 2019-06-03 15:42:47.000,128.2974,7554.645,11.3899,1.0225,1.3546,0.306,2880.0,2400.0,-0.4892,-0.7144,4.8562,82.1913 2019-06-03 15:42:47.020,128.2974,7555.5293,11.3962,1.0248,0.7111,0.0207,2880.0,2400.0,-0.498,-0.7175,4.8681,82.1926 2019-06-03 15:42:47.040,128.3706,7556.8281,11.3962,1.0248,1.3894,0.2176,2880.0,2400.0,-0.4921,-0.7144,4.8562,82.1926 2019-06-03 15:42:47.060,128.3602,7557.1323,11.3962,1.0248,0.6778,0.1098,2880.0,2400.0,-0.4921,-0.7144,4.8694,82.1926 2019-06-03 15:42:47.080,128.2869,7557.1045,11.4344,1.0481,1.4981,0.1137,2880.0,2400.0,-0.4834,-0.7144,4.8707,82.1988 2019-06-03 15:42:47.100,128.3078,7557.0771,11.4585,1.0643,1.4966,0.0713,2880.0,2400.0,-0.4775,-0.7144,4.8655,82.2036 2019-06-03 15:42:47.120,128.245,7557.1045,11.4585,1.0643,0.6616,0.2753,2880.0,2400.0,-0.4863,-0.7175,4.8959,82.2036 2019-06-03 15:42:47.140,128.1926,7557.1323,11.4585,1.0643,1.5029,-0.0058,2880.0,2400.0,-0.498,-0.7144,4.8575,82.2036 2019-06-03 15:42:47.160,128.1821,7557.1597,11.4795,1.0752,0.7943,0.3331,2880.0,2400.0,-0.4951,-0.7114,4.8602,82.2071 2019-06-03 15:42:47.180,128.1191,7557.1597,11.4795,1.0752,1.2833,-0.0744,2880.0,2400.0,-0.4951,-0.7144,4.8482,82.2071 2019-06-03 15:42:47.200,128.1191,7557.1875,11.524,1.1068,1.3524,-0.1117,2880.0,2400.0,-0.4863,-0.7144,4.8509,82.2119 2019-06-03 15:42:47.220,128.1191,7557.1875,11.5493,1.1191,0.9574,0.4172,2880.0,2400.0,-0.4863,-0.7144,4.8721,82.2158 2019-06-03 15:42:47.240,128.1716,7557.2153,11.5493,1.1191,1.1856,-0.1035,2880.0,2400.0,-0.4834,-0.6932,4.8602,82.2158 2019-06-03 15:42:47.260,128.203,7557.1597,11.5493,1.1191,1.0954,0.4256,2880.0,2400.0,-0.4863,-0.6841,4.8641,82.2158 2019-06-03 15:42:47.280,128.1191,7557.2427,11.5711,1.1374,0.9001,-0.0624,2880.0,2400.0,-0.4892,-0.6781,4.876,82.2211 2019-06-03 15:42:47.300,128.1296,7558.0444,11.5905,1.1527,0.9593,-0.0696,2880.0,2400.0,-0.4921,-0.6841,4.8681,82.2259 2019-06-03 15:42:47.320,128.056,7558.8735,11.5905,1.1527,1.3369,0.3347,2880.0,2400.0,-0.4921,-0.6841,4.8827,82.2259 2019-06-03 15:42:47.340,127.8665,7560.145,11.5905,1.1527,0.8003,-0.0097,2880.0,2400.0,-0.4892,-0.6841,4.8549,82.2259 2019-06-03 15:42:47.360,127.8454,7561.0571,11.6248,1.1772,1.409,0.2555,2880.0,2400.0,-0.4892,-0.6811,4.8416,82.2337 2019-06-03 15:42:47.380,127.7926,7562.439,11.6248,1.1772,0.6886,0.1168,2880.0,2400.0,-0.4892,-0.6841,4.8535,82.2337 2019-06-03 15:42:47.400,127.7926,7563.3237,11.6599,1.2085,0.6908,0.1149,2580.0,2340.0,-0.4775,-0.6781,4.8469,82.2385 2019-06-03 15:42:47.420,127.7926,7564.1807,11.6768,1.2214,1.6128,0.1254,2580.0,2340.0,-0.4746,-0.6811,4.8707,82.2412 2019-06-03 15:42:47.440,127.856,7565.5073,11.6768,1.2214,0.6324,0.2306,2580.0,2340.0,-0.4951,-0.6781,4.8549,82.2412 2019-06-03 15:42:47.460,127.8665,7565.7837,11.6768,1.2214,1.4452,0.0238,2580.0,2340.0,-0.4951,-0.675,4.8655,82.2412 2019-06-03 15:42:47.480,127.7926,7565.7285,11.698,1.2413,0.7318,0.35,2580.0,2340.0,-0.5038,-0.6781,4.8655,82.246 2019-06-03 15:42:47.500,127.8032,7565.7007,11.73,1.2681,0.6538,0.3452,2580.0,2340.0,-0.4921,-0.672,4.8549,82.2521 2019-06-03 15:42:47.520,127.7504,7565.7285,11.73,1.2681,1.3668,-0.0708,2580.0,2340.0,-0.4921,-0.675,4.8602,82.2521 2019-06-03 15:42:47.540,127.7081,7565.7285,11.73,1.2681,0.8439,0.3802,2580.0,2340.0,-0.5068,-0.675,4.8429,82.2521 2019-06-03 15:42:47.560,127.687,7565.7559,11.7606,1.293,1.1952,-0.1039,2580.0,2340.0,-0.5009,-0.669,4.8469,82.2578 2019-06-03 15:42:47.580,127.6341,7565.7837,11.7606,1.293,1.0713,0.4481,2580.0,2340.0,-0.4892,-0.675,4.8602,82.2578 2019-06-03 15:42:47.600,127.6341,7565.7837,11.7963,1.3305,1.1065,0.4154,2580.0,2340.0,-0.4688,-0.672,4.8496,82.2613 2019-06-03 15:42:47.620,127.6447,7565.7837,11.7973,1.3364,0.8554,-0.0927,2580.0,2340.0,-0.4688,-0.672,4.8602,82.263 2019-06-03 15:42:47.640,127.6976,7565.8667,11.7973,1.3364,1.3916,0.3346,2580.0,2340.0,-0.4746,-0.669,4.8482,82.263 2019-06-03 15:42:47.660,127.6976,7565.9219,11.7973,1.3364,0.8387,0.0084,2580.0,2340.0,-0.4746,-0.6447,4.8416,82.263 2019-06-03 15:42:47.680,127.6341,7566.0049,11.8296,1.3686,1.3739,0.2702,2580.0,2340.0,-0.4834,-0.6538,4.8496,82.2709 2019-06-03 15:42:47.700,127.6341,7566.8618,11.8555,1.3983,1.4715,0.241,2580.0,2340.0,-0.4804,-0.6508,4.8376,82.2779 2019-06-03 15:42:47.720,127.6023,7567.7188,11.8555,1.3983,0.6102,0.1161,2580.0,2340.0,-0.4892,-0.6477,4.8482,82.2779 2019-06-03 15:42:47.740,127.5387,7568.9907,11.8555,1.3983,1.4571,0.1047,2580.0,2340.0,-0.4834,-0.6508,4.8496,82.2779 2019-06-03 15:42:47.760,127.5069,7569.9307,11.8712,1.4198,0.6967,0.2201,2580.0,2340.0,-0.4746,-0.6477,4.8469,82.2836 2019-06-03 15:42:47.780,127.4645,7571.313,11.8712,1.4198,1.497,0.0512,2580.0,2340.0,-0.4746,-0.6508,4.8628,82.2836 2019-06-03 15:42:47.800,127.4645,7572.2251,11.9108,1.464,1.5824,0.013,2580.0,2340.0,-0.4717,-0.6538,4.839,82.2914 2019-06-03 15:42:47.820,127.4645,7573.0825,11.9283,1.4804,0.6897,0.3396,2580.0,2340.0,-0.4717,-0.6508,4.8429,82.2967 2019-06-03 15:42:47.840,127.5281,7574.4092,11.9283,1.4804,1.3406,-0.0658,2580.0,2340.0,-0.4804,-0.6508,4.8443,82.2967 2019-06-03 15:42:47.860,127.5387,7574.686,11.9283,1.4804,0.8328,0.3906,2580.0,2340.0,-0.4746,-0.6508,4.8443,82.2967 2019-06-03 15:42:47.880,127.4539,7574.7412,11.9515,1.5096,1.2078,-0.1119,2580.0,2340.0,-0.4804,-0.6477,4.8588,82.3037 2019-06-03 15:42:47.900,127.4751,7575.543,11.9653,1.5276,1.0902,-0.1292,2580.0,2340.0,-0.4804,-0.6477,4.8443,82.3102 2019-06-03 15:42:47.920,127.4114,7576.4004,11.9653,1.5276,1.0913,0.426,2580.0,2340.0,-0.4775,-0.6447,4.8403,82.3102 2019-06-03 15:42:47.940,127.3582,7577.6724,11.9653,1.5276,0.8997,-0.0859,2580.0,2340.0,-0.4775,-0.6477,4.8429,82.3102 2019-06-03 15:42:47.960,127.3582,7578.502,11.9912,1.5514,1.2296,0.3523,2580.0,2340.0,-0.4746,-0.6447,4.8363,82.3181 2019-06-03 15:42:47.980,127.2838,7579.7461,11.9912,1.5514,0.6808,-0.029,2580.0,2340.0,-0.4775,-0.6508,4.8575,82.3181 2019-06-03 15:42:48.000,127.2944,7580.5757,12.0276,1.5856,0.6823,0.0155,2580.0,2340.0,-0.4892,-0.6447,4.8363,82.3273 2019-06-03 15:42:48.020,127.305,7581.3779,12.0485,1.6029,1.5044,0.2598,2580.0,2340.0,-0.4775,-0.6447,4.8456,82.3325 2019-06-03 15:42:48.040,127.3582,7582.6772,12.0485,1.6029,0.6856,0.1148,2580.0,2340.0,-0.4804,-0.6477,4.8324,82.3325 2019-06-03 15:42:48.060,127.3582,7583.0093,12.0485,1.6029,1.5129,0.1119,2580.0,2340.0,-0.4717,-0.6386,4.8324,82.3325 2019-06-03 15:42:48.080,127.2944,7582.9814,12.0633,1.6187,0.5347,0.2093,2580.0,2340.0,-0.4804,-0.6417,4.8416,82.3391 2019-06-03 15:42:48.100,127.305,7582.8984,12.0909,1.6407,0.6128,0.2265,2580.0,2340.0,-0.4775,-0.6447,4.8363,82.3487 2019-06-03 15:42:48.120,127.2305,7582.8711,12.0909,1.6407,1.4826,0.0287,2580.0,2340.0,-0.4746,-0.6417,4.8443,82.3487 2019-06-03 15:42:48.140,127.0384,7582.8984,12.0909,1.6407,0.7655,0.3701,2580.0,2340.0,-0.4688,-0.6417,4.8509,82.3487 2019-06-03 15:42:48.160,127.0277,7582.9263,12.1207,1.6684,1.4149,-0.1006,2580.0,2340.0,-0.46,-0.6417,4.8403,82.357 2019-06-03 15:42:48.180,126.9635,7582.9263,12.1348,1.6831,0.8491,0.4134,2580.0,2340.0,-0.4688,-0.6417,4.8469,82.3574 2019-06-03 15:42:48.200,126.9635,7582.9541,12.1513,1.6954,1.0129,0.4045,2580.0,2340.0,-0.4863,-0.6386,4.8204,82.3622 2019-06-03 15:42:48.220,126.9635,7582.9814,12.1505,1.7004,1.0917,-0.1042,2580.0,2340.0,-0.4951,-0.6265,4.8231,82.3649 2019-06-03 15:42:48.240,127.0384,7583.0093,12.1505,1.7004,1.2245,0.4225,2580.0,2340.0,-0.498,-0.6235,4.8271,82.3649 2019-06-03 15:42:48.260,127.0384,7582.9541,12.1505,1.7004,0.9608,-0.1033,2580.0,2340.0,-0.4717,-0.6265,4.8204,82.3649 2019-06-03 15:42:48.280,126.9742,7583.0645,12.18,1.726,1.4216,0.3731,2580.0,2340.0,-0.4658,-0.6235,4.8443,82.3749 2019-06-03 15:42:48.300,126.9635,7583.8667,12.2082,1.7521,1.4456,0.3241,2580.0,2340.0,-0.4658,-0.6235,4.8204,82.3845 2019-06-03 15:42:48.320,126.9421,7584.7241,12.2082,1.7521,0.7566,0.0113,2580.0,2340.0,-0.4688,-0.6204,4.8204,82.3845 2019-06-03 15:42:48.340,126.8672,7586.1348,12.2082,1.7521,1.4412,0.2551,2580.0,2340.0,-0.4746,-0.6295,4.8257,82.3845 2019-06-03 15:42:48.360,126.835,7587.1304,12.2227,1.7699,0.6105,0.0992,2580.0,2340.0,-0.4804,-0.6204,4.8019,82.3924 2019-06-03 15:42:48.380,126.7921,7588.4302,12.2227,1.7699,1.5085,0.1343,2580.0,2340.0,-0.4804,-0.6235,4.8165,82.3924 2019-06-03 15:42:48.400,126.8028,7589.3154,12.2588,1.808,1.4434,0.08,2580.0,2400.0,-0.4804,-0.6235,4.8138,82.4016 2019-06-03 15:42:48.420,126.8028,7590.1729,12.2696,1.8209,0.7378,0.2654,2580.0,2400.0,-0.4746,-0.6204,4.8138,82.4068 2019-06-03 15:42:48.440,126.8672,7591.5557,12.2696,1.8209,1.3254,-0.0129,2580.0,2400.0,-0.4746,-0.6235,4.839,82.4068 2019-06-03 15:42:48.460,126.8672,7591.8877,12.2696,1.8209,0.7781,0.3551,2580.0,2400.0,-0.4775,-0.6235,4.8072,82.4068 2019-06-03 15:42:48.480,126.7921,7591.9155,12.2943,1.848,1.3313,-0.0867,2580.0,2400.0,-0.4775,-0.6235,4.8231,82.4173 2019-06-03 15:42:48.500,126.8028,7591.8325,12.3065,1.8641,1.132,-0.0613,2580.0,2400.0,-0.4863,-0.6235,4.7913,82.4261 2019-06-03 15:42:48.520,126.7384,7591.8047,12.3065,1.8641,1.0835,0.371,2580.0,2400.0,-0.4746,-0.6235,4.7926,82.4261 2019-06-03 15:42:48.540,126.6954,7591.7217,12.3065,1.8641,1.0233,-0.0765,2580.0,2400.0,-0.4804,-0.6295,4.7953,82.4261 2019-06-03 15:42:48.560,126.6847,7591.7217,12.3278,1.888,1.2381,0.3509,2580.0,2400.0,-0.4775,-0.6295,4.7847,82.437 2019-06-03 15:42:48.580,126.6201,7591.7217,12.3278,1.888,0.7285,-0.0458,2580.0,2400.0,-0.4951,-0.6326,4.7979,82.437 2019-06-03 15:42:48.600,126.6309,7591.7769,12.3547,1.921,0.798,0.014,2580.0,2400.0,-0.4921,-0.6265,4.8032,82.4488 2019-06-03 15:42:48.620,126.6309,7591.7769,12.3715,1.9415,1.3983,0.2529,2580.0,2400.0,-0.4921,-0.6265,4.8019,82.4562 2019-06-03 15:42:48.640,126.6847,7591.8877,12.3715,1.9415,0.6767,0.0879,2580.0,2400.0,-0.4921,-0.6265,4.8125,82.4562 2019-06-03 15:42:48.660,126.7062,7591.8877,12.3715,1.9415,1.5207,0.1741,2580.0,2400.0,-0.498,-0.6265,4.7741,82.4562 2019-06-03 15:42:48.680,126.6309,7591.9429,12.3813,1.9578,0.6863,0.1988,2580.0,2400.0,-0.4951,-0.6265,4.7728,82.4654 2019-06-03 15:42:48.700,126.6417,7592.8008,12.403,1.9837,0.6579,0.2538,2580.0,2400.0,-0.5009,-0.6265,4.7582,82.4768 2019-06-03 15:42:48.720,126.5878,7593.7134,12.403,1.9837,1.4194,0.0216,2580.0,2400.0,-0.4892,-0.6235,4.7569,82.4768 2019-06-03 15:42:48.740,126.5232,7595.0967,12.403,1.9837,0.6645,0.3125,2580.0,2400.0,-0.5068,-0.6295,4.7728,82.4768 2019-06-03 15:42:48.760,126.5017,7596.0376,12.4304,2.014,1.3317,-0.0274,2580.0,2400.0,-0.5126,-0.6265,4.7595,82.4903 2019-06-03 15:42:48.780,126.4477,7597.3931,12.4304,2.014,0.9327,0.3721,2580.0,2400.0,-0.5068,-0.6235,4.7794,82.4903 2019-06-03 15:42:48.800,126.4693,7598.2231,12.4514,2.0483,0.9012,0.387,2580.0,2400.0,-0.5068,-0.6295,4.7807,82.5017 2019-06-03 15:42:48.820,126.4585,7598.9697,12.4486,2.0577,1.2792,-0.095,2580.0,2400.0,-0.5009,-0.6295,4.7728,82.5061 2019-06-03 15:42:48.840,126.5232,7600.2979,12.4486,2.0577,1.1057,0.3824,2580.0,2400.0,-0.5038,-0.6265,4.7794,82.5061 2019-06-03 15:42:48.860,126.534,7600.6299,12.4486,2.0577,0.9009,-0.036,2580.0,2400.0,-0.5126,-0.6265,4.7476,82.5061 2019-06-03 15:42:48.880,126.4477,7600.7681,12.4709,2.0881,1.2921,0.3452,2580.0,2400.0,-0.5126,-0.6265,4.7436,82.5187 2019-06-03 15:42:48.900,126.4693,7601.626,12.4925,2.1201,1.3287,0.3305,2580.0,2400.0,-0.5068,-0.6265,4.7529,82.531 2019-06-03 15:42:48.920,126.3721,7602.5112,12.4925,2.1201,0.7766,0.0195,2580.0,2400.0,-0.5038,-0.6265,4.7357,82.531 2019-06-03 15:42:48.940,126.199,7603.8398,12.4925,2.1201,1.5388,0.2476,2580.0,2400.0,-0.5068,-0.6265,4.7701,82.531 2019-06-03 15:42:48.960,126.1773,7604.6699,12.499,2.1403,0.5395,0.0733,2580.0,2400.0,-0.5272,-0.6295,4.7516,82.5415 2019-06-03 15:42:48.980,126.1231,7606.0254,12.499,2.1403,1.5773,0.1497,2580.0,2400.0,-0.5068,-0.6295,4.7767,82.5415 2019-06-03 15:42:49.000,126.1123,7606.9111,12.5262,2.1829,1.5044,0.1049,2580.0,2400.0,-0.5214,-0.6265,4.7794,82.5576 2019-06-03 15:42:49.020,126.1231,7607.769,12.5308,2.1955,0.6623,0.2826,2580.0,2400.0,-0.5038,-0.6265,4.7582,82.5638 2019-06-03 15:42:49.040,126.1773,7609.0972,12.5308,2.1955,1.4009,-0.0211,2580.0,2400.0,-0.5126,-0.6447,4.7556,82.5638 2019-06-03 15:42:49.060,126.1882,7609.4014,12.5308,2.1955,0.7596,0.3591,2580.0,2400.0,-0.5097,-0.6599,4.7291,82.5638 2019-06-03 15:42:49.080,126.1231,7609.3184,12.5478,2.2242,1.2947,-0.0805,2580.0,2400.0,-0.5009,-0.6386,4.737,82.5751 2019-06-03 15:42:49.100,126.134,7609.1802,12.5523,2.244,1.1616,-0.0877,2580.0,2400.0,-0.5009,-0.6477,4.7582,82.5856 2019-06-03 15:42:49.120,126.0797,7609.1802,12.5523,2.244,1.0244,0.4096,2580.0,2400.0,-0.5038,-0.6447,4.7423,82.5856 2019-06-03 15:42:49.140,126.0146,7609.2354,12.5523,2.244,0.8757,-0.1122,2580.0,2400.0,-0.5126,-0.6417,4.7622,82.5856 2019-06-03 15:42:49.160,126.0037,7609.2632,12.5647,2.2721,1.1804,0.3626,2580.0,2400.0,-0.5126,-0.6417,4.7436,82.5965 2019-06-03 15:42:49.180,125.9384,7609.291,12.5647,2.2721,0.8117,-0.0575,2580.0,2400.0,-0.4921,-0.6356,4.7622,82.5965 2019-06-03 15:42:49.200,125.9384,7609.3462,12.5792,2.3111,0.6974,-0.0009,2580.0,2400.0,-0.5009,-0.6386,4.7714,82.6084 2019-06-03 15:42:49.220,125.9493,7609.3184,12.5929,2.3309,1.4523,0.2621,2580.0,2400.0,-0.5214,-0.6356,4.7423,82.6162 2019-06-03 15:42:49.240,126.0254,7609.3184,12.5929,2.3309,0.5721,0.0744,2580.0,2400.0,-0.5331,-0.6386,4.7476,82.6162 2019-06-03 15:42:49.260,126.0254,7609.3462,12.5929,2.3309,1.5125,0.126,2580.0,2400.0,-0.5331,-0.6356,4.7304,82.6162 2019-06-03 15:42:49.280,125.9384,7609.5122,12.5963,2.351,0.6863,0.2308,2580.0,2400.0,-0.5126,-0.6386,4.7423,82.625 2019-06-03 15:42:49.300,125.9493,7610.3423,12.6138,2.3792,0.6497,0.2797,2580.0,2400.0,-0.5038,-0.6386,4.7622,82.639 2019-06-03 15:42:49.320,125.9058,7611.2007,12.6138,2.3792,1.4231,-0.0124,2580.0,2400.0,-0.5038,-0.6356,4.7529,82.639 2019-06-03 15:42:49.340,125.8404,7612.4458,12.6138,2.3792,0.8454,0.3639,2580.0,2400.0,-0.5068,-0.6326,4.7741,82.639 2019-06-03 15:42:49.360,125.8295,7613.3037,12.632,2.4123,1.1313,-0.0827,2580.0,2400.0,-0.5214,-0.6477,4.7556,82.6516 2019-06-03 15:42:49.380,125.775,7614.4941,12.632,2.4123,1.0602,0.3913,2580.0,2400.0,-0.5097,-0.6477,4.7542,82.6516 2019-06-03 15:42:49.400,125.7641,7615.2969,12.646,2.447,1.0381,0.397,2460.0,2340.0,-0.5155,-0.6417,4.7582,82.6626 2019-06-03 15:42:49.420,125.7859,7616.0718,12.6386,2.452,0.8676,-0.0974,2460.0,2340.0,-0.5097,-0.6447,4.7185,82.6665 2019-06-03 15:42:49.440,125.8295,7617.3447,12.6386,2.452,1.3901,0.3881,2460.0,2340.0,-0.5155,-0.6417,4.7251,82.6665 2019-06-03 15:42:49.460,125.8404,7617.5938,12.6386,2.452,0.676,0.0078,2460.0,2340.0,-0.5097,-0.6417,4.7357,82.6665 2019-06-03 15:42:49.480,125.775,7617.7046,12.6596,2.4834,1.4386,0.2399,2460.0,2340.0,-0.5126,-0.6356,4.7436,82.6783 2019-06-03 15:42:49.500,125.7859,7618.5073,12.6719,2.5084,1.5251,0.2029,2460.0,2340.0,-0.5155,-0.6386,4.7807,82.6897 2019-06-03 15:42:49.520,125.7423,7619.3101,12.6719,2.5084,0.5277,0.1486,2460.0,2340.0,-0.5243,-0.6083,4.7609,82.6897 2019-06-03 15:42:49.540,125.6658,7620.6943,12.6719,2.5084,1.4841,0.0579,2460.0,2340.0,-0.5155,-0.6083,4.7595,82.6897 2019-06-03 15:42:49.560,125.6658,7621.6357,12.6735,2.5267,0.6039,0.3251,2460.0,2340.0,-0.5184,-0.669,4.7463,82.6997 2019-06-03 15:42:49.580,125.6112,7622.9922,12.6817,2.5498,1.433,-0.0774,2460.0,2340.0,-0.5068,-0.6144,4.7317,82.7036 2019-06-03 15:42:49.600,125.6002,7623.9058,12.6882,2.5617,1.4012,-0.1015,2460.0,2340.0,-0.5097,-0.6174,4.7463,82.7102 2019-06-03 15:42:49.620,125.6002,7624.8193,12.7035,2.5787,0.8298,0.4274,2460.0,2340.0,-0.5097,-0.6144,4.7238,82.7168 2019-06-03 15:42:49.640,125.6877,7626.2031,12.7035,2.5787,1.122,-0.138,2460.0,2340.0,-0.5097,-0.6174,4.737,82.7168 2019-06-03 15:42:49.660,125.6768,7626.5078,12.7035,2.5787,1.1028,0.4644,2460.0,2340.0,-0.5184,-0.6174,4.7622,82.7168 2019-06-03 15:42:49.680,125.6002,7626.5356,12.7091,2.6023,0.9445,-0.1268,2460.0,2340.0,-0.5184,-0.6174,4.7516,82.7268 2019-06-03 15:42:49.700,125.6112,7626.48,12.713,2.6233,0.8228,-0.0964,2460.0,2340.0,-0.5214,-0.6174,4.7701,82.7377 2019-06-03 15:42:49.720,125.5565,7626.48,12.713,2.6233,1.392,0.3293,2460.0,2340.0,-0.5155,-0.6265,4.7476,82.7377 2019-06-03 15:42:49.740,125.4907,7626.563,12.713,2.6233,0.6741,0.0337,2460.0,2340.0,-0.5038,-0.6204,4.7463,82.7377 2019-06-03 15:42:49.760,125.4798,7626.5908,12.7313,2.6535,1.4519,0.2256,2460.0,2340.0,-0.5038,-0.6265,4.7436,82.7509 2019-06-03 15:42:49.780,125.4249,7626.5356,12.7313,2.6535,0.6468,0.1416,2460.0,2340.0,-0.5038,-0.6235,4.7264,82.7509 2019-06-03 15:42:49.800,125.4359,7626.5078,12.7427,2.6943,0.6094,0.1966,2460.0,2340.0,-0.5184,-0.6204,4.7357,82.7653 2019-06-03 15:42:49.820,125.4469,7626.5078,12.7499,2.7086,1.47,0.0311,2460.0,2340.0,-0.5272,-0.6295,4.737,82.7714 2019-06-03 15:42:49.840,125.4907,7626.5356,12.7499,2.7086,0.7023,0.3408,2460.0,2340.0,-0.5097,-0.6204,4.7423,82.7714 2019-06-03 15:42:49.860,125.5017,7626.5356,12.7499,2.7086,1.4027,-0.0448,2460.0,2340.0,-0.5126,-0.6235,4.7714,82.7714 2019-06-03 15:42:49.880,125.4249,7626.7295,12.7591,2.7311,0.7603,0.4059,2460.0,2340.0,-0.4951,-0.6204,4.7569,82.7828 2019-06-03 15:42:49.900,125.4249,7627.5601,12.7785,2.7632,0.9075,0.4401,2460.0,2340.0,-0.5038,-0.6204,4.7609,82.7959 2019-06-03 15:42:49.920,125.3701,7628.4185,12.7785,2.7632,1.0251,-0.1185,2460.0,2340.0,-0.5214,-0.6235,4.7397,82.7959 2019-06-03 15:42:49.940,125.1501,7629.6646,12.7785,2.7632,1.0033,0.4257,2460.0,2340.0,-0.5184,-0.6235,4.7278,82.7959 2019-06-03 15:42:49.960,125.128,7630.5229,12.7893,2.7896,0.9445,-0.1085,2460.0,2340.0,-0.5243,-0.6235,4.7556,82.8068 2019-06-03 15:42:49.980,125.0839,7631.9072,12.7893,2.7896,1.2355,0.379,2460.0,2340.0,-0.5184,-0.6204,4.7291,82.8068 2019-06-03 15:42:50.000,125.0729,7632.7935,12.8119,2.8258,1.3191,0.3446,2460.0,2340.0,-0.5155,-0.6265,4.7503,82.826 2019-06-03 15:42:50.020,125.0729,7633.624,12.8068,2.8299,0.6213,0.0414,2460.0,2340.0,-0.5184,-0.6235,4.7582,82.8291 2019-06-03 15:42:50.040,125.1391,7634.9253,12.8068,2.8299,1.4116,0.2035,2460.0,2340.0,-0.5038,-0.6204,4.7622,82.8291 2019-06-03 15:42:50.060,125.1611,7635.147,12.8068,2.8299,0.5987,0.1348,2460.0,2340.0,-0.5126,-0.6295,4.7728,82.8291 2019-06-03 15:42:50.080,125.0729,7635.23,12.8296,2.861,1.426,0.1172,2460.0,2340.0,-0.5184,-0.6265,4.7476,82.8422 2019-06-03 15:42:50.100,125.0839,7636.144,12.8369,2.8835,1.4992,0.089,2460.0,2340.0,-0.5243,-0.6235,4.7423,82.8514 2019-06-03 15:42:50.120,125.0398,7637.0854,12.8369,2.8835,0.6727,0.3093,2460.0,2340.0,-0.5214,-0.6265,4.7503,82.8514 2019-06-03 15:42:50.140,124.9846,7638.5259,12.8369,2.8835,1.3783,-0.0622,2460.0,2340.0,-0.5184,-0.6235,4.7397,82.8514 2019-06-03 15:42:50.160,124.9735,7639.4673,12.8391,2.9009,0.8273,0.3934,2460.0,2340.0,-0.5155,-0.6204,4.7582,82.8601 2019-06-03 15:42:50.180,124.9072,7640.7969,12.8391,2.9009,1.1886,-0.0918,2460.0,2340.0,-0.5038,-0.6235,4.7516,82.8601 2019-06-03 15:42:50.200,124.9183,7641.6553,12.8577,2.9378,1.0895,-0.0924,2460.0,2340.0,-0.5009,-0.6204,4.7595,82.8733 2019-06-03 15:42:50.220,124.9293,7642.5142,12.876,2.9556,0.9948,0.3908,2460.0,2340.0,-0.5038,-0.6235,4.7648,82.8807 2019-06-03 15:42:50.240,124.9625,7643.8711,12.876,2.9556,0.9541,-0.0863,2460.0,2340.0,-0.5068,-0.6174,4.7476,82.8807 2019-06-03 15:42:50.260,124.9956,7644.1758,12.876,2.9556,1.2847,0.3557,2460.0,2340.0,-0.5214,-0.6204,4.7516,82.8807 2019-06-03 15:42:50.280,124.9072,7644.1479,12.8805,2.9735,0.6634,-0.014,2460.0,2340.0,-0.5272,-0.6204,4.737,82.8894 2019-06-03 15:42:50.300,124.9072,7644.0371,12.8887,2.9967,0.7899,0.0267,2460.0,2340.0,-0.5184,-0.6174,4.7436,82.8995 2019-06-03 15:42:50.320,124.874,7644.0093,12.8887,2.9967,1.3964,0.2274,2460.0,2340.0,-0.5126,-0.6174,4.7662,82.8995 2019-06-03 15:42:50.340,124.8186,7644.0649,12.8887,2.9967,0.6287,0.1459,2460.0,2340.0,-0.5038,-0.6174,4.7595,82.8995 2019-06-03 15:42:50.360,124.7854,7644.1201,12.9085,3.026,1.5129,0.0905,2460.0,2340.0,-0.5126,-0.6204,4.7781,82.9113 2019-06-03 15:42:50.380,124.73,7644.1201,12.9085,3.026,0.6283,0.2858,2460.0,2340.0,-0.5214,-0.6174,4.7503,82.9113 2019-06-03 15:42:50.400,124.7411,7644.1758,12.9247,3.0608,0.6549,0.3357,2520.0,2400.0,-0.5038,-0.6204,4.7503,82.9192 2019-06-03 15:42:50.420,124.73,7644.1758,12.9271,3.0679,1.3465,-0.0611,2520.0,2400.0,-0.5097,-0.6174,4.7516,82.9231 2019-06-03 15:42:50.440,124.7965,7644.231,12.9271,3.0679,0.8476,0.4138,2520.0,2400.0,-0.5009,-0.6022,4.7331,82.9231 2019-06-03 15:42:50.460,124.8076,7644.2031,12.9271,3.0679,1.0887,-0.1237,2520.0,2400.0,-0.5097,-0.6113,4.7569,82.9231 2019-06-03 15:42:50.480,124.73,7644.2588,12.9403,3.0918,1.0754,0.3915,2520.0,2400.0,-0.5126,-0.6083,4.7476,82.9327 2019-06-03 15:42:50.500,124.7632,7645.0342,12.9616,3.1199,1.1793,0.3958,2520.0,2400.0,-0.5068,-0.6053,4.7436,82.9432 2019-06-03 15:42:50.520,124.6634,7645.8652,12.9616,3.1199,0.8091,-0.0484,2520.0,2400.0,-0.5038,-0.6113,4.7648,82.9432 2019-06-03 15:42:50.540,124.452,7647.1953,12.9616,3.1199,1.2711,0.3038,2520.0,2400.0,-0.5068,-0.6053,4.7397,82.9432 2019-06-03 15:42:50.560,124.4409,7648.0537,12.9677,3.1369,0.6202,0.0302,2520.0,2400.0,-0.5097,-0.6053,4.7582,82.9524 2019-06-03 15:42:50.580,124.3628,7649.3281,12.9677,3.1369,1.4807,0.1747,2520.0,2400.0,-0.5214,-0.6113,4.7503,82.9524 2019-06-03 15:42:50.600,124.374,7650.187,12.9862,3.1701,1.4837,0.1292,2520.0,2400.0,-0.5097,-0.6022,4.7463,82.9629 2019-06-03 15:42:50.620,124.3963,7650.9624,12.9906,3.1754,0.6346,0.2379,2520.0,2400.0,-0.5038,-0.6083,4.7714,82.9659 2019-06-03 15:42:50.640,124.452,7652.209,12.9906,3.1754,1.3391,0.0187,2520.0,2400.0,-0.5068,-0.6083,4.7476,82.9659 2019-06-03 15:42:50.660,124.452,7652.5137,12.9906,3.1754,0.7256,0.3445,2520.0,2400.0,-0.5184,-0.6083,4.7516,82.9659 2019-06-03 15:42:50.680,124.374,7652.5972,13.0042,3.2,1.25,-0.0671,2520.0,2400.0,-0.5214,-0.6083,4.737,82.9777 2019-06-03 15:42:50.700,124.3851,7653.4834,13.0049,3.2156,1.2352,-0.1201,2520.0,2400.0,-0.5126,-0.6053,4.7344,82.986 2019-06-03 15:42:50.720,124.3405,7654.3428,13.0049,3.2156,0.9463,0.425,2520.0,2400.0,-0.5155,-0.6083,4.7516,82.986 2019-06-03 15:42:50.740,124.2847,7655.7002,13.0049,3.2156,1.0617,-0.085,2520.0,2400.0,-0.5068,-0.6053,4.7463,82.986 2019-06-03 15:42:50.760,124.2735,7656.5869,13.015,3.2319,1.2315,0.3497,2520.0,2400.0,-0.5068,-0.6022,4.7582,82.9965 2019-06-03 15:42:50.780,124.2176,7657.9443,13.015,3.2319,0.6738,-0.0023,2520.0,2400.0,-0.5097,-0.6053,4.7582,82.9965 2019-06-03 15:42:50.800,124.2176,7658.8589,13.0288,3.262,0.7788,0.0255,2520.0,2400.0,-0.5038,-0.6053,4.7542,83.0114 2019-06-03 15:42:50.820,124.2064,7659.8008,13.0417,3.2769,1.3483,0.2263,2520.0,2400.0,-0.5097,-0.6022,4.7688,83.0188 2019-06-03 15:42:50.840,124.2847,7661.1865,13.0417,3.2769,0.6128,0.1444,2520.0,2400.0,-0.5184,-0.6053,4.7317,83.0188 2019-06-03 15:42:50.860,124.2847,7661.4912,13.0417,3.2769,1.4841,0.1005,2520.0,2400.0,-0.5184,-0.6022,4.7397,83.0188 2019-06-03 15:42:50.880,124.2064,7661.5742,13.0439,3.2947,0.6401,0.2452,2520.0,2400.0,-0.5155,-0.6053,4.7344,83.0302 2019-06-03 15:42:50.900,124.2288,7662.4336,13.0573,3.3152,0.6852,0.2566,2520.0,2400.0,-0.4892,-0.5992,4.7383,83.0446 2019-06-03 15:42:50.920,124.184,7663.2646,13.0573,3.3152,1.2648,0.0063,2520.0,2400.0,-0.4688,-0.6022,4.7582,83.0446 2019-06-03 15:42:50.940,124.1056,7664.623,13.0573,3.3152,0.8506,0.3239,2520.0,2400.0,-0.4541,-0.5992,4.7476,83.0446 2019-06-03 15:42:50.960,124.1056,7665.5649,13.0729,3.3399,1.1024,-0.0566,2520.0,2400.0,-0.4571,-0.5992,4.7556,83.0599 2019-06-03 15:42:50.980,124.0384,7666.8955,13.078,3.3567,1.0717,0.3485,2520.0,2400.0,-0.4834,-0.5992,4.7569,83.0752 2019-06-03 15:42:51.000,124.0272,7667.7544,13.0872,3.371,1.0347,0.3288,2520.0,2400.0,-0.4775,-0.5992,4.7383,83.084 2019-06-03 15:42:51.020,124.0496,7668.5859,13.0831,3.3741,0.9412,-0.0144,2520.0,2400.0,-0.4775,-0.5992,4.7463,83.0905 2019-06-03 15:42:51.040,124.1168,7669.916,13.0831,3.3741,1.2381,0.2613,2520.0,2400.0,-0.4658,-0.6022,4.7357,83.0905 2019-06-03 15:42:51.060,124.1056,7670.1655,13.0831,3.3741,0.8602,0.0922,2520.0,2400.0,-0.46,-0.5962,4.7304,83.0905 2019-06-03 15:42:51.080,124.0384,7670.1377,13.0981,3.4006,1.2448,0.1887,2520.0,2400.0,-0.4658,-0.5992,4.7476,83.1067 2019-06-03 15:42:51.100,124.0384,7670.0825,13.1057,3.4185,1.2759,0.1486,2520.0,2400.0,-0.4658,-0.5931,4.7383,83.122 2019-06-03 15:42:51.120,123.9598,7670.0547,13.1057,3.4185,0.73,0.1836,2520.0,2400.0,-0.4775,-0.5962,4.7529,83.122 2019-06-03 15:42:51.140,123.7574,7670.1377,13.1057,3.4185,1.3169,0.053,2520.0,2400.0,-0.4834,-0.5931,4.7556,83.122 2019-06-03 15:42:51.160,123.7348,7670.1377,13.1076,3.4343,0.7906,0.3207,2520.0,2400.0,-0.4629,-0.5931,4.7476,83.1373 2019-06-03 15:42:51.180,123.6785,7670.1104,13.1076,3.4343,1.1738,-0.0119,2520.0,2400.0,-0.4629,-0.5931,4.7529,83.1373 2019-06-03 15:42:51.200,123.6897,7670.1104,13.1196,3.4656,1.1179,-0.0172,2520.0,2400.0,-0.4571,-0.5931,4.7344,83.1578 2019-06-03 15:42:51.220,123.6785,7670.1104,13.1317,3.4801,1.0492,0.3402,2520.0,2400.0,-0.46,-0.5931,4.7503,83.1683 2019-06-03 15:42:51.240,123.7461,7670.1377,13.1317,3.4801,0.9844,-0.0084,2520.0,2400.0,-0.4804,-0.5931,4.7331,83.1683 2019-06-03 15:42:51.260,123.7574,7670.1104,13.1317,3.4801,1.1671,0.308,2520.0,2400.0,-0.4688,-0.584,4.737,83.1683 2019-06-03 15:42:51.280,123.6897,7670.249,13.1345,3.4982,0.8062,0.0569,2520.0,2400.0,-0.4717,-0.5992,4.7503,83.1862 2019-06-03 15:42:51.300,123.6897,7670.9971,13.1375,3.5145,0.7803,0.0912,2520.0,2400.0,-0.4717,-0.5901,4.7423,83.2033 2019-06-03 15:42:51.320,123.6446,7671.7734,13.1375,3.5145,1.2293,0.1731,2520.0,2400.0,-0.4775,-0.5749,4.7688,83.2033 2019-06-03 15:42:51.340,123.5881,7673.1318,13.1375,3.5145,0.7489,0.1703,2520.0,2400.0,-0.4863,-0.5749,4.7622,83.2033 2019-06-03 15:42:51.360,123.5655,7674.0742,13.1513,3.5398,1.3225,0.0905,2520.0,2400.0,-0.4571,-0.5719,4.7503,83.2251 2019-06-03 15:42:51.380,123.509,7675.46,13.1513,3.5398,0.7444,0.2601,2520.0,2400.0,-0.46,-0.581,4.7595,83.2251 2019-06-03 15:42:51.400,123.4977,7676.3472,13.1579,3.5718,0.7673,0.2814,2460.0,2400.0,-0.4541,-0.578,4.745,83.2549 2019-06-03 15:42:51.420,123.5203,7677.2344,13.1576,3.5793,1.1631,0.0061,2460.0,2400.0,-0.4629,-0.5749,4.7331,83.2645 2019-06-03 15:42:51.440,123.5769,7678.4814,13.1576,3.5793,0.9534,0.3308,2460.0,2400.0,-0.4658,-0.578,4.7476,83.2645 2019-06-03 15:42:51.460,123.5881,7678.7866,13.1576,3.5793,1.1279,-0.0144,2460.0,2400.0,-0.4629,-0.5385,4.7436,83.2645 2019-06-03 15:42:51.480,123.509,7678.9253,13.1648,3.6034,1.0329,0.3196,2460.0,2400.0,-0.4658,-0.5537,4.782,83.285 2019-06-03 15:42:51.500,123.5203,7679.7568,13.1791,3.63,1.0717,0.2787,2460.0,2400.0,-0.4775,-0.5537,4.7781,83.3069 2019-06-03 15:42:51.520,123.4411,7680.5889,13.1791,3.63,0.9245,0.0561,2460.0,2400.0,-0.4717,-0.5476,4.7781,83.3069 2019-06-03 15:42:51.540,123.2256,7681.9194,13.1791,3.63,1.1516,0.2339,2460.0,2400.0,-0.4717,-0.5446,4.786,83.3069 2019-06-03 15:42:51.560,123.2029,7682.7236,13.1832,3.6507,0.9071,0.0951,2460.0,2400.0,-0.4658,-0.5476,4.7463,83.327 2019-06-03 15:42:51.580,123.146,7683.8882,13.1832,3.6507,1.1161,0.1832,2460.0,2400.0,-0.4658,-0.5476,4.7582,83.327 2019-06-03 15:42:51.600,123.1574,7684.7202,13.1951,3.6876,1.1209,0.128,2460.0,2400.0,-0.4658,-0.5446,4.741,83.3598 2019-06-03 15:42:51.620,123.1574,7685.5239,13.1983,3.7019,0.8909,0.2006,2460.0,2400.0,-0.46,-0.5385,4.745,83.3707 2019-06-03 15:42:51.640,123.2143,7686.8828,13.1983,3.7019,1.1486,0.0742,2460.0,2400.0,-0.4717,-0.5415,4.7714,83.3707 2019-06-03 15:42:51.660,123.237,7687.1597,13.1983,3.7019,0.8772,0.251,2460.0,2400.0,-0.4629,-0.5385,4.7662,83.3707 2019-06-03 15:42:51.680,123.1688,7687.1045,13.2069,3.7275,0.98,0.0512,2460.0,2400.0,-0.4658,-0.5385,4.794,83.393 2019-06-03 15:42:51.700,123.146,7686.9658,13.2095,3.7486,0.9212,0.0177,2460.0,2400.0,-0.4746,-0.5385,4.794,83.4149 2019-06-03 15:42:51.720,123.1233,7686.938,13.2095,3.7486,1.1871,0.2844,2460.0,2400.0,-0.4688,-0.5263,4.7675,83.4149 2019-06-03 15:42:51.740,123.0436,7686.9937,13.2095,3.7486,0.9145,0.0464,2460.0,2400.0,-0.4658,-0.5294,4.7741,83.4149 2019-06-03 15:42:51.760,123.0322,7687.0767,13.2167,3.7736,1.0972,0.2349,2460.0,2400.0,-0.4629,-0.4929,4.7476,83.4393 2019-06-03 15:42:51.780,122.9638,7687.1045,13.2167,3.7736,0.8602,0.0875,2460.0,2400.0,-0.4658,-0.496,4.7542,83.4393 2019-06-03 15:42:51.800,122.9638,7687.1045,13.2263,3.8111,0.8213,0.1094,2460.0,2400.0,-0.4775,-0.502,4.7609,83.4743 2019-06-03 15:42:51.820,122.9638,7687.0767,13.2317,3.8272,1.2437,0.1598,2460.0,2400.0,-0.4629,-0.496,4.7609,83.487 2019-06-03 15:42:51.840,123.0436,7687.1323,13.2317,3.8272,0.9005,0.204,2460.0,2400.0,-0.4717,-0.4929,4.79,83.487 2019-06-03 15:42:51.860,123.0322,7687.1323,13.2317,3.8272,1.0462,0.0688,2460.0,2400.0,-0.4629,-0.4534,4.786,83.487 2019-06-03 15:42:51.880,122.9752,7687.271,13.235,3.8514,1.0665,0.2258,2460.0,2400.0,-0.4658,-0.4686,4.7873,83.5084 2019-06-03 15:42:51.900,122.9866,7688.186,13.2468,3.8803,1.0421,0.2537,2460.0,2400.0,-0.4717,-0.4686,4.7781,83.532 2019-06-03 15:42:51.920,122.9181,7689.0732,13.2468,3.8803,1.0096,0.0473,2460.0,2400.0,-0.4571,-0.4625,4.7582,83.532 2019-06-03 15:42:51.940,122.8725,7690.46,13.2468,3.8803,1.0821,0.2812,2460.0,2400.0,-0.4629,-0.4838,4.7662,83.532 2019-06-03 15:42:51.960,122.8496,7691.4028,13.254,3.9113,0.8909,0.0599,2460.0,2400.0,-0.4629,-0.4747,4.7569,83.5556 2019-06-03 15:42:51.980,122.7924,7692.7896,13.254,3.9113,1.1827,0.1952,2460.0,2400.0,-0.4629,-0.4777,4.7714,83.5556 2019-06-03 15:42:52.000,122.7924,7693.7603,13.2673,3.9568,1.2245,0.1873,2460.0,2400.0,-0.4804,-0.4868,4.7728,83.5976 2019-06-03 15:42:52.020,122.8039,7694.6475,13.2671,3.9711,0.8535,0.1579,2460.0,2400.0,-0.4688,-0.4838,4.7728,83.6089 2019-06-03 15:42:52.040,122.8725,7695.9785,13.2671,3.9711,1.2052,0.1323,2460.0,2400.0,-0.4717,-0.4808,4.7887,83.6089 2019-06-03 15:42:52.060,122.8839,7696.2559,13.2671,3.9711,0.8539,0.2364,2460.0,2400.0,-0.4629,-0.4686,4.7873,83.6089 2019-06-03 15:42:52.080,122.7924,7696.3672,13.2767,4.0051,1.0917,0.0596,2460.0,2400.0,-0.46,-0.4747,4.7887,83.6334 2019-06-03 15:42:52.100,122.8039,7697.1992,13.2809,4.0347,1.0451,0.0522,2460.0,2400.0,-0.4658,-0.4808,4.782,83.6562 2019-06-03 15:42:52.120,122.7238,7698.0591,13.2809,4.0347,1.095,0.2752,2460.0,2400.0,-0.46,-0.4534,4.7701,83.6562 2019-06-03 15:42:52.140,122.5288,7699.3906,13.2809,4.0347,0.9005,0.0459,2460.0,2400.0,-0.4629,-0.4747,4.7794,83.6562 2019-06-03 15:42:52.160,122.4943,7700.2227,13.2861,4.0672,1.1856,0.2755,2460.0,2400.0,-0.4658,-0.4747,4.7754,83.6806 2019-06-03 15:42:52.180,122.4368,7701.4985,13.2861,4.0672,0.7355,0.0442,2460.0,2400.0,-0.4658,-0.4595,4.7807,83.6806 2019-06-03 15:42:52.200,122.4368,7702.4419,13.2946,4.1176,0.7374,0.0851,2460.0,2400.0,-0.4688,-0.4777,4.786,83.7182 2019-06-03 15:42:52.220,122.4483,7703.3569,13.3007,4.1405,1.2511,0.1869,2460.0,2400.0,-0.4541,-0.4686,4.7887,83.7309 2019-06-03 15:42:52.240,122.5173,7704.6885,13.3007,4.1405,0.6512,0.1563,2460.0,2400.0,-0.4571,-0.4717,4.8032,83.7309 2019-06-03 15:42:52.260,122.5058,7704.9937,13.3007,4.1405,1.2529,0.1232,2460.0,2400.0,-0.4629,-0.4686,4.794,83.7309 2019-06-03 15:42:52.280,122.4253,7704.9658,13.3032,4.1694,0.8735,0.257,2460.0,2400.0,-0.4658,-0.4595,4.7794,83.7541 2019-06-03 15:42:52.300,122.4483,7704.9106,13.3138,4.2086,0.7285,0.3002,2460.0,2400.0,-0.4804,-0.4625,4.7794,83.7781 2019-06-03 15:42:52.320,122.3793,7704.9937,13.3138,4.2086,1.0177,0.0002,2460.0,2400.0,-0.4834,-0.4473,4.7662,83.7781 2019-06-03 15:42:52.340,122.3217,7705.0771,13.3138,4.2086,1.1216,0.3195,2460.0,2400.0,-0.4863,-0.4565,4.7834,83.7781 2019-06-03 15:42:52.360,122.3217,7705.1045,13.323,4.251,0.767,-0.0181,2460.0,2400.0,-0.4746,-0.4625,4.7847,83.8043 2019-06-03 15:42:52.380,122.2525,7705.0771,13.3239,4.2843,1.2692,0.3131,2460.0,2400.0,-0.46,-0.4565,4.7794,83.8271 2019-06-03 15:42:52.400,122.2525,7705.0771,13.3361,4.3094,1.3532,0.305,2340.0,2340.0,-0.4512,-0.4747,4.8112,83.8415 2019-06-03 15:42:52.420,122.2525,7705.0771,13.3298,4.3232,0.5484,0.0616,2340.0,2340.0,-0.4366,-0.4595,4.8032,83.8529 2019-06-03 15:42:52.440,122.3217,7705.0771,13.3298,4.3232,1.5314,0.171,2340.0,2340.0,-0.4395,-0.4625,4.8059,83.8529 2019-06-03 15:42:52.460,122.3332,7705.0215,13.3298,4.3232,0.6242,0.1652,2340.0,2340.0,-0.4512,-0.4625,4.794,83.8529 2019-06-03 15:42:52.480,122.2641,7705.1323,13.3458,4.3659,1.3084,0.0656,2340.0,2340.0,-0.4717,-0.4565,4.7714,83.88 2019-06-03 15:42:52.500,122.2525,7705.9927,13.3471,4.4038,1.2674,0.0463,2340.0,2340.0,-0.4775,-0.4656,4.79,83.904 2019-06-03 15:42:52.520,122.2179,7706.8804,13.3471,4.4038,0.6863,0.3492,2340.0,2340.0,-0.4746,-0.4595,4.7728,83.904 2019-06-03 15:42:52.540,122.1602,7708.2676,13.3471,4.4038,1.1301,-0.1075,2340.0,2340.0,-0.4717,-0.4625,4.7807,83.904 2019-06-03 15:42:52.560,122.1255,7709.2109,13.3462,4.4356,1.1091,0.4071,2340.0,2340.0,-0.4688,-0.4625,4.7887,83.9272 2019-06-03 15:42:52.580,122.0908,7710.4595,13.3462,4.4356,0.9515,-0.1136,2340.0,2340.0,-0.46,-0.4565,4.786,83.9272 2019-06-03 15:42:52.600,122.0793,7711.375,13.3529,4.4882,0.757,-0.0948,2340.0,2340.0,-0.4541,-0.4565,4.8218,83.9591 2019-06-03 15:42:52.620,122.0908,7712.2349,13.3666,4.5134,1.2895,0.3806,2340.0,2340.0,-0.4541,-0.4565,4.8059,83.9735 2019-06-03 15:42:52.640,122.1486,7713.5391,13.3666,4.5134,0.6516,-0.0234,2340.0,2340.0,-0.4629,-0.4504,4.7754,83.9735 2019-06-03 15:42:52.660,122.1486,7713.8442,13.3666,4.5134,1.3753,0.2393,2340.0,2340.0,-0.4688,-0.4595,4.7728,83.9735 2019-06-03 15:42:52.680,122.0677,7713.9277,13.3614,4.538,0.7015,0.1247,2340.0,2340.0,-0.4571,-0.4534,4.7542,83.9932 2019-06-03 15:42:52.700,122.0793,7714.7046,13.3676,4.5699,0.5258,0.1656,2340.0,2340.0,-0.46,-0.4565,4.782,84.015 2019-06-03 15:42:52.720,122.033,7715.4536,13.3676,4.5699,1.4412,0.0773,2340.0,2340.0,-0.4629,-0.4534,4.7953,84.015 2019-06-03 15:42:52.740,121.9751,7716.7856,13.3676,4.5699,0.6682,0.2865,2340.0,2340.0,-0.4658,-0.4473,4.79,84.015 2019-06-03 15:42:52.760,121.9635,7717.6738,13.3815,4.6084,1.1767,-0.0437,2340.0,2340.0,-0.4717,-0.4504,4.8059,84.0369 2019-06-03 15:42:52.780,121.8939,7718.9502,13.3815,4.6084,0.8709,0.3849,2340.0,2340.0,-0.4571,-0.4504,4.782,84.0369 2019-06-03 15:42:52.800,121.8823,7719.8105,13.3903,4.65,1.0584,0.3989,2340.0,2340.0,-0.4571,-0.4473,4.8006,84.0692 2019-06-03 15:42:52.820,121.9055,7720.6709,13.3842,4.6554,0.9234,-0.0779,2340.0,2340.0,-0.4571,-0.4473,4.7887,84.0762 2019-06-03 15:42:52.840,121.9635,7721.8921,13.3842,4.6554,1.2304,0.3941,2340.0,2340.0,-0.4541,-0.426,4.7767,84.0762 2019-06-03 15:42:52.860,121.9751,7722.1694,13.3842,4.6554,0.7659,-0.0174,2340.0,2340.0,-0.4746,-0.4291,4.7913,84.0762 2019-06-03 15:42:52.880,121.9055,7722.1973,13.398,4.6884,1.3835,0.2691,2340.0,2340.0,-0.4571,-0.4139,4.7873,84.0964 2019-06-03 15:42:52.900,121.8939,7722.1138,13.4054,4.7185,1.4526,0.2168,2340.0,2340.0,-0.46,-0.42,4.7926,84.1151 2019-06-03 15:42:52.920,121.8475,7722.1138,13.4054,4.7185,0.5362,0.1694,2340.0,2340.0,-0.46,-0.4169,4.8098,84.1151 2019-06-03 15:42:52.940,121.7894,7722.2529,13.4054,4.7185,1.3986,0.0772,2340.0,2340.0,-0.46,-0.3895,4.7847,84.1151 2019-06-03 15:42:52.960,121.7662,7722.3081,13.4022,4.7391,0.7233,0.317,2340.0,2340.0,-0.4629,-0.42,4.8032,84.1304 2019-06-03 15:42:52.980,121.6964,7722.3359,13.4022,4.7391,1.2681,-0.0375,2340.0,2340.0,-0.4512,-0.3713,4.7887,84.1304 2019-06-03 15:42:53.000,121.7197,7722.3638,13.4138,4.7806,1.2544,-0.083,2340.0,2340.0,-0.4571,-0.3743,4.794,84.158 2019-06-03 15:42:53.020,121.7197,7722.3916,13.4253,4.8001,0.9138,0.3986,2340.0,2340.0,-0.4629,-0.3713,4.8019,84.1685 2019-06-03 15:42:53.040,121.7894,7722.4473,13.4253,4.8001,1.1017,-0.0882,2340.0,2340.0,-0.4571,-0.3682,4.7873,84.1685 2019-06-03 15:42:53.060,121.7894,7722.4746,13.4253,4.8001,1.0517,0.4088,2340.0,2340.0,-0.4629,-0.3743,4.8125,84.1685 2019-06-03 15:42:53.080,121.708,7722.6411,13.4259,4.8236,0.8306,-0.0591,2340.0,2340.0,-0.4512,-0.3652,4.8072,84.1846 2019-06-03 15:42:53.100,121.7197,7723.4185,13.4235,4.8479,0.7644,-0.0501,2340.0,2340.0,-0.4454,-0.3621,4.8019,84.2013 2019-06-03 15:42:53.120,121.6615,7724.3066,13.4235,4.8479,1.3158,0.2561,2340.0,2340.0,-0.46,-0.3621,4.8138,84.2013 2019-06-03 15:42:53.140,121.5916,7725.6392,13.4235,4.8479,0.6941,0.1223,2340.0,2340.0,-0.4571,-0.3317,4.7913,84.2013 2019-06-03 15:42:53.160,121.5916,7726.583,13.4378,4.8807,1.3569,0.1795,2340.0,2340.0,-0.4629,-0.3347,4.8125,84.2218 2019-06-03 15:42:53.180,121.5216,7727.9429,13.4378,4.8807,0.5673,0.2196,2340.0,2340.0,-0.4571,-0.3287,4.8125,84.2218 2019-06-03 15:42:53.200,121.5216,7728.8032,13.4435,4.9255,0.7048,0.2624,2340.0,2340.0,-0.4629,-0.3226,4.7979,84.252 2019-06-03 15:42:53.220,121.5333,7729.7192,13.4447,4.9413,1.2899,-0.0095,2340.0,2340.0,-0.4775,-0.3287,4.8098,84.2616 2019-06-03 15:42:53.240,121.5916,7731.0796,13.4447,4.9413,0.7736,0.3619,2340.0,2340.0,-0.4629,-0.3134,4.7979,84.2616 2019-06-03 15:42:53.260,121.5916,7731.4126,13.4447,4.9413,1.1882,-0.0338,2340.0,2340.0,-0.4571,-0.3134,4.8125,84.2616 2019-06-03 15:42:53.280,121.5333,7731.5234,13.4514,4.973,0.9223,0.3935,2340.0,2340.0,-0.4424,-0.3104,4.8218,84.2821 2019-06-03 15:42:53.300,121.5216,7732.3564,13.4661,5.0137,1.1087,0.3751,2340.0,2340.0,-0.4483,-0.3104,4.7993,84.304 2019-06-03 15:42:53.320,121.4516,7733.2173,13.4661,5.0137,0.8883,-0.0561,2340.0,2340.0,-0.4541,-0.3165,4.831,84.304 2019-06-03 15:42:53.340,121.2527,7734.522,13.4661,5.0137,1.1501,0.3283,2340.0,2340.0,-0.4571,-0.2708,4.8059,84.304 2019-06-03 15:42:53.360,121.2175,7735.355,13.4701,5.0462,0.7666,0.0418,2340.0,2340.0,-0.4658,-0.2799,4.831,84.3237 2019-06-03 15:42:53.380,121.1472,7736.6318,13.4701,5.0462,1.1712,0.2373,2340.0,2340.0,-0.4746,-0.283,4.8297,84.3237 2019-06-03 15:42:53.400,121.1472,7737.5205,13.481,5.1008,1.321,0.1809,2400.0,2340.0,-0.46,-0.2799,4.8165,84.3529 2019-06-03 15:42:53.420,121.1706,7738.3257,13.4819,5.1156,0.7182,0.191,2400.0,2340.0,-0.4571,-0.2891,4.8231,84.3626 2019-06-03 15:42:53.440,121.2293,7739.686,13.4819,5.1156,1.2474,0.0765,2400.0,2340.0,-0.4337,-0.2799,4.8165,84.3626 2019-06-03 15:42:53.460,121.241,7739.9912,13.4819,5.1156,0.7929,0.2865,2400.0,2340.0,-0.4395,-0.2799,4.8244,84.3626 2019-06-03 15:42:53.480,121.1472,7739.936,13.4906,5.1559,1.1472,0.0308,2400.0,2340.0,-0.4541,-0.2769,4.8257,84.3862 2019-06-03 15:42:53.500,121.1589,7739.8525,13.4913,5.1897,1.1701,-0.0054,2400.0,2340.0,-0.4571,-0.2769,4.8019,84.4072 2019-06-03 15:42:53.520,121.1472,7739.8804,13.4913,5.1897,1.0185,0.3375,2400.0,2340.0,-0.4629,-0.2769,4.8231,84.4072 2019-06-03 15:42:53.540,121.241,7739.9082,13.4913,5.1897,1.0022,-0.0032,2400.0,2340.0,-0.4571,-0.2738,4.8204,84.4072 2019-06-03 15:42:53.560,121.2293,7739.936,13.4942,5.2244,1.1072,0.2823,2400.0,2340.0,-0.4541,-0.2769,4.8376,84.4299 2019-06-03 15:42:53.580,121.1472,7739.9912,13.4942,5.2244,0.9537,0.063,2400.0,2340.0,-0.4541,-0.2586,4.8456,84.4299 2019-06-03 15:42:53.600,121.1589,7739.9639,13.5029,5.2794,1.0347,0.0961,2400.0,2340.0,-0.4571,-0.2403,4.8218,84.4657 2019-06-03 15:42:53.620,121.1706,7739.936,13.5106,5.3003,1.1324,0.2146,2400.0,2340.0,-0.46,-0.2525,4.8403,84.4784 2019-06-03 15:42:53.640,121.2293,7739.9912,13.5106,5.3003,0.7929,0.1488,2400.0,2340.0,-0.4483,-0.2464,4.831,84.4784 2019-06-03 15:42:53.660,121.241,7739.9912,13.5106,5.3003,1.1424,0.1192,2400.0,2340.0,-0.4483,-0.2464,4.8218,84.4784 2019-06-03 15:42:53.680,121.1472,7740.1855,13.5107,5.3363,0.7836,0.2363,2400.0,2340.0,-0.4571,-0.2708,4.8204,84.5011 2019-06-03 15:42:53.700,121.1706,7741.019,13.5195,5.379,0.8879,0.2787,2400.0,2340.0,-0.4454,-0.2647,4.8032,84.5274 2019-06-03 15:42:53.720,121.0884,7741.9629,13.5195,5.379,1.054,0.0753,2400.0,2340.0,-0.4629,-0.2494,4.8257,84.5274 2019-06-03 15:42:53.740,120.8649,7743.3237,13.5195,5.379,0.9474,0.2732,2400.0,2340.0,-0.4541,-0.2494,4.839,84.5274 2019-06-03 15:42:53.760,120.8413,7744.2124,13.5273,5.4191,0.9896,0.0326,2400.0,2340.0,-0.4541,-0.2494,4.8337,84.5536 2019-06-03 15:42:53.780,120.7823,7745.6284,13.5296,5.4564,1.0103,0.2755,2400.0,2340.0,-0.46,-0.2433,4.8456,84.5794 2019-06-03 15:42:53.800,120.7823,7746.5449,13.5351,5.4806,1.1006,0.2783,2400.0,2340.0,-0.4541,-0.2372,4.8204,84.5947 2019-06-03 15:42:53.820,120.7705,7747.4058,13.534,5.4971,0.8657,0.1073,2400.0,2340.0,-0.4541,-0.2433,4.831,84.606 2019-06-03 15:42:53.840,120.8531,7748.7388,13.534,5.4971,1.0721,0.202,2400.0,2340.0,-0.4454,-0.2403,4.835,84.606 2019-06-03 15:42:53.860,120.8767,7748.9888,13.534,5.4971,0.9108,0.1415,2400.0,2340.0,-0.4424,-0.2433,4.8324,84.606 2019-06-03 15:42:53.880,120.7823,7749.0996,13.5432,5.5394,1.1893,0.1056,2400.0,2340.0,-0.4571,-0.2586,4.8324,84.6345 2019-06-03 15:42:53.900,120.8059,7749.8496,13.5458,5.5787,1.1575,0.1069,2400.0,2340.0,-0.4454,-0.2281,4.8297,84.6624 2019-06-03 15:42:53.920,120.7469,7750.6831,13.5458,5.5787,0.9685,0.2521,2400.0,2340.0,-0.4629,-0.2281,4.839,84.6624 2019-06-03 15:42:53.940,120.676,7751.9604,13.5458,5.5787,0.9478,0.0803,2400.0,2340.0,-0.4688,-0.225,4.8443,84.6624 2019-06-03 15:42:53.960,120.676,7752.7661,13.5465,5.6191,1.115,0.2332,2400.0,2340.0,-0.4629,-0.2128,4.8337,84.6908 2019-06-03 15:42:53.980,120.605,7753.9883,13.5465,5.6191,0.9486,0.0325,2400.0,2340.0,-0.4629,-0.2189,4.835,84.6908 2019-06-03 15:42:54.000,120.5932,7754.877,13.5533,5.6827,0.8875,0.0598,2400.0,2340.0,-0.4395,-0.1976,4.8165,84.7363 2019-06-03 15:42:54.020,120.6287,7755.6826,13.5593,5.7085,1.108,0.2375,2400.0,2340.0,-0.4395,-0.1854,4.8231,84.7525 2019-06-03 15:42:54.040,120.676,7756.9326,13.5593,5.7085,0.8047,0.1192,2400.0,2340.0,-0.4571,-0.1915,4.8297,84.7525 2019-06-03 15:42:54.060,120.6878,7757.1826,13.5593,5.7085,1.1845,0.1473,2400.0,2340.0,-0.4571,-0.1823,4.8125,84.7525 2019-06-03 15:42:54.080,120.605,7757.127,13.5581,5.7498,0.7685,0.1869,2400.0,2340.0,-0.4804,-0.1884,4.831,84.7835 2019-06-03 15:42:54.100,120.605,7757.0435,13.5631,5.797,0.7862,0.218,2400.0,2340.0,-0.4395,-0.1762,4.8363,84.8159 2019-06-03 15:42:54.120,120.534,7757.0435,13.5631,5.797,1.0055,0.0864,2400.0,2340.0,-0.4395,-0.161,4.8376,84.8159 2019-06-03 15:42:54.140,120.3085,7757.0713,13.5631,5.797,1.0599,0.2709,2400.0,2340.0,-0.4571,-0.161,4.8376,84.8159 2019-06-03 15:42:54.160,120.2966,7757.0435,13.5698,5.8457,0.9082,0.0278,2400.0,2340.0,-0.4571,-0.1335,4.7993,84.8482 2019-06-03 15:42:54.180,120.2252,7757.0156,13.5698,5.8457,1.1512,0.2642,2400.0,2340.0,-0.4658,-0.1335,4.8112,84.8482 2019-06-03 15:42:54.200,120.2252,7757.0435,13.5707,5.9178,1.1523,0.2438,2400.0,2340.0,-0.4454,-0.1213,4.8138,84.8941 2019-06-03 15:42:54.220,120.2371,7757.0435,13.5654,5.9376,0.7455,0.077,2400.0,2340.0,-0.4512,-0.1091,4.8045,84.909 2019-06-03 15:42:54.240,120.3085,7757.0713,13.5654,5.9376,1.2862,0.1863,2400.0,2340.0,-0.4629,-0.1243,4.8363,84.909 2019-06-03 15:42:54.260,120.3204,7757.0435,13.5654,5.9376,0.7248,0.1606,2400.0,2340.0,-0.46,-0.0724,4.8151,84.909 2019-06-03 15:42:54.280,120.2252,7757.2383,13.5729,5.9881,1.2341,0.1469,2400.0,2340.0,-0.4658,-0.0938,4.8271,84.9413 2019-06-03 15:42:54.300,120.2371,7758.0991,13.5715,6.0341,1.179,0.0954,2400.0,2340.0,-0.4483,-0.0968,4.8284,84.9719 2019-06-03 15:42:54.320,120.1895,7758.9604,13.5715,6.0341,0.7999,0.2537,2400.0,2340.0,-0.4424,-0.0877,4.8125,84.9719 2019-06-03 15:42:54.340,120.118,7760.4053,13.5715,6.0341,1.0994,0.0218,2400.0,2340.0,-0.4541,-0.0877,4.8337,84.9719 2019-06-03 15:42:54.360,120.0941,7761.4053,13.5696,6.0814,1.0236,0.3242,2400.0,2340.0,-0.4512,-0.0846,4.8125,85.0043 2019-06-03 15:42:54.380,120.0345,7762.7666,13.5696,6.0814,0.9489,0.0313,2400.0,2340.0,-0.4629,-0.0877,4.8297,85.0043 2019-06-03 15:42:54.400,120.0464,7763.6558,13.5738,6.1589,0.8102,0.0049,2340.0,2400.0,-0.4512,-0.0968,4.839,85.0528 2019-06-03 15:42:54.420,120.0345,7764.5444,13.5816,6.192,1.3513,0.2866,2340.0,2400.0,-0.4541,-0.0785,4.8257,85.072 2019-06-03 15:42:54.440,120.118,7765.9058,13.5816,6.192,0.7004,0.0389,2340.0,2400.0,-0.46,-0.0846,4.8429,85.072 2019-06-03 15:42:54.460,120.118,7766.1558,13.5816,6.192,1.3639,0.2238,2340.0,2400.0,-0.4571,-0.0816,4.8231,85.072 2019-06-03 15:42:54.480,120.0225,7766.3506,13.5778,6.2429,0.6852,0.1552,2340.0,2400.0,-0.46,-0.0999,4.8271,85.1048 2019-06-03 15:42:54.500,120.0464,7767.1841,13.5808,6.2994,0.5395,0.188,2340.0,2400.0,-0.4571,-0.103,4.835,85.1402 2019-06-03 15:42:54.520,119.9628,7768.0454,13.5808,6.2994,1.3846,0.0691,2340.0,2400.0,-0.4454,-0.1182,4.8165,85.1402 2019-06-03 15:42:54.540,119.7473,7769.3516,13.5808,6.2994,0.7196,0.2765,2340.0,2400.0,-0.4571,-0.1793,4.8324,85.1402 2019-06-03 15:42:54.560,119.7113,7770.2407,13.5911,6.3651,1.2633,-0.0001,2340.0,2400.0,-0.4483,-0.1823,4.8032,85.1787 2019-06-03 15:42:54.580,119.6633,7771.519,13.5911,6.3651,0.8616,0.3691,2340.0,2400.0,-0.4541,-0.2159,4.8218,85.1787 2019-06-03 15:42:54.600,119.6633,7772.3804,13.5922,6.4481,0.9082,0.389,2340.0,2400.0,-0.46,-0.2372,4.8456,85.2333 2019-06-03 15:42:54.620,119.6633,7773.2139,13.5845,6.4711,0.9482,-0.0628,2340.0,2400.0,-0.46,-0.2799,4.835,85.2495 2019-06-03 15:42:54.640,119.7233,7774.5479,13.5845,6.4711,1.2004,0.3454,2340.0,2400.0,-0.4775,-0.3439,4.8482,85.2495 2019-06-03 15:42:54.660,119.7473,7774.7979,13.5845,6.4711,0.7248,0.0437,2340.0,2400.0,-0.4571,-0.3743,4.8297,85.2495 2019-06-03 15:42:54.680,119.6513,7774.7422,13.5927,6.5306,1.3487,0.2558,2340.0,2400.0,-0.46,-0.502,4.8284,85.2871 2019-06-03 15:42:54.700,119.6633,7774.6592,13.5968,6.5837,1.3946,0.2104,2340.0,2400.0,-0.4629,-0.5567,4.839,85.3238 2019-06-03 15:42:54.720,119.6273,7774.6865,13.5968,6.5837,0.6194,0.1679,2340.0,2400.0,-0.4571,-0.6386,4.8178,85.3238 2019-06-03 15:42:54.740,119.5552,7774.7144,13.5968,6.5837,1.3498,0.1104,2340.0,2400.0,-0.4658,-0.8295,4.835,85.3238 2019-06-03 15:42:54.760,119.5311,7774.77,13.5902,6.6285,0.6054,0.2659,2340.0,2400.0,-0.46,-0.9292,4.8403,85.3597 2019-06-03 15:42:54.780,119.4709,7774.77,13.5902,6.6285,1.2574,0.0263,2340.0,2400.0,-0.4541,-1.0832,4.8456,85.3597 2019-06-03 15:42:54.800,119.4589,7774.77,13.5944,6.6968,1.2744,-0.0088,2340.0,2400.0,-0.4717,-1.1404,4.8575,85.4161 2019-06-03 15:42:54.820,119.483,7774.7144,13.5997,6.719,0.9323,0.3706,2340.0,2400.0,-0.4688,-1.1736,4.8376,85.4353 2019-06-03 15:42:54.840,119.5552,7774.6865,13.5997,6.719,0.8653,-0.0316,2340.0,2400.0,-0.498,-1.324,4.839,85.4353 2019-06-03 15:42:54.860,119.5431,7774.6592,13.5997,6.719,1.044,0.3596,2340.0,2400.0,-0.4804,-1.3841,4.8271,85.4353 2019-06-03 15:42:54.880,119.4709,7774.7979,13.5954,6.7469,0.8287,-0.0177,2340.0,2400.0,-0.4658,-1.4291,4.8178,85.4703 2019-06-03 15:42:54.900,119.4709,7775.6875,13.5901,6.7644,0.7511,0.0115,2340.0,2400.0,-0.4834,-1.4711,4.8191,85.5048 2019-06-03 15:42:54.920,119.3986,7776.5488,13.5901,6.7644,1.3202,0.2519,2340.0,2400.0,-0.4688,-1.4741,4.8112,85.5048 2019-06-03 15:42:54.940,119.1813,7777.9385,13.5901,6.7644,0.6139,0.1573,2340.0,2400.0,-0.4951,-1.5011,4.8376,85.5048 2019-06-03 15:42:54.960,119.1571,7778.856,13.5974,6.7776,1.375,0.1302,2340.0,2400.0,-0.4921,-1.4981,4.8588,85.5424 2019-06-03 15:42:54.980,119.0966,7780.2178,13.5974,6.7776,0.6749,0.2619,2340.0,2400.0,-0.4863,-1.5071,4.8549,85.5424 2019-06-03 15:42:55.000,119.0966,7781.0513,13.5973,6.7693,0.5702,0.2985,2340.0,2400.0,-0.4921,-1.528,4.8588,85.5996 2019-06-03 15:42:55.020,119.0966,7781.9409,13.5939,6.7604,1.227,-0.0083,2340.0,2400.0,-0.4834,-1.5251,4.8443,85.6154 2019-06-03 15:42:55.040,119.1571,7783.3027,13.5939,6.7604,0.8753,0.4055,2340.0,2400.0,-0.498,-1.5251,4.8363,85.6154 2019-06-03 15:42:55.060,119.1813,7783.5806,13.5939,6.7604,1.0488,-0.0771,2340.0,2400.0,-0.4951,-1.5191,4.8416,85.6154 2019-06-03 15:42:55.080,119.1087,7783.7476,13.5925,6.7399,0.9752,0.4003,2340.0,2400.0,-0.498,-1.5221,4.8376,85.6482 2019-06-03 15:42:55.100,119.0966,7784.5815,13.6009,6.7135,1.1172,0.4015,2340.0,2400.0,-0.5243,-1.5191,4.8416,85.6827 2019-06-03 15:42:55.120,119.0723,7785.4434,13.6009,6.7135,0.8661,-0.0252,2340.0,2400.0,-0.5126,-1.5191,4.8429,85.6827 2019-06-03 15:42:55.140,118.9875,7786.75,13.6009,6.7135,1.3017,0.344,2340.0,2400.0,-0.5097,-1.5221,4.8522,85.6827 2019-06-03 15:42:55.160,118.9632,7787.6675,13.5946,6.6739,0.6105,0.0457,2340.0,2400.0,-0.5155,-1.5161,4.8694,85.7146 2019-06-03 15:42:55.180,118.9025,7788.9463,13.5855,6.625,1.5003,0.1874,2340.0,2400.0,-0.5068,-1.5101,4.8549,85.7518 2019-06-03 15:42:55.200,118.8904,7789.7803,13.5951,6.6057,1.4497,0.1199,2340.0,2400.0,-0.5184,-1.5101,4.8496,85.7706 2019-06-03 15:42:55.220,118.9025,7790.6699,13.5917,6.5773,0.5887,0.254,2340.0,2400.0,-0.5155,-1.4981,4.831,85.7863 2019-06-03 15:42:55.240,118.9753,7791.9209,13.5917,6.5773,1.3376,0.0333,2340.0,2400.0,-0.5126,-1.4771,4.8231,85.7863 2019-06-03 15:42:55.260,118.9875,7792.1431,13.5917,6.5773,0.6923,0.357,2340.0,2400.0,-0.5068,-1.4801,4.835,85.7863 2019-06-03 15:42:55.280,118.9025,7792.0317,13.593,6.5237,1.2574,-0.083,2340.0,2400.0,-0.5009,-1.4561,4.8297,85.8204 2019-06-03 15:42:55.300,118.9146,7791.9487,13.5811,6.4585,1.1083,-0.0856,2340.0,2400.0,-0.5009,-1.4621,4.8562,85.8523 2019-06-03 15:42:55.320,118.8417,7791.9487,13.5811,6.4585,0.909,0.4332,2340.0,2400.0,-0.5009,-1.3991,4.8668,85.8523 2019-06-03 15:42:55.340,118.7931,7792.0039,13.5811,6.4585,0.9249,-0.0925,2340.0,2400.0,-0.5009,-1.375,4.8787,85.8523 2019-06-03 15:42:55.360,118.7931,7792.0596,13.5767,6.3933,1.0614,0.3737,2340.0,2400.0,-0.5068,-1.372,4.8787,85.8868 2019-06-03 15:42:55.380,118.7201,7792.0039,13.5767,6.3933,0.8354,-0.0433,2340.0,2400.0,-0.5009,-1.3059,4.8363,85.8868 2019-06-03 15:42:55.400,118.7079,7791.9761,13.571,6.2889,0.6427,0.0128,2400.0,2340.0,-0.5038,-1.3029,4.835,85.9437 2019-06-03 15:42:55.420,118.7322,7791.8931,13.577,6.2604,1.3051,0.2665,2400.0,2340.0,-0.5038,-1.2368,4.831,85.9629 2019-06-03 15:42:55.440,118.7809,7791.9761,13.577,6.2604,0.6697,0.1271,2400.0,2340.0,-0.5038,-1.2007,4.831,85.9629 2019-06-03 15:42:55.460,118.7931,7791.9761,13.577,6.2604,1.2907,0.1232,2400.0,2340.0,-0.5038,-1.1585,4.8535,85.9629 2019-06-03 15:42:55.480,118.7201,7792.1987,13.5663,6.1897,0.6801,0.2537,2400.0,2340.0,-0.5038,-1.1073,4.8562,85.9953 2019-06-03 15:42:55.500,118.7079,7793.1162,13.568,6.1264,0.8025,0.3327,2400.0,2340.0,-0.5155,-1.1073,4.8681,86.0337 2019-06-03 15:42:55.520,118.6469,7793.9785,13.568,6.1264,1.2108,-0.0165,2400.0,2340.0,-0.5068,-1.0681,4.8853,86.0337 2019-06-03 15:42:55.540,118.4148,7795.3408,13.568,6.1264,0.8217,0.3966,2400.0,2340.0,-0.5038,-1.05,4.8628,86.0337 2019-06-03 15:42:55.560,118.3781,7796.2861,13.5681,6.0665,1.1065,-0.0632,2400.0,2340.0,-0.5068,-1.047,4.8562,86.0717 2019-06-03 15:42:55.580,118.3169,7797.7046,13.5681,6.0665,0.9867,0.366,2400.0,2340.0,-0.4951,-1.0228,4.8218,86.0717 2019-06-03 15:42:55.600,118.3414,7798.5942,13.5637,5.9725,1.2056,0.3932,2400.0,2340.0,-0.5038,-1.0259,4.8151,86.1356 2019-06-03 15:42:55.620,118.3291,7799.4839,13.5525,5.9377,0.8077,-0.0131,2400.0,2340.0,-0.5097,-1.0138,4.8204,86.1531 2019-06-03 15:42:55.640,118.4148,7800.791,13.5525,5.9377,1.2363,0.2888,2400.0,2340.0,-0.5038,-0.9685,4.8324,86.1531 2019-06-03 15:42:55.660,118.4148,7801.0132,13.5525,5.9377,0.7026,0.0977,2400.0,2340.0,-0.5155,-0.9715,4.8496,86.1531 2019-06-03 15:42:55.680,118.3291,7801.041,13.5571,5.889,1.2115,0.1968,2400.0,2340.0,-0.5097,-0.9383,4.8482,86.1937 2019-06-03 15:42:55.700,118.3291,7801.9033,13.5498,5.8329,1.2751,0.1473,2400.0,2340.0,-0.5126,-0.9353,4.8575,86.2317 2019-06-03 15:42:55.720,118.2924,7802.7935,13.5498,5.8329,0.6475,0.2464,2400.0,2340.0,-0.5068,-0.9262,4.8522,86.2317 2019-06-03 15:42:55.740,118.2065,7804.1006,13.5498,5.8329,1.2947,0.025,2400.0,2340.0,-0.5009,-0.8869,4.8191,86.2317 2019-06-03 15:42:55.760,118.1942,7805.0181,13.5372,5.7788,0.7873,0.3318,2400.0,2340.0,-0.5068,-0.9051,4.8178,86.2693 2019-06-03 15:42:55.780,118.1328,7806.353,13.5372,5.7788,1.1782,0.016,2400.0,2340.0,-0.5068,-0.899,4.7873,86.2693 2019-06-03 15:42:55.800,118.1451,7807.2432,13.5325,5.7098,1.088,-0.0186,2400.0,2340.0,-0.498,-0.899,4.8125,86.334 2019-06-03 15:42:55.820,118.1451,7808.0776,13.5375,5.6912,0.9504,0.321,2400.0,2340.0,-0.5068,-0.899,4.831,86.3546 2019-06-03 15:42:55.840,118.2188,7809.3848,13.5375,5.6912,1.098,0.0146,2400.0,2340.0,-0.5038,-0.899,4.8284,86.3546 2019-06-03 15:42:55.860,118.2188,7809.6631,13.5375,5.6912,1.1183,0.2997,2400.0,2340.0,-0.5097,-0.899,4.8456,86.3546 2019-06-03 15:42:55.880,118.1328,7809.5796,13.528,5.6482,0.8099,0.0823,2400.0,2340.0,-0.5038,-0.896,4.835,86.3926 2019-06-03 15:42:55.900,118.1328,7809.4961,13.5187,5.6107,0.8469,0.104,2400.0,2340.0,-0.5038,-0.893,4.835,86.4298 2019-06-03 15:42:55.920,118.1082,7809.4683,13.5187,5.6107,1.1168,0.1649,2400.0,2340.0,-0.5038,-0.896,4.8403,86.4298 2019-06-03 15:42:55.940,118.0344,7809.4126,13.5187,5.6107,0.8583,0.1795,2400.0,2340.0,-0.5038,-0.89,4.7993,86.4298 2019-06-03 15:42:55.960,118.0098,7809.3569,13.5192,5.5814,1.1764,0.0973,2400.0,2340.0,-0.5126,-0.89,4.8204,86.4695 2019-06-03 15:42:55.980,117.9359,7809.3569,13.5192,5.5814,0.855,0.2801,2400.0,2340.0,-0.5038,-0.8839,4.8204,86.4695 2019-06-03 15:42:56.000,117.9482,7809.4126,13.5125,5.535,0.9071,0.2795,2400.0,2340.0,-0.5068,-0.8779,4.8204,86.5281 2019-06-03 15:42:56.020,117.9359,7809.4126,13.5063,5.5198,1.0014,0.0296,2400.0,2340.0,-0.5068,-0.8779,4.8456,86.5456 2019-06-03 15:42:56.040,118.0098,7809.4961,13.5063,5.5198,0.9667,0.2823,2400.0,2340.0,-0.5009,-0.8748,4.8231,86.5456 2019-06-03 15:42:56.060,118.0344,7809.5518,13.5063,5.5198,1.0366,0.0193,2400.0,2340.0,-0.5126,-0.8779,4.839,86.5456 2019-06-03 15:42:56.080,117.9482,7809.6909,13.5034,5.4979,1.0876,0.2819,2400.0,2340.0,-0.5068,-0.8658,4.8403,86.5819 2019-06-03 15:42:56.100,117.9729,7810.6089,13.5016,5.4798,1.1227,0.2345,2400.0,2340.0,-0.5068,-0.8658,4.8297,86.6177 2019-06-03 15:42:56.120,117.8989,7811.4712,13.5016,5.4798,0.8731,0.1152,2400.0,2340.0,-0.5068,-0.8688,4.835,86.6177 2019-06-03 15:42:56.140,117.8125,7812.8896,13.5016,5.4798,1.1176,0.1759,2400.0,2340.0,-0.4951,-0.8658,4.8125,86.6177 2019-06-03 15:42:56.160,117.8125,7813.7798,13.4928,5.4589,0.8021,0.1695,2400.0,2340.0,-0.498,-0.8718,4.8297,86.6496 2019-06-03 15:42:56.180,117.7508,7815.1152,13.4928,5.4589,1.1368,0.1302,2400.0,2340.0,-0.4921,-0.8718,4.8363,86.6496 2019-06-03 15:42:56.200,117.7384,7816.0054,13.4872,5.4368,1.1035,0.0957,2400.0,2340.0,-0.4951,-0.8658,4.8337,86.7034 2019-06-03 15:42:56.220,117.7631,7816.8398,13.4883,5.4323,0.9082,0.2498,2400.0,2340.0,-0.5068,-0.8688,4.8443,86.7191 2019-06-03 15:42:56.240,117.8249,7818.1753,13.4883,5.4323,1.1024,0.0739,2400.0,2340.0,-0.5009,-0.8627,4.839,86.7191 2019-06-03 15:42:56.260,117.8372,7818.3979,13.4883,5.4323,0.9892,0.2749,2400.0,2340.0,-0.5068,-0.8658,4.8469,86.7191 2019-06-03 15:42:56.280,117.7384,7818.5371,13.4834,5.4178,0.9578,0.0534,2400.0,2340.0,-0.4921,-0.8597,4.8469,86.7484 2019-06-03 15:42:56.300,117.7384,7819.3159,13.4745,5.4041,0.9345,0.0719,2400.0,2340.0,-0.4892,-0.8567,4.831,86.776 2019-06-03 15:42:56.320,117.7261,7820.0952,13.4745,5.4041,1.1165,0.251,2400.0,2340.0,-0.4951,-0.8627,4.835,86.776 2019-06-03 15:42:56.340,117.8249,7821.3193,13.4745,5.4041,0.8295,0.1189,2400.0,2340.0,-0.4892,-0.8567,4.8191,86.776 2019-06-03 15:42:56.360,117.8125,7822.0986,13.4748,5.3959,1.1653,0.2111,2400.0,2340.0,-0.4863,-0.8567,4.8324,86.8031 2019-06-03 15:42:56.380,117.7508,7823.2671,13.4733,5.3863,0.8358,0.1596,2400.0,2340.0,-0.4746,-0.8537,4.8509,86.8315 2019-06-03 15:42:56.400,117.7384,7824.1299,13.4678,5.3797,0.9267,0.2042,2340.0,2400.0,-0.4746,-0.8567,4.8443,86.8428 2019-06-03 15:42:56.420,117.7384,7824.9087,13.4675,5.3749,1.0488,0.0963,2340.0,2400.0,-0.4892,-0.8688,4.8575,86.8547 2019-06-03 15:42:56.440,117.8249,7826.1885,13.4675,5.3749,0.9571,0.2713,2340.0,2400.0,-0.4804,-0.8627,4.8363,86.8547 2019-06-03 15:42:56.460,117.8249,7826.4668,13.4675,5.3749,0.9955,0.0649,2340.0,2400.0,-0.4804,-0.8597,4.839,86.8547 2019-06-03 15:42:56.480,117.7508,7826.4111,13.4645,5.3657,1.0673,0.225,2340.0,2400.0,-0.4834,-0.8567,4.8376,86.8761 2019-06-03 15:42:56.500,117.7631,7826.3276,13.4659,5.3591,1.2134,0.2299,2340.0,2400.0,-0.4804,-0.8507,4.8125,86.8962 2019-06-03 15:42:56.520,117.7013,7826.3276,13.4659,5.3591,0.8258,0.0961,2340.0,2400.0,-0.4863,-0.8537,4.8324,86.8962 2019-06-03 15:42:56.540,117.6271,7826.3833,13.4659,5.3591,1.22,0.2382,2340.0,2400.0,-0.4717,-0.8476,4.839,86.8962 2019-06-03 15:42:56.560,117.6271,7826.4111,13.4648,5.3477,0.7374,0.1753,2340.0,2400.0,-0.4775,-0.8476,4.8443,86.9137 2019-06-03 15:42:56.580,117.5527,7826.4111,13.4619,5.336,1.2193,0.0995,2340.0,2400.0,-0.4717,-0.8507,4.8721,86.9333 2019-06-03 15:42:56.600,117.5403,7826.439,13.4645,5.3326,1.162,0.0651,2340.0,2400.0,-0.4804,-0.8476,4.8522,86.9408 2019-06-03 15:42:56.620,117.5775,7826.3833,13.468,5.3291,0.8539,0.2787,2340.0,2400.0,-0.4863,-0.8507,4.8575,86.9486 2019-06-03 15:42:56.640,117.6395,7826.3555,13.468,5.3291,1.088,0.0396,2340.0,2400.0,-0.4746,-0.8507,4.8416,86.9486 2019-06-03 15:42:56.660,117.6395,7826.3276,13.468,5.3291,0.9918,0.3486,2340.0,2400.0,-0.4717,-0.8446,4.8257,86.9486 2019-06-03 15:42:56.680,117.5527,7826.4946,13.4647,5.3206,0.8824,-0.0225,2340.0,2400.0,-0.4775,-0.8476,4.831,86.9617 2019-06-03 15:42:56.700,117.5527,7827.3853,13.4571,5.3027,0.8376,-0.0243,2340.0,2400.0,-0.4717,-0.8446,4.8151,86.9731 2019-06-03 15:42:56.720,117.4659,7828.248,13.4571,5.3027,1.2799,0.2908,2340.0,2400.0,-0.4863,-0.8567,4.8337,86.9731 2019-06-03 15:42:56.740,117.2546,7829.6675,13.4571,5.3027,0.6834,0.0814,2340.0,2400.0,-0.4746,-0.8567,4.8522,86.9731 2019-06-03 15:42:56.760,117.2297,7830.5581,13.4614,5.2948,1.3014,0.2361,2340.0,2400.0,-0.4717,-0.8355,4.8522,86.9858 2019-06-03 15:42:56.780,117.1674,7831.8936,13.4614,5.2948,0.6113,0.1477,2340.0,2400.0,-0.4688,-0.8355,4.8734,86.9858 2019-06-03 15:42:56.800,117.1798,7832.812,13.4586,5.2752,0.5617,0.1918,2340.0,2400.0,-0.4658,-0.8325,4.8535,87.0046 2019-06-03 15:42:56.820,117.1674,7833.7305,13.4595,5.2712,1.3099,0.0683,2340.0,2400.0,-0.4688,-0.8416,4.8469,87.0103 2019-06-03 15:42:56.840,117.2297,7835.1499,13.4595,5.2712,0.6882,0.3073,2340.0,2400.0,-0.4629,-0.8355,4.8376,87.0103 2019-06-03 15:42:56.860,117.2546,7835.4282,13.4595,5.2712,1.176,-0.0226,2340.0,2400.0,-0.4658,-0.8355,4.8125,87.0103 2019-06-03 15:42:56.880,117.1549,7835.5952,13.4538,5.2543,0.8432,0.3809,2340.0,2400.0,-0.4658,-0.8386,4.8456,87.019 2019-06-03 15:42:56.900,117.1798,7836.4023,13.4615,5.2452,1.0669,0.3979,2340.0,2400.0,-0.4688,-0.8265,4.8324,87.0295 2019-06-03 15:42:56.920,117.1175,7837.2378,13.4615,5.2452,0.8768,-0.0567,2340.0,2400.0,-0.4629,-0.8295,4.8469,87.0295 2019-06-03 15:42:56.940,117.0301,7838.6016,13.4615,5.2452,1.1664,0.3449,2340.0,2400.0,-0.4658,-0.8355,4.8628,87.0295 2019-06-03 15:42:56.960,117.0426,7839.4922,13.459,5.2316,0.6564,0.01,2340.0,2400.0,-0.4629,-0.8325,4.8482,87.0382 2019-06-03 15:42:56.980,116.9551,7840.7729,13.459,5.2316,1.4574,0.2844,2340.0,2400.0,-0.4688,-0.8295,4.8602,87.0382 2019-06-03 15:42:57.000,116.9551,7841.6357,13.4611,5.2105,1.453,0.2252,2340.0,2400.0,-0.4629,-0.8265,4.8363,87.0544 2019-06-03 15:42:57.020,116.9551,7842.4985,13.4549,5.1991,0.6623,0.2144,2340.0,2400.0,-0.4629,-0.8295,4.8271,87.0579 2019-06-03 15:42:57.040,117.0551,7843.7793,13.4549,5.1991,1.3535,0.0482,2340.0,2400.0,-0.4658,-0.8295,4.8429,87.0579 2019-06-03 15:42:57.060,117.0426,7844.002,13.4549,5.1991,0.6142,0.3266,2340.0,2400.0,-0.4658,-0.8234,4.8324,87.0579 2019-06-03 15:42:57.080,116.9551,7844.2246,13.4588,5.1895,1.2278,-0.0384,2340.0,2400.0,-0.4717,-0.8204,4.8535,87.0658 2019-06-03 15:42:57.100,116.9676,7845.1157,13.4503,5.1705,1.0399,-0.0629,2340.0,2400.0,-0.4717,-0.8022,4.8469,87.0732 2019-06-03 15:42:57.120,116.9176,7846.0063,13.4503,5.1705,1.0203,0.4625,2340.0,2400.0,-0.4746,-0.7932,4.8469,87.0732 2019-06-03 15:42:57.140,116.855,7847.4263,13.4503,5.1705,0.8923,-0.1246,2340.0,2400.0,-0.4717,-0.7932,4.8575,87.0732 2019-06-03 15:42:57.160,116.8299,7848.4009,13.4482,5.1538,1.1009,0.413,2340.0,2400.0,-0.4629,-0.775,4.8482,87.0815 2019-06-03 15:42:57.180,116.7798,7849.626,13.4482,5.1538,0.7026,-0.0247,2340.0,2400.0,-0.4658,-0.775,4.8496,87.0815 2019-06-03 15:42:57.200,116.7798,7850.5171,13.4442,5.1311,0.6797,0.0347,2340.0,2400.0,-0.4629,-0.772,4.8403,87.0911 2019-06-03 15:42:57.220,116.7798,7851.4355,13.4521,5.1283,1.3587,0.2832,2340.0,2400.0,-0.46,-0.7629,4.8297,87.0973 2019-06-03 15:42:57.240,116.8424,7852.7725,13.4521,5.1283,0.5758,0.1044,2340.0,2400.0,-0.4629,-0.7659,4.8496,87.0973 2019-06-03 15:42:57.260,116.855,7853.0229,13.4521,5.1283,1.4733,0.1462,2340.0,2400.0,-0.4541,-0.7387,4.8324,87.0973 2019-06-03 15:42:57.280,116.7798,7852.9951,13.4407,5.104,0.5972,0.2637,2340.0,2400.0,-0.4541,-0.7417,4.8416,87.1043 2019-06-03 15:42:57.300,116.7923,7852.9116,13.4439,5.0884,0.7071,0.3104,2340.0,2400.0,-0.4541,-0.7326,4.8469,87.113 2019-06-03 15:42:57.320,116.7296,7852.9116,13.4439,5.0884,1.2574,-0.0007,2340.0,2400.0,-0.46,-0.7175,4.8376,87.113 2019-06-03 15:42:57.340,116.6668,7852.9673,13.4439,5.0884,0.7836,0.359,2340.0,2400.0,-0.4717,-0.7205,4.8575,87.113 2019-06-03 15:42:57.360,116.6417,7852.9951,13.4478,5.0727,1.0961,-0.0438,2340.0,2400.0,-0.4804,-0.6872,4.8429,87.1239 2019-06-03 15:42:57.380,116.5663,7853.0508,13.4478,5.0727,0.9948,0.3555,2340.0,2400.0,-0.4775,-0.7053,4.8416,87.1239 2019-06-03 15:42:57.400,116.5663,7853.0786,13.4426,5.0401,1.054,0.3445,2340.0,2400.0,-0.4629,-0.6993,4.8416,87.1379 2019-06-03 15:42:57.420,116.5788,7853.0508,13.4302,5.0242,0.852,0.0314,2340.0,2400.0,-0.46,-0.6781,4.8204,87.1414 2019-06-03 15:42:57.440,116.6417,7853.0508,13.4302,5.0242,1.1427,0.2813,2340.0,2400.0,-0.4571,-0.675,4.8456,87.1414 2019-06-03 15:42:57.460,116.6794,7853.0229,13.4302,5.0242,0.6808,0.1153,2340.0,2400.0,-0.46,-0.6508,4.8376,87.1414 2019-06-03 15:42:57.480,116.5663,7853.1343,13.4345,5.0093,1.3428,0.1549,2340.0,2400.0,-0.4688,-0.6599,4.8456,87.1545 2019-06-03 15:42:57.500,116.5788,7853.9697,13.4315,4.9872,1.3384,0.1411,2340.0,2400.0,-0.4658,-0.6508,4.8509,87.1659 2019-06-03 15:42:57.520,116.5285,7854.8052,13.4315,4.9872,0.6383,0.2896,2340.0,2400.0,-0.4571,-0.6144,4.8376,87.1659 2019-06-03 15:42:57.540,116.453,7856.0581,13.4315,4.9872,1.2237,0.0205,2340.0,2400.0,-0.4571,-0.6295,4.8496,87.1659 2019-06-03 15:42:57.560,116.453,7856.9219,13.4206,4.9624,0.6738,0.3423,2340.0,2400.0,-0.4541,-0.6204,4.8363,87.1777 2019-06-03 15:42:57.580,116.3899,7858.2861,13.4206,4.9624,1.203,-0.0844,2340.0,2400.0,-0.46,-0.6204,4.8284,87.1777 2019-06-03 15:42:57.600,116.3773,7859.0659,13.4165,4.9369,1.0628,-0.0631,2340.0,2400.0,-0.46,-0.6204,4.8337,87.2057 2019-06-03 15:42:57.620,116.4025,7859.8179,13.4217,4.9315,1.0222,0.3857,2340.0,2400.0,-0.4571,-0.6022,4.8284,87.2149 2019-06-03 15:42:57.640,116.453,7861.0435,13.4217,4.9315,0.9182,0.0198,2340.0,2400.0,-0.4717,-0.6022,4.8522,87.2149 2019-06-03 15:42:57.660,116.4656,7861.2661,13.4217,4.9315,1.0651,0.3122,2340.0,2400.0,-0.4658,-0.581,4.835,87.2149 2019-06-03 15:42:57.680,116.3773,7861.2939,13.4106,4.9089,0.8006,0.0562,2340.0,2400.0,-0.46,-0.5871,4.835,87.2301 2019-06-03 15:42:57.700,116.3773,7861.2383,13.4031,4.8911,0.6753,0.083,2340.0,2400.0,-0.46,-0.584,4.8403,87.2476 2019-06-03 15:42:57.720,116.3395,7861.2383,13.4031,4.8911,1.2503,0.1774,2340.0,2400.0,-0.4571,-0.5689,4.8324,87.2476 2019-06-03 15:42:57.740,116.2763,7861.1826,13.4031,4.8911,0.7041,0.2186,2340.0,2400.0,-0.4717,-0.5719,4.8456,87.2476 2019-06-03 15:42:57.760,116.2384,7861.2104,13.4047,4.8796,1.152,0.0929,2340.0,2400.0,-0.4746,-0.5658,4.8376,87.2691 2019-06-03 15:42:57.780,116.1752,7861.2661,13.3961,4.864,0.8813,0.3118,2340.0,2400.0,-0.4688,-0.5628,4.8271,87.2892 2019-06-03 15:42:57.800,116.1752,7861.2939,13.3921,4.8567,0.869,0.3143,2340.0,2400.0,-0.46,-0.5719,4.8416,87.2997 2019-06-03 15:42:57.820,116.1878,7861.2939,13.3821,4.8451,1.0676,0.0116,2340.0,2400.0,-0.4454,-0.5628,4.835,87.3097 2019-06-03 15:42:57.840,116.2384,7861.2661,13.3821,4.8451,0.9811,0.3009,2340.0,2400.0,-0.4454,-0.5658,4.8482,87.3097 2019-06-03 15:42:57.860,116.2511,7861.2104,13.3821,4.8451,0.8432,0.0878,2340.0,2400.0,-0.4483,-0.5506,4.835,87.3097 2019-06-03 15:42:57.880,116.1752,7861.3774,13.3784,4.836,1.1542,0.2491,2340.0,2400.0,-0.4658,-0.5415,4.8324,87.3324 2019-06-03 15:42:57.900,116.1752,7862.2686,13.3728,4.8254,1.0776,0.2241,2340.0,2400.0,-0.4688,-0.5415,4.8522,87.3578 2019-06-03 15:42:57.920,116.0992,7863.1323,13.3728,4.8254,0.7611,0.147,2340.0,2400.0,-0.4658,-0.5415,4.8324,87.3578 2019-06-03 15:42:57.940,115.8709,7864.5249,13.3728,4.8254,1.1261,0.1202,2340.0,2400.0,-0.46,-0.5506,4.8429,87.3578 2019-06-03 15:42:57.960,115.8454,7865.5557,13.3589,4.8143,0.8735,0.2326,2340.0,2400.0,-0.4541,-0.5415,4.8244,87.3823 2019-06-03 15:42:57.980,115.7818,7866.9761,13.3525,4.8053,1.0858,0.0815,2340.0,2400.0,-0.4483,-0.5263,4.8138,87.4133 2019-06-03 15:42:58.000,115.7818,7867.8955,13.3489,4.8012,0.8968,0.0696,2340.0,2400.0,-0.4541,-0.5324,4.8416,87.4282 2019-06-03 15:42:58.020,115.7946,7868.7588,13.3476,4.7985,1.0088,0.2483,2340.0,2400.0,-0.4512,-0.5081,4.8284,87.4426 2019-06-03 15:42:58.040,115.8709,7870.124,13.3476,4.7985,0.9715,0.0567,2340.0,2400.0,-0.4571,-0.5233,4.8376,87.4426 2019-06-03 15:42:58.060,115.8709,7870.4023,13.3476,4.7985,1.0103,0.2597,2340.0,2400.0,-0.4688,-0.5294,4.8416,87.4426 2019-06-03 15:42:58.080,115.7818,7870.5415,13.3356,4.7901,0.8923,0.1229,2340.0,2400.0,-0.4629,-0.5233,4.8297,87.4719 2019-06-03 15:42:58.100,115.7818,7871.4331,13.3242,4.7809,0.8598,0.155,2340.0,2400.0,-0.4629,-0.5263,4.8482,87.5025 2019-06-03 15:42:58.120,115.7437,7872.269,13.3242,4.7809,1.0432,0.1422,2340.0,2400.0,-0.4541,-0.5233,4.8271,87.5025 2019-06-03 15:42:58.140,115.68,7873.5508,13.3242,4.7809,0.8724,0.1867,2340.0,2400.0,-0.4541,-0.5294,4.8244,87.5025 2019-06-03 15:42:58.160,115.6417,7874.4424,13.3158,4.7763,1.075,0.0984,2340.0,2400.0,-0.4541,-0.5263,4.839,87.5353 2019-06-03 15:42:58.180,115.5907,7875.8076,13.3158,4.7763,1.0085,0.2767,2340.0,2400.0,-0.4571,-0.5263,4.8363,87.5353 2019-06-03 15:42:58.200,115.5907,7876.7271,13.2984,4.7648,1.2293,0.2667,2340.0,2400.0,-0.4717,-0.5294,4.8469,87.5807 2019-06-03 15:42:58.220,115.5779,7877.5903,13.2883,4.7561,0.7581,0.0997,2340.0,2400.0,-0.4658,-0.5355,4.835,87.5965 2019-06-03 15:42:58.240,115.6545,7878.8999,13.2883,4.7561,1.135,0.2276,2340.0,2400.0,-0.4629,-0.5324,4.8324,87.5965 2019-06-03 15:42:58.260,115.6672,7879.1509,13.2883,4.7561,0.791,0.1367,2340.0,2400.0,-0.46,-0.5324,4.8469,87.5965 2019-06-03 15:42:58.280,115.5779,7879.123,13.2802,4.7546,1.1194,0.182,2340.0,2400.0,-0.4658,-0.5355,4.8257,87.6323 2019-06-03 15:42:58.300,115.5907,7878.9834,13.2687,4.7488,1.1671,0.1551,2340.0,2400.0,-0.4688,-0.5537,4.8403,87.6686 2019-06-03 15:42:58.320,115.5524,7878.9277,13.2687,4.7488,0.7455,0.2242,2340.0,2400.0,-0.4746,-0.5506,4.8151,87.6686 2019-06-03 15:42:58.340,115.463,7878.9834,13.2687,4.7488,1.1838,0.0912,2340.0,2400.0,-0.4629,-0.5476,4.8112,87.6686 2019-06-03 15:42:58.360,115.4502,7879.0112,13.2524,4.7427,0.9242,0.2481,2340.0,2400.0,-0.4541,-0.5689,4.8403,87.7044 2019-06-03 15:42:58.380,115.3862,7879.0391,13.2424,4.7388,0.9744,0.0599,2340.0,2400.0,-0.4454,-0.5658,4.8244,87.7407 2019-06-03 15:42:58.400,115.3734,7879.0952,13.2346,4.7375,0.9463,0.0396,2400.0,2340.0,-0.4541,-0.5658,4.8337,87.7586 2019-06-03 15:42:58.420,115.3862,7879.0669,13.2337,4.7392,1.1682,0.3001,2400.0,2340.0,-0.4512,-0.5689,4.8376,87.7783 2019-06-03 15:42:58.440,115.4758,7879.0669,13.2337,4.7392,0.7921,0.0653,2400.0,2340.0,-0.4629,-0.5719,4.8151,87.7783 2019-06-03 15:42:58.460,115.463,7879.0669,13.2337,4.7392,1.1963,0.2598,2400.0,2340.0,-0.4658,-0.5689,4.8443,87.7783 2019-06-03 15:42:58.480,115.399,7879.2622,13.2177,4.7317,0.5658,0.1286,2400.0,2340.0,-0.4629,-0.5749,4.8204,87.8155 2019-06-03 15:42:58.500,115.3734,7880.1538,13.2032,4.728,0.703,0.1469,2400.0,2340.0,-0.4541,-0.5689,4.8178,87.8539 2019-06-03 15:42:58.520,115.335,7881.0459,13.2032,4.728,1.1882,0.1607,2400.0,2340.0,-0.4541,-0.5689,4.8257,87.8539 2019-06-03 15:42:58.540,115.2709,7882.3555,13.2032,4.728,0.7392,0.2655,2400.0,2340.0,-0.4424,-0.5749,4.8218,87.8539 2019-06-03 15:42:58.560,115.2453,7883.2471,13.1968,4.7315,1.1875,0.0555,2400.0,2340.0,-0.4454,-0.6053,4.8549,87.8928 2019-06-03 15:42:58.580,115.194,7884.5571,13.1968,4.7315,0.7814,0.3173,2400.0,2340.0,-0.4512,-0.5992,4.8469,87.8928 2019-06-03 15:42:58.600,115.1811,7885.4209,13.1778,4.7287,0.9785,0.3027,2400.0,2340.0,-0.4688,-0.6053,4.8403,87.9532 2019-06-03 15:42:58.620,115.194,7886.3125,13.1665,4.7235,0.9212,0.0159,2400.0,2340.0,-0.4658,-0.6022,4.8482,87.9706 2019-06-03 15:42:58.640,115.2581,7887.7061,13.1665,4.7235,1.1187,0.3303,2400.0,2340.0,-0.4512,-0.5992,4.8244,87.9706 2019-06-03 15:42:58.660,115.2709,7887.9565,13.1665,4.7235,0.7722,0.0222,2400.0,2340.0,-0.4454,-0.6083,4.839,87.9706 2019-06-03 15:42:58.680,115.1811,7887.873,13.1579,4.7273,1.2189,0.283,2400.0,2340.0,-0.4454,-0.6113,4.8218,88.01 2019-06-03 15:42:58.700,115.1811,7887.7896,13.1489,4.7315,1.3136,0.2512,2400.0,2340.0,-0.4658,-0.6083,4.8072,88.0493 2019-06-03 15:42:58.720,115.1298,7887.7617,13.1489,4.7315,0.6279,0.1169,2400.0,2340.0,-0.4629,-0.6174,4.8376,88.0493 2019-06-03 15:42:58.740,115.0655,7887.7896,13.1489,4.7315,1.3147,0.2018,2400.0,2340.0,-0.4541,-0.6113,4.8297,88.0493 2019-06-03 15:42:58.760,115.0526,7887.7896,13.1286,4.7267,0.6305,0.207,2400.0,2340.0,-0.4541,-0.6083,4.8469,88.0847 2019-06-03 15:42:58.780,114.9754,7887.8452,13.1286,4.7267,1.2847,0.0846,2400.0,2340.0,-0.4512,-0.6144,4.839,88.0847 2019-06-03 15:42:58.800,114.9754,7887.8174,13.1125,4.7322,1.2418,0.0363,2400.0,2340.0,-0.4483,-0.6113,4.8271,88.1407 2019-06-03 15:42:58.820,115.0012,7887.7617,13.11,4.7356,0.7766,0.338,2400.0,2340.0,-0.4541,-0.6113,4.839,88.1599 2019-06-03 15:42:58.840,115.0655,7887.7339,13.11,4.7356,1.0721,-0.0219,2400.0,2340.0,-0.4541,-0.6144,4.8112,88.1599 2019-06-03 15:42:58.860,115.0784,7887.7339,13.11,4.7356,0.8872,0.3753,2400.0,2340.0,-0.4717,-0.6113,4.8337,88.1599 2019-06-03 15:42:58.880,114.9754,7887.9287,13.095,4.7359,0.7958,-0.0391,2400.0,2340.0,-0.4688,-0.6083,4.8257,88.1962 2019-06-03 15:42:58.900,114.9883,7888.7651,13.073,4.7332,0.7929,-0.0068,2400.0,2340.0,-0.4746,-0.6144,4.8072,88.2303 2019-06-03 15:42:58.920,114.9239,7889.6294,13.073,4.7332,1.2533,0.3128,2400.0,2340.0,-0.4717,-0.6174,4.8443,88.2303 2019-06-03 15:42:58.940,114.8723,7890.8833,13.073,4.7332,0.6471,0.056,2400.0,2340.0,-0.46,-0.6113,4.8324,88.2303 2019-06-03 15:42:58.960,114.8465,7891.7197,13.0663,4.7398,1.3354,0.2347,2400.0,2340.0,-0.4541,-0.6144,4.8429,88.2666 2019-06-03 15:42:58.980,114.782,7893.0298,13.0663,4.7398,0.5288,0.1684,2400.0,2340.0,-0.4541,-0.6144,4.8403,88.2666 2019-06-03 15:42:59.000,114.7949,7893.8657,13.0455,4.7456,0.656,0.2573,2400.0,2340.0,-0.4483,-0.6144,4.8085,88.3186 2019-06-03 15:42:59.020,114.782,7894.6743,13.0411,4.751,1.2433,0.0475,2400.0,2340.0,-0.46,-0.6174,4.8284,88.3365 2019-06-03 15:42:59.040,114.8594,7895.9565,13.0411,4.751,0.6335,0.3341,2400.0,2340.0,-0.4541,-0.6174,4.8151,88.3365 2019-06-03 15:42:59.060,114.8723,7896.207,13.0411,4.751,1.2285,-0.0363,2400.0,2340.0,-0.46,-0.6174,4.8244,88.3365 2019-06-03 15:42:59.080,114.782,7896.4302,13.0251,4.7549,0.9345,0.3726,2400.0,2340.0,-0.4629,-0.6144,4.8403,88.3706 2019-06-03 15:42:59.100,114.782,7897.3501,13.0203,4.7659,1.0051,0.3997,2400.0,2340.0,-0.46,-0.6144,4.8271,88.4047 2019-06-03 15:42:59.120,114.7303,7898.27,13.0203,4.7659,0.8861,-0.0412,2400.0,2340.0,-0.4512,-0.6174,4.8416,88.4047 2019-06-03 15:42:59.140,114.6657,7899.5806,13.0203,4.7659,1.1671,0.3684,2400.0,2340.0,-0.4454,-0.6144,4.8284,88.4047 2019-06-03 15:42:59.160,114.6528,7900.5005,13.0048,4.7694,0.6978,0.032,2400.0,2340.0,-0.4483,-0.6174,4.8191,88.4362 2019-06-03 15:42:59.180,114.5751,7901.8667,12.9848,4.7717,1.3458,0.2432,2400.0,2340.0,-0.46,-0.6174,4.8284,88.4642 2019-06-03 15:42:59.200,114.5751,7902.7866,12.987,4.7795,1.3239,0.222,2400.0,2340.0,-0.4688,-0.6204,4.8006,88.4817 2019-06-03 15:42:59.220,114.5881,7903.6509,12.9765,4.7797,0.4574,0.2026,2400.0,2340.0,-0.4688,-0.6204,4.8271,88.4965 2019-06-03 15:42:59.240,114.6398,7904.9336,12.9765,4.7797,1.3998,0.0685,2400.0,2340.0,-0.4658,-0.6204,4.8244,88.4965 2019-06-03 15:42:59.260,114.6528,7905.1563,12.9765,4.7797,0.6061,0.3308,2400.0,2340.0,-0.4629,-0.6174,4.8297,88.4965 2019-06-03 15:42:59.280,114.5751,7905.1006,12.9677,4.7891,1.2441,-0.0437,2400.0,2340.0,-0.4571,-0.6174,4.839,88.5271 2019-06-03 15:42:59.300,114.5881,7905.1006,12.9474,4.7877,1.2322,-0.0547,2400.0,2340.0,-0.4512,-0.6174,4.8178,88.5533 2019-06-03 15:42:59.320,114.5362,7905.1841,12.9474,4.7877,0.8605,0.442,2400.0,2340.0,-0.4571,-0.6204,4.8324,88.5533 2019-06-03 15:42:59.340,114.4584,7905.2402,12.9474,4.7877,1.0136,-0.0978,2400.0,2340.0,-0.46,-0.6174,4.8284,88.5533 2019-06-03 15:42:59.360,114.4455,7905.2959,12.9317,4.7874,1.0388,0.4137,2400.0,2340.0,-0.46,-0.6204,4.8165,88.5805 2019-06-03 15:42:59.380,114.3676,7905.3516,12.9317,4.7874,0.838,-0.04,2400.0,2340.0,-0.4571,-0.6174,4.831,88.5805 2019-06-03 15:42:59.400,114.3806,7905.3516,12.9111,4.7947,0.6997,0.0049,2340.0,2340.0,-0.4512,-0.6144,4.8165,88.6137 2019-06-03 15:42:59.420,114.3806,7905.2959,12.9152,4.8024,1.2533,0.2946,2340.0,2340.0,-0.4571,-0.6174,4.8297,88.6285 2019-06-03 15:42:59.440,114.4584,7905.2959,12.9152,4.8024,0.4911,0.1012,2340.0,2340.0,-0.4688,-0.6204,4.8271,88.6285 2019-06-03 15:42:59.460,114.4584,7905.2402,12.9152,4.8024,1.3332,0.1463,2340.0,2340.0,-0.4658,-0.6174,4.8218,88.6285 2019-06-03 15:42:59.480,114.3676,7905.3237,12.8931,4.8003,0.6727,0.2223,2340.0,2340.0,-0.4629,-0.6174,4.831,88.6504 2019-06-03 15:42:59.500,114.3935,7906.188,12.8872,4.8037,0.6031,0.2661,2340.0,2340.0,-0.4541,-0.6174,4.8297,88.6727 2019-06-03 15:42:59.520,114.3156,7906.9971,12.8872,4.8037,1.1771,0.0089,2340.0,2340.0,-0.4512,-0.6174,4.835,88.6727 2019-06-03 15:42:59.540,114.2506,7908.2798,12.8872,4.8037,0.7352,0.3325,2340.0,2340.0,-0.4512,-0.6144,4.835,88.6727 2019-06-03 15:42:59.560,114.2506,7909.1719,12.8826,4.8122,1.1686,-0.0445,2340.0,2340.0,-0.4629,-0.6053,4.8138,88.6959 2019-06-03 15:42:59.580,114.1724,7910.5103,12.8826,4.8122,0.9134,0.3993,2340.0,2340.0,-0.4658,-0.6113,4.8297,88.6959 2019-06-03 15:42:59.600,114.1594,7911.4307,12.8633,4.8156,0.9449,0.3729,2340.0,2340.0,-0.46,-0.6113,4.8284,88.7212 2019-06-03 15:42:59.620,114.1724,7912.3228,12.8487,4.8115,0.9389,-0.0105,2340.0,2340.0,-0.4541,-0.6144,4.8376,88.7282 2019-06-03 15:42:59.640,114.2506,7913.6616,12.8487,4.8115,1.1161,0.295,2340.0,2340.0,-0.4512,-0.6113,4.839,88.7282 2019-06-03 15:42:59.660,114.2636,7913.9126,12.8487,4.8115,0.8335,0.0665,2340.0,2340.0,-0.4541,-0.6053,4.831,88.7282 2019-06-03 15:42:59.680,114.1724,7913.9126,12.8439,4.8182,1.2318,0.249,2340.0,2340.0,-0.46,-0.5871,4.8403,88.747 2019-06-03 15:42:59.700,114.1855,7913.8564,12.8338,4.8191,1.0954,0.1826,2340.0,2340.0,-0.4571,-0.5628,4.835,88.7636 2019-06-03 15:42:59.720,114.1334,7913.8286,12.8338,4.8191,0.8217,0.2062,2340.0,2340.0,-0.46,-0.5294,4.831,88.7636 2019-06-03 15:42:59.740,114.0551,7913.8564,12.8338,4.8191,1.1642,0.0874,2340.0,2340.0,-0.46,-0.4595,4.8469,88.7636 2019-06-03 15:42:59.760,114.0421,7913.9126,12.8162,4.8186,0.8387,0.2915,2340.0,2340.0,-0.46,-0.426,4.8337,88.7758 2019-06-03 15:42:59.780,113.9637,7913.8848,12.8077,4.8229,0.9811,0.0359,2340.0,2340.0,-0.46,-0.4169,4.8641,88.7885 2019-06-03 15:42:59.800,113.9637,7913.8848,12.8008,4.8229,0.9826,0.0624,2340.0,2340.0,-0.4571,-0.4017,4.8602,88.7951 2019-06-03 15:42:59.820,113.9637,7913.8848,12.8013,4.8304,1.0695,0.3015,2340.0,2340.0,-0.4541,-0.3682,4.8575,88.8025 2019-06-03 15:42:59.840,114.0421,7913.8848,12.8013,4.8304,0.8628,0.0591,2340.0,2340.0,-0.4512,-0.3652,4.8575,88.8025 2019-06-03 15:42:59.860,114.0682,7913.8564,12.8013,4.8304,1.0554,0.2937,2340.0,2340.0,-0.4512,-0.3287,4.8337,88.8025 2019-06-03 15:42:59.880,113.9637,7914.0239,12.7869,4.8341,0.7651,0.0723,2340.0,2340.0,-0.4541,-0.3317,4.8469,88.8143 2019-06-03 15:42:59.900,113.9637,7914.9165,12.7758,4.8404,0.7807,0.1281,2340.0,2340.0,-0.4571,-0.3226,4.8456,88.8257 2019-06-03 15:42:59.920,113.9245,7915.7813,12.7758,4.8404,1.0787,0.151,2340.0,2340.0,-0.4512,-0.3226,4.8403,88.8257 2019-06-03 15:42:59.940,113.846,7917.1201,12.7758,4.8404,0.8528,0.1988,2340.0,2340.0,-0.4541,-0.3287,4.8496,88.8257 2019-06-03 15:42:59.960,113.8067,7918.0684,12.7728,4.856,1.1009,0.1244,2340.0,2340.0,-0.4541,-0.3317,4.8429,88.8397 2019-06-03 15:42:59.980,113.7674,7919.4072,12.7634,4.8649,0.8986,0.2244,2340.0,2340.0,-0.4571,-0.3256,4.8522,88.8502 2019-06-03 15:43:00.000,113.7543,7920.3555,12.759,4.8691,0.9482,0.2531,2340.0,2340.0,-0.46,-0.3256,4.8496,88.8558 2019-06-03 15:43:00.020,113.7674,7921.2202,12.7514,4.8757,1.0506,0.0678,2340.0,2340.0,-0.4717,-0.3195,4.8337,88.8611 2019-06-03 15:43:00.040,113.8329,7922.6147,12.7514,4.8757,0.9578,0.2732,2340.0,2340.0,-0.4629,-0.3226,4.8443,88.8611 2019-06-03 15:43:00.060,113.846,7922.8657,12.7514,4.8757,0.9127,0.1124,2340.0,2340.0,-0.4571,-0.3226,4.8443,88.8611 2019-06-03 15:43:00.080,113.7543,7922.8657,12.7452,4.8892,1.0924,0.2173,2340.0,2340.0,-0.4541,-0.3134,4.8535,88.8725 2019-06-03 15:43:00.100,113.7543,7922.8379,12.7378,4.9018,1.0632,0.1848,2340.0,2340.0,-0.4571,-0.3134,4.8522,88.8825 2019-06-03 15:43:00.120,113.7019,7922.8379,12.7378,4.9018,0.8739,0.1516,2340.0,2340.0,-0.4688,-0.3134,4.831,88.8825 2019-06-03 15:43:00.140,113.6363,7922.8936,12.7378,4.9018,1.108,0.1726,2340.0,2340.0,-0.4688,-0.3104,4.8429,88.8825 2019-06-03 15:43:00.160,113.6232,7922.9492,12.7263,4.9148,0.7588,0.244,2340.0,2340.0,-0.46,-0.3104,4.839,88.893 2019-06-03 15:43:00.180,113.5706,7922.9492,12.7263,4.9148,1.0532,0.0644,2340.0,2340.0,-0.4541,-0.3134,4.8535,88.893 2019-06-03 15:43:00.200,113.5312,7922.9492,12.7117,4.9329,0.9774,0.0755,2340.0,2340.0,-0.4541,-0.3073,4.8509,88.9031 2019-06-03 15:43:00.220,113.5575,7922.9771,12.7091,4.9442,1.0225,0.2701,2340.0,2340.0,-0.4571,-0.3012,4.8337,88.9087 2019-06-03 15:43:00.240,113.6363,7922.9771,12.7091,4.9442,0.858,0.089,2340.0,2340.0,-0.4541,-0.3043,4.8509,88.9087 2019-06-03 15:43:00.260,113.6494,7922.8936,12.7091,4.9442,1.1627,0.2606,2340.0,2340.0,-0.4483,-0.3043,4.8429,88.9087 2019-06-03 15:43:00.280,113.5443,7923.061,12.697,4.9538,0.6745,0.094,2340.0,2340.0,-0.4424,-0.3073,4.8469,88.917 2019-06-03 15:43:00.300,113.5575,7923.8701,12.6852,4.9671,0.7,0.1324,2340.0,2340.0,-0.4454,-0.3043,4.8469,88.9253 2019-06-03 15:43:00.320,113.5049,7924.6792,12.6852,4.9671,1.2115,0.1827,2340.0,2340.0,-0.4688,-0.3043,4.831,88.9253 2019-06-03 15:43:00.340,113.4259,7925.9902,12.6852,4.9671,0.6919,0.2118,2340.0,2340.0,-0.4775,-0.3043,4.8443,88.9253 2019-06-03 15:43:00.360,113.4128,7926.9106,12.6799,4.9875,1.1571,0.1019,2340.0,2340.0,-0.4892,-0.3012,4.8416,88.9345 2019-06-03 15:43:00.380,113.3337,7928.1382,12.6799,4.9875,0.7629,0.2798,2340.0,2340.0,-0.4863,-0.3043,4.835,88.9345 2019-06-03 15:43:00.400,113.3469,7928.9751,12.6639,5.0072,0.9493,0.3079,2400.0,2340.0,-0.4834,-0.3378,4.8376,88.942 2019-06-03 15:43:00.420,113.3469,7929.8398,12.6515,5.0114,0.9974,0.0314,2400.0,2340.0,-0.4746,-0.3408,4.831,88.9446 2019-06-03 15:43:00.440,113.4259,7931.1514,12.6515,5.0114,1.0473,0.3353,2400.0,2340.0,-0.4658,-0.3774,4.8522,88.9446 2019-06-03 15:43:00.460,113.4391,7931.4023,12.6515,5.0114,0.6113,0.034,2400.0,2340.0,-0.4775,-0.4625,4.8443,88.9446 2019-06-03 15:43:00.480,113.3337,7931.5698,12.6455,5.0278,1.3154,0.2793,2400.0,2340.0,-0.4834,-0.5506,4.839,88.9529 2019-06-03 15:43:00.500,113.3601,7932.4346,12.6398,5.0485,1.2903,0.2712,2400.0,2340.0,-0.4921,-0.5962,4.8403,88.9621 2019-06-03 15:43:00.520,113.3337,7933.3276,12.6398,5.0485,0.5625,0.1524,2400.0,2340.0,-0.4892,-0.6144,4.8376,88.9621 2019-06-03 15:43:00.540,113.4259,7934.7231,12.6398,5.0485,1.2718,0.1532,2400.0,2340.0,-0.4921,-0.6659,4.8482,88.9621 2019-06-03 15:43:00.560,113.4259,7935.6436,12.621,5.0555,0.5528,0.2605,2400.0,2340.0,-0.4951,-0.672,4.8403,88.9682 2019-06-03 15:43:00.580,113.3469,7937.0391,12.608,5.0622,1.3095,0.0371,2400.0,2340.0,-0.498,-0.6599,4.8284,88.9734 2019-06-03 15:43:00.600,113.3469,7937.9316,12.6068,5.0692,1.1838,0.0481,2400.0,2340.0,-0.4921,-0.6629,4.8363,88.9782 2019-06-03 15:43:00.620,113.3601,7938.7969,12.6041,5.0749,0.7574,0.3728,2400.0,2340.0,-0.4921,-0.6659,4.8284,88.9835 2019-06-03 15:43:00.640,113.4128,7940.1362,12.6041,5.0749,0.9889,-0.0675,2400.0,2340.0,-0.4892,-0.6599,4.8496,88.9835 2019-06-03 15:43:00.660,113.4259,7940.3872,12.6041,5.0749,1.031,0.3704,2400.0,2340.0,-0.498,-0.6629,4.8535,88.9835 2019-06-03 15:43:00.680,113.3601,7940.3872,12.591,5.0769,0.7562,-0.0285,2400.0,2340.0,-0.5068,-0.6629,4.8509,88.99 2019-06-03 15:43:00.700,113.3469,7940.3037,12.5741,5.0728,0.6549,0.0461,2400.0,2340.0,-0.5009,-0.6599,4.8628,88.9966 2019-06-03 15:43:00.720,113.2941,7940.3315,12.5741,5.0728,1.2474,0.3046,2400.0,2340.0,-0.498,-0.6599,4.8562,88.9966 2019-06-03 15:43:00.740,113.2281,7940.3037,12.5741,5.0728,0.5965,0.0821,2400.0,2340.0,-0.4892,-0.6659,4.8509,88.9966 2019-06-03 15:43:00.760,113.2149,7940.3594,12.5661,5.0747,1.4168,0.1852,2400.0,2340.0,-0.4951,-0.6538,4.8482,89.0053 2019-06-03 15:43:00.780,113.1356,7940.4155,12.5661,5.0747,0.4977,0.2165,2400.0,2340.0,-0.4951,-0.6538,4.839,89.0053 2019-06-03 15:43:00.800,113.1356,7940.4434,12.5451,5.0623,0.5503,0.2954,2400.0,2340.0,-0.498,-0.6568,4.8509,89.0128 2019-06-03 15:43:00.820,113.1489,7940.4155,12.5374,5.0583,1.2773,0.0404,2400.0,2340.0,-0.5038,-0.6508,4.8588,89.0158 2019-06-03 15:43:00.840,113.2281,7940.4434,12.5374,5.0583,0.6893,0.3626,2400.0,2340.0,-0.5068,-0.6508,4.8615,89.0158 2019-06-03 15:43:00.860,113.2281,7940.4712,12.5374,5.0583,1.1804,-0.077,2400.0,2340.0,-0.5038,-0.6508,4.8747,89.0158 2019-06-03 15:43:00.880,113.1356,7940.5547,12.5224,5.0464,0.9541,0.4008,2400.0,2340.0,-0.5009,-0.6083,4.8668,89.0237 2019-06-03 15:43:00.900,113.1489,7941.4478,12.5177,5.0436,0.9907,0.4304,2400.0,2340.0,-0.4951,-0.6113,4.8721,89.0359 2019-06-03 15:43:00.920,113.0827,7942.313,12.5177,5.0436,0.7374,-0.0493,2400.0,2340.0,-0.4951,-0.6083,4.8734,89.0359 2019-06-03 15:43:00.940,113.0165,7943.625,12.5177,5.0436,1.1612,0.3859,2400.0,2340.0,-0.498,-0.5871,4.8655,89.0359 2019-06-03 15:43:00.960,113.0033,7944.4902,12.5,5.0316,0.5203,-0.007,2400.0,2340.0,-0.4951,-0.581,4.8628,89.0447 2019-06-03 15:43:00.980,112.9238,7945.8301,12.5,5.0316,1.3572,0.2726,2400.0,2340.0,-0.4921,-0.581,4.8535,89.0447 2019-06-03 15:43:01.000,112.9238,7946.667,12.4838,5.0154,1.379,0.2101,2400.0,2340.0,-0.4804,-0.5719,4.8602,89.0635 2019-06-03 15:43:01.020,112.9238,7947.4766,12.4712,5.0014,0.5454,0.2219,2400.0,2340.0,-0.4688,-0.5719,4.8707,89.067 2019-06-03 15:43:01.040,112.9901,7948.8442,12.4712,5.0014,1.3827,0.0976,2400.0,2340.0,-0.4688,-0.5658,4.8641,89.067 2019-06-03 15:43:01.060,113.0033,7949.0396,12.4712,5.0014,0.6046,0.3059,2400.0,2340.0,-0.4717,-0.5658,4.8747,89.067 2019-06-03 15:43:01.080,112.9105,7949.0674,12.4623,4.9952,1.2574,-0.0034,2400.0,2340.0,-0.4804,-0.5355,4.8628,89.081 2019-06-03 15:43:01.100,112.937,7948.9839,12.4384,4.9782,1.1727,-0.0625,2400.0,2340.0,-0.4717,-0.5415,4.8734,89.0941 2019-06-03 15:43:01.120,112.9105,7949.0117,12.4384,4.9782,0.7821,0.4143,2400.0,2340.0,-0.4688,-0.5446,4.8721,89.0941 2019-06-03 15:43:01.140,113.0165,7949.0117,12.4384,4.9782,1.1165,-0.0515,2400.0,2340.0,-0.4541,-0.5446,4.8655,89.0941 2019-06-03 15:43:01.160,113.0033,7949.0674,12.4198,4.963,1.0795,0.4028,2400.0,2340.0,-0.4629,-0.5415,4.8668,89.1098 2019-06-03 15:43:01.180,112.9105,7949.0952,12.4198,4.963,0.7204,-0.0286,2400.0,2340.0,-0.4629,-0.5385,4.8681,89.1098 2019-06-03 15:43:01.200,112.937,7949.0952,12.3939,4.9411,0.7311,-0.0216,2400.0,2340.0,-0.4658,-0.5415,4.8707,89.1325 2019-06-03 15:43:01.220,112.9238,7949.123,12.3956,4.9395,1.1616,0.3046,2400.0,2340.0,-0.4717,-0.5385,4.8813,89.143 2019-06-03 15:43:01.240,113.0033,7949.0952,12.3956,4.9395,0.6664,0.1271,2400.0,2340.0,-0.4658,-0.5385,4.8694,89.143 2019-06-03 15:43:01.260,113.0033,7949.0952,12.3956,4.9395,1.3069,0.1837,2400.0,2340.0,-0.46,-0.5385,4.8774,89.143 2019-06-03 15:43:01.280,112.9238,7949.123,12.3731,4.9231,0.4988,0.2341,2400.0,2340.0,-0.4629,-0.5385,4.8721,89.161 2019-06-03 15:43:01.300,112.937,7949.0396,12.3605,4.9093,0.6619,0.2604,2400.0,2340.0,-0.4571,-0.5355,4.8853,89.1806 2019-06-03 15:43:01.320,112.884,7949.0396,12.3605,4.9093,1.2825,0.0201,2400.0,2340.0,-0.46,-0.5355,4.888,89.1806 2019-06-03 15:43:01.340,112.8043,7949.0674,12.3605,4.9093,0.7999,0.3349,2400.0,2340.0,-0.4688,-0.5203,4.8853,89.1806 2019-06-03 15:43:01.360,112.8043,7949.123,12.3512,4.8979,1.0713,0.006,2400.0,2340.0,-0.4658,-0.5142,4.8893,89.202 2019-06-03 15:43:01.380,112.7246,7949.0952,12.3512,4.8979,0.8831,0.3994,2400.0,2340.0,-0.46,-0.4412,4.9025,89.202 2019-06-03 15:43:01.400,112.7246,7949.123,12.3238,4.8794,0.9182,0.3628,2340.0,2400.0,-0.46,-0.4412,4.9118,89.2344 2019-06-03 15:43:01.420,112.7512,7949.0952,12.3074,4.8659,0.9038,-0.0257,2340.0,2400.0,-0.46,-0.4108,4.9224,89.2445 2019-06-03 15:43:01.440,112.791,7949.0674,12.3074,4.8659,1.0887,0.3232,2340.0,2400.0,-0.4658,-0.35,4.9118,89.2445 2019-06-03 15:43:01.460,112.8176,7949.0674,12.3074,4.8659,0.7544,0.0727,2340.0,2400.0,-0.46,-0.3043,4.9237,89.2445 2019-06-03 15:43:01.480,112.7113,7949.2627,12.2988,4.862,1.1468,0.257,2340.0,2400.0,-0.46,-0.2494,4.9317,89.2711 2019-06-03 15:43:01.500,112.7246,7950.1841,12.2827,4.853,1.1812,0.1997,2340.0,2400.0,-0.4571,-0.2342,4.9409,89.2973 2019-06-03 15:43:01.520,112.6713,7951.0215,12.2827,4.853,0.7648,0.1657,2340.0,2400.0,-0.4629,-0.2372,4.9542,89.2973 2019-06-03 15:43:01.540,112.6048,7952.3896,12.2827,4.853,1.2699,0.1169,2340.0,2400.0,-0.4629,-0.2098,4.9634,89.2973 2019-06-03 15:43:01.560,112.5781,7953.3105,12.2611,4.8429,0.7722,0.286,2340.0,2400.0,-0.46,-0.1762,4.9687,89.3223 2019-06-03 15:43:01.580,112.5114,7954.5947,12.2475,4.8397,1.1216,0.088,2340.0,2400.0,-0.4571,-0.161,4.9939,89.3502 2019-06-03 15:43:01.600,112.5114,7955.5161,12.2401,4.8402,1.0577,0.043,2340.0,2400.0,-0.4541,-0.1488,4.9979,89.3642 2019-06-03 15:43:01.620,112.5114,7956.3813,12.2386,4.8413,0.8417,0.2983,2340.0,2400.0,-0.4512,-0.1518,5.0137,89.3791 2019-06-03 15:43:01.640,112.5914,7957.8052,12.2386,4.8413,0.9855,0.0024,2340.0,2400.0,-0.4571,-0.1274,5.0243,89.3791 2019-06-03 15:43:01.660,112.6048,7958.0283,12.2386,4.8413,1.061,0.3466,2340.0,2400.0,-0.46,-0.1213,5.0336,89.3791 2019-06-03 15:43:01.680,112.5114,7958.0005,12.2214,4.8415,0.8594,0.0979,2340.0,2400.0,-0.4688,-0.1152,5.0429,89.4088 2019-06-03 15:43:01.700,112.5248,7957.8892,12.2071,4.8422,0.9079,0.0855,2340.0,2400.0,-0.4688,-0.0602,5.0442,89.4381 2019-06-03 15:43:01.720,112.4981,7957.833,12.2071,4.8422,1.0684,0.2466,2340.0,2400.0,-0.4629,-0.051,5.0508,89.4381 2019-06-03 15:43:01.740,112.5914,7957.8608,12.2071,4.8422,0.7392,0.1229,2340.0,2400.0,-0.4512,-0.0327,5.0561,89.4381 2019-06-03 15:43:01.760,112.5781,7957.9727,12.201,4.8526,1.1889,0.1677,2340.0,2400.0,-0.4424,-0.0235,5.0707,89.47 2019-06-03 15:43:01.780,112.5114,7958.0005,12.1945,4.8661,0.7344,0.2405,2340.0,2400.0,-0.4424,0.004,5.0799,89.5032 2019-06-03 15:43:01.800,112.5114,7957.9727,12.1869,4.8731,0.8968,0.2366,2340.0,2400.0,-0.4454,0.0163,5.0773,89.5181 2019-06-03 15:43:01.820,112.5381,7957.917,12.1828,4.8804,1.1172,0.0942,2340.0,2400.0,-0.4541,0.0132,5.0693,89.5347 2019-06-03 15:43:01.840,112.5914,7957.7773,12.1828,4.8804,0.8306,0.2837,2340.0,2400.0,-0.4629,0.0346,5.0746,89.5347 2019-06-03 15:43:01.860,112.6181,7957.7495,12.1828,4.8804,0.9989,0.0653,2340.0,2400.0,-0.4571,0.0377,5.0773,89.5347 2019-06-03 15:43:01.880,112.5114,7957.8892,12.1753,4.9016,0.9338,0.2846,2340.0,2400.0,-0.4571,0.0377,5.0905,89.5675 2019-06-03 15:43:01.900,112.5114,7958.6987,12.1735,4.9281,0.9737,0.2701,2340.0,2400.0,-0.4629,0.0377,5.0866,89.6025 2019-06-03 15:43:01.920,112.4581,7959.5361,12.1735,4.9281,0.879,0.0957,2340.0,2400.0,-0.46,0.0438,5.0892,89.6025 2019-06-03 15:43:01.940,112.3913,7960.8208,12.1735,4.9281,1.0547,0.2438,2340.0,2400.0,-0.4571,0.0407,5.0932,89.6025 2019-06-03 15:43:01.960,112.3646,7961.7422,12.1669,4.9549,0.8424,0.1253,2340.0,2400.0,-0.4424,0.0346,5.0998,89.637 2019-06-03 15:43:01.980,112.2977,7962.9707,12.165,4.9867,1.0458,0.1824,2340.0,2400.0,-0.4366,0.0377,5.1051,89.6785 2019-06-03 15:43:02.000,112.3111,7963.8643,12.1669,5.0069,1.0347,0.1453,2340.0,2400.0,-0.4395,0.0407,5.1077,89.6978 2019-06-03 15:43:02.020,112.3111,7964.7578,12.1663,5.0265,0.9463,0.2299,2340.0,2400.0,-0.46,0.0377,5.1024,89.7157 2019-06-03 15:43:02.040,112.3913,7966.0981,12.1663,5.0265,0.9756,0.125,2340.0,2400.0,-0.4629,0.0377,5.1077,89.7157 2019-06-03 15:43:02.060,112.4046,7966.4053,12.1663,5.0265,0.9778,0.216,2340.0,2400.0,-0.4658,0.0377,5.1144,89.7157 2019-06-03 15:43:02.080,112.2977,7966.3774,12.1643,5.0652,0.97,0.0916,2340.0,2400.0,-0.4629,0.0346,5.117,89.7533 2019-06-03 15:43:02.100,112.3244,7966.2378,12.1602,5.1036,0.9423,0.0973,2340.0,2400.0,-0.46,0.0377,5.113,89.7896 2019-06-03 15:43:02.120,112.2977,7966.1816,12.1602,5.1036,1.0987,0.261,2340.0,2400.0,-0.4512,0.0346,5.121,89.7896 2019-06-03 15:43:02.140,112.3913,7966.1816,12.1602,5.1036,0.784,0.1555,2340.0,2400.0,-0.4571,0.0316,5.1223,89.7896 2019-06-03 15:43:02.160,112.3779,7966.2378,12.1624,5.1505,1.1202,0.1648,2340.0,2400.0,-0.4512,0.0316,5.1395,89.8271 2019-06-03 15:43:02.180,112.2977,7966.2656,12.1624,5.1505,0.8335,0.1727,2340.0,2400.0,-0.46,0.0316,5.1369,89.8271 2019-06-03 15:43:02.200,112.2977,7966.2935,12.1645,5.2223,0.8454,0.1979,2340.0,2400.0,-0.46,0.0407,5.1223,89.8875 2019-06-03 15:43:02.220,112.3244,7966.2656,12.1658,5.2479,1.0769,0.1307,2340.0,2400.0,-0.4541,0.0438,5.1342,89.9071 2019-06-03 15:43:02.240,112.4046,7966.21,12.1658,5.2479,0.8746,0.2741,2340.0,2400.0,-0.4541,0.0407,5.1528,89.9071 2019-06-03 15:43:02.260,112.3913,7966.126,12.1658,5.2479,0.9892,0.0723,2340.0,2400.0,-0.4512,0.0407,5.1594,89.9071 2019-06-03 15:43:02.280,112.2977,7966.3213,12.1672,5.2956,1.1712,0.2652,2340.0,2400.0,-0.4512,0.0377,5.162,89.9434 2019-06-03 15:43:02.300,112.3111,7967.187,12.1748,5.3503,1.0281,0.2677,2340.0,2400.0,-0.4571,0.0469,5.1554,89.9823 2019-06-03 15:43:02.320,112.2843,7968.1089,12.1748,5.3503,0.8705,0.0963,2340.0,2400.0,-0.4541,0.0438,5.1594,89.9823 2019-06-03 15:43:02.340,112.3913,7969.561,12.1748,5.3503,1.1571,0.2278,2340.0,2400.0,-0.4629,0.0438,5.1647,89.9823 2019-06-03 15:43:02.360,112.3913,7970.5107,12.1782,5.3998,0.7156,0.139,2340.0,2400.0,-0.4571,0.0469,5.1859,90.0199 2019-06-03 15:43:02.380,112.3111,7971.9072,12.1782,5.3998,1.2559,0.168,2340.0,2400.0,-0.4571,0.0469,5.1951,90.0199 2019-06-03 15:43:02.400,112.3111,7972.8286,12.187,5.4836,1.1205,0.1482,2400.0,2340.0,-0.4541,0.0469,5.1898,90.0798 2019-06-03 15:43:02.420,112.3111,7973.7505,12.1892,5.5108,0.7415,0.2354,2400.0,2340.0,-0.4454,0.0469,5.1925,90.0982 2019-06-03 15:43:02.440,112.3913,7975.147,12.1892,5.5108,1.1601,0.077,2400.0,2340.0,-0.4541,0.0377,5.2097,90.0982 2019-06-03 15:43:02.460,112.4046,7975.4263,12.1892,5.5108,0.9197,0.3113,2400.0,2340.0,-0.4629,0.0407,5.2084,90.0982 2019-06-03 15:43:02.480,112.2977,7975.3979,12.198,5.5667,0.9652,0.0131,2400.0,2340.0,-0.4717,0.0407,5.2137,90.1336 2019-06-03 15:43:02.500,112.3111,7975.2866,12.2007,5.6171,0.9038,0.0317,2400.0,2340.0,-0.4717,0.0377,5.2163,90.1668 2019-06-03 15:43:02.520,112.3111,7975.2583,12.2007,5.6171,1.1486,0.3262,2400.0,2340.0,-0.4629,0.0438,5.215,90.1668 2019-06-03 15:43:02.540,112.3913,7975.2866,12.2007,5.6171,0.7204,0.0531,2400.0,2340.0,-0.4571,0.0377,5.2256,90.1668 2019-06-03 15:43:02.560,112.3779,7975.3423,12.211,5.6746,1.3091,0.2877,2400.0,2340.0,-0.4483,0.0438,5.2296,90.2022 2019-06-03 15:43:02.580,112.2977,7975.3145,12.211,5.6746,0.5898,0.1236,2400.0,2340.0,-0.4454,0.0407,5.2322,90.2022 2019-06-03 15:43:02.600,112.2977,7975.3701,12.2233,5.7623,0.6586,0.1811,2400.0,2340.0,-0.4483,0.0377,5.2348,90.2555 2019-06-03 15:43:02.620,112.2977,7975.3701,12.231,5.7969,1.3861,0.1451,2400.0,2340.0,-0.4483,0.0377,5.2375,90.2726 2019-06-03 15:43:02.640,112.3779,7975.3979,12.231,5.7969,0.6361,0.2783,2400.0,2340.0,-0.4512,0.0377,5.2468,90.2726 2019-06-03 15:43:02.660,112.3913,7975.3979,12.231,5.7969,1.328,0.0573,2400.0,2340.0,-0.4658,0.0377,5.2441,90.2726 2019-06-03 15:43:02.680,112.2977,7975.5659,12.2374,5.8498,0.7966,0.3594,2400.0,2340.0,-0.4658,0.0346,5.2454,90.3027 2019-06-03 15:43:02.700,112.3111,7976.4316,12.2568,5.9138,0.8535,0.3949,2400.0,2340.0,-0.4629,0.0316,5.2454,90.3355 2019-06-03 15:43:02.720,112.2575,7977.2695,12.2568,5.9138,1.1102,-0.053,2400.0,2340.0,-0.4395,0.056,5.2507,90.3355 2019-06-03 15:43:02.740,112.1637,7978.6387,12.2568,5.9138,0.9393,0.4094,2400.0,2340.0,-0.4337,0.0469,5.2693,90.3355 2019-06-03 15:43:02.760,112.1637,7979.5327,12.2723,5.9758,0.8861,0.0012,2400.0,2340.0,-0.4308,0.0469,5.2587,90.3661 2019-06-03 15:43:02.780,112.0833,7980.8452,12.2723,5.9758,1.2097,0.3632,2400.0,2340.0,-0.4366,0.0469,5.2587,90.3661 2019-06-03 15:43:02.800,112.0833,7981.7114,12.2947,6.0679,1.1956,0.3384,2400.0,2340.0,-0.4483,0.0438,5.264,90.412 2019-06-03 15:43:02.820,112.0967,7982.5493,12.2922,6.0921,0.6708,0.0891,2400.0,2340.0,-0.4541,0.0407,5.2706,90.4243 2019-06-03 15:43:02.840,112.1772,7983.8345,12.2922,6.0921,1.406,0.2406,2400.0,2340.0,-0.46,0.0438,5.2785,90.4243 2019-06-03 15:43:02.860,112.1772,7984.0859,12.2922,6.0921,0.5484,0.1957,2400.0,2340.0,-0.4454,0.0469,5.2799,90.4243 2019-06-03 15:43:02.880,112.0967,7984.0581,12.3144,6.1595,1.3716,0.1132,2400.0,2340.0,-0.4541,0.0438,5.2587,90.4549 2019-06-03 15:43:02.900,112.0833,7984.002,12.3272,6.2191,1.2733,0.0662,2400.0,2340.0,-0.4366,0.0438,5.2825,90.4833 2019-06-03 15:43:02.920,112.0967,7983.9463,12.3272,6.2191,0.7096,0.3366,2400.0,2340.0,-0.4366,0.0469,5.2785,90.4833 2019-06-03 15:43:02.940,112.1772,7983.8901,12.3272,6.2191,1.2551,-0.0026,2400.0,2340.0,-0.4395,0.0438,5.2958,90.4833 2019-06-03 15:43:02.960,112.1637,7983.918,12.3368,6.2738,0.8531,0.3899,2400.0,2340.0,-0.4541,0.0407,5.2785,90.5099 2019-06-03 15:43:02.980,112.0967,7983.9463,12.3368,6.2738,0.9985,-0.0218,2400.0,2340.0,-0.4483,0.0499,5.2785,90.5099 2019-06-03 15:43:03.000,112.0967,7983.9741,12.3641,6.3701,0.9352,-0.0092,2400.0,2340.0,-0.4541,0.0407,5.2838,90.562 2019-06-03 15:43:03.020,112.0967,7983.9741,12.3798,6.4065,1.1268,0.3742,2400.0,2340.0,-0.4424,0.0469,5.2891,90.5786 2019-06-03 15:43:03.040,112.1772,7983.9741,12.3798,6.4065,0.7281,0.0227,2400.0,2340.0,-0.4483,0.0438,5.2958,90.5786 2019-06-03 15:43:03.060,112.1772,7983.9463,12.3798,6.4065,1.2944,0.296,2400.0,2340.0,-0.4512,0.0407,5.2891,90.5786 2019-06-03 15:43:03.080,112.0833,7984.1138,12.3879,6.4592,0.6934,0.1394,2400.0,2340.0,-0.4483,0.0469,5.2865,90.6035 2019-06-03 15:43:03.100,112.1101,7985.0356,12.4051,6.5167,0.6475,0.1928,2400.0,2340.0,-0.4483,0.0285,5.2931,90.6302 2019-06-03 15:43:03.120,112.0833,7985.9297,12.4051,6.5167,1.3132,0.1398,2400.0,2340.0,-0.4424,0.0316,5.2971,90.6302 2019-06-03 15:43:03.140,112.1772,7987.2988,12.4051,6.5167,0.7004,0.2921,2400.0,2340.0,-0.4483,0.0316,5.305,90.6302 2019-06-03 15:43:03.160,112.1637,7988.249,12.4279,6.5821,1.277,0.0151,2400.0,2340.0,-0.4571,0.0316,5.2944,90.6586 2019-06-03 15:43:03.180,112.0967,7989.6182,12.4279,6.5821,0.9045,0.3815,2400.0,2340.0,-0.4512,0.0346,5.2878,90.6586 2019-06-03 15:43:03.200,112.0833,7990.54,12.4519,6.6673,0.8731,0.3924,2400.0,2340.0,-0.4512,0.0346,5.301,90.701 2019-06-03 15:43:03.220,112.0967,7991.4624,12.4512,6.6921,1.0858,0.0084,2400.0,2340.0,-0.4483,0.0316,5.2971,90.7119 2019-06-03 15:43:03.240,112.1637,7992.8594,12.4512,6.6921,1.0521,0.3649,2400.0,2340.0,-0.4395,0.0377,5.3103,90.7119 2019-06-03 15:43:03.260,112.1906,7993.0825,12.4512,6.6921,0.8328,0.0298,2400.0,2340.0,-0.4483,0.0377,5.2984,90.7119 2019-06-03 15:43:03.280,112.0967,7993.1108,12.4728,6.7486,1.2237,0.3167,2400.0,2340.0,-0.4454,0.0346,5.2984,90.739 2019-06-03 15:43:03.300,112.0833,7993.0547,12.4932,6.8085,1.1849,0.2906,2400.0,2340.0,-0.4512,0.0346,5.3037,90.7661 2019-06-03 15:43:03.320,112.0833,7993.0547,12.4932,6.8085,0.7544,0.1376,2400.0,2340.0,-0.4512,0.0377,5.3063,90.7661 2019-06-03 15:43:03.340,112.1637,7993.1108,12.4932,6.8085,1.277,0.1902,2400.0,2340.0,-0.4541,0.0346,5.3063,90.7661 2019-06-03 15:43:03.360,112.1503,7993.1108,12.5021,6.86,0.7008,0.2331,2400.0,2340.0,-0.4571,0.0377,5.3063,90.7902 2019-06-03 15:43:03.380,112.0833,7993.1387,12.5161,6.916,1.2441,0.0876,2400.0,2340.0,-0.4571,0.0346,5.301,90.819 2019-06-03 15:43:03.400,112.0833,7993.1665,12.5286,6.9441,1.129,0.0844,2340.0,2340.0,-0.4541,0.0285,5.309,90.8321 2019-06-03 15:43:03.420,112.0967,7993.1665,12.5407,6.9725,0.8657,0.3165,2340.0,2340.0,-0.4512,0.0193,5.2984,90.8465 2019-06-03 15:43:03.440,112.1637,7993.1387,12.5407,6.9725,1.0946,0.0502,2340.0,2340.0,-0.4483,0.0224,5.2997,90.8465 2019-06-03 15:43:03.460,112.1772,7993.1108,12.5407,6.9725,1.0421,0.357,2340.0,2340.0,-0.4483,0.001,5.2984,90.8465 2019-06-03 15:43:03.480,112.0833,7993.3062,12.5545,7.0262,0.9419,0.036,2340.0,2340.0,-0.4366,-0.0021,5.301,90.8732 2019-06-03 15:43:03.500,112.0833,7994.1167,12.5671,7.078,0.9519,0.0621,2340.0,2340.0,-0.4483,-0.103,5.301,90.8994 2019-06-03 15:43:03.520,112.043,7994.9829,12.5671,7.078,1.085,0.2908,2340.0,2340.0,-0.4512,-0.1304,5.2944,90.8994 2019-06-03 15:43:03.540,111.9758,7996.2686,12.5671,7.078,0.8838,0.1207,2340.0,2340.0,-0.4483,-0.1976,5.2891,90.8994 2019-06-03 15:43:03.560,111.9624,7997.1353,12.585,7.1342,1.2156,0.226,2340.0,2340.0,-0.4483,-0.2982,5.2891,90.9283 2019-06-03 15:43:03.580,111.8817,7998.4204,12.585,7.1342,0.8898,0.1863,2340.0,2340.0,-0.4454,-0.3469,5.2785,90.9283 2019-06-03 15:43:03.600,111.8682,7999.3428,12.6057,7.2089,0.973,0.219,2340.0,2340.0,-0.4454,-0.423,5.2891,90.9742 2019-06-03 15:43:03.620,111.8951,8000.1812,12.6117,7.2302,1.0562,0.1086,2340.0,2340.0,-0.4629,-0.4777,5.264,90.9882 2019-06-03 15:43:03.640,111.9624,8001.4668,12.6117,7.2302,1.0192,0.2841,2340.0,2340.0,-0.4512,-0.5294,5.2706,90.9882 2019-06-03 15:43:03.660,111.9624,8001.6626,12.6117,7.2302,0.9719,0.1067,2340.0,2340.0,-0.46,-0.5931,5.2746,90.9882 2019-06-03 15:43:03.680,111.8817,8001.6343,12.6265,7.2727,1.0983,0.2685,2340.0,2340.0,-0.4512,-0.6113,5.2693,91.0179 2019-06-03 15:43:03.700,111.8817,8001.5786,12.6401,7.3085,1.1224,0.2683,2340.0,2340.0,-0.4571,-0.6265,5.2746,91.0485 2019-06-03 15:43:03.720,111.8682,8001.6064,12.6401,7.3085,0.9175,0.1269,2340.0,2340.0,-0.4571,-0.6417,5.2759,91.0485 2019-06-03 15:43:03.740,111.9893,8001.6064,12.6401,7.3085,1.2012,0.2533,2340.0,2340.0,-0.4512,-0.6417,5.2587,91.0485 2019-06-03 15:43:03.760,111.9489,8001.6626,12.6485,7.3378,0.8923,0.1781,2340.0,2340.0,-0.4571,-0.6629,5.26,91.0778 2019-06-03 15:43:03.780,111.8951,8001.6626,12.6569,7.3598,1.1098,0.15,2340.0,2340.0,-0.4366,-0.6599,5.2693,91.1119 2019-06-03 15:43:03.800,111.8817,8001.7183,12.6641,7.3704,1.0554,0.1219,2340.0,2340.0,-0.4512,-0.6659,5.2759,91.1272 2019-06-03 15:43:03.820,111.8817,8001.6904,12.669,7.3781,1.0366,0.2577,2340.0,2340.0,-0.4658,-0.669,5.2719,91.1425 2019-06-03 15:43:03.840,111.9758,8001.7461,12.669,7.3781,1.0366,0.0941,2340.0,2340.0,-0.4717,-0.669,5.2574,91.1425 2019-06-03 15:43:03.860,111.9758,8001.7461,12.669,7.3781,1.1194,0.2861,2340.0,2340.0,-0.4804,-0.675,5.2732,91.1425 2019-06-03 15:43:03.880,111.8817,8001.7461,12.6771,7.3905,0.8017,0.1172,2340.0,2340.0,-0.4746,-0.669,5.2693,91.1744 2019-06-03 15:43:03.900,111.8951,8001.6626,12.6786,7.3961,0.8006,0.1272,2340.0,2340.0,-0.4717,-0.6659,5.2653,91.2054 2019-06-03 15:43:03.920,111.8548,8001.6626,12.6786,7.3961,1.2122,0.2171,2340.0,2340.0,-0.4746,-0.675,5.2653,91.2054 2019-06-03 15:43:03.940,111.747,8001.6904,12.6786,7.3961,0.8258,0.1829,2340.0,2340.0,-0.4658,-0.672,5.2613,91.2054 2019-06-03 15:43:03.960,111.7335,8001.7744,12.6869,7.4047,1.254,0.162,2340.0,2340.0,-0.4775,-0.6963,5.2759,91.2391 2019-06-03 15:43:03.980,111.666,8001.8022,12.6869,7.4047,0.7185,0.2601,2340.0,2340.0,-0.4775,-0.6963,5.2693,91.2391 2019-06-03 15:43:04.000,111.6525,8001.8579,12.6954,7.4008,0.9071,0.2787,2340.0,2340.0,-0.4834,-0.6932,5.2507,91.2933 2019-06-03 15:43:04.020,111.693,8001.8022,12.694,7.3956,1.098,0.0568,2340.0,2340.0,-0.5009,-0.7356,5.2547,91.309 2019-06-03 15:43:04.040,111.747,8001.7461,12.694,7.3956,0.9948,0.293,2340.0,2340.0,-0.4863,-0.7356,5.26,91.309 2019-06-03 15:43:04.060,111.7604,8001.7461,12.694,7.3956,0.9086,0.0776,2340.0,2340.0,-0.4951,-0.7932,5.2679,91.309 2019-06-03 15:43:04.080,111.6795,8001.9419,12.6988,7.3894,1.179,0.3084,2340.0,2340.0,-0.4892,-0.7901,5.2613,91.344 2019-06-03 15:43:04.100,111.6795,8002.7808,12.7039,7.3833,1.3032,0.2979,2340.0,2340.0,-0.4863,-0.7871,5.2454,91.379 2019-06-03 15:43:04.120,111.6525,8003.6191,12.7039,7.3833,0.717,0.101,2340.0,2340.0,-0.498,-0.8325,5.2574,91.379 2019-06-03 15:43:04.140,111.7604,8004.9609,12.7039,7.3833,1.2644,0.2436,2340.0,2340.0,-0.5009,-0.8386,5.256,91.379 2019-06-03 15:43:04.160,111.747,8005.8276,12.7009,7.3644,0.6028,0.174,2340.0,2340.0,-0.5068,-0.8567,5.2653,91.4126 2019-06-03 15:43:04.180,111.666,8007.1973,12.7009,7.3644,1.4441,0.1845,2340.0,2340.0,-0.5009,-0.8567,5.264,91.4126 2019-06-03 15:43:04.200,111.6795,8008.1196,12.7044,7.3379,1.3676,0.1239,2340.0,2340.0,-0.5126,-0.8567,5.2388,91.4673 2019-06-03 15:43:04.220,111.666,8009.042,12.7038,7.3267,0.7074,0.3099,2340.0,2340.0,-0.5126,-0.8779,5.2574,91.4852 2019-06-03 15:43:04.240,111.747,8010.4395,12.7038,7.3267,1.2071,0.0028,2340.0,2340.0,-0.5126,-0.8748,5.2547,91.4852 2019-06-03 15:43:04.260,111.7604,8010.6631,12.7038,7.3267,0.9441,0.3574,2340.0,2340.0,-0.5155,-0.8809,5.2785,91.4852 2019-06-03 15:43:04.280,111.666,8010.6631,12.7052,7.301,1.0022,0.0082,2340.0,2340.0,-0.5243,-0.8718,5.2732,91.5223 2019-06-03 15:43:04.300,111.666,8010.5234,12.6979,7.268,1.0151,0.0012,2340.0,2340.0,-0.5155,-0.8718,5.2507,91.5573 2019-06-03 15:43:04.320,111.612,8010.5513,12.6979,7.268,1.2378,0.3826,2340.0,2340.0,-0.5155,-0.8779,5.2574,91.5573 2019-06-03 15:43:04.340,111.5444,8010.5513,12.6979,7.268,0.7847,0.0314,2340.0,2340.0,-0.5038,-0.8748,5.26,91.5573 2019-06-03 15:43:04.360,111.5309,8010.5796,12.6967,7.2367,1.2951,0.338,2340.0,2340.0,-0.5097,-0.8718,5.2627,91.5949 2019-06-03 15:43:04.380,111.4632,8010.6353,12.6967,7.2367,0.5384,0.0892,2340.0,2340.0,-0.5184,-0.8748,5.2653,91.5949 2019-06-03 15:43:04.400,111.4497,8010.5796,12.6932,7.1817,0.6941,0.1392,2400.0,2340.0,-0.5184,-0.8718,5.2468,91.65 2019-06-03 15:43:04.420,111.4632,8010.5513,12.6974,7.1662,1.3495,0.2299,2400.0,2340.0,-0.5214,-0.8748,5.2627,91.6705 2019-06-03 15:43:04.440,111.5444,8010.5513,12.6974,7.1662,0.5772,0.2228,2400.0,2340.0,-0.5097,-0.8748,5.2521,91.6705 2019-06-03 15:43:04.460,111.5444,8010.5796,12.6974,7.1662,1.5089,0.0857,2400.0,2340.0,-0.5097,-0.8748,5.264,91.6705 2019-06-03 15:43:04.480,111.4497,8010.8032,12.6868,7.1203,0.6986,0.3346,2400.0,2340.0,-0.5155,-0.8779,5.2574,91.7081 2019-06-03 15:43:04.500,111.4632,8011.6978,12.6916,7.0845,0.8975,0.3741,2400.0,2340.0,-0.5038,-0.8779,5.2521,91.7514 2019-06-03 15:43:04.520,111.3955,8012.5366,12.6916,7.0845,1.1993,-0.0036,2400.0,2340.0,-0.5126,-0.8779,5.2534,91.7514 2019-06-03 15:43:04.540,111.3413,8013.8506,12.6916,7.0845,0.9068,0.4058,2400.0,2340.0,-0.5038,-0.8748,5.2653,91.7514 2019-06-03 15:43:04.560,111.3006,8014.8013,12.6923,7.0452,1.0114,-0.0585,2400.0,2340.0,-0.5097,-0.8779,5.256,91.7934 2019-06-03 15:43:04.580,111.2463,8016.1152,12.6923,7.0452,1.2041,0.4058,2400.0,2340.0,-0.5272,-0.8779,5.2547,91.7934 2019-06-03 15:43:04.600,111.2598,8016.9819,12.6863,6.9806,1.2122,0.3866,2400.0,2340.0,-0.5243,-0.8779,5.2441,91.8572 2019-06-03 15:43:04.620,111.2327,8017.877,12.6757,6.9519,0.7363,0.0351,2400.0,2340.0,-0.5243,-0.8809,5.2613,91.8773 2019-06-03 15:43:04.640,111.3277,8019.2188,12.6757,6.9519,1.3025,0.3148,2400.0,2340.0,-0.5097,-0.8809,5.2574,91.8773 2019-06-03 15:43:04.660,111.3413,8019.4424,12.6757,6.9519,0.5451,0.1025,2400.0,2340.0,-0.5126,-0.8809,5.2481,91.8773 2019-06-03 15:43:04.680,111.2327,8019.3867,12.678,6.9135,1.4201,0.1634,2400.0,2340.0,-0.5126,-0.8809,5.2587,91.9254 2019-06-03 15:43:04.700,111.2598,8019.3589,12.6736,6.867,1.3794,0.1181,2400.0,2340.0,-0.5126,-0.8779,5.2441,91.9708 2019-06-03 15:43:04.720,111.2327,8019.3306,12.6736,6.867,0.6849,0.3024,2400.0,2340.0,-0.5126,-0.8809,5.2574,91.9708 2019-06-03 15:43:04.740,111.3277,8019.3867,12.6736,6.867,1.2892,0.0436,2400.0,2340.0,-0.5184,-0.8779,5.2534,91.9708 2019-06-03 15:43:04.760,111.3277,8019.4424,12.6628,6.8126,0.7977,0.3604,2400.0,2340.0,-0.5184,-0.8779,5.2481,92.0154 2019-06-03 15:43:04.780,111.2463,8019.4985,12.6632,6.7722,1.1098,-0.0335,2400.0,2340.0,-0.5301,-0.8779,5.2481,92.0661 2019-06-03 15:43:04.800,111.2191,8019.5264,12.6566,6.7507,1.0606,-0.0459,2400.0,2340.0,-0.5184,-0.8809,5.2468,92.0897 2019-06-03 15:43:04.820,111.2598,8019.4985,12.6629,6.7345,1.0455,0.4109,2400.0,2340.0,-0.5126,-0.8809,5.2428,92.1169 2019-06-03 15:43:04.840,111.3277,8019.5264,12.6629,6.7345,0.8679,0.0056,2400.0,2340.0,-0.5184,-0.8809,5.2507,92.1169 2019-06-03 15:43:04.860,111.3277,8019.4985,12.6629,6.7345,1.301,0.3587,2400.0,2340.0,-0.5184,-0.8748,5.2415,92.1169 2019-06-03 15:43:04.880,111.2463,8019.666,12.6491,6.6893,0.7507,0.0564,2400.0,2340.0,-0.5331,-0.8839,5.2507,92.1645 2019-06-03 15:43:04.900,111.2598,8020.5889,12.6401,6.6457,0.7023,0.0603,2400.0,2340.0,-0.5155,-0.8839,5.2507,92.213 2019-06-03 15:43:04.920,111.1647,8021.4282,12.6401,6.6457,1.3628,0.2312,2400.0,2340.0,-0.5068,-0.8688,5.2468,92.213 2019-06-03 15:43:04.940,111.1376,8022.7983,12.6401,6.6457,0.6427,0.2107,2400.0,2340.0,-0.5068,-0.8779,5.2428,92.213 2019-06-03 15:43:04.960,111.1103,8023.7212,12.6428,6.6097,1.3387,0.1216,2400.0,2340.0,-0.5068,-0.8779,5.2296,92.2655 2019-06-03 15:43:04.980,111.0287,8025.0356,12.6428,6.6097,0.754,0.3263,2400.0,2340.0,-0.5126,-0.89,5.2401,92.2655 2019-06-03 15:43:05.000,111.0423,8025.9585,12.6299,6.5522,0.7485,0.3397,2400.0,2340.0,-0.5038,-0.8809,5.2481,92.3407 2019-06-03 15:43:05.020,111.0287,8026.8252,12.6216,6.5306,1.2156,-0.0268,2400.0,2340.0,-0.5068,-0.89,5.2375,92.3643 2019-06-03 15:43:05.040,111.1103,8028.1958,12.6216,6.5306,0.8543,0.3875,2400.0,2340.0,-0.5155,-0.8869,5.2441,92.3643 2019-06-03 15:43:05.060,111.1239,8028.3916,12.6216,6.5306,1.0569,0.0079,2400.0,2340.0,-0.5214,-0.8809,5.2269,92.3643 2019-06-03 15:43:05.080,111.0287,8028.4194,12.6168,6.4969,1.1154,0.3865,2400.0,2340.0,-0.5214,-0.9202,5.2388,92.4132 2019-06-03 15:43:05.100,111.0559,8028.2798,12.6157,6.466,1.0773,0.3547,2400.0,2340.0,-0.5126,-0.9111,5.2401,92.4631 2019-06-03 15:43:05.120,111.0014,8028.3076,12.6157,6.466,0.8565,0.0234,2400.0,2340.0,-0.5009,-0.9021,5.2441,92.4631 2019-06-03 15:43:05.140,110.906,8028.3076,12.6157,6.466,1.2137,0.2712,2400.0,2340.0,-0.5184,-0.9172,5.2415,92.4631 2019-06-03 15:43:05.160,110.8923,8028.3076,12.6047,6.4285,0.7481,0.1535,2400.0,2340.0,-0.5009,-0.9111,5.2362,92.5094 2019-06-03 15:43:05.180,110.8104,8028.3916,12.6047,6.4285,1.3003,0.2004,2400.0,2340.0,-0.5243,-0.9141,5.2348,92.5094 2019-06-03 15:43:05.200,110.8104,8028.4194,12.5958,6.3713,1.2085,0.1463,2400.0,2340.0,-0.5038,-0.9141,5.2481,92.5732 2019-06-03 15:43:05.220,110.8104,8028.3916,12.5927,6.353,0.8313,0.2303,2400.0,2340.0,-0.5155,-0.899,5.2415,92.5964 2019-06-03 15:43:05.240,110.906,8028.3633,12.5927,6.353,1.2426,0.0705,2400.0,2340.0,-0.5243,-0.9141,5.2481,92.5964 2019-06-03 15:43:05.260,110.9196,8028.3076,12.5927,6.353,0.858,0.3471,2400.0,2340.0,-0.5155,-0.9141,5.2375,92.5964 2019-06-03 15:43:05.280,110.8104,8028.4473,12.5896,6.317,0.9996,0.0646,2400.0,2340.0,-0.5243,-0.9111,5.2375,92.6414 2019-06-03 15:43:05.300,110.8241,8029.2866,12.5765,6.2742,1.031,0.068,2400.0,2340.0,-0.5214,-0.9141,5.2454,92.6821 2019-06-03 15:43:05.320,110.8104,8030.1255,12.5765,6.2742,0.9874,0.311,2400.0,2340.0,-0.5126,-0.9141,5.2375,92.6821 2019-06-03 15:43:05.340,110.8923,8031.4126,12.5765,6.2742,0.9478,0.0424,2400.0,2340.0,-0.5184,-0.9262,5.2441,92.6821 2019-06-03 15:43:05.360,110.8923,8032.2798,12.5726,6.2345,1.1179,0.3134,2400.0,2340.0,-0.5009,-0.9292,5.2388,92.7236 2019-06-03 15:43:05.380,110.8241,8033.5103,12.5726,6.2345,0.8014,0.1342,2400.0,2340.0,-0.5038,-0.9262,5.2454,92.7236 2019-06-03 15:43:05.400,110.8104,8034.3213,12.5616,6.1723,0.9497,0.1652,2340.0,2400.0,-0.5038,-0.9262,5.2428,92.783 2019-06-03 15:43:05.420,110.8241,8035.1328,12.5612,6.1539,1.2548,0.2037,2340.0,2400.0,-0.5097,-0.9292,5.2335,92.8036 2019-06-03 15:43:05.440,110.8923,8036.4473,12.5612,6.1539,0.7718,0.1985,2340.0,2400.0,-0.5272,-0.9595,5.2415,92.8036 2019-06-03 15:43:05.460,110.906,8036.6709,12.5612,6.1539,1.1727,0.1285,2340.0,2400.0,-0.5214,-0.9534,5.2401,92.8036 2019-06-03 15:43:05.480,110.8104,8036.6709,12.5521,6.1093,0.9282,0.2841,2340.0,2400.0,-0.5155,-0.9776,5.2428,92.8442 2019-06-03 15:43:05.500,110.8104,8036.6152,12.5507,6.0679,0.8994,0.2854,2340.0,2400.0,-0.5097,-0.9746,5.2494,92.8866 2019-06-03 15:43:05.520,110.8241,8036.5869,12.5507,6.0679,1.0532,0.0832,2340.0,2400.0,-0.5038,-0.9595,5.2428,92.8866 2019-06-03 15:43:05.540,110.906,8036.5034,12.5507,6.0679,1.01,0.3256,2340.0,2400.0,-0.5243,-0.9746,5.2428,92.8866 2019-06-03 15:43:05.560,110.8787,8036.5313,12.5465,6.025,0.9201,0.0656,2340.0,2400.0,-0.5155,-0.9746,5.2401,92.9282 2019-06-03 15:43:05.580,110.8104,8036.6152,12.5465,6.025,1.0418,0.2766,2340.0,2400.0,-0.5126,-0.9715,5.2388,92.9282 2019-06-03 15:43:05.600,110.8104,8036.6431,12.5389,5.9558,1.0103,0.2381,2340.0,2400.0,-0.5097,-0.9746,5.2441,92.992 2019-06-03 15:43:05.620,110.8377,8036.6152,12.5321,5.9325,0.9045,0.1577,2340.0,2400.0,-0.5038,-0.9715,5.2388,93.0121 2019-06-03 15:43:05.640,110.9196,8036.6152,12.5321,5.9325,1.1431,0.2078,2340.0,2400.0,-0.5068,-0.9836,5.2481,93.0121 2019-06-03 15:43:05.660,110.906,8036.5591,12.5321,5.9325,0.808,0.1875,2340.0,2400.0,-0.5097,-0.9836,5.2428,93.0121 2019-06-03 15:43:05.680,110.8104,8036.7271,12.5299,5.8874,1.0296,0.1388,2340.0,2400.0,-0.5243,-0.9957,5.2415,93.0519 2019-06-03 15:43:05.700,110.8377,8037.6782,12.5239,5.8405,1.0628,0.1125,2340.0,2400.0,-0.5301,-1.0017,5.2481,93.0912 2019-06-03 15:43:05.720,110.7967,8038.6016,12.5239,5.8405,0.9778,0.2767,2340.0,2400.0,-0.5155,-0.9987,5.2335,93.0912 2019-06-03 15:43:05.740,110.906,8039.9722,12.5239,5.8405,0.9837,0.127,2340.0,2400.0,-0.5155,-1.0047,5.2441,93.0912 2019-06-03 15:43:05.760,110.8787,8040.9238,12.5193,5.7935,0.9637,0.2637,2340.0,2400.0,-0.5126,-0.9987,5.2454,93.1301 2019-06-03 15:43:05.780,110.8241,8042.2944,12.5193,5.7935,0.9197,0.0921,2340.0,2400.0,-0.5097,-1.0078,5.2494,93.1301 2019-06-03 15:43:05.800,110.8104,8043.1899,12.5158,5.7264,0.882,0.0903,2340.0,2400.0,-0.5331,-1.0138,5.2428,93.1874 2019-06-03 15:43:05.820,110.8241,8044.0571,12.5183,5.7089,1.1579,0.2631,2340.0,2400.0,-0.5126,-1.0108,5.2454,93.2071 2019-06-03 15:43:05.840,110.906,8045.3999,12.5183,5.7089,0.7751,0.1718,2340.0,2400.0,-0.5214,-1.0108,5.2441,93.2071 2019-06-03 15:43:05.860,110.906,8045.624,12.5183,5.7089,1.173,0.1683,2340.0,2400.0,-0.5009,-1.0108,5.2534,93.2071 2019-06-03 15:43:05.880,110.7967,8045.6797,12.5116,5.6629,0.9412,0.222,2340.0,2400.0,-0.5038,-1.0108,5.2441,93.2451 2019-06-03 15:43:05.900,110.8104,8045.624,12.5126,5.6246,0.9253,0.2265,2340.0,2400.0,-0.5097,-1.0138,5.2494,93.2831 2019-06-03 15:43:05.920,110.8104,8045.624,12.5126,5.6246,1.0222,0.1299,2340.0,2400.0,-0.5097,-1.0078,5.2335,93.2831 2019-06-03 15:43:05.940,110.906,8045.6519,12.5126,5.6246,1.0418,0.3248,2340.0,2400.0,-0.5155,-1.0078,5.2481,93.2831 2019-06-03 15:43:05.960,110.8923,8045.6519,12.512,5.5856,0.811,0.086,2340.0,2400.0,-0.5272,-1.0047,5.2481,93.3207 2019-06-03 15:43:05.980,110.8104,8045.7358,12.512,5.5856,1.2466,0.2617,2340.0,2400.0,-0.5126,-0.9987,5.2521,93.3207 2019-06-03 15:43:06.000,110.8104,8045.7915,12.5119,5.5282,1.1679,0.2494,2340.0,2400.0,-0.5184,-1.0047,5.2534,93.3802 2019-06-03 15:43:06.020,110.8241,8045.7637,12.5053,5.5025,0.8395,0.1533,2340.0,2400.0,-0.5009,-0.9896,5.2494,93.3968 2019-06-03 15:43:06.040,110.8923,8045.7358,12.5053,5.5025,1.2466,0.2264,2340.0,2400.0,-0.5068,-0.9836,5.2547,93.3968 2019-06-03 15:43:06.060,110.9196,8045.6797,12.5053,5.5025,0.7496,0.2226,2340.0,2400.0,-0.5038,-0.9836,5.2653,93.3968 2019-06-03 15:43:06.080,110.8104,8045.624,12.5061,5.4646,1.2156,0.1119,2340.0,2400.0,-0.5038,-0.9534,5.2481,93.4304 2019-06-03 15:43:06.100,110.8241,8045.54,12.5024,5.4234,1.0824,0.1242,2340.0,2400.0,-0.5009,-0.9564,5.2627,93.4632 2019-06-03 15:43:06.120,110.7421,8045.54,12.5024,5.4234,0.8457,0.2668,2340.0,2400.0,-0.4746,-0.89,5.2613,93.4632 2019-06-03 15:43:06.140,110.6873,8045.5679,12.5024,5.4234,1.0639,0.0491,2340.0,2400.0,-0.4629,-0.8688,5.2574,93.4632 2019-06-03 15:43:06.160,110.6737,8045.5957,12.499,5.3831,1.0739,0.3335,2340.0,2400.0,-0.4658,-0.8567,5.2627,93.4947 2019-06-03 15:43:06.180,110.5915,8045.624,12.5023,5.3503,0.8084,0.0585,2340.0,2400.0,-0.46,-0.8083,5.2507,93.5257 2019-06-03 15:43:06.200,110.5915,8045.624,12.4994,5.3273,0.8287,0.0911,2340.0,2400.0,-0.4717,-0.8083,5.2653,93.5402 2019-06-03 15:43:06.220,110.6189,8045.54,12.5042,5.3161,1.2873,0.2651,2340.0,2400.0,-0.4629,-0.7659,5.2772,93.5563 2019-06-03 15:43:06.240,110.6873,8045.5679,12.5042,5.3161,0.6586,0.1506,2340.0,2400.0,-0.4658,-0.7599,5.2666,93.5563 2019-06-03 15:43:06.260,110.701,8045.5957,12.5042,5.3161,1.3528,0.1799,2340.0,2400.0,-0.4688,-0.7538,5.2732,93.5563 2019-06-03 15:43:06.280,110.5915,8045.8477,12.5021,5.2784,0.744,0.2433,2340.0,2400.0,-0.4658,-0.7508,5.2574,93.5861 2019-06-03 15:43:06.300,110.6189,8046.7432,12.5077,5.2485,0.7415,0.3094,2340.0,2400.0,-0.4688,-0.7508,5.2679,93.6162 2019-06-03 15:43:06.320,110.5092,8047.6108,12.5077,5.2485,1.1827,0.031,2340.0,2400.0,-0.46,-0.7508,5.2732,93.6162 2019-06-03 15:43:06.340,110.4818,8048.9541,12.5077,5.2485,0.7781,0.3625,2340.0,2400.0,-0.46,-0.7478,5.2785,93.6162 2019-06-03 15:43:06.360,110.4543,8049.7935,12.514,5.2196,1.0943,-0.0222,2340.0,2400.0,-0.4688,-0.7538,5.2799,93.6472 2019-06-03 15:43:06.380,110.3719,8051.1646,12.514,5.2196,1.078,0.4049,2340.0,2400.0,-0.4658,-0.7084,5.2454,93.6472 2019-06-03 15:43:06.400,110.3856,8052.0879,12.5175,5.1714,1.1926,0.4032,2340.0,2340.0,-0.4658,-0.7266,5.2613,93.6897 2019-06-03 15:43:06.420,110.3856,8052.9277,12.507,5.1476,0.7037,0.0076,2340.0,2340.0,-0.4629,-0.7326,5.2679,93.701 2019-06-03 15:43:06.440,110.468,8054.2427,12.507,5.1476,1.3631,0.3226,2340.0,2340.0,-0.46,-0.7387,5.2772,93.701 2019-06-03 15:43:06.460,110.468,8054.439,12.507,5.1476,0.5872,0.0926,2340.0,2340.0,-0.4746,-0.7538,5.2785,93.701 2019-06-03 15:43:06.480,110.3719,8054.355,12.5166,5.1259,1.3014,0.2204,2340.0,2340.0,-0.4688,-0.7417,5.2507,93.7307 2019-06-03 15:43:06.500,110.3994,8054.271,12.5189,5.0976,1.3986,0.1789,2340.0,2340.0,-0.4658,-0.7387,5.26,93.7574 2019-06-03 15:43:06.520,110.3856,8054.3267,12.5189,5.0976,0.6017,0.2811,2340.0,2340.0,-0.4512,-0.7568,5.2785,93.7574 2019-06-03 15:43:06.540,110.468,8054.3828,12.5189,5.0976,1.3631,-0.0003,2340.0,2340.0,-0.4571,-0.7447,5.2547,93.7574 2019-06-03 15:43:06.560,110.468,8054.439,12.5113,5.0644,0.744,0.3939,2340.0,2340.0,-0.4658,-0.7538,5.2746,93.7823 2019-06-03 15:43:06.580,110.3719,8054.4668,12.5113,5.0644,1.1771,-0.0328,2340.0,2340.0,-0.4658,-0.7538,5.2547,93.7823 2019-06-03 15:43:06.600,110.3719,8054.4946,12.5147,5.0352,1.0495,-0.0524,2340.0,2340.0,-0.4658,-0.7508,5.2653,93.8221 2019-06-03 15:43:06.620,110.3856,8054.4946,12.5253,5.0311,0.9744,0.4254,2340.0,2340.0,-0.4688,-0.7538,5.2759,93.8357 2019-06-03 15:43:06.640,110.4543,8054.4106,12.5253,5.0311,0.933,-0.0439,2340.0,2340.0,-0.4629,-0.7508,5.2534,93.8357 2019-06-03 15:43:06.660,110.4818,8054.3828,12.5253,5.0311,1.2566,0.3518,2340.0,2340.0,-0.4746,-0.7508,5.2627,93.8357 2019-06-03 15:43:06.680,110.3856,8054.5508,12.5198,5.009,0.6982,0.0885,2340.0,2340.0,-0.4629,-0.7508,5.264,93.8584 2019-06-03 15:43:06.700,110.3856,8055.4185,12.5213,4.9896,0.6801,0.1134,2340.0,2340.0,-0.4629,-0.7508,5.2759,93.8798 2019-06-03 15:43:06.720,110.3031,8056.3423,12.5213,4.9896,1.2784,0.1793,2340.0,2340.0,-0.46,-0.7538,5.2812,93.8798 2019-06-03 15:43:06.740,110.2756,8057.7417,12.5213,4.9896,0.6852,0.2271,2340.0,2340.0,-0.4658,-0.7508,5.2481,93.8798 2019-06-03 15:43:06.760,110.2618,8058.6372,12.5324,4.9785,1.3768,0.0606,2340.0,2340.0,-0.4688,-0.7508,5.2693,93.903 2019-06-03 15:43:06.780,110.1654,8060.0088,12.5324,4.9785,0.7662,0.3616,2340.0,2340.0,-0.4658,-0.7508,5.2574,93.903 2019-06-03 15:43:06.800,110.1792,8061.0166,12.5369,4.9563,0.8665,0.3775,2340.0,2340.0,-0.4658,-0.7478,5.2799,93.9327 2019-06-03 15:43:06.820,110.1792,8061.9121,12.5352,4.9438,1.0588,-0.0189,2340.0,2340.0,-0.4746,-0.7538,5.2825,93.9401 2019-06-03 15:43:06.840,110.2618,8063.3115,12.5352,4.9438,1.0477,0.378,2340.0,2340.0,-0.4571,-0.7447,5.2521,93.9401 2019-06-03 15:43:06.860,110.2756,8063.5073,12.5352,4.9438,0.8935,0.007,2340.0,2340.0,-0.4629,-0.7478,5.264,93.9401 2019-06-03 15:43:06.880,110.1792,8063.5356,12.5454,4.9313,1.2126,0.3373,2340.0,2340.0,-0.4571,-0.7508,5.2679,93.958 2019-06-03 15:43:06.900,110.1792,8063.4233,12.5566,4.9157,1.2596,0.285,2340.0,2340.0,-0.4571,-0.7478,5.2653,93.9734 2019-06-03 15:43:06.920,110.1792,8063.3955,12.5566,4.9157,0.8062,0.1374,2340.0,2340.0,-0.4629,-0.7478,5.2852,93.9734 2019-06-03 15:43:06.940,110.2618,8063.3955,12.5566,4.9157,1.281,0.1832,2340.0,2340.0,-0.4658,-0.7417,5.2507,93.9734 2019-06-03 15:43:06.960,110.2618,8063.4517,12.5565,4.8926,0.767,0.2622,2340.0,2340.0,-0.4658,-0.7387,5.256,93.9847 2019-06-03 15:43:06.980,110.1792,8063.4517,12.5565,4.8926,1.2145,0.0884,2340.0,2340.0,-0.46,-0.7387,5.2746,93.9847 2019-06-03 15:43:07.000,110.1654,8063.4517,12.5696,4.8581,1.2385,0.0637,2340.0,2340.0,-0.4571,-0.7417,5.2785,94.0057 2019-06-03 15:43:07.020,110.1792,8063.4517,12.5795,4.8478,0.896,0.3333,2340.0,2340.0,-0.4775,-0.7447,5.2852,94.0114 2019-06-03 15:43:07.040,110.2756,8063.3955,12.5795,4.8478,1.081,0.0599,2340.0,2340.0,-0.4717,-0.7447,5.2653,94.0114 2019-06-03 15:43:07.060,110.2618,8063.3677,12.5795,4.8478,1.034,0.3421,2340.0,2340.0,-0.4688,-0.7478,5.2613,94.0114 2019-06-03 15:43:07.080,110.1792,8063.5635,12.5845,4.8235,0.8398,0.0745,2340.0,2340.0,-0.4541,-0.7508,5.2746,94.0188 2019-06-03 15:43:07.100,110.193,8064.4312,12.5877,4.7935,0.9918,0.0743,2340.0,2340.0,-0.4571,-0.7447,5.2613,94.0245 2019-06-03 15:43:07.120,110.0964,8065.271,12.5877,4.7935,1.1767,0.2651,2340.0,2340.0,-0.4629,-0.7447,5.2785,94.0245 2019-06-03 15:43:07.140,110.055,8066.5591,12.5877,4.7935,0.7588,0.1659,2340.0,2340.0,-0.46,-0.7417,5.26,94.0245 2019-06-03 15:43:07.160,110.0136,8067.4551,12.5996,4.7662,1.1235,0.1779,2340.0,2340.0,-0.4658,-0.7447,5.2653,94.0302 2019-06-03 15:43:07.180,109.9445,8068.6587,12.5996,4.7662,0.8975,0.2208,2340.0,2340.0,-0.46,-0.7417,5.2785,94.0302 2019-06-03 15:43:07.200,109.9583,8069.5269,12.602,4.7198,0.9079,0.2341,2340.0,2340.0,-0.4571,-0.7417,5.2574,94.0337 2019-06-03 15:43:07.220,109.9721,8070.3667,12.6044,4.7027,1.0451,0.0851,2340.0,2340.0,-0.46,-0.7538,5.2653,94.035 2019-06-03 15:43:07.240,110.0274,8071.6821,12.6044,4.7027,0.9756,0.3166,2340.0,2340.0,-0.4541,-0.7417,5.2454,94.035 2019-06-03 15:43:07.260,110.055,8071.9063,12.6044,4.7027,0.9352,0.1087,2340.0,2340.0,-0.46,-0.7387,5.2574,94.035 2019-06-03 15:43:07.280,109.9445,8071.8501,12.608,4.6688,1.1076,0.2544,2340.0,2340.0,-0.4541,-0.7508,5.2759,94.0376 2019-06-03 15:43:07.300,109.9583,8071.7661,12.615,4.6342,1.0602,0.221,2340.0,2340.0,-0.4541,-0.7447,5.264,94.0394 2019-06-03 15:43:07.320,109.9583,8071.7104,12.615,4.6342,0.9341,0.1433,2340.0,2340.0,-0.4688,-0.7508,5.2587,94.0394 2019-06-03 15:43:07.340,110.0274,8071.7661,12.615,4.6342,1.0887,0.2116,2340.0,2340.0,-0.4629,-0.7478,5.2507,94.0394 2019-06-03 15:43:07.360,110.0412,8071.7661,12.6175,4.5972,0.9323,0.2169,2340.0,2340.0,-0.46,-0.7417,5.2547,94.0389 2019-06-03 15:43:07.380,109.9583,8071.8223,12.6175,4.5972,0.9752,0.1362,2340.0,2340.0,-0.4512,-0.7508,5.2785,94.0389 2019-06-03 15:43:07.400,109.9445,8071.8501,12.6239,4.5421,1.078,0.1113,2400.0,2340.0,-0.4571,-0.7478,5.2534,94.0359 2019-06-03 15:43:07.420,109.9583,8071.7944,12.6295,4.5261,1.0451,0.2722,2400.0,2340.0,-0.4629,-0.7478,5.2693,94.0363 2019-06-03 15:43:07.440,110.0412,8071.8501,12.6295,4.5261,0.9108,0.1207,2400.0,2340.0,-0.4629,-0.7447,5.2613,94.0363 2019-06-03 15:43:07.460,110.055,8071.8501,12.6295,4.5261,1.1486,0.2899,2400.0,2340.0,-0.4629,-0.7478,5.2706,94.0363 2019-06-03 15:43:07.480,109.9721,8072.0742,12.6307,4.4848,0.7381,0.1057,2400.0,2340.0,-0.4658,-0.7447,5.2732,94.035 2019-06-03 15:43:07.500,109.9721,8072.9702,12.6305,4.4443,0.8065,0.1447,2400.0,2340.0,-0.46,-0.7478,5.2494,94.0324 2019-06-03 15:43:07.520,109.8753,8073.8662,12.6305,4.4443,1.1734,0.2152,2400.0,2340.0,-0.4658,-0.7478,5.2574,94.0324 2019-06-03 15:43:07.540,109.8338,8075.2388,12.6305,4.4443,0.8006,0.2192,2400.0,2340.0,-0.4512,-0.7447,5.2693,94.0324 2019-06-03 15:43:07.560,109.8061,8076.1904,12.639,4.4082,1.156,0.1277,2400.0,2340.0,-0.4571,-0.7478,5.2653,94.0306 2019-06-03 15:43:07.580,109.7229,8077.5625,12.6399,4.3643,0.8898,0.2744,2400.0,2340.0,-0.4629,-0.7478,5.2772,94.0249 2019-06-03 15:43:07.600,109.7368,8078.459,12.6395,4.3414,0.946,0.2961,2400.0,2340.0,-0.4629,-0.7417,5.2547,94.0236 2019-06-03 15:43:07.620,109.7507,8079.3267,12.6369,4.3187,1.0381,0.0779,2400.0,2340.0,-0.46,-0.7478,5.26,94.0223 2019-06-03 15:43:07.640,109.8338,8080.6987,12.6369,4.3187,1.1723,0.2873,2400.0,2340.0,-0.4629,-0.7478,5.2613,94.0223 2019-06-03 15:43:07.660,109.8338,8080.9512,12.6369,4.3187,0.8017,0.0975,2400.0,2340.0,-0.46,-0.7478,5.2627,94.0223 2019-06-03 15:43:07.680,109.7368,8080.895,12.6403,4.2805,1.2973,0.2891,2400.0,2340.0,-0.4629,-0.7478,5.2746,94.0206 2019-06-03 15:43:07.700,109.7507,8080.8672,12.6477,4.2402,1.2644,0.2571,2400.0,2340.0,-0.46,-0.7447,5.2574,94.0201 2019-06-03 15:43:07.720,109.7368,8080.8389,12.6477,4.2402,0.8343,0.1555,2400.0,2340.0,-0.4629,-0.7447,5.2666,94.0201 2019-06-03 15:43:07.740,109.8476,8080.811,12.6477,4.2402,1.1575,0.1651,2400.0,2340.0,-0.46,-0.7478,5.2746,94.0201 2019-06-03 15:43:07.760,109.8199,8080.811,12.6458,4.1878,0.8017,0.2484,2400.0,2340.0,-0.4571,-0.7417,5.2534,94.0171 2019-06-03 15:43:07.780,109.7368,8080.8389,12.6458,4.1878,1.2374,0.1232,2400.0,2340.0,-0.4629,-0.7447,5.2759,94.0171 2019-06-03 15:43:07.800,109.7368,8080.895,12.6456,4.1196,1.1117,0.0916,2400.0,2340.0,-0.46,-0.7478,5.256,94.0127 2019-06-03 15:43:07.820,109.7507,8080.895,12.6487,4.0996,1.014,0.326,2400.0,2340.0,-0.4629,-0.7478,5.2653,94.0127 2019-06-03 15:43:07.840,109.8338,8080.9512,12.6487,4.0996,0.8983,0.0222,2400.0,2340.0,-0.4629,-0.7599,5.2759,94.0127 2019-06-03 15:43:07.860,109.8199,8080.895,12.6487,4.0996,1.166,0.3393,2400.0,2340.0,-0.4571,-0.7387,5.2507,94.0127 2019-06-03 15:43:07.880,109.7507,8081.063,12.6472,4.0456,0.7322,0.0665,2400.0,2340.0,-0.4629,-0.7447,5.2706,94.0105 2019-06-03 15:43:07.900,109.7507,8081.9033,12.6439,3.9969,0.7189,0.1025,2400.0,2340.0,-0.46,-0.7417,5.2653,94.0083 2019-06-03 15:43:07.920,109.6674,8082.8276,12.6439,3.9969,1.2537,0.2626,2400.0,2340.0,-0.4688,-0.7356,5.264,94.0083 2019-06-03 15:43:07.940,109.6119,8084.1157,12.6439,3.9969,0.6361,0.1588,2400.0,2340.0,-0.4717,-0.7417,5.2825,94.0083 2019-06-03 15:43:07.960,109.5841,8085.04,12.6477,3.953,1.4105,0.149,2400.0,2340.0,-0.4629,-0.7387,5.2547,94.0092 2019-06-03 15:43:07.980,109.5146,8086.3564,12.6477,3.953,0.7525,0.2872,2400.0,2340.0,-0.4658,-0.7447,5.264,94.0092 2019-06-03 15:43:08.000,109.5285,8087.1968,12.6488,3.8829,0.7681,0.3369,2400.0,2340.0,-0.4629,-0.7387,5.2679,94.0144 2019-06-03 15:43:08.020,109.5285,8088.0933,12.6438,3.8574,1.146,0.0174,2400.0,2340.0,-0.4571,-0.7356,5.2693,94.0136 2019-06-03 15:43:08.040,109.598,8089.4097,12.6438,3.8574,0.9352,0.4006,2400.0,2340.0,-0.4629,-0.7417,5.2838,94.0136 2019-06-03 15:43:08.060,109.6119,8089.6338,12.6438,3.8574,0.9911,-0.0308,2400.0,2340.0,-0.4629,-0.7356,5.2587,94.0136 2019-06-03 15:43:08.080,109.5007,8089.5493,12.6437,3.8143,1.2008,0.382,2400.0,2340.0,-0.4658,-0.7387,5.2679,94.014 2019-06-03 15:43:08.100,109.5285,8089.5215,12.6502,3.7761,1.2293,0.3714,2400.0,2340.0,-0.46,-0.7417,5.2759,94.0157 2019-06-03 15:43:08.120,109.4311,8089.5493,12.6502,3.7761,0.7943,0.0619,2400.0,2340.0,-0.4629,-0.7356,5.2653,94.0157 2019-06-03 15:43:08.140,109.4032,8089.4653,12.6502,3.7761,1.2459,0.309,2400.0,2340.0,-0.4658,-0.7326,5.2719,94.0157 2019-06-03 15:43:08.160,109.4032,8089.4375,12.6438,3.7323,0.568,0.1247,2400.0,2340.0,-0.4512,-0.7235,5.2574,94.0144 2019-06-03 15:43:08.180,109.3057,8089.3813,12.6438,3.7323,1.463,0.132,2400.0,2340.0,-0.4571,-0.7205,5.26,94.0144 2019-06-03 15:43:08.200,109.2917,8089.4097,12.6425,3.6684,1.331,0.0977,2400.0,2340.0,-0.46,-0.7205,5.2812,94.0157 2019-06-03 15:43:08.220,109.3057,8089.3813,12.6419,3.6454,0.6586,0.3386,2400.0,2340.0,-0.46,-0.7084,5.2693,94.0157 2019-06-03 15:43:08.240,109.3893,8089.4097,12.6419,3.6454,1.2796,0.0282,2400.0,2340.0,-0.46,-0.6841,5.2732,94.0157 2019-06-03 15:43:08.260,109.4032,8089.4375,12.6419,3.6454,0.7385,0.3917,2400.0,2340.0,-0.4571,-0.6356,5.2534,94.0157 2019-06-03 15:43:08.280,109.3057,8089.4097,12.6428,3.6018,1.0151,-0.0318,2400.0,2340.0,-0.46,-0.6447,5.2653,94.0166 2019-06-03 15:43:08.300,109.3196,8089.3257,12.6357,3.5536,0.9759,-0.0302,2400.0,2340.0,-0.46,-0.6386,5.2772,94.0184 2019-06-03 15:43:08.320,109.3057,8089.3535,12.6357,3.5536,1.0765,0.4121,2400.0,2340.0,-0.4571,-0.6295,5.2772,94.0184 2019-06-03 15:43:08.340,109.3893,8089.4375,12.6357,3.5536,0.825,0.0191,2400.0,2340.0,-0.4658,-0.6295,5.2732,94.0184 2019-06-03 15:43:08.360,109.3754,8089.4937,12.6367,3.5109,1.2448,0.3497,2400.0,2340.0,-0.4571,-0.584,5.2679,94.0219 2019-06-03 15:43:08.380,109.3057,8089.5776,12.6367,3.5109,0.6908,0.095,2400.0,2340.0,-0.4658,-0.5871,5.2587,94.0219 2019-06-03 15:43:08.400,109.2917,8089.6055,12.631,3.4501,0.6997,0.107,2340.0,2340.0,-0.4688,-0.5871,5.2799,94.0284 2019-06-03 15:43:08.420,109.3196,8089.5776,12.6331,3.4351,1.3569,0.2053,2340.0,2340.0,-0.4688,-0.5446,5.2759,94.0319 2019-06-03 15:43:08.440,109.4172,8089.5493,12.6331,3.4351,0.5913,0.225,2340.0,2340.0,-0.4629,-0.5476,5.2852,94.0319 2019-06-03 15:43:08.460,109.4172,8089.5215,12.6331,3.4351,1.2847,0.1076,2340.0,2340.0,-0.46,-0.4838,5.26,94.0319 2019-06-03 15:43:08.480,109.3057,8089.7178,12.6269,3.3977,0.7932,0.343,2340.0,2340.0,-0.4541,-0.4868,5.2587,94.0376 2019-06-03 15:43:08.500,109.3335,8090.6421,12.6304,3.3678,0.7899,0.3415,2340.0,2340.0,-0.4571,-0.4899,5.2759,94.0459 2019-06-03 15:43:08.520,109.2778,8091.5386,12.6304,3.3678,1.2341,0.0099,2340.0,2340.0,-0.4483,-0.4565,5.2706,94.0459 2019-06-03 15:43:08.540,109.4032,8092.8555,12.6304,3.3678,0.9164,0.3808,2340.0,2340.0,-0.4717,-0.4686,5.2852,94.0459 2019-06-03 15:43:08.560,109.3754,8093.7798,12.6307,3.3391,0.9486,0.0329,2340.0,2340.0,-0.4688,-0.4625,5.26,94.056 2019-06-03 15:43:08.580,109.3196,8095.1245,12.6307,3.3391,1.0451,0.3721,2340.0,2340.0,-0.4746,-0.4625,5.2666,94.056 2019-06-03 15:43:08.600,109.3196,8096.021,12.6269,3.2949,1.0414,0.3628,2340.0,2340.0,-0.4746,-0.4625,5.2878,94.0739 2019-06-03 15:43:08.620,109.3057,8096.9175,12.6181,3.2741,0.7252,0.0623,2340.0,2340.0,-0.4629,-0.4656,5.2732,94.0787 2019-06-03 15:43:08.640,109.3893,8098.3462,12.6181,3.2741,1.3162,0.236,2340.0,2340.0,-0.46,-0.4656,5.2772,94.0787 2019-06-03 15:43:08.660,109.3893,8098.542,12.6181,3.2741,0.706,0.1832,2340.0,2340.0,-0.4541,-0.4595,5.2799,94.0787 2019-06-03 15:43:08.680,109.3057,8098.6821,12.6279,3.2462,1.3287,0.1579,2340.0,2340.0,-0.4571,-0.4504,5.2799,94.0914 2019-06-03 15:43:08.700,109.3196,8099.4951,12.6242,3.216,1.2881,0.1527,2340.0,2340.0,-0.4629,-0.4504,5.2878,94.1023 2019-06-03 15:43:08.720,109.3614,8100.2515,12.6242,3.216,0.71,0.2823,2340.0,2340.0,-0.46,-0.4504,5.2732,94.1023 2019-06-03 15:43:08.740,109.5841,8101.4844,12.6242,3.216,1.2411,0.0313,2340.0,2340.0,-0.4629,-0.4565,5.2785,94.1023 2019-06-03 15:43:08.760,109.598,8102.3247,12.6174,3.1811,0.8665,0.3625,2340.0,2340.0,-0.46,-0.4473,5.2627,94.1124 2019-06-03 15:43:08.780,109.5146,8103.5859,12.6174,3.1811,1.1216,0.035,2340.0,2340.0,-0.4541,-0.4473,5.2719,94.1124 2019-06-03 15:43:08.800,109.5146,8104.3984,12.6153,3.1446,1.0425,0.0482,2340.0,2340.0,-0.46,-0.4534,5.2825,94.1333 2019-06-03 15:43:08.820,109.5285,8105.1548,12.6209,3.1357,1.0288,0.3357,2340.0,2340.0,-0.4571,-0.4473,5.2759,94.1403 2019-06-03 15:43:08.840,109.6119,8106.3877,12.6209,3.1357,0.9789,0.0477,2340.0,2340.0,-0.46,-0.4473,5.2759,94.1403 2019-06-03 15:43:08.860,109.6119,8106.5,12.6209,3.1357,1.1527,0.3058,2340.0,2340.0,-0.4629,-0.4504,5.2693,94.1403 2019-06-03 15:43:08.880,109.5146,8106.5278,12.6137,3.1115,0.8128,0.1247,2340.0,2340.0,-0.4629,-0.4473,5.2679,94.1517 2019-06-03 15:43:08.900,109.5285,8106.4722,12.6104,3.0941,0.8143,0.1466,2340.0,2340.0,-0.4658,-0.4534,5.2812,94.1648 2019-06-03 15:43:08.920,109.4311,8106.4438,12.6104,3.0941,1.2226,0.2052,2340.0,2340.0,-0.4629,-0.4473,5.2746,94.1648 2019-06-03 15:43:08.940,109.4032,8106.5278,12.6104,3.0941,0.7873,0.231,2340.0,2340.0,-0.4629,-0.4473,5.2759,94.1648 2019-06-03 15:43:08.960,109.3754,8106.5278,12.6123,3.0806,1.227,0.0832,2340.0,2340.0,-0.46,-0.4504,5.2825,94.1797 2019-06-03 15:43:08.980,109.2917,8106.6123,12.6123,3.0806,0.8206,0.3306,2340.0,2340.0,-0.4629,-0.4504,5.2706,94.1797 2019-06-03 15:43:09.000,109.3057,8106.584,12.609,3.0629,0.8502,0.3293,2340.0,2340.0,-0.46,-0.4504,5.2838,94.2081 2019-06-03 15:43:09.020,109.3196,8106.5562,12.6026,3.0525,1.088,0.0628,2340.0,2340.0,-0.4629,-0.4473,5.2746,94.2138 2019-06-03 15:43:09.040,109.3893,8106.6123,12.6026,3.0525,1.0455,0.3357,2340.0,2340.0,-0.4658,-0.4504,5.2746,94.2138 2019-06-03 15:43:09.060,109.4032,8106.6123,12.6026,3.0525,0.9678,0.0488,2340.0,2340.0,-0.4629,-0.4686,5.2865,94.2138 2019-06-03 15:43:09.080,109.2917,8106.6401,12.6019,3.0444,1.0562,0.3238,2340.0,2340.0,-0.4571,-0.4656,5.2679,94.2295 2019-06-03 15:43:09.100,109.3057,8106.5278,12.6015,3.0333,1.1183,0.2827,2340.0,2340.0,-0.4571,-0.4899,5.2772,94.2444 2019-06-03 15:43:09.120,109.2917,8106.5278,12.6015,3.0333,0.865,0.1287,2340.0,2340.0,-0.46,-0.4868,5.2679,94.2444 2019-06-03 15:43:09.140,109.3893,8106.5278,12.6015,3.0333,1.2707,0.2316,2340.0,2340.0,-0.46,-0.4838,5.2746,94.2444 2019-06-03 15:43:09.160,109.3893,8106.5562,12.5922,3.0181,0.8139,0.1717,2340.0,2340.0,-0.4688,-0.4868,5.2785,94.2566 2019-06-03 15:43:09.180,109.3057,8106.6123,12.5922,3.0181,1.0898,0.1625,2340.0,2340.0,-0.4658,-0.4899,5.2746,94.2566 2019-06-03 15:43:09.200,109.2917,8106.668,12.5848,3.0047,1.1287,0.1082,2340.0,2340.0,-0.4658,-0.5142,5.2732,94.2807 2019-06-03 15:43:09.220,109.3196,8106.6123,12.5854,2.9992,0.9807,0.2724,2340.0,2340.0,-0.4658,-0.5203,5.2693,94.2872 2019-06-03 15:43:09.240,109.3893,8106.584,12.5854,2.9992,1.007,0.1123,2340.0,2340.0,-0.4688,-0.5142,5.264,94.2872 2019-06-03 15:43:09.260,109.3893,8106.6401,12.5854,2.9992,0.977,0.2797,2340.0,2340.0,-0.4688,-0.5142,5.2812,94.2872 2019-06-03 15:43:09.280,109.3196,8106.8081,12.5804,2.9881,0.9752,0.0936,2340.0,2340.0,-0.46,-0.5142,5.2759,94.3008 2019-06-03 15:43:09.300,109.3196,8107.7051,12.5704,2.9717,0.9892,0.0757,2340.0,2340.0,-0.4658,-0.5172,5.2732,94.3139 2019-06-03 15:43:09.320,109.2917,8108.6299,12.5704,2.9717,1.0599,0.2701,2340.0,2340.0,-0.46,-0.5142,5.2772,94.3139 2019-06-03 15:43:09.340,109.4032,8110.0034,12.5704,2.9717,0.9201,0.1711,2340.0,2340.0,-0.4571,-0.5172,5.2679,94.3139 2019-06-03 15:43:09.360,109.3754,8110.9561,12.5679,2.9597,1.0351,0.1762,2340.0,2340.0,-0.46,-0.5172,5.2799,94.3279 2019-06-03 15:43:09.380,109.2917,8112.2734,12.5679,2.9597,0.9852,0.2041,2340.0,2340.0,-0.46,-0.5112,5.2812,94.3279 2019-06-03 15:43:09.400,109.3057,8113.1982,12.5585,2.9355,0.9341,0.2107,2400.0,2400.0,-0.4746,-0.5172,5.2679,94.3488 2019-06-03 15:43:09.420,109.3196,8114.0669,12.5556,2.9248,1.0532,0.1215,2400.0,2400.0,-0.4688,-0.5142,5.2838,94.3545 2019-06-03 15:43:09.440,109.4032,8115.4121,12.5556,2.9248,1.0784,0.2854,2400.0,2400.0,-0.4688,-0.496,5.2653,94.3545 2019-06-03 15:43:09.460,109.4172,8115.6367,12.5556,2.9248,0.8972,0.1209,2400.0,2400.0,-0.4629,-0.5081,5.2799,94.3545 2019-06-03 15:43:09.480,109.3057,8115.6084,12.5512,2.911,1.1268,0.2617,2400.0,2400.0,-0.4571,-0.5081,5.2785,94.3668 2019-06-03 15:43:09.500,109.3196,8115.4966,12.5478,2.8951,1.1638,0.2555,2400.0,2400.0,-0.46,-0.5051,5.2719,94.3781 2019-06-03 15:43:09.520,109.2359,8115.4966,12.5478,2.8951,0.8594,0.1452,2400.0,2400.0,-0.4658,-0.5142,5.2799,94.3781 2019-06-03 15:43:09.540,109.166,8115.4966,12.5478,2.8951,1.1638,0.2175,2400.0,2400.0,-0.4658,-0.5081,5.2719,94.3781 2019-06-03 15:43:09.560,109.18,8115.4966,12.541,2.8744,0.8339,0.2067,2400.0,2400.0,-0.4658,-0.5081,5.2865,94.3895 2019-06-03 15:43:09.580,109.0961,8115.4966,12.541,2.8744,1.1135,0.1517,2400.0,2400.0,-0.4658,-0.502,5.2772,94.3895 2019-06-03 15:43:09.600,109.0821,8115.5244,12.5348,2.8526,1.1316,0.1399,2400.0,2400.0,-0.4629,-0.502,5.2719,94.4092 2019-06-03 15:43:09.620,109.0961,8115.4966,12.535,2.8456,0.9264,0.2486,2400.0,2400.0,-0.4541,-0.5051,5.2799,94.4157 2019-06-03 15:43:09.640,109.18,8115.4683,12.535,2.8456,0.9626,0.1047,2400.0,2400.0,-0.4454,-0.496,5.2772,94.4157 2019-06-03 15:43:09.660,109.18,8115.4966,12.535,2.8456,1.0972,0.3067,2400.0,2400.0,-0.4512,-0.4777,5.2812,94.4157 2019-06-03 15:43:09.680,109.0961,8115.7207,12.5298,2.8288,0.7962,0.105,2400.0,2400.0,-0.46,-0.4565,5.2785,94.4267 2019-06-03 15:43:09.700,109.0961,8116.5615,12.5203,2.808,0.865,0.1193,2400.0,2400.0,-0.4658,-0.4443,5.2732,94.4376 2019-06-03 15:43:09.720,109.0121,8117.4028,12.5203,2.808,1.1804,0.2352,2400.0,2400.0,-0.4717,-0.4473,5.2878,94.4376 2019-06-03 15:43:09.740,108.9701,8118.7202,12.5203,2.808,0.8173,0.1821,2400.0,2400.0,-0.4571,-0.423,5.2772,94.4376 2019-06-03 15:43:09.760,108.9421,8119.6172,12.5166,2.7922,1.2851,0.2203,2400.0,2400.0,-0.4512,-0.4291,5.2905,94.4494 2019-06-03 15:43:09.780,108.8579,8120.9067,12.5166,2.7922,0.7474,0.2187,2400.0,2400.0,-0.4571,-0.3926,5.2732,94.4494 2019-06-03 15:43:09.800,108.872,8121.7759,12.5065,2.7685,0.7577,0.248,2400.0,2400.0,-0.4571,-0.3834,5.2706,94.4704 2019-06-03 15:43:09.820,108.8579,8122.6167,12.5041,2.7599,1.1523,0.1095,2400.0,2400.0,-0.4629,-0.3956,5.2878,94.4756 2019-06-03 15:43:09.840,108.9421,8123.9063,12.5041,2.7599,0.7881,0.3229,2400.0,2400.0,-0.4571,-0.3804,5.2852,94.4756 2019-06-03 15:43:09.860,108.9701,8124.1025,12.5041,2.7599,1.0488,0.0406,2400.0,2400.0,-0.4629,-0.3682,5.2852,94.4756 2019-06-03 15:43:09.880,108.8579,8124.1025,12.4981,2.743,1.0432,0.3695,2400.0,2400.0,-0.4629,-0.3621,5.2772,94.487 2019-06-03 15:43:09.900,108.872,8124.0181,12.4983,2.7338,1.0828,0.3529,2400.0,2400.0,-0.4629,-0.3621,5.2719,94.4988 2019-06-03 15:43:09.920,108.8439,8123.9902,12.4983,2.7338,0.7851,0.0701,2400.0,2400.0,-0.46,-0.3591,5.2865,94.4988 2019-06-03 15:43:09.940,108.9561,8124.0181,12.4983,2.7338,1.2145,0.3026,2400.0,2400.0,-0.4571,-0.3378,5.2838,94.4988 2019-06-03 15:43:09.960,108.9281,8124.0181,12.4909,2.7194,0.7318,0.1069,2400.0,2400.0,-0.4629,-0.3347,5.2812,94.5106 2019-06-03 15:43:09.980,108.872,8124.0742,12.4909,2.7194,1.1945,0.2538,2400.0,2400.0,-0.4629,-0.3347,5.2812,94.5106 2019-06-03 15:43:10.000,108.8579,8124.1304,12.483,2.7033,1.2426,0.2272,2400.0,2400.0,-0.4629,-0.3347,5.2759,94.5368 2019-06-03 15:43:10.020,108.872,8124.1582,12.4776,2.6961,0.6549,0.2123,2400.0,2400.0,-0.4629,-0.3317,5.2799,94.5434 2019-06-03 15:43:10.040,108.9561,8124.1582,12.4776,2.6961,1.3483,0.1369,2400.0,2400.0,-0.4541,-0.3104,5.2865,94.5434 2019-06-03 15:43:10.060,108.9701,8124.0742,12.4776,2.6961,0.7984,0.2679,2400.0,2400.0,-0.4571,-0.3134,5.2838,94.5434 2019-06-03 15:43:10.080,108.872,8124.1582,12.4748,2.6901,1.0932,0.058,2400.0,2400.0,-0.46,-0.3104,5.2799,94.5569 2019-06-03 15:43:10.100,108.872,8124.1304,12.4647,2.6767,1.156,0.0535,2400.0,2400.0,-0.4571,-0.3043,5.2746,94.5687 2019-06-03 15:43:10.120,108.8439,8124.1582,12.4647,2.6767,0.8901,0.3799,2400.0,2400.0,-0.4629,-0.3104,5.2825,94.5687 2019-06-03 15:43:10.140,108.9561,8124.1582,12.4647,2.6767,0.9867,-0.0088,2400.0,2400.0,-0.46,-0.3073,5.2838,94.5687 2019-06-03 15:43:10.160,108.9421,8124.2144,12.4591,2.6681,1.1841,0.367,2400.0,2400.0,-0.4658,-0.3043,5.2799,94.5818 2019-06-03 15:43:10.180,108.8579,8124.1582,12.4591,2.6681,0.8476,0.0226,2400.0,2400.0,-0.4629,-0.3104,5.2838,94.5818 2019-06-03 15:43:10.200,108.872,8124.1582,12.4485,2.6622,0.6941,0.0707,2400.0,2400.0,-0.4541,-0.3043,5.2799,94.6059 2019-06-03 15:43:10.220,108.872,8124.1865,12.4564,2.6662,1.2703,0.3058,2400.0,2400.0,-0.46,-0.2951,5.2878,94.6142 2019-06-03 15:43:10.240,108.9561,8124.2427,12.4564,2.6662,0.5658,0.1228,2400.0,2400.0,-0.4541,-0.2951,5.2799,94.6142 2019-06-03 15:43:10.260,108.9701,8124.1865,12.4564,2.6662,1.4545,0.1929,2400.0,2400.0,-0.46,-0.2921,5.2785,94.6142 2019-06-03 15:43:10.280,108.872,8124.4106,12.4435,2.6565,0.6667,0.2206,2400.0,2400.0,-0.4629,-0.2951,5.2852,94.6255 2019-06-03 15:43:10.300,108.8579,8125.3359,12.4442,2.6544,0.5288,0.2753,2400.0,2400.0,-0.4629,-0.2951,5.2825,94.6395 2019-06-03 15:43:10.320,108.8579,8126.2051,12.4442,2.6544,1.301,0.0629,2400.0,2400.0,-0.4571,-0.2921,5.2931,94.6395 2019-06-03 15:43:10.340,108.9561,8127.6074,12.4442,2.6544,0.7781,0.364,2400.0,2400.0,-0.46,-0.2951,5.2825,94.6395 2019-06-03 15:43:10.360,108.9421,8128.5884,12.4485,2.6575,1.2111,-0.0246,2400.0,2400.0,-0.4571,-0.283,5.2693,94.6535 2019-06-03 15:43:10.380,108.872,8130.0464,12.4485,2.6575,0.9057,0.4152,2400.0,2400.0,-0.4571,-0.2799,5.2838,94.6535 2019-06-03 15:43:10.400,108.8579,8131.0,12.4411,2.6541,0.8894,0.4291,2340.0,2580.0,-0.4541,-0.2647,5.2838,94.6776 2019-06-03 15:43:10.420,108.872,8131.8691,12.4319,2.6497,0.9859,-0.0161,2340.0,2580.0,-0.4629,-0.2708,5.2852,94.6824 2019-06-03 15:43:10.440,108.9561,8133.271,12.4319,2.6497,1.1786,0.4018,2340.0,2580.0,-0.4658,-0.2677,5.2865,94.6824 2019-06-03 15:43:10.460,108.9561,8133.4951,12.4319,2.6497,0.7019,0.0524,2340.0,2580.0,-0.4629,-0.2464,5.2706,94.6824 2019-06-03 15:43:10.480,108.8579,8133.4673,12.4355,2.6525,1.2045,0.2854,2340.0,2580.0,-0.4629,-0.2494,5.2812,94.6951 2019-06-03 15:43:10.500,108.872,8133.4111,12.4367,2.6538,1.3202,0.2558,2340.0,2580.0,-0.46,-0.2464,5.2838,94.7082 2019-06-03 15:43:10.520,108.7596,8133.4395,12.4367,2.6538,0.6934,0.1957,2340.0,2580.0,-0.4629,-0.2372,5.2825,94.7082 2019-06-03 15:43:10.540,108.7456,8133.3833,12.4367,2.6538,1.2422,0.136,2340.0,2580.0,-0.46,-0.2372,5.2865,94.7082 2019-06-03 15:43:10.560,108.7174,8133.4111,12.4282,2.651,0.7474,0.3021,2340.0,2580.0,-0.4571,-0.2372,5.2719,94.7187 2019-06-03 15:43:10.580,108.6471,8133.4395,12.4282,2.651,1.1756,0.0461,2340.0,2580.0,-0.4512,-0.2372,5.2918,94.7187 2019-06-03 15:43:10.600,108.633,8133.4395,12.4267,2.6574,1.1875,0.0531,2340.0,2580.0,-0.4512,-0.2342,5.2852,94.7401 2019-06-03 15:43:10.620,108.6471,8133.3833,12.4335,2.6637,0.8439,0.3706,2340.0,2580.0,-0.4541,-0.2342,5.2838,94.7475 2019-06-03 15:43:10.640,108.7174,8133.4673,12.4335,2.6637,1.0577,0.0037,2340.0,2580.0,-0.4629,-0.2342,5.2812,94.7475 2019-06-03 15:43:10.660,108.7315,8133.4395,12.4335,2.6637,1.0765,0.3929,2340.0,2580.0,-0.4629,-0.2311,5.2706,94.7475 2019-06-03 15:43:10.680,108.6471,8133.6074,12.4286,2.6671,0.8616,0.0173,2340.0,2580.0,-0.4658,-0.2311,5.2918,94.7576 2019-06-03 15:43:10.700,108.633,8134.5049,12.4238,2.668,0.7781,0.0614,2340.0,2580.0,-0.4541,-0.2311,5.2958,94.7667 2019-06-03 15:43:10.720,108.6471,8135.29,12.4238,2.668,1.2037,0.2774,2340.0,2580.0,-0.4658,-0.2311,5.2785,94.7667 2019-06-03 15:43:10.740,108.7315,8136.5244,12.4238,2.668,0.8287,0.1401,2340.0,2580.0,-0.4629,-0.222,5.2865,94.7667 2019-06-03 15:43:10.760,108.7174,8137.4497,12.4293,2.6781,1.2152,0.2206,2340.0,2580.0,-0.4571,-0.2037,5.2799,94.7781 2019-06-03 15:43:10.780,108.633,8138.7397,12.4293,2.6781,0.7925,0.1891,2340.0,2580.0,-0.4571,-0.2067,5.2905,94.7781 2019-06-03 15:43:10.800,108.633,8139.5811,12.4285,2.6909,0.8077,0.2238,2340.0,2580.0,-0.4541,-0.2098,5.2918,94.7978 2019-06-03 15:43:10.820,108.6471,8140.4224,12.4291,2.6966,1.2418,0.0785,2340.0,2580.0,-0.4571,-0.2098,5.2825,94.8026 2019-06-03 15:43:10.840,108.7174,8141.7124,12.4291,2.6966,0.852,0.3268,2340.0,2580.0,-0.46,-0.2067,5.2931,94.8026 2019-06-03 15:43:10.860,108.7315,8141.8525,12.4291,2.6966,1.0632,0.0844,2340.0,2580.0,-0.46,-0.2098,5.2825,94.8026 2019-06-03 15:43:10.880,108.6471,8141.8525,12.4296,2.7067,0.9134,0.3258,2340.0,2580.0,-0.4541,-0.2037,5.2891,94.8118 2019-06-03 15:43:10.900,108.633,8141.7964,12.4374,2.7195,0.9885,0.3346,2340.0,2580.0,-0.4571,-0.2067,5.2838,94.8209 2019-06-03 15:43:10.920,108.633,8141.7964,12.4374,2.7195,0.9918,0.0683,2340.0,2580.0,-0.4629,-0.2067,5.2772,94.8209 2019-06-03 15:43:10.940,108.7174,8141.7686,12.4374,2.7195,1.1401,0.3104,2340.0,2580.0,-0.4541,-0.2037,5.2984,94.8209 2019-06-03 15:43:10.960,108.7315,8141.7686,12.4366,2.7311,0.8905,0.1643,2340.0,2580.0,-0.4571,-0.2037,5.2905,94.8297 2019-06-03 15:43:10.980,108.6471,8141.7964,12.4366,2.7311,1.0621,0.2011,2340.0,2580.0,-0.4541,-0.2037,5.2931,94.8297 2019-06-03 15:43:11.000,108.633,8141.7686,12.4355,2.7493,1.0791,0.1994,2340.0,2580.0,-0.4658,-0.2037,5.2799,94.8515 2019-06-03 15:43:11.020,108.6471,8141.7407,12.4341,2.7555,0.9375,0.1966,2340.0,2580.0,-0.4629,-0.2006,5.2785,94.8555 2019-06-03 15:43:11.040,108.7315,8141.7407,12.4341,2.7555,1.0688,0.1515,2340.0,2580.0,-0.4571,-0.2037,5.2918,94.8555 2019-06-03 15:43:11.060,108.7315,8141.7407,12.4341,2.7555,0.8679,0.2499,2340.0,2580.0,-0.4629,-0.2006,5.2852,94.8555 2019-06-03 15:43:11.080,108.633,8141.9648,12.4376,2.7665,0.8927,0.109,2340.0,2580.0,-0.4512,-0.1945,5.3024,94.8642 2019-06-03 15:43:11.100,108.6471,8142.9185,12.4355,2.7762,0.9526,0.138,2340.0,2580.0,-0.46,-0.1976,5.2891,94.8708 2019-06-03 15:43:11.120,108.619,8143.8164,12.4355,2.7762,1.0754,0.2518,2340.0,2580.0,-0.4629,-0.1915,5.2812,94.8708 2019-06-03 15:43:11.140,108.7315,8145.1348,12.4355,2.7762,0.8395,0.1555,2340.0,2580.0,-0.4571,-0.1884,5.2958,94.8708 2019-06-03 15:43:11.160,108.7174,8146.0605,12.4385,2.7891,1.078,0.2343,2340.0,2580.0,-0.4629,-0.1884,5.2905,94.8773 2019-06-03 15:43:11.180,108.633,8147.4629,12.4385,2.7891,0.9242,0.1651,2340.0,2580.0,-0.4688,-0.1884,5.2918,94.8773 2019-06-03 15:43:11.200,108.633,8148.4165,12.438,2.8037,0.933,0.1713,2340.0,2580.0,-0.4717,-0.1884,5.2931,94.8935 2019-06-03 15:43:11.220,108.6612,8149.3423,12.4377,2.8097,1.0355,0.1972,2340.0,2580.0,-0.4629,-0.1884,5.2799,94.8979 2019-06-03 15:43:11.240,108.7174,8150.689,12.4377,2.8097,0.9382,0.2348,2340.0,2580.0,-0.4541,-0.1884,5.2971,94.8979 2019-06-03 15:43:11.260,108.7315,8150.8569,12.4377,2.8097,0.9486,0.1641,2340.0,2580.0,-0.4512,-0.1793,5.2838,94.8979 2019-06-03 15:43:11.280,108.633,8150.8008,12.4383,2.8166,1.0798,0.2782,2340.0,2580.0,-0.4541,-0.1488,5.2971,94.9049 2019-06-03 15:43:11.300,108.6471,8150.7729,12.4406,2.8301,0.9981,0.2558,2340.0,2580.0,-0.4571,-0.1671,5.2944,94.9123 2019-06-03 15:43:11.320,108.5485,8150.8291,12.4406,2.8301,0.9445,0.1436,2340.0,2580.0,-0.46,-0.1701,5.2838,94.9123 2019-06-03 15:43:11.340,108.5203,8150.8853,12.4406,2.8301,1.0754,0.2452,2340.0,2580.0,-0.4688,-0.1671,5.2905,94.9123 2019-06-03 15:43:11.360,108.4921,8150.9131,12.4362,2.8387,0.8184,0.1826,2340.0,2580.0,-0.4658,-0.1701,5.2944,94.9197 2019-06-03 15:43:11.380,108.4357,8150.9692,12.4362,2.8387,1.1997,0.2216,2340.0,2580.0,-0.4658,-0.1671,5.2918,94.9197 2019-06-03 15:43:11.400,108.4216,8150.9976,12.4354,2.8583,1.1361,0.2044,2400.0,2400.0,-0.4629,-0.1671,5.2931,94.9381 2019-06-03 15:43:11.420,108.4357,8150.9692,12.4329,2.8634,0.8154,0.2474,2400.0,2400.0,-0.4571,-0.164,5.2785,94.9412 2019-06-03 15:43:11.440,108.5203,8150.9976,12.4329,2.8634,1.1046,0.1054,2400.0,2400.0,-0.4541,-0.164,5.2944,94.9412 2019-06-03 15:43:11.460,108.5203,8150.9414,12.4329,2.8634,1.0259,0.2903,2400.0,2400.0,-0.46,-0.161,5.2944,94.9412 2019-06-03 15:43:11.480,108.4216,8150.9414,12.4334,2.8756,0.9315,0.0966,2400.0,2400.0,-0.46,-0.164,5.2891,94.9495 2019-06-03 15:43:11.500,108.4357,8150.9131,12.4271,2.8856,0.9756,0.1178,2400.0,2400.0,-0.4658,-0.1671,5.2878,94.9573 2019-06-03 15:43:11.520,108.4921,8150.9131,12.4271,2.8856,1.0488,0.304,2400.0,2400.0,-0.46,-0.161,5.2852,94.9573 2019-06-03 15:43:11.540,108.7315,8150.8853,12.4271,2.8856,0.8372,0.0882,2400.0,2400.0,-0.46,-0.1427,5.2984,94.9573 2019-06-03 15:43:11.560,108.7315,8150.8853,12.4246,2.8964,1.2407,0.2595,2400.0,2400.0,-0.4571,-0.1518,5.3024,94.9643 2019-06-03 15:43:11.580,108.633,8150.8291,12.4255,2.9056,0.7581,0.1328,2400.0,2400.0,-0.46,-0.1488,5.2825,94.9731 2019-06-03 15:43:11.600,108.633,8150.8853,12.4208,2.9058,0.7448,0.1644,2400.0,2400.0,-0.4571,-0.1488,5.2931,94.9761 2019-06-03 15:43:11.620,108.633,8150.9131,12.4205,2.9112,1.2478,0.2055,2400.0,2400.0,-0.46,-0.1457,5.2878,94.9796 2019-06-03 15:43:11.640,108.7315,8150.9414,12.4205,2.9112,0.6982,0.2152,2400.0,2400.0,-0.4571,-0.1457,5.2944,94.9796 2019-06-03 15:43:11.660,108.7315,8150.8853,12.4205,2.9112,1.1427,0.1024,2400.0,2400.0,-0.4629,-0.1457,5.2958,94.9796 2019-06-03 15:43:11.680,108.6471,8151.0532,12.4142,2.9152,1.0059,0.2734,2400.0,2400.0,-0.4629,-0.1457,5.2812,94.9857 2019-06-03 15:43:11.700,108.6471,8151.9233,12.4175,2.9284,0.9704,0.2945,2400.0,2400.0,-0.4629,-0.1457,5.2958,94.9945 2019-06-03 15:43:11.720,108.5485,8152.8213,12.4175,2.9284,0.9397,0.0823,2400.0,2400.0,-0.46,-0.1457,5.2931,94.9945 2019-06-03 15:43:11.740,108.5062,8154.168,12.4175,2.9284,1.0628,0.3192,2400.0,2400.0,-0.4571,-0.1365,5.2931,94.9945 2019-06-03 15:43:11.760,108.5062,8155.1216,12.4152,2.9355,0.8335,0.0556,2400.0,2400.0,-0.4629,-0.1396,5.2852,95.0015 2019-06-03 15:43:11.780,108.4074,8156.4966,12.4152,2.9355,1.1827,0.2913,2400.0,2400.0,-0.4629,-0.1396,5.2838,95.0015 2019-06-03 15:43:11.800,108.4216,8157.3662,12.4094,2.9504,1.1786,0.2872,2400.0,2400.0,-0.46,-0.1396,5.2984,95.0181 2019-06-03 15:43:11.820,108.4498,8158.2363,12.4028,2.9485,0.592,0.153,2400.0,2400.0,-0.4629,-0.1365,5.2958,95.0216 2019-06-03 15:43:11.840,108.5203,8159.5269,12.4028,2.9485,1.3746,0.182,2400.0,2400.0,-0.4629,-0.1427,5.2852,95.0216 2019-06-03 15:43:11.860,108.5203,8159.7231,12.4028,2.9485,0.7296,0.2253,2400.0,2400.0,-0.4629,-0.1365,5.2865,95.0216 2019-06-03 15:43:11.880,108.4216,8159.7231,12.4052,2.9607,1.1564,0.113,2400.0,2400.0,-0.4658,-0.1365,5.2746,95.0303 2019-06-03 15:43:11.900,108.4357,8159.6948,12.3967,2.9649,1.2063,0.0803,2400.0,2400.0,-0.4658,-0.1396,5.2958,95.0386 2019-06-03 15:43:11.920,108.3933,8159.667,12.3967,2.9649,0.8435,0.3226,2400.0,2400.0,-0.4658,-0.1396,5.2944,95.0386 2019-06-03 15:43:11.940,108.5203,8159.583,12.3967,2.9649,1.1179,0.0681,2400.0,2400.0,-0.4658,-0.1427,5.2891,95.0386 2019-06-03 15:43:11.960,108.4921,8159.583,12.388,2.9686,1.0247,0.3357,2400.0,2400.0,-0.4658,-0.1457,5.2825,95.0487 2019-06-03 15:43:11.980,108.4216,8159.5547,12.388,2.9686,0.8672,0.0604,2400.0,2400.0,-0.4629,-0.1365,5.2759,95.0487 2019-06-03 15:43:12.000,108.4216,8159.6108,12.3832,2.9788,0.8779,0.0371,2400.0,2400.0,-0.4571,-0.1427,5.2918,95.0732 2019-06-03 15:43:12.020,108.4216,8159.6392,12.3883,2.9858,1.3347,0.3177,2400.0,2400.0,-0.4629,-0.1427,5.2931,95.0802 2019-06-03 15:43:12.040,108.4921,8159.667,12.3883,2.9858,0.7037,0.1078,2400.0,2400.0,-0.4629,-0.1396,5.2799,95.0802 2019-06-03 15:43:12.060,108.5203,8159.6108,12.3883,2.9858,1.3025,0.2606,2400.0,2400.0,-0.46,-0.1396,5.2891,95.0802 2019-06-03 15:43:12.080,108.4216,8159.9194,12.3793,2.9913,0.6926,0.1939,2400.0,2400.0,-0.4658,-0.1427,5.2732,95.092 2019-06-03 15:43:12.100,108.4498,8160.8174,12.3743,3.0014,0.6068,0.2191,2400.0,2400.0,-0.4658,-0.1427,5.2905,95.106 2019-06-03 15:43:12.120,108.3368,8161.7437,12.3743,3.0014,1.3772,0.0823,2400.0,2400.0,-0.4658,-0.1427,5.2931,95.106 2019-06-03 15:43:12.140,108.2944,8163.1187,12.3743,3.0014,0.7489,0.3112,2400.0,2400.0,-0.4629,-0.1396,5.2799,95.106 2019-06-03 15:43:12.160,108.2803,8164.0449,12.3795,3.0145,1.1645,0.0308,2400.0,2400.0,-0.46,-0.1365,5.2905,95.1204 2019-06-03 15:43:12.180,108.1953,8165.3921,12.3795,3.0145,0.8028,0.4174,2400.0,2400.0,-0.46,-0.1427,5.2799,95.1204 2019-06-03 15:43:12.200,108.1953,8166.3179,12.3728,3.0312,0.9142,0.4125,2400.0,2400.0,-0.46,-0.1396,5.2865,95.1462 2019-06-03 15:43:12.220,108.2095,8167.188,12.3635,3.029,0.9793,-0.0262,2400.0,2400.0,-0.4658,-0.1396,5.2865,95.1514 2019-06-03 15:43:12.240,108.3085,8168.4507,12.3635,3.029,1.1486,0.3834,2400.0,2400.0,-0.4688,-0.1396,5.2666,95.1514 2019-06-03 15:43:12.260,108.2944,8168.6191,12.3635,3.029,0.8454,0.0297,2400.0,2400.0,-0.4688,-0.1396,5.2931,95.1514 2019-06-03 15:43:12.280,108.1953,8168.6191,12.3667,3.0421,1.2204,0.3403,2400.0,2400.0,-0.4658,-0.1396,5.2799,95.1663 2019-06-03 15:43:12.300,108.2095,8168.563,12.3675,3.0519,1.3232,0.2883,2400.0,2400.0,-0.4571,-0.1427,5.2785,95.1816 2019-06-03 15:43:12.320,108.2661,8168.6475,12.3675,3.0519,0.6475,0.139,2400.0,2400.0,-0.4571,-0.1427,5.2759,95.1816 2019-06-03 15:43:12.340,108.5062,8168.7314,12.3675,3.0519,1.3739,0.1652,2400.0,2400.0,-0.4541,-0.1396,5.264,95.1816 2019-06-03 15:43:12.360,108.5062,8168.7314,12.3576,3.0516,0.73,0.2777,2400.0,2400.0,-0.46,-0.1457,5.2785,95.1934 2019-06-03 15:43:12.380,108.4216,8168.6191,12.3576,3.0516,1.2551,0.098,2400.0,2400.0,-0.4571,-0.1488,5.2746,95.1934 2019-06-03 15:43:12.400,108.4498,8168.6191,12.352,3.0661,1.2208,0.0461,2340.0,2460.0,-0.4571,-0.1457,5.2719,95.224 2019-06-03 15:43:12.420,108.4216,8168.6191,12.3553,3.0713,0.835,0.3503,2340.0,2460.0,-0.46,-0.1701,5.2772,95.2314 2019-06-03 15:43:12.440,108.4921,8168.6191,12.3553,3.0713,1.0551,0.019,2340.0,2460.0,-0.4629,-0.1793,5.2507,95.2314 2019-06-03 15:43:12.460,108.5203,8168.6191,12.3553,3.0713,0.943,0.3937,2340.0,2460.0,-0.4658,-0.1884,5.2574,95.2314 2019-06-03 15:43:12.480,108.4216,8168.5913,12.3477,3.081,0.8949,0.0294,2340.0,2460.0,-0.46,-0.1915,5.2679,95.2467 2019-06-03 15:43:12.500,108.4498,8168.4507,12.3376,3.0864,0.9415,0.0516,2340.0,2460.0,-0.4571,-0.1915,5.264,95.259 2019-06-03 15:43:12.520,108.3509,8168.3945,12.3376,3.0864,1.1546,0.3135,2340.0,2460.0,-0.46,-0.2098,5.264,95.259 2019-06-03 15:43:12.540,108.3085,8168.479,12.3376,3.0864,0.7533,0.1277,2340.0,2460.0,-0.4629,-0.2098,5.2388,95.259 2019-06-03 15:43:12.560,108.2803,8168.5068,12.3371,3.0962,1.2441,0.2099,2340.0,2460.0,-0.46,-0.2433,5.2481,95.2734 2019-06-03 15:43:12.580,108.2095,8168.5068,12.3371,3.0962,0.7193,0.2232,2340.0,2460.0,-0.4541,-0.2403,5.2587,95.2734 2019-06-03 15:43:12.600,108.1812,8168.563,12.3278,3.1094,0.7722,0.2473,2340.0,2460.0,-0.4629,-0.2403,5.2415,95.297 2019-06-03 15:43:12.620,108.2095,8168.5352,12.3263,3.1146,1.1449,0.1185,2340.0,2460.0,-0.4629,-0.2403,5.2481,95.3035 2019-06-03 15:43:12.640,108.3085,8168.4507,12.3263,3.1146,0.8224,0.3224,2340.0,2460.0,-0.4658,-0.2525,5.2375,95.3035 2019-06-03 15:43:12.660,108.2944,8168.3667,12.3263,3.1146,1.1427,0.0313,2340.0,2460.0,-0.4629,-0.2525,5.2401,95.3035 2019-06-03 15:43:12.680,108.2095,8168.5352,12.3214,3.1226,0.9145,0.3591,2340.0,2460.0,-0.4571,-0.2494,5.2521,95.3175 2019-06-03 15:43:12.700,108.2095,8169.3491,12.3252,3.1312,0.9511,0.309,2340.0,2460.0,-0.46,-0.2525,5.2322,95.3311 2019-06-03 15:43:12.720,108.1103,8170.1631,12.3252,3.1312,0.95,0.1038,2340.0,2460.0,-0.46,-0.2494,5.2388,95.3311 2019-06-03 15:43:12.740,108.082,8171.4824,12.3252,3.1312,1.0787,0.2883,2340.0,2460.0,-0.4688,-0.2494,5.2309,95.3311 2019-06-03 15:43:12.760,108.0536,8172.3525,12.3194,3.1332,0.8853,0.1143,2340.0,2460.0,-0.46,-0.2555,5.2428,95.3429 2019-06-03 15:43:12.780,107.9826,8173.5313,12.3194,3.1332,1.0532,0.2119,2340.0,2460.0,-0.4717,-0.2494,5.2428,95.3429 2019-06-03 15:43:12.800,107.9826,8174.3735,12.3092,3.1386,1.1342,0.1709,2340.0,2460.0,-0.4804,-0.2494,5.2296,95.3674 2019-06-03 15:43:12.820,107.9826,8175.2715,12.3061,3.1379,0.8875,0.235,2340.0,2460.0,-0.4775,-0.2616,5.2309,95.373 2019-06-03 15:43:12.840,108.0678,8176.6191,12.3061,3.1379,1.017,0.1635,2340.0,2460.0,-0.4834,-0.2616,5.2348,95.373 2019-06-03 15:43:12.860,108.082,8176.8994,12.3061,3.1379,0.9179,0.2432,2340.0,2460.0,-0.4834,-0.2586,5.2348,95.373 2019-06-03 15:43:12.880,107.9684,8176.9556,12.2997,3.1372,1.0251,0.1049,2340.0,2460.0,-0.4834,-0.2616,5.2388,95.384 2019-06-03 15:43:12.900,107.9826,8176.9556,12.2893,3.1318,0.9933,0.0873,2340.0,2460.0,-0.4921,-0.2555,5.2229,95.3945 2019-06-03 15:43:12.920,107.9826,8176.9277,12.2893,3.1318,1.1161,0.2837,2340.0,2460.0,-0.4921,-0.2616,5.2309,95.3945 2019-06-03 15:43:12.940,108.0678,8176.9556,12.2893,3.1318,0.9312,0.1479,2340.0,2460.0,-0.4951,-0.2586,5.2309,95.3945 2019-06-03 15:43:12.960,108.0678,8177.04,12.2834,3.1312,1.075,0.2284,2340.0,2460.0,-0.4921,-0.2586,5.2256,95.4054 2019-06-03 15:43:12.980,107.9826,8177.0679,12.2762,3.1308,0.9804,0.172,2340.0,2460.0,-0.4921,-0.2586,5.2296,95.4281 2019-06-03 15:43:13.000,107.9684,8177.0962,12.2675,3.1293,0.8679,0.1835,2340.0,2460.0,-0.4892,-0.2586,5.2229,95.4321 2019-06-03 15:43:13.020,107.9684,8177.0679,12.2644,3.1274,1.0233,0.1482,2340.0,2460.0,-0.4921,-0.2616,5.2282,95.4382 2019-06-03 15:43:13.040,108.0678,8177.0962,12.2644,3.1274,0.9323,0.2655,2340.0,2460.0,-0.4921,-0.2555,5.2322,95.4382 2019-06-03 15:43:13.060,108.082,8176.9839,12.2644,3.1274,0.923,0.1252,2340.0,2460.0,-0.5068,-0.2586,5.2309,95.4382 2019-06-03 15:43:13.080,107.9826,8177.1802,12.2553,3.1246,1.0932,0.2537,2340.0,2460.0,-0.5068,-0.2708,5.2335,95.4491 2019-06-03 15:43:13.100,107.9968,8178.0508,12.2504,3.1227,0.9918,0.2437,2340.0,2460.0,-0.5097,-0.2708,5.219,95.4609 2019-06-03 15:43:13.120,107.9684,8178.9771,12.2504,3.1227,0.9112,0.1299,2340.0,2460.0,-0.5009,-0.2647,5.2269,95.4609 2019-06-03 15:43:13.140,108.0678,8180.3809,12.2504,3.1227,1.0662,0.2491,2340.0,2460.0,-0.5009,-0.2647,5.2296,95.4609 2019-06-03 15:43:13.160,108.0536,8181.3354,12.2411,3.1168,0.8402,0.1765,2340.0,2460.0,-0.4921,-0.2586,5.2269,95.474 2019-06-03 15:43:13.180,107.9826,8182.7114,12.2411,3.1168,1.0813,0.167,2340.0,2460.0,-0.5038,-0.2616,5.2256,95.474 2019-06-03 15:43:13.200,107.9826,8183.5537,12.2235,3.1138,1.0943,0.1652,2340.0,2460.0,-0.5009,-0.2586,5.2216,95.4968 2019-06-03 15:43:13.220,107.9968,8184.396,12.2187,3.1153,0.9323,0.2119,2340.0,2460.0,-0.4921,-0.2616,5.219,95.5033 2019-06-03 15:43:13.240,108.082,8185.7715,12.2187,3.1153,0.9389,0.1537,2340.0,2460.0,-0.4921,-0.2586,5.2309,95.5033 2019-06-03 15:43:13.260,108.082,8185.9116,12.2187,3.1153,1.054,0.2765,2340.0,2460.0,-0.4892,-0.2525,5.2203,95.5033 2019-06-03 15:43:13.280,107.9684,8185.9116,12.21,3.1147,0.9045,0.1157,2340.0,2460.0,-0.498,-0.2494,5.2243,95.5151 2019-06-03 15:43:13.300,107.9684,8185.8838,12.1965,3.1127,0.8842,0.1329,2340.0,2460.0,-0.5097,-0.2525,5.2203,95.5269 2019-06-03 15:43:13.320,107.8974,8185.9116,12.1965,3.1127,1.1753,0.2332,2340.0,2460.0,-0.5009,-0.2494,5.2256,95.5269 2019-06-03 15:43:13.340,107.8689,8185.8276,12.1965,3.1127,0.666,0.1624,2340.0,2460.0,-0.5068,-0.2494,5.2322,95.5269 2019-06-03 15:43:13.360,107.8262,8185.8838,12.1875,3.1164,1.2359,0.2045,2340.0,2460.0,-0.5009,-0.2525,5.2296,95.54 2019-06-03 15:43:13.380,107.7693,8185.9116,12.1875,3.1164,0.7984,0.2163,2340.0,2460.0,-0.498,-0.2525,5.219,95.54 2019-06-03 15:43:13.400,107.755,8185.9116,12.1683,3.1227,0.7932,0.2452,2340.0,2400.0,-0.4892,-0.2525,5.2216,95.5663 2019-06-03 15:43:13.420,107.755,8185.9399,12.1609,3.1241,1.1982,0.0952,2340.0,2400.0,-0.4892,-0.2555,5.2203,95.5728 2019-06-03 15:43:13.440,107.8262,8185.9678,12.1609,3.1241,0.8576,0.2927,2340.0,2400.0,-0.4863,-0.2525,5.2322,95.5728 2019-06-03 15:43:13.460,107.8547,8185.9399,12.1609,3.1241,1.0185,0.0747,2340.0,2400.0,-0.4834,-0.2555,5.2256,95.5728 2019-06-03 15:43:13.480,107.755,8185.7432,12.1501,3.1272,1.0754,0.3436,2340.0,2400.0,-0.4775,-0.2555,5.2203,95.5868 2019-06-03 15:43:13.500,107.7693,8185.6592,12.1435,3.1337,1.0377,0.3358,2340.0,2400.0,-0.4804,-0.2769,5.2269,95.5999 2019-06-03 15:43:13.520,107.7265,8185.687,12.1435,3.1337,0.8324,0.0622,2340.0,2400.0,-0.4775,-0.2921,5.2243,95.5999 2019-06-03 15:43:13.540,107.8405,8185.687,12.1435,3.1337,1.2503,0.2937,2340.0,2400.0,-0.4775,-0.3743,5.2296,95.5999 2019-06-03 15:43:13.560,107.8262,8185.7432,12.1318,3.1342,0.6379,0.1133,2340.0,2400.0,-0.4834,-0.3774,5.2203,95.6108 2019-06-03 15:43:13.580,107.755,8185.7993,12.1318,3.1342,1.3158,0.2593,2340.0,2400.0,-0.4863,-0.4504,5.2216,95.6108 2019-06-03 15:43:13.600,107.7693,8185.7432,12.1128,3.1422,1.2836,0.2091,2340.0,2400.0,-0.4892,-0.5081,5.2269,95.6349 2019-06-03 15:43:13.620,107.7693,8185.6309,12.1029,3.1408,0.7011,0.2137,2340.0,2400.0,-0.4863,-0.5506,5.2256,95.6397 2019-06-03 15:43:13.640,107.8405,8185.687,12.1029,3.1408,1.2873,0.1102,2340.0,2400.0,-0.4921,-0.6447,5.2269,95.6397 2019-06-03 15:43:13.660,107.8547,8185.6592,12.1029,3.1408,0.6919,0.2808,2340.0,2400.0,-0.4951,-0.6811,5.2203,95.6397 2019-06-03 15:43:13.680,107.755,8185.8838,12.0972,3.1449,1.1424,0.0628,2340.0,2400.0,-0.4921,-0.7538,5.2216,95.6497 2019-06-03 15:43:13.700,107.755,8186.8105,12.0834,3.1395,1.0891,0.0428,2340.0,2400.0,-0.4951,-0.7962,5.2256,95.6581 2019-06-03 15:43:13.720,107.7408,8187.6528,12.0834,3.1395,0.8472,0.3764,2340.0,2400.0,-0.4951,-0.8144,5.2203,95.6581 2019-06-03 15:43:13.740,107.8547,8188.9448,12.0834,3.1395,0.933,-0.0037,2340.0,2400.0,-0.498,-0.8748,5.2282,95.6581 2019-06-03 15:43:13.760,107.8405,8189.8433,12.0711,3.1346,1.0314,0.3568,2340.0,2400.0,-0.5214,-0.8869,5.219,95.6672 2019-06-03 15:43:13.780,107.7408,8191.1914,12.0711,3.1346,0.8187,0.0465,2340.0,2400.0,-0.5155,-0.8809,5.2229,95.6672 2019-06-03 15:43:13.800,107.7693,8192.0615,12.0534,3.112,0.7492,0.0678,2340.0,2400.0,-0.5097,-0.8869,5.2229,95.6856 2019-06-03 15:43:13.820,107.755,8192.9326,12.0542,3.1082,1.1975,0.2786,2340.0,2400.0,-0.4892,-0.8869,5.219,95.6904 2019-06-03 15:43:13.840,107.8405,8194.2803,12.0542,3.1082,0.6738,0.135,2340.0,2400.0,-0.4951,-0.9021,5.2216,95.6904 2019-06-03 15:43:13.860,107.8405,8194.4482,12.0542,3.1082,1.3143,0.1855,2340.0,2400.0,-0.4951,-0.9172,5.219,95.6904 2019-06-03 15:43:13.880,107.755,8194.4766,12.0388,3.0772,0.7847,0.2372,2340.0,2400.0,-0.5009,-0.9202,5.2176,95.6961 2019-06-03 15:43:13.900,107.7693,8194.3926,12.0316,3.0499,0.703,0.2584,2340.0,2400.0,-0.5068,-0.9715,5.2282,95.7026 2019-06-03 15:43:13.920,107.6695,8194.4209,12.0316,3.0499,1.2282,0.0851,2340.0,2400.0,-0.5126,-0.9715,5.2229,95.7026 2019-06-03 15:43:13.940,107.6267,8194.5605,12.0316,3.0499,0.8069,0.3592,2340.0,2400.0,-0.5155,-0.9866,5.2229,95.7026 2019-06-03 15:43:13.960,107.6125,8194.5889,12.0255,3.0162,1.0691,0.0202,2340.0,2400.0,-0.5126,-1.0289,5.2163,95.7101 2019-06-03 15:43:13.980,107.5268,8194.6729,12.0255,3.0162,0.9659,0.4073,2340.0,2400.0,-0.4951,-1.0319,5.2137,95.7101 2019-06-03 15:43:14.000,107.5268,8194.6729,12.0109,2.9517,0.8853,0.3832,2340.0,2400.0,-0.4921,-1.047,5.2256,95.7267 2019-06-03 15:43:14.020,107.5411,8194.6729,11.9953,2.926,0.9282,0.0426,2340.0,2400.0,-0.4892,-1.059,5.2256,95.7284 2019-06-03 15:43:14.040,107.6267,8194.6455,11.9953,2.926,1.1013,0.3258,2340.0,2400.0,-0.4951,-1.0892,5.219,95.7284 2019-06-03 15:43:14.060,107.6267,8194.6455,11.9953,2.926,0.673,0.0995,2340.0,2400.0,-0.5068,-1.1103,5.2176,95.7284 2019-06-03 15:43:14.080,107.5268,8194.6729,11.9927,2.8802,1.2548,0.2509,2340.0,2400.0,-0.5097,-1.1133,5.2163,95.7363 2019-06-03 15:43:14.100,107.5411,8194.5889,11.9826,2.8282,1.2651,0.2224,2340.0,2400.0,-0.5097,-1.1495,5.2229,95.7429 2019-06-03 15:43:14.120,107.5125,8194.5889,11.9826,2.8282,0.7067,0.2153,2340.0,2400.0,-0.5126,-1.1434,5.2203,95.7429 2019-06-03 15:43:14.140,107.6267,8194.6172,11.9826,2.8282,1.2685,0.1347,2340.0,2400.0,-0.5038,-1.1465,5.2176,95.7429 2019-06-03 15:43:14.160,107.6267,8194.6455,11.9637,2.7701,0.75,0.3016,2340.0,2400.0,-0.5068,-1.1706,5.2163,95.7499 2019-06-03 15:43:14.180,107.5268,8194.6455,11.9637,2.7701,1.2115,0.0569,2340.0,2400.0,-0.498,-1.1675,5.219,95.7499 2019-06-03 15:43:14.200,107.5268,8194.7012,11.949,2.6745,1.1849,0.0735,2340.0,2400.0,-0.5038,-1.1736,5.2243,95.7617 2019-06-03 15:43:14.220,107.5268,8194.7012,11.9486,2.6445,0.7773,0.3536,2340.0,2400.0,-0.5097,-1.1916,5.2137,95.766 2019-06-03 15:43:14.240,107.6125,8194.7012,11.9486,2.6445,1.1516,0.0308,2340.0,2400.0,-0.5126,-1.1886,5.2123,95.766 2019-06-03 15:43:14.260,107.6267,8194.7578,11.9486,2.6445,1.0244,0.3572,2340.0,2400.0,-0.5126,-1.1946,5.2123,95.766 2019-06-03 15:43:14.280,107.5411,8194.9824,11.9338,2.5735,0.9526,0.0357,2340.0,2400.0,-0.4921,-1.2007,5.2203,95.7721 2019-06-03 15:43:14.300,107.5268,8195.9375,11.9184,2.4994,0.8757,0.0767,2340.0,2400.0,-0.4951,-1.2037,5.2216,95.78 2019-06-03 15:43:14.320,107.5268,8196.8076,11.9184,2.4994,1.1083,0.2707,2340.0,2400.0,-0.5009,-1.2338,5.207,95.78 2019-06-03 15:43:14.340,107.6267,8198.2119,11.9184,2.4994,0.8051,0.1562,2340.0,2400.0,-0.498,-1.2308,5.1991,95.78 2019-06-03 15:43:14.360,107.6125,8199.1953,11.9104,2.4278,1.1516,0.2004,2340.0,2400.0,-0.5038,-1.2398,5.215,95.7874 2019-06-03 15:43:14.380,107.5411,8200.5713,11.8982,2.346,0.7966,0.2145,2340.0,2400.0,-0.5097,-1.2368,5.2097,95.7971 2019-06-03 15:43:14.400,107.5268,8201.499,11.8883,2.3028,0.767,0.2372,2400.0,2340.0,-0.5097,-1.2398,5.215,95.8014 2019-06-03 15:43:14.420,107.5411,8202.3975,11.8805,2.261,1.0921,0.0875,2400.0,2340.0,-0.5272,-1.2488,5.2031,95.8045 2019-06-03 15:43:14.440,107.641,8203.7461,11.8805,2.261,0.8128,0.3294,2400.0,2340.0,-0.498,-1.2428,5.2031,95.8045 2019-06-03 15:43:14.460,107.6267,8203.9141,11.8805,2.261,0.99,0.0821,2400.0,2340.0,-0.4951,-1.2548,5.207,95.8045 2019-06-03 15:43:14.480,107.5125,8203.8857,11.8687,2.1737,0.8687,0.3071,2400.0,2340.0,-0.4746,-1.2488,5.2137,95.8106 2019-06-03 15:43:14.500,107.5553,8203.8018,11.8599,2.0879,0.9785,0.2844,2400.0,2340.0,-0.4921,-1.2518,5.2084,95.818 2019-06-03 15:43:14.520,107.5125,8203.8018,11.8599,2.0879,0.9456,0.0967,2400.0,2340.0,-0.5038,-1.2548,5.211,95.818 2019-06-03 15:43:14.540,107.6125,8203.8301,11.8599,2.0879,1.1268,0.2653,2400.0,2340.0,-0.5068,-1.2578,5.2057,95.818 2019-06-03 15:43:14.560,107.6125,8203.8857,11.8444,1.9956,0.8816,0.1403,2400.0,2340.0,-0.5184,-1.2548,5.2004,95.8255 2019-06-03 15:43:14.580,107.5268,8203.8301,11.8444,1.9956,1.0614,0.2107,2400.0,2340.0,-0.5038,-1.2518,5.1965,95.8255 2019-06-03 15:43:14.600,107.5411,8203.8301,11.8211,1.8535,1.0606,0.178,2400.0,2340.0,-0.5038,-1.2518,5.1898,95.8368 2019-06-03 15:43:14.620,107.5553,8203.8301,11.8121,1.8047,0.8287,0.2043,2400.0,2340.0,-0.5038,-1.2548,5.1978,95.8403 2019-06-03 15:43:14.640,107.6267,8203.8301,11.8121,1.8047,1.1353,0.1355,2400.0,2340.0,-0.4921,-1.2518,5.2004,95.8403 2019-06-03 15:43:14.660,107.641,8203.8018,11.8121,1.8047,0.9138,0.2658,2400.0,2340.0,-0.4921,-1.2548,5.2057,95.8403 2019-06-03 15:43:14.680,107.5411,8203.998,11.7985,1.7117,0.9759,0.1155,2400.0,2340.0,-0.4951,-1.2548,5.1965,95.85 2019-06-03 15:43:14.700,107.5268,8204.8408,11.7783,1.6163,1.0225,0.0982,2400.0,2340.0,-0.4892,-1.2518,5.1819,95.8574 2019-06-03 15:43:14.720,107.4553,8205.7119,11.7783,1.6163,0.9608,0.2961,2400.0,2340.0,-0.5009,-1.2458,5.1726,95.8574 2019-06-03 15:43:14.740,107.4124,8207.0049,11.7783,1.6163,1.0177,0.0896,2400.0,2340.0,-0.5068,-1.2458,5.1686,95.8574 2019-06-03 15:43:14.760,107.3694,8207.875,11.7626,1.5252,1.0022,0.2776,2400.0,2340.0,-0.5097,-1.2428,5.1739,95.8674 2019-06-03 15:43:14.780,107.3121,8209.2236,11.7626,1.5252,0.9038,0.1692,2400.0,2340.0,-0.4951,-1.2428,5.1739,95.8674 2019-06-03 15:43:14.800,107.3121,8210.0664,11.7366,1.3848,0.956,0.1547,2400.0,2340.0,-0.4863,-1.2428,5.162,95.8836 2019-06-03 15:43:14.820,107.3265,8210.9375,11.7316,1.3383,1.0802,0.2135,2400.0,2340.0,-0.4717,-1.2458,5.1634,95.888 2019-06-03 15:43:14.840,107.3837,8212.2578,11.7316,1.3383,0.9511,0.1848,2400.0,2340.0,-0.4454,-1.2308,5.1541,95.888 2019-06-03 15:43:14.860,107.4124,8212.4551,11.7316,1.3383,1.0026,0.1775,2400.0,2340.0,-0.4512,-1.2368,5.1594,95.888 2019-06-03 15:43:14.880,107.2978,8212.3984,11.713,1.2451,1.0358,0.2339,2400.0,2340.0,-0.4629,-1.2187,5.1408,95.8967 2019-06-03 15:43:14.900,107.3121,8212.3701,11.6984,1.1571,0.9707,0.2483,2400.0,2340.0,-0.46,-1.2037,5.1223,95.9077 2019-06-03 15:43:14.920,107.2835,8212.4551,11.6984,1.1571,0.9042,0.136,2400.0,2340.0,-0.4688,-1.2097,5.1223,95.9077 2019-06-03 15:43:14.940,107.3837,8212.4824,11.6984,1.1571,1.0203,0.253,2400.0,2340.0,-0.4541,-1.2007,5.1197,95.9077 2019-06-03 15:43:14.960,107.3837,8212.5391,11.6819,1.0671,0.9149,0.136,2400.0,2340.0,-0.4541,-1.2007,5.117,95.9168 2019-06-03 15:43:14.980,107.3121,8212.5957,11.6819,1.0671,0.9855,0.2522,2400.0,2340.0,-0.46,-1.2007,5.113,95.9168 2019-06-03 15:43:15.000,107.3121,8212.5957,11.6563,0.9344,1.112,0.2413,2400.0,2340.0,-0.4541,-1.1977,5.1077,95.9409 2019-06-03 15:43:15.020,107.3265,8212.5391,11.6457,0.8886,0.8372,0.1832,2400.0,2340.0,-0.4571,-1.2007,5.1077,95.9448 2019-06-03 15:43:15.040,107.3981,8212.5674,11.6457,0.8886,1.0321,0.196,2400.0,2340.0,-0.46,-1.2007,5.0985,95.9448 2019-06-03 15:43:15.060,107.3981,8212.5391,11.6457,0.8886,0.9748,0.2195,2400.0,2340.0,-0.4571,-1.1977,5.0945,95.9448 2019-06-03 15:43:15.080,107.2978,8212.5107,11.6286,0.8012,0.9471,0.1585,2400.0,2340.0,-0.4746,-1.2007,5.0892,95.9557 2019-06-03 15:43:15.100,107.3121,8212.4551,11.6073,0.7123,1.0983,0.1467,2400.0,2340.0,-0.4629,-1.2007,5.0866,95.9649 2019-06-03 15:43:15.120,107.2978,8212.4268,11.6073,0.7123,0.9929,0.2507,2400.0,2340.0,-0.4658,-1.2007,5.0866,95.9649 2019-06-03 15:43:15.140,107.4124,8212.3428,11.6073,0.7123,0.8561,0.1597,2400.0,2340.0,-0.4512,-1.2007,5.0945,95.9649 2019-06-03 15:43:15.160,107.3837,8212.3428,11.5841,0.6237,1.0946,0.2335,2400.0,2340.0,-0.4541,-1.2037,5.0852,95.9724 2019-06-03 15:43:15.180,107.2978,8212.3701,11.5841,0.6237,0.8639,0.1177,2400.0,2340.0,-0.46,-1.1977,5.0852,95.9724 2019-06-03 15:43:15.200,107.2835,8212.3984,11.5506,0.4952,0.8069,0.1192,2400.0,2340.0,-0.46,-1.1886,5.0852,95.9907 2019-06-03 15:43:15.220,107.3121,8212.3984,11.5443,0.4538,1.0625,0.2518,2400.0,2340.0,-0.4658,-1.1916,5.0799,95.9951 2019-06-03 15:43:15.240,107.3837,8212.4268,11.5443,0.4538,0.8236,0.1758,2400.0,2340.0,-0.4658,-1.1916,5.0826,95.9951 2019-06-03 15:43:15.260,107.3981,8212.3701,11.5443,0.4538,1.1105,0.1671,2400.0,2340.0,-0.4629,-1.1946,5.072,95.9951 2019-06-03 15:43:15.280,107.2978,8212.623,11.5181,0.3662,0.8702,0.2352,2400.0,2340.0,-0.4571,-1.1916,5.068,96.0016 2019-06-03 15:43:15.300,107.3265,8213.5508,11.4979,0.2824,0.9593,0.2588,2400.0,2340.0,-0.4571,-1.1946,5.0641,96.0086 2019-06-03 15:43:15.320,107.2835,8214.4502,11.4979,0.2824,0.9278,0.1171,2400.0,2340.0,-0.4629,-1.1916,5.0574,96.0086 2019-06-03 15:43:15.340,107.3837,8215.8545,11.4979,0.2824,0.9401,0.2905,2400.0,2340.0,-0.4629,-1.1916,5.0707,96.0086 2019-06-03 15:43:15.360,107.3837,8216.8105,11.4784,0.1993,0.8931,0.0662,2400.0,2340.0,-0.46,-1.1916,5.0627,96.0148 2019-06-03 15:43:15.380,107.2978,8218.1592,11.4784,0.1993,1.115,0.2689,2400.0,2340.0,-0.4658,-1.1946,5.0667,96.0148 2019-06-03 15:43:15.400,107.2978,8219.0586,11.4424,0.0753,1.0765,0.2663,2340.0,2340.0,-0.4571,-1.1916,5.0654,96.027 2019-06-03 15:43:15.420,107.3121,8219.9297,11.4282,0.0283,0.7574,0.1245,2340.0,2340.0,-0.46,-1.2007,5.0614,96.0283 2019-06-03 15:43:15.440,107.3837,8221.2783,11.4282,0.0283,1.1949,0.2558,2340.0,2340.0,-0.4629,-1.1946,5.0561,96.0283 2019-06-03 15:43:15.460,107.4124,8221.4473,11.4282,0.0283,0.771,0.1536,2340.0,2340.0,-0.46,-1.1916,5.0455,96.0283 2019-06-03 15:43:15.480,107.2978,8221.5029,11.4097,-0.0493,1.1039,0.1838,2340.0,2340.0,-0.4688,-1.1977,5.0442,96.0314 2019-06-03 15:43:15.500,107.3121,8221.4746,11.3877,-0.1324,1.1986,0.1604,2340.0,2340.0,-0.4658,-1.1916,5.0535,96.0318 2019-06-03 15:43:15.520,107.2978,8221.4473,11.3877,-0.1324,0.7381,0.264,2340.0,2340.0,-0.4629,-1.1946,5.0495,96.0318 2019-06-03 15:43:15.540,107.3837,8221.3906,11.3877,-0.1324,1.1264,0.1175,2340.0,2340.0,-0.4688,-1.1946,5.0601,96.0318 2019-06-03 15:43:15.560,107.3981,8221.4746,11.3622,-0.2188,0.8872,0.3103,2340.0,2340.0,-0.4629,-1.1916,5.0455,96.0301 2019-06-03 15:43:15.580,107.3121,8221.4746,11.3622,-0.2188,0.95,0.0585,2340.0,2340.0,-0.4629,-1.1946,5.0442,96.0301 2019-06-03 15:43:15.600,107.2978,8221.5313,11.3256,-0.3414,0.9519,0.0429,2340.0,2340.0,-0.4571,-1.1916,5.0455,96.0279 2019-06-03 15:43:15.620,107.3121,8221.5029,11.3224,-0.3774,1.1046,0.3227,2340.0,2340.0,-0.4629,-1.1946,5.0376,96.0257 2019-06-03 15:43:15.640,107.3981,8221.5029,11.3224,-0.3774,0.7685,0.0766,2340.0,2340.0,-0.4688,-1.1946,5.0389,96.0257 2019-06-03 15:43:15.660,107.3981,8221.4189,11.3224,-0.3774,1.1897,0.3052,2340.0,2340.0,-0.4629,-1.1916,5.027,96.0257 2019-06-03 15:43:15.680,107.2978,8221.6719,11.2964,-0.4619,0.6875,0.1177,2340.0,2340.0,-0.4717,-1.1946,5.0243,96.0182 2019-06-03 15:43:15.700,107.3265,8222.5713,11.2707,-0.5477,0.6479,0.1329,2340.0,2340.0,-0.46,-1.1946,5.0296,96.0086 2019-06-03 15:43:15.720,107.2978,8223.4424,11.2707,-0.5477,1.2481,0.2013,2340.0,2340.0,-0.46,-1.1977,5.0124,96.0086 2019-06-03 15:43:15.740,107.3981,8224.8477,11.2707,-0.5477,0.713,0.2127,2340.0,2340.0,-0.4658,-1.1946,5.0058,96.0086 2019-06-03 15:43:15.760,107.3981,8225.7471,11.2556,-0.625,1.2574,0.1255,2340.0,2340.0,-0.46,-1.1916,4.9965,96.0003 2019-06-03 15:43:15.780,107.3265,8227.04,11.2302,-0.706,0.7966,0.3073,2340.0,2340.0,-0.4775,-1.1977,4.9793,95.9995 2019-06-03 15:43:15.800,107.3121,8227.9111,11.2157,-0.7492,0.6338,0.3217,2340.0,2340.0,-0.4571,-1.1916,5.0005,95.9929 2019-06-03 15:43:15.820,107.3121,8228.7549,11.1995,-0.7932,1.0865,0.0223,2340.0,2340.0,-0.4571,-1.1946,4.9806,95.9868 2019-06-03 15:43:15.840,107.3981,8230.1035,11.1995,-0.7932,0.963,0.3329,2340.0,2340.0,-0.4629,-1.1946,4.9859,95.9868 2019-06-03 15:43:15.860,107.4124,8230.2725,11.1995,-0.7932,1.0425,0.0439,2340.0,2340.0,-0.4629,-1.1886,4.9793,95.9868 2019-06-03 15:43:15.880,107.3265,8230.2725,11.1789,-0.874,1.0188,0.3445,2340.0,2340.0,-0.4658,-1.1916,4.9714,95.9728 2019-06-03 15:43:15.900,107.3121,8230.1318,11.1586,-0.954,1.0059,0.346,2340.0,2340.0,-0.46,-1.1916,4.9714,95.9579 2019-06-03 15:43:15.920,107.3694,8230.1602,11.1586,-0.954,0.7644,0.0479,2340.0,2340.0,-0.4512,-1.1826,4.9581,95.9579 2019-06-03 15:43:15.940,107.6125,8230.1875,11.1586,-0.954,1.2478,0.247,2340.0,2340.0,-0.4629,-1.1886,4.9555,95.9579 2019-06-03 15:43:15.960,107.5982,8230.2998,11.1299,-1.0381,0.7,0.1621,2340.0,2340.0,-0.4629,-1.1645,4.9489,95.94 2019-06-03 15:43:15.980,107.5411,8230.3848,11.1299,-1.0381,1.2426,0.1885,2340.0,2340.0,-0.4629,-1.1645,4.9608,95.94 2019-06-03 15:43:16.000,107.5411,8230.3848,11.0891,-1.1597,1.2829,0.1495,2340.0,2340.0,-0.4688,-1.1465,4.9621,95.9295 2019-06-03 15:43:16.020,107.5411,8230.3564,11.0753,-1.2016,0.7037,0.2768,2340.0,2340.0,-0.4629,-1.1314,4.9502,95.9216 2019-06-03 15:43:16.040,107.6125,8230.3564,11.0753,-1.2016,1.193,0.0359,2340.0,2340.0,-0.4688,-1.1284,4.9462,95.9216 2019-06-03 15:43:16.060,107.6267,8230.3564,11.0753,-1.2016,0.7803,0.3741,2340.0,2340.0,-0.4629,-1.0681,4.9303,95.9216 2019-06-03 15:43:16.080,107.5125,8230.2725,11.0496,-1.283,1.0669,0.0299,2340.0,2340.0,-0.46,-1.0651,4.929,95.902 2019-06-03 15:43:16.100,107.5411,8230.2441,11.0176,-1.3705,1.024,0.0244,2340.0,2340.0,-0.4629,-1.059,4.9264,95.8801 2019-06-03 15:43:16.120,107.5125,8230.2441,11.0176,-1.3705,1.0192,0.3594,2340.0,2340.0,-0.4571,-1.0259,4.9197,95.8801 2019-06-03 15:43:16.140,107.6267,8230.2158,11.0176,-1.3705,0.8358,0.0186,2340.0,2340.0,-0.4658,-1.0259,4.9264,95.8801 2019-06-03 15:43:16.160,107.6125,8230.2725,10.9937,-1.453,1.1105,0.3238,2340.0,2340.0,-0.46,-0.9927,4.9264,95.8583 2019-06-03 15:43:16.180,107.5268,8230.3281,10.9937,-1.453,0.7681,0.1024,2340.0,2340.0,-0.4629,-0.9836,4.929,95.8583 2019-06-03 15:43:16.200,107.5268,8230.3564,10.9458,-1.5739,0.6967,0.1132,2340.0,2340.0,-0.4688,-0.9776,4.9211,95.8342 2019-06-03 15:43:16.220,107.5411,8230.2998,10.9381,-1.6107,1.2289,0.2079,2340.0,2340.0,-0.4629,-0.9806,4.8919,95.8233 2019-06-03 15:43:16.240,107.6125,8230.3281,10.9381,-1.6107,0.6316,0.1879,2340.0,2340.0,-0.4658,-0.9806,4.8893,95.8233 2019-06-03 15:43:16.260,107.641,8230.2998,10.9381,-1.6107,1.2463,0.1226,2340.0,2340.0,-0.4571,-0.9625,4.8866,95.8233 2019-06-03 15:43:16.280,107.5268,8230.4688,10.9056,-1.691,0.7034,0.318,2340.0,2340.0,-0.46,-0.9534,4.8893,95.7992 2019-06-03 15:43:16.300,107.5411,8231.3408,10.8825,-1.7683,0.6786,0.3079,2340.0,2340.0,-0.4658,-0.9534,4.8959,95.7743 2019-06-03 15:43:16.320,107.441,8232.2119,10.8825,-1.7683,1.2082,0.0259,2340.0,2340.0,-0.4658,-0.9504,4.884,95.7743 2019-06-03 15:43:16.340,107.4124,8233.5615,10.8825,-1.7683,0.8535,0.3808,2340.0,2340.0,-0.4688,-0.9474,4.8919,95.7743 2019-06-03 15:43:16.360,107.3694,8234.4893,10.858,-1.8391,1.0063,-0.0074,2340.0,2340.0,-0.4629,-0.9413,4.8853,95.749 2019-06-03 15:43:16.380,107.2978,8235.8945,10.858,-1.8391,0.96,0.3747,2340.0,2340.0,-0.4541,-0.9353,4.8694,95.749 2019-06-03 15:43:16.400,107.3121,8236.7666,10.8109,-1.9494,0.9578,0.3227,2400.0,2400.0,-0.4571,-0.9323,4.8641,95.7223 2019-06-03 15:43:16.420,107.3121,8237.666,10.7885,-1.9891,0.8997,0.0684,2400.0,2400.0,-0.4483,-0.9051,4.8469,95.7079 2019-06-03 15:43:16.440,107.3837,8239.0713,10.7885,-1.9891,1.1338,0.3029,2400.0,2400.0,-0.4658,-0.9081,4.8456,95.7079 2019-06-03 15:43:16.460,107.3981,8239.2686,10.7885,-1.9891,0.7466,0.1099,2400.0,2400.0,-0.4629,-0.9051,4.8535,95.7079 2019-06-03 15:43:16.480,107.2978,8239.2402,10.7643,-2.0584,1.1305,0.2009,2400.0,2400.0,-0.4658,-0.8839,4.8562,95.6804 2019-06-03 15:43:16.500,107.3121,8239.1279,10.7327,-2.1288,1.2744,0.1552,2400.0,2400.0,-0.4688,-0.8809,4.8535,95.6506 2019-06-03 15:43:16.520,107.2835,8239.1279,10.7327,-2.1288,0.73,0.2777,2400.0,2400.0,-0.46,-0.8779,4.8456,95.6506 2019-06-03 15:43:16.540,107.3837,8239.1553,10.7327,-2.1288,1.1091,0.117,2400.0,2400.0,-0.4541,-0.8688,4.8403,95.6506 2019-06-03 15:43:16.560,107.3837,8239.2119,10.6954,-2.1996,0.7466,0.2704,2400.0,2400.0,-0.46,-0.8446,4.8337,95.6191 2019-06-03 15:43:16.580,107.2978,8239.2402,10.6954,-2.1996,1.1316,0.0666,2400.0,2400.0,-0.4571,-0.8022,4.8191,95.6191 2019-06-03 15:43:16.600,107.2978,8239.2402,10.6459,-2.3012,1.125,0.0484,2400.0,2400.0,-0.4688,-0.7962,4.8072,95.5846 2019-06-03 15:43:16.620,107.3121,8239.2119,10.6346,-2.3308,0.8979,0.3264,2400.0,2400.0,-0.4658,-0.775,4.8006,95.5693 2019-06-03 15:43:16.640,107.3837,8239.2686,10.6346,-2.3308,0.8764,0.092,2400.0,2400.0,-0.4629,-0.7659,4.8125,95.5693 2019-06-03 15:43:16.660,107.3981,8239.2402,10.6346,-2.3308,0.9645,0.2838,2400.0,2400.0,-0.4512,-0.7538,4.8165,95.5693 2019-06-03 15:43:16.680,107.3121,8239.2402,10.5949,-2.3973,0.8935,0.1006,2400.0,2400.0,-0.4454,-0.7538,4.8085,95.5352 2019-06-03 15:43:16.700,107.3121,8239.1836,10.5604,-2.4602,0.8014,0.1366,2400.0,2400.0,-0.46,-0.7538,4.7979,95.5007 2019-06-03 15:43:16.720,107.3694,8239.1553,10.5604,-2.4602,1.058,0.2093,2400.0,2400.0,-0.46,-0.7144,4.7794,95.5007 2019-06-03 15:43:16.740,107.6125,8239.2119,10.5604,-2.4602,0.8028,0.2169,2400.0,2400.0,-0.4688,-0.7175,4.7781,95.5007 2019-06-03 15:43:16.760,107.6125,8239.2686,10.5307,-2.5181,0.9245,0.1483,2400.0,2400.0,-0.4688,-0.7053,4.7741,95.4653 2019-06-03 15:43:16.780,107.5268,8239.2959,10.5307,-2.5181,0.8439,0.224,2400.0,2400.0,-0.4571,-0.6841,4.7688,95.4653 2019-06-03 15:43:16.800,107.5268,8239.2959,10.4749,-2.5999,0.7984,0.2725,2400.0,2400.0,-0.46,-0.6872,4.7754,95.4259 2019-06-03 15:43:16.820,107.5411,8239.2959,10.4532,-2.6279,0.9926,0.0879,2400.0,2400.0,-0.4571,-0.6781,4.7688,95.4085 2019-06-03 15:43:16.840,107.6125,8239.3242,10.4532,-2.6279,1.0037,0.2866,2400.0,2400.0,-0.46,-0.6811,4.7741,95.4085 2019-06-03 15:43:16.860,107.641,8239.2959,10.4532,-2.6279,0.8417,0.1199,2400.0,2400.0,-0.4571,-0.6781,4.7701,95.4085 2019-06-03 15:43:16.880,107.5268,8239.5498,10.4198,-2.6796,1.0651,0.229,2400.0,2400.0,-0.4541,-0.6508,4.7357,95.37 2019-06-03 15:43:16.900,107.5411,8240.3926,10.3847,-2.7277,1.088,0.2463,2400.0,2400.0,-0.4658,-0.6477,4.737,95.3315 2019-06-03 15:43:16.920,107.4553,8241.2363,10.3847,-2.7277,0.7603,0.1655,2400.0,2400.0,-0.4629,-0.6477,4.7278,95.3315 2019-06-03 15:43:16.940,107.3837,8242.5859,10.3847,-2.7277,0.9855,0.1751,2400.0,2400.0,-0.4688,-0.6477,4.7344,95.3315 2019-06-03 15:43:16.960,107.3981,8243.4863,10.3427,-2.7804,0.8006,0.236,2400.0,2400.0,-0.46,-0.6477,4.7503,95.2917 2019-06-03 15:43:16.980,107.2978,8244.8076,10.3427,-2.7804,1.0273,0.0869,2400.0,2400.0,-0.4571,-0.6386,4.7264,95.2917 2019-06-03 15:43:17.000,107.2978,8245.6797,10.2827,-2.8461,1.0136,0.1418,2400.0,2400.0,-0.4629,-0.675,4.7344,95.2563 2019-06-03 15:43:17.020,107.3265,8246.4951,10.2637,-2.8669,0.9168,0.2566,2400.0,2400.0,-0.4571,-0.6568,4.7304,95.2358 2019-06-03 15:43:17.040,107.3981,8247.7598,10.2637,-2.8669,0.8783,0.0811,2400.0,2400.0,-0.46,-0.6204,4.7264,95.2358 2019-06-03 15:43:17.060,107.4124,8247.9287,10.2637,-2.8669,1.0588,0.2922,2400.0,2400.0,-0.4717,-0.6386,4.7264,95.2358 2019-06-03 15:43:17.080,107.2978,8247.8721,10.2208,-2.9124,0.8317,0.0944,2400.0,2400.0,-0.4571,-0.6326,4.696,95.1947 2019-06-03 15:43:17.100,107.3121,8247.7598,10.1767,-2.9576,0.7688,0.1571,2400.0,2400.0,-0.46,-0.6356,4.6986,95.1514 2019-06-03 15:43:17.120,107.3837,8247.7041,10.1767,-2.9576,1.0347,0.2171,2400.0,2400.0,-0.4512,-0.6356,4.7052,95.1514 2019-06-03 15:43:17.140,107.5982,8247.7314,10.1767,-2.9576,0.7781,0.156,2400.0,2400.0,-0.4483,-0.6477,4.6841,95.1514 2019-06-03 15:43:17.160,107.6125,8247.7598,10.1374,-2.9961,1.1187,0.1665,2400.0,2400.0,-0.4688,-0.6447,4.7052,95.1081 2019-06-03 15:43:17.180,107.5268,8247.7598,10.0897,-3.0342,0.8557,0.2204,2400.0,2400.0,-0.4688,-0.6295,4.6695,95.088 2019-06-03 15:43:17.200,107.5268,8247.8164,10.0653,-3.0567,0.8058,0.2584,2400.0,2400.0,-0.4717,-0.6386,4.6841,95.0662 2019-06-03 15:43:17.220,107.5268,8247.7881,10.0388,-3.0815,0.9848,0.0987,2400.0,2400.0,-0.4629,-0.6326,4.6933,95.0439 2019-06-03 15:43:17.240,107.6125,8247.8164,10.0388,-3.0815,0.916,0.2784,2400.0,2400.0,-0.4483,-0.6144,4.6735,95.0439 2019-06-03 15:43:17.260,107.641,8247.7881,10.0388,-3.0815,0.7807,0.0521,2400.0,2400.0,-0.4658,-0.6295,4.6721,95.0439 2019-06-03 15:43:17.280,107.5268,8247.8721,9.9946,-3.1195,1.0443,0.2901,2400.0,2400.0,-0.4512,-0.6144,4.647,95.0002 2019-06-03 15:43:17.300,107.5411,8247.8721,9.9522,-3.1591,1.0554,0.3049,2400.0,2400.0,-0.46,-0.6174,4.6443,94.9578 2019-06-03 15:43:17.320,107.5268,8247.8447,9.9522,-3.1591,0.7115,0.1099,2400.0,2400.0,-0.46,-0.6204,4.6642,94.9578 2019-06-03 15:43:17.340,107.5982,8247.8721,9.9522,-3.1591,1.1571,0.2456,2400.0,2400.0,-0.4571,-0.6174,4.6364,94.9578 2019-06-03 15:43:17.360,107.6125,8247.9004,9.9018,-3.2016,0.6597,0.1315,2400.0,2400.0,-0.4746,-0.6204,4.6496,94.9132 2019-06-03 15:43:17.380,107.5411,8247.8721,9.9018,-3.2016,1.1727,0.2119,2400.0,2400.0,-0.46,-0.6053,4.6298,94.9132 2019-06-03 15:43:17.400,107.5268,8247.9004,9.8293,-3.2555,1.1216,0.1759,2340.0,2340.0,-0.46,-0.6083,4.6298,94.866 2019-06-03 15:43:17.420,107.5268,8247.9004,9.8026,-3.2761,0.6253,0.2344,2340.0,2340.0,-0.46,-0.6083,4.643,94.8441 2019-06-03 15:43:17.440,107.6267,8247.8721,9.8026,-3.2761,1.135,0.0864,2340.0,2340.0,-0.4571,-0.6113,4.6179,94.8441 2019-06-03 15:43:17.460,107.6125,8247.8164,9.8026,-3.2761,0.8247,0.2532,2340.0,2340.0,-0.46,-0.6113,4.6179,94.8441 2019-06-03 15:43:17.480,107.5125,8248.0693,9.7577,-3.3098,0.963,0.1059,2340.0,2340.0,-0.4629,-0.5962,4.6126,94.8008 2019-06-03 15:43:17.500,107.5411,8248.9971,9.7022,-3.3504,0.9652,0.0699,2340.0,2340.0,-0.46,-0.5992,4.6059,94.7571 2019-06-03 15:43:17.520,107.5268,8249.8975,9.7022,-3.3504,0.9515,0.3202,2340.0,2340.0,-0.4658,-0.5931,4.6218,94.7571 2019-06-03 15:43:17.540,107.6125,8251.2754,9.7022,-3.3504,0.8106,0.0385,2340.0,2340.0,-0.4629,-0.578,4.5993,94.7571 2019-06-03 15:43:17.560,107.6125,8252.2598,9.6518,-3.3867,1.1128,0.2851,2340.0,2340.0,-0.4658,-0.5992,4.602,94.7143 2019-06-03 15:43:17.580,107.5268,8253.582,9.6518,-3.3867,0.7233,0.1062,2340.0,2340.0,-0.4571,-0.5962,4.5914,94.7143 2019-06-03 15:43:17.600,107.5268,8254.4814,9.5681,-3.4404,0.6716,0.1043,2340.0,2340.0,-0.4483,-0.5931,4.5874,94.6745 2019-06-03 15:43:17.620,107.5268,8255.3818,9.5477,-3.4543,1.1804,0.2215,2340.0,2340.0,-0.4512,-0.5962,4.5874,94.6522 2019-06-03 15:43:17.640,107.5982,8256.7598,9.5477,-3.4543,0.6283,0.1781,2340.0,2340.0,-0.4483,-0.578,4.5689,94.6522 2019-06-03 15:43:17.660,107.641,8256.9287,9.5477,-3.4543,1.142,0.1426,2340.0,2340.0,-0.46,-0.581,4.5755,94.6522 2019-06-03 15:43:17.680,107.5125,8256.9287,9.4905,-3.4943,0.6549,0.2872,2340.0,2340.0,-0.4629,-0.5871,4.5702,94.6076 2019-06-03 15:43:17.700,107.5411,8256.8721,9.4391,-3.5273,0.6335,0.2954,2340.0,2340.0,-0.4658,-0.581,4.5689,94.5644 2019-06-03 15:43:17.720,107.5982,8256.8447,9.4391,-3.5273,1.0684,0.0278,2340.0,2340.0,-0.4804,-0.5871,4.5755,94.5644 2019-06-03 15:43:17.740,107.8262,8256.8164,9.4391,-3.5273,0.8187,0.3333,2340.0,2340.0,-0.4746,-0.5871,4.5477,94.5644 2019-06-03 15:43:17.760,107.8262,8256.8721,9.3893,-3.5584,0.9371,0.0095,2340.0,2340.0,-0.4746,-0.584,4.5583,94.5211 2019-06-03 15:43:17.780,107.7408,8256.957,9.3893,-3.5584,0.8672,0.3635,2340.0,2340.0,-0.4541,-0.584,4.5477,94.5211 2019-06-03 15:43:17.800,107.7408,8256.9287,9.3016,-3.6087,0.9985,0.3679,2340.0,2340.0,-0.4512,-0.581,4.5411,94.4809 2019-06-03 15:43:17.820,107.755,8256.9004,9.2673,-3.633,0.828,-0.0024,2340.0,2340.0,-0.4571,-0.584,4.5503,94.4581 2019-06-03 15:43:17.840,107.8405,8256.9287,9.2673,-3.633,1.0932,0.3395,2340.0,2340.0,-0.46,-0.5749,4.5305,94.4581 2019-06-03 15:43:17.860,107.8405,8256.8721,9.2673,-3.633,0.6956,0.0769,2340.0,2340.0,-0.4629,-0.581,4.5437,94.4581 2019-06-03 15:43:17.880,107.755,8256.9004,9.2173,-3.6633,1.2082,0.2506,2340.0,2340.0,-0.46,-0.5871,4.5358,94.4149 2019-06-03 15:43:17.900,107.7693,8256.8721,9.1605,-3.6968,1.2818,0.1863,2340.0,2340.0,-0.4483,-0.5901,4.5265,94.3707 2019-06-03 15:43:17.920,107.7265,8256.9004,9.1605,-3.6968,0.494,0.186,2340.0,2340.0,-0.4512,-0.5962,4.5371,94.3707 2019-06-03 15:43:17.940,107.8405,8256.8447,9.1605,-3.6968,1.2659,0.1261,2340.0,2340.0,-0.4512,-0.5871,4.5146,94.3707 2019-06-03 15:43:17.960,107.8262,8256.8721,9.0955,-3.735,0.6253,0.2963,2340.0,2340.0,-0.4629,-0.5962,4.5252,94.3261 2019-06-03 15:43:17.980,107.7408,8256.957,9.0955,-3.735,1.1424,0.0499,2340.0,2340.0,-0.4629,-0.5901,4.5146,94.3261 2019-06-03 15:43:18.000,107.7408,8256.957,9.0097,-3.7863,1.2341,-0.0028,2340.0,2340.0,-0.4629,-0.5719,4.508,94.2903 2019-06-03 15:43:18.020,107.755,8256.957,8.9874,-3.7998,0.7792,0.3418,2340.0,2340.0,-0.4746,-0.581,4.5239,94.2689 2019-06-03 15:43:18.040,107.8262,8256.9854,8.9874,-3.7998,1.0351,0.0161,2340.0,2340.0,-0.4541,-0.578,4.5053,94.2689 2019-06-03 15:43:18.060,107.8547,8257.0127,8.9874,-3.7998,0.9604,0.3886,2340.0,2340.0,-0.4512,-0.581,4.5106,94.2689 2019-06-03 15:43:18.080,107.755,8256.9854,8.9243,-3.8373,0.7966,-0.0033,2340.0,2340.0,-0.4483,-0.6053,4.5053,94.2247 2019-06-03 15:43:18.100,107.755,8256.957,8.8583,-3.8811,0.8051,0.0046,2340.0,2340.0,-0.4424,-0.578,4.4934,94.1801 2019-06-03 15:43:18.120,107.8405,8256.9854,8.8583,-3.8811,1.1124,0.321,2340.0,2340.0,-0.4571,-0.584,4.5,94.1801 2019-06-03 15:43:18.140,108.0536,8256.9287,8.8583,-3.8811,0.6349,0.108,2340.0,2340.0,-0.4571,-0.584,4.4894,94.1801 2019-06-03 15:43:18.160,108.0678,8256.957,8.8049,-3.9162,1.1161,0.2323,2340.0,2340.0,-0.4717,-0.5871,4.4947,94.1364 2019-06-03 15:43:18.180,107.9826,8256.957,8.8049,-3.9162,0.4763,0.158,2340.0,2340.0,-0.4629,-0.581,4.5053,94.1364 2019-06-03 15:43:18.200,107.9684,8257.0127,8.7055,-3.9753,0.6316,0.2088,2340.0,2340.0,-0.4688,-0.5749,4.4855,94.1001 2019-06-03 15:43:18.220,107.9968,8256.9854,8.677,-3.9937,1.2067,0.0865,2340.0,2340.0,-0.4717,-0.5931,4.4974,94.0791 2019-06-03 15:43:18.240,108.0678,8256.9287,8.677,-3.9937,0.5869,0.3279,2340.0,2340.0,-0.4571,-0.5871,4.4841,94.0791 2019-06-03 15:43:18.260,108.082,8256.9004,8.677,-3.9937,1.0998,0.0314,2340.0,2340.0,-0.46,-0.5871,4.4828,94.0791 2019-06-03 15:43:18.280,107.9542,8257.1533,8.6131,-4.0351,0.7337,0.3478,2340.0,2340.0,-0.4541,-0.5871,4.4908,94.0372 2019-06-03 15:43:18.300,107.9826,8258.0254,8.5596,-4.0711,0.794,0.337,2340.0,2340.0,-0.4571,-0.5871,4.4749,93.9965 2019-06-03 15:43:18.320,107.9542,8258.8975,8.5596,-4.0711,0.973,0.0036,2340.0,2340.0,-0.4658,-0.584,4.4841,93.9965 2019-06-03 15:43:18.340,108.0536,8260.248,8.5596,-4.0711,0.8631,0.3668,2340.0,2340.0,-0.4658,-0.5871,4.4881,93.9965 2019-06-03 15:43:18.360,108.0678,8261.1484,8.4989,-4.1105,0.8665,0.036,2340.0,2340.0,-0.4629,-0.581,4.4815,93.9563 2019-06-03 15:43:18.380,107.9826,8262.4707,8.4989,-4.1105,0.9741,0.3261,2340.0,2340.0,-0.4571,-0.5871,4.4987,93.9563 2019-06-03 15:43:18.400,107.9826,8263.3711,8.4032,-4.1665,1.0436,0.2992,2400.0,2340.0,-0.4571,-0.578,4.4722,93.9191 2019-06-03 15:43:18.420,107.9968,8264.2432,8.3675,-4.1895,0.6216,0.0909,2400.0,2340.0,-0.4688,-0.584,4.4815,93.8999 2019-06-03 15:43:18.440,108.0536,8265.5645,8.3675,-4.1895,1.1568,0.2238,2400.0,2340.0,-0.46,-0.578,4.4762,93.8999 2019-06-03 15:43:18.460,108.0678,8265.6777,8.3675,-4.1895,0.6889,0.1625,2400.0,2340.0,-0.4571,-0.578,4.4762,93.8999 2019-06-03 15:43:18.480,107.9826,8265.7334,8.3114,-4.2254,1.1364,0.14,2400.0,2340.0,-0.4541,-0.5749,4.4961,93.8636 2019-06-03 15:43:18.500,107.9826,8265.6211,8.2446,-4.2646,1.1531,0.1381,2400.0,2340.0,-0.4512,-0.5719,4.4722,93.8287 2019-06-03 15:43:18.520,107.9826,8265.6211,8.2446,-4.2646,0.6068,0.2649,2400.0,2340.0,-0.4629,-0.578,4.4855,93.8287 2019-06-03 15:43:18.540,108.0678,8265.5928,8.2446,-4.2646,1.1161,0.0704,2400.0,2340.0,-0.46,-0.5749,4.4815,93.8287 2019-06-03 15:43:18.560,108.0536,8265.6211,8.1788,-4.3062,0.6601,0.2833,2400.0,2340.0,-0.4541,-0.5749,4.4735,93.7937 2019-06-03 15:43:18.580,107.9826,8265.5645,8.1177,-4.343,1.0144,0.0453,2400.0,2340.0,-0.46,-0.5719,4.4868,93.7828 2019-06-03 15:43:18.600,107.9684,8265.6211,8.0843,-4.3641,1.0296,0.0663,2400.0,2340.0,-0.4571,-0.5689,4.4683,93.7662 2019-06-03 15:43:18.620,107.9826,8265.5928,8.0598,-4.3817,0.8727,0.3326,2400.0,2340.0,-0.4629,-0.5719,4.4762,93.7508 2019-06-03 15:43:18.640,108.0536,8265.5371,8.0598,-4.3817,0.9175,0.0367,2400.0,2340.0,-0.4541,-0.5749,4.4881,93.7508 2019-06-03 15:43:18.660,108.0678,8265.5371,8.0598,-4.3817,0.8472,0.2981,2400.0,2340.0,-0.4541,-0.5689,4.4762,93.7508 2019-06-03 15:43:18.680,107.9684,8265.5371,7.9931,-4.4224,0.7337,0.0565,2400.0,2340.0,-0.46,-0.5719,4.4894,93.7194 2019-06-03 15:43:18.700,107.9826,8265.4805,7.9298,-4.4655,0.7829,0.1131,2400.0,2340.0,-0.4571,-0.5689,4.4709,93.6897 2019-06-03 15:43:18.720,108.0536,8265.5088,7.9298,-4.4655,0.9844,0.2651,2400.0,2340.0,-0.46,-0.5719,4.4908,93.6897 2019-06-03 15:43:18.740,108.2661,8265.5371,7.9298,-4.4655,0.7485,0.1243,2400.0,2340.0,-0.4629,-0.5719,4.4961,93.6897 2019-06-03 15:43:18.760,108.2661,8265.6211,7.8726,-4.5061,1.0151,0.1905,2400.0,2340.0,-0.4512,-0.5658,4.4908,93.6599 2019-06-03 15:43:18.780,108.1953,8265.6494,7.8726,-4.5061,0.7599,0.1709,2400.0,2340.0,-0.4629,-0.5689,4.4961,93.6599 2019-06-03 15:43:18.800,108.1953,8265.6777,7.7775,-4.5668,0.7304,0.2196,2400.0,2340.0,-0.46,-0.5658,4.4775,93.6416 2019-06-03 15:43:18.820,108.2095,8265.6211,7.7475,-4.588,1.0839,0.1412,2400.0,2340.0,-0.4629,-0.5719,4.4841,93.6276 2019-06-03 15:43:18.840,108.2944,8265.5928,7.7475,-4.588,0.7725,0.2392,2400.0,2340.0,-0.4629,-0.5689,4.4921,93.6276 2019-06-03 15:43:18.860,108.2944,8265.5645,7.7475,-4.588,1.0063,0.0871,2400.0,2340.0,-0.4541,-0.5689,4.4868,93.6276 2019-06-03 15:43:18.880,108.1812,8265.5928,7.6859,-4.6319,0.801,0.2452,2400.0,2340.0,-0.4629,-0.5871,4.4974,93.6005 2019-06-03 15:43:18.900,108.1953,8265.5371,7.6317,-4.672,0.8261,0.2735,2400.0,2340.0,-0.4571,-0.5597,4.4908,93.5738 2019-06-03 15:43:18.920,108.252,8265.5645,7.6317,-4.672,0.916,0.1006,2400.0,2340.0,-0.4629,-0.5476,4.4868,93.5738 2019-06-03 15:43:18.940,108.4921,8265.5645,7.6317,-4.672,0.8369,0.2513,2400.0,2340.0,-0.46,-0.5719,4.4947,93.5738 2019-06-03 15:43:18.960,108.4921,8265.5928,7.5727,-4.7165,0.9131,0.1049,2400.0,2340.0,-0.4571,-0.5658,4.4749,93.5476 2019-06-03 15:43:18.980,108.4216,8265.6777,7.5727,-4.7165,0.9744,0.254,2400.0,2340.0,-0.4571,-0.5719,4.5027,93.5476 2019-06-03 15:43:19.000,108.4074,8265.79,7.4831,-4.7771,0.9585,0.2412,2400.0,2340.0,-0.4541,-0.5719,4.5027,93.538 2019-06-03 15:43:19.020,108.4216,8265.79,7.4509,-4.8,0.8742,0.1433,2400.0,2340.0,-0.46,-0.5719,4.508,93.5262 2019-06-03 15:43:19.040,108.5062,8265.9023,7.4509,-4.8,0.8805,0.1872,2400.0,2340.0,-0.4658,-0.5689,4.5371,93.5262 2019-06-03 15:43:19.060,108.5203,8265.874,7.4509,-4.8,0.8746,0.1655,2400.0,2340.0,-0.4658,-0.5689,4.5199,93.5262 2019-06-03 15:43:19.080,108.4074,8265.874,7.3938,-4.8412,0.9811,0.1771,2400.0,2340.0,-0.4688,-0.581,4.5305,93.5026 2019-06-03 15:43:19.100,108.4216,8265.79,7.3338,-4.8834,1.0063,0.162,2400.0,2340.0,-0.4629,-0.5749,4.5186,93.4807 2019-06-03 15:43:19.120,108.4921,8265.874,7.3338,-4.8834,0.8195,0.22,2400.0,2340.0,-0.4629,-0.5749,4.504,93.4807 2019-06-03 15:43:19.140,108.6893,8265.9023,7.3338,-4.8834,0.8716,0.1247,2400.0,2340.0,-0.4658,-0.581,4.5133,93.4807 2019-06-03 15:43:19.160,108.7174,8265.9307,7.2749,-4.9242,0.9386,0.2118,2400.0,2340.0,-0.4512,-0.5749,4.5053,93.4597 2019-06-03 15:43:19.180,108.619,8265.9873,7.2749,-4.9242,0.8173,0.1185,2400.0,2340.0,-0.46,-0.578,4.5265,93.4597 2019-06-03 15:43:19.200,108.633,8265.959,7.1861,-4.979,0.825,0.124,2400.0,2340.0,-0.4629,-0.5749,4.5384,93.4505 2019-06-03 15:43:19.220,108.6471,8265.9307,7.162,-4.9957,0.9375,0.2148,2400.0,2340.0,-0.4688,-0.578,4.5239,93.4409 2019-06-03 15:43:19.240,108.7174,8265.874,7.162,-4.9957,0.7529,0.1325,2400.0,2340.0,-0.4775,-0.578,4.5384,93.4409 2019-06-03 15:43:19.260,108.7315,8265.874,7.162,-4.9957,0.9426,0.1728,2400.0,2340.0,-0.46,-0.578,4.5199,93.4409 2019-06-03 15:43:19.280,108.619,8265.874,7.1022,-5.0351,0.7511,0.1489,2400.0,2340.0,-0.46,-0.581,4.5159,93.4208 2019-06-03 15:43:19.300,108.633,8265.8457,7.0501,-5.0699,0.7352,0.16,2400.0,2340.0,-0.4571,-0.581,4.5212,93.4016 2019-06-03 15:43:19.320,108.619,8265.874,7.0501,-5.0699,0.9926,0.168,2400.0,2340.0,-0.4629,-0.578,4.5159,93.4016 2019-06-03 15:43:19.340,108.7174,8265.874,7.0501,-5.0699,0.7119,0.1927,2400.0,2340.0,-0.4804,-0.578,4.5477,93.4016 2019-06-03 15:43:19.360,108.7034,8265.9023,6.9996,-5.1038,0.9952,0.1184,2400.0,2340.0,-0.4834,-0.581,4.5411,93.3828 2019-06-03 15:43:19.380,108.619,8265.874,6.9996,-5.1038,0.8498,0.209,2400.0,2340.0,-0.4804,-0.5962,4.5477,93.3828 2019-06-03 15:43:19.400,108.633,8265.959,6.919,-5.1566,0.8054,0.2235,2340.0,2400.0,-0.4658,-0.5992,4.5583,93.3697 2019-06-03 15:43:19.420,108.619,8266.0146,6.892,-5.176,0.9811,0.0951,2340.0,2400.0,-0.4454,-0.5962,4.5424,93.3605 2019-06-03 15:43:19.440,108.7034,8266.0713,6.892,-5.176,0.8853,0.2601,2340.0,2400.0,-0.4483,-0.5962,4.545,93.3605 2019-06-03 15:43:19.460,108.7174,8266.0996,6.892,-5.176,0.8095,0.0775,2340.0,2400.0,-0.4483,-0.5992,4.5358,93.3605 2019-06-03 15:43:19.480,108.633,8266.2959,6.8438,-5.2097,0.9645,0.2372,2340.0,2400.0,-0.4717,-0.5962,4.5371,93.3417 2019-06-03 15:43:19.500,108.633,8267.1963,6.7977,-5.243,0.8942,0.2183,2340.0,2400.0,-0.4717,-0.6022,4.5583,93.3229 2019-06-03 15:43:19.520,108.619,8268.0693,6.7977,-5.243,0.7696,0.1082,2340.0,2400.0,-0.4629,-0.6053,4.5623,93.3229 2019-06-03 15:43:19.540,108.7174,8269.5039,6.7977,-5.243,0.997,0.2338,2340.0,2400.0,-0.4658,-0.6447,4.5808,93.3229 2019-06-03 15:43:19.560,108.7034,8270.4609,6.7477,-5.2802,0.7688,0.135,2340.0,2400.0,-0.46,-0.6417,4.5715,93.3037 2019-06-03 15:43:19.580,108.619,8271.8398,6.7477,-5.2802,1.0148,0.1832,2340.0,2400.0,-0.4541,-0.675,4.5742,93.3037 2019-06-03 15:43:19.600,108.619,8272.7402,6.6722,-5.3283,1.0307,0.1597,2340.0,2400.0,-0.4571,-0.6781,4.5768,93.2967 2019-06-03 15:43:19.620,108.6471,8273.584,6.6467,-5.3451,0.6956,0.2085,2340.0,2400.0,-0.4571,-0.675,4.5728,93.287 2019-06-03 15:43:19.640,108.7315,8274.8223,6.6467,-5.3451,1.0928,0.127,2340.0,2400.0,-0.4688,-0.6993,4.5728,93.287 2019-06-03 15:43:19.660,108.7315,8274.9346,6.6467,-5.3451,0.7111,0.253,2340.0,2400.0,-0.4629,-0.6932,4.5662,93.287 2019-06-03 15:43:19.680,108.619,8274.9346,6.6018,-5.3762,0.9441,0.0762,2340.0,2400.0,-0.46,-0.6993,4.5715,93.2674 2019-06-03 15:43:19.700,108.633,8274.8223,6.5494,-5.4101,0.8909,0.0452,2340.0,2400.0,-0.4571,-0.7053,4.5848,93.246 2019-06-03 15:43:19.720,108.7174,8274.7656,6.5494,-5.4101,0.9423,0.2957,2340.0,2400.0,-0.4541,-0.7023,4.5768,93.246 2019-06-03 15:43:19.740,108.9421,8274.709,6.5494,-5.4101,0.9064,0.0552,2340.0,2400.0,-0.4629,-0.7114,4.5834,93.246 2019-06-03 15:43:19.760,108.9281,8274.7656,6.5035,-5.4416,0.9057,0.2881,2340.0,2400.0,-0.46,-0.7114,4.5702,93.2254 2019-06-03 15:43:19.780,108.8579,8274.6816,6.5035,-5.4416,0.8147,0.0524,2340.0,2400.0,-0.4658,-0.7084,4.5676,93.2254 2019-06-03 15:43:19.800,108.8579,8274.7373,6.4314,-5.4882,0.7415,0.0579,2340.0,2400.0,-0.4629,-0.7084,4.5927,93.2053 2019-06-03 15:43:19.820,108.872,8274.7373,6.4142,-5.4994,1.1283,0.2599,2340.0,2400.0,-0.4571,-0.7084,4.5808,93.1939 2019-06-03 15:43:19.840,108.9421,8274.7373,6.4142,-5.4994,0.6312,0.1216,2340.0,2400.0,-0.4629,-0.7053,4.5834,93.1939 2019-06-03 15:43:19.860,108.9561,8274.7373,6.4142,-5.4994,1.0943,0.2146,2340.0,2400.0,-0.46,-0.7023,4.5808,93.1939 2019-06-03 15:43:19.880,108.872,8274.7939,6.3662,-5.532,0.7133,0.1737,2340.0,2400.0,-0.4658,-0.7144,4.5755,93.1712 2019-06-03 15:43:19.900,108.886,8274.6533,6.3243,-5.5622,0.5628,0.171,2340.0,2400.0,-0.4658,-0.7266,4.594,93.1472 2019-06-03 15:43:19.920,108.9561,8274.5967,6.3243,-5.5622,1.1361,0.1204,2340.0,2400.0,-0.4571,-0.7235,4.5795,93.1472 2019-06-03 15:43:19.940,109.1521,8274.6533,6.3243,-5.5622,0.6767,0.2151,2340.0,2400.0,-0.46,-0.7508,4.5874,93.1472 2019-06-03 15:43:19.960,109.166,8274.6816,6.2882,-5.5874,1.0954,0.1122,2340.0,2400.0,-0.46,-0.7296,4.5874,93.1209 2019-06-03 15:43:19.980,109.0821,8274.709,6.2452,-5.6157,0.7315,0.2982,2340.0,2400.0,-0.4571,-0.7235,4.5874,93.1161 2019-06-03 15:43:20.000,109.0681,8274.7373,6.2247,-5.6322,0.6756,0.2988,2340.0,2400.0,-0.4658,-0.7447,4.6033,93.1013 2019-06-03 15:43:20.020,109.0821,8274.709,6.1988,-5.6517,1.0244,0.0172,2340.0,2400.0,-0.4658,-0.7447,4.5954,93.0877 2019-06-03 15:43:20.040,109.18,8274.709,6.1988,-5.6517,0.8702,0.3105,2340.0,2400.0,-0.4717,-0.7599,4.5954,93.0877 2019-06-03 15:43:20.060,109.166,8274.6816,6.1988,-5.6517,0.9082,0.0341,2340.0,2400.0,-0.4688,-0.7568,4.6007,93.0877 2019-06-03 15:43:20.080,109.0821,8274.709,6.1639,-5.6822,0.9737,0.3531,2340.0,2400.0,-0.46,-0.7568,4.5954,93.0589 2019-06-03 15:43:20.100,109.0821,8274.5967,6.1267,-5.7089,0.9989,0.3387,2340.0,2400.0,-0.4658,-0.7599,4.6165,93.03 2019-06-03 15:43:20.120,109.2359,8274.5967,6.1267,-5.7089,0.6427,0.0256,2340.0,2400.0,-0.4629,-0.7568,4.6033,93.03 2019-06-03 15:43:20.140,109.5702,8274.625,6.1267,-5.7089,1.2097,0.2667,2340.0,2400.0,-0.4658,-0.7901,4.6073,93.03 2019-06-03 15:43:20.160,109.6119,8274.6816,6.0832,-5.7424,0.5891,0.1245,2340.0,2400.0,-0.4571,-0.7901,4.6271,92.9999 2019-06-03 15:43:20.180,109.5146,8274.6816,6.0832,-5.7424,1.1479,0.2109,2340.0,2400.0,-0.4483,-0.7992,4.6232,92.9999 2019-06-03 15:43:20.200,109.5146,8274.6533,6.0264,-5.7883,1.1187,0.2155,2340.0,2400.0,-0.4541,-0.8174,4.651,92.9653 2019-06-03 15:43:20.220,109.5285,8274.625,6.0043,-5.8092,0.5491,0.1969,2340.0,2400.0,-0.4541,-0.8144,4.6523,92.9487 2019-06-03 15:43:20.240,109.5841,8274.6816,6.0043,-5.8092,1.2219,0.0998,2340.0,2400.0,-0.4571,-0.8537,4.6536,92.9487 2019-06-03 15:43:20.260,109.6119,8274.709,6.0043,-5.8092,0.6242,0.2918,2340.0,2400.0,-0.4629,-0.8507,4.6642,92.9487 2019-06-03 15:43:20.280,109.5146,8274.709,5.9693,-5.8411,1.1623,0.0391,2340.0,2400.0,-0.46,-0.8507,4.639,92.9159 2019-06-03 15:43:20.300,109.5146,8274.6816,5.9263,-5.8793,1.1671,0.0406,2340.0,2400.0,-0.4688,-0.8537,4.6483,92.8818 2019-06-03 15:43:20.320,109.598,8274.5967,5.9263,-5.8793,0.6949,0.3246,2340.0,2400.0,-0.4629,-0.8537,4.6483,92.8818 2019-06-03 15:43:20.340,109.8061,8274.5967,5.9263,-5.8793,1.0499,-0.0093,2340.0,2400.0,-0.46,-0.8597,4.6443,92.8818 2019-06-03 15:43:20.360,109.8199,8274.6533,5.8844,-5.9195,0.848,0.3368,2340.0,2400.0,-0.46,-0.8779,4.6735,92.8469 2019-06-03 15:43:20.380,109.7507,8274.709,5.8844,-5.9195,0.9955,-0.0141,2340.0,2400.0,-0.4571,-0.8718,4.6708,92.8469 2019-06-03 15:43:20.400,109.7229,8274.7656,5.8282,-5.9761,0.9315,0.0109,2400.0,2400.0,-0.4629,-0.8748,4.6841,92.8093 2019-06-03 15:43:20.420,109.7507,8274.709,5.8174,-5.9926,0.9286,0.3477,2400.0,2400.0,-0.4688,-0.8779,4.6841,92.7905 2019-06-03 15:43:20.440,109.8338,8274.7373,5.8174,-5.9926,0.8065,-0.0091,2400.0,2400.0,-0.4629,-0.8839,4.6695,92.7905 2019-06-03 15:43:20.460,109.8199,8274.6533,5.8174,-5.9926,1.0251,0.3146,2400.0,2400.0,-0.4658,-0.896,4.6774,92.7905 2019-06-03 15:43:20.480,109.7368,8274.6533,5.774,-6.0337,0.7023,0.0716,2400.0,2400.0,-0.4629,-0.893,4.6602,92.7524 2019-06-03 15:43:20.500,109.7507,8274.625,5.7385,-6.0779,0.5939,0.1067,2400.0,2400.0,-0.4688,-0.899,4.6708,92.7131 2019-06-03 15:43:20.520,109.8061,8274.6533,5.7385,-6.0779,1.1808,0.207,2400.0,2400.0,-0.46,-0.893,4.6774,92.7131 2019-06-03 15:43:20.540,110.0136,8274.6816,5.7385,-6.0779,0.5728,0.1858,2400.0,2400.0,-0.4629,-0.9081,4.6947,92.7131 2019-06-03 15:43:20.560,110.0412,8274.7656,5.71,-6.1143,1.2633,0.1035,2400.0,2400.0,-0.4629,-0.9323,4.7132,92.6729 2019-06-03 15:43:20.580,109.9445,8274.8223,5.71,-6.1143,0.6024,0.2842,2400.0,2400.0,-0.46,-0.9262,4.7092,92.6729 2019-06-03 15:43:20.600,109.9583,8274.7373,5.6543,-6.1785,0.4789,0.3095,2400.0,2400.0,-0.4717,-0.9292,4.7105,92.63 2019-06-03 15:43:20.620,109.9721,8274.7656,5.6333,-6.1997,1.274,0.0241,2400.0,2400.0,-0.4717,-0.9292,4.7145,92.6086 2019-06-03 15:43:20.640,110.0274,8274.8223,5.6333,-6.1997,0.6875,0.4031,2400.0,2400.0,-0.4688,-0.9323,4.6933,92.6086 2019-06-03 15:43:20.660,110.055,8274.7939,5.6333,-6.1997,1.1841,-0.0821,2400.0,2400.0,-0.4571,-0.9444,4.7145,92.6086 2019-06-03 15:43:20.680,109.9445,8274.8223,5.6002,-6.2456,0.7082,0.4487,2400.0,2400.0,-0.4541,-0.9413,4.7105,92.5671 2019-06-03 15:43:20.700,109.9445,8274.7373,5.5778,-6.2834,0.6786,0.4247,2400.0,2400.0,-0.46,-0.9444,4.7211,92.5247 2019-06-03 15:43:20.720,110.0412,8274.7373,5.5778,-6.2834,1.0059,-0.0771,2400.0,2400.0,-0.4629,-0.9413,4.7357,92.5247 2019-06-03 15:43:20.740,110.2481,8274.6533,5.5778,-6.2834,0.9249,0.4513,2400.0,2400.0,-0.4717,-0.9444,4.7331,92.5247 2019-06-03 15:43:20.760,110.2618,8274.6533,5.546,-6.3274,0.8979,-0.1056,2400.0,2400.0,-0.4688,-0.9534,4.7529,92.4814 2019-06-03 15:43:20.780,110.1792,8274.6816,5.546,-6.3274,0.9567,0.4207,2400.0,2400.0,-0.46,-0.9504,4.741,92.4814 2019-06-03 15:43:20.800,110.1654,8274.709,5.5028,-6.3936,1.0754,0.3768,2400.0,2400.0,-0.4571,-0.9746,4.7423,92.4211 2019-06-03 15:43:20.820,110.1654,8274.7373,5.4773,-6.4255,0.6915,0.0127,2400.0,2400.0,-0.4541,-0.9927,4.7542,92.3979 2019-06-03 15:43:20.840,110.2481,8274.7656,5.4773,-6.4255,1.1716,0.3326,2400.0,2400.0,-0.4571,-0.9927,4.7556,92.3979 2019-06-03 15:43:20.860,110.3031,8274.6816,5.4773,-6.4255,0.6893,0.0494,2400.0,2400.0,-0.4658,-0.9927,4.7714,92.3979 2019-06-03 15:43:20.880,110.1792,8274.5684,5.4569,-6.471,1.1897,0.2385,2400.0,2400.0,-0.46,-0.9927,4.7741,92.3525 2019-06-03 15:43:20.900,110.2067,8274.54,5.4269,-6.5219,1.2389,0.1787,2400.0,2400.0,-0.4658,-0.9927,4.7781,92.3061 2019-06-03 15:43:20.920,110.2343,8274.5967,5.4269,-6.5219,0.6017,0.1958,2400.0,2400.0,-0.4629,-0.9896,4.786,92.3061 2019-06-03 15:43:20.940,110.4543,8274.6816,5.4269,-6.5219,1.298,0.1402,2400.0,2400.0,-0.4541,-0.9896,4.7887,92.3061 2019-06-03 15:43:20.960,110.4543,8274.7373,5.3889,-6.5783,0.5173,0.2421,2400.0,2400.0,-0.4512,-1.0047,4.8019,92.258 2019-06-03 15:43:20.980,110.3719,8274.7656,5.3889,-6.5783,1.2751,0.0517,2400.0,2400.0,-0.4454,-1.0078,4.7993,92.258 2019-06-03 15:43:21.000,110.3719,8274.7656,5.3518,-6.6584,1.2881,0.0099,2400.0,2400.0,-0.4483,-1.0078,4.8019,92.1951 2019-06-03 15:43:21.020,110.3994,8274.6816,5.3451,-6.6858,0.6823,0.3634,2400.0,2400.0,-0.4571,-1.0078,4.8151,92.1693 2019-06-03 15:43:21.040,110.4818,8274.7656,5.3451,-6.6858,1.1638,-0.0064,2400.0,2400.0,-0.46,-1.0078,4.8045,92.1693 2019-06-03 15:43:21.060,110.4818,8274.8223,5.3451,-6.6858,0.6941,0.3665,2400.0,2400.0,-0.46,-1.0047,4.8218,92.1693 2019-06-03 15:43:21.080,110.3719,8274.7939,5.3159,-6.7402,1.2574,-0.033,2400.0,2400.0,-0.4541,-1.0047,4.8151,92.119 2019-06-03 15:43:21.100,110.3719,8274.7373,5.2821,-6.7998,1.1719,-0.0643,2400.0,2400.0,-0.4541,-1.0078,4.8112,92.0688 2019-06-03 15:43:21.120,110.4543,8274.7373,5.2821,-6.7998,0.875,0.4043,2400.0,2400.0,-0.4629,-1.0168,4.8376,92.0688 2019-06-03 15:43:21.140,110.701,8274.6816,5.2821,-6.7998,1.0784,-0.0323,2400.0,2400.0,-0.4658,-1.0108,4.8244,92.0688 2019-06-03 15:43:21.160,110.6873,8274.6533,5.2582,-6.8581,0.8298,0.3908,2400.0,2400.0,-0.4658,-1.0138,4.839,92.0172 2019-06-03 15:43:21.180,110.6052,8274.6533,5.2582,-6.8581,0.9682,-0.0299,2400.0,2400.0,-0.4541,-1.0168,4.8363,92.0172 2019-06-03 15:43:21.200,110.6052,8274.6533,5.2157,-6.9424,0.9001,-0.0085,2400.0,2400.0,-0.4571,-1.0228,4.8363,91.9569 2019-06-03 15:43:21.220,110.6052,8274.625,5.2139,-6.967,1.1464,0.3464,2400.0,2400.0,-0.4454,-1.0289,4.839,91.9298 2019-06-03 15:43:21.240,110.6737,8274.5967,5.2139,-6.967,0.7932,0.0645,2400.0,2400.0,-0.4454,-1.0228,4.8337,91.9298 2019-06-03 15:43:21.260,110.6737,8274.5684,5.2139,-6.967,1.0421,0.2796,2400.0,2400.0,-0.46,-1.0259,4.8376,91.9298 2019-06-03 15:43:21.280,110.5915,8274.4844,5.1813,-7.0281,0.771,0.0969,2400.0,2400.0,-0.46,-1.0168,4.8403,91.876 2019-06-03 15:43:21.300,110.6326,8274.3438,5.1573,-7.0903,0.7226,0.1145,2400.0,2400.0,-0.4688,-1.0228,4.8376,91.8205 2019-06-03 15:43:21.320,110.6873,8274.3438,5.1573,-7.0903,1.1989,0.2141,2400.0,2400.0,-0.4658,-1.0259,4.8588,91.8205 2019-06-03 15:43:21.340,110.8923,8274.3721,5.1573,-7.0903,0.6882,0.1891,2400.0,2400.0,-0.4629,-1.0228,4.8509,91.8205 2019-06-03 15:43:21.360,110.8923,8274.4277,5.1414,-7.1475,1.0832,0.1572,2400.0,2400.0,-0.4629,-1.0198,4.8615,91.7645 2019-06-03 15:43:21.380,110.8104,8274.4561,5.1172,-7.2074,0.6508,0.1998,2400.0,2400.0,-0.46,-1.0228,4.8549,91.7186 2019-06-03 15:43:21.400,110.8104,8274.5127,5.1034,-7.2389,0.703,0.2552,2400.0,2400.0,-0.4717,-1.0198,4.8443,91.6906 2019-06-03 15:43:21.420,110.8377,8274.4561,5.0899,-7.2704,1.2045,0.0566,2400.0,2400.0,-0.4629,-1.0228,4.8575,91.6622 2019-06-03 15:43:21.440,110.906,8274.4277,5.0899,-7.2704,0.7784,0.3101,2400.0,2400.0,-0.4512,-1.0228,4.8535,91.6622 2019-06-03 15:43:21.460,110.9196,8274.3994,5.0899,-7.2704,1.1191,0.0492,2400.0,2400.0,-0.4541,-1.0259,4.8694,91.6622 2019-06-03 15:43:21.480,110.8241,8274.4561,5.068,-7.3338,0.7588,0.3055,2400.0,2400.0,-0.4512,-1.0198,4.8641,91.6054 2019-06-03 15:43:21.500,110.8241,8274.3994,5.0496,-7.3947,0.838,0.3073,2400.0,2400.0,-0.4512,-1.0259,4.8628,91.5486 2019-06-03 15:43:21.520,110.8923,8274.4277,5.0496,-7.3947,1.0111,0.0062,2400.0,2400.0,-0.4688,-1.0198,4.8774,91.5486 2019-06-03 15:43:21.540,111.1239,8274.3994,5.0496,-7.3947,0.8698,0.3171,2400.0,2400.0,-0.4688,-1.0228,4.8721,91.5486 2019-06-03 15:43:21.560,111.1103,8274.4277,5.0274,-7.4592,0.977,0.0301,2400.0,2400.0,-0.4629,-1.0228,4.8813,91.4913 2019-06-03 15:43:21.580,111.0423,8274.4277,5.0274,-7.4592,0.9401,0.303,2400.0,2400.0,-0.4541,-1.0198,4.88,91.4913 2019-06-03 15:43:21.600,111.0287,8274.4561,4.9965,-7.5545,1.0691,0.3205,2400.0,2400.0,-0.4483,-1.0228,4.8866,91.4087 2019-06-03 15:43:21.620,111.0423,8274.4277,4.9794,-7.5917,0.8224,0.0481,2400.0,2400.0,-0.4541,-1.0198,4.9052,91.3781 2019-06-03 15:43:21.640,111.1239,8274.4277,4.9794,-7.5917,0.9892,0.2683,2400.0,2400.0,-0.4629,-0.9836,4.9078,91.3781 2019-06-03 15:43:21.660,111.1239,8274.4561,4.9794,-7.5917,0.8923,0.1283,2400.0,2400.0,-0.4658,-0.9896,4.9184,91.3781 2019-06-03 15:43:21.680,111.0287,8274.4561,4.9624,-7.6529,1.0432,0.2219,2400.0,2400.0,-0.4658,-0.9927,4.9144,91.32 2019-06-03 15:43:21.700,111.0559,8274.3721,4.9399,-7.7215,1.1819,0.2104,2400.0,2400.0,-0.4629,-0.9927,4.9065,91.2596 2019-06-03 15:43:21.720,111.1919,8274.3721,4.9399,-7.7215,0.7662,0.1529,2400.0,2400.0,-0.4658,-0.9957,4.9171,91.2596 2019-06-03 15:43:21.740,111.5173,8274.4277,4.9399,-7.7215,1.105,0.1635,2400.0,2400.0,-0.4571,-0.9927,4.9197,91.2596 2019-06-03 15:43:21.760,111.5444,8274.4844,4.9129,-7.7901,0.8306,0.2356,2400.0,2400.0,-0.46,-0.9866,4.9317,91.1993 2019-06-03 15:43:21.780,111.4768,8274.5684,4.9129,-7.7901,1.1054,0.1152,2400.0,2400.0,-0.4629,-0.9866,4.9462,91.1993 2019-06-03 15:43:21.800,111.4497,8274.625,4.8837,-7.8874,1.1638,0.1132,2400.0,2400.0,-0.46,-0.9806,4.9449,91.1176 2019-06-03 15:43:21.820,111.4768,8274.6533,4.8768,-7.9195,0.7622,0.2509,2400.0,2400.0,-0.46,-0.9806,4.9528,91.087 2019-06-03 15:43:21.840,111.5579,8274.6816,4.8768,-7.9195,1.0739,0.0886,2400.0,2400.0,-0.4454,-0.9836,4.9462,91.087 2019-06-03 15:43:21.860,111.5579,8274.709,4.8768,-7.9195,0.8409,0.3024,2400.0,2400.0,-0.4454,-0.9806,4.9409,91.087 2019-06-03 15:43:21.880,111.4632,8274.7656,4.8569,-7.9866,1.0503,0.0622,2400.0,2400.0,-0.4512,-0.9776,4.9475,91.0262 2019-06-03 15:43:21.900,111.4632,8274.6816,4.8332,-8.0539,1.1105,0.0683,2400.0,2400.0,-0.46,-0.9776,4.9542,90.9646 2019-06-03 15:43:21.920,111.6255,8274.709,4.8332,-8.0539,0.9156,0.3057,2400.0,2400.0,-0.4658,-0.9474,4.9714,90.9646 2019-06-03 15:43:21.940,111.9355,8274.7656,4.8332,-8.0539,1.0643,0.0662,2400.0,2400.0,-0.4629,-0.9232,4.9714,90.9646 2019-06-03 15:43:21.960,111.9624,8274.7656,4.8147,-8.1215,0.9619,0.3063,2400.0,2400.0,-0.4629,-0.9232,4.9674,90.9029 2019-06-03 15:43:21.980,111.8817,8274.7656,4.8147,-8.1215,0.943,0.091,2400.0,2400.0,-0.4541,-0.9202,4.9621,90.9029 2019-06-03 15:43:22.000,111.9086,8274.709,4.7894,-8.2146,0.9463,0.066,2400.0,2400.0,-0.4512,-0.9232,4.9674,90.8242 2019-06-03 15:43:22.020,111.8817,8274.6816,4.788,-8.243,1.0166,0.2729,2400.0,2400.0,-0.4512,-0.9232,4.982,90.7932 2019-06-03 15:43:22.040,111.9758,8274.6533,4.788,-8.243,0.8713,0.1167,2400.0,2400.0,-0.4541,-0.9141,4.9833,90.7932 2019-06-03 15:43:22.060,111.9893,8274.625,4.788,-8.243,0.963,0.2456,2400.0,2400.0,-0.4571,-0.9141,4.9873,90.7932 2019-06-03 15:43:22.080,111.8951,8274.5967,4.7668,-8.3075,0.8846,0.124,2400.0,2400.0,-0.4629,-0.9051,4.982,90.732 2019-06-03 15:43:22.100,111.8817,8274.5127,4.7515,-8.3678,0.8576,0.1297,2400.0,2400.0,-0.4629,-0.899,4.974,90.6708 2019-06-03 15:43:22.120,111.9489,8274.54,4.7515,-8.3678,1.1039,0.2167,2400.0,2400.0,-0.4629,-0.9021,4.9846,90.6708 2019-06-03 15:43:22.140,112.1637,8274.4844,4.7515,-8.3678,0.821,0.1568,2400.0,2400.0,-0.4571,-0.899,4.9806,90.6708 2019-06-03 15:43:22.160,112.1772,8274.5127,4.7391,-8.4259,1.0255,0.1636,2400.0,2400.0,-0.4541,-0.9021,4.9859,90.6087 2019-06-03 15:43:22.180,112.0967,8274.54,4.7391,-8.4259,0.8058,0.201,2400.0,2400.0,-0.4454,-0.896,4.9912,90.6087 2019-06-03 15:43:22.200,112.0833,8274.5684,4.7155,-8.5145,0.9082,0.207,2400.0,2400.0,-0.4512,-0.899,4.9873,90.5253 2019-06-03 15:43:22.220,112.0967,8274.54,4.7087,-8.544,1.0688,0.1364,2400.0,2400.0,-0.4571,-0.899,5.0045,90.4951 2019-06-03 15:43:22.240,112.1772,8274.5684,4.7087,-8.544,0.8816,0.2326,2400.0,2400.0,-0.4571,-0.899,4.9965,90.4951 2019-06-03 15:43:22.260,112.1906,8274.5684,4.7087,-8.544,1.1142,0.0854,2400.0,2400.0,-0.4629,-0.899,4.9873,90.4951 2019-06-03 15:43:22.280,112.0967,8274.4844,4.6948,-8.6036,0.8383,0.2824,2400.0,2400.0,-0.4541,-0.899,4.9965,90.4339 2019-06-03 15:43:22.300,112.1101,8274.4277,4.6827,-8.662,0.9212,0.2707,2400.0,2400.0,-0.4512,-0.899,4.9939,90.3714 2019-06-03 15:43:22.320,112.2575,8274.3994,4.6827,-8.662,0.9304,0.0794,2400.0,2400.0,-0.46,-0.9021,4.9952,90.3714 2019-06-03 15:43:22.340,112.5781,8274.4561,4.6827,-8.662,0.9696,0.2466,2400.0,2400.0,-0.46,-0.896,4.9939,90.3714 2019-06-03 15:43:22.360,112.6048,8274.5127,4.6694,-8.7234,1.0547,0.0467,2400.0,2400.0,-0.46,-0.899,4.9926,90.308 2019-06-03 15:43:22.380,112.5114,8274.4844,4.6694,-8.7234,0.9556,0.2874,2400.0,2400.0,-0.46,-0.899,4.9992,90.308 2019-06-03 15:43:22.400,112.5248,8274.4561,4.6496,-8.8097,0.9637,0.2761,2340.0,2340.0,-0.46,-0.899,4.9992,90.2262 2019-06-03 15:43:22.420,112.5114,8274.4277,4.6392,-8.8419,0.8916,0.0947,2340.0,2340.0,-0.46,-0.9021,5.0084,90.1957 2019-06-03 15:43:22.440,112.5914,8274.4844,4.6392,-8.8419,0.9885,0.2245,2340.0,2340.0,-0.4571,-0.893,5.0045,90.1957 2019-06-03 15:43:22.460,112.6048,8274.4844,4.6392,-8.8419,0.95,0.0848,2340.0,2340.0,-0.4571,-0.899,4.9952,90.1957 2019-06-03 15:43:22.480,112.5114,8274.5684,4.6287,-8.8983,1.044,0.2569,2340.0,2340.0,-0.4541,-0.899,5.0084,90.1336 2019-06-03 15:43:22.500,112.5248,8274.5127,4.618,-8.959,1.0913,0.2273,2340.0,2340.0,-0.4571,-0.893,4.9992,90.0724 2019-06-03 15:43:22.520,112.6713,8274.4561,4.618,-8.959,0.7662,0.1642,2340.0,2340.0,-0.4688,-0.896,5.0164,90.0724 2019-06-03 15:43:22.540,112.9768,8274.4561,4.618,-8.959,1.085,0.1887,2340.0,2340.0,-0.4834,-0.893,5.0084,90.0724 2019-06-03 15:43:22.560,113.0033,8274.5127,4.6014,-9.0191,0.8912,0.1706,2340.0,2340.0,-0.4746,-0.89,5.0005,90.0112 2019-06-03 15:43:22.580,112.9238,8274.54,4.6014,-9.0191,1.0884,0.1898,2340.0,2340.0,-0.4629,-0.89,5.0031,90.0112 2019-06-03 15:43:22.600,112.937,8274.5967,4.5826,-9.1044,1.0414,0.1562,2340.0,2340.0,-0.4454,-0.89,5.0071,89.9321 2019-06-03 15:43:22.620,112.937,8274.5684,4.5776,-9.1315,0.8653,0.2273,2340.0,2340.0,-0.4512,-0.89,5.0151,89.9015 2019-06-03 15:43:22.640,113.0165,8274.4844,4.5776,-9.1315,0.9878,0.1324,2340.0,2340.0,-0.4541,-0.893,5.0071,89.9015 2019-06-03 15:43:22.660,113.0165,8274.4277,4.5776,-9.1315,0.9608,0.2252,2340.0,2340.0,-0.4571,-0.893,4.9979,89.9015 2019-06-03 15:43:22.680,112.9238,8274.4561,4.565,-9.1903,1.0858,0.1346,2340.0,2340.0,-0.4571,-0.89,5.0124,89.8411 2019-06-03 15:43:22.700,112.937,8274.4277,4.5496,-9.2484,0.9974,0.1161,2340.0,2340.0,-0.46,-0.893,5.0084,89.7804 2019-06-03 15:43:22.720,112.9901,8274.4561,4.5496,-9.2484,0.9537,0.2574,2340.0,2340.0,-0.4571,-0.893,5.0084,89.7804 2019-06-03 15:43:22.740,113.2017,8274.5127,4.5496,-9.2484,1.0288,0.1073,2340.0,2340.0,-0.4571,-0.89,5.0018,89.7804 2019-06-03 15:43:22.760,113.2149,8274.54,4.5375,-9.3059,0.963,0.2421,2340.0,2340.0,-0.4541,-0.893,4.9965,89.7201 2019-06-03 15:43:22.780,113.1356,8274.5127,4.5375,-9.3059,1.0728,0.1102,2340.0,2340.0,-0.4483,-0.89,5.0137,89.7201 2019-06-03 15:43:22.800,113.1489,8274.5684,4.5185,-9.3826,1.0229,0.1171,2340.0,2340.0,-0.4512,-0.8869,5.0005,89.6396 2019-06-03 15:43:22.820,113.1489,8274.5967,4.5183,-9.4047,1.0222,0.2396,2340.0,2340.0,-0.46,-0.893,5.0164,89.6086 2019-06-03 15:43:22.840,113.2149,8274.625,4.5183,-9.4047,1.0547,0.135,2340.0,2340.0,-0.4717,-0.8869,5.0124,89.6086 2019-06-03 15:43:22.860,113.2281,8274.625,4.5183,-9.4047,1.0329,0.2356,2340.0,2340.0,-0.4629,-0.8869,5.0045,89.6086 2019-06-03 15:43:22.880,113.1224,8274.625,4.5057,-9.4565,1.0358,0.1009,2340.0,2340.0,-0.4658,-0.8869,5.0098,89.5487 2019-06-03 15:43:22.900,113.1356,8274.5684,4.4925,-9.5059,0.9382,0.1121,2340.0,2340.0,-0.4571,-0.8869,5.0031,89.4884 2019-06-03 15:43:22.920,113.3073,8274.54,4.4925,-9.5059,1.0351,0.2509,2340.0,2340.0,-0.4629,-0.8869,5.0098,89.4884 2019-06-03 15:43:22.940,113.61,8274.5684,4.4925,-9.5059,1.0155,0.141,2340.0,2340.0,-0.4629,-0.89,5.019,89.4884 2019-06-03 15:43:22.960,113.6232,8274.625,4.4863,-9.5518,1.1094,0.2448,2340.0,2340.0,-0.4571,-0.8869,5.0111,89.4289 2019-06-03 15:43:22.980,113.5443,8274.6533,4.4863,-9.5518,0.8898,0.106,2340.0,2340.0,-0.4541,-0.8839,5.0164,89.4289 2019-06-03 15:43:23.000,113.5443,8274.709,4.4673,-9.6232,0.8909,0.1412,2340.0,2340.0,-0.4454,-0.8809,5.0084,89.3572 2019-06-03 15:43:23.020,113.5575,8274.6816,4.4664,-9.6438,1.1006,0.2101,2340.0,2340.0,-0.4571,-0.8809,5.0071,89.3275 2019-06-03 15:43:23.040,113.6232,8274.7373,4.4664,-9.6438,0.9445,0.1982,2340.0,2340.0,-0.4658,-0.8809,5.0164,89.3275 2019-06-03 15:43:23.060,113.6363,8274.6816,4.4664,-9.6438,1.1283,0.1777,2340.0,2340.0,-0.4775,-0.8839,5.0151,89.3275 2019-06-03 15:43:23.080,113.5443,8274.5967,4.4531,-9.6908,0.8916,0.1612,2340.0,2340.0,-0.4775,-0.893,5.023,89.2689 2019-06-03 15:43:23.100,113.5838,8274.5127,4.4442,-9.7358,0.9486,0.1817,2340.0,2340.0,-0.4629,-0.896,5.0177,89.2086 2019-06-03 15:43:23.120,113.7019,8274.5127,4.4442,-9.7358,1.0554,0.1623,2340.0,2340.0,-0.4512,-0.893,5.0071,89.2086 2019-06-03 15:43:23.140,114.0159,8274.5127,4.4442,-9.7358,0.9142,0.2211,2340.0,2340.0,-0.4424,-0.893,5.0098,89.2086 2019-06-03 15:43:23.160,114.0421,8274.5967,4.436,-9.7767,1.1387,0.1494,2340.0,2340.0,-0.4424,-0.89,5.0058,89.1474 2019-06-03 15:43:23.180,113.9768,8274.5967,4.436,-9.7767,0.9153,0.207,2340.0,2340.0,-0.4454,-0.893,5.0243,89.1474 2019-06-03 15:43:23.200,113.9637,8274.541,4.4165,-9.8401,0.8931,0.2141,2340.0,2340.0,-0.4483,-0.893,5.0151,89.0744 2019-06-03 15:43:23.220,113.9768,8274.541,4.4088,-9.8602,1.0251,0.1061,2340.0,2340.0,-0.4629,-0.9172,5.0111,89.0447 2019-06-03 15:43:23.240,114.0421,8274.5684,4.4088,-9.8602,0.9685,0.2473,2340.0,2340.0,-0.4658,-0.9292,5.0111,89.0447 2019-06-03 15:43:23.260,114.0682,8274.541,4.4088,-9.8602,1.0835,0.1275,2340.0,2340.0,-0.4629,-0.9323,5.0151,89.0447 2019-06-03 15:43:23.280,113.9768,8274.54,4.399,-9.9015,0.9112,0.2171,2340.0,2340.0,-0.4658,-0.9504,5.027,88.9848 2019-06-03 15:43:23.300,113.9637,8274.5127,4.389,-9.9417,0.9759,0.2427,2340.0,2340.0,-0.4629,-0.9474,5.0204,88.9236 2019-06-03 15:43:23.320,114.0551,8274.4844,4.389,-9.9417,0.973,0.0599,2340.0,2340.0,-0.46,-0.9474,5.0151,88.9236 2019-06-03 15:43:23.340,114.2506,8274.4277,4.389,-9.9417,1.0092,0.2676,2340.0,2340.0,-0.4571,-0.9504,5.019,88.9236 2019-06-03 15:43:23.360,114.2375,8274.4844,4.3786,-9.983,0.9955,0.0924,2340.0,2340.0,-0.46,-0.9444,5.0151,88.8628 2019-06-03 15:43:23.380,114.1724,8274.4561,4.3786,-9.983,1.095,0.2619,2340.0,2340.0,-0.4571,-0.9715,5.027,88.8628 2019-06-03 15:43:23.400,114.1724,8274.4561,4.3604,-10.0451,1.0517,0.2372,2400.0,2400.0,-0.4541,-0.9746,5.0243,88.7828 2019-06-03 15:43:23.420,114.1724,8274.4844,4.3503,-10.0689,0.9552,0.0695,2400.0,2400.0,-0.4571,-0.9746,5.0217,88.7527 2019-06-03 15:43:23.440,114.2636,8274.5127,4.3503,-10.0689,1.0281,0.2333,2400.0,2400.0,-0.4571,-0.9715,5.0243,88.7527 2019-06-03 15:43:23.460,114.2636,8274.4277,4.3503,-10.0689,0.9789,0.1392,2400.0,2400.0,-0.46,-0.9776,5.0204,88.7527 2019-06-03 15:43:23.480,114.1594,8274.1182,4.343,-10.1104,1.0651,0.2154,2400.0,2400.0,-0.4658,-0.9715,5.0296,88.6897 2019-06-03 15:43:23.500,114.1855,8273.0488,4.3326,-10.1592,1.0688,0.1655,2400.0,2400.0,-0.4629,-0.9685,5.027,88.6259 2019-06-03 15:43:23.520,114.3156,8272.1484,4.3326,-10.1592,0.9619,0.1448,2400.0,2400.0,-0.46,-0.9685,5.019,88.6259 2019-06-03 15:43:23.540,114.6269,8270.8262,4.3326,-10.1592,1.0835,0.1924,2400.0,2400.0,-0.4483,-0.9685,5.0243,88.6259 2019-06-03 15:43:23.560,114.6528,8269.9541,4.3202,-10.2064,0.9608,0.1865,2400.0,2400.0,-0.4454,-0.9685,5.0084,88.563 2019-06-03 15:43:23.580,114.5751,8268.6318,4.3202,-10.2064,1.0865,0.1689,2400.0,2400.0,-0.4483,-0.9715,5.0257,88.563 2019-06-03 15:43:23.600,114.5621,8267.7598,4.3051,-10.2757,1.0773,0.1331,2400.0,2400.0,-0.46,-0.9625,5.023,88.4812 2019-06-03 15:43:23.620,114.5881,8266.915,4.3006,-10.2973,0.9726,0.178,2400.0,2400.0,-0.4629,-0.9715,5.0257,88.4484 2019-06-03 15:43:23.640,114.6528,8265.5645,4.3006,-10.2973,1.0754,0.1485,2400.0,2400.0,-0.4658,-0.9776,5.027,88.4484 2019-06-03 15:43:23.660,114.6657,8265.3682,4.3006,-10.2973,0.9057,0.239,2400.0,2400.0,-0.4571,-0.9746,5.019,88.4484 2019-06-03 15:43:23.680,114.5751,8265.3398,4.2909,-10.3454,1.0366,0.1174,2400.0,2400.0,-0.46,-0.9746,5.0283,88.3837 2019-06-03 15:43:23.700,114.5751,8265.2832,4.2771,-10.3946,1.0532,0.1128,2400.0,2400.0,-0.4629,-0.9715,5.0257,88.3182 2019-06-03 15:43:23.720,114.7303,8265.2832,4.2771,-10.3946,0.9992,0.2318,2400.0,2400.0,-0.4629,-0.9746,5.0217,88.3182 2019-06-03 15:43:23.740,115.0398,8265.2832,4.2771,-10.3946,1.1176,0.0898,2400.0,2400.0,-0.46,-0.9776,5.023,88.3182 2019-06-03 15:43:23.760,115.0526,8265.3115,4.267,-10.4437,0.9929,0.2696,2400.0,2400.0,-0.4541,-0.9776,5.0243,88.2517 2019-06-03 15:43:23.780,114.9754,8265.3398,4.267,-10.4437,1.0051,0.0907,2400.0,2400.0,-0.4571,-0.9715,5.0296,88.2517 2019-06-03 15:43:23.800,114.9883,8265.3398,4.2512,-10.5165,1.0096,0.0936,2400.0,2400.0,-0.4541,-0.9746,5.0257,88.1626 2019-06-03 15:43:23.820,114.9883,8265.3398,4.2503,-10.5384,1.0296,0.2403,2400.0,2400.0,-0.4512,-0.9715,5.0204,88.1293 2019-06-03 15:43:23.840,115.0655,8265.4238,4.2503,-10.5384,0.933,0.0878,2400.0,2400.0,-0.4541,-0.9746,5.031,88.1293 2019-06-03 15:43:23.860,115.0784,8265.4238,4.2503,-10.5384,1.0669,0.2331,2400.0,2400.0,-0.4571,-0.9746,5.0283,88.1293 2019-06-03 15:43:23.880,114.9754,8265.4521,4.2374,-10.5887,0.8568,0.1143,2400.0,2400.0,-0.4512,-0.9715,5.0296,88.0616 2019-06-03 15:43:23.900,114.9883,8265.4238,4.2261,-10.6385,0.8901,0.1102,2400.0,2400.0,-0.4541,-0.9746,5.023,87.9951 2019-06-03 15:43:23.920,115.1298,8265.4238,4.2261,-10.6385,1.0972,0.2213,2400.0,2400.0,-0.4512,-0.9776,5.0204,87.9951 2019-06-03 15:43:23.940,115.4246,8265.3965,4.2261,-10.6385,0.9534,0.1183,2400.0,2400.0,-0.4512,-0.9746,5.031,87.9951 2019-06-03 15:43:23.960,115.463,8265.4521,4.221,-10.6866,1.0969,0.2049,2400.0,2400.0,-0.4541,-0.9685,5.0296,87.9269 2019-06-03 15:43:23.980,115.3734,8265.5371,4.221,-10.6866,0.8639,0.1696,2400.0,2400.0,-0.4571,-0.9746,5.0349,87.9269 2019-06-03 15:43:24.000,115.3734,8265.5371,4.2054,-10.7618,0.946,0.1919,2400.0,2400.0,-0.46,-0.9715,5.027,87.8334 2019-06-03 15:43:24.020,115.3734,8265.5088,4.2022,-10.7865,1.1161,0.1527,2400.0,2400.0,-0.4658,-0.9746,5.023,87.7993 2019-06-03 15:43:24.040,115.4502,8265.5088,4.2022,-10.7865,0.889,0.1721,2400.0,2400.0,-0.4629,-0.9746,5.0283,87.7993 2019-06-03 15:43:24.060,115.4502,8265.5088,4.2022,-10.7865,1.088,0.1352,2400.0,2400.0,-0.4629,-0.9746,5.027,87.7993 2019-06-03 15:43:24.080,115.3734,8265.4805,4.1915,-10.8391,0.8561,0.2341,2400.0,2400.0,-0.4541,-0.9776,5.0323,87.7302 2019-06-03 15:43:24.100,115.3862,8265.3682,4.1848,-10.8887,0.8509,0.2599,2400.0,2400.0,-0.46,-0.9776,5.031,87.6607 2019-06-03 15:43:24.120,115.4374,8265.3965,4.1848,-10.8887,1.1712,0.103,2400.0,2400.0,-0.4629,-0.9746,5.0204,87.6607 2019-06-03 15:43:24.140,115.6545,8265.4238,4.1848,-10.8887,0.8653,0.246,2400.0,2400.0,-0.4629,-0.9776,5.0323,87.6607 2019-06-03 15:43:24.160,115.6672,8265.4521,4.1771,-10.9401,1.0713,0.0806,2400.0,2400.0,-0.46,-0.9776,5.0243,87.5903 2019-06-03 15:43:24.180,115.5779,8265.4521,4.1771,-10.9401,0.9212,0.2798,2400.0,2400.0,-0.4541,-0.9776,5.0376,87.5903 2019-06-03 15:43:24.200,115.5779,8265.4521,4.1634,-11.0168,0.9234,0.2933,2400.0,2400.0,-0.4512,-0.9746,5.031,87.5025 2019-06-03 15:43:24.220,115.5907,8265.3682,4.1541,-11.045,1.0602,0.0677,2400.0,2400.0,-0.4571,-0.9776,5.023,87.4671 2019-06-03 15:43:24.240,115.6545,8265.3115,4.1541,-11.045,0.9138,0.2639,2400.0,2400.0,-0.4629,-0.9746,5.0296,87.4671 2019-06-03 15:43:24.260,115.68,8265.2832,4.1541,-11.045,1.0051,0.0563,2400.0,2400.0,-0.4571,-0.9746,5.0283,87.4671 2019-06-03 15:43:24.280,115.5779,8265.2549,4.1477,-11.097,1.0362,0.3005,2400.0,2400.0,-0.46,-0.9776,5.0296,87.3954 2019-06-03 15:43:24.300,115.5907,8265.1709,4.1444,-11.1449,1.0673,0.3153,2400.0,2400.0,-0.4571,-0.9806,5.031,87.3233 2019-06-03 15:43:24.320,115.7437,8265.0869,4.1444,-11.1449,1.0344,0.0357,2400.0,2400.0,-0.4571,-0.9806,5.0243,87.3233 2019-06-03 15:43:24.340,116.0359,8265.1143,4.1444,-11.1449,0.9896,0.3065,2400.0,2400.0,-0.4571,-0.9806,5.027,87.3233 2019-06-03 15:43:24.360,116.0739,8265.1709,4.134,-11.1978,0.8635,0.0389,2400.0,2400.0,-0.4541,-0.9715,5.0243,87.2511 2019-06-03 15:43:24.380,115.9851,8265.1992,4.134,-11.1978,1.2296,0.2972,2400.0,2400.0,-0.4541,-0.9776,5.0323,87.2511 2019-06-03 15:43:24.400,115.9725,8265.2275,4.1242,-11.2732,1.1375,0.3126,2400.0,2400.0,-0.4571,-0.9836,5.0296,87.148 2019-06-03 15:43:24.420,115.9851,8265.2275,4.1127,-11.3034,0.9389,0.0747,2400.0,2400.0,-0.4512,-0.9776,5.0296,87.1113 2019-06-03 15:43:24.440,116.0486,8265.2832,4.1127,-11.3034,1.2211,0.2582,2400.0,2400.0,-0.46,-0.9836,5.0323,87.1113 2019-06-03 15:43:24.460,116.0612,8265.2549,4.1127,-11.3034,0.7784,0.1088,2400.0,2400.0,-0.4571,-0.9806,5.0257,87.1113 2019-06-03 15:43:24.480,115.9725,8265.3115,4.1085,-11.3519,1.3332,0.2348,2400.0,2400.0,-0.4629,-0.9806,5.0283,87.0378 2019-06-03 15:43:24.500,115.9978,8265.2275,4.0998,-11.4022,1.2951,0.2282,2400.0,2400.0,-0.4658,-0.9806,5.0336,86.9626 2019-06-03 15:43:24.520,116.1372,8265.2275,4.0998,-11.4022,0.848,0.179,2400.0,2400.0,-0.4629,-0.9806,5.0283,86.9626 2019-06-03 15:43:24.540,116.4404,8265.2832,4.0998,-11.4022,1.2659,0.1757,2400.0,2400.0,-0.4571,-0.9806,5.031,86.9626 2019-06-03 15:43:24.560,116.4656,8265.3682,4.0861,-11.4583,0.6982,0.1976,2400.0,2400.0,-0.4483,-0.9806,5.0283,86.8874 2019-06-03 15:43:24.580,116.3647,8265.4521,4.0861,-11.4583,1.2703,0.1128,2400.0,2400.0,-0.4424,-0.9806,5.0336,86.8874 2019-06-03 15:43:24.600,116.3773,8265.4805,4.0777,-11.5322,1.2444,0.1233,2400.0,2400.0,-0.4483,-0.9806,5.0283,86.7847 2019-06-03 15:43:24.620,116.3773,8265.5088,4.0759,-11.5562,0.7751,0.2905,2400.0,2400.0,-0.4541,-0.9836,5.031,86.7454 2019-06-03 15:43:24.640,116.453,8265.5645,4.0759,-11.5562,1.2788,0.0728,2400.0,2400.0,-0.4629,-0.9836,5.031,86.7454 2019-06-03 15:43:24.660,116.4656,8265.5371,4.0759,-11.5562,0.777,0.3149,2400.0,2400.0,-0.46,-0.9836,5.027,86.7454 2019-06-03 15:43:24.680,116.3773,8265.5645,4.0759,-11.5562,1.1812,0.0193,2400.0,2400.0,-0.4629,-0.9896,5.0296,86.7454 2019-06-03 15:43:24.700,116.3899,8265.4805,4.0558,-11.6607,1.1442,0.0246,2400.0,2400.0,-0.46,-0.9957,5.0323,86.5906 2019-06-03 15:43:24.720,116.453,8265.5371,4.0558,-11.6607,0.8864,0.3499,2400.0,2400.0,-0.4688,-0.9957,5.031,86.5906 2019-06-03 15:43:24.740,116.6417,8265.5928,4.0558,-11.6607,1.129,0.0244,2400.0,2400.0,-0.4717,-0.9927,5.0323,86.5906 2019-06-03 15:43:24.760,116.6417,8265.6777,4.0457,-11.7132,0.9615,0.3219,2400.0,2400.0,-0.4688,-0.9927,5.0257,86.5128 2019-06-03 15:43:24.780,116.5788,8265.7051,4.0457,-11.7132,0.9737,-0.0032,2400.0,2400.0,-0.46,-0.9957,5.027,86.5128 2019-06-03 15:43:24.800,116.5788,8265.7334,4.0356,-11.7914,1.0573,0.0269,2400.0,2400.0,-0.4483,-0.9987,5.0376,86.3992 2019-06-03 15:43:24.820,116.5788,8265.7617,4.0383,-11.8117,1.0573,0.3661,2400.0,2400.0,-0.4541,-0.9957,5.0283,86.3576 2019-06-03 15:43:24.840,116.6543,8265.79,4.0383,-11.8117,0.9545,-0.0176,2400.0,2400.0,-0.4571,-0.9987,5.0349,86.3576 2019-06-03 15:43:24.860,116.6543,8265.8184,4.0383,-11.8117,1.1364,0.3595,2400.0,2400.0,-0.46,-0.9957,5.0257,86.3576 2019-06-03 15:43:24.880,116.5663,8265.8184,4.027,-11.8708,0.8687,-0.0028,2400.0,2400.0,-0.46,-0.9987,5.031,86.2763 2019-06-03 15:43:24.900,116.5788,8265.7617,4.0168,-11.9276,0.8428,0.0342,2400.0,2400.0,-0.4541,-0.9987,5.0349,86.195 2019-06-03 15:43:24.920,116.717,8265.7334,4.0168,-11.9276,1.2097,0.3152,2400.0,2400.0,-0.4541,-0.9957,5.031,86.195 2019-06-03 15:43:24.940,117.0176,8265.7334,4.0168,-11.9276,0.7673,0.0526,2400.0,2400.0,-0.46,-0.9987,5.0323,86.195 2019-06-03 15:43:24.960,117.0426,8265.79,4.0136,-11.9798,1.2914,0.2354,2400.0,2400.0,-0.4571,-1.0047,5.0283,86.1115 2019-06-03 15:43:24.980,116.9676,8265.7617,4.0136,-11.9798,0.7178,0.0868,2400.0,2400.0,-0.4629,-1.0078,5.0257,86.1115 2019-06-03 15:43:25.000,116.9551,8265.79,4.0005,-12.064,0.7877,0.1332,2400.0,2400.0,-0.4571,-1.0047,5.0323,85.9913 2019-06-03 15:43:25.020,116.9551,8265.79,3.9992,-12.0891,1.3668,0.1959,2400.0,2400.0,-0.46,-1.0078,5.0323,85.9502 2019-06-03 15:43:25.040,117.0176,8265.8457,3.9992,-12.0891,0.7067,0.196,2400.0,2400.0,-0.46,-1.0017,5.0376,85.9502 2019-06-03 15:43:25.060,117.0551,8265.79,3.9992,-12.0891,1.3838,0.1073,2400.0,2400.0,-0.46,-1.0047,5.0257,85.9502 2019-06-03 15:43:25.080,116.9551,8265.5088,3.9874,-12.1477,0.7278,0.2123,2400.0,2400.0,-0.4571,-1.0078,5.0217,85.8672 2019-06-03 15:43:25.100,116.9801,8264.4678,3.9857,-12.2004,0.7219,0.2721,2400.0,2400.0,-0.4541,-1.0047,5.031,85.7832 2019-06-03 15:43:25.120,117.1175,8263.5674,3.9857,-12.2004,1.2988,0.0817,2400.0,2400.0,-0.4512,-0.9987,5.031,85.7832 2019-06-03 15:43:25.140,117.4163,8262.2734,3.9857,-12.2004,0.6656,0.2947,2400.0,2400.0,-0.46,-1.0017,5.0349,85.7832 2019-06-03 15:43:25.160,117.4287,8261.4297,3.9818,-12.2508,1.3761,0.0172,2400.0,2400.0,-0.4629,-1.0017,5.027,85.6998 2019-06-03 15:43:25.180,117.3541,8260.1357,3.9818,-12.2508,0.8731,0.3236,2400.0,2400.0,-0.4658,-0.9987,5.027,85.6998 2019-06-03 15:43:25.200,117.3541,8259.207,3.9667,-12.3359,0.764,0.3582,2400.0,2400.0,-0.4629,-0.9987,5.031,85.587 2019-06-03 15:43:25.220,117.3665,8258.3633,3.9548,-12.3671,1.1287,-0.0213,2400.0,2400.0,-0.4541,-1.0017,5.031,85.5468 2019-06-03 15:43:25.240,117.4411,8257.041,3.9548,-12.3671,0.8347,0.3658,2400.0,2400.0,-0.46,-1.0078,5.0323,85.5468 2019-06-03 15:43:25.260,117.4411,8256.8721,3.9548,-12.3671,1.0725,-0.0337,2400.0,2400.0,-0.4541,-1.0017,5.027,85.5468 2019-06-03 15:43:25.280,117.3541,8256.9004,3.9491,-12.4229,1.0599,0.3445,2400.0,2400.0,-0.4571,-0.9957,5.0243,85.4641 2019-06-03 15:43:25.300,117.3665,8256.8447,3.9502,-12.4751,0.9197,0.3707,2400.0,2400.0,-0.4629,-1.0017,5.031,85.3811 2019-06-03 15:43:25.320,117.5031,8256.8721,3.9502,-12.4751,1.0525,-0.0122,2400.0,2400.0,-0.4571,-0.9987,5.0283,85.3811 2019-06-03 15:43:25.340,117.8002,8256.8721,3.9502,-12.4751,0.9386,0.3527,2400.0,2400.0,-0.46,-1.0017,5.0376,85.3811 2019-06-03 15:43:25.360,117.8125,8256.957,3.9405,-12.5335,1.0588,-0.0263,2400.0,2400.0,-0.4571,-1.0017,5.0296,85.2993 2019-06-03 15:43:25.380,117.7508,8256.9287,3.9251,-12.5929,1.0725,0.339,2400.0,2400.0,-0.4541,-0.9987,5.023,85.2294 2019-06-03 15:43:25.400,117.7384,8256.9287,3.9291,-12.6202,0.9478,0.343,2340.0,2340.0,-0.4571,-0.9987,5.0257,85.187 2019-06-03 15:43:25.420,117.7508,8256.9287,3.9145,-12.6545,1.0225,0.0092,2340.0,2340.0,-0.4571,-0.9987,5.027,85.1477 2019-06-03 15:43:25.440,117.8002,8256.957,3.9145,-12.6545,1.0884,0.3356,2340.0,2340.0,-0.4629,-0.9987,5.0323,85.1477 2019-06-03 15:43:25.460,117.8249,8256.957,3.9145,-12.6545,0.9401,0.0116,2340.0,2340.0,-0.4571,-0.9927,5.027,85.1477 2019-06-03 15:43:25.480,117.7508,8256.9854,3.9137,-12.7118,1.1468,0.2797,2340.0,2340.0,-0.4571,-0.9957,5.0257,85.0672 2019-06-03 15:43:25.500,117.7384,8256.9287,3.91,-12.7682,1.0403,0.2844,2340.0,2340.0,-0.4629,-0.9896,5.031,84.9864 2019-06-03 15:43:25.520,117.8249,8256.8721,3.91,-12.7682,0.8942,0.0493,2340.0,2340.0,-0.46,-0.9927,5.0283,84.9864 2019-06-03 15:43:25.540,117.9975,8256.8447,3.91,-12.7682,1.162,0.2833,2340.0,2340.0,-0.46,-0.9957,5.0296,84.9864 2019-06-03 15:43:25.560,118.0098,8256.8721,3.8982,-12.83,0.879,0.0643,2340.0,2340.0,-0.4571,-0.9896,5.0243,84.9077 2019-06-03 15:43:25.580,117.9236,8256.957,3.8982,-12.83,1.2141,0.2337,2340.0,2340.0,-0.4454,-0.9866,5.0243,84.9077 2019-06-03 15:43:25.600,117.9359,8257.0127,3.8933,-12.9166,1.078,0.2497,2340.0,2340.0,-0.4541,-0.9927,5.0283,84.7975 2019-06-03 15:43:25.620,117.9359,8256.957,3.8838,-12.9518,0.8531,0.0822,2340.0,2340.0,-0.46,-0.9866,5.0283,84.7586 2019-06-03 15:43:25.640,118.0098,8256.9854,3.8838,-12.9518,1.227,0.235,2340.0,2340.0,-0.4775,-0.9836,5.0283,84.7586 2019-06-03 15:43:25.660,118.0344,8256.9287,3.8838,-12.9518,0.7943,0.1021,2340.0,2340.0,-0.4688,-0.9866,5.031,84.7586 2019-06-03 15:43:25.680,117.9359,8256.8721,3.886,-13.0104,1.2111,0.1926,2340.0,2340.0,-0.4629,-0.9866,5.0217,84.6777 2019-06-03 15:43:25.700,117.9482,8256.8164,3.8801,-13.0676,1.186,0.2058,2340.0,2340.0,-0.4571,-0.9866,5.0283,84.5991 2019-06-03 15:43:25.720,118.0836,8256.8447,3.8801,-13.0676,0.8295,0.1284,2340.0,2340.0,-0.4541,-0.9866,5.023,84.5991 2019-06-03 15:43:25.740,118.3659,8256.8721,3.8801,-13.0676,1.2263,0.1961,2340.0,2340.0,-0.4541,-0.9836,5.0336,84.5991 2019-06-03 15:43:25.760,118.4026,8256.8721,3.87,-13.1293,0.8949,0.1477,2340.0,2340.0,-0.4571,-0.9836,5.0296,84.5204 2019-06-03 15:43:25.780,118.3291,8256.9004,3.87,-13.1293,1.1557,0.1632,2340.0,2340.0,-0.4571,-0.9836,5.0217,84.5204 2019-06-03 15:43:25.800,118.3291,8256.8447,3.8675,-13.2106,1.2045,0.1787,2340.0,2340.0,-0.4571,-0.9836,5.0349,84.4141 2019-06-03 15:43:25.820,118.3291,8256.7881,3.8633,-13.2396,0.804,0.1928,2340.0,2340.0,-0.4541,-0.9836,5.031,84.3752 2019-06-03 15:43:25.840,118.4026,8256.8447,3.8633,-13.2396,1.298,0.1496,2340.0,2340.0,-0.4571,-0.9836,5.0323,84.3752 2019-06-03 15:43:25.860,118.4148,8256.8721,3.8633,-13.2396,0.8776,0.1841,2340.0,2340.0,-0.4571,-0.9806,5.0243,84.3752 2019-06-03 15:43:25.880,118.3291,8256.9004,3.8641,-13.2903,1.21,0.1463,2340.0,2340.0,-0.4571,-0.9866,5.0257,84.2979 2019-06-03 15:43:25.900,118.3291,8256.8164,3.8577,-13.3446,1.1993,0.1375,2340.0,2340.0,-0.46,-0.9806,5.0296,84.2214 2019-06-03 15:43:25.920,118.476,8256.8447,3.8577,-13.3446,0.8776,0.2216,2340.0,2340.0,-0.4541,-0.9806,5.0323,84.2214 2019-06-03 15:43:25.940,118.7566,8256.8164,3.8577,-13.3446,1.2115,0.1469,2340.0,2340.0,-0.4512,-0.9806,5.031,84.2214 2019-06-03 15:43:25.960,118.7688,8256.9004,3.851,-13.3985,0.9386,0.2067,2340.0,2340.0,-0.4483,-0.9806,5.0283,84.1462 2019-06-03 15:43:25.980,118.6957,8257.0127,3.851,-13.3985,1.2119,0.1466,2340.0,2340.0,-0.4483,-0.9776,5.019,84.1462 2019-06-03 15:43:26.000,118.7079,8257.0127,3.852,-13.4757,1.203,0.1373,2340.0,2340.0,-0.4483,-0.9776,5.031,84.04 2019-06-03 15:43:26.020,118.6957,8257.0127,3.8516,-13.5021,0.9023,0.2072,2340.0,2340.0,-0.4541,-0.9655,5.027,84.0015 2019-06-03 15:43:26.040,118.7809,8257.0127,3.8516,-13.5021,1.135,0.1398,2340.0,2340.0,-0.4571,-0.9715,5.0323,84.0015 2019-06-03 15:43:26.060,118.7931,8256.9854,3.8516,-13.5021,1.0177,0.2239,2340.0,2340.0,-0.4512,-0.9746,5.0296,84.0015 2019-06-03 15:43:26.080,118.7079,8256.9004,3.8512,-13.552,1.1801,0.1663,2340.0,2340.0,-0.4541,-0.9685,5.023,83.9237 2019-06-03 15:43:26.100,118.7079,8256.8447,3.846,-13.6051,1.1664,0.1556,2340.0,2340.0,-0.4629,-0.9685,5.031,83.8476 2019-06-03 15:43:26.120,118.9268,8256.9004,3.846,-13.6051,0.9634,0.1988,2340.0,2340.0,-0.4571,-0.9625,5.0257,83.8476 2019-06-03 15:43:26.140,119.3142,8256.9287,3.846,-13.6051,1.1065,0.1486,2340.0,2340.0,-0.4541,-0.9655,5.0257,83.8476 2019-06-03 15:43:26.160,119.3504,8256.957,3.8405,-13.656,0.9671,0.1928,2340.0,2340.0,-0.4541,-0.9413,5.0243,83.7716 2019-06-03 15:43:26.180,119.278,8256.957,3.8405,-13.656,1.1723,0.1701,2340.0,2340.0,-0.4483,-0.9262,5.0257,83.7716 2019-06-03 15:43:26.200,119.278,8256.9854,3.8397,-13.7325,1.0669,0.1743,2340.0,2340.0,-0.4512,-0.9262,5.027,83.6658 2019-06-03 15:43:26.220,119.29,8256.957,3.838,-13.757,0.9375,0.179,2340.0,2340.0,-0.4512,-0.9232,5.0204,83.6286 2019-06-03 15:43:26.240,119.3504,8257.0127,3.838,-13.757,1.0484,0.1362,2340.0,2340.0,-0.4541,-0.9292,5.0257,83.6286 2019-06-03 15:43:26.260,119.3504,8256.9854,3.838,-13.757,0.9537,0.2094,2340.0,2340.0,-0.4541,-0.9202,5.019,83.6286 2019-06-03 15:43:26.280,119.2659,8256.9854,3.8392,-13.802,1.1693,0.1397,2340.0,2340.0,-0.4541,-0.9262,5.0217,83.5543 2019-06-03 15:43:26.300,119.278,8256.957,3.8358,-13.8459,1.1301,0.132,2340.0,2340.0,-0.4571,-0.9292,5.0296,83.4822 2019-06-03 15:43:26.320,119.3504,8256.957,3.8358,-13.8459,0.9404,0.218,2340.0,2340.0,-0.4541,-0.9172,5.027,83.4822 2019-06-03 15:43:26.340,119.5431,8256.9854,3.8358,-13.8459,1.1338,0.1068,2340.0,2340.0,-0.46,-0.9202,5.0217,83.4822 2019-06-03 15:43:26.360,119.5431,8256.9854,3.831,-13.8886,0.8221,0.2431,2340.0,2340.0,-0.4541,-0.9172,5.019,83.4105 2019-06-03 15:43:26.380,119.4709,8257.0127,3.831,-13.8886,1.3017,0.1183,2340.0,2340.0,-0.4483,-0.9111,5.019,83.4105 2019-06-03 15:43:26.400,119.4589,8257.0693,3.8324,-13.946,1.2422,0.1149,2400.0,2400.0,-0.4541,-0.9172,5.027,83.3113 2019-06-03 15:43:26.420,119.4589,8257.0693,3.8351,-13.9648,0.8121,0.2372,2400.0,2400.0,-0.46,-0.9141,5.0217,83.275 2019-06-03 15:43:26.440,119.5311,8257.0977,3.8351,-13.9648,1.3321,0.0428,2400.0,2400.0,-0.4688,-0.9202,5.0243,83.275 2019-06-03 15:43:26.460,119.5552,8257.0693,3.8351,-13.9648,0.7662,0.3202,2400.0,2400.0,-0.4629,-0.9172,5.0257,83.275 2019-06-03 15:43:26.480,119.4589,8256.9854,3.8358,-14.0002,1.3761,0.0451,2400.0,2400.0,-0.4571,-0.9141,5.0137,83.2015 2019-06-03 15:43:26.500,119.483,8256.8721,3.8296,-14.0385,1.2655,0.0273,2400.0,2400.0,-0.46,-0.9141,5.0204,83.1294 2019-06-03 15:43:26.520,119.5311,8256.9004,3.8296,-14.0385,0.7485,0.3433,2400.0,2400.0,-0.4512,-0.9141,5.0151,83.1294 2019-06-03 15:43:26.540,119.7113,8256.957,3.8296,-14.0385,1.4057,-0.0392,2400.0,2400.0,-0.4541,-0.9111,5.0257,83.1294 2019-06-03 15:43:26.560,119.7233,8256.9854,3.8253,-14.0743,0.7847,0.3735,2400.0,2400.0,-0.4512,-0.9111,5.0151,83.0568 2019-06-03 15:43:26.580,119.6393,8256.9854,3.8253,-14.0743,1.3402,-0.0283,2400.0,2400.0,-0.4512,-0.9172,5.0164,83.0568 2019-06-03 15:43:26.600,119.6513,8256.957,3.8296,-14.1218,1.2851,-0.0352,2400.0,2400.0,-0.4571,-0.9111,5.0204,82.9563 2019-06-03 15:43:26.620,119.6633,8256.8721,3.839,-14.1362,0.7603,0.3777,2400.0,2400.0,-0.4571,-0.9081,5.0257,82.9183 2019-06-03 15:43:26.640,119.7353,8256.9287,3.839,-14.1362,1.4157,-0.0631,2400.0,2400.0,-0.46,-0.9141,5.0177,82.9183 2019-06-03 15:43:26.660,119.7353,8256.9287,3.839,-14.1362,0.8128,0.4166,2400.0,2400.0,-0.4571,-0.9081,5.023,82.9183 2019-06-03 15:43:26.680,119.6513,8256.6191,3.8359,-14.1672,1.3417,-0.071,2400.0,2400.0,-0.46,-0.9081,5.0204,82.8435 2019-06-03 15:43:26.700,119.6633,8255.6348,3.8291,-14.1998,1.2119,-0.0695,2400.0,2400.0,-0.4658,-0.9141,5.027,82.771 2019-06-03 15:43:26.720,119.7953,8254.7627,3.8291,-14.1998,0.8731,0.4121,2400.0,2400.0,-0.4629,-0.9111,5.0124,82.771 2019-06-03 15:43:26.740,120.0941,8253.4131,3.8291,-14.1998,1.173,-0.1046,2400.0,2400.0,-0.4658,-0.9111,5.0137,82.771 2019-06-03 15:43:26.760,120.1061,8252.4854,3.8305,-14.2313,0.9818,0.4285,2400.0,2400.0,-0.4483,-0.9141,5.0257,82.6962 2019-06-03 15:43:26.780,120.0345,8251.1631,3.8411,-14.256,1.183,-0.0713,2400.0,2400.0,-0.4483,-0.9051,5.0177,82.6298 2019-06-03 15:43:26.800,120.0345,8250.2627,3.8322,-14.2748,1.1527,-0.0709,2400.0,2400.0,-0.4541,-0.9111,5.0177,82.5926 2019-06-03 15:43:26.820,120.0345,8249.3633,3.8421,-14.285,1.0418,0.3914,2400.0,2400.0,-0.4541,-0.9051,5.0177,82.5528 2019-06-03 15:43:26.840,120.1061,8248.0977,3.8421,-14.285,1.0887,-0.0808,2400.0,2400.0,-0.4717,-0.9051,5.0204,82.5528 2019-06-03 15:43:26.860,120.1061,8247.957,3.8421,-14.285,1.1346,0.3856,2400.0,2400.0,-0.4629,-0.9051,5.0257,82.5528 2019-06-03 15:43:26.880,120.0345,8247.9287,3.8373,-14.3152,1.0007,-0.0149,2400.0,2400.0,-0.4629,-0.9081,5.0164,82.4763 2019-06-03 15:43:26.900,120.0464,8247.8164,3.8361,-14.3449,0.9378,-0.0274,2400.0,2400.0,-0.4658,-0.9021,5.0204,82.399 2019-06-03 15:43:26.920,120.1895,8247.8164,3.8361,-14.3449,1.2163,0.3343,2400.0,2400.0,-0.4658,-0.9051,5.0071,82.399 2019-06-03 15:43:26.940,120.4629,8247.8447,3.8361,-14.3449,0.8972,0.0024,2400.0,2400.0,-0.46,-0.9051,5.0217,82.399 2019-06-03 15:43:26.960,120.4866,8247.9004,3.8433,-14.3698,1.2925,0.286,2400.0,2400.0,-0.4571,-0.9081,5.0151,82.3194 2019-06-03 15:43:26.980,120.4154,8247.957,3.8433,-14.3698,0.8287,0.1069,2400.0,2400.0,-0.4424,-0.9021,5.023,82.3194 2019-06-03 15:43:27.000,120.4035,8247.957,3.8415,-14.4122,0.8465,0.1016,2400.0,2400.0,-0.4717,-0.9051,5.0177,82.2171 2019-06-03 15:43:27.020,120.4391,8247.8721,3.8445,-14.4249,1.3435,0.199,2400.0,2400.0,-0.4571,-0.9021,5.0137,82.1769 2019-06-03 15:43:27.040,120.4866,8247.8164,3.8445,-14.4249,0.828,0.1616,2400.0,2400.0,-0.4717,-0.9081,5.0151,82.1769 2019-06-03 15:43:27.060,120.4866,8247.8447,3.8445,-14.4249,1.2862,0.1399,2400.0,2400.0,-0.4658,-0.899,5.0204,82.1769 2019-06-03 15:43:27.080,120.4154,8247.8447,3.8387,-14.4551,0.7444,0.2427,2400.0,2400.0,-0.4512,-0.9021,5.019,82.0987 2019-06-03 15:43:27.100,120.4154,8247.7881,3.8447,-14.4848,0.7152,0.2506,2400.0,2400.0,-0.46,-0.9051,5.0177,82.0182 2019-06-03 15:43:27.120,120.6405,8247.7881,3.8447,-14.4848,1.4523,0.0663,2400.0,2400.0,-0.4541,-0.896,5.0137,82.0182 2019-06-03 15:43:27.140,121.0179,8247.8164,3.8447,-14.4848,0.7307,0.3101,2400.0,2400.0,-0.4571,-0.8839,5.0071,82.0182 2019-06-03 15:43:27.160,121.0414,8247.8164,3.8515,-14.5093,1.3779,0.0018,2400.0,2400.0,-0.4541,-0.8869,5.0204,81.9378 2019-06-03 15:43:27.180,120.9826,8247.8447,3.8515,-14.5093,0.7525,0.3747,2400.0,2400.0,-0.46,-0.8869,5.0071,81.9378 2019-06-03 15:43:27.200,120.9709,8247.8721,3.85,-14.5521,0.8047,0.3939,2400.0,2400.0,-0.4629,-0.89,5.0164,81.8303 2019-06-03 15:43:27.220,120.9709,8247.8164,3.8417,-14.5701,1.2751,-0.0583,2400.0,2400.0,-0.4658,-0.89,5.0071,81.7914 2019-06-03 15:43:27.240,121.0297,8247.8447,3.8417,-14.5701,0.8886,0.4383,2400.0,2400.0,-0.4658,-0.8869,5.0058,81.7914 2019-06-03 15:43:27.260,121.0414,8247.8447,3.8417,-14.5701,1.2245,-0.1093,2400.0,2400.0,-0.4629,-0.89,5.0151,81.7914 2019-06-03 15:43:27.280,120.9709,8247.8447,3.8479,-14.5998,0.8787,0.4281,2400.0,2400.0,-0.4541,-0.8869,5.0084,81.7087 2019-06-03 15:43:27.300,120.9709,8247.6758,3.8585,-14.6247,0.9352,0.4077,2400.0,2400.0,-0.4658,-0.8869,5.0111,81.6257 2019-06-03 15:43:27.320,121.1237,8247.7041,3.8585,-14.6247,1.2,-0.0528,2400.0,2400.0,-0.4629,-0.8869,5.0084,81.6257 2019-06-03 15:43:27.340,121.3931,8247.7598,3.8585,-14.6247,1.0847,0.4164,2400.0,2400.0,-0.4629,-0.8869,5.0018,81.6257 2019-06-03 15:43:27.360,121.4165,8247.7598,3.8575,-14.6575,1.0865,-0.0784,2400.0,2400.0,-0.4629,-0.8869,5.019,81.5439 2019-06-03 15:43:27.380,121.3347,8247.8164,3.8575,-14.6575,1.1043,0.385,2400.0,2400.0,-0.4629,-0.8869,5.0098,81.5439 2019-06-03 15:43:27.400,121.3347,8247.8447,3.8643,-14.7008,1.0891,0.3521,2400.0,2400.0,-0.4658,-0.89,5.0111,81.4277 2019-06-03 15:43:27.420,121.3347,8247.8721,3.8563,-14.7226,0.9179,-0.0155,2400.0,2400.0,-0.4629,-0.8869,4.9965,81.3874 2019-06-03 15:43:27.440,121.4165,8247.8447,3.8563,-14.7226,1.2496,0.3445,2400.0,2400.0,-0.4629,-0.8869,5.0005,81.3874 2019-06-03 15:43:27.460,121.4165,8247.8447,3.8563,-14.7226,0.7929,0.0134,2400.0,2400.0,-0.46,-0.89,5.0217,81.3874 2019-06-03 15:43:27.480,121.3464,8247.8447,3.866,-14.7501,1.3091,0.272,2400.0,2400.0,-0.46,-0.8839,5.0058,81.3031 2019-06-03 15:43:27.500,121.3464,8247.7598,3.8665,-14.7803,1.3365,0.2079,2400.0,2400.0,-0.4658,-0.89,5.0031,81.2191 2019-06-03 15:43:27.520,121.4048,8247.7881,3.8665,-14.7803,0.8169,0.148,2400.0,2400.0,-0.4629,-0.8809,5.0058,81.2191 2019-06-03 15:43:27.540,121.5683,8247.8447,3.8665,-14.7803,1.3136,0.1771,2400.0,2400.0,-0.4629,-0.8718,4.9912,81.2191 2019-06-03 15:43:27.560,121.5683,8247.9004,3.86,-14.8144,0.8025,0.1844,2400.0,2400.0,-0.4658,-0.9021,5.0071,81.1361 2019-06-03 15:43:27.580,121.5216,8247.8164,3.86,-14.8144,1.3169,0.1178,2400.0,2400.0,-0.4483,-0.8839,5.0018,81.1361 2019-06-03 15:43:27.600,121.5099,8247.8164,3.867,-14.8542,1.3735,0.0588,2400.0,2400.0,-0.4512,-0.8839,5.0005,81.0111 2019-06-03 15:43:27.620,121.5216,8247.7881,3.8712,-14.8673,0.7895,0.282,2400.0,2400.0,-0.4512,-0.8809,5.0005,80.9674 2019-06-03 15:43:27.640,121.5799,8247.8164,3.8712,-14.8673,1.3361,0.0285,2400.0,2400.0,-0.4541,-0.8567,4.9939,80.9674 2019-06-03 15:43:27.660,121.5916,8247.8164,3.8712,-14.8673,0.8298,0.3088,2400.0,2400.0,-0.4717,-0.8748,5.0124,80.9674 2019-06-03 15:43:27.680,121.5099,8247.8447,3.8752,-14.8927,1.274,-0.0125,2400.0,2400.0,-0.4658,-0.8748,4.9965,80.8795 2019-06-03 15:43:27.700,121.5216,8247.7598,3.8706,-14.9202,1.3273,-0.0598,2400.0,2400.0,-0.4629,-0.8748,5.0045,80.7934 2019-06-03 15:43:27.720,121.6731,8247.7041,3.8706,-14.9202,0.9511,0.3777,2400.0,2400.0,-0.46,-0.8748,5.0045,80.7934 2019-06-03 15:43:27.740,121.9287,8247.7314,3.8706,-14.9202,1.2074,-0.039,2400.0,2400.0,-0.4512,-0.8779,4.9926,80.7934 2019-06-03 15:43:27.760,121.9635,8247.7598,3.8707,-14.946,0.9892,0.367,2400.0,2400.0,-0.4629,-0.8779,4.9979,80.7046 2019-06-03 15:43:27.780,121.8823,8247.8447,3.8707,-14.946,1.1031,-0.0359,2400.0,2400.0,-0.4629,-0.8748,5.0005,80.7046 2019-06-03 15:43:27.800,121.8707,8247.9004,3.8746,-14.977,1.1017,-0.0417,2400.0,2400.0,-0.4629,-0.8779,5.0005,80.5792 2019-06-03 15:43:27.820,121.8939,8247.957,3.8859,-14.9853,1.0639,0.3486,2400.0,2400.0,-0.4717,-0.8779,5.0058,80.532 2019-06-03 15:43:27.840,121.9635,8247.9287,3.8859,-14.9853,1.0003,0.0175,2400.0,2400.0,-0.4688,-0.8748,4.9859,80.532 2019-06-03 15:43:27.860,121.9635,8247.8447,3.8859,-14.9853,1.1571,0.3033,2400.0,2400.0,-0.4512,-0.8779,5.0031,80.532 2019-06-03 15:43:27.880,121.8823,8247.9004,3.8812,-15.0081,0.9315,0.0317,2400.0,2400.0,-0.4512,-0.8748,4.9886,80.4415 2019-06-03 15:43:27.900,121.8939,8247.8447,3.8807,-15.0321,0.9719,0.037,2400.0,2400.0,-0.4512,-0.8748,5.0058,80.3501 2019-06-03 15:43:27.920,121.9403,8247.8447,3.8807,-15.0321,1.2171,0.2704,2400.0,2400.0,-0.4541,-0.8748,5.0005,80.3501 2019-06-03 15:43:27.940,122.1255,8247.8721,3.8807,-15.0321,0.9312,0.1152,2400.0,2400.0,-0.4571,-0.8748,4.9926,80.3501 2019-06-03 15:43:27.960,122.1255,8247.9004,3.8896,-15.047,1.1838,0.1979,2400.0,2400.0,-0.4629,-0.8718,5.0018,80.2579 2019-06-03 15:43:27.980,122.0677,8247.8721,3.8896,-15.047,0.808,0.1245,2400.0,2400.0,-0.4571,-0.8748,4.9952,80.2579 2019-06-03 15:43:28.000,122.0793,8247.8164,3.8922,-15.0767,0.8147,0.1612,2400.0,2400.0,-0.46,-0.8748,4.9965,80.1211 2019-06-03 15:43:28.020,122.0793,8247.9004,3.8939,-15.0867,1.2548,0.1345,2400.0,2400.0,-0.4541,-0.8748,5.0071,80.0734 2019-06-03 15:43:28.040,122.1371,8247.9287,3.8939,-15.0867,0.9094,0.2317,2400.0,2400.0,-0.4541,-0.8748,4.982,80.0734 2019-06-03 15:43:28.060,122.1486,8247.9004,3.8939,-15.0867,1.1838,0.097,2400.0,2400.0,-0.4541,-0.8779,4.9979,80.0734 2019-06-03 15:43:28.080,122.0677,8247.9287,3.8939,-15.109,0.8206,0.2449,2400.0,2400.0,-0.4512,-0.8809,4.9939,79.9808 2019-06-03 15:43:28.100,122.0793,8247.9287,3.9001,-15.1261,0.8783,0.2788,2400.0,2400.0,-0.4512,-0.8839,5.0005,79.885 2019-06-03 15:43:28.120,122.2064,8247.9287,3.9001,-15.1261,1.2208,0.0287,2400.0,2400.0,-0.4541,-0.8839,5.0071,79.885 2019-06-03 15:43:28.140,122.4943,8247.8721,3.9001,-15.1261,0.9552,0.2907,2400.0,2400.0,-0.4541,-0.8839,4.9833,79.885 2019-06-03 15:43:28.160,122.5058,8247.9287,3.9059,-15.1501,1.1379,0.0347,2400.0,2400.0,-0.4746,-0.8839,5.0005,79.7888 2019-06-03 15:43:28.180,122.4253,8247.9287,3.9029,-15.1772,0.8535,0.3061,2400.0,2400.0,-0.4688,-0.8779,4.9873,79.7045 2019-06-03 15:43:28.200,122.4483,8247.957,3.9064,-15.1868,0.8805,0.3064,2400.0,2400.0,-0.4629,-0.8779,4.9926,79.656 2019-06-03 15:43:28.220,122.4368,8247.9287,3.9006,-15.2026,1.2159,0.0024,2400.0,2400.0,-0.4541,-0.8809,5.0045,79.6079 2019-06-03 15:43:28.240,122.4943,8247.9287,3.9006,-15.2026,0.9489,0.3326,2400.0,2400.0,-0.4454,-0.8748,4.9926,79.6079 2019-06-03 15:43:28.260,122.5173,8247.8721,3.9006,-15.2026,1.1057,-0.0374,2400.0,2400.0,-0.4512,-0.8779,4.9979,79.6079 2019-06-03 15:43:28.280,122.4368,8247.5068,3.9065,-15.2288,0.9009,0.3544,2400.0,2400.0,-0.4454,-0.8779,4.9873,79.5095 2019-06-03 15:43:28.300,122.4368,8246.5225,3.914,-15.2529,0.9959,0.3677,2400.0,2400.0,-0.4541,-0.8809,4.9912,79.4107 2019-06-03 15:43:28.320,122.5747,8245.7354,3.914,-15.2529,1.1457,-0.0571,2400.0,2400.0,-0.46,-0.8809,5.0045,79.4107 2019-06-03 15:43:28.340,122.8382,8244.5264,3.914,-15.2529,0.9319,0.3497,2400.0,2400.0,-0.4541,-0.8779,4.9873,79.4107 2019-06-03 15:43:28.360,122.861,8243.7109,3.9112,-15.28,1.1675,-0.0305,2400.0,2400.0,-0.46,-0.8809,4.9886,79.3137 2019-06-03 15:43:28.380,122.8039,8242.4736,3.9112,-15.28,1.0983,0.3677,2400.0,2400.0,-0.4483,-0.8809,4.9793,79.3137 2019-06-03 15:43:28.400,122.781,8241.6299,3.9178,-15.3154,1.1668,0.3647,2400.0,2400.0,-0.4541,-0.8779,4.982,79.1742 2019-06-03 15:43:28.420,122.8039,8240.7305,3.9109,-15.3328,1.0262,-0.0481,2400.0,2400.0,-0.46,-0.8809,5.0005,79.1262 2019-06-03 15:43:28.440,122.861,8239.4932,3.9109,-15.3328,1.1139,0.3372,2400.0,2400.0,-0.4629,-0.8809,4.9886,79.1262 2019-06-03 15:43:28.460,122.8725,8239.3525,3.9109,-15.3328,1.0018,-0.0043,2400.0,2400.0,-0.4717,-0.8779,4.9846,79.1262 2019-06-03 15:43:28.480,122.781,8239.3525,3.9217,-15.3569,1.1379,0.3208,2400.0,2400.0,-0.4541,-0.8779,4.9767,79.0291 2019-06-03 15:43:28.500,122.7924,8239.2402,3.9237,-15.3836,1.2115,0.3219,2400.0,2400.0,-0.4454,-0.8779,4.9806,78.9325 2019-06-03 15:43:28.520,122.941,8239.2402,3.9237,-15.3836,0.9234,0.0037,2400.0,2400.0,-0.4571,-0.8779,4.9952,78.9325 2019-06-03 15:43:28.540,123.2143,8239.1836,3.9237,-15.3836,1.2699,0.2947,2400.0,2400.0,-0.4483,-0.8718,4.982,78.9325 2019-06-03 15:43:28.560,123.2143,8239.1836,3.917,-15.4128,0.9323,0.0551,2400.0,2400.0,-0.4658,-0.8748,4.9873,78.839 2019-06-03 15:43:28.580,123.146,8239.2402,3.917,-15.4128,1.2196,0.2423,2400.0,2400.0,-0.4541,-0.8688,4.9753,78.839 2019-06-03 15:43:28.600,123.146,8239.2686,3.9287,-15.4465,1.3343,0.2229,2400.0,2400.0,-0.4424,-0.8658,4.9859,78.7008 2019-06-03 15:43:28.620,123.1347,8239.2402,3.9265,-15.4605,0.8173,0.1095,2400.0,2400.0,-0.4629,-0.8688,4.9886,78.6541 2019-06-03 15:43:28.640,123.2143,8239.2959,3.9265,-15.4605,1.3017,0.193,2400.0,2400.0,-0.4629,-0.8265,4.9806,78.6541 2019-06-03 15:43:28.660,123.2143,8239.2686,3.9265,-15.4605,0.7407,0.1583,2400.0,2400.0,-0.4688,-0.8265,4.978,78.6541 2019-06-03 15:43:28.680,123.1347,8239.2686,3.935,-15.4828,1.4482,0.1456,2400.0,2400.0,-0.4571,-0.7871,4.9661,78.5592 2019-06-03 15:43:28.700,123.1574,8239.1836,3.9327,-15.5059,1.463,0.1268,2400.0,2400.0,-0.4424,-0.7841,4.9648,78.4674 2019-06-03 15:43:28.720,123.2256,8239.2119,3.9327,-15.5059,0.7119,0.2018,2400.0,2400.0,-0.4483,-0.7508,4.9687,78.4674 2019-06-03 15:43:28.740,123.3845,8239.2402,3.9327,-15.5059,1.439,0.104,2400.0,2400.0,-0.4424,-0.7205,4.9661,78.4674 2019-06-03 15:43:28.760,123.3845,8239.3242,3.9248,-15.5326,0.8236,0.2435,2400.0,2400.0,-0.4541,-0.7235,4.9687,78.3765 2019-06-03 15:43:28.780,123.3165,8239.3809,3.9248,-15.5326,1.3276,0.0555,2400.0,2400.0,-0.4629,-0.6781,4.9542,78.3765 2019-06-03 15:43:28.800,123.3165,8239.4092,3.934,-15.5545,1.443,0.0613,2400.0,2400.0,-0.4571,-0.669,4.9555,78.2453 2019-06-03 15:43:28.820,123.3278,8239.3809,3.9425,-15.5597,0.6098,0.2981,2400.0,2400.0,-0.4688,-0.6963,4.9595,78.1986 2019-06-03 15:43:28.840,123.3958,8239.3242,3.9425,-15.5597,1.4929,-0.011,2400.0,2400.0,-0.4571,-0.672,4.9489,78.1986 2019-06-03 15:43:28.860,123.3958,8239.2959,3.9425,-15.5597,0.6919,0.3366,2400.0,2400.0,-0.4571,-0.669,4.9542,78.1986 2019-06-03 15:43:28.880,123.3278,8239.3525,3.9448,-15.572,1.4253,-0.0174,2400.0,2400.0,-0.4512,-0.6508,4.9449,78.1081 2019-06-03 15:43:28.900,123.3278,8239.2959,3.9388,-15.5864,1.4682,-0.0424,2400.0,2400.0,-0.4512,-0.6477,4.9277,78.0189 2019-06-03 15:43:28.920,123.3845,8239.2686,3.9388,-15.5864,0.6612,0.3932,2400.0,2400.0,-0.4512,-0.6477,4.9303,78.0189 2019-06-03 15:43:28.940,123.5542,8239.2686,3.9388,-15.5864,1.4001,-0.0898,2400.0,2400.0,-0.4541,-0.6477,4.8999,78.0189 2019-06-03 15:43:28.960,123.5769,8239.2119,3.9368,-15.5982,0.7758,0.412,2400.0,2400.0,-0.4688,-0.6538,4.8866,77.9293 2019-06-03 15:43:28.980,123.4977,8239.2119,3.9368,-15.5982,1.3143,-0.0798,2400.0,2400.0,-0.46,-0.6477,4.8721,77.9293 2019-06-03 15:43:29.000,123.509,8239.2402,3.943,-15.6074,1.3324,-0.1085,2400.0,2400.0,-0.4512,-0.6447,4.8562,77.8043 2019-06-03 15:43:29.020,123.509,8239.2119,3.957,-15.6056,0.811,0.4474,2400.0,2400.0,-0.4454,-0.6508,4.8602,77.7588 2019-06-03 15:43:29.040,123.5655,8239.2402,3.957,-15.6056,1.3143,-0.1212,2400.0,2400.0,-0.4454,-0.6386,4.8244,77.7588 2019-06-03 15:43:29.060,123.5769,8239.2402,3.957,-15.6056,0.9205,0.4336,2400.0,2400.0,-0.4541,-0.6811,4.8244,77.7588 2019-06-03 15:43:29.080,123.4977,8239.1836,3.95,-15.6148,1.2089,-0.0992,2400.0,2400.0,-0.4571,-0.6568,4.8098,77.6731 2019-06-03 15:43:29.100,123.509,8239.043,3.9414,-15.6218,1.2093,-0.1084,2400.0,2400.0,-0.4512,-0.6326,4.8045,77.5879 2019-06-03 15:43:29.120,123.6559,8239.0713,3.9414,-15.6218,1.0037,0.4383,2400.0,2400.0,-0.4541,-0.6386,4.8165,77.5879 2019-06-03 15:43:29.140,123.9036,8239.1553,3.9414,-15.6218,1.0547,-0.1219,2400.0,2400.0,-0.4512,-0.6326,4.7754,77.5879 2019-06-03 15:43:29.160,123.9261,8239.2402,3.9434,-15.6253,1.1242,0.3983,2400.0,2400.0,-0.4541,-0.6265,4.7582,77.5 2019-06-03 15:43:29.180,123.8587,8239.3525,3.9434,-15.6253,1.0029,-0.0511,2400.0,2400.0,-0.4571,-0.584,4.7436,77.5 2019-06-03 15:43:29.200,123.8587,8239.3809,3.9323,-15.6222,1.0007,-0.0524,2400.0,2400.0,-0.4629,-0.5689,4.7211,77.3824 2019-06-03 15:43:29.220,123.8699,8239.3525,3.9401,-15.6148,1.2307,0.379,2400.0,2400.0,-0.4775,-0.5658,4.7291,77.3383 2019-06-03 15:43:29.240,123.9374,8239.3525,3.9401,-15.6148,0.8894,-0.0287,2400.0,2400.0,-0.4775,-0.5355,4.6827,77.3383 2019-06-03 15:43:29.260,123.9374,8239.3242,3.9401,-15.6148,1.3702,0.301,2400.0,2400.0,-0.4746,-0.5537,4.6774,77.3383 2019-06-03 15:43:29.280,123.8474,8239.2959,3.9245,-15.6135,0.7884,0.0351,2400.0,2400.0,-0.4746,-0.5567,4.6589,77.2557 2019-06-03 15:43:29.300,123.8699,8239.1836,3.9159,-15.6096,0.8898,0.0618,2400.0,2400.0,-0.4658,-0.5537,4.6377,77.1722 2019-06-03 15:43:29.320,123.9261,8239.1553,3.9159,-15.6096,1.3572,0.246,2400.0,2400.0,-0.4746,-0.5658,4.6232,77.1722 2019-06-03 15:43:29.340,124.0944,8239.2119,3.9159,-15.6096,0.6653,0.1204,2400.0,2400.0,-0.4688,-0.5506,4.5781,77.1722 2019-06-03 15:43:29.360,124.0944,8239.1553,3.9156,-15.596,1.4208,0.1466,2400.0,2400.0,-0.4688,-0.5506,4.5689,77.0865 2019-06-03 15:43:29.380,124.0384,8239.1836,3.9156,-15.596,0.7777,0.1689,2400.0,2400.0,-0.4658,-0.5537,4.5596,77.0865 2019-06-03 15:43:29.400,124.0384,8239.1836,3.888,-15.5824,0.7141,0.1674,2340.0,2400.0,-0.4717,-0.5476,4.5464,76.9724 2019-06-03 15:43:29.420,124.0384,8239.1836,3.8801,-15.5746,1.504,0.109,2340.0,2400.0,-0.4951,-0.5476,4.5649,76.9322 2019-06-03 15:43:29.440,124.0944,8239.2402,3.8801,-15.5746,0.6301,0.2271,2340.0,2400.0,-0.4892,-0.5476,4.5292,76.9322 2019-06-03 15:43:29.460,124.1056,8239.2686,3.8801,-15.5746,1.5714,0.0183,2340.0,2400.0,-0.4892,-0.5537,4.5345,76.9322 2019-06-03 15:43:29.480,124.0272,8239.2402,3.8573,-15.565,0.6749,0.2901,2340.0,2400.0,-0.4863,-0.5506,4.5225,76.8522 2019-06-03 15:43:29.500,124.0384,8239.1279,3.8442,-15.5523,0.629,0.3238,2340.0,2400.0,-0.4804,-0.5446,4.5014,76.7696 2019-06-03 15:43:29.520,124.184,8239.1279,3.8442,-15.5523,1.5307,-0.0337,2340.0,2400.0,-0.4892,-0.5476,4.5014,76.7696 2019-06-03 15:43:29.540,124.4297,8239.0996,3.8442,-15.5523,0.5928,0.3526,2340.0,2400.0,-0.4775,-0.5203,4.4643,76.7696 2019-06-03 15:43:29.560,124.452,8239.1279,3.8274,-15.5344,1.4238,-0.0957,2340.0,2400.0,-0.4775,-0.5537,4.4868,76.6883 2019-06-03 15:43:29.580,124.3851,8239.1553,3.795,-15.5204,0.7241,0.4038,2340.0,2400.0,-0.4921,-0.5567,4.4921,76.6196 2019-06-03 15:43:29.600,124.374,8239.1836,3.7827,-15.5151,0.676,0.4079,2340.0,2400.0,-0.4951,-0.5385,4.4788,76.5799 2019-06-03 15:43:29.620,124.3963,8239.1553,3.7575,-15.5116,1.4493,-0.1095,2340.0,2400.0,-0.5243,-0.5385,4.4934,76.5414 2019-06-03 15:43:29.640,124.4409,8239.1279,3.7575,-15.5116,0.6723,0.4305,2340.0,2400.0,-0.5214,-0.5355,4.463,76.5414 2019-06-03 15:43:29.660,124.4632,8239.1553,3.7575,-15.5116,1.3439,-0.1655,2340.0,2400.0,-0.5155,-0.5385,4.459,76.5414 2019-06-03 15:43:29.680,124.374,8239.1279,3.731,-15.4955,0.8088,0.4581,2340.0,2400.0,-0.5038,-0.5294,4.4563,76.4596 2019-06-03 15:43:29.700,124.3851,8239.0996,3.7068,-15.4749,0.831,0.4563,2340.0,2400.0,-0.4951,-0.4838,4.4352,76.3788 2019-06-03 15:43:29.720,124.452,8239.1279,3.7068,-15.4749,1.301,-0.1533,2340.0,2400.0,-0.5155,-0.5081,4.4431,76.3788 2019-06-03 15:43:29.740,124.6078,8239.1836,3.7068,-15.4749,0.8435,0.4796,2340.0,2400.0,-0.5009,-0.502,4.4338,76.3788 2019-06-03 15:43:29.760,124.6189,8239.2686,3.6722,-15.4579,1.1719,-0.1629,2340.0,2400.0,-0.498,-0.5081,4.4497,76.2988 2019-06-03 15:43:29.780,124.5522,8239.2686,3.6722,-15.4579,0.9704,0.436,2340.0,2400.0,-0.4746,-0.502,4.451,76.2988 2019-06-03 15:43:29.800,124.5522,8239.3242,3.6199,-15.4303,0.9733,0.431,2340.0,2400.0,-0.4629,-0.4838,4.4338,76.1886 2019-06-03 15:43:29.820,124.5745,8239.3242,3.59,-15.4273,0.9789,-0.1225,2340.0,2400.0,-0.4717,-0.4899,4.4444,76.1515 2019-06-03 15:43:29.840,124.6189,8239.3525,3.59,-15.4273,1.0381,0.4172,2340.0,2400.0,-0.4688,-0.4382,4.4206,76.1515 2019-06-03 15:43:29.860,124.6412,8239.3809,3.59,-15.4273,0.9064,-0.0991,2340.0,2400.0,-0.4746,-0.4473,4.41,76.1515 2019-06-03 15:43:29.880,124.5522,8239.4365,3.5607,-15.4063,1.0595,0.3658,2340.0,2400.0,-0.4571,-0.4534,4.4299,76.0702 2019-06-03 15:43:29.900,124.5633,8239.3809,3.5259,-15.3866,1.1483,0.3796,2340.0,2400.0,-0.4571,-0.4443,4.3994,75.9902 2019-06-03 15:43:29.920,124.63,8239.4365,3.5259,-15.3866,0.801,-0.056,2340.0,2400.0,-0.4571,-0.4504,4.4338,75.9902 2019-06-03 15:43:29.940,124.7965,8239.5215,3.5259,-15.3866,1.2707,0.3256,2340.0,2400.0,-0.46,-0.4443,4.4021,75.9902 2019-06-03 15:43:29.960,124.7965,8239.5215,3.48,-15.3713,0.7999,0.0137,2340.0,2400.0,-0.4688,-0.4443,4.4113,75.9119 2019-06-03 15:43:29.980,124.73,8239.5215,3.48,-15.3713,1.1409,0.264,2340.0,2400.0,-0.4688,-0.4473,4.4219,75.9119 2019-06-03 15:43:30.000,124.7189,8239.5771,3.4308,-15.3381,1.2803,0.2547,2340.0,2400.0,-0.4629,-0.4443,4.3968,75.7974 2019-06-03 15:43:30.020,124.7411,8239.6055,3.4078,-15.3328,0.6005,0.0438,2340.0,2400.0,-0.4717,-0.4473,4.41,75.7585 2019-06-03 15:43:30.040,124.8076,8239.5498,3.4078,-15.3328,1.3912,0.205,2340.0,2400.0,-0.4512,-0.4443,4.3981,75.7585 2019-06-03 15:43:30.060,124.7965,8239.5215,3.4078,-15.3328,0.6372,0.1122,2340.0,2400.0,-0.4512,-0.4473,4.4126,75.7585 2019-06-03 15:43:30.080,124.73,8239.1279,3.3768,-15.3092,1.3491,0.134,2340.0,2400.0,-0.46,-0.4473,4.4299,75.6768 2019-06-03 15:43:30.100,124.7411,8238.0596,3.3333,-15.2891,1.4219,0.1105,2340.0,2400.0,-0.4658,-0.426,4.3994,75.5985 2019-06-03 15:43:30.120,124.7965,8237.1875,3.3333,-15.2891,0.6364,0.1521,2340.0,2400.0,-0.4804,-0.4473,4.4113,75.5985 2019-06-03 15:43:30.140,124.9625,8235.8945,3.3333,-15.2891,1.4323,0.0788,2340.0,2400.0,-0.4775,-0.4382,4.3888,75.5985 2019-06-03 15:43:30.160,124.9735,8234.9951,3.2887,-15.2712,0.6505,0.237,2340.0,2400.0,-0.4658,-0.4412,4.3875,75.5203 2019-06-03 15:43:30.180,124.8961,8233.6172,3.2887,-15.2712,1.3805,0.0293,2340.0,2400.0,-0.4483,-0.4595,4.4166,75.5203 2019-06-03 15:43:30.200,124.8961,8232.7178,3.2372,-15.2323,1.4253,0.01,2340.0,2400.0,-0.4512,-0.423,4.3994,75.4158 2019-06-03 15:43:30.220,124.9183,8231.8184,3.2268,-15.2192,0.5665,0.2787,2340.0,2400.0,-0.4658,-0.4443,4.4418,75.3756 2019-06-03 15:43:30.240,124.9735,8230.4971,3.2268,-15.2192,1.3361,-0.0114,2340.0,2400.0,-0.4629,-0.4321,4.4272,75.3756 2019-06-03 15:43:30.260,124.9846,8230.3564,3.2268,-15.2192,0.6923,0.3541,2340.0,2400.0,-0.4541,-0.4473,4.4365,75.3756 2019-06-03 15:43:30.280,124.9072,8230.3848,3.1914,-15.1947,1.3202,-0.079,2340.0,2400.0,-0.4629,-0.4717,4.4325,75.2973 2019-06-03 15:43:30.300,124.9183,8230.2998,3.1453,-15.1768,1.3324,-0.0977,2340.0,2400.0,-0.4629,-0.4473,4.3994,75.2213 2019-06-03 15:43:30.320,124.9735,8230.2441,3.1453,-15.1768,0.727,0.3878,2340.0,2400.0,-0.4746,-0.4565,4.4034,75.2213 2019-06-03 15:43:30.340,125.1391,8230.2441,3.1453,-15.1768,1.2455,-0.1055,2340.0,2400.0,-0.4571,-0.4565,4.4073,75.2213 2019-06-03 15:43:30.360,125.1501,8230.2158,3.1096,-15.1532,0.821,0.4529,2340.0,2400.0,-0.4629,-0.4565,4.4047,75.1448 2019-06-03 15:43:30.380,125.0729,8230.2725,3.1096,-15.1532,1.2367,-0.1379,2340.0,2400.0,-0.4454,-0.4625,4.4497,75.1448 2019-06-03 15:43:30.400,125.0729,8230.3281,3.0593,-15.1117,1.1982,-0.1758,2400.0,2400.0,-0.46,-0.4595,4.4113,75.0442 2019-06-03 15:43:30.420,125.095,8230.3281,3.0584,-15.0915,0.936,0.4427,2400.0,2400.0,-0.4629,-0.4565,4.4285,75.0036 2019-06-03 15:43:30.440,125.1501,8230.2725,3.0584,-15.0915,0.9778,-0.1204,2400.0,2400.0,-0.4483,-0.4565,4.4087,75.0036 2019-06-03 15:43:30.460,125.1391,8230.2441,3.0584,-15.0915,0.9604,0.4421,2400.0,2400.0,-0.4308,-0.4565,4.4073,75.0036 2019-06-03 15:43:30.480,125.0729,8230.2725,3.019,-15.0684,0.9408,-0.1291,2400.0,2400.0,-0.4512,-0.4595,4.41,74.9297 2019-06-03 15:43:30.500,125.095,8230.2158,2.982,-15.0513,0.929,-0.1164,2400.0,2400.0,-0.4483,-0.4565,4.3915,74.8545 2019-06-03 15:43:30.520,125.1501,8230.2158,2.982,-15.0513,1.061,0.3643,2400.0,2400.0,-0.4834,-0.4565,4.4087,74.8545 2019-06-03 15:43:30.540,125.3042,8230.2158,2.982,-15.0513,0.7459,-0.0634,2400.0,2400.0,-0.4688,-0.4534,4.4259,74.8545 2019-06-03 15:43:30.560,125.3151,8230.2441,2.9581,-15.026,1.2148,0.3492,2400.0,2400.0,-0.4775,-0.4473,4.4206,74.7789 2019-06-03 15:43:30.580,125.2602,8230.2441,2.9581,-15.026,0.754,-0.0463,2400.0,2400.0,-0.4863,-0.4534,4.4391,74.7789 2019-06-03 15:43:30.600,125.2492,8230.2725,2.9079,-14.9919,0.7004,-0.0215,2400.0,2400.0,-0.4804,-0.4504,4.3915,74.6796 2019-06-03 15:43:30.620,125.2602,8230.2158,2.9011,-14.9757,1.2392,0.2646,2400.0,2400.0,-0.4892,-0.4565,4.3941,74.6407 2019-06-03 15:43:30.640,125.3151,8230.2998,2.9011,-14.9757,0.6679,0.0369,2400.0,2400.0,-0.4775,-0.4565,4.3915,74.6407 2019-06-03 15:43:30.660,125.3261,8230.2441,2.9011,-14.9757,1.3975,0.2049,2400.0,2400.0,-0.4658,-0.4504,4.4021,74.6407 2019-06-03 15:43:30.680,125.2602,8230.2998,2.8653,-14.96,0.6342,0.0861,2400.0,2400.0,-0.4629,-0.4534,4.4484,74.5677 2019-06-03 15:43:30.700,125.2492,8230.2441,2.8404,-14.9377,0.6046,0.1213,2400.0,2400.0,-0.4717,-0.4504,4.4246,74.4939 2019-06-03 15:43:30.720,125.414,8230.2725,2.8404,-14.9377,1.3025,0.1082,2400.0,2400.0,-0.4921,-0.4473,4.4471,74.4939 2019-06-03 15:43:30.740,125.644,8230.2725,2.8404,-14.9377,0.6782,0.1721,2400.0,2400.0,-0.4921,-0.423,4.4365,74.4939 2019-06-03 15:43:30.760,125.6549,8230.2998,2.8217,-14.9123,1.328,0.0898,2400.0,2400.0,-0.4892,-0.4047,4.4378,74.4191 2019-06-03 15:43:30.780,125.6002,8230.2998,2.8217,-14.9123,0.5351,0.2001,2400.0,2400.0,-0.4863,-0.4047,4.4484,74.4191 2019-06-03 15:43:30.800,125.5893,8230.2998,2.7783,-14.8804,0.5913,0.2234,2400.0,2400.0,-0.4746,-0.3682,4.4113,74.3186 2019-06-03 15:43:30.820,125.6002,8230.2725,2.7633,-14.869,1.3169,0.0149,2400.0,2400.0,-0.4863,-0.3621,4.4312,74.2832 2019-06-03 15:43:30.840,125.6549,8230.2725,2.7633,-14.869,0.7159,0.2652,2400.0,2400.0,-0.4863,-0.3226,4.4404,74.2832 2019-06-03 15:43:30.860,125.6768,8230.2725,2.7633,-14.869,1.2407,-0.0369,2400.0,2400.0,-0.4892,-0.3195,4.4193,74.2832 2019-06-03 15:43:30.880,125.5893,8230.1875,2.7383,-14.8437,0.6224,0.326,2400.0,2400.0,-0.5038,-0.3256,4.4484,74.211 2019-06-03 15:43:30.900,125.6002,8230.1035,2.7233,-14.8113,0.6398,0.3335,2400.0,2400.0,-0.5009,-0.3134,4.4166,74.1389 2019-06-03 15:43:30.920,125.7532,8230.0752,2.7233,-14.8113,1.237,-0.052,2400.0,2400.0,-0.498,-0.3256,4.4391,74.1389 2019-06-03 15:43:30.940,125.9819,8230.1035,2.7233,-14.8113,0.8051,0.3309,2400.0,2400.0,-0.4921,-0.3256,4.4378,74.1389 2019-06-03 15:43:30.960,126.0146,8230.1602,2.7042,-14.7759,1.1934,-0.0728,2400.0,2400.0,-0.4804,-0.3012,4.4299,74.0681 2019-06-03 15:43:30.980,125.9493,8230.1602,2.6782,-14.7467,0.6919,0.373,2400.0,2400.0,-0.5068,-0.3012,4.4378,74.0056 2019-06-03 15:43:31.000,125.9384,8230.1602,2.6728,-14.73,0.8439,0.3657,2400.0,2400.0,-0.5009,-0.2982,4.41,73.9697 2019-06-03 15:43:31.020,125.9493,8230.0752,2.6526,-14.7161,1.1202,-0.0698,2400.0,2400.0,-0.5184,-0.3195,4.414,73.9365 2019-06-03 15:43:31.040,126.0037,8230.1035,2.6526,-14.7161,0.8587,0.3597,2400.0,2400.0,-0.5155,-0.3195,4.4325,73.9365 2019-06-03 15:43:31.060,126.0146,8230.1318,2.6526,-14.7161,1.0599,-0.0837,2400.0,2400.0,-0.5301,-0.3195,4.406,73.9365 2019-06-03 15:43:31.080,125.9493,8230.1875,2.6377,-14.6824,0.9419,0.3655,2400.0,2400.0,-0.5331,-0.3165,4.4524,73.8675 2019-06-03 15:43:31.100,125.9384,8230.1318,2.626,-14.6435,0.9615,0.3732,2400.0,2400.0,-0.5418,-0.3165,4.4153,73.7971 2019-06-03 15:43:31.120,126.0906,8230.1318,2.626,-14.6435,1.0451,-0.066,2400.0,2400.0,-0.5272,-0.3134,4.4378,73.7971 2019-06-03 15:43:31.140,126.3397,8230.1035,2.626,-14.6435,0.9989,0.3302,2400.0,2400.0,-0.5301,-0.3165,4.4378,73.7971 2019-06-03 15:43:31.160,126.3505,8230.1602,2.6033,-14.6063,0.9652,-0.06,2400.0,2400.0,-0.5331,-0.3134,4.4179,73.7302 2019-06-03 15:43:31.180,126.2748,8230.2441,2.6033,-14.6063,1.0492,0.3343,2400.0,2400.0,-0.5594,-0.3195,4.4497,73.7302 2019-06-03 15:43:31.200,126.2856,8230.2725,2.5807,-14.5469,1.0088,0.3504,2400.0,2400.0,-0.5535,-0.3043,4.4259,73.6358 2019-06-03 15:43:31.220,126.2856,8230.2725,2.5624,-14.532,0.9386,-0.0384,2400.0,2400.0,-0.5535,-0.3012,4.4338,73.603 2019-06-03 15:43:31.240,126.3397,8230.3281,2.5624,-14.532,1.1479,0.2841,2400.0,2400.0,-0.5535,-0.3226,4.4418,73.603 2019-06-03 15:43:31.260,126.3613,8230.3564,2.5624,-14.532,0.804,-0.0311,2400.0,2400.0,-0.5535,-0.3165,4.4312,73.603 2019-06-03 15:43:31.280,126.2748,8230.2998,2.5513,-14.4901,1.2078,0.2914,2400.0,2400.0,-0.574,-0.3165,4.4577,73.5357 2019-06-03 15:43:31.300,126.2965,8230.2441,2.5397,-14.4481,1.1564,0.2856,2400.0,2400.0,-0.5652,-0.3195,4.455,73.4684 2019-06-03 15:43:31.320,126.3505,8230.2998,2.5397,-14.4481,0.8676,0.045,2400.0,2400.0,-0.574,-0.3195,4.451,73.4684 2019-06-03 15:43:31.340,126.5124,8230.3564,2.5397,-14.4481,1.1379,0.2012,2400.0,2400.0,-0.5652,-0.3195,4.4735,73.4684 2019-06-03 15:43:31.360,126.5124,8230.3564,2.5161,-14.4122,0.9005,0.054,2400.0,2400.0,-0.5711,-0.3195,4.4431,73.4019 2019-06-03 15:43:31.380,126.4477,8230.3564,2.5161,-14.4122,1.2847,0.2245,2400.0,2400.0,-0.5886,-0.3226,4.4735,73.4019 2019-06-03 15:43:31.400,126.4477,8230.3281,2.4971,-14.3471,1.2093,0.1944,2400.0,2400.0,-0.5915,-0.3165,4.4524,73.3088 2019-06-03 15:43:31.420,126.4585,8230.2441,2.4862,-14.3309,0.7385,0.1052,2400.0,2400.0,-0.6003,-0.3195,4.4603,73.2751 2019-06-03 15:43:31.440,126.5124,8230.2158,2.4862,-14.3309,1.1634,0.1607,2400.0,2400.0,-0.6149,-0.3226,4.4762,73.2751 2019-06-03 15:43:31.460,126.5124,8230.1875,2.4862,-14.3309,0.8446,0.1065,2400.0,2400.0,-0.612,-0.3195,4.4722,73.2751 2019-06-03 15:43:31.480,126.4477,8229.8789,2.4748,-14.2881,1.2385,0.1732,2400.0,2400.0,-0.6558,-0.35,4.4947,73.2065 2019-06-03 15:43:31.500,126.4585,8228.8389,2.4584,-14.2492,1.2385,0.1829,2400.0,2400.0,-0.6558,-0.3469,4.4868,73.1374 2019-06-03 15:43:31.520,126.5986,8228.0234,2.4584,-14.2492,0.7348,0.1513,2400.0,2400.0,-0.6734,-0.3287,4.4841,73.1374 2019-06-03 15:43:31.540,126.8457,8226.7021,2.4584,-14.2492,1.2023,0.1157,2400.0,2400.0,-0.6938,-0.35,4.5,73.1374 2019-06-03 15:43:31.560,126.8564,8225.8594,2.4388,-14.2109,0.8949,0.1624,2400.0,2400.0,-0.6938,-0.3287,4.4868,73.0693 2019-06-03 15:43:31.580,126.7813,8224.623,2.4388,-14.2109,1.2145,0.1175,2400.0,2400.0,-0.6967,-0.3561,4.5146,73.0693 2019-06-03 15:43:31.600,126.7921,8223.752,2.4227,-14.1467,1.2392,0.1178,2400.0,2400.0,-0.6851,-0.35,4.5053,72.9678 2019-06-03 15:43:31.620,126.7921,8222.9082,2.4176,-14.1259,0.7636,0.2184,2400.0,2400.0,-0.6821,-0.35,4.5212,72.9324 2019-06-03 15:43:31.640,126.8564,8221.6152,2.4176,-14.1259,1.223,0.0515,2400.0,2400.0,-0.6851,-0.3561,4.5781,72.9324 2019-06-03 15:43:31.660,126.8564,8221.5029,2.4176,-14.1259,0.8938,0.2097,2400.0,2400.0,-0.6851,-0.3469,4.5702,72.9324 2019-06-03 15:43:31.680,126.7921,8221.4189,2.4062,-14.0822,1.1723,0.0654,2400.0,2400.0,-0.6997,-0.3834,4.5954,72.8599 2019-06-03 15:43:31.700,126.8028,8221.334,2.3923,-14.0413,1.1882,0.1006,2400.0,2400.0,-0.6704,-0.3682,4.5967,72.7869 2019-06-03 15:43:31.720,126.9421,8221.334,2.3923,-14.0413,0.8139,0.2491,2400.0,2400.0,-0.6646,-0.3713,4.594,72.7869 2019-06-03 15:43:31.740,127.1665,8221.3623,2.3923,-14.0413,1.2344,0.0418,2400.0,2400.0,-0.6558,-0.3865,4.6536,72.7869 2019-06-03 15:43:31.760,127.1985,8221.3906,2.3815,-14.0,0.8731,0.2408,2400.0,2400.0,-0.6675,-0.3865,4.643,72.713 2019-06-03 15:43:31.780,127.1239,8221.3623,2.3815,-14.0,1.1653,0.0195,2400.0,2400.0,-0.6763,-0.4321,4.6788,72.713 2019-06-03 15:43:31.800,127.1132,8221.4189,2.3738,-13.9318,1.1043,0.0411,2400.0,2400.0,-0.6646,-0.4291,4.6986,72.6041 2019-06-03 15:43:31.820,127.1345,8221.4189,2.3778,-13.9069,0.8435,0.269,2400.0,2400.0,-0.6441,-0.42,4.7105,72.5652 2019-06-03 15:43:31.840,127.1879,8221.5029,2.3778,-13.9069,1.1246,0.0123,2400.0,2400.0,-0.6383,-0.4473,4.7516,72.5652 2019-06-03 15:43:31.860,127.1879,8221.4746,2.3778,-13.9069,0.9611,0.2555,2400.0,2400.0,-0.6354,-0.4291,4.7383,72.5652 2019-06-03 15:43:31.880,127.1132,8221.5313,2.3747,-13.8647,1.1253,0.0119,2400.0,2400.0,-0.6558,-0.4443,4.7542,72.4896 2019-06-03 15:43:31.900,127.1345,8221.4189,2.373,-13.8243,1.1523,0.0152,2400.0,2400.0,-0.6295,-0.4443,4.7688,72.4118 2019-06-03 15:43:31.920,127.2944,8221.4189,2.373,-13.8243,0.9323,0.2872,2400.0,2400.0,-0.6003,-0.4504,4.7662,72.4118 2019-06-03 15:43:31.940,127.5069,8221.4746,2.373,-13.8243,1.1009,0.0007,2400.0,2400.0,-0.5857,-0.4473,4.7926,72.4118 2019-06-03 15:43:31.960,127.5281,8221.4746,2.3769,-13.7817,0.9504,0.2498,2400.0,2400.0,-0.5711,-0.4443,4.7873,72.3336 2019-06-03 15:43:31.980,127.4539,8221.4746,2.3769,-13.7817,1.0477,0.0045,2400.0,2400.0,-0.5769,-0.4656,4.79,72.3336 2019-06-03 15:43:32.000,127.4645,8221.4746,2.3936,-13.7181,1.0392,0.0171,2400.0,2400.0,-0.5623,-0.4412,4.7993,72.2155 2019-06-03 15:43:32.020,127.4645,8221.4473,2.4062,-13.6934,1.0055,0.2661,2400.0,2400.0,-0.5506,-0.4686,4.7714,72.1744 2019-06-03 15:43:32.040,127.5281,8221.4473,2.4062,-13.6934,1.1091,0.0183,2400.0,2400.0,-0.5477,-0.4656,4.794,72.1744 2019-06-03 15:43:32.060,127.5493,8221.4189,2.4062,-13.6934,0.9652,0.2452,2400.0,2400.0,-0.5448,-0.4321,4.782,72.1744 2019-06-03 15:43:32.080,127.4751,8221.3623,2.4156,-13.6545,1.159,0.0308,2400.0,2400.0,-0.5594,-0.4473,4.8072,72.0953 2019-06-03 15:43:32.100,127.4857,8221.2783,2.4291,-13.6154,0.9981,0.0308,2400.0,2400.0,-0.5506,-0.4382,4.8429,72.0162 2019-06-03 15:43:32.120,127.6129,8221.2783,2.4291,-13.6154,1.0462,0.2531,2400.0,2400.0,-0.5389,-0.3804,4.8482,72.0162 2019-06-03 15:43:32.140,127.8349,8221.3066,2.4291,-13.6154,1.0225,0.0182,2400.0,2400.0,-0.5506,-0.3591,4.8522,72.0162 2019-06-03 15:43:32.160,127.8454,8221.3066,2.4485,-13.5738,1.0273,0.2651,2400.0,2400.0,-0.5301,-0.2616,4.8469,71.9353 2019-06-03 15:43:32.180,127.8032,8221.334,2.4485,-13.5738,1.0758,0.0018,2400.0,2400.0,-0.5711,-0.2708,4.8218,71.9353 2019-06-03 15:43:32.200,127.7926,8221.3066,2.4788,-13.5087,1.0392,0.0021,2400.0,2400.0,-0.5623,-0.2006,4.8496,71.8147 2019-06-03 15:43:32.220,127.8032,8221.3066,2.4952,-13.4857,1.0599,0.2832,2400.0,2400.0,-0.5477,-0.1335,4.8429,71.7753 2019-06-03 15:43:32.240,127.8771,8221.2783,2.4952,-13.4857,1.0492,-0.0003,2400.0,2400.0,-0.5389,-0.0602,4.8707,71.7753 2019-06-03 15:43:32.260,127.8665,8221.2783,2.4952,-13.4857,0.9933,0.2715,2400.0,2400.0,-0.5184,0.0377,4.8602,71.7753 2019-06-03 15:43:32.280,127.8032,8221.2783,2.5139,-13.4407,0.9796,-0.0037,2400.0,2400.0,-0.5155,0.105,4.8602,71.6971 2019-06-03 15:43:32.300,127.7926,8221.25,2.536,-13.395,0.9841,-0.0083,2400.0,2400.0,-0.5068,0.2614,4.8615,71.6206 2019-06-03 15:43:32.320,127.9403,8221.1943,2.536,-13.395,1.102,0.2662,2400.0,2400.0,-0.4863,0.3443,4.8456,71.6206 2019-06-03 15:43:32.340,128.1716,8221.1943,2.536,-13.395,0.9818,0.0027,2400.0,2400.0,-0.4951,0.4765,4.8509,71.6206 2019-06-03 15:43:32.360,128.203,8221.1943,2.5669,-13.338,1.2085,0.2463,2400.0,2400.0,-0.4892,0.6336,4.8522,71.5437 2019-06-03 15:43:32.380,128.1191,8221.2217,2.5982,-13.2705,0.9027,0.0309,2400.0,2400.0,-0.4892,0.649,4.8588,71.4694 2019-06-03 15:43:32.400,128.1296,8221.25,2.6032,-13.2394,0.8868,0.0285,2340.0,2400.0,-0.4746,0.7633,4.8681,71.4344 2019-06-03 15:43:32.420,128.1296,8221.2783,2.621,-13.1981,1.1756,0.2238,2340.0,2400.0,-0.4337,0.8251,4.8522,71.3972 2019-06-03 15:43:32.440,128.1821,8221.2783,2.621,-13.1981,0.9238,0.0585,2340.0,2400.0,-0.4103,0.8745,4.8482,71.3972 2019-06-03 15:43:32.460,128.2135,8221.2217,2.621,-13.1981,1.2374,0.2168,2340.0,2400.0,-0.3869,0.9519,4.8297,71.3972 2019-06-03 15:43:32.480,128.1296,8221.2217,2.6444,-13.1146,0.8106,0.0658,2340.0,2400.0,-0.3635,0.9395,4.839,71.3264 2019-06-03 15:43:32.500,128.1296,8221.166,2.6754,-13.016,0.8221,0.0711,2340.0,2400.0,-0.3343,0.9457,4.8429,71.2573 2019-06-03 15:43:32.520,128.2869,8221.166,2.6754,-13.016,1.2666,0.1632,2340.0,2400.0,-0.2875,0.9829,4.8443,71.2573 2019-06-03 15:43:32.540,128.5064,8221.1943,2.6754,-13.016,0.8543,0.1154,2340.0,2400.0,-0.2758,0.9643,4.8482,71.2573 2019-06-03 15:43:32.560,128.5169,8221.25,2.7127,-12.9022,1.3295,0.1675,2340.0,2400.0,-0.232,1.0294,4.831,71.1878 2019-06-03 15:43:32.580,128.4438,8221.25,2.7127,-12.9022,0.7611,0.1463,2340.0,2400.0,-0.2028,1.017,4.8244,71.1878 2019-06-03 15:43:32.600,128.4438,8221.3066,2.752,-12.7179,0.7481,0.1454,2340.0,2400.0,-0.1414,1.0201,4.8403,71.0943 2019-06-03 15:43:32.620,128.4542,8221.2783,2.7666,-12.6515,1.3757,0.0979,2340.0,2400.0,-0.0858,1.048,4.8297,71.0619 2019-06-03 15:43:32.640,128.5273,8221.334,2.7666,-12.6515,0.7973,0.2025,2340.0,2400.0,-0.0508,1.0945,4.8496,71.0619 2019-06-03 15:43:32.660,128.5273,8221.2783,2.7666,-12.6515,1.3543,0.0741,2340.0,2400.0,0.0106,1.1845,4.835,71.0619 2019-06-03 15:43:32.680,128.4333,8220.9131,2.7974,-12.5133,0.8284,0.2451,2340.0,2400.0,0.0545,1.1845,4.8376,70.9999 2019-06-03 15:43:32.700,128.4647,8219.873,2.8342,-12.3652,0.7341,0.2492,2340.0,2400.0,0.0925,1.2435,4.8337,70.9395 2019-06-03 15:43:32.720,128.6003,8219.0303,2.8342,-12.3652,1.4186,0.0111,2340.0,2400.0,0.1334,1.2715,4.8072,70.9395 2019-06-03 15:43:32.740,128.8187,8217.709,2.8342,-12.3652,0.8187,0.2774,2340.0,2400.0,0.1597,1.259,4.8257,70.9395 2019-06-03 15:43:32.760,128.8395,8216.8662,2.8725,-12.2049,1.3025,0.0198,2340.0,2400.0,0.2094,1.3119,4.8244,70.881 2019-06-03 15:43:32.780,128.7876,8215.4893,2.8725,-12.2049,0.9175,0.3242,2340.0,2400.0,0.2328,1.3119,4.839,70.881 2019-06-03 15:43:32.800,128.7772,8214.5625,2.9183,-11.9518,0.8321,0.3076,2340.0,2400.0,0.2591,1.3119,4.839,70.8036 2019-06-03 15:43:32.820,128.7876,8213.6631,2.9273,-11.867,1.2762,-0.0279,2340.0,2400.0,0.2883,1.3119,4.8218,70.7791 2019-06-03 15:43:32.840,128.8395,8212.3984,2.9273,-11.867,0.9545,0.3325,2340.0,2400.0,0.3058,1.3119,4.8337,70.7791 2019-06-03 15:43:32.860,128.8499,8212.3428,2.9273,-11.867,1.1568,-0.0389,2340.0,2400.0,0.3643,1.3181,4.831,70.7791 2019-06-03 15:43:32.880,128.7772,8212.3428,2.9637,-11.6848,1.0547,0.3555,2340.0,2400.0,0.3585,1.3181,4.831,70.7289 2019-06-03 15:43:32.900,128.7876,8212.2861,3.0022,-11.4889,1.0292,0.3547,2340.0,2400.0,0.4052,1.3212,4.8456,70.6825 2019-06-03 15:43:32.920,128.9224,8212.2861,3.0022,-11.4889,1.2241,-0.0632,2340.0,2400.0,0.4169,1.3461,4.8125,70.6825 2019-06-03 15:43:32.940,129.1397,8212.2861,3.0022,-11.4889,1.0798,0.3442,2340.0,2400.0,0.4578,1.3368,4.831,70.6825 2019-06-03 15:43:32.960,129.1604,8212.3428,3.0321,-11.2927,1.0451,-0.005,2340.0,2400.0,0.49,1.343,4.8072,70.6388 2019-06-03 15:43:32.980,129.0984,8212.3701,3.0321,-11.2927,1.1516,0.292,2340.0,2400.0,0.5163,1.3306,4.8337,70.6388 2019-06-03 15:43:33.000,129.0881,8212.4268,3.0874,-10.9786,1.129,0.2509,2340.0,2400.0,0.5251,1.3337,4.839,70.5772 2019-06-03 15:43:33.020,129.1087,8212.3984,3.0983,-10.8761,1.0166,0.0302,2340.0,2400.0,0.5718,1.3679,4.8376,70.5592 2019-06-03 15:43:33.040,129.1604,8212.3701,3.0983,-10.8761,1.2415,0.2284,2340.0,2400.0,0.5718,1.343,4.8403,70.5592 2019-06-03 15:43:33.060,129.1707,8212.2861,3.0983,-10.8761,0.8909,0.0834,2340.0,2400.0,0.5894,1.3492,4.8085,70.5592 2019-06-03 15:43:33.080,129.0881,8212.3428,3.139,-10.6564,1.2955,0.2041,2340.0,2400.0,0.5864,1.343,4.8125,70.5238 2019-06-03 15:43:33.100,129.0984,8212.3145,3.1718,-10.4333,1.2833,0.1738,2340.0,2400.0,0.5952,1.3461,4.8284,70.4915 2019-06-03 15:43:33.120,129.2429,8212.3145,3.1718,-10.4333,0.8916,0.1149,2340.0,2400.0,0.5952,1.343,4.8165,70.4915 2019-06-03 15:43:33.140,129.4488,8212.3428,3.1718,-10.4333,1.4364,0.136,2340.0,2400.0,0.604,1.343,4.8337,70.4915 2019-06-03 15:43:33.160,129.4899,8212.3984,3.2011,-10.211,0.7899,0.1775,2340.0,2400.0,0.6274,1.3492,4.8204,70.4618 2019-06-03 15:43:33.180,129.4282,8212.4268,3.2011,-10.211,1.4279,0.0997,2340.0,2400.0,0.642,1.3461,4.8191,70.4618 2019-06-03 15:43:33.200,129.4179,8212.4551,3.2576,-9.86,1.4297,0.0649,2340.0,2400.0,0.6537,1.343,4.8231,70.4189 2019-06-03 15:43:33.220,129.4282,8212.4551,3.2787,-9.7428,0.8417,0.2064,2340.0,2400.0,0.6654,1.3461,4.8112,70.4054 2019-06-03 15:43:33.240,129.4796,8212.4824,3.2787,-9.7428,1.3753,0.04,2340.0,2400.0,0.6537,1.3399,4.8244,70.4054 2019-06-03 15:43:33.260,129.4899,8212.4268,3.2787,-9.7428,0.8746,0.2725,2340.0,2400.0,0.6595,1.343,4.8112,70.4054 2019-06-03 15:43:33.280,129.4179,8212.4824,3.3156,-9.5078,1.3376,0.0125,2340.0,2400.0,0.6654,1.343,4.8271,70.3813 2019-06-03 15:43:33.300,129.4385,8212.3984,3.3443,-9.2755,1.2936,-0.0006,2340.0,2400.0,0.6595,1.3212,4.8204,70.3595 2019-06-03 15:43:33.320,129.5104,8212.3428,3.3443,-9.2755,0.8953,0.2841,2340.0,2400.0,0.6741,1.3306,4.8138,70.3595 2019-06-03 15:43:33.340,129.6539,8212.2578,3.3443,-9.2755,1.2259,-0.0321,2340.0,2400.0,0.6712,1.3243,4.8165,70.3595 2019-06-03 15:43:33.360,129.6539,8212.2861,3.3773,-9.0353,0.9722,0.3125,2340.0,2400.0,0.6975,1.3275,4.8112,70.3398 2019-06-03 15:43:33.380,129.5925,8212.2861,3.3773,-9.0353,1.1901,-0.0253,2340.0,2400.0,0.6975,1.315,4.8019,70.3398 2019-06-03 15:43:33.400,129.5925,8212.3145,3.4305,-8.6679,1.1338,-0.0341,2400.0,2340.0,0.7121,1.315,4.8257,70.3123 2019-06-03 15:43:33.420,129.5822,8212.2578,3.4532,-8.5416,1.1046,0.2999,2400.0,2340.0,0.718,1.3181,4.794,70.3035 2019-06-03 15:43:33.440,129.6539,8212.2021,3.4532,-8.5416,1.0421,-0.018,2400.0,2340.0,0.7121,1.3181,4.8178,70.3035 2019-06-03 15:43:33.460,129.6642,8212.1738,3.4532,-8.5416,1.1486,0.291,2400.0,2340.0,0.7121,1.3212,4.7913,70.3035 2019-06-03 15:43:33.480,129.5925,8212.1455,3.4822,-8.2981,0.9867,0.0195,2400.0,2340.0,0.7063,1.315,4.7953,70.2873 2019-06-03 15:43:33.500,129.6027,8212.1172,3.5153,-8.0515,1.0066,0.0194,2400.0,2340.0,0.7004,1.2995,4.8151,70.272 2019-06-03 15:43:33.520,129.6642,8212.1455,3.5153,-8.0515,1.2119,0.2375,2400.0,2340.0,0.7121,1.3026,4.7953,70.272 2019-06-03 15:43:33.540,129.8074,8212.1172,3.5153,-8.0515,0.8694,0.0602,2400.0,2340.0,0.6975,1.2497,4.8151,70.272 2019-06-03 15:43:33.560,129.8074,8212.1172,3.5534,-7.8013,1.3173,0.2109,2400.0,2340.0,0.7209,1.2311,4.8072,70.2594 2019-06-03 15:43:33.580,129.746,8212.1455,3.5534,-7.8013,0.8846,0.1113,2400.0,2340.0,0.7268,1.0821,4.8019,70.2594 2019-06-03 15:43:33.600,129.7358,8212.2021,3.602,-7.426,0.8517,0.1141,2400.0,2340.0,0.718,0.9767,4.8178,70.2423 2019-06-03 15:43:33.620,129.746,8212.2295,3.619,-7.3003,1.3628,0.1266,2400.0,2340.0,0.7238,0.8591,4.7754,70.2358 2019-06-03 15:43:33.640,129.8278,8212.2295,3.619,-7.3003,0.8557,0.1802,2400.0,2340.0,0.7151,0.6213,4.7873,70.2358 2019-06-03 15:43:33.660,129.8176,8212.2578,3.619,-7.3003,1.3276,0.0668,2400.0,2340.0,0.7238,0.4427,4.7913,70.2358 2019-06-03 15:43:33.680,129.746,8212.2861,3.6512,-7.057,0.8121,0.245,2400.0,2340.0,0.7121,0.1939,4.7834,70.224 2019-06-03 15:43:33.700,129.746,8212.2021,3.6902,-6.8133,0.8091,0.231,2400.0,2340.0,0.6917,-0.0113,4.7953,70.213 2019-06-03 15:43:33.720,129.8992,8212.2578,3.6902,-6.8133,1.3961,0.0347,2400.0,2340.0,0.6975,-0.2159,4.7767,70.213 2019-06-03 15:43:33.740,130.113,8212.3701,3.6902,-6.8133,0.8931,0.267,2400.0,2340.0,0.6975,-0.4868,4.7913,70.213 2019-06-03 15:43:33.760,130.1232,8212.4268,3.7258,-6.5827,1.2666,0.0279,2400.0,2340.0,0.7092,-0.7053,4.7913,70.2021 2019-06-03 15:43:33.780,130.0724,8212.4268,3.7532,-6.3686,0.8465,0.2692,2400.0,2340.0,0.7121,-0.9292,4.7754,70.1903 2019-06-03 15:43:33.800,130.0724,8212.3984,3.7713,-6.2692,0.8742,0.2811,2400.0,2340.0,0.6829,-1.053,4.7847,70.1842 2019-06-03 15:43:33.820,130.0724,8212.3984,3.7799,-6.1785,1.3739,-0.0125,2400.0,2340.0,0.6946,-1.1585,4.7807,70.1781 2019-06-03 15:43:33.840,130.1334,8212.4268,3.7799,-6.1785,0.8983,0.3615,2400.0,2340.0,0.6654,-1.342,4.7781,70.1781 2019-06-03 15:43:33.860,130.1334,8212.4551,3.7799,-6.1785,1.2489,-0.0647,2400.0,2340.0,0.6741,-1.4051,4.79,70.1781 2019-06-03 15:43:33.880,130.052,8212.2021,3.8105,-6.0108,0.9286,0.3631,2400.0,2340.0,0.6624,-1.4321,4.7688,70.1654 2019-06-03 15:43:33.900,130.0724,8211.2188,3.8463,-5.8646,0.848,0.3573,2400.0,2340.0,0.6478,-1.4441,4.7781,70.1527 2019-06-03 15:43:33.920,130.1435,8210.3477,3.8463,-5.8646,1.1986,-0.0518,2400.0,2340.0,0.6566,-1.4291,4.7781,70.1527 2019-06-03 15:43:33.940,130.2856,8209.083,3.8463,-5.8646,0.9164,0.3582,2400.0,2340.0,0.6449,-1.4171,4.79,70.1527 2019-06-03 15:43:33.960,130.2856,8208.3252,3.8703,-5.7421,1.1538,-0.0669,2400.0,2340.0,0.6361,-1.4051,4.794,70.1396 2019-06-03 15:43:33.980,130.2247,8207.1445,3.8703,-5.7421,1.0192,0.353,2400.0,2340.0,0.6391,-1.375,4.786,70.1396 2019-06-03 15:43:34.000,130.2247,8206.3018,3.9152,-5.5955,0.9974,0.3655,2400.0,2340.0,0.6157,-1.3931,4.7887,70.1156 2019-06-03 15:43:34.020,130.2349,8205.459,3.9156,-5.5623,1.2237,-0.0416,2400.0,2340.0,0.6244,-1.3931,4.7767,70.109 2019-06-03 15:43:34.040,130.2856,8204.251,3.9156,-5.5623,1.0529,0.4024,2400.0,2340.0,0.6069,-1.3961,4.7847,70.109 2019-06-03 15:43:34.060,130.2957,8204.1104,3.9156,-5.5623,1.1416,-0.0905,2400.0,2340.0,0.6069,-1.3931,4.7979,70.109 2019-06-03 15:43:34.080,130.2247,8204.083,3.9463,-5.493,1.0921,0.3458,2400.0,2340.0,0.6157,-1.3961,4.7913,70.0946 2019-06-03 15:43:34.100,130.2247,8204.0264,3.9781,-5.4333,1.0517,0.3546,2400.0,2340.0,0.6069,-1.4141,4.7979,70.0819 2019-06-03 15:43:34.120,130.2856,8203.998,3.9781,-5.4333,1.0569,-0.0458,2400.0,2340.0,0.6128,-1.4111,4.7807,70.0819 2019-06-03 15:43:34.140,130.4475,8203.998,3.9781,-5.4333,1.1006,0.3494,2400.0,2340.0,0.6069,-1.4831,4.7913,70.0819 2019-06-03 15:43:34.160,130.4374,8204.0547,3.9958,-5.3931,1.0795,-0.0478,2400.0,2340.0,0.5923,-1.546,4.7966,70.0697 2019-06-03 15:43:34.180,130.3767,8204.0264,3.9958,-5.3931,1.2263,0.3119,2400.0,2340.0,0.5864,-1.6777,4.79,70.0697 2019-06-03 15:43:34.200,130.3767,8203.9707,4.0368,-5.3556,1.2219,0.3258,2400.0,2340.0,0.5251,-1.7973,4.794,70.0517 2019-06-03 15:43:34.220,130.3868,8203.9424,4.0399,-5.3545,0.9589,-0.0038,2400.0,2340.0,0.5134,-1.8062,4.7807,70.0461 2019-06-03 15:43:34.240,130.4374,8203.9707,4.0399,-5.3545,1.2485,0.3298,2400.0,2340.0,0.4637,-1.9405,4.7781,70.0461 2019-06-03 15:43:34.260,130.4576,8203.9424,4.0399,-5.3545,0.8324,-0.0172,2400.0,2340.0,0.4666,-2.0,4.8019,70.0461 2019-06-03 15:43:34.280,130.3868,8203.9424,4.0696,-5.3481,1.2466,0.2779,2400.0,2340.0,0.4549,-2.0893,4.7913,70.0364 2019-06-03 15:43:34.300,130.3868,8203.8857,4.0949,-5.3555,1.3188,0.3086,2400.0,2340.0,0.4228,-2.1458,4.8098,70.0277 2019-06-03 15:43:34.320,130.4778,8203.8584,4.0949,-5.3555,0.8313,0.0368,2400.0,2340.0,0.414,-2.1488,4.7834,70.0277 2019-06-03 15:43:34.340,130.5989,8203.8301,4.0949,-5.3555,1.318,0.2744,2400.0,2340.0,0.3731,-2.2052,4.7807,70.0277 2019-06-03 15:43:34.360,130.5989,8203.9141,4.1101,-5.3852,0.7437,0.029,2400.0,2340.0,0.3468,-2.22,4.7966,70.0172 2019-06-03 15:43:34.380,130.5485,8203.9141,4.1101,-5.3852,1.3898,0.2091,2400.0,2340.0,0.2971,-2.2141,4.7807,70.0172 2019-06-03 15:43:34.400,130.5283,8203.9707,4.1501,-5.4474,1.3864,0.2258,2400.0,2460.0,0.2269,-2.22,4.7979,70.0019 2019-06-03 15:43:34.420,130.5485,8203.9141,4.1563,-5.4791,0.7773,0.1041,2400.0,2460.0,0.1714,-2.2171,4.794,69.9971 2019-06-03 15:43:34.440,130.609,8203.8584,4.1563,-5.4791,1.426,0.2151,2400.0,2460.0,0.148,-2.2082,4.8045,69.9971 2019-06-03 15:43:34.460,130.609,8203.8584,4.1563,-5.4791,0.6952,0.0916,2400.0,2460.0,0.1217,-2.2438,4.7926,69.9971 2019-06-03 15:43:34.480,130.5485,8203.8018,4.1838,-5.5413,1.4645,0.1265,2400.0,2460.0,0.1305,-2.2883,4.7847,69.9866 2019-06-03 15:43:34.500,130.5485,8203.7734,4.2007,-5.6186,1.3495,0.165,2400.0,2460.0,0.1042,-2.3683,4.7926,69.9748 2019-06-03 15:43:34.520,130.5283,8203.7734,4.2007,-5.6186,0.7492,0.1389,2400.0,2460.0,0.1129,-2.3772,4.8032,69.9748 2019-06-03 15:43:34.540,130.609,8203.8018,4.2007,-5.6186,1.4523,0.1244,2400.0,2460.0,0.11,-2.4335,4.8085,69.9748 2019-06-03 15:43:34.560,130.5989,8203.8584,4.2133,-5.7074,0.7292,0.1602,2400.0,2460.0,0.11,-2.4364,4.8059,69.963 2019-06-03 15:43:34.580,130.5384,8203.9141,4.2133,-5.7074,1.48,0.0896,2400.0,2460.0,0.1129,-2.392,4.7834,69.963 2019-06-03 15:43:34.600,130.5485,8203.9424,4.2491,-5.853,1.4308,0.09,2400.0,2460.0,0.1042,-2.4394,4.7966,69.9429 2019-06-03 15:43:34.620,130.5485,8203.9141,4.2602,-5.9061,0.7566,0.2305,2400.0,2460.0,0.1188,-2.4187,4.7926,69.9359 2019-06-03 15:43:34.640,130.5989,8204.0264,4.2602,-5.9061,1.4327,0.0514,2400.0,2460.0,0.1158,-2.4246,4.8045,69.9359 2019-06-03 15:43:34.660,130.6191,8203.998,4.2602,-5.9061,0.6704,0.2468,2400.0,2460.0,0.1188,-2.4246,4.8165,69.9359 2019-06-03 15:43:34.680,130.5384,8204.0264,4.2831,-6.0147,1.4856,-0.0028,2400.0,2460.0,0.11,-2.4216,4.79,69.9206 2019-06-03 15:43:34.700,130.5485,8203.9707,4.2977,-6.1324,1.4175,0.0454,2400.0,2460.0,0.0895,-2.4246,4.7926,69.9049 2019-06-03 15:43:34.720,130.6896,8203.998,4.2977,-6.1324,0.7507,0.2729,2400.0,2460.0,0.0895,-2.4039,4.794,69.9049 2019-06-03 15:43:34.740,130.9107,8203.9707,4.2977,-6.1324,1.5174,-0.0027,2400.0,2460.0,0.0808,-2.4127,4.7953,69.9049 2019-06-03 15:43:34.760,130.9207,8203.998,4.3136,-6.2569,0.7888,0.2932,2400.0,2460.0,0.0808,-2.4127,4.8072,69.8896 2019-06-03 15:43:34.780,130.8605,8204.0264,4.3136,-6.2569,1.3517,-0.0549,2400.0,2460.0,0.0808,-2.4039,4.7767,69.8896 2019-06-03 15:43:34.800,130.8605,8204.0264,4.3505,-6.4422,1.3872,0.0074,2400.0,2460.0,0.0662,-2.4098,4.786,69.866 2019-06-03 15:43:34.820,130.8605,8204.0264,4.3705,-6.5032,0.8287,0.3082,2400.0,2460.0,0.0749,-2.392,4.7754,69.8572 2019-06-03 15:43:34.840,130.9207,8204.0547,4.3705,-6.5032,1.2877,-0.043,2400.0,2460.0,0.0691,-2.3535,4.7767,69.8572 2019-06-03 15:43:34.860,130.9207,8204.0264,4.3705,-6.5032,0.8487,0.3171,2400.0,2460.0,0.0545,-2.3505,4.7873,69.8572 2019-06-03 15:43:34.880,130.8605,8203.9707,4.3918,-6.6321,1.291,-0.0703,2400.0,2460.0,0.0691,-2.2883,4.79,69.8402 2019-06-03 15:43:34.900,130.8806,8203.9141,4.408,-6.7654,1.2574,-0.0078,2400.0,2460.0,0.0545,-2.2913,4.8045,69.824 2019-06-03 15:43:34.920,130.9207,8203.9141,4.408,-6.7654,0.9182,0.31,2400.0,2460.0,0.072,-2.2764,4.7926,69.824 2019-06-03 15:43:34.940,131.0609,8203.9707,4.408,-6.7654,1.2463,-0.0396,2400.0,2460.0,0.0662,-2.2646,4.7688,69.824 2019-06-03 15:43:34.960,131.071,8204.0264,4.4284,-6.8977,1.0484,0.3265,2400.0,2460.0,0.0749,-2.2557,4.786,69.8061 2019-06-03 15:43:34.980,131.0109,8203.9707,4.4284,-6.8977,1.23,-0.0747,2400.0,2460.0,0.0662,-2.2052,4.7595,69.8061 2019-06-03 15:43:35.000,131.0309,8203.9707,4.466,-7.099,1.1871,-0.0264,2400.0,2460.0,0.0662,-2.2171,4.7979,69.7781 2019-06-03 15:43:35.020,131.0309,8203.9141,4.4863,-7.1589,1.0188,0.3299,2400.0,2460.0,0.0662,-2.2289,4.8072,69.7685 2019-06-03 15:43:35.040,131.081,8203.8857,4.4863,-7.1589,1.2078,-0.0412,2400.0,2460.0,0.0632,-2.1785,4.8138,69.7685 2019-06-03 15:43:35.060,131.081,8203.9141,4.4863,-7.1589,1.1231,0.2896,2400.0,2460.0,0.0574,-2.1903,4.7993,69.7685 2019-06-03 15:43:35.080,131.0109,8203.9141,4.5046,-7.2881,1.0628,-0.0128,2400.0,2460.0,0.0545,-2.1517,4.7529,69.7484 2019-06-03 15:43:35.100,131.0109,8203.8584,4.524,-7.4175,1.0484,0.0394,2400.0,2460.0,0.0486,-2.1636,4.7714,69.7274 2019-06-03 15:43:35.120,131.091,8203.8301,4.524,-7.4175,1.1989,0.2619,2400.0,2460.0,0.0398,-2.1458,4.7675,69.7274 2019-06-03 15:43:35.140,131.2308,8203.8857,4.524,-7.4175,1.0998,0.0156,2400.0,2460.0,0.0369,-2.1369,4.7781,69.7274 2019-06-03 15:43:35.160,131.2308,8203.8857,4.5483,-7.5399,1.1216,0.2443,2400.0,2460.0,0.0282,-2.1428,4.8006,69.7051 2019-06-03 15:43:35.180,131.1709,8203.9141,4.5779,-7.661,1.0488,0.0183,2400.0,2460.0,0.0515,-2.0566,4.7913,69.6819 2019-06-03 15:43:35.200,131.1809,8203.9707,4.5852,-7.7259,0.98,0.0476,2400.0,2460.0,0.0369,-2.0625,4.794,69.6688 2019-06-03 15:43:35.220,131.1709,8203.9707,4.6008,-7.7827,1.2204,0.2355,2400.0,2460.0,0.0545,-2.0596,4.7953,69.6553 2019-06-03 15:43:35.240,131.2408,8203.9141,4.6008,-7.7827,0.9367,0.0361,2400.0,2460.0,0.0545,-2.0596,4.7701,69.6553 2019-06-03 15:43:35.260,131.2408,8203.9141,4.6008,-7.7827,1.2614,0.2269,2400.0,2460.0,0.0486,-2.0596,4.7993,69.6553 2019-06-03 15:43:35.280,131.1709,8203.8584,4.6209,-7.9023,1.0543,0.0739,2400.0,2460.0,0.0428,-2.0596,4.7767,69.6277 2019-06-03 15:43:35.300,131.1809,8203.7178,4.6461,-8.0153,0.9101,0.1075,2400.0,2460.0,0.0515,-2.0625,4.8098,69.5971 2019-06-03 15:43:35.320,131.2408,8203.7461,4.6461,-8.0153,1.2093,0.178,2400.0,2460.0,0.0457,-2.0387,4.7926,69.5971 2019-06-03 15:43:35.340,131.3902,8203.8018,4.6461,-8.0153,0.9833,0.1003,2400.0,2460.0,0.0574,-2.0417,4.7741,69.5971 2019-06-03 15:43:35.360,131.3902,8203.8584,4.6737,-8.1239,1.2829,0.1659,2400.0,2460.0,0.0515,-2.0447,4.79,69.5643 2019-06-03 15:43:35.380,131.3305,8203.9141,4.6737,-8.1239,0.9271,0.1427,2400.0,2460.0,0.072,-2.0,4.7873,69.5643 2019-06-03 15:43:35.400,131.3305,8203.9707,4.7071,-8.2913,0.8824,0.1615,2340.0,2520.0,0.0486,-2.0268,4.794,69.5132 2019-06-03 15:43:35.420,131.3405,8203.9424,4.7179,-8.3429,1.3151,0.1107,2340.0,2520.0,0.0603,-2.0447,4.8125,69.4948 2019-06-03 15:43:35.440,131.3902,8203.9141,4.7179,-8.3429,0.9345,0.1483,2340.0,2520.0,0.0603,-2.003,4.786,69.4948 2019-06-03 15:43:35.460,131.4002,8203.9141,4.7179,-8.3429,1.3328,0.0771,2340.0,2520.0,0.0545,-2.009,4.8032,69.4948 2019-06-03 15:43:35.480,131.3305,8203.9141,4.7415,-8.4485,0.9508,0.1915,2340.0,2520.0,0.0603,-2.0,4.7767,69.4555 2019-06-03 15:43:35.500,131.3305,8203.8301,4.7695,-8.5444,0.9811,0.2087,2340.0,2520.0,0.0515,-2.006,4.7807,69.4148 2019-06-03 15:43:35.520,131.4002,8203.8301,4.7695,-8.5444,1.1904,0.087,2340.0,2520.0,0.0457,-2.003,4.794,69.4148 2019-06-03 15:43:35.540,131.5492,8203.8018,4.7695,-8.5444,0.936,0.1936,2340.0,2520.0,0.0515,-1.9792,4.7913,69.4148 2019-06-03 15:43:35.560,131.5492,8203.7734,4.7977,-8.6404,1.2411,0.0229,2340.0,2520.0,0.0369,-1.9851,4.7953,69.3707 2019-06-03 15:43:35.580,131.4897,8203.8018,4.7977,-8.6404,0.9711,0.2292,2340.0,2520.0,0.0603,-1.9792,4.7767,69.3707 2019-06-03 15:43:35.600,131.4897,8203.8857,4.834,-8.7837,1.0299,0.2528,2340.0,2520.0,0.0632,-1.9971,4.7794,69.3034 2019-06-03 15:43:35.620,131.4897,8203.8857,4.84,-8.8344,1.122,0.0166,2340.0,2520.0,0.0662,-1.9971,4.7979,69.2789 2019-06-03 15:43:35.640,131.5492,8203.9424,4.84,-8.8344,1.0958,0.2609,2340.0,2520.0,0.0603,-1.9732,4.79,69.2789 2019-06-03 15:43:35.660,131.5592,8203.998,4.84,-8.8344,1.1804,-0.0263,2340.0,2520.0,0.0457,-1.9822,4.8125,69.2789 2019-06-03 15:43:35.680,131.4897,8203.9424,4.8682,-8.9245,1.0906,0.2732,2340.0,2520.0,0.0486,-1.9703,4.7781,69.2286 2019-06-03 15:43:35.700,131.4996,8203.8857,4.8977,-9.0093,1.1583,0.2738,2340.0,2520.0,0.0428,-1.9583,4.7847,69.1757 2019-06-03 15:43:35.720,131.5592,8203.8584,4.8977,-9.0093,1.0599,0.0369,2340.0,2520.0,0.0545,-1.9673,4.7966,69.1757 2019-06-03 15:43:35.740,131.6979,8203.8857,4.8977,-9.0093,1.2259,0.2176,2340.0,2520.0,0.0603,-1.9643,4.782,69.1757 2019-06-03 15:43:35.760,131.6979,8203.9424,4.9215,-9.0934,1.0536,0.0339,2340.0,2520.0,0.0545,-2.009,4.8138,69.1198 2019-06-03 15:43:35.780,131.6385,8203.9424,4.9215,-9.0934,1.1804,0.2301,2340.0,2520.0,0.0545,-1.9524,4.7873,69.1198 2019-06-03 15:43:35.800,131.6286,8203.9707,4.96,-9.222,1.3365,0.2161,2340.0,2520.0,0.0574,-1.9524,4.8072,69.0328 2019-06-03 15:43:35.820,131.6484,8203.9141,4.9689,-9.2661,0.845,0.0695,2340.0,2520.0,0.0486,-1.9643,4.8032,69.0017 2019-06-03 15:43:35.840,131.7078,8203.9141,4.9689,-9.2661,1.3439,0.1809,2340.0,2520.0,0.0515,-1.9583,4.7913,69.0017 2019-06-03 15:43:35.860,131.7078,8203.8584,4.9689,-9.2661,0.9105,0.0763,2340.0,2520.0,0.0398,-1.9524,4.8112,69.0017 2019-06-03 15:43:35.880,131.6385,8203.8857,5.0002,-9.3444,1.3735,0.1827,2340.0,2520.0,0.0545,-1.8838,4.8125,68.9384 2019-06-03 15:43:35.900,131.6484,8203.8018,5.023,-9.4276,1.3151,0.138,2340.0,2520.0,0.0545,-1.8868,4.8218,68.8732 2019-06-03 15:43:35.920,131.7078,8203.8018,5.023,-9.4276,0.8594,0.1654,2340.0,2520.0,0.0545,-1.8719,4.8178,68.8732 2019-06-03 15:43:35.940,131.8561,8203.8584,5.023,-9.4276,1.3358,0.0683,2340.0,2520.0,0.0603,-1.8241,4.7979,68.8732 2019-06-03 15:43:35.960,131.8463,8203.8857,5.0433,-9.5135,0.9064,0.1957,2340.0,2520.0,0.0428,-1.845,4.8271,68.8046 2019-06-03 15:43:35.980,131.7968,8203.8301,5.0433,-9.5135,1.3269,0.082,2340.0,2520.0,0.0574,-1.7883,4.8257,68.8046 2019-06-03 15:43:36.000,131.7968,8203.8301,5.0841,-9.6305,1.3006,0.064,2340.0,2520.0,0.0545,-1.7704,4.839,68.6944 2019-06-03 15:43:36.020,131.8067,8203.8584,5.1028,-9.6691,0.9116,0.2126,2340.0,2520.0,0.0428,-1.7316,4.8257,68.656 2019-06-03 15:43:36.040,131.8561,8203.9141,5.1028,-9.6691,1.2707,0.0262,2340.0,2520.0,0.0486,-1.6149,4.8165,68.656 2019-06-03 15:43:36.060,131.866,8203.9141,5.1028,-9.6691,1.0048,0.2631,2340.0,2520.0,0.0311,-1.6179,4.8257,68.656 2019-06-03 15:43:36.080,131.787,8203.9424,5.1282,-9.7467,1.1982,0.0348,2340.0,2520.0,0.0545,-1.549,4.831,68.5795 2019-06-03 15:43:36.100,131.8067,8203.8857,5.1472,-9.8208,1.1963,0.0095,2340.0,2520.0,0.0486,-1.534,4.8376,68.5012 2019-06-03 15:43:36.120,131.8759,8203.8301,5.1472,-9.8208,1.1612,0.2703,2340.0,2520.0,0.0574,-1.534,4.8496,68.5012 2019-06-03 15:43:36.140,132.0041,8203.8584,5.1472,-9.8208,1.0898,0.0114,2340.0,2520.0,0.0515,-1.528,4.8204,68.5012 2019-06-03 15:43:36.160,132.0139,8203.9141,5.1736,-9.8875,1.1675,0.2588,2340.0,2520.0,0.0486,-1.528,4.835,68.4212 2019-06-03 15:43:36.180,131.9646,8203.9707,5.1736,-9.8875,0.9615,0.0239,2340.0,2520.0,0.0457,-1.4831,4.8324,68.4212 2019-06-03 15:43:36.200,131.9449,8203.998,5.211,-9.9826,1.0114,0.0176,2340.0,2520.0,0.0486,-1.4771,4.8429,68.2975 2019-06-03 15:43:36.220,131.9548,8203.998,5.231,-10.0066,1.2182,0.2299,2340.0,2520.0,0.0457,-1.4801,4.8416,68.2551 2019-06-03 15:43:36.240,132.0139,8203.998,5.231,-10.0066,1.0007,0.0663,2340.0,2520.0,0.0574,-1.4741,4.831,68.2551 2019-06-03 15:43:36.260,132.0238,8203.9424,5.231,-10.0066,1.2119,0.2224,2340.0,2520.0,0.0486,-1.4711,4.8271,68.2551 2019-06-03 15:43:36.280,131.9548,8203.9707,5.2521,-10.0639,0.8609,0.097,2340.0,2520.0,0.0574,-1.4771,4.8138,68.1716 2019-06-03 15:43:36.300,131.9548,8203.9424,5.2776,-10.1207,0.8783,0.0929,2340.0,2520.0,0.0545,-1.4771,4.8271,68.0851 2019-06-03 15:43:36.320,132.0238,8203.9424,5.2776,-10.1207,1.355,0.1363,2340.0,2520.0,0.0457,-1.4771,4.8429,68.0851 2019-06-03 15:43:36.340,132.1615,8203.9707,5.2776,-10.1207,0.9604,0.1691,2340.0,2520.0,0.0428,-1.4741,4.8337,68.0851 2019-06-03 15:43:36.360,132.1615,8204.0547,5.3115,-10.1701,1.2999,0.1294,2340.0,2520.0,0.0252,-1.4771,4.8403,67.9981 2019-06-03 15:43:36.380,132.1221,8203.998,5.3115,-10.1701,0.7995,0.1943,2340.0,2520.0,0.0369,-1.4681,4.8297,67.9981 2019-06-03 15:43:36.400,132.1221,8203.9707,5.3449,-10.2505,0.9415,0.197,2400.0,2400.0,0.0369,-1.4681,4.8138,67.8648 2019-06-03 15:43:36.420,132.1123,8203.998,5.3579,-10.2768,1.2759,0.0156,2400.0,2400.0,0.0398,-1.4741,4.831,67.8193 2019-06-03 15:43:36.440,132.1713,8203.9707,5.3579,-10.2768,0.9867,0.2524,2400.0,2400.0,0.0486,-1.4741,4.8271,67.8193 2019-06-03 15:43:36.460,132.1713,8203.9424,5.3579,-10.2768,1.2836,0.0571,2400.0,2400.0,0.0486,-1.4891,4.8456,67.8193 2019-06-03 15:43:36.480,132.1123,8203.9707,5.3847,-10.3277,0.9889,0.2719,2400.0,2400.0,0.0486,-1.4861,4.8204,67.731 2019-06-03 15:43:36.500,132.1123,8203.8857,5.4148,-10.3766,1.0144,0.2833,2400.0,2400.0,0.0545,-1.4801,4.8112,67.6409 2019-06-03 15:43:36.520,132.1123,8203.8857,5.4148,-10.3766,1.2429,-0.0507,2400.0,2400.0,0.0398,-1.4831,4.8204,67.6409 2019-06-03 15:43:36.540,132.1713,8203.8018,5.4148,-10.3766,1.0599,0.3218,2400.0,2400.0,0.0457,-1.4261,4.8191,67.6409 2019-06-03 15:43:36.560,132.1713,8203.9141,5.4447,-10.4245,1.1483,-0.0048,2400.0,2400.0,0.0428,-1.4411,4.8403,67.5505 2019-06-03 15:43:36.580,132.1123,8203.9707,5.4661,-10.477,1.0858,0.3052,2400.0,2400.0,0.0486,-1.4561,4.8284,67.4591 2019-06-03 15:43:36.600,132.1025,8204.0264,5.4854,-10.4993,1.1753,0.2877,2400.0,2400.0,0.0457,-1.4591,4.7979,67.4145 2019-06-03 15:43:36.620,132.1123,8204.0547,5.4932,-10.529,1.0861,-0.0541,2400.0,2400.0,0.0398,-1.4621,4.8165,67.3695 2019-06-03 15:43:36.640,132.1811,8204.083,5.4932,-10.529,1.1424,0.334,2400.0,2400.0,0.0428,-1.4591,4.8032,67.3695 2019-06-03 15:43:36.660,132.1811,8204.0264,5.4932,-10.529,1.0913,0.0161,2400.0,2400.0,0.0428,-1.4711,4.8284,67.3695 2019-06-03 15:43:36.680,132.1123,8203.9424,5.5226,-10.5764,1.2718,0.2875,2400.0,2400.0,0.0398,-1.4651,4.8138,67.279 2019-06-03 15:43:36.700,132.1221,8203.8857,5.5481,-10.6252,1.3043,0.2431,2400.0,2400.0,0.0457,-1.4621,4.8019,67.1894 2019-06-03 15:43:36.720,132.1025,8203.8857,5.5481,-10.6252,0.9759,-0.0056,2400.0,2400.0,0.0282,-1.4621,4.8072,67.1894 2019-06-03 15:43:36.740,132.1713,8203.9141,5.5481,-10.6252,1.3195,0.2594,2400.0,2400.0,0.0311,-1.4591,4.7979,67.1894 2019-06-03 15:43:36.760,132.1615,8203.9141,5.5683,-10.6772,0.9881,0.0891,2400.0,2400.0,0.0311,-1.4651,4.8231,67.0998 2019-06-03 15:43:36.780,132.1123,8203.8857,5.5683,-10.6772,1.2533,0.2369,2400.0,2400.0,0.0457,-1.4591,4.8098,67.0998 2019-06-03 15:43:36.800,132.1123,8203.8301,5.6072,-10.7504,1.3594,0.1756,2400.0,2400.0,0.0457,-1.4231,4.7913,66.9656 2019-06-03 15:43:36.820,132.1123,8203.8301,5.6174,-10.7777,0.9193,0.0538,2400.0,2400.0,0.0369,-1.4411,4.8138,66.9214 2019-06-03 15:43:36.840,132.1713,8203.8857,5.6174,-10.7777,1.3665,0.1904,2400.0,2400.0,0.034,-1.4381,4.8019,66.9214 2019-06-03 15:43:36.860,132.1909,8203.9424,5.6174,-10.7777,0.9068,0.1335,2400.0,2400.0,0.0165,-1.4381,4.8138,66.9214 2019-06-03 15:43:36.880,132.1025,8203.9424,5.6446,-10.8265,1.1963,0.1444,2400.0,2400.0,0.0135,-1.4411,4.8032,66.8353 2019-06-03 15:43:36.900,132.1123,8203.8584,5.663,-10.8783,1.3894,0.1027,2400.0,2400.0,0.0282,-1.4351,4.7953,66.7492 2019-06-03 15:43:36.920,132.1713,8203.8857,5.663,-10.8783,0.8576,0.1521,2400.0,2400.0,0.0165,-1.4411,4.8032,66.7492 2019-06-03 15:43:36.940,132.3086,8203.8584,5.663,-10.8783,1.3805,0.0842,2400.0,2400.0,0.0369,-1.4321,4.7979,66.7492 2019-06-03 15:43:36.960,132.3086,8203.9141,5.68,-10.932,0.97,0.1868,2400.0,2400.0,0.0282,-1.4381,4.8244,66.664 2019-06-03 15:43:36.980,132.2596,8203.9424,5.68,-10.932,1.2596,0.0868,2400.0,2400.0,0.0252,-1.4321,4.8191,66.664 2019-06-03 15:43:37.000,132.2596,8203.998,5.7169,-11.0092,1.325,0.0546,2400.0,2400.0,0.0252,-1.4051,4.7993,66.5333 2019-06-03 15:43:37.020,132.2596,8203.9424,5.7169,-11.0092,0.9641,0.2256,2400.0,2400.0,0.0194,-1.4111,4.8165,66.5333 2019-06-03 15:43:37.040,132.3086,8204.0547,5.7169,-11.0092,1.2962,0.0485,2400.0,2400.0,0.034,-1.3871,4.8085,66.5333 2019-06-03 15:43:37.060,132.3282,8203.998,5.7169,-11.0092,1.0739,0.2583,2400.0,2400.0,0.0194,-1.372,4.8112,66.5333 2019-06-03 15:43:37.080,132.2596,8203.9141,5.7515,-11.0865,1.1327,0.0304,2400.0,2400.0,0.0194,-1.366,4.8085,66.4078 2019-06-03 15:43:37.100,132.2694,8203.8857,5.7694,-11.1421,1.2418,0.0161,2400.0,2400.0,0.0282,-1.336,4.7926,66.3269 2019-06-03 15:43:37.120,132.3282,8203.9424,5.7694,-11.1421,0.9759,0.2768,2400.0,2400.0,0.0223,-1.354,4.8125,66.3269 2019-06-03 15:43:37.140,132.4652,8203.9424,5.7694,-11.1421,1.1472,0.0195,2400.0,2400.0,0.0282,-1.324,4.7887,66.3269 2019-06-03 15:43:37.160,132.4652,8203.9707,5.7909,-11.1993,1.0747,0.2936,2400.0,2400.0,0.0282,-1.315,4.8178,66.2456 2019-06-03 15:43:37.180,132.4066,8204.0264,5.7909,-11.1993,1.0798,0.0189,2400.0,2400.0,0.0165,-1.312,4.8072,66.2456 2019-06-03 15:43:37.200,132.4261,8203.998,5.8207,-11.2778,1.1679,0.0098,2400.0,2400.0,0.0223,-1.2819,4.794,66.1267 2019-06-03 15:43:37.220,132.4261,8203.9141,5.8381,-11.3003,1.156,0.3029,2400.0,2400.0,0.0077,-1.2969,4.8019,66.0874 2019-06-03 15:43:37.240,132.4848,8203.9707,5.8381,-11.3003,1.0969,0.0074,2400.0,2400.0,0.0282,-1.2879,4.7913,66.0874 2019-06-03 15:43:37.260,132.4848,8203.9707,5.8381,-11.3003,1.085,0.2922,2400.0,2400.0,0.0077,-1.2849,4.79,66.0874 2019-06-03 15:43:37.280,132.4163,8203.9707,5.8549,-11.3547,1.021,0.0386,2400.0,2400.0,0.0165,-1.2879,4.7966,66.0113 2019-06-03 15:43:37.300,132.4163,8203.9707,5.8741,-11.4063,1.1509,0.0201,2400.0,2400.0,0.0048,-1.2849,4.7714,65.937 2019-06-03 15:43:37.320,132.3968,8203.998,5.8741,-11.4063,1.1919,0.3042,2400.0,2400.0,0.0077,-1.2999,4.7926,65.937 2019-06-03 15:43:37.340,132.4848,8203.998,5.8741,-11.4063,0.9671,0.0435,2400.0,2400.0,0.0106,-1.2969,4.7767,65.937 2019-06-03 15:43:37.360,132.475,8203.9707,5.8999,-11.4557,1.2093,0.2323,2400.0,2400.0,0.0282,-1.327,4.794,65.8631 2019-06-03 15:43:37.380,132.4163,8204.0264,5.8999,-11.4557,0.994,0.0384,2400.0,2400.0,0.0194,-1.312,4.7926,65.8631 2019-06-03 15:43:37.400,132.4163,8204.0264,5.9309,-11.5276,1.0647,0.0524,2400.0,2340.0,0.0223,-1.2669,4.7754,65.7547 2019-06-03 15:43:37.420,132.4163,8204.0264,5.9465,-11.549,1.2322,0.2515,2400.0,2340.0,0.0018,-1.315,4.7887,65.7184 2019-06-03 15:43:37.440,132.475,8204.0547,5.9465,-11.549,0.97,0.077,2400.0,2340.0,0.0135,-1.3059,4.7675,65.7184 2019-06-03 15:43:37.460,132.475,8204.0264,5.9465,-11.549,1.1975,0.1933,2400.0,2340.0,0.0135,-1.321,4.7648,65.7184 2019-06-03 15:43:37.480,132.4163,8203.9424,5.9614,-11.6013,0.973,0.093,2400.0,2340.0,-0.0011,-1.351,4.7648,65.6485 2019-06-03 15:43:37.500,132.4261,8203.8018,5.984,-11.6452,1.0218,0.093,2400.0,2340.0,0.0048,-1.345,4.7463,65.5816 2019-06-03 15:43:37.520,132.4066,8203.8301,5.984,-11.6452,1.2711,0.2005,2400.0,2340.0,-0.0186,-1.3901,4.7728,65.5816 2019-06-03 15:43:37.540,132.475,8203.8584,5.984,-11.6452,0.9197,0.0854,2400.0,2340.0,-0.0128,-1.3781,4.7728,65.5816 2019-06-03 15:43:37.560,132.4652,8203.9141,6.0088,-11.69,1.4079,0.1552,2400.0,2340.0,-0.0274,-1.3961,4.7622,65.5156 2019-06-03 15:43:37.580,132.4066,8203.998,6.0088,-11.69,0.8731,0.1277,2400.0,2340.0,-0.0712,-1.4171,4.7516,65.5156 2019-06-03 15:43:37.600,132.4066,8203.998,6.036,-11.7599,0.9278,0.1404,2400.0,2340.0,-0.0683,-1.4171,4.7291,65.4203 2019-06-03 15:43:37.620,132.4261,8203.998,6.0482,-11.7836,1.4334,0.1534,2400.0,2340.0,-0.1092,-1.4531,4.737,65.3893 2019-06-03 15:43:37.640,132.475,8203.998,6.0482,-11.7836,0.7581,0.1649,2400.0,2340.0,-0.1268,-1.4501,4.745,65.3893 2019-06-03 15:43:37.660,132.4946,8204.0264,6.0482,-11.7836,1.4974,0.0695,2400.0,2340.0,-0.1589,-1.5011,4.745,65.3893 2019-06-03 15:43:37.680,132.4163,8204.083,6.0655,-11.8332,0.7892,0.2021,2400.0,2340.0,-0.2086,-1.558,4.7476,65.3298 2019-06-03 15:43:37.700,132.4066,8204.0547,6.0911,-11.8795,0.8709,0.2257,2400.0,2340.0,-0.2203,-1.561,4.7344,65.2682 2019-06-03 15:43:37.720,132.4163,8204.0547,6.0911,-11.8795,1.5103,0.0685,2400.0,2340.0,-0.2641,-1.6359,4.7331,65.2682 2019-06-03 15:43:37.740,132.475,8204.083,6.0911,-11.8795,0.7226,0.2463,2400.0,2340.0,-0.2729,-1.6478,4.7344,65.2682 2019-06-03 15:43:37.760,132.475,8204.0547,6.1151,-11.9298,1.541,-0.02,2400.0,2340.0,-0.3051,-1.6957,4.7331,65.2083 2019-06-03 15:43:37.780,132.4261,8204.0264,6.1151,-11.9298,0.8798,0.2895,2400.0,2340.0,-0.3255,-1.7435,4.7436,65.2083 2019-06-03 15:43:37.800,132.4261,8204.0264,6.1428,-12.0124,0.9375,0.2913,2400.0,2340.0,-0.3401,-1.7465,4.7238,65.1187 2019-06-03 15:43:37.820,132.4163,8203.998,6.1457,-12.0452,1.3602,0.0116,2400.0,2340.0,-0.3869,-1.7943,4.7331,65.0912 2019-06-03 15:43:37.840,132.475,8203.998,6.1457,-12.0452,0.8032,0.3225,2400.0,2340.0,-0.4074,-1.7943,4.7198,65.0912 2019-06-03 15:43:37.860,132.475,8203.9707,6.1457,-12.0452,1.3543,-0.073,2400.0,2340.0,-0.422,-1.8361,4.7158,65.0912 2019-06-03 15:43:37.880,132.4163,8203.9707,6.1644,-12.1038,0.963,0.3284,2400.0,2340.0,-0.4483,-1.842,4.7185,65.0335 2019-06-03 15:43:37.900,132.4163,8203.8301,6.1889,-12.1623,0.9763,0.3534,2400.0,2340.0,-0.4454,-1.8271,4.7198,64.9758 2019-06-03 15:43:37.920,132.4163,8203.8018,6.1889,-12.1623,1.2056,-0.0724,2400.0,2340.0,-0.4863,-1.842,4.7397,64.9758 2019-06-03 15:43:37.940,132.475,8203.8018,6.1889,-12.1623,0.973,0.3626,2400.0,2340.0,-0.5009,-1.8361,4.7331,64.9758 2019-06-03 15:43:37.960,132.4652,8203.8857,6.2039,-12.2281,1.2367,-0.1319,2400.0,2340.0,-0.5243,-1.842,4.7264,64.9189 2019-06-03 15:43:37.980,132.4163,8203.9424,6.2039,-12.2281,1.0998,0.3676,2400.0,2340.0,-0.5535,-1.854,4.7264,64.9189 2019-06-03 15:43:38.000,132.4066,8203.9707,6.2347,-12.3247,1.1601,0.3586,2400.0,2340.0,-0.5564,-1.8152,4.7026,64.8263 2019-06-03 15:43:38.020,132.4261,8203.9707,6.2333,-12.3658,1.0606,-0.0811,2400.0,2340.0,-0.5711,-1.845,4.7264,64.7978 2019-06-03 15:43:38.040,132.4848,8203.9141,6.2333,-12.3658,1.1753,0.3505,2400.0,2340.0,-0.574,-1.845,4.7172,64.7978 2019-06-03 15:43:38.060,132.475,8203.8857,6.2333,-12.3658,1.007,-0.0722,2400.0,2340.0,-0.5711,-1.842,4.7331,64.7978 2019-06-03 15:43:38.080,132.4163,8204.1953,6.2554,-12.4299,1.3265,0.2698,2400.0,2340.0,-0.5915,-1.857,4.7489,64.738 2019-06-03 15:43:38.100,132.4163,8205.0664,6.2727,-12.4974,1.2333,0.281,2400.0,2340.0,-0.5769,-1.848,4.7357,64.6772 2019-06-03 15:43:38.120,132.4066,8205.9365,6.2727,-12.4974,0.8273,-0.014,2400.0,2340.0,-0.5915,-1.854,4.745,64.6772 2019-06-03 15:43:38.140,132.475,8207.2578,6.2727,-12.4974,1.3225,0.2651,2400.0,2340.0,-0.5915,-1.857,4.7251,64.6772 2019-06-03 15:43:38.160,132.475,8208.1006,6.2815,-12.5761,0.8298,0.0045,2400.0,2340.0,-0.6032,-1.851,4.7092,64.6156 2019-06-03 15:43:38.180,132.4163,8209.3359,6.2815,-12.5761,1.4597,0.2065,2400.0,2340.0,-0.6295,-1.851,4.7264,64.6156 2019-06-03 15:43:38.200,132.4163,8210.2354,6.3076,-12.6882,1.4068,0.1966,2400.0,2340.0,-0.6295,-1.851,4.7132,64.5207 2019-06-03 15:43:38.220,132.4261,8211.1064,6.3111,-12.7299,0.7529,0.1146,2400.0,2340.0,-0.6441,-1.86,4.7331,64.4901 2019-06-03 15:43:38.240,132.475,8212.4268,6.3111,-12.7299,1.5473,0.1345,2400.0,2340.0,-0.6529,-1.857,4.7344,64.4901 2019-06-03 15:43:38.260,132.4848,8212.4824,6.3111,-12.7299,0.7999,0.1633,2400.0,2340.0,-0.6558,-1.857,4.7172,64.4901 2019-06-03 15:43:38.280,132.4066,8212.5107,6.3316,-12.8073,1.3924,0.0721,2400.0,2340.0,-0.6704,-1.86,4.7264,64.4258 2019-06-03 15:43:38.300,132.4163,8212.4551,6.3393,-12.888,1.4793,0.0605,2400.0,2340.0,-0.6529,-1.845,4.7158,64.362 2019-06-03 15:43:38.320,132.3968,8212.4551,6.3393,-12.888,0.6926,0.2331,2400.0,2340.0,-0.6646,-1.845,4.7198,64.362 2019-06-03 15:43:38.340,132.475,8212.4551,6.3393,-12.888,1.4338,0.0309,2400.0,2340.0,-0.6675,-1.845,4.7158,64.362 2019-06-03 15:43:38.360,132.475,8212.4824,6.3463,-12.9721,0.8909,0.2658,2400.0,2340.0,-0.6587,-1.845,4.7119,64.2964 2019-06-03 15:43:38.380,132.4163,8212.5391,6.3463,-12.9721,1.2751,-0.0128,2400.0,2340.0,-0.6967,-1.848,4.7158,64.2964 2019-06-03 15:43:38.400,132.4066,8212.5107,6.3679,-13.0866,1.3258,-0.0389,2340.0,2400.0,-0.6997,-1.848,4.7066,64.1972 2019-06-03 15:43:38.420,132.4163,8212.5107,6.3836,-13.1242,0.818,0.3116,2340.0,2400.0,-0.7201,-1.851,4.7092,64.1618 2019-06-03 15:43:38.440,132.4652,8212.5107,6.3836,-13.1242,1.1771,-0.0445,2340.0,2400.0,-0.7289,-1.8629,4.6947,64.1618 2019-06-03 15:43:38.460,132.4946,8212.4824,6.3836,-13.1242,0.983,0.3268,2340.0,2400.0,-0.7055,-1.8629,4.6788,64.1618 2019-06-03 15:43:38.480,132.4163,8212.4268,6.3966,-13.2055,1.2259,-0.071,2340.0,2400.0,-0.6967,-1.8898,4.7119,64.0919 2019-06-03 15:43:38.500,132.4163,8212.3984,6.402,-13.2928,1.1601,-0.0784,2340.0,2400.0,-0.6734,-1.8957,4.6933,64.0206 2019-06-03 15:43:38.520,132.3282,8212.4268,6.402,-13.2928,1.0824,0.3441,2340.0,2400.0,-0.6617,-1.9077,4.7304,64.0206 2019-06-03 15:43:38.540,132.3282,8212.5107,6.402,-13.2928,0.98,-0.0908,2340.0,2400.0,-0.6266,-1.9226,4.7423,64.0206 2019-06-03 15:43:38.560,132.3086,8212.5391,6.4172,-13.3789,1.2503,0.336,2340.0,2400.0,-0.574,-1.9166,4.7291,63.9454 2019-06-03 15:43:38.580,132.2498,8212.5391,6.4172,-13.3789,1.0255,-0.0658,2340.0,2400.0,-0.5769,-1.9375,4.7238,63.9454 2019-06-03 15:43:38.600,132.2596,8212.5674,6.4307,-13.5085,0.9049,-0.0552,2340.0,2400.0,-0.5564,-1.9375,4.688,63.8309 2019-06-03 15:43:38.620,132.2694,8212.5107,6.4456,-13.5469,1.3058,0.2895,2340.0,2400.0,-0.5623,-1.9554,4.6814,63.7911 2019-06-03 15:43:38.640,132.3184,8212.5957,6.4456,-13.5469,0.8413,-0.0444,2340.0,2400.0,-0.5623,-1.9703,4.7145,63.7911 2019-06-03 15:43:38.660,132.3282,8212.5957,6.4456,-13.5469,1.3154,0.2585,2340.0,2400.0,-0.5681,-1.9613,4.7172,63.7911 2019-06-03 15:43:38.680,132.2498,8212.5957,6.4503,-13.644,0.9197,0.0428,2340.0,2400.0,-0.5652,-1.9554,4.7728,63.7142 2019-06-03 15:43:38.700,132.2596,8212.5107,6.4599,-13.7367,0.8217,0.0375,2340.0,2400.0,-0.5506,-1.9524,4.7423,63.6355 2019-06-03 15:43:38.720,132.3282,8212.5107,6.4599,-13.7367,1.4889,0.209,2340.0,2400.0,-0.5389,-1.9554,4.7264,63.6355 2019-06-03 15:43:38.740,132.4652,8212.5674,6.4599,-13.7367,0.7829,0.0611,2340.0,2400.0,-0.5389,-1.9524,4.7185,63.6355 2019-06-03 15:43:38.760,132.475,8212.5957,6.4777,-13.8293,1.3901,0.1449,2340.0,2400.0,-0.5214,-1.9524,4.6827,63.5542 2019-06-03 15:43:38.780,132.4163,8212.623,6.4777,-13.8293,0.6978,0.1668,2340.0,2400.0,-0.536,-1.9643,4.7105,63.5542 2019-06-03 15:43:38.800,132.4163,8212.5957,6.4887,-13.9751,0.6764,0.1638,2340.0,2400.0,-0.5243,-1.9583,4.7251,63.4292 2019-06-03 15:43:38.820,132.4163,8212.5957,6.4936,-14.0223,1.4256,0.0533,2340.0,2400.0,-0.5301,-1.9613,4.745,63.3868 2019-06-03 15:43:38.840,132.475,8212.6797,6.4936,-14.0223,0.7429,0.193,2340.0,2400.0,-0.5331,-1.9643,4.7569,63.3868 2019-06-03 15:43:38.860,132.475,8212.5957,6.4936,-14.0223,1.4123,0.0314,2340.0,2400.0,-0.5301,-1.9613,4.7225,63.3868 2019-06-03 15:43:38.880,132.4163,8212.5391,6.5022,-14.122,0.8639,0.2957,2340.0,2400.0,-0.5331,-1.9792,4.7291,63.3011 2019-06-03 15:43:38.900,132.4359,8212.4551,6.519,-14.2129,0.7662,0.2982,2340.0,2400.0,-0.5155,-1.9732,4.7225,63.2141 2019-06-03 15:43:38.920,132.4066,8212.4551,6.519,-14.2129,1.2625,-0.0635,2340.0,2400.0,-0.5126,-1.9762,4.7,63.2141 2019-06-03 15:43:38.940,132.475,8212.5107,6.519,-14.2129,0.9264,0.296,2340.0,2400.0,-0.5097,-2.0119,4.7251,63.2141 2019-06-03 15:43:38.960,132.4652,8212.5674,6.5335,-14.31,1.2932,-0.0485,2340.0,2400.0,-0.5126,-1.9941,4.7251,63.1254 2019-06-03 15:43:38.980,132.4066,8212.623,6.5335,-14.31,1.0288,0.3455,2340.0,2400.0,-0.5214,-2.009,4.7595,63.1254 2019-06-03 15:43:39.000,132.4163,8212.5957,6.5499,-14.4625,1.1068,0.3078,2340.0,2400.0,-0.5214,-2.006,4.7436,62.9881 2019-06-03 15:43:39.020,132.4163,8212.5957,6.5472,-14.5176,1.0284,-0.0312,2340.0,2400.0,-0.5155,-2.006,4.7331,62.9422 2019-06-03 15:43:39.040,132.475,8212.6797,6.5472,-14.5176,1.1934,0.261,2340.0,2400.0,-0.5184,-2.009,4.7251,62.9422 2019-06-03 15:43:39.060,132.4848,8212.7354,6.5472,-14.5176,0.9393,0.0014,2340.0,2400.0,-0.498,-2.009,4.7092,62.9422 2019-06-03 15:43:39.080,132.4066,8212.7354,6.5656,-14.6168,1.2725,0.2918,2340.0,2400.0,-0.5009,-2.0149,4.7357,62.8478 2019-06-03 15:43:39.100,132.4163,8212.6514,6.5819,-14.7204,1.3136,0.2612,2340.0,2400.0,-0.5038,-2.0119,4.7383,62.7486 2019-06-03 15:43:39.120,132.4066,8212.623,6.5819,-14.7204,0.8872,0.0302,2340.0,2400.0,-0.5038,-2.0119,4.7463,62.7486 2019-06-03 15:43:39.140,132.475,8212.5674,6.5819,-14.7204,1.3217,0.207,2340.0,2400.0,-0.5126,-2.0149,4.7476,62.7486 2019-06-03 15:43:39.160,132.475,8212.5957,6.5894,-14.8293,0.8524,0.0791,2340.0,2400.0,-0.498,-2.0119,4.7264,62.6506 2019-06-03 15:43:39.180,132.4261,8212.5674,6.5997,-14.9386,1.4674,0.1684,2340.0,2400.0,-0.5038,-2.0179,4.7331,62.5514 2019-06-03 15:43:39.200,132.4066,8212.5674,6.6118,-14.9866,1.4471,0.1231,2340.0,2400.0,-0.5068,-2.0149,4.7278,62.5003 2019-06-03 15:43:39.220,132.4261,8212.5391,6.6174,-15.0382,0.8202,0.172,2340.0,2400.0,-0.5009,-2.009,4.7291,62.4487 2019-06-03 15:43:39.240,132.4848,8212.5957,6.6174,-15.0382,1.4234,0.0723,2340.0,2400.0,-0.5068,-2.0149,4.745,62.4487 2019-06-03 15:43:39.260,132.475,8212.5107,6.6174,-15.0382,0.8187,0.2325,2340.0,2400.0,-0.4892,-2.0119,4.7397,62.4487 2019-06-03 15:43:39.280,132.4163,8212.8477,6.6319,-15.1453,1.3713,0.0174,2340.0,2400.0,-0.4951,-2.0238,4.7595,62.3447 2019-06-03 15:43:39.300,132.4261,8213.7471,6.6373,-15.259,1.325,-0.0265,2340.0,2400.0,-0.498,-2.0268,4.7463,62.2415 2019-06-03 15:43:39.320,132.4066,8214.6465,6.6373,-15.259,1.0114,0.2786,2340.0,2400.0,-0.5009,-2.0238,4.7423,62.2415 2019-06-03 15:43:39.340,132.475,8216.0234,6.6373,-15.259,1.2111,-0.023,2340.0,2400.0,-0.5155,-2.0238,4.7648,62.2415 2019-06-03 15:43:39.360,132.475,8217.0068,6.6467,-15.3731,0.9619,0.3065,2340.0,2400.0,-0.5184,-2.0179,4.7463,62.137 2019-06-03 15:43:39.380,132.4163,8218.3281,6.6467,-15.3731,1.1841,-0.0466,2340.0,2400.0,-0.5184,-2.0268,4.7595,62.137 2019-06-03 15:43:39.400,132.4163,8219.2266,6.661,-15.5431,1.0676,-0.0748,2400.0,2400.0,-0.5243,-2.0238,4.7556,61.9796 2019-06-03 15:43:39.420,132.4261,8220.126,6.6741,-15.5951,1.1697,0.3395,2400.0,2400.0,-0.5068,-1.9971,4.7609,61.9259 2019-06-03 15:43:39.440,132.475,8221.5029,6.6741,-15.5951,1.0969,-0.0606,2400.0,2400.0,-0.5126,-2.003,4.7754,61.9259 2019-06-03 15:43:39.460,132.4848,8221.5869,6.6741,-15.5951,1.1216,0.3226,2400.0,2400.0,-0.5009,-2.003,4.7688,61.9259 2019-06-03 15:43:39.480,132.4163,8221.5869,6.6754,-15.7132,0.909,-0.046,2400.0,2400.0,-0.5243,-2.006,4.782,61.8205 2019-06-03 15:43:39.500,132.4163,8221.5313,6.6812,-15.8321,0.8513,-0.0558,2400.0,2400.0,-0.5389,-2.003,4.7741,61.7152 2019-06-03 15:43:39.520,132.4848,8221.5313,6.6812,-15.8321,1.3569,0.3132,2400.0,2400.0,-0.5331,-2.0,4.7688,61.7152 2019-06-03 15:43:39.540,132.6312,8221.5313,6.6812,-15.8321,0.8446,0.0051,2400.0,2400.0,-0.5331,-2.003,4.7847,61.7152 2019-06-03 15:43:39.560,132.6214,8221.6152,6.6974,-15.9483,1.4012,0.2224,2400.0,2400.0,-0.5126,-2.0,4.7754,61.6077 2019-06-03 15:43:39.580,132.5824,8221.5869,6.6974,-15.9483,0.7596,0.0821,2400.0,2400.0,-0.5126,-2.003,4.79,61.6077 2019-06-03 15:43:39.600,132.5727,8221.5869,6.7072,-16.1359,0.804,0.0634,2400.0,2400.0,-0.5272,-2.003,4.7728,61.4437 2019-06-03 15:43:39.620,132.5727,8221.5869,6.7131,-16.1949,1.3299,0.1666,2400.0,2400.0,-0.5097,-1.9911,4.7701,61.3895 2019-06-03 15:43:39.640,132.6312,8221.5869,6.7131,-16.1949,0.858,0.1487,2400.0,2400.0,-0.5272,-1.9911,4.7979,61.3895 2019-06-03 15:43:39.660,132.6312,8221.5869,6.7131,-16.1949,1.4068,0.1035,2400.0,2400.0,-0.5272,-1.9285,4.7913,61.3895 2019-06-03 15:43:39.680,132.5531,8221.6152,6.7175,-16.3243,0.7651,0.1969,2400.0,2400.0,-0.5272,-1.9256,4.8204,61.2816 2019-06-03 15:43:39.700,132.5727,8221.5313,6.7334,-16.4502,0.8935,0.1912,2400.0,2400.0,-0.5301,-1.9285,4.7993,61.1701 2019-06-03 15:43:39.720,132.4848,8221.5313,6.7334,-16.4502,1.4452,0.0343,2400.0,2400.0,-0.5184,-1.8689,4.7847,61.1701 2019-06-03 15:43:39.740,132.4946,8221.5596,6.7334,-16.4502,0.9049,0.2899,2400.0,2400.0,-0.5126,-1.851,4.7966,61.1701 2019-06-03 15:43:39.760,132.475,8221.5869,6.749,-16.5734,1.3328,-0.0183,2400.0,2400.0,-0.5038,-1.7555,4.7993,61.0569 2019-06-03 15:43:39.780,132.4066,8221.6152,6.749,-16.5734,0.899,0.3043,2400.0,2400.0,-0.5126,-1.7614,4.8138,61.0569 2019-06-03 15:43:39.800,132.4163,8221.6436,6.7616,-16.7627,1.0051,0.3182,2400.0,2400.0,-0.5155,-1.7136,4.8244,60.8864 2019-06-03 15:43:39.820,132.4261,8221.5596,6.7588,-16.8265,1.2944,-0.0593,2400.0,2400.0,-0.5331,-1.6179,4.8032,60.8313 2019-06-03 15:43:39.840,132.475,8221.5869,6.7588,-16.8265,1.0192,0.3674,2400.0,2400.0,-0.5301,-1.6119,4.8191,60.8313 2019-06-03 15:43:39.860,132.4848,8221.5596,6.7588,-16.8265,1.0617,-0.0707,2400.0,2400.0,-0.5389,-1.546,4.7887,60.8313 2019-06-03 15:43:39.880,132.4163,8221.6152,6.7712,-16.948,1.1679,0.3176,2400.0,2400.0,-0.5272,-1.552,4.8165,60.7172 2019-06-03 15:43:39.900,132.4163,8221.6152,6.7877,-17.0621,1.1594,0.3219,2400.0,2400.0,-0.5301,-1.537,4.8032,60.6027 2019-06-03 15:43:39.920,132.4163,8221.6152,6.7877,-17.0621,1.108,-0.0246,2400.0,2400.0,-0.5068,-1.5041,4.8072,60.6027 2019-06-03 15:43:39.940,132.475,8221.5869,6.7877,-17.0621,1.2104,0.338,2400.0,2400.0,-0.5155,-1.5161,4.8178,60.6027 2019-06-03 15:43:39.960,132.4652,8221.6152,6.7941,-17.1723,0.8354,-0.0072,2400.0,2400.0,-0.5155,-1.5101,4.7979,60.4895 2019-06-03 15:43:39.980,132.4163,8221.6719,6.7941,-17.1723,1.3221,0.2477,2400.0,2400.0,-0.5301,-1.5071,4.8019,60.4895 2019-06-03 15:43:40.000,132.4163,8221.6152,6.8137,-17.3292,1.291,0.2279,2400.0,2400.0,-0.5389,-1.5101,4.8165,60.3102 2019-06-03 15:43:40.020,132.4261,8221.5596,6.8115,-17.3817,0.8868,0.0561,2400.0,2400.0,-0.5155,-1.4951,4.8218,60.2547 2019-06-03 15:43:40.040,132.475,8221.5313,6.8115,-17.3817,1.4722,0.217,2400.0,2400.0,-0.5214,-1.4951,4.8416,60.2547 2019-06-03 15:43:40.060,132.475,8221.4746,6.8115,-17.3817,0.6904,0.1064,2400.0,2400.0,-0.5097,-1.4501,4.8191,60.2547 2019-06-03 15:43:40.080,132.4163,8221.7002,6.8293,-17.4726,1.5166,0.1184,2400.0,2400.0,-0.5155,-1.4561,4.8151,60.1385 2019-06-03 15:43:40.100,132.4261,8222.5713,6.8381,-17.564,1.3768,0.1065,2400.0,2400.0,-0.5214,-1.4531,4.8218,60.0239 2019-06-03 15:43:40.120,132.3184,8223.4424,6.8381,-17.564,0.7925,0.1966,2400.0,2400.0,-0.5243,-1.4501,4.8218,60.0239 2019-06-03 15:43:40.140,132.3282,8224.791,6.8381,-17.564,1.412,0.057,2400.0,2400.0,-0.5331,-1.4261,4.8469,60.0239 2019-06-03 15:43:40.160,132.3184,8225.7471,6.8447,-17.6531,0.7951,0.2439,2400.0,2400.0,-0.536,-1.4111,4.839,59.909 2019-06-03 15:43:40.180,132.2596,8227.124,6.8447,-17.6531,1.3901,-0.0232,2400.0,2400.0,-0.5272,-1.3931,4.8496,59.909 2019-06-03 15:43:40.200,132.2498,8228.0518,6.8639,-17.7672,1.2492,-0.0003,2400.0,2400.0,-0.5243,-1.3961,4.8509,59.7271 2019-06-03 15:43:40.220,132.2694,8228.9512,6.8771,-17.8009,0.8395,0.2881,2400.0,2400.0,-0.5097,-1.369,4.8522,59.6672 2019-06-03 15:43:40.240,132.3184,8230.2998,6.8771,-17.8009,1.2529,-0.0558,2400.0,2400.0,-0.5214,-1.36,4.8681,59.6672 2019-06-03 15:43:40.260,132.3282,8230.4131,6.8771,-17.8009,0.973,0.3337,2400.0,2400.0,-0.536,-1.342,4.8641,59.6672 2019-06-03 15:43:40.280,132.2596,8230.4131,6.8885,-17.8761,1.1608,-0.0686,2400.0,2400.0,-0.5301,-1.321,4.8641,59.5483 2019-06-03 15:43:40.300,132.2596,8230.3281,6.9003,-17.9508,1.1767,-0.0282,2400.0,2400.0,-0.5331,-1.321,4.8628,59.4303 2019-06-03 15:43:40.320,132.2498,8230.3848,6.9003,-17.9508,1.1401,0.3182,2400.0,2400.0,-0.5126,-1.2849,4.8694,59.4303 2019-06-03 15:43:40.340,132.3184,8230.4131,6.9003,-17.9508,0.96,-0.0449,2400.0,2400.0,-0.5097,-1.2969,4.8919,59.4303 2019-06-03 15:43:40.360,132.3086,8230.4404,6.9186,-18.0133,1.2263,0.3065,2400.0,2400.0,-0.5155,-1.2699,4.8946,59.311 2019-06-03 15:43:40.380,132.2498,8230.3848,6.9186,-18.0133,0.838,-0.0386,2400.0,2400.0,-0.5243,-1.2308,4.9012,59.311 2019-06-03 15:43:40.400,132.2596,8230.4404,6.9417,-18.1021,0.8613,0.0131,2400.0,2340.0,-0.5418,-1.2368,4.8893,59.1234 2019-06-03 15:43:40.420,132.2694,8230.3848,6.9566,-18.1274,1.284,0.2555,2400.0,2340.0,-0.5331,-1.2247,4.8999,59.0644 2019-06-03 15:43:40.440,132.3184,8230.4404,6.9566,-18.1274,0.8591,0.0601,2400.0,2340.0,-0.5301,-1.2217,4.9052,59.0644 2019-06-03 15:43:40.460,132.3282,8230.4131,6.9566,-18.1274,1.4282,0.1917,2400.0,2340.0,-0.5068,-1.1525,4.9144,59.0644 2019-06-03 15:43:40.480,132.2596,8230.4131,6.9692,-18.1926,0.8435,0.0957,2400.0,2340.0,-0.4921,-1.1615,4.9078,58.9477 2019-06-03 15:43:40.500,132.2694,8230.3564,6.991,-18.2441,0.8694,0.1434,2400.0,2340.0,-0.4863,-1.2127,4.9197,58.831 2019-06-03 15:43:40.520,132.2498,8230.3564,6.991,-18.2441,1.4057,0.1421,2400.0,2340.0,-0.4951,-1.2127,4.9025,58.831 2019-06-03 15:43:40.540,132.3086,8230.4131,6.991,-18.2441,0.8583,0.1776,2400.0,2340.0,-0.5126,-1.2127,4.9184,58.831 2019-06-03 15:43:40.560,132.3184,8230.4131,7.015,-18.294,1.3639,0.0828,2400.0,2340.0,-0.5272,-1.1796,4.9211,58.716 2019-06-03 15:43:40.580,132.2694,8230.4131,7.0348,-18.3403,0.8587,0.2244,2400.0,2340.0,-0.5097,-1.1796,4.9264,58.5888 2019-06-03 15:43:40.600,132.2596,8230.4131,7.0431,-18.3679,0.7529,0.2687,2400.0,2340.0,-0.5097,-1.2067,4.9264,58.5316 2019-06-03 15:43:40.620,132.2694,8230.3564,7.0479,-18.3928,1.3191,-0.0,2400.0,2340.0,-0.4804,-1.1434,4.9303,58.4752 2019-06-03 15:43:40.640,132.3184,8230.2998,7.0479,-18.3928,0.9197,0.2803,2400.0,2340.0,-0.4951,-1.1826,4.929,58.4752 2019-06-03 15:43:40.660,132.3184,8230.2998,7.0479,-18.3928,1.1656,-0.0222,2400.0,2340.0,-0.5097,-1.1585,4.925,58.4752 2019-06-03 15:43:40.680,132.2596,8230.2725,7.072,-18.4435,1.0347,0.3116,2400.0,2340.0,-0.5243,-1.1193,4.9317,58.3598 2019-06-03 15:43:40.700,132.2596,8230.1602,7.102,-18.4793,0.9659,0.3519,2400.0,2340.0,-0.5184,-1.1555,4.9515,58.2439 2019-06-03 15:43:40.720,132.1713,8230.1602,7.102,-18.4793,1.1405,-0.0457,2400.0,2340.0,-0.5068,-1.1525,4.9396,58.2439 2019-06-03 15:43:40.740,132.1811,8230.2158,7.102,-18.4793,1.1446,0.3055,2400.0,2340.0,-0.498,-1.1434,4.9462,58.2439 2019-06-03 15:43:40.760,132.1615,8230.2998,7.1239,-18.5156,1.0647,-0.0347,2400.0,2340.0,-0.5097,-1.1434,4.9343,58.1316 2019-06-03 15:43:40.780,132.1025,8230.3564,7.1239,-18.5156,1.1878,0.317,2400.0,2340.0,-0.5068,-1.1224,4.9515,58.1316 2019-06-03 15:43:40.800,132.1123,8230.3848,7.1626,-18.5571,1.2189,0.3127,2400.0,2340.0,-0.5097,-1.1314,4.9608,57.9515 2019-06-03 15:43:40.820,132.1123,8230.3564,7.1652,-18.5751,0.916,-0.0082,2400.0,2340.0,-0.5068,-1.0771,4.9621,57.8964 2019-06-03 15:43:40.840,132.1713,8230.3281,7.1652,-18.5751,1.2662,0.2506,2400.0,2340.0,-0.5068,-1.0952,4.9595,57.8964 2019-06-03 15:43:40.860,132.1713,8230.3281,7.1652,-18.5751,0.8591,0.0096,2400.0,2340.0,-0.5068,-1.1163,4.9595,57.8964 2019-06-03 15:43:40.880,132.1025,8230.666,7.1983,-18.5965,1.3776,0.2518,2400.0,2340.0,-0.4834,-1.1043,4.9687,57.7823 2019-06-03 15:43:40.900,132.1123,8231.5654,7.2276,-18.6157,1.3121,0.2523,2400.0,2340.0,-0.4951,-1.1043,4.9753,57.6682 2019-06-03 15:43:40.920,132.1025,8232.4365,7.2276,-18.6157,0.7322,0.0854,2400.0,2340.0,-0.4892,-1.0409,4.9806,57.6682 2019-06-03 15:43:40.940,132.1713,8233.8145,7.2276,-18.6157,1.456,0.1551,2400.0,2340.0,-0.5009,-1.047,4.9833,57.6682 2019-06-03 15:43:40.960,132.1615,8234.7705,7.2474,-18.6432,0.8657,0.1257,2400.0,2340.0,-0.5068,-1.047,5.0005,57.555 2019-06-03 15:43:40.980,132.1123,8236.1758,7.2474,-18.6432,1.3683,0.1529,2400.0,2340.0,-0.5038,-1.0138,5.0005,57.555 2019-06-03 15:43:41.000,132.1025,8237.1035,7.2964,-18.6642,1.3469,0.1681,2400.0,2340.0,-0.5068,-1.0349,5.0177,57.3675 2019-06-03 15:43:41.020,132.1123,8238.0029,7.3104,-18.6734,0.8254,0.169,2400.0,2340.0,-0.5038,-0.9715,5.0098,57.3098 2019-06-03 15:43:41.040,132.1713,8239.2959,7.3104,-18.6734,1.4016,0.0464,2400.0,2340.0,-0.498,-0.9866,5.0177,57.3098 2019-06-03 15:43:41.060,132.1811,8239.4092,7.3104,-18.6734,0.9071,0.2071,2400.0,2340.0,-0.5126,-0.9957,5.0031,57.3098 2019-06-03 15:43:41.080,132.1123,8239.4648,7.3446,-18.6865,1.4349,0.0232,2400.0,2340.0,-0.498,-0.9927,5.023,57.1924 2019-06-03 15:43:41.100,132.1123,8239.4365,7.37,-18.7044,1.3321,0.0121,2400.0,2340.0,-0.5038,-0.9957,5.0283,57.0781 2019-06-03 15:43:41.120,132.1123,8239.4365,7.37,-18.7044,0.9726,0.2704,2400.0,2340.0,-0.4951,-0.9685,5.031,57.0781 2019-06-03 15:43:41.140,132.1713,8239.3809,7.37,-18.7044,1.1975,-0.0304,2400.0,2340.0,-0.4804,-0.9595,5.0362,57.0781 2019-06-03 15:43:41.160,132.1713,8239.4092,7.3996,-18.7176,1.0876,0.2774,2400.0,2340.0,-0.4921,-0.9625,5.0323,56.9605 2019-06-03 15:43:41.180,132.1025,8239.4092,7.3996,-18.7176,1.2204,-0.0257,2400.0,2340.0,-0.4804,-0.9081,5.0349,56.9605 2019-06-03 15:43:41.200,132.1123,8239.4648,7.4476,-18.7329,1.112,0.0016,2400.0,2340.0,-0.4834,-0.9021,5.0429,56.7752 2019-06-03 15:43:41.220,132.1123,8239.4365,7.4709,-18.7337,1.2171,0.2991,2400.0,2340.0,-0.5038,-0.8779,5.031,56.7142 2019-06-03 15:43:41.240,132.1615,8239.4648,7.4709,-18.7337,0.9589,-0.0282,2400.0,2340.0,-0.4892,-0.8476,5.0482,56.7142 2019-06-03 15:43:41.260,132.1909,8239.4092,7.4709,-18.7337,1.2049,0.2863,2400.0,2340.0,-0.4921,-0.8416,5.0455,56.7142 2019-06-03 15:43:41.280,132.1221,8239.3525,7.4993,-18.7464,1.0173,0.013,2400.0,2340.0,-0.4629,-0.778,5.0574,56.5951 2019-06-03 15:43:41.300,132.1123,8239.3525,7.5305,-18.756,0.896,0.0427,2400.0,2340.0,-0.4746,-0.7841,5.0654,56.4738 2019-06-03 15:43:41.320,132.1025,8239.3242,7.5305,-18.756,1.5022,0.2402,2400.0,2340.0,-0.4834,-0.7205,5.0574,56.4738 2019-06-03 15:43:41.340,132.1713,8239.3809,7.5305,-18.756,0.9171,0.0609,2400.0,2340.0,-0.4746,-0.7053,5.072,56.4738 2019-06-03 15:43:41.360,132.1615,8239.4365,7.5675,-18.7569,1.3391,0.1896,2400.0,2340.0,-0.4834,-0.7023,5.0733,56.3518 2019-06-03 15:43:41.380,132.1123,8239.4648,7.5675,-18.7569,0.9212,0.112,2400.0,2340.0,-0.4717,-0.5992,5.0799,56.3518 2019-06-03 15:43:41.400,132.1025,8239.4092,7.6125,-18.7552,0.8435,0.1678,2340.0,2400.0,-0.4629,-0.578,5.0945,56.1581 2019-06-03 15:43:41.420,132.1221,8239.3809,7.6295,-18.7525,1.4349,0.1012,2340.0,2400.0,-0.4571,-0.5385,5.076,56.0965 2019-06-03 15:43:41.440,132.1713,8239.4092,7.6295,-18.7525,0.8531,0.2088,2340.0,2400.0,-0.4337,-0.4747,5.0972,56.0965 2019-06-03 15:43:41.460,132.1713,8239.3242,7.6295,-18.7525,1.372,0.0649,2340.0,2400.0,-0.4337,-0.4777,5.0958,56.0965 2019-06-03 15:43:41.480,132.1123,8239.6895,7.6613,-18.7477,0.8224,0.254,2340.0,2400.0,-0.4161,-0.3926,5.1117,55.9739 2019-06-03 15:43:41.500,132.1123,8240.5049,7.6993,-18.7302,0.9452,0.2889,2340.0,2400.0,-0.4074,-0.3956,5.117,55.8513 2019-06-03 15:43:41.520,132.1025,8241.377,7.6993,-18.7302,1.2936,-0.0055,2340.0,2400.0,-0.3898,-0.3621,5.1064,55.8513 2019-06-03 15:43:41.540,132.1811,8242.6709,7.6993,-18.7302,1.0891,0.3199,2340.0,2400.0,-0.3723,-0.35,5.113,55.8513 2019-06-03 15:43:41.560,132.1615,8243.5703,7.7389,-18.7101,1.308,-0.028,2340.0,2400.0,-0.3811,-0.35,5.117,55.7263 2019-06-03 15:43:41.580,132.1123,8244.8916,7.7389,-18.7101,1.1246,0.3258,2340.0,2400.0,-0.3752,-0.3073,5.121,55.7263 2019-06-03 15:43:41.600,132.1123,8245.707,7.7906,-18.6647,1.159,0.3269,2340.0,2400.0,-0.3694,-0.3012,5.1223,55.5223 2019-06-03 15:43:41.620,132.1221,8246.5225,7.8022,-18.6564,1.0329,-0.0497,2340.0,2400.0,-0.3752,-0.2921,5.1117,55.4611 2019-06-03 15:43:41.640,132.1615,8247.8164,7.8022,-18.6564,1.3772,0.3317,2340.0,2400.0,-0.3665,-0.2433,5.117,55.4611 2019-06-03 15:43:41.660,132.1811,8247.9287,7.8022,-18.6564,1.0044,-0.004,2340.0,2400.0,-0.3694,-0.2586,5.1197,55.4611 2019-06-03 15:43:41.680,132.1123,8247.9004,7.8471,-18.6179,1.2788,0.3058,2340.0,2400.0,-0.3401,-0.222,5.1144,55.3357 2019-06-03 15:43:41.700,132.1123,8247.8447,7.888,-18.5764,1.4083,0.2837,2340.0,2400.0,-0.3343,-0.222,5.1157,55.2111 2019-06-03 15:43:41.720,132.1123,8247.8164,7.888,-18.5764,0.8391,0.0102,2340.0,2400.0,-0.3226,-0.2159,5.1091,55.2111 2019-06-03 15:43:41.740,132.1713,8247.7881,7.888,-18.5764,1.3824,0.2412,2340.0,2400.0,-0.3197,-0.1976,5.113,55.2111 2019-06-03 15:43:41.760,132.1615,8247.8721,7.9209,-18.5348,0.9341,0.0811,2340.0,2400.0,-0.3255,-0.1884,5.1064,55.0876 2019-06-03 15:43:41.780,132.1123,8247.9854,7.9209,-18.5348,1.4323,0.2026,2340.0,2400.0,-0.308,-0.161,5.1077,55.0876 2019-06-03 15:43:41.800,132.1025,8247.9854,7.983,-18.4553,1.5673,0.1456,2340.0,2400.0,-0.3138,-0.164,5.1104,54.8776 2019-06-03 15:43:41.820,132.1123,8247.9287,8.0015,-18.4308,0.7895,0.1361,2340.0,2400.0,-0.3255,-0.1335,5.0958,54.8142 2019-06-03 15:43:41.840,132.1615,8247.957,8.0015,-18.4308,1.551,0.0749,2340.0,2400.0,-0.308,-0.1091,5.0985,54.8142 2019-06-03 15:43:41.860,132.1713,8247.8721,8.0015,-18.4308,0.9071,0.2469,2340.0,2400.0,-0.2963,-0.1335,5.1024,54.8142 2019-06-03 15:43:41.880,132.1123,8247.8721,8.0469,-18.3661,1.3975,0.0122,2340.0,2400.0,-0.2934,-0.0999,5.0905,54.6885 2019-06-03 15:43:41.900,132.1123,8247.7598,8.0791,-18.3058,1.372,-0.0279,2340.0,2400.0,-0.2846,-0.1121,5.1077,54.5661 2019-06-03 15:43:41.920,132.1025,8247.7881,8.0791,-18.3058,1.0085,0.2674,2340.0,2400.0,-0.2963,-0.1213,5.0879,54.5661 2019-06-03 15:43:41.940,132.1713,8247.7881,8.0791,-18.3058,1.3605,-0.0317,2340.0,2400.0,-0.2758,-0.106,5.0932,54.5661 2019-06-03 15:43:41.960,132.1713,8247.8164,8.1168,-18.2411,1.0266,0.3589,2340.0,2400.0,-0.2788,-0.103,5.0958,54.4411 2019-06-03 15:43:41.980,132.1123,8247.8164,8.1625,-18.1633,1.1971,-0.0521,2340.0,2400.0,-0.2788,-0.106,5.0932,54.2964 2019-06-03 15:43:42.000,132.1025,8247.7881,8.1768,-18.1266,1.1276,-0.0808,2340.0,2400.0,-0.2846,-0.0999,5.0932,54.2356 2019-06-03 15:43:42.020,132.1221,8247.7598,8.2066,-18.0837,1.3014,0.3405,2340.0,2400.0,-0.2963,-0.106,5.0839,54.1714 2019-06-03 15:43:42.040,132.1713,8247.8164,8.2066,-18.0837,1.0747,-0.0318,2340.0,2400.0,-0.27,-0.0755,5.0919,54.1714 2019-06-03 15:43:42.060,132.1713,8247.8721,8.2066,-18.0837,1.3158,0.3528,2340.0,2400.0,-0.2729,-0.0846,5.0932,54.1714 2019-06-03 15:43:42.080,132.1025,8248.2383,8.2384,-18.0103,0.8972,0.0044,2340.0,2400.0,-0.2671,-0.0694,5.0786,54.0488 2019-06-03 15:43:42.100,132.1221,8249.1377,8.2742,-17.9333,0.9685,0.0063,2340.0,2400.0,-0.2671,-0.0694,5.0852,53.9253 2019-06-03 15:43:42.120,132.1025,8250.0664,8.2742,-17.9333,1.4297,0.2383,2340.0,2400.0,-0.2788,-0.0785,5.0879,53.9253 2019-06-03 15:43:42.140,132.1713,8251.3877,8.2742,-17.9333,0.875,0.0829,2340.0,2400.0,-0.27,-0.0816,5.0905,53.9253 2019-06-03 15:43:42.160,132.1713,8252.3721,8.3186,-17.8481,1.4856,0.1965,2340.0,2400.0,-0.2788,-0.0785,5.0866,53.8009 2019-06-03 15:43:42.180,132.1025,8253.8066,8.3186,-17.8481,0.7178,0.1664,2340.0,2400.0,-0.2641,-0.0694,5.0707,53.8009 2019-06-03 15:43:42.200,132.1025,8254.7354,8.3705,-17.7257,0.8065,0.189,2340.0,2400.0,-0.2554,-0.0724,5.0786,53.6066 2019-06-03 15:43:42.220,132.1221,8255.6064,8.3889,-17.6859,1.4489,0.0641,2340.0,2400.0,-0.2612,-0.0816,5.0799,53.5452 2019-06-03 15:43:42.240,132.1713,8256.9004,8.3889,-17.6859,0.8587,0.2549,2340.0,2400.0,-0.2495,-0.0755,5.0879,53.5452 2019-06-03 15:43:42.260,132.1811,8256.9854,8.3889,-17.6859,1.3665,0.0164,2340.0,2400.0,-0.2612,-0.0816,5.0839,53.5452 2019-06-03 15:43:42.280,132.1025,8256.957,8.4241,-17.6059,0.9027,0.3258,2340.0,2400.0,-0.2495,-0.0663,5.0773,53.4232 2019-06-03 15:43:42.300,132.1221,8256.9287,8.4663,-17.5176,1.0991,0.3317,2340.0,2400.0,-0.2554,-0.0632,5.0707,53.3006 2019-06-03 15:43:42.320,132.0139,8256.957,8.4663,-17.5176,1.2614,-0.0497,2340.0,2400.0,-0.2612,-0.0816,5.076,53.3006 2019-06-03 15:43:42.340,132.0238,8256.957,8.4663,-17.5176,1.1971,0.3463,2340.0,2400.0,-0.2525,-0.0694,5.0892,53.3006 2019-06-03 15:43:42.360,132.0041,8257.0127,8.5048,-17.4328,1.1168,-0.0403,2340.0,2400.0,-0.2466,-0.0816,5.0958,53.1793 2019-06-03 15:43:42.380,131.9548,8257.0127,8.5048,-17.4328,1.3169,0.3603,2340.0,2400.0,-0.2495,-0.0846,5.0667,53.1793 2019-06-03 15:43:42.400,131.9548,8257.0127,8.5587,-17.2978,1.4153,0.3348,2400.0,2400.0,-0.2378,-0.0877,5.0707,52.9802 2019-06-03 15:43:42.420,131.9646,8256.957,8.5678,-17.2623,0.9212,0.012,2400.0,2400.0,-0.2554,-0.1396,5.072,52.9225 2019-06-03 15:43:42.440,132.0139,8257.0127,8.5678,-17.2623,1.4904,0.2805,2400.0,2400.0,-0.2466,-0.1182,5.0839,52.9225 2019-06-03 15:43:42.460,132.0238,8257.0127,8.5678,-17.2623,0.8128,0.0397,2400.0,2400.0,-0.2495,-0.1732,5.0852,52.9225 2019-06-03 15:43:42.480,131.9548,8257.0693,8.6102,-17.1719,1.5691,0.2384,2400.0,2400.0,-0.2495,-0.1732,5.068,52.8032 2019-06-03 15:43:42.500,131.9449,8257.0127,8.6458,-17.0866,1.5484,0.1975,2400.0,2400.0,-0.2495,-0.1701,5.0707,52.6864 2019-06-03 15:43:42.520,131.866,8257.0127,8.6458,-17.0866,0.8047,0.1678,2400.0,2400.0,-0.2554,-0.2433,5.0614,52.6864 2019-06-03 15:43:42.540,131.8759,8257.0127,8.6458,-17.0866,1.5455,0.1096,2400.0,2400.0,-0.2349,-0.2342,5.0799,52.6864 2019-06-03 15:43:42.560,131.8561,8257.0693,8.6714,-17.0092,0.7481,0.2107,2400.0,2400.0,-0.2437,-0.2372,5.076,52.5723 2019-06-03 15:43:42.580,131.7968,8257.1533,8.6714,-17.0092,1.5588,0.0162,2400.0,2400.0,-0.2378,-0.2311,5.0641,52.5723 2019-06-03 15:43:42.600,131.7968,8257.1816,8.7253,-16.8794,1.5155,0.0156,2400.0,2400.0,-0.2437,-0.2342,5.0654,52.3853 2019-06-03 15:43:42.620,131.7968,8257.1533,8.7488,-16.8383,0.8842,0.3367,2400.0,2400.0,-0.2554,-0.2738,5.0733,52.3276 2019-06-03 15:43:42.640,131.866,8257.126,8.7488,-16.8383,1.3753,-0.0532,2400.0,2400.0,-0.2437,-0.2037,5.068,52.3276 2019-06-03 15:43:42.660,131.866,8257.0693,8.7488,-16.8383,1.0418,0.3588,2400.0,2400.0,-0.2378,-0.2799,5.0773,52.3276 2019-06-03 15:43:42.680,131.7968,8257.3506,8.7766,-16.7605,1.1882,-0.0661,2400.0,2400.0,-0.2408,-0.283,5.0667,52.2187 2019-06-03 15:43:42.700,131.8166,8258.1943,8.8046,-16.6849,1.2267,-0.0407,2400.0,2400.0,-0.2437,-0.2769,5.0654,52.1123 2019-06-03 15:43:42.720,131.6979,8259.0664,8.8046,-16.6849,1.1993,0.3921,2400.0,2400.0,-0.2495,-0.3226,5.0746,52.1123 2019-06-03 15:43:42.740,131.6979,8260.3887,8.8046,-16.6849,1.0277,-0.0464,2400.0,2400.0,-0.2349,-0.3165,5.068,52.1123 2019-06-03 15:43:42.760,131.7078,8261.2891,8.8396,-16.6101,1.3435,0.3267,2400.0,2400.0,-0.2378,-0.353,5.0733,52.0063 2019-06-03 15:43:42.780,131.6385,8262.667,8.8396,-16.6101,0.9101,-0.0095,2400.0,2400.0,-0.2554,-0.3561,5.0654,52.0063 2019-06-03 15:43:42.800,131.6385,8263.5391,8.8868,-16.4947,0.9896,0.0208,2400.0,2400.0,-0.2495,-0.3408,5.072,51.8362 2019-06-03 15:43:42.820,131.6682,8264.4111,8.9108,-16.4554,1.5521,0.2879,2400.0,2400.0,-0.2583,-0.3561,5.0786,51.7835 2019-06-03 15:43:42.840,131.7078,8265.6777,8.9108,-16.4554,0.7307,0.058,2400.0,2400.0,-0.2408,-0.3347,5.0667,51.7835 2019-06-03 15:43:42.860,131.7177,8265.7334,8.9108,-16.4554,1.5751,0.1875,2400.0,2400.0,-0.2349,-0.353,5.0667,51.7835 2019-06-03 15:43:42.880,131.6385,8265.7617,8.9333,-16.3938,0.6815,0.1476,2400.0,2400.0,-0.2349,-0.3774,5.0601,51.6837 2019-06-03 15:43:42.900,131.6385,8265.7051,8.9701,-16.3256,0.8073,0.204,2400.0,2400.0,-0.2203,-0.3682,5.0707,51.5836 2019-06-03 15:43:42.920,131.5393,8265.7334,8.9701,-16.3256,1.5873,0.085,2400.0,2400.0,-0.2261,-0.3743,5.0813,51.5836 2019-06-03 15:43:42.940,131.5592,8265.7051,8.9701,-16.3256,0.7818,0.2662,2400.0,2400.0,-0.232,-0.3774,5.0654,51.5836 2019-06-03 15:43:42.960,131.5492,8265.6777,9.0101,-16.2596,1.4356,-0.0368,2400.0,2400.0,-0.2408,-0.42,5.0561,51.4841 2019-06-03 15:43:42.980,131.4996,8265.6777,9.0101,-16.2596,0.9574,0.3041,2400.0,2400.0,-0.2495,-0.4382,5.0561,51.4841 2019-06-03 15:43:43.000,131.4897,8265.7617,9.0571,-16.1651,0.8631,0.3247,2400.0,2400.0,-0.232,-0.4412,5.0641,51.3281 2019-06-03 15:43:43.020,131.4897,8265.7617,9.0667,-16.1415,1.3343,-0.047,2400.0,2400.0,-0.2291,-0.5142,5.076,51.2819 2019-06-03 15:43:43.040,131.5492,8265.8184,9.0667,-16.1415,0.9408,0.3586,2400.0,2400.0,-0.2203,-0.5203,5.0588,51.2819 2019-06-03 15:43:43.060,131.5592,8265.7617,9.0667,-16.1415,1.1804,-0.0892,2400.0,2400.0,-0.2145,-0.5233,5.0561,51.2819 2019-06-03 15:43:43.080,131.4897,8265.7051,9.1019,-16.0821,1.2455,0.3579,2400.0,2400.0,-0.2437,-0.5628,5.0402,51.1888 2019-06-03 15:43:43.100,131.4996,8265.5928,9.1405,-16.0226,1.1963,0.3652,2400.0,2400.0,-0.232,-0.5628,5.0654,51.0981 2019-06-03 15:43:43.120,131.4797,8265.6211,9.1405,-16.0226,0.9619,-0.0503,2400.0,2400.0,-0.2437,-0.5871,5.0746,51.0981 2019-06-03 15:43:43.140,131.5492,8265.6777,9.1405,-16.0226,1.3413,0.3415,2400.0,2400.0,-0.2378,-0.5901,5.0521,51.0981 2019-06-03 15:43:43.160,131.5393,8265.6777,9.1687,-15.9724,0.8905,-0.031,2400.0,2400.0,-0.2378,-0.6022,5.0429,51.01 2019-06-03 15:43:43.180,131.4897,8265.6777,9.1687,-15.9724,1.4216,0.3,2400.0,2400.0,-0.2378,-0.6356,5.0468,51.01 2019-06-03 15:43:43.200,131.4797,8265.7334,9.2208,-15.8884,1.4475,0.2622,2400.0,2400.0,-0.2232,-0.6356,5.0574,50.8662 2019-06-03 15:43:43.220,131.4996,8265.7051,9.2322,-15.8696,0.7307,0.0847,2400.0,2400.0,-0.2261,-0.6659,5.0707,50.8254 2019-06-03 15:43:43.240,131.5592,8265.7051,9.2322,-15.8696,1.5566,0.2006,2400.0,2400.0,-0.232,-0.6659,5.0482,50.8254 2019-06-03 15:43:43.260,131.5592,8265.7051,9.2322,-15.8696,0.8028,0.1253,2400.0,2400.0,-0.2408,-0.669,5.0376,50.8254 2019-06-03 15:43:43.280,131.4897,8266.0713,9.2726,-15.8189,1.4301,0.1102,2400.0,2400.0,-0.2466,-0.7114,5.0349,50.7434 2019-06-03 15:43:43.300,131.4897,8267.0557,9.3006,-15.7783,1.473,0.0737,2400.0,2400.0,-0.232,-0.6993,5.0429,50.6649 2019-06-03 15:43:43.320,131.3006,8267.9844,9.3006,-15.7783,0.7699,0.2196,2400.0,2400.0,-0.2232,-0.7387,5.0588,50.6649 2019-06-03 15:43:43.340,131.2607,8269.335,9.3006,-15.7783,1.3491,0.0207,2400.0,2400.0,-0.2261,-0.7387,5.0389,50.6649 2019-06-03 15:43:43.360,131.2308,8270.2354,9.3311,-15.7424,0.9434,0.2947,2400.0,2400.0,-0.2232,-0.7326,5.0362,50.5858 2019-06-03 15:43:43.380,131.1809,8271.5576,9.3691,-15.7018,1.3328,-0.0189,2400.0,2400.0,-0.2437,-0.7508,5.0362,50.5025 2019-06-03 15:43:43.400,131.1709,8272.4863,9.3822,-15.6834,1.2637,-0.0319,2340.0,2340.0,-0.232,-0.7478,5.0429,50.4649 2019-06-03 15:43:43.420,131.1709,8273.3867,9.4086,-15.6624,1.0813,0.3289,2340.0,2340.0,-0.2291,-0.775,5.0548,50.4269 2019-06-03 15:43:43.440,131.2308,8274.7373,9.4086,-15.6624,1.007,-0.0363,2340.0,2340.0,-0.232,-0.7932,5.0323,50.4269 2019-06-03 15:43:43.460,131.2408,8274.7939,9.4086,-15.6624,1.2873,0.336,2340.0,2340.0,-0.2291,-0.7871,5.0243,50.4269 2019-06-03 15:43:43.480,131.1709,8274.7656,9.4374,-15.6288,1.0861,-0.0419,2340.0,2340.0,-0.232,-0.7901,5.0257,50.3541 2019-06-03 15:43:43.500,131.1809,8274.6816,9.4655,-15.6026,0.9386,-0.0453,2340.0,2340.0,-0.2232,-0.7871,5.0243,50.2824 2019-06-03 15:43:43.520,131.1709,8274.709,9.4655,-15.6026,1.4112,0.3068,2340.0,2340.0,-0.2232,-0.8265,5.0349,50.2824 2019-06-03 15:43:43.540,131.2408,8274.7656,9.4655,-15.6026,0.7929,0.0035,2340.0,2340.0,-0.2437,-0.8597,5.0243,50.2824 2019-06-03 15:43:43.560,131.2308,8274.7939,9.5049,-15.5706,1.4615,0.2639,2340.0,2340.0,-0.2232,-0.8295,5.0243,50.2103 2019-06-03 15:43:43.580,131.1709,8274.8779,9.5049,-15.5706,0.7577,0.0922,2340.0,2340.0,-0.2349,-0.8446,5.0177,50.2103 2019-06-03 15:43:43.600,131.1609,8274.9063,9.5501,-15.5335,0.7344,0.1088,2340.0,2340.0,-0.2261,-0.8416,5.027,50.098 2019-06-03 15:43:43.620,131.1809,8274.9346,9.5698,-15.5186,1.5037,0.1363,2340.0,2340.0,-0.232,-0.8446,5.0283,50.0628 2019-06-03 15:43:43.640,131.2408,8274.9346,9.5698,-15.5186,0.7611,0.1689,2340.0,2340.0,-0.2554,-0.8537,5.0296,50.0628 2019-06-03 15:43:43.660,131.2508,8274.8779,9.5698,-15.5186,1.4094,0.0848,2340.0,2340.0,-0.2495,-0.8507,5.0257,50.0628 2019-06-03 15:43:43.680,131.1709,8275.2158,9.5998,-15.5011,0.9034,0.2658,2340.0,2340.0,-0.2378,-0.8809,5.0362,49.9926 2019-06-03 15:43:43.700,131.1809,8276.0605,9.6382,-15.4793,0.8439,0.2653,2340.0,2340.0,-0.2408,-0.8748,5.0296,49.9211 2019-06-03 15:43:43.720,131.071,8276.9609,9.6382,-15.4793,1.4393,-0.0061,2340.0,2340.0,-0.2349,-0.8537,5.0429,49.9211 2019-06-03 15:43:43.740,131.071,8278.2559,9.6382,-15.4793,0.9763,0.2854,2340.0,2340.0,-0.2437,-0.8688,5.031,49.9211 2019-06-03 15:43:43.760,131.071,8279.1279,9.6788,-15.4609,1.3495,-0.0048,2340.0,2340.0,-0.2203,-0.8597,5.0389,49.8481 2019-06-03 15:43:43.780,131.0109,8280.3096,9.6788,-15.4609,1.0307,0.3387,2340.0,2340.0,-0.2378,-0.89,5.0389,49.8481 2019-06-03 15:43:43.800,131.0209,8281.1543,9.7272,-15.4378,1.1043,0.3122,2340.0,2340.0,-0.2291,-0.8779,5.0442,49.7378 2019-06-03 15:43:43.820,131.0209,8281.998,9.7371,-15.4347,1.0998,-0.0485,2340.0,2340.0,-0.2408,-0.8688,5.0468,49.705 2019-06-03 15:43:43.840,131.071,8283.2646,9.7371,-15.4347,1.2799,0.301,2340.0,2340.0,-0.2437,-0.8658,5.0376,49.705 2019-06-03 15:43:43.860,131.091,8283.3213,9.7371,-15.4347,1.0129,0.0105,2340.0,2340.0,-0.2232,-0.8658,5.0495,49.705 2019-06-03 15:43:43.880,131.0109,8283.3496,9.7771,-15.4185,1.3176,0.3338,2340.0,2340.0,-0.232,-0.8658,5.0574,49.6342 2019-06-03 15:43:43.900,131.0109,8283.2646,9.8153,-15.4028,1.3291,0.2786,2340.0,2340.0,-0.2349,-0.8658,5.0548,49.5653 2019-06-03 15:43:43.920,130.9307,8283.1807,9.8153,-15.4028,0.9256,0.0195,2340.0,2340.0,-0.232,-0.8688,5.0548,49.5653 2019-06-03 15:43:43.940,130.9307,8283.209,9.8153,-15.4028,1.3883,0.2191,2340.0,2340.0,-0.2378,-0.8688,5.0455,49.5653 2019-06-03 15:43:43.960,130.9107,8283.2646,9.8443,-15.3914,0.9108,0.1081,2340.0,2340.0,-0.2261,-0.8627,5.0521,49.4973 2019-06-03 15:43:43.980,130.8605,8283.3213,9.8443,-15.3914,1.3731,0.1917,2340.0,2340.0,-0.2378,-0.8658,5.0627,49.4973 2019-06-03 15:43:44.000,130.8605,8283.3496,9.9016,-15.37,1.4234,0.1387,2340.0,2340.0,-0.232,-0.8658,5.0561,49.3865 2019-06-03 15:43:44.020,130.8605,8283.3496,9.918,-15.3621,0.8369,0.1709,2340.0,2340.0,-0.232,-0.8658,5.0601,49.3527 2019-06-03 15:43:44.040,130.9207,8283.3213,9.918,-15.3621,1.4212,0.0766,2340.0,2340.0,-0.2378,-0.8627,5.0614,49.3527 2019-06-03 15:43:44.060,130.9307,8283.293,9.918,-15.3621,0.8827,0.2264,2340.0,2340.0,-0.232,-0.8658,5.0707,49.3527 2019-06-03 15:43:44.080,130.8605,8283.3213,9.9579,-15.3438,1.3195,0.0427,2340.0,2340.0,-0.2437,-0.8658,5.072,49.2836 2019-06-03 15:43:44.100,130.8705,8283.2646,9.9881,-15.3307,1.2496,0.0006,2340.0,2340.0,-0.2437,-0.8627,5.0641,49.2154 2019-06-03 15:43:44.120,130.75,8283.293,9.9881,-15.3307,1.0747,0.2951,2340.0,2340.0,-0.2349,-0.8567,5.0588,49.2154 2019-06-03 15:43:44.140,130.7701,8283.3213,9.9881,-15.3307,1.2736,-0.0057,2340.0,2340.0,-0.232,-0.8597,5.0601,49.2154 2019-06-03 15:43:44.160,130.75,8283.3496,10.0246,-15.3175,1.0736,0.305,2340.0,2340.0,-0.2174,-0.8567,5.0773,49.1452 2019-06-03 15:43:44.180,130.6896,8283.4053,10.0246,-15.3175,1.1013,0.0012,2340.0,2340.0,-0.2261,-0.8658,5.0839,49.1452 2019-06-03 15:43:44.200,130.6997,8283.3496,10.0796,-15.2883,1.088,-0.0055,2340.0,2340.0,-0.2408,-0.8627,5.0614,49.0353 2019-06-03 15:43:44.220,130.7097,8283.3496,10.1065,-15.2734,1.2703,0.3196,2340.0,2340.0,-0.2525,-0.8627,5.0641,48.9988 2019-06-03 15:43:44.240,130.76,8283.3213,10.1065,-15.2734,0.9744,0.011,2340.0,2340.0,-0.2641,-0.8627,5.0667,48.9988 2019-06-03 15:43:44.260,130.7701,8283.3213,10.1065,-15.2734,1.3088,0.2838,2340.0,2340.0,-0.2437,-0.8627,5.076,48.9988 2019-06-03 15:43:44.280,130.6997,8283.7148,10.1382,-15.2581,0.926,0.0525,2340.0,2340.0,-0.2291,-0.8658,5.0852,48.9275 2019-06-03 15:43:44.300,130.6997,8284.6445,10.1764,-15.2397,0.9049,0.051,2340.0,2340.0,-0.2232,-0.8627,5.0667,48.8556 2019-06-03 15:43:44.320,130.5989,8285.5732,10.1764,-15.2397,1.4194,0.2012,2340.0,2340.0,-0.2232,-0.8597,5.0707,48.8556 2019-06-03 15:43:44.340,130.6191,8286.8682,10.1764,-15.2397,0.8328,0.1591,2340.0,2340.0,-0.2261,-0.8627,5.0693,48.8556 2019-06-03 15:43:44.360,130.5989,8287.7969,10.2196,-15.2161,1.4619,0.1341,2340.0,2340.0,-0.232,-0.8325,5.0707,48.7813 2019-06-03 15:43:44.380,130.5384,8289.2041,10.2196,-15.2161,0.8602,0.1899,2340.0,2340.0,-0.232,-0.8416,5.0879,48.7813 2019-06-03 15:43:44.400,130.5384,8290.1611,10.2719,-15.1873,0.9401,0.2048,2400.0,2400.0,-0.2437,-0.8476,5.0733,48.6659 2019-06-03 15:43:44.420,130.5485,8291.0625,10.2892,-15.1768,1.399,0.0381,2400.0,2400.0,-0.232,-0.8446,5.0773,48.6281 2019-06-03 15:43:44.440,130.5989,8292.3574,10.2892,-15.1768,0.9611,0.2871,2400.0,2400.0,-0.232,-0.8386,5.0707,48.6281 2019-06-03 15:43:44.460,130.6191,8292.3574,10.2892,-15.1768,1.3051,0.0012,2400.0,2400.0,-0.2232,-0.8386,5.0773,48.6281 2019-06-03 15:43:44.480,130.5384,8292.3008,10.3247,-15.1593,1.0133,0.3006,2400.0,2400.0,-0.2261,-0.8416,5.0919,48.5501 2019-06-03 15:43:44.500,130.5586,8292.2441,10.3673,-15.1388,1.0381,0.2962,2400.0,2400.0,-0.2525,-0.8416,5.0654,48.4703 2019-06-03 15:43:44.520,130.4273,8292.3008,10.3673,-15.1388,1.2093,-0.0166,2400.0,2400.0,-0.2466,-0.8416,5.0786,48.4703 2019-06-03 15:43:44.540,130.4475,8292.3291,10.3673,-15.1388,1.1634,0.3318,2400.0,2400.0,-0.2408,-0.8567,5.0839,48.4703 2019-06-03 15:43:44.560,130.4273,8292.3574,10.4061,-15.1169,0.9648,-0.0086,2400.0,2400.0,-0.2232,-0.8476,5.0813,48.3903 2019-06-03 15:43:44.580,130.3767,8292.4131,10.4061,-15.1169,1.2962,0.2756,2400.0,2400.0,-0.232,-0.8476,5.0905,48.3903 2019-06-03 15:43:44.600,130.3767,8292.4131,10.461,-15.0859,1.3058,0.2794,2400.0,2400.0,-0.2525,-0.8507,5.0733,48.2614 2019-06-03 15:43:44.620,130.3868,8292.3857,10.4707,-15.0811,0.9693,0.0545,2400.0,2400.0,-0.2349,-0.8446,5.0799,48.2224 2019-06-03 15:43:44.640,130.4374,8292.4131,10.4707,-15.0811,1.3931,0.2383,2400.0,2400.0,-0.2349,-0.8476,5.0879,48.2224 2019-06-03 15:43:44.660,130.4576,8292.3574,10.4707,-15.0811,0.8077,0.1151,2400.0,2400.0,-0.2261,-0.8446,5.0892,48.2224 2019-06-03 15:43:44.680,130.3868,8292.667,10.5144,-15.0566,1.3935,0.1308,2400.0,2400.0,-0.232,-0.8416,5.0945,48.137 2019-06-03 15:43:44.700,130.3767,8293.5957,10.5488,-15.0347,1.4926,0.1495,2400.0,2400.0,-0.2408,-0.8446,5.0733,48.0522 2019-06-03 15:43:44.720,130.2856,8294.4971,10.5488,-15.0347,0.8798,0.1807,2400.0,2400.0,-0.2261,-0.8416,5.0786,48.0522 2019-06-03 15:43:44.740,130.3058,8295.8203,10.5488,-15.0347,1.3831,0.0988,2400.0,2400.0,-0.2349,-0.8476,5.0839,48.0522 2019-06-03 15:43:44.760,130.2856,8296.6367,10.5792,-15.0155,0.9227,0.2429,2400.0,2400.0,-0.2291,-0.8446,5.076,47.9674 2019-06-03 15:43:44.780,130.2349,8298.0166,10.6175,-14.9928,1.2315,0.0104,2400.0,2400.0,-0.2408,-0.8416,5.0919,47.8773 2019-06-03 15:43:44.800,130.2247,8298.917,10.6354,-14.9823,1.267,0.0306,2400.0,2400.0,-0.2554,-0.8476,5.0813,47.8334 2019-06-03 15:43:44.820,130.2247,8299.8184,10.658,-14.9678,1.0695,0.293,2400.0,2400.0,-0.2349,-0.8386,5.0799,47.7895 2019-06-03 15:43:44.840,130.2856,8301.1416,10.658,-14.9678,1.0699,0.0382,2400.0,2400.0,-0.2291,-0.8386,5.0892,47.7895 2019-06-03 15:43:44.860,130.2856,8301.1982,10.658,-14.9678,1.2263,0.2849,2400.0,2400.0,-0.232,-0.8416,5.0733,47.7895 2019-06-03 15:43:44.880,130.2247,8301.4512,10.6882,-14.9486,1.0303,-0.0057,2400.0,2400.0,-0.2291,-0.8416,5.0773,47.7014 2019-06-03 15:43:44.900,130.2349,8302.3809,10.7198,-14.9333,1.024,0.0552,2400.0,2400.0,-0.2291,-0.8416,5.0799,47.6118 2019-06-03 15:43:44.920,130.1232,8303.2822,10.7198,-14.9333,1.3949,0.2451,2400.0,2400.0,-0.2349,-0.8446,5.0813,47.6118 2019-06-03 15:43:44.940,130.1232,8304.6904,10.7198,-14.9333,0.7995,0.0936,2400.0,2400.0,-0.232,-0.8446,5.0932,47.6118 2019-06-03 15:43:44.960,130.1232,8305.6191,10.7569,-14.9119,1.46,0.1723,2400.0,2400.0,-0.2378,-0.8446,5.0799,47.5202 2019-06-03 15:43:44.980,130.0622,8307.0273,10.7569,-14.9119,0.902,0.1472,2400.0,2400.0,-0.2378,-0.8446,5.0773,47.5202 2019-06-03 15:43:45.000,130.0622,8307.957,10.8068,-14.887,0.8927,0.2163,2400.0,2400.0,-0.2378,-0.8416,5.0813,47.3722 2019-06-03 15:43:45.020,130.0724,8308.8301,10.8198,-14.8795,1.3583,0.0291,2400.0,2400.0,-0.2349,-0.8386,5.0773,47.3259 2019-06-03 15:43:45.040,130.1334,8310.0967,10.8198,-14.8795,0.8983,0.282,2400.0,2400.0,-0.2378,-0.8476,5.0866,47.3259 2019-06-03 15:43:45.060,130.1334,8310.1533,10.8198,-14.8795,1.2237,-0.0255,2400.0,2400.0,-0.2641,-0.8446,5.068,47.3259 2019-06-03 15:43:45.080,130.052,8310.1533,10.8528,-14.866,1.0762,0.3638,2400.0,2400.0,-0.2612,-0.8416,5.072,47.2313 2019-06-03 15:43:45.100,130.0622,8310.0967,10.8924,-14.8468,1.0473,0.3657,2400.0,2400.0,-0.2525,-0.8748,5.0786,47.1338 2019-06-03 15:43:45.120,129.9604,8310.0967,10.8924,-14.8468,1.0832,-0.0501,2400.0,2400.0,-0.2291,-0.8688,5.072,47.1338 2019-06-03 15:43:45.140,129.9706,8310.0693,10.8924,-14.8468,1.3384,0.3366,2400.0,2400.0,-0.2437,-0.8597,5.0693,47.1338 2019-06-03 15:43:45.160,129.9808,8310.041,10.9222,-14.835,0.9175,-0.008,2400.0,2400.0,-0.2641,-0.8597,5.0667,47.0359 2019-06-03 15:43:45.180,129.9196,8310.0127,10.9222,-14.835,1.4142,0.3037,2400.0,2400.0,-0.2788,-0.8567,5.068,47.0359 2019-06-03 15:43:45.200,129.8992,8310.041,10.9721,-14.8201,1.4978,0.2957,2400.0,2400.0,-0.2905,-0.8567,5.0733,46.8837 2019-06-03 15:43:45.220,129.9094,8310.0127,10.9794,-14.8197,0.6734,0.0756,2400.0,2400.0,-0.2817,-0.8627,5.0707,46.8352 2019-06-03 15:43:45.240,129.9604,8310.0693,10.9794,-14.8197,1.568,0.157,2400.0,2400.0,-0.2671,-0.8597,5.076,46.8352 2019-06-03 15:43:45.260,129.9808,8310.0693,10.9794,-14.8197,0.8328,0.1606,2400.0,2400.0,-0.2729,-0.8567,5.0614,46.8352 2019-06-03 15:43:45.280,129.8992,8310.3506,11.018,-14.8087,1.5125,0.1036,2400.0,2400.0,-0.2612,-0.8537,5.0614,46.7323 2019-06-03 15:43:45.300,129.9094,8311.2236,11.0412,-14.8057,1.5114,0.0726,2400.0,2400.0,-0.27,-0.8537,5.0627,46.6311 2019-06-03 15:43:45.320,129.7153,8311.9844,11.0412,-14.8057,0.7503,0.2962,2400.0,2400.0,-0.2641,-0.8507,5.0654,46.6311 2019-06-03 15:43:45.340,129.6846,8313.3086,11.0412,-14.8057,1.4086,-0.0488,2400.0,2400.0,-0.2788,-0.8507,5.0654,46.6311 2019-06-03 15:43:45.360,129.6437,8314.21,11.0656,-14.8048,1.0351,0.3428,2400.0,2400.0,-0.2934,-0.8537,5.0508,46.5297 2019-06-03 15:43:45.380,129.5822,8315.5332,11.0656,-14.8048,1.2699,-0.0721,2400.0,2400.0,-0.2788,-0.8507,5.0508,46.5297 2019-06-03 15:43:45.400,129.5719,8316.4346,11.1103,-14.7969,1.054,-0.0848,2340.0,2400.0,-0.2729,-0.8537,5.0588,46.3694 2019-06-03 15:43:45.420,129.5925,8317.1953,11.1341,-14.7873,1.2481,0.3911,2340.0,2400.0,-0.2758,-0.8446,5.0548,46.3161 2019-06-03 15:43:45.440,129.6744,8318.3789,11.1341,-14.7873,0.9297,-0.075,2340.0,2400.0,-0.2671,-0.8446,5.0535,46.3161 2019-06-03 15:43:45.460,129.6642,8318.3789,11.1341,-14.7873,1.4475,0.325,2340.0,2400.0,-0.2729,-0.8476,5.0508,46.3161 2019-06-03 15:43:45.480,129.5925,8318.3223,11.1564,-14.7895,0.9153,0.0224,2340.0,2400.0,-0.2729,-0.8446,5.0455,46.213 2019-06-03 15:43:45.500,129.6027,8318.2373,11.1833,-14.7895,0.774,0.0594,2340.0,2400.0,-0.2788,-0.8476,5.0495,46.1096 2019-06-03 15:43:45.520,129.4899,8318.2656,11.1833,-14.7895,1.5281,0.2107,2340.0,2400.0,-0.2846,-0.8446,5.0402,46.1096 2019-06-03 15:43:45.540,129.4899,8318.209,11.1833,-14.7895,0.6305,0.1364,2340.0,2400.0,-0.2846,-0.8416,5.0415,46.1096 2019-06-03 15:43:45.560,129.4796,8318.2373,11.2187,-14.779,1.5325,0.0592,2340.0,2400.0,-0.2875,-0.8416,5.031,46.0047 2019-06-03 15:43:45.580,129.4282,8318.1816,11.2187,-14.779,0.7618,0.293,2340.0,2400.0,-0.2612,-0.8386,5.0376,46.0047 2019-06-03 15:43:45.600,129.4282,8318.1816,11.2583,-14.7799,0.7829,0.3312,2340.0,2400.0,-0.2758,-0.8386,5.0376,45.8508 2019-06-03 15:43:45.620,129.4385,8318.1816,11.2661,-14.7838,1.3924,-0.0422,2340.0,2400.0,-0.27,-0.8386,5.0296,45.7999 2019-06-03 15:43:45.640,129.4899,8318.2939,11.2661,-14.7838,0.9759,0.3777,2340.0,2400.0,-0.2729,-0.8295,5.0257,45.7999 2019-06-03 15:43:45.660,129.5001,8318.3223,11.2661,-14.7838,1.2141,-0.0996,2340.0,2400.0,-0.2846,-0.8325,5.031,45.7999 2019-06-03 15:43:45.680,129.4282,8318.7168,11.2955,-14.7825,1.1361,0.3991,2340.0,2400.0,-0.2788,-0.8295,5.0296,45.6963 2019-06-03 15:43:45.700,129.4385,8319.6182,11.3302,-14.7794,1.2888,0.3948,2340.0,2400.0,-0.2817,-0.8295,5.0336,45.5938 2019-06-03 15:43:45.720,129.2223,8320.5195,11.3302,-14.7794,0.8062,-0.0732,2340.0,2400.0,-0.2875,-0.8234,5.0177,45.5938 2019-06-03 15:43:45.740,129.1913,8321.8721,11.3302,-14.7794,1.4593,0.32,2340.0,2400.0,-0.2817,-0.778,5.0137,45.5938 2019-06-03 15:43:45.760,129.1604,8322.8301,11.3516,-14.786,0.7344,0.0438,2340.0,2400.0,-0.2817,-0.7811,5.0177,45.4932 2019-06-03 15:43:45.780,129.0984,8324.2383,11.3516,-14.786,1.4974,0.211,2340.0,2400.0,-0.2729,-0.778,5.0151,45.4932 2019-06-03 15:43:45.800,129.0984,8325.168,11.3914,-14.7891,1.6176,0.1424,2340.0,2400.0,-0.2729,-0.778,5.019,45.3376 2019-06-03 15:43:45.820,129.1087,8326.0703,11.4017,-14.7943,0.6582,0.1835,2340.0,2400.0,-0.2788,-0.778,4.9912,45.2878 2019-06-03 15:43:45.840,129.1604,8327.3662,11.4017,-14.7943,1.5725,0.0403,2340.0,2400.0,-0.2729,-0.7629,4.9859,45.2878 2019-06-03 15:43:45.860,129.1707,8327.4219,11.4017,-14.7943,0.8842,0.3112,2340.0,2400.0,-0.2817,-0.7659,4.9979,45.2878 2019-06-03 15:43:45.880,129.0984,8327.3662,11.4317,-14.7934,1.4101,-0.0049,2340.0,2400.0,-0.2758,-0.7599,5.0005,45.1894 2019-06-03 15:43:45.900,129.1191,8327.3096,11.4466,-14.8039,1.3543,-0.0679,2340.0,2400.0,-0.2788,-0.7568,5.0045,45.0932 2019-06-03 15:43:45.920,128.9017,8327.3096,11.4466,-14.8039,1.0199,0.338,2340.0,2400.0,-0.2934,-0.7599,4.9846,45.0932 2019-06-03 15:43:45.940,128.8602,8327.3662,11.4466,-14.8039,1.1878,-0.0518,2340.0,2400.0,-0.2758,-0.7296,4.974,45.0932 2019-06-03 15:43:45.960,128.8291,8327.3936,11.4677,-14.8083,1.3014,0.3814,2340.0,2400.0,-0.2846,-0.7356,4.974,44.9977 2019-06-03 15:43:45.980,128.7772,8327.3936,11.4677,-14.8083,0.7788,-0.0491,2340.0,2400.0,-0.27,-0.7175,4.9753,44.9977 2019-06-03 15:43:46.000,128.7668,8327.4219,11.5034,-14.8197,0.7152,-0.0469,2340.0,2400.0,-0.2612,-0.7205,4.9859,44.8548 2019-06-03 15:43:46.020,128.7876,8327.3936,11.5218,-14.8157,1.4656,0.2517,2340.0,2400.0,-0.2729,-0.7387,4.9661,44.8067 2019-06-03 15:43:46.040,128.8499,8327.4785,11.5218,-14.8157,0.8077,0.0853,2340.0,2400.0,-0.2554,-0.7296,4.9687,44.8067 2019-06-03 15:43:46.060,128.8499,8327.4785,11.5218,-14.8157,1.5547,0.1745,2340.0,2400.0,-0.2729,-0.7326,4.9753,44.8067 2019-06-03 15:43:46.080,128.7772,8327.7881,11.5365,-14.824,0.5203,0.1929,2340.0,2400.0,-0.2788,-0.7326,4.9714,44.7156 2019-06-03 15:43:46.100,128.7876,8328.6621,11.5608,-14.8271,0.7625,0.2456,2340.0,2400.0,-0.2788,-0.7296,4.974,44.6235 2019-06-03 15:43:46.120,128.569,8329.5361,11.5608,-14.8271,1.4308,-0.0269,2340.0,2400.0,-0.2788,-0.7266,4.97,44.6235 2019-06-03 15:43:46.140,128.5273,8330.8604,11.5608,-14.8271,0.8639,0.3672,2340.0,2400.0,-0.27,-0.7114,4.9621,44.6235 2019-06-03 15:43:46.160,128.5064,8331.7617,11.5887,-14.8262,1.2448,-0.0323,2340.0,2400.0,-0.2729,-0.7053,4.9714,44.5322 2019-06-03 15:43:46.180,128.4438,8333.0859,11.601,-14.8319,0.9966,0.371,2340.0,2400.0,-0.2758,-0.675,4.9714,44.443 2019-06-03 15:43:46.200,128.4542,8333.9883,11.6159,-14.8284,1.203,0.3455,2340.0,2400.0,-0.2905,-0.6659,4.97,44.3986 2019-06-03 15:43:46.220,128.4542,8334.8613,11.6156,-14.8354,0.875,-0.0612,2340.0,2400.0,-0.2963,-0.6902,4.9714,44.3554 2019-06-03 15:43:46.240,128.5169,8336.1582,11.6156,-14.8354,1.3491,0.3201,2340.0,2400.0,-0.2758,-0.6811,4.9608,44.3554 2019-06-03 15:43:46.260,128.5169,8336.1865,11.6156,-14.8354,0.737,0.0266,2340.0,2400.0,-0.2671,-0.6659,4.9753,44.3554 2019-06-03 15:43:46.280,128.4438,8336.1582,11.6428,-14.8297,1.5052,0.2481,2340.0,2400.0,-0.2612,-0.6629,4.97,44.2675 2019-06-03 15:43:46.300,128.4438,8336.1016,11.6598,-14.8245,1.5225,0.168,2340.0,2400.0,-0.2758,-0.6659,4.9608,44.1809 2019-06-03 15:43:46.320,128.245,8336.1582,11.6598,-14.8245,0.7126,0.1846,2340.0,2400.0,-0.2758,-0.672,4.9767,44.1809 2019-06-03 15:43:46.340,128.203,8336.1865,11.6598,-14.8245,1.5022,0.0627,2340.0,2400.0,-0.27,-0.6659,4.9727,44.1809 2019-06-03 15:43:46.360,128.1716,8336.2422,11.6687,-14.8266,0.6368,0.3064,2340.0,2400.0,-0.27,-0.6659,4.9793,44.0964 2019-06-03 15:43:46.380,128.1296,8336.2139,11.6687,-14.8266,1.3587,-0.0276,2340.0,2400.0,-0.2729,-0.6629,4.9727,44.0964 2019-06-03 15:43:46.400,128.1191,8336.2139,11.6994,-14.8175,1.3809,-0.0466,2400.0,2340.0,-0.2729,-0.6477,4.9727,43.9639 2019-06-03 15:43:46.420,128.1191,8336.2422,11.7196,-14.8118,1.0063,0.394,2400.0,2340.0,-0.2875,-0.6599,4.9727,43.9198 2019-06-03 15:43:46.440,128.1821,8336.3555,11.7196,-14.8118,1.1627,-0.0762,2400.0,2340.0,-0.2641,-0.6022,4.9767,43.9198 2019-06-03 15:43:46.460,128.1926,8336.3271,11.7196,-14.8118,1.1856,0.3799,2400.0,2340.0,-0.2612,-0.6053,4.9793,43.9198 2019-06-03 15:43:46.480,128.1191,8336.6934,11.731,-14.8122,0.9009,-0.0391,2400.0,2340.0,-0.2612,-0.6053,4.974,43.8378 2019-06-03 15:43:46.500,128.1296,8337.5957,11.7456,-14.8118,0.9275,-0.0032,2400.0,2340.0,-0.2554,-0.578,4.97,43.7556 2019-06-03 15:43:46.520,127.9192,8338.4971,11.7456,-14.8118,1.3872,0.3108,2400.0,2340.0,-0.2583,-0.5749,4.9859,43.7556 2019-06-03 15:43:46.540,127.8771,8339.8506,11.7456,-14.8118,0.6416,0.0497,2400.0,2340.0,-0.2554,-0.5476,4.97,43.7556 2019-06-03 15:43:46.560,127.856,8340.7803,11.7718,-14.8004,1.5458,0.1701,2400.0,2340.0,-0.2583,-0.5324,4.9753,43.6721 2019-06-03 15:43:46.580,127.7926,8342.1338,11.7718,-14.8004,0.7122,0.1787,2400.0,2340.0,-0.2671,-0.5355,4.9661,43.6721 2019-06-03 15:43:46.600,127.7926,8343.0352,11.7994,-14.7917,0.7851,0.2307,2400.0,2340.0,-0.2525,-0.5385,4.9661,43.5486 2019-06-03 15:43:46.620,127.8032,8343.9092,11.8089,-14.7877,1.3894,0.0331,2400.0,2340.0,-0.2495,-0.5355,4.9727,43.5078 2019-06-03 15:43:46.640,127.856,8345.2334,11.8089,-14.7877,0.7958,0.34,2400.0,2340.0,-0.2115,-0.4838,4.9753,43.5078 2019-06-03 15:43:46.660,127.8665,8345.29,11.8089,-14.7877,1.3591,-0.0532,2400.0,2340.0,-0.2174,-0.4473,4.9634,43.5078 2019-06-03 15:43:46.680,127.7926,8345.5723,11.8281,-14.7781,0.9922,0.3445,2400.0,2340.0,-0.2378,-0.4565,4.9714,43.4289 2019-06-03 15:43:46.700,127.8032,8346.4746,11.8568,-14.7611,1.1009,0.3657,2400.0,2340.0,-0.2349,-0.4534,4.9714,43.3493 2019-06-03 15:43:46.720,127.687,8347.376,11.8568,-14.7611,0.906,-0.0472,2400.0,2340.0,-0.2408,-0.4565,4.9886,43.3493 2019-06-03 15:43:46.740,127.7187,8348.7012,11.8568,-14.7611,1.2529,0.344,2400.0,2340.0,-0.2261,-0.4534,4.9846,43.3493 2019-06-03 15:43:46.760,127.6976,8349.6318,11.8749,-14.7493,0.8772,-0.0077,2400.0,2340.0,-0.2291,-0.4504,4.974,43.2724 2019-06-03 15:43:46.780,127.6341,8350.957,11.8749,-14.7493,1.4256,0.2332,2400.0,2340.0,-0.232,-0.4595,4.9833,43.2724 2019-06-03 15:43:46.800,127.6341,8351.7744,11.9075,-14.7217,1.4297,0.1753,2400.0,2340.0,-0.2291,-0.4534,4.9727,43.1519 2019-06-03 15:43:46.820,127.6447,8352.6201,11.9153,-14.7147,0.7296,0.1637,2400.0,2340.0,-0.2232,-0.4565,4.9926,43.1148 2019-06-03 15:43:46.840,127.687,8353.8887,11.9153,-14.7147,1.3639,0.104,2400.0,2340.0,-0.2349,-0.4473,4.982,43.1148 2019-06-03 15:43:46.860,127.7081,8354.002,11.9153,-14.7147,0.8236,0.2497,2400.0,2340.0,-0.232,-0.4504,4.9859,43.1148 2019-06-03 15:43:46.880,127.6447,8353.9453,11.941,-14.6907,1.3794,0.0004,2400.0,2340.0,-0.2466,-0.4504,4.982,43.0381 2019-06-03 15:43:46.900,127.6341,8353.8604,11.9555,-14.6719,1.2988,-0.0215,2400.0,2340.0,-0.2291,-0.4412,4.9859,42.9633 2019-06-03 15:43:46.920,127.4326,8353.8604,11.9555,-14.6719,0.9833,0.3488,2400.0,2340.0,-0.2232,-0.4443,4.9873,42.9633 2019-06-03 15:43:46.940,127.3901,8353.8047,11.9555,-14.6719,1.1335,-0.0335,2400.0,2340.0,-0.2203,-0.4352,4.9846,42.9633 2019-06-03 15:43:46.960,127.3582,8353.832,11.9775,-14.6527,1.1235,0.3254,2400.0,2340.0,-0.2203,-0.426,4.9939,42.8879 2019-06-03 15:43:46.980,127.2944,8353.832,11.9775,-14.6527,0.9208,-0.0311,2400.0,2340.0,-0.2408,-0.4382,4.9859,42.8879 2019-06-03 15:43:47.000,127.2944,8353.8887,12.0109,-14.6125,0.8517,-0.0221,2400.0,2340.0,-0.2261,-0.4412,4.9912,42.7679 2019-06-03 15:43:47.020,127.2944,8353.8887,12.029,-14.5958,1.4031,0.2532,2400.0,2340.0,-0.232,-0.4352,5.0018,42.7297 2019-06-03 15:43:47.040,127.3582,8353.9453,12.029,-14.5958,0.7803,0.0999,2400.0,2340.0,-0.2203,-0.4412,4.9992,42.7297 2019-06-03 15:43:47.060,127.3901,8353.9453,12.029,-14.5958,1.3424,0.1459,2400.0,2340.0,-0.2174,-0.4412,4.9912,42.7297 2019-06-03 15:43:47.080,127.305,8354.2832,12.0469,-14.5714,0.7577,0.2052,2400.0,2340.0,-0.2291,-0.4443,5.0031,42.6551 2019-06-03 15:43:47.100,127.305,8355.2422,12.0728,-14.5421,0.7078,0.2027,2400.0,2340.0,-0.2261,-0.4352,5.0031,42.5793 2019-06-03 15:43:47.120,127.0918,8356.1729,12.0728,-14.5421,1.3506,0.0426,2400.0,2340.0,-0.232,-0.4443,5.0243,42.5793 2019-06-03 15:43:47.140,127.0491,8357.583,12.0728,-14.5421,0.9308,0.2816,2400.0,2340.0,-0.2525,-0.4595,5.0124,42.5793 2019-06-03 15:43:47.160,127.017,8358.5977,12.1033,-14.511,1.2259,0.0086,2400.0,2340.0,-0.2408,-0.4443,5.0164,42.5032 2019-06-03 15:43:47.180,126.9528,8359.9795,12.1033,-14.511,1.1645,0.3027,2400.0,2340.0,-0.2466,-0.4595,5.0296,42.5032 2019-06-03 15:43:47.200,126.9635,8360.8818,12.1388,-14.4616,1.1006,0.2763,2400.0,2340.0,-0.2203,-0.4565,5.0349,42.3902 2019-06-03 15:43:47.220,126.9635,8361.7285,12.1445,-14.4516,0.9349,-0.0023,2400.0,2340.0,-0.2232,-0.4565,5.0323,42.3537 2019-06-03 15:43:47.240,127.0277,8363.1094,12.1445,-14.4516,1.2274,0.2451,2400.0,2340.0,-0.2349,-0.4656,5.031,42.3537 2019-06-03 15:43:47.260,127.0384,8363.1943,12.1445,-14.4516,1.0103,0.0887,2400.0,2340.0,-0.2261,-0.4625,5.0429,42.3537 2019-06-03 15:43:47.280,126.9635,8363.251,12.1774,-14.4162,1.287,0.2376,2400.0,2340.0,-0.2495,-0.5142,5.0429,42.2785 2019-06-03 15:43:47.300,126.9528,8363.2227,12.2025,-14.3851,1.2625,0.1807,2400.0,2340.0,-0.2291,-0.5081,5.0508,42.2042 2019-06-03 15:43:47.320,126.7491,8363.251,12.2025,-14.3851,0.8454,0.1611,2400.0,2340.0,-0.2232,-0.5051,5.0588,42.2042 2019-06-03 15:43:47.340,126.7169,8363.2793,12.2025,-14.3851,1.2962,0.0814,2400.0,2340.0,-0.2349,-0.5263,5.0588,42.2042 2019-06-03 15:43:47.360,126.6847,8363.2793,12.2255,-14.3532,0.8742,0.2719,2400.0,2340.0,-0.2261,-0.5203,5.0693,42.1284 2019-06-03 15:43:47.380,126.6201,8363.3633,12.2532,-14.3174,1.1997,0.0537,2400.0,2340.0,-0.232,-0.5294,5.0773,42.0512 2019-06-03 15:43:47.400,126.6309,8363.3633,12.265,-14.3017,1.0706,0.0349,2340.0,2400.0,-0.2349,-0.5294,5.072,42.0136 2019-06-03 15:43:47.420,126.6201,8363.3076,12.2845,-14.2824,1.1416,0.2646,2340.0,2400.0,-0.2349,-0.5263,5.076,41.9754 2019-06-03 15:43:47.440,126.6847,8363.3076,12.2845,-14.2824,1.0506,0.0079,2340.0,2400.0,-0.2495,-0.5355,5.072,41.9754 2019-06-03 15:43:47.460,126.6954,8363.251,12.2845,-14.2824,1.2344,0.2719,2340.0,2400.0,-0.2408,-0.5355,5.0799,41.9754 2019-06-03 15:43:47.480,126.6094,8363.4482,12.3093,-14.2514,0.9271,0.0881,2340.0,2400.0,-0.2378,-0.5719,5.0905,41.8985 2019-06-03 15:43:47.500,126.6309,8364.2666,12.3366,-14.2182,0.9212,0.114,2340.0,2400.0,-0.2291,-0.5628,5.0866,41.8222 2019-06-03 15:43:47.520,126.4045,8365.1689,12.3366,-14.2182,1.3243,0.1427,2340.0,2400.0,-0.2291,-0.5628,5.0945,41.8222 2019-06-03 15:43:47.540,126.3721,8366.4658,12.3366,-14.2182,0.9278,0.1854,2340.0,2400.0,-0.2437,-0.5931,5.0892,41.8222 2019-06-03 15:43:47.560,126.3613,8367.3691,12.3742,-14.1823,1.1908,0.0926,2340.0,2400.0,-0.2378,-0.5749,5.0958,41.7444 2019-06-03 15:43:47.580,126.2856,8368.751,12.4019,-14.1502,1.0466,0.268,2340.0,2400.0,-0.2378,-0.581,5.1091,41.6631 2019-06-03 15:43:47.600,126.2856,8369.6816,12.4183,-14.1338,1.0713,0.2708,2340.0,2400.0,-0.2408,-0.581,5.0985,41.6239 2019-06-03 15:43:47.620,126.3073,8370.499,12.4288,-14.1202,1.1449,0.0379,2340.0,2400.0,-0.2261,-0.581,5.1038,41.5868 2019-06-03 15:43:47.640,126.3613,8371.8535,12.4288,-14.1202,1.1335,0.2624,2340.0,2400.0,-0.2261,-0.6265,5.1117,41.5868 2019-06-03 15:43:47.660,126.3505,8371.9375,12.4288,-14.1202,0.8491,0.0583,2340.0,2400.0,-0.2174,-0.6235,5.1091,41.5868 2019-06-03 15:43:47.680,126.2856,8372.333,12.4653,-14.089,1.3117,0.1771,2340.0,2400.0,-0.2349,-0.6235,5.125,41.5068 2019-06-03 15:43:47.700,126.2965,8373.2637,12.501,-14.0593,1.3099,0.156,2340.0,2400.0,-0.2525,-0.6265,5.1183,41.4277 2019-06-03 15:43:47.720,126.0797,8374.1943,12.501,-14.0593,0.9833,0.1868,2340.0,2400.0,-0.2525,-0.6265,5.1197,41.4277 2019-06-03 15:43:47.740,126.0254,8375.4922,12.501,-14.0593,1.2999,0.1028,2340.0,2400.0,-0.2408,-0.6326,5.1355,41.4277 2019-06-03 15:43:47.760,126.0037,8376.4238,12.5321,-14.0363,1.0288,0.2559,2340.0,2400.0,-0.2349,-0.6235,5.1342,41.3485 2019-06-03 15:43:47.780,125.9384,8377.8057,12.5662,-14.009,1.0884,0.0145,2340.0,2400.0,-0.2261,-0.6235,5.1408,41.2651 2019-06-03 15:43:47.800,125.9384,8378.7646,12.5828,-13.9994,0.9804,0.0013,2340.0,2400.0,-0.2291,-0.6356,5.1355,41.224 2019-06-03 15:43:47.820,125.9493,8379.6396,12.6068,-13.9823,1.2267,0.3003,2340.0,2400.0,-0.232,-0.6356,5.1329,41.1829 2019-06-03 15:43:47.840,126.0037,8380.9375,12.6068,-13.9823,0.8239,0.0716,2340.0,2400.0,-0.2437,-0.6568,5.1501,41.1829 2019-06-03 15:43:47.860,126.0254,8380.9932,12.6068,-13.9823,1.3776,0.2258,2340.0,2400.0,-0.232,-0.6659,5.1475,41.1829 2019-06-03 15:43:47.880,125.9493,8380.9932,12.6356,-13.9664,0.781,0.0991,2340.0,2400.0,-0.232,-0.672,5.1581,41.1027 2019-06-03 15:43:47.900,125.9602,8380.9648,12.6724,-13.9465,0.8321,0.1305,2340.0,2400.0,-0.2583,-0.6993,5.1435,41.02 2019-06-03 15:43:47.920,125.7314,8380.9932,12.6724,-13.9465,1.406,0.1179,2340.0,2400.0,-0.2378,-0.7023,5.1475,41.02 2019-06-03 15:43:47.940,125.6768,8381.0215,12.6724,-13.9465,0.8761,0.282,2340.0,2400.0,-0.2349,-0.7205,5.1554,41.02 2019-06-03 15:43:47.960,125.6658,8381.0498,12.7129,-13.9218,1.1982,0.0146,2340.0,2400.0,-0.2174,-0.7387,5.1567,40.9361 2019-06-03 15:43:47.980,125.6002,8381.1631,12.7129,-13.9218,1.0743,0.3396,2340.0,2400.0,-0.2291,-0.8355,5.1475,40.9361 2019-06-03 15:43:48.000,125.5893,8381.1914,12.7689,-13.9021,1.1656,0.3424,2340.0,2400.0,-0.2378,-0.8476,5.1514,40.8085 2019-06-03 15:43:48.020,125.6112,8381.1914,12.7774,-13.9017,1.0392,-0.0244,2340.0,2400.0,-0.2349,-0.8507,5.1461,40.7683 2019-06-03 15:43:48.040,125.6658,8381.1631,12.7774,-13.9017,1.3591,0.3312,2340.0,2400.0,-0.2349,-0.8869,5.1673,40.7683 2019-06-03 15:43:48.060,125.6658,8381.1348,12.7774,-13.9017,0.6867,0.0459,2340.0,2400.0,-0.2232,-0.8809,5.1541,40.7683 2019-06-03 15:43:48.080,125.5893,8381.4453,12.8186,-13.887,1.6557,0.2055,2340.0,2400.0,-0.2291,-0.8809,5.1528,40.683 2019-06-03 15:43:48.100,125.6112,8382.207,12.8546,-13.8763,1.4948,0.1791,2340.0,2400.0,-0.2437,-0.8869,5.1488,40.5984 2019-06-03 15:43:48.120,125.4798,8382.9971,12.8546,-13.8763,0.7193,0.1878,2340.0,2400.0,-0.232,-0.8869,5.1541,40.5984 2019-06-03 15:43:48.140,125.5017,8384.2383,12.8546,-13.8763,1.4719,0.0559,2340.0,2400.0,-0.2291,-0.893,5.166,40.5984 2019-06-03 15:43:48.160,125.4798,8385.0566,12.8808,-13.877,0.7832,0.3314,2340.0,2400.0,-0.2291,-0.9081,5.1634,40.5143 2019-06-03 15:43:48.180,125.414,8386.2422,12.8808,-13.877,1.1797,-0.0591,2340.0,2400.0,-0.232,-0.9111,5.1488,40.5143 2019-06-03 15:43:48.200,125.4249,8387.0879,12.9346,-13.8715,1.0791,-0.0314,2340.0,2400.0,-0.2408,-0.9383,5.1528,40.3849 2019-06-03 15:43:48.220,125.4249,8387.9346,12.9589,-13.8654,1.2736,0.3443,2340.0,2400.0,-0.2378,-0.9413,5.1528,40.3414 2019-06-03 15:43:48.240,125.4907,8389.1484,12.9589,-13.8654,0.8454,-0.0411,2340.0,2400.0,-0.2349,-0.9564,5.1647,40.3414 2019-06-03 15:43:48.260,125.5017,8389.2324,12.9589,-13.8654,1.4608,0.2854,2340.0,2400.0,-0.2291,-0.9685,5.162,40.3414 2019-06-03 15:43:48.280,125.4359,8389.6279,12.986,-13.87,0.6512,0.0702,2340.0,2400.0,-0.2291,-0.9685,5.1488,40.2553 2019-06-03 15:43:48.300,125.4359,8390.5313,13.0176,-13.8754,0.649,0.1314,2340.0,2400.0,-0.2408,-0.9655,5.1528,40.1694 2019-06-03 15:43:48.320,125.2052,8391.4063,13.0176,-13.8754,1.4985,0.1275,2340.0,2400.0,-0.2232,-0.9685,5.1607,40.1694 2019-06-03 15:43:48.340,125.1611,8392.8174,13.0176,-13.8754,0.6908,0.2598,2340.0,2400.0,-0.2291,-0.9685,5.1594,40.1694 2019-06-03 15:43:48.360,125.1391,8393.7764,13.0596,-13.8772,1.4493,0.0042,2340.0,2400.0,-0.232,-0.9685,5.1514,40.0806 2019-06-03 15:43:48.380,125.0839,8395.1318,13.0596,-13.8772,0.9959,0.3683,2340.0,2400.0,-0.232,-0.9655,5.1475,40.0806 2019-06-03 15:43:48.400,125.0729,8396.0342,13.1075,-13.8947,1.1253,0.3959,2400.0,2340.0,-0.232,-0.9685,5.1554,39.9471 2019-06-03 15:43:48.420,125.0839,8396.9092,13.1118,-13.908,1.0063,-0.0654,2400.0,2340.0,-0.232,-0.9655,5.1541,39.9038 2019-06-03 15:43:48.440,125.1501,8398.1797,13.1118,-13.908,1.2858,0.3701,2400.0,2340.0,-0.232,-0.9655,5.1567,39.9038 2019-06-03 15:43:48.460,125.1501,8398.2363,13.1118,-13.908,0.8199,-0.027,2400.0,2340.0,-0.2408,-0.9655,5.1461,39.9038 2019-06-03 15:43:48.480,125.0729,8398.2363,13.1513,-13.9174,1.4682,0.2771,2400.0,2340.0,-0.2291,-0.9595,5.1448,39.8129 2019-06-03 15:43:48.500,125.0729,8398.208,13.1841,-13.9327,1.5647,0.2308,2400.0,2340.0,-0.2291,-0.9655,5.1647,39.7231 2019-06-03 15:43:48.520,124.874,8398.1514,13.1841,-13.9327,0.5972,0.1814,2400.0,2340.0,-0.2261,-0.9655,5.1607,39.7231 2019-06-03 15:43:48.540,124.8297,8398.1514,13.1841,-13.9327,1.5358,0.0382,2400.0,2340.0,-0.2291,-0.9595,5.1594,39.7231 2019-06-03 15:43:48.560,124.7965,8398.208,13.2065,-13.9581,0.8653,0.3049,2400.0,2340.0,-0.2495,-0.9715,5.1541,39.6335 2019-06-03 15:43:48.580,124.73,8398.292,13.2065,-13.9581,1.3043,-0.0444,2400.0,2340.0,-0.2408,-0.9625,5.1501,39.6335 2019-06-03 15:43:48.600,124.73,8398.292,13.2539,-13.9867,1.2063,-0.0823,2400.0,2340.0,-0.2378,-0.9655,5.1634,39.496 2019-06-03 15:43:48.620,124.7411,8398.292,13.2772,-13.9933,1.075,0.3817,2400.0,2340.0,-0.2349,-0.9685,5.1634,39.4486 2019-06-03 15:43:48.640,124.7854,8398.377,13.2772,-13.9933,1.0514,-0.0573,2400.0,2340.0,-0.2378,-0.9413,5.1594,39.4486 2019-06-03 15:43:48.660,124.8297,8398.3203,13.2772,-13.9933,1.3495,0.3112,2400.0,2340.0,-0.2641,-0.9625,5.1488,39.4486 2019-06-03 15:43:48.680,124.7411,8398.6309,13.3004,-14.0201,0.8273,0.0355,2400.0,2340.0,-0.2378,-0.9564,5.1461,39.3587 2019-06-03 15:43:48.700,124.7411,8399.5342,13.3245,-14.0468,0.7603,0.0677,2400.0,2340.0,-0.2349,-0.9504,5.162,39.2671 2019-06-03 15:43:48.720,124.5077,8400.3809,13.3245,-14.0468,1.4009,0.1677,2400.0,2340.0,-0.2203,-0.9534,5.1647,39.2671 2019-06-03 15:43:48.740,124.4632,8401.6514,13.3245,-14.0468,0.8077,0.1776,2400.0,2340.0,-0.2174,-0.9413,5.1567,39.2671 2019-06-03 15:43:48.760,124.4409,8402.583,13.3619,-14.0669,1.4393,0.0689,2400.0,2340.0,-0.2378,-0.9413,5.1528,39.1729 2019-06-03 15:43:48.780,124.374,8403.9102,13.3619,-14.0669,0.8772,0.3112,2400.0,2340.0,-0.232,-0.9353,5.1514,39.1729 2019-06-03 15:43:48.800,124.374,8404.7285,13.4025,-14.1135,0.9985,0.3371,2400.0,2340.0,-0.232,-0.9323,5.1554,39.0372 2019-06-03 15:43:48.820,124.3963,8405.5469,13.4108,-14.1303,1.1693,-0.014,2400.0,2340.0,-0.2349,-0.9292,5.1673,38.9904 2019-06-03 15:43:48.840,124.452,8406.8457,13.4108,-14.1303,1.2307,0.3327,2400.0,2340.0,-0.232,-0.9292,5.1541,38.9904 2019-06-03 15:43:48.860,124.452,8406.9307,13.4108,-14.1303,0.9415,0.0018,2400.0,2340.0,-0.2378,-0.9323,5.1567,38.9904 2019-06-03 15:43:48.880,124.374,8407.2695,13.4411,-14.1567,1.281,0.2978,2400.0,2340.0,-0.2261,-0.9232,5.1514,38.8971 2019-06-03 15:43:48.900,124.3851,8408.2012,13.4704,-14.1845,1.2293,0.2416,2400.0,2340.0,-0.2261,-0.9081,5.1461,38.8025 2019-06-03 15:43:48.920,124.1616,8409.1611,13.4704,-14.1845,0.8531,0.0979,2400.0,2340.0,-0.232,-0.9111,5.1488,38.8025 2019-06-03 15:43:48.940,124.1168,8410.5166,13.4704,-14.1845,1.358,0.1705,2400.0,2340.0,-0.2291,-0.9021,5.1488,38.8025 2019-06-03 15:43:48.960,124.1056,8411.4766,13.4914,-14.2197,0.9622,0.2292,2400.0,2340.0,-0.2466,-0.9051,5.1541,38.7078 2019-06-03 15:43:48.980,124.0272,8412.8594,13.5202,-14.2538,1.1253,0.1036,2400.0,2340.0,-0.2378,-0.899,5.162,38.6123 2019-06-03 15:43:49.000,124.0272,8413.792,13.5332,-14.2678,1.2474,0.0476,2400.0,2340.0,-0.2378,-0.899,5.1541,38.5647 2019-06-03 15:43:49.020,124.0384,8414.7236,13.5519,-14.28,1.1571,0.2768,2400.0,2340.0,-0.2466,-0.899,5.1554,38.5148 2019-06-03 15:43:49.040,124.0944,8416.0791,13.5519,-14.28,1.0414,0.0526,2400.0,2340.0,-0.232,-0.893,5.1461,38.5148 2019-06-03 15:43:49.060,124.1168,8416.1914,13.5519,-14.28,1.2914,0.2636,2400.0,2340.0,-0.2349,-0.896,5.1647,38.5148 2019-06-03 15:43:49.080,124.0496,8416.1064,13.574,-14.313,0.8935,0.1207,2400.0,2340.0,-0.232,-0.893,5.1581,38.4193 2019-06-03 15:43:49.100,124.0272,8416.0225,13.5955,-14.3454,0.9815,0.1223,2400.0,2340.0,-0.2349,-0.89,5.1541,38.3242 2019-06-03 15:43:49.120,123.8137,8416.0781,13.5955,-14.3454,1.2448,0.1423,2400.0,2340.0,-0.2408,-0.893,5.1528,38.3242 2019-06-03 15:43:49.140,123.7686,8416.1348,13.5955,-14.3454,0.9474,0.2207,2400.0,2340.0,-0.2261,-0.893,5.1461,38.3242 2019-06-03 15:43:49.160,123.7236,8416.2197,13.6257,-14.3703,1.1919,0.1067,2400.0,2340.0,-0.2232,-0.893,5.1554,38.2261 2019-06-03 15:43:49.180,123.6672,8416.1914,13.6257,-14.3703,1.1427,0.2384,2400.0,2340.0,-0.2291,-0.896,5.1514,38.2261 2019-06-03 15:43:49.200,123.6672,8416.248,13.6598,-14.4184,1.26,0.2318,2400.0,2340.0,-0.2349,-0.8688,5.1422,38.0851 2019-06-03 15:43:49.220,123.6785,8416.1348,13.6699,-14.4363,0.9389,0.0537,2400.0,2340.0,-0.2641,-0.8869,5.1461,38.0386 2019-06-03 15:43:49.240,123.7574,8416.1914,13.6699,-14.4363,1.3066,0.2459,2400.0,2340.0,-0.2408,-0.8809,5.1369,38.0386 2019-06-03 15:43:49.260,123.7461,8416.248,13.6699,-14.4363,0.8391,0.1241,2400.0,2340.0,-0.2291,-0.8748,5.1475,38.0386 2019-06-03 15:43:49.280,123.6559,8416.4736,13.6955,-14.4625,1.2559,0.1581,2400.0,2340.0,-0.2232,-0.8779,5.1475,37.9422 2019-06-03 15:43:49.300,123.6897,8417.3213,13.715,-14.4944,1.2544,0.1288,2400.0,2340.0,-0.2203,-0.8718,5.1342,37.8467 2019-06-03 15:43:49.320,123.4411,8418.2246,13.715,-14.4944,1.0122,0.2324,2400.0,2340.0,-0.232,-0.8779,5.1342,37.8467 2019-06-03 15:43:49.340,123.4298,8419.4961,13.715,-14.4944,1.0858,0.0909,2400.0,2340.0,-0.232,-0.8718,5.1303,37.8467 2019-06-03 15:43:49.360,123.3958,8420.3145,13.7341,-14.5272,1.2307,0.2828,2400.0,2340.0,-0.2408,-0.8537,5.1369,37.7516 2019-06-03 15:43:49.380,123.3278,8421.6426,13.7341,-14.5272,0.8017,0.0519,2400.0,2340.0,-0.2466,-0.8507,5.1329,37.7516 2019-06-03 15:43:49.400,123.3165,8422.4609,13.7645,-14.5731,0.7718,0.0689,2580.0,2340.0,-0.2437,-0.8174,5.1157,37.6063 2019-06-03 15:43:49.420,123.3278,8423.3086,13.7804,-14.5819,1.4005,0.2131,2580.0,2340.0,-0.2437,-0.8265,5.121,37.558 2019-06-03 15:43:49.440,123.3732,8424.6641,13.7804,-14.5819,0.7292,0.1602,2580.0,2340.0,-0.2408,-0.8265,5.1157,37.558 2019-06-03 15:43:49.460,123.3958,8424.7207,13.7804,-14.5819,1.4604,0.1235,2580.0,2340.0,-0.232,-0.8204,5.1144,37.558 2019-06-03 15:43:49.480,123.3165,8424.9746,13.7969,-14.6177,0.774,0.2563,2580.0,2340.0,-0.2261,-0.8174,5.1223,37.4627 2019-06-03 15:43:49.500,123.3391,8425.8789,13.8212,-14.6426,0.9131,0.2985,2580.0,2340.0,-0.232,-0.7932,5.0998,37.3674 2019-06-03 15:43:49.520,123.1005,8426.8105,13.8212,-14.6426,1.1479,0.0037,2580.0,2340.0,-0.232,-0.7841,5.1024,37.3674 2019-06-03 15:43:49.540,123.055,8428.2227,13.8212,-14.6426,1.1838,0.3335,2580.0,2340.0,-0.232,-0.7901,5.1064,37.3674 2019-06-03 15:43:49.560,123.0094,8429.2119,13.8432,-14.6662,0.845,0.0094,2580.0,2340.0,-0.232,-0.7841,5.1064,37.2725 2019-06-03 15:43:49.580,122.9638,8430.5674,13.8432,-14.6662,1.497,0.293,2580.0,2340.0,-0.2437,-0.7841,5.1091,37.2725 2019-06-03 15:43:49.600,122.9638,8431.415,13.8739,-14.7047,1.4626,0.2573,2580.0,2340.0,-0.2437,-0.7568,5.0958,37.1313 2019-06-03 15:43:49.620,122.9638,8432.2627,13.8773,-14.7222,0.7533,0.1116,2580.0,2340.0,-0.232,-0.7447,5.0972,37.0843 2019-06-03 15:43:49.640,123.0322,8433.5898,13.8773,-14.7222,1.4941,0.1661,2580.0,2340.0,-0.232,-0.7478,5.1024,37.0843 2019-06-03 15:43:49.660,123.0436,8433.6748,13.8773,-14.7222,0.6434,0.238,2580.0,2340.0,-0.2349,-0.7296,5.0958,37.0843 2019-06-03 15:43:49.680,122.9524,8434.0137,13.9015,-14.7445,1.4471,0.0475,2580.0,2340.0,-0.2437,-0.7235,5.0998,36.9875 2019-06-03 15:43:49.700,122.9638,8434.8613,13.9139,-14.7733,1.2015,0.0221,2580.0,2340.0,-0.2437,-0.7235,5.0905,36.8926 2019-06-03 15:43:49.720,122.7467,8435.7939,13.9139,-14.7733,1.0665,0.3952,2580.0,2340.0,-0.2378,-0.7205,5.0958,36.8926 2019-06-03 15:43:49.740,122.6894,8437.1787,13.9139,-14.7733,0.9937,-0.089,2580.0,2340.0,-0.2378,-0.7175,5.0919,36.8926 2019-06-03 15:43:49.760,122.6779,8438.1387,13.9262,-14.8026,1.3173,0.3966,2580.0,2340.0,-0.2291,-0.6417,5.0905,36.7978 2019-06-03 15:43:49.780,122.6206,8439.4951,13.9262,-14.8026,0.8065,-0.0255,2580.0,2340.0,-0.232,-0.6902,5.0879,36.7978 2019-06-03 15:43:49.800,122.6092,8440.3994,13.9513,-14.8384,0.7178,0.0308,2580.0,2340.0,-0.2232,-0.6781,5.0813,36.6537 2019-06-03 15:43:49.820,122.6206,8441.2754,13.9662,-14.845,1.47,0.277,2580.0,2340.0,-0.2261,-0.6356,5.0746,36.6046 2019-06-03 15:43:49.840,122.6894,8442.5752,13.9662,-14.845,0.5691,0.1144,2580.0,2340.0,-0.2349,-0.6386,5.076,36.6046 2019-06-03 15:43:49.860,122.6779,8442.6309,13.9662,-14.845,1.5181,0.1258,2580.0,2340.0,-0.2408,-0.5992,5.072,36.6046 2019-06-03 15:43:49.880,122.6092,8442.5752,13.971,-14.8725,0.6967,0.2612,2580.0,2340.0,-0.2495,-0.6447,5.0773,36.5088 2019-06-03 15:43:49.900,122.6206,8442.4902,13.9921,-14.8896,0.7322,0.3217,2580.0,2340.0,-0.2378,-0.6356,5.0733,36.4105 2019-06-03 15:43:49.920,122.3908,8442.4336,13.9921,-14.8896,1.4423,-0.0296,2580.0,2340.0,-0.2232,-0.6144,5.0667,36.4105 2019-06-03 15:43:49.940,122.3563,8442.5186,13.9921,-14.8896,0.9878,0.42,2580.0,2340.0,-0.232,-0.6204,5.0707,36.4105 2019-06-03 15:43:49.960,122.3102,8442.5752,14.0097,-14.9049,1.0063,-0.0939,2580.0,2340.0,-0.2261,-0.5962,5.0521,36.3128 2019-06-03 15:43:49.980,122.2295,8442.5752,14.0097,-14.9049,1.3687,0.3777,2580.0,2340.0,-0.232,-0.6265,5.0521,36.3128 2019-06-03 15:43:50.000,122.241,8442.6309,14.0293,-14.9289,1.3239,0.339,2580.0,2340.0,-0.2378,-0.6174,5.0402,36.1618 2019-06-03 15:43:50.020,122.2525,8442.6592,14.0237,-14.9429,0.747,0.0393,2580.0,2340.0,-0.2291,-0.5901,5.0349,36.1148 2019-06-03 15:43:50.040,122.3217,8442.6592,14.0237,-14.9429,1.497,0.2389,2580.0,2340.0,-0.2437,-0.5962,5.0349,36.1148 2019-06-03 15:43:50.060,122.3332,8442.6309,14.0237,-14.9429,0.5295,0.1585,2580.0,2340.0,-0.2408,-0.5992,5.0243,36.1148 2019-06-03 15:43:50.080,122.2525,8443.0547,14.0449,-14.9512,1.5314,0.0723,2580.0,2340.0,-0.2408,-0.5962,5.0283,36.0164 2019-06-03 15:43:50.100,122.2525,8443.9316,14.0518,-14.967,1.409,0.022,2580.0,2340.0,-0.232,-0.5992,5.0243,35.9198 2019-06-03 15:43:50.120,122.1486,8444.8359,14.0518,-14.967,0.8043,0.3567,2580.0,2340.0,-0.232,-0.584,5.0098,35.9198 2019-06-03 15:43:50.140,122.1486,8446.2764,14.0518,-14.967,1.2718,-0.048,2580.0,2340.0,-0.2437,-0.581,5.023,35.9198 2019-06-03 15:43:50.160,122.1371,8447.0967,14.0554,-14.9831,0.9726,0.387,2580.0,2340.0,-0.2291,-0.578,4.9965,35.8247 2019-06-03 15:43:50.180,122.0793,8448.4531,14.0554,-14.9831,0.9889,-0.0908,2580.0,2340.0,-0.2437,-0.578,4.9899,35.8247 2019-06-03 15:43:50.200,122.0793,8449.3857,14.0668,-15.0015,0.9145,-0.0641,2580.0,2340.0,-0.2349,-0.578,5.0045,35.68 2019-06-03 15:43:50.220,122.0793,8450.2617,14.0784,-15.0028,1.2977,0.3143,2580.0,2340.0,-0.232,-0.5446,4.9793,35.6317 2019-06-03 15:43:50.240,122.1486,8451.6182,14.0784,-15.0028,0.6801,0.0561,2580.0,2340.0,-0.2408,-0.5476,5.0005,35.6317 2019-06-03 15:43:50.260,122.1486,8451.6182,14.0784,-15.0028,1.4434,0.2239,2580.0,2340.0,-0.2349,-0.5446,4.978,35.6317 2019-06-03 15:43:50.280,122.0793,8451.957,14.0778,-15.019,0.7111,0.1866,2580.0,2340.0,-0.2291,-0.5476,4.982,35.5375 2019-06-03 15:43:50.300,122.0793,8452.748,14.0837,-15.0304,0.7581,0.2327,2580.0,2340.0,-0.232,-0.5567,4.9926,35.4414 2019-06-03 15:43:50.320,121.8359,8453.625,14.0837,-15.0304,1.4308,0.0586,2580.0,2340.0,-0.2291,-0.5446,4.974,35.4414 2019-06-03 15:43:50.340,121.801,8454.8965,14.0837,-15.0304,0.8261,0.3462,2580.0,2340.0,-0.2378,-0.5415,4.9873,35.4414 2019-06-03 15:43:50.360,121.7662,8455.7725,14.0935,-15.0373,1.1564,-0.0311,2580.0,2340.0,-0.2408,-0.5415,4.9727,35.3463 2019-06-03 15:43:50.380,121.6964,8457.1299,14.0935,-15.0373,1.0632,0.4057,2580.0,2340.0,-0.2466,-0.5446,4.9674,35.3463 2019-06-03 15:43:50.400,121.6964,8457.9775,14.0934,-15.0531,1.0762,0.3863,2700.0,2340.0,-0.2408,-0.5415,4.9806,35.2018 2019-06-03 15:43:50.420,121.708,8458.8252,14.0821,-15.0662,0.8443,-0.0585,2700.0,2340.0,-0.232,-0.5203,4.9674,35.1563 2019-06-03 15:43:50.440,121.7778,8460.0693,14.0821,-15.0662,1.2666,0.3004,2700.0,2340.0,-0.2437,-0.5203,4.9727,35.1563 2019-06-03 15:43:50.460,121.7894,8460.1543,14.0821,-15.0662,0.8413,0.0786,2700.0,2340.0,-0.2378,-0.5112,4.9687,35.1563 2019-06-03 15:43:50.480,121.708,8460.4648,14.0907,-15.0736,1.3051,0.2189,2700.0,2340.0,-0.232,-0.496,4.97,35.0606 2019-06-03 15:43:50.500,121.708,8461.4268,14.0893,-15.085,1.25,0.1802,2700.0,2340.0,-0.2349,-0.502,4.9793,34.9673 2019-06-03 15:43:50.520,121.5799,8462.3027,14.0893,-15.085,0.6849,0.2088,2700.0,2340.0,-0.2291,-0.4595,4.9648,34.9673 2019-06-03 15:43:50.540,121.5916,8463.6885,14.0893,-15.085,1.3765,0.0145,2700.0,2340.0,-0.2408,-0.4625,4.9687,34.9673 2019-06-03 15:43:50.560,121.5683,8464.6494,14.0773,-15.1003,0.838,0.3454,2700.0,2340.0,-0.232,-0.4412,4.97,34.8759 2019-06-03 15:43:50.580,121.5216,8465.9502,14.0773,-15.1003,1.1538,-0.0095,2700.0,2340.0,-0.232,-0.4047,4.9674,34.8759 2019-06-03 15:43:50.600,121.5099,8466.8545,14.0741,-15.1156,1.044,-0.0097,2700.0,2340.0,-0.232,-0.3987,4.9767,34.7376 2019-06-03 15:43:50.620,121.5333,8467.7598,14.0802,-15.1173,1.0884,0.3251,2700.0,2340.0,-0.2378,-0.3378,4.9648,34.6895 2019-06-03 15:43:50.640,121.5916,8469.0879,14.0802,-15.1173,0.933,-0.0146,2700.0,2340.0,-0.2525,-0.3439,4.9727,34.6895 2019-06-03 15:43:50.660,121.5799,8469.2012,14.0802,-15.1173,1.1549,0.2896,2700.0,2340.0,-0.2466,-0.3378,4.982,34.6895 2019-06-03 15:43:50.680,121.5099,8469.2295,14.07,-15.127,0.9223,0.0886,2700.0,2340.0,-0.2378,-0.3043,4.9674,34.5988 2019-06-03 15:43:50.700,121.5216,8469.1729,14.0648,-15.1331,0.9393,0.1443,2700.0,2340.0,-0.2349,-0.3073,4.9833,34.5079 2019-06-03 15:43:50.720,121.2995,8469.1162,14.0648,-15.1331,1.1631,0.1655,2700.0,2340.0,-0.2232,-0.2891,4.9674,34.5079 2019-06-03 15:43:50.740,121.2527,8469.1445,14.0648,-15.1331,0.8487,0.1984,2700.0,2340.0,-0.2203,-0.286,4.9714,34.5079 2019-06-03 15:43:50.760,121.2293,8469.1729,14.0652,-15.1357,1.1549,0.0818,2700.0,2340.0,-0.2232,-0.2951,4.9806,34.4158 2019-06-03 15:43:50.780,121.1472,8469.1729,14.0652,-15.1357,1.0029,0.2912,2700.0,2340.0,-0.2174,-0.2738,4.9727,34.4158 2019-06-03 15:43:50.800,121.1589,8469.2578,14.0572,-15.1388,1.0817,0.289,2700.0,2340.0,-0.232,-0.2708,4.978,34.2792 2019-06-03 15:43:50.820,121.1589,8469.2295,14.051,-15.1431,0.963,0.0454,2700.0,2340.0,-0.2349,-0.2799,4.974,34.2355 2019-06-03 15:43:50.840,121.2175,8469.1729,14.051,-15.1431,1.179,0.2965,2700.0,2340.0,-0.2437,-0.2769,4.9714,34.2355 2019-06-03 15:43:50.860,121.2293,8469.1162,14.051,-15.1431,0.8935,0.0499,2700.0,2340.0,-0.2437,-0.2799,4.9859,34.2355 2019-06-03 15:43:50.880,121.1472,8469.5127,14.0499,-15.1401,1.1464,0.2494,2700.0,2340.0,-0.2378,-0.2555,4.9687,34.1464 2019-06-03 15:43:50.900,121.1589,8470.3604,14.0461,-15.1396,1.2211,0.2003,2700.0,2340.0,-0.2408,-0.2555,4.978,34.0585 2019-06-03 15:43:50.920,121.1472,8471.2373,14.0461,-15.1396,0.8173,0.1769,2700.0,2340.0,-0.2349,-0.2281,4.97,34.0585 2019-06-03 15:43:50.940,121.2293,8472.623,14.0461,-15.1396,1.2514,0.1284,2700.0,2340.0,-0.2378,-0.2037,4.9489,34.0585 2019-06-03 15:43:50.960,121.2175,8473.5557,14.0349,-15.1405,0.8602,0.2353,2700.0,2340.0,-0.232,-0.2067,4.97,33.9726 2019-06-03 15:43:50.980,121.1472,8474.8564,14.0349,-15.1405,1.0599,0.061,2700.0,2340.0,-0.232,-0.1427,4.9581,33.9726 2019-06-03 15:43:51.000,121.1472,8475.7334,14.0288,-15.1366,1.0214,0.011,2700.0,2340.0,-0.2378,-0.1427,4.9621,33.8401 2019-06-03 15:43:51.020,121.1589,8476.6104,14.0328,-15.1305,1.1442,0.2988,2700.0,2340.0,-0.2261,-0.1182,4.9648,33.7953 2019-06-03 15:43:51.040,121.2293,8477.8545,14.0328,-15.1305,0.9408,0.0616,2700.0,2340.0,-0.2174,-0.1152,4.9528,33.7953 2019-06-03 15:43:51.060,121.2293,8477.8828,14.0328,-15.1305,1.1786,0.2478,2700.0,2340.0,-0.2261,-0.1152,4.9727,33.7953 2019-06-03 15:43:51.080,121.1589,8478.335,14.0246,-15.1265,0.7943,0.0893,2700.0,2340.0,-0.232,-0.0541,4.9581,33.7086 2019-06-03 15:43:51.100,121.1472,8479.2686,14.017,-15.1156,0.8158,0.0935,2700.0,2340.0,-0.2466,-0.0235,4.9621,33.6233 2019-06-03 15:43:51.120,120.9238,8480.1455,14.017,-15.1156,1.2918,0.1689,2700.0,2340.0,-0.2378,0.0805,4.9674,33.6233 2019-06-03 15:43:51.140,120.8649,8481.4746,14.017,-15.1156,0.7914,0.2326,2700.0,2340.0,-0.2291,0.1663,4.9568,33.6233 2019-06-03 15:43:51.160,120.8531,8482.4365,14.0193,-15.0994,1.2085,0.0784,2700.0,2340.0,-0.232,0.1724,4.9714,33.5357 2019-06-03 15:43:51.180,120.7823,8483.8506,14.0193,-15.0994,0.9064,0.2848,2700.0,2340.0,-0.2232,0.2215,4.9608,33.5357 2019-06-03 15:43:51.200,120.7705,8484.7842,14.0146,-15.0693,1.0625,0.2847,2700.0,2340.0,-0.2378,0.2246,4.9555,33.4037 2019-06-03 15:43:51.220,120.7941,8485.7451,14.0088,-15.0609,1.0051,0.0018,2700.0,2340.0,-0.2378,0.2552,4.9687,33.361 2019-06-03 15:43:51.240,120.8413,8487.0752,14.0088,-15.0609,1.1893,0.3564,2700.0,2340.0,-0.2437,0.2737,4.9542,33.361 2019-06-03 15:43:51.260,120.8649,8486.9902,14.0088,-15.0609,0.7381,0.0091,2700.0,2340.0,-0.2378,0.2767,4.97,33.361 2019-06-03 15:43:51.280,120.7705,8487.4141,14.0127,-15.029,1.4297,0.2662,2700.0,2340.0,-0.2261,0.3136,4.97,33.276 2019-06-03 15:43:51.300,120.7823,8488.291,14.0129,-14.9941,1.4415,0.2277,2700.0,2340.0,-0.2261,0.3136,4.9648,33.1899 2019-06-03 15:43:51.320,120.676,8489.168,14.0129,-14.9941,0.5843,0.1302,2700.0,2340.0,-0.2261,0.3259,4.9727,33.1899 2019-06-03 15:43:51.340,120.6878,8490.498,14.0129,-14.9941,1.4608,0.1598,2700.0,2340.0,-0.2261,0.3689,4.9502,33.1899 2019-06-03 15:43:51.360,120.6642,8491.4033,14.0043,-14.9626,0.5998,0.255,2700.0,2340.0,-0.232,0.3689,4.9634,33.1058 2019-06-03 15:43:51.380,120.605,8492.6768,14.0043,-14.9626,1.3487,-0.0,2700.0,2340.0,-0.2349,0.3689,4.9502,33.1058 2019-06-03 15:43:51.400,120.605,8493.5537,14.0078,-14.8935,1.2977,-0.0434,2760.0,2340.0,-0.2408,0.3935,4.9383,32.9766 2019-06-03 15:43:51.420,120.605,8494.4023,14.0154,-14.8629,0.8864,0.382,2760.0,2340.0,-0.2466,0.3873,4.9581,32.9327 2019-06-03 15:43:51.440,120.676,8495.6748,14.0154,-14.8629,1.0935,-0.0657,2760.0,2340.0,-0.2291,0.3904,4.9621,32.9327 2019-06-03 15:43:51.460,120.6878,8495.6748,14.0154,-14.8629,1.1165,0.4007,2760.0,2340.0,-0.2349,0.3965,4.9621,32.9327 2019-06-03 15:43:51.480,120.5932,8496.0996,14.0133,-14.8131,0.7156,-0.0507,2760.0,2340.0,-0.2261,0.415,4.9608,32.8492 2019-06-03 15:43:51.500,120.605,8497.0049,14.0064,-14.762,0.7485,-0.0283,2760.0,2340.0,-0.2291,0.4181,4.9409,32.7655 2019-06-03 15:43:51.520,120.4747,8497.9102,14.0064,-14.762,1.4245,0.3091,2760.0,2340.0,-0.2261,0.415,4.9581,32.7655 2019-06-03 15:43:51.540,120.4984,8499.2686,14.0064,-14.762,0.4792,0.0622,2760.0,2340.0,-0.2232,0.4273,4.9462,32.7655 2019-06-03 15:43:51.560,120.4747,8500.2305,14.0166,-14.699,1.5011,0.1762,2760.0,2340.0,-0.232,0.4365,4.9595,32.6782 2019-06-03 15:43:51.580,120.4154,8501.6172,14.0166,-14.699,0.5588,0.1995,2760.0,2340.0,-0.2291,0.4365,4.9581,32.6782 2019-06-03 15:43:51.600,120.4154,8502.5508,14.0139,-14.602,0.7374,0.2939,2760.0,2340.0,-0.232,0.4365,4.9489,32.5423 2019-06-03 15:43:51.620,120.4273,8503.457,14.0135,-14.5692,1.2659,-0.0065,2760.0,2340.0,-0.2232,0.4396,4.974,32.4986 2019-06-03 15:43:51.640,120.4866,8504.7871,14.0135,-14.5692,0.6815,0.3924,2760.0,2340.0,-0.2291,0.4365,4.9621,32.4986 2019-06-03 15:43:51.660,120.4984,8504.7871,14.0135,-14.5692,1.2637,-0.1295,2760.0,2340.0,-0.2378,0.4396,4.9634,32.4986 2019-06-03 15:43:51.680,120.4154,8504.7588,14.0162,-14.4988,1.1124,0.4338,2760.0,2340.0,-0.2408,0.4888,4.9634,32.4112 2019-06-03 15:43:51.700,120.4154,8504.7021,14.0287,-14.4184,1.2407,0.4277,2760.0,2340.0,-0.2408,0.4888,4.9555,32.3237 2019-06-03 15:43:51.720,120.2847,8504.7588,14.0287,-14.4184,0.811,-0.0861,2760.0,2340.0,-0.2378,0.4765,4.982,32.3237 2019-06-03 15:43:51.740,120.3204,8504.7305,14.0287,-14.4184,1.3761,0.3314,2760.0,2340.0,-0.2261,0.4734,4.9714,32.3237 2019-06-03 15:43:51.760,120.2847,8504.7588,14.0267,-14.3454,0.6216,0.0383,2760.0,2340.0,-0.2291,0.4765,4.9634,32.2376 2019-06-03 15:43:51.780,120.2133,8504.7588,14.0267,-14.3454,1.466,0.2007,2760.0,2340.0,-0.2203,0.4765,4.97,32.2376 2019-06-03 15:43:51.800,120.2371,8504.7305,14.0358,-14.2201,1.4316,0.1598,2760.0,2340.0,-0.2203,0.4734,4.9489,32.096 2019-06-03 15:43:51.820,120.2252,8504.7021,14.0372,-14.1795,0.6083,0.2538,2760.0,2340.0,-0.2291,0.4765,4.97,32.0527 2019-06-03 15:43:51.840,120.2847,8504.7305,14.0372,-14.1795,1.3972,-0.0079,2760.0,2340.0,-0.2261,0.4765,4.97,32.0527 2019-06-03 15:43:51.860,120.3204,8504.6455,14.0372,-14.1795,0.7932,0.3642,2760.0,2340.0,-0.2261,0.4765,4.978,32.0527 2019-06-03 15:43:51.880,120.2133,8505.041,14.0442,-14.0929,1.1753,-0.0841,2760.0,2340.0,-0.2291,0.4796,4.9859,31.964 2019-06-03 15:43:51.900,120.2371,8505.9473,14.0395,-14.0116,1.0895,-0.0859,2760.0,2340.0,-0.232,0.4827,4.9674,31.8761 2019-06-03 15:43:51.920,119.9747,8506.8809,14.0395,-14.0116,1.0732,0.413,2760.0,2340.0,-0.2378,0.4765,4.9648,31.8761 2019-06-03 15:43:51.940,119.9269,8508.1826,14.0395,-14.0116,0.8406,-0.0567,2760.0,2340.0,-0.2437,0.5042,4.9661,31.8761 2019-06-03 15:43:51.960,119.915,8509.0889,14.0457,-13.9248,1.2644,0.2976,2760.0,2340.0,-0.2408,0.5196,4.9595,31.7874 2019-06-03 15:43:51.980,119.8551,8510.4473,14.0457,-13.9248,0.7426,0.0553,2760.0,2340.0,-0.232,0.5165,4.9753,31.7874 2019-06-03 15:43:52.000,119.8312,8511.3809,14.0498,-13.7896,0.7015,0.1073,2760.0,2340.0,-0.2115,0.5258,4.974,31.6414 2019-06-03 15:43:52.020,119.8671,8512.2588,14.0564,-13.7417,1.2781,0.1439,2760.0,2340.0,-0.2057,0.5319,4.9806,31.5957 2019-06-03 15:43:52.040,119.9269,8513.6172,14.0564,-13.7417,0.6179,0.2351,2760.0,2340.0,-0.2115,0.5319,4.978,31.5957 2019-06-03 15:43:52.060,119.9269,8513.6172,14.0564,-13.7417,1.3169,0.0111,2760.0,2340.0,-0.2408,0.5319,4.9687,31.5957 2019-06-03 15:43:52.080,119.8312,8514.0137,14.0542,-13.6554,0.8983,0.3668,2760.0,2340.0,-0.2378,0.5319,4.9806,31.5059 2019-06-03 15:43:52.100,119.8432,8514.9189,14.066,-13.5605,0.9038,0.371,2760.0,2340.0,-0.232,0.5412,4.982,31.4132 2019-06-03 15:43:52.120,119.7113,8515.8252,14.066,-13.5605,1.1368,-0.0604,2760.0,2340.0,-0.232,0.5381,4.9833,31.4132 2019-06-03 15:43:52.140,119.7593,8517.2686,14.066,-13.5605,1.0717,0.3399,2760.0,2340.0,-0.2203,0.5997,4.978,31.4132 2019-06-03 15:43:52.160,119.6993,8518.2031,14.0714,-13.4663,0.9179,0.0225,2760.0,2340.0,-0.2291,0.612,4.9674,31.3229 2019-06-03 15:43:52.180,119.6513,8519.6182,14.0714,-13.4663,1.1782,0.2691,2760.0,2340.0,-0.2232,0.6244,4.9806,31.3229 2019-06-03 15:43:52.200,119.6513,8520.5244,14.0771,-13.3253,1.156,0.2253,2760.0,2340.0,-0.2174,0.6861,4.9727,31.1828 2019-06-03 15:43:52.220,119.6513,8521.374,14.0752,-13.2775,0.9253,0.1622,2760.0,2340.0,-0.2261,0.7138,4.9793,31.138 2019-06-03 15:43:52.240,119.7353,8522.6758,14.0752,-13.2775,1.1779,0.1092,2760.0,2340.0,-0.2291,0.7138,4.978,31.138 2019-06-03 15:43:52.260,119.7233,8522.6758,14.0752,-13.2775,0.9478,0.2433,2760.0,2340.0,-0.2261,0.7355,4.97,31.138 2019-06-03 15:43:52.280,119.6513,8523.1289,14.081,-13.1791,0.96,0.0546,2760.0,2340.0,-0.232,0.7324,4.978,31.0467 2019-06-03 15:43:52.300,119.6633,8523.9785,14.0802,-13.0849,0.9493,0.0872,2760.0,2340.0,-0.2232,0.7416,4.9727,30.9559 2019-06-03 15:43:52.320,119.4227,8524.8564,14.0802,-13.0849,1.1889,0.2636,2760.0,2340.0,-0.2261,0.7663,4.9687,30.9559 2019-06-03 15:43:52.340,119.3504,8526.1309,14.0802,-13.0849,0.831,0.1047,2760.0,2340.0,-0.2232,0.7694,4.9753,30.9559 2019-06-03 15:43:52.360,119.3263,8526.9512,14.0853,-12.9844,1.2322,0.2002,2760.0,2340.0,-0.2232,0.8065,4.9687,30.8652 2019-06-03 15:43:52.380,119.2659,8528.3105,14.0853,-12.9844,0.8668,0.1622,2760.0,2340.0,-0.2291,0.8003,4.9806,30.8652 2019-06-03 15:43:52.400,119.2659,8529.1885,14.0907,-12.8303,0.9682,0.2093,2400.0,2400.0,-0.2261,0.8034,4.97,30.7247 2019-06-03 15:43:52.420,119.278,8530.0664,14.0917,-12.7787,1.044,0.0682,2400.0,2400.0,-0.2291,0.8251,4.9608,30.6806 2019-06-03 15:43:52.440,119.3504,8531.2842,14.0917,-12.7787,1.0547,0.281,2400.0,2400.0,-0.232,0.8251,4.974,30.6806 2019-06-03 15:43:52.460,119.3504,8531.2842,14.0917,-12.7787,0.9552,0.0737,2400.0,2400.0,-0.2261,0.8405,4.9661,30.6806 2019-06-03 15:43:52.480,119.29,8531.2559,14.0958,-12.6731,1.2115,0.2718,2400.0,2400.0,-0.2115,0.8467,4.9833,30.5912 2019-06-03 15:43:52.500,119.278,8531.1992,14.1043,-12.5645,1.314,0.2349,2400.0,2400.0,-0.2115,0.8436,4.978,30.5013 2019-06-03 15:43:52.520,119.1571,8531.2559,14.1043,-12.5645,0.8139,0.0943,2400.0,2400.0,-0.2232,0.8467,4.9608,30.5013 2019-06-03 15:43:52.540,119.1692,8531.3125,14.1043,-12.5645,1.3084,0.2014,2400.0,2400.0,-0.2349,0.8436,4.9727,30.5013 2019-06-03 15:43:52.560,119.1571,8531.3408,14.1071,-12.4554,0.6786,0.2015,2400.0,2400.0,-0.2378,0.8436,4.9687,30.4146 2019-06-03 15:43:52.580,119.0723,8531.3691,14.1071,-12.4554,1.2374,0.0836,2400.0,2400.0,-0.232,0.8467,4.9753,30.4146 2019-06-03 15:43:52.600,119.0844,8531.4258,14.1128,-12.2878,1.1083,0.0214,2400.0,2400.0,-0.2145,0.8467,4.978,30.2812 2019-06-03 15:43:52.620,119.0966,8531.3975,14.1173,-12.2275,1.048,0.2908,2400.0,2400.0,-0.2232,0.8591,4.9595,30.239 2019-06-03 15:43:52.640,119.1692,8531.3975,14.1173,-12.2275,0.8365,0.0272,2400.0,2400.0,-0.2203,0.8653,4.9753,30.239 2019-06-03 15:43:52.660,119.1692,8531.3408,14.1173,-12.2275,1.2592,0.3131,2400.0,2400.0,-0.2349,0.8622,4.9634,30.239 2019-06-03 15:43:52.680,119.0844,8531.7656,14.1204,-12.1204,0.7548,0.0238,2400.0,2400.0,-0.2408,0.8653,4.9806,30.1556 2019-06-03 15:43:52.700,119.0966,8532.6719,14.12,-12.0109,0.6416,0.0561,2400.0,2400.0,-0.2495,0.8745,4.9753,30.0749 2019-06-03 15:43:52.720,118.8417,8533.5781,14.12,-12.0109,1.3365,0.1788,2400.0,2400.0,-0.2437,0.8962,4.9674,30.0749 2019-06-03 15:43:52.740,118.7931,8534.9658,14.12,-12.0109,0.7548,0.1702,2400.0,2400.0,-0.2261,0.8931,4.9753,30.0749 2019-06-03 15:43:52.760,118.7809,8535.8721,14.1299,-11.8924,1.2341,0.1029,2400.0,2400.0,-0.2174,0.8931,4.97,29.9943 2019-06-03 15:43:52.780,118.6957,8537.2598,14.1299,-11.8924,0.71,0.2863,2400.0,2400.0,-0.2174,0.9055,4.97,29.9943 2019-06-03 15:43:52.800,118.6957,8538.2227,14.1342,-11.7252,0.8931,0.3388,2400.0,2400.0,-0.2203,0.9024,4.9714,29.8703 2019-06-03 15:43:52.820,118.7079,8539.1572,14.1285,-11.6723,1.0403,-0.0116,2400.0,2400.0,-0.2378,0.9086,4.9608,29.8316 2019-06-03 15:43:52.840,118.7809,8540.46,14.1285,-11.6723,1.0843,0.3563,2400.0,2400.0,-0.2349,0.9024,4.9793,29.8316 2019-06-03 15:43:52.860,118.7809,8540.4316,14.1285,-11.6723,0.7599,0.0098,2400.0,2400.0,-0.2349,0.9055,4.9753,29.8316 2019-06-03 15:43:52.880,118.6957,8540.9131,14.1365,-11.5567,1.2733,0.3171,2400.0,2400.0,-0.2349,0.924,4.9727,29.7547 2019-06-03 15:43:52.900,118.7201,8541.791,14.145,-11.4373,1.287,0.3002,2400.0,2400.0,-0.2349,0.924,4.97,29.6789 2019-06-03 15:43:52.920,118.5615,8542.6689,14.145,-11.4373,0.5691,0.1021,2400.0,2400.0,-0.2291,0.9426,4.9608,29.6789 2019-06-03 15:43:52.940,118.5981,8544.001,14.145,-11.4373,1.4138,0.1777,2400.0,2400.0,-0.2203,0.9519,4.97,29.6789 2019-06-03 15:43:52.960,118.5737,8544.9072,14.14,-11.3272,0.5133,0.2201,2400.0,2400.0,-0.2232,0.9488,4.9727,29.607 2019-06-03 15:43:52.980,118.5127,8546.2383,14.1436,-11.214,1.4941,0.0523,2400.0,2400.0,-0.232,0.9519,4.9674,29.5318 2019-06-03 15:43:53.000,118.5249,8547.1729,14.1508,-11.151,1.3247,0.0415,2400.0,2400.0,-0.2349,0.9519,4.9727,29.4959 2019-06-03 15:43:53.020,118.5127,8548.0234,14.1556,-11.09,0.7141,0.3794,2400.0,2400.0,-0.232,0.9519,4.9648,29.461 2019-06-03 15:43:53.040,118.5859,8549.2412,14.1556,-11.09,1.2019,-0.0919,2400.0,2400.0,-0.2261,0.955,4.9687,29.461 2019-06-03 15:43:53.060,118.5981,8549.1846,14.1556,-11.09,0.9826,0.4226,2400.0,2400.0,-0.2232,0.9519,4.97,29.461 2019-06-03 15:43:53.080,118.5004,8549.1846,14.1568,-10.9703,0.9822,-0.0847,2400.0,2400.0,-0.2291,0.9612,4.9687,29.3932 2019-06-03 15:43:53.100,118.5004,8549.1279,14.1533,-10.8505,0.7866,-0.0214,2400.0,2400.0,-0.232,0.9643,4.9753,29.3283 2019-06-03 15:43:53.120,118.2678,8549.1563,14.1533,-10.8505,1.362,0.3404,2400.0,2400.0,-0.2349,0.9674,4.9674,29.3283 2019-06-03 15:43:53.140,118.231,8549.0996,14.1533,-10.8505,0.6227,0.0489,2400.0,2400.0,-0.2291,0.9643,4.97,29.3283 2019-06-03 15:43:53.160,118.1942,8549.1563,14.1641,-10.7218,1.5107,0.2016,2400.0,2400.0,-0.2232,0.9643,4.97,29.2642 2019-06-03 15:43:53.180,118.1328,8549.1563,14.1641,-10.7218,0.619,0.2135,2400.0,2400.0,-0.2291,0.9705,4.9648,29.2642 2019-06-03 15:43:53.200,118.1205,8549.1279,14.1675,-10.5338,0.6664,0.2761,2400.0,2400.0,-0.232,0.9643,4.9793,29.1672 2019-06-03 15:43:53.220,118.1328,8549.1563,14.1666,-10.4711,1.3642,0.0288,2400.0,2400.0,-0.2261,0.9674,4.97,29.1375 2019-06-03 15:43:53.240,118.2065,8549.2129,14.1666,-10.4711,0.7688,0.3491,2400.0,2400.0,-0.2232,0.9674,4.9661,29.1375 2019-06-03 15:43:53.260,118.2065,8549.2129,14.1666,-10.4711,1.2245,-0.0667,2400.0,2400.0,-0.2291,0.9674,4.9727,29.1375 2019-06-03 15:43:53.280,118.1328,8549.666,14.1697,-10.3469,0.9685,0.3862,2400.0,2400.0,-0.2378,0.9767,4.9634,29.0793 2019-06-03 15:43:53.300,118.1451,8550.5449,14.1805,-10.2121,1.0214,0.3854,2400.0,2400.0,-0.232,0.9736,4.9806,29.0238 2019-06-03 15:43:53.320,117.9975,8551.3945,14.1805,-10.2121,0.828,-0.0109,2400.0,2400.0,-0.2232,0.9767,4.974,29.0238 2019-06-03 15:43:53.340,118.0221,8552.7266,14.1805,-10.2121,1.2326,0.3068,2400.0,2400.0,-0.2232,0.9798,4.9608,29.0238 2019-06-03 15:43:53.360,118.0098,8553.6895,14.1803,-10.0851,0.6475,0.054,2400.0,2400.0,-0.2261,0.9829,4.9714,28.9698 2019-06-03 15:43:53.380,117.9236,8555.1064,14.1803,-10.0851,1.3964,0.1896,2400.0,2400.0,-0.232,0.9798,4.9648,28.9698 2019-06-03 15:43:53.400,117.9482,8556.0127,14.1882,-9.8875,1.3972,0.1359,2340.0,2340.0,-0.2291,0.986,4.9767,28.8885 2019-06-03 15:43:53.420,117.9482,8556.8916,14.1899,-9.8265,0.6619,0.2616,2340.0,2340.0,-0.2378,0.9767,4.9833,28.8636 2019-06-03 15:43:53.440,118.0221,8558.1094,14.1899,-9.8265,1.3147,0.0338,2340.0,2340.0,-0.2408,0.9829,4.9674,28.8636 2019-06-03 15:43:53.460,118.0221,8558.0527,14.1899,-9.8265,0.777,0.3326,2340.0,2340.0,-0.2291,0.9829,4.9767,28.8636 2019-06-03 15:43:53.480,117.9359,8558.5918,14.1959,-9.6943,1.2078,-0.0426,2340.0,2340.0,-0.2291,0.9829,4.9581,28.8142 2019-06-03 15:43:53.500,117.9606,8559.498,14.1923,-9.5647,1.1531,-0.0641,2340.0,2340.0,-0.2203,0.9829,4.9687,28.7674 2019-06-03 15:43:53.520,117.8002,8560.3486,14.1923,-9.5647,0.98,0.3731,2340.0,2340.0,-0.2261,0.986,4.9806,28.7674 2019-06-03 15:43:53.540,117.8372,8561.709,14.1923,-9.5647,1.0059,-0.0142,2340.0,2340.0,-0.2261,0.9891,4.9767,28.7674 2019-06-03 15:43:53.560,117.8002,8562.5586,14.1971,-9.4344,1.1634,0.3275,2340.0,2340.0,-0.2378,0.986,4.9727,28.722 2019-06-03 15:43:53.580,117.7508,8563.834,14.1971,-9.4344,0.6801,0.0746,2340.0,2340.0,-0.2291,0.9891,4.9674,28.722 2019-06-03 15:43:53.600,117.7384,8564.7129,14.2019,-9.2287,0.798,0.0845,2340.0,2340.0,-0.2232,0.986,4.9727,28.6564 2019-06-03 15:43:53.620,117.7631,8565.5908,14.2093,-9.1586,1.2784,0.1717,2340.0,2340.0,-0.2291,0.986,4.9833,28.6359 2019-06-03 15:43:53.640,117.8249,8566.8379,14.2093,-9.1586,0.8095,0.219,2340.0,2340.0,-0.2408,0.9922,4.9753,28.6359 2019-06-03 15:43:53.660,117.8249,8566.8096,14.2093,-9.1586,1.2119,0.0966,2340.0,2340.0,-0.2349,0.9891,4.9793,28.6359 2019-06-03 15:43:53.680,117.7384,8567.292,14.2109,-9.0218,0.8117,0.3155,2340.0,2340.0,-0.2261,0.9922,4.9674,28.5975 2019-06-03 15:43:53.700,117.7508,8568.1416,14.2198,-8.8806,0.9704,0.2939,2340.0,2340.0,-0.2057,0.9922,4.9714,28.5602 2019-06-03 15:43:53.720,117.6147,8569.0488,14.2198,-8.8806,1.0488,0.0331,2340.0,2340.0,-0.2086,0.9891,4.982,28.5602 2019-06-03 15:43:53.740,117.6395,8570.3525,14.2198,-8.8806,0.9312,0.2926,2340.0,2340.0,-0.2145,0.9922,4.9714,28.5602 2019-06-03 15:43:53.760,117.6147,8571.3164,14.2268,-8.7396,0.9238,0.0705,2340.0,2340.0,-0.2408,1.0108,4.9727,28.5239 2019-06-03 15:43:53.780,117.5527,8572.7344,14.2268,-8.7396,1.0969,0.2735,2340.0,2340.0,-0.2408,1.0046,4.9727,28.5239 2019-06-03 15:43:53.800,117.5403,8573.6689,14.2357,-8.5252,1.0958,0.1905,2340.0,2340.0,-0.2291,1.0108,4.9714,28.4718 2019-06-03 15:43:53.820,117.5527,8574.5479,14.2362,-8.4563,0.8809,0.1607,2340.0,2340.0,-0.2261,1.0046,4.9833,28.4549 2019-06-03 15:43:53.840,117.6271,8575.8232,14.2362,-8.4563,1.1142,0.1385,2340.0,2340.0,-0.232,1.0046,4.97,28.4549 2019-06-03 15:43:53.860,117.6518,8575.7383,14.2362,-8.4563,0.9719,0.2433,2340.0,2340.0,-0.2174,1.0077,4.9806,28.4549 2019-06-03 15:43:53.880,117.5651,8575.71,14.2468,-8.3092,1.0185,0.122,2340.0,2340.0,-0.2232,1.0077,4.974,28.4232 2019-06-03 15:43:53.900,117.5527,8575.6816,14.2486,-8.1663,1.0236,0.0795,2340.0,2340.0,-0.2261,1.0046,4.978,28.3928 2019-06-03 15:43:53.920,117.2795,8575.7666,14.2486,-8.1663,1.0133,0.2386,2340.0,2340.0,-0.2525,1.0077,4.978,28.3928 2019-06-03 15:43:53.940,117.2421,8575.8516,14.2486,-8.1663,0.9452,0.0663,2340.0,2340.0,-0.2525,1.0046,4.974,28.3928 2019-06-03 15:43:53.960,117.2297,8575.8809,14.2572,-8.0209,1.1083,0.2708,2340.0,2340.0,-0.2378,1.0077,4.974,28.3635 2019-06-03 15:43:53.980,117.1549,8575.9375,14.2572,-8.0209,0.8213,0.1491,2340.0,2340.0,-0.2203,1.0108,4.9806,28.3635 2019-06-03 15:43:54.000,117.1549,8575.9658,14.2709,-7.8004,0.9249,0.1508,2340.0,2340.0,-0.194,1.0077,4.9793,28.3179 2019-06-03 15:43:54.020,117.1674,8575.9941,14.2777,-7.7252,1.0432,0.1695,2340.0,2340.0,-0.2057,1.0077,4.9767,28.3038 2019-06-03 15:43:54.040,117.2421,8576.0791,14.2777,-7.7252,0.8631,0.1951,2340.0,2340.0,-0.2086,1.0077,4.9767,28.3038 2019-06-03 15:43:54.060,117.2297,8576.0791,14.2777,-7.7252,1.0602,0.0986,2340.0,2340.0,-0.2115,1.0077,4.982,28.3038 2019-06-03 15:43:54.080,117.1424,8576.5605,14.2826,-7.5751,1.007,0.265,2340.0,2340.0,-0.2232,1.0046,4.9873,28.2767 2019-06-03 15:43:54.100,117.1674,8577.4111,14.2936,-7.4218,1.1135,0.2439,2340.0,2340.0,-0.2261,1.0077,4.9859,28.2493 2019-06-03 15:43:54.120,117.0176,8578.29,14.2936,-7.4218,0.8069,0.1005,2340.0,2340.0,-0.2261,1.0046,4.982,28.2493 2019-06-03 15:43:54.140,117.0426,8579.5664,14.2936,-7.4218,1.1583,0.2063,2340.0,2340.0,-0.2145,1.0046,4.978,28.2493 2019-06-03 15:43:54.160,117.0301,8580.4736,14.3006,-7.2765,0.7518,0.1402,2340.0,2340.0,-0.2028,1.0046,4.982,28.2218 2019-06-03 15:43:54.180,116.9676,8581.834,14.3006,-7.2765,1.2877,0.1534,2340.0,2340.0,-0.2057,1.0015,4.9886,28.2218 2019-06-03 15:43:54.200,116.9551,8582.7412,14.3147,-7.0524,1.2052,0.1266,2340.0,2340.0,-0.2115,1.0077,4.9873,28.1807 2019-06-03 15:43:54.220,116.9551,8583.6484,14.3204,-6.977,0.8443,0.248,2340.0,2340.0,-0.2115,1.0046,4.9899,28.1678 2019-06-03 15:43:54.240,117.0426,8584.9248,14.3204,-6.977,1.0802,0.067,2340.0,2340.0,-0.2145,1.0015,4.9846,28.1678 2019-06-03 15:43:54.260,117.0426,8584.8965,14.3204,-6.977,1.0414,0.2929,2340.0,2340.0,-0.2115,1.0046,4.9833,28.1678 2019-06-03 15:43:54.280,116.9676,8585.293,14.3267,-6.831,0.8665,0.0189,2340.0,2340.0,-0.2174,0.9891,5.0031,28.1429 2019-06-03 15:43:54.300,116.9551,8586.2012,14.3297,-6.6894,0.7929,0.0138,2340.0,2340.0,-0.2291,0.9891,4.9965,28.1174 2019-06-03 15:43:54.320,116.7045,8587.165,14.3297,-6.6894,1.2159,0.2945,2340.0,2340.0,-0.2203,0.9891,5.0045,28.1174 2019-06-03 15:43:54.340,116.6668,8588.5547,14.3297,-6.6894,0.7244,0.1104,2340.0,2340.0,-0.2203,0.9488,4.9926,28.1174 2019-06-03 15:43:54.360,116.6417,8589.5186,14.3421,-6.5412,1.3176,0.1828,2340.0,2340.0,-0.2115,0.9519,4.9939,28.0934 2019-06-03 15:43:54.380,116.5788,8590.9082,14.3579,-6.3905,0.5861,0.175,2340.0,2340.0,-0.2203,0.9426,5.0151,28.0692 2019-06-03 15:43:54.400,116.5788,8591.7871,14.3568,-6.3217,0.5784,0.2203,2400.0,2340.0,-0.2232,0.9395,5.0018,28.0577 2019-06-03 15:43:54.420,116.5788,8592.6377,14.3618,-6.2462,1.3624,0.0786,2400.0,2340.0,-0.2203,0.9086,5.0111,28.0466 2019-06-03 15:43:54.440,116.6543,8593.9141,14.3618,-6.2462,0.8088,0.3354,2400.0,2340.0,-0.2203,0.8869,5.0111,28.0466 2019-06-03 15:43:54.460,116.6543,8593.9424,14.3618,-6.2462,1.1553,-0.0291,2400.0,2340.0,-0.2145,0.8745,5.0058,28.0466 2019-06-03 15:43:54.480,116.5663,8593.9424,14.3677,-6.1001,1.0392,0.3382,2400.0,2340.0,-0.2086,0.8251,5.0243,28.0246 2019-06-03 15:43:54.500,116.5788,8593.8857,14.3863,-5.9502,1.1105,0.3183,2400.0,2340.0,-0.2115,0.8251,5.0151,28.0027 2019-06-03 15:43:54.520,116.4404,8593.8857,14.3863,-5.9502,0.8383,0.0375,2400.0,2340.0,-0.2086,0.822,5.0177,28.0027 2019-06-03 15:43:54.540,116.4656,8593.8291,14.3863,-5.9502,1.2448,0.2949,2400.0,2340.0,-0.2291,0.788,5.0031,28.0027 2019-06-03 15:43:54.560,116.453,8593.7725,14.3944,-5.8104,0.6627,0.081,2400.0,2340.0,-0.2086,0.7663,5.019,27.981 2019-06-03 15:43:54.580,116.3773,8593.8291,14.3944,-5.8104,1.4759,0.1902,2400.0,2340.0,-0.2203,0.6799,5.027,27.981 2019-06-03 15:43:54.600,116.3647,8593.9141,14.4094,-5.5939,1.3702,0.1433,2400.0,2340.0,-0.2203,0.6706,5.027,27.9469 2019-06-03 15:43:54.620,116.3773,8593.9141,14.4129,-5.5246,0.6582,0.264,2400.0,2340.0,-0.2203,0.6706,5.0177,27.9368 2019-06-03 15:43:54.640,116.4404,8593.9424,14.4129,-5.5246,1.2873,0.0278,2400.0,2340.0,-0.2174,0.6398,5.0177,27.9368 2019-06-03 15:43:54.660,116.4656,8593.999,14.4129,-5.5246,0.8347,0.3607,2400.0,2340.0,-0.2115,0.6398,5.0124,27.9368 2019-06-03 15:43:54.680,116.3773,8594.3965,14.424,-5.3845,1.0606,-0.0597,2400.0,2340.0,-0.2145,0.612,5.0164,27.915 2019-06-03 15:43:54.700,116.3899,8595.2471,14.4262,-5.253,0.8424,-0.0579,2400.0,2340.0,-0.2232,0.6028,5.0204,27.8945 2019-06-03 15:43:54.720,116.2384,8596.0693,14.4262,-5.253,1.1076,0.3908,2400.0,2340.0,-0.2232,0.5812,5.0204,27.8945 2019-06-03 15:43:54.740,116.2637,8597.4033,14.4262,-5.253,0.7951,-0.0183,2400.0,2340.0,-0.2261,0.5443,5.023,27.8945 2019-06-03 15:43:54.760,116.2384,8598.3389,14.4389,-5.1201,1.2208,0.3058,2400.0,2340.0,-0.2261,0.5412,5.023,27.875 2019-06-03 15:43:54.780,116.1752,8599.5869,14.4389,-5.1201,0.5495,0.0816,2400.0,2340.0,-0.2174,0.535,5.0243,27.875 2019-06-03 15:43:54.800,116.1752,8600.4375,14.4515,-4.9256,0.5491,0.18,2400.0,2340.0,-0.2203,0.5135,5.0164,27.8451 2019-06-03 15:43:54.820,116.1752,8601.2324,14.4591,-4.8569,1.345,0.1018,2400.0,2340.0,-0.2203,0.5104,5.0177,27.8359 2019-06-03 15:43:54.840,116.2511,8602.4238,14.4591,-4.8569,0.6494,0.2841,2400.0,2340.0,-0.2349,0.4796,5.023,27.8359 2019-06-03 15:43:54.860,116.2637,8602.4238,14.4591,-4.8569,1.2736,0.0199,2400.0,2340.0,-0.2437,0.4857,5.0217,27.8359 2019-06-03 15:43:54.880,116.1625,8602.9336,14.4632,-4.7363,0.8953,0.367,2400.0,2340.0,-0.2437,0.4765,5.0257,27.8153 2019-06-03 15:43:54.900,116.1752,8603.7852,14.4801,-4.6081,0.9408,0.3911,2400.0,2340.0,-0.2437,0.4673,5.0217,27.795 2019-06-03 15:43:54.920,115.909,8604.6934,14.4801,-4.6081,1.0262,-0.0552,2400.0,2340.0,-0.2291,0.4673,5.0243,27.795 2019-06-03 15:43:54.940,115.8836,8606.0547,14.4801,-4.6081,1.1357,0.3575,2400.0,2340.0,-0.2261,0.415,5.0296,27.795 2019-06-03 15:43:54.960,115.8454,8606.9629,14.4874,-4.4861,0.7884,0.0305,2400.0,2340.0,-0.2349,0.4119,5.031,27.7743 2019-06-03 15:43:54.980,115.7818,8608.3242,14.4874,-4.4861,1.2548,0.2747,2400.0,2340.0,-0.2408,0.4058,5.0336,27.7743 2019-06-03 15:43:55.000,115.7691,8609.2324,14.5031,-4.3099,1.2355,0.2408,2400.0,2340.0,-0.2583,0.3904,5.0362,27.7424 2019-06-03 15:43:55.020,115.7818,8610.168,14.5027,-4.2521,0.8187,0.1617,2400.0,2340.0,-0.2525,0.3873,5.0376,27.7324 2019-06-03 15:43:55.040,115.8582,8611.4736,14.5027,-4.2521,1.2296,0.1204,2400.0,2340.0,-0.2408,0.3842,5.0482,27.7324 2019-06-03 15:43:55.060,115.8582,8611.502,14.5027,-4.2521,0.8014,0.2715,2400.0,2340.0,-0.2349,0.3873,5.0521,27.7324 2019-06-03 15:43:55.080,115.7818,8611.502,14.5167,-4.1356,1.1671,0.0509,2400.0,2340.0,-0.2291,0.3904,5.0574,27.7125 2019-06-03 15:43:55.100,115.7946,8611.3887,14.5178,-4.0236,1.0406,0.0307,2400.0,2340.0,-0.2349,0.3812,5.072,27.6932 2019-06-03 15:43:55.120,115.6417,8611.3604,14.5178,-4.0236,0.9541,0.299,2400.0,2340.0,-0.232,0.3996,5.0733,27.6932 2019-06-03 15:43:55.140,115.6545,8611.417,14.5178,-4.0236,0.9907,0.05,2400.0,2340.0,-0.232,0.3935,5.0866,27.6932 2019-06-03 15:43:55.160,115.6545,8611.4736,14.5247,-3.9123,0.9593,0.2829,2400.0,2340.0,-0.2349,0.3904,5.0813,27.6734 2019-06-03 15:43:55.180,115.5652,8611.502,14.5247,-3.9123,0.9327,0.1076,2400.0,2340.0,-0.232,0.4027,5.0786,27.6734 2019-06-03 15:43:55.200,115.5779,8611.5303,14.5421,-3.7478,0.8927,0.1369,2400.0,2340.0,-0.2291,0.3965,5.0866,27.6483 2019-06-03 15:43:55.220,115.5907,8611.4736,14.5472,-3.694,1.0798,0.1433,2400.0,2340.0,-0.2145,0.4027,5.0905,27.64 2019-06-03 15:43:55.240,115.6545,8611.4736,14.5472,-3.694,0.9519,0.1919,2400.0,2340.0,-0.2145,0.3965,5.0998,27.64 2019-06-03 15:43:55.260,115.6672,8611.4453,14.5472,-3.694,1.0909,0.1155,2400.0,2340.0,-0.2203,0.3996,5.0919,27.64 2019-06-03 15:43:55.280,115.5779,8611.9561,14.5544,-3.5917,0.9671,0.2668,2400.0,2340.0,-0.2174,0.3965,5.0879,27.6212 2019-06-03 15:43:55.300,115.5779,8612.8066,14.568,-3.4859,0.9756,0.2494,2400.0,2340.0,-0.2261,0.3996,5.0932,27.6029 2019-06-03 15:43:55.320,115.4246,8613.6865,14.568,-3.4859,0.862,0.0688,2400.0,2340.0,-0.2291,0.3965,5.0945,27.6029 2019-06-03 15:43:55.340,115.4502,8615.0488,14.568,-3.4859,1.0817,0.2198,2400.0,2340.0,-0.2232,0.3996,5.1064,27.6029 2019-06-03 15:43:55.360,115.4502,8615.957,14.5779,-3.3849,0.8598,0.1387,2400.0,2340.0,-0.2232,0.3996,5.113,27.5858 2019-06-03 15:43:55.380,115.3734,8617.3193,14.5779,-3.3849,1.1631,0.2085,2400.0,2340.0,-0.2115,0.4027,5.113,27.5858 2019-06-03 15:43:55.400,115.3606,8618.1982,14.5977,-3.2377,1.1039,0.1841,2340.0,2340.0,-0.2145,0.3996,5.1104,27.5625 2019-06-03 15:43:55.420,115.3734,8619.1348,14.601,-3.1888,0.8835,0.2248,2340.0,2340.0,-0.2057,0.4242,5.1077,27.5542 2019-06-03 15:43:55.440,115.4502,8620.3838,14.601,-3.1888,0.9944,0.0838,2340.0,2340.0,-0.1969,0.4488,5.1077,27.5542 2019-06-03 15:43:55.460,115.4502,8620.4404,14.601,-3.1888,1.0233,0.2469,2340.0,2340.0,-0.2028,0.4519,5.1091,27.5542 2019-06-03 15:43:55.480,115.3606,8620.9229,14.6123,-3.0894,0.9597,0.0859,2340.0,2340.0,-0.1911,0.5073,5.1144,27.5366 2019-06-03 15:43:55.500,115.3862,8621.7744,14.6197,-2.9946,0.8006,0.1006,2340.0,2340.0,-0.1852,0.5104,5.1276,27.5186 2019-06-03 15:43:55.520,115.1041,8622.6826,14.6197,-2.9946,1.2404,0.253,2340.0,2340.0,-0.1794,0.5812,5.1117,27.5186 2019-06-03 15:43:55.540,115.0784,8624.0732,14.6197,-2.9946,0.7633,0.1222,2340.0,2340.0,-0.156,0.609,5.113,27.5186 2019-06-03 15:43:55.560,115.0398,8625.0664,14.6329,-2.8924,1.2607,0.1563,2340.0,2340.0,-0.1677,0.6059,5.1077,27.501 2019-06-03 15:43:55.580,114.9625,8626.4287,14.6329,-2.8924,0.8454,0.2338,2340.0,2340.0,-0.1618,0.6583,5.1144,27.501 2019-06-03 15:43:55.600,114.9625,8627.3945,14.6529,-2.7385,0.7662,0.2944,2340.0,2340.0,-0.1706,0.6367,5.1183,27.4785 2019-06-03 15:43:55.620,114.9754,8628.3027,14.6557,-2.6873,1.0159,0.059,2340.0,2340.0,-0.1589,0.6367,5.1144,27.4711 2019-06-03 15:43:55.640,115.0526,8629.5508,14.6557,-2.6873,1.0909,0.3127,2340.0,2340.0,-0.156,0.6429,5.1064,27.4711 2019-06-03 15:43:55.660,115.0784,8629.4941,14.6557,-2.6873,0.9197,0.0314,2340.0,2340.0,-0.1589,0.6429,5.1091,27.4711 2019-06-03 15:43:55.680,114.9883,8629.5225,14.6696,-2.5789,1.1853,0.2789,2340.0,2340.0,-0.1501,0.6645,5.1064,27.4569 2019-06-03 15:43:55.700,114.9754,8629.4658,14.6875,-2.4682,1.3739,0.2943,2340.0,2340.0,-0.1443,0.6614,5.1183,27.4437 2019-06-03 15:43:55.720,114.8465,8629.4092,14.6875,-2.4682,0.5081,0.0995,2340.0,2340.0,-0.1472,0.6645,5.1183,27.4437 2019-06-03 15:43:55.740,114.8594,8629.4092,14.6875,-2.4682,1.4874,0.1955,2340.0,2340.0,-0.1443,0.6676,5.113,27.4437 2019-06-03 15:43:55.760,114.8336,8629.4375,14.6959,-2.3641,0.5891,0.2217,2340.0,2340.0,-0.1472,0.6676,5.1144,27.4293 2019-06-03 15:43:55.780,114.7949,8629.3809,14.6959,-2.3641,1.3073,0.0486,2340.0,2340.0,-0.1355,0.7108,5.1038,27.4293 2019-06-03 15:43:55.800,114.7691,8629.3809,14.7183,-2.2036,1.3373,0.0087,2340.0,2340.0,-0.1414,0.7108,5.113,27.4131 2019-06-03 15:43:55.820,114.782,8629.3809,14.7299,-2.1474,0.8084,0.3633,2340.0,2340.0,-0.1618,0.7108,5.1144,27.4074 2019-06-03 15:43:55.840,114.8594,8629.3809,14.7299,-2.1474,1.1375,-0.0373,2340.0,2340.0,-0.1531,0.7108,5.1144,27.4074 2019-06-03 15:43:55.860,114.8465,8629.4092,14.7299,-2.1474,1.0806,0.3878,2340.0,2340.0,-0.1589,0.7077,5.1117,27.4074 2019-06-03 15:43:55.880,114.7691,8629.9199,14.7415,-2.0415,0.7866,-0.0476,2340.0,2340.0,-0.1414,0.7108,5.1104,27.3954 2019-06-03 15:43:55.900,114.782,8630.7148,14.7464,-1.9375,0.6557,-0.021,2340.0,2340.0,-0.1297,0.7077,5.1117,27.3834 2019-06-03 15:43:55.920,114.6398,8631.5664,14.7464,-1.9375,1.3583,0.2865,2340.0,2340.0,-0.1443,0.7138,5.1077,27.3834 2019-06-03 15:43:55.940,114.6528,8632.8447,14.7464,-1.9375,0.6553,0.123,2340.0,2340.0,-0.1355,0.72,5.1064,27.3834 2019-06-03 15:43:55.960,114.6398,8633.7813,14.7664,-1.8213,1.4282,0.1846,2340.0,2340.0,-0.1385,0.72,5.1157,27.3739 2019-06-03 15:43:55.980,114.5621,8635.1719,14.7664,-1.8213,0.5258,0.2453,2340.0,2340.0,-0.1268,0.72,5.1117,27.3739 2019-06-03 15:43:56.000,114.5621,8636.0811,14.7882,-1.6581,0.6993,0.297,2340.0,2340.0,-0.1326,0.72,5.1038,27.3637 2019-06-03 15:43:56.020,114.5621,8636.9326,14.7908,-1.6042,1.2688,-0.0028,2340.0,2340.0,-0.1589,0.72,5.0958,27.3585 2019-06-03 15:43:56.040,114.6398,8638.0957,14.7908,-1.6042,0.8853,0.3997,2340.0,2340.0,-0.1472,0.7231,5.1038,27.3585 2019-06-03 15:43:56.060,114.6657,8638.0674,14.7908,-1.6042,1.054,-0.037,2340.0,2340.0,-0.1472,0.7231,5.1157,27.3585 2019-06-03 15:43:56.080,114.5621,8638.5791,14.8064,-1.4916,1.0225,0.3929,2340.0,2340.0,-0.1297,0.7231,5.1197,27.3515 2019-06-03 15:43:56.100,114.5881,8639.5156,14.8259,-1.3709,1.2426,0.3738,2340.0,2340.0,-0.1297,0.7293,5.0985,27.3457 2019-06-03 15:43:56.120,114.4325,8640.4814,14.8259,-1.3709,0.7185,0.0123,2340.0,2340.0,-0.1414,0.7293,5.0958,27.3457 2019-06-03 15:43:56.140,114.4455,8641.9014,14.8259,-1.3709,1.3136,0.3082,2340.0,2340.0,-0.1472,0.754,5.0919,27.3457 2019-06-03 15:43:56.160,114.4325,8642.8379,14.832,-1.2586,0.642,0.145,2340.0,2340.0,-0.1443,0.7509,5.1183,27.3402 2019-06-03 15:43:56.180,114.3676,8644.2578,14.832,-1.2586,1.2707,0.1882,2340.0,2340.0,-0.1472,0.754,5.1144,27.3402 2019-06-03 15:43:56.200,114.3806,8645.2236,14.853,-1.0875,1.4508,0.127,2340.0,2340.0,-0.1443,0.7509,5.1011,27.3375 2019-06-03 15:43:56.220,114.3935,8646.1035,14.8577,-1.0296,0.6257,0.3065,2340.0,2340.0,-0.1589,0.754,5.0919,27.3356 2019-06-03 15:43:56.240,114.4455,8647.4668,14.8577,-1.0296,1.2574,0.0109,2340.0,2340.0,-0.1385,0.754,5.1024,27.3356 2019-06-03 15:43:56.260,114.4584,8647.4668,14.8577,-1.0296,0.7991,0.3667,2340.0,2340.0,-0.1414,0.7571,5.0998,27.3356 2019-06-03 15:43:56.280,114.3546,8647.4668,14.8682,-0.9137,1.0621,0.0064,2340.0,2340.0,-0.1355,0.7571,5.1091,27.3333 2019-06-03 15:43:56.300,114.3806,8647.3809,14.8692,-0.8014,1.0795,-0.0119,2340.0,2340.0,-0.1385,0.7571,5.0945,27.3304 2019-06-03 15:43:56.320,114.2115,8647.3809,14.8692,-0.8014,1.1061,0.3694,2340.0,2340.0,-0.1472,0.7571,5.0985,27.3304 2019-06-03 15:43:56.340,114.2506,8647.3242,14.8692,-0.8014,0.7799,0.0248,2340.0,2340.0,-0.1472,0.7602,5.0958,27.3304 2019-06-03 15:43:56.360,114.2375,8647.2959,14.8804,-0.6854,1.3369,0.2706,2340.0,2340.0,-0.1355,0.7571,5.1038,27.3302 2019-06-03 15:43:56.380,114.1594,8647.3242,14.8804,-0.6854,0.781,0.1681,2340.0,2340.0,-0.1385,0.7633,5.1038,27.3302 2019-06-03 15:43:56.400,114.1594,8647.3525,14.8922,-0.5086,0.7814,0.2065,2400.0,2340.0,-0.1385,0.8003,5.0892,27.3318 2019-06-03 15:43:56.420,114.1724,8647.3242,14.8965,-0.449,1.2256,0.1317,2400.0,2340.0,-0.1472,0.7972,5.0919,27.3319 2019-06-03 15:43:56.440,114.2375,8647.3242,14.8965,-0.449,0.7899,0.2461,2400.0,2340.0,-0.1355,0.8003,5.0905,27.3319 2019-06-03 15:43:56.460,114.2506,8647.2676,14.8965,-0.449,1.2322,0.0576,2400.0,2340.0,-0.1355,0.8003,5.0998,27.3319 2019-06-03 15:43:56.480,114.1724,8647.665,14.901,-0.3331,0.8831,0.3079,2400.0,2340.0,-0.1472,0.7941,5.0998,27.3316 2019-06-03 15:43:56.500,114.1594,8648.5742,14.9121,-0.2112,1.0266,0.3238,2400.0,2340.0,-0.1472,0.8003,5.0879,27.3339 2019-06-03 15:43:56.520,114.029,8649.4834,14.9121,-0.2112,0.9574,0.0765,2400.0,2340.0,-0.1531,0.8003,5.0879,27.3339 2019-06-03 15:43:56.540,114.0421,8650.9033,14.9121,-0.2112,1.0392,0.2579,2400.0,2340.0,-0.1443,0.7972,5.0905,27.3339 2019-06-03 15:43:56.560,114.0421,8651.8682,14.9168,-0.0923,0.9907,0.0957,2400.0,2340.0,-0.1443,0.8003,5.0919,27.3364 2019-06-03 15:43:56.580,113.9506,8653.2031,14.9168,-0.0923,1.0743,0.1829,2400.0,2340.0,-0.1589,0.7972,5.0932,27.3364 2019-06-03 15:43:56.600,113.9637,8654.0557,14.9312,0.085,1.1708,0.175,2400.0,2340.0,-0.1443,0.7972,5.0866,27.3527 2019-06-03 15:43:56.620,113.9637,8654.9355,14.9336,0.1451,0.9438,0.2324,2400.0,2340.0,-0.1501,0.7941,5.0866,27.3553 2019-06-03 15:43:56.640,114.0421,8656.1289,14.9336,0.1451,0.9634,0.1242,2400.0,2340.0,-0.1326,0.7972,5.0892,27.3553 2019-06-03 15:43:56.660,114.0551,8656.1289,14.9336,0.1451,1.0588,0.2216,2400.0,2340.0,-0.1326,0.8312,5.0826,27.3553 2019-06-03 15:43:56.680,113.9506,8656.6113,14.938,0.2638,1.0044,0.0832,2400.0,2340.0,-0.1414,0.8281,5.0905,27.3617 2019-06-03 15:43:56.700,113.9637,8657.5205,14.9394,0.3809,0.8776,0.104,2400.0,2340.0,-0.1385,0.8281,5.0813,27.3683 2019-06-03 15:43:56.720,113.6625,8658.373,14.9394,0.3809,1.1893,0.2377,2400.0,2340.0,-0.1472,0.8251,5.0879,27.3683 2019-06-03 15:43:56.740,113.6494,8659.7363,14.9394,0.3809,0.8036,0.1784,2400.0,2340.0,-0.1443,0.8251,5.0932,27.3683 2019-06-03 15:43:56.760,113.6232,8660.6455,14.9466,0.5021,1.1627,0.1622,2400.0,2340.0,-0.1501,0.8281,5.0693,27.3768 2019-06-03 15:43:56.780,113.5443,8662.0654,14.9466,0.5021,0.9127,0.202,2400.0,2340.0,-0.156,0.822,5.0799,27.3768 2019-06-03 15:43:56.800,113.5443,8663.0313,14.9559,0.6832,0.9534,0.2142,2400.0,2340.0,-0.1355,0.8281,5.076,27.4005 2019-06-03 15:43:56.820,113.5312,8663.998,14.9555,0.741,0.9774,0.1092,2400.0,2340.0,-0.1268,0.8281,5.0773,27.406 2019-06-03 15:43:56.840,113.6232,8665.333,14.9555,0.741,1.0924,0.2622,2400.0,2340.0,-0.1268,0.8281,5.0839,27.406 2019-06-03 15:43:56.860,113.6232,8665.333,14.9555,0.741,0.9097,0.11,2400.0,2340.0,-0.1268,0.8281,5.0707,27.406 2019-06-03 15:43:56.880,113.5443,8665.3613,14.9614,0.8655,1.1394,0.2444,2400.0,2340.0,-0.1501,0.8281,5.068,27.418 2019-06-03 15:43:56.900,113.5706,8665.2188,14.966,0.9887,1.1978,0.2025,2400.0,2340.0,-0.1414,0.8251,5.0773,27.4315 2019-06-03 15:43:56.920,113.3996,8665.2764,14.966,0.9887,0.7433,0.1476,2400.0,2340.0,-0.1414,0.8312,5.0733,27.4315 2019-06-03 15:43:56.940,113.4259,8665.333,14.966,0.9887,1.2485,0.1883,2400.0,2340.0,-0.1355,0.8251,5.0852,27.4315 2019-06-03 15:43:56.960,113.4128,8665.333,14.9669,1.1079,0.8324,0.2297,2400.0,2340.0,-0.1297,0.8405,5.0614,27.4456 2019-06-03 15:43:56.980,113.3205,8665.333,14.9669,1.1079,1.1346,0.1235,2400.0,2340.0,-0.1355,0.8405,5.0627,27.4456 2019-06-03 15:43:57.000,113.3337,8665.333,14.9747,1.2925,1.0473,0.0729,2400.0,2340.0,-0.1326,0.8405,5.072,27.476 2019-06-03 15:43:57.020,113.3337,8665.3047,14.9783,1.3598,1.0506,0.2972,2400.0,2340.0,-0.1355,0.8374,5.0707,27.4875 2019-06-03 15:43:57.040,113.4259,8665.1338,14.9783,1.3598,0.8199,0.0385,2400.0,2340.0,-0.1531,0.8405,5.076,27.4875 2019-06-03 15:43:57.060,113.4391,8665.0771,14.9783,1.3598,1.146,0.3136,2400.0,2340.0,-0.1385,0.8436,5.0693,27.4875 2019-06-03 15:43:57.080,113.3469,8665.4746,14.9792,1.4815,0.7884,0.0879,2400.0,2340.0,-0.1443,0.8467,5.0588,27.5069 2019-06-03 15:43:57.100,113.3337,8666.2705,14.9764,1.6008,0.6309,0.097,2400.0,2340.0,-0.1297,0.8467,5.076,27.5273 2019-06-03 15:43:57.120,113.0298,8667.123,14.9764,1.6008,1.4637,0.2213,2400.0,2340.0,-0.1385,0.8622,5.0561,27.5273 2019-06-03 15:43:57.140,113.0165,8668.373,14.9764,1.6008,0.5798,0.1461,2400.0,2340.0,-0.1414,0.8591,5.0707,27.5273 2019-06-03 15:43:57.160,112.9901,8669.1689,14.9851,1.7303,1.2877,0.1435,2400.0,2340.0,-0.1472,0.8776,5.0548,27.5504 2019-06-03 15:43:57.180,112.937,8670.3906,14.9893,1.8562,0.7008,0.2722,2400.0,2340.0,-0.1472,0.8653,5.0601,27.5781 2019-06-03 15:43:57.200,112.9105,8671.3281,14.9867,1.9154,0.6934,0.3082,2400.0,2340.0,-0.1472,0.8498,5.072,27.59 2019-06-03 15:43:57.220,112.9238,8672.209,14.9818,1.9752,1.1594,0.0179,2400.0,2340.0,-0.1414,0.856,5.0601,27.6016 2019-06-03 15:43:57.240,113.0033,8673.459,14.9818,1.9752,0.963,0.3271,2400.0,2340.0,-0.1472,0.8498,5.0627,27.6016 2019-06-03 15:43:57.260,113.0033,8673.459,14.9818,1.9752,0.9748,0.0192,2400.0,2340.0,-0.1297,0.856,5.0574,27.6016 2019-06-03 15:43:57.280,112.9105,8673.8848,14.985,2.1019,1.1586,0.3321,2400.0,2340.0,-0.1385,0.856,5.0561,27.629 2019-06-03 15:43:57.300,112.9238,8674.7666,14.9912,2.2352,1.2662,0.3348,2400.0,2340.0,-0.1355,0.8529,5.0733,27.6586 2019-06-03 15:43:57.320,112.6314,8675.7041,14.9912,2.2352,0.5617,0.0771,2400.0,2340.0,-0.1355,0.856,5.0495,27.6586 2019-06-03 15:43:57.340,112.6048,8677.0684,14.9912,2.2352,1.3458,0.225,2400.0,2340.0,-0.1414,0.8529,5.0521,27.6586 2019-06-03 15:43:57.360,112.5781,8678.0625,14.9846,2.3578,0.5636,0.1933,2400.0,2340.0,-0.1385,0.8745,5.0495,27.6864 2019-06-03 15:43:57.380,112.4981,8679.3984,14.9846,2.3578,1.3975,0.1293,2400.0,2340.0,-0.1414,0.8807,5.0429,27.6864 2019-06-03 15:43:57.400,112.4981,8680.3359,14.9869,2.5525,1.3731,0.0746,2340.0,2340.0,-0.1531,0.8745,5.0535,27.7361 2019-06-03 15:43:57.420,112.5114,8681.1885,14.9878,2.6191,0.7559,0.3226,2340.0,2340.0,-0.1501,0.8807,5.0468,27.7524 2019-06-03 15:43:57.440,112.5914,8682.4678,14.9878,2.6191,1.0654,-0.0231,2340.0,2340.0,-0.1443,0.8683,5.0455,27.7524 2019-06-03 15:43:57.460,112.6048,8682.4395,14.9878,2.6191,0.9149,0.3879,2340.0,2340.0,-0.1297,0.8622,5.0442,27.7524 2019-06-03 15:43:57.480,112.5114,8682.4395,14.9866,2.7512,0.9844,-0.0607,2340.0,2340.0,-0.1297,0.8622,5.0323,27.7838 2019-06-03 15:43:57.500,112.5114,8682.4395,14.9761,2.8748,0.8173,-0.0441,2340.0,2340.0,-0.1472,0.8683,5.0349,27.8157 2019-06-03 15:43:57.520,112.3512,8682.4395,14.9761,2.8748,1.2992,0.3505,2340.0,2340.0,-0.1501,0.8653,5.031,27.8157 2019-06-03 15:43:57.540,112.3779,8682.5527,14.9761,2.8748,0.602,0.0511,2340.0,2340.0,-0.1648,0.8622,5.019,27.8157 2019-06-03 15:43:57.560,112.3779,8682.5811,14.9801,3.0096,1.4101,0.238,2340.0,2340.0,-0.1472,0.8683,5.0296,27.8522 2019-06-03 15:43:57.580,112.3111,8682.5527,14.9801,3.0096,0.5406,0.1737,2340.0,2340.0,-0.1501,0.8622,5.0098,27.8522 2019-06-03 15:43:57.600,112.2977,8682.5811,14.9731,3.2068,0.4974,0.234,2340.0,2340.0,-0.1472,0.8281,5.0111,27.9089 2019-06-03 15:43:57.620,112.3111,8682.5527,14.9692,3.2727,1.362,0.0623,2340.0,2340.0,-0.1443,0.8312,4.9714,27.9268 2019-06-03 15:43:57.640,112.3779,8682.6094,14.9692,3.2727,0.7611,0.3655,2340.0,2340.0,-0.1443,0.6984,4.9568,27.9268 2019-06-03 15:43:57.660,112.3779,8682.5527,14.9692,3.2727,1.1523,-0.0555,2340.0,2340.0,-0.1501,0.6028,4.9237,27.9268 2019-06-03 15:43:57.680,112.2977,8683.0078,14.9635,3.4037,0.872,0.4058,2340.0,2340.0,-0.1443,0.4673,4.8999,27.965 2019-06-03 15:43:57.700,112.2977,8683.832,14.9676,3.5456,1.007,0.4057,2340.0,2340.0,-0.1618,0.3443,4.8774,28.0052 2019-06-03 15:43:57.720,112.0027,8684.6846,14.9676,3.5456,0.8657,-0.0039,2340.0,2340.0,-0.1531,0.2921,4.8588,28.0052 2019-06-03 15:43:57.740,111.9893,8685.9922,14.9676,3.5456,1.2233,0.3558,2340.0,2340.0,-0.1706,0.1142,4.8602,28.0052 2019-06-03 15:43:57.760,111.9489,8686.9023,14.9586,3.6746,0.6294,0.0652,2340.0,2340.0,-0.1677,0.0407,4.8549,28.0439 2019-06-03 15:43:57.780,111.8817,8688.2949,14.9586,3.6746,1.2925,0.2265,2340.0,2340.0,-0.1706,-0.0968,4.8244,28.0439 2019-06-03 15:43:57.800,111.8817,8689.2324,14.9519,3.8594,1.3432,0.184,2340.0,2340.0,-0.1881,-0.1243,4.8125,28.1112 2019-06-03 15:43:57.820,111.8817,8690.1426,14.9429,3.9165,0.7015,0.2289,2340.0,2340.0,-0.1735,-0.1518,4.7688,28.1299 2019-06-03 15:43:57.840,111.9624,8691.3936,14.9429,3.9165,1.2429,0.1044,2340.0,2340.0,-0.1765,-0.2769,4.7542,28.1299 2019-06-03 15:43:57.860,112.0027,8691.3359,14.9429,3.9165,0.7625,0.2951,2340.0,2340.0,-0.1823,-0.3439,4.7436,28.1299 2019-06-03 15:43:57.880,111.9086,8691.7627,14.9329,4.0297,1.1179,0.0315,2340.0,2340.0,-0.1823,-0.4838,4.7238,28.1674 2019-06-03 15:43:57.900,111.8951,8692.7295,14.9098,4.1273,0.9659,0.0161,2340.0,2340.0,-0.2174,-0.5901,4.7225,28.204 2019-06-03 15:43:57.920,111.7335,8693.7246,14.9098,4.1273,1.027,0.3362,2340.0,2340.0,-0.2028,-0.7205,4.7225,28.204 2019-06-03 15:43:57.940,111.747,8695.0605,14.9098,4.1273,0.7936,0.0608,2340.0,2340.0,-0.2057,-0.893,4.7132,28.204 2019-06-03 15:43:57.960,111.747,8695.9707,14.8898,4.2187,1.071,0.2636,2340.0,2340.0,-0.2028,-1.0319,4.7331,28.2415 2019-06-03 15:43:57.980,111.666,8697.25,14.8898,4.2187,0.8332,0.1266,2340.0,2340.0,-0.2145,-1.1916,4.6986,28.2415 2019-06-03 15:43:58.000,111.6525,8698.1885,14.8572,4.3257,0.7463,0.1718,2340.0,2340.0,-0.2291,-1.327,4.6894,28.3 2019-06-03 15:43:58.020,111.7065,8699.041,14.8451,4.3553,1.0824,0.1556,2340.0,2340.0,-0.2291,-1.4981,4.6695,28.318 2019-06-03 15:43:58.040,111.7604,8700.3779,14.8451,4.3553,0.8875,0.2422,2340.0,2340.0,-0.232,-1.6299,4.6589,28.318 2019-06-03 15:43:58.060,111.7604,8700.3779,14.8451,4.3553,0.9371,0.0917,2340.0,2340.0,-0.232,-1.7136,4.6827,28.318 2019-06-03 15:43:58.080,111.666,8700.3486,14.8158,4.4003,0.8857,0.2529,2340.0,2340.0,-0.2349,-1.7525,4.6669,28.3529 2019-06-03 15:43:58.100,111.693,8700.292,14.7864,4.4323,1.0074,0.28,2340.0,2340.0,-0.2495,-1.857,4.6774,28.3892 2019-06-03 15:43:58.120,111.5038,8700.292,14.7864,4.4323,0.7792,0.1019,2340.0,2340.0,-0.2466,-1.8778,4.692,28.3892 2019-06-03 15:43:58.140,111.5714,8700.3203,14.7864,4.4323,1.027,0.216,2340.0,2340.0,-0.2525,-1.8808,4.6721,28.3892 2019-06-03 15:43:58.160,111.5444,8700.3779,14.7494,4.4403,0.8139,0.1526,2340.0,2340.0,-0.2934,-1.9315,4.6721,28.4233 2019-06-03 15:43:58.180,111.4632,8700.3779,14.7494,4.4403,1.0529,0.1513,2340.0,2340.0,-0.2934,-1.9345,4.6364,28.4233 2019-06-03 15:43:58.200,111.4632,8700.4063,14.6943,4.4228,1.0136,0.1339,2340.0,2340.0,-0.3051,-1.9315,4.643,28.476 2019-06-03 15:43:58.220,111.4768,8700.4063,14.6744,4.41,0.9434,0.2138,2340.0,2340.0,-0.3109,-1.9494,4.6536,28.4921 2019-06-03 15:43:58.240,111.5579,8700.4346,14.6744,4.41,0.9256,0.0965,2340.0,2340.0,-0.3138,-1.9434,4.6576,28.4921 2019-06-03 15:43:58.260,111.5579,8700.3779,14.6744,4.41,1.125,0.241,2340.0,2340.0,-0.3314,-1.9643,4.6907,28.4921 2019-06-03 15:43:58.280,111.4497,8700.832,14.6337,4.3691,0.7433,0.1228,2340.0,2340.0,-0.3255,-1.9643,4.6642,28.5258 2019-06-03 15:43:58.300,111.4768,8701.6289,14.5868,4.3159,0.7008,0.1337,2340.0,2340.0,-0.3431,-1.9643,4.6602,28.5577 2019-06-03 15:43:58.320,111.1783,8702.4814,14.5868,4.3159,1.0466,0.1759,2340.0,2340.0,-0.3518,-1.9822,4.6589,28.5577 2019-06-03 15:43:58.340,111.1512,8703.8184,14.5868,4.3159,0.8232,0.18,2340.0,2340.0,-0.3635,-1.9673,4.6298,28.5577 2019-06-03 15:43:58.360,111.0967,8704.7568,14.5446,4.2546,1.0255,0.1238,2340.0,2340.0,-0.3869,-1.9703,4.647,28.591 2019-06-03 15:43:58.380,111.0287,8706.0361,14.5446,4.2546,0.8628,0.2483,2340.0,2340.0,-0.3811,-1.9613,4.643,28.591 2019-06-03 15:43:58.400,111.0287,8706.8613,14.4795,4.1354,0.9286,0.2613,2340.0,2400.0,-0.3928,-1.9703,4.647,28.6488 2019-06-03 15:43:58.420,111.0423,8707.7432,14.4513,4.0858,0.8099,0.0698,2340.0,2400.0,-0.4074,-1.9673,4.6801,28.6638 2019-06-03 15:43:58.440,111.1103,8709.0225,14.4513,4.0858,1.1989,0.247,2340.0,2400.0,-0.4337,-1.9732,4.6536,28.6638 2019-06-03 15:43:58.460,111.1376,8708.9941,14.4513,4.0858,0.6294,0.1064,2340.0,2400.0,-0.4483,-2.0,4.6695,28.6638 2019-06-03 15:43:58.480,111.0287,8709.0225,14.4061,3.9961,1.2056,0.2388,2340.0,2400.0,-0.4658,-1.9971,4.6404,28.6966 2019-06-03 15:43:58.500,111.0423,8708.9658,14.3571,3.8952,1.2903,0.2006,2340.0,2400.0,-0.4775,-2.0,4.6298,28.7292 2019-06-03 15:43:58.520,110.7284,8708.9375,14.3571,3.8952,0.592,0.171,2340.0,2400.0,-0.5155,-2.003,4.6271,28.7292 2019-06-03 15:43:58.540,110.701,8708.9658,14.3571,3.8952,1.2041,0.1225,2340.0,2400.0,-0.5214,-1.9971,4.6152,28.7292 2019-06-03 15:43:58.560,110.6873,8708.9941,14.3013,3.7798,0.7226,0.2266,2340.0,2400.0,-0.5477,-1.9971,4.6351,28.7602 2019-06-03 15:43:58.580,110.6052,8709.0225,14.2564,3.6616,0.9822,0.0798,2340.0,2400.0,-0.5448,-1.9971,4.6496,28.805 2019-06-03 15:43:58.600,110.5915,8709.0508,14.2302,3.602,1.0466,0.0526,2340.0,2400.0,-0.5448,-1.9941,4.643,28.8212 2019-06-03 15:43:58.620,110.6189,8709.0225,14.2099,3.545,0.9234,0.307,2340.0,2400.0,-0.5477,-1.9941,4.6669,28.8367 2019-06-03 15:43:58.640,110.6873,8709.0508,14.2099,3.545,0.8313,0.0134,2340.0,2400.0,-0.5506,-1.9971,4.6218,28.8367 2019-06-03 15:43:58.660,110.701,8709.0225,14.2099,3.545,1.2574,0.3032,2340.0,2400.0,-0.5477,-1.9911,4.6245,28.8367 2019-06-03 15:43:58.680,110.6052,8709.5342,14.153,3.4147,0.5676,0.1055,2340.0,2400.0,-0.5477,-1.9851,4.5993,28.8675 2019-06-03 15:43:58.700,110.6052,8710.4443,14.0987,3.2788,0.629,0.1229,2340.0,2400.0,-0.5448,-1.9583,4.5927,28.8973 2019-06-03 15:43:58.720,110.4268,8711.3838,14.0987,3.2788,1.2799,0.2047,2340.0,2400.0,-0.5594,-1.9017,4.6139,28.8973 2019-06-03 15:43:58.740,110.468,8712.8057,14.0987,3.2788,0.4212,0.1891,2340.0,2400.0,-0.5506,-1.8092,4.6046,28.8973 2019-06-03 15:43:58.760,110.4543,8713.7441,14.0542,3.1525,1.2152,0.0585,2340.0,2400.0,-0.5506,-1.7794,4.6205,28.9294 2019-06-03 15:43:58.780,110.3719,8715.1094,14.0055,3.013,0.6675,0.3294,2340.0,2400.0,-0.5448,-1.6418,4.6285,28.965 2019-06-03 15:43:58.800,110.3856,8716.0479,13.976,2.9436,0.6775,0.3433,2340.0,2400.0,-0.5389,-1.588,4.6152,28.9803 2019-06-03 15:43:58.820,110.3719,8716.9297,13.9459,2.8736,0.9907,0.0015,2340.0,2400.0,-0.5418,-1.4171,4.647,28.9945 2019-06-03 15:43:58.840,110.4543,8718.2383,13.9459,2.8736,0.8964,0.3587,2340.0,2400.0,-0.5418,-1.2217,4.6311,28.9945 2019-06-03 15:43:58.860,110.4818,8718.2383,13.9459,2.8736,0.7781,-0.0321,2340.0,2400.0,-0.5389,-1.0138,4.6364,28.9945 2019-06-03 15:43:58.880,110.3719,8718.75,13.8971,2.7432,1.1346,0.3305,2340.0,2400.0,-0.5389,-0.769,4.647,29.0258 2019-06-03 15:43:58.900,110.3856,8719.6035,13.8506,2.6221,1.0906,0.3045,2340.0,2400.0,-0.5184,-0.5719,4.6232,29.057 2019-06-03 15:43:58.920,110.0688,8720.457,13.8506,2.6221,0.5643,0.1061,2340.0,2400.0,-0.5301,-0.3469,4.6404,29.057 2019-06-03 15:43:58.940,110.055,8721.8799,13.8506,2.6221,1.2174,0.1813,2340.0,2400.0,-0.5155,-0.0907,4.6338,29.057 2019-06-03 15:43:58.960,110.0412,8722.8184,13.7934,2.5014,0.6601,0.2139,2340.0,2400.0,-0.5097,0.0867,4.6218,29.0863 2019-06-03 15:43:58.980,109.9583,8724.1846,13.7468,2.3899,1.1353,0.0596,2340.0,2400.0,-0.4921,0.3013,4.643,29.1248 2019-06-03 15:43:59.000,109.9445,8725.123,13.7243,2.3467,1.1904,0.05,2340.0,2400.0,-0.4951,0.4704,4.6112,29.1408 2019-06-03 15:43:59.020,109.9583,8725.9766,13.7066,2.3087,0.7215,0.331,2340.0,2400.0,-0.4892,0.5412,4.6258,29.158 2019-06-03 15:43:59.040,110.0412,8727.2285,13.7066,2.3087,0.946,0.0279,2340.0,2400.0,-0.4834,0.6367,4.6245,29.158 2019-06-03 15:43:59.060,110.0412,8727.1719,13.7066,2.3087,0.9715,0.3415,2340.0,2400.0,-0.4775,0.6922,4.6033,29.158 2019-06-03 15:43:59.080,109.9445,8727.2002,13.6567,2.2391,0.8324,-0.0046,2340.0,2400.0,-0.4688,0.7231,4.6192,29.1899 2019-06-03 15:43:59.100,109.9583,8727.1143,13.6054,2.1846,0.7163,0.0253,2340.0,2400.0,-0.4629,0.7725,4.598,29.2225 2019-06-03 15:43:59.120,109.7922,8727.1143,13.6054,2.1846,1.1671,0.2274,2340.0,2400.0,-0.4658,0.7756,4.6165,29.2225 2019-06-03 15:43:59.140,109.8476,8727.1426,13.6054,2.1846,0.6841,0.1644,2340.0,2400.0,-0.4629,0.7756,4.6165,29.2225 2019-06-03 15:43:59.160,109.8199,8727.2002,13.5672,2.1567,1.1767,0.1649,2340.0,2400.0,-0.4541,0.7725,4.6165,29.2583 2019-06-03 15:43:59.180,109.7229,8727.2002,13.5256,2.1421,0.7496,0.1954,2340.0,2400.0,-0.4395,0.7756,4.6232,29.2933 2019-06-03 15:43:59.200,109.7368,8727.2002,13.5008,2.1368,0.6701,0.2128,2340.0,2400.0,-0.4161,0.7787,4.6126,29.3101 2019-06-03 15:43:59.220,109.7507,8727.1719,13.4768,2.1382,1.1353,0.036,2340.0,2400.0,-0.422,0.7725,4.6112,29.3274 2019-06-03 15:43:59.240,109.8199,8727.2002,13.4768,2.1382,0.8084,0.2931,2340.0,2400.0,-0.4191,0.7756,4.6099,29.3274 2019-06-03 15:43:59.260,109.8338,8727.1719,13.4768,2.1382,0.9493,0.0655,2340.0,2400.0,-0.4132,0.7756,4.5967,29.3274 2019-06-03 15:43:59.280,109.7368,8727.627,13.4375,2.1534,0.9293,0.2667,2340.0,2400.0,-0.4132,0.7725,4.6205,29.3604 2019-06-03 15:43:59.300,109.7368,8728.5371,13.4014,2.181,0.9671,0.2461,2340.0,2400.0,-0.4161,0.7756,4.602,29.3925 2019-06-03 15:43:59.320,109.7229,8729.4482,13.4014,2.181,0.8383,0.1034,2340.0,2400.0,-0.4161,0.7725,4.6179,29.3925 2019-06-03 15:43:59.340,109.8338,8730.8135,13.4014,2.181,1.0373,0.2018,2340.0,2400.0,-0.4249,0.7725,4.6271,29.3925 2019-06-03 15:43:59.360,109.8199,8731.7813,13.3597,2.2167,0.7895,0.217,2340.0,2400.0,-0.4249,0.7756,4.6073,29.424 2019-06-03 15:43:59.380,109.7507,8733.1758,13.3206,2.2644,0.8864,0.1082,2340.0,2400.0,-0.4278,0.7756,4.6192,29.4551 2019-06-03 15:43:59.400,109.7229,8734.1719,13.3021,2.2911,0.9142,0.0915,2400.0,2340.0,-0.4074,0.7756,4.6073,29.4697 2019-06-03 15:43:59.420,109.7507,8735.0537,13.2858,2.323,0.9404,0.2588,2400.0,2340.0,-0.3957,0.7756,4.6033,29.4835 2019-06-03 15:43:59.440,109.8338,8736.4482,13.2858,2.323,0.9119,0.0894,2400.0,2340.0,-0.384,0.7725,4.6205,29.4835 2019-06-03 15:43:59.460,109.8338,8736.3623,13.2858,2.323,1.0011,0.2253,2400.0,2340.0,-0.3781,0.7756,4.594,29.4835 2019-06-03 15:43:59.480,109.7368,8736.7607,13.2476,2.3859,0.6471,0.1344,2400.0,2340.0,-0.3781,0.7725,4.6139,29.5086 2019-06-03 15:43:59.500,109.7507,8737.5586,13.2091,2.4583,0.6934,0.1838,2400.0,2340.0,-0.3811,0.7725,4.594,29.5311 2019-06-03 15:43:59.520,109.5841,8738.3838,13.2091,2.4583,1.1009,0.1356,2400.0,2340.0,-0.3723,0.7602,4.5914,29.5311 2019-06-03 15:43:59.540,109.6119,8739.6641,13.2091,2.4583,0.7525,0.2196,2400.0,2340.0,-0.384,0.7324,4.5993,29.5311 2019-06-03 15:43:59.560,109.5841,8740.5186,13.1773,2.543,0.9415,0.0952,2400.0,2340.0,-0.3811,0.7355,4.5914,29.5536 2019-06-03 15:43:59.580,109.5146,8741.8271,13.1417,2.6269,0.9297,0.2699,2400.0,2340.0,-0.3928,0.6737,4.6139,29.5737 2019-06-03 15:43:59.600,109.5146,8742.6533,13.127,2.6727,1.0259,0.281,2400.0,2340.0,-0.3869,0.6521,4.598,29.5834 2019-06-03 15:43:59.620,109.5146,8743.4785,13.1049,2.7133,0.8406,0.0978,2400.0,2340.0,-0.3781,0.6521,4.5781,29.591 2019-06-03 15:43:59.640,109.598,8744.7021,13.1049,2.7133,1.0695,0.2374,2400.0,2340.0,-0.3635,0.6521,4.5914,29.591 2019-06-03 15:43:59.660,109.6119,8744.7021,13.1049,2.7133,0.588,0.1238,2400.0,2340.0,-0.3635,0.649,4.5702,29.591 2019-06-03 15:43:59.680,109.5146,8744.7588,13.0747,2.8109,1.2041,0.1918,2400.0,2340.0,-0.3577,0.6275,4.5967,29.6067 2019-06-03 15:43:59.700,109.5146,8744.7021,13.0415,2.9088,1.1816,0.1442,2400.0,2340.0,-0.3665,0.6305,4.5887,29.6188 2019-06-03 15:43:59.720,109.5007,8744.6738,13.0415,2.9088,0.6608,0.2717,2400.0,2340.0,-0.3723,0.6305,4.5821,29.6188 2019-06-03 15:43:59.740,109.598,8744.6455,13.0415,2.9088,1.044,0.0357,2400.0,2340.0,-0.3723,0.6213,4.5967,29.6188 2019-06-03 15:43:59.760,109.5841,8744.7305,13.0041,3.0055,0.7137,0.3268,2400.0,2340.0,-0.3635,0.6213,4.5821,29.6279 2019-06-03 15:43:59.780,109.5285,8744.7588,12.9736,3.1133,0.9589,-0.0131,2400.0,2340.0,-0.3694,0.6213,4.5914,29.6347 2019-06-03 15:43:59.800,109.5146,8744.7588,12.954,3.1634,0.8372,0.0086,2400.0,2340.0,-0.3694,0.6182,4.5901,29.6367 2019-06-03 15:43:59.820,109.5285,8744.7588,12.9444,3.2222,1.0817,0.3319,2400.0,2340.0,-0.3635,0.6213,4.5689,29.6411 2019-06-03 15:43:59.840,109.6119,8744.7871,12.9444,3.2222,0.6257,0.032,2400.0,2340.0,-0.3518,0.6182,4.594,29.6411 2019-06-03 15:43:59.860,109.598,8744.8447,12.9444,3.2222,1.2219,0.2607,2400.0,2340.0,-0.3489,0.6028,4.5702,29.6411 2019-06-03 15:43:59.880,109.5007,8745.3281,12.9062,3.3242,0.4267,0.1189,2400.0,2340.0,-0.3577,0.5997,4.5728,29.6428 2019-06-03 15:43:59.900,109.5285,8746.2676,12.8751,3.4323,0.4574,0.2018,2400.0,2340.0,-0.3606,0.5874,4.5795,29.6428 2019-06-03 15:43:59.920,109.5007,8747.1504,12.8751,3.4323,1.2825,0.1048,2400.0,2340.0,-0.3665,0.5936,4.5662,29.6428 2019-06-03 15:43:59.940,109.5841,8748.5449,12.8751,3.4323,0.5647,0.2885,2400.0,2340.0,-0.3606,0.5905,4.5927,29.6428 2019-06-03 15:43:59.960,109.6119,8749.542,12.8508,3.5462,1.2045,0.0015,2400.0,2340.0,-0.3548,0.5905,4.5742,29.6421 2019-06-03 15:43:59.980,109.5007,8750.9648,12.8146,3.6505,0.7581,0.3654,2400.0,2340.0,-0.3518,0.5843,4.5702,29.6308 2019-06-03 15:44:00.000,109.5007,8751.9043,12.8017,3.706,0.8402,0.3951,2400.0,2340.0,-0.346,0.5905,4.5702,29.6275 2019-06-03 15:44:00.020,109.5285,8752.7588,12.7762,3.7522,0.7625,-0.0446,2400.0,2340.0,-0.3431,0.5874,4.5609,29.6212 2019-06-03 15:44:00.040,109.5841,8754.0684,12.7762,3.7522,1.0233,0.3661,2400.0,2340.0,-0.3606,0.5905,4.5768,29.6212 2019-06-03 15:44:00.060,109.6119,8754.04,12.7762,3.7522,0.5784,-0.0067,2400.0,2340.0,-0.3577,0.5936,4.5702,29.6212 2019-06-03 15:44:00.080,109.5007,8754.0967,12.7534,3.8633,1.2618,0.2216,2400.0,2340.0,-0.3635,0.5843,4.5543,29.6118 2019-06-03 15:44:00.100,109.5285,8754.04,12.7261,3.97,1.2278,0.2024,2400.0,2340.0,-0.3577,0.5874,4.5662,29.5997 2019-06-03 15:44:00.120,109.3614,8754.04,12.7261,3.97,0.5199,0.2058,2400.0,2340.0,-0.3548,0.5781,4.5543,29.5997 2019-06-03 15:44:00.140,109.3893,8754.0684,12.7261,3.97,1.1797,0.0719,2400.0,2340.0,-0.3314,0.5781,4.5728,29.5997 2019-06-03 15:44:00.160,109.3754,8754.0684,12.686,4.0666,0.6475,0.3034,2400.0,2340.0,-0.3401,0.5781,4.5649,29.5823 2019-06-03 15:44:00.180,109.3196,8754.0967,12.6577,4.1711,1.2056,-0.0235,2400.0,2340.0,-0.3314,0.5812,4.553,29.5641 2019-06-03 15:44:00.200,109.2917,8754.1533,12.6416,4.2213,0.9837,-0.0226,2400.0,2340.0,-0.3255,0.5781,4.5649,29.5558 2019-06-03 15:44:00.220,109.3057,8754.1816,12.633,4.2728,0.8935,0.3462,2400.0,2340.0,-0.308,0.5781,4.5517,29.5475 2019-06-03 15:44:00.240,109.3893,8754.2393,12.633,4.2728,0.8901,-0.0012,2400.0,2340.0,-0.3138,0.5689,4.553,29.5475 2019-06-03 15:44:00.260,109.3893,8754.1816,12.633,4.2728,1.0351,0.2969,2400.0,2340.0,-0.3138,0.5597,4.5503,29.5475 2019-06-03 15:44:00.280,109.3057,8754.666,12.5945,4.3677,0.7574,0.0917,2400.0,2340.0,-0.3255,0.5535,4.5345,29.5259 2019-06-03 15:44:00.300,109.3196,8755.4922,12.5612,4.4647,0.7747,0.1165,2400.0,2340.0,-0.3226,0.5258,4.5636,29.506 2019-06-03 15:44:00.320,109.2778,8756.375,12.5612,4.4647,1.0832,0.1837,2400.0,2340.0,-0.3226,0.5319,4.5477,29.506 2019-06-03 15:44:00.340,109.3754,8757.7129,12.5612,4.4647,0.8043,0.2024,2400.0,2340.0,-0.3285,0.5258,4.5503,29.506 2019-06-03 15:44:00.360,109.3754,8758.6807,12.5347,4.5617,1.054,0.1041,2400.0,2340.0,-0.3197,0.5042,4.553,29.4863 2019-06-03 15:44:00.380,109.3057,8759.9336,12.4995,4.6529,0.7603,0.2682,2400.0,2340.0,-0.3314,0.5042,4.5331,29.4625 2019-06-03 15:44:00.400,109.2917,8760.8164,12.483,4.6977,0.8195,0.2581,2340.0,2340.0,-0.3109,0.4981,4.5649,29.4513 2019-06-03 15:44:00.420,109.3196,8761.6992,12.4608,4.737,0.8295,0.0918,2340.0,2340.0,-0.3138,0.4857,4.553,29.4389 2019-06-03 15:44:00.440,109.3754,8762.9238,12.4608,4.737,0.9985,0.2515,2340.0,2340.0,-0.3168,0.4888,4.5517,29.4389 2019-06-03 15:44:00.460,109.4032,8762.9238,12.4608,4.737,0.7651,0.1068,2340.0,2340.0,-0.3197,0.4857,4.5503,29.4389 2019-06-03 15:44:00.480,109.2917,8762.9521,12.4303,4.8263,1.0473,0.2142,2340.0,2340.0,-0.3168,0.4888,4.545,29.4166 2019-06-03 15:44:00.500,109.2917,8762.9238,12.3942,4.9111,1.017,0.1768,2340.0,2340.0,-0.3109,0.4919,4.5689,29.3952 2019-06-03 15:44:00.520,109.2778,8762.9238,12.3942,4.9111,0.8383,0.1934,2340.0,2340.0,-0.3138,0.4888,4.5623,29.3952 2019-06-03 15:44:00.540,109.3754,8762.8955,12.3942,4.9111,0.9471,0.1102,2340.0,2340.0,-0.3197,0.4857,4.553,29.3952 2019-06-03 15:44:00.560,109.3893,8762.8955,12.3546,4.9887,0.9297,0.234,2340.0,2340.0,-0.3168,0.4888,4.5676,29.3727 2019-06-03 15:44:00.580,109.2917,8762.8672,12.3187,5.069,0.8687,0.1132,2340.0,2340.0,-0.3226,0.4888,4.5503,29.3504 2019-06-03 15:44:00.600,109.2917,8762.8955,12.2969,5.1056,0.7359,0.0842,2340.0,2340.0,-0.3168,0.4857,4.5781,29.3407 2019-06-03 15:44:00.620,109.3057,8762.8379,12.2818,5.1444,1.0976,0.2162,2340.0,2340.0,-0.3197,0.4919,4.5715,29.3311 2019-06-03 15:44:00.640,109.3893,8762.8955,12.2818,5.1444,0.7666,0.1384,2340.0,2340.0,-0.3255,0.4919,4.5477,29.3311 2019-06-03 15:44:00.660,109.4032,8762.8672,12.2818,5.1444,1.1387,0.1817,2340.0,2340.0,-0.3226,0.4827,4.5662,29.3311 2019-06-03 15:44:00.680,109.2917,8763.3506,12.241,5.2154,0.5436,0.2159,2340.0,2340.0,-0.3138,0.4857,4.5543,29.3134 2019-06-03 15:44:00.700,109.3196,8764.2051,12.2028,5.2855,0.6978,0.2247,2340.0,2340.0,-0.3109,0.4827,4.5676,29.2977 2019-06-03 15:44:00.720,109.1241,8765.1162,12.2028,5.2855,0.9197,0.0631,2340.0,2340.0,-0.3138,0.4827,4.5636,29.2977 2019-06-03 15:44:00.740,109.166,8766.5127,12.2028,5.2855,0.9145,0.2696,2340.0,2340.0,-0.3255,0.4857,4.5384,29.2977 2019-06-03 15:44:00.760,109.1521,8767.5088,12.1655,5.355,0.889,0.0881,2340.0,2340.0,-0.3197,0.4888,4.5517,29.2846 2019-06-03 15:44:00.780,109.0821,8768.9326,12.1234,5.4146,1.027,0.2878,2340.0,2340.0,-0.3168,0.4857,4.5318,29.2756 2019-06-03 15:44:00.800,109.0821,8769.8447,12.1053,5.4505,1.1438,0.2739,2340.0,2340.0,-0.3168,0.4857,4.5384,29.2715 2019-06-03 15:44:00.820,109.0961,8770.7559,12.0807,5.4758,0.5325,0.0774,2340.0,2340.0,-0.3138,0.4827,4.5411,29.2658 2019-06-03 15:44:00.840,109.18,8772.0088,12.0807,5.4758,1.2966,0.2068,2340.0,2340.0,-0.3109,0.4888,4.5384,29.2658 2019-06-03 15:44:00.860,109.166,8771.9521,12.0807,5.4758,0.5369,0.1914,2340.0,2340.0,-0.3226,0.4827,4.5649,29.2658 2019-06-03 15:44:00.880,109.0821,8772.0664,12.0416,5.544,1.1749,0.1069,2340.0,2340.0,-0.3255,0.4857,4.5517,29.2594 2019-06-03 15:44:00.900,109.0681,8772.0664,11.9956,5.5997,1.2429,0.0628,2340.0,2340.0,-0.3285,0.4827,4.5345,29.2542 2019-06-03 15:44:00.920,108.914,8772.0088,11.9956,5.5997,0.7037,0.3207,2340.0,2340.0,-0.3226,0.4796,4.5199,29.2542 2019-06-03 15:44:00.940,108.9701,8772.0371,11.9956,5.5997,1.0414,-0.0227,2340.0,2340.0,-0.3168,0.4765,4.4921,29.2542 2019-06-03 15:44:00.960,108.9281,8772.123,11.9445,5.6521,0.9101,0.3939,2340.0,2340.0,-0.3051,0.4334,4.5027,29.2498 2019-06-03 15:44:00.980,108.872,8772.0947,11.9079,5.7119,0.6856,-0.0294,2340.0,2340.0,-0.2934,0.4334,4.4934,29.2522 2019-06-03 15:44:01.000,108.8579,8772.0947,11.8758,5.7354,0.7344,-0.0172,2340.0,2340.0,-0.2963,0.4334,4.4735,29.2511 2019-06-03 15:44:01.020,108.8579,8772.0947,11.8628,5.7694,1.2219,0.3503,2340.0,2340.0,-0.3051,0.4211,4.455,29.254 2019-06-03 15:44:01.040,108.9421,8772.0947,11.8628,5.7694,0.4608,0.0804,2340.0,2340.0,-0.308,0.4242,4.4206,29.254 2019-06-03 15:44:01.060,108.9561,8772.0371,11.8628,5.7694,1.2777,0.2113,2340.0,2340.0,-0.3109,0.4181,4.4259,29.254 2019-06-03 15:44:01.080,108.8439,8772.5498,11.8038,5.8172,0.4097,0.1887,2340.0,2340.0,-0.2905,0.4211,4.4087,29.2573 2019-06-03 15:44:01.100,108.886,8773.376,11.7573,5.8712,0.4304,0.2283,2340.0,2340.0,-0.2905,0.4273,4.3703,29.266 2019-06-03 15:44:01.120,108.8298,8774.2021,11.7573,5.8712,1.2341,0.0749,2340.0,2340.0,-0.2934,0.4211,4.3425,29.266 2019-06-03 15:44:01.140,108.9561,8775.5127,11.7573,5.8712,0.6176,0.3405,2340.0,2340.0,-0.2934,0.4211,4.2802,29.266 2019-06-03 15:44:01.160,108.9421,8776.3955,11.7123,5.926,1.0991,-0.049,2340.0,2340.0,-0.2817,0.4211,4.271,29.278 2019-06-03 15:44:01.180,108.8439,8777.7637,11.652,5.9729,0.7326,0.3982,2340.0,2340.0,-0.2875,0.3996,4.2445,29.2903 2019-06-03 15:44:01.200,108.8439,8778.6748,11.6269,6.0,0.862,0.3805,2340.0,2340.0,-0.2963,0.4088,4.1995,29.2992 2019-06-03 15:44:01.220,108.872,8779.5576,11.5891,6.0184,0.7696,-0.0255,2340.0,2340.0,-0.2963,0.4088,4.1677,29.3056 2019-06-03 15:44:01.240,108.9421,8780.7832,11.5891,6.0184,1.0869,0.3462,2340.0,2340.0,-0.2934,0.4027,4.1346,29.3056 2019-06-03 15:44:01.260,108.9701,8780.6973,11.5891,6.0184,0.6579,0.0177,2340.0,2340.0,-0.2963,0.4088,4.1094,29.3056 2019-06-03 15:44:01.280,108.8579,8780.6973,11.5312,6.0692,1.2122,0.256,2340.0,2340.0,-0.2934,0.4058,4.1055,29.325 2019-06-03 15:44:01.300,108.8579,8780.6406,11.4638,6.1157,1.2485,0.1829,2340.0,2340.0,-0.308,0.3996,4.0816,29.3464 2019-06-03 15:44:01.320,108.7034,8780.6689,11.4638,6.1157,0.598,0.2113,2340.0,2340.0,-0.2934,0.3996,4.0869,29.3464 2019-06-03 15:44:01.340,108.7315,8780.6973,11.4638,6.1157,1.1516,0.1203,2340.0,2340.0,-0.2905,0.3781,4.0512,29.3464 2019-06-03 15:44:01.360,108.7174,8780.6973,11.3826,6.1556,0.6464,0.2505,2340.0,2340.0,-0.2788,0.3719,4.0472,29.3681 2019-06-03 15:44:01.380,108.633,8780.6973,11.307,6.2002,1.0517,0.0217,2340.0,2340.0,-0.2846,0.3719,4.0406,29.3928 2019-06-03 15:44:01.400,108.633,8780.6406,11.2652,6.2217,1.0499,0.0179,2400.0,2340.0,-0.2963,0.3719,4.0181,29.4063 2019-06-03 15:44:01.420,108.633,8780.583,11.2308,6.2475,0.8065,0.3506,2400.0,2340.0,-0.2963,0.3719,4.026,29.4229 2019-06-03 15:44:01.440,108.7174,8780.6123,11.2308,6.2475,0.8358,0.055,2400.0,2340.0,-0.2992,0.3535,4.0128,29.4229 2019-06-03 15:44:01.460,108.7174,8780.6689,11.2308,6.2475,0.8676,0.2721,2400.0,2340.0,-0.2846,0.3535,4.0181,29.4229 2019-06-03 15:44:01.480,108.619,8780.6406,11.1382,6.285,0.7115,0.046,2400.0,2340.0,-0.3021,0.3504,4.0075,29.4509 2019-06-03 15:44:01.500,108.633,8780.5547,11.0445,6.3261,0.6893,0.086,2400.0,2340.0,-0.308,0.3412,3.9744,29.4832 2019-06-03 15:44:01.520,108.4921,8780.5547,11.0445,6.3261,1.0111,0.2097,2400.0,2340.0,-0.2992,0.3381,3.9943,29.4832 2019-06-03 15:44:01.540,108.5203,8780.5547,11.0445,6.3261,0.7023,0.1674,2400.0,2340.0,-0.2934,0.3197,3.9876,29.4832 2019-06-03 15:44:01.560,108.4921,8780.6689,10.9535,6.3672,1.0259,0.1391,2400.0,2340.0,-0.2875,0.3228,3.9651,29.5204 2019-06-03 15:44:01.580,108.4357,8780.7549,10.8531,6.408,0.777,0.2024,2400.0,2340.0,-0.2875,0.3228,3.9612,29.5552 2019-06-03 15:44:01.600,108.4074,8780.8682,10.8004,6.4259,0.7292,0.2115,2400.0,2340.0,-0.2963,0.3228,3.9439,29.5742 2019-06-03 15:44:01.620,108.4216,8780.8398,10.7471,6.444,0.8583,0.0762,2400.0,2340.0,-0.2905,0.3228,3.9559,29.5943 2019-06-03 15:44:01.640,108.5062,8780.8965,10.7471,6.444,0.801,0.2497,2400.0,2340.0,-0.2875,0.3197,3.9492,29.5943 2019-06-03 15:44:01.660,108.5344,8780.8398,10.7471,6.444,0.808,0.0924,2400.0,2340.0,-0.2788,0.3228,3.936,29.5943 2019-06-03 15:44:01.680,108.4216,8781.2959,10.6423,6.4837,0.9208,0.2145,2400.0,2340.0,-0.2875,0.3228,3.9188,29.6382 2019-06-03 15:44:01.700,108.4357,8782.2363,10.536,6.5217,0.9086,0.1896,2400.0,2340.0,-0.2934,0.3197,3.9016,29.6826 2019-06-03 15:44:01.720,108.4074,8783.1475,10.536,6.5217,0.8265,0.1396,2400.0,2340.0,-0.2934,0.3197,3.9148,29.6826 2019-06-03 15:44:01.740,108.5062,8784.4873,10.536,6.5217,0.8465,0.1643,2400.0,2340.0,-0.2963,0.3136,3.9108,29.6826 2019-06-03 15:44:01.760,108.4921,8785.4561,10.4227,6.5583,0.8543,0.1912,2400.0,2340.0,-0.2963,0.3136,3.887,29.7287 2019-06-03 15:44:01.780,108.4216,8786.8232,10.3118,6.6001,0.7004,0.1113,2400.0,2340.0,-0.2963,0.3166,3.8817,29.7781 2019-06-03 15:44:01.800,108.4357,8787.707,10.2526,6.6177,0.6645,0.1316,2400.0,2340.0,-0.2992,0.2982,3.8751,29.8026 2019-06-03 15:44:01.820,108.4216,8788.6182,10.1959,6.6422,0.933,0.1639,2400.0,2340.0,-0.2788,0.2982,3.8857,29.8286 2019-06-03 15:44:01.840,108.4921,8789.958,10.1959,6.6422,0.6128,0.1366,2400.0,2340.0,-0.2934,0.2829,3.8817,29.8286 2019-06-03 15:44:01.860,108.5203,8789.9004,10.1959,6.6422,1.0784,0.1769,2400.0,2340.0,-0.2905,0.2706,3.8738,29.8286 2019-06-03 15:44:01.880,108.4074,8789.9287,10.0779,6.6799,0.5177,0.1898,2400.0,2340.0,-0.308,0.2583,3.8685,29.8804 2019-06-03 15:44:01.900,108.4216,8789.8438,9.9606,6.7232,0.548,0.2163,2400.0,2340.0,-0.3021,0.2276,3.8658,29.935 2019-06-03 15:44:01.920,108.252,8789.8721,9.9606,6.7232,1.0281,0.0686,2400.0,2340.0,-0.2963,0.1816,3.8672,29.935 2019-06-03 15:44:01.940,108.2944,8789.8154,9.9606,6.7232,0.6782,0.2533,2400.0,2340.0,-0.2875,0.1418,3.8698,29.935 2019-06-03 15:44:01.960,108.2803,8789.8438,9.845,6.7724,0.9142,0.0356,2400.0,2340.0,-0.2875,0.1357,3.8513,29.9919 2019-06-03 15:44:01.980,108.1953,8789.8438,9.7208,6.8133,0.9275,0.3016,2400.0,2340.0,-0.2905,0.1203,3.846,30.0465 2019-06-03 15:44:02.000,108.1953,8789.8721,9.6646,6.8366,0.956,0.3055,2400.0,2340.0,-0.2875,0.0744,3.846,30.0764 2019-06-03 15:44:02.020,108.1953,8789.9287,9.5944,6.8527,0.6401,0.0265,2400.0,2340.0,-0.2934,0.0744,3.8566,30.1042 2019-06-03 15:44:02.040,108.2803,8789.958,9.5944,6.8527,1.1276,0.2647,2400.0,2340.0,-0.3021,0.0469,3.8579,30.1042 2019-06-03 15:44:02.060,108.2803,8789.9287,9.5944,6.8527,0.3402,0.0957,2400.0,2340.0,-0.308,0.0499,3.8446,30.1042 2019-06-03 15:44:02.080,108.1953,8789.8721,9.4789,6.9028,1.1878,0.1913,2400.0,2340.0,-0.3021,0.0469,3.8407,30.1671 2019-06-03 15:44:02.100,108.1953,8789.7861,9.3579,6.948,1.1379,0.1418,2400.0,2340.0,-0.2992,0.0438,3.8394,30.2301 2019-06-03 15:44:02.120,108.1812,8789.8438,9.3579,6.948,0.4485,0.2366,2400.0,2340.0,-0.2934,0.0469,3.842,30.2301 2019-06-03 15:44:02.140,108.2803,8789.8438,9.3579,6.948,1.1967,0.0122,2400.0,2340.0,-0.2992,0.0438,3.8499,30.2301 2019-06-03 15:44:02.160,108.2661,8789.9287,9.2282,6.9828,0.49,0.3253,2400.0,2340.0,-0.3168,0.0132,3.8274,30.2922 2019-06-03 15:44:02.180,108.1812,8789.9004,9.1088,7.0271,0.946,-0.0655,2400.0,2340.0,-0.2992,0.0163,3.8341,30.3558 2019-06-03 15:44:02.200,108.2095,8789.9004,9.0438,7.047,0.8772,-0.0914,2400.0,2340.0,-0.3021,-0.0082,3.8407,30.3879 2019-06-03 15:44:02.220,108.1953,8789.8154,8.991,7.0754,0.7182,0.3948,2400.0,2340.0,-0.2934,-0.0052,3.8354,30.4229 2019-06-03 15:44:02.240,108.2661,8789.8438,8.991,7.0754,0.5821,-0.0848,2400.0,2340.0,-0.2963,-0.0113,3.838,30.4229 2019-06-03 15:44:02.260,108.2944,8789.8438,8.991,7.0754,1.0037,0.3378,2400.0,2340.0,-0.3138,-0.0143,3.8182,30.4229 2019-06-03 15:44:02.280,108.1812,8790.3848,8.8614,7.1121,0.4681,0.0039,2400.0,2340.0,-0.3138,-0.0174,3.8261,30.4865 2019-06-03 15:44:02.300,108.1953,8791.2969,8.7365,7.1487,0.3872,0.0455,2400.0,2340.0,-0.3138,-0.048,3.8327,30.5512 2019-06-03 15:44:02.320,108.1812,8792.209,8.7365,7.1487,1.1065,0.2089,2400.0,2340.0,-0.3051,-0.048,3.8314,30.5512 2019-06-03 15:44:02.340,108.2944,8793.4629,8.7365,7.1487,0.3517,0.1699,2400.0,2340.0,-0.3051,-0.0755,3.8235,30.5512 2019-06-03 15:44:02.360,108.2803,8794.3467,8.6222,7.1967,1.1819,0.0586,2400.0,2340.0,-0.3021,-0.0968,3.8142,30.6191 2019-06-03 15:44:02.380,108.2095,8795.7432,8.5004,7.2388,0.4667,0.2896,2400.0,2340.0,-0.2934,-0.0938,3.8195,30.6854 2019-06-03 15:44:02.400,108.1812,8796.6836,8.4382,7.254,0.3912,0.3205,2340.0,2340.0,-0.2963,-0.1243,3.8314,30.7175 2019-06-03 15:44:02.420,108.2095,8797.5957,8.3696,7.2718,1.0074,-0.047,2340.0,2340.0,-0.2934,-0.1213,3.8314,30.7485 2019-06-03 15:44:02.440,108.2803,8798.792,8.3696,7.2718,0.6612,0.3793,2340.0,2340.0,-0.2963,-0.1213,3.8394,30.7485 2019-06-03 15:44:02.460,108.2661,8798.8203,8.3696,7.2718,0.7274,-0.0579,2340.0,2340.0,-0.3168,-0.1243,3.8288,30.7485 2019-06-03 15:44:02.480,108.1953,8798.7354,8.2534,7.3114,0.8099,0.3484,2340.0,2340.0,-0.3109,-0.0907,3.8473,30.8148 2019-06-03 15:44:02.500,108.2237,8798.6787,8.1409,7.3544,0.8594,0.3498,2340.0,2340.0,-0.3168,-0.0938,3.8446,30.8808 2019-06-03 15:44:02.520,108.167,8798.707,8.1409,7.3544,0.5939,0.0164,2340.0,2340.0,-0.308,-0.0907,3.838,30.8808 2019-06-03 15:44:02.540,108.2803,8798.7637,8.1409,7.3544,1.0203,0.2602,2340.0,2340.0,-0.2963,-0.0877,3.8446,30.8808 2019-06-03 15:44:02.560,108.2803,8798.792,8.0161,7.3928,0.4755,0.1001,2340.0,2340.0,-0.2992,-0.0877,3.8499,30.9435 2019-06-03 15:44:02.580,108.1812,8798.8203,7.8935,7.4279,1.0787,0.1549,2340.0,2340.0,-0.3021,-0.0907,3.8579,31.0064 2019-06-03 15:44:02.600,108.1953,8798.8496,7.8424,7.4516,1.0824,0.1702,2340.0,2340.0,-0.3051,-0.0877,3.8698,31.0392 2019-06-03 15:44:02.620,108.2095,8798.7637,7.7828,7.4693,0.4289,0.2067,2340.0,2340.0,-0.3138,-0.0907,3.8632,31.07 2019-06-03 15:44:02.640,108.2803,8798.7637,7.7828,7.4693,0.9744,0.0307,2340.0,2340.0,-0.308,-0.0907,3.8698,31.07 2019-06-03 15:44:02.660,108.2944,8798.7637,7.7828,7.4693,0.5484,0.2932,2340.0,2340.0,-0.3138,-0.0877,3.8698,31.07 2019-06-03 15:44:02.680,108.2095,8798.792,7.6703,7.5081,0.987,-0.025,2340.0,2340.0,-0.2992,-0.0938,3.8777,31.133 2019-06-03 15:44:02.700,108.1953,8798.707,7.5505,7.5452,0.8805,-0.0098,2340.0,2340.0,-0.3051,-0.0907,3.8791,31.1922 2019-06-03 15:44:02.720,108.3368,8798.7354,7.5505,7.5452,0.6638,0.3191,2340.0,2340.0,-0.3051,-0.0938,3.8817,31.1922 2019-06-03 15:44:02.740,108.4921,8798.8496,7.5505,7.5452,0.7126,-0.0074,2340.0,2340.0,-0.3021,-0.0938,3.8897,31.1922 2019-06-03 15:44:02.760,108.5203,8798.8496,7.4391,7.5864,0.8727,0.285,2340.0,2340.0,-0.3021,-0.0938,3.895,31.2517 2019-06-03 15:44:02.780,108.4357,8798.8203,7.3362,7.6275,0.7152,0.0324,2340.0,2340.0,-0.3051,-0.0877,3.8976,31.312 2019-06-03 15:44:02.800,108.4216,8798.8779,7.2766,7.6433,0.6061,0.0902,2340.0,2340.0,-0.3021,-0.0877,3.9135,31.3389 2019-06-03 15:44:02.820,108.4357,8798.8779,7.2273,7.666,0.855,0.1628,2340.0,2340.0,-0.3226,-0.0877,3.9029,31.3682 2019-06-03 15:44:02.840,108.5062,8798.8779,7.2273,7.666,0.6398,0.1589,2340.0,2340.0,-0.3051,-0.0694,3.9082,31.3682 2019-06-03 15:44:02.860,108.5062,8798.9346,7.2273,7.666,0.9378,0.1285,2340.0,2340.0,-0.3138,-0.0755,3.9135,31.3682 2019-06-03 15:44:02.880,108.4074,8798.9629,7.1183,7.7038,0.6065,0.1991,2340.0,2340.0,-0.3138,-0.0755,3.9188,31.4226 2019-06-03 15:44:02.900,108.4357,8798.792,7.0173,7.7456,0.6305,0.2174,2340.0,2340.0,-0.308,-0.0694,3.9254,31.4774 2019-06-03 15:44:02.920,108.5626,8798.707,7.0173,7.7456,0.7581,0.0492,2340.0,2340.0,-0.3138,-0.0724,3.9148,31.4774 2019-06-03 15:44:02.940,108.7034,8798.792,7.0173,7.7456,0.7296,0.2406,2340.0,2340.0,-0.3109,-0.0694,3.9228,31.4774 2019-06-03 15:44:02.960,108.7174,8798.8496,6.9162,7.7857,0.8191,0.0686,2340.0,2340.0,-0.3109,-0.0755,3.9201,31.5306 2019-06-03 15:44:02.980,108.633,8798.8779,6.8144,7.8218,0.7747,0.2194,2340.0,2340.0,-0.3051,-0.0755,3.9281,31.5852 2019-06-03 15:44:03.000,108.633,8798.9063,6.7686,7.8437,0.8631,0.2153,2340.0,2340.0,-0.3021,-0.0785,3.9267,31.6116 2019-06-03 15:44:03.020,108.6471,8798.8779,6.7163,7.8603,0.7074,0.0773,2340.0,2340.0,-0.308,-0.0755,3.9201,31.6348 2019-06-03 15:44:03.040,108.7174,8798.8203,6.7163,7.8603,0.8624,0.2262,2340.0,2340.0,-0.308,-0.0755,3.9122,31.6348 2019-06-03 15:44:03.060,108.7315,8798.792,6.7163,7.8603,0.5809,0.1126,2340.0,2340.0,-0.3109,-0.0907,3.9228,31.6348 2019-06-03 15:44:03.080,108.619,8798.8779,6.6224,7.9076,0.8702,0.1445,2340.0,2340.0,-0.3109,-0.0907,3.9214,31.6836 2019-06-03 15:44:03.100,108.633,8798.8203,6.5233,7.949,0.8568,0.1275,2340.0,2340.0,-0.3021,-0.0999,3.932,31.7308 2019-06-03 15:44:03.120,108.7737,8798.8203,6.5233,7.949,0.7718,0.1686,2340.0,2340.0,-0.3109,-0.1396,3.9214,31.7308 2019-06-03 15:44:03.140,108.9281,8798.8779,6.5233,7.949,0.9415,0.1118,2340.0,2340.0,-0.308,-0.1396,3.932,31.7308 2019-06-03 15:44:03.160,108.9281,8798.9346,6.4251,7.9894,0.6446,0.2113,2340.0,2340.0,-0.3109,-0.1884,3.9373,31.7758 2019-06-03 15:44:03.180,108.872,8798.8203,6.3341,8.0312,0.7577,0.0712,2340.0,2340.0,-0.3138,-0.1823,3.9387,31.8204 2019-06-03 15:44:03.200,108.8579,8798.8203,6.2855,8.0512,0.6812,0.0427,2340.0,2340.0,-0.3138,-0.2098,3.94,31.8414 2019-06-03 15:44:03.220,108.8579,8798.8203,6.2428,8.0739,0.8476,0.221,2340.0,2340.0,-0.3138,-0.2647,3.9387,31.8637 2019-06-03 15:44:03.240,108.9421,8798.792,6.2428,8.0739,0.757,0.081,2340.0,2340.0,-0.3109,-0.2647,3.94,31.8637 2019-06-03 15:44:03.260,108.9561,8798.8203,6.2428,8.0739,0.9223,0.2117,2340.0,2340.0,-0.3255,-0.3469,3.9466,31.8637 2019-06-03 15:44:03.280,108.8439,8799.3906,6.1491,8.1101,0.4855,0.1212,2340.0,2340.0,-0.3314,-0.3469,3.9426,31.9041 2019-06-03 15:44:03.300,108.872,8800.2744,6.056,8.1469,0.5665,0.1324,2340.0,2340.0,-0.3255,-0.3469,3.9519,31.9426 2019-06-03 15:44:03.320,109.0121,8801.0723,6.056,8.1469,0.9774,0.1144,2340.0,2340.0,-0.3285,-0.3865,3.9572,31.9426 2019-06-03 15:44:03.340,109.166,8802.4121,6.056,8.1469,0.5477,0.225,2340.0,2340.0,-0.3255,-0.3804,3.9651,31.9426 2019-06-03 15:44:03.360,109.166,8803.3535,5.9705,8.1875,1.1087,0.0575,2340.0,2340.0,-0.3372,-0.4625,3.9651,31.9815 2019-06-03 15:44:03.380,109.0821,8804.7217,5.8815,8.2182,0.3949,0.3086,2340.0,2340.0,-0.3372,-0.4656,3.9625,32.0186 2019-06-03 15:44:03.400,109.0681,8805.6904,5.8373,8.2333,0.5247,0.3242,2400.0,2400.0,-0.3401,-0.4838,3.9625,32.0372 2019-06-03 15:44:03.420,109.0821,8806.6025,5.7883,8.246,0.9474,-0.0689,2400.0,2400.0,-0.3431,-0.5992,3.9718,32.0525 2019-06-03 15:44:03.440,109.166,8807.7148,5.7883,8.246,0.6423,0.4015,2400.0,2400.0,-0.3431,-0.7356,3.9691,32.0525 2019-06-03 15:44:03.460,109.194,8807.6006,5.7883,8.246,0.7681,-0.1047,2400.0,2400.0,-0.3285,-0.9081,3.9744,32.0525 2019-06-03 15:44:03.480,109.0821,8807.6289,5.7058,8.272,0.7089,0.4,2400.0,2400.0,-0.3343,-1.0108,3.9691,32.0868 2019-06-03 15:44:03.500,109.0821,8807.5723,5.6274,8.301,0.8927,0.4119,2400.0,2400.0,-0.3255,-1.1163,3.9757,32.12 2019-06-03 15:44:03.520,109.2219,8807.6006,5.6274,8.301,0.5998,-0.065,2400.0,2400.0,-0.3431,-1.2608,3.9744,32.12 2019-06-03 15:44:03.540,109.3754,8807.6289,5.6274,8.301,0.9482,0.3163,2400.0,2400.0,-0.3431,-1.2849,3.9784,32.12 2019-06-03 15:44:03.560,109.3754,8807.6855,5.5375,8.3108,0.4289,0.025,2400.0,2400.0,-0.3431,-1.375,3.9837,32.1482 2019-06-03 15:44:03.580,109.3057,8807.5723,5.4485,8.3116,1.1845,0.2294,2400.0,2400.0,-0.3431,-1.3961,3.9757,32.1782 2019-06-03 15:44:03.600,109.3057,8807.5723,5.4175,8.3187,1.1986,0.1856,2400.0,2400.0,-0.3431,-1.3991,3.9797,32.1946 2019-06-03 15:44:03.620,109.3196,8807.5723,5.3727,8.3103,0.2988,0.2037,2400.0,2400.0,-0.3489,-1.4141,3.985,32.2057 2019-06-03 15:44:03.640,109.3893,8807.6006,5.3727,8.3103,1.2355,0.0346,2400.0,2400.0,-0.3489,-1.4291,3.9863,32.2057 2019-06-03 15:44:03.660,109.4032,8807.5723,5.3727,8.3103,0.2263,0.3125,2400.0,2400.0,-0.346,-1.4291,3.9916,32.2057 2019-06-03 15:44:03.680,109.2917,8807.5723,5.2952,8.3053,1.1645,-0.0716,2400.0,2400.0,-0.3518,-1.4291,3.9837,32.2313 2019-06-03 15:44:03.700,109.3335,8807.543,5.2042,8.2794,1.1309,-0.0733,2400.0,2400.0,-0.3431,-1.4261,3.9837,32.2507 2019-06-03 15:44:03.720,109.5841,8807.5146,5.2042,8.2794,0.527,0.4398,2400.0,2400.0,-0.3489,-1.4321,3.9929,32.2507 2019-06-03 15:44:03.740,109.8061,8807.4863,5.2042,8.2794,0.946,-0.1638,2400.0,2400.0,-0.3489,-1.4231,3.9876,32.2507 2019-06-03 15:44:03.760,109.8338,8807.5146,5.1167,8.2462,0.683,0.448,2400.0,2400.0,-0.346,-1.4111,4.0075,32.2697 2019-06-03 15:44:03.780,109.7507,8807.4863,5.0493,8.2135,0.7707,-0.1232,2400.0,2400.0,-0.3548,-1.4141,4.0009,32.2942 2019-06-03 15:44:03.800,109.7229,8807.4863,4.9981,8.1874,0.8243,-0.0966,2400.0,2400.0,-0.3431,-1.4111,4.0128,32.3008 2019-06-03 15:44:03.820,109.7507,8807.5146,4.9703,8.1709,0.9131,0.4177,2400.0,2400.0,-0.346,-1.4081,4.0154,32.3126 2019-06-03 15:44:03.840,109.8061,8807.5723,4.9703,8.1709,0.5625,-0.0637,2400.0,2400.0,-0.3431,-1.4141,4.0207,32.3126 2019-06-03 15:44:03.860,109.8338,8807.5723,4.9703,8.1709,1.0299,0.3137,2400.0,2400.0,-0.3431,-1.4081,4.034,32.3126 2019-06-03 15:44:03.880,109.7368,8807.4863,4.8789,8.1159,0.4652,0.0394,2400.0,2400.0,-0.3606,-1.4111,4.0485,32.3261 2019-06-03 15:44:03.900,109.7507,8807.4297,4.7982,8.0591,0.5281,0.082,2400.0,2400.0,-0.3577,-1.4141,4.0565,32.3423 2019-06-03 15:44:03.920,109.8753,8807.458,4.7982,8.0591,1.1705,0.2335,2400.0,2400.0,-0.3518,-1.4141,4.0803,32.3423 2019-06-03 15:44:03.940,110.0274,8807.458,4.7982,8.0591,0.3735,0.1424,2400.0,2400.0,-0.3577,-1.4111,4.0936,32.3423 2019-06-03 15:44:03.960,110.0274,8807.543,4.7266,8.0039,1.2285,0.107,2400.0,2400.0,-0.3518,-1.4141,4.128,32.3598 2019-06-03 15:44:03.980,109.9583,8807.5723,4.6496,7.9332,0.3916,0.2496,2400.0,2400.0,-0.3577,-1.4141,4.1545,32.3729 2019-06-03 15:44:04.000,109.9445,8807.6289,4.6075,7.8964,0.4711,0.2961,2400.0,2400.0,-0.346,-1.4141,4.1862,32.379 2019-06-03 15:44:04.020,109.9583,8807.543,4.5652,7.8605,1.1313,0.0318,2400.0,2400.0,-0.3489,-1.4201,4.2167,32.3845 2019-06-03 15:44:04.040,110.0412,8807.5723,4.5652,7.8605,0.4852,0.3298,2400.0,2400.0,-0.3401,-1.4201,4.2524,32.3845 2019-06-03 15:44:04.060,110.0412,8807.543,4.5652,7.8605,1.0932,-0.0451,2400.0,2400.0,-0.3431,-1.4201,4.3001,32.3845 2019-06-03 15:44:04.080,109.9445,8807.6006,4.4891,7.7847,0.5687,0.353,2400.0,2400.0,-0.3431,-1.4201,4.3875,32.3983 2019-06-03 15:44:04.100,109.9583,8807.5723,4.4261,7.7151,0.7078,0.3749,2400.0,2400.0,-0.3372,-1.4171,4.4603,32.4144 2019-06-03 15:44:04.120,110.2343,8807.6006,4.4261,7.7151,0.8461,-0.049,2400.0,2400.0,-0.346,-1.4201,4.549,32.4144 2019-06-03 15:44:04.140,110.4543,8807.6289,4.4261,7.7151,0.7366,0.3634,2400.0,2400.0,-0.3548,-1.4171,4.6152,32.4144 2019-06-03 15:44:04.160,110.4543,8807.6572,4.3572,7.6335,0.8014,-0.071,2400.0,2400.0,-0.3489,-1.4051,4.6907,32.4286 2019-06-03 15:44:04.180,110.3856,8807.6572,4.2894,7.5466,0.889,0.3501,2400.0,2400.0,-0.3548,-1.4081,4.7662,32.4485 2019-06-03 15:44:04.200,110.3719,8807.7715,4.2696,7.5099,0.97,0.3338,2400.0,2400.0,-0.3518,-1.3991,4.839,32.4595 2019-06-03 15:44:04.220,110.3856,8807.7998,4.2348,7.4616,0.6031,0.0268,2400.0,2400.0,-0.3518,-1.3931,4.9144,32.4669 2019-06-03 15:44:04.240,110.4406,8807.8857,4.2348,7.4616,0.9193,0.2701,2400.0,2400.0,-0.3489,-1.363,4.9886,32.4669 2019-06-03 15:44:04.260,110.468,8807.8281,4.2348,7.4616,0.6309,0.0595,2400.0,2400.0,-0.3343,-1.339,5.0508,32.4669 2019-06-03 15:44:04.280,110.3581,8807.8564,4.1943,7.3786,1.0584,0.1977,2400.0,2400.0,-0.346,-1.2999,5.0866,32.4872 2019-06-03 15:44:04.300,110.3856,8807.7715,4.1541,7.2905,1.0247,0.1887,2400.0,2400.0,-0.3401,-1.2187,5.1276,32.5075 2019-06-03 15:44:04.320,110.66,8807.7998,4.1541,7.2905,0.5673,0.1869,2400.0,2400.0,-0.3401,-1.2037,5.1647,32.5075 2019-06-03 15:44:04.340,110.865,8807.8281,4.1541,7.2905,1.0203,0.1277,2400.0,2400.0,-0.3431,-1.1796,5.2031,32.5075 2019-06-03 15:44:04.360,110.8923,8807.8857,4.1172,7.1968,0.521,0.1926,2400.0,2400.0,-0.3431,-1.1224,5.219,32.5281 2019-06-03 15:44:04.380,110.8104,8807.8281,4.1172,7.1968,1.1664,0.0412,2400.0,2400.0,-0.346,-1.1163,5.2243,32.5281 2019-06-03 15:44:04.400,110.8104,8807.7715,4.0965,7.0657,1.081,0.0539,2340.0,2340.0,-0.346,-1.056,5.2256,32.5709 2019-06-03 15:44:04.420,110.8241,8807.7148,4.0985,7.0237,0.6227,0.2823,2340.0,2340.0,-0.3431,-1.0379,5.2375,32.5858 2019-06-03 15:44:04.440,110.8923,8807.6572,4.0985,7.0237,0.9867,0.0272,2340.0,2340.0,-0.346,-0.9957,5.2468,32.5858 2019-06-03 15:44:04.460,110.9196,8807.543,4.0985,7.0237,0.7929,0.2765,2340.0,2340.0,-0.3138,-0.9444,5.2772,32.5858 2019-06-03 15:44:04.480,110.8104,8807.543,4.0966,6.9368,0.9341,0.0014,2340.0,2340.0,-0.3314,-0.9413,5.2719,32.6131 2019-06-03 15:44:04.500,110.8241,8807.4863,4.0975,6.852,0.9205,0.0203,2340.0,2340.0,-0.3255,-0.9292,5.2772,32.6413 2019-06-03 15:44:04.520,111.0967,8807.458,4.0975,6.852,0.811,0.3025,2340.0,2340.0,-0.3285,-0.9111,5.2759,32.6413 2019-06-03 15:44:04.540,111.3141,8807.4863,4.0975,6.852,0.8583,0.0332,2340.0,2340.0,-0.3255,-0.9081,5.2838,32.6413 2019-06-03 15:44:04.560,111.3141,8807.4863,4.1139,6.7738,0.9212,0.2619,2340.0,2340.0,-0.3168,-0.9081,5.2918,32.675 2019-06-03 15:44:04.580,111.2598,8807.4863,4.1412,6.6995,0.7655,0.0499,2340.0,2340.0,-0.3138,-0.9081,5.301,32.7226 2019-06-03 15:44:04.600,111.2327,8807.5146,4.1451,6.6588,0.7219,0.0569,2340.0,2340.0,-0.2963,-0.9021,5.3063,32.7392 2019-06-03 15:44:04.620,111.2598,8807.5723,4.1617,6.6238,0.9863,0.2293,2340.0,2340.0,-0.2875,-0.8627,5.313,32.7589 2019-06-03 15:44:04.640,111.3277,8807.6006,4.1617,6.6238,0.777,0.1381,2340.0,2340.0,-0.2875,-0.8627,5.3249,32.7589 2019-06-03 15:44:04.660,111.3277,8807.6006,4.1617,6.6238,1.0347,0.1759,2340.0,2340.0,-0.2875,-0.8325,5.3209,32.7589 2019-06-03 15:44:04.680,111.2327,8807.6289,4.1866,6.5519,0.7603,0.1583,2340.0,2340.0,-0.3021,-0.8295,5.3156,32.7967 2019-06-03 15:44:04.700,111.2463,8807.6006,4.2201,6.4856,0.7773,0.153,2340.0,2340.0,-0.2992,-0.8234,5.3236,32.8367 2019-06-03 15:44:04.720,111.5309,8807.6006,4.2201,6.4856,0.9652,0.1269,2340.0,2340.0,-0.2934,-0.8083,5.3222,32.8367 2019-06-03 15:44:04.740,111.747,8807.6289,4.2201,6.4856,0.9445,0.2082,2340.0,2340.0,-0.2846,-0.8204,5.3328,32.8367 2019-06-03 15:44:04.760,111.747,8807.6855,4.2583,6.4216,0.9855,0.1077,2340.0,2340.0,-0.2758,-0.7932,5.3355,32.8791 2019-06-03 15:44:04.780,111.666,8807.7148,4.2973,6.3579,0.8587,0.2194,2340.0,2340.0,-0.2846,-0.7992,5.3381,32.93 2019-06-03 15:44:04.800,111.666,8807.7432,4.3167,6.3283,0.9234,0.2068,2340.0,2340.0,-0.2875,-0.7992,5.3461,32.9519 2019-06-03 15:44:04.820,111.6795,8807.7432,4.3333,6.2958,0.8942,0.1135,2340.0,2340.0,-0.2934,-0.8022,5.3461,32.9742 2019-06-03 15:44:04.840,111.747,8807.7148,4.3333,6.2958,1.0713,0.2058,2340.0,2340.0,-0.3021,-0.8022,5.3527,32.9742 2019-06-03 15:44:04.860,111.7739,8807.6855,4.3333,6.2958,0.8994,0.1518,2340.0,2340.0,-0.2875,-0.7962,5.3447,32.9742 2019-06-03 15:44:04.880,111.6795,8807.7148,4.3753,6.2422,1.0495,0.1968,2340.0,2340.0,-0.2846,-0.8022,5.3461,33.019 2019-06-03 15:44:04.900,111.666,8807.6572,4.4146,6.1856,1.1198,0.1576,2340.0,2340.0,-0.27,-0.7962,5.3434,33.0638 2019-06-03 15:44:04.920,111.9489,8807.7148,4.4146,6.1856,0.8376,0.2057,2340.0,2340.0,-0.27,-0.7992,5.3408,33.0638 2019-06-03 15:44:04.940,112.1503,8807.7432,4.4146,6.1856,1.0614,0.1188,2340.0,2340.0,-0.2758,-0.8083,5.3474,33.0638 2019-06-03 15:44:04.960,112.1503,8807.8281,4.4532,6.1285,0.9175,0.2413,2340.0,2340.0,-0.2846,-0.8053,5.3434,33.1088 2019-06-03 15:44:04.980,112.0833,8807.8857,4.4532,6.1285,1.0643,0.132,2340.0,2340.0,-0.2934,-0.8083,5.3368,33.1088 2019-06-03 15:44:05.000,112.0833,8807.9141,4.5187,6.0503,1.0362,0.0927,2340.0,2340.0,-0.2875,-0.8083,5.3447,33.1908 2019-06-03 15:44:05.020,112.0967,8807.9424,4.5418,6.0293,1.0003,0.2567,2340.0,2340.0,-0.2788,-0.8083,5.3262,33.2146 2019-06-03 15:44:05.040,112.1503,8807.999,4.5418,6.0293,0.9471,0.0418,2340.0,2340.0,-0.2817,-0.8083,5.3302,33.2146 2019-06-03 15:44:05.060,112.1637,8808.0283,4.5418,6.0293,1.0569,0.2679,2340.0,2340.0,-0.2758,-0.8022,5.3183,33.2146 2019-06-03 15:44:05.080,112.0698,8808.0566,4.5804,5.98,1.0085,0.0934,2340.0,2340.0,-0.2729,-0.8083,5.3262,33.2592 2019-06-03 15:44:05.100,112.0967,8808.0283,4.6148,5.9312,0.8827,0.0655,2340.0,2340.0,-0.2788,-0.8083,5.3222,33.3036 2019-06-03 15:44:05.120,112.3646,8808.0566,4.6148,5.9312,1.2707,0.2457,2340.0,2340.0,-0.2671,-0.8083,5.3169,33.3036 2019-06-03 15:44:05.140,112.5781,8807.999,4.6148,5.9312,0.7747,0.0753,2340.0,2340.0,-0.2846,-0.8416,5.3103,33.3036 2019-06-03 15:44:05.160,112.5914,8808.0283,4.6549,5.8883,1.1867,0.2536,2340.0,2340.0,-0.2817,-0.8355,5.301,33.3482 2019-06-03 15:44:05.180,112.5114,8807.999,4.6963,5.8508,0.7337,0.1254,2340.0,2340.0,-0.2875,-0.893,5.2971,33.4 2019-06-03 15:44:05.200,112.4981,8807.999,4.7061,5.8223,0.6989,0.1462,2340.0,2340.0,-0.2817,-0.893,5.305,33.4198 2019-06-03 15:44:05.220,112.5248,8807.999,4.725,5.8043,1.3731,0.1655,2340.0,2340.0,-0.2846,-0.899,5.301,33.4424 2019-06-03 15:44:05.240,112.5781,8808.0283,4.725,5.8043,0.7289,0.1933,2340.0,2340.0,-0.2817,-0.9111,5.3037,33.4424 2019-06-03 15:44:05.260,112.6181,8807.9707,4.725,5.8043,1.2969,0.124,2340.0,2340.0,-0.2788,-0.9111,5.2812,33.4424 2019-06-03 15:44:05.280,112.5114,8807.9424,4.7541,5.762,0.7559,0.2756,2340.0,2340.0,-0.2963,-0.9353,5.2812,33.4839 2019-06-03 15:44:05.300,112.5114,8807.9141,4.7874,5.7233,0.6797,0.2813,2340.0,2340.0,-0.2846,-0.9444,5.2984,33.5278 2019-06-03 15:44:05.320,112.791,8807.9424,4.7874,5.7233,1.2404,0.0523,2340.0,2340.0,-0.2817,-0.9474,5.2891,33.5278 2019-06-03 15:44:05.340,112.9768,8807.999,4.7874,5.7233,0.8125,0.2932,2340.0,2340.0,-0.2875,-0.9504,5.2799,33.5278 2019-06-03 15:44:05.360,112.9901,8808.085,4.8179,5.6874,1.1686,0.0407,2340.0,2340.0,-0.2671,-0.9474,5.2799,33.5707 2019-06-03 15:44:05.380,112.9238,8808.085,4.8416,5.6441,0.9933,0.3707,2340.0,2340.0,-0.2846,-0.9474,5.2719,33.617 2019-06-03 15:44:05.400,112.9238,8808.1133,4.8582,5.6271,0.9504,0.3521,2400.0,2400.0,-0.2846,-0.9444,5.2838,33.6382 2019-06-03 15:44:05.420,112.937,8808.0283,4.8616,5.6039,1.0517,-0.0225,2400.0,2400.0,-0.2846,-0.9383,5.2666,33.6563 2019-06-03 15:44:05.440,113.0033,8808.085,4.8616,5.6039,1.1305,0.3391,2400.0,2400.0,-0.2875,-0.9564,5.2679,33.6563 2019-06-03 15:44:05.460,113.0033,8808.0566,4.8616,5.6039,0.8957,0.0512,2400.0,2400.0,-0.2817,-0.9534,5.2521,33.6563 2019-06-03 15:44:05.480,112.9105,8808.0283,4.8894,5.5686,1.2463,0.3191,2400.0,2400.0,-0.2846,-0.9534,5.2534,33.6972 2019-06-03 15:44:05.500,112.937,8807.9424,4.9142,5.5351,1.2278,0.2919,2400.0,2400.0,-0.2905,-0.9504,5.2587,33.7372 2019-06-03 15:44:05.520,113.2017,8807.9424,4.9142,5.5351,0.8539,0.0819,2400.0,2400.0,-0.2817,-0.9534,5.2441,33.7372 2019-06-03 15:44:05.540,113.3996,8807.9424,4.9142,5.5351,1.355,0.2279,2400.0,2400.0,-0.2817,-0.9534,5.2454,33.7372 2019-06-03 15:44:05.560,113.4128,8807.9141,4.9292,5.4982,0.6812,0.1846,2400.0,2400.0,-0.2758,-0.9504,5.2348,33.7737 2019-06-03 15:44:05.580,113.3337,8808.0283,4.9453,5.46,1.3358,0.1756,2400.0,2400.0,-0.2729,-0.9534,5.2322,33.8137 2019-06-03 15:44:05.600,113.3337,8808.0566,4.9583,5.4467,1.362,0.1408,2400.0,2400.0,-0.2846,-0.9534,5.2243,33.8321 2019-06-03 15:44:05.620,113.3469,8808.0566,4.9673,5.4275,0.7196,0.2599,2400.0,2400.0,-0.2817,-0.9474,5.2163,33.8489 2019-06-03 15:44:05.640,113.3996,8808.085,4.9673,5.4275,1.3106,0.051,2400.0,2400.0,-0.2934,-0.9504,5.215,33.8489 2019-06-03 15:44:05.660,113.4259,8808.0566,4.9673,5.4275,0.7259,0.3524,2400.0,2400.0,-0.2875,-0.9504,5.2017,33.8489 2019-06-03 15:44:05.680,113.3469,8807.4863,4.9845,5.3945,1.3099,-0.0031,2400.0,2400.0,-0.2788,-0.9474,5.1925,33.883 2019-06-03 15:44:05.700,113.3337,8806.4316,4.9903,5.3546,1.3165,-0.0277,2400.0,2400.0,-0.2817,-0.9534,5.1912,33.9136 2019-06-03 15:44:05.720,113.6232,8805.5479,4.9903,5.3546,0.9682,0.4028,2400.0,2400.0,-0.2788,-0.9474,5.1845,33.9136 2019-06-03 15:44:05.740,113.8198,8804.1797,4.9903,5.3546,1.1749,-0.0634,2400.0,2400.0,-0.2758,-0.9474,5.1686,33.9136 2019-06-03 15:44:05.760,113.8067,8803.2959,5.0,5.317,0.95,0.4452,2400.0,2400.0,-0.2788,-0.9474,5.1435,33.9442 2019-06-03 15:44:05.780,113.7543,8801.8711,5.018,5.2832,1.1035,-0.0924,2400.0,2400.0,-0.2788,-0.9444,5.117,33.9754 2019-06-03 15:44:05.800,113.7412,8800.9873,5.0129,5.2596,1.0155,-0.1,2400.0,2400.0,-0.2875,-0.9474,5.0972,33.9875 2019-06-03 15:44:05.820,113.7412,8800.0752,5.0273,5.2478,1.2248,0.4294,2400.0,2400.0,-0.2875,-0.893,5.0482,34.0041 2019-06-03 15:44:05.840,113.8329,8798.8203,5.0273,5.2478,0.896,-0.063,2400.0,2400.0,-0.2875,-0.896,5.0071,34.0041 2019-06-03 15:44:05.860,113.8329,8798.8203,5.0273,5.2478,1.1956,0.4002,2400.0,2400.0,-0.2788,-0.893,4.9422,34.0041 2019-06-03 15:44:05.880,113.7412,8798.8496,5.0224,5.2079,0.9401,-0.0344,2400.0,2400.0,-0.2758,-0.8658,4.8999,34.0296 2019-06-03 15:44:05.900,113.7805,8798.792,5.0234,5.1674,0.8424,-0.0097,2400.0,2400.0,-0.2729,-0.8658,4.8668,34.0552 2019-06-03 15:44:05.920,114.1855,8798.7354,5.0234,5.1674,1.4197,0.3199,2400.0,2400.0,-0.2758,-0.8718,4.8178,34.0552 2019-06-03 15:44:05.940,114.4195,8798.7637,5.0234,5.1674,0.6416,0.0971,2400.0,2400.0,-0.2905,-0.8658,4.8165,34.0552 2019-06-03 15:44:05.960,114.4455,8798.8496,5.0307,5.1363,1.487,0.2058,2400.0,2400.0,-0.2905,-0.8658,4.8019,34.0823 2019-06-03 15:44:05.980,114.3806,8798.792,5.0281,5.1013,0.7496,0.1922,2400.0,2400.0,-0.2846,-0.8688,4.7887,34.1081 2019-06-03 15:44:06.000,114.3546,8798.8496,5.015,5.0773,0.6165,0.2049,2400.0,2400.0,-0.2875,-0.8688,4.786,34.1177 2019-06-03 15:44:06.020,114.3806,8798.8496,5.0054,5.0637,1.429,0.1127,2400.0,2400.0,-0.2817,-0.8658,4.7847,34.1287 2019-06-03 15:44:06.040,114.4584,8798.8496,5.0054,5.0637,0.6605,0.2942,2400.0,2400.0,-0.2875,-0.8688,4.79,34.1287 2019-06-03 15:44:06.060,114.4584,8798.792,5.0054,5.0637,1.3683,0.0339,2400.0,2400.0,-0.2788,-0.8688,4.7847,34.1287 2019-06-03 15:44:06.080,114.3676,8798.8496,4.9846,5.0276,0.6272,0.3414,2400.0,2400.0,-0.27,-0.8688,4.7926,34.1479 2019-06-03 15:44:06.100,114.3676,8798.792,4.9751,5.0018,0.6198,0.3636,2400.0,2400.0,-0.2817,-0.8718,4.786,34.1689 2019-06-03 15:44:06.120,114.5103,8798.792,4.9751,5.0018,1.3805,-0.031,2400.0,2400.0,-0.27,-0.8688,4.7794,34.1689 2019-06-03 15:44:06.140,114.6528,8798.8203,4.9751,5.0018,0.8165,0.4643,2400.0,2400.0,-0.2788,-0.8688,4.7847,34.1689 2019-06-03 15:44:06.160,114.6398,8798.9063,4.954,4.9764,1.3051,-0.1063,2400.0,2400.0,-0.27,-0.8658,4.7807,34.1879 2019-06-03 15:44:06.180,114.5492,8798.8203,4.954,4.9764,0.7529,0.463,2400.0,2400.0,-0.2758,-0.8688,4.7728,34.1879 2019-06-03 15:44:06.200,114.5621,8798.792,4.9104,4.9309,0.8191,0.4666,2400.0,2400.0,-0.2817,-0.8688,4.7781,34.2108 2019-06-03 15:44:06.220,114.5621,8798.8496,4.8794,4.9124,1.183,-0.097,2400.0,2400.0,-0.2817,-0.8658,4.7714,34.2161 2019-06-03 15:44:06.240,114.6657,8798.8496,4.8794,4.9124,0.9426,0.4649,2400.0,2400.0,-0.2817,-0.8658,4.7834,34.2161 2019-06-03 15:44:06.260,114.6528,8798.7637,4.8794,4.9124,0.9959,-0.0947,2400.0,2400.0,-0.2788,-0.8658,4.7807,34.2161 2019-06-03 15:44:06.280,114.5621,8798.8496,4.8543,4.8874,1.0503,0.4056,2400.0,2400.0,-0.27,-0.8688,4.7781,34.2331 2019-06-03 15:44:06.300,114.5881,8798.7354,4.8256,4.8655,1.0787,0.41,2400.0,2400.0,-0.2817,-0.8658,4.7754,34.2493 2019-06-03 15:44:06.320,114.8465,8798.7354,4.8256,4.8655,0.9486,-0.0264,2400.0,2400.0,-0.2846,-0.8688,4.7622,34.2493 2019-06-03 15:44:06.340,115.0269,8798.8203,4.8256,4.8655,1.2507,0.385,2400.0,2400.0,-0.2817,-0.8688,4.7701,34.2493 2019-06-03 15:44:06.360,115.0526,8798.8496,4.7823,4.8369,0.7137,0.0258,2400.0,2400.0,-0.2729,-0.8658,4.782,34.2613 2019-06-03 15:44:06.380,114.9883,8798.8496,4.7823,4.8369,1.2914,0.2827,2400.0,2400.0,-0.2729,-0.8688,4.7688,34.2613 2019-06-03 15:44:06.400,114.9754,8798.8496,4.7308,4.8009,1.3258,0.2675,2400.0,2340.0,-0.2875,-0.8718,4.7767,34.2797 2019-06-03 15:44:06.420,114.9883,8798.8496,4.7059,4.7844,0.7455,0.136,2400.0,2340.0,-0.2817,-0.8718,4.7662,34.2851 2019-06-03 15:44:06.440,115.0526,8798.8496,4.7059,4.7844,1.2134,0.2131,2400.0,2340.0,-0.2817,-0.8718,4.7754,34.2851 2019-06-03 15:44:06.460,115.0655,8798.8203,4.7059,4.7844,0.6941,0.1698,2400.0,2340.0,-0.2905,-0.8718,4.7767,34.2851 2019-06-03 15:44:06.480,114.9754,8798.8496,4.6743,4.764,1.247,0.1255,2400.0,2340.0,-0.2729,-0.8658,4.7675,34.2976 2019-06-03 15:44:06.500,114.9754,8798.8203,4.6311,4.7389,1.3117,0.1235,2400.0,2340.0,-0.2905,-0.89,4.7754,34.3088 2019-06-03 15:44:06.520,115.1041,8798.8203,4.6311,4.7389,0.6335,0.2618,2400.0,2340.0,-0.2758,-0.8507,4.7767,34.3088 2019-06-03 15:44:06.540,115.2453,8798.8203,4.6311,4.7389,1.3306,0.0579,2400.0,2340.0,-0.2758,-0.8627,4.7754,34.3088 2019-06-03 15:44:06.560,115.2581,8798.8779,4.5848,4.7113,0.6638,0.3015,2400.0,2340.0,-0.2729,-0.8718,4.794,34.3173 2019-06-03 15:44:06.580,115.1811,8798.9629,4.5493,4.687,1.321,-0.0029,2400.0,2340.0,-0.2729,-0.8718,4.782,34.3265 2019-06-03 15:44:06.600,115.1811,8798.8779,4.5302,4.6775,1.335,-0.0246,2400.0,2340.0,-0.2875,-0.8718,4.7887,34.3319 2019-06-03 15:44:06.620,115.1811,8798.8203,4.5178,4.6672,0.6697,0.3731,2400.0,2340.0,-0.2817,-0.8748,4.794,34.3374 2019-06-03 15:44:06.640,115.2325,8798.8779,4.5178,4.6672,1.2322,-0.0481,2400.0,2340.0,-0.2729,-0.8718,4.79,34.3374 2019-06-03 15:44:06.660,115.2709,8798.8779,4.5178,4.6672,0.7903,0.3692,2400.0,2340.0,-0.2758,-0.8718,4.8125,34.3374 2019-06-03 15:44:06.680,115.1811,8798.3652,4.4782,4.6417,1.3128,-0.0495,2400.0,2340.0,-0.2788,-0.8748,4.7913,34.3455 2019-06-03 15:44:06.700,115.1811,8797.4531,4.4339,4.6137,1.1301,-0.0716,2400.0,2340.0,-0.2905,-0.8718,4.794,34.3536 2019-06-03 15:44:06.720,115.463,8796.5977,4.4339,4.6137,0.8099,0.403,2400.0,2340.0,-0.2905,-0.8748,4.7953,34.3536 2019-06-03 15:44:06.740,115.6417,8795.2871,4.4339,4.6137,1.1671,-0.068,2400.0,2340.0,-0.2817,-0.8809,4.7953,34.3536 2019-06-03 15:44:06.760,115.6545,8794.4893,4.3983,4.5856,0.9441,0.3613,2400.0,2340.0,-0.2758,-0.8779,4.8072,34.3625 2019-06-03 15:44:06.780,115.5779,8793.2637,4.3706,4.5631,1.088,-0.0404,2400.0,2340.0,-0.27,-0.8718,4.79,34.3732 2019-06-03 15:44:06.800,115.5524,8792.4082,4.3444,4.5437,0.9367,-0.0364,2400.0,2340.0,-0.2846,-0.8779,4.7926,34.3761 2019-06-03 15:44:06.820,115.5907,8791.4961,4.3358,4.532,1.1039,0.337,2400.0,2340.0,-0.2788,-0.8779,4.8112,34.3811 2019-06-03 15:44:06.840,115.6545,8790.3281,4.3358,4.532,0.9401,0.0105,2400.0,2340.0,-0.2817,-0.9021,4.8165,34.3811 2019-06-03 15:44:06.860,115.6545,8790.3281,4.3358,4.532,1.0588,0.2912,2400.0,2340.0,-0.2817,-0.9292,4.8456,34.3811 2019-06-03 15:44:06.880,115.5779,8790.2422,4.2967,4.5008,0.8088,0.0565,2400.0,2340.0,-0.2758,-0.9413,4.8363,34.3872 2019-06-03 15:44:06.900,115.5779,8790.1289,4.2643,4.4686,0.6849,0.1043,2400.0,2340.0,-0.2817,-0.9866,4.8363,34.3957 2019-06-03 15:44:06.920,115.8454,8790.1855,4.2643,4.4686,1.1656,0.2192,2400.0,2340.0,-0.2729,-0.9987,4.8469,34.3957 2019-06-03 15:44:06.940,116.0359,8790.2422,4.2643,4.4686,0.8051,0.1401,2400.0,2340.0,-0.2817,-1.05,4.8363,34.3957 2019-06-03 15:44:06.960,116.0486,8790.2998,4.2396,4.4392,1.1686,0.1556,2400.0,2340.0,-0.2934,-1.0681,4.8469,34.4036 2019-06-03 15:44:06.980,115.9598,8790.2998,4.2396,4.4392,0.7363,0.1883,2400.0,2340.0,-0.2905,-1.0711,4.8456,34.4036 2019-06-03 15:44:07.000,115.9725,8790.3281,4.1918,4.3846,0.703,0.2432,2400.0,2340.0,-0.2992,-1.1374,4.8482,34.4123 2019-06-03 15:44:07.020,115.9725,8790.2998,4.1744,4.3657,1.2137,0.0827,2400.0,2340.0,-0.3021,-1.1675,4.884,34.415 2019-06-03 15:44:07.040,116.0486,8790.2998,4.1744,4.3657,0.6656,0.2698,2400.0,2340.0,-0.2934,-1.1645,4.8893,34.415 2019-06-03 15:44:07.060,116.0739,8790.3848,4.1744,4.3657,1.1886,0.0076,2400.0,2340.0,-0.2963,-1.1645,4.9091,34.415 2019-06-03 15:44:07.080,115.9725,8790.3848,4.1468,4.3242,0.6978,0.3019,2400.0,2340.0,-0.3021,-1.1675,4.888,34.4233 2019-06-03 15:44:07.100,115.9851,8790.3281,4.1287,4.2849,0.6974,0.3428,2400.0,2340.0,-0.308,-1.1946,4.8893,34.4318 2019-06-03 15:44:07.120,116.1119,8790.3281,4.1287,4.2849,1.2178,-0.0168,2400.0,2340.0,-0.308,-1.1946,4.8999,34.4318 2019-06-03 15:44:07.140,116.2384,8790.3564,4.1287,4.2849,0.774,0.3262,2400.0,2340.0,-0.3021,-1.2127,4.9065,34.4318 2019-06-03 15:44:07.160,116.2384,8790.3564,4.1051,4.2415,1.1553,-0.0259,2400.0,2340.0,-0.308,-1.2217,4.9237,34.4405 2019-06-03 15:44:07.180,116.1625,8790.3848,4.1051,4.2415,0.7311,0.3341,2400.0,2340.0,-0.2992,-1.2187,4.9171,34.4405 2019-06-03 15:44:07.200,116.1499,8790.4424,4.073,4.1667,0.8091,0.3657,2400.0,2340.0,-0.3138,-1.2247,4.9105,34.4532 2019-06-03 15:44:07.220,116.1625,8790.4131,4.0537,4.1367,1.0651,-0.0503,2400.0,2340.0,-0.3138,-1.2368,4.9237,34.4561 2019-06-03 15:44:07.240,116.2511,8790.3281,4.0537,4.1367,0.8628,0.3625,2400.0,2340.0,-0.3051,-1.2277,4.9052,34.4561 2019-06-03 15:44:07.260,116.2384,8790.2998,4.0537,4.1367,1.1109,-0.0579,2400.0,2340.0,-0.3138,-1.2398,4.9052,34.4561 2019-06-03 15:44:07.280,116.1499,8790.2422,4.042,4.0837,0.9053,0.3437,2400.0,2340.0,-0.308,-1.2368,4.9038,34.4681 2019-06-03 15:44:07.300,116.1878,8790.1572,4.0296,4.0311,1.0003,0.3611,2400.0,2340.0,-0.3109,-1.2428,4.9025,34.4801 2019-06-03 15:44:07.320,116.453,8790.1572,4.0296,4.0311,0.9671,-0.0256,2400.0,2340.0,-0.3168,-1.2428,4.9197,34.4801 2019-06-03 15:44:07.340,116.6166,8790.1572,4.0296,4.0311,1.0092,0.3283,2400.0,2340.0,-0.3109,-1.2458,4.9131,34.4801 2019-06-03 15:44:07.360,116.6543,8790.1289,4.0086,3.9697,1.0148,-0.0096,2400.0,2340.0,-0.3197,-1.2999,4.9038,34.4915 2019-06-03 15:44:07.380,116.5663,8790.0713,3.9874,3.9086,1.0151,0.3182,2400.0,2340.0,-0.3109,-1.2969,4.8959,34.5048 2019-06-03 15:44:07.400,116.5663,8790.0713,3.991,3.8804,1.1287,0.3444,2400.0,2460.0,-0.3197,-1.345,4.8972,34.5131 2019-06-03 15:44:07.420,116.5788,8790.043,3.9769,3.8449,0.8232,0.0299,2400.0,2460.0,-0.3285,-1.351,4.9052,34.5179 2019-06-03 15:44:07.440,116.6417,8790.0146,3.9769,3.8449,1.1742,0.2628,2400.0,2460.0,-0.3343,-1.348,4.9025,34.5179 2019-06-03 15:44:07.460,116.6543,8789.9863,3.9769,3.8449,0.8457,0.061,2400.0,2460.0,-0.3548,-1.363,4.9052,34.5179 2019-06-03 15:44:07.480,116.5663,8789.9863,3.9722,3.7849,1.183,0.2325,2400.0,2460.0,-0.3518,-1.357,4.9078,34.5334 2019-06-03 15:44:07.500,116.5788,8789.9004,3.9582,3.7184,1.173,0.2369,2400.0,2460.0,-0.3518,-1.354,4.9158,34.5479 2019-06-03 15:44:07.520,116.717,8789.8438,3.9582,3.7184,0.659,0.1274,2400.0,2460.0,-0.3489,-1.357,4.933,34.5479 2019-06-03 15:44:07.540,116.8424,8789.8721,3.9582,3.7184,1.2359,0.166,2400.0,2460.0,-0.3518,-1.357,4.925,34.5479 2019-06-03 15:44:07.560,116.8424,8789.8438,3.9386,3.6461,0.7078,0.1707,2400.0,2460.0,-0.3606,-1.354,4.9317,34.5612 2019-06-03 15:44:07.580,116.7672,8789.8438,3.9386,3.6461,1.2396,0.147,2400.0,2460.0,-0.3577,-1.354,4.9211,34.5612 2019-06-03 15:44:07.600,116.7672,8789.8721,3.9295,3.5386,1.1893,0.1443,2400.0,2460.0,-0.3548,-1.36,4.9184,34.5822 2019-06-03 15:44:07.620,116.7672,8789.8438,3.9272,3.5016,0.7385,0.2057,2400.0,2460.0,-0.3577,-1.357,4.9211,34.5896 2019-06-03 15:44:07.640,116.8424,8789.8154,3.9272,3.5016,1.2736,0.078,2400.0,2460.0,-0.3489,-1.354,4.9078,34.5896 2019-06-03 15:44:07.660,116.855,8789.8154,3.9272,3.5016,0.7429,0.2671,2400.0,2460.0,-0.3635,-1.36,4.9105,34.5896 2019-06-03 15:44:07.680,116.7672,8789.9004,3.9191,3.4295,1.2466,0.0573,2400.0,2460.0,-0.3665,-1.357,4.9144,34.606 2019-06-03 15:44:07.700,116.7798,8789.7578,3.9049,3.3504,1.1779,0.0401,2400.0,2460.0,-0.3694,-1.366,4.9105,34.6211 2019-06-03 15:44:07.720,117.0426,8789.8154,3.9049,3.3504,0.7429,0.28,2400.0,2460.0,-0.3752,-1.3901,4.9144,34.6211 2019-06-03 15:44:07.740,117.2172,8789.9004,3.9049,3.3504,1.2374,-0.0138,2400.0,2460.0,-0.3694,-1.3841,4.9025,34.6211 2019-06-03 15:44:07.760,117.2172,8789.958,3.8952,3.2694,0.7525,0.354,2400.0,2460.0,-0.3781,-1.3811,4.9118,34.6357 2019-06-03 15:44:07.780,117.1549,8789.9287,3.8966,3.19,1.2104,-0.0083,2400.0,2460.0,-0.3548,-1.3841,4.9211,34.6536 2019-06-03 15:44:07.800,117.1549,8789.9287,3.887,3.1487,1.0943,-0.014,2400.0,2460.0,-0.3518,-1.3811,4.9211,34.6613 2019-06-03 15:44:07.820,117.1549,8789.9287,3.8918,3.1112,0.9134,0.3338,2400.0,2460.0,-0.3548,-1.3841,4.9211,34.6707 2019-06-03 15:44:07.840,117.2421,8789.8721,3.8918,3.1112,1.1261,-0.0338,2400.0,2460.0,-0.3577,-1.3841,4.9131,34.6707 2019-06-03 15:44:07.860,117.2421,8789.8438,3.8918,3.1112,0.9245,0.3596,2400.0,2460.0,-0.3781,-1.3841,4.9105,34.6707 2019-06-03 15:44:07.880,117.1549,8789.3018,3.8804,3.0277,1.0876,-0.0044,2400.0,2460.0,-0.3665,-1.3811,4.9144,34.6869 2019-06-03 15:44:07.900,117.1549,8788.3047,3.8683,2.9477,1.0887,-0.0268,2400.0,2460.0,-0.3635,-1.3841,4.9158,34.7026 2019-06-03 15:44:07.920,117.4287,8787.4219,3.8683,2.9477,1.0077,0.3454,2400.0,2460.0,-0.3723,-1.3811,4.9343,34.7026 2019-06-03 15:44:07.940,117.6147,8786.0537,3.8683,2.9477,0.9944,0.0037,2400.0,2460.0,-0.3665,-1.3811,4.9211,34.7026 2019-06-03 15:44:07.960,117.6271,8785.1143,3.8648,2.8675,1.1094,0.3028,2400.0,2460.0,-0.3752,-1.3781,4.9211,34.7199 2019-06-03 15:44:07.980,117.5527,8783.6895,3.8659,2.7889,0.8531,0.0548,2400.0,2460.0,-0.3694,-1.3781,4.9078,34.736 2019-06-03 15:44:08.000,117.5527,8782.834,3.853,2.744,0.8217,0.0606,2400.0,2460.0,-0.3606,-1.3781,4.8986,34.7444 2019-06-03 15:44:08.020,117.5527,8781.9229,3.8547,2.7074,1.1361,0.2225,2400.0,2460.0,-0.3606,-1.3781,4.9065,34.7531 2019-06-03 15:44:08.040,117.6147,8780.7549,3.8547,2.7074,0.9489,0.0966,2400.0,2460.0,-0.3665,-1.354,4.8919,34.7531 2019-06-03 15:44:08.060,117.6271,8780.7549,3.8547,2.7074,1.1853,0.1982,2400.0,2460.0,-0.3811,-1.36,4.9078,34.7531 2019-06-03 15:44:08.080,117.5403,8780.7549,3.8437,2.6263,0.6926,0.1705,2400.0,2460.0,-0.3723,-1.354,4.9091,34.7699 2019-06-03 15:44:08.100,117.5651,8780.6973,3.8407,2.5491,0.7814,0.1987,2400.0,2460.0,-0.3635,-1.357,4.9131,34.7885 2019-06-03 15:44:08.120,117.689,8780.6973,3.8407,2.5491,1.2293,0.1129,2400.0,2460.0,-0.3606,-1.363,4.9211,34.7885 2019-06-03 15:44:08.140,117.8002,8780.7832,3.8407,2.5491,0.8402,0.2158,2400.0,2460.0,-0.3518,-1.357,4.9052,34.7885 2019-06-03 15:44:08.160,117.8125,8780.7832,3.8422,2.4756,1.267,0.067,2400.0,2460.0,-0.3811,-1.36,4.8893,34.8082 2019-06-03 15:44:08.180,117.7261,8780.8398,3.8344,2.3973,0.6941,0.2975,2400.0,2460.0,-0.3635,-1.36,4.8866,34.8237 2019-06-03 15:44:08.200,117.7384,8780.8398,3.8308,2.3578,0.848,0.2884,2400.0,2460.0,-0.3606,-1.357,4.8734,34.8337 2019-06-03 15:44:08.220,117.7631,8780.7832,3.8224,2.3183,1.1841,0.0122,2400.0,2460.0,-0.3577,-1.354,4.8933,34.8421 2019-06-03 15:44:08.240,117.8125,8780.6973,3.8224,2.3183,0.8306,0.322,2400.0,2460.0,-0.3577,-1.357,4.888,34.8421 2019-06-03 15:44:08.260,117.8249,8780.6689,3.8224,2.3183,1.1975,-0.0258,2400.0,2460.0,-0.384,-1.36,4.8853,34.8421 2019-06-03 15:44:08.280,117.7508,8780.6406,3.8189,2.242,0.8506,0.3512,2400.0,2460.0,-0.3694,-1.357,4.8959,34.86 2019-06-03 15:44:08.300,117.7508,8780.5547,3.8197,2.1693,0.9238,0.3546,2400.0,2460.0,-0.3548,-1.333,4.8933,34.8788 2019-06-03 15:44:08.320,118.0098,8780.6123,3.8197,2.1693,1.0832,-0.0498,2400.0,2460.0,-0.3665,-1.345,4.8919,34.8788 2019-06-03 15:44:08.340,118.1942,8780.6689,3.8197,2.1693,0.9201,0.3509,2400.0,2460.0,-0.3548,-1.342,4.8906,34.8788 2019-06-03 15:44:08.360,118.2065,8780.6973,3.8131,2.0924,1.0747,-0.036,2400.0,2460.0,-0.3723,-1.348,4.8813,34.8963 2019-06-03 15:44:08.380,118.1205,8780.6689,3.8131,2.0924,0.9848,0.3635,2400.0,2460.0,-0.3665,-1.348,4.888,34.8963 2019-06-03 15:44:08.400,118.1328,8780.7256,3.8081,1.9758,1.0014,0.3466,2340.0,2400.0,-0.3577,-1.351,4.888,34.9192 2019-06-03 15:44:08.420,118.1205,8780.7256,3.7984,1.9326,1.0355,-0.0391,2340.0,2400.0,-0.3635,-1.348,4.9038,34.926 2019-06-03 15:44:08.440,118.2065,8780.7832,3.7984,1.9326,1.1135,0.309,2340.0,2400.0,-0.3577,-1.348,4.8959,34.926 2019-06-03 15:44:08.460,118.2065,8780.8115,3.7984,1.9326,0.8927,0.0258,2340.0,2400.0,-0.3694,-1.348,4.8919,34.926 2019-06-03 15:44:08.480,118.1328,8780.8398,3.7999,1.8602,1.186,0.3082,2340.0,2400.0,-0.3577,-1.351,4.8986,34.9415 2019-06-03 15:44:08.500,118.1451,8780.6973,3.7934,1.7804,1.1398,0.2469,2340.0,2400.0,-0.3548,-1.348,4.8866,34.9566 2019-06-03 15:44:08.520,118.4148,8780.6406,3.7934,1.7804,0.8017,0.0762,2340.0,2400.0,-0.3665,-1.348,4.8906,34.9566 2019-06-03 15:44:08.540,118.5615,8780.7256,3.7934,1.7804,1.095,0.2226,2340.0,2400.0,-0.3518,-1.348,4.8774,34.9566 2019-06-03 15:44:08.560,118.5737,8780.7549,3.7823,1.7004,0.7999,0.0941,2340.0,2400.0,-0.3606,-1.348,4.88,34.9688 2019-06-03 15:44:08.580,118.5127,8780.7549,3.7823,1.7004,1.2385,0.2007,2340.0,2400.0,-0.3548,-1.348,4.8999,34.9688 2019-06-03 15:44:08.600,118.5004,8780.7832,3.7819,1.5851,1.2233,0.1538,2340.0,2400.0,-0.3606,-1.336,4.8986,34.9898 2019-06-03 15:44:08.620,118.5249,8780.7549,3.7808,1.5456,0.8106,0.1715,2340.0,2400.0,-0.3694,-1.357,4.9038,34.9953 2019-06-03 15:44:08.640,118.5981,8780.6973,3.7808,1.5456,1.2145,0.1082,2340.0,2400.0,-0.3577,-1.351,4.8906,34.9953 2019-06-03 15:44:08.660,118.5981,8780.6406,3.7808,1.5456,0.8465,0.2445,2340.0,2400.0,-0.3665,-1.354,4.8734,34.9953 2019-06-03 15:44:08.680,118.5127,8780.6973,3.7754,1.4699,1.1497,0.0833,2340.0,2400.0,-0.3518,-1.348,4.8707,35.0055 2019-06-03 15:44:08.700,118.5127,8780.6689,3.7632,1.3908,1.1779,0.0332,2340.0,2400.0,-0.3431,-1.33,4.8549,35.0147 2019-06-03 15:44:08.720,118.6347,8780.6689,3.7632,1.3908,0.9408,0.2849,2340.0,2400.0,-0.3548,-1.363,4.8575,35.0147 2019-06-03 15:44:08.740,118.7688,8780.7549,3.7632,1.3908,1.176,0.0416,2340.0,2400.0,-0.3548,-1.357,4.8403,35.0147 2019-06-03 15:44:08.760,118.7809,8780.8115,3.7562,1.316,0.9227,0.3205,2340.0,2400.0,-0.3606,-1.354,4.8376,35.0215 2019-06-03 15:44:08.780,118.7079,8780.7832,3.7562,1.316,1.0351,0.021,2340.0,2400.0,-0.3635,-1.354,4.8363,35.0215 2019-06-03 15:44:08.800,118.7201,8780.7832,3.7484,1.1979,1.1142,-0.0121,2340.0,2400.0,-0.3518,-1.351,4.8098,35.0263 2019-06-03 15:44:08.820,118.7079,8780.7832,3.7551,1.1665,1.01,0.33,2340.0,2400.0,-0.3489,-1.354,4.794,35.0302 2019-06-03 15:44:08.840,118.7688,8780.7832,3.7551,1.1665,1.0192,0.0221,2340.0,2400.0,-0.3401,-1.348,4.7781,35.0302 2019-06-03 15:44:08.860,118.7931,8780.7549,3.7551,1.1665,1.0425,0.3069,2340.0,2400.0,-0.3518,-1.354,4.7688,35.0302 2019-06-03 15:44:08.880,118.6957,8780.7832,3.7443,1.0907,0.8842,0.0501,2340.0,2400.0,-0.3518,-1.351,4.7675,35.0337 2019-06-03 15:44:08.900,118.7201,8780.6689,3.7349,1.0165,0.9574,0.0576,2340.0,2400.0,-0.3518,-1.351,4.7556,35.0366 2019-06-03 15:44:08.920,118.9875,8780.6123,3.7349,1.0165,1.1231,0.2452,2340.0,2400.0,-0.3694,-1.363,4.7714,35.0366 2019-06-03 15:44:08.940,119.1571,8780.6973,3.7349,1.0165,0.8857,0.0684,2340.0,2400.0,-0.3635,-1.357,4.7503,35.0366 2019-06-03 15:44:08.960,119.1692,8780.6973,3.7331,0.9457,1.2174,0.2527,2340.0,2400.0,-0.3548,-1.357,4.7662,35.0388 2019-06-03 15:44:08.980,119.0966,8780.7256,3.7331,0.9457,0.8679,0.0782,2340.0,2400.0,-0.3518,-1.354,4.7688,35.0388 2019-06-03 15:44:09.000,119.0844,8780.7832,3.7138,0.8286,0.8665,0.0731,2340.0,2400.0,-0.3489,-1.357,4.7476,35.0331 2019-06-03 15:44:09.020,119.0844,8780.7549,3.7132,0.7931,1.1623,0.2168,2340.0,2400.0,-0.3694,-1.363,4.7489,35.0329 2019-06-03 15:44:09.040,119.1692,8780.8115,3.7132,0.7931,0.7892,0.1468,2340.0,2400.0,-0.3723,-1.36,4.7344,35.0329 2019-06-03 15:44:09.060,119.1813,8780.7549,3.7132,0.7931,1.2152,0.1769,2340.0,2400.0,-0.3665,-1.363,4.7423,35.0329 2019-06-03 15:44:09.080,119.0844,8780.7549,3.6984,0.7175,0.7954,0.1809,2340.0,2400.0,-0.3548,-1.369,4.7556,35.0291 2019-06-03 15:44:09.100,119.0966,8780.6973,3.6904,0.6438,0.9227,0.2022,2340.0,2400.0,-0.346,-1.366,4.745,35.0254 2019-06-03 15:44:09.120,119.3625,8780.6689,3.6904,0.6438,1.0414,0.087,2340.0,2400.0,-0.3606,-1.369,4.7529,35.0254 2019-06-03 15:44:09.140,119.5191,8780.8115,3.6904,0.6438,0.8946,0.2598,2340.0,2400.0,-0.3489,-1.366,4.7569,35.0254 2019-06-03 15:44:09.160,119.5311,8780.8682,3.6837,0.5697,1.1309,0.0805,2340.0,2400.0,-0.3548,-1.366,4.7529,35.0193 2019-06-03 15:44:09.180,119.4709,8780.8398,3.6837,0.5697,0.8661,0.2637,2340.0,2400.0,-0.3548,-1.369,4.7675,35.0193 2019-06-03 15:44:09.200,119.4709,8780.7832,3.6612,0.4563,0.994,0.2853,2340.0,2400.0,-0.3577,-1.366,4.7529,35.0062 2019-06-03 15:44:09.220,119.483,8780.7549,3.6502,0.4164,1.034,0.0351,2340.0,2400.0,-0.3577,-1.369,4.7635,35.0018 2019-06-03 15:44:09.240,119.5431,8780.7832,3.6502,0.4164,0.9582,0.3094,2340.0,2400.0,-0.346,-1.366,4.7503,35.0018 2019-06-03 15:44:09.260,119.5431,8780.8115,3.6502,0.4164,1.0395,0.0344,2340.0,2400.0,-0.3431,-1.369,4.7463,35.0018 2019-06-03 15:44:09.280,119.4709,8780.3555,3.6391,0.3411,0.9918,0.2793,2340.0,2400.0,-0.3548,-1.375,4.7476,34.9913 2019-06-03 15:44:09.300,119.4709,8779.3301,3.6281,0.2677,1.0466,0.2771,2340.0,2400.0,-0.3518,-1.369,4.7304,34.9804 2019-06-03 15:44:09.320,119.903,8778.333,3.6281,0.2677,0.8901,0.0289,2340.0,2400.0,-0.3635,-1.375,4.7331,34.9804 2019-06-03 15:44:09.340,120.0941,8777.0225,3.6281,0.2677,1.0725,0.2942,2340.0,2400.0,-0.346,-1.363,4.7278,34.9804 2019-06-03 15:44:09.360,120.0941,8776.2246,3.6128,0.1925,0.9844,0.0513,2340.0,2400.0,-0.3489,-1.342,4.7172,34.9671 2019-06-03 15:44:09.380,120.0345,8775.0,3.6128,0.1925,1.0636,0.273,2340.0,2400.0,-0.3577,-1.351,4.7211,34.9671 2019-06-03 15:44:09.400,120.0345,8774.0889,3.5928,0.0787,1.1091,0.257,2400.0,2340.0,-0.3548,-1.348,4.7052,34.9439 2019-06-03 15:44:09.420,120.0225,8773.2344,3.5814,0.0383,0.8461,0.0242,2400.0,2340.0,-0.3606,-1.348,4.7238,34.9367 2019-06-03 15:44:09.440,120.0941,8772.0664,3.5814,0.0383,1.1379,0.2749,2400.0,2340.0,-0.3548,-1.351,4.7145,34.9367 2019-06-03 15:44:09.460,120.1418,8772.0371,3.5814,0.0383,0.9053,0.0546,2400.0,2340.0,-0.3606,-1.348,4.7079,34.9367 2019-06-03 15:44:09.480,120.0345,8772.0371,3.5713,-0.033,1.1997,0.2408,2400.0,2340.0,-0.3665,-1.345,4.7264,34.9223 2019-06-03 15:44:09.500,120.0345,8771.9805,3.5562,-0.1081,1.2263,0.2132,2400.0,2340.0,-0.3665,-1.2578,4.7013,34.907 2019-06-03 15:44:09.520,120.1657,8772.0088,3.5562,-0.1081,0.8043,0.0792,2400.0,2340.0,-0.3781,-1.2638,4.7119,34.907 2019-06-03 15:44:09.540,120.2847,8772.0371,3.5562,-0.1081,1.2318,0.2048,2400.0,2340.0,-0.3606,-1.2458,4.7145,34.907 2019-06-03 15:44:09.560,120.2966,8772.123,3.5366,-0.1869,0.8413,0.1483,2400.0,2340.0,-0.346,-1.2037,4.7039,34.8901 2019-06-03 15:44:09.580,120.2252,8772.1514,3.5206,-0.2629,1.1623,0.1545,2400.0,2340.0,-0.3489,-1.2037,4.7264,34.8729 2019-06-03 15:44:09.600,120.2371,8772.0664,3.5159,-0.2962,1.1853,0.1435,2400.0,2340.0,-0.3489,-1.1224,4.7158,34.865 2019-06-03 15:44:09.620,120.2609,8771.9238,3.5094,-0.3325,0.8114,0.1398,2400.0,2340.0,-0.3635,-1.1314,4.7278,34.8563 2019-06-03 15:44:09.640,120.3204,8771.9805,3.5094,-0.3325,1.2396,0.1521,2400.0,2340.0,-0.3665,-1.1193,4.737,34.8563 2019-06-03 15:44:09.660,120.2966,8771.9521,3.5094,-0.3325,0.8025,0.2024,2400.0,2340.0,-0.3606,-1.0741,4.7251,34.8563 2019-06-03 15:44:09.680,120.2133,8771.9238,3.4981,-0.4027,1.1756,0.1284,2400.0,2340.0,-0.3606,-1.0771,4.7317,34.8379 2019-06-03 15:44:09.700,120.2252,8771.8955,3.4798,-0.4736,1.1693,0.1159,2400.0,2340.0,-0.3577,-1.0621,4.7013,34.8184 2019-06-03 15:44:09.720,120.5103,8771.8955,3.4798,-0.4736,0.8868,0.2018,2400.0,2340.0,-0.3665,-1.0651,4.692,34.8184 2019-06-03 15:44:09.740,120.6878,8771.8096,3.4798,-0.4736,1.1546,0.1067,2400.0,2340.0,-0.3665,-0.9927,4.692,34.8184 2019-06-03 15:44:09.760,120.676,8771.8662,3.4637,-0.5391,0.8975,0.2315,2400.0,2340.0,-0.3635,-1.0047,4.6801,34.7996 2019-06-03 15:44:09.780,120.605,8771.9521,3.4637,-0.5391,1.1346,0.0848,2400.0,2340.0,-0.3635,-1.0168,4.692,34.7996 2019-06-03 15:44:09.800,120.6169,8771.9521,3.4473,-0.6279,1.1838,0.08,2400.0,2340.0,-0.3548,-1.0078,4.6669,34.7706 2019-06-03 15:44:09.820,120.6169,8771.9238,3.4475,-0.6539,0.8768,0.2461,2400.0,2340.0,-0.3577,-1.0108,4.6721,34.761 2019-06-03 15:44:09.840,120.6642,8772.0088,3.4475,-0.6539,1.0939,0.0743,2400.0,2340.0,-0.3548,-1.0108,4.6669,34.761 2019-06-03 15:44:09.860,120.676,8772.0088,3.4475,-0.6539,0.9234,0.2778,2400.0,2340.0,-0.3606,-1.0017,4.6351,34.761 2019-06-03 15:44:09.880,120.6169,8771.8955,3.4342,-0.7092,1.1172,0.0364,2400.0,2340.0,-0.3723,-1.0017,4.6271,34.7419 2019-06-03 15:44:09.900,120.6169,8771.8096,3.4147,-0.7641,1.0928,0.0028,2400.0,2340.0,-0.3577,-0.9685,4.5861,34.7227 2019-06-03 15:44:09.920,120.7469,8771.8096,3.4147,-0.7641,0.9319,0.2828,2400.0,2340.0,-0.3518,-0.9746,4.5742,34.7227 2019-06-03 15:44:09.940,120.8531,8771.7813,3.4147,-0.7641,1.1586,0.0384,2400.0,2340.0,-0.3431,-0.9715,4.557,34.7227 2019-06-03 15:44:09.960,120.8531,8771.8379,3.4017,-0.8143,0.9327,0.2875,2400.0,2340.0,-0.3489,-0.9655,4.5278,34.7028 2019-06-03 15:44:09.980,120.7941,8771.8662,3.4017,-0.8143,1.0732,-0.0018,2400.0,2340.0,-0.3577,-0.9715,4.5318,34.7028 2019-06-03 15:44:10.000,120.7705,8771.8955,3.383,-0.8878,1.0418,0.0017,2400.0,2340.0,-0.3548,-0.9715,4.5,34.6773 2019-06-03 15:44:10.020,120.8059,8771.7529,3.3831,-0.9052,1.031,0.306,2400.0,2340.0,-0.3635,-0.9685,4.5014,34.6685 2019-06-03 15:44:10.040,120.8649,8771.6387,3.3831,-0.9052,0.9922,0.0156,2400.0,2340.0,-0.3548,-0.9232,4.4894,34.6685 2019-06-03 15:44:10.060,120.8649,8771.6104,3.3831,-0.9052,0.9031,0.3,2400.0,2340.0,-0.3518,-0.9141,4.4616,34.6685 2019-06-03 15:44:10.080,120.7823,8771.667,3.3626,-0.953,1.0362,0.0063,2400.0,2340.0,-0.3606,-0.9202,4.4577,34.6506 2019-06-03 15:44:10.100,120.7941,8771.6104,3.3384,-0.9982,1.0414,0.0293,2400.0,2340.0,-0.3489,-0.9172,4.4153,34.6316 2019-06-03 15:44:10.120,121.0649,8771.6387,3.3384,-0.9982,0.9593,0.3034,2400.0,2340.0,-0.3577,-0.9202,4.4299,34.6316 2019-06-03 15:44:10.140,121.2293,8771.667,3.3384,-0.9982,0.9371,0.0098,2400.0,2340.0,-0.3548,-0.9172,4.4457,34.6316 2019-06-03 15:44:10.160,121.241,8771.582,3.3212,-1.0381,1.017,0.2831,2400.0,2340.0,-0.3518,-0.9172,4.4471,34.6139 2019-06-03 15:44:10.180,121.1706,8771.6104,3.3212,-1.0381,0.9205,-0.0104,2400.0,2340.0,-0.3635,-0.9323,4.4735,34.6139 2019-06-03 15:44:10.200,121.1472,8771.667,3.2835,-1.0996,0.9323,0.0132,2400.0,2340.0,-0.3577,-0.9292,4.4497,34.5857 2019-06-03 15:44:10.220,121.1706,8771.6953,3.2765,-1.1152,1.0954,0.311,2400.0,2340.0,-0.3635,-0.9292,4.4444,34.5785 2019-06-03 15:44:10.240,121.2293,8771.6953,3.2765,-1.1152,0.8683,0.0204,2400.0,2340.0,-0.3606,-0.9353,4.4457,34.5785 2019-06-03 15:44:10.260,121.241,8771.7246,3.2765,-1.1152,1.0647,0.2725,2400.0,2340.0,-0.3431,-0.9292,4.4166,34.5785 2019-06-03 15:44:10.280,121.1589,8771.1543,3.2451,-1.1569,0.9201,0.0321,2400.0,2340.0,-0.3518,-0.9292,4.4272,34.5599 2019-06-03 15:44:10.300,121.1589,8770.1289,3.216,-1.1935,0.8864,0.0521,2400.0,2340.0,-0.3518,-0.9262,4.4034,34.5424 2019-06-03 15:44:10.320,121.4282,8769.2744,3.216,-1.1935,1.1305,0.2524,2400.0,2340.0,-0.3606,-0.9353,4.4153,34.5424 2019-06-03 15:44:10.340,121.5799,8767.9365,3.216,-1.1935,0.8121,0.0881,2400.0,2340.0,-0.3577,-0.9292,4.4444,34.5424 2019-06-03 15:44:10.360,121.5799,8767.082,3.1907,-1.2298,1.1671,0.2006,2400.0,2340.0,-0.3577,-0.9021,4.4431,34.5249 2019-06-03 15:44:10.380,121.5216,8765.6865,3.1907,-1.2298,0.8036,0.089,2400.0,2340.0,-0.3635,-0.9081,4.463,34.5249 2019-06-03 15:44:10.400,121.5216,8764.7754,3.1371,-1.2883,0.7755,0.11,2400.0,2400.0,-0.3548,-0.899,4.4457,34.4963 2019-06-03 15:44:10.420,121.5333,8763.835,3.1223,-1.3049,1.2585,0.1965,2400.0,2400.0,-0.3548,-0.9474,4.4431,34.4878 2019-06-03 15:44:10.440,121.5916,8762.5537,3.1223,-1.3049,0.7851,0.1372,2400.0,2400.0,-0.346,-0.9504,4.4338,34.4878 2019-06-03 15:44:10.460,121.6032,8762.6104,3.1223,-1.3049,1.1727,0.1274,2400.0,2400.0,-0.3431,-0.9292,4.414,34.4878 2019-06-03 15:44:10.480,121.5216,8762.5537,3.0858,-1.3442,0.7333,0.1826,2400.0,2400.0,-0.3635,-0.9353,4.4246,34.4711 2019-06-03 15:44:10.500,121.5216,8762.4961,3.0564,-1.3785,0.6749,0.2161,2400.0,2400.0,-0.3548,-0.9323,4.4073,34.4543 2019-06-03 15:44:10.520,121.7894,8762.5254,3.0564,-1.3785,1.1124,0.091,2400.0,2400.0,-0.3635,-0.9323,4.4153,34.4543 2019-06-03 15:44:10.540,121.9519,8762.5537,3.0564,-1.3785,0.8343,0.2143,2400.0,2400.0,-0.3431,-0.9383,4.4563,34.4543 2019-06-03 15:44:10.560,121.9635,8762.5537,3.0279,-1.4115,1.2426,0.0484,2400.0,2400.0,-0.3372,-0.9353,4.4643,34.4368 2019-06-03 15:44:10.580,121.8823,8762.582,3.0279,-1.4115,0.7577,0.2718,2400.0,2400.0,-0.346,-0.9444,4.5119,34.4368 2019-06-03 15:44:10.600,121.8939,8762.6104,2.9732,-1.4636,0.75,0.2707,2400.0,2400.0,-0.3431,-0.9383,4.504,34.4102 2019-06-03 15:44:10.620,121.8939,8762.582,2.9503,-1.4824,1.1409,0.0325,2400.0,2400.0,-0.346,-1.0017,4.5239,34.4016 2019-06-03 15:44:10.640,121.9519,8762.6387,2.9503,-1.4824,0.7995,0.2717,2400.0,2400.0,-0.3548,-0.9927,4.5159,34.4016 2019-06-03 15:44:10.660,121.9751,8762.6104,2.9503,-1.4824,1.1154,-0.0339,2400.0,2400.0,-0.3518,-0.9776,4.4735,34.4016 2019-06-03 15:44:10.680,121.8939,8762.6104,2.9187,-1.515,0.8343,0.3107,2400.0,2400.0,-0.3694,-0.9836,4.4815,34.3848 2019-06-03 15:44:10.700,121.8939,8762.5254,2.8932,-1.543,0.8428,0.3357,2400.0,2400.0,-0.3606,-0.9806,4.4696,34.3706 2019-06-03 15:44:10.720,122.033,8762.5537,2.8932,-1.543,1.041,-0.0378,2400.0,2400.0,-0.3635,-0.9866,4.4841,34.3706 2019-06-03 15:44:10.740,122.1371,8762.582,2.8932,-1.543,0.8531,0.3177,2400.0,2400.0,-0.3577,-0.9866,4.5172,34.3706 2019-06-03 15:44:10.760,122.1255,8762.6104,2.8607,-1.5762,1.0455,-0.029,2400.0,2400.0,-0.3518,-0.9836,4.5093,34.3549 2019-06-03 15:44:10.780,122.0793,8762.667,2.8607,-1.5762,0.9818,0.3029,2400.0,2400.0,-0.3548,-0.9866,4.5517,34.3549 2019-06-03 15:44:10.800,122.0561,8762.7529,2.8194,-1.6222,1.0451,0.3281,2400.0,2400.0,-0.3489,-0.9866,4.5424,34.3326 2019-06-03 15:44:10.820,122.0793,8762.7246,2.7974,-1.6412,0.9818,-0.0042,2400.0,2400.0,-0.3548,-0.9866,4.5265,34.3243 2019-06-03 15:44:10.840,122.1486,8762.7246,2.7974,-1.6412,0.9726,0.2838,2400.0,2400.0,-0.3577,-0.9896,4.5371,34.3243 2019-06-03 15:44:10.860,122.1602,8762.7246,2.7974,-1.6412,0.9989,0.0043,2400.0,2400.0,-0.3577,-0.9836,4.5066,34.3243 2019-06-03 15:44:10.880,122.0677,8762.7246,2.7745,-1.6702,1.2019,0.2442,2400.0,2400.0,-0.3694,-1.0168,4.5331,34.3107 2019-06-03 15:44:10.900,122.0793,8762.6963,2.7482,-1.7016,1.1594,0.2332,2400.0,2400.0,-0.3577,-1.0228,4.5517,34.2969 2019-06-03 15:44:10.920,122.3332,8762.7246,2.7482,-1.7016,0.8169,0.0776,2400.0,2400.0,-0.346,-1.0259,4.5728,34.2969 2019-06-03 15:44:10.940,122.4943,8762.7246,2.7482,-1.7016,1.149,0.1832,2400.0,2400.0,-0.3548,-1.044,4.6192,34.2969 2019-06-03 15:44:10.960,122.4943,8762.7529,2.7174,-1.7373,0.8099,0.1143,2400.0,2400.0,-0.3489,-1.0409,4.6099,34.2834 2019-06-03 15:44:10.980,122.4368,8762.6963,2.6949,-1.7722,1.1527,0.1329,2400.0,2400.0,-0.3752,-1.044,4.6139,34.2725 2019-06-03 15:44:11.000,122.4368,8762.6963,2.6876,-1.7871,1.1187,0.1374,2400.0,2400.0,-0.3635,-1.0409,4.6086,34.2659 2019-06-03 15:44:11.020,122.4368,8762.6387,2.6794,-1.8048,0.7699,0.172,2400.0,2400.0,-0.3489,-1.044,4.5993,34.2591 2019-06-03 15:44:11.040,122.5058,8762.6387,2.6794,-1.8048,1.1497,0.0879,2400.0,2400.0,-0.3401,-1.0409,4.6218,34.2591 2019-06-03 15:44:11.060,122.5288,8762.582,2.6794,-1.8048,0.8576,0.2068,2400.0,2400.0,-0.3372,-1.0379,4.6218,34.2591 2019-06-03 15:44:11.080,122.4253,8762.582,2.6603,-1.8373,1.1087,0.0635,2400.0,2400.0,-0.3489,-1.0409,4.6841,34.2465 2019-06-03 15:44:11.100,122.4483,8762.4961,2.639,-1.8747,1.0273,0.06,2400.0,2400.0,-0.3548,-1.0379,4.7185,34.2329 2019-06-03 15:44:11.120,122.5632,8762.4678,2.639,-1.8747,0.879,0.2634,2400.0,2400.0,-0.3548,-1.0168,4.7291,34.2329 2019-06-03 15:44:11.140,122.6894,8762.4678,2.639,-1.8747,1.1131,0.0198,2400.0,2400.0,-0.3606,-1.0198,4.7489,34.2329 2019-06-03 15:44:11.160,122.6779,8762.4961,2.622,-1.9101,0.8217,0.2559,2400.0,2400.0,-0.346,-1.0168,4.7225,34.2198 2019-06-03 15:44:11.180,122.6206,8762.582,2.622,-1.9101,1.0765,0.011,2400.0,2400.0,-0.3489,-1.0198,4.7185,34.2198 2019-06-03 15:44:11.200,122.6092,8762.6387,2.6053,-1.9581,0.9626,0.0304,2400.0,2400.0,-0.346,-1.0138,4.7278,34.2014 2019-06-03 15:44:11.220,122.6206,8762.667,2.607,-1.9715,0.9297,0.2704,2400.0,2400.0,-0.3489,-1.0078,4.7079,34.1958 2019-06-03 15:44:11.240,122.7009,8762.667,2.607,-1.9715,0.9545,-0.0034,2400.0,2400.0,-0.3577,-1.0047,4.7383,34.1958 2019-06-03 15:44:11.260,122.6894,8762.667,2.607,-1.9715,0.9874,0.2801,2400.0,2400.0,-0.3577,-0.9776,4.737,34.1958 2019-06-03 15:44:11.280,122.6092,8762.0977,2.5953,-2.008,0.9186,-0.0179,2400.0,2400.0,-0.3577,-0.9836,4.7436,34.1824 2019-06-03 15:44:11.300,122.6206,8761.1582,2.5885,-2.0409,0.9149,-0.0086,2400.0,2400.0,-0.3518,-0.9866,4.7582,34.1708 2019-06-03 15:44:11.320,122.8725,8760.3037,2.5885,-2.0409,1.1039,0.2564,2400.0,2400.0,-0.3343,-0.9564,4.7463,34.1708 2019-06-03 15:44:11.340,123.0322,8759.0508,2.5885,-2.0409,0.8284,0.0146,2400.0,2400.0,-0.3577,-0.9746,4.7397,34.1708 2019-06-03 15:44:11.360,123.0436,8758.1973,2.5906,-2.0718,1.1209,0.2466,2400.0,2400.0,-0.3518,-0.9685,4.7158,34.1595 2019-06-03 15:44:11.380,122.9638,8756.8301,2.5906,-2.0718,0.8361,0.0482,2400.0,2400.0,-0.3577,-0.9776,4.6907,34.1595 2019-06-03 15:44:11.400,122.9638,8755.9189,2.5868,-2.1209,0.8121,0.0539,2340.0,2400.0,-0.3577,-0.9715,4.7026,34.1418 2019-06-03 15:44:11.420,122.9638,8755.0645,2.5909,-2.1355,1.1575,0.1784,2340.0,2400.0,-0.3372,-0.9776,4.7079,34.1365 2019-06-03 15:44:11.440,123.0322,8753.8975,2.5909,-2.1355,0.8295,0.1012,2340.0,2400.0,-0.3548,-0.9776,4.7211,34.1365 2019-06-03 15:44:11.460,123.0436,8753.9541,2.5909,-2.1355,1.1649,0.1664,2340.0,2400.0,-0.3431,-0.9715,4.7251,34.1365 2019-06-03 15:44:11.480,122.9638,8753.9824,2.5911,-2.1716,0.8017,0.1488,2340.0,2400.0,-0.3606,-1.0047,4.7211,34.1234 2019-06-03 15:44:11.500,122.9638,8753.8975,2.5968,-2.2009,0.798,0.1628,2340.0,2400.0,-0.3577,-1.0017,4.7278,34.1105 2019-06-03 15:44:11.520,123.2483,8753.8408,2.5968,-2.2009,1.2122,0.092,2340.0,2400.0,-0.3548,-0.9685,4.7172,34.1105 2019-06-03 15:44:11.540,123.3845,8753.8691,2.5968,-2.2009,0.8224,0.2084,2340.0,2400.0,-0.3635,-0.9746,4.7172,34.1105 2019-06-03 15:44:11.560,123.3845,8753.9258,2.6057,-2.229,1.1139,0.054,2340.0,2400.0,-0.3518,-0.9715,4.692,34.0989 2019-06-03 15:44:11.580,123.3278,8753.9541,2.6057,-2.229,0.8872,0.2397,2340.0,2400.0,-0.3577,-0.9957,4.6933,34.0989 2019-06-03 15:44:11.600,123.3278,8753.9541,2.6129,-2.2753,0.8731,0.2552,2340.0,2400.0,-0.3548,-1.0017,4.7132,34.0817 2019-06-03 15:44:11.620,123.3165,8753.9258,2.6088,-2.2949,1.068,0.0366,2340.0,2400.0,-0.3548,-0.9896,4.696,34.0747 2019-06-03 15:44:11.640,123.3958,8753.9824,2.6088,-2.2949,0.9401,0.2683,2340.0,2400.0,-0.3781,-0.9896,4.7066,34.0747 2019-06-03 15:44:11.660,123.3958,8753.9541,2.6088,-2.2949,1.0547,0.0113,2340.0,2400.0,-0.3489,-0.9866,4.6907,34.0747 2019-06-03 15:44:11.680,123.3165,8753.9824,2.6182,-2.3226,0.9474,0.2965,2340.0,2400.0,-0.3548,-0.9896,4.7132,34.0626 2019-06-03 15:44:11.700,123.3278,8753.9258,2.6304,-2.3502,1.0159,0.2878,2340.0,2400.0,-0.3489,-0.9927,4.7278,34.05 2019-06-03 15:44:11.720,123.5769,8754.0107,2.6304,-2.3502,0.9463,0.0064,2340.0,2400.0,-0.346,-0.9927,4.7119,34.05 2019-06-03 15:44:11.740,123.7348,8754.04,2.6304,-2.3502,1.1368,0.2744,2340.0,2400.0,-0.3665,-0.9896,4.7225,34.05 2019-06-03 15:44:11.760,123.7461,8754.0967,2.6361,-2.3825,0.9138,0.0309,2340.0,2400.0,-0.3606,-0.9746,4.6973,34.0382 2019-06-03 15:44:11.780,123.6672,8754.125,2.6361,-2.3825,1.1416,0.291,2340.0,2400.0,-0.3606,-0.9776,4.6907,34.0382 2019-06-03 15:44:11.800,123.6672,8754.0684,2.6504,-2.4287,1.0928,0.2646,2340.0,2400.0,-0.3606,-0.9776,4.7158,34.0194 2019-06-03 15:44:11.820,123.6785,8754.0684,2.6471,-2.4495,0.9034,0.0268,2340.0,2400.0,-0.346,-0.9806,4.7,34.0108 2019-06-03 15:44:11.840,123.7461,8754.0967,2.6471,-2.4495,1.2836,0.2361,2340.0,2400.0,-0.3577,-0.9776,4.6973,34.0108 2019-06-03 15:44:11.860,123.7574,8754.0967,2.6471,-2.4495,0.8199,0.0659,2340.0,2400.0,-0.346,-0.9715,4.6986,34.0108 2019-06-03 15:44:11.880,123.6785,8754.0967,2.6618,-2.4755,1.2182,0.2222,2340.0,2400.0,-0.3606,-0.9746,4.7052,33.9964 2019-06-03 15:44:11.900,123.6785,8754.0684,2.6691,-2.5061,1.2389,0.1744,2340.0,2400.0,-0.3635,-0.9776,4.7251,33.9805 2019-06-03 15:44:11.920,123.9374,8754.0684,2.6691,-2.5061,0.7784,0.1287,2340.0,2400.0,-0.3635,-0.9776,4.7052,33.9805 2019-06-03 15:44:11.940,124.072,8754.0967,2.6691,-2.5061,1.2662,0.1649,2340.0,2400.0,-0.3606,-0.9806,4.7105,33.9805 2019-06-03 15:44:11.960,124.1056,8754.125,2.6715,-2.5385,0.7455,0.1405,2340.0,2400.0,-0.3518,-0.9776,4.7,33.9656 2019-06-03 15:44:11.980,124.0384,8754.0684,2.6715,-2.5385,1.2692,0.1228,2340.0,2400.0,-0.3518,-0.9746,4.7132,33.9656 2019-06-03 15:44:12.000,124.0272,8754.125,2.6884,-2.5833,1.1949,0.0915,2340.0,2400.0,-0.3548,-0.9806,4.7238,33.9413 2019-06-03 15:44:12.020,124.0496,8754.125,2.6933,-2.5974,0.9131,0.1852,2340.0,2400.0,-0.3548,-0.9776,4.7092,33.9333 2019-06-03 15:44:12.040,124.0944,8754.1533,2.6933,-2.5974,1.2037,0.0933,2340.0,2400.0,-0.3577,-1.0047,4.7304,33.9333 2019-06-03 15:44:12.060,124.1056,8754.125,2.6933,-2.5974,0.7714,0.2377,2340.0,2400.0,-0.3606,-1.0017,4.7225,33.9333 2019-06-03 15:44:12.080,124.0159,8754.0967,2.7034,-2.6268,1.284,0.0674,2340.0,2400.0,-0.3665,-0.9987,4.7331,33.9166 2019-06-03 15:44:12.100,124.0384,8753.9824,2.7049,-2.6612,1.1819,0.0537,2340.0,2400.0,-0.3665,-1.0017,4.745,33.8998 2019-06-03 15:44:12.120,124.2958,8753.9541,2.7049,-2.6612,0.9286,0.2236,2340.0,2400.0,-0.3577,-0.9987,4.7211,33.8998 2019-06-03 15:44:12.140,124.4409,8754.0107,2.7049,-2.6612,1.1154,0.0416,2340.0,2400.0,-0.3723,-1.0017,4.7331,33.8998 2019-06-03 15:44:12.160,124.452,8754.04,2.7111,-2.6943,0.818,0.2786,2340.0,2400.0,-0.3606,-0.9957,4.737,33.8819 2019-06-03 15:44:12.180,124.374,8754.0684,2.7111,-2.6943,1.1283,0.0432,2340.0,2400.0,-0.3665,-0.9957,4.7423,33.8819 2019-06-03 15:44:12.200,124.374,8754.0967,2.7201,-2.7414,1.1242,0.0206,2340.0,2400.0,-0.3606,-0.9957,4.7675,33.8565 2019-06-03 15:44:12.220,124.3851,8754.0684,2.7292,-2.7529,0.9393,0.2838,2340.0,2400.0,-0.3548,-0.9957,4.7397,33.8478 2019-06-03 15:44:12.240,124.452,8754.04,2.7292,-2.7529,1.0532,-0.0007,2340.0,2400.0,-0.3606,-0.9957,4.7423,33.8478 2019-06-03 15:44:12.260,124.452,8754.0107,2.7292,-2.7529,0.9619,0.2852,2340.0,2400.0,-0.3577,-0.9957,4.745,33.8478 2019-06-03 15:44:12.280,124.374,8753.4707,2.7305,-2.7842,0.994,0.0037,2340.0,2400.0,-0.3518,-0.9957,4.7383,33.8292 2019-06-03 15:44:12.300,124.374,8752.502,2.7331,-2.8198,1.0096,-0.0066,2340.0,2400.0,-0.3577,-0.9957,4.7582,33.8111 2019-06-03 15:44:12.320,124.6412,8751.6201,2.7331,-2.8198,1.1283,0.2926,2340.0,2400.0,-0.3548,-0.9957,4.7529,33.8111 2019-06-03 15:44:12.340,124.7965,8750.2529,2.7331,-2.8198,0.9445,-0.0221,2340.0,2400.0,-0.3694,-0.9957,4.7648,33.8111 2019-06-03 15:44:12.360,124.7854,8749.3135,2.7407,-2.8482,1.0614,0.3077,2340.0,2400.0,-0.3548,-0.9927,4.782,33.7932 2019-06-03 15:44:12.380,124.7189,8747.9189,2.7523,-2.8758,1.0144,0.0013,2340.0,2400.0,-0.3431,-0.9957,4.7754,33.7746 2019-06-03 15:44:12.400,124.73,8747.0654,2.7476,-2.8961,0.902,0.0006,2400.0,2340.0,-0.3285,-0.9957,4.7847,33.7641 2019-06-03 15:44:12.420,124.73,8746.1826,2.7568,-2.908,1.0813,0.2433,2400.0,2340.0,-0.3168,-0.9564,4.7556,33.7549 2019-06-03 15:44:12.440,124.7965,8744.9863,2.7568,-2.908,0.8968,0.0287,2400.0,2340.0,-0.3138,-0.9564,4.7569,33.7549 2019-06-03 15:44:12.460,124.8076,8745.0156,2.7568,-2.908,1.1738,0.2581,2400.0,2340.0,-0.3109,-0.9081,4.7622,33.7549 2019-06-03 15:44:12.480,124.7189,8744.9863,2.7584,-2.9411,0.9027,0.057,2400.0,2340.0,-0.308,-0.8627,4.7609,33.7355 2019-06-03 15:44:12.500,124.7411,8744.873,2.7648,-2.9704,0.8165,0.0597,2400.0,2340.0,-0.308,-0.8688,4.7847,33.716 2019-06-03 15:44:12.520,124.8519,8744.9297,2.7648,-2.9704,1.21,0.1985,2400.0,2340.0,-0.308,-0.8688,4.7714,33.716 2019-06-03 15:44:12.540,124.9625,8744.9297,2.7648,-2.9704,0.8724,0.0826,2400.0,2340.0,-0.3197,-0.8688,4.7873,33.716 2019-06-03 15:44:12.560,124.9735,8744.9863,2.7752,-2.9957,1.2655,0.1869,2400.0,2340.0,-0.3197,-0.8658,4.782,33.6987 2019-06-03 15:44:12.580,124.9072,8744.9863,2.7752,-2.9957,0.9038,0.1244,2400.0,2340.0,-0.3138,-0.8446,4.7728,33.6987 2019-06-03 15:44:12.600,124.9072,8744.958,2.7837,-3.035,0.8605,0.1063,2400.0,2340.0,-0.3226,-0.8416,4.7714,33.6725 2019-06-03 15:44:12.620,124.9183,8744.873,2.7867,-3.0457,1.2633,0.1524,2400.0,2340.0,-0.308,-0.778,4.7622,33.6638 2019-06-03 15:44:12.640,124.9735,8744.8447,2.7867,-3.0457,0.8324,0.1577,2400.0,2340.0,-0.3051,-0.7841,4.7648,33.6638 2019-06-03 15:44:12.660,124.9956,8744.8164,2.7867,-3.0457,1.1793,0.1183,2400.0,2340.0,-0.2963,-0.7841,4.7728,33.6638 2019-06-03 15:44:12.680,124.8961,8744.7305,2.7928,-3.0668,0.8443,0.2059,2400.0,2340.0,-0.2963,-0.7599,4.7556,33.6461 2019-06-03 15:44:12.700,124.9183,8744.7305,2.8026,-3.0827,0.8439,0.2007,2400.0,2340.0,-0.3109,-0.7568,4.7582,33.6294 2019-06-03 15:44:12.720,125.1721,8744.7021,2.8026,-3.0827,1.1993,0.0699,2400.0,2340.0,-0.3109,-0.675,4.7436,33.6294 2019-06-03 15:44:12.740,125.3151,8744.6738,2.8026,-3.0827,0.8912,0.2244,2400.0,2340.0,-0.3138,-0.6902,4.7529,33.6294 2019-06-03 15:44:12.760,125.3042,8744.6738,2.8117,-3.0958,1.0906,0.0675,2400.0,2340.0,-0.3109,-0.6932,4.7529,33.6124 2019-06-03 15:44:12.780,125.2382,8744.7305,2.8117,-3.0958,0.8372,0.2358,2400.0,2340.0,-0.308,-0.6508,4.7436,33.6124 2019-06-03 15:44:12.800,125.2492,8744.7871,2.8221,-3.114,0.8997,0.236,2400.0,2340.0,-0.308,-0.6508,4.7476,33.5892 2019-06-03 15:44:12.820,125.2602,8744.7305,2.8189,-3.1209,1.1257,0.0407,2400.0,2340.0,-0.2963,-0.5749,4.7344,33.5805 2019-06-03 15:44:12.840,125.3151,8744.7871,2.8189,-3.1209,0.9878,0.2743,2400.0,2340.0,-0.3021,-0.584,4.7357,33.5805 2019-06-03 15:44:12.860,125.3261,8744.7305,2.8189,-3.1209,1.0588,0.029,2400.0,2340.0,-0.2905,-0.5749,4.7317,33.5805 2019-06-03 15:44:12.880,125.2492,8744.7305,2.8285,-3.1265,0.9715,0.289,2400.0,2340.0,-0.2963,-0.5263,4.7198,33.5617 2019-06-03 15:44:12.900,125.2492,8744.6738,2.8406,-3.1263,1.0051,0.2822,2400.0,2340.0,-0.3109,-0.5263,4.7304,33.5444 2019-06-03 15:44:12.920,125.5236,8744.7305,2.8406,-3.1263,1.0754,0.0561,2400.0,2340.0,-0.3109,-0.4838,4.7066,33.5444 2019-06-03 15:44:12.940,125.6549,8744.7588,2.8406,-3.1263,1.0151,0.2603,2400.0,2340.0,-0.3109,-0.4868,4.7039,33.5444 2019-06-03 15:44:12.960,125.6658,8744.7588,2.8454,-3.1258,0.9852,0.0044,2400.0,2340.0,-0.3051,-0.4868,4.6761,33.5269 2019-06-03 15:44:12.980,125.6002,8744.8164,2.8454,-3.1258,1.0647,0.3128,2400.0,2340.0,-0.2905,-0.4686,4.6642,33.5269 2019-06-03 15:44:13.000,125.5893,8744.873,2.863,-3.1168,1.0787,0.3,2400.0,2340.0,-0.3051,-0.4838,4.6721,33.5003 2019-06-03 15:44:13.020,125.6112,8744.8447,2.8564,-3.1149,1.058,0.0039,2400.0,2340.0,-0.2934,-0.4868,4.6563,33.4904 2019-06-03 15:44:13.040,125.6658,8744.7588,2.8564,-3.1149,1.2111,0.3086,2400.0,2340.0,-0.2963,-0.4868,4.6735,33.4904 2019-06-03 15:44:13.060,125.6658,8744.7871,2.8564,-3.1149,0.9068,0.009,2400.0,2340.0,-0.2992,-0.4899,4.6774,33.4904 2019-06-03 15:44:13.080,125.5893,8744.2471,2.8692,-3.1003,1.1583,0.2585,2400.0,2340.0,-0.3051,-0.4899,4.6576,33.4712 2019-06-03 15:44:13.100,125.6002,8743.2793,2.8776,-3.0789,1.1764,0.2603,2400.0,2340.0,-0.3168,-0.499,4.6748,33.4524 2019-06-03 15:44:13.120,125.7095,8742.4541,2.8776,-3.0789,0.9641,0.0406,2400.0,2340.0,-0.308,-0.4838,4.651,33.4524 2019-06-03 15:44:13.140,125.8295,8741.2295,2.8776,-3.0789,1.2352,0.2509,2400.0,2340.0,-0.308,-0.4747,4.6576,33.4524 2019-06-03 15:44:13.160,125.8404,8740.2617,2.8766,-3.0611,0.9142,0.0687,2400.0,2340.0,-0.2992,-0.4808,4.6721,33.4325 2019-06-03 15:44:13.180,125.7641,8738.9248,2.8766,-3.0611,1.2167,0.2256,2400.0,2340.0,-0.2963,-0.4808,4.6549,33.4325 2019-06-03 15:44:13.200,125.775,8738.127,2.8887,-3.0233,1.2629,0.2344,2400.0,2340.0,-0.3051,-0.4808,4.6774,33.4052 2019-06-03 15:44:13.220,125.7641,8737.2451,2.8872,-3.0129,0.9116,0.0839,2400.0,2340.0,-0.3021,-0.4808,4.6629,33.3947 2019-06-03 15:44:13.240,125.8295,8736.0781,2.8872,-3.0129,1.2681,0.2254,2400.0,2340.0,-0.3051,-0.4808,4.6682,33.3947 2019-06-03 15:44:13.260,125.8404,8736.1064,2.8872,-3.0129,0.8054,0.0967,2400.0,2340.0,-0.2963,-0.4808,4.6827,33.3947 2019-06-03 15:44:13.280,125.7859,8736.0215,2.8948,-2.9849,1.2126,0.1758,2400.0,2340.0,-0.2934,-0.4656,4.6669,33.3744 2019-06-03 15:44:13.300,125.7641,8735.8789,2.8952,-2.9587,1.2855,0.1677,2400.0,2340.0,-0.3226,-0.4625,4.6801,33.3541 2019-06-03 15:44:13.320,126.0363,8735.9072,2.8952,-2.9587,0.8062,0.152,2400.0,2340.0,-0.3109,-0.4625,4.6616,33.3541 2019-06-03 15:44:13.340,126.1665,8736.0215,2.8952,-2.9587,1.254,0.1594,2400.0,2340.0,-0.3138,-0.4656,4.6563,33.3541 2019-06-03 15:44:13.360,126.1773,8736.0498,2.8917,-2.9313,0.7707,0.1519,2400.0,2340.0,-0.3021,-0.4656,4.6457,33.3335 2019-06-03 15:44:13.380,126.1123,8736.0215,2.8917,-2.9313,1.2881,0.104,2400.0,2340.0,-0.2875,-0.4656,4.6245,33.3335 2019-06-03 15:44:13.400,126.1123,8736.0498,2.9014,-2.8804,1.2618,0.1012,2400.0,2400.0,-0.3051,-0.4838,4.6324,33.3044 2019-06-03 15:44:13.420,126.1123,8736.0498,2.9048,-2.864,0.7736,0.2282,2400.0,2400.0,-0.2905,-0.4777,4.6205,33.2937 2019-06-03 15:44:13.440,126.1882,8736.0215,2.9048,-2.864,1.2111,0.0716,2400.0,2400.0,-0.3021,-0.4929,4.6165,33.2937 2019-06-03 15:44:13.460,126.1882,8736.0498,2.9048,-2.864,0.7873,0.2059,2400.0,2400.0,-0.308,-0.5172,4.6285,33.2937 2019-06-03 15:44:13.480,126.1123,8735.9932,2.9071,-2.8305,1.2892,0.0363,2400.0,2400.0,-0.308,-0.5203,4.598,33.2738 2019-06-03 15:44:13.500,126.1231,8735.9639,2.904,-2.7997,1.2574,0.0307,2400.0,2400.0,-0.3255,-0.5385,4.5993,33.2533 2019-06-03 15:44:13.520,126.3721,8735.9639,2.904,-2.7997,0.842,0.2872,2400.0,2400.0,-0.3168,-0.5476,4.5742,33.2533 2019-06-03 15:44:13.540,126.5124,8736.0215,2.904,-2.7997,1.2122,0.0219,2400.0,2400.0,-0.3051,-0.5537,4.5556,33.2533 2019-06-03 15:44:13.560,126.5124,8736.0781,2.9002,-2.769,0.8813,0.256,2400.0,2400.0,-0.3051,-0.5689,4.5609,33.2323 2019-06-03 15:44:13.580,126.4585,8735.9639,2.9002,-2.769,1.2555,-0.0319,2400.0,2400.0,-0.308,-0.5719,4.5199,33.2323 2019-06-03 15:44:13.600,126.4477,8735.9355,2.9011,-2.7206,1.2023,-0.0149,2400.0,2400.0,-0.3168,-0.584,4.545,33.203 2019-06-03 15:44:13.620,126.4585,8735.9639,2.9068,-2.7011,0.9201,0.3235,2400.0,2400.0,-0.3197,-0.584,4.5331,33.1923 2019-06-03 15:44:13.640,126.5232,8736.0498,2.9068,-2.7011,1.22,-0.0257,2400.0,2400.0,-0.3255,-0.6235,4.5397,33.1923 2019-06-03 15:44:13.660,126.5232,8736.0498,2.9068,-2.7011,0.8746,0.3225,2400.0,2400.0,-0.3255,-0.6235,4.5517,33.1923 2019-06-03 15:44:13.680,126.4585,8736.0498,2.9005,-2.6732,1.2592,-0.0774,2400.0,2400.0,-0.3109,-0.584,4.5133,33.1702 2019-06-03 15:44:13.700,126.4585,8735.9932,2.8928,-2.6451,1.0983,-0.0707,2400.0,2400.0,-0.3226,-0.6174,4.5265,33.1475 2019-06-03 15:44:13.720,126.7277,8735.9355,2.8928,-2.6451,1.0144,0.3637,2400.0,2400.0,-0.3168,-0.6113,4.5066,33.1475 2019-06-03 15:44:13.740,126.8564,8735.9639,2.8928,-2.6451,1.0858,-0.0387,2400.0,2400.0,-0.3197,-0.6083,4.4947,33.1475 2019-06-03 15:44:13.760,126.835,8735.9932,2.8883,-2.6163,0.9156,0.3141,2400.0,2400.0,-0.3343,-0.6113,4.4961,33.1254 2019-06-03 15:44:13.780,126.8028,8736.0215,2.8902,-2.5836,1.1105,-0.0436,2400.0,2400.0,-0.3285,-0.6053,4.4603,33.1051 2019-06-03 15:44:13.800,126.7921,8735.9932,2.8793,-2.5727,1.0074,-0.0201,2400.0,2400.0,-0.3314,-0.6113,4.4735,33.0948 2019-06-03 15:44:13.820,126.7921,8735.9932,2.8819,-2.5549,1.0958,0.3128,2400.0,2400.0,-0.3197,-0.6113,4.4577,33.0846 2019-06-03 15:44:13.840,126.8564,8736.0498,2.8819,-2.5549,1.0066,-0.0035,2400.0,2400.0,-0.3168,-0.6113,4.451,33.0846 2019-06-03 15:44:13.860,126.8564,8736.0215,2.8819,-2.5549,0.9992,0.3033,2400.0,2400.0,-0.3343,-0.6295,4.459,33.0846 2019-06-03 15:44:13.880,126.7921,8736.0781,2.8685,-2.5321,0.9848,-0.0317,2400.0,2400.0,-0.3314,-0.6235,4.4285,33.0625 2019-06-03 15:44:13.900,126.7921,8736.0781,2.8566,-2.5066,0.8609,0.023,2400.0,2400.0,-0.3401,-0.6417,4.4325,33.0408 2019-06-03 15:44:13.920,127.0277,8736.1631,2.8566,-2.5066,1.1812,0.2546,2400.0,2400.0,-0.3226,-0.6477,4.3954,33.0408 2019-06-03 15:44:13.940,127.1665,8736.2207,2.8566,-2.5066,0.99,0.042,2400.0,2400.0,-0.3138,-0.6417,4.3822,33.0408 2019-06-03 15:44:13.960,127.1879,8736.334,2.8512,-2.4798,1.0569,0.2416,2400.0,2400.0,-0.3255,-0.6538,4.3862,33.019 2019-06-03 15:44:13.980,127.1132,8736.3623,2.8512,-2.4798,0.8827,0.057,2400.0,2400.0,-0.3168,-0.669,4.3597,33.019 2019-06-03 15:44:14.000,127.1239,8736.3623,2.8271,-2.4443,0.8054,0.0733,2400.0,2400.0,-0.3314,-0.7235,4.3729,32.9877 2019-06-03 15:44:14.020,127.1239,8736.3623,2.821,-2.4313,1.2463,0.1883,2400.0,2400.0,-0.3372,-0.7235,4.3398,32.977 2019-06-03 15:44:14.040,127.1879,8736.4199,2.821,-2.4313,0.8332,0.1011,2400.0,2400.0,-0.3343,-0.778,4.3213,32.977 2019-06-03 15:44:14.060,127.2092,8736.4199,2.821,-2.4313,1.2141,0.1628,2400.0,2400.0,-0.3431,-0.8234,4.3107,32.977 2019-06-03 15:44:14.080,127.1132,8735.7656,2.8006,-2.4105,0.7537,0.1105,2400.0,2400.0,-0.3285,-0.8144,4.2683,32.9547 2019-06-03 15:44:14.100,127.1239,8734.7412,2.7835,-2.3854,0.7418,0.1627,2400.0,2400.0,-0.346,-0.8658,4.2789,32.9344 2019-06-03 15:44:14.120,127.2518,8733.7734,2.7835,-2.3854,1.2507,0.1166,2400.0,2400.0,-0.3401,-0.8688,4.267,32.9344 2019-06-03 15:44:14.140,127.3476,8732.4932,2.7835,-2.3854,0.7966,0.1882,2400.0,2400.0,-0.3431,-0.893,4.263,32.9344 2019-06-03 15:44:14.160,127.3476,8731.6387,2.7678,-2.3632,1.2858,0.0651,2400.0,2400.0,-0.3489,-0.9232,4.263,32.9143 2019-06-03 15:44:14.180,127.2838,8730.1875,2.7678,-2.3632,0.7185,0.2326,2400.0,2400.0,-0.3343,-0.9232,4.2299,32.9143 2019-06-03 15:44:14.200,127.2944,8729.249,2.7282,-2.3414,0.7951,0.2573,2400.0,2400.0,-0.3489,-0.9232,4.2445,32.8841 2019-06-03 15:44:14.220,127.2944,8728.2529,2.71,-2.3378,1.2285,0.005,2400.0,2400.0,-0.346,-0.9232,4.2313,32.8734 2019-06-03 15:44:14.240,127.3582,8727.0576,2.71,-2.3378,0.7762,0.2759,2400.0,2400.0,-0.3518,-0.9444,4.2246,32.8734 2019-06-03 15:44:14.260,127.3795,8727.001,2.71,-2.3378,1.2367,-0.0223,2400.0,2400.0,-0.3635,-0.9564,4.222,32.8734 2019-06-03 15:44:14.280,127.2838,8726.9727,2.6852,-2.3287,0.7544,0.3131,2400.0,2400.0,-0.3606,-0.9504,4.1902,32.8531 2019-06-03 15:44:14.300,127.305,8726.8301,2.6609,-2.318,0.7988,0.3444,2400.0,2400.0,-0.3635,-0.9534,4.2061,32.8339 2019-06-03 15:44:14.320,127.4114,8726.7734,2.6609,-2.318,1.1756,-0.0748,2400.0,2400.0,-0.3518,-0.9564,4.1889,32.8339 2019-06-03 15:44:14.340,127.5175,8726.8018,2.6609,-2.318,0.8443,0.3558,2400.0,2400.0,-0.3518,-0.9504,4.1876,32.8339 2019-06-03 15:44:14.360,127.5281,8726.8301,2.6281,-2.3122,1.1605,-0.0791,2400.0,2400.0,-0.3577,-0.9534,4.1955,32.8138 2019-06-03 15:44:14.380,127.4645,8726.8867,2.6281,-2.3122,0.9271,0.3425,2400.0,2400.0,-0.3577,-0.9504,4.1598,32.8138 2019-06-03 15:44:14.400,127.4751,8726.8584,2.5798,-2.31,0.9186,0.3649,2400.0,2400.0,-0.3518,-0.9504,4.1836,32.7864 2019-06-03 15:44:14.420,127.4751,8726.8301,2.5527,-2.3162,1.0344,-0.0837,2400.0,2400.0,-0.3431,-0.9474,4.1717,32.7766 2019-06-03 15:44:14.440,127.5281,8726.8584,2.5527,-2.3162,1.0225,0.3334,2400.0,2400.0,-0.3343,-0.9474,4.173,32.7766 2019-06-03 15:44:14.460,127.5281,8726.8301,2.5527,-2.3162,0.9611,-0.0829,2400.0,2400.0,-0.3548,-0.9474,4.1717,32.7766 2019-06-03 15:44:14.480,127.4539,8726.8584,2.5251,-2.3199,1.0543,0.3236,2400.0,2400.0,-0.3577,-0.9172,4.1584,32.7596 2019-06-03 15:44:14.500,127.4751,8726.7451,2.4896,-2.3243,1.0739,0.3329,2400.0,2400.0,-0.3665,-0.9444,4.1717,32.7425 2019-06-03 15:44:14.520,127.7187,8726.7734,2.4896,-2.3243,0.8509,-0.0692,2400.0,2400.0,-0.3548,-0.9534,4.1677,32.7425 2019-06-03 15:44:14.540,127.8454,8726.8301,2.4896,-2.3243,1.1105,0.2826,2400.0,2400.0,-0.3343,-0.9504,4.1677,32.7425 2019-06-03 15:44:14.560,127.8454,8726.8867,2.4441,-2.3364,0.8114,-0.0216,2400.0,2400.0,-0.3401,-0.9534,4.1637,32.7248 2019-06-03 15:44:14.580,127.7821,8726.915,2.4441,-2.3364,1.1997,0.2683,2400.0,2400.0,-0.3372,-0.9504,4.1492,32.7248 2019-06-03 15:44:14.600,127.7926,8726.9434,2.3935,-2.3484,1.1738,0.2568,2400.0,2400.0,-0.346,-0.9504,4.1651,32.7021 2019-06-03 15:44:14.620,127.7926,8726.9434,2.3694,-2.3575,0.7326,0.0153,2400.0,2400.0,-0.3548,-0.9504,4.1584,32.694 2019-06-03 15:44:14.640,127.8454,8726.9434,2.3694,-2.3575,1.1971,0.1866,2400.0,2400.0,-0.3431,-0.9504,4.1545,32.694 2019-06-03 15:44:14.660,127.8665,8726.9434,2.3694,-2.3575,0.6845,0.0612,2400.0,2400.0,-0.3431,-0.9534,4.1531,32.694 2019-06-03 15:44:14.680,127.7821,8726.9727,2.3391,-2.363,1.2585,0.1628,2400.0,2400.0,-0.3314,-0.9444,4.1465,32.6813 2019-06-03 15:44:14.700,127.7926,8726.915,2.2985,-2.3731,1.2452,0.1491,2400.0,2400.0,-0.3431,-0.9413,4.1584,32.6697 2019-06-03 15:44:14.720,127.9087,8726.915,2.2985,-2.3731,0.7196,0.1269,2400.0,2400.0,-0.346,-0.9413,4.1598,32.6697 2019-06-03 15:44:14.740,128.014,8726.9434,2.2985,-2.3731,1.2463,0.0876,2400.0,2400.0,-0.3431,-0.9383,4.1465,32.6697 2019-06-03 15:44:14.760,128.0245,8726.9434,2.2542,-2.3889,0.6871,0.1445,2400.0,2400.0,-0.3548,-0.9383,4.1478,32.659 2019-06-03 15:44:14.780,127.9613,8726.9727,2.2542,-2.3889,1.3199,0.0724,2400.0,2400.0,-0.3489,-0.9413,4.1439,32.659 2019-06-03 15:44:14.800,127.9508,8727.001,2.2039,-2.4038,1.25,0.0602,2400.0,2400.0,-0.3401,-0.9383,4.1558,32.6452 2019-06-03 15:44:14.820,127.9613,8726.9727,2.1906,-2.4091,0.6416,0.2038,2400.0,2400.0,-0.3401,-0.9444,4.1531,32.6411 2019-06-03 15:44:14.840,128.014,8727.0576,2.1906,-2.4091,1.2111,-0.0157,2400.0,2400.0,-0.3197,-0.9444,4.1492,32.6411 2019-06-03 15:44:14.860,128.014,8727.0576,2.1906,-2.4091,0.7544,0.2615,2400.0,2400.0,-0.3255,-0.9444,4.1558,32.6411 2019-06-03 15:44:14.880,127.9508,8726.46,2.1547,-2.4227,1.1923,-0.0076,2400.0,2400.0,-0.3109,-0.9413,4.1465,32.633 2019-06-03 15:44:14.900,127.9719,8725.4648,2.1122,-2.4389,1.1316,-0.0149,2400.0,2400.0,-0.3021,-0.9413,4.1571,32.6247 2019-06-03 15:44:14.920,128.203,8724.583,2.1122,-2.4389,0.6849,0.2536,2400.0,2400.0,-0.308,-0.9413,4.1505,32.6247 2019-06-03 15:44:14.940,128.3392,8723.3877,2.1122,-2.4389,1.2185,-0.0464,2400.0,2400.0,-0.2992,-0.9353,4.1558,32.6247 2019-06-03 15:44:14.960,128.3497,8722.5342,2.0758,-2.4565,0.9042,0.2996,2400.0,2400.0,-0.3168,-0.9383,4.1558,32.6162 2019-06-03 15:44:14.980,128.2764,8721.2539,2.0758,-2.4565,1.1264,-0.0256,2400.0,2400.0,-0.3138,-0.896,4.1518,32.6162 2019-06-03 15:44:15.000,128.2869,8720.3721,2.0261,-2.4817,0.9963,-0.043,2400.0,2400.0,-0.3051,-0.8688,4.1545,32.6048 2019-06-03 15:44:15.020,128.2869,8719.4619,2.0183,-2.4853,0.892,0.2741,2400.0,2400.0,-0.2934,-0.89,4.1611,32.602 2019-06-03 15:44:15.040,128.3602,8718.2949,2.0183,-2.4853,1.0336,-0.0287,2400.0,2400.0,-0.2934,-0.8839,4.1611,32.602 2019-06-03 15:44:15.060,128.3602,8718.3809,2.0183,-2.4853,0.9781,0.2675,2400.0,2400.0,-0.3021,-0.8839,4.177,32.602 2019-06-03 15:44:15.080,128.2974,8718.3516,1.9809,-2.5034,0.8487,0.0238,2400.0,2400.0,-0.3168,-0.8567,4.1651,32.5952 2019-06-03 15:44:15.100,128.2869,8718.2383,1.947,-2.5223,0.8898,0.0161,2400.0,2400.0,-0.3109,-0.8446,4.1809,32.5884 2019-06-03 15:44:15.120,128.3915,8718.2383,1.947,-2.5223,0.946,0.2052,2400.0,2400.0,-0.3226,-0.8476,4.177,32.5884 2019-06-03 15:44:15.140,128.4856,8718.3232,1.947,-2.5223,0.8779,0.0281,2400.0,2400.0,-0.3051,-0.7901,4.1756,32.5884 2019-06-03 15:44:15.160,128.496,8718.3809,1.9198,-2.5338,1.1087,0.1998,2400.0,2400.0,-0.308,-0.8295,4.1889,32.5823 2019-06-03 15:44:15.180,128.4438,8718.4092,1.894,-2.544,0.8032,0.0839,2400.0,2400.0,-0.2992,-0.8234,4.177,32.5764 2019-06-03 15:44:15.200,128.4438,8718.3809,1.8743,-2.5545,0.8727,0.0495,2400.0,2400.0,-0.2992,-0.8234,4.1889,32.5729 2019-06-03 15:44:15.220,128.4438,8718.3809,1.8634,-2.5604,1.081,0.1518,2400.0,2400.0,-0.3168,-0.8234,4.1889,32.5707 2019-06-03 15:44:15.240,128.5064,8718.3809,1.8634,-2.5604,0.8058,0.0832,2400.0,2400.0,-0.308,-0.7811,4.1836,32.5707 2019-06-03 15:44:15.260,128.5064,8718.3516,1.8634,-2.5604,1.1202,0.126,2400.0,2400.0,-0.3109,-0.8174,4.1982,32.5707 2019-06-03 15:44:15.280,128.4333,8718.4092,1.8371,-2.5739,0.7248,0.1605,2400.0,2400.0,-0.3021,-0.8113,4.1876,32.5631 2019-06-03 15:44:15.300,128.4438,8718.2949,1.8133,-2.5821,0.7503,0.1497,2400.0,2400.0,-0.2992,-0.8113,4.1942,32.5559 2019-06-03 15:44:15.320,128.694,8718.2666,1.8133,-2.5821,1.0503,0.051,2400.0,2400.0,-0.3051,-0.8083,4.2008,32.5559 2019-06-03 15:44:15.340,128.8291,8718.2949,1.8133,-2.5821,0.8439,0.1818,2400.0,2400.0,-0.3021,-0.8113,4.1849,32.5559 2019-06-03 15:44:15.360,128.8291,8718.2949,1.7925,-2.592,1.0403,0.042,2400.0,2400.0,-0.308,-0.8144,4.2087,32.5475 2019-06-03 15:44:15.380,128.7668,8718.2949,1.7925,-2.592,0.8469,0.2299,2400.0,2400.0,-0.3021,-0.8083,4.2101,32.5475 2019-06-03 15:44:15.400,128.7668,8718.3232,1.7596,-2.6044,0.899,0.205,2340.0,2400.0,-0.2992,-0.8113,4.2233,32.5355 2019-06-03 15:44:15.420,128.7772,8718.3232,1.7445,-2.6102,1.1165,0.0433,2340.0,2400.0,-0.3051,-0.8083,4.2286,32.5303 2019-06-03 15:44:15.440,128.8291,8718.3516,1.7445,-2.6102,0.8476,0.1893,2340.0,2400.0,-0.2992,-0.8022,4.2366,32.5303 2019-06-03 15:44:15.460,128.8499,8718.3516,1.7445,-2.6102,0.9926,0.0247,2340.0,2400.0,-0.3051,-0.8053,4.2882,32.5303 2019-06-03 15:44:15.480,128.7772,8718.3809,1.7267,-2.6134,0.9223,0.2458,2340.0,2400.0,-0.3021,-0.7478,4.3173,32.5209 2019-06-03 15:44:15.500,128.7772,8718.2949,1.712,-2.6167,0.9186,0.2308,2340.0,2400.0,-0.2905,-0.7508,4.361,32.5106 2019-06-03 15:44:15.520,129.0157,8718.2949,1.712,-2.6167,0.8406,0.0113,2340.0,2400.0,-0.3109,-0.7568,4.4153,32.5106 2019-06-03 15:44:15.540,129.1397,8718.4375,1.712,-2.6167,0.9057,0.2272,2340.0,2400.0,-0.308,-0.7084,4.4404,32.5106 2019-06-03 15:44:15.560,129.15,8718.5225,1.6922,-2.6214,0.9197,0.0021,2340.0,2400.0,-0.3168,-0.7144,4.4934,32.4988 2019-06-03 15:44:15.580,129.1087,8718.4941,1.6922,-2.6214,0.9955,0.2539,2340.0,2400.0,-0.3109,-0.6902,4.5066,32.4988 2019-06-03 15:44:15.600,129.0881,8718.4941,1.6804,-2.6201,0.9966,0.2425,2340.0,2400.0,-0.2963,-0.672,4.5477,32.4804 2019-06-03 15:44:15.620,129.0984,8718.4375,1.6715,-2.6207,0.9034,0.0172,2340.0,2400.0,-0.3138,-0.6841,4.5781,32.4741 2019-06-03 15:44:15.640,129.1604,8718.3516,1.6715,-2.6207,1.0776,0.2118,2340.0,2400.0,-0.2992,-0.6386,4.5927,32.4741 2019-06-03 15:44:15.660,129.1707,8718.3232,1.6715,-2.6207,0.8121,0.0534,2340.0,2400.0,-0.3109,-0.6477,4.6218,32.4741 2019-06-03 15:44:15.680,129.0881,8717.6982,1.6733,-2.6141,1.0902,0.2155,2340.0,2400.0,-0.3051,-0.6417,4.6165,32.4614 2019-06-03 15:44:15.700,129.0984,8716.6738,1.6751,-2.6062,1.1442,0.2018,2340.0,2400.0,-0.2992,-0.6235,4.6086,32.4483 2019-06-03 15:44:15.720,129.3459,8715.7637,1.6751,-2.6062,0.8402,0.0576,2340.0,2400.0,-0.2963,-0.6265,4.6192,32.4483 2019-06-03 15:44:15.740,129.4796,8714.5117,1.6751,-2.6062,1.0702,0.1841,2340.0,2400.0,-0.2992,-0.6265,4.6046,32.4483 2019-06-03 15:44:15.760,129.4899,8713.5732,1.6785,-2.5977,0.8395,0.0514,2340.0,2400.0,-0.3109,-0.6356,4.6126,32.4341 2019-06-03 15:44:15.780,129.4179,8712.1797,1.6785,-2.5977,1.1364,0.1749,2340.0,2400.0,-0.3051,-0.6326,4.6179,32.4341 2019-06-03 15:44:15.800,129.4282,8711.2979,1.7052,-2.578,1.2433,0.1585,2340.0,2400.0,-0.3021,-0.6295,4.6165,32.4116 2019-06-03 15:44:15.820,129.4282,8710.3877,1.7148,-2.5738,0.7733,0.1103,2340.0,2400.0,-0.3051,-0.669,4.6205,32.4035 2019-06-03 15:44:15.840,129.4693,8709.1934,1.7148,-2.5738,1.1205,0.1456,2340.0,2400.0,-0.2963,-0.6022,4.6126,32.4035 2019-06-03 15:44:15.860,129.4899,8709.2783,1.7148,-2.5738,0.7836,0.0927,2340.0,2400.0,-0.2992,-0.6204,4.6298,32.4035 2019-06-03 15:44:15.880,129.4282,8709.1934,1.7371,-2.558,1.1871,0.1567,2340.0,2400.0,-0.3021,-0.6265,4.6232,32.3889 2019-06-03 15:44:15.900,129.4282,8709.0508,1.7572,-2.5459,1.2478,0.1259,2340.0,2400.0,-0.2963,-0.6235,4.6152,32.3723 2019-06-03 15:44:15.920,129.6744,8709.1074,1.7572,-2.5459,0.8062,0.1296,2340.0,2400.0,-0.3109,-0.6295,4.6271,32.3723 2019-06-03 15:44:15.940,129.7869,8709.1934,1.7572,-2.5459,1.2071,0.114,2340.0,2400.0,-0.308,-0.5931,4.6139,32.3723 2019-06-03 15:44:15.960,129.7869,8709.25,1.7804,-2.5343,0.7807,0.1846,2340.0,2400.0,-0.308,-0.6356,4.6258,32.3554 2019-06-03 15:44:15.980,129.746,8709.2783,1.7804,-2.5343,1.1616,0.079,2340.0,2400.0,-0.2963,-0.6326,4.6271,32.3554 2019-06-03 15:44:16.000,129.7256,8709.335,1.8255,-2.5093,1.2241,0.0573,2340.0,2400.0,-0.2963,-0.5931,4.6073,32.3292 2019-06-03 15:44:16.020,129.7563,8709.25,1.8458,-2.4978,0.8861,0.2015,2340.0,2400.0,-0.3051,-0.6235,4.6205,32.3209 2019-06-03 15:44:16.040,129.8074,8709.25,1.8458,-2.4978,1.2429,0.0655,2340.0,2400.0,-0.308,-0.6144,4.6007,32.3209 2019-06-03 15:44:16.060,129.8074,8709.2783,1.8458,-2.4978,0.7651,0.2588,2340.0,2400.0,-0.3051,-0.6174,4.6046,32.3209 2019-06-03 15:44:16.080,129.7358,8709.3066,1.8749,-2.4786,1.173,0.0245,2340.0,2400.0,-0.308,-0.6174,4.5954,32.3038 2019-06-03 15:44:16.100,129.7563,8709.1934,1.9008,-2.4619,1.3365,0.0159,2340.0,2400.0,-0.2963,-0.6174,4.5874,32.285 2019-06-03 15:44:16.120,129.991,8709.2217,1.9008,-2.4619,0.8276,0.2738,2340.0,2400.0,-0.3021,-0.6204,4.5927,32.285 2019-06-03 15:44:16.140,130.113,8709.25,1.9008,-2.4619,1.2256,0.0058,2340.0,2400.0,-0.2992,-0.6144,4.5781,32.285 2019-06-03 15:44:16.160,130.1232,8709.335,1.9322,-2.4418,0.9179,0.3028,2340.0,2400.0,-0.3021,-0.6204,4.5861,32.2678 2019-06-03 15:44:16.180,130.052,8709.3066,1.9322,-2.4418,1.1549,-0.0176,2340.0,2400.0,-0.2992,-0.6144,4.5834,32.2678 2019-06-03 15:44:16.200,130.0724,8709.335,1.9802,-2.407,1.2514,-0.0328,2340.0,2400.0,-0.2963,-0.6144,4.5636,32.2435 2019-06-03 15:44:16.220,130.0724,8709.3066,2.0056,-2.3902,0.9256,0.2954,2340.0,2400.0,-0.3051,-0.6174,4.5715,32.2357 2019-06-03 15:44:16.240,130.1232,8709.2783,2.0056,-2.3902,1.1327,-0.0158,2340.0,2400.0,-0.3021,-0.5931,4.5517,32.2357 2019-06-03 15:44:16.260,130.1435,8709.25,2.0056,-2.3902,1.0107,0.3165,2340.0,2400.0,-0.2992,-0.584,4.5543,32.2357 2019-06-03 15:44:16.280,130.0622,8709.3643,2.0303,-2.3675,1.1142,-0.0354,2340.0,2400.0,-0.2963,-0.5749,4.5464,32.219 2019-06-03 15:44:16.300,130.0622,8709.2783,2.0545,-2.3445,1.1719,-0.0578,2340.0,2400.0,-0.2905,-0.5233,4.5331,32.2035 2019-06-03 15:44:16.320,130.316,8709.25,2.0545,-2.3445,0.9227,0.3198,2340.0,2400.0,-0.308,-0.5233,4.5384,32.2035 2019-06-03 15:44:16.340,130.4374,8709.2783,2.0545,-2.3445,1.1168,-0.05,2340.0,2400.0,-0.2992,-0.4504,4.5239,32.2035 2019-06-03 15:44:16.360,130.4374,8709.335,2.0854,-2.3144,1.0691,0.344,2340.0,2400.0,-0.2963,-0.4747,4.5331,32.1904 2019-06-03 15:44:16.380,130.3767,8709.3643,2.0854,-2.3144,1.0051,-0.0592,2340.0,2400.0,-0.2905,-0.4686,4.5265,32.1904 2019-06-03 15:44:16.400,130.3767,8709.4209,2.1221,-2.2653,1.0436,-0.0774,2400.0,2340.0,-0.2846,-0.4686,4.5014,32.1716 2019-06-03 15:44:16.420,130.3767,8709.4209,2.1437,-2.2423,1.0928,0.3088,2400.0,2340.0,-0.2963,-0.4747,4.508,32.1655 2019-06-03 15:44:16.440,130.4576,8709.3643,2.1437,-2.2423,0.9892,-0.0356,2400.0,2340.0,-0.2963,-0.4686,4.4921,32.1655 2019-06-03 15:44:16.460,130.4475,8709.2783,2.1437,-2.2423,1.1923,0.314,2400.0,2340.0,-0.2992,-0.4717,4.4921,32.1655 2019-06-03 15:44:16.480,130.3767,8709.1934,2.1568,-2.2099,0.8372,-0.0191,2400.0,2340.0,-0.3021,-0.4625,4.4881,32.1535 2019-06-03 15:44:16.500,130.3868,8709.1367,2.1745,-2.1721,0.9741,-0.0222,2400.0,2340.0,-0.2934,-0.4443,4.4656,32.1412 2019-06-03 15:44:16.520,130.6191,8709.165,2.1745,-2.1721,1.3302,0.2585,2400.0,2340.0,-0.2992,-0.4717,4.4802,32.1412 2019-06-03 15:44:16.540,130.7399,8709.165,2.1745,-2.1721,0.8472,0.0502,2400.0,2340.0,-0.2788,-0.4686,4.4563,32.1412 2019-06-03 15:44:16.560,130.7399,8709.2217,2.1976,-2.1263,1.2185,0.2324,2400.0,2340.0,-0.2846,-0.4656,4.4577,32.131 2019-06-03 15:44:16.580,130.6997,8709.165,2.2176,-2.0813,0.7256,0.0515,2400.0,2340.0,-0.2934,-0.4686,4.451,32.1216 2019-06-03 15:44:16.600,130.6997,8709.165,2.2154,-2.0634,0.784,0.0529,2400.0,2340.0,-0.2905,-0.4504,4.4338,32.1161 2019-06-03 15:44:16.620,130.6997,8709.1934,2.2249,-2.0379,1.3942,0.1661,2400.0,2340.0,-0.2934,-0.4747,4.4484,32.1109 2019-06-03 15:44:16.640,130.75,8709.335,2.2249,-2.0379,0.6993,0.1365,2400.0,2340.0,-0.2905,-0.4717,4.4285,32.1109 2019-06-03 15:44:16.660,130.7701,8709.335,2.2249,-2.0379,1.3395,0.1195,2400.0,2340.0,-0.2963,-0.4868,4.4312,32.1109 2019-06-03 15:44:16.680,130.6997,8708.7383,2.2298,-1.9957,0.7418,0.1825,2400.0,2340.0,-0.2963,-0.4838,4.4153,32.0997 2019-06-03 15:44:16.700,130.6997,8707.7715,2.2434,-1.9434,0.828,0.1674,2400.0,2340.0,-0.2963,-0.4565,4.3941,32.0886 2019-06-03 15:44:16.720,130.9608,8706.8896,2.2434,-1.9434,1.3731,0.0547,2400.0,2340.0,-0.2963,-0.496,4.4179,32.0886 2019-06-03 15:44:16.740,131.081,8705.5244,2.2434,-1.9434,0.7389,0.204,2400.0,2340.0,-0.2846,-0.4868,4.3901,32.0886 2019-06-03 15:44:16.760,131.0609,8704.6436,2.2581,-1.8893,1.4138,0.0573,2400.0,2340.0,-0.2758,-0.4625,4.4047,32.0789 2019-06-03 15:44:16.780,131.0109,8703.4199,2.2581,-1.8893,0.7204,0.2326,2400.0,2340.0,-0.2788,-0.4656,4.3981,32.0789 2019-06-03 15:44:16.800,131.0109,8702.624,2.2637,-1.8095,0.8236,0.2314,2400.0,2340.0,-0.2758,-0.4686,4.3901,32.0621 2019-06-03 15:44:16.820,131.0109,8701.7705,2.261,-1.7861,1.2622,-0.0081,2400.0,2340.0,-0.2934,-0.4686,4.414,32.0562 2019-06-03 15:44:16.840,131.071,8700.6621,2.261,-1.7861,0.7618,0.2852,2400.0,2340.0,-0.2817,-0.4686,4.3888,32.0562 2019-06-03 15:44:16.860,131.091,8700.6621,2.261,-1.7861,1.2958,-0.0299,2400.0,2340.0,-0.2875,-0.4656,4.3888,32.0562 2019-06-03 15:44:16.880,131.0109,8700.5762,2.2632,-1.7311,0.7999,0.303,2400.0,2340.0,-0.2905,-0.4899,4.3729,32.0453 2019-06-03 15:44:16.900,131.0209,8700.5479,2.2709,-1.6719,0.7969,0.3214,2400.0,2340.0,-0.2905,-0.4838,4.3517,32.0339 2019-06-03 15:44:16.920,131.2607,8700.5762,2.2709,-1.6719,1.1534,-0.0755,2400.0,2340.0,-0.2905,-0.4899,4.3835,32.0339 2019-06-03 15:44:16.940,131.3803,8700.5762,2.2709,-1.6719,0.8779,0.357,2400.0,2340.0,-0.2875,-0.4899,4.3584,32.0339 2019-06-03 15:44:16.960,131.3803,8700.5762,2.2707,-1.6153,1.2348,-0.0926,2400.0,2340.0,-0.2788,-0.4868,4.3835,32.0208 2019-06-03 15:44:16.980,131.3305,8700.5195,2.2707,-1.6153,0.9526,0.342,2400.0,2340.0,-0.2846,-0.4899,4.3862,32.0208 2019-06-03 15:44:17.000,131.3305,8700.4912,2.2739,-1.5291,1.0103,0.3492,2400.0,2340.0,-0.2846,-0.4868,4.3531,32.0038 2019-06-03 15:44:17.020,131.3405,8700.4063,2.2628,-1.5057,1.0432,-0.0794,2400.0,2340.0,-0.2846,-0.4929,4.3676,31.9959 2019-06-03 15:44:17.040,131.3902,8700.5195,2.2628,-1.5057,1.0155,0.3413,2400.0,2340.0,-0.2817,-0.4868,4.3279,31.9959 2019-06-03 15:44:17.060,131.4002,8700.5195,2.2628,-1.5057,0.9804,-0.0785,2400.0,2340.0,-0.2817,-0.4899,4.3411,31.9959 2019-06-03 15:44:17.080,131.3205,8700.5479,2.2658,-1.4439,1.0614,0.3182,2400.0,2340.0,-0.2875,-0.4838,4.3385,31.9841 2019-06-03 15:44:17.100,131.3305,8700.4912,2.2664,-1.3851,1.2145,0.3198,2400.0,2340.0,-0.2846,-0.4838,4.3253,31.971 2019-06-03 15:44:17.120,131.4599,8700.5195,2.2664,-1.3851,0.8727,-0.0123,2400.0,2340.0,-0.2992,-0.4868,4.3491,31.971 2019-06-03 15:44:17.140,131.5492,8700.4063,2.2664,-1.3851,1.1908,0.2537,2400.0,2340.0,-0.2875,-0.4899,4.3398,31.971 2019-06-03 15:44:17.160,131.5492,8700.4629,2.2546,-1.3279,0.8302,0.0165,2400.0,2340.0,-0.2846,-0.4868,4.3398,31.9579 2019-06-03 15:44:17.180,131.4797,8700.5195,2.2546,-1.3279,1.1379,0.2257,2400.0,2340.0,-0.2817,-0.4899,4.3372,31.9579 2019-06-03 15:44:17.200,131.4897,8700.5479,2.2481,-1.2378,1.2341,0.2362,2400.0,2340.0,-0.2846,-0.4868,4.2882,31.9399 2019-06-03 15:44:17.220,131.4897,8700.5479,2.2427,-1.2121,0.8077,0.0702,2400.0,2340.0,-0.2875,-0.4868,4.3266,31.9318 2019-06-03 15:44:17.240,131.5492,8700.5762,2.2427,-1.2121,1.3642,0.1845,2400.0,2340.0,-0.2905,-0.4899,4.3067,31.9318 2019-06-03 15:44:17.260,131.5492,8700.6055,2.2427,-1.2121,0.7233,0.0846,2400.0,2340.0,-0.2905,-0.4899,4.3266,31.9318 2019-06-03 15:44:17.280,131.5095,8699.8945,2.2423,-1.1543,1.3302,0.1406,2400.0,2340.0,-0.3021,-0.4929,4.3345,31.9189 2019-06-03 15:44:17.300,131.4897,8698.9561,2.2315,-1.1008,1.3894,0.1412,2400.0,2340.0,-0.3021,-0.4899,4.2975,31.9034 2019-06-03 15:44:17.320,131.7375,8698.0459,2.2315,-1.1008,0.7485,0.1546,2400.0,2340.0,-0.3021,-0.4929,4.3094,31.9034 2019-06-03 15:44:17.340,131.8463,8696.625,2.2315,-1.1008,1.2459,0.1016,2400.0,2340.0,-0.2963,-0.4868,4.2975,31.9034 2019-06-03 15:44:17.360,131.8561,8695.7432,2.2172,-1.0511,0.6937,0.1603,2400.0,2340.0,-0.3051,-0.4929,4.3107,31.8879 2019-06-03 15:44:17.380,131.7968,8694.3496,2.2172,-1.0511,1.3783,0.0585,2400.0,2340.0,-0.3138,-0.4929,4.3226,31.8879 2019-06-03 15:44:17.400,131.7968,8693.4404,2.2115,-0.971,1.4153,0.0559,2400.0,2400.0,-0.3051,-0.4899,4.2935,31.8661 2019-06-03 15:44:17.420,131.8166,8692.4453,2.2136,-0.9448,0.7903,0.254,2400.0,2400.0,-0.3051,-0.499,4.308,31.8584 2019-06-03 15:44:17.440,131.8561,8691.2227,2.2136,-0.9448,1.2585,-0.0011,2400.0,2400.0,-0.2963,-0.499,4.2816,31.8584 2019-06-03 15:44:17.460,131.866,8691.251,2.2136,-0.9448,0.7925,0.2799,2400.0,2400.0,-0.2846,-0.499,4.2922,31.8584 2019-06-03 15:44:17.480,131.7968,8691.251,2.2033,-0.8934,1.3406,-0.0425,2400.0,2400.0,-0.308,-0.502,4.2869,31.8429 2019-06-03 15:44:17.500,131.7968,8691.2227,2.1865,-0.848,1.3143,-0.0317,2400.0,2400.0,-0.3021,-0.502,4.2749,31.8274 2019-06-03 15:44:17.520,132.0434,8691.2227,2.1865,-0.848,0.7592,0.3388,2400.0,2400.0,-0.3109,-0.5233,4.2935,31.8274 2019-06-03 15:44:17.540,132.1615,8691.2793,2.1865,-0.848,1.2507,-0.085,2400.0,2400.0,-0.2992,-0.5233,4.2776,31.8274 2019-06-03 15:44:17.560,132.1615,8691.3359,2.1764,-0.8018,0.8975,0.3432,2400.0,2400.0,-0.2875,-0.5324,4.2776,31.8129 2019-06-03 15:44:17.580,132.1025,8691.4219,2.1764,-0.8018,1.1479,-0.0994,2400.0,2400.0,-0.3021,-0.5385,4.2749,31.8129 2019-06-03 15:44:17.600,132.1123,8691.4785,2.1633,-0.7314,1.1464,-0.0887,2400.0,2400.0,-0.3021,-0.5355,4.2657,31.7933 2019-06-03 15:44:17.620,132.1123,8691.4785,2.17,-0.702,0.9585,0.3756,2400.0,2400.0,-0.3051,-0.5689,4.2829,31.7887 2019-06-03 15:44:17.640,132.1713,8691.5352,2.17,-0.702,1.0225,-0.0968,2400.0,2400.0,-0.3051,-0.5628,4.2736,31.7887 2019-06-03 15:44:17.660,132.1615,8691.5635,2.17,-0.702,0.9796,0.3418,2400.0,2400.0,-0.2934,-0.5901,4.2776,31.7887 2019-06-03 15:44:17.680,132.1123,8691.5918,2.1539,-0.6608,1.0503,-0.0698,2400.0,2400.0,-0.2963,-0.6144,4.2657,31.7767 2019-06-03 15:44:17.700,132.1221,8691.4785,2.1402,-0.6195,1.0159,-0.0479,2400.0,2400.0,-0.2846,-0.5749,4.2591,31.7666 2019-06-03 15:44:17.720,132.2302,8691.4219,2.1402,-0.6195,1.0795,0.3267,2400.0,2400.0,-0.2875,-0.6629,4.2763,31.7666 2019-06-03 15:44:17.740,132.3086,8691.3936,2.1402,-0.6195,0.8783,-0.045,2400.0,2400.0,-0.2875,-0.6538,4.2657,31.7666 2019-06-03 15:44:17.760,132.3184,8691.3936,2.1336,-0.575,1.1383,0.3037,2400.0,2400.0,-0.2846,-0.6538,4.2697,31.7579 2019-06-03 15:44:17.780,132.2596,8691.4502,2.1336,-0.575,0.8483,-0.0658,2400.0,2400.0,-0.2934,-0.6993,4.2617,31.7579 2019-06-03 15:44:17.800,132.2498,8691.4502,2.1172,-0.5092,0.869,-0.0196,2400.0,2400.0,-0.2963,-0.6993,4.2524,31.7487 2019-06-03 15:44:17.820,132.2694,8691.3936,2.1204,-0.4822,1.2041,0.3059,2400.0,2400.0,-0.3051,-0.7568,4.267,31.7485 2019-06-03 15:44:17.840,132.3184,8691.2793,2.1204,-0.4822,0.6993,-0.0303,2400.0,2400.0,-0.3051,-0.7932,4.271,31.7485 2019-06-03 15:44:17.860,132.3184,8691.251,2.1204,-0.4822,1.2825,0.2421,2400.0,2400.0,-0.2963,-0.8265,4.271,31.7485 2019-06-03 15:44:17.880,132.2596,8691.251,2.1035,-0.4449,0.7326,0.0058,2400.0,2400.0,-0.2905,-0.8476,4.2683,31.7437 2019-06-03 15:44:17.900,132.2596,8691.2793,2.0976,-0.4039,0.7477,0.0607,2400.0,2400.0,-0.2934,-0.8507,4.2551,31.743 2019-06-03 15:44:17.920,132.4946,8691.3076,2.0976,-0.4039,1.2899,0.214,2400.0,2400.0,-0.2905,-0.899,4.2736,31.743 2019-06-03 15:44:17.940,132.6117,8691.3652,2.0976,-0.4039,0.6926,0.0651,2400.0,2400.0,-0.2934,-0.893,4.2591,31.743 2019-06-03 15:44:17.960,132.6214,8691.4219,2.0968,-0.3611,1.4493,0.1186,2400.0,2400.0,-0.2905,-0.899,4.2644,31.7443 2019-06-03 15:44:17.980,132.5629,8691.4219,2.0945,-0.3231,0.5828,0.1116,2400.0,2400.0,-0.3109,-0.9202,4.2617,31.7445 2019-06-03 15:44:18.000,132.5727,8691.4502,2.0839,-0.313,0.7215,0.1445,2400.0,2400.0,-0.3021,-0.9172,4.2564,31.7432 2019-06-03 15:44:18.020,132.5629,8691.4785,2.0778,-0.2972,1.3735,0.1028,2400.0,2400.0,-0.2992,-0.9474,4.263,31.7434 2019-06-03 15:44:18.040,132.6214,8691.5068,2.0778,-0.2972,0.6109,0.161,2400.0,2400.0,-0.2905,-0.9383,4.2591,31.7434 2019-06-03 15:44:18.060,132.6312,8691.4785,2.0778,-0.2972,1.3768,0.0113,2400.0,2400.0,-0.2905,-0.9474,4.2485,31.7434 2019-06-03 15:44:18.080,132.5727,8690.9102,2.0684,-0.274,0.6464,0.1905,2400.0,2400.0,-0.2905,-0.9655,4.2538,31.7439 2019-06-03 15:44:18.100,132.5727,8689.915,2.0706,-0.2507,0.6527,0.2131,2400.0,2400.0,-0.2905,-0.9625,4.2392,31.7452 2019-06-03 15:44:18.120,132.6994,8688.9199,2.0706,-0.2507,1.3435,0.0128,2400.0,2400.0,-0.2934,-1.0108,4.2564,31.7452 2019-06-03 15:44:18.140,132.7772,8687.5557,2.0706,-0.2507,0.6797,0.2426,2400.0,2400.0,-0.2963,-1.0047,4.2524,31.7452 2019-06-03 15:44:18.160,132.7772,8686.7598,2.071,-0.2331,1.3835,-0.0472,2400.0,2400.0,-0.2963,-0.9957,4.2445,31.7476 2019-06-03 15:44:18.180,132.7286,8685.4521,2.071,-0.2331,0.7252,0.2602,2400.0,2400.0,-0.2992,-1.0078,4.2511,31.7476 2019-06-03 15:44:18.200,132.7188,8684.5996,2.061,-0.2135,0.7396,0.2925,2400.0,2400.0,-0.2846,-1.0047,4.2379,31.7515 2019-06-03 15:44:18.220,132.7383,8683.6611,2.0491,-0.2126,1.2936,-0.0709,2400.0,2400.0,-0.2788,-1.0078,4.2577,31.7524 2019-06-03 15:44:18.240,132.7967,8682.4395,2.0491,-0.2126,0.7056,0.3027,2400.0,2400.0,-0.2846,-1.0108,4.2458,31.7524 2019-06-03 15:44:18.260,132.7869,8682.4111,2.0491,-0.2126,1.2888,-0.103,2400.0,2400.0,-0.2934,-1.0047,4.2405,31.7524 2019-06-03 15:44:18.280,132.7188,8682.4395,2.0476,-0.2048,0.8912,0.3162,2400.0,2400.0,-0.3197,-1.0289,4.2485,31.7579 2019-06-03 15:44:18.300,132.7383,8682.3828,2.0517,-0.198,0.9034,0.3253,2400.0,2400.0,-0.3168,-1.0319,4.2366,31.7649 2019-06-03 15:44:18.320,132.8258,8682.3545,2.0517,-0.198,1.0606,-0.0903,2400.0,2400.0,-0.3138,-1.0289,4.2538,31.7649 2019-06-03 15:44:18.340,132.9229,8682.4111,2.0517,-0.198,0.8546,0.3326,2400.0,2400.0,-0.308,-1.0409,4.2511,31.7649 2019-06-03 15:44:18.360,132.9229,8682.4111,2.0488,-0.1974,1.0969,-0.1188,2400.0,2400.0,-0.3021,-1.0409,4.2418,31.7703 2019-06-03 15:44:18.380,132.8647,8682.4678,2.0488,-0.1974,1.0018,0.3413,2400.0,2400.0,-0.308,-1.0409,4.2471,31.7703 2019-06-03 15:44:18.400,132.8841,8682.4678,2.0445,-0.2059,0.9467,0.3429,2340.0,2400.0,-0.3021,-1.0409,4.2352,31.7788 2019-06-03 15:44:18.420,132.8841,8682.4678,2.0323,-0.2155,1.0639,-0.117,2340.0,2400.0,-0.308,-1.0802,4.2458,31.7804 2019-06-03 15:44:18.440,132.9229,8682.5244,2.0323,-0.2155,1.0643,0.3219,2340.0,2400.0,-0.3255,-1.0771,4.2392,31.7804 2019-06-03 15:44:18.460,132.9423,8682.5527,2.0323,-0.2155,0.9449,-0.1015,2340.0,2400.0,-0.3138,-1.0711,4.2392,31.7804 2019-06-03 15:44:18.480,132.8647,8682.5811,2.0339,-0.2197,1.1424,0.3221,2340.0,2400.0,-0.3314,-1.1193,4.2418,31.7878 2019-06-03 15:44:18.500,132.8647,8682.4961,2.0325,-0.2307,1.1501,0.3128,2340.0,2400.0,-0.3109,-1.1103,4.2326,31.7952 2019-06-03 15:44:18.520,132.9908,8682.5527,2.0325,-0.2307,0.8491,-0.043,2340.0,2400.0,-0.3138,-1.0862,4.2392,31.7952 2019-06-03 15:44:18.540,133.0779,8682.5811,2.0325,-0.2307,1.1912,0.2562,2340.0,2400.0,-0.3109,-1.0952,4.2352,31.7952 2019-06-03 15:44:18.560,133.0876,8682.5527,2.0208,-0.2443,0.8139,-0.0253,2340.0,2400.0,-0.3051,-1.0892,4.2366,31.8031 2019-06-03 15:44:18.580,133.0198,8682.6094,2.0208,-0.2443,1.2518,0.2338,2340.0,2400.0,-0.3255,-1.0952,4.2418,31.8031 2019-06-03 15:44:18.600,133.0198,8682.6387,2.0148,-0.2619,1.1708,0.2039,2340.0,2400.0,-0.3285,-1.0952,4.2273,31.8169 2019-06-03 15:44:18.620,133.0198,8682.6387,2.0062,-0.275,0.7437,0.0284,2340.0,2400.0,-0.3226,-1.1013,4.2366,31.8221 2019-06-03 15:44:18.640,133.0876,8682.667,2.0062,-0.275,1.2233,0.1694,2340.0,2400.0,-0.3197,-1.1073,4.2366,31.8221 2019-06-03 15:44:18.660,133.0779,8682.6387,2.0062,-0.275,0.6989,0.0565,2340.0,2400.0,-0.308,-1.1103,4.2326,31.8221 2019-06-03 15:44:18.680,133.0198,8682.5811,2.0059,-0.2846,1.227,0.1491,2340.0,2400.0,-0.3168,-1.1374,4.2445,31.8341 2019-06-03 15:44:18.700,133.0295,8682.5527,1.9966,-0.3012,1.3062,0.1337,2340.0,2400.0,-0.3168,-1.1404,4.2299,31.8451 2019-06-03 15:44:18.720,133.2615,8682.6094,1.9966,-0.3012,0.6549,0.1171,2340.0,2400.0,-0.3168,-1.1404,4.2366,31.8451 2019-06-03 15:44:18.740,133.3771,8682.752,1.9966,-0.3012,1.3017,0.0867,2340.0,2400.0,-0.3226,-1.1525,4.2405,31.8451 2019-06-03 15:44:18.760,133.3771,8682.7803,1.9847,-0.3201,0.7418,0.1211,2340.0,2400.0,-0.3168,-1.1525,4.2299,31.8549 2019-06-03 15:44:18.780,133.3289,8682.7803,1.9847,-0.3201,1.2111,0.0966,2340.0,2400.0,-0.3226,-1.1525,4.2405,31.8549 2019-06-03 15:44:18.800,133.3193,8682.8086,1.9835,-0.3352,1.2921,0.0857,2340.0,2400.0,-0.3226,-1.1525,4.2286,31.8687 2019-06-03 15:44:18.820,133.3482,8682.7803,1.9841,-0.3386,0.6734,0.1777,2340.0,2400.0,-0.3197,-1.1585,4.2326,31.8744 2019-06-03 15:44:18.840,133.3867,8682.7803,1.9841,-0.3386,1.355,0.0165,2340.0,2400.0,-0.3372,-1.1525,4.226,31.8744 2019-06-03 15:44:18.860,133.3964,8682.752,1.9841,-0.3386,0.8184,0.1927,2340.0,2400.0,-0.3226,-1.1525,4.226,31.8744 2019-06-03 15:44:18.880,133.3289,8682.0703,1.9826,-0.3458,1.2685,0.0056,2340.0,2400.0,-0.3314,-1.1977,4.2458,31.8833 2019-06-03 15:44:18.900,133.3289,8681.0469,1.9739,-0.3556,1.179,-0.0108,2340.0,2400.0,-0.3197,-1.1916,4.2366,31.8903 2019-06-03 15:44:18.920,133.4348,8680.1094,1.9739,-0.3556,0.842,0.2423,2340.0,2400.0,-0.3168,-1.1706,4.2405,31.8903 2019-06-03 15:44:18.940,133.5405,8678.7734,1.9739,-0.3556,1.2093,-0.056,2340.0,2400.0,-0.3226,-1.1946,4.226,31.8903 2019-06-03 15:44:18.960,133.5309,8677.8643,1.9728,-0.3608,0.8831,0.2784,2340.0,2400.0,-0.3138,-1.1916,4.2273,31.8982 2019-06-03 15:44:18.980,133.4733,8676.5283,1.9728,-0.3608,1.0998,-0.0509,2340.0,2400.0,-0.3255,-1.1886,4.2379,31.8982 2019-06-03 15:44:19.000,133.4733,8675.6475,1.9729,-0.3646,0.973,-0.0556,2340.0,2400.0,-0.308,-1.1916,4.2286,31.9067 2019-06-03 15:44:19.020,133.4733,8674.709,1.9817,-0.359,1.0044,0.3023,2340.0,2400.0,-0.3138,-1.1886,4.2273,31.9106 2019-06-03 15:44:19.040,133.5405,8673.5439,1.9817,-0.359,1.0432,-0.0902,2340.0,2400.0,-0.3226,-1.1886,4.2299,31.9106 2019-06-03 15:44:19.060,133.5405,8673.5723,1.9817,-0.359,0.9822,0.2984,2340.0,2400.0,-0.3138,-1.1886,4.2207,31.9106 2019-06-03 15:44:19.080,133.4541,8673.5723,1.9758,-0.3643,0.994,-0.0442,2340.0,2400.0,-0.3021,-1.1886,4.2471,31.915 2019-06-03 15:44:19.100,133.4829,8673.4873,1.972,-0.3698,0.9375,-0.0342,2340.0,2400.0,-0.2992,-1.1886,4.2299,31.9174 2019-06-03 15:44:19.120,133.7131,8673.4873,1.972,-0.3698,1.1886,0.2624,2340.0,2400.0,-0.2875,-1.1916,4.2313,31.9174 2019-06-03 15:44:19.140,133.8279,8673.5723,1.972,-0.3698,0.8665,-0.0293,2340.0,2400.0,-0.3051,-1.1886,4.2233,31.9174 2019-06-03 15:44:19.160,133.8279,8673.6289,1.9763,-0.3692,1.173,0.2569,2340.0,2400.0,-0.3021,-1.1856,4.218,31.9196 2019-06-03 15:44:19.180,133.7705,8673.6006,1.9763,-0.3692,0.9401,0.0085,2340.0,2400.0,-0.2992,-1.1886,4.2458,31.9196 2019-06-03 15:44:19.200,133.7705,8673.6289,1.9753,-0.3803,0.8021,-0.0128,2340.0,2400.0,-0.2963,-1.1886,4.2339,31.9181 2019-06-03 15:44:19.220,133.7801,8673.6006,1.9805,-0.3791,1.3506,0.214,2340.0,2400.0,-0.2905,-1.1886,4.2273,31.9174 2019-06-03 15:44:19.240,133.8374,8673.5156,1.9805,-0.3791,0.7034,-0.0025,2340.0,2400.0,-0.2963,-1.1886,4.222,31.9174 2019-06-03 15:44:19.260,133.847,8673.4307,1.9805,-0.3791,1.3269,0.2371,2340.0,2400.0,-0.2846,-1.1886,4.2207,31.9174 2019-06-03 15:44:19.280,133.7801,8673.4023,1.9729,-0.3851,0.8206,0.0506,2340.0,2400.0,-0.2934,-1.1886,4.2392,31.9144 2019-06-03 15:44:19.300,133.7705,8673.3164,1.9729,-0.394,0.7318,0.0434,2340.0,2400.0,-0.2934,-1.1886,4.226,31.9109 2019-06-03 15:44:19.320,134.0282,8673.2598,1.9729,-0.394,1.3469,0.1652,2340.0,2400.0,-0.2905,-1.1886,4.226,31.9109 2019-06-03 15:44:19.340,134.1139,8673.3447,1.9729,-0.394,0.6727,0.0605,2340.0,2400.0,-0.2934,-1.1856,4.2286,31.9109 2019-06-03 15:44:19.360,134.1234,8673.374,1.9795,-0.3954,1.2577,0.1739,2340.0,2400.0,-0.2875,-1.1856,4.2273,31.9078 2019-06-03 15:44:19.380,134.0758,8673.4023,1.9795,-0.3954,0.7625,0.1097,2340.0,2400.0,-0.2963,-1.1766,4.2432,31.9078 2019-06-03 15:44:19.400,134.0758,8673.459,1.9741,-0.4113,0.6886,0.1053,2400.0,2400.0,-0.2934,-1.1796,4.2273,31.8975 2019-06-03 15:44:19.420,134.0853,8673.4873,1.9726,-0.4132,1.3358,0.0994,2400.0,2400.0,-0.2963,-1.1284,4.2207,31.894 2019-06-03 15:44:19.440,134.1329,8673.6006,1.9726,-0.4132,0.7633,0.1163,2400.0,2400.0,-0.2963,-1.1314,4.2379,31.894 2019-06-03 15:44:19.460,134.1519,8673.5439,1.9726,-0.4132,1.3017,0.0902,2400.0,2400.0,-0.2934,-1.1314,4.2246,31.894 2019-06-03 15:44:19.480,134.0758,8673.5156,1.9705,-0.4226,0.7256,0.172,2400.0,2400.0,-0.2934,-1.1314,4.2458,31.8859 2019-06-03 15:44:19.500,134.0758,8673.4307,1.9764,-0.4274,0.7847,0.1649,2400.0,2400.0,-0.2992,-1.1314,4.2299,31.8783 2019-06-03 15:44:19.520,134.1899,8673.4307,1.9764,-0.4274,1.3176,0.0117,2400.0,2400.0,-0.2934,-1.1314,4.222,31.8783 2019-06-03 15:44:19.540,134.2848,8673.4873,1.9764,-0.4274,0.902,0.1934,2400.0,2400.0,-0.2963,-1.1284,4.2379,31.8783 2019-06-03 15:44:19.560,134.2848,8673.5723,1.9843,-0.4288,1.2444,0.0409,2400.0,2400.0,-0.2875,-1.1284,4.226,31.8715 2019-06-03 15:44:19.580,134.2279,8673.5723,1.9843,-0.4288,0.8395,0.2371,2400.0,2400.0,-0.2846,-1.1314,4.2471,31.8715 2019-06-03 15:44:19.600,134.2279,8673.5439,1.9855,-0.4258,0.798,0.2265,2400.0,2400.0,-0.2934,-1.1254,4.2313,31.8612 2019-06-03 15:44:19.620,134.2279,8673.5156,1.9809,-0.4234,1.2799,-0.0439,2400.0,2400.0,-0.2934,-1.0922,4.2313,31.8569 2019-06-03 15:44:19.640,134.2848,8673.6006,1.9809,-0.4234,0.909,0.2418,2400.0,2400.0,-0.3168,-1.0922,4.2326,31.8569 2019-06-03 15:44:19.660,134.2943,8673.6006,1.9809,-0.4234,1.2196,-0.0047,2400.0,2400.0,-0.2992,-1.0771,4.2286,31.8569 2019-06-03 15:44:19.680,134.2279,8673.6006,1.9871,-0.415,0.9467,0.2398,2400.0,2400.0,-0.3021,-1.0681,4.2458,31.8501 2019-06-03 15:44:19.700,134.2374,8673.5156,1.9959,-0.3992,0.9238,0.2152,2400.0,2400.0,-0.2963,-1.0681,4.2379,31.8449 2019-06-03 15:44:19.720,134.4742,8673.5156,1.9959,-0.3992,1.179,-0.0204,2400.0,2400.0,-0.2934,-1.0138,4.226,31.8449 2019-06-03 15:44:19.740,134.578,8673.4873,1.9959,-0.3992,1.0129,0.2546,2400.0,2400.0,-0.2934,-1.0228,4.2379,31.8449 2019-06-03 15:44:19.760,134.5686,8673.5723,1.9976,-0.3833,1.1309,-0.0149,2400.0,2400.0,-0.2934,-1.0198,4.226,31.8394 2019-06-03 15:44:19.780,134.5119,8673.6582,1.9976,-0.3833,1.0765,0.3003,2400.0,2400.0,-0.2934,-1.0168,4.2405,31.8394 2019-06-03 15:44:19.800,134.5308,8673.6582,2.003,-0.3562,1.0381,0.2676,2400.0,2400.0,-0.2963,-1.0138,4.2366,31.8302 2019-06-03 15:44:19.820,134.5214,8673.6865,1.9971,-0.3508,1.1279,-0.0482,2400.0,2400.0,-0.2934,-1.0108,4.2339,31.8261 2019-06-03 15:44:19.840,134.578,8673.7148,1.9971,-0.3508,1.1235,0.2781,2400.0,2400.0,-0.3168,-1.0138,4.2366,31.8261 2019-06-03 15:44:19.860,134.5875,8673.6865,1.9971,-0.3508,0.9689,-0.0033,2400.0,2400.0,-0.2934,-1.0108,4.226,31.8261 2019-06-03 15:44:19.880,134.5214,8673.0898,2.0046,-0.3275,1.1712,0.2618,2400.0,2400.0,-0.2963,-1.0138,4.2366,31.8202 2019-06-03 15:44:19.900,134.5308,8672.1807,2.0094,-0.3085,1.142,0.2393,2400.0,2400.0,-0.2934,-1.0108,4.2273,31.8138 2019-06-03 15:44:19.920,134.5214,8671.3564,2.0094,-0.3085,0.9315,0.0055,2400.0,2400.0,-0.2846,-1.0108,4.2246,31.8138 2019-06-03 15:44:19.940,134.578,8670.0781,2.0094,-0.3085,1.1675,0.2515,2400.0,2400.0,-0.2963,-1.0108,4.2405,31.8138 2019-06-03 15:44:19.960,134.578,8669.2822,2.0066,-0.289,0.7755,0.0217,2400.0,2400.0,-0.2934,-1.0108,4.222,31.8066 2019-06-03 15:44:19.980,134.5214,8668.0605,2.0066,-0.289,1.1264,0.2188,2400.0,2400.0,-0.2963,-1.0228,4.2352,31.8066 2019-06-03 15:44:20.000,134.5308,8667.2363,2.0125,-0.2654,1.2071,0.1829,2400.0,2400.0,-0.3138,-1.0228,4.2246,31.7961 2019-06-03 15:44:20.020,134.5403,8666.3838,2.0069,-0.2585,0.9378,0.0798,2400.0,2400.0,-0.308,-1.0228,4.226,31.7928 2019-06-03 15:44:20.040,134.578,8665.3613,2.0069,-0.2585,1.2015,0.1977,2400.0,2400.0,-0.3168,-1.0741,4.2418,31.7928 2019-06-03 15:44:20.060,134.5969,8665.418,2.0069,-0.2585,0.7577,0.0712,2400.0,2400.0,-0.308,-1.0711,4.2246,31.7928 2019-06-03 15:44:20.080,134.5214,8665.3896,2.0076,-0.241,1.1575,0.1163,2400.0,2400.0,-0.3051,-1.1193,4.2405,31.7867 2019-06-03 15:44:20.100,134.5308,8665.3047,2.0037,-0.2252,1.1779,0.1204,2400.0,2400.0,-0.3109,-1.1344,4.2246,31.7797 2019-06-03 15:44:20.120,134.6252,8665.333,2.0037,-0.2252,0.8635,0.1166,2400.0,2400.0,-0.3138,-1.1314,4.2193,31.7797 2019-06-03 15:44:20.140,134.7194,8665.3896,2.0037,-0.2252,1.2156,0.155,2400.0,2400.0,-0.3138,-1.2187,4.2352,31.7797 2019-06-03 15:44:20.160,134.71,8665.3896,1.996,-0.2172,0.8465,0.1232,2400.0,2400.0,-0.3138,-1.2308,4.2233,31.7734 2019-06-03 15:44:20.180,134.6535,8665.4463,1.996,-0.2172,1.2193,0.087,2400.0,2400.0,-0.3138,-1.315,4.2326,31.7734 2019-06-03 15:44:20.200,134.6629,8665.4463,1.9945,-0.1983,1.173,0.0652,2400.0,2400.0,-0.3226,-1.363,4.2246,31.7651 2019-06-03 15:44:20.220,134.6723,8665.3613,1.9943,-0.1921,0.8531,0.1748,2400.0,2400.0,-0.3255,-1.363,4.2207,31.7638 2019-06-03 15:44:20.240,134.7194,8665.3896,1.9943,-0.1921,1.1693,0.0637,2400.0,2400.0,-0.3489,-1.4201,4.2379,31.7638 2019-06-03 15:44:20.260,134.7383,8665.3896,1.9943,-0.1921,0.8727,0.1771,2400.0,2400.0,-0.3606,-1.4171,4.218,31.7638 2019-06-03 15:44:20.280,134.6629,8665.3047,1.9925,-0.187,1.0898,0.0235,2400.0,2400.0,-0.3489,-1.4261,4.2405,31.7583 2019-06-03 15:44:20.300,134.6723,8665.1621,1.9886,-0.1867,1.1235,-0.0008,2400.0,2400.0,-0.3577,-1.4561,4.222,31.7515 2019-06-03 15:44:20.320,134.9074,8665.1904,1.9886,-0.1867,0.9948,0.2265,2400.0,2400.0,-0.346,-1.4561,4.218,31.7515 2019-06-03 15:44:20.340,135.0105,8665.1904,1.9886,-0.1867,1.0895,0.0387,2400.0,2400.0,-0.3548,-1.5161,4.226,31.7515 2019-06-03 15:44:20.360,135.0105,8665.2471,1.9873,-0.1881,1.027,0.1924,2400.0,2400.0,-0.3518,-1.5161,4.2193,31.7454 2019-06-03 15:44:20.380,134.9637,8665.3047,1.9873,-0.1881,1.0595,0.0193,2400.0,2400.0,-0.3577,-1.6209,4.2273,31.7454 2019-06-03 15:44:20.400,134.9637,8665.333,1.9858,-0.1982,1.0725,-0.0,2400.0,2340.0,-0.3606,-1.6388,4.2326,31.7378 2019-06-03 15:44:20.420,134.9637,8665.333,1.989,-0.2027,1.0096,0.2213,2400.0,2340.0,-0.3577,-1.6418,4.2207,31.7356 2019-06-03 15:44:20.440,135.0199,8665.418,1.989,-0.2027,0.9863,0.0384,2400.0,2340.0,-0.3606,-1.7913,4.2326,31.7356 2019-06-03 15:44:20.460,135.0199,8665.418,1.989,-0.2027,1.1068,0.2119,2400.0,2340.0,-0.3665,-1.7973,4.222,31.7356 2019-06-03 15:44:20.480,134.9637,8664.708,1.9832,-0.2263,0.9534,0.0067,2400.0,2340.0,-0.3752,-1.8778,4.2405,31.7284 2019-06-03 15:44:20.500,134.9731,8663.7139,1.9826,-0.2566,0.9145,0.0149,2400.0,2340.0,-0.3811,-1.9077,4.2366,31.7218 2019-06-03 15:44:20.520,135.207,8662.7764,1.9826,-0.2566,1.1719,0.2104,2400.0,2340.0,-0.3811,-1.9077,4.2273,31.7218 2019-06-03 15:44:20.540,135.3096,8661.4121,1.9826,-0.2566,0.7988,0.0678,2400.0,2340.0,-0.3811,-1.9792,4.2339,31.7218 2019-06-03 15:44:20.560,135.3189,8660.5039,1.9822,-0.291,1.1442,0.1744,2400.0,2340.0,-0.3811,-1.9822,4.2207,31.7142 2019-06-03 15:44:20.580,135.2536,8659.0547,1.9837,-0.3376,0.8687,0.0552,2400.0,2340.0,-0.3752,-1.9673,4.2326,31.7074 2019-06-03 15:44:20.600,135.2536,8658.1455,1.979,-0.3687,0.8258,0.075,2400.0,2340.0,-0.3898,-2.0,4.2366,31.703 2019-06-03 15:44:20.620,135.2536,8657.2363,1.9783,-0.3964,1.173,0.1477,2400.0,2340.0,-0.3723,-2.0,4.2273,31.6999 2019-06-03 15:44:20.640,135.3096,8656.1289,1.9783,-0.3964,0.8849,0.1359,2400.0,2340.0,-0.3898,-2.0,4.2366,31.6999 2019-06-03 15:44:20.660,135.3189,8656.1572,1.9783,-0.3964,1.1719,0.0957,2400.0,2340.0,-0.3869,-1.9941,4.2299,31.6999 2019-06-03 15:44:20.680,135.263,8656.1572,1.9728,-0.4615,0.7832,0.1216,2400.0,2340.0,-0.384,-1.9494,4.2405,31.6921 2019-06-03 15:44:20.700,135.263,8656.0723,1.9729,-0.5316,0.7921,0.1603,2400.0,2340.0,-0.4191,-1.9554,4.2392,31.6868 2019-06-03 15:44:20.720,135.6164,8656.0439,1.9729,-0.5316,1.2282,0.0753,2400.0,2340.0,-0.4015,-1.9554,4.2339,31.6868 2019-06-03 15:44:20.740,135.7369,8656.1572,1.9729,-0.5316,0.8997,0.1837,2400.0,2340.0,-0.4074,-1.9583,4.2366,31.6868 2019-06-03 15:44:20.760,135.7554,8656.2422,1.9705,-0.6053,1.0573,0.0484,2400.0,2340.0,-0.4044,-1.9554,4.2233,31.6822 2019-06-03 15:44:20.780,135.6906,8656.2422,1.9705,-0.6053,0.9918,0.155,2400.0,2340.0,-0.4074,-1.9554,4.2352,31.6822 2019-06-03 15:44:20.800,135.6906,8656.2422,1.9649,-0.733,0.9818,0.178,2400.0,2340.0,-0.422,-1.9583,4.2471,31.6742 2019-06-03 15:44:20.820,135.6998,8656.2422,1.9594,-0.7791,1.1956,0.0207,2400.0,2340.0,-0.4044,-1.9107,4.2379,31.6724 2019-06-03 15:44:20.840,135.7646,8656.1855,1.9594,-0.7791,0.98,0.2391,2400.0,2340.0,-0.3928,-1.8838,4.2392,31.6724 2019-06-03 15:44:20.860,135.7554,8656.2139,1.9594,-0.7791,0.9319,-0.0045,2400.0,2340.0,-0.4044,-1.8868,4.2246,31.6724 2019-06-03 15:44:20.880,135.6906,8656.2422,1.9635,-0.8657,1.1054,0.2118,2400.0,2340.0,-0.3957,-1.8391,4.2379,31.6696 2019-06-03 15:44:20.900,135.6998,8656.1855,1.9669,-0.9542,1.0669,0.2336,2400.0,2340.0,-0.3986,-1.845,4.2538,31.6658 2019-06-03 15:44:20.920,135.57,8656.1572,1.9669,-0.9542,1.0429,-0.0035,2400.0,2340.0,-0.4015,-1.842,4.2366,31.6658 2019-06-03 15:44:20.940,135.6071,8656.1572,1.9669,-0.9542,1.142,0.2428,2400.0,2340.0,-0.4044,-1.845,4.2366,31.6658 2019-06-03 15:44:20.960,135.6071,8656.1572,1.9636,-1.047,0.8946,0.0195,2400.0,2340.0,-0.4161,-1.848,4.2193,31.663 2019-06-03 15:44:20.980,135.5422,8656.1572,1.9636,-1.047,1.1967,0.2127,2400.0,2340.0,-0.3986,-1.848,4.2366,31.663 2019-06-03 15:44:21.000,135.5422,8656.2139,1.9691,-1.1887,1.1194,0.2421,2400.0,2340.0,-0.4015,-1.857,4.2498,31.6586 2019-06-03 15:44:21.020,135.5608,8656.2139,1.9624,-1.2401,0.8853,0.0418,2400.0,2340.0,-0.3986,-1.857,4.2405,31.6571 2019-06-03 15:44:21.040,135.6071,8656.2422,1.9624,-1.2401,1.2296,0.1954,2400.0,2340.0,-0.4103,-1.86,4.2352,31.6571 2019-06-03 15:44:21.060,135.6164,8656.2422,1.9624,-1.2401,0.855,0.0648,2400.0,2340.0,-0.422,-1.86,4.2339,31.6571 2019-06-03 15:44:21.080,135.5515,8656.2705,1.9642,-1.3329,1.1993,0.1405,2400.0,2340.0,-0.422,-1.842,4.2418,31.6575 2019-06-03 15:44:21.100,135.5608,8656.1289,1.9627,-1.4305,1.1205,0.174,2400.0,2340.0,-0.422,-1.851,4.2498,31.6586 2019-06-03 15:44:21.120,135.6628,8656.1006,1.9627,-1.4305,0.8258,0.0942,2400.0,2340.0,-0.4132,-1.848,4.2246,31.6586 2019-06-03 15:44:21.140,135.7554,8656.1289,1.9627,-1.4305,1.1864,0.1373,2400.0,2340.0,-0.4044,-1.8629,4.2326,31.6586 2019-06-03 15:44:21.160,135.7369,8656.1572,1.9539,-1.5302,0.7814,0.1183,2400.0,2340.0,-0.4103,-1.8987,4.2233,31.6591 2019-06-03 15:44:21.180,135.7091,8656.2139,1.9539,-1.5302,1.2866,0.0784,2400.0,2340.0,-0.4074,-1.8271,4.2352,31.6591 2019-06-03 15:44:21.200,135.6998,8656.2139,1.9546,-1.6774,1.233,0.1198,2400.0,2340.0,-0.4337,-1.8868,4.2366,31.6591 2019-06-03 15:44:21.220,135.7091,8656.1855,1.9536,-1.7261,0.7655,0.139,2400.0,2340.0,-0.4132,-1.8957,4.2273,31.6597 2019-06-03 15:44:21.240,135.7646,8656.1289,1.9536,-1.7261,1.2174,0.0602,2400.0,2340.0,-0.4249,-1.8928,4.2246,31.6597 2019-06-03 15:44:21.260,135.7554,8656.1572,1.9536,-1.7261,0.9511,0.1838,2400.0,2340.0,-0.4191,-1.8898,4.2207,31.6597 2019-06-03 15:44:21.280,135.6906,8656.2422,1.9545,-1.8237,1.1915,-0.0047,2400.0,2340.0,-0.4278,-1.8957,4.222,31.6593 2019-06-03 15:44:21.300,135.7091,8656.1855,1.9496,-1.9201,1.1557,0.0363,2400.0,2340.0,-0.4308,-1.9107,4.2405,31.6575 2019-06-03 15:44:21.320,135.9402,8656.1572,1.9496,-1.9201,0.8698,0.1985,2400.0,2340.0,-0.4366,-1.9166,4.2193,31.6575 2019-06-03 15:44:21.340,136.0323,8656.1289,1.9496,-1.9201,1.1324,0.004,2400.0,2340.0,-0.4454,-2.003,4.2299,31.6575 2019-06-03 15:44:21.360,136.0507,8656.1289,1.9458,-2.0153,0.9327,0.1914,2400.0,2340.0,-0.498,-2.0268,4.2193,31.656 2019-06-03 15:44:21.380,135.9863,8656.1289,1.9458,-2.0153,1.186,-0.0094,2400.0,2340.0,-0.5155,-2.0358,4.2207,31.656 2019-06-03 15:44:21.400,135.977,8656.1855,1.9441,-2.147,1.0717,0.0269,2340.0,2400.0,-0.5448,-2.1161,4.2339,31.6556 2019-06-03 15:44:21.420,135.9955,8656.1572,1.9459,-2.1897,0.9438,0.2015,2340.0,2400.0,-0.5477,-2.1131,4.218,31.6558 2019-06-03 15:44:21.440,136.0415,8656.2139,1.9459,-2.1897,0.9922,0.0067,2340.0,2400.0,-0.5594,-2.1755,4.2286,31.6558 2019-06-03 15:44:21.460,136.0599,8656.1572,1.9459,-2.1897,1.0754,0.1795,2340.0,2400.0,-0.574,-2.2052,4.218,31.6558 2019-06-03 15:44:21.480,135.9955,8655.5605,1.945,-2.2852,1.0007,0.0099,2340.0,2400.0,-0.5623,-2.2052,4.2273,31.6534 2019-06-03 15:44:21.500,136.0047,8654.5947,1.9428,-2.386,0.9911,0.0305,2340.0,2400.0,-0.5711,-2.226,4.2432,31.6495 2019-06-03 15:44:21.520,136.106,8653.7148,1.9428,-2.386,1.105,0.2098,2340.0,2400.0,-0.5711,-2.2497,4.2286,31.6495 2019-06-03 15:44:21.540,136.1887,8652.4082,1.9428,-2.386,0.9556,0.0179,2340.0,2400.0,-0.5711,-2.2527,4.2286,31.6495 2019-06-03 15:44:21.560,136.1795,8651.5566,1.9432,-2.4926,1.162,0.1787,2340.0,2400.0,-0.5886,-2.2646,4.2207,31.6433 2019-06-03 15:44:21.580,136.1335,8650.2217,1.9432,-2.4926,0.9892,0.015,2340.0,2400.0,-0.574,-2.2319,4.222,31.6433 2019-06-03 15:44:21.600,136.1335,8649.3408,1.9416,-2.6665,0.9689,0.0357,2340.0,2400.0,-0.5798,-2.2913,4.2418,31.63 2019-06-03 15:44:21.620,136.1427,8648.4033,1.9436,-2.7222,1.2208,0.2129,2340.0,2400.0,-0.574,-2.2824,4.2313,31.6256 2019-06-03 15:44:21.640,136.1979,8647.2676,1.9436,-2.7222,0.9463,0.0399,2340.0,2400.0,-0.5857,-2.2586,4.2313,31.6256 2019-06-03 15:44:21.660,136.1979,8647.2676,1.9436,-2.7222,1.233,0.1594,2340.0,2400.0,-0.6003,-2.2735,4.222,31.6256 2019-06-03 15:44:21.680,136.1335,8647.2393,1.9406,-2.8461,0.9478,0.072,2340.0,2400.0,-0.5944,-2.2646,4.2273,31.6143 2019-06-03 15:44:21.700,136.1427,8647.2109,1.9417,-2.9702,0.8454,0.0815,2340.0,2400.0,-0.5944,-2.2646,4.2432,31.6016 2019-06-03 15:44:21.720,136.4911,8647.1826,1.9417,-2.9702,1.1734,0.1461,2340.0,2400.0,-0.5798,-2.2705,4.2366,31.6016 2019-06-03 15:44:21.740,136.6098,8647.2676,1.9417,-2.9702,0.8909,0.078,2340.0,2400.0,-0.5886,-2.2705,4.2286,31.6016 2019-06-03 15:44:21.760,136.628,8647.2959,1.942,-3.0921,1.1871,0.1244,2340.0,2400.0,-0.5915,-2.2913,4.2379,31.5876 2019-06-03 15:44:21.780,136.5733,8647.3242,1.942,-3.0921,0.8261,0.0991,2340.0,2400.0,-0.5944,-2.2438,4.226,31.5876 2019-06-03 15:44:21.800,136.5733,8647.2959,1.9397,-3.2872,0.8372,0.1407,2340.0,2400.0,-0.5915,-2.2468,4.2458,31.5616 2019-06-03 15:44:21.820,136.5824,8647.2959,1.9387,-3.354,1.135,0.1058,2340.0,2400.0,-0.5974,-2.2527,4.2326,31.552 2019-06-03 15:44:21.840,136.6189,8647.3809,1.9387,-3.354,0.8912,0.1238,2340.0,2400.0,-0.5944,-2.2527,4.2405,31.552 2019-06-03 15:44:21.860,136.628,8647.3525,1.9387,-3.354,1.1634,0.0617,2340.0,2400.0,-0.6061,-2.2527,4.2326,31.552 2019-06-03 15:44:21.880,136.5641,8647.3525,1.9407,-3.4867,0.9156,0.1553,2340.0,2400.0,-0.6032,-2.2497,4.2339,31.5336 2019-06-03 15:44:21.900,136.5824,8647.2109,1.9426,-3.6152,0.8713,0.153,2340.0,2400.0,-0.612,-2.2557,4.2418,31.5126 2019-06-03 15:44:21.920,136.8101,8647.2393,1.9426,-3.6152,1.0691,0.0727,2340.0,2400.0,-0.5915,-2.2527,4.2379,31.5126 2019-06-03 15:44:21.940,136.91,8647.2393,1.9426,-3.6152,0.943,0.1156,2340.0,2400.0,-0.5915,-2.2527,4.2352,31.5126 2019-06-03 15:44:21.960,136.901,8647.2959,1.9468,-3.7478,1.1756,0.0404,2340.0,2400.0,-0.5886,-2.2616,4.2379,31.489 2019-06-03 15:44:21.980,136.8556,8647.3525,1.9498,-3.884,0.9767,0.1579,2340.0,2400.0,-0.5886,-2.2557,4.2286,31.4615 2019-06-03 15:44:22.000,136.8465,8647.3525,1.9517,-3.9515,0.899,0.1729,2340.0,2400.0,-0.5974,-2.2616,4.2445,31.4486 2019-06-03 15:44:22.020,136.8465,8647.4092,1.9507,-4.02,1.0325,0.0375,2340.0,2400.0,-0.6032,-2.2616,4.2392,31.4337 2019-06-03 15:44:22.040,136.901,8647.3525,1.9507,-4.02,1.0762,0.1421,2340.0,2400.0,-0.6061,-2.2616,4.2392,31.4337 2019-06-03 15:44:22.060,136.9282,8647.3242,1.9507,-4.02,1.0791,0.0185,2340.0,2400.0,-0.6032,-2.2586,4.2379,31.4337 2019-06-03 15:44:22.080,136.8556,8647.3809,1.957,-4.1549,0.9556,0.1662,2340.0,2400.0,-0.5886,-2.2586,4.2366,31.4031 2019-06-03 15:44:22.100,136.8556,8647.3242,1.9628,-4.2862,1.0007,0.1761,2340.0,2400.0,-0.5886,-2.2616,4.2485,31.3714 2019-06-03 15:44:22.120,137.0822,8647.4092,1.9628,-4.2862,1.0673,0.0549,2340.0,2400.0,-0.5944,-2.2616,4.2339,31.3714 2019-06-03 15:44:22.140,137.1817,8647.4385,1.9628,-4.2862,0.9648,0.1433,2340.0,2400.0,-0.6032,-2.2586,4.2379,31.3714 2019-06-03 15:44:22.160,137.1908,8647.4951,1.9693,-4.4228,1.0591,-0.0016,2340.0,2400.0,-0.6178,-2.2586,4.2339,31.3373 2019-06-03 15:44:22.180,137.1365,8647.4385,1.9693,-4.4228,0.9689,0.2163,2340.0,2400.0,-0.612,-2.2557,4.2379,31.3373 2019-06-03 15:44:22.200,137.1365,8647.4951,1.9827,-4.6302,0.9822,0.2364,2340.0,2400.0,-0.6149,-2.2586,4.2498,31.2823 2019-06-03 15:44:22.220,137.1365,8647.4951,1.9824,-4.7046,0.9412,0.0168,2340.0,2400.0,-0.6003,-2.2586,4.2405,31.263 2019-06-03 15:44:22.240,137.1817,8647.4951,1.9824,-4.7046,1.0721,0.1861,2340.0,2400.0,-0.612,-2.2586,4.2366,31.263 2019-06-03 15:44:22.260,137.1908,8647.4668,1.9824,-4.7046,1.0159,0.0172,2340.0,2400.0,-0.612,-2.2557,4.2379,31.263 2019-06-03 15:44:22.280,137.1275,8647.4385,1.9902,-4.8432,1.1124,0.1933,2340.0,2400.0,-0.5915,-2.2289,4.2313,31.2246 2019-06-03 15:44:22.300,137.1456,8647.3525,1.9945,-4.9827,1.0891,0.2007,2340.0,2400.0,-0.6003,-2.2378,4.2445,31.1852 2019-06-03 15:44:22.320,137.2449,8647.3242,1.9945,-4.9827,0.9892,0.0238,2340.0,2400.0,-0.6178,-2.2349,4.226,31.1852 2019-06-03 15:44:22.340,137.3351,8647.2959,1.9945,-4.9827,1.1697,0.2054,2340.0,2400.0,-0.6061,-2.2289,4.2458,31.1852 2019-06-03 15:44:22.360,137.3261,8647.3242,1.9963,-5.1267,0.8964,-0.008,2340.0,2400.0,-0.6237,-2.2378,4.2445,31.1448 2019-06-03 15:44:22.380,137.281,8647.3242,1.9963,-5.1267,1.1438,0.2152,2340.0,2400.0,-0.5974,-2.223,4.2458,31.1448 2019-06-03 15:44:22.400,137.281,8647.2959,2.0093,-5.3395,1.1368,0.2072,2400.0,2400.0,-0.6061,-2.1933,4.2418,31.081 2019-06-03 15:44:22.420,137.272,8647.2393,2.0068,-5.4118,0.9278,0.0402,2400.0,2400.0,-0.6061,-2.1903,4.2339,31.06 2019-06-03 15:44:22.440,137.3351,8647.2676,2.0068,-5.4118,1.1882,0.1503,2400.0,2400.0,-0.5974,-2.1844,4.2352,31.06 2019-06-03 15:44:22.460,137.3351,8647.2393,2.0068,-5.4118,0.9168,0.0409,2400.0,2400.0,-0.5944,-2.1874,4.2445,31.06 2019-06-03 15:44:22.480,137.272,8647.2109,2.0129,-5.5449,1.0802,0.1641,2400.0,2400.0,-0.5798,-2.1844,4.2286,31.018 2019-06-03 15:44:22.500,137.281,8647.1826,2.0153,-5.6811,1.135,0.1668,2400.0,2400.0,-0.5857,-2.1488,4.2471,30.9752 2019-06-03 15:44:22.520,137.5061,8647.1826,2.0153,-5.6811,0.923,0.0659,2400.0,2400.0,-0.5886,-2.1488,4.2326,30.9752 2019-06-03 15:44:22.540,137.6049,8647.2109,2.0153,-5.6811,1.1923,0.1341,2400.0,2400.0,-0.5769,-2.0715,4.2432,30.9752 2019-06-03 15:44:22.560,137.6049,8647.2959,2.0155,-5.8163,0.8247,0.0741,2400.0,2400.0,-0.5915,-2.0923,4.2471,30.9323 2019-06-03 15:44:22.580,137.56,8647.3525,2.0155,-5.8163,1.2803,0.1334,2400.0,2400.0,-0.5828,-2.0893,4.2339,30.9323 2019-06-03 15:44:22.600,137.56,8647.3525,2.0196,-6.0123,1.2093,0.114,2400.0,2400.0,-0.5828,-2.0863,4.2418,30.8663 2019-06-03 15:44:22.620,137.56,8647.3242,2.0207,-6.0774,0.9009,0.0918,2400.0,2400.0,-0.5857,-2.0596,4.2313,30.8451 2019-06-03 15:44:22.640,137.6139,8647.3525,2.0207,-6.0774,1.2237,0.0913,2400.0,2400.0,-0.5769,-1.9732,4.2339,30.8451 2019-06-03 15:44:22.660,137.6228,8647.2959,2.0207,-6.0774,0.8021,0.1287,2400.0,2400.0,-0.5798,-1.9881,4.2405,30.8451 2019-06-03 15:44:22.680,137.551,8646.6709,2.0252,-6.1995,1.2614,0.1129,2400.0,2400.0,-0.574,-1.9405,4.2273,30.8021 2019-06-03 15:44:22.700,137.56,8645.6494,2.0242,-6.3197,1.2622,0.0583,2400.0,2400.0,-0.5711,-1.9285,4.2418,30.7595 2019-06-03 15:44:22.720,137.6766,8644.7119,2.0242,-6.3197,0.9212,0.139,2400.0,2400.0,-0.5769,-1.9285,4.2379,30.7595 2019-06-03 15:44:22.740,137.7572,8643.3496,2.0242,-6.3197,1.2067,0.0329,2400.0,2400.0,-0.5711,-1.9107,4.2379,30.7595 2019-06-03 15:44:22.760,137.7483,8642.4971,2.0269,-6.4335,0.8746,0.197,2400.0,2400.0,-0.5711,-1.9136,4.2458,30.7168 2019-06-03 15:44:22.780,137.6945,8641.1348,2.0269,-6.4335,1.1945,0.0547,2400.0,2400.0,-0.5681,-1.8778,4.2246,30.7168 2019-06-03 15:44:22.800,137.6945,8640.2539,2.0361,-6.5924,1.183,0.0416,2400.0,2400.0,-0.5623,-1.8868,4.2392,30.6535 2019-06-03 15:44:22.820,137.7035,8639.374,2.0436,-6.6432,1.0118,0.1759,2400.0,2400.0,-0.5652,-1.9166,4.2379,30.632 2019-06-03 15:44:22.840,137.7393,8638.2666,2.0436,-6.6432,1.2171,0.0152,2400.0,2400.0,-0.5564,-1.8749,4.2418,30.632 2019-06-03 15:44:22.860,137.7751,8638.3232,2.0436,-6.6432,0.9841,0.2207,2400.0,2400.0,-0.5681,-1.9196,4.2498,30.632 2019-06-03 15:44:22.880,137.7125,8638.2666,2.0509,-6.7439,1.0928,0.0033,2400.0,2400.0,-0.5652,-1.854,4.2366,30.5898 2019-06-03 15:44:22.900,137.7035,8638.1816,2.0527,-6.8467,1.1213,-0.0202,2400.0,2400.0,-0.5769,-1.845,4.2392,30.5479 2019-06-03 15:44:22.920,138.0429,8638.1533,2.0527,-6.8467,1.004,0.2205,2400.0,2400.0,-0.5828,-1.8719,4.2418,30.5479 2019-06-03 15:44:22.940,138.1586,8638.1533,2.0527,-6.8467,1.0591,-0.0094,2400.0,2400.0,-0.5711,-1.8659,4.2405,30.5479 2019-06-03 15:44:22.960,138.1586,8638.1816,2.0631,-6.9423,1.0791,0.2424,2400.0,2400.0,-0.5681,-1.8689,4.2524,30.505 2019-06-03 15:44:22.980,138.1052,8638.1533,2.0631,-6.9423,1.0107,-0.008,2400.0,2400.0,-0.5652,-1.8659,4.2352,30.505 2019-06-03 15:44:23.000,138.123,8638.0957,2.0751,-7.0895,1.0037,-0.0137,2400.0,2400.0,-0.5623,-1.854,4.2524,30.4384 2019-06-03 15:44:23.020,138.123,8638.0107,2.0858,-7.1345,1.0602,0.1933,2400.0,2400.0,-0.5886,-1.854,4.2392,30.4159 2019-06-03 15:44:23.040,138.1853,8638.0391,2.0858,-7.1345,1.0088,0.0125,2400.0,2400.0,-0.574,-1.8361,4.2458,30.4159 2019-06-03 15:44:23.060,138.1675,8638.0391,2.0858,-7.1345,1.2215,0.2308,2400.0,2400.0,-0.5886,-1.851,4.2564,30.4159 2019-06-03 15:44:23.080,138.1052,8638.0957,2.0912,-7.2339,0.8779,0.0239,2400.0,2400.0,-0.5681,-1.8241,4.2471,30.3708 2019-06-03 15:44:23.100,138.1141,8638.0674,2.0989,-7.3344,0.9319,0.0325,2400.0,2400.0,-0.5681,-1.8212,4.2485,30.3245 2019-06-03 15:44:23.120,138.0963,8638.0957,2.0989,-7.3344,1.1919,0.1345,2400.0,2400.0,-0.5711,-1.8241,4.2511,30.3245 2019-06-03 15:44:23.140,138.1675,8638.0957,2.0989,-7.3344,0.9659,0.0933,2400.0,2400.0,-0.5652,-1.7943,4.2432,30.3245 2019-06-03 15:44:23.160,138.1675,8638.1533,2.1128,-7.4328,1.2751,0.1423,2400.0,2400.0,-0.5652,-1.7794,4.2617,30.2771 2019-06-03 15:44:23.180,138.1052,8638.21,2.1128,-7.4328,0.8428,0.1022,2400.0,2400.0,-0.5681,-1.7375,4.2445,30.2771 2019-06-03 15:44:23.200,138.1141,8638.21,2.1297,-7.5915,0.9345,0.0841,2400.0,2400.0,-0.5594,-1.6658,4.2538,30.2028 2019-06-03 15:44:23.220,138.123,8638.1816,2.1353,-7.6428,1.3029,0.0824,2400.0,2400.0,-0.5652,-1.6688,4.2551,30.1785 2019-06-03 15:44:23.240,138.1586,8638.1816,2.1353,-7.6428,0.9149,0.1326,2400.0,2400.0,-0.5535,-1.573,4.2498,30.1785 2019-06-03 15:44:23.260,138.1764,8638.1816,2.1353,-7.6428,1.257,0.1025,2400.0,2400.0,-0.5506,-1.573,4.2697,30.1785 2019-06-03 15:44:23.280,138.1141,8638.1533,2.1452,-7.7434,0.8868,0.1575,2400.0,2400.0,-0.5331,-1.4771,4.2577,30.1295 2019-06-03 15:44:23.300,138.1141,8638.0674,2.1567,-7.8362,0.8727,0.1538,2400.0,2400.0,-0.5272,-1.4351,4.2551,30.0815 2019-06-03 15:44:23.320,138.2297,8638.0107,2.1567,-7.8362,1.3058,0.0125,2400.0,2400.0,-0.5272,-1.4141,4.271,30.0815 2019-06-03 15:44:23.340,138.3184,8638.0674,2.1567,-7.8362,0.9748,0.2075,2400.0,2400.0,-0.5155,-1.333,4.2577,30.0815 2019-06-03 15:44:23.360,138.3096,8638.0674,2.1695,-7.9211,1.1135,0.0463,2400.0,2400.0,-0.5068,-1.33,4.2657,30.034 2019-06-03 15:44:23.380,138.2563,8638.125,2.1775,-8.0015,0.9082,0.2039,2400.0,2400.0,-0.4804,-1.2157,4.2458,29.9855 2019-06-03 15:44:23.400,138.2652,8638.1533,2.1859,-8.0358,1.0484,0.1921,2400.0,2400.0,-0.4775,-1.2247,4.2511,29.9628 2019-06-03 15:44:23.420,138.2652,8638.0674,2.1869,-8.0732,1.1682,0.0105,2400.0,2400.0,-0.4775,-1.2217,4.2683,29.9405 2019-06-03 15:44:23.440,138.3096,8638.0391,2.1869,-8.0732,0.9811,0.2112,2400.0,2400.0,-0.4688,-1.1826,4.2511,29.9405 2019-06-03 15:44:23.460,138.3096,8638.0674,2.1869,-8.0732,1.0717,0.0339,2400.0,2400.0,-0.4629,-1.2247,4.271,29.9405 2019-06-03 15:44:23.480,138.2563,8638.1533,2.1983,-8.1324,1.0111,0.2232,2400.0,2400.0,-0.4688,-1.2217,4.2326,29.8968 2019-06-03 15:44:23.500,138.2652,8638.0391,2.2089,-8.1822,1.1061,0.19,2400.0,2400.0,-0.4571,-1.2217,4.2551,29.8552 2019-06-03 15:44:23.520,138.3716,8638.0674,2.2089,-8.1822,0.9915,-0.0063,2400.0,2400.0,-0.4717,-1.2548,4.2564,29.8552 2019-06-03 15:44:23.540,138.4513,8638.1533,2.2089,-8.1822,1.223,0.2178,2400.0,2400.0,-0.46,-1.2488,4.2617,29.8552 2019-06-03 15:44:23.560,138.4513,8638.125,2.2178,-8.2275,0.9855,0.0189,2400.0,2400.0,-0.4804,-1.2518,4.2723,29.8139 2019-06-03 15:44:23.580,138.407,8638.1533,2.2178,-8.2275,1.0795,0.2068,2400.0,2400.0,-0.4775,-1.2488,4.2591,29.8139 2019-06-03 15:44:23.600,138.3982,8638.125,2.2341,-8.2823,1.1209,0.1688,2400.0,2400.0,-0.4863,-1.2187,4.2498,29.7525 2019-06-03 15:44:23.620,138.407,8638.125,2.2352,-8.3025,0.9678,0.0469,2400.0,2400.0,-0.4629,-1.2338,4.263,29.7326 2019-06-03 15:44:23.640,138.4424,8638.0957,2.2352,-8.3025,1.2211,0.1716,2400.0,2400.0,-0.4571,-1.2217,4.2485,29.7326 2019-06-03 15:44:23.660,138.4601,8638.0957,2.2352,-8.3025,1.0214,0.0718,2400.0,2400.0,-0.4571,-1.2187,4.271,29.7326 2019-06-03 15:44:23.680,138.3893,8637.5283,2.2449,-8.3258,1.1853,0.1528,2400.0,2400.0,-0.4571,-1.2097,4.2418,29.695 2019-06-03 15:44:23.700,138.3982,8636.5918,2.2567,-8.3508,1.2759,0.1766,2400.0,2400.0,-0.46,-1.1675,4.2591,29.6574 2019-06-03 15:44:23.720,138.628,8635.6836,2.2567,-8.3508,0.828,0.0599,2400.0,2400.0,-0.4629,-1.1916,4.2736,29.6574 2019-06-03 15:44:23.740,138.7249,8634.4629,2.2567,-8.3508,1.2389,0.148,2400.0,2400.0,-0.4571,-1.1706,4.2617,29.6574 2019-06-03 15:44:23.760,138.7249,8633.6387,2.2626,-8.3757,0.8739,0.1053,2400.0,2400.0,-0.4541,-1.1886,4.2683,29.6181 2019-06-03 15:44:23.780,138.672,8632.333,2.2626,-8.3757,1.2344,0.1199,2400.0,2400.0,-0.4571,-1.1916,4.2379,29.6181 2019-06-03 15:44:23.800,138.6632,8631.5381,2.2795,-8.4047,1.335,0.1004,2400.0,2400.0,-0.4512,-1.1886,4.2405,29.5576 2019-06-03 15:44:23.820,138.672,8630.6299,2.2869,-8.4152,0.8032,0.1044,2400.0,2400.0,-0.4658,-1.1886,4.2617,29.5359 2019-06-03 15:44:23.840,138.7249,8629.4658,2.2869,-8.4152,1.3417,0.0842,2400.0,2400.0,-0.4688,-1.1495,4.2604,29.5359 2019-06-03 15:44:23.860,138.7337,8629.4375,2.2869,-8.4152,0.9123,0.1497,2400.0,2400.0,-0.4688,-1.2217,4.2776,29.5359 2019-06-03 15:44:23.880,138.6632,8629.4375,2.3016,-8.4347,1.1952,0.0838,2400.0,2400.0,-0.4658,-1.2247,4.2551,29.4935 2019-06-03 15:44:23.900,138.6809,8629.3525,2.3119,-8.4568,1.2866,0.0582,2400.0,2400.0,-0.46,-1.2007,4.2524,29.45 2019-06-03 15:44:23.920,138.7777,8629.3809,2.3119,-8.4568,0.9179,0.1719,2400.0,2400.0,-0.4658,-1.1977,4.263,29.45 2019-06-03 15:44:23.940,138.8569,8629.4375,2.3119,-8.4568,1.1819,0.0524,2400.0,2400.0,-0.4571,-1.1916,4.2551,29.45 2019-06-03 15:44:23.960,138.8569,8629.5508,2.3214,-8.4738,0.8613,0.1726,2400.0,2400.0,-0.4658,-1.1977,4.271,29.4041 2019-06-03 15:44:23.980,138.8129,8629.5508,2.3214,-8.4738,1.1364,0.0204,2400.0,2400.0,-0.4717,-1.1977,4.2418,29.4041 2019-06-03 15:44:24.000,138.8041,8629.5791,2.3429,-8.4946,1.2363,0.0179,2400.0,2400.0,-0.4717,-1.1946,4.2405,29.3327 2019-06-03 15:44:24.020,138.8129,8629.6084,2.3537,-8.5005,1.068,0.2265,2400.0,2400.0,-0.4629,-1.1946,4.2498,29.3086 2019-06-03 15:44:24.040,138.8657,8629.6367,2.3537,-8.5005,1.1656,0.0107,2400.0,2400.0,-0.4337,-1.1946,4.2551,29.3086 2019-06-03 15:44:24.060,138.8745,8629.6084,2.3537,-8.5005,1.0443,0.203,2400.0,2400.0,-0.4541,-1.1977,4.2697,29.3086 2019-06-03 15:44:24.080,138.8129,8629.6367,2.3608,-8.5149,1.0691,0.0157,2400.0,2400.0,-0.4658,-1.1977,4.2551,29.2603 2019-06-03 15:44:24.100,138.8217,8629.5225,2.3691,-8.5295,1.0728,0.0266,2400.0,2400.0,-0.4658,-1.1977,4.2511,29.2122 2019-06-03 15:44:24.120,138.9271,8629.4375,2.3691,-8.5295,1.1091,0.2296,2400.0,2400.0,-0.4775,-1.2067,4.2577,29.2122 2019-06-03 15:44:24.140,138.9973,8629.3809,2.3691,-8.5295,1.0573,0.0046,2400.0,2400.0,-0.4746,-1.2067,4.2313,29.2122 2019-06-03 15:44:24.160,139.0061,8629.3809,2.3823,-8.54,1.1568,0.1832,2400.0,2400.0,-0.4658,-1.2368,4.2577,29.1635 2019-06-03 15:44:24.180,138.9535,8629.3525,2.3823,-8.54,0.9452,0.0221,2400.0,2400.0,-0.4688,-1.2458,4.2432,29.1635 2019-06-03 15:44:24.200,138.9447,8629.3809,2.3977,-8.5521,0.9449,0.0549,2400.0,2400.0,-0.4717,-1.2488,4.2498,29.0927 2019-06-03 15:44:24.220,138.9447,8629.4092,2.4069,-8.5538,1.2548,0.1936,2400.0,2400.0,-0.4834,-1.2759,4.2604,29.0686 2019-06-03 15:44:24.240,139.0061,8629.4092,2.4069,-8.5538,0.774,0.0689,2400.0,2400.0,-0.4775,-1.2669,4.2326,29.0686 2019-06-03 15:44:24.260,139.0061,8629.4092,2.4069,-8.5538,1.2733,0.1332,2400.0,2400.0,-0.4834,-1.2608,4.2485,29.0686 2019-06-03 15:44:24.280,138.9447,8629.5225,2.4088,-8.5667,0.8502,0.0722,2400.0,2400.0,-0.4863,-1.2608,4.2379,29.0219 2019-06-03 15:44:24.300,138.9535,8629.5225,2.4213,-8.5789,0.8997,0.0994,2400.0,2400.0,-0.4804,-1.2638,4.2405,28.9729 2019-06-03 15:44:24.320,139.0587,8629.5225,2.4213,-8.5789,1.2023,0.1491,2400.0,2400.0,-0.4775,-1.2669,4.2617,28.9729 2019-06-03 15:44:24.340,139.1375,8629.5508,2.4213,-8.5789,0.794,0.1016,2400.0,2400.0,-0.4834,-1.2608,4.226,28.9729 2019-06-03 15:44:24.360,139.1462,8629.5791,2.4343,-8.589,1.2651,0.1015,2400.0,2400.0,-0.4863,-1.2669,4.2379,28.9237 2019-06-03 15:44:24.380,139.0937,8629.5508,2.4343,-8.589,0.875,0.1037,2400.0,2400.0,-0.4921,-1.2638,4.2339,28.9237 2019-06-03 15:44:24.400,139.0849,8629.5225,2.4451,-8.6052,0.9918,0.1383,2400.0,2340.0,-0.4775,-1.2608,4.2405,28.8494 2019-06-03 15:44:24.420,139.1024,8629.4658,2.4493,-8.6133,1.2522,0.1198,2400.0,2340.0,-0.4804,-1.2578,4.2418,28.8247 2019-06-03 15:44:24.440,139.1462,8629.4092,2.4493,-8.6133,0.8513,0.1245,2400.0,2340.0,-0.4775,-1.2578,4.2299,28.8247 2019-06-03 15:44:24.460,139.1462,8629.3525,2.4493,-8.6133,1.4071,0.0756,2400.0,2340.0,-0.4775,-1.2578,4.2418,28.8247 2019-06-03 15:44:24.480,139.0937,8629.3809,2.4557,-8.6253,0.8875,0.1335,2400.0,2340.0,-0.4863,-1.2608,4.2273,28.7768 2019-06-03 15:44:24.500,139.0937,8629.3242,2.4674,-8.6358,0.9822,0.1497,2400.0,2340.0,-0.4775,-1.2578,4.2366,28.7285 2019-06-03 15:44:24.520,139.0937,8629.3525,2.4674,-8.6358,1.1039,0.076,2400.0,2340.0,-0.5009,-1.2608,4.2418,28.7285 2019-06-03 15:44:24.540,139.1462,8629.3242,2.4674,-8.6358,0.9142,0.1722,2400.0,2340.0,-0.5009,-1.2578,4.2313,28.7285 2019-06-03 15:44:24.560,139.1375,8629.4375,2.4754,-8.6454,1.2296,-0.0024,2400.0,2340.0,-0.5038,-1.2638,4.2313,28.6796 2019-06-03 15:44:24.580,139.0937,8629.4658,2.4754,-8.6454,1.0029,0.171,2400.0,2340.0,-0.4951,-1.2608,4.2246,28.6796 2019-06-03 15:44:24.600,139.0937,8629.4658,2.4899,-8.6644,1.0817,0.1807,2400.0,2340.0,-0.4746,-1.2608,4.226,28.6016 2019-06-03 15:44:24.620,139.0849,8629.4941,2.4908,-8.6744,1.0684,0.0417,2400.0,2340.0,-0.4863,-1.2759,4.2405,28.5764 2019-06-03 15:44:24.640,139.1375,8629.5508,2.4908,-8.6744,0.9896,0.2066,2400.0,2340.0,-0.4834,-1.2669,4.2246,28.5764 2019-06-03 15:44:24.660,139.1549,8629.4658,2.4908,-8.6744,1.1446,-0.044,2400.0,2340.0,-0.4746,-1.2308,4.2392,28.5764 2019-06-03 15:44:24.680,139.0937,8629.4658,2.5003,-8.688,1.0647,0.1797,2400.0,2340.0,-0.4951,-1.2428,4.2048,28.5258 2019-06-03 15:44:24.700,139.0937,8629.3809,2.5123,-8.7002,1.0532,0.222,2400.0,2340.0,-0.46,-1.2398,4.2154,28.4761 2019-06-03 15:44:24.720,139.1987,8629.3809,2.5123,-8.7002,0.9989,0.0408,2400.0,2340.0,-0.4834,-1.2548,4.2273,28.4761 2019-06-03 15:44:24.740,139.2685,8629.3525,2.5123,-8.7002,1.1028,0.1808,2400.0,2340.0,-0.4863,-1.2518,4.2207,28.4761 2019-06-03 15:44:24.760,139.2773,8629.3242,2.5183,-8.7162,0.9578,0.0088,2400.0,2340.0,-0.4863,-1.2518,4.222,28.4263 2019-06-03 15:44:24.780,139.2336,8629.2959,2.5261,-8.7315,1.1686,0.1461,2400.0,2340.0,-0.4804,-1.2518,4.2074,28.3736 2019-06-03 15:44:24.800,139.2161,8629.2393,2.535,-8.735,1.1379,0.1835,2400.0,2340.0,-0.4717,-1.2518,4.1982,28.3483 2019-06-03 15:44:24.820,139.2249,8629.1826,2.5374,-8.7453,0.994,0.0534,2400.0,2340.0,-0.4629,-1.2518,4.214,28.3236 2019-06-03 15:44:24.840,139.2773,8629.2393,2.5374,-8.7453,1.2644,0.1786,2400.0,2340.0,-0.4717,-1.2518,4.2008,28.3236 2019-06-03 15:44:24.860,139.286,8629.2959,2.5374,-8.7453,0.8886,0.0304,2400.0,2340.0,-0.4746,-1.2488,4.2127,28.3236 2019-06-03 15:44:24.880,139.2161,8629.2676,2.548,-8.7586,1.2666,0.1213,2400.0,2340.0,-0.5038,-1.2548,4.1915,28.2752 2019-06-03 15:44:24.900,139.2336,8629.2676,2.5537,-8.7743,1.3014,0.1288,2400.0,2340.0,-0.4921,-1.2518,4.1968,28.2277 2019-06-03 15:44:24.920,139.4428,8629.3242,2.5537,-8.7743,0.9082,0.0962,2400.0,2340.0,-0.4921,-1.2548,4.2087,28.2277 2019-06-03 15:44:24.940,139.5472,8629.3525,2.5537,-8.7743,1.1864,0.1013,2400.0,2340.0,-0.4746,-1.2518,4.1889,28.2277 2019-06-03 15:44:24.960,139.5385,8629.4658,2.5579,-8.7903,0.8487,0.1007,2400.0,2340.0,-0.4541,-1.2518,4.1955,28.1811 2019-06-03 15:44:24.980,139.4863,8629.4941,2.5579,-8.7903,1.318,0.068,2400.0,2340.0,-0.4571,-1.2518,4.1823,28.1811 2019-06-03 15:44:25.000,139.495,8629.5225,2.5733,-8.8043,1.3206,0.0695,2400.0,2340.0,-0.4541,-1.2488,4.1849,28.1082 2019-06-03 15:44:25.020,139.5037,8629.4658,2.58,-8.8093,0.8502,0.1525,2400.0,2340.0,-0.4717,-1.2518,4.1968,28.0857 2019-06-03 15:44:25.040,139.5559,8629.4658,2.58,-8.8093,1.2992,0.0503,2400.0,2340.0,-0.4746,-1.2518,4.1836,28.0857 2019-06-03 15:44:25.060,139.5559,8629.4092,2.58,-8.8093,0.865,0.1482,2400.0,2340.0,-0.4658,-1.2518,4.2035,28.0857 2019-06-03 15:44:25.080,139.495,8629.4092,2.587,-8.8165,1.3143,0.001,2400.0,2340.0,-0.4775,-1.2548,4.1836,28.0431 2019-06-03 15:44:25.100,139.5124,8629.3242,2.5888,-8.825,1.2289,0.0443,2400.0,2340.0,-0.4541,-1.2518,4.1823,27.999 2019-06-03 15:44:25.120,139.6167,8629.2959,2.5888,-8.825,0.9315,0.1869,2400.0,2340.0,-0.4658,-1.2518,4.1942,27.999 2019-06-03 15:44:25.140,139.6947,8629.2959,2.5888,-8.825,1.3154,-0.0053,2400.0,2340.0,-0.4629,-1.2518,4.1743,27.999 2019-06-03 15:44:25.160,139.6861,8629.2676,2.5952,-8.836,0.9349,0.2097,2400.0,2340.0,-0.46,-1.2488,4.1876,27.9571 2019-06-03 15:44:25.180,139.6427,8629.2393,2.5952,-8.836,1.2914,-0.0231,2400.0,2340.0,-0.4746,-1.2819,4.1756,27.9571 2019-06-03 15:44:25.200,139.6254,8629.2959,2.6047,-8.843,1.2304,0.0084,2400.0,2340.0,-0.4746,-1.2368,4.1717,27.8954 2019-06-03 15:44:25.220,139.634,8629.2959,2.6149,-8.8434,0.926,0.2105,2400.0,2340.0,-0.4629,-1.2578,4.2008,27.8747 2019-06-03 15:44:25.240,139.6861,8629.2959,2.6149,-8.8434,1.1398,-0.019,2400.0,2340.0,-0.4688,-1.2699,4.1783,27.8747 2019-06-03 15:44:25.260,139.6947,8629.3242,2.6149,-8.8434,0.9807,0.2167,2400.0,2340.0,-0.4688,-1.2488,4.173,27.8747 2019-06-03 15:44:25.280,139.634,8628.6143,2.6197,-8.8545,1.085,-0.039,2400.0,2340.0,-0.4717,-1.2488,4.1849,27.8346 2019-06-03 15:44:25.300,139.6427,8627.6211,2.6203,-8.8646,1.122,-0.0353,2400.0,2340.0,-0.4658,-1.2518,4.1677,27.796 2019-06-03 15:44:25.320,139.7381,8626.7412,2.6203,-8.8646,1.0321,0.2493,2400.0,2340.0,-0.4688,-1.2488,4.1968,27.796 2019-06-03 15:44:25.340,139.816,8625.4355,2.6203,-8.8646,1.122,-0.032,2400.0,2340.0,-0.4834,-1.2428,4.169,27.796 2019-06-03 15:44:25.360,139.8246,8624.584,2.6296,-8.8733,1.2074,0.2301,2400.0,2340.0,-0.4804,-1.2488,4.1783,27.758 2019-06-03 15:44:25.380,139.7554,8623.2217,2.6296,-8.8733,0.9593,-0.0046,2400.0,2340.0,-0.4951,-1.2488,4.1637,27.758 2019-06-03 15:44:25.400,139.764,8622.3701,2.6369,-8.8838,0.973,-0.0285,2340.0,2400.0,-0.4717,-1.2458,4.1677,27.7017 2019-06-03 15:44:25.420,139.7727,8621.4336,2.6479,-8.8827,1.1612,0.2049,2340.0,2400.0,-0.4658,-1.2458,4.1756,27.6835 2019-06-03 15:44:25.440,139.8246,8620.2422,2.6479,-8.8827,1.0229,0.0052,2340.0,2400.0,-0.4571,-1.2488,4.1704,27.6835 2019-06-03 15:44:25.460,139.8333,8620.2988,2.6479,-8.8827,1.1767,0.1989,2340.0,2400.0,-0.46,-1.2458,4.1637,27.6835 2019-06-03 15:44:25.480,139.7727,8620.2705,2.6521,-8.8908,0.9315,0.0396,2340.0,2400.0,-0.4746,-1.2488,4.1704,27.6464 2019-06-03 15:44:25.500,139.764,8620.1846,2.6557,-8.9024,0.8402,0.0088,2340.0,2400.0,-0.4775,-1.2458,4.1584,27.6093 2019-06-03 15:44:25.520,139.764,8620.1563,2.6557,-8.9024,1.3103,0.1882,2340.0,2400.0,-0.4746,-1.2458,4.173,27.6093 2019-06-03 15:44:25.540,139.8246,8620.2129,2.6557,-8.9024,0.7692,-0.0088,2340.0,2400.0,-0.4775,-1.2458,4.1492,27.6093 2019-06-03 15:44:25.560,139.816,8620.2129,2.6692,-8.9107,1.254,0.183,2340.0,2400.0,-0.46,-1.2338,4.1545,27.5719 2019-06-03 15:44:25.580,139.764,8620.1846,2.6692,-8.9107,0.8901,0.0604,2340.0,2400.0,-0.4804,-1.2338,4.1598,27.5719 2019-06-03 15:44:25.600,139.7727,8620.2422,2.679,-8.9304,0.825,0.0406,2340.0,2400.0,-0.4834,-1.2247,4.1584,27.5155 2019-06-03 15:44:25.620,139.7727,8620.1846,2.6863,-8.9372,1.3162,0.1604,2340.0,2400.0,-0.4921,-1.2247,4.1677,27.4979 2019-06-03 15:44:25.640,139.816,8620.2422,2.6863,-8.9372,0.7315,0.0386,2340.0,2400.0,-0.4834,-1.2247,4.1452,27.4979 2019-06-03 15:44:25.660,139.816,8620.2705,2.6863,-8.9372,1.3128,0.1394,2340.0,2400.0,-0.46,-1.2247,4.1425,27.4979 2019-06-03 15:44:25.680,139.7554,8620.2988,2.6915,-8.952,0.7747,0.0893,2340.0,2400.0,-0.46,-1.2247,4.1439,27.4639 2019-06-03 15:44:25.700,139.7727,8620.2129,2.6985,-8.9678,0.6671,0.0967,2340.0,2400.0,-0.46,-1.2247,4.1465,27.43 2019-06-03 15:44:25.720,139.8765,8620.2422,2.6985,-8.9678,1.4586,0.0974,2340.0,2400.0,-0.4658,-1.2247,4.1545,27.43 2019-06-03 15:44:25.740,139.9542,8620.3555,2.6985,-8.9678,0.6978,0.0836,2340.0,2400.0,-0.4775,-1.2247,4.1505,27.43 2019-06-03 15:44:25.760,139.9542,8620.3555,2.7095,-8.9793,1.3735,0.0899,2340.0,2400.0,-0.4804,-1.2217,4.1346,27.3977 2019-06-03 15:44:25.780,139.9024,8620.4404,2.7095,-8.9793,0.7836,0.1396,2340.0,2400.0,-0.4804,-1.2217,4.1518,27.3977 2019-06-03 15:44:25.800,139.911,8620.4121,2.7164,-8.9979,0.7011,0.1208,2340.0,2400.0,-0.4775,-1.2217,4.1346,27.347 2019-06-03 15:44:25.820,139.9024,8620.3838,2.7169,-9.0027,1.2884,0.0338,2340.0,2400.0,-0.4629,-1.2217,4.1531,27.3314 2019-06-03 15:44:25.840,139.9542,8620.4404,2.7169,-9.0027,0.8147,0.1378,2340.0,2400.0,-0.4629,-1.2187,4.1293,27.3314 2019-06-03 15:44:25.860,139.9715,8620.4404,2.7169,-9.0027,1.2914,0.0619,2340.0,2400.0,-0.4512,-1.2187,4.1386,27.3314 2019-06-03 15:44:25.880,139.911,8620.3838,2.721,-9.011,0.9242,0.1939,2340.0,2400.0,-0.4746,-1.2217,4.1306,27.2997 2019-06-03 15:44:25.900,139.911,8620.2988,2.7292,-9.0185,0.8047,0.1726,2340.0,2400.0,-0.4658,-1.2187,4.1399,27.2662 2019-06-03 15:44:25.920,139.9024,8620.2422,2.7292,-9.0185,1.2873,-0.0075,2340.0,2400.0,-0.46,-1.2007,4.1439,27.2662 2019-06-03 15:44:25.940,139.9628,8620.2988,2.7292,-9.0185,0.9545,0.17,2340.0,2400.0,-0.4483,-1.2037,4.1373,27.2662 2019-06-03 15:44:25.960,139.9456,8620.3838,2.7374,-9.0239,1.2877,0.0196,2340.0,2400.0,-0.4161,-1.1977,4.1306,27.2337 2019-06-03 15:44:25.980,139.911,8620.4121,2.7374,-9.0239,0.8716,0.2118,2340.0,2400.0,-0.4191,-1.1977,4.1346,27.2337 2019-06-03 15:44:26.000,139.911,8620.3555,2.7451,-9.0384,0.8424,0.1986,2340.0,2400.0,-0.4278,-1.1615,4.128,27.1774 2019-06-03 15:44:26.020,139.911,8620.3271,2.7412,-9.0475,1.2167,-0.026,2340.0,2400.0,-0.4278,-1.1585,4.1452,27.161 2019-06-03 15:44:26.040,139.9628,8620.3555,2.7412,-9.0475,0.9508,0.1847,2340.0,2400.0,-0.4366,-1.1525,4.124,27.161 2019-06-03 15:44:26.060,139.9715,8620.3555,2.7412,-9.0475,1.1605,-0.0177,2340.0,2400.0,-0.4103,-1.0771,4.1267,27.161 2019-06-03 15:44:26.080,139.8938,8620.4121,2.75,-9.0513,1.0628,0.2408,2340.0,2400.0,-0.422,-1.0771,4.1333,27.1252 2019-06-03 15:44:26.100,139.911,8620.3271,2.7585,-9.0524,0.9867,0.2155,2340.0,2400.0,-0.4132,-1.0741,4.1333,27.0908 2019-06-03 15:44:26.120,140.0146,8620.2705,2.7585,-9.0524,1.1065,-0.0238,2340.0,2400.0,-0.4191,-1.0409,4.1386,27.0908 2019-06-03 15:44:26.140,140.0921,8620.2129,2.7585,-9.0524,1.1227,0.2215,2340.0,2400.0,-0.4308,-1.0047,4.1267,27.0908 2019-06-03 15:44:26.160,140.0921,8620.2705,2.7618,-9.0576,1.0181,-0.0069,2340.0,2400.0,-0.4249,-0.9715,4.1187,27.0547 2019-06-03 15:44:26.180,140.0491,8620.2422,2.7627,-9.0519,1.2263,0.2297,2340.0,2400.0,-0.4074,-0.9715,4.1492,27.0201 2019-06-03 15:44:26.200,140.0318,8620.2422,2.7689,-9.0434,1.1975,0.1724,2340.0,2400.0,-0.422,-0.9051,4.128,27.0034 2019-06-03 15:44:26.220,140.0491,8620.2422,2.7663,-9.0379,1.0048,0.0224,2340.0,2400.0,-0.4103,-0.9021,4.1412,26.9871 2019-06-03 15:44:26.240,140.0921,8620.2705,2.7663,-9.0379,1.2429,0.1793,2340.0,2400.0,-0.4337,-0.9051,4.1267,26.9871 2019-06-03 15:44:26.260,140.1008,8620.2705,2.7663,-9.0379,0.9889,0.0394,2340.0,2400.0,-0.4191,-0.8809,4.1346,26.9871 2019-06-03 15:44:26.280,140.0491,8620.3271,2.7755,-9.0189,1.308,0.2285,2340.0,2400.0,-0.4337,-0.8869,4.1492,26.9529 2019-06-03 15:44:26.300,140.0405,8620.2705,2.7828,-9.001,1.3036,0.1598,2340.0,2400.0,-0.4337,-0.8537,4.1386,26.9173 2019-06-03 15:44:26.320,140.1524,8620.2988,2.7828,-9.001,0.8809,0.0448,2340.0,2400.0,-0.4308,-0.8446,4.1452,26.9173 2019-06-03 15:44:26.340,140.2298,8620.3838,2.7828,-9.001,1.264,0.1119,2340.0,2400.0,-0.4278,-0.8779,4.1267,26.9173 2019-06-03 15:44:26.360,140.2126,8620.4688,2.7865,-8.9765,0.9205,0.0862,2340.0,2400.0,-0.4074,-0.8779,4.1346,26.8831 2019-06-03 15:44:26.380,140.1696,8620.5254,2.7865,-8.9765,1.2895,0.1412,2340.0,2400.0,-0.4191,-0.8718,4.1425,26.8831 2019-06-03 15:44:26.400,140.1782,8620.5254,2.8017,-8.9341,1.3398,0.1099,2400.0,2400.0,-0.4103,-0.8748,4.1412,26.8264 2019-06-03 15:44:26.420,140.1782,8620.5254,2.8064,-8.9219,0.9597,0.1054,2400.0,2400.0,-0.4103,-0.8718,4.1346,26.8077 2019-06-03 15:44:26.440,140.2298,8620.5537,2.8064,-8.9219,1.1823,0.087,2400.0,2400.0,-0.4191,-0.8748,4.1306,26.8077 2019-06-03 15:44:26.460,140.247,8620.582,2.8064,-8.9219,0.9574,0.1454,2400.0,2400.0,-0.4074,-0.8718,4.1373,26.8077 2019-06-03 15:44:26.480,140.1782,8620.582,2.8157,-8.8902,1.0958,0.0582,2400.0,2400.0,-0.4161,-0.8748,4.1478,26.7684 2019-06-03 15:44:26.500,140.1782,8620.5254,2.8212,-8.8596,1.0861,0.0381,2400.0,2400.0,-0.4191,-0.8748,4.132,26.7302 2019-06-03 15:44:26.520,140.4099,8620.4971,2.8212,-8.8596,1.0177,0.1624,2400.0,2400.0,-0.4015,-0.8718,4.1399,26.7302 2019-06-03 15:44:26.540,140.4956,8620.4971,2.8212,-8.8596,1.1202,0.017,2400.0,2400.0,-0.4074,-0.8748,4.1333,26.7302 2019-06-03 15:44:26.560,140.5041,8620.5254,2.8325,-8.818,1.0377,0.1869,2400.0,2400.0,-0.4044,-0.8688,4.1399,26.6894 2019-06-03 15:44:26.580,140.4528,8620.4971,2.8325,-8.818,0.9482,0.0195,2400.0,2400.0,-0.4132,-0.8718,4.1439,26.6894 2019-06-03 15:44:26.600,140.4442,8620.4688,2.8477,-8.745,0.946,-0.0014,2400.0,2400.0,-0.4161,-0.8718,4.132,26.6241 2019-06-03 15:44:26.620,140.4699,8620.3838,2.8577,-8.716,1.1523,0.1815,2400.0,2400.0,-0.4191,-0.8718,4.1359,26.603 2019-06-03 15:44:26.640,140.4956,8620.4121,2.8577,-8.716,0.9571,0.0171,2400.0,2400.0,-0.422,-0.8748,4.1399,26.603 2019-06-03 15:44:26.660,140.5041,8620.4121,2.8577,-8.716,1.1316,0.1518,2400.0,2400.0,-0.4132,-0.8688,4.1346,26.603 2019-06-03 15:44:26.680,140.4528,8620.3838,2.8641,-8.6651,0.845,0.0557,2400.0,2400.0,-0.4132,-0.8748,4.1478,26.5599 2019-06-03 15:44:26.700,140.4528,8620.2705,2.8748,-8.6089,0.7714,0.0502,2400.0,2400.0,-0.4278,-0.8718,4.1267,26.5159 2019-06-03 15:44:26.720,140.4442,8620.2705,2.8748,-8.6089,1.3373,0.1395,2400.0,2400.0,-0.4103,-0.8688,4.1359,26.5159 2019-06-03 15:44:26.740,140.5041,8620.2422,2.8748,-8.6089,0.8594,0.0881,2400.0,2400.0,-0.4278,-0.8658,4.1373,26.5159 2019-06-03 15:44:26.760,140.4956,8620.2705,2.8915,-8.5472,1.233,0.1133,2400.0,2400.0,-0.4161,-0.8688,4.1425,26.4699 2019-06-03 15:44:26.780,140.4442,8620.3271,2.8915,-8.5472,0.8672,0.1119,2400.0,2400.0,-0.4161,-0.8688,4.1478,26.4699 2019-06-03 15:44:26.800,140.4528,8620.3271,2.9086,-8.4544,0.6978,0.0894,2400.0,2400.0,-0.4132,-0.8718,4.132,26.3944 2019-06-03 15:44:26.820,140.4528,8620.2988,2.9133,-8.4244,1.2751,0.0705,2400.0,2400.0,-0.4074,-0.8688,4.1346,26.3696 2019-06-03 15:44:26.840,140.5041,8620.2988,2.9133,-8.4244,0.8583,0.1924,2400.0,2400.0,-0.4074,-0.8718,4.1531,26.3696 2019-06-03 15:44:26.860,140.5127,8620.2988,2.9133,-8.4244,1.1679,0.0497,2400.0,2400.0,-0.4015,-0.8718,4.1465,26.3696 2019-06-03 15:44:26.880,140.4442,8620.2705,2.9231,-8.3626,0.9031,0.1542,2400.0,2400.0,-0.4044,-0.8748,4.1465,26.3183 2019-06-03 15:44:26.900,140.4442,8620.2705,2.9402,-8.3049,0.9034,0.1442,2400.0,2400.0,-0.4074,-0.8779,4.1306,26.2634 2019-06-03 15:44:26.920,140.5554,8620.2988,2.9402,-8.3049,1.1816,0.0311,2400.0,2400.0,-0.4191,-0.8748,4.1386,26.2634 2019-06-03 15:44:26.940,140.6237,8620.3271,2.9402,-8.3049,1.0847,0.1951,2400.0,2400.0,-0.4249,-0.896,4.1558,26.2634 2019-06-03 15:44:26.960,140.6408,8620.3838,2.9548,-8.2469,1.1083,0.0049,2400.0,2400.0,-0.4249,-0.89,4.1478,26.2061 2019-06-03 15:44:26.980,140.5811,8620.3838,2.9548,-8.2469,1.1231,0.2058,2400.0,2400.0,-0.4103,-0.893,4.1531,26.2061 2019-06-03 15:44:27.000,140.5725,8620.4121,2.9749,-8.1672,1.1653,0.1675,2400.0,2400.0,-0.4103,-0.893,4.1253,26.1124 2019-06-03 15:44:27.020,140.5896,8620.4404,2.9762,-8.1433,1.0125,0.0245,2400.0,2400.0,-0.4015,-0.893,4.1412,26.0832 2019-06-03 15:44:27.040,140.6408,8620.4688,2.9762,-8.1433,1.1701,0.204,2400.0,2400.0,-0.4044,-0.899,4.1584,26.0832 2019-06-03 15:44:27.060,140.6408,8620.4121,2.9762,-8.1433,0.8724,0.0287,2400.0,2400.0,-0.3957,-0.9051,4.1465,26.0832 2019-06-03 15:44:27.080,140.5811,8619.7881,2.9919,-8.0911,1.2914,0.1185,2400.0,2400.0,-0.3957,-0.9051,4.1518,26.0232 2019-06-03 15:44:27.100,140.5896,8618.7949,3.0056,-8.0421,1.2681,0.0882,2400.0,2400.0,-0.3957,-0.9232,4.1399,25.9635 2019-06-03 15:44:27.120,140.692,8617.915,3.0056,-8.0421,0.9352,0.104,2400.0,2400.0,-0.3928,-0.89,4.1492,25.9635 2019-06-03 15:44:27.140,140.7772,8616.6094,3.0056,-8.0421,1.2784,0.1702,2400.0,2400.0,-0.4074,-0.9685,4.1598,25.9635 2019-06-03 15:44:27.160,140.7687,8615.7871,3.0135,-7.9962,0.7921,0.0994,2400.0,2400.0,-0.4044,-0.9202,4.1505,25.9028 2019-06-03 15:44:27.180,140.7091,8614.4814,3.0135,-7.9962,1.2833,0.0885,2400.0,2400.0,-0.3957,-0.9292,4.1545,25.9028 2019-06-03 15:44:27.200,140.7176,8613.6582,3.0354,-7.9252,1.2614,0.0698,2400.0,2400.0,-0.3986,-0.9444,4.1346,25.8086 2019-06-03 15:44:27.220,140.7176,8612.8066,3.0407,-7.9023,0.8827,0.1283,2400.0,2400.0,-0.3869,-0.9232,4.1465,25.7784 2019-06-03 15:44:27.240,140.7687,8611.7002,3.0407,-7.9023,1.2156,0.0918,2400.0,2400.0,-0.4015,-0.9232,4.1717,25.7784 2019-06-03 15:44:27.260,140.7857,8611.7002,3.0407,-7.9023,0.7514,0.1671,2400.0,2400.0,-0.4074,-0.9232,4.1611,25.7784 2019-06-03 15:44:27.280,140.7176,8611.7285,3.0538,-7.8618,1.2803,0.0037,2400.0,2400.0,-0.4161,-0.9232,4.1531,25.7187 2019-06-03 15:44:27.300,140.7346,8611.7002,3.0628,-7.8249,1.1919,-0.0124,2400.0,2400.0,-0.4132,-0.9232,4.1518,25.6597 2019-06-03 15:44:27.320,140.9558,8611.6719,3.0628,-7.8249,0.9278,0.2125,2400.0,2400.0,-0.4103,-0.9232,4.1439,25.6597 2019-06-03 15:44:27.340,141.0322,8611.6719,3.0628,-7.8249,1.1283,0.0143,2400.0,2400.0,-0.4044,-0.9323,4.1704,25.6597 2019-06-03 15:44:27.360,141.0237,8611.7002,3.0729,-7.7871,0.9589,0.2097,2400.0,2400.0,-0.4015,-0.9232,4.1452,25.6008 2019-06-03 15:44:27.380,140.9898,8611.6719,3.0729,-7.7871,1.1486,-0.0122,2400.0,2400.0,-0.3986,-0.9232,4.1571,25.6008 2019-06-03 15:44:27.400,140.9898,8611.6436,3.0885,-7.7364,1.0787,-0.0172,2460.0,2340.0,-0.4132,-0.9232,4.1492,25.5074 2019-06-03 15:44:27.420,140.9898,8611.6436,3.0971,-7.7169,1.149,0.2171,2460.0,2340.0,-0.4103,-0.9232,4.1439,25.479 2019-06-03 15:44:27.440,141.0406,8611.6152,3.0971,-7.7169,1.0236,0.0149,2460.0,2340.0,-0.4103,-0.9202,4.1571,25.479 2019-06-03 15:44:27.460,141.0491,8611.5586,3.0971,-7.7169,1.0921,0.1896,2460.0,2340.0,-0.4015,-0.9262,4.1518,25.479 2019-06-03 15:44:27.480,140.9813,8611.6152,3.104,-7.6907,0.9493,-0.0121,2460.0,2340.0,-0.3928,-0.9202,4.1531,25.422 2019-06-03 15:44:27.500,140.9898,8611.6436,3.1118,-7.6677,0.8665,0.0424,2460.0,2340.0,-0.3957,-0.9262,4.1505,25.3662 2019-06-03 15:44:27.520,140.9813,8611.5869,3.1118,-7.6677,1.1849,0.1293,2460.0,2340.0,-0.3869,-0.9232,4.1452,25.3662 2019-06-03 15:44:27.540,141.0406,8611.5869,3.1118,-7.6677,0.8169,0.097,2460.0,2340.0,-0.3928,-0.9232,4.1624,25.3662 2019-06-03 15:44:27.560,141.0406,8611.6436,3.1222,-7.6424,1.1276,0.1171,2460.0,2340.0,-0.3986,-0.9202,4.1518,25.3122 2019-06-03 15:44:27.580,140.9898,8611.6436,3.1311,-7.6164,0.8509,0.0854,2460.0,2340.0,-0.3898,-0.9202,4.1505,25.2597 2019-06-03 15:44:27.600,140.9898,8611.6719,3.134,-7.605,0.929,0.1444,2460.0,2340.0,-0.3986,-0.9232,4.1452,25.2336 2019-06-03 15:44:27.620,140.9813,8611.7568,3.1365,-7.5917,1.3047,0.068,2460.0,2340.0,-0.3752,-0.9172,4.1452,25.2086 2019-06-03 15:44:27.640,141.0322,8611.7852,3.1365,-7.5917,0.8835,0.161,2460.0,2340.0,-0.3811,-0.9232,4.169,25.2086 2019-06-03 15:44:27.660,141.0491,8611.7285,3.1365,-7.5917,1.267,0.0821,2460.0,2340.0,-0.3986,-0.9202,4.1558,25.2086 2019-06-03 15:44:27.680,140.9898,8611.6719,3.1461,-7.5748,0.8114,0.1335,2460.0,2340.0,-0.3986,-0.9202,4.1584,25.1586 2019-06-03 15:44:27.700,140.9898,8611.6152,3.1632,-7.5488,0.862,0.2116,2460.0,2340.0,-0.4074,-0.9232,4.1386,25.1092 2019-06-03 15:44:27.720,141.1,8611.5586,3.1632,-7.5488,1.1272,-0.0032,2460.0,2340.0,-0.3606,-0.9202,4.1558,25.1092 2019-06-03 15:44:27.740,141.1677,8611.5586,3.1632,-7.5488,0.9608,0.2028,2460.0,2340.0,-0.3635,-0.9262,4.1584,25.1092 2019-06-03 15:44:27.760,141.1593,8611.6152,3.1738,-7.525,1.1664,-0.0285,2460.0,2340.0,-0.3723,-0.9051,4.1518,25.0627 2019-06-03 15:44:27.780,141.1169,8611.5869,3.1826,-7.5075,1.0225,0.2122,2460.0,2340.0,-0.3811,-0.896,4.1492,25.0149 2019-06-03 15:44:27.800,141.1254,8611.5303,3.1935,-7.4944,1.1035,0.2387,2460.0,2340.0,-0.384,-0.9564,4.1611,24.9926 2019-06-03 15:44:27.820,141.1339,8611.4453,3.19,-7.4898,1.105,-0.0186,2460.0,2340.0,-0.384,-0.8748,4.1452,24.9717 2019-06-03 15:44:27.840,141.1762,8611.502,3.19,-7.4898,1.1031,0.2132,2460.0,2340.0,-0.3548,-0.899,4.1677,24.9717 2019-06-03 15:44:27.860,141.1762,8611.502,3.19,-7.4898,0.9634,-0.0102,2460.0,2340.0,-0.3606,-0.9021,4.1373,24.9717 2019-06-03 15:44:27.880,141.1169,8611.5303,3.2073,-7.4712,1.2089,0.1939,2460.0,2340.0,-0.3606,-0.9021,4.1478,24.9293 2019-06-03 15:44:27.900,141.1169,8611.5303,3.2216,-7.452,1.1009,0.2379,2460.0,2340.0,-0.3723,-0.9021,4.1518,24.889 2019-06-03 15:44:27.920,141.1,8611.5586,3.2216,-7.452,0.9286,0.0077,2460.0,2340.0,-0.3694,-0.9021,4.1505,24.889 2019-06-03 15:44:27.940,141.1762,8611.5303,3.2216,-7.452,1.2041,0.1675,2460.0,2340.0,-0.3665,-0.899,4.1558,24.889 2019-06-03 15:44:27.960,141.1762,8611.5303,3.23,-7.4354,0.8454,0.0455,2460.0,2340.0,-0.3665,-0.899,4.1518,24.8507 2019-06-03 15:44:27.980,141.1339,8611.5586,3.23,-7.4354,1.3317,0.1347,2460.0,2340.0,-0.3665,-0.9021,4.1492,24.8507 2019-06-03 15:44:28.000,141.1085,8611.6152,3.2548,-7.4022,1.2592,0.1662,2460.0,2340.0,-0.3665,-0.9021,4.1584,24.7946 2019-06-03 15:44:28.020,141.1169,8611.5586,3.2594,-7.3915,0.8417,0.1014,2460.0,2340.0,-0.3665,-0.899,4.1452,24.778 2019-06-03 15:44:28.040,141.1593,8611.5586,3.2594,-7.3915,1.3406,0.0601,2460.0,2340.0,-0.3577,-0.9021,4.1558,24.778 2019-06-03 15:44:28.060,141.1677,8611.5586,3.2594,-7.3915,0.7877,0.1216,2460.0,2340.0,-0.3723,-0.9021,4.1492,24.778 2019-06-03 15:44:28.080,141.1169,8611.5303,3.2764,-7.3631,1.3365,0.0514,2460.0,2340.0,-0.3723,-0.899,4.1452,24.7473 2019-06-03 15:44:28.100,141.1254,8611.4736,3.2893,-7.3373,1.2341,0.0491,2460.0,2340.0,-0.3606,-0.9534,4.1704,24.72 2019-06-03 15:44:28.120,140.9982,8611.502,3.2893,-7.3373,0.8047,0.1854,2460.0,2340.0,-0.3518,-0.9232,4.1505,24.72 2019-06-03 15:44:28.140,141.0491,8611.6152,3.2893,-7.3373,1.3147,0.0149,2460.0,2340.0,-0.346,-0.9081,4.1664,24.72 2019-06-03 15:44:28.160,141.0322,8611.6436,3.2985,-7.3106,0.9315,0.1709,2460.0,2340.0,-0.3694,-0.9292,4.1425,24.6961 2019-06-03 15:44:28.180,140.9813,8611.7285,3.3188,-7.2741,1.2662,0.02,2460.0,2340.0,-0.3577,-0.9141,4.1439,24.6722 2019-06-03 15:44:28.200,140.9728,8611.7852,3.326,-7.2588,1.095,0.0312,2460.0,2340.0,-0.3577,-0.9202,4.1704,24.6622 2019-06-03 15:44:28.220,140.9898,8611.7568,3.3376,-7.2393,0.9545,0.1893,2460.0,2340.0,-0.3518,-0.9141,4.1571,24.6525 2019-06-03 15:44:28.240,141.0406,8611.6719,3.3376,-7.2393,1.2178,0.0009,2460.0,2340.0,-0.3518,-0.899,4.1611,24.6525 2019-06-03 15:44:28.260,141.0491,8611.6436,3.3376,-7.2393,1.0059,0.1875,2460.0,2340.0,-0.3577,-0.9021,4.1571,24.6525 2019-06-03 15:44:28.280,140.9813,8611.6436,3.352,-7.2111,1.223,-0.0267,2460.0,2340.0,-0.3577,-0.9021,4.1545,24.6346 2019-06-03 15:44:28.300,140.9898,8611.6152,3.3664,-7.1753,0.9896,0.0062,2460.0,2340.0,-0.3518,-0.9202,4.173,24.6196 2019-06-03 15:44:28.320,141.1,8611.6152,3.3664,-7.1753,1.1346,0.1961,2460.0,2340.0,-0.3489,-0.893,4.1492,24.6196 2019-06-03 15:44:28.340,141.1677,8611.5869,3.3664,-7.1753,0.9826,-0.0455,2460.0,2340.0,-0.3489,-0.896,4.1558,24.6196 2019-06-03 15:44:28.360,141.1677,8611.5303,3.3836,-7.1375,1.2045,0.1854,2460.0,2340.0,-0.3548,-0.9021,4.1478,24.6063 2019-06-03 15:44:28.380,141.1169,8611.5869,3.406,-7.0922,0.9918,0.0278,2460.0,2340.0,-0.3431,-0.9021,4.1571,24.592 2019-06-03 15:44:28.400,141.1169,8611.6436,3.4087,-7.0774,0.9648,0.0348,2400.0,2400.0,-0.3489,-0.899,4.1704,24.587 2019-06-03 15:44:28.420,141.1254,8611.6436,3.4202,-7.0547,1.1028,0.1831,2400.0,2400.0,-0.3489,-0.9021,4.1518,24.5819 2019-06-03 15:44:28.440,141.1593,8611.6719,3.4202,-7.0547,0.9175,0.0141,2400.0,2400.0,-0.3577,-0.9051,4.1558,24.5819 2019-06-03 15:44:28.460,141.1677,8611.6436,3.4202,-7.0547,1.3091,0.1513,2400.0,2400.0,-0.3665,-0.9021,4.1571,24.5819 2019-06-03 15:44:28.480,141.1169,8611.6436,3.4328,-7.0161,0.862,0.0527,2400.0,2400.0,-0.3548,-0.899,4.1571,24.5728 2019-06-03 15:44:28.500,141.1339,8611.5303,3.4496,-6.9762,0.8136,0.0774,2400.0,2400.0,-0.346,-0.9111,4.1796,24.5645 2019-06-03 15:44:28.520,141.2354,8611.5303,3.4496,-6.9762,1.2433,0.109,2400.0,2400.0,-0.346,-0.9111,4.1571,24.5645 2019-06-03 15:44:28.540,141.3114,8611.6152,3.4496,-6.9762,0.8162,0.1033,2400.0,2400.0,-0.3431,-0.9081,4.1584,24.5645 2019-06-03 15:44:28.560,141.2945,8611.6436,3.4684,-6.9322,1.3265,0.0723,2400.0,2400.0,-0.3606,-0.9111,4.1545,24.5568 2019-06-03 15:44:28.580,141.2523,8611.6436,3.4814,-6.8925,0.8813,0.1519,2400.0,2400.0,-0.3489,-0.9081,4.1571,24.5463 2019-06-03 15:44:28.600,141.2523,8611.7285,3.4885,-6.8744,0.8487,0.1659,2400.0,2400.0,-0.3606,-0.9081,4.1637,24.5415 2019-06-03 15:44:28.620,141.2523,8611.7285,3.4937,-6.8567,1.1871,0.0199,2400.0,2400.0,-0.3694,-0.9081,4.1598,24.5364 2019-06-03 15:44:28.640,141.3114,8611.6719,3.4937,-6.8567,0.8428,0.171,2400.0,2400.0,-0.3635,-0.9141,4.1598,24.5364 2019-06-03 15:44:28.660,141.3199,8611.6436,3.4937,-6.8567,1.2574,-0.0101,2400.0,2400.0,-0.3606,-0.9202,4.1611,24.5364 2019-06-03 15:44:28.680,141.2523,8611.6719,3.5109,-6.8175,1.0125,0.1972,2400.0,2400.0,-0.3489,-0.9111,4.1545,24.5278 2019-06-03 15:44:28.700,141.2523,8611.5586,3.5289,-6.7717,0.9756,0.204,2400.0,2400.0,-0.346,-0.9111,4.169,24.5176 2019-06-03 15:44:28.720,141.1254,8611.5586,3.5289,-6.7717,1.0821,-0.0057,2400.0,2400.0,-0.3577,-0.9111,4.1624,24.5176 2019-06-03 15:44:28.740,141.1677,8611.6436,3.5289,-6.7717,1.0887,0.196,2400.0,2400.0,-0.3431,-0.9172,4.173,24.5176 2019-06-03 15:44:28.760,141.1677,8611.6152,3.5448,-6.7257,1.0296,-0.0325,2400.0,2400.0,-0.3606,-0.9655,4.1545,24.5073 2019-06-03 15:44:28.780,141.1254,8611.5303,3.558,-6.6782,1.0802,0.2073,2400.0,2400.0,-0.3548,-0.8779,4.1478,24.4912 2019-06-03 15:44:28.800,141.1085,8611.5586,3.5724,-6.6509,1.1697,0.208,2400.0,2400.0,-0.3577,-0.9353,4.1717,24.4863 2019-06-03 15:44:28.820,141.1254,8611.5869,3.577,-6.6286,0.8838,0.0186,2400.0,2400.0,-0.3665,-0.9111,4.169,24.4806 2019-06-03 15:44:28.840,141.1762,8611.5586,3.577,-6.6286,1.2256,0.1592,2400.0,2400.0,-0.3548,-0.8869,4.1717,24.4806 2019-06-03 15:44:28.860,141.1677,8611.5869,3.577,-6.6286,0.838,0.0327,2400.0,2400.0,-0.3635,-0.9444,4.1598,24.4806 2019-06-03 15:44:28.880,141.1169,8611.5869,3.5978,-6.5723,1.2422,0.1365,2400.0,2400.0,-0.3606,-0.9051,4.1558,24.4695 2019-06-03 15:44:28.900,141.1254,8611.5303,3.6151,-6.5203,1.3583,0.1314,2400.0,2400.0,-0.3606,-0.9111,4.177,24.4579 2019-06-03 15:44:28.920,141.2354,8611.4736,3.6151,-6.5203,0.8099,0.0677,2400.0,2400.0,-0.3635,-0.9172,4.173,24.4579 2019-06-03 15:44:28.940,141.303,8611.4736,3.6151,-6.5203,1.3213,0.0946,2400.0,2400.0,-0.3606,-0.9111,4.169,24.4579 2019-06-03 15:44:28.960,141.303,8611.5586,3.6305,-6.47,0.8058,0.1151,2400.0,2400.0,-0.3606,-0.9292,4.169,24.4449 2019-06-03 15:44:28.980,141.2523,8611.5869,3.6489,-6.4176,1.3402,0.0606,2400.0,2400.0,-0.3548,-0.9232,4.1545,24.4268 2019-06-03 15:44:29.000,141.2523,8611.6152,3.6602,-6.3893,1.3912,0.0293,2400.0,2400.0,-0.3577,-0.9262,4.1796,24.4194 2019-06-03 15:44:29.020,141.2523,8611.6436,3.6717,-6.3642,0.8931,0.1319,2400.0,2400.0,-0.3606,-0.9292,4.1717,24.4115 2019-06-03 15:44:29.040,141.303,8611.6436,3.6717,-6.3642,1.2855,0.0364,2400.0,2400.0,-0.3606,-0.9262,4.169,24.4115 2019-06-03 15:44:29.060,141.3199,8611.5586,3.6717,-6.3642,1.0325,0.1993,2400.0,2400.0,-0.3723,-0.9262,4.173,24.4115 2019-06-03 15:44:29.080,141.2523,8611.6152,3.6871,-6.3108,1.1483,0.004,2400.0,2400.0,-0.3577,-0.9262,4.1704,24.3946 2019-06-03 15:44:29.100,141.2523,8611.5869,3.6972,-6.2612,1.2881,-0.0079,2400.0,2400.0,-0.3518,-0.9262,4.1756,24.3748 2019-06-03 15:44:29.120,141.3536,8611.6719,3.6972,-6.2612,1.0784,0.1699,2400.0,2400.0,-0.3577,-0.9625,4.1717,24.3748 2019-06-03 15:44:29.140,141.4211,8611.6719,3.6972,-6.2612,1.0055,0.0254,2400.0,2400.0,-0.3518,-0.9292,4.1611,24.3748 2019-06-03 15:44:29.160,141.4295,8611.7568,3.716,-6.2106,1.1849,0.1981,2400.0,2400.0,-0.3606,-0.9413,4.1823,24.3526 2019-06-03 15:44:29.180,141.3873,8611.7002,3.7346,-6.1525,0.9389,0.0082,2400.0,2400.0,-0.3665,-0.9383,4.1637,24.333 2019-06-03 15:44:29.200,141.3789,8611.6436,3.7375,-6.1291,0.9759,0.0034,2400.0,2400.0,-0.3577,-0.9504,4.1876,24.321 2019-06-03 15:44:29.220,141.3873,8611.6436,3.752,-6.0983,1.2995,0.1119,2400.0,2400.0,-0.3781,-0.9595,4.1584,24.3084 2019-06-03 15:44:29.240,141.4295,8611.7002,3.752,-6.0983,0.8698,0.0998,2400.0,2400.0,-0.3606,-0.9534,4.1651,24.3084 2019-06-03 15:44:29.260,141.4379,8611.7285,3.752,-6.0983,1.2311,0.0866,2400.0,2400.0,-0.384,-0.9534,4.1756,24.3084 2019-06-03 15:44:29.280,141.3789,8611.6436,3.7677,-6.0461,0.7895,0.1332,2400.0,2400.0,-0.3635,-0.9534,4.173,24.2814 2019-06-03 15:44:29.300,141.3873,8611.5303,3.7874,-5.9911,0.8613,0.1372,2400.0,2400.0,-0.3723,-0.9655,4.173,24.2537 2019-06-03 15:44:29.320,141.4969,8611.502,3.7874,-5.9911,1.2918,0.0,2400.0,2400.0,-0.3781,-0.9866,4.1796,24.2537 2019-06-03 15:44:29.340,141.5726,8611.4736,3.7874,-5.9911,0.9626,0.2005,2400.0,2400.0,-0.3781,-0.9685,4.173,24.2537 2019-06-03 15:44:29.360,141.5558,8611.5586,3.8068,-5.9347,1.1342,0.0137,2400.0,2400.0,-0.3752,-0.9866,4.1862,24.2242 2019-06-03 15:44:29.380,141.5137,8611.5586,3.8205,-5.8854,0.9778,0.1955,2400.0,2400.0,-0.3752,-0.9836,4.1717,24.191 2019-06-03 15:44:29.400,141.5137,8611.5303,3.8314,-5.8588,1.0865,0.1857,2400.0,2400.0,-0.3606,-0.9806,4.1836,24.175 2019-06-03 15:44:29.420,141.5221,8611.4453,3.8346,-5.8368,0.9386,-0.0221,2400.0,2400.0,-0.3986,-0.9836,4.1743,24.1589 2019-06-03 15:44:29.440,141.5642,8611.4453,3.8346,-5.8368,1.1464,0.1663,2400.0,2400.0,-0.3752,-0.9746,4.1942,24.1589 2019-06-03 15:44:29.460,141.5642,8611.4453,3.8346,-5.8368,0.9249,0.0416,2400.0,2400.0,-0.3781,-0.9715,4.2061,24.1589 2019-06-03 15:44:29.480,141.5137,8611.4736,3.8564,-5.783,1.2563,0.153,2400.0,2400.0,-0.384,-0.9081,4.1876,24.1254 2019-06-03 15:44:29.500,141.5221,8611.3887,3.8704,-5.7347,1.2574,0.1201,2400.0,2400.0,-0.3781,-0.9051,4.1836,24.0898 2019-06-03 15:44:29.520,141.6314,8611.4736,3.8704,-5.7347,0.892,0.0961,2400.0,2400.0,-0.3811,-0.9051,4.1982,24.0898 2019-06-03 15:44:29.540,141.6902,8611.5303,3.8704,-5.7347,1.1742,0.0628,2400.0,2400.0,-0.3752,-0.9021,4.2035,24.0898 2019-06-03 15:44:29.560,141.6818,8611.6152,3.8809,-5.6873,0.9952,0.1409,2400.0,2400.0,-0.3694,-0.9021,4.2207,24.0532 2019-06-03 15:44:29.580,141.6482,8611.7002,3.8976,-5.6375,1.1128,0.0531,2400.0,2400.0,-0.3723,-0.893,4.1968,24.0151 2019-06-03 15:44:29.600,141.6398,8611.6719,3.9065,-5.6116,1.1934,0.0159,2400.0,2400.0,-0.3665,-0.89,4.1929,23.9952 2019-06-03 15:44:29.620,141.6566,8611.6436,3.9176,-5.5873,1.0939,0.1848,2400.0,2400.0,-0.3752,-0.89,4.2061,23.9752 2019-06-03 15:44:29.640,141.6985,8611.6436,3.9176,-5.5873,1.098,-0.0006,2400.0,2400.0,-0.3694,-0.8839,4.2035,23.9752 2019-06-03 15:44:29.660,141.6985,8611.6719,3.9176,-5.5873,1.0721,0.1811,2400.0,2400.0,-0.3665,-0.893,4.2326,23.9752 2019-06-03 15:44:29.680,141.6482,8611.6152,3.9302,-5.5379,0.9807,0.018,2400.0,2400.0,-0.3781,-0.89,4.2087,23.9323 2019-06-03 15:44:29.700,141.6482,8611.5869,3.9423,-5.4859,0.9667,0.0384,2400.0,2400.0,-0.3723,-0.89,4.2074,23.8912 2019-06-03 15:44:29.720,141.7572,8611.5869,3.9423,-5.4859,1.2514,0.1402,2400.0,2400.0,-0.3957,-0.9021,4.2061,23.8912 2019-06-03 15:44:29.740,141.8326,8611.5303,3.9423,-5.4859,0.8298,0.0908,2400.0,2400.0,-0.3752,-0.899,4.1982,23.8912 2019-06-03 15:44:29.760,141.8326,8611.5869,3.9599,-5.4297,1.2407,0.039,2400.0,2400.0,-0.3752,-0.9021,4.222,23.8492 2019-06-03 15:44:29.780,141.7824,8611.6436,3.9747,-5.376,1.0018,0.1726,2400.0,2400.0,-0.3635,-0.9021,4.214,23.8065 2019-06-03 15:44:29.800,141.7824,8611.6719,3.9828,-5.3471,0.9585,0.203,2400.0,2400.0,-0.3548,-0.896,4.2021,23.7853 2019-06-03 15:44:29.820,141.7824,8611.7285,3.9883,-5.3189,1.0388,0.0043,2400.0,2400.0,-0.346,-0.9021,4.2167,23.7635 2019-06-03 15:44:29.840,141.8326,8611.7568,3.9883,-5.3189,1.0177,0.209,2400.0,2400.0,-0.3518,-0.899,4.1942,23.7635 2019-06-03 15:44:29.860,141.8326,8611.7002,3.9883,-5.3189,1.1046,-0.0518,2400.0,2400.0,-0.3577,-0.899,4.218,23.7635 2019-06-03 15:44:29.880,141.774,8611.6436,4.0046,-5.2598,1.1893,0.1644,2400.0,2400.0,-0.384,-0.9021,4.2087,23.7214 2019-06-03 15:44:29.900,141.7824,8611.5586,4.0229,-5.1992,1.2352,0.1686,2400.0,2400.0,-0.3694,-0.9021,4.2074,23.6792 2019-06-03 15:44:29.920,141.774,8611.5869,4.0229,-5.1992,0.9012,0.0631,2400.0,2400.0,-0.3752,-0.9444,4.2154,23.6792 2019-06-03 15:44:29.940,141.841,8611.6152,4.0229,-5.1992,1.1401,0.0979,2400.0,2400.0,-0.3431,-0.9353,4.2048,23.6792 2019-06-03 15:44:29.960,141.8159,8611.7002,4.0349,-5.145,1.0336,0.0906,2400.0,2400.0,-0.3518,-0.9323,4.1995,23.6352 2019-06-03 15:44:29.980,141.7824,8611.6719,4.0522,-5.093,1.0529,0.0281,2400.0,2400.0,-0.3781,-0.9564,4.1955,23.5878 2019-06-03 15:44:30.000,141.774,8611.6436,4.0603,-5.0657,1.1475,0.029,2400.0,2400.0,-0.384,-0.9564,4.2021,23.5657 2019-06-03 15:44:30.020,141.7908,8611.6719,4.0707,-5.039,1.0776,0.1648,2400.0,2400.0,-0.3752,-0.9595,4.226,23.5445 2019-06-03 15:44:30.040,141.8326,8611.6719,4.0707,-5.039,1.0255,0.0205,2400.0,2400.0,-0.3665,-0.9625,4.2101,23.5445 2019-06-03 15:44:30.060,141.8326,8611.6719,4.0707,-5.039,1.1146,0.1172,2400.0,2400.0,-0.3548,-0.9595,4.218,23.5445 2019-06-03 15:44:30.080,141.774,8611.7285,4.0836,-4.9938,1.058,0.0024,2400.0,2400.0,-0.3635,-0.9625,4.1995,23.4998 2019-06-03 15:44:30.100,141.7824,8611.6719,4.0962,-4.9506,0.9053,0.0177,2400.0,2400.0,-0.346,-0.9595,4.2035,23.4559 2019-06-03 15:44:30.120,141.6566,8611.6436,4.0962,-4.9506,1.1919,0.1253,2400.0,2400.0,-0.3635,-0.9715,4.2193,23.4559 2019-06-03 15:44:30.140,141.6985,8611.5303,4.0962,-4.9506,0.9012,0.0572,2400.0,2400.0,-0.3752,-0.9715,4.2021,23.4559 2019-06-03 15:44:30.160,141.6985,8611.6152,4.1118,-4.9047,1.2245,0.0906,2400.0,2400.0,-0.3957,-0.9685,4.1823,23.4129 2019-06-03 15:44:30.180,141.6566,8611.6152,4.1273,-4.8578,0.9896,0.1031,2400.0,2400.0,-0.4132,-1.0228,4.1889,23.3688 2019-06-03 15:44:30.200,141.6398,8611.6152,4.1319,-4.8387,0.9578,0.1249,2400.0,2400.0,-0.3898,-1.0198,4.1862,23.3485 2019-06-03 15:44:30.220,141.6398,8611.5869,4.137,-4.8216,1.1538,0.0091,2400.0,2400.0,-0.3723,-1.0892,4.214,23.3288 2019-06-03 15:44:30.240,141.6985,8611.5869,4.137,-4.8216,1.1028,0.1561,2400.0,2400.0,-0.3577,-1.1073,4.1995,23.3288 2019-06-03 15:44:30.260,141.6985,8611.5869,4.137,-4.8216,1.0503,0.007,2400.0,2400.0,-0.3518,-1.1344,4.1982,23.3288 2019-06-03 15:44:30.280,141.6482,8611.502,4.1518,-4.7828,1.1202,0.1628,2400.0,2400.0,-0.3811,-1.2338,4.1929,23.2905 2019-06-03 15:44:30.300,141.6566,8611.4453,4.1672,-4.7475,1.2352,0.143,2400.0,2400.0,-0.3752,-1.2398,4.1889,23.2537 2019-06-03 15:44:30.320,141.7656,8611.4736,4.1672,-4.7475,0.8879,0.0388,2400.0,2400.0,-0.384,-1.2789,4.2114,23.2537 2019-06-03 15:44:30.340,141.8326,8611.4736,4.1672,-4.7475,1.2418,0.0881,2400.0,2400.0,-0.3957,-1.2939,4.1915,23.2537 2019-06-03 15:44:30.360,141.8243,8611.5586,4.18,-4.7221,0.9611,0.1132,2400.0,2400.0,-0.3781,-1.2939,4.1836,23.2158 2019-06-03 15:44:30.380,141.774,8611.6152,4.1928,-4.7007,1.2307,0.0617,2400.0,2400.0,-0.3869,-1.3089,4.1862,23.1789 2019-06-03 15:44:30.400,141.774,8611.6436,4.1979,-4.6932,1.0935,0.0061,2340.0,2340.0,-0.384,-1.3059,4.1876,23.1613 2019-06-03 15:44:30.420,141.7824,8611.6152,4.2059,-4.6845,1.1139,0.1458,2340.0,2340.0,-0.3986,-1.312,4.2074,23.1442 2019-06-03 15:44:30.440,141.841,8611.6436,4.2059,-4.6845,0.9822,-0.0183,2340.0,2340.0,-0.4103,-1.312,4.1902,23.1442 2019-06-03 15:44:30.460,141.841,8611.6152,4.2059,-4.6845,1.1934,0.1616,2340.0,2340.0,-0.3869,-1.3059,4.1809,23.1442 2019-06-03 15:44:30.480,141.774,8611.6152,4.2178,-4.6753,0.9563,0.0308,2340.0,2340.0,-0.4044,-1.327,4.1915,23.1099 2019-06-03 15:44:30.500,141.7824,8611.5586,4.2262,-4.6652,0.8635,0.0291,2340.0,2340.0,-0.3811,-1.324,4.1849,23.0774 2019-06-03 15:44:30.520,141.7656,8611.5869,4.2262,-4.6652,1.3125,0.1014,2340.0,2340.0,-0.384,-1.315,4.1902,23.0774 2019-06-03 15:44:30.540,141.8243,8611.6152,4.2262,-4.6652,0.9193,0.0565,2340.0,2340.0,-0.3986,-1.318,4.1849,23.0774 2019-06-03 15:44:30.560,141.8326,8611.6152,4.2393,-4.6539,1.1742,0.0849,2340.0,2340.0,-0.3898,-1.315,4.173,23.0477 2019-06-03 15:44:30.580,141.7824,8611.6436,4.2502,-4.6452,0.9016,0.1203,2340.0,2340.0,-0.3898,-1.318,4.1862,23.0206 2019-06-03 15:44:30.600,141.7824,8611.6152,4.2544,-4.6423,0.8616,0.132,2340.0,2340.0,-0.384,-1.318,4.1809,23.0071 2019-06-03 15:44:30.620,141.7908,8611.6152,4.2571,-4.6393,1.2707,0.0491,2340.0,2340.0,-0.384,-1.315,4.177,22.9954 2019-06-03 15:44:30.640,141.8243,8611.6436,4.2571,-4.6393,0.9826,0.1278,2340.0,2340.0,-0.3898,-1.315,4.1876,22.9954 2019-06-03 15:44:30.660,141.8326,8611.6436,4.2571,-4.6393,1.1967,0.0245,2340.0,2340.0,-0.3781,-1.315,4.177,22.9954 2019-06-03 15:44:30.680,141.774,8611.5869,4.2682,-4.6334,1.1076,0.182,2340.0,2340.0,-0.3723,-1.318,4.2008,22.9721 2019-06-03 15:44:30.700,141.7908,8611.502,4.2841,-4.6298,1.0828,0.1707,2340.0,2340.0,-0.3811,-1.321,4.1809,22.9493 2019-06-03 15:44:30.720,141.6482,8611.4736,4.2841,-4.6298,1.0565,0.0082,2340.0,2340.0,-0.3752,-1.312,4.1836,22.9493 2019-06-03 15:44:30.740,141.6985,8611.4453,4.2841,-4.6298,1.2688,0.1435,2340.0,2340.0,-0.4132,-1.318,4.1849,22.9493 2019-06-03 15:44:30.760,141.6985,8611.502,4.2952,-4.6299,0.8787,0.0332,2340.0,2340.0,-0.3957,-1.318,4.1849,22.928 2019-06-03 15:44:30.780,141.6482,8611.5303,4.3035,-4.6316,1.2792,0.1279,2340.0,2340.0,-0.3869,-1.315,4.1968,22.9091 2019-06-03 15:44:30.800,141.6398,8611.5586,4.3138,-4.6284,1.2648,0.0925,2340.0,2340.0,-0.3869,-1.315,4.1862,22.9006 2019-06-03 15:44:30.820,141.6482,8611.5586,4.3177,-4.6305,0.8909,0.0613,2340.0,2340.0,-0.3781,-1.315,4.1836,22.8928 2019-06-03 15:44:30.840,141.6902,8611.5869,4.3177,-4.6305,1.2529,0.1004,2340.0,2340.0,-0.3928,-1.312,4.1982,22.8928 2019-06-03 15:44:30.860,141.7237,8611.502,4.3177,-4.6305,0.7747,0.115,2340.0,2340.0,-0.3869,-1.312,4.1836,22.8928 2019-06-03 15:44:30.880,141.6482,8611.4453,4.3319,-4.6313,1.2766,0.0394,2340.0,2340.0,-0.3928,-1.321,4.1982,22.8798 2019-06-03 15:44:30.900,141.6398,8611.3887,4.34,-4.6358,1.2951,0.0145,2340.0,2340.0,-0.4015,-1.318,4.1836,22.8698 2019-06-03 15:44:30.920,141.5221,8611.417,4.34,-4.6358,0.943,0.1546,2340.0,2340.0,-0.3928,-1.312,4.1836,22.8698 2019-06-03 15:44:30.940,141.5642,8611.502,4.34,-4.6358,1.085,-0.0175,2340.0,2340.0,-0.4044,-1.318,4.1915,22.8698 2019-06-03 15:44:30.960,141.5642,8611.5303,4.35,-4.6388,1.0259,0.1543,2340.0,2340.0,-0.3986,-1.315,4.1876,22.8616 2019-06-03 15:44:30.980,141.5221,8611.502,4.3632,-4.6422,1.075,-0.0067,2340.0,2340.0,-0.3928,-1.315,4.1968,22.8538 2019-06-03 15:44:31.000,141.5053,8611.502,4.3663,-4.6489,1.0602,-0.0168,2340.0,2340.0,-0.3928,-1.315,4.1876,22.8502 2019-06-03 15:44:31.020,141.5221,8611.5303,4.3737,-4.6472,1.1952,0.1876,2340.0,2340.0,-0.3869,-1.315,4.1849,22.8479 2019-06-03 15:44:31.040,141.5642,8611.6719,4.3737,-4.6472,0.8117,-0.0024,2340.0,2340.0,-0.4074,-1.312,4.1968,22.8479 2019-06-03 15:44:31.060,141.5726,8611.7002,4.3737,-4.6472,1.291,0.1449,2340.0,2340.0,-0.4044,-1.315,4.1836,22.8479 2019-06-03 15:44:31.080,141.5137,8611.7002,4.3798,-4.6543,0.8043,0.0305,2340.0,2340.0,-0.3986,-1.3089,4.1968,22.8431 2019-06-03 15:44:31.100,141.5221,8611.6152,4.3922,-4.6611,0.7611,0.0426,2340.0,2340.0,-0.3986,-1.315,4.1876,22.8384 2019-06-03 15:44:31.120,141.623,8611.5586,4.3922,-4.6611,1.3121,0.1123,2340.0,2340.0,-0.3928,-1.312,4.1849,22.8384 2019-06-03 15:44:31.140,141.6985,8611.5303,4.3922,-4.6611,0.8317,0.1349,2340.0,2340.0,-0.4044,-1.312,4.1955,22.8384 2019-06-03 15:44:31.160,141.6818,8611.6152,4.406,-4.6619,1.2012,0.054,2340.0,2340.0,-0.4015,-1.318,4.1756,22.834 2019-06-03 15:44:31.180,141.6482,8611.7002,4.4144,-4.6687,0.8502,0.1506,2340.0,2340.0,-0.4044,-1.315,4.2008,22.8282 2019-06-03 15:44:31.200,141.6398,8611.7285,4.4229,-4.6703,0.9315,0.1538,2340.0,2340.0,-0.4074,-1.312,4.1915,22.8263 2019-06-03 15:44:31.220,141.665,8611.7002,4.4244,-4.6743,1.1697,0.0207,2340.0,2340.0,-0.3957,-1.312,4.1756,22.8239 2019-06-03 15:44:31.240,141.6902,8611.6719,4.4244,-4.6743,1.0288,0.1951,2340.0,2340.0,-0.3957,-1.312,4.1982,22.8239 2019-06-03 15:44:31.260,141.7069,8611.6436,4.4244,-4.6743,1.1161,0.0186,2340.0,2340.0,-0.4191,-1.312,4.1664,22.8239 2019-06-03 15:44:31.280,141.6482,8611.6719,4.4382,-4.6778,1.0296,0.1659,2340.0,2340.0,-0.4308,-1.318,4.177,22.8176 2019-06-03 15:44:31.300,141.6398,8611.6719,4.4565,-4.6784,1.0747,0.1599,2340.0,2340.0,-0.4308,-1.315,4.1929,22.8138 2019-06-03 15:44:31.320,141.5221,8611.6719,4.4565,-4.6784,1.0824,0.0058,2340.0,2340.0,-0.4278,-1.312,4.177,22.8138 2019-06-03 15:44:31.340,141.5726,8611.7002,4.4565,-4.6784,1.1468,0.1937,2340.0,2340.0,-0.4103,-1.315,4.1968,22.8138 2019-06-03 15:44:31.360,141.5642,8611.6719,4.469,-4.6797,0.875,0.0064,2340.0,2340.0,-0.4191,-1.312,4.169,22.8085 2019-06-03 15:44:31.380,141.5221,8611.6152,4.4791,-4.6861,1.2736,0.1561,2340.0,2340.0,-0.4044,-1.312,4.1849,22.8019 2019-06-03 15:44:31.400,141.5137,8611.6719,4.4932,-4.6798,1.2881,0.1449,2400.0,2340.0,-0.4132,-1.312,4.1862,22.7997 2019-06-03 15:44:31.420,141.5137,8611.6719,4.4979,-4.6827,0.8757,0.0755,2400.0,2340.0,-0.4103,-1.315,4.1704,22.7965 2019-06-03 15:44:31.440,141.5726,8611.7285,4.4979,-4.6827,1.2507,0.1136,2400.0,2340.0,-0.4161,-1.312,4.173,22.7965 2019-06-03 15:44:31.460,141.5642,8611.7285,4.4979,-4.6827,0.8746,0.1001,2400.0,2340.0,-0.4191,-1.315,4.1611,22.7965 2019-06-03 15:44:31.480,141.5137,8611.6719,4.5142,-4.68,1.318,0.0614,2400.0,2340.0,-0.4132,-1.312,4.1571,22.7899 2019-06-03 15:44:31.500,141.5305,8611.5586,4.529,-4.6812,1.2733,0.0424,2400.0,2340.0,-0.4249,-1.318,4.1637,22.7822 2019-06-03 15:44:31.520,141.623,8611.5586,4.529,-4.6812,0.8776,0.1499,2400.0,2340.0,-0.4161,-1.318,4.1545,22.7822 2019-06-03 15:44:31.540,141.6985,8611.6436,4.529,-4.6812,1.2644,0.0151,2400.0,2340.0,-0.4249,-1.315,4.1465,22.7822 2019-06-03 15:44:31.560,141.6902,8611.6719,4.5414,-4.6838,0.9142,0.1673,2400.0,2340.0,-0.4308,-1.312,4.1359,22.7734 2019-06-03 15:44:31.580,141.6482,8611.6436,4.557,-4.6866,1.2404,-0.0219,2400.0,2340.0,-0.422,-1.318,4.1187,22.764 2019-06-03 15:44:31.600,141.6482,8611.6719,4.5608,-4.6877,1.1464,-0.0107,2400.0,2340.0,-0.4337,-1.342,4.1134,22.7576 2019-06-03 15:44:31.620,141.6482,8611.6436,4.5701,-4.6862,1.1054,0.1827,2400.0,2340.0,-0.4132,-1.339,4.0936,22.7517 2019-06-03 15:44:31.640,141.6902,8611.6719,4.5701,-4.6862,1.1472,-0.0076,2400.0,2340.0,-0.4161,-1.342,4.0856,22.7517 2019-06-03 15:44:31.660,141.6985,8611.6719,4.5701,-4.6862,1.0333,0.172,2400.0,2340.0,-0.4161,-1.339,4.0909,22.7517 2019-06-03 15:44:31.680,141.6398,8611.6436,4.5775,-4.6866,1.0906,0.008,2400.0,2340.0,-0.4278,-1.342,4.0658,22.738 2019-06-03 15:44:31.700,141.6482,8611.5586,4.5847,-4.6893,0.9356,0.0183,2400.0,2340.0,-0.4337,-1.339,4.0684,22.7242 2019-06-03 15:44:31.720,141.6482,8611.5586,4.5847,-4.6893,1.2378,0.1517,2400.0,2340.0,-0.4337,-1.342,4.0578,22.7242 2019-06-03 15:44:31.740,141.6902,8611.5869,4.5847,-4.6893,0.8842,0.0825,2400.0,2340.0,-0.4337,-1.339,4.0485,22.7242 2019-06-03 15:44:31.760,141.6902,8611.6436,4.5959,-4.6858,1.1753,0.091,2400.0,2340.0,-0.4191,-1.339,4.0287,22.7082 2019-06-03 15:44:31.780,141.6482,8611.5869,4.603,-4.6816,0.9064,0.0687,2400.0,2340.0,-0.4074,-1.342,4.0234,22.6928 2019-06-03 15:44:31.800,141.6398,8611.6152,4.6049,-4.6818,0.7747,0.0804,2400.0,2340.0,-0.4132,-1.342,4.0274,22.684 2019-06-03 15:44:31.820,141.6482,8611.6152,4.6076,-4.6776,1.2707,0.096,2400.0,2340.0,-0.422,-1.339,4.0181,22.676 2019-06-03 15:44:31.840,141.6985,8611.6719,4.6076,-4.6776,0.7884,0.1441,2400.0,2340.0,-0.4308,-1.339,4.0154,22.676 2019-06-03 15:44:31.860,141.7069,8611.6436,4.6076,-4.6776,1.1901,0.0242,2400.0,2340.0,-0.4278,-1.339,4.0128,22.676 2019-06-03 15:44:31.880,141.6482,8611.6152,4.6094,-4.674,0.8764,0.1503,2400.0,2340.0,-0.4337,-1.315,3.9943,22.6593 2019-06-03 15:44:31.900,141.6566,8611.502,4.6149,-4.6665,0.9641,0.2079,2400.0,2340.0,-0.4337,-1.321,3.9916,22.6402 2019-06-03 15:44:31.920,141.7572,8611.502,4.6149,-4.6665,1.1416,-0.0251,2400.0,2340.0,-0.4366,-1.33,3.9718,22.6402 2019-06-03 15:44:31.940,141.8243,8611.5869,4.6149,-4.6665,0.9907,0.1935,2400.0,2340.0,-0.4337,-1.324,3.9718,22.6402 2019-06-03 15:44:31.960,141.8243,8611.6719,4.6148,-4.6619,1.125,-0.0332,2400.0,2340.0,-0.4337,-1.327,3.9691,22.6211 2019-06-03 15:44:31.980,141.7824,8611.6719,4.6104,-4.6572,1.0074,0.1849,2400.0,2340.0,-0.4278,-1.324,3.9598,22.6004 2019-06-03 15:44:32.000,141.7824,8611.6719,4.6125,-4.6524,1.1272,0.2043,2400.0,2340.0,-0.4249,-1.324,3.9651,22.5905 2019-06-03 15:44:32.020,141.7824,8611.5869,4.6058,-4.652,0.9042,0.0048,2400.0,2340.0,-0.4278,-1.324,3.9638,22.5795 2019-06-03 15:44:32.040,141.8326,8611.5869,4.6058,-4.652,1.1342,0.1599,2400.0,2340.0,-0.4278,-1.327,3.9665,22.5795 2019-06-03 15:44:32.060,141.8494,8611.5586,4.6058,-4.652,0.9201,0.0128,2400.0,2340.0,-0.4541,-1.324,3.9572,22.5795 2019-06-03 15:44:32.080,141.774,8611.5303,4.6056,-4.6437,1.2067,0.1006,2400.0,2340.0,-0.4454,-1.324,3.9532,22.5581 2019-06-03 15:44:32.100,141.7824,8611.4453,4.5988,-4.6344,1.277,0.1274,2400.0,2340.0,-0.4483,-1.327,3.9638,22.5359 2019-06-03 15:44:32.120,141.7656,8611.4453,4.5988,-4.6344,1.0033,0.0822,2400.0,2340.0,-0.4454,-1.324,3.9585,22.5359 2019-06-03 15:44:32.140,141.8326,8611.4453,4.5988,-4.6344,1.227,0.0905,2400.0,2340.0,-0.4366,-1.324,3.9559,22.5359 2019-06-03 15:44:32.160,141.8326,8611.502,4.587,-4.6297,0.8923,0.1024,2400.0,2340.0,-0.4366,-1.327,3.9572,22.5115 2019-06-03 15:44:32.180,141.774,8611.5869,4.5807,-4.6211,1.1431,0.0399,2400.0,2340.0,-0.4278,-1.327,3.9532,22.4865 2019-06-03 15:44:32.200,141.774,8611.6436,4.5796,-4.6176,1.1583,0.0496,2400.0,2340.0,-0.4308,-1.321,3.9651,22.4739 2019-06-03 15:44:32.220,141.7824,8611.6719,4.5776,-4.6145,0.8846,0.1521,2400.0,2340.0,-0.4308,-1.327,3.9612,22.4607 2019-06-03 15:44:32.240,141.8243,8611.7568,4.5776,-4.6145,1.1767,0.0076,2400.0,2340.0,-0.4308,-1.324,3.9665,22.4607 2019-06-03 15:44:32.260,141.841,8611.7568,4.5776,-4.6145,0.9874,0.1425,2400.0,2340.0,-0.4337,-1.327,3.9625,22.4607 2019-06-03 15:44:32.280,141.7824,8611.7568,4.5704,-4.6075,1.1172,0.0153,2400.0,2340.0,-0.4278,-1.327,3.9545,22.4334 2019-06-03 15:44:32.300,141.7824,8611.7002,4.5591,-4.6005,1.0769,0.0039,2400.0,2340.0,-0.4249,-1.321,3.9665,22.4047 2019-06-03 15:44:32.320,141.7824,8611.6719,4.5591,-4.6005,0.9674,0.1513,2400.0,2340.0,-0.4278,-1.327,3.9651,22.4047 2019-06-03 15:44:32.340,141.8326,8611.6152,4.5591,-4.6005,1.061,0.0153,2400.0,2340.0,-0.4278,-1.324,3.9665,22.4047 2019-06-03 15:44:32.360,141.8243,8611.6719,4.5513,-4.5956,1.0739,0.1519,2400.0,2340.0,-0.4395,-1.324,3.9665,22.3743 2019-06-03 15:44:32.380,141.7824,8611.6719,4.5481,-4.5849,0.8709,0.0168,2400.0,2340.0,-0.4366,-1.324,3.9598,22.3427 2019-06-03 15:44:32.400,141.7908,8611.6436,4.5386,-4.586,0.8768,0.0183,2340.0,2400.0,-0.4278,-1.327,3.9678,22.327 2019-06-03 15:44:32.420,141.7824,8611.6152,4.5373,-4.5809,1.1357,0.1195,2340.0,2400.0,-0.4249,-1.324,3.9665,22.3107 2019-06-03 15:44:32.440,141.8326,8611.6152,4.5373,-4.5809,0.916,0.0539,2340.0,2400.0,-0.4074,-1.321,3.9691,22.3107 2019-06-03 15:44:32.460,141.841,8611.5869,4.5373,-4.5809,1.2278,0.082,2340.0,2400.0,-0.4337,-1.324,3.9678,22.3107 2019-06-03 15:44:32.480,141.774,8611.5586,4.5275,-4.5792,0.8269,0.1218,2340.0,2400.0,-0.4278,-1.321,3.9625,22.2754 2019-06-03 15:44:32.500,141.7908,8611.5303,4.522,-4.5731,0.946,0.1265,2340.0,2400.0,-0.4366,-1.321,3.9651,22.2386 2019-06-03 15:44:32.520,141.7656,8611.5303,4.522,-4.5731,1.1264,0.0223,2340.0,2400.0,-0.4337,-1.324,3.9757,22.2386 2019-06-03 15:44:32.540,141.841,8611.5586,4.522,-4.5731,0.9341,0.1064,2340.0,2400.0,-0.422,-1.327,3.9665,22.2386 2019-06-03 15:44:32.560,141.8243,8611.6152,4.517,-4.57,1.1841,0.0288,2340.0,2400.0,-0.4249,-1.324,3.9678,22.2027 2019-06-03 15:44:32.580,141.7908,8611.6719,4.5107,-4.5691,0.9445,0.1544,2340.0,2400.0,-0.4249,-1.324,3.9665,22.1649 2019-06-03 15:44:32.600,141.7824,8611.6436,4.5069,-4.5689,0.9563,0.1713,2340.0,2400.0,-0.4278,-1.321,3.9718,22.1471 2019-06-03 15:44:32.620,141.7908,8611.6152,4.5014,-4.5707,1.0532,-0.0079,2340.0,2400.0,-0.4308,-1.327,3.977,22.1282 2019-06-03 15:44:32.640,141.8243,8611.6436,4.5014,-4.5707,1.0318,0.1474,2340.0,2400.0,-0.4249,-1.324,3.9665,22.1282 2019-06-03 15:44:32.660,141.8326,8611.6719,4.5014,-4.5707,1.0033,-0.0299,2340.0,2400.0,-0.4249,-1.324,3.9731,22.1282 2019-06-03 15:44:32.680,141.7824,8611.6436,4.4987,-4.5667,1.1272,0.1823,2340.0,2400.0,-0.4161,-1.321,3.9625,22.0916 2019-06-03 15:44:32.700,141.7824,8611.5586,4.4959,-4.5684,1.1435,0.1854,2340.0,2400.0,-0.4103,-1.324,3.9718,22.0531 2019-06-03 15:44:32.720,141.774,8611.6152,4.4959,-4.5684,0.9382,0.0117,2340.0,2400.0,-0.4132,-1.321,3.9731,22.0531 2019-06-03 15:44:32.740,141.841,8611.6152,4.4959,-4.5684,1.0991,0.1117,2340.0,2400.0,-0.4103,-1.327,3.9665,22.0531 2019-06-03 15:44:32.760,141.8243,8611.7002,4.4881,-4.5713,0.8395,0.064,2340.0,2400.0,-0.4278,-1.324,3.9678,22.0144 2019-06-03 15:44:32.780,141.7824,8611.7852,4.484,-4.5743,1.1313,0.081,2340.0,2400.0,-0.4161,-1.324,3.9718,21.977 2019-06-03 15:44:32.800,141.774,8611.8135,4.4833,-4.5737,1.1723,0.0717,2340.0,2400.0,-0.4278,-1.324,3.9651,21.9587 2019-06-03 15:44:32.820,141.7824,8611.7568,4.4858,-4.5744,0.8361,0.1154,2340.0,2400.0,-0.4249,-1.321,3.989,21.9402 2019-06-03 15:44:32.840,141.8243,8611.7568,4.4858,-4.5744,1.1231,0.0372,2340.0,2400.0,-0.4161,-1.324,3.9665,21.9402 2019-06-03 15:44:32.860,141.841,8611.7568,4.4858,-4.5744,0.9338,0.1424,2340.0,2400.0,-0.4132,-1.324,3.9784,21.9402 2019-06-03 15:44:32.880,141.774,8611.7002,4.4824,-4.576,1.054,0.0243,2340.0,2400.0,-0.4074,-1.324,3.9731,21.9038 2019-06-03 15:44:32.900,141.7824,8611.6152,4.4765,-4.5809,1.054,-0.0035,2340.0,2400.0,-0.4015,-1.324,3.9704,21.8691 2019-06-03 15:44:32.920,141.7656,8611.6152,4.4765,-4.5809,1.0051,0.1596,2340.0,2400.0,-0.4161,-1.324,3.9744,21.8691 2019-06-03 15:44:32.940,141.8243,8611.5869,4.4765,-4.5809,1.0388,0.0102,2340.0,2400.0,-0.4103,-1.321,3.9625,21.8691 2019-06-03 15:44:32.960,141.8326,8611.5869,4.4753,-4.583,1.0044,0.1479,2340.0,2400.0,-0.4191,-1.324,3.977,21.8352 2019-06-03 15:44:32.980,141.7824,8611.5869,4.479,-4.5853,1.0092,0.0162,2340.0,2400.0,-0.4132,-1.327,3.9784,21.7977 2019-06-03 15:44:33.000,141.7824,8611.5586,4.4758,-4.588,1.0762,0.016,2340.0,2400.0,-0.4015,-1.324,3.9691,21.7812 2019-06-03 15:44:33.020,141.7824,8611.5303,4.4798,-4.5884,1.1424,0.1145,2340.0,2400.0,-0.4191,-1.324,3.977,21.7652 2019-06-03 15:44:33.040,141.8243,8611.5303,4.4798,-4.5884,0.8886,0.0695,2340.0,2400.0,-0.4161,-1.321,3.9757,21.7652 2019-06-03 15:44:33.060,141.841,8611.4736,4.4798,-4.5884,1.2078,0.1086,2340.0,2400.0,-0.422,-1.324,3.989,21.7652 2019-06-03 15:44:33.080,141.7824,8611.502,4.4765,-4.5941,0.8517,0.0601,2340.0,2400.0,-0.4249,-1.324,3.9784,21.734 2019-06-03 15:44:33.100,141.7824,8611.417,4.4777,-4.5949,0.9308,0.0811,2340.0,2400.0,-0.4161,-1.324,3.9784,21.7046 2019-06-03 15:44:33.120,141.6566,8611.3887,4.4777,-4.5949,1.1782,0.0372,2340.0,2400.0,-0.4249,-1.324,3.9876,21.7046 2019-06-03 15:44:33.140,141.6985,8611.417,4.4777,-4.5949,0.8975,0.133,2340.0,2400.0,-0.4103,-1.321,3.9718,21.7046 2019-06-03 15:44:33.160,141.6985,8611.4736,4.4826,-4.5917,1.1065,0.047,2340.0,2400.0,-0.4103,-1.324,3.9837,21.6764 2019-06-03 15:44:33.180,141.6482,8611.5303,4.4807,-4.5948,0.9301,0.1284,2340.0,2400.0,-0.4074,-1.324,3.9876,21.6497 2019-06-03 15:44:33.200,141.6398,8611.5869,4.4806,-4.5959,0.8801,0.1348,2340.0,2400.0,-0.4103,-1.321,3.981,21.6367 2019-06-03 15:44:33.220,141.6398,8611.5869,4.4789,-4.5967,1.0292,-0.018,2340.0,2400.0,-0.4161,-1.324,3.9956,21.6244 2019-06-03 15:44:33.240,141.6985,8611.6152,4.4789,-4.5967,1.075,0.1496,2340.0,2400.0,-0.4132,-1.324,3.9784,21.6244 2019-06-03 15:44:33.260,141.6985,8611.6152,4.4789,-4.5967,0.8886,-0.0138,2340.0,2400.0,-0.4015,-1.321,3.9943,21.6244 2019-06-03 15:44:33.280,141.6398,8611.6152,4.4807,-4.5924,1.105,0.1485,2340.0,2400.0,-0.4044,-1.321,3.9943,21.599 2019-06-03 15:44:33.300,141.6566,8611.5303,4.4804,-4.5932,1.0902,0.135,2340.0,2400.0,-0.3986,-1.324,3.9823,21.5753 2019-06-03 15:44:33.320,141.6314,8611.5303,4.4804,-4.5932,1.0066,0.0415,2340.0,2400.0,-0.3986,-1.321,3.9903,21.5753 2019-06-03 15:44:33.340,141.6985,8611.5586,4.4804,-4.5932,1.1405,0.1058,2340.0,2400.0,-0.3957,-1.321,3.9731,21.5753 2019-06-03 15:44:33.360,141.6902,8611.6719,4.4762,-4.5934,0.9071,0.0759,2340.0,2400.0,-0.3957,-1.321,3.9863,21.5527 2019-06-03 15:44:33.380,141.6482,8611.6719,4.4737,-4.5947,1.0795,0.0541,2340.0,2400.0,-0.3781,-1.321,4.0022,21.5319 2019-06-03 15:44:33.400,141.6482,8611.6436,4.4733,-4.5919,1.176,0.0436,2400.0,2340.0,-0.3781,-1.321,3.9876,21.5226 2019-06-03 15:44:33.420,141.665,8611.6152,4.4752,-4.5896,0.9748,0.1098,2400.0,2340.0,-0.3811,-1.324,3.9982,21.5136 2019-06-03 15:44:33.440,141.6902,8611.5869,4.4752,-4.5896,1.0492,0.0535,2400.0,2340.0,-0.3811,-1.318,3.9863,21.5136 2019-06-03 15:44:33.460,141.7069,8611.5869,4.4752,-4.5896,0.9378,0.1548,2400.0,2340.0,-0.3781,-1.324,3.9982,21.5136 2019-06-03 15:44:33.480,141.6398,8612.2676,4.4733,-4.5923,0.9582,0.0121,2400.0,2340.0,-0.3781,-1.321,4.0088,21.496 2019-06-03 15:44:33.500,141.6482,8613.0908,4.4687,-4.5957,0.9974,0.0165,2400.0,2340.0,-0.3811,-1.321,3.9863,21.4803 2019-06-03 15:44:33.520,141.7656,8613.999,4.4687,-4.5957,1.0887,0.1381,2400.0,2340.0,-0.3781,-1.318,4.0088,21.4803 2019-06-03 15:44:33.540,141.8326,8615.3047,4.4687,-4.5957,0.9227,0.0129,2400.0,2340.0,-0.3665,-1.321,3.9943,21.4803 2019-06-03 15:44:33.560,141.8326,8616.2119,4.4701,-4.5964,1.1586,0.1418,2400.0,2340.0,-0.3577,-1.321,4.0075,21.4667 2019-06-03 15:44:33.580,141.7908,8617.5459,4.4708,-4.5994,0.9571,0.0415,2400.0,2340.0,-0.3665,-1.324,4.0115,21.4528 2019-06-03 15:44:33.600,141.774,8618.4824,4.4677,-4.6068,0.902,0.073,2400.0,2340.0,-0.3694,-1.324,3.9996,21.4459 2019-06-03 15:44:33.620,141.7824,8619.3906,4.4695,-4.6098,1.1542,0.0966,2400.0,2340.0,-0.4132,-1.321,4.0049,21.4393 2019-06-03 15:44:33.640,141.8326,8620.5254,4.4695,-4.6098,0.9434,0.0747,2400.0,2340.0,-0.3869,-1.324,4.0128,21.4393 2019-06-03 15:44:33.660,141.841,8620.4404,4.4695,-4.6098,1.081,0.0478,2400.0,2340.0,-0.3694,-1.321,4.0181,21.4393 2019-06-03 15:44:33.680,141.7824,8620.4404,4.4689,-4.6157,0.953,0.1306,2400.0,2340.0,-0.3723,-1.321,4.0194,21.4269 2019-06-03 15:44:33.700,141.7908,8620.3838,4.4734,-4.6163,0.9156,0.1491,2400.0,2340.0,-0.3723,-1.324,4.0088,21.4148 2019-06-03 15:44:33.720,141.7656,8620.3838,4.4734,-4.6163,1.1009,0.0271,2400.0,2340.0,-0.3781,-1.324,4.0115,21.4148 2019-06-03 15:44:33.740,141.8326,8620.4971,4.4734,-4.6163,1.0418,0.1247,2400.0,2340.0,-0.384,-1.321,4.0035,21.4148 2019-06-03 15:44:33.760,141.8326,8620.4971,4.4737,-4.6219,1.075,0.036,2400.0,2340.0,-0.3752,-1.324,4.0141,21.4022 2019-06-03 15:44:33.780,141.7824,8620.4688,4.4733,-4.6232,1.1342,0.119,2400.0,2340.0,-0.384,-1.327,4.0274,21.3917 2019-06-03 15:44:33.800,141.774,8620.4971,4.476,-4.623,1.1183,0.121,2400.0,2340.0,-0.3898,-1.318,4.0154,21.386 2019-06-03 15:44:33.820,141.7908,8620.4971,4.4749,-4.6231,0.8661,0.0569,2400.0,2340.0,-0.3928,-1.321,4.0168,21.3807 2019-06-03 15:44:33.840,141.8326,8620.4688,4.4749,-4.6231,1.0702,0.0722,2400.0,2340.0,-0.384,-1.324,4.0168,21.3807 2019-06-03 15:44:33.860,141.841,8620.4404,4.4749,-4.6231,0.8846,0.0806,2400.0,2340.0,-0.384,-1.321,4.0141,21.3807 2019-06-03 15:44:33.880,141.7824,8620.4404,4.48,-4.6245,1.1253,0.0528,2400.0,2340.0,-0.3811,-1.321,4.0287,21.3684 2019-06-03 15:44:33.900,141.774,8620.3271,4.4854,-4.628,1.0976,0.0566,2400.0,2340.0,-0.384,-1.324,4.0168,21.3567 2019-06-03 15:44:33.920,141.6566,8620.3555,4.4854,-4.628,0.9659,0.1338,2400.0,2340.0,-0.3811,-1.321,4.0221,21.3567 2019-06-03 15:44:33.940,141.7069,8620.4404,4.4854,-4.628,1.0325,0.0032,2400.0,2340.0,-0.3898,-1.321,4.0181,21.3567 2019-06-03 15:44:33.960,141.6985,8620.4688,4.4888,-4.6338,1.0965,0.1082,2400.0,2340.0,-0.3869,-1.321,4.0154,21.344 2019-06-03 15:44:33.980,141.6482,8620.3838,4.498,-4.6387,0.9323,0.0256,2400.0,2340.0,-0.4015,-1.324,4.0221,21.3303 2019-06-03 15:44:34.000,141.6482,8620.4121,4.4992,-4.6447,0.9327,0.0562,2400.0,2340.0,-0.3898,-1.321,4.0168,21.324 2019-06-03 15:44:34.020,141.6482,8620.4404,4.5032,-4.6452,1.1679,0.1386,2400.0,2340.0,-0.3869,-1.321,4.026,21.3172 2019-06-03 15:44:34.040,141.6985,8620.3838,4.5032,-4.6452,0.7437,0.038,2400.0,2340.0,-0.3781,-1.321,4.0274,21.3172 2019-06-03 15:44:34.060,141.6985,8620.3555,4.5032,-4.6452,1.2884,0.0781,2400.0,2340.0,-0.3723,-1.324,4.0207,21.3172 2019-06-03 15:44:34.080,141.6398,8620.3838,4.5075,-4.6519,0.8746,0.0721,2400.0,2340.0,-0.384,-1.321,4.0247,21.302 2019-06-03 15:44:34.100,141.6566,8620.2129,4.5179,-4.6567,0.9182,0.0931,2400.0,2340.0,-0.3752,-1.321,4.0194,21.2868 2019-06-03 15:44:34.120,141.6398,8620.2129,4.5179,-4.6567,1.1864,0.0699,2400.0,2340.0,-0.3694,-1.321,4.0313,21.2868 2019-06-03 15:44:34.140,141.6985,8620.2129,4.5179,-4.6567,0.9482,0.1252,2400.0,2340.0,-0.3694,-1.321,4.03,21.2868 2019-06-03 15:44:34.160,141.6985,8620.2988,4.5272,-4.6567,1.024,0.0091,2400.0,2340.0,-0.3752,-1.321,4.0168,21.2699 2019-06-03 15:44:34.180,141.6398,8620.3271,4.5277,-4.6598,1.0369,0.1437,2400.0,2340.0,-0.3723,-1.321,4.034,21.257 2019-06-03 15:44:34.200,141.6314,8620.4121,4.5334,-4.6598,0.9867,0.1508,2400.0,2340.0,-0.3723,-1.318,4.0287,21.249 2019-06-03 15:44:34.220,141.6566,8620.4121,4.5312,-4.6661,0.9526,0.0057,2400.0,2340.0,-0.3577,-1.318,4.0313,21.2401 2019-06-03 15:44:34.240,141.7069,8620.2988,4.5312,-4.6661,1.1538,0.1676,2400.0,2340.0,-0.3606,-1.321,4.0313,21.2401 2019-06-03 15:44:34.260,141.7153,8620.2129,4.5312,-4.6661,0.7943,0.0068,2400.0,2340.0,-0.3606,-1.318,4.0221,21.2401 2019-06-03 15:44:34.280,141.6482,8620.2705,4.5394,-4.6639,1.1649,0.0996,2400.0,2340.0,-0.3928,-1.321,4.034,21.2234 2019-06-03 15:44:34.300,141.6482,8620.2422,4.5435,-4.6604,1.254,0.108,2400.0,2340.0,-0.3811,-1.321,4.0366,21.2078 2019-06-03 15:44:34.320,141.6398,8620.2705,4.5435,-4.6604,0.801,0.053,2400.0,2340.0,-0.384,-1.318,4.0313,21.2078 2019-06-03 15:44:34.340,141.6985,8620.2705,4.5435,-4.6604,1.298,0.0982,2400.0,2340.0,-0.3869,-1.321,4.0313,21.2078 2019-06-03 15:44:34.360,141.6985,8620.2705,4.545,-4.6607,0.8003,0.0893,2400.0,2340.0,-0.3723,-1.321,4.0168,21.1906 2019-06-03 15:44:34.380,141.6482,8620.1279,4.5475,-4.6615,1.1486,0.0387,2400.0,2340.0,-0.3694,-1.321,4.0353,21.1716 2019-06-03 15:44:34.400,141.6398,8620.1563,4.5492,-4.66,1.1483,0.0152,2340.0,2340.0,-0.3577,-1.318,4.0366,21.1622 2019-06-03 15:44:34.420,141.6482,8620.1563,4.552,-4.6582,0.9937,0.16,2340.0,2340.0,-0.3635,-1.315,4.03,21.1536 2019-06-03 15:44:34.440,141.6985,8620.2422,4.552,-4.6582,1.0344,-0.025,2340.0,2340.0,-0.3723,-1.318,4.0313,21.1536 2019-06-03 15:44:34.460,141.6985,8620.2129,4.552,-4.6582,1.102,0.1902,2340.0,2340.0,-0.3723,-1.318,4.0194,21.1536 2019-06-03 15:44:34.480,141.6398,8620.2422,4.5549,-4.6543,1.0514,-0.0134,2340.0,2340.0,-0.3811,-1.321,4.0406,21.1364 2019-06-03 15:44:34.500,141.6482,8620.1563,4.5556,-4.6523,0.8646,-0.0124,2340.0,2340.0,-0.3635,-1.315,4.0472,21.1175 2019-06-03 15:44:34.520,141.6398,8620.1279,4.5556,-4.6523,1.2119,0.1207,2340.0,2340.0,-0.3665,-1.318,4.0287,21.1175 2019-06-03 15:44:34.540,141.6902,8620.2422,4.5556,-4.6523,0.8054,0.032,2340.0,2340.0,-0.3752,-1.318,4.0366,21.1175 2019-06-03 15:44:34.560,141.6902,8620.3271,4.5626,-4.6474,1.267,0.121,2340.0,2340.0,-0.3752,-1.318,4.0234,21.0976 2019-06-03 15:44:34.580,141.6482,8620.4404,4.5662,-4.6422,0.8102,0.0976,2340.0,2340.0,-0.3781,-1.318,4.0406,21.0772 2019-06-03 15:44:34.600,141.6482,8620.4404,4.5649,-4.6417,0.8028,0.0965,2340.0,2340.0,-0.3781,-1.318,4.0419,21.0668 2019-06-03 15:44:34.620,141.6482,8620.4971,4.5666,-4.6421,1.1749,0.0253,2340.0,2340.0,-0.3635,-1.318,4.0313,21.0562 2019-06-03 15:44:34.640,141.7069,8620.4404,4.5666,-4.6421,0.929,0.1246,2340.0,2340.0,-0.3694,-1.321,4.0406,21.0562 2019-06-03 15:44:34.660,141.6985,8620.3555,4.5666,-4.6421,1.0972,0.0266,2340.0,2340.0,-0.3694,-1.318,4.03,21.0562 2019-06-03 15:44:34.680,141.6482,8620.4121,4.5707,-4.6402,1.115,0.1784,2340.0,2340.0,-0.3811,-1.315,4.0459,21.034 2019-06-03 15:44:34.700,141.6566,8620.3555,4.5783,-4.638,1.0218,0.148,2340.0,2340.0,-0.3898,-1.318,4.0432,21.0104 2019-06-03 15:44:34.720,141.5137,8620.3271,4.5783,-4.638,0.9486,-0.0144,2340.0,2340.0,-0.3781,-1.3089,4.034,21.0104 2019-06-03 15:44:34.740,141.5642,8620.3271,4.5783,-4.638,1.2433,0.1173,2340.0,2340.0,-0.3928,-1.312,4.0327,21.0104 2019-06-03 15:44:34.760,141.5558,8620.4121,4.5823,-4.6409,0.8162,0.0628,2340.0,2340.0,-0.3635,-1.312,4.0313,20.9864 2019-06-03 15:44:34.780,141.5305,8620.2988,4.5871,-4.6482,1.21,0.1117,2340.0,2340.0,-0.3577,-1.312,4.038,20.962 2019-06-03 15:44:34.800,141.5137,8620.3555,4.5925,-4.6466,1.1187,0.0933,2340.0,2340.0,-0.346,-1.312,4.0512,20.9489 2019-06-03 15:44:34.820,141.5137,8620.3838,4.5942,-4.6514,0.8997,0.0893,2340.0,2340.0,-0.3518,-1.312,4.034,20.9353 2019-06-03 15:44:34.840,141.5558,8620.3838,4.5942,-4.6514,1.2955,0.0218,2340.0,2340.0,-0.3869,-1.312,4.034,20.9353 2019-06-03 15:44:34.860,141.581,8620.3555,4.5942,-4.6514,0.8491,0.145,2340.0,2340.0,-0.3869,-1.312,4.034,20.9353 2019-06-03 15:44:34.880,141.5137,8620.4404,4.5996,-4.6526,1.1449,0.0399,2340.0,2340.0,-0.3811,-1.3089,4.034,20.91 2019-06-03 15:44:34.900,141.5137,8620.3838,4.6008,-4.6615,1.0939,0.0367,2340.0,2340.0,-0.3781,-1.3089,4.0485,20.8839 2019-06-03 15:44:34.920,141.5137,8620.3838,4.6008,-4.6615,0.8923,0.1341,2340.0,2340.0,-0.3694,-1.312,4.03,20.8839 2019-06-03 15:44:34.940,141.581,8620.2988,4.6008,-4.6615,0.9915,-0.0138,2340.0,2340.0,-0.3723,-1.3089,4.0406,20.8839 2019-06-03 15:44:34.960,141.5558,8620.3838,4.6034,-4.6715,1.1091,0.1521,2340.0,2340.0,-0.3811,-1.312,4.0406,20.8568 2019-06-03 15:44:34.980,141.5137,8620.4404,4.6117,-4.68,1.0181,0.0156,2340.0,2340.0,-0.3752,-1.315,4.0485,20.829 2019-06-03 15:44:35.000,141.5053,8620.4971,4.6099,-4.6865,0.9097,0.022,2340.0,2340.0,-0.3752,-1.3089,4.0512,20.8155 2019-06-03 15:44:35.020,141.5221,8620.4971,4.6154,-4.6882,1.1912,0.1294,2340.0,2340.0,-0.3577,-1.312,4.0287,20.8009 2019-06-03 15:44:35.040,141.5642,8620.5537,4.6154,-4.6882,0.9145,0.067,2340.0,2340.0,-0.3548,-1.3089,4.0313,20.8009 2019-06-03 15:44:35.060,141.581,8620.4404,4.6154,-4.6882,1.1827,0.0893,2340.0,2340.0,-0.3401,-1.312,4.0432,20.8009 2019-06-03 15:44:35.080,141.5221,8620.3555,4.6156,-4.6984,0.9497,0.1068,2340.0,2340.0,-0.3401,-1.3089,4.0459,20.7709 2019-06-03 15:44:35.100,141.5221,8620.2705,4.6226,-4.7065,0.906,0.1213,2340.0,2340.0,-0.3635,-1.315,4.0485,20.7402 2019-06-03 15:44:35.120,141.5137,8620.2988,4.6226,-4.7065,1.1594,0.0236,2340.0,2340.0,-0.3723,-1.3089,4.0366,20.7402 2019-06-03 15:44:35.140,141.5642,8620.2422,4.6226,-4.7065,1.0026,0.1762,2340.0,2340.0,-0.3665,-1.312,4.0393,20.7402 2019-06-03 15:44:35.160,141.5558,8620.2422,4.6304,-4.7096,0.9815,-0.0172,2340.0,2340.0,-0.3577,-1.315,4.0459,20.711 2019-06-03 15:44:35.180,141.5137,8620.2422,4.6292,-4.7192,1.0284,0.1646,2340.0,2340.0,-0.3548,-1.312,4.0472,20.6797 2019-06-03 15:44:35.200,141.5221,8620.1563,4.636,-4.7192,1.0872,0.1577,2340.0,2340.0,-0.3665,-1.312,4.0472,20.6645 2019-06-03 15:44:35.220,141.5305,8620.043,4.6339,-4.7269,0.9826,0.0188,2340.0,2340.0,-0.3694,-1.315,4.0353,20.6485 2019-06-03 15:44:35.240,141.5726,8620.0146,4.6339,-4.7269,1.1856,0.1232,2340.0,2340.0,-0.3723,-1.312,4.0419,20.6485 2019-06-03 15:44:35.260,141.581,8620.0146,4.6339,-4.7269,0.8997,0.0448,2340.0,2340.0,-0.3606,-1.3089,4.0472,20.6485 2019-06-03 15:44:35.280,141.5137,8620.043,4.6403,-4.7323,1.152,0.0956,2340.0,2340.0,-0.3431,-1.312,4.0552,20.6169 2019-06-03 15:44:35.300,141.5137,8620.0713,4.6425,-4.7389,1.2012,0.0615,2340.0,2340.0,-0.3752,-1.3089,4.0472,20.5844 2019-06-03 15:44:35.320,141.5053,8620.0996,4.6425,-4.7389,0.9149,0.1277,2340.0,2340.0,-0.3752,-1.3089,4.0446,20.5844 2019-06-03 15:44:35.340,141.581,8620.0146,4.6425,-4.7389,1.1546,0.0546,2340.0,2340.0,-0.3811,-1.312,4.0485,20.5844 2019-06-03 15:44:35.360,141.5642,8620.0713,4.6438,-4.7475,1.0828,0.1287,2340.0,2340.0,-0.3781,-1.3089,4.0658,20.551 2019-06-03 15:44:35.380,141.5221,8620.1279,4.6497,-4.7528,1.0218,0.0076,2340.0,2340.0,-0.3694,-1.3059,4.0525,20.5183 2019-06-03 15:44:35.400,141.5137,8620.1846,4.6496,-4.7556,1.0329,-0.0191,2400.0,2400.0,-0.3606,-1.2849,4.0658,20.5018 2019-06-03 15:44:35.420,141.5221,8620.1846,4.6547,-4.7571,1.095,0.1347,2400.0,2400.0,-0.3635,-1.2458,4.0525,20.4846 2019-06-03 15:44:35.440,141.5726,8620.2129,4.6547,-4.7571,0.8894,0.0504,2400.0,2400.0,-0.346,-1.2097,4.0565,20.4846 2019-06-03 15:44:35.460,141.5558,8620.1846,4.6547,-4.7571,1.2248,0.1427,2400.0,2400.0,-0.3518,-1.2097,4.0618,20.4846 2019-06-03 15:44:35.480,141.5221,8620.8096,4.6526,-4.7661,0.8439,0.0407,2400.0,2400.0,-0.3431,-1.1826,4.0512,20.4487 2019-06-03 15:44:35.500,141.5305,8621.6328,4.6526,-4.7694,0.9774,0.047,2400.0,2400.0,-0.346,-1.1796,4.0578,20.4142 2019-06-03 15:44:35.520,141.5137,8622.541,4.6526,-4.7694,1.1738,0.0902,2400.0,2400.0,-0.3372,-1.1736,4.0512,20.4142 2019-06-03 15:44:35.540,141.5726,8623.96,4.6526,-4.7694,0.9356,0.1225,2400.0,2400.0,-0.3343,-1.1645,4.0578,20.4142 2019-06-03 15:44:35.560,141.5558,8624.9531,4.6567,-4.7714,1.1183,0.0444,2400.0,2400.0,-0.3401,-1.1615,4.0644,20.379 2019-06-03 15:44:35.580,141.5221,8626.4004,4.6587,-4.7734,1.0377,0.1302,2400.0,2400.0,-0.3372,-1.1163,4.0578,20.3455 2019-06-03 15:44:35.600,141.5137,8627.3369,4.66,-4.7725,1.034,0.1285,2400.0,2400.0,-0.346,-1.1133,4.0631,20.3288 2019-06-03 15:44:35.620,141.5305,8628.1885,4.6611,-4.7729,1.0425,0.0117,2400.0,2400.0,-0.3489,-1.1133,4.0618,20.3108 2019-06-03 15:44:35.640,141.5726,8629.2676,4.6611,-4.7729,1.1856,0.1702,2400.0,2400.0,-0.3372,-1.0741,4.0591,20.3108 2019-06-03 15:44:35.660,141.5726,8629.2109,4.6611,-4.7729,0.7999,0.0174,2400.0,2400.0,-0.3343,-1.05,4.0737,20.3108 2019-06-03 15:44:35.680,141.5137,8629.2959,4.667,-4.7656,1.3572,0.1311,2400.0,2400.0,-0.3314,-0.9866,4.0591,20.2768 2019-06-03 15:44:35.700,141.5137,8629.2393,4.6711,-4.7575,1.2429,0.1094,2400.0,2400.0,-0.3401,-0.9866,4.0658,20.2437 2019-06-03 15:44:35.720,141.5137,8629.2393,4.6711,-4.7575,0.8461,0.064,2400.0,2400.0,-0.3489,-0.9806,4.0658,20.2437 2019-06-03 15:44:35.740,141.5726,8629.2109,4.6711,-4.7575,1.2185,0.1001,2400.0,2400.0,-0.346,-0.9534,4.0697,20.2437 2019-06-03 15:44:35.760,141.5642,8629.2109,4.6717,-4.7555,0.8335,0.122,2400.0,2400.0,-0.3489,-0.9534,4.079,20.2108 2019-06-03 15:44:35.780,141.5221,8629.2959,4.6785,-4.7451,1.2781,0.0043,2400.0,2400.0,-0.3372,-0.9111,4.0684,20.1773 2019-06-03 15:44:35.800,141.5221,8629.3242,4.6798,-4.7359,1.169,-0.0183,2400.0,2400.0,-0.3372,-0.9172,4.0684,20.162 2019-06-03 15:44:35.820,141.5221,8629.3242,4.6857,-4.7259,1.0906,0.1871,2400.0,2400.0,-0.3285,-0.9051,4.0671,20.1467 2019-06-03 15:44:35.840,141.5726,8629.3525,4.6857,-4.7259,1.0277,0.0146,2400.0,2400.0,-0.3314,-0.8416,4.0618,20.1467 2019-06-03 15:44:35.860,141.5726,8629.3242,4.6857,-4.7259,1.1061,0.152,2400.0,2400.0,-0.3343,-0.8113,4.0869,20.1467 2019-06-03 15:44:35.880,141.5137,8629.2959,4.6885,-4.7134,0.8901,0.0164,2400.0,2400.0,-0.3431,-0.8022,4.0763,20.1153 2019-06-03 15:44:35.900,141.5221,8629.2109,4.6929,-4.6979,0.8635,0.0233,2400.0,2400.0,-0.346,-0.8053,4.0724,20.0847 2019-06-03 15:44:35.920,141.5053,8629.2959,4.6929,-4.6979,1.1793,0.1339,2400.0,2400.0,-0.3401,-0.7992,4.0803,20.0847 2019-06-03 15:44:35.940,141.5642,8629.3809,4.6929,-4.6979,0.8387,0.0925,2400.0,2400.0,-0.3343,-0.7629,4.0658,20.0847 2019-06-03 15:44:35.960,141.5726,8629.4375,4.7027,-4.6744,1.2363,0.0684,2400.0,2400.0,-0.3285,-0.7599,4.0869,20.0568 2019-06-03 15:44:35.980,141.5053,8629.4375,4.7027,-4.6744,0.8853,0.0936,2400.0,2400.0,-0.3285,-0.7599,4.0763,20.0568 2019-06-03 15:44:36.000,141.5053,8629.5225,4.7108,-4.6339,0.8853,0.1249,2400.0,2400.0,-0.3372,-0.7629,4.0724,20.0134 2019-06-03 15:44:36.020,141.5221,8629.5225,4.7121,-4.6196,1.0858,0.023,2400.0,2400.0,-0.3285,-0.7599,4.083,20.0002 2019-06-03 15:44:36.040,141.5642,8629.5508,4.7121,-4.6196,0.8827,0.1635,2400.0,2400.0,-0.3285,-0.7629,4.0658,20.0002 2019-06-03 15:44:36.060,141.5726,8629.5508,4.7121,-4.6196,0.9907,-0.0245,2400.0,2400.0,-0.3343,-0.7447,4.0869,20.0002 2019-06-03 15:44:36.080,141.5137,8629.5508,4.7165,-4.5902,0.9992,0.1622,2400.0,2400.0,-0.3401,-0.7387,4.0724,19.973 2019-06-03 15:44:36.100,141.5137,8629.4375,4.7251,-4.5539,1.0943,0.2021,2400.0,2400.0,-0.3372,-0.7387,4.0777,19.9469 2019-06-03 15:44:36.120,141.5053,8629.4092,4.7251,-4.5539,0.9452,-0.0013,2400.0,2400.0,-0.3343,-0.7296,4.0869,19.9469 2019-06-03 15:44:36.140,141.5642,8629.5225,4.7251,-4.5539,1.1427,0.1646,2400.0,2400.0,-0.3285,-0.7266,4.0724,19.9469 2019-06-03 15:44:36.160,141.5558,8629.5791,4.7264,-4.5222,0.8801,0.061,2400.0,2400.0,-0.3285,-0.7235,4.079,19.9193 2019-06-03 15:44:36.180,141.5137,8629.6084,4.7264,-4.5222,1.0895,0.0735,2400.0,2400.0,-0.3314,-0.7205,4.0803,19.9193 2019-06-03 15:44:36.200,141.5137,8629.6367,4.7356,-4.4656,1.1453,0.0884,2400.0,2400.0,-0.3401,-0.6811,4.0724,19.8765 2019-06-03 15:44:36.220,141.5221,8629.5791,4.7403,-4.444,0.8886,0.1066,2400.0,2400.0,-0.3401,-0.6872,4.0896,19.8627 2019-06-03 15:44:36.240,141.5558,8629.5508,4.7403,-4.444,1.0798,0.0728,2400.0,2400.0,-0.3431,-0.6872,4.079,19.8627 2019-06-03 15:44:36.260,141.5726,8629.5791,4.7403,-4.444,0.9948,0.1354,2400.0,2400.0,-0.346,-0.6902,4.0816,19.8627 2019-06-03 15:44:36.280,141.5137,8629.6084,4.7494,-4.4068,1.0214,0.0247,2400.0,2400.0,-0.346,-0.6841,4.079,19.8347 2019-06-03 15:44:36.300,141.5221,8629.5225,4.7545,-4.3688,1.0177,0.0374,2400.0,2400.0,-0.3343,-0.6841,4.0777,19.8045 2019-06-03 15:44:36.320,141.3789,8629.4375,4.7545,-4.3688,1.1827,0.1266,2400.0,2400.0,-0.3314,-0.6841,4.0883,19.8045 2019-06-03 15:44:36.340,141.4295,8629.4375,4.7545,-4.3688,0.8561,0.0457,2400.0,2400.0,-0.3285,-0.6902,4.0803,19.8045 2019-06-03 15:44:36.360,141.4295,8629.4658,4.763,-4.3279,1.2633,0.1272,2400.0,2400.0,-0.3314,-0.6872,4.0883,19.7755 2019-06-03 15:44:36.380,141.3705,8629.5508,4.763,-4.3279,0.8395,0.0354,2400.0,2400.0,-0.3431,-0.6902,4.079,19.7755 2019-06-03 15:44:36.400,141.3705,8629.6084,4.7726,-4.2686,0.7851,0.0775,2340.0,2340.0,-0.3372,-0.6841,4.0803,19.7302 2019-06-03 15:44:36.420,141.3789,8629.6084,4.7776,-4.2458,1.2285,0.1043,2340.0,2340.0,-0.3314,-0.6872,4.0896,19.7159 2019-06-03 15:44:36.440,141.4295,8629.4941,4.7776,-4.2458,0.8395,0.1027,2340.0,2340.0,-0.3285,-0.6872,4.0816,19.7159 2019-06-03 15:44:36.460,141.4379,8629.4658,4.7776,-4.2458,1.2692,0.0344,2340.0,2340.0,-0.3285,-0.6811,4.0843,19.7159 2019-06-03 15:44:36.480,141.3789,8629.4658,4.783,-4.2081,0.9689,0.1445,2340.0,2340.0,-0.3226,-0.6811,4.0896,19.6876 2019-06-03 15:44:36.500,141.3789,8629.4092,4.7939,-4.1654,0.9201,0.1762,2340.0,2340.0,-0.3285,-0.6781,4.0737,19.6594 2019-06-03 15:44:36.520,141.4969,8629.4375,4.7939,-4.1654,1.1586,-0.0121,2340.0,2340.0,-0.3255,-0.6508,4.0816,19.6594 2019-06-03 15:44:36.540,141.5558,8629.5225,4.7939,-4.1654,1.0429,0.1836,2340.0,2340.0,-0.3255,-0.6538,4.0843,19.6594 2019-06-03 15:44:36.560,141.5558,8629.5225,4.7993,-4.1252,0.9571,-0.0248,2340.0,2340.0,-0.3285,-0.6538,4.083,19.6321 2019-06-03 15:44:36.580,141.5221,8629.4658,4.7993,-4.1252,1.2289,0.1725,2340.0,2340.0,-0.3285,-0.6538,4.083,19.6321 2019-06-03 15:44:36.600,141.5221,8629.4941,4.8099,-4.0555,1.1864,0.1563,2340.0,2340.0,-0.3285,-0.6568,4.079,19.5913 2019-06-03 15:44:36.620,141.5221,8629.5225,4.8099,-4.0357,0.8861,0.0301,2340.0,2340.0,-0.3285,-0.6568,4.0909,19.5779 2019-06-03 15:44:36.640,141.5726,8629.6084,4.8099,-4.0357,1.274,0.0947,2340.0,2340.0,-0.3343,-0.6538,4.0724,19.5779 2019-06-03 15:44:36.660,141.5726,8629.5508,4.8099,-4.0357,0.848,0.1043,2340.0,2340.0,-0.3314,-0.6538,4.075,19.5779 2019-06-03 15:44:36.680,141.5053,8629.5225,4.822,-3.9878,1.2141,0.0616,2340.0,2340.0,-0.3343,-0.6568,4.0883,19.5516 2019-06-03 15:44:36.700,141.5221,8629.4375,4.829,-3.9428,1.1934,0.0582,2340.0,2340.0,-0.3226,-0.6568,4.0856,19.5272 2019-06-03 15:44:36.720,141.5053,8629.4375,4.829,-3.9428,0.7966,0.1418,2340.0,2340.0,-0.3255,-0.6538,4.0883,19.5272 2019-06-03 15:44:36.740,141.5726,8629.4941,4.829,-3.9428,1.1372,-0.0393,2340.0,2340.0,-0.3226,-0.6538,4.0816,19.5272 2019-06-03 15:44:36.760,141.5642,8629.5225,4.8372,-3.8953,1.0,0.1767,2340.0,2340.0,-0.3314,-0.6538,4.0763,19.5037 2019-06-03 15:44:36.780,141.5137,8629.5791,4.8508,-3.8435,0.9855,-0.0058,2340.0,2340.0,-0.3314,-0.6811,4.0975,19.481 2019-06-03 15:44:36.800,141.5053,8629.6084,4.8508,-3.8217,1.0129,0.0137,2340.0,2340.0,-0.3285,-0.6811,4.0803,19.4694 2019-06-03 15:44:36.820,141.5221,8629.6084,4.8597,-3.7926,1.0902,0.1668,2340.0,2340.0,-0.308,-0.6781,4.0869,19.4607 2019-06-03 15:44:36.840,141.5642,8629.6367,4.8597,-3.7926,1.0148,0.0299,2340.0,2340.0,-0.3021,-0.6841,4.0816,19.4607 2019-06-03 15:44:36.860,141.5726,8629.6367,4.8597,-3.7926,1.102,0.0902,2340.0,2340.0,-0.3051,-0.6781,4.0697,19.4607 2019-06-03 15:44:36.880,141.5137,8629.5791,4.8669,-3.7436,0.9286,0.0848,2340.0,2340.0,-0.3109,-0.6781,4.0909,19.4405 2019-06-03 15:44:36.900,141.5221,8629.4941,4.8781,-3.6964,0.8284,0.0968,2340.0,2340.0,-0.3168,-0.6781,4.0816,19.4215 2019-06-03 15:44:36.920,141.3789,8629.4941,4.8781,-3.6964,1.2052,0.0602,2340.0,2340.0,-0.3109,-0.6811,4.0896,19.4215 2019-06-03 15:44:36.940,141.4379,8629.5225,4.8781,-3.6964,0.9016,0.1334,2340.0,2340.0,-0.3109,-0.6781,4.0856,19.4215 2019-06-03 15:44:36.960,141.4211,8629.5791,4.8913,-3.641,1.2718,0.0111,2340.0,2340.0,-0.3109,-0.6811,4.0684,19.4052 2019-06-03 15:44:36.980,141.3873,8629.5508,4.898,-3.586,0.9608,0.1749,2340.0,2340.0,-0.3021,-0.6781,4.0896,19.3897 2019-06-03 15:44:37.000,141.3789,8629.5791,4.9038,-3.5608,0.9915,0.1719,2340.0,2340.0,-0.2963,-0.6781,4.083,19.3828 2019-06-03 15:44:37.020,141.3873,8629.5225,4.9037,-3.5356,1.0651,0.0061,2340.0,2340.0,-0.2992,-0.6781,4.083,19.3759 2019-06-03 15:44:37.040,141.4295,8629.4941,4.9037,-3.5356,1.0085,0.1465,2340.0,2340.0,-0.308,-0.6781,4.0843,19.3759 2019-06-03 15:44:37.060,141.4379,8629.5225,4.9037,-3.5356,1.0051,-0.0206,2340.0,2340.0,-0.3051,-0.6781,4.0763,19.3759 2019-06-03 15:44:37.080,141.3789,8630.2891,4.9179,-3.4788,1.2222,0.1549,2340.0,2340.0,-0.308,-0.672,4.0883,19.3657 2019-06-03 15:44:37.100,141.3789,8631.0557,4.9302,-3.4201,1.1505,0.15,2340.0,2340.0,-0.2934,-0.675,4.0949,19.3582 2019-06-03 15:44:37.120,141.2607,8631.9072,4.9302,-3.4201,0.9497,0.046,2340.0,2340.0,-0.2963,-0.669,4.0896,19.3582 2019-06-03 15:44:37.140,141.3114,8633.1846,4.9302,-3.4201,1.2481,0.1025,2340.0,2340.0,-0.2875,-0.669,4.0896,19.3582 2019-06-03 15:44:37.160,141.303,8634.0938,4.9384,-3.3635,0.8213,0.0808,2340.0,2340.0,-0.2905,-0.6659,4.0816,19.3519 2019-06-03 15:44:37.180,141.2607,8635.3994,4.9467,-3.3047,1.1531,0.0506,2340.0,2340.0,-0.2934,-0.672,4.0975,19.3443 2019-06-03 15:44:37.200,141.2523,8636.3359,4.9534,-3.2746,1.0762,0.0515,2340.0,2340.0,-0.2934,-0.672,4.1028,19.3429 2019-06-03 15:44:37.220,141.2523,8637.2441,4.9588,-3.2418,0.9929,0.1317,2340.0,2340.0,-0.2992,-0.669,4.0856,19.342 2019-06-03 15:44:37.240,141.3114,8638.2383,4.9588,-3.2418,1.044,0.0313,2340.0,2340.0,-0.2934,-0.672,4.1002,19.342 2019-06-03 15:44:37.260,141.303,8638.1533,4.9588,-3.2418,1.0077,0.1382,2340.0,2340.0,-0.3021,-0.669,4.0949,19.342 2019-06-03 15:44:37.280,141.2438,8638.1816,4.9685,-3.1816,1.0,0.0155,2340.0,2340.0,-0.2963,-0.672,4.1121,19.3399 2019-06-03 15:44:37.300,141.2607,8638.125,4.9764,-3.1215,1.014,0.018,2340.0,2340.0,-0.3051,-0.672,4.0989,19.3395 2019-06-03 15:44:37.320,141.2523,8638.1533,4.9764,-3.1215,1.1276,0.1285,2340.0,2340.0,-0.2963,-0.672,4.0896,19.3395 2019-06-03 15:44:37.340,141.303,8638.2383,4.9764,-3.1215,0.9737,0.021,2340.0,2340.0,-0.2963,-0.672,4.1108,19.3395 2019-06-03 15:44:37.360,141.303,8638.2666,4.9901,-3.0507,1.1956,0.1565,2340.0,2340.0,-0.2905,-0.669,4.1081,19.3399 2019-06-03 15:44:37.380,141.2438,8638.2383,5.0005,-2.984,0.8931,0.0489,2340.0,2340.0,-0.2905,-0.672,4.1267,19.3404 2019-06-03 15:44:37.400,141.2438,8638.2383,5.0043,-2.953,0.9286,0.0695,2400.0,2340.0,-0.2963,-0.672,4.1306,19.3397 2019-06-03 15:44:37.420,141.2523,8638.2383,5.01,-2.9182,1.1656,0.0328,2400.0,2340.0,-0.3109,-0.672,4.1227,19.3404 2019-06-03 15:44:37.440,141.303,8638.21,5.01,-2.9182,1.0177,0.1409,2400.0,2340.0,-0.3051,-0.669,4.1333,19.3404 2019-06-03 15:44:37.460,141.3114,8638.1816,5.01,-2.9182,1.0044,0.0551,2400.0,2340.0,-0.3021,-0.6781,4.1293,19.3404 2019-06-03 15:44:37.480,141.2523,8638.21,5.0234,-2.8465,1.0277,0.1239,2400.0,2340.0,-0.2963,-0.675,4.1439,19.3418 2019-06-03 15:44:37.500,141.2523,8638.125,5.0356,-2.7733,1.0721,0.1631,2400.0,2340.0,-0.2963,-0.6963,4.1478,19.3452 2019-06-03 15:44:37.520,141.3705,8638.125,5.0356,-2.7733,1.0817,-0.0077,2400.0,2340.0,-0.3051,-0.7053,4.1267,19.3452 2019-06-03 15:44:37.540,141.4295,8638.125,5.0356,-2.7733,1.2089,0.1552,2400.0,2340.0,-0.2875,-0.7084,4.1399,19.3452 2019-06-03 15:44:37.560,141.4295,8638.1533,5.0471,-2.7019,0.963,0.0686,2400.0,2340.0,-0.2875,-0.7205,4.1386,19.3497 2019-06-03 15:44:37.580,141.3873,8638.1533,5.0557,-2.6358,1.1449,0.1118,2400.0,2340.0,-0.2846,-0.7296,4.1558,19.3525 2019-06-03 15:44:37.600,141.3789,8638.2383,5.0659,-2.5998,1.1856,0.1116,2400.0,2340.0,-0.2905,-0.7901,4.1558,19.3552 2019-06-03 15:44:37.620,141.3873,8638.2666,5.0705,-2.5672,0.9242,0.0683,2400.0,2340.0,-0.2963,-0.7932,4.1373,19.3573 2019-06-03 15:44:37.640,141.4295,8638.2383,5.0705,-2.5672,1.1856,0.076,2400.0,2340.0,-0.2934,-0.8658,4.1492,19.3573 2019-06-03 15:44:37.660,141.4379,8638.21,5.0705,-2.5672,0.97,0.1276,2400.0,2340.0,-0.2992,-0.9323,4.1478,19.3573 2019-06-03 15:44:37.680,141.3705,8638.1533,5.0847,-2.5006,1.0643,0.028,2400.0,2340.0,-0.3021,-0.9927,4.1584,19.3618 2019-06-03 15:44:37.700,141.3873,8638.1533,5.0967,-2.4384,1.0802,0.0269,2400.0,2340.0,-0.3051,-1.0651,4.1558,19.366 2019-06-03 15:44:37.720,141.2523,8638.125,5.0967,-2.4384,1.0447,0.1198,2400.0,2340.0,-0.3051,-1.1314,4.1346,19.366 2019-06-03 15:44:37.740,141.303,8638.1816,5.0967,-2.4384,1.0776,0.0156,2400.0,2340.0,-0.3051,-1.2007,4.1478,19.366 2019-06-03 15:44:37.760,141.303,8638.2666,5.1082,-2.3761,1.0909,0.1491,2400.0,2340.0,-0.3109,-1.2879,4.1545,19.3716 2019-06-03 15:44:37.780,141.2607,8638.21,5.1238,-2.3193,0.9401,0.039,2400.0,2340.0,-0.3138,-1.2879,4.1651,19.376 2019-06-03 15:44:37.800,141.2523,8638.2383,5.1286,-2.2951,0.9733,0.048,2400.0,2340.0,-0.3138,-1.2909,4.1558,19.3781 2019-06-03 15:44:37.820,141.2523,8638.2383,5.1366,-2.2705,1.1771,0.1263,2400.0,2340.0,-0.3051,-1.312,4.1412,19.38 2019-06-03 15:44:37.840,141.303,8638.3232,5.1366,-2.2705,0.9234,0.0388,2400.0,2340.0,-0.2875,-1.3089,4.1531,19.38 2019-06-03 15:44:37.860,141.3114,8638.3516,5.1366,-2.2705,1.1497,0.095,2400.0,2340.0,-0.2875,-1.351,4.1571,19.38 2019-06-03 15:44:37.880,141.2523,8638.3516,5.1498,-2.2276,0.9545,0.1159,2400.0,2340.0,-0.2963,-1.348,4.1518,19.382 2019-06-03 15:44:37.900,141.2523,8638.2949,5.1667,-2.1898,1.0884,0.1306,2400.0,2340.0,-0.2992,-1.351,4.1452,19.3845 2019-06-03 15:44:37.920,141.2438,8638.3232,5.1667,-2.1898,1.135,0.053,2400.0,2340.0,-0.3051,-1.3811,4.128,19.3845 2019-06-03 15:44:37.940,141.303,8638.3232,5.1667,-2.1898,1.0299,0.1248,2400.0,2340.0,-0.2992,-1.3841,4.1478,19.3845 2019-06-03 15:44:37.960,141.2945,8638.4365,5.1831,-2.1574,0.9671,0.0167,2400.0,2340.0,-0.3021,-1.3871,4.1531,19.3865 2019-06-03 15:44:37.980,141.2607,8638.4082,5.198,-2.1366,1.1183,0.1232,2400.0,2340.0,-0.2992,-1.3841,4.1412,19.3869 2019-06-03 15:44:38.000,141.2607,8638.3516,5.2073,-2.1235,1.1819,0.1259,2400.0,2340.0,-0.2934,-1.3901,4.1399,19.3874 2019-06-03 15:44:38.020,141.2523,8638.2666,5.2114,-2.1188,0.8698,0.0899,2400.0,2340.0,-0.3021,-1.3931,4.1306,19.3866 2019-06-03 15:44:38.040,141.303,8638.3232,5.2114,-2.1188,1.2821,0.0808,2400.0,2340.0,-0.2963,-1.3931,4.1439,19.3866 2019-06-03 15:44:38.060,141.303,8638.2949,5.2114,-2.1188,0.7788,0.0825,2400.0,2340.0,-0.2963,-1.3901,4.1505,19.3866 2019-06-03 15:44:38.080,141.2438,8638.1816,5.2274,-2.096,1.2659,0.0571,2400.0,2340.0,-0.3021,-1.3961,4.1359,19.3866 2019-06-03 15:44:38.100,141.2607,8638.125,5.2385,-2.0775,1.233,0.0698,2400.0,2340.0,-0.2992,-1.3931,4.1412,19.3858 2019-06-03 15:44:38.120,141.1085,8638.1533,5.2385,-2.0775,0.8328,0.1346,2400.0,2340.0,-0.3051,-1.3961,4.1267,19.3858 2019-06-03 15:44:38.140,141.1677,8638.1533,5.2385,-2.0775,1.2141,0.0171,2400.0,2340.0,-0.2963,-1.3931,4.1412,19.3858 2019-06-03 15:44:38.160,141.1677,8638.2383,5.2455,-2.0638,0.9774,0.1566,2400.0,2340.0,-0.2992,-1.3961,4.1439,19.3845 2019-06-03 15:44:38.180,141.1169,8638.2949,5.2603,-2.0493,1.1057,0.0264,2400.0,2340.0,-0.2992,-1.3931,4.1333,19.3858 2019-06-03 15:44:38.200,141.1169,8638.2666,5.2653,-2.0426,1.1305,0.03,2400.0,2340.0,-0.308,-1.3931,4.1346,19.3854 2019-06-03 15:44:38.220,141.1254,8638.2383,5.2753,-2.0333,1.01,0.1936,2400.0,2340.0,-0.2992,-1.3991,4.1346,19.3852 2019-06-03 15:44:38.240,141.1593,8638.3516,5.2753,-2.0333,1.0318,-0.0134,2400.0,2340.0,-0.2963,-1.3931,4.1452,19.3852 2019-06-03 15:44:38.260,141.1762,8638.3232,5.2753,-2.0333,1.2563,0.1653,2400.0,2340.0,-0.2992,-1.3961,4.1465,19.3852 2019-06-03 15:44:38.280,141.1254,8638.3232,5.2861,-2.0251,0.8809,0.0019,2400.0,2340.0,-0.3051,-1.3931,4.1346,19.3828 2019-06-03 15:44:38.300,141.1169,8638.2949,5.2958,-2.0173,0.889,0.0347,2400.0,2340.0,-0.308,-1.3931,4.1346,19.3801 2019-06-03 15:44:38.320,141.1169,8638.2949,5.2958,-2.0173,1.2474,0.1239,2400.0,2340.0,-0.3138,-1.3901,4.1386,19.3801 2019-06-03 15:44:38.340,141.1762,8638.2949,5.2958,-2.0173,0.8258,0.0762,2400.0,2340.0,-0.3051,-1.3961,4.1465,19.3801 2019-06-03 15:44:38.360,141.1593,8638.3232,5.3116,-2.0056,1.2574,0.0686,2400.0,2340.0,-0.2963,-1.3931,4.1492,19.3772 2019-06-03 15:44:38.380,141.1169,8638.3516,5.326,-2.003,0.8646,0.094,2400.0,2340.0,-0.3051,-1.3961,4.128,19.3739 2019-06-03 15:44:38.400,141.1085,8638.3232,5.3298,-2.0003,0.9671,0.1353,2340.0,2400.0,-0.2934,-1.3961,4.1452,19.3715 2019-06-03 15:44:38.420,141.1254,8638.2949,5.3344,-2.0012,1.2285,0.0245,2340.0,2400.0,-0.308,-1.3931,4.1412,19.3682 2019-06-03 15:44:38.440,141.1677,8638.3232,5.3344,-2.0012,0.9622,0.1497,2340.0,2400.0,-0.3021,-1.3961,4.1399,19.3682 2019-06-03 15:44:38.460,141.1762,8638.2949,5.3344,-2.0012,1.1324,0.0027,2340.0,2400.0,-0.3197,-1.4081,4.1465,19.3682 2019-06-03 15:44:38.480,141.1085,8638.21,5.3457,-1.9972,1.1734,0.1584,2340.0,2400.0,-0.3255,-1.4291,4.1293,19.3623 2019-06-03 15:44:38.500,141.1169,8638.0957,5.3579,-1.9941,1.1908,0.1823,2340.0,2400.0,-0.3138,-1.4291,4.1386,19.3546 2019-06-03 15:44:38.520,140.9813,8638.1533,5.3579,-1.9941,0.8383,0.0114,2340.0,2400.0,-0.3051,-1.4501,4.1399,19.3546 2019-06-03 15:44:38.540,141.0491,8638.1816,5.3579,-1.9941,1.1542,0.145,2340.0,2400.0,-0.2963,-1.4501,4.1373,19.3546 2019-06-03 15:44:38.560,141.0322,8638.21,5.3653,-1.9997,0.8683,0.0055,2340.0,2400.0,-0.3021,-1.4501,4.1518,19.3443 2019-06-03 15:44:38.580,140.9898,8638.1816,5.3737,-2.0104,1.2185,0.1142,2340.0,2400.0,-0.3226,-1.4501,4.1293,19.3333 2019-06-03 15:44:38.600,140.9898,8638.1533,5.3805,-2.0103,1.2847,0.0944,2340.0,2400.0,-0.3226,-1.4471,4.1359,19.3277 2019-06-03 15:44:38.620,140.9898,8638.1533,5.3846,-2.0155,0.8147,0.1236,2340.0,2400.0,-0.3314,-1.4501,4.1399,19.3215 2019-06-03 15:44:38.640,141.0406,8638.1816,5.3846,-2.0155,1.1486,0.0226,2340.0,2400.0,-0.3168,-1.4501,4.1399,19.3215 2019-06-03 15:44:38.660,141.0406,8638.21,5.3846,-2.0155,0.9297,0.1379,2340.0,2400.0,-0.3138,-1.4471,4.1425,19.3215 2019-06-03 15:44:38.680,140.9982,8638.9199,5.3934,-2.0224,1.1679,0.0155,2340.0,2400.0,-0.3138,-1.4471,4.1227,19.3098 2019-06-03 15:44:38.700,140.9898,8639.7148,5.3994,-2.0347,1.2533,-0.0015,2340.0,2400.0,-0.3051,-1.4501,4.1333,19.296 2019-06-03 15:44:38.720,140.9728,8640.6514,5.3994,-2.0347,1.0702,0.173,2340.0,2400.0,-0.308,-1.4501,4.1412,19.296 2019-06-03 15:44:38.740,141.0322,8642.0713,5.3994,-2.0347,1.034,0.0125,2340.0,2400.0,-0.3168,-1.4351,4.1373,19.296 2019-06-03 15:44:38.760,141.0322,8643.0938,5.4093,-2.0497,1.1516,0.1332,2340.0,2400.0,-0.3255,-1.4261,4.1399,19.2799 2019-06-03 15:44:38.780,140.9813,8644.5137,5.4259,-2.06,0.8631,0.0379,2340.0,2400.0,-0.3255,-1.4411,4.132,19.2658 2019-06-03 15:44:38.800,140.9813,8645.5068,5.4258,-2.0687,0.9852,0.0515,2340.0,2400.0,-0.3138,-1.4411,4.1293,19.2571 2019-06-03 15:44:38.820,140.9898,8646.3877,5.4347,-2.0726,1.1523,0.1265,2340.0,2400.0,-0.3197,-1.4441,4.1386,19.2478 2019-06-03 15:44:38.840,141.0406,8647.5234,5.4347,-2.0726,0.8702,0.0671,2340.0,2400.0,-0.3285,-1.4411,4.1346,19.2478 2019-06-03 15:44:38.860,141.0491,8647.4385,5.4347,-2.0726,1.2784,0.0673,2340.0,2400.0,-0.346,-1.4441,4.1346,19.2478 2019-06-03 15:44:38.880,140.9813,8647.4668,5.4423,-2.0916,0.8805,0.14,2340.0,2400.0,-0.3577,-1.4471,4.1214,19.2283 2019-06-03 15:44:38.900,140.9898,8647.4092,5.4571,-2.1119,1.0266,0.1428,2340.0,2400.0,-0.3401,-1.4381,4.12,19.2074 2019-06-03 15:44:38.920,140.9813,8647.3809,5.4571,-2.1119,1.1387,0.0122,2340.0,2400.0,-0.3401,-1.4471,4.1346,19.2074 2019-06-03 15:44:38.940,141.0322,8647.3809,5.4571,-2.1119,0.9308,0.189,2340.0,2400.0,-0.3343,-1.4471,4.128,19.2074 2019-06-03 15:44:38.960,141.0406,8647.3809,5.4705,-2.1303,1.1645,-0.0147,2340.0,2400.0,-0.3343,-1.4471,4.1293,19.1865 2019-06-03 15:44:38.980,140.9898,8647.4385,5.4791,-2.1575,1.1324,0.1804,2340.0,2400.0,-0.3548,-1.4471,4.1161,19.1657 2019-06-03 15:44:39.000,140.9813,8647.5234,5.4873,-2.1669,1.068,0.1364,2340.0,2400.0,-0.3431,-1.4441,4.124,19.1545 2019-06-03 15:44:39.020,141.0067,8647.4951,5.4907,-2.1804,0.9515,0.0304,2340.0,2400.0,-0.3431,-1.4471,4.1373,19.1428 2019-06-03 15:44:39.040,141.0406,8647.4951,5.4907,-2.1804,1.1779,0.133,2340.0,2400.0,-0.346,-1.4471,4.1267,19.1428 2019-06-03 15:44:39.060,141.0406,8647.4951,5.4907,-2.1804,0.862,0.0621,2340.0,2400.0,-0.3343,-1.4441,4.132,19.1428 2019-06-03 15:44:39.080,140.9813,8647.5234,5.5034,-2.1994,1.2725,0.1136,2340.0,2400.0,-0.3401,-1.4471,4.1187,19.1207 2019-06-03 15:44:39.100,140.9898,8647.4951,5.511,-2.2211,1.1623,0.0543,2340.0,2400.0,-0.3314,-1.4261,4.1214,19.0971 2019-06-03 15:44:39.120,140.8538,8647.4951,5.511,-2.2211,0.9763,0.1424,2340.0,2400.0,-0.3431,-1.4261,4.1253,19.0971 2019-06-03 15:44:39.140,140.9133,8647.4951,5.511,-2.2211,1.078,0.0158,2340.0,2400.0,-0.346,-1.4291,4.124,19.0971 2019-06-03 15:44:39.160,140.8963,8647.4385,5.5191,-2.2443,1.0458,0.1849,2340.0,2400.0,-0.3431,-1.4201,4.1293,19.0735 2019-06-03 15:44:39.180,140.8538,8647.4385,5.5332,-2.2642,0.9907,0.0105,2340.0,2400.0,-0.3431,-1.4381,4.1174,19.0503 2019-06-03 15:44:39.200,140.8538,8647.4668,5.5323,-2.2766,0.9696,0.009,2340.0,2400.0,-0.3285,-1.4351,4.1187,19.0379 2019-06-03 15:44:39.220,140.8538,8647.4668,5.5398,-2.2846,1.176,0.1468,2340.0,2400.0,-0.3255,-1.4321,4.1359,19.0253 2019-06-03 15:44:39.240,140.9048,8647.4385,5.5398,-2.2846,0.906,0.0241,2340.0,2400.0,-0.3285,-1.4351,4.1108,19.0253 2019-06-03 15:44:39.260,140.9133,8647.3809,5.5398,-2.2846,1.2023,0.1369,2340.0,2400.0,-0.3314,-1.4381,4.1161,19.0253 2019-06-03 15:44:39.280,140.8453,8647.3809,5.5446,-2.3096,0.8787,0.0855,2340.0,2400.0,-0.3489,-1.4351,4.1227,19.001 2019-06-03 15:44:39.300,140.8623,8647.2959,5.5516,-2.3318,0.8017,0.0826,2340.0,2400.0,-0.3548,-1.4291,4.1227,18.9768 2019-06-03 15:44:39.320,140.8538,8647.3242,5.5516,-2.3318,1.2688,0.0515,2340.0,2400.0,-0.3548,-1.4261,4.1359,18.9768 2019-06-03 15:44:39.340,140.8963,8647.3525,5.5516,-2.3318,1.0173,0.1114,2340.0,2400.0,-0.3518,-1.4291,4.1227,18.9768 2019-06-03 15:44:39.360,140.8963,8647.4092,5.5624,-2.3534,1.0891,0.0342,2340.0,2400.0,-0.3372,-1.4261,4.1214,18.9531 2019-06-03 15:44:39.380,140.8538,8647.4385,5.5684,-2.385,1.0558,0.1815,2340.0,2400.0,-0.3401,-1.4291,4.124,18.9323 2019-06-03 15:44:39.400,140.8453,8647.4668,5.5718,-2.3992,0.98,0.166,2400.0,2340.0,-0.3314,-1.4231,4.124,18.9197 2019-06-03 15:44:39.420,140.8538,8647.4951,5.572,-2.4164,0.9863,-0.0064,2400.0,2340.0,-0.3285,-1.4291,4.1333,18.9077 2019-06-03 15:44:39.440,140.8963,8647.4951,5.572,-2.4164,1.2034,0.1427,2400.0,2340.0,-0.3489,-1.4291,4.1108,18.9077 2019-06-03 15:44:39.460,140.9048,8647.4668,5.572,-2.4164,0.9589,0.029,2400.0,2340.0,-0.3372,-1.4261,4.1227,18.9077 2019-06-03 15:44:39.480,140.8453,8647.4668,5.5812,-2.4432,1.2574,0.1565,2400.0,2340.0,-0.3431,-1.4231,4.1306,18.8839 2019-06-03 15:44:39.500,140.8453,8647.4092,5.5876,-2.4778,1.2655,0.1154,2400.0,2340.0,-0.3343,-1.4261,4.1267,18.8588 2019-06-03 15:44:39.520,140.8368,8647.4385,5.5876,-2.4778,0.858,0.0631,2400.0,2340.0,-0.3197,-1.4201,4.1346,18.8588 2019-06-03 15:44:39.540,140.9048,8647.4092,5.5876,-2.4778,1.2056,0.0611,2400.0,2340.0,-0.3314,-1.4231,4.1214,18.8588 2019-06-03 15:44:39.560,140.8963,8647.4951,5.5911,-2.516,0.9634,0.1171,2400.0,2340.0,-0.3138,-1.3991,4.1161,18.8334 2019-06-03 15:44:39.580,140.8453,8647.4385,5.5996,-2.5514,1.2577,0.0473,2400.0,2340.0,-0.3109,-1.3961,4.1386,18.8122 2019-06-03 15:44:39.600,140.8453,8647.4385,5.6014,-2.5703,1.1697,0.0028,2400.0,2340.0,-0.3168,-1.3961,4.1267,18.8003 2019-06-03 15:44:39.620,140.8453,8647.4092,5.6082,-2.5869,1.0983,0.2007,2400.0,2340.0,-0.3197,-1.3961,4.1293,18.789 2019-06-03 15:44:39.640,140.8963,8647.4951,5.6082,-2.5869,0.9493,-0.0271,2400.0,2340.0,-0.3372,-1.3961,4.1121,18.789 2019-06-03 15:44:39.660,140.9133,8647.4668,5.6082,-2.5869,1.1401,0.1676,2400.0,2340.0,-0.3168,-1.3901,4.12,18.789 2019-06-03 15:44:39.680,140.8453,8648.1201,5.6109,-2.6298,0.8298,0.0181,2400.0,2340.0,-0.3051,-1.3961,4.1399,18.7655 2019-06-03 15:44:39.700,140.8623,8648.915,5.6156,-2.6732,0.8213,0.0256,2400.0,2340.0,-0.2846,-1.3961,4.132,18.7431 2019-06-03 15:44:39.720,140.7091,8649.7666,5.6156,-2.6732,1.3424,0.1171,2400.0,2340.0,-0.2758,-1.3931,4.12,18.7431 2019-06-03 15:44:39.740,140.7772,8651.1016,5.6156,-2.6732,0.8494,0.1066,2400.0,2340.0,-0.2817,-1.3931,4.1147,18.7431 2019-06-03 15:44:39.760,140.7772,8652.0391,5.6253,-2.7092,1.2296,0.0531,2400.0,2340.0,-0.2817,-1.3901,4.1214,18.7217 2019-06-03 15:44:39.780,140.7261,8653.3457,5.6285,-2.7522,0.8457,0.1517,2400.0,2340.0,-0.2905,-1.3901,4.1359,18.7058 2019-06-03 15:44:39.800,140.7091,8654.2256,5.6318,-2.7735,0.8106,0.1335,2400.0,2340.0,-0.2992,-1.3901,4.1253,18.6953 2019-06-03 15:44:39.820,140.7261,8655.0781,5.6299,-2.7926,1.2444,0.011,2400.0,2340.0,-0.2817,-1.3901,4.12,18.6854 2019-06-03 15:44:39.840,140.7687,8656.2422,5.6299,-2.7926,1.0921,0.2121,2400.0,2340.0,-0.2875,-1.3871,4.1227,18.6854 2019-06-03 15:44:39.860,140.7772,8656.1572,5.6299,-2.7926,1.075,-0.0183,2400.0,2340.0,-0.2846,-1.354,4.1187,18.6854 2019-06-03 15:44:39.880,140.7261,8656.2139,5.636,-2.8274,1.1342,0.1724,2400.0,2340.0,-0.2817,-1.348,4.1412,18.6655 2019-06-03 15:44:39.900,140.7261,8656.1855,5.647,-2.8581,1.0784,0.1409,2400.0,2340.0,-0.2963,-1.351,4.1253,18.6488 2019-06-03 15:44:39.920,140.7005,8656.2139,5.647,-2.8581,0.8753,0.0208,2400.0,2340.0,-0.2905,-1.348,4.1187,18.6488 2019-06-03 15:44:39.940,140.7772,8656.2422,5.647,-2.8581,1.2437,0.1644,2400.0,2340.0,-0.2963,-1.348,4.1227,18.6488 2019-06-03 15:44:39.960,140.7687,8656.3271,5.6519,-2.8892,0.7984,0.0467,2400.0,2340.0,-0.2846,-1.351,4.124,18.6333 2019-06-03 15:44:39.980,140.7261,8656.2988,5.6534,-2.9226,1.26,0.0941,2400.0,2340.0,-0.2817,-1.348,4.1333,18.6182 2019-06-03 15:44:40.000,140.7176,8656.2705,5.6621,-2.9335,1.2333,0.0497,2400.0,2340.0,-0.2788,-1.351,4.1253,18.6107 2019-06-03 15:44:40.020,140.7261,8656.2705,5.6648,-2.9467,0.8742,0.1434,2400.0,2340.0,-0.2671,-1.348,4.1187,18.6031 2019-06-03 15:44:40.040,140.7687,8656.3564,5.6648,-2.9467,1.1505,0.0497,2400.0,2340.0,-0.2817,-1.348,4.1227,18.6031 2019-06-03 15:44:40.060,140.7687,8656.3564,5.6648,-2.9467,0.9164,0.153,2400.0,2340.0,-0.2846,-1.345,4.1161,18.6031 2019-06-03 15:44:40.080,140.7261,8656.2705,5.6712,-2.9721,1.1324,-0.0347,2400.0,2340.0,-0.2875,-1.348,4.1399,18.5892 2019-06-03 15:44:40.100,140.7176,8656.1855,5.6736,-2.9968,0.9804,-0.0485,2400.0,2340.0,-0.3138,-1.348,4.1267,18.5744 2019-06-03 15:44:40.120,140.5896,8656.2139,5.6736,-2.9968,1.1427,0.1859,2400.0,2340.0,-0.2875,-1.345,4.1267,18.5744 2019-06-03 15:44:40.140,140.6408,8656.2422,5.6736,-2.9968,0.9009,0.0361,2400.0,2340.0,-0.2846,-1.348,4.1267,18.5744 2019-06-03 15:44:40.160,140.6323,8656.3271,5.6807,-3.02,1.2045,0.1378,2400.0,2340.0,-0.2729,-1.345,4.1174,18.5607 2019-06-03 15:44:40.180,140.5896,8656.3271,5.6865,-3.0415,0.9315,0.0378,2400.0,2340.0,-0.2729,-1.348,4.1293,18.5492 2019-06-03 15:44:40.200,140.5811,8656.3271,5.6874,-3.0539,0.8461,0.0729,2400.0,2340.0,-0.2875,-1.351,4.1267,18.5434 2019-06-03 15:44:40.220,140.5896,8656.2705,5.69,-3.0622,1.1908,0.066,2400.0,2340.0,-0.2846,-1.33,4.1227,18.5382 2019-06-03 15:44:40.240,140.6408,8656.2988,5.69,-3.0622,0.9793,0.1416,2400.0,2340.0,-0.2817,-1.336,4.1293,18.5382 2019-06-03 15:44:40.260,140.6323,8656.2705,5.69,-3.0622,1.041,0.0381,2400.0,2340.0,-0.27,-1.333,4.12,18.5382 2019-06-03 15:44:40.280,140.5811,8656.2422,5.695,-3.0831,0.9693,0.1306,2400.0,2340.0,-0.2758,-1.324,4.1346,18.5269 2019-06-03 15:44:40.300,140.5896,8656.1289,5.7054,-3.1029,1.017,0.1545,2400.0,2340.0,-0.2934,-1.327,4.128,18.5157 2019-06-03 15:44:40.320,140.7005,8656.1289,5.7054,-3.1029,0.9977,0.0237,2400.0,2340.0,-0.2788,-1.327,4.1306,18.5157 2019-06-03 15:44:40.340,140.7602,8656.1855,5.7054,-3.1029,1.1668,0.1564,2400.0,2340.0,-0.2875,-1.324,4.132,18.5157 2019-06-03 15:44:40.360,140.7687,8656.2139,5.7103,-3.1229,0.8824,0.0361,2400.0,2340.0,-0.2934,-1.324,4.12,18.5053 2019-06-03 15:44:40.380,140.7261,8656.1855,5.7103,-3.1229,1.2141,0.1094,2400.0,2340.0,-0.2934,-1.327,4.1267,18.5053 2019-06-03 15:44:40.400,140.7176,8656.2139,5.7219,-3.1559,1.1934,0.1433,2400.0,2340.0,-0.2992,-1.327,4.1346,18.4889 2019-06-03 15:44:40.420,140.7261,8656.2139,5.7236,-3.1683,0.7807,0.0601,2400.0,2340.0,-0.2875,-1.324,4.132,18.4818 2019-06-03 15:44:40.440,140.7687,8656.2139,5.7236,-3.1683,1.2278,0.0911,2400.0,2340.0,-0.2875,-1.321,4.1346,18.4818 2019-06-03 15:44:40.460,140.7772,8656.2422,5.7236,-3.1683,0.9456,0.1017,2400.0,2340.0,-0.2905,-1.327,4.1174,18.4818 2019-06-03 15:44:40.480,140.7176,8656.2705,5.7326,-3.1896,1.1205,0.0574,2400.0,2340.0,-0.2846,-1.3089,4.1161,18.4664 2019-06-03 15:44:40.500,140.7176,8656.2139,5.7372,-3.2088,1.0399,0.0704,2400.0,2340.0,-0.2963,-1.312,4.1333,18.4519 2019-06-03 15:44:40.520,140.4442,8656.1855,5.7372,-3.2088,1.0451,0.1256,2400.0,2340.0,-0.2934,-1.312,4.132,18.4519 2019-06-03 15:44:40.540,140.5127,8656.1855,5.7372,-3.2088,0.9748,0.0087,2400.0,2340.0,-0.2992,-1.315,4.1333,18.4519 2019-06-03 15:44:40.560,140.487,8656.2139,5.7427,-3.2294,1.1656,0.1379,2400.0,2340.0,-0.2963,-1.312,4.12,18.436 2019-06-03 15:44:40.580,140.4442,8656.2705,5.7427,-3.2294,0.9364,0.0278,2400.0,2340.0,-0.2788,-1.312,4.1214,18.436 2019-06-03 15:44:40.600,140.4442,8656.3271,5.7542,-3.268,0.9171,0.0598,2400.0,2340.0,-0.2846,-1.312,4.1306,18.4122 2019-06-03 15:44:40.620,140.4528,8656.3271,5.7606,-3.2789,1.1013,0.1204,2400.0,2340.0,-0.2788,-1.3089,4.132,18.4026 2019-06-03 15:44:40.640,140.5041,8656.3271,5.7606,-3.2789,0.8964,0.0514,2400.0,2340.0,-0.2758,-1.312,4.1267,18.4026 2019-06-03 15:44:40.660,140.5041,8656.2705,5.7606,-3.2789,1.267,0.0509,2400.0,2340.0,-0.2758,-1.312,4.124,18.4026 2019-06-03 15:44:40.680,140.4442,8656.9521,5.7672,-3.303,0.828,0.1351,2400.0,2340.0,-0.27,-1.3089,4.1147,18.384 2019-06-03 15:44:40.700,140.4528,8657.8047,5.7774,-3.3225,0.8679,0.1822,2400.0,2340.0,-0.27,-1.3089,4.1333,18.3658 2019-06-03 15:44:40.720,140.4442,8658.7988,5.7774,-3.3225,1.129,-0.0051,2400.0,2340.0,-0.2788,-1.3089,4.1253,18.3658 2019-06-03 15:44:40.740,140.5041,8660.1055,5.7774,-3.3225,1.0961,0.1848,2400.0,2340.0,-0.2846,-1.3089,4.1346,18.3658 2019-06-03 15:44:40.760,140.4956,8661.043,5.7856,-3.3436,1.021,-0.035,2400.0,2340.0,-0.3051,-1.3089,4.1147,18.3469 2019-06-03 15:44:40.780,140.4528,8662.4639,5.7856,-3.3436,1.1926,0.1555,2400.0,2340.0,-0.2788,-1.312,4.12,18.3469 2019-06-03 15:44:40.800,140.4528,8663.373,5.8006,-3.375,1.2241,0.1688,2400.0,2340.0,-0.2817,-1.3089,4.1293,18.323 2019-06-03 15:44:40.820,140.4528,8664.2529,5.7995,-3.3898,0.8043,0.0416,2400.0,2340.0,-0.2612,-1.3059,4.128,18.3134 2019-06-03 15:44:40.840,140.5041,8665.418,5.7995,-3.3898,1.3121,0.1035,2400.0,2340.0,-0.2671,-1.3059,4.1227,18.3134 2019-06-03 15:44:40.860,140.5127,8665.333,5.7995,-3.3898,0.7599,0.0567,2400.0,2340.0,-0.2846,-1.3089,4.1227,18.3134 2019-06-03 15:44:40.880,140.4528,8665.3613,5.8121,-3.4079,1.2285,0.0784,2400.0,2340.0,-0.2817,-1.3059,4.1227,18.2935 2019-06-03 15:44:40.900,140.4442,8665.333,5.818,-3.4273,1.3524,0.0819,2400.0,2340.0,-0.2817,-1.3059,4.1412,18.2747 2019-06-03 15:44:40.920,140.4442,8665.3613,5.818,-3.4273,0.8957,0.1113,2400.0,2340.0,-0.2905,-1.3059,4.1214,18.2747 2019-06-03 15:44:40.940,140.5041,8665.3613,5.818,-3.4273,1.2788,0.0203,2400.0,2340.0,-0.2905,-1.3059,4.1214,18.2747 2019-06-03 15:44:40.960,140.4956,8665.333,5.8201,-3.4486,0.9689,0.1614,2400.0,2340.0,-0.2963,-1.3059,4.124,18.2565 2019-06-03 15:44:40.980,140.4442,8665.3896,5.8201,-3.4486,1.1231,0.0016,2400.0,2340.0,-0.2846,-1.3059,4.1161,18.2565 2019-06-03 15:44:41.000,140.4528,8665.3613,5.8316,-3.4725,1.1856,-0.0018,2400.0,2340.0,-0.2875,-1.3089,4.1346,18.23 2019-06-03 15:44:41.020,140.4528,8665.3613,5.8387,-3.4767,0.9992,0.2043,2400.0,2340.0,-0.2875,-1.3059,4.1253,18.2216 2019-06-03 15:44:41.040,140.4956,8665.3613,5.8387,-3.4767,0.9574,-0.0321,2400.0,2340.0,-0.2788,-1.3029,4.1227,18.2216 2019-06-03 15:44:41.060,140.5127,8665.3896,5.8387,-3.4767,1.1527,0.1811,2400.0,2340.0,-0.2875,-1.3029,4.1267,18.2216 2019-06-03 15:44:41.080,140.4528,8665.3047,5.8407,-3.4866,0.8631,0.0071,2400.0,2340.0,-0.2817,-1.2999,4.1147,18.2051 2019-06-03 15:44:41.100,140.4613,8665.1904,5.8412,-3.5016,0.8742,0.02,2400.0,2340.0,-0.2817,-1.2759,4.124,18.1888 2019-06-03 15:44:41.120,140.4442,8665.2188,5.8412,-3.5016,1.203,0.1483,2400.0,2340.0,-0.2758,-1.2759,4.1333,18.1888 2019-06-03 15:44:41.140,140.4956,8665.2764,5.8412,-3.5016,0.8151,0.0468,2400.0,2340.0,-0.2758,-1.2729,4.1161,18.1888 2019-06-03 15:44:41.160,140.4956,8665.3613,5.8505,-3.5096,1.2145,0.0823,2400.0,2340.0,-0.2875,-1.2759,4.1333,18.1721 2019-06-03 15:44:41.180,140.4528,8665.5029,5.8505,-3.5096,0.8613,0.1099,2400.0,2340.0,-0.2846,-1.2729,4.1121,18.1721 2019-06-03 15:44:41.200,140.4356,8665.5596,5.8583,-3.5298,0.811,0.1368,2400.0,2340.0,-0.2758,-1.2759,4.1333,18.1468 2019-06-03 15:44:41.220,140.4528,8665.5029,5.8601,-3.5402,1.247,0.0393,2400.0,2340.0,-0.2817,-1.2789,4.128,18.1367 2019-06-03 15:44:41.240,140.5127,8665.5313,5.8601,-3.5402,0.9604,0.153,2400.0,2340.0,-0.27,-1.2699,4.124,18.1367 2019-06-03 15:44:41.260,140.5041,8665.5029,5.8601,-3.5402,0.9911,-0.0081,2400.0,2340.0,-0.2875,-1.2669,4.128,18.1367 2019-06-03 15:44:41.280,140.4442,8665.5029,5.8672,-3.558,1.0876,0.1677,2400.0,2340.0,-0.2934,-1.2638,4.1227,18.1172 2019-06-03 15:44:41.300,140.4528,8665.4463,5.8748,-3.575,1.1209,0.1798,2400.0,2340.0,-0.2905,-1.2578,4.1333,18.0985 2019-06-03 15:44:41.320,140.1782,8665.418,5.8748,-3.575,0.882,-0.0168,2400.0,2340.0,-0.2992,-1.2578,4.1359,18.0985 2019-06-03 15:44:41.340,140.2298,8665.418,5.8748,-3.575,1.2193,0.1479,2400.0,2340.0,-0.2905,-1.2338,4.1214,18.0985 2019-06-03 15:44:41.360,140.2298,8665.3896,5.8771,-3.5958,0.8428,0.0613,2400.0,2340.0,-0.2905,-1.2398,4.124,18.0786 2019-06-03 15:44:41.380,140.1782,8665.3896,5.885,-3.6193,1.2034,0.1011,2400.0,2340.0,-0.2817,-1.2398,4.1134,18.0611 2019-06-03 15:44:41.400,140.1782,8665.418,5.8918,-3.6254,1.3239,0.064,2340.0,2340.0,-0.27,-1.2368,4.1293,18.0526 2019-06-03 15:44:41.420,140.1782,8665.418,5.8975,-3.634,0.8476,0.1195,2340.0,2340.0,-0.2905,-1.2398,4.132,18.0426 2019-06-03 15:44:41.440,140.2298,8665.3896,5.8975,-3.634,1.2426,0.0206,2340.0,2340.0,-0.2875,-1.2368,4.1253,18.0426 2019-06-03 15:44:41.460,140.2212,8665.3896,5.8975,-3.634,0.9885,0.1893,2340.0,2340.0,-0.2875,-1.2277,4.1293,18.0426 2019-06-03 15:44:41.480,140.1696,8666.0713,5.9048,-3.6492,1.0455,-0.022,2340.0,2340.0,-0.2729,-1.2277,4.1253,18.0265 2019-06-03 15:44:41.500,140.1782,8666.7529,5.9069,-3.668,1.1782,-0.0463,2340.0,2340.0,-0.27,-1.1766,4.124,18.0093 2019-06-03 15:44:41.520,140.161,8667.5771,5.9069,-3.668,1.0551,0.1647,2340.0,2340.0,-0.2817,-1.1946,4.1333,18.0093 2019-06-03 15:44:41.540,140.2212,8668.8555,5.9069,-3.668,1.0166,0.0322,2340.0,2340.0,-0.2817,-1.1977,4.128,18.0093 2019-06-03 15:44:41.560,140.2298,8669.7656,5.9182,-3.6796,1.2326,0.1527,2340.0,2340.0,-0.2992,-1.2007,4.1386,17.9935 2019-06-03 15:44:41.580,140.1782,8671.0439,5.9302,-3.6939,0.8494,0.0332,2340.0,2340.0,-0.2905,-1.1946,4.1227,17.9788 2019-06-03 15:44:41.600,140.161,8671.9248,5.9317,-3.704,0.8772,0.0463,2340.0,2340.0,-0.2788,-1.1946,4.1267,17.9705 2019-06-03 15:44:41.620,140.1868,8672.7197,5.94,-3.7069,1.2248,0.084,2340.0,2340.0,-0.2934,-1.1977,4.1306,17.9632 2019-06-03 15:44:41.640,140.2298,8673.6865,5.94,-3.7069,0.8395,0.1229,2340.0,2340.0,-0.2817,-1.1916,4.132,17.9632 2019-06-03 15:44:41.660,140.2384,8673.6006,5.94,-3.7069,1.2182,0.0467,2340.0,2340.0,-0.2817,-1.1856,4.1346,17.9632 2019-06-03 15:44:41.680,140.1696,8673.6865,5.9441,-3.7227,0.8631,0.1851,2340.0,2340.0,-0.2788,-1.1826,4.124,17.9482 2019-06-03 15:44:41.700,140.1782,8673.6006,5.9545,-3.7316,0.9682,0.1674,2340.0,2340.0,-0.2817,-1.1254,4.1187,17.9341 2019-06-03 15:44:41.720,140.0405,8673.5439,5.9545,-3.7316,1.1268,-0.0119,2340.0,2340.0,-0.3021,-1.1374,4.1306,17.9341 2019-06-03 15:44:41.740,140.0835,8673.5723,5.9545,-3.7316,0.9367,0.1796,2340.0,2340.0,-0.2846,-1.1374,4.132,17.9341 2019-06-03 15:44:41.760,140.0921,8673.5439,5.9633,-3.738,1.0318,0.0056,2340.0,2340.0,-0.2788,-1.1736,4.1373,17.9218 2019-06-03 15:44:41.780,140.0405,8673.5439,5.9674,-3.7455,0.9733,0.1765,2340.0,2340.0,-0.2817,-1.1675,4.1267,17.9127 2019-06-03 15:44:41.800,140.0405,8673.5723,5.9721,-3.7439,1.0843,0.154,2340.0,2340.0,-0.2846,-1.1645,4.1227,17.9076 2019-06-03 15:44:41.820,140.0405,8673.5723,5.9719,-3.746,0.9304,0.0232,2340.0,2340.0,-0.3021,-1.1706,4.1373,17.9023 2019-06-03 15:44:41.840,140.0921,8673.6006,5.9719,-3.746,1.1516,0.144,2340.0,2340.0,-0.2875,-1.1675,4.1333,17.9023 2019-06-03 15:44:41.860,140.1008,8673.5439,5.9719,-3.746,0.8646,0.0949,2340.0,2340.0,-0.2846,-1.1675,4.1333,17.9023 2019-06-03 15:44:41.880,140.0405,8673.6289,5.9778,-3.7432,1.1531,0.0586,2340.0,2340.0,-0.2846,-1.1706,4.1293,17.8929 2019-06-03 15:44:41.900,140.0491,8673.5439,5.9809,-3.7425,1.1812,0.0523,2340.0,2340.0,-0.2788,-1.1675,4.124,17.8833 2019-06-03 15:44:41.920,139.9024,8673.5439,5.9809,-3.7425,0.9168,0.1491,2340.0,2340.0,-0.2817,-1.1675,4.128,17.8833 2019-06-03 15:44:41.940,139.9542,8673.5439,5.9809,-3.7425,1.0935,0.0144,2340.0,2340.0,-0.2671,-1.1645,4.128,17.8833 2019-06-03 15:44:41.960,139.9542,8673.6006,5.9837,-3.7385,0.9811,0.1785,2340.0,2340.0,-0.2729,-1.1465,4.132,17.8745 2019-06-03 15:44:41.980,139.911,8673.6289,5.9837,-3.7385,0.9892,-0.0147,2340.0,2340.0,-0.2788,-1.1465,4.1346,17.8745 2019-06-03 15:44:42.000,139.9024,8673.6582,5.991,-3.7258,1.0277,0.0101,2340.0,2340.0,-0.2817,-1.1434,4.12,17.8608 2019-06-03 15:44:42.020,139.911,8673.6006,5.9966,-3.7173,1.2004,0.1842,2340.0,2340.0,-0.2934,-1.1495,4.1333,17.8566 2019-06-03 15:44:42.040,139.9628,8673.5439,5.9966,-3.7173,0.7832,0.0113,2340.0,2340.0,-0.2875,-1.1465,4.1293,17.8566 2019-06-03 15:44:42.060,139.9542,8673.5156,5.9966,-3.7173,1.1631,0.1254,2340.0,2340.0,-0.2817,-1.1495,4.132,17.8566 2019-06-03 15:44:42.080,139.911,8673.5156,5.9966,-3.712,0.9452,0.0634,2340.0,2340.0,-0.2846,-1.1434,4.1359,17.846 2019-06-03 15:44:42.100,139.9024,8673.4873,6.0037,-3.6991,0.8901,0.0733,2340.0,2340.0,-0.2846,-1.1465,4.1253,17.8374 2019-06-03 15:44:42.120,140.0232,8673.5439,6.0037,-3.6991,1.2026,0.0862,2340.0,2340.0,-0.2846,-1.1465,4.1306,17.8374 2019-06-03 15:44:42.140,140.0921,8673.5723,6.0037,-3.6991,0.9412,0.1085,2340.0,2340.0,-0.2846,-1.1465,4.1346,17.8374 2019-06-03 15:44:42.160,140.0921,8673.6006,6.0108,-3.6863,1.1394,0.0518,2340.0,2340.0,-0.2846,-1.1495,4.1253,17.8281 2019-06-03 15:44:42.180,140.0318,8673.6289,6.0108,-3.6863,1.0921,0.1384,2340.0,2340.0,-0.2846,-1.1495,4.1386,17.8281 2019-06-03 15:44:42.200,140.0405,8673.6289,6.0171,-3.6639,1.0122,0.1676,2340.0,2340.0,-0.2817,-1.1404,4.1214,17.8127 2019-06-03 15:44:42.220,140.0491,8673.6289,6.0147,-3.658,1.0026,0.0041,2340.0,2340.0,-0.2817,-1.1434,4.128,17.8075 2019-06-03 15:44:42.240,140.0921,8673.6289,6.0147,-3.658,1.1364,0.1341,2340.0,2340.0,-0.2846,-1.1404,4.124,17.8075 2019-06-03 15:44:42.260,140.1008,8673.6006,6.0147,-3.658,0.8824,0.053,2340.0,2340.0,-0.2788,-1.1404,4.1399,17.8075 2019-06-03 15:44:42.280,140.0405,8674.3682,6.0188,-3.636,1.1742,0.0915,2340.0,2340.0,-0.3021,-1.1465,4.124,17.7963 2019-06-03 15:44:42.300,140.0405,8675.2207,6.0244,-3.6122,1.2026,0.1232,2340.0,2340.0,-0.2788,-1.1434,4.1306,17.784 2019-06-03 15:44:42.320,139.911,8676.1016,6.0244,-3.6122,0.8635,0.0947,2340.0,2340.0,-0.2846,-1.1404,4.1253,17.784 2019-06-03 15:44:42.340,139.9628,8677.4941,6.0244,-3.6122,1.0909,0.0995,2340.0,2340.0,-0.2817,-1.1495,4.1306,17.784 2019-06-03 15:44:42.360,139.9456,8678.4893,6.0235,-3.5933,1.0177,0.0836,2340.0,2340.0,-0.2846,-1.1465,4.1253,17.7692 2019-06-03 15:44:42.380,139.8938,8679.8818,6.0235,-3.5933,1.0192,0.0415,2340.0,2340.0,-0.2817,-1.1434,4.132,17.7692 2019-06-03 15:44:42.400,139.9024,8680.8193,6.0308,-3.5604,1.0584,0.0442,2400.0,2400.0,-0.2788,-1.1434,4.1267,17.7429 2019-06-03 15:44:42.420,139.911,8681.7568,6.0348,-3.5495,1.0469,0.1893,2400.0,2400.0,-0.27,-1.1465,4.128,17.7342 2019-06-03 15:44:42.440,139.9628,8682.8369,6.0348,-3.5495,0.9042,0.0006,2400.0,2400.0,-0.2875,-1.1434,4.1293,17.7342 2019-06-03 15:44:42.460,139.9628,8682.667,6.0348,-3.5495,1.146,0.1538,2400.0,2400.0,-0.2905,-1.1465,4.1267,17.7342 2019-06-03 15:44:42.480,139.9024,8682.667,6.0379,-3.5333,0.9027,-0.0045,2400.0,2400.0,-0.3138,-1.1736,4.132,17.7136 2019-06-03 15:44:42.500,139.9024,8682.6094,6.042,-3.5169,0.8287,0.0368,2400.0,2400.0,-0.3021,-1.1706,4.1306,17.6915 2019-06-03 15:44:42.520,139.7554,8682.5527,6.042,-3.5169,1.3587,0.1243,2400.0,2400.0,-0.2963,-1.1675,4.1253,17.6915 2019-06-03 15:44:42.540,139.8246,8682.5527,6.042,-3.5169,0.7574,0.1008,2400.0,2400.0,-0.2905,-1.1675,4.1253,17.6915 2019-06-03 15:44:42.560,139.816,8682.5811,6.0514,-3.5001,1.1061,0.0465,2400.0,2400.0,-0.2671,-1.1706,4.1214,17.6688 2019-06-03 15:44:42.580,139.7727,8682.5527,6.0514,-3.5001,0.9996,0.1268,2400.0,2400.0,-0.2817,-1.1736,4.1293,17.6688 2019-06-03 15:44:42.600,139.7554,8682.6094,6.0591,-3.4783,1.0347,0.1482,2400.0,2400.0,-0.2671,-1.1706,4.1293,17.6318 2019-06-03 15:44:42.620,139.7727,8682.5811,6.0589,-3.4761,1.051,0.018,2400.0,2400.0,-0.2729,-1.1675,4.1161,17.6198 2019-06-03 15:44:42.640,139.816,8682.6094,6.0589,-3.4761,1.0625,0.1665,2400.0,2400.0,-0.2817,-1.1675,4.1214,17.6198 2019-06-03 15:44:42.660,139.816,8682.6387,6.0589,-3.4761,0.9349,0.0203,2400.0,2400.0,-0.2905,-1.1706,4.12,17.6198 2019-06-03 15:44:42.680,139.764,8682.7236,6.0682,-3.4615,1.1982,0.1287,2400.0,2400.0,-0.2934,-1.1706,4.1346,17.5943 2019-06-03 15:44:42.700,139.764,8682.667,6.0755,-3.4495,1.2215,0.1348,2400.0,2400.0,-0.2963,-1.1706,4.1253,17.5667 2019-06-03 15:44:42.720,139.764,8682.667,6.0755,-3.4495,0.8062,0.054,2400.0,2400.0,-0.2846,-1.1675,4.1161,17.5667 2019-06-03 15:44:42.740,139.8246,8682.667,6.0755,-3.4495,1.2563,0.1286,2400.0,2400.0,-0.2992,-1.1706,4.1227,17.5667 2019-06-03 15:44:42.760,139.816,8682.667,6.0811,-3.4386,0.7973,0.0844,2400.0,2400.0,-0.2992,-1.1645,4.1187,17.5403 2019-06-03 15:44:42.780,139.764,8682.667,6.0892,-3.4323,1.2171,0.0558,2400.0,2400.0,-0.3021,-1.1675,4.132,17.5129 2019-06-03 15:44:42.800,139.764,8682.7236,6.0953,-3.4261,1.2141,0.0174,2400.0,2400.0,-0.2875,-1.1675,4.1293,17.4991 2019-06-03 15:44:42.820,139.7727,8682.6953,6.1006,-3.4189,1.0488,0.1418,2400.0,2400.0,-0.2905,-1.1675,4.1121,17.4854 2019-06-03 15:44:42.840,139.8246,8682.6387,6.1006,-3.4189,1.125,0.0202,2400.0,2400.0,-0.2992,-1.1706,4.1227,17.4854 2019-06-03 15:44:42.860,139.8333,8682.6094,6.1006,-3.4189,1.0773,0.1417,2400.0,2400.0,-0.2992,-1.1645,4.124,17.4854 2019-06-03 15:44:42.880,139.764,8682.5811,6.1096,-3.4066,0.98,0.0424,2400.0,2400.0,-0.3021,-1.1645,4.128,17.4592 2019-06-03 15:44:42.900,139.7727,8682.4961,6.1127,-3.3947,0.9389,0.0061,2400.0,2400.0,-0.2963,-1.1826,4.124,17.4316 2019-06-03 15:44:42.920,139.7554,8682.5527,6.1127,-3.3947,1.2622,0.1134,2400.0,2400.0,-0.2934,-1.1766,4.1081,17.4316 2019-06-03 15:44:42.940,139.8073,8682.667,6.1127,-3.3947,0.7026,0.0235,2400.0,2400.0,-0.3021,-1.1736,4.1293,17.4316 2019-06-03 15:44:42.960,139.8333,8682.7236,6.1241,-3.376,1.2503,0.1134,2400.0,2400.0,-0.3021,-1.1766,4.1161,17.4062 2019-06-03 15:44:42.980,139.7727,8682.7803,6.1241,-3.376,0.8361,0.1068,2400.0,2400.0,-0.2992,-1.1766,4.1253,17.4062 2019-06-03 15:44:43.000,139.764,8682.7803,6.1333,-3.3563,0.8088,0.1019,2400.0,2400.0,-0.2963,-1.1736,4.12,17.3656 2019-06-03 15:44:43.020,139.7727,8682.7803,6.1324,-3.3513,1.1904,0.0364,2400.0,2400.0,-0.2875,-1.1736,4.1108,17.352 2019-06-03 15:44:43.040,139.816,8682.7803,6.1324,-3.3513,0.9216,0.1216,2400.0,2400.0,-0.3021,-1.1766,4.1306,17.352 2019-06-03 15:44:43.060,139.816,8682.8086,6.1324,-3.3513,1.1165,0.0393,2400.0,2400.0,-0.2992,-1.1736,4.1121,17.352 2019-06-03 15:44:43.080,139.764,8683.5762,6.1386,-3.3384,0.983,0.1854,2400.0,2400.0,-0.308,-1.1736,4.1227,17.3243 2019-06-03 15:44:43.100,139.7813,8684.3438,6.1477,-3.3231,1.0865,0.1762,2400.0,2400.0,-0.3109,-1.1766,4.1227,17.2975 2019-06-03 15:44:43.120,139.6254,8685.1963,6.1477,-3.3231,0.936,-0.0151,2400.0,2400.0,-0.3109,-1.1736,4.1015,17.2975 2019-06-03 15:44:43.140,139.6947,8686.5322,6.1477,-3.3231,1.2167,0.1519,2400.0,2400.0,-0.2992,-1.1706,4.1267,17.2975 2019-06-03 15:44:43.160,139.6947,8687.499,6.1513,-3.3177,0.8095,0.0326,2400.0,2400.0,-0.2934,-1.1736,4.12,17.2693 2019-06-03 15:44:43.180,139.6254,8688.8066,6.1513,-3.3177,1.2311,0.1518,2400.0,2400.0,-0.2934,-1.1736,4.1227,17.2693 2019-06-03 15:44:43.200,139.634,8689.7441,6.1607,-3.3057,1.1494,0.1284,2400.0,2400.0,-0.3051,-1.1736,4.1147,17.2257 2019-06-03 15:44:43.220,139.634,8690.5977,6.1607,-3.304,0.7918,0.0744,2400.0,2400.0,-0.3109,-1.1766,4.1028,17.2111 2019-06-03 15:44:43.240,139.6861,8691.6777,6.1607,-3.304,1.2182,0.0399,2400.0,2400.0,-0.3226,-1.1796,4.1293,17.2111 2019-06-03 15:44:43.260,139.6947,8691.5918,6.1607,-3.304,0.8713,0.1504,2400.0,2400.0,-0.3226,-1.1736,4.1121,17.2111 2019-06-03 15:44:43.280,139.634,8691.5918,6.1696,-3.3004,1.223,0.024,2400.0,2400.0,-0.2992,-1.1766,4.12,17.1822 2019-06-03 15:44:43.300,139.634,8691.4785,6.1724,-3.3006,1.1224,0.022,2400.0,2400.0,-0.3051,-1.1826,4.1161,17.1545 2019-06-03 15:44:43.320,139.495,8691.4502,6.1724,-3.3006,0.9312,0.1758,2400.0,2400.0,-0.2992,-1.1856,4.1081,17.1545 2019-06-03 15:44:43.340,139.5472,8691.5352,6.1724,-3.3006,1.0136,-0.0476,2400.0,2400.0,-0.3138,-1.1886,4.12,17.1545 2019-06-03 15:44:43.360,139.5385,8691.5352,6.1754,-3.2994,1.1279,0.166,2400.0,2400.0,-0.308,-1.1886,4.1214,17.1261 2019-06-03 15:44:43.380,139.495,8691.5352,6.1754,-3.2994,0.9009,0.0478,2400.0,2400.0,-0.3051,-1.1886,4.1174,17.1261 2019-06-03 15:44:43.400,139.4863,8691.5352,6.1824,-3.3,0.9426,0.0481,2340.0,2340.0,-0.3109,-1.2097,4.1174,17.0849 2019-06-03 15:44:43.420,139.5037,8691.5068,6.1868,-3.2979,1.2799,0.1277,2340.0,2340.0,-0.308,-1.2097,4.1068,17.0714 2019-06-03 15:44:43.440,139.5472,8691.4502,6.1868,-3.2979,0.8021,0.1175,2340.0,2340.0,-0.308,-1.2097,4.1293,17.0714 2019-06-03 15:44:43.460,139.5559,8691.4219,6.1868,-3.2979,1.2677,0.0444,2340.0,2340.0,-0.3021,-1.2127,4.1267,17.0714 2019-06-03 15:44:43.480,139.4863,8691.4502,6.1877,-3.2987,0.9367,0.1404,2340.0,2340.0,-0.3051,-1.2097,4.1094,17.0459 2019-06-03 15:44:43.500,139.495,8691.3359,6.1931,-3.2956,0.9205,0.1357,2340.0,2340.0,-0.2992,-1.2127,4.1253,17.0219 2019-06-03 15:44:43.520,139.3557,8691.3359,6.1931,-3.2956,1.1779,0.0323,2340.0,2340.0,-0.3051,-1.2127,4.1068,17.0219 2019-06-03 15:44:43.540,139.4167,8691.3359,6.1931,-3.2956,1.0118,0.1849,2340.0,2340.0,-0.3051,-1.2247,4.1214,17.0219 2019-06-03 15:44:43.560,139.408,8691.3359,6.1966,-3.2985,1.0451,-0.0054,2340.0,2340.0,-0.3021,-1.2518,4.1147,16.999 2019-06-03 15:44:43.580,139.3557,8691.3076,6.1954,-3.3065,1.0103,0.1725,2340.0,2340.0,-0.2758,-1.2518,4.1174,16.9778 2019-06-03 15:44:43.600,139.3557,8691.3936,6.2004,-3.3069,1.1227,0.1585,2340.0,2340.0,-0.2846,-1.2518,4.124,16.9676 2019-06-03 15:44:43.620,139.3645,8691.3652,6.1967,-3.3128,0.892,0.0305,2340.0,2340.0,-0.2846,-1.2518,4.1134,16.9568 2019-06-03 15:44:43.640,139.408,8691.4219,6.1967,-3.3128,1.1742,0.1615,2340.0,2340.0,-0.308,-1.2488,4.12,16.9568 2019-06-03 15:44:43.660,139.4254,8691.3936,6.1967,-3.3128,0.8661,0.0316,2340.0,2340.0,-0.3168,-1.2488,4.1214,16.9568 2019-06-03 15:44:43.680,139.3645,8692.1035,6.2005,-3.3201,1.2263,0.1214,2340.0,2340.0,-0.3314,-1.2518,4.1147,16.9377 2019-06-03 15:44:43.700,139.3557,8692.957,6.2006,-3.3302,1.2433,0.0764,2340.0,2340.0,-0.3401,-1.2488,4.1227,16.9188 2019-06-03 15:44:43.720,139.3557,8693.9238,6.2006,-3.3302,0.7925,0.1088,2340.0,2340.0,-0.3372,-1.2488,4.1147,16.9188 2019-06-03 15:44:43.740,139.4167,8695.3447,6.2006,-3.3302,1.2426,0.0677,2340.0,2340.0,-0.308,-1.2518,4.1267,16.9188 2019-06-03 15:44:43.760,139.408,8696.3398,6.1986,-3.3446,0.9045,0.1294,2340.0,2340.0,-0.3021,-1.2638,4.124,16.9015 2019-06-03 15:44:43.780,139.3557,8697.7617,6.1986,-3.3446,1.1512,0.0082,2340.0,2340.0,-0.2934,-1.2669,4.1081,16.9015 2019-06-03 15:44:43.800,139.3557,8698.7002,6.2033,-3.3599,1.085,-0.0297,2340.0,2340.0,-0.3051,-1.2669,4.1147,16.8759 2019-06-03 15:44:43.820,139.3645,8699.5811,6.2084,-3.3637,1.0769,0.1753,2340.0,2340.0,-0.3168,-1.2638,4.12,16.87 2019-06-03 15:44:43.840,139.4254,8700.6904,6.2084,-3.3637,1.044,0.0122,2340.0,2340.0,-0.3285,-1.2669,4.1214,16.87 2019-06-03 15:44:43.860,139.4167,8700.6055,6.2084,-3.3637,1.0847,0.1297,2340.0,2340.0,-0.3109,-1.2669,4.124,16.87 2019-06-03 15:44:43.880,139.347,8700.6055,6.2069,-3.3777,0.7685,0.0354,2340.0,2340.0,-0.2963,-1.2638,4.1028,16.8569 2019-06-03 15:44:43.900,139.3645,8700.5479,6.2035,-3.3951,0.7378,0.068,2340.0,2340.0,-0.3021,-1.2638,4.1121,16.8458 2019-06-03 15:44:43.920,139.1987,8700.5762,6.2035,-3.3951,1.1475,0.0784,2340.0,2340.0,-0.2905,-1.2669,4.1134,16.8458 2019-06-03 15:44:43.940,139.2773,8700.6055,6.2035,-3.3951,0.933,0.0985,2340.0,2340.0,-0.2846,-1.2669,4.1174,16.8458 2019-06-03 15:44:43.960,139.2685,8700.5762,6.2052,-3.4082,1.115,0.0771,2340.0,2340.0,-0.3051,-1.2729,4.124,16.8364 2019-06-03 15:44:43.980,139.2161,8700.5479,6.2052,-3.4082,0.892,0.1228,2340.0,2340.0,-0.3109,-1.2669,4.0949,16.8364 2019-06-03 15:44:44.000,139.2161,8700.6055,6.2059,-3.436,0.9804,0.1317,2340.0,2340.0,-0.3226,-1.2669,4.1015,16.8215 2019-06-03 15:44:44.020,139.2249,8700.6055,6.2048,-3.4465,1.0196,0.002,2340.0,2340.0,-0.3109,-1.2699,4.1121,16.8168 2019-06-03 15:44:44.040,139.2598,8700.6055,6.2048,-3.4465,1.0628,0.1596,2340.0,2340.0,-0.2905,-1.2669,4.1002,16.8168 2019-06-03 15:44:44.060,139.2685,8700.5762,6.2048,-3.4465,0.9552,0.0023,2340.0,2340.0,-0.2905,-1.2638,4.1055,16.8168 2019-06-03 15:44:44.080,139.2249,8700.5479,6.207,-3.4632,1.1068,0.1671,2340.0,2340.0,-0.2934,-1.2638,4.0763,16.8086 2019-06-03 15:44:44.100,139.2249,8700.4346,6.2075,-3.4791,1.1867,0.1878,2340.0,2340.0,-0.2934,-1.2638,4.0816,16.8004 2019-06-03 15:44:44.120,139.2249,8700.4346,6.2075,-3.4791,0.8898,-0.0036,2340.0,2340.0,-0.2875,-1.2638,4.0989,16.8004 2019-06-03 15:44:44.140,139.2685,8700.4912,6.2075,-3.4791,1.1109,0.1389,2340.0,2340.0,-0.2846,-1.2669,4.0909,16.8004 2019-06-03 15:44:44.160,139.2685,8700.5195,6.2033,-3.4972,0.8849,0.0744,2340.0,2340.0,-0.2846,-1.2638,4.1055,16.793 2019-06-03 15:44:44.180,139.2249,8700.5479,6.2033,-3.5156,1.1579,0.0745,2340.0,2340.0,-0.2875,-1.2638,4.0843,16.7877 2019-06-03 15:44:44.200,139.2161,8700.6055,6.2047,-3.5202,1.2082,0.0483,2340.0,2340.0,-0.2934,-1.2638,4.0724,16.7848 2019-06-03 15:44:44.220,139.2249,8700.5762,6.2059,-3.5257,0.9456,0.1488,2340.0,2340.0,-0.2875,-1.2608,4.0989,16.781 2019-06-03 15:44:44.240,139.2773,8700.4912,6.2059,-3.5257,1.1346,0.0179,2340.0,2340.0,-0.2934,-1.2669,4.0896,16.781 2019-06-03 15:44:44.260,139.2773,8700.5195,6.2059,-3.5257,1.0432,0.164,2340.0,2340.0,-0.2992,-1.2638,4.0989,16.781 2019-06-03 15:44:44.280,139.2161,8700.5195,6.2039,-3.5394,1.0007,0.0276,2340.0,2340.0,-0.2963,-1.2638,4.075,16.7747 2019-06-03 15:44:44.300,139.2249,8700.4346,6.1998,-3.5509,1.0029,0.0537,2340.0,2340.0,-0.2934,-1.2669,4.0816,16.7694 2019-06-03 15:44:44.320,139.0762,8700.4629,6.1998,-3.5509,1.1375,0.1341,2340.0,2340.0,-0.2963,-1.2638,4.1015,16.7694 2019-06-03 15:44:44.340,139.1287,8700.5195,6.1998,-3.5509,0.9123,0.0561,2340.0,2340.0,-0.2934,-1.2638,4.0922,16.7694 2019-06-03 15:44:44.360,139.1375,8700.6055,6.1989,-3.5615,1.1682,0.1173,2340.0,2340.0,-0.3021,-1.2669,4.0922,16.7627 2019-06-03 15:44:44.380,139.0937,8700.5195,6.2013,-3.5697,0.8864,0.0584,2340.0,2340.0,-0.2905,-1.2608,4.075,16.7563 2019-06-03 15:44:44.400,139.0937,8700.5479,6.1968,-3.5737,0.8598,0.1053,2340.0,2340.0,-0.2905,-1.2608,4.0711,16.7528 2019-06-03 15:44:44.420,139.0849,8700.5762,6.1973,-3.575,1.0939,0.1009,2340.0,2340.0,-0.2934,-1.2638,4.0883,16.7501 2019-06-03 15:44:44.440,139.1375,8700.6621,6.1973,-3.575,0.916,0.0978,2340.0,2340.0,-0.3021,-1.2638,4.0843,16.7501 2019-06-03 15:44:44.460,139.1462,8700.6621,6.1973,-3.575,1.1816,0.0433,2340.0,2340.0,-0.3138,-1.2638,4.0922,16.7501 2019-06-03 15:44:44.480,139.0937,8701.458,6.1909,-3.5823,0.9556,0.1265,2340.0,2340.0,-0.308,-1.2638,4.0816,16.7437 2019-06-03 15:44:44.500,139.0849,8702.2256,6.1922,-3.5854,1.058,0.1712,2340.0,2340.0,-0.308,-1.2608,4.0763,16.7387 2019-06-03 15:44:44.520,139.0937,8702.9365,6.1922,-3.5854,0.9367,-0.0081,2340.0,2340.0,-0.2934,-1.2638,4.1028,16.7387 2019-06-03 15:44:44.540,139.1462,8704.2734,6.1922,-3.5854,1.1649,0.1732,2340.0,2340.0,-0.2905,-1.2638,4.075,16.7387 2019-06-03 15:44:44.560,139.1462,8705.1836,6.1904,-3.5891,0.8909,-0.0041,2340.0,2340.0,-0.3051,-1.2638,4.0856,16.7329 2019-06-03 15:44:44.580,139.0849,8706.4629,6.1852,-3.5951,1.2407,0.1276,2340.0,2340.0,-0.308,-1.2608,4.0737,16.7286 2019-06-03 15:44:44.600,139.0849,8707.3447,6.1876,-3.5946,1.2193,0.0984,2340.0,2340.0,-0.3051,-1.2608,4.0697,16.7243 2019-06-03 15:44:44.620,139.0937,8708.1982,6.1859,-3.5983,0.8191,0.0906,2340.0,2340.0,-0.3021,-1.2608,4.0936,16.7205 2019-06-03 15:44:44.640,139.1462,8709.1934,6.1859,-3.5983,1.2537,0.0525,2340.0,2340.0,-0.3051,-1.2608,4.0803,16.7205 2019-06-03 15:44:44.660,139.1549,8709.1074,6.1859,-3.5983,0.9086,0.1338,2340.0,2340.0,-0.3226,-1.2608,4.0816,16.7205 2019-06-03 15:44:44.680,139.0762,8709.1934,6.1853,-3.6013,1.1516,0.0401,2340.0,2340.0,-0.3226,-1.2638,4.0816,16.7117 2019-06-03 15:44:44.700,139.0937,8709.1934,6.1784,-3.608,1.0872,-0.0019,2340.0,2340.0,-0.3401,-1.2638,4.0684,16.7006 2019-06-03 15:44:44.720,138.9359,8709.2217,6.1784,-3.608,1.0706,0.1671,2340.0,2340.0,-0.3314,-1.2669,4.0909,16.7006 2019-06-03 15:44:44.740,138.9973,8709.3066,6.1784,-3.608,0.8916,-0.0156,2340.0,2340.0,-0.3197,-1.2638,4.0737,16.7006 2019-06-03 15:44:44.760,138.9973,8709.4209,6.1772,-3.6086,1.1771,0.1492,2340.0,2340.0,-0.3197,-1.2638,4.0763,16.6885 2019-06-03 15:44:44.780,138.9622,8709.25,6.1798,-3.6033,0.916,0.0387,2340.0,2340.0,-0.3255,-1.2669,4.0711,16.6767 2019-06-03 15:44:44.800,138.9535,8709.1934,6.1737,-3.6084,0.7958,0.0514,2340.0,2340.0,-0.3138,-1.2608,4.0777,16.6694 2019-06-03 15:44:44.820,138.9535,8709.1367,6.1759,-3.6032,1.3665,0.096,2340.0,2340.0,-0.3431,-1.2638,4.0883,16.6619 2019-06-03 15:44:44.840,138.9973,8709.1367,6.1759,-3.6032,0.7707,0.0899,2340.0,2340.0,-0.346,-1.2638,4.0803,16.6619 2019-06-03 15:44:44.860,138.9973,8709.1367,6.1759,-3.6032,1.2714,0.0642,2340.0,2340.0,-0.3431,-1.2578,4.0724,16.6619 2019-06-03 15:44:44.880,138.9447,8709.1367,6.1707,-3.6004,0.8409,0.1307,2340.0,2340.0,-0.3489,-1.2608,4.0737,16.6471 2019-06-03 15:44:44.900,138.9535,8709.0508,6.1717,-3.5939,0.845,0.174,2340.0,2340.0,-0.3255,-1.2608,4.0777,16.6322 2019-06-03 15:44:44.920,138.9447,8708.9375,6.1717,-3.5939,1.1205,-0.0352,2340.0,2340.0,-0.3343,-1.2608,4.0896,16.6322 2019-06-03 15:44:44.940,139.0149,8708.9375,6.1717,-3.5939,1.0351,0.1895,2340.0,2340.0,-0.3343,-1.2608,4.075,16.6322 2019-06-03 15:44:44.960,138.9973,8708.9941,6.1716,-3.5877,0.9696,-0.0082,2340.0,2340.0,-0.3489,-1.2578,4.0644,16.6151 2019-06-03 15:44:44.980,138.9447,8709.0508,6.1684,-3.5832,1.1853,0.1908,2340.0,2340.0,-0.3548,-1.2578,4.083,16.5951 2019-06-03 15:44:45.000,138.9447,8709.1074,6.172,-3.5781,1.1841,0.1673,2340.0,2340.0,-0.3606,-1.2608,4.0711,16.587 2019-06-03 15:44:45.020,138.9447,8709.0791,6.1679,-3.5778,0.8065,0.0105,2340.0,2340.0,-0.3665,-1.2548,4.0816,16.5777 2019-06-03 15:44:45.040,138.9973,8709.1074,6.1679,-3.5778,1.2681,0.1244,2340.0,2340.0,-0.3489,-1.2578,4.0737,16.5777 2019-06-03 15:44:45.060,139.0149,8709.0225,6.1679,-3.5778,0.8509,0.0907,2340.0,2340.0,-0.3401,-1.2578,4.0658,16.5777 2019-06-03 15:44:45.080,138.9447,8708.9941,6.1708,-3.5693,1.1771,0.0737,2340.0,2340.0,-0.3285,-1.2548,4.0896,16.5586 2019-06-03 15:44:45.100,138.9622,8708.9658,6.1695,-3.5662,1.2688,0.0765,2340.0,2340.0,-0.3343,-1.2548,4.0816,16.537 2019-06-03 15:44:45.120,138.8041,8709.0225,6.1695,-3.5662,0.8813,0.132,2340.0,2340.0,-0.3577,-1.2578,4.083,16.537 2019-06-03 15:44:45.140,138.8569,8709.0791,6.1695,-3.5662,1.1368,0.0026,2340.0,2340.0,-0.3577,-1.2578,4.0737,16.537 2019-06-03 15:44:45.160,138.8569,8709.1367,6.1674,-3.5626,1.0022,0.1843,2340.0,2340.0,-0.3518,-1.2548,4.0631,16.5146 2019-06-03 15:44:45.180,138.8129,8709.1367,6.1702,-3.5563,1.0177,0.0018,2340.0,2340.0,-0.3343,-1.2578,4.0936,16.4911 2019-06-03 15:44:45.200,138.8129,8709.0791,6.1664,-3.5572,0.8824,0.0092,2340.0,2340.0,-0.3314,-1.2518,4.075,16.4798 2019-06-03 15:44:45.220,138.8129,8709.0791,6.1708,-3.5495,1.1457,0.1311,2340.0,2340.0,-0.3343,-1.2518,4.0724,16.4686 2019-06-03 15:44:45.240,138.8657,8709.1934,6.1708,-3.5495,0.8202,0.0613,2340.0,2340.0,-0.3401,-1.2548,4.0737,16.4686 2019-06-03 15:44:45.260,138.8745,8709.2217,6.1708,-3.5495,1.1819,0.1122,2340.0,2340.0,-0.3431,-1.2488,4.0684,16.4686 2019-06-03 15:44:45.280,138.8129,8710.0752,6.1655,-3.546,0.7611,0.0732,2340.0,2340.0,-0.346,-1.2488,4.0896,16.4443 2019-06-03 15:44:45.300,138.8217,8710.9277,6.1686,-3.5393,0.7511,0.1044,2340.0,2340.0,-0.346,-1.2458,4.075,16.4194 2019-06-03 15:44:45.320,138.7953,8711.8389,6.1686,-3.5393,1.237,0.0406,2340.0,2340.0,-0.3577,-1.2458,4.0684,16.4194 2019-06-03 15:44:45.340,138.8657,8713.1465,6.1686,-3.5393,0.9412,0.1777,2340.0,2340.0,-0.3518,-1.2488,4.0763,16.4194 2019-06-03 15:44:45.360,138.8569,8714.1709,6.1727,-3.5301,1.0636,0.0211,2340.0,2340.0,-0.3518,-1.2458,4.0658,16.3945 2019-06-03 15:44:45.380,138.8129,8715.5361,6.1698,-3.528,0.9637,0.144,2340.0,2340.0,-0.346,-1.2428,4.0922,16.3674 2019-06-03 15:44:45.400,138.8129,8716.418,6.1715,-3.5267,0.9674,0.1497,2400.0,2400.0,-0.3489,-1.2458,4.075,16.3535 2019-06-03 15:44:45.420,138.8129,8717.3564,6.1676,-3.529,1.041,-0.0055,2400.0,2400.0,-0.3489,-1.2488,4.0763,16.3402 2019-06-03 15:44:45.440,138.8569,8718.4658,6.1676,-3.529,1.0795,0.1909,2400.0,2400.0,-0.3431,-1.2458,4.0737,16.3402 2019-06-03 15:44:45.460,138.8745,8718.3232,6.1676,-3.529,0.9057,0.053,2400.0,2400.0,-0.3431,-1.2428,4.0631,16.3402 2019-06-03 15:44:45.480,138.8129,8718.3232,6.1716,-3.526,1.0891,0.1001,2400.0,2400.0,-0.346,-1.2488,4.0883,16.3131 2019-06-03 15:44:45.500,138.8129,8718.2949,6.1725,-3.5262,1.1131,0.0885,2400.0,2400.0,-0.3431,-1.2458,4.0856,16.2844 2019-06-03 15:44:45.520,138.8041,8718.2949,6.1725,-3.5262,0.8517,0.1265,2400.0,2400.0,-0.3548,-1.2458,4.0711,16.2844 2019-06-03 15:44:45.540,138.8569,8718.2949,6.1725,-3.5262,1.1176,0.049,2400.0,2400.0,-0.346,-1.2398,4.083,16.2844 2019-06-03 15:44:45.560,138.8657,8718.4092,6.1698,-3.5257,0.8269,0.1807,2400.0,2400.0,-0.3518,-1.2428,4.0538,16.2558 2019-06-03 15:44:45.580,138.8129,8718.4375,6.1712,-3.5243,1.0429,-0.0021,2400.0,2400.0,-0.3431,-1.2428,4.0816,16.2289 2019-06-03 15:44:45.600,138.8129,8718.4092,6.17,-3.5257,1.0835,-0.0039,2400.0,2400.0,-0.3431,-1.2428,4.0843,16.2145 2019-06-03 15:44:45.620,138.8217,8718.2949,6.1734,-3.5252,1.0773,0.1637,2400.0,2400.0,-0.3401,-1.2428,4.079,16.2003 2019-06-03 15:44:45.640,138.8745,8718.2949,6.1734,-3.5252,0.8605,0.0168,2400.0,2400.0,-0.3343,-1.2428,4.0763,16.2003 2019-06-03 15:44:45.660,138.8657,8718.2666,6.1734,-3.5252,1.1401,0.1606,2400.0,2400.0,-0.3255,-1.2398,4.0644,16.2003 2019-06-03 15:44:45.680,138.8129,8718.2949,6.1717,-3.5294,0.8025,0.0313,2400.0,2400.0,-0.346,-1.2428,4.0883,16.1717 2019-06-03 15:44:45.700,138.8129,8718.2666,6.1709,-3.5337,0.9286,0.0665,2400.0,2400.0,-0.346,-1.2428,4.0896,16.1442 2019-06-03 15:44:45.720,138.6632,8718.3232,6.1709,-3.5337,1.2437,0.1015,2400.0,2400.0,-0.3489,-1.2398,4.0724,16.1442 2019-06-03 15:44:45.740,138.7425,8718.1816,6.1709,-3.5337,0.8628,0.1178,2400.0,2400.0,-0.346,-1.2398,4.0816,16.1442 2019-06-03 15:44:45.760,138.7249,8718.21,6.1702,-3.5356,1.061,0.0591,2400.0,2400.0,-0.346,-1.2428,4.0684,16.1166 2019-06-03 15:44:45.780,138.672,8718.2383,6.1709,-3.5451,0.9807,0.1222,2400.0,2400.0,-0.346,-1.2368,4.0816,16.0892 2019-06-03 15:44:45.800,138.6809,8718.21,6.1713,-3.5487,0.9966,0.1662,2400.0,2400.0,-0.346,-1.2398,4.0856,16.0754 2019-06-03 15:44:45.820,138.672,8718.21,6.1658,-3.5544,1.0429,0.0339,2400.0,2400.0,-0.3372,-1.2428,4.0684,16.0619 2019-06-03 15:44:45.840,138.7249,8718.21,6.1658,-3.5544,1.0725,0.1575,2400.0,2400.0,-0.3343,-1.2398,4.0763,16.0619 2019-06-03 15:44:45.860,138.7337,8718.1816,6.1658,-3.5544,0.8358,0.036,2400.0,2400.0,-0.3401,-1.2428,4.0644,16.0619 2019-06-03 15:44:45.880,138.6632,8718.8076,6.1657,-3.5638,1.173,0.1459,2400.0,2400.0,-0.3255,-1.2428,4.083,16.0344 2019-06-03 15:44:45.900,138.6897,8719.5752,6.166,-3.5682,1.1538,0.1735,2400.0,2400.0,-0.3255,-1.2368,4.0856,16.0084 2019-06-03 15:44:45.920,138.672,8720.5146,6.166,-3.5682,0.8165,0.0692,2400.0,2400.0,-0.3314,-1.2398,4.0671,16.0084 2019-06-03 15:44:45.940,138.7337,8721.9082,6.166,-3.5682,1.102,0.0694,2400.0,2400.0,-0.3343,-1.2398,4.0763,16.0084 2019-06-03 15:44:45.960,138.7249,8722.8467,6.1575,-3.5793,0.9227,0.0966,2400.0,2400.0,-0.3431,-1.2398,4.0711,15.9813 2019-06-03 15:44:45.980,138.672,8724.2412,6.1542,-3.5907,1.1446,0.0443,2400.0,2400.0,-0.3431,-1.2398,4.0737,15.9552 2019-06-03 15:44:46.000,138.6632,8725.1797,6.1553,-3.5955,1.1416,0.0666,2400.0,2400.0,-0.3401,-1.2398,4.0843,15.942 2019-06-03 15:44:46.020,138.6809,8726.0332,6.154,-3.6013,0.8609,0.1515,2400.0,2400.0,-0.3372,-1.2398,4.0658,15.9282 2019-06-03 15:44:46.040,138.7337,8727.0293,6.154,-3.6013,0.9918,0.0046,2400.0,2400.0,-0.3372,-1.2368,4.0737,15.9282 2019-06-03 15:44:46.060,138.7337,8726.9434,6.154,-3.6013,1.1361,0.1352,2400.0,2400.0,-0.3489,-1.2398,4.0658,15.9282 2019-06-03 15:44:46.080,138.672,8726.9434,6.1508,-3.6144,0.9715,0.0091,2400.0,2400.0,-0.3489,-1.2398,4.0856,15.9044 2019-06-03 15:44:46.100,138.6809,8726.8867,6.146,-3.6282,0.8139,0.0205,2400.0,2400.0,-0.3489,-1.2398,4.0843,15.8797 2019-06-03 15:44:46.120,138.522,8726.915,6.146,-3.6282,1.1908,0.1648,2400.0,2400.0,-0.3489,-1.2398,4.0711,15.8797 2019-06-03 15:44:46.140,138.5838,8726.9434,6.146,-3.6282,0.7241,0.0402,2400.0,2400.0,-0.3343,-1.2398,4.0724,15.8797 2019-06-03 15:44:46.160,138.6103,8726.8867,6.1426,-3.6401,1.2766,0.074,2400.0,2400.0,-0.3431,-1.2398,4.0711,15.8553 2019-06-03 15:44:46.180,138.5397,8726.8301,6.1393,-3.6551,0.8531,0.1114,2400.0,2400.0,-0.346,-1.2398,4.0711,15.8326 2019-06-03 15:44:46.200,138.5397,8726.8584,6.1383,-3.6642,0.8716,0.1152,2400.0,2400.0,-0.346,-1.2368,4.083,15.8216 2019-06-03 15:44:46.220,138.5309,8726.8584,6.1332,-3.6742,1.1287,0.0701,2400.0,2400.0,-0.3489,-1.2428,4.0578,15.8095 2019-06-03 15:44:46.240,138.5838,8726.915,6.1332,-3.6742,1.0011,0.1471,2400.0,2400.0,-0.346,-1.2368,4.0803,15.8095 2019-06-03 15:44:46.260,138.5927,8726.915,6.1332,-3.6742,1.0569,0.0011,2400.0,2400.0,-0.3518,-1.2398,4.0684,15.8095 2019-06-03 15:44:46.280,138.5309,8726.915,6.1297,-3.6876,1.0351,0.1469,2400.0,2400.0,-0.3577,-1.2187,4.0697,15.7881 2019-06-03 15:44:46.300,138.5397,8726.8867,6.1291,-3.7009,1.0861,0.1665,2400.0,2400.0,-0.3518,-1.2187,4.075,15.7675 2019-06-03 15:44:46.320,138.5397,8726.8584,6.1291,-3.7009,0.7869,0.0279,2400.0,2400.0,-0.3431,-1.2187,4.0578,15.7675 2019-06-03 15:44:46.340,138.6015,8726.915,6.1291,-3.7009,1.2503,0.165,2400.0,2400.0,-0.3431,-1.2217,4.0631,15.7675 2019-06-03 15:44:46.360,138.5838,8726.9727,6.124,-3.7167,0.8036,0.0136,2400.0,2400.0,-0.346,-1.2187,4.0644,15.746 2019-06-03 15:44:46.380,138.5485,8727.001,6.1169,-3.7342,1.1738,0.1086,2400.0,2400.0,-0.3489,-1.2157,4.0605,15.728 2019-06-03 15:44:46.400,138.5309,8727.0293,6.1183,-3.7359,1.3014,0.0921,2340.0,2340.0,-0.346,-1.2187,4.0711,15.7186 2019-06-03 15:44:46.420,138.5397,8727.0576,6.1155,-3.7444,0.784,0.1145,2340.0,2340.0,-0.3518,-1.2187,4.0552,15.7089 2019-06-03 15:44:46.440,138.6103,8727.0859,6.1155,-3.7444,1.2851,0.0656,2340.0,2340.0,-0.3548,-1.2037,4.0459,15.7089 2019-06-03 15:44:46.460,138.6015,8727.0293,6.1155,-3.7444,0.8953,0.1656,2340.0,2340.0,-0.3255,-1.1977,4.0565,15.7089 2019-06-03 15:44:46.480,138.5309,8727.0293,6.1124,-3.7562,1.1205,-0.0291,2340.0,2340.0,-0.3138,-1.1946,4.034,15.6902 2019-06-03 15:44:46.500,138.5573,8726.9434,6.1016,-3.774,1.1808,-0.0506,2340.0,2340.0,-0.2788,-1.1856,4.0711,15.6721 2019-06-03 15:44:46.520,138.3893,8726.9727,6.1016,-3.774,1.0018,0.199,2340.0,2340.0,-0.2963,-1.1886,4.0419,15.6721 2019-06-03 15:44:46.540,138.4424,8726.9727,6.1016,-3.774,0.9608,-0.0198,2340.0,2340.0,-0.2992,-1.1555,4.0313,15.6721 2019-06-03 15:44:46.560,138.4513,8727.0293,6.095,-3.7896,1.1531,0.2007,2340.0,2340.0,-0.3051,-1.1525,4.0419,15.654 2019-06-03 15:44:46.580,138.3982,8727.0576,6.0936,-3.8047,0.7977,0.0183,2340.0,2340.0,-0.3109,-1.1465,4.03,15.6382 2019-06-03 15:44:46.600,138.407,8727.0293,6.0831,-3.8159,0.7729,-0.0125,2340.0,2340.0,-0.3109,-1.1314,4.0432,15.6297 2019-06-03 15:44:46.620,138.3982,8727.0293,6.084,-3.8209,1.433,0.1358,2340.0,2340.0,-0.308,-1.1344,4.0207,15.6211 2019-06-03 15:44:46.640,138.4513,8727.0576,6.084,-3.8209,0.7744,0.0554,2340.0,2340.0,-0.3109,-1.1193,4.0141,15.6211 2019-06-03 15:44:46.660,138.469,8727.001,6.084,-3.8209,1.2378,0.1223,2340.0,2340.0,-0.3021,-1.1193,4.0234,15.6211 2019-06-03 15:44:46.680,138.3893,8727.8545,6.0733,-3.8354,0.7015,0.128,2340.0,2340.0,-0.3051,-1.0862,4.0154,15.6058 2019-06-03 15:44:46.700,138.3893,8728.708,6.0686,-3.842,0.7954,0.1168,2340.0,2340.0,-0.3051,-1.0892,4.0247,15.5904 2019-06-03 15:44:46.720,138.3893,8729.6475,6.0686,-3.842,1.1098,0.01,2340.0,2340.0,-0.3109,-1.0922,4.0194,15.5904 2019-06-03 15:44:46.740,138.4513,8731.0127,6.0686,-3.842,0.9682,0.1603,2340.0,2340.0,-0.3255,-1.0952,4.0168,15.5904 2019-06-03 15:44:46.760,138.4424,8731.9805,6.0636,-3.8465,0.8801,-0.0114,2340.0,2340.0,-0.3197,-1.0892,4.0207,15.577 2019-06-03 15:44:46.780,138.3982,8733.375,6.0534,-3.8534,1.0321,0.2241,2340.0,2340.0,-0.3168,-1.0892,4.0154,15.5645 2019-06-03 15:44:46.800,138.3893,8734.2852,6.0514,-3.8492,1.0654,0.2123,2340.0,2340.0,-0.3138,-1.0892,4.0128,15.5587 2019-06-03 15:44:46.820,138.407,8735.1963,6.0434,-3.8544,0.8557,-0.0169,2340.0,2340.0,-0.3226,-1.0892,4.0154,15.5527 2019-06-03 15:44:46.840,138.4424,8736.3057,6.0434,-3.8544,1.183,0.1476,2340.0,2340.0,-0.3314,-1.0892,4.0101,15.5527 2019-06-03 15:44:46.860,138.469,8736.249,6.0434,-3.8544,0.794,0.0585,2340.0,2340.0,-0.3285,-1.0922,4.026,15.5527 2019-06-03 15:44:46.880,138.3982,8736.1924,6.0372,-3.8471,1.2415,0.1436,2340.0,2340.0,-0.3197,-1.0892,4.0101,15.5427 2019-06-03 15:44:46.900,138.407,8736.1064,6.0256,-3.8445,1.2762,0.0961,2340.0,2340.0,-0.3197,-1.0741,4.0154,15.5325 2019-06-03 15:44:46.920,138.3893,8736.0781,6.0256,-3.8445,0.8742,0.1068,2340.0,2340.0,-0.3168,-1.0741,4.0154,15.5325 2019-06-03 15:44:46.940,138.4424,8736.0781,6.0256,-3.8445,1.1346,0.0288,2340.0,2340.0,-0.3168,-1.0711,4.0141,15.5325 2019-06-03 15:44:46.960,138.4513,8736.1348,6.0097,-3.8455,0.9966,0.2027,2340.0,2340.0,-0.308,-1.0681,4.0207,15.5217 2019-06-03 15:44:46.980,138.3982,8736.1631,6.0031,-3.8427,0.9989,-0.0009,2340.0,2340.0,-0.3021,-1.0741,4.0115,15.5099 2019-06-03 15:44:47.000,138.3982,8736.1924,5.9931,-3.8421,1.0632,-0.0084,2340.0,2340.0,-0.3138,-1.047,4.0154,15.5052 2019-06-03 15:44:47.020,138.407,8736.1064,5.9955,-3.8355,1.0776,0.2053,2340.0,2340.0,-0.3343,-1.056,4.0207,15.4999 2019-06-03 15:44:47.040,138.4601,8736.0781,5.9955,-3.8355,0.9082,-0.0084,2340.0,2340.0,-0.346,-1.05,4.0075,15.4999 2019-06-03 15:44:47.060,138.469,8735.9932,5.9955,-3.8355,1.1867,0.1687,2340.0,2340.0,-0.3343,-1.05,4.0247,15.4999 2019-06-03 15:44:47.080,138.3982,8735.9932,5.9805,-3.8327,0.8528,0.0563,2340.0,2340.0,-0.3314,-1.056,4.0049,15.49 2019-06-03 15:44:47.100,138.3982,8735.9072,5.9706,-3.8293,0.879,0.0452,2340.0,2340.0,-0.3109,-1.056,4.0181,15.4799 2019-06-03 15:44:47.120,138.2475,8735.9072,5.9706,-3.8293,1.2344,0.122,2340.0,2340.0,-0.3197,-1.056,4.0181,15.4799 2019-06-03 15:44:47.140,138.3184,8735.9355,5.9706,-3.8293,0.7167,0.121,2340.0,2340.0,-0.3226,-1.0621,4.0128,15.4799 2019-06-03 15:44:47.160,138.3096,8735.9639,5.9656,-3.8188,1.1816,0.019,2340.0,2340.0,-0.3255,-1.0621,4.0141,15.4702 2019-06-03 15:44:47.180,138.2563,8735.9932,5.956,-3.811,0.8898,0.1749,2340.0,2340.0,-0.3343,-1.0621,4.0101,15.4606 2019-06-03 15:44:47.200,138.2563,8736.0781,5.9515,-3.805,0.933,0.1631,2340.0,2340.0,-0.3285,-1.0651,4.0128,15.4557 2019-06-03 15:44:47.220,138.2563,8736.1064,5.9454,-3.8025,0.9652,-0.0176,2340.0,2340.0,-0.3168,-1.0681,4.0221,15.4503 2019-06-03 15:44:47.240,138.3096,8736.1631,5.9454,-3.8025,1.0155,0.2133,2340.0,2340.0,-0.3226,-1.0651,4.0115,15.4503 2019-06-03 15:44:47.260,138.3184,8736.1348,5.9454,-3.8025,0.9256,-0.0392,2340.0,2340.0,-0.3138,-1.0651,4.0207,15.4503 2019-06-03 15:44:47.280,138.2563,8736.1924,5.938,-3.7874,1.0769,0.1831,2340.0,2340.0,-0.3285,-1.0621,4.0128,15.4415 2019-06-03 15:44:47.300,138.2741,8736.0781,5.9317,-3.7747,1.0628,0.1492,2340.0,2340.0,-0.3255,-1.0621,4.0128,15.4328 2019-06-03 15:44:47.320,138.2475,8736.1064,5.9317,-3.7747,0.8702,0.0455,2340.0,2340.0,-0.3255,-1.0651,4.0194,15.4328 2019-06-03 15:44:47.340,138.3096,8736.1631,5.9317,-3.7747,1.0658,0.126,2340.0,2340.0,-0.3226,-1.0651,4.0128,15.4328 2019-06-03 15:44:47.360,138.3096,8736.1924,5.9209,-3.7599,0.8764,0.0828,2340.0,2340.0,-0.3168,-1.0651,4.0154,15.4232 2019-06-03 15:44:47.380,138.2563,8736.249,5.9121,-3.7451,1.1634,0.0481,2340.0,2340.0,-0.3197,-1.0651,4.0221,15.4144 2019-06-03 15:44:47.400,138.2475,8736.2773,5.9067,-3.7366,1.1194,-0.0004,2400.0,2340.0,-0.3314,-1.0651,4.0128,15.4099 2019-06-03 15:44:47.420,138.2563,8736.3057,5.905,-3.7273,1.0077,0.1619,2400.0,2340.0,-0.3285,-1.0651,4.0194,15.4063 2019-06-03 15:44:47.440,138.3184,8736.249,5.905,-3.7273,0.8594,0.0107,2400.0,2340.0,-0.3285,-1.0651,4.0168,15.4063 2019-06-03 15:44:47.460,138.3184,8736.2207,5.905,-3.7273,1.0832,0.1641,2400.0,2340.0,-0.3255,-1.0621,4.0274,15.4063 2019-06-03 15:44:47.480,138.2563,8737.0459,5.8927,-3.7109,0.9242,0.0078,2400.0,2340.0,-0.3285,-1.0621,4.0287,15.3967 2019-06-03 15:44:47.500,138.2652,8737.8145,5.8808,-3.6991,0.8912,0.0229,2400.0,2340.0,-0.3372,-1.0681,4.0128,15.3867 2019-06-03 15:44:47.520,138.1141,8738.668,5.8808,-3.6991,1.2141,0.116,2400.0,2340.0,-0.3255,-1.0651,4.0287,15.3867 2019-06-03 15:44:47.540,138.1764,8740.0059,5.8808,-3.6991,0.7415,0.102,2400.0,2340.0,-0.3372,-1.0771,4.0141,15.3867 2019-06-03 15:44:47.560,138.1586,8740.9453,5.8775,-3.684,1.0965,0.054,2400.0,2340.0,-0.3109,-1.0681,4.038,15.3754 2019-06-03 15:44:47.580,138.1141,8742.1973,5.87,-3.6706,0.9452,0.1213,2400.0,2340.0,-0.3285,-1.0741,4.03,15.3632 2019-06-03 15:44:47.600,138.1141,8743.0801,5.8654,-3.6657,0.8339,0.1526,2400.0,2340.0,-0.3285,-1.0741,4.0221,15.356 2019-06-03 15:44:47.620,138.1141,8743.9619,5.8584,-3.6613,1.0188,0.0041,2400.0,2340.0,-0.3343,-1.0741,4.0234,15.3489 2019-06-03 15:44:47.640,138.1675,8744.958,5.8584,-3.6613,1.0381,0.1943,2400.0,2340.0,-0.3314,-1.0832,4.03,15.3489 2019-06-03 15:44:47.660,138.1764,8744.873,5.8584,-3.6613,0.892,-0.0107,2400.0,2340.0,-0.3314,-1.0802,4.0406,15.3489 2019-06-03 15:44:47.680,138.1141,8744.9014,5.8528,-3.6467,1.1723,0.175,2400.0,2340.0,-0.3314,-1.1193,4.0538,15.3346 2019-06-03 15:44:47.700,138.1141,8744.8164,5.8481,-3.6355,1.0806,0.1533,2400.0,2340.0,-0.346,-1.1465,4.03,15.32 2019-06-03 15:44:47.720,138.1141,8744.8164,5.8481,-3.6355,0.8557,0.0233,2400.0,2340.0,-0.3285,-1.1434,4.0525,15.32 2019-06-03 15:44:47.740,138.1675,8744.8447,5.8481,-3.6355,1.2178,0.1345,2400.0,2340.0,-0.3343,-1.2247,4.0499,15.32 2019-06-03 15:44:47.760,138.1675,8744.9014,5.8394,-3.6246,0.7736,0.1013,2400.0,2340.0,-0.3109,-1.2247,4.0512,15.3044 2019-06-03 15:44:47.780,138.123,8744.9297,5.8306,-3.6131,1.0898,0.059,2400.0,2340.0,-0.3109,-1.2277,4.0538,15.2883 2019-06-03 15:44:47.800,138.1052,8744.9297,5.8294,-3.6073,1.0958,0.0616,2400.0,2340.0,-0.3255,-1.2578,4.038,15.2796 2019-06-03 15:44:47.820,138.1141,8744.9297,5.8269,-3.6005,0.9578,0.1351,2400.0,2340.0,-0.3197,-1.2548,4.0525,15.2714 2019-06-03 15:44:47.840,138.1675,8744.9297,5.8269,-3.6005,0.899,0.0059,2400.0,2340.0,-0.3255,-1.2638,4.0671,15.2714 2019-06-03 15:44:47.860,138.1764,8744.8447,5.8269,-3.6005,1.0994,0.1644,2400.0,2340.0,-0.3285,-1.2638,4.0552,15.2714 2019-06-03 15:44:47.880,138.1141,8744.7871,5.8217,-3.5979,0.801,-0.0091,2400.0,2340.0,-0.3343,-1.2638,4.0578,15.2526 2019-06-03 15:44:47.900,138.123,8744.7305,5.8134,-3.5988,0.7514,0.0367,2400.0,2340.0,-0.3343,-1.2759,4.0393,15.2338 2019-06-03 15:44:47.920,138.1052,8744.7305,5.8134,-3.5988,1.2444,0.1371,2400.0,2340.0,-0.3431,-1.2789,4.0512,15.2338 2019-06-03 15:44:47.940,138.1675,8744.7021,5.8134,-3.5988,0.6638,0.0553,2400.0,2340.0,-0.3431,-1.327,4.0618,15.2338 2019-06-03 15:44:47.960,138.1675,8744.7588,5.8124,-3.595,1.2189,0.0922,2400.0,2340.0,-0.3489,-1.321,4.0618,15.2142 2019-06-03 15:44:47.980,138.1052,8744.7871,5.8124,-3.595,0.8276,0.0945,2400.0,2340.0,-0.3431,-1.321,4.0631,15.2142 2019-06-03 15:44:48.000,138.1141,8744.7588,5.8072,-3.6016,0.7625,0.1261,2400.0,2340.0,-0.3343,-1.321,4.0538,15.184 2019-06-03 15:44:48.020,138.1141,8744.8164,5.8033,-3.6037,1.135,0.0234,2400.0,2340.0,-0.3372,-1.321,4.0512,15.1745 2019-06-03 15:44:48.040,138.1586,8744.8447,5.8033,-3.6037,0.9286,0.1673,2400.0,2340.0,-0.3314,-1.321,4.0605,15.1745 2019-06-03 15:44:48.060,138.1764,8744.7588,5.8033,-3.6037,1.0625,-0.0099,2400.0,2340.0,-0.3343,-1.318,4.0565,15.1745 2019-06-03 15:44:48.080,138.1052,8744.7305,5.8001,-3.6131,1.1231,0.1875,2400.0,2340.0,-0.3285,-1.327,4.0644,15.1532 2019-06-03 15:44:48.100,138.1141,8744.6455,5.8005,-3.6178,1.0573,0.196,2400.0,2340.0,-0.3372,-1.357,4.0459,15.1321 2019-06-03 15:44:48.120,138.1052,8744.6172,5.8005,-3.6178,0.8598,-0.0298,2400.0,2340.0,-0.3285,-1.354,4.0605,15.1321 2019-06-03 15:44:48.140,138.1675,8744.6172,5.8005,-3.6178,1.237,0.1865,2400.0,2340.0,-0.3431,-1.36,4.0684,15.1321 2019-06-03 15:44:48.160,138.1675,8744.6455,5.7971,-3.6322,0.7999,-0.0082,2400.0,2340.0,-0.3372,-1.354,4.0605,15.1103 2019-06-03 15:44:48.180,138.123,8744.6455,5.7885,-3.6502,1.2082,0.1351,2400.0,2340.0,-0.3372,-1.354,4.0644,15.087 2019-06-03 15:44:48.200,138.1141,8744.6738,5.7919,-3.655,1.1623,0.0963,2400.0,2340.0,-0.3314,-1.375,4.0591,15.0753 2019-06-03 15:44:48.220,138.1141,8744.7021,5.7862,-3.6631,0.7958,0.1014,2400.0,2340.0,-0.3226,-1.372,4.0591,15.0638 2019-06-03 15:44:48.240,138.1764,8744.8164,5.7862,-3.6631,1.2411,0.034,2400.0,2340.0,-0.3343,-1.375,4.0697,15.0638 2019-06-03 15:44:48.260,138.1764,8744.7871,5.7862,-3.6631,0.7847,0.1425,2400.0,2340.0,-0.3343,-1.375,4.0565,15.0638 2019-06-03 15:44:48.280,138.1141,8745.6416,5.7859,-3.6809,1.1497,-0.0151,2400.0,2340.0,-0.3343,-1.369,4.0671,15.0405 2019-06-03 15:44:48.300,138.123,8746.5244,5.7753,-3.704,1.0991,-0.0171,2400.0,2340.0,-0.3372,-1.3811,4.0671,15.0171 2019-06-03 15:44:48.320,138.0963,8747.4922,5.7753,-3.704,1.0247,0.1931,2400.0,2340.0,-0.3343,-1.375,4.0565,15.0171 2019-06-03 15:44:48.340,138.1675,8748.8867,5.7753,-3.704,0.9903,-0.0168,2400.0,2340.0,-0.3343,-1.3781,4.0803,15.0171 2019-06-03 15:44:48.360,138.1675,8749.8838,5.7691,-3.7244,1.1623,0.1689,2400.0,2340.0,-0.3665,-1.3811,4.0459,14.9947 2019-06-03 15:44:48.380,138.1141,8751.25,5.7691,-3.7244,0.8036,0.0101,2400.0,2340.0,-0.3431,-1.3781,4.0684,14.9947 2019-06-03 15:44:48.400,138.1141,8752.1035,5.7603,-3.7592,0.7337,0.0167,2340.0,2340.0,-0.3489,-1.3811,4.0644,14.9607 2019-06-03 15:44:48.420,138.1141,8753.0146,5.7598,-3.7675,1.1534,0.1223,2340.0,2340.0,-0.3401,-1.3841,4.0552,14.9497 2019-06-03 15:44:48.440,138.1675,8754.1533,5.7598,-3.7675,0.7795,0.0552,2340.0,2340.0,-0.3372,-1.3841,4.0697,14.9497 2019-06-03 15:44:48.460,138.1764,8754.0684,5.7598,-3.7675,1.2481,0.1018,2340.0,2340.0,-0.3343,-1.4081,4.0631,14.9497 2019-06-03 15:44:48.480,138.1052,8753.9824,5.7511,-3.7962,0.8417,0.1156,2340.0,2340.0,-0.3285,-1.375,4.0671,14.927 2019-06-03 15:44:48.500,138.1141,8753.9541,5.7488,-3.8208,0.7899,0.136,2340.0,2340.0,-0.3314,-1.375,4.0671,14.9052 2019-06-03 15:44:48.520,137.9805,8753.9824,5.7488,-3.8208,1.1856,0.0317,2340.0,2340.0,-0.3372,-1.3781,4.0472,14.9052 2019-06-03 15:44:48.540,138.0429,8754.04,5.7488,-3.8208,0.9253,0.1596,2340.0,2340.0,-0.3372,-1.375,4.0684,14.9052 2019-06-03 15:44:48.560,138.034,8754.0967,5.7464,-3.847,1.0336,0.0088,2340.0,2340.0,-0.3489,-1.375,4.0658,14.8835 2019-06-03 15:44:48.580,137.9805,8754.1816,5.7464,-3.847,1.0584,0.2,2340.0,2340.0,-0.3343,-1.3781,4.0684,14.8835 2019-06-03 15:44:48.600,137.9805,8754.2109,5.7397,-3.8958,1.0321,0.2104,2340.0,2340.0,-0.3255,-1.3781,4.0671,14.8531 2019-06-03 15:44:48.620,137.9805,8754.1533,5.7319,-3.9159,0.9034,-0.0247,2340.0,2340.0,-0.3168,-1.372,4.0485,14.8426 2019-06-03 15:44:48.640,138.0429,8754.1816,5.7319,-3.9159,1.159,0.1705,2340.0,2340.0,-0.3285,-1.375,4.0591,14.8426 2019-06-03 15:44:48.660,138.034,8754.1816,5.7319,-3.9159,0.7847,0.0386,2340.0,2340.0,-0.3314,-1.372,4.075,14.8426 2019-06-03 15:44:48.680,137.9805,8754.1533,5.7307,-3.9457,1.3017,0.1268,2340.0,2340.0,-0.3431,-1.3089,4.0591,14.8228 2019-06-03 15:44:48.700,137.9984,8754.04,5.7256,-3.9783,1.3432,0.1174,2340.0,2340.0,-0.3372,-1.315,4.0671,14.8032 2019-06-03 15:44:48.720,138.0963,8754.0684,5.7256,-3.9783,0.6893,0.0766,2340.0,2340.0,-0.3577,-1.3089,4.038,14.8032 2019-06-03 15:44:48.740,138.1675,8754.0107,5.7256,-3.9783,1.2796,0.0851,2340.0,2340.0,-0.3401,-1.2819,4.0763,14.8032 2019-06-03 15:44:48.760,138.1675,8754.04,5.7152,-4.0148,0.8687,0.1445,2340.0,2340.0,-0.3372,-1.2458,4.0618,14.783 2019-06-03 15:44:48.780,138.1052,8754.0684,5.7152,-4.0148,1.1712,0.0032,2340.0,2340.0,-0.3255,-1.1916,4.0565,14.783 2019-06-03 15:44:48.800,138.1052,8754.0967,5.7109,-4.0598,1.1841,0.0079,2340.0,2340.0,-0.3343,-1.1977,4.0565,14.7563 2019-06-03 15:44:48.820,138.1052,8754.0967,5.7126,-4.0707,0.8524,0.1573,2340.0,2340.0,-0.3343,-1.1736,4.0432,14.7479 2019-06-03 15:44:48.840,138.1586,8754.0684,5.7126,-4.0707,1.0225,-0.0179,2340.0,2340.0,-0.3343,-1.1585,4.0591,14.7479 2019-06-03 15:44:48.860,138.1764,8754.0684,5.7126,-4.0707,1.0277,0.1935,2340.0,2340.0,-0.3431,-1.1525,4.0605,14.7479 2019-06-03 15:44:48.880,138.1141,8754.7803,5.7065,-4.0963,0.9378,-0.0096,2340.0,2340.0,-0.3401,-1.1043,4.0525,14.7311 2019-06-03 15:44:48.900,138.1141,8755.5771,5.6978,-4.1213,0.8653,0.012,2340.0,2340.0,-0.3343,-1.1043,4.0605,14.7175 2019-06-03 15:44:48.920,137.9716,8756.5166,5.6978,-4.1213,1.2977,0.1324,2340.0,2340.0,-0.3401,-1.0982,4.038,14.7175 2019-06-03 15:44:48.940,138.034,8757.8555,5.6978,-4.1213,0.8021,0.0655,2340.0,2340.0,-0.3314,-1.0621,4.0591,14.7175 2019-06-03 15:44:48.960,138.034,8758.7666,5.6954,-4.136,1.1505,0.0993,2340.0,2340.0,-0.3372,-1.0228,4.0618,14.7042 2019-06-03 15:44:48.980,137.9716,8760.1045,5.6954,-4.136,0.8154,0.0804,2340.0,2340.0,-0.3314,-0.9957,4.0512,14.7042 2019-06-03 15:44:49.000,137.9805,8760.9873,5.692,-4.1591,0.8258,0.0864,2340.0,2340.0,-0.3314,-1.0047,4.0671,14.6837 2019-06-03 15:44:49.020,137.9895,8761.8701,5.6889,-4.1648,1.1608,0.0391,2340.0,2340.0,-0.3431,-0.9625,4.0353,14.6781 2019-06-03 15:44:49.040,138.0429,8762.9805,5.6889,-4.1648,0.8657,0.1561,2340.0,2340.0,-0.3431,-0.9534,4.0552,14.6781 2019-06-03 15:44:49.060,138.034,8762.9238,5.6889,-4.1648,1.0018,0.0085,2340.0,2340.0,-0.3548,-0.9625,4.0552,14.6781 2019-06-03 15:44:49.080,137.9805,8762.9238,5.6839,-4.1684,0.9415,0.1491,2340.0,2340.0,-0.3372,-0.9202,4.0591,14.669 2019-06-03 15:44:49.100,137.9895,8762.8379,5.6818,-4.1655,1.1146,0.154,2340.0,2340.0,-0.3401,-0.9202,4.0658,14.66 2019-06-03 15:44:49.120,137.9716,8762.8379,5.6818,-4.1655,0.8901,0.0059,2340.0,2340.0,-0.3431,-0.9292,4.0565,14.66 2019-06-03 15:44:49.140,138.034,8762.9238,5.6818,-4.1655,1.1475,0.168,2340.0,2340.0,-0.3285,-0.9232,4.0499,14.66 2019-06-03 15:44:49.160,138.034,8762.9521,5.6765,-4.1617,0.8805,0.0311,2340.0,2340.0,-0.3343,-0.9262,4.0591,14.6529 2019-06-03 15:44:49.180,137.9805,8762.9238,5.6765,-4.1617,1.1194,0.1398,2340.0,2340.0,-0.3314,-0.9232,4.0538,14.6529 2019-06-03 15:44:49.200,137.9716,8762.9521,5.6707,-4.1457,1.2185,0.1194,2340.0,2340.0,-0.3343,-0.9232,4.0711,14.6415 2019-06-03 15:44:49.220,137.9895,8762.9238,5.6676,-4.1425,0.7895,0.0923,2340.0,2340.0,-0.3343,-0.9232,4.0472,14.638 2019-06-03 15:44:49.240,138.0429,8762.9805,5.6676,-4.1425,1.1864,0.0647,2340.0,2340.0,-0.3168,-0.9232,4.0552,14.638 2019-06-03 15:44:49.260,138.034,8762.9805,5.6676,-4.1425,0.9012,0.1509,2340.0,2340.0,-0.3343,-0.9232,4.0565,14.638 2019-06-03 15:44:49.280,137.9805,8762.9805,5.6641,-4.123,1.051,0.014,2340.0,2340.0,-0.3372,-0.8869,4.0671,14.6319 2019-06-03 15:44:49.300,137.9895,8762.8379,5.6566,-4.1059,1.0791,0.0002,2340.0,2340.0,-0.3577,-0.8839,4.0578,14.6261 2019-06-03 15:44:49.320,137.9716,8762.7813,5.6566,-4.1059,1.0292,0.1844,2340.0,2340.0,-0.3577,-0.896,4.0591,14.6261 2019-06-03 15:44:49.340,138.034,8762.8672,5.6566,-4.1059,0.9223,-0.0107,2340.0,2340.0,-0.3518,-0.896,4.0485,14.6261 2019-06-03 15:44:49.360,138.0251,8762.9521,5.6538,-4.0827,1.0044,0.1851,2340.0,2340.0,-0.3343,-0.896,4.0658,14.62 2019-06-03 15:44:49.380,137.9805,8762.9805,5.6538,-4.0827,0.8805,0.0046,2340.0,2340.0,-0.3343,-0.893,4.0618,14.62 2019-06-03 15:44:49.400,137.9895,8762.9521,5.6477,-4.0415,0.8779,0.0389,2400.0,2400.0,-0.3343,-0.896,4.0658,14.6095 2019-06-03 15:44:49.420,137.9805,8762.9521,5.6492,-4.025,1.1649,0.1255,2400.0,2400.0,-0.346,-0.899,4.0432,14.6063 2019-06-03 15:44:49.440,138.034,8762.9238,5.6492,-4.025,0.8383,0.0778,2400.0,2400.0,-0.3314,-0.896,4.0525,14.6063 2019-06-03 15:44:49.460,138.0429,8762.9238,5.6492,-4.025,1.1634,0.0632,2400.0,2400.0,-0.3401,-0.896,4.0658,14.6063 2019-06-03 15:44:49.480,137.9805,8762.9805,5.6429,-3.9956,0.8506,0.1564,2400.0,2400.0,-0.3372,-0.9021,4.0618,14.5981 2019-06-03 15:44:49.500,137.9805,8762.9238,5.643,-3.9597,0.9097,0.1767,2400.0,2400.0,-0.3343,-0.896,4.0565,14.591 2019-06-03 15:44:49.520,137.8377,8762.9238,5.643,-3.9597,1.0055,0.0011,2400.0,2400.0,-0.3285,-0.9141,4.0578,14.591 2019-06-03 15:44:49.540,137.8913,8762.8955,5.643,-3.9597,0.9863,0.1739,2400.0,2400.0,-0.3109,-0.9111,4.0499,14.591 2019-06-03 15:44:49.560,137.8913,8762.9238,5.6386,-3.9256,1.0074,-0.0133,2400.0,2400.0,-0.3109,-0.9111,4.0671,14.5824 2019-06-03 15:44:49.580,137.8466,8762.9238,5.632,-3.8921,0.9977,0.1716,2400.0,2400.0,-0.3255,-0.9081,4.0538,14.5709 2019-06-03 15:44:49.600,137.8288,8762.9521,5.6345,-3.8721,1.0843,0.1912,2400.0,2400.0,-0.3285,-0.9081,4.0618,14.5659 2019-06-03 15:44:49.620,137.8377,8762.9238,5.6295,-3.8574,0.9005,0.0306,2400.0,2400.0,-0.3489,-0.9141,4.0538,14.5601 2019-06-03 15:44:49.640,137.8913,8763.0088,5.6295,-3.8574,1.0806,0.121,2400.0,2400.0,-0.346,-0.9051,4.0538,14.5601 2019-06-03 15:44:49.660,137.9002,8762.9521,5.6295,-3.8574,0.9101,0.0885,2400.0,2400.0,-0.3489,-0.9081,4.0671,14.5601 2019-06-03 15:44:49.680,137.8288,8763.75,5.6271,-3.8201,1.0865,0.0488,2400.0,2400.0,-0.3431,-0.899,4.0605,14.5487 2019-06-03 15:44:49.700,137.8466,8764.6045,5.6224,-3.7877,1.1734,0.0366,2400.0,2400.0,-0.3343,-0.9021,4.0578,14.535 2019-06-03 15:44:49.720,137.8288,8765.5439,5.6224,-3.7877,0.9131,0.1564,2400.0,2400.0,-0.3226,-0.9323,4.0658,14.535 2019-06-03 15:44:49.740,137.8913,8766.9111,5.6224,-3.7877,0.9319,0.0044,2400.0,2400.0,-0.3255,-0.9262,4.0538,14.535 2019-06-03 15:44:49.760,137.8824,8767.9082,5.6158,-3.7562,1.0347,0.1454,2400.0,2400.0,-0.3343,-0.9292,4.0565,14.5204 2019-06-03 15:44:49.780,137.8288,8769.3604,5.6158,-3.7562,0.9286,0.0162,2400.0,2400.0,-0.3548,-0.9323,4.0525,14.5204 2019-06-03 15:44:49.800,137.8288,8770.2715,5.6085,-3.7015,0.9841,0.0082,2400.0,2400.0,-0.3431,-0.9292,4.0658,14.4981 2019-06-03 15:44:49.820,137.8377,8771.1826,5.6116,-3.6833,1.0795,0.1738,2400.0,2400.0,-0.346,-0.9353,4.0711,14.4907 2019-06-03 15:44:49.840,137.8913,8772.2373,5.6116,-3.6833,0.8143,0.0503,2400.0,2400.0,-0.3372,-0.9323,4.0485,14.4907 2019-06-03 15:44:49.860,137.9092,8772.123,5.6116,-3.6833,1.1224,0.0933,2400.0,2400.0,-0.3255,-0.9292,4.0697,14.4907 2019-06-03 15:44:49.880,137.8377,8772.1514,5.6026,-3.6529,0.9371,0.0963,2400.0,2400.0,-0.346,-0.9564,4.0512,14.4716 2019-06-03 15:44:49.900,137.8466,8772.123,5.5995,-3.6143,0.9057,0.1031,2400.0,2400.0,-0.3343,-0.9504,4.0644,14.4543 2019-06-03 15:44:49.920,137.8288,8772.1514,5.5995,-3.6143,1.0395,0.0466,2400.0,2400.0,-0.3489,-0.9504,4.0671,14.4543 2019-06-03 15:44:49.940,137.8913,8772.208,5.5995,-3.6143,0.9682,0.1476,2400.0,2400.0,-0.3431,-0.9504,4.0578,14.4543 2019-06-03 15:44:49.960,137.8913,8772.208,5.597,-3.5802,1.0817,-0.0167,2400.0,2400.0,-0.3401,-0.9504,4.0578,14.4349 2019-06-03 15:44:49.980,137.8377,8772.1797,5.597,-3.5802,0.9656,0.17,2400.0,2400.0,-0.3401,-0.9564,4.0578,14.4349 2019-06-03 15:44:50.000,137.8377,8772.1797,5.5915,-3.5284,1.0935,0.1521,2400.0,2400.0,-0.3285,-0.9534,4.0658,14.4016 2019-06-03 15:44:50.020,137.8377,8772.1797,5.5864,-3.515,0.828,0.0056,2400.0,2400.0,-0.3372,-0.9534,4.0671,14.3908 2019-06-03 15:44:50.040,137.8913,8772.2656,5.5864,-3.515,1.2522,0.1472,2400.0,2400.0,-0.3548,-0.9564,4.0472,14.3908 2019-06-03 15:44:50.060,137.8913,8772.208,5.5864,-3.515,0.7858,0.0289,2400.0,2400.0,-0.3431,-0.9504,4.0658,14.3908 2019-06-03 15:44:50.080,137.8377,8772.208,5.5851,-3.4802,1.1202,0.092,2400.0,2400.0,-0.3548,-0.9504,4.0525,14.3683 2019-06-03 15:44:50.100,137.8377,8772.0947,5.5811,-3.4507,1.1083,0.0739,2400.0,2400.0,-0.3314,-0.9534,4.0618,14.3445 2019-06-03 15:44:50.120,137.8288,8772.0371,5.5811,-3.4507,0.9267,0.1415,2400.0,2400.0,-0.3285,-0.9534,4.0658,14.3445 2019-06-03 15:44:50.140,137.8913,8772.123,5.5811,-3.4507,1.1128,0.0186,2400.0,2400.0,-0.3197,-0.9504,4.0591,14.3445 2019-06-03 15:44:50.160,137.8824,8772.1797,5.5724,-3.4228,0.929,0.1726,2400.0,2400.0,-0.3168,-0.9474,4.0631,14.3212 2019-06-03 15:44:50.180,137.8288,8772.2656,5.5724,-3.4228,1.0203,-0.0038,2400.0,2400.0,-0.3314,-0.9504,4.0618,14.3212 2019-06-03 15:44:50.200,137.8377,8772.2656,5.565,-3.3767,0.926,-0.0285,2400.0,2400.0,-0.3285,-0.9504,4.0525,14.2826 2019-06-03 15:44:50.220,137.8377,8772.2373,5.5678,-3.3588,1.1331,0.1953,2400.0,2400.0,-0.3314,-0.9534,4.0711,14.2702 2019-06-03 15:44:50.240,137.9002,8772.208,5.5678,-3.3588,0.74,-0.0184,2400.0,2400.0,-0.346,-0.9504,4.0538,14.2702 2019-06-03 15:44:50.260,137.9092,8772.1797,5.5678,-3.3588,1.2156,0.1881,2400.0,2400.0,-0.3372,-0.9504,4.0578,14.2702 2019-06-03 15:44:50.280,137.8466,8772.1514,5.5585,-3.3307,0.7507,0.0517,2400.0,2400.0,-0.346,-0.9655,4.0538,14.2453 2019-06-03 15:44:50.300,137.8377,8772.0664,5.5526,-3.3022,0.7352,0.0591,2400.0,2400.0,-0.3314,-0.9595,4.0578,14.2201 2019-06-03 15:44:50.320,137.8288,8772.0371,5.5526,-3.3022,1.1949,0.0797,2400.0,2400.0,-0.3343,-0.9564,4.0684,14.2201 2019-06-03 15:44:50.340,137.8824,8772.0664,5.5526,-3.3022,0.8709,0.0963,2400.0,2400.0,-0.3401,-0.9655,4.0605,14.2201 2019-06-03 15:44:50.360,137.8913,8772.0664,5.5518,-3.2723,1.1586,0.0652,2400.0,2400.0,-0.3401,-0.9655,4.0485,14.1952 2019-06-03 15:44:50.380,137.8377,8772.0664,5.5518,-3.2723,0.9145,0.1855,2400.0,2400.0,-0.3343,-0.9927,4.0737,14.1952 2019-06-03 15:44:50.400,137.8466,8772.0371,5.541,-3.2328,0.8413,0.1682,2340.0,2340.0,-0.3431,-0.9927,4.0525,14.1567 2019-06-03 15:44:50.420,137.8466,8772.0371,5.5338,-3.2245,0.9523,-0.0381,2340.0,2340.0,-0.3314,-1.0409,4.0724,14.1439 2019-06-03 15:44:50.440,137.8913,8772.0947,5.5338,-3.2245,1.1346,0.1697,2340.0,2340.0,-0.3489,-1.0832,4.0552,14.1439 2019-06-03 15:44:50.460,137.8913,8772.1514,5.5338,-3.2245,0.9186,-0.0111,2340.0,2340.0,-0.3314,-1.1224,4.0605,14.1439 2019-06-03 15:44:50.480,137.8288,8772.208,5.53,-3.1976,1.1664,0.2103,2340.0,2340.0,-0.3343,-1.2338,4.0777,14.1183 2019-06-03 15:44:50.500,137.8466,8772.0947,5.5285,-3.1764,1.2119,0.1774,2340.0,2340.0,-0.3314,-1.2308,4.0644,14.0923 2019-06-03 15:44:50.520,137.8288,8772.0664,5.5285,-3.1764,0.7422,0.0314,2340.0,2340.0,-0.3431,-1.2308,4.0658,14.0923 2019-06-03 15:44:50.540,137.9002,8772.0664,5.5285,-3.1764,1.2381,0.0848,2340.0,2340.0,-0.3431,-1.2548,4.0578,14.0923 2019-06-03 15:44:50.560,137.8913,8772.1797,5.519,-3.1642,0.7988,0.109,2340.0,2340.0,-0.3285,-1.2518,4.0565,14.0653 2019-06-03 15:44:50.580,137.8288,8772.123,5.519,-3.1642,1.2078,0.0878,2340.0,2340.0,-0.3314,-1.2548,4.0684,14.0653 2019-06-03 15:44:50.600,137.8288,8772.1514,5.5134,-3.1469,1.1583,0.0439,2340.0,2340.0,-0.3343,-1.2578,4.0631,14.0276 2019-06-03 15:44:50.620,137.8377,8772.123,5.5123,-3.1407,0.9312,0.1521,2340.0,2340.0,-0.3343,-1.2578,4.0644,14.0159 2019-06-03 15:44:50.640,137.8913,8772.123,5.5123,-3.1407,1.0122,-0.0082,2340.0,2340.0,-0.3372,-1.2729,4.0684,14.0159 2019-06-03 15:44:50.660,137.9002,8772.0371,5.5123,-3.1407,1.0247,0.1652,2340.0,2340.0,-0.3255,-1.2759,4.0552,14.0159 2019-06-03 15:44:50.680,137.8466,8772.8066,5.5048,-3.1399,0.9552,0.0002,2340.0,2340.0,-0.3285,-1.2759,4.079,13.9899 2019-06-03 15:44:50.700,137.8288,8773.5762,5.4987,-3.1464,0.8409,-0.0015,2340.0,2340.0,-0.3401,-1.2729,4.0605,13.964 2019-06-03 15:44:50.720,137.6945,8774.5156,5.4987,-3.1464,1.1919,0.1779,2340.0,2340.0,-0.3372,-1.2729,4.0724,13.964 2019-06-03 15:44:50.740,137.7572,8775.8545,5.4987,-3.1464,0.7855,0.0309,2340.0,2340.0,-0.346,-1.2729,4.0552,13.964 2019-06-03 15:44:50.760,137.7483,8776.7666,5.4975,-3.1489,1.1642,0.1287,2340.0,2340.0,-0.3138,-1.2759,4.0631,13.9384 2019-06-03 15:44:50.780,137.7035,8778.0771,5.4975,-3.1489,0.7925,0.0576,2340.0,2340.0,-0.3255,-1.2699,4.0684,13.9384 2019-06-03 15:44:50.800,137.7035,8778.9023,5.4875,-3.1643,0.7958,0.0778,2340.0,2340.0,-0.3255,-1.2759,4.0658,13.9005 2019-06-03 15:44:50.820,137.7035,8779.7285,5.4834,-3.1712,1.2104,0.0981,2340.0,2340.0,-0.3314,-1.2699,4.0578,13.8888 2019-06-03 15:44:50.840,137.7572,8780.7832,5.4834,-3.1712,0.8313,0.1442,2340.0,2340.0,-0.3314,-1.2879,4.0684,13.8888 2019-06-03 15:44:50.860,137.7572,8780.6973,5.4834,-3.1712,1.1364,0.0122,2340.0,2340.0,-0.3226,-1.2849,4.0552,13.8888 2019-06-03 15:44:50.880,137.6945,8780.7549,5.4771,-3.188,0.926,0.1793,2340.0,2340.0,-0.3168,-1.2819,4.083,13.8646 2019-06-03 15:44:50.900,137.7125,8780.6689,5.477,-3.2003,1.014,0.1866,2340.0,2340.0,-0.3343,-1.2849,4.0591,13.8435 2019-06-03 15:44:50.920,137.5421,8780.6689,5.477,-3.2003,0.9756,0.0094,2340.0,2340.0,-0.3314,-1.2849,4.0578,13.8435 2019-06-03 15:44:50.940,137.6139,8780.6123,5.477,-3.2003,1.1616,0.1926,2340.0,2340.0,-0.346,-1.2879,4.0737,13.8435 2019-06-03 15:44:50.960,137.6049,8780.6689,5.4716,-3.2184,0.8102,0.0273,2340.0,2340.0,-0.3401,-1.2849,4.0671,13.8231 2019-06-03 15:44:50.980,137.56,8780.6689,5.4622,-3.2435,1.1179,0.1234,2340.0,2340.0,-0.3314,-1.2939,4.0684,13.8023 2019-06-03 15:44:51.000,137.551,8780.7256,5.4653,-3.2499,1.1072,0.0965,2340.0,2340.0,-0.3314,-1.321,4.0671,13.793 2019-06-03 15:44:51.020,137.569,8780.7256,5.4608,-3.2612,0.7932,0.1003,2340.0,2340.0,-0.3226,-1.324,4.0565,13.7844 2019-06-03 15:44:51.040,137.6049,8780.7256,5.4608,-3.2612,1.1176,0.0845,2340.0,2340.0,-0.3226,-1.321,4.083,13.7844 2019-06-03 15:44:51.060,137.6228,8780.6973,5.4608,-3.2612,0.8287,0.1252,2340.0,2340.0,-0.3255,-1.321,4.0658,13.7844 2019-06-03 15:44:51.080,137.569,8780.7256,5.4567,-3.2835,1.1176,-0.0036,2340.0,2340.0,-0.3226,-1.318,4.0684,13.7669 2019-06-03 15:44:51.100,137.56,8780.6689,5.4485,-3.3131,1.0418,-0.0226,2340.0,2340.0,-0.3401,-1.321,4.0512,13.7515 2019-06-03 15:44:51.120,137.5421,8780.7256,5.4485,-3.3131,0.9848,0.1766,2340.0,2340.0,-0.3197,-1.318,4.0618,13.7515 2019-06-03 15:44:51.140,137.6139,8780.8115,5.4485,-3.3131,0.973,0.0451,2340.0,2340.0,-0.3285,-1.321,4.0803,13.7515 2019-06-03 15:44:51.160,137.5959,8780.8965,5.4405,-3.3401,1.051,0.1672,2340.0,2340.0,-0.3226,-1.318,4.0671,13.7388 2019-06-03 15:44:51.180,137.551,8780.9258,5.4405,-3.3401,0.9156,0.0299,2340.0,2340.0,-0.3255,-1.318,4.075,13.7388 2019-06-03 15:44:51.200,137.56,8780.9541,5.4275,-3.3862,0.7895,0.0376,2340.0,2340.0,-0.3372,-1.321,4.0658,13.72 2019-06-03 15:44:51.220,137.56,8780.8682,5.4246,-3.3994,1.2004,0.1059,2340.0,2340.0,-0.3255,-1.321,4.0658,13.715 2019-06-03 15:44:51.240,137.6049,8780.8398,5.4246,-3.3994,0.8957,0.1073,2340.0,2340.0,-0.3314,-1.318,4.0684,13.715 2019-06-03 15:44:51.260,137.6139,8780.8115,5.4246,-3.3994,1.0436,0.0644,2340.0,2340.0,-0.3285,-1.321,4.0684,13.715 2019-06-03 15:44:51.280,137.5421,8780.7549,5.4152,-3.4325,0.9312,0.139,2340.0,2340.0,-0.3343,-1.2939,4.0644,13.7052 2019-06-03 15:44:51.300,137.56,8780.6973,5.4096,-3.4614,0.9364,0.164,2340.0,2340.0,-0.346,-1.3059,4.0631,13.6977 2019-06-03 15:44:51.320,137.3982,8780.6689,5.4096,-3.4614,1.0477,-0.0018,2340.0,2340.0,-0.3372,-1.3029,4.0644,13.6977 2019-06-03 15:44:51.340,137.4702,8780.6123,5.4096,-3.4614,1.0913,0.1666,2340.0,2340.0,-0.3285,-1.2999,4.0896,13.6977 2019-06-03 15:44:51.360,137.4791,8780.6123,5.4014,-3.4919,0.9282,0.0161,2340.0,2340.0,-0.3401,-1.3029,4.0605,13.6909 2019-06-03 15:44:51.380,137.4162,8780.6123,5.4014,-3.4919,1.1179,0.1495,2340.0,2340.0,-0.3285,-1.3029,4.0658,13.6909 2019-06-03 15:44:51.400,137.4162,8780.6689,5.3907,-3.5396,1.1745,0.1717,2400.0,2340.0,-0.3401,-1.3029,4.0644,13.6839 2019-06-03 15:44:51.420,137.4252,8780.6689,5.3824,-3.5582,0.7984,0.0313,2400.0,2340.0,-0.3168,-1.3029,4.0644,13.6814 2019-06-03 15:44:51.440,137.4702,8780.7256,5.3824,-3.5582,1.2248,0.1277,2400.0,2340.0,-0.3197,-1.3029,4.0697,13.6814 2019-06-03 15:44:51.460,137.4702,8780.7256,5.3824,-3.5582,0.8498,0.1063,2400.0,2340.0,-0.3255,-1.2969,4.0737,13.6814 2019-06-03 15:44:51.480,137.4162,8780.6689,5.3791,-3.5883,1.1146,0.0447,2400.0,2340.0,-0.3285,-1.3029,4.0671,13.6782 2019-06-03 15:44:51.500,137.4252,8780.6123,5.3702,-3.6197,1.1475,0.0744,2400.0,2340.0,-0.3401,-1.318,4.075,13.6757 2019-06-03 15:44:51.520,137.272,8780.6123,5.3702,-3.6197,0.9253,0.1449,2400.0,2340.0,-0.3343,-1.318,4.0644,13.6757 2019-06-03 15:44:51.540,137.3261,8780.6973,5.3702,-3.6197,0.916,-0.0139,2400.0,2340.0,-0.3343,-1.333,4.0869,13.6757 2019-06-03 15:44:51.560,137.3261,8780.6973,5.359,-3.651,0.96,0.1979,2400.0,2340.0,-0.3372,-1.342,4.0644,13.6737 2019-06-03 15:44:51.580,137.281,8780.7832,5.359,-3.651,0.9253,-0.0073,2400.0,2340.0,-0.3255,-1.3089,4.0644,13.6737 2019-06-03 15:44:51.600,137.263,8780.8115,5.3484,-3.6969,0.8221,0.0423,2400.0,2340.0,-0.3314,-1.3089,4.0737,13.6733 2019-06-03 15:44:51.620,137.281,8780.7549,5.3478,-3.7073,1.1734,0.1416,2400.0,2340.0,-0.3314,-1.3059,4.0644,13.6739 2019-06-03 15:44:51.640,137.3261,8780.7832,5.3478,-3.7073,0.7773,0.046,2400.0,2340.0,-0.3343,-1.3089,4.0816,13.6739 2019-06-03 15:44:51.660,137.3441,8780.7832,5.3478,-3.7073,1.2374,0.0895,2400.0,2340.0,-0.3489,-1.333,4.0684,13.6739 2019-06-03 15:44:51.680,137.263,8781.666,5.3354,-3.7385,0.8372,0.0921,2400.0,2340.0,-0.3372,-1.333,4.0644,13.6739 2019-06-03 15:44:51.700,137.272,8782.4922,5.3304,-3.762,0.8147,0.1524,2400.0,2340.0,-0.3226,-1.33,4.0777,13.6749 2019-06-03 15:44:51.720,137.272,8783.4893,5.3304,-3.762,1.1076,0.0378,2400.0,2340.0,-0.3138,-1.33,4.0538,13.6749 2019-06-03 15:44:51.740,137.3261,8784.8291,5.3304,-3.762,1.0125,0.1752,2400.0,2340.0,-0.3285,-1.33,4.0816,13.6749 2019-06-03 15:44:51.760,137.3441,8785.6836,5.3233,-3.7892,0.9671,-0.0194,2400.0,2340.0,-0.3694,-1.327,4.0671,13.6745 2019-06-03 15:44:51.780,137.281,8787.0225,5.3233,-3.7892,1.0769,0.1841,2400.0,2340.0,-0.3635,-1.333,4.0737,13.6745 2019-06-03 15:44:51.800,137.272,8787.9346,5.3146,-3.8246,1.0588,0.1927,2400.0,2340.0,-0.3694,-1.33,4.079,13.6744 2019-06-03 15:44:51.820,137.29,8788.8467,5.306,-3.8411,0.7152,0.0038,2400.0,2340.0,-0.3606,-1.33,4.0618,13.6734 2019-06-03 15:44:51.840,137.3261,8789.9287,5.306,-3.8411,1.2178,0.1638,2400.0,2340.0,-0.3518,-1.33,4.0763,13.6734 2019-06-03 15:44:51.860,137.3261,8789.9004,5.306,-3.8411,0.7159,0.0012,2400.0,2340.0,-0.3577,-1.33,4.083,13.6734 2019-06-03 15:44:51.880,137.272,8789.9004,5.3048,-3.86,1.1538,0.1238,2400.0,2340.0,-0.3577,-1.324,4.0658,13.6722 2019-06-03 15:44:51.900,137.281,8789.8154,5.296,-3.8854,1.2304,0.1124,2400.0,2340.0,-0.3518,-1.333,4.0816,13.671 2019-06-03 15:44:51.920,137.263,8789.8154,5.296,-3.8854,0.7492,0.1134,2400.0,2340.0,-0.3518,-1.33,4.0565,13.671 2019-06-03 15:44:51.940,137.3351,8789.8721,5.296,-3.8854,1.2581,0.0224,2400.0,2340.0,-0.346,-1.33,4.0697,13.671 2019-06-03 15:44:51.960,137.3171,8789.9287,5.2843,-3.9109,0.8761,0.1491,2400.0,2340.0,-0.3489,-1.33,4.0816,13.6683 2019-06-03 15:44:51.980,137.272,8789.9287,5.2843,-3.9109,1.1527,-0.0125,2400.0,2340.0,-0.346,-1.33,4.0658,13.6683 2019-06-03 15:44:52.000,137.272,8789.958,5.2776,-3.9456,1.0244,-0.0238,2400.0,2340.0,-0.346,-1.327,4.075,13.6596 2019-06-03 15:44:52.020,137.281,8789.9004,5.2804,-3.9528,1.0085,0.1811,2400.0,2340.0,-0.3518,-1.327,4.0697,13.6567 2019-06-03 15:44:52.040,137.3351,8789.8154,5.2804,-3.9528,0.9434,-0.0238,2400.0,2340.0,-0.346,-1.33,4.079,13.6567 2019-06-03 15:44:52.060,137.3351,8789.7861,5.2804,-3.9528,1.2245,0.1837,2400.0,2340.0,-0.3723,-1.327,4.0737,13.6567 2019-06-03 15:44:52.080,137.272,8789.8438,5.2703,-3.9759,0.8291,0.0381,2400.0,2340.0,-0.3577,-1.33,4.0644,13.6495 2019-06-03 15:44:52.100,137.281,8789.8438,5.2613,-3.9957,0.8287,0.0339,2400.0,2340.0,-0.3518,-1.327,4.075,13.6414 2019-06-03 15:44:52.120,137.263,8789.8721,5.2613,-3.9957,1.183,0.1274,2400.0,2340.0,-0.3401,-1.33,4.083,13.6414 2019-06-03 15:44:52.140,137.3261,8789.958,5.2613,-3.9957,0.8543,0.075,2400.0,2340.0,-0.3518,-1.327,4.0671,13.6414 2019-06-03 15:44:52.160,137.3171,8789.9863,5.2603,-4.0096,1.233,0.0939,2400.0,2340.0,-0.3635,-1.327,4.075,13.6322 2019-06-03 15:44:52.180,137.281,8789.958,5.2603,-4.0096,0.842,0.137,2400.0,2340.0,-0.3635,-1.33,4.0631,13.6322 2019-06-03 15:44:52.200,137.272,8789.9863,5.2521,-4.0382,0.9038,0.129,2400.0,2340.0,-0.3548,-1.327,4.0856,13.6146 2019-06-03 15:44:52.220,137.281,8790.0146,5.2476,-4.0496,1.1272,0.0025,2400.0,2340.0,-0.3577,-1.327,4.0777,13.6079 2019-06-03 15:44:52.240,137.3261,8790.0146,5.2476,-4.0496,1.0011,0.1634,2400.0,2340.0,-0.3401,-1.33,4.0737,13.6079 2019-06-03 15:44:52.260,137.3351,8789.9863,5.2476,-4.0496,0.9175,0.0076,2400.0,2340.0,-0.346,-1.327,4.075,13.6079 2019-06-03 15:44:52.280,137.272,8789.9287,5.2432,-4.0601,1.0355,0.1902,2400.0,2340.0,-0.3518,-1.327,4.0658,13.5953 2019-06-03 15:44:52.300,137.272,8789.8721,5.2391,-4.0744,1.1575,0.1924,2400.0,2340.0,-0.3518,-1.327,4.075,13.5809 2019-06-03 15:44:52.320,137.272,8789.8154,5.2391,-4.0744,0.7825,0.007,2400.0,2340.0,-0.3577,-1.327,4.0816,13.5809 2019-06-03 15:44:52.340,137.3351,8789.8154,5.2391,-4.0744,1.2422,0.1284,2400.0,2340.0,-0.3489,-1.327,4.0724,13.5809 2019-06-03 15:44:52.360,137.3261,8789.8721,5.2318,-4.0921,0.8032,0.0912,2400.0,2340.0,-0.3489,-1.33,4.0803,13.5643 2019-06-03 15:44:52.380,137.281,8789.9004,5.2254,-4.1088,1.1438,0.097,2400.0,2340.0,-0.346,-1.324,4.0684,13.5471 2019-06-03 15:44:52.400,137.281,8789.9287,5.2254,-4.1145,1.2034,0.0588,2340.0,2340.0,-0.346,-1.33,4.0803,13.5388 2019-06-03 15:44:52.420,137.263,8789.9287,5.2245,-4.1214,0.8594,0.1243,2340.0,2340.0,-0.3752,-1.33,4.0658,13.5295 2019-06-03 15:44:52.440,137.3441,8789.958,5.2245,-4.1214,1.1165,0.0215,2340.0,2340.0,-0.3577,-1.327,4.0763,13.5295 2019-06-03 15:44:52.460,137.3441,8789.9004,5.2245,-4.1214,0.9482,0.1619,2340.0,2340.0,-0.3752,-1.327,4.079,13.5295 2019-06-03 15:44:52.480,137.272,8789.9287,5.2189,-4.1379,0.9352,0.0147,2340.0,2340.0,-0.3577,-1.327,4.079,13.5086 2019-06-03 15:44:52.500,137.281,8789.8721,5.2083,-4.1576,1.0,0.0066,2340.0,2340.0,-0.3665,-1.321,4.0671,13.4867 2019-06-03 15:44:52.520,137.263,8789.9004,5.2083,-4.1576,1.0259,0.1785,2340.0,2340.0,-0.3489,-1.321,4.083,13.4867 2019-06-03 15:44:52.540,137.3261,8789.9287,5.2083,-4.1576,0.8232,0.025,2340.0,2340.0,-0.346,-1.2669,4.0697,13.4867 2019-06-03 15:44:52.560,137.3171,8789.958,5.2052,-4.1697,1.1623,0.1464,2340.0,2340.0,-0.3431,-1.2428,4.0843,13.4637 2019-06-03 15:44:52.580,137.272,8789.9004,5.2052,-4.1697,0.8069,0.0545,2340.0,2340.0,-0.3343,-1.1525,4.0856,13.4637 2019-06-03 15:44:52.600,137.281,8789.8721,5.1945,-4.1907,0.8709,0.0794,2340.0,2340.0,-0.3343,-1.0741,4.0816,13.4288 2019-06-03 15:44:52.620,137.281,8789.8438,5.1933,-4.1948,1.2282,0.0753,2340.0,2340.0,-0.3489,-1.0379,4.079,13.4171 2019-06-03 15:44:52.640,137.3261,8789.8721,5.1933,-4.1948,0.8923,0.1421,2340.0,2340.0,-0.3314,-0.8809,4.0737,13.4171 2019-06-03 15:44:52.660,137.3351,8789.8438,5.1933,-4.1948,1.0884,0.0448,2340.0,2340.0,-0.3255,-0.8386,4.0883,13.4171 2019-06-03 15:44:52.680,137.272,8789.8721,5.1843,-4.2061,0.9075,0.1334,2340.0,2340.0,-0.308,-0.7417,4.0856,13.3917 2019-06-03 15:44:52.700,137.281,8789.7861,5.1791,-4.2096,0.9737,0.1363,2340.0,2340.0,-0.2992,-0.6386,4.0737,13.3653 2019-06-03 15:44:52.720,137.254,8789.7861,5.1791,-4.2096,0.9589,0.0084,2340.0,2340.0,-0.2963,-0.6053,4.0816,13.3653 2019-06-03 15:44:52.740,137.3351,8789.7578,5.1791,-4.2096,1.0776,0.1739,2340.0,2340.0,-0.2992,-0.4929,4.0697,13.3653 2019-06-03 15:44:52.760,137.3351,8789.8438,5.1746,-4.2084,0.889,0.0457,2340.0,2340.0,-0.308,-0.4534,4.083,13.3389 2019-06-03 15:44:52.780,137.272,8789.9004,5.1746,-4.2084,1.0998,0.1222,2340.0,2340.0,-0.3021,-0.2647,4.0803,13.3389 2019-06-03 15:44:52.800,137.281,8789.9287,5.1656,-4.1929,1.1346,0.0964,2340.0,2340.0,-0.3021,-0.1365,4.0631,13.2983 2019-06-03 15:44:52.820,137.281,8789.9287,5.1637,-4.184,0.8509,0.0832,2340.0,2340.0,-0.2992,-0.1488,4.079,13.284 2019-06-03 15:44:52.840,137.3171,8789.958,5.1637,-4.184,1.1512,0.0848,2340.0,2340.0,-0.2905,0.0254,4.0737,13.284 2019-06-03 15:44:52.860,137.3441,8789.8721,5.1637,-4.184,0.9722,0.1469,2340.0,2340.0,-0.2905,0.0775,4.0843,13.284 2019-06-03 15:44:52.880,137.281,8790.6416,5.1603,-4.156,1.0347,0.024,2340.0,2340.0,-0.2875,0.1479,4.0816,13.2573 2019-06-03 15:44:52.900,137.272,8791.4961,5.1514,-4.1169,1.0244,-0.0076,2340.0,2340.0,-0.2817,0.243,4.0684,13.2297 2019-06-03 15:44:52.920,137.272,8792.3799,5.1514,-4.1169,1.0358,0.1559,2340.0,2340.0,-0.2817,0.3074,4.075,13.2297 2019-06-03 15:44:52.940,137.3351,8793.7764,5.1514,-4.1169,0.842,0.0251,2340.0,2340.0,-0.2495,0.3658,4.0803,13.2297 2019-06-03 15:44:52.960,137.3171,8794.6318,5.1496,-4.0618,1.1412,0.1708,2340.0,2340.0,-0.2466,0.4119,4.0724,13.2025 2019-06-03 15:44:52.980,137.272,8795.999,5.1496,-4.0618,0.747,0.0285,2340.0,2340.0,-0.2408,0.4673,4.0816,13.2025 2019-06-03 15:44:53.000,137.272,8796.8828,5.1457,-3.95,0.8639,0.0515,2340.0,2340.0,-0.2437,0.5196,4.0644,13.1624 2019-06-03 15:44:53.020,137.29,8797.709,5.1483,-3.9022,1.2163,0.1166,2340.0,2340.0,-0.2437,0.5165,4.0909,13.1495 2019-06-03 15:44:53.040,137.3261,8798.792,5.1483,-3.9022,0.791,0.0773,2340.0,2340.0,-0.2349,0.5289,4.0711,13.1495 2019-06-03 15:44:53.060,137.3351,8798.707,5.1483,-3.9022,1.0654,0.0932,2340.0,2340.0,-0.2174,0.5473,4.0737,13.1495 2019-06-03 15:44:53.080,137.263,8798.7354,5.1441,-3.8069,0.9567,0.1223,2340.0,2340.0,-0.2145,0.5504,4.083,13.1243 2019-06-03 15:44:53.100,137.281,8798.6787,5.1487,-3.6945,0.8077,0.1384,2340.0,2340.0,-0.2028,0.5874,4.0684,13.0988 2019-06-03 15:44:53.120,137.272,8798.707,5.1487,-3.6945,1.0565,0.0117,2340.0,2340.0,-0.1911,0.572,4.0856,13.0988 2019-06-03 15:44:53.140,137.3351,8798.707,5.1487,-3.6945,1.0344,0.164,2340.0,2340.0,-0.1765,0.5689,4.0763,13.0988 2019-06-03 15:44:53.160,137.3171,8798.7354,5.1506,-3.5703,0.8321,0.0309,2340.0,2340.0,-0.1677,0.572,4.0724,13.0743 2019-06-03 15:44:53.180,137.272,8798.7637,5.1506,-3.5703,1.2448,0.1735,2340.0,2340.0,-0.1589,0.5658,4.0816,13.0743 2019-06-03 15:44:53.200,137.272,8798.792,5.1513,-3.3635,1.1264,0.1671,2340.0,2340.0,-0.1268,0.5689,4.0671,13.0376 2019-06-03 15:44:53.220,137.272,8798.792,5.149,-3.2958,0.777,0.047,2340.0,2340.0,-0.1121,0.5689,4.0843,13.0258 2019-06-03 15:44:53.240,137.3171,8798.8779,5.149,-3.2958,1.146,0.0935,2340.0,2340.0,-0.0771,0.5597,4.0763,13.0258 2019-06-03 15:44:53.260,137.3351,8798.8203,5.149,-3.2958,0.8287,0.1241,2340.0,2340.0,-0.0391,0.5597,4.0763,13.0258 2019-06-03 15:44:53.280,137.281,8798.8203,5.1506,-3.1446,1.1268,0.0313,2340.0,2340.0,-0.0215,0.5289,4.0763,13.0027 2019-06-03 15:44:53.300,137.272,8798.707,5.1504,-2.9905,1.0728,0.0548,2340.0,2340.0,0.0165,0.5319,4.075,12.9788 2019-06-03 15:44:53.320,137.272,8798.792,5.1504,-2.9905,0.858,0.1846,2340.0,2340.0,0.0398,0.5073,4.0697,12.9788 2019-06-03 15:44:53.340,137.3351,8798.8779,5.1504,-2.9905,0.953,-0.0023,2340.0,2340.0,0.1042,0.5073,4.0883,12.9788 2019-06-03 15:44:53.360,137.3261,8798.9629,5.1468,-2.8344,1.0639,0.1552,2340.0,2340.0,0.1246,0.5042,4.0711,12.955 2019-06-03 15:44:53.380,137.272,8798.9346,5.1468,-2.8344,0.9449,-0.0105,2340.0,2340.0,0.1305,0.4796,4.0777,12.955 2019-06-03 15:44:53.400,137.272,8798.9063,5.1462,-2.5876,0.9009,0.0402,2400.0,2400.0,0.1275,0.4796,4.0578,12.9221 2019-06-03 15:44:53.420,137.272,8798.8496,5.1497,-2.4998,1.2392,0.163,2400.0,2400.0,0.1451,0.4396,4.0856,12.9122 2019-06-03 15:44:53.440,137.3351,8798.8496,5.1497,-2.4998,0.7056,0.027,2400.0,2400.0,0.1451,0.4242,4.0883,12.9122 2019-06-03 15:44:53.460,137.3441,8798.8203,5.1497,-2.4998,1.2407,0.1181,2400.0,2400.0,0.1422,0.4273,4.075,12.9122 2019-06-03 15:44:53.480,137.281,8798.8203,5.1427,-2.3354,0.7396,0.0647,2400.0,2400.0,0.1392,0.4027,4.0763,12.8916 2019-06-03 15:44:53.500,137.272,8798.7354,5.1452,-2.1686,0.7666,0.109,2400.0,2400.0,0.1363,0.3996,4.0591,12.8742 2019-06-03 15:44:53.520,137.263,8798.7637,5.1452,-2.1686,1.2285,0.0627,2400.0,2400.0,0.1188,0.3965,4.0777,12.8742 2019-06-03 15:44:53.540,137.3261,8798.792,5.1452,-2.1686,0.7855,0.1474,2400.0,2400.0,0.1129,0.3689,4.0816,12.8742 2019-06-03 15:44:53.560,137.3261,8798.8496,5.1461,-1.9952,1.0798,-0.0289,2400.0,2400.0,0.1217,0.3658,4.0724,12.8579 2019-06-03 15:44:53.580,137.272,8798.9346,5.1461,-1.9952,1.0125,0.2041,2400.0,2400.0,0.1012,0.3474,4.0737,12.8579 2019-06-03 15:44:53.600,137.263,8798.9922,5.1446,-1.7418,0.9837,0.2126,2400.0,2400.0,0.1158,0.3259,4.0724,12.8358 2019-06-03 15:44:53.620,137.281,8799.0205,5.1377,-1.6625,0.9397,-0.0499,2400.0,2400.0,0.1158,0.3105,4.075,12.8292 2019-06-03 15:44:53.640,137.3261,8798.9922,5.1377,-1.6625,1.0455,0.2295,2400.0,2400.0,0.1188,0.2552,4.0856,12.8292 2019-06-03 15:44:53.660,137.3351,8798.9922,5.1377,-1.6625,0.8051,-0.0236,2400.0,2400.0,0.1305,0.2184,4.0671,12.8292 2019-06-03 15:44:53.680,137.272,8798.9063,5.1399,-1.4879,1.2873,0.1456,2400.0,2400.0,0.1275,0.1602,4.0724,12.8178 2019-06-03 15:44:53.700,137.281,8798.792,5.1404,-1.3186,1.2411,0.11,2400.0,2400.0,0.1305,0.1295,4.0777,12.807 2019-06-03 15:44:53.720,137.272,8798.7354,5.1404,-1.3186,0.7525,0.1019,2400.0,2400.0,0.1246,0.0775,4.0856,12.807 2019-06-03 15:44:53.740,137.3351,8798.6787,5.1404,-1.3186,1.2448,0.0802,2400.0,2400.0,0.11,-0.0113,4.0869,12.807 2019-06-03 15:44:53.760,137.3171,8798.7354,5.1353,-1.1546,0.7489,0.1285,2400.0,2400.0,0.11,-0.051,4.0591,12.7991 2019-06-03 15:44:53.780,137.272,8798.7354,5.1346,-0.9843,1.1438,-0.0143,2400.0,2400.0,0.1012,-0.1457,4.0737,12.7927 2019-06-03 15:44:53.800,137.281,8798.7354,5.1348,-0.9024,1.1246,-0.042,2400.0,2400.0,0.1246,-0.222,4.0843,12.7903 2019-06-03 15:44:53.820,137.272,8798.6787,5.1369,-0.8184,0.9726,0.2031,2400.0,2400.0,0.1246,-0.3256,4.0803,12.7894 2019-06-03 15:44:53.840,137.3351,8798.7637,5.1369,-0.8184,1.0244,-0.0233,2400.0,2400.0,0.1158,-0.423,4.0909,12.7894 2019-06-03 15:44:53.860,137.3351,8798.7354,5.1369,-0.8184,1.0958,0.2112,2400.0,2400.0,0.0895,-0.4565,4.0472,12.7894 2019-06-03 15:44:53.880,137.272,8799.6475,5.1353,-0.6664,0.8406,0.0012,2400.0,2400.0,0.0749,-0.6022,4.0737,12.7856 2019-06-03 15:44:53.900,137.281,8800.5029,5.1317,-0.5217,0.7529,-0.0061,2400.0,2400.0,0.0954,-0.6841,4.0869,12.7847 2019-06-03 15:44:53.920,137.272,8801.4717,5.1317,-0.5217,1.2367,0.1623,2400.0,2400.0,0.11,-0.769,4.0843,12.7847 2019-06-03 15:44:53.940,137.3261,8802.8682,5.1317,-0.5217,0.8339,0.0567,2400.0,2400.0,0.0954,-0.9051,4.083,12.7847 2019-06-03 15:44:53.960,137.3261,8803.8379,5.134,-0.3789,1.1279,0.1134,2400.0,2400.0,0.1042,-0.9232,4.0644,12.7864 2019-06-03 15:44:53.980,137.281,8805.2344,5.134,-0.3789,0.75,0.1409,2400.0,2400.0,0.0778,-0.9896,4.0763,12.7864 2019-06-03 15:44:54.000,137.263,8806.1182,5.1294,-0.1955,0.7474,0.151,2400.0,2400.0,0.0954,-1.0138,4.0922,12.7893 2019-06-03 15:44:54.020,137.281,8807.002,5.1247,-0.142,1.1668,-0.0063,2400.0,2400.0,0.0925,-1.0108,4.0697,12.7904 2019-06-03 15:44:54.040,137.3261,8808.085,5.1247,-0.142,0.9293,0.1911,2400.0,2400.0,0.0837,-1.0198,4.0777,12.7904 2019-06-03 15:44:54.060,137.3261,8807.999,5.1247,-0.142,0.9537,0.0015,2400.0,2400.0,0.0749,-1.0198,4.0512,12.7904 2019-06-03 15:44:54.080,137.272,8807.999,5.1247,-0.0375,1.0517,0.2074,2400.0,2400.0,0.0691,-1.0259,4.075,12.7962 2019-06-03 15:44:54.100,137.281,8807.8857,5.1238,0.0565,0.9989,0.1826,2400.0,2400.0,0.0662,-1.0349,4.083,12.8032 2019-06-03 15:44:54.120,137.1184,8807.8857,5.1238,0.0565,0.9153,0.0189,2400.0,2400.0,0.0925,-1.0198,4.075,12.8032 2019-06-03 15:44:54.140,137.1908,8807.8857,5.1238,0.0565,1.0743,0.1229,2400.0,2400.0,0.0808,-1.0409,4.0803,12.8032 2019-06-03 15:44:54.160,137.1908,8807.9424,5.1163,0.1317,0.7825,0.0604,2400.0,2400.0,0.0778,-1.047,4.0711,12.8095 2019-06-03 15:44:54.180,137.1365,8808.0283,5.1163,0.1317,1.1205,0.125,2400.0,2400.0,0.0662,-1.047,4.075,12.8095 2019-06-03 15:44:54.200,137.1275,8808.085,5.112,0.2386,1.139,0.0905,2400.0,2400.0,0.0632,-1.044,4.0869,12.8247 2019-06-03 15:44:54.220,137.1365,8808.0566,5.1081,0.2699,0.8731,0.1223,2400.0,2400.0,0.0574,-1.047,4.0697,12.829 2019-06-03 15:44:54.240,137.1817,8807.999,5.1081,0.2699,1.1091,0.0091,2400.0,2400.0,0.0574,-1.047,4.0777,12.829 2019-06-03 15:44:54.260,137.2088,8807.999,5.1081,0.2699,0.8713,0.1763,2400.0,2400.0,0.0778,-1.044,4.0684,12.829 2019-06-03 15:44:54.280,137.1365,8807.9707,5.1045,0.3258,1.0591,0.0153,2400.0,2400.0,0.0778,-1.047,4.0697,12.8409 2019-06-03 15:44:54.300,137.1456,8807.9424,5.0948,0.3736,0.8742,-0.0103,2400.0,2400.0,0.0691,-1.0409,4.0856,12.8535 2019-06-03 15:44:54.320,137.1275,8807.9424,5.0948,0.3736,1.0266,0.1737,2400.0,2400.0,0.0691,-1.0409,4.0644,12.8535 2019-06-03 15:44:54.340,137.1817,8807.9707,5.0948,0.3736,0.9578,-0.0226,2400.0,2400.0,0.0486,-1.047,4.0724,12.8535 2019-06-03 15:44:54.360,137.1817,8807.9707,5.0893,0.4204,1.1239,0.207,2400.0,2400.0,0.0574,-1.044,4.0777,12.8684 2019-06-03 15:44:54.380,137.1275,8808.0283,5.0893,0.4204,0.8302,0.0587,2400.0,2400.0,0.0662,-1.047,4.079,12.8684 2019-06-03 15:44:54.400,137.1184,8808.1133,5.08,0.4788,0.7966,0.0415,2340.0,2340.0,0.0691,-1.0892,4.0883,12.8914 2019-06-03 15:44:54.420,137.1365,8808.1133,5.0796,0.4961,1.1242,0.0883,2340.0,2340.0,0.0691,-1.0892,4.0763,12.9008 2019-06-03 15:44:54.440,137.1908,8808.1709,5.0796,0.4961,0.8461,0.0929,2340.0,2340.0,0.0545,-1.1434,4.0843,12.9008 2019-06-03 15:44:54.460,137.1908,8808.1992,5.0796,0.4961,1.1775,0.049,2340.0,2340.0,0.0457,-1.1796,4.0896,12.9008 2019-06-03 15:44:54.480,137.1275,8808.2559,5.0734,0.5281,0.9563,0.1606,2340.0,2340.0,0.0457,-1.2247,4.0843,12.9195 2019-06-03 15:44:54.500,137.1365,8808.1992,5.0705,0.558,1.054,0.1777,2340.0,2340.0,0.0311,-1.2939,4.0949,12.94 2019-06-03 15:44:54.520,136.9645,8808.1709,5.0705,0.558,0.8594,-0.0149,2340.0,2340.0,0.0223,-1.312,4.0763,12.94 2019-06-03 15:44:54.540,137.046,8808.2275,5.0705,0.558,1.0355,0.1939,2340.0,2340.0,-0.0098,-1.336,4.0869,12.94 2019-06-03 15:44:54.560,137.037,8808.2275,5.065,0.5801,0.9075,-0.0097,2340.0,2340.0,-0.042,-1.372,4.0936,12.961 2019-06-03 15:44:54.580,136.9826,8808.2275,5.065,0.5801,1.2163,0.1591,2340.0,2340.0,-0.0683,-1.372,4.1002,12.961 2019-06-03 15:44:54.600,136.9826,8808.2842,5.0566,0.6012,1.1771,0.1409,2340.0,2340.0,-0.1092,-1.372,4.0975,12.995 2019-06-03 15:44:54.620,136.9917,8808.2842,5.0514,0.6038,0.7525,0.0603,2340.0,2340.0,-0.1355,-1.3841,4.0975,13.0065 2019-06-03 15:44:54.640,137.037,8808.2559,5.0514,0.6038,1.1923,0.0912,2340.0,2340.0,-0.1823,-1.3841,4.0856,13.0065 2019-06-03 15:44:54.660,137.046,8808.2275,5.0514,0.6038,0.8236,0.1343,2340.0,2340.0,-0.1677,-1.4021,4.1015,13.0065 2019-06-03 15:44:54.680,136.9826,8808.2842,5.0465,0.6151,1.1161,0.0284,2340.0,2340.0,-0.156,-1.4051,4.0936,13.0306 2019-06-03 15:44:54.700,136.9826,8808.2275,5.0369,0.6157,1.1675,-0.0096,2340.0,2340.0,-0.1589,-1.4021,4.1002,13.0524 2019-06-03 15:44:54.720,136.9826,8808.2559,5.0369,0.6157,0.9253,0.1777,2340.0,2340.0,-0.1648,-1.4021,4.083,13.0524 2019-06-03 15:44:54.740,137.037,8808.3418,5.0369,0.6157,1.0233,0.0209,2340.0,2340.0,-0.1735,-1.3991,4.0922,13.0524 2019-06-03 15:44:54.760,137.037,8808.3984,5.0286,0.6165,1.058,0.1742,2340.0,2340.0,-0.1765,-1.3991,4.1042,13.0758 2019-06-03 15:44:54.780,136.9826,8808.3135,5.0286,0.6165,0.8306,0.0189,2340.0,2340.0,-0.1823,-1.4021,4.1055,13.0758 2019-06-03 15:44:54.800,136.9826,8808.3418,5.02,0.6138,0.7858,-0.006,2340.0,2340.0,-0.2145,-1.4021,4.1028,13.1118 2019-06-03 15:44:54.820,136.9917,8808.3135,5.0231,0.614,1.142,0.1438,2340.0,2340.0,-0.2291,-1.4021,4.0922,13.1241 2019-06-03 15:44:54.840,137.037,8808.3135,5.0231,0.614,0.8358,0.0845,2340.0,2340.0,-0.2583,-1.4021,4.0909,13.1241 2019-06-03 15:44:54.860,137.037,8808.3135,5.0231,0.614,1.227,0.0924,2340.0,2340.0,-0.27,-1.4021,4.1042,13.1241 2019-06-03 15:44:54.880,136.9826,8808.3135,5.0128,0.6072,0.6471,0.105,2340.0,2340.0,-0.2905,-1.4021,4.1002,13.1476 2019-06-03 15:44:54.900,137.0007,8808.1992,5.009,0.602,0.7703,0.1169,2340.0,2340.0,-0.3021,-1.4021,4.1081,13.1712 2019-06-03 15:44:54.920,136.9735,8808.1992,5.009,0.602,1.0725,0.0402,2340.0,2340.0,-0.308,-1.4021,4.0989,13.1712 2019-06-03 15:44:54.940,137.037,8808.3135,5.009,0.602,0.8572,0.1821,2340.0,2340.0,-0.3255,-1.4021,4.0922,13.1712 2019-06-03 15:44:54.960,137.046,8808.3701,5.0068,0.5977,0.9952,-0.0224,2340.0,2340.0,-0.3372,-1.4021,4.1094,13.1941 2019-06-03 15:44:54.980,136.9917,8808.4268,5.0068,0.5977,0.9981,0.1982,2340.0,2340.0,-0.3431,-1.4021,4.1002,13.1941 2019-06-03 15:44:55.000,136.9826,8808.4268,5.0007,0.5835,1.0847,0.1771,2340.0,2340.0,-0.3548,-1.4021,4.1028,13.2244 2019-06-03 15:44:55.020,136.9826,8808.4268,4.9938,0.5736,0.8191,0.0043,2340.0,2340.0,-0.3518,-1.3991,4.1002,13.234 2019-06-03 15:44:55.040,137.037,8808.4268,4.9938,0.5736,1.2263,0.1885,2340.0,2340.0,-0.3694,-1.4021,4.0909,13.234 2019-06-03 15:44:55.060,137.046,8808.3984,4.9938,0.5736,0.7851,0.0231,2340.0,2340.0,-0.3694,-1.4021,4.1028,13.234 2019-06-03 15:44:55.080,136.9917,8808.3984,4.9919,0.5681,1.2729,0.1535,2340.0,2340.0,-0.3869,-1.4021,4.0896,13.2536 2019-06-03 15:44:55.100,136.9917,8808.2559,4.9868,0.5558,1.2396,0.1281,2340.0,2340.0,-0.4074,-1.3991,4.0922,13.2697 2019-06-03 15:44:55.120,136.9917,8808.1992,4.9868,0.5558,0.7729,0.0984,2340.0,2340.0,-0.4103,-1.4021,4.0949,13.2697 2019-06-03 15:44:55.140,137.0551,8808.1416,4.9868,0.5558,1.2722,0.0725,2340.0,2340.0,-0.4161,-1.4021,4.0869,13.2697 2019-06-03 15:44:55.160,137.037,8808.1709,4.9776,0.54,0.8642,0.1274,2340.0,2340.0,-0.4132,-1.3991,4.1094,13.2847 2019-06-03 15:44:55.180,136.9917,8808.1133,4.9749,0.5304,1.1135,0.0308,2340.0,2340.0,-0.422,-1.4021,4.0883,13.2988 2019-06-03 15:44:55.200,136.9826,8808.085,4.9706,0.524,1.1309,0.0053,2340.0,2340.0,-0.4278,-1.4021,4.0909,13.3051 2019-06-03 15:44:55.220,136.9917,8807.999,4.9725,0.5226,0.9371,0.1862,2340.0,2340.0,-0.4249,-1.4021,4.0936,13.3107 2019-06-03 15:44:55.240,137.046,8807.9424,4.9725,0.5226,0.9737,-0.0076,2340.0,2340.0,-0.4132,-1.4021,4.0896,13.3107 2019-06-03 15:44:55.260,137.0551,8807.9141,4.9725,0.5226,1.0229,0.1919,2340.0,2340.0,-0.4308,-1.4051,4.0989,13.3107 2019-06-03 15:44:55.280,136.9826,8807.9141,4.965,0.5096,0.8868,-0.0131,2340.0,2340.0,-0.4366,-1.3991,4.0936,13.3201 2019-06-03 15:44:55.300,137.0007,8807.8857,4.9586,0.498,0.8439,0.0119,2340.0,2340.0,-0.4834,-1.4111,4.0883,13.3285 2019-06-03 15:44:55.320,136.9826,8807.8857,4.9586,0.498,1.2126,0.1466,2340.0,2340.0,-0.4892,-1.5191,4.1068,13.3285 2019-06-03 15:44:55.340,137.046,8807.8281,4.9586,0.498,0.7015,0.083,2340.0,2340.0,-0.5009,-1.552,4.0949,13.3285 2019-06-03 15:44:55.360,137.0279,8807.8564,4.9584,0.487,1.2119,0.0573,2340.0,2340.0,-0.5126,-1.591,4.1042,13.3344 2019-06-03 15:44:55.380,136.9917,8807.8857,4.9584,0.487,0.7851,0.1174,2340.0,2340.0,-0.5301,-1.6119,4.0936,13.3344 2019-06-03 15:44:55.400,136.9826,8807.8857,4.9505,0.4614,0.8864,0.1581,2460.0,2340.0,-0.5506,-1.6089,4.0949,13.3388 2019-06-03 15:44:55.420,136.9917,8807.9141,4.9468,0.4492,1.0961,0.0288,2460.0,2340.0,-0.5477,-1.6538,4.1015,13.3387 2019-06-03 15:44:55.440,137.046,8807.9141,4.9468,0.4492,0.8757,0.175,2460.0,2340.0,-0.5418,-1.6508,4.0922,13.3387 2019-06-03 15:44:55.460,137.046,8807.8857,4.9468,0.4492,1.0395,-0.0027,2460.0,2340.0,-0.5535,-1.6508,4.1002,13.3387 2019-06-03 15:44:55.480,136.9826,8808.7412,4.9428,0.4243,0.9641,0.1422,2460.0,2340.0,-0.5564,-1.6478,4.1015,13.3364 2019-06-03 15:44:55.500,136.9917,8809.5391,4.9425,0.3961,1.0406,0.1493,2460.0,2340.0,-0.5564,-1.6508,4.0936,13.3318 2019-06-03 15:44:55.520,136.9826,8810.5088,4.9425,0.3961,0.9127,0.0348,2460.0,2340.0,-0.5477,-1.6478,4.1094,13.3318 2019-06-03 15:44:55.540,137.046,8811.8203,4.9425,0.3961,1.0455,0.1409,2460.0,2340.0,-0.5506,-1.6508,4.0936,13.3318 2019-06-03 15:44:55.560,137.0279,8812.7607,4.9362,0.3641,0.8972,0.0674,2460.0,2340.0,-0.5535,-1.6478,4.1002,13.3248 2019-06-03 15:44:55.580,136.9826,8814.1006,4.9362,0.3641,1.1853,0.0846,2460.0,2340.0,-0.5594,-1.6478,4.1002,13.3248 2019-06-03 15:44:55.600,136.9826,8814.9844,4.9279,0.3122,1.1486,0.0795,2460.0,2340.0,-0.5652,-1.6478,4.0949,13.3075 2019-06-03 15:44:55.620,136.9917,8815.8115,4.9263,0.2938,0.896,0.1247,2460.0,2340.0,-0.5506,-1.6508,4.1134,13.3015 2019-06-03 15:44:55.640,137.037,8816.7813,4.9263,0.2938,1.021,0.031,2460.0,2340.0,-0.5506,-1.6508,4.0962,13.3015 2019-06-03 15:44:55.660,137.0551,8816.6953,4.9263,0.2938,1.0159,0.1641,2460.0,2340.0,-0.5623,-1.6478,4.1002,13.3015 2019-06-03 15:44:55.680,136.9917,8816.7529,4.9243,0.2559,1.0676,0.0094,2460.0,2340.0,-0.5594,-1.6508,4.1028,13.2879 2019-06-03 15:44:55.700,136.9917,8816.7236,4.9159,0.212,1.0,0.031,2460.0,2340.0,-0.5681,-1.6508,4.0869,13.2714 2019-06-03 15:44:55.720,137.1365,8816.7529,4.9159,0.212,0.9911,0.151,2460.0,2340.0,-0.5535,-1.6538,4.1094,13.2714 2019-06-03 15:44:55.740,137.1908,8816.7236,4.9159,0.212,0.8162,0.0425,2460.0,2340.0,-0.5594,-1.6538,4.0962,13.2714 2019-06-03 15:44:55.760,137.1817,8816.7529,4.9128,0.1709,1.1571,0.1148,2460.0,2340.0,-0.5594,-1.6478,4.0936,13.2542 2019-06-03 15:44:55.780,137.1275,8816.8096,4.9128,0.1709,0.8968,0.0643,2460.0,2340.0,-0.5652,-1.6508,4.1002,13.2542 2019-06-03 15:44:55.800,137.1275,8816.8379,4.9081,0.1015,0.8317,0.1094,2460.0,2340.0,-0.5681,-1.6508,4.0922,13.2263 2019-06-03 15:44:55.820,137.1365,8816.7813,4.9058,0.0797,1.1982,0.0668,2460.0,2340.0,-0.5623,-1.6478,4.1121,13.2176 2019-06-03 15:44:55.840,137.1908,8816.7236,4.9058,0.0797,0.8979,0.1273,2460.0,2340.0,-0.5652,-1.6508,4.0962,13.2176 2019-06-03 15:44:55.860,137.1908,8816.6387,4.9058,0.0797,1.146,0.0167,2460.0,2340.0,-0.5623,-1.6478,4.0936,13.2176 2019-06-03 15:44:55.880,137.1275,8816.6104,4.8994,0.029,0.9715,0.1915,2460.0,2340.0,-0.5652,-1.6478,4.0922,13.1963 2019-06-03 15:44:55.900,137.1365,8816.6104,4.8995,-0.0223,0.9689,0.1864,2460.0,2340.0,-0.5564,-1.6478,4.0949,13.1742 2019-06-03 15:44:55.920,137.1184,8816.6387,4.8995,-0.0223,0.9756,-0.017,2460.0,2340.0,-0.5652,-1.6508,4.1028,13.1742 2019-06-03 15:44:55.940,137.1998,8816.7236,4.8995,-0.0223,1.1094,0.1723,2460.0,2340.0,-0.5594,-1.6448,4.1015,13.1742 2019-06-03 15:44:55.960,137.1817,8816.7529,4.8957,-0.0783,0.9223,-0.0179,2460.0,2340.0,-0.5652,-1.6418,4.0896,13.1516 2019-06-03 15:44:55.980,137.1365,8816.8096,4.8957,-0.0783,1.1191,0.2012,2460.0,2340.0,-0.5564,-1.6239,4.1002,13.1516 2019-06-03 15:44:56.000,137.1365,8816.8379,4.8905,-0.1604,1.169,0.1854,2460.0,2340.0,-0.5535,-1.594,4.0909,13.116 2019-06-03 15:44:56.020,137.1365,8816.8379,4.8835,-0.1902,0.7008,0.0265,2460.0,2340.0,-0.5477,-1.591,4.1002,13.1035 2019-06-03 15:44:56.040,137.1817,8816.9238,4.8835,-0.1902,1.193,0.1015,2460.0,2340.0,-0.5506,-1.585,4.0909,13.1035 2019-06-03 15:44:56.060,137.1908,8816.8955,4.8835,-0.1902,0.835,0.0843,2460.0,2340.0,-0.5477,-1.534,4.0909,13.1035 2019-06-03 15:44:56.080,137.1365,8816.8096,4.8812,-0.2476,1.196,0.0792,2460.0,2340.0,-0.5506,-1.531,4.1028,13.0793 2019-06-03 15:44:56.100,137.1365,8816.6953,4.8749,-0.3064,1.1775,0.035,2460.0,2340.0,-0.5594,-1.528,4.0896,13.0546 2019-06-03 15:44:56.120,137.1275,8816.7529,4.8749,-0.3064,0.8561,0.1845,2460.0,2340.0,-0.5506,-1.531,4.0949,13.0546 2019-06-03 15:44:56.140,137.1908,8816.7529,4.8749,-0.3064,1.0469,-0.022,2460.0,2340.0,-0.5506,-1.534,4.0883,13.0546 2019-06-03 15:44:56.160,137.1817,8816.8096,4.8677,-0.3667,0.9933,0.185,2460.0,2340.0,-0.536,-1.528,4.0843,13.0301 2019-06-03 15:44:56.180,137.1365,8816.8379,4.8677,-0.3667,0.9312,-0.0125,2460.0,2340.0,-0.5184,-1.531,4.1002,13.0301 2019-06-03 15:44:56.200,137.1275,8816.8379,4.8571,-0.4599,0.7459,-0.0204,2460.0,2340.0,-0.5184,-1.531,4.0856,12.9905 2019-06-03 15:44:56.220,137.1456,8816.7813,4.8581,-0.4849,1.2344,0.1819,2460.0,2340.0,-0.5214,-1.531,4.0909,12.9782 2019-06-03 15:44:56.240,137.1908,8816.8096,4.8581,-0.4849,0.7577,-0.0067,2460.0,2340.0,-0.5331,-1.531,4.0909,12.9782 2019-06-03 15:44:56.260,137.1908,8816.7813,4.8581,-0.4849,1.2274,0.147,2460.0,2340.0,-0.5448,-1.528,4.0922,12.9782 2019-06-03 15:44:56.280,137.1365,8816.7529,4.8474,-0.5497,0.8128,0.079,2460.0,2340.0,-0.5448,-1.531,4.0962,12.9546 2019-06-03 15:44:56.300,137.1365,8816.667,4.8423,-0.6128,0.6867,0.1161,2460.0,2340.0,-0.5418,-1.531,4.0869,12.9312 2019-06-03 15:44:56.320,137.1184,8816.6953,4.8423,-0.6128,1.2803,0.0393,2460.0,2340.0,-0.5331,-1.528,4.0883,12.9312 2019-06-03 15:44:56.340,137.1908,8816.6953,4.8423,-0.6128,0.8132,0.1497,2460.0,2340.0,-0.5155,-1.534,4.0962,12.9312 2019-06-03 15:44:56.360,137.1908,8816.6953,4.8388,-0.6696,1.1024,0.0056,2460.0,2340.0,-0.5243,-1.528,4.0896,12.9093 2019-06-03 15:44:56.380,137.1275,8816.7529,4.8388,-0.6696,0.9807,0.1892,2460.0,2340.0,-0.536,-1.528,4.0936,12.9093 2019-06-03 15:44:56.400,137.1365,8816.7529,4.8219,-0.7651,0.9674,0.2049,2340.0,2400.0,-0.5389,-1.531,4.0856,12.8756 2019-06-03 15:44:56.420,137.1365,8816.7236,4.8115,-0.8002,1.0199,-0.0226,2340.0,2400.0,-0.5418,-1.531,4.0856,12.8647 2019-06-03 15:44:56.440,137.1817,8816.667,4.8115,-0.8002,1.0469,0.2046,2340.0,2400.0,-0.5272,-1.531,4.0909,12.8647 2019-06-03 15:44:56.460,137.1998,8816.6387,4.8115,-0.8002,0.8679,-0.0012,2340.0,2400.0,-0.5272,-1.5251,4.0816,12.8647 2019-06-03 15:44:56.480,137.1275,8816.667,4.8086,-0.8587,1.2977,0.1643,2340.0,2400.0,-0.5126,-1.531,4.0989,12.8454 2019-06-03 15:44:56.500,137.1365,8816.5811,4.8037,-0.9196,1.1827,0.1461,2340.0,2400.0,-0.5068,-1.5251,4.0909,12.8271 2019-06-03 15:44:56.520,137.1456,8816.6104,4.8037,-0.9196,0.858,0.0465,2340.0,2400.0,-0.5184,-1.531,4.0883,12.8271 2019-06-03 15:44:56.540,137.1998,8816.667,4.8037,-0.9196,1.2932,0.1316,2340.0,2400.0,-0.5331,-1.531,4.0856,12.8271 2019-06-03 15:44:56.560,137.1817,8816.667,4.7921,-0.9831,0.7263,0.1056,2340.0,2400.0,-0.5301,-1.531,4.083,12.8091 2019-06-03 15:44:56.580,137.1365,8816.6953,4.7832,-1.0468,1.2655,0.0353,2340.0,2400.0,-0.5184,-1.531,4.0989,12.7932 2019-06-03 15:44:56.600,137.1365,8816.7529,4.782,-1.0765,1.25,0.0202,2340.0,2400.0,-0.5243,-1.531,4.0896,12.7855 2019-06-03 15:44:56.620,137.1275,8816.7529,4.7804,-1.1073,0.95,0.1628,2340.0,2400.0,-0.5301,-1.528,4.0684,12.779 2019-06-03 15:44:56.640,137.1908,8816.7813,4.7804,-1.1073,1.075,0.0213,2340.0,2400.0,-0.5243,-1.528,4.0936,12.779 2019-06-03 15:44:56.660,137.1908,8816.7813,4.7804,-1.1073,1.0207,0.2005,2340.0,2400.0,-0.5389,-1.531,4.0803,12.779 2019-06-03 15:44:56.680,137.1365,8816.8096,4.7712,-1.1696,0.8727,-0.0242,2340.0,2400.0,-0.5097,-1.528,4.1094,12.7667 2019-06-03 15:44:56.700,137.1456,8816.7236,4.7582,-1.2351,0.9478,-0.0084,2340.0,2400.0,-0.5272,-1.5251,4.083,12.7545 2019-06-03 15:44:56.720,137.1275,8816.7529,4.7582,-1.2351,1.1368,0.1357,2340.0,2400.0,-0.5214,-1.528,4.0777,12.7545 2019-06-03 15:44:56.740,137.1908,8816.8096,4.7582,-1.2351,0.8772,0.0604,2340.0,2400.0,-0.5301,-1.528,4.0896,12.7545 2019-06-03 15:44:56.760,137.1817,8816.8955,4.7522,-1.2931,1.1464,0.1423,2340.0,2400.0,-0.5301,-1.531,4.0883,12.7455 2019-06-03 15:44:56.780,137.1275,8816.8955,4.7522,-1.2931,0.777,0.0688,2340.0,2400.0,-0.5331,-1.531,4.1015,12.7455 2019-06-03 15:44:56.800,137.1275,8816.8955,4.7409,-1.389,0.7096,0.0946,2340.0,2400.0,-0.5301,-1.5251,4.0922,12.7349 2019-06-03 15:44:56.820,137.1456,8816.8662,4.7367,-1.4183,1.2551,0.0274,2340.0,2400.0,-0.5331,-1.5251,4.0697,12.732 2019-06-03 15:44:56.840,137.1908,8816.8096,4.7367,-1.4183,0.8768,0.1522,2340.0,2400.0,-0.5272,-1.531,4.0922,12.732 2019-06-03 15:44:56.860,137.1908,8816.8379,4.7367,-1.4183,1.1157,0.0416,2340.0,2400.0,-0.5272,-1.528,4.0922,12.732 2019-06-03 15:44:56.880,137.1275,8816.7813,4.7296,-1.4802,0.9415,0.1567,2340.0,2400.0,-0.5184,-1.528,4.0962,12.7266 2019-06-03 15:44:56.900,137.1365,8816.7236,4.7274,-1.5354,0.9952,0.1546,2340.0,2400.0,-0.5155,-1.5251,4.0883,12.7232 2019-06-03 15:44:56.920,136.9735,8816.7236,4.7274,-1.5354,0.9763,-0.0112,2340.0,2400.0,-0.5214,-1.528,4.0737,12.7232 2019-06-03 15:44:56.940,137.037,8816.7236,4.7274,-1.5354,1.1357,0.1884,2340.0,2400.0,-0.5214,-1.528,4.0922,12.7232 2019-06-03 15:44:56.960,137.037,8816.7236,4.7202,-1.5935,0.8151,0.0396,2340.0,2400.0,-0.5272,-1.528,4.0896,12.7193 2019-06-03 15:44:56.980,136.9917,8816.7236,4.7202,-1.5935,1.1338,0.136,2340.0,2400.0,-0.5155,-1.5251,4.0962,12.7193 2019-06-03 15:44:57.000,136.9917,8816.7813,4.7133,-1.6865,1.132,0.1402,2340.0,2400.0,-0.5331,-1.528,4.0922,12.7169 2019-06-03 15:44:57.020,137.0007,8816.8096,4.7077,-1.7187,0.8165,0.0542,2340.0,2400.0,-0.5448,-1.5251,4.079,12.716 2019-06-03 15:44:57.040,137.046,8816.8955,4.7077,-1.7187,1.1923,0.0698,2340.0,2400.0,-0.5243,-1.528,4.0962,12.716 2019-06-03 15:44:57.060,137.0551,8816.8379,4.7077,-1.7187,0.8857,0.1466,2340.0,2400.0,-0.5331,-1.531,4.0896,12.716 2019-06-03 15:44:57.080,136.9826,8817.7217,4.7023,-1.7774,0.9807,0.0284,2340.0,2400.0,-0.5184,-1.5251,4.0909,12.7144 2019-06-03 15:44:57.100,137.0007,8818.5205,4.6908,-1.8407,0.9881,0.0107,2340.0,2400.0,-0.5243,-1.5251,4.0883,12.7133 2019-06-03 15:44:57.120,137.1365,8819.4619,4.6908,-1.8407,1.0022,0.1817,2340.0,2400.0,-0.5272,-1.5221,4.0777,12.7133 2019-06-03 15:44:57.140,137.1817,8820.8877,4.6908,-1.8407,0.9704,-0.0318,2340.0,2400.0,-0.5155,-1.5041,4.0975,12.7133 2019-06-03 15:44:57.160,137.1908,8821.8574,4.6811,-1.9027,1.1076,0.1961,2340.0,2400.0,-0.5184,-1.531,4.0909,12.7126 2019-06-03 15:44:57.180,137.1365,8823.2549,4.6811,-1.9027,0.8776,0.0122,2340.0,2400.0,-0.5243,-1.5251,4.0949,12.7126 2019-06-03 15:44:57.200,137.1275,8824.1104,4.667,-1.9957,0.8195,0.0089,2340.0,2400.0,-0.5448,-1.5221,4.0869,12.7113 2019-06-03 15:44:57.220,137.1456,8825.0225,4.666,-2.0239,1.1671,0.1735,2340.0,2400.0,-0.5389,-1.5251,4.0869,12.7101 2019-06-03 15:44:57.240,137.1908,8826.0488,4.666,-2.0239,0.8446,0.054,2340.0,2400.0,-0.5331,-1.5251,4.0989,12.7101 2019-06-03 15:44:57.260,137.1998,8825.9922,4.666,-2.0239,1.0876,0.1041,2340.0,2400.0,-0.5272,-1.5221,4.0949,12.7101 2019-06-03 15:44:57.280,137.1365,8825.9922,4.651,-2.086,0.7918,0.1055,2340.0,2400.0,-0.5301,-1.5251,4.0856,12.7095 2019-06-03 15:44:57.300,137.1275,8825.9639,4.645,-2.1399,0.8576,0.1287,2340.0,2400.0,-0.5389,-1.5221,4.0909,12.7087 2019-06-03 15:44:57.320,136.9735,8825.9639,4.645,-2.1399,1.1316,0.0603,2340.0,2400.0,-0.5506,-1.5221,4.079,12.7087 2019-06-03 15:44:57.340,137.0551,8825.9063,4.645,-2.1399,0.8742,0.1552,2340.0,2400.0,-0.5331,-1.5191,4.1015,12.7087 2019-06-03 15:44:57.360,137.0551,8825.9922,4.637,-2.1915,1.1109,0.0003,2340.0,2400.0,-0.536,-1.528,4.0896,12.7087 2019-06-03 15:44:57.380,136.9826,8825.9355,4.637,-2.1915,0.9389,0.1997,2340.0,2400.0,-0.5331,-1.5221,4.0856,12.7087 2019-06-03 15:44:57.400,136.9917,8825.9355,4.6243,-2.2719,1.0259,0.2185,2400.0,2340.0,-0.536,-1.5251,4.0936,12.7092 2019-06-03 15:44:57.420,136.9826,8825.9063,4.6135,-2.301,0.8901,0.0034,2400.0,2340.0,-0.5418,-1.5221,4.0909,12.709 2019-06-03 15:44:57.440,137.037,8826.0488,4.6135,-2.301,1.1401,0.1805,2400.0,2340.0,-0.5448,-1.5221,4.0949,12.709 2019-06-03 15:44:57.460,137.046,8826.0781,4.6135,-2.301,0.7322,-0.0031,2400.0,2340.0,-0.5448,-1.528,4.0962,12.709 2019-06-03 15:44:57.480,136.9917,8826.0781,4.6094,-2.3475,1.1841,0.1582,2400.0,2340.0,-0.5389,-1.5251,4.0843,12.7112 2019-06-03 15:44:57.500,136.9917,8826.0205,4.604,-2.3941,1.2285,0.1462,2400.0,2340.0,-0.5331,-1.531,4.0975,12.7125 2019-06-03 15:44:57.520,136.9826,8826.0488,4.604,-2.3941,0.7918,0.107,2400.0,2340.0,-0.5389,-1.531,4.0816,12.7125 2019-06-03 15:44:57.540,137.046,8826.0488,4.604,-2.3941,1.1486,0.0825,2400.0,2340.0,-0.5126,-1.528,4.0989,12.7125 2019-06-03 15:44:57.560,137.046,8826.0781,4.5902,-2.4471,0.8088,0.1435,2400.0,2340.0,-0.5301,-1.5251,4.0949,12.7115 2019-06-03 15:44:57.580,136.9826,8826.1348,4.5902,-2.4471,1.2056,0.0009,2400.0,2340.0,-0.5331,-1.528,4.0896,12.7115 2019-06-03 15:44:57.600,136.9735,8826.1348,4.5813,-2.5178,1.1442,-0.0153,2400.0,2340.0,-0.5331,-1.528,4.0949,12.7096 2019-06-03 15:44:57.620,137.0007,8826.0781,4.5825,-2.5399,0.9818,0.2049,2400.0,2340.0,-0.5272,-1.5251,4.0936,12.7087 2019-06-03 15:44:57.640,137.046,8826.0205,4.5825,-2.5399,1.0051,-0.0173,2400.0,2340.0,-0.5272,-1.5251,4.0949,12.7087 2019-06-03 15:44:57.660,137.046,8825.9922,4.5825,-2.5399,1.1372,0.2038,2400.0,2340.0,-0.5301,-1.528,4.1002,12.7087 2019-06-03 15:44:57.680,136.9917,8825.9922,4.5757,-2.5869,0.8413,-0.0048,2400.0,2340.0,-0.5418,-1.528,4.0843,12.7044 2019-06-03 15:44:57.700,137.0007,8825.9355,4.5655,-2.6363,0.8639,0.0052,2400.0,2340.0,-0.5331,-1.5251,4.0922,12.6987 2019-06-03 15:44:57.720,137.1275,8825.9639,4.5655,-2.6363,1.2063,0.1634,2400.0,2340.0,-0.5184,-1.5251,4.0962,12.6987 2019-06-03 15:44:57.740,137.1908,8826.0781,4.5655,-2.6363,0.7636,0.0439,2400.0,2340.0,-0.5009,-1.528,4.0949,12.6987 2019-06-03 15:44:57.760,137.1817,8826.0781,4.5634,-2.6789,1.2625,0.1149,2400.0,2340.0,-0.5038,-1.531,4.0989,12.6921 2019-06-03 15:44:57.780,137.1275,8826.0781,4.5634,-2.6789,0.7193,0.0735,2400.0,2340.0,-0.5126,-1.5251,4.0816,12.6921 2019-06-03 15:44:57.800,137.1275,8826.1064,4.5556,-2.7482,0.7951,0.1268,2400.0,2340.0,-0.5155,-1.528,4.0922,12.6784 2019-06-03 15:44:57.820,137.1365,8826.0781,4.5522,-2.7728,1.2378,0.06,2400.0,2340.0,-0.5477,-1.528,4.0896,12.6726 2019-06-03 15:44:57.840,137.1817,8826.0488,4.5522,-2.7728,0.8147,0.1488,2400.0,2340.0,-0.5448,-1.528,4.0909,12.6726 2019-06-03 15:44:57.860,137.1998,8826.0781,4.5522,-2.7728,1.0658,-0.0047,2400.0,2340.0,-0.5331,-1.528,4.0975,12.6726 2019-06-03 15:44:57.880,137.1275,8826.0781,4.5468,-2.8191,0.9659,0.1439,2400.0,2340.0,-0.5097,-1.528,4.0883,12.6605 2019-06-03 15:44:57.900,137.1456,8825.9355,4.5466,-2.8612,0.9493,0.1741,2400.0,2340.0,-0.498,-1.5221,4.0909,12.6482 2019-06-03 15:44:57.920,137.1275,8825.9063,4.5466,-2.8612,0.956,0.0107,2400.0,2340.0,-0.4921,-1.5221,4.0989,12.6482 2019-06-03 15:44:57.940,137.1817,8825.9922,4.5466,-2.8612,1.0743,0.1902,2400.0,2340.0,-0.4921,-1.4621,4.0869,12.6482 2019-06-03 15:44:57.960,137.1817,8826.0205,4.541,-2.9109,0.8291,-0.0011,2400.0,2340.0,-0.4951,-1.4651,4.1015,12.6327 2019-06-03 15:44:57.980,137.1365,8826.0488,4.532,-2.9626,1.1719,0.1345,2400.0,2340.0,-0.5038,-1.4681,4.0883,12.6131 2019-06-03 15:44:58.000,137.1184,8826.0781,4.5344,-2.9811,1.1801,0.1402,2400.0,2340.0,-0.4921,-1.4681,4.0922,12.6048 2019-06-03 15:44:58.020,137.1456,8826.0781,4.5301,-3.0068,0.8128,0.0884,2400.0,2340.0,-0.4863,-1.4651,4.0909,12.5949 2019-06-03 15:44:58.040,137.1998,8826.0781,4.5301,-3.0068,1.1756,0.0716,2400.0,2340.0,-0.4629,-1.4681,4.0883,12.5949 2019-06-03 15:44:58.060,137.1908,8826.0488,4.5301,-3.0068,0.8687,0.1079,2400.0,2340.0,-0.4571,-1.4651,4.0936,12.5949 2019-06-03 15:44:58.080,137.1275,8826.0781,4.524,-3.0506,1.1264,0.0289,2400.0,2340.0,-0.46,-1.4681,4.0922,12.5753 2019-06-03 15:44:58.100,137.1365,8825.9922,4.5175,-3.0979,1.1253,0.0109,2400.0,2340.0,-0.4629,-1.4621,4.0883,12.5543 2019-06-03 15:44:58.120,137.1184,8825.9355,4.5175,-3.0979,0.97,0.1966,2400.0,2340.0,-0.4746,-1.4681,4.0936,12.5543 2019-06-03 15:44:58.140,137.1908,8825.9922,4.5175,-3.0979,0.9497,0.0171,2400.0,2340.0,-0.46,-1.4381,4.0883,12.5543 2019-06-03 15:44:58.160,137.1817,8826.0781,4.5135,-3.1459,1.1264,0.1268,2400.0,2340.0,-0.4337,-1.4351,4.0962,12.5312 2019-06-03 15:44:58.180,137.1365,8826.0781,4.5135,-3.1459,0.852,0.0524,2400.0,2340.0,-0.4191,-1.4231,4.079,12.5312 2019-06-03 15:44:58.200,137.1275,8826.1064,4.5068,-3.2142,0.8528,0.0533,2400.0,2340.0,-0.3811,-1.3871,4.0869,12.4939 2019-06-03 15:44:58.220,137.1365,8826.1064,4.5078,-3.2354,1.1727,0.1216,2400.0,2340.0,-0.3869,-1.4051,4.0869,12.4812 2019-06-03 15:44:58.240,137.1908,8826.1064,4.5078,-3.2354,0.906,0.0747,2400.0,2340.0,-0.3781,-1.3991,4.0869,12.4812 2019-06-03 15:44:58.260,137.1908,8826.0781,4.5078,-3.2354,1.1738,0.0683,2400.0,2340.0,-0.3869,-1.3811,4.0883,12.4812 2019-06-03 15:44:58.280,137.1275,8826.1064,4.5013,-3.2829,0.8724,0.1345,2400.0,2340.0,-0.3752,-1.3811,4.0856,12.454 2019-06-03 15:44:58.300,137.1365,8825.9922,4.4997,-3.3252,1.0051,0.1243,2400.0,2340.0,-0.3752,-1.315,4.075,12.4267 2019-06-03 15:44:58.320,137.272,8825.9922,4.4997,-3.3252,0.9689,0.0229,2400.0,2340.0,-0.3694,-1.339,4.0936,12.4267 2019-06-03 15:44:58.340,137.3351,8825.9922,4.4997,-3.3252,1.007,0.168,2400.0,2340.0,-0.3781,-1.345,4.083,12.4267 2019-06-03 15:44:58.360,137.3261,8825.9922,4.499,-3.3675,0.9397,-0.0489,2400.0,2340.0,-0.3665,-1.321,4.0949,12.3982 2019-06-03 15:44:58.380,137.281,8825.9639,4.499,-3.3675,1.0377,0.1956,2400.0,2340.0,-0.3781,-1.327,4.0816,12.3982 2019-06-03 15:44:58.400,137.263,8825.9639,4.4954,-3.4239,1.0987,0.1763,2340.0,2340.0,-0.3518,-1.321,4.0856,12.3552 2019-06-03 15:44:58.420,137.281,8825.9355,4.491,-3.4456,0.8757,0.0447,2340.0,2340.0,-0.3489,-1.327,4.0922,12.3406 2019-06-03 15:44:58.440,137.3351,8825.9063,4.491,-3.4456,1.1246,0.1208,2340.0,2340.0,-0.3314,-1.324,4.0869,12.3406 2019-06-03 15:44:58.460,137.3261,8825.9063,4.491,-3.4456,0.8139,0.0628,2340.0,2340.0,-0.3168,-1.324,4.0869,12.3406 2019-06-03 15:44:58.480,137.272,8825.9063,4.4902,-3.4772,1.1435,0.0906,2340.0,2340.0,-0.3021,-1.321,4.079,12.3121 2019-06-03 15:44:58.500,137.281,8825.8213,4.4839,-3.5123,1.1213,0.072,2340.0,2340.0,-0.2905,-1.324,4.0816,12.2832 2019-06-03 15:44:58.520,137.263,8825.8496,4.4839,-3.5123,0.8986,0.1191,2340.0,2340.0,-0.2992,-1.327,4.0896,12.2832 2019-06-03 15:44:58.540,137.3351,8825.8779,4.4839,-3.5123,1.0159,0.0347,2340.0,2340.0,-0.2992,-1.324,4.083,12.2832 2019-06-03 15:44:58.560,137.3261,8825.9639,4.4784,-3.5468,0.9955,0.1622,2340.0,2340.0,-0.2905,-1.324,4.0896,12.2551 2019-06-03 15:44:58.580,137.263,8826.0205,4.4784,-3.5468,1.021,0.036,2340.0,2340.0,-0.2846,-1.321,4.0883,12.2551 2019-06-03 15:44:58.600,137.272,8826.0488,4.4735,-3.5933,0.8764,0.0017,2340.0,2340.0,-0.2788,-1.324,4.0816,12.2149 2019-06-03 15:44:58.620,137.272,8826.0781,4.4754,-3.608,1.1198,0.1665,2340.0,2340.0,-0.2641,-1.327,4.0949,12.2021 2019-06-03 15:44:58.640,137.3171,8826.0781,4.4754,-3.608,0.8139,-0.0146,2340.0,2340.0,-0.2729,-1.321,4.0724,12.2021 2019-06-03 15:44:58.660,137.3441,8825.9922,4.4754,-3.608,1.1978,0.1767,2340.0,2340.0,-0.2466,-1.321,4.0922,12.2021 2019-06-03 15:44:58.680,137.272,8825.9922,4.4669,-3.6438,0.7222,0.0418,2340.0,2340.0,-0.2554,-1.324,4.0843,12.1742 2019-06-03 15:44:58.700,137.272,8825.9355,4.4611,-3.6789,0.6793,0.0574,2340.0,2340.0,-0.2203,-1.321,4.083,12.1475 2019-06-03 15:44:58.720,137.281,8825.9639,4.4611,-3.6789,1.2622,0.0758,2340.0,2340.0,-0.2203,-1.321,4.0869,12.1475 2019-06-03 15:44:58.740,137.3351,8825.9355,4.4611,-3.6789,0.8672,0.0953,2340.0,2340.0,-0.232,-1.339,4.0803,12.1475 2019-06-03 15:44:58.760,137.3171,8825.9639,4.4591,-3.7114,1.196,0.0468,2340.0,2340.0,-0.2291,-1.2939,4.0869,12.1204 2019-06-03 15:44:58.780,137.281,8825.9639,4.4591,-3.7114,0.8783,0.1915,2340.0,2340.0,-0.2349,-1.324,4.0909,12.1204 2019-06-03 15:44:58.800,137.272,8825.9922,4.4483,-3.7653,0.7943,0.1876,2340.0,2340.0,-0.2232,-1.327,4.0816,12.0803 2019-06-03 15:44:58.820,137.281,8825.9639,4.4397,-3.7865,1.004,-0.046,2340.0,2340.0,-0.2232,-1.324,4.0856,12.0673 2019-06-03 15:44:58.840,137.3351,8826.0205,4.4397,-3.7865,1.0355,0.1726,2340.0,2340.0,-0.2261,-1.327,4.0737,12.0673 2019-06-03 15:44:58.860,137.3441,8826.0488,4.4397,-3.7865,1.0177,-0.0127,2340.0,2340.0,-0.2232,-1.327,4.079,12.0673 2019-06-03 15:44:58.880,137.272,8825.9639,4.4369,-3.8225,1.1435,0.2427,2340.0,2340.0,-0.2291,-1.324,4.0989,12.0418 2019-06-03 15:44:58.900,137.281,8825.9355,4.433,-3.8581,1.2085,0.1744,2340.0,2340.0,-0.2349,-1.327,4.083,12.0161 2019-06-03 15:44:58.920,137.272,8825.8779,4.433,-3.8581,0.8224,-0.0256,2340.0,2340.0,-0.2261,-1.327,4.0856,12.0161 2019-06-03 15:44:58.940,137.3261,8825.8496,4.433,-3.8581,1.26,0.1439,2340.0,2340.0,-0.2291,-1.336,4.0816,12.0161 2019-06-03 15:44:58.960,137.3261,8825.8779,4.4248,-3.8968,0.7984,0.049,2340.0,2340.0,-0.2174,-1.336,4.0869,11.9916 2019-06-03 15:44:58.980,137.272,8825.9639,4.4158,-3.9335,1.2951,0.1601,2340.0,2340.0,-0.2349,-1.342,4.0962,11.967 2019-06-03 15:44:59.000,137.263,8825.9639,4.4158,-3.95,1.2914,0.1202,2340.0,2340.0,-0.232,-1.339,4.0856,11.956 2019-06-03 15:44:59.020,137.29,8825.8496,4.4116,-3.9676,0.8347,0.0901,2340.0,2340.0,-0.232,-1.345,4.0896,11.9449 2019-06-03 15:44:59.040,137.3351,8825.9355,4.4116,-3.9676,1.1719,0.0513,2340.0,2340.0,-0.232,-1.369,4.0803,11.9449 2019-06-03 15:44:59.060,137.3351,8825.9063,4.4116,-3.9676,0.869,0.1607,2340.0,2340.0,-0.2086,-1.369,4.0856,11.9449 2019-06-03 15:44:59.080,137.281,8826.7051,4.405,-4.0039,1.1113,-0.0067,2340.0,2340.0,-0.2174,-1.369,4.1002,11.9245 2019-06-03 15:44:59.100,137.272,8827.5605,4.3929,-4.0428,1.0347,-0.0196,2340.0,2340.0,-0.2203,-1.366,4.0856,11.9057 2019-06-03 15:44:59.120,137.272,8828.4453,4.3929,-4.0428,1.0281,0.2124,2340.0,2340.0,-0.2203,-1.366,4.0883,11.9057 2019-06-03 15:44:59.140,137.3441,8829.7285,4.3929,-4.0428,0.8221,-0.0409,2340.0,2340.0,-0.2437,-1.372,4.079,11.9057 2019-06-03 15:44:59.160,137.3261,8830.6133,4.3864,-4.0793,1.0299,0.1973,2340.0,2340.0,-0.2174,-1.366,4.0856,11.8858 2019-06-03 15:44:59.180,137.281,8831.9248,4.3864,-4.0793,0.7278,0.0301,2340.0,2340.0,-0.2145,-1.369,4.0989,11.8858 2019-06-03 15:44:59.200,137.281,8832.7803,4.374,-4.1344,0.7707,0.0496,2340.0,2340.0,-0.2291,-1.372,4.083,11.8591 2019-06-03 15:44:59.220,137.281,8833.6084,4.3729,-4.1474,1.2326,0.137,2340.0,2340.0,-0.2174,-1.369,4.0909,11.8504 2019-06-03 15:44:59.240,137.3261,8834.5781,4.3729,-4.1474,0.808,0.0684,2340.0,2340.0,-0.2145,-1.369,4.0883,11.8504 2019-06-03 15:44:59.260,137.3441,8834.5488,4.3729,-4.1474,1.2389,0.0795,2340.0,2340.0,-0.2145,-1.369,4.079,11.8504 2019-06-03 15:44:59.280,137.263,8834.5781,4.3613,-4.1861,0.8091,0.1088,2340.0,2340.0,-0.2203,-1.366,4.1055,11.8322 2019-06-03 15:44:59.300,137.29,8834.4639,4.3586,-4.2224,0.7474,0.1099,2340.0,2340.0,-0.2408,-1.369,4.0883,11.8159 2019-06-03 15:44:59.320,137.4252,8834.4922,4.3586,-4.2224,1.2115,0.025,2340.0,2340.0,-0.2349,-1.369,4.0869,11.8159 2019-06-03 15:44:59.340,137.4791,8834.4922,4.3586,-4.2224,1.0129,0.2328,2340.0,2340.0,-0.2291,-1.369,4.0909,11.8159 2019-06-03 15:44:59.360,137.4791,8834.5781,4.3542,-4.256,1.0166,-0.0358,2340.0,2340.0,-0.2086,-1.366,4.0909,11.7995 2019-06-03 15:44:59.380,137.4162,8834.6914,4.342,-4.2945,1.0373,0.2033,2340.0,2340.0,-0.2145,-1.369,4.0962,11.7834 2019-06-03 15:44:59.400,137.4252,8834.7207,4.3454,-4.309,1.0277,0.1807,2400.0,2400.0,-0.2203,-1.372,4.0962,11.7753 2019-06-03 15:44:59.420,137.4162,8834.7207,4.3356,-4.3286,0.8831,-0.0064,2400.0,2400.0,-0.2232,-1.369,4.0856,11.7677 2019-06-03 15:44:59.440,137.4791,8834.6631,4.3356,-4.3286,1.1586,0.1862,2400.0,2400.0,-0.232,-1.372,4.0922,11.7677 2019-06-03 15:44:59.460,137.4881,8834.6348,4.3356,-4.3286,0.7341,0.0506,2400.0,2400.0,-0.2349,-1.363,4.0763,11.7677 2019-06-03 15:44:59.480,137.4252,8834.6348,4.3322,-4.3615,1.2563,0.1014,2400.0,2400.0,-0.2261,-1.369,4.1015,11.7526 2019-06-03 15:44:59.500,137.4252,8834.5781,4.3256,-4.3968,1.2278,0.029,2400.0,2400.0,-0.2349,-1.366,4.0949,11.7375 2019-06-03 15:44:59.520,137.4252,8834.6348,4.3256,-4.3968,0.8502,0.1559,2400.0,2400.0,-0.2115,-1.366,4.0896,11.7375 2019-06-03 15:44:59.540,137.4791,8834.6064,4.3256,-4.3968,1.0998,0.0249,2400.0,2400.0,-0.2145,-1.369,4.0843,11.7375 2019-06-03 15:44:59.560,137.4702,8834.6348,4.315,-4.4288,0.8739,0.1602,2400.0,2400.0,-0.2028,-1.372,4.0856,11.7217 2019-06-03 15:44:59.580,137.4252,8834.6348,4.315,-4.4288,1.108,-0.0024,2400.0,2400.0,-0.2261,-1.366,4.0949,11.7217 2019-06-03 15:44:59.600,137.4252,8834.6631,4.3039,-4.4765,1.0103,-0.0324,2400.0,2400.0,-0.2408,-1.369,4.0962,11.7004 2019-06-03 15:44:59.620,137.4252,8834.6348,4.3042,-4.4891,1.0018,0.1816,2400.0,2400.0,-0.2437,-1.372,4.0763,11.6934 2019-06-03 15:44:59.640,137.4881,8834.6348,4.3042,-4.4891,0.8935,0.0233,2400.0,2400.0,-0.2261,-1.363,4.0909,11.6934 2019-06-03 15:44:59.660,137.4881,8834.6064,4.3042,-4.4891,1.1191,0.1457,2400.0,2400.0,-0.2086,-1.366,4.0883,11.6934 2019-06-03 15:44:59.680,137.4162,8834.6348,4.2942,-4.5208,0.8561,0.0292,2400.0,2400.0,-0.2115,-1.369,4.0909,11.6793 2019-06-03 15:44:59.700,137.4252,8834.6064,4.2863,-4.5536,0.8284,0.048,2400.0,2400.0,-0.2291,-1.366,4.0869,11.6651 2019-06-03 15:44:59.720,137.4072,8834.6348,4.2863,-4.5536,1.2189,0.117,2400.0,2400.0,-0.2145,-1.369,4.0869,11.6651 2019-06-03 15:44:59.740,137.4881,8834.6348,4.2863,-4.5536,0.8816,0.1104,2400.0,2400.0,-0.2232,-1.375,4.0922,11.6651 2019-06-03 15:44:59.760,137.4791,8834.6348,4.2829,-4.5809,1.1117,0.082,2400.0,2400.0,-0.2232,-1.369,4.0883,11.6499 2019-06-03 15:44:59.780,137.4252,8834.6064,4.2829,-4.5809,0.8827,0.1162,2400.0,2400.0,-0.2291,-1.372,4.0949,11.6499 2019-06-03 15:44:59.800,137.4162,8834.6348,4.2699,-4.6253,0.8901,0.1584,2400.0,2400.0,-0.2466,-1.372,4.0896,11.6294 2019-06-03 15:44:59.820,137.4252,8834.6348,4.2624,-4.6425,1.0769,-0.0122,2400.0,2400.0,-0.232,-1.372,4.0949,11.6216 2019-06-03 15:44:59.840,137.4702,8834.6348,4.2624,-4.6425,1.0273,0.2165,2400.0,2400.0,-0.2378,-1.372,4.0922,11.6216 2019-06-03 15:44:59.860,137.4791,8834.6064,4.2624,-4.6425,0.8783,-0.0256,2400.0,2400.0,-0.2232,-1.369,4.0909,11.6216 2019-06-03 15:44:59.880,137.4162,8834.5488,4.2586,-4.6723,1.095,0.1762,2400.0,2400.0,-0.2232,-1.366,4.0896,11.6059 2019-06-03 15:44:59.900,137.4252,8834.4355,4.2558,-4.6998,1.1098,0.2081,2400.0,2400.0,-0.2232,-1.369,4.0962,11.5892 2019-06-03 15:44:59.920,137.4162,8834.4639,4.2558,-4.6998,0.8058,0.01,2400.0,2400.0,-0.2291,-1.366,4.0869,11.5892 2019-06-03 15:44:59.940,137.4881,8834.5205,4.2558,-4.6998,1.1878,0.1536,2400.0,2400.0,-0.2203,-1.372,4.1002,11.5892 2019-06-03 15:44:59.960,137.4612,8834.5781,4.2458,-4.73,0.7141,0.0579,2400.0,2400.0,-0.2291,-1.366,4.083,11.5726 2019-06-03 15:44:59.980,137.4162,8834.6064,4.2458,-4.73,1.2529,0.079,2400.0,2400.0,-0.2232,-1.366,4.0922,11.5726 2019-06-03 15:45:00.000,137.4252,8834.6348,4.2414,-4.7752,1.1531,0.1064,2400.0,2400.0,-0.2408,-1.372,4.083,11.5445 2019-06-03 15:45:00.020,137.4162,8834.6631,4.2388,-4.79,0.7285,0.1293,2400.0,2400.0,-0.2203,-1.366,4.0883,11.5349 2019-06-03 15:45:00.040,137.4791,8834.6914,4.2388,-4.79,1.1424,0.0135,2400.0,2400.0,-0.2232,-1.366,4.0962,11.5349 2019-06-03 15:45:00.060,137.4791,8834.6631,4.2388,-4.79,0.9156,0.1775,2400.0,2400.0,-0.2232,-1.348,4.0883,11.5349 2019-06-03 15:45:00.080,137.4162,8834.7207,4.2364,-4.8204,1.1013,-0.0172,2400.0,2400.0,-0.2203,-1.2879,4.0869,11.5156 2019-06-03 15:45:00.100,137.4162,8834.6914,4.2283,-4.853,1.0247,0.0217,2400.0,2400.0,-0.2261,-1.2939,4.0936,11.4943 2019-06-03 15:45:00.120,137.3982,8834.7773,4.2283,-4.853,1.0747,0.1787,2400.0,2400.0,-0.232,-1.2969,4.083,11.4943 2019-06-03 15:45:00.140,137.4702,8834.835,4.2283,-4.853,0.8646,-0.042,2400.0,2400.0,-0.2291,-1.2789,4.0949,11.4943 2019-06-03 15:45:00.160,137.4791,8834.835,4.2248,-4.8804,1.1926,0.1841,2400.0,2400.0,-0.2378,-1.2217,4.0803,11.473 2019-06-03 15:45:00.180,137.4252,8834.835,4.2248,-4.8804,0.7895,-0.0077,2400.0,2400.0,-0.2261,-1.1826,4.0803,11.473 2019-06-03 15:45:00.200,137.4162,8834.8633,4.2206,-4.9183,0.8236,0.0265,2400.0,2400.0,-0.232,-1.2127,4.0883,11.4412 2019-06-03 15:45:00.220,137.4252,8834.8633,4.2217,-4.9267,1.2274,0.122,2400.0,2400.0,-0.2203,-1.1706,4.0763,11.4297 2019-06-03 15:45:00.240,137.4702,8834.9199,4.2217,-4.9267,0.7426,0.0948,2400.0,2400.0,-0.2115,-1.1374,4.0962,11.4297 2019-06-03 15:45:00.260,137.4791,8834.8633,4.2217,-4.9267,1.2736,0.0433,2400.0,2400.0,-0.2349,-1.1344,4.0803,11.4297 2019-06-03 15:45:00.280,137.4342,8834.7773,4.2158,-4.9476,0.8561,0.1399,2400.0,2400.0,-0.2261,-1.047,4.0737,11.4072 2019-06-03 15:45:00.300,137.4342,8834.6631,4.2161,-4.9585,0.9253,0.1783,2400.0,2400.0,-0.232,-1.053,4.0896,11.3848 2019-06-03 15:45:00.320,137.56,8834.6348,4.2161,-4.9585,1.0207,-0.0008,2400.0,2400.0,-0.2291,-1.047,4.0803,11.3848 2019-06-03 15:45:00.340,137.6228,8834.6064,4.2161,-4.9585,1.0118,0.1941,2400.0,2400.0,-0.2203,-1.0138,4.0883,11.3848 2019-06-03 15:45:00.360,137.6049,8834.6348,4.2136,-4.9691,1.0203,-0.0516,2400.0,2400.0,-0.2174,-1.0168,4.0856,11.3606 2019-06-03 15:45:00.380,137.551,8834.6348,4.2136,-4.9691,1.0602,0.2067,2400.0,2400.0,-0.2174,-0.9957,4.0605,11.3606 2019-06-03 15:45:00.400,137.56,8834.6064,4.21,-4.982,1.1342,0.2268,2340.0,2340.0,-0.2086,-0.9927,4.0909,11.3234 2019-06-03 15:45:00.420,137.569,8834.5781,4.2015,-4.9882,0.7148,0.0237,2340.0,2340.0,-0.2028,-0.9927,4.0843,11.3105 2019-06-03 15:45:00.440,137.6139,8834.5205,4.2015,-4.9882,1.3324,0.1361,2340.0,2340.0,-0.2028,-0.9927,4.0896,11.3105 2019-06-03 15:45:00.460,137.6228,8834.4922,4.2015,-4.9882,0.7696,0.0506,2340.0,2340.0,-0.2174,-0.9927,4.0697,11.3105 2019-06-03 15:45:00.480,137.551,8834.5488,4.2018,-4.9887,1.304,0.1025,2340.0,2340.0,-0.2057,-0.9866,4.0684,11.2836 2019-06-03 15:45:00.500,137.56,8834.5205,4.1983,-4.9914,1.2851,0.0655,2340.0,2340.0,-0.194,-0.9896,4.0843,11.2549 2019-06-03 15:45:00.520,137.551,8834.5488,4.1983,-4.9914,0.7588,0.1642,2340.0,2340.0,-0.1677,-0.9746,4.079,11.2549 2019-06-03 15:45:00.540,137.6139,8834.6064,4.1983,-4.9914,1.2873,-0.0031,2340.0,2340.0,-0.1472,-0.9383,4.079,11.2549 2019-06-03 15:45:00.560,137.6139,8834.6064,4.1894,-4.9938,0.8879,0.1793,2340.0,2340.0,-0.1589,-0.9413,4.0697,11.2253 2019-06-03 15:45:00.580,137.56,8834.6064,4.1888,-4.9871,1.0651,0.0129,2340.0,2340.0,-0.156,-0.9383,4.0631,11.1966 2019-06-03 15:45:00.600,137.56,8834.6348,4.184,-4.9843,1.0506,0.011,2340.0,2340.0,-0.1501,-0.9534,4.0883,11.1812 2019-06-03 15:45:00.620,137.569,8834.6064,4.1872,-4.979,0.9304,0.1729,2340.0,2340.0,-0.1297,-0.9383,4.0803,11.1659 2019-06-03 15:45:00.640,137.6139,8834.5781,4.1872,-4.979,0.98,-0.0092,2340.0,2340.0,-0.1034,-0.9262,4.075,11.1659 2019-06-03 15:45:00.660,137.6139,8834.5488,4.1872,-4.979,1.0451,0.1819,2340.0,2340.0,-0.1063,-0.9262,4.0684,11.1659 2019-06-03 15:45:00.680,137.551,8834.5488,4.1802,-4.9748,0.8457,0.0075,2340.0,2340.0,-0.08,-0.899,4.0631,11.135 2019-06-03 15:45:00.700,137.569,8834.4639,4.1746,-4.9669,0.8347,0.0445,2340.0,2340.0,-0.0742,-0.8869,4.0777,11.1039 2019-06-03 15:45:00.720,137.6945,8834.4639,4.1746,-4.9669,1.1113,0.1274,2340.0,2340.0,-0.0362,-0.8839,4.0816,11.1039 2019-06-03 15:45:00.740,137.7572,8834.4922,4.1746,-4.9669,0.804,0.0627,2340.0,2340.0,-0.0011,-0.7932,4.0737,11.1039 2019-06-03 15:45:00.760,137.7662,8834.5488,4.1748,-4.9526,1.1963,0.0946,2340.0,2340.0,-0.0011,-0.7962,4.079,11.0722 2019-06-03 15:45:00.780,137.7035,8834.5781,4.1748,-4.9526,0.8568,0.1062,2340.0,2340.0,0.0018,-0.7599,4.0618,11.0722 2019-06-03 15:45:00.800,137.7035,8834.6348,4.1671,-4.9298,0.8413,0.1504,2340.0,2340.0,0.0194,-0.7296,4.0856,11.0262 2019-06-03 15:45:00.820,137.6945,8834.6631,4.1642,-4.9224,1.1213,0.0149,2340.0,2340.0,0.0311,-0.7266,4.0803,11.011 2019-06-03 15:45:00.840,137.7483,8834.6631,4.1642,-4.9224,0.8975,0.1418,2340.0,2340.0,0.0457,-0.6993,4.0684,11.011 2019-06-03 15:45:00.860,137.7751,8834.6064,4.1642,-4.9224,1.0673,-0.0051,2340.0,2340.0,0.0545,-0.7023,4.0763,11.011 2019-06-03 15:45:00.880,137.6945,8834.6064,4.1609,-4.9006,0.936,0.1981,2340.0,2340.0,0.072,-0.6781,4.0631,10.982 2019-06-03 15:45:00.900,137.7035,8834.5488,4.1589,-4.8738,0.9641,0.2074,2340.0,2340.0,0.0925,-0.6447,4.0896,10.9522 2019-06-03 15:45:00.920,137.6945,8834.5781,4.1589,-4.8738,0.9393,-0.0001,2340.0,2340.0,0.0925,-0.6447,4.0737,10.9522 2019-06-03 15:45:00.940,137.7572,8834.6631,4.1589,-4.8738,1.0214,0.1326,2340.0,2340.0,0.1305,-0.6083,4.0697,10.9522 2019-06-03 15:45:00.960,137.7572,8834.749,4.1531,-4.8466,0.9393,0.0354,2340.0,2340.0,0.11,-0.6235,4.0697,10.9249 2019-06-03 15:45:00.980,137.7035,8834.6914,4.1531,-4.8466,1.1202,0.1179,2340.0,2340.0,0.1334,-0.6204,4.0777,10.9249 2019-06-03 15:45:01.000,137.6945,8834.6914,4.1478,-4.7953,1.0998,0.0985,2340.0,2340.0,0.1305,-0.6235,4.079,10.8851 2019-06-03 15:45:01.020,137.7035,8834.6914,4.1478,-4.7762,0.8923,0.0806,2340.0,2340.0,0.1363,-0.6356,4.0883,10.8717 2019-06-03 15:45:01.040,137.7572,8834.7773,4.1478,-4.7762,1.1753,0.086,2340.0,2340.0,0.1363,-0.6295,4.0605,10.8717 2019-06-03 15:45:01.060,137.7572,8834.7773,4.1478,-4.7762,0.9027,0.1135,2340.0,2340.0,0.1217,-0.6447,4.0763,10.8717 2019-06-03 15:45:01.080,137.6856,8834.8633,4.1454,-4.732,1.1168,0.0522,2340.0,2340.0,0.1392,-0.6386,4.079,10.8474 2019-06-03 15:45:01.100,137.7214,8834.749,4.1391,-4.6903,1.1039,0.0177,2340.0,2340.0,0.148,-0.6356,4.0803,10.825 2019-06-03 15:45:01.120,137.6856,8834.7207,4.1391,-4.6903,0.98,0.1685,2340.0,2340.0,0.1568,-0.6356,4.0843,10.825 2019-06-03 15:45:01.140,137.7483,8834.749,4.1391,-4.6903,1.0429,0.001,2340.0,2340.0,0.1597,-0.6326,4.0552,10.825 2019-06-03 15:45:01.160,137.7483,8834.8633,4.1367,-4.6441,1.0658,0.1987,2340.0,2340.0,0.1597,-0.6356,4.0869,10.8053 2019-06-03 15:45:01.180,137.6945,8834.9199,4.1367,-4.6441,0.8772,0.0085,2340.0,2340.0,0.1626,-0.6386,4.0896,10.8053 2019-06-03 15:45:01.200,137.6856,8834.9482,4.1299,-4.5682,0.9478,-0.0009,2340.0,2340.0,0.1685,-0.6326,4.083,10.7795 2019-06-03 15:45:01.220,137.6945,8834.9482,4.1332,-4.5384,1.1645,0.1528,2340.0,2340.0,0.1597,-0.6599,4.0856,10.7702 2019-06-03 15:45:01.240,137.7572,8835.0059,4.1332,-4.5384,0.7999,0.0415,2340.0,2340.0,0.1655,-0.6538,4.0684,10.7702 2019-06-03 15:45:01.260,137.7751,8834.8633,4.1332,-4.5384,1.1882,0.1412,2340.0,2340.0,0.1597,-0.6872,4.0896,10.7702 2019-06-03 15:45:01.280,137.6945,8834.8916,4.1241,-4.4925,0.8298,0.0748,2340.0,2340.0,0.1538,-0.6872,4.0816,10.7529 2019-06-03 15:45:01.300,137.6945,8834.835,4.1202,-4.4394,0.9752,0.0825,2340.0,2340.0,0.1597,-0.7235,4.0909,10.7373 2019-06-03 15:45:01.320,137.6856,8834.8633,4.1202,-4.4394,1.0906,0.0516,2340.0,2340.0,0.1422,-0.7478,4.0816,10.7373 2019-06-03 15:45:01.340,137.7572,8834.835,4.1202,-4.4394,0.889,0.1644,2340.0,2340.0,0.1685,-0.7508,4.0816,10.7373 2019-06-03 15:45:01.360,137.7393,8834.8916,4.1208,-4.3853,1.098,0.0286,2340.0,2340.0,0.1714,-0.8174,4.0843,10.7216 2019-06-03 15:45:01.380,137.7035,8834.8633,4.1208,-4.3853,0.9737,0.1655,2340.0,2340.0,0.2006,-0.8204,4.0856,10.7216 2019-06-03 15:45:01.400,137.6945,8834.8057,4.1186,-4.3059,1.0928,0.1609,2400.0,2340.0,0.2006,-0.8204,4.0816,10.7027 2019-06-03 15:45:01.420,137.7035,8834.8057,4.1154,-4.2824,0.9582,0.0062,2400.0,2340.0,0.1918,-0.8809,4.0936,10.6954 2019-06-03 15:45:01.440,137.7572,8834.8916,4.1154,-4.2824,1.0632,0.1749,2400.0,2340.0,0.1918,-0.8779,4.0816,10.6954 2019-06-03 15:45:01.460,137.7572,8834.8633,4.1154,-4.2824,0.8805,0.0311,2400.0,2340.0,0.1977,-0.9232,4.0883,10.6954 2019-06-03 15:45:01.480,137.6945,8834.8633,4.1151,-4.2295,1.1583,0.1276,2400.0,2340.0,0.1918,-0.9323,4.0883,10.6817 2019-06-03 15:45:01.500,137.6945,8834.8633,4.112,-4.1818,1.1553,0.118,2400.0,2340.0,0.1948,-0.9353,4.0883,10.6693 2019-06-03 15:45:01.520,137.8377,8834.835,4.112,-4.1818,0.7459,0.0579,2400.0,2340.0,0.186,-0.9625,4.0869,10.6693 2019-06-03 15:45:01.540,137.9002,8834.7773,4.112,-4.1818,1.2074,0.1242,2400.0,2340.0,0.1889,-0.9625,4.0803,10.6693 2019-06-03 15:45:01.560,137.8824,8834.835,4.1095,-4.1376,0.7758,0.1064,2400.0,2340.0,0.1802,-1.0017,4.0896,10.6566 2019-06-03 15:45:01.580,137.8377,8834.835,4.1095,-4.1376,1.1309,0.0454,2400.0,2340.0,0.1772,-1.0017,4.0909,10.6566 2019-06-03 15:45:01.600,137.8288,8834.9199,4.1094,-4.0711,1.0909,0.0145,2400.0,2340.0,0.1918,-0.9957,4.0803,10.6398 2019-06-03 15:45:01.620,137.8466,8834.8916,4.1118,-4.0483,0.9855,0.1634,2400.0,2340.0,0.1889,-1.0138,4.0936,10.6348 2019-06-03 15:45:01.640,137.8824,8834.9199,4.1118,-4.0483,1.1546,0.0152,2400.0,2340.0,0.1918,-1.0078,4.0843,10.6348 2019-06-03 15:45:01.660,137.9092,8834.8633,4.1118,-4.0483,0.977,0.224,2400.0,2340.0,0.1889,-1.0047,4.0896,10.6348 2019-06-03 15:45:01.680,137.8377,8834.835,4.1103,-4.0085,0.8779,-0.0357,2400.0,2340.0,0.186,-1.0108,4.0896,10.6231 2019-06-03 15:45:01.700,137.8377,8834.835,4.1037,-3.9756,0.9101,-0.0448,2400.0,2340.0,0.186,-1.0047,4.083,10.6109 2019-06-03 15:45:01.720,137.8377,8834.8633,4.1037,-3.9756,1.1904,0.1792,2400.0,2340.0,0.1772,-1.0078,4.0909,10.6109 2019-06-03 15:45:01.740,137.8913,8834.9199,4.1037,-3.9756,0.8554,-0.0009,2400.0,2340.0,0.1802,-1.0138,4.0843,10.6109 2019-06-03 15:45:01.760,137.8735,8834.9199,4.1079,-3.9389,1.23,0.1853,2400.0,2340.0,0.186,-1.0047,4.0896,10.5994 2019-06-03 15:45:01.780,137.8377,8834.9482,4.1079,-3.9389,0.727,0.0176,2400.0,2340.0,0.1889,-1.0078,4.0909,10.5994 2019-06-03 15:45:01.800,137.8377,8834.8916,4.1066,-3.8884,0.7263,0.0229,2400.0,2340.0,0.186,-1.0078,4.0803,10.5825 2019-06-03 15:45:01.820,137.8377,8834.8057,4.1084,-3.8687,1.2722,0.12,2400.0,2340.0,0.1802,-1.0078,4.0909,10.5772 2019-06-03 15:45:01.840,137.8913,8834.8057,4.1084,-3.8687,0.7703,0.0871,2400.0,2340.0,0.1831,-1.0078,4.0869,10.5772 2019-06-03 15:45:01.860,137.9002,8834.7773,4.1084,-3.8687,1.2711,0.0507,2400.0,2340.0,0.186,-1.0108,4.0909,10.5772 2019-06-03 15:45:01.880,137.8288,8834.749,4.1054,-3.8406,0.7847,0.1626,2400.0,2340.0,0.1802,-1.0108,4.0936,10.5655 2019-06-03 15:45:01.900,137.8377,8834.6914,4.1104,-3.8064,0.8036,0.1644,2400.0,2340.0,0.1831,-1.0078,4.0816,10.5538 2019-06-03 15:45:01.920,137.8198,8834.7207,4.1104,-3.8064,1.1634,-0.0174,2400.0,2340.0,0.1772,-1.0289,4.0909,10.5538 2019-06-03 15:45:01.940,137.9002,8834.7207,4.1104,-3.8064,0.9818,0.2022,2400.0,2340.0,0.1772,-1.0349,4.0936,10.5538 2019-06-03 15:45:01.960,137.8824,8834.7207,4.1126,-3.7739,1.0787,-0.0258,2400.0,2340.0,0.1772,-1.0289,4.0922,10.5428 2019-06-03 15:45:01.980,137.8377,8834.7773,4.107,-3.7482,1.0403,0.2151,2400.0,2340.0,0.1743,-1.0319,4.0896,10.5319 2019-06-03 15:45:02.000,137.8377,8834.8057,4.112,-3.7311,1.1235,0.1884,2400.0,2340.0,0.1802,-1.0289,4.0763,10.5265 2019-06-03 15:45:02.020,137.8377,8834.8057,4.1056,-3.7211,0.808,0.0164,2400.0,2340.0,0.1889,-1.0319,4.0936,10.5202 2019-06-03 15:45:02.040,137.8824,8834.835,4.1056,-3.7211,1.2137,0.157,2400.0,2340.0,0.1977,-1.0409,4.0989,10.5202 2019-06-03 15:45:02.060,137.8913,8834.835,4.1056,-3.7211,0.8236,0.0458,2400.0,2340.0,0.1831,-1.0379,4.0856,10.5202 2019-06-03 15:45:02.080,137.8466,8835.6338,4.1076,-3.6918,1.1338,0.1421,2400.0,2340.0,0.1802,-1.044,4.0936,10.5093 2019-06-03 15:45:02.100,137.8377,8836.4326,4.1079,-3.6668,1.1893,0.13,2400.0,2340.0,0.1685,-1.0409,4.0711,10.4971 2019-06-03 15:45:02.120,137.8377,8837.4307,4.1079,-3.6668,0.7795,0.1061,2400.0,2340.0,0.1772,-1.044,4.0922,10.4971 2019-06-03 15:45:02.140,137.8913,8838.8291,4.1079,-3.6668,1.2097,0.0353,2400.0,2340.0,0.186,-1.044,4.0949,10.4971 2019-06-03 15:45:02.160,137.8824,8839.8555,4.1004,-3.6442,0.8003,0.1532,2400.0,2340.0,0.1918,-1.044,4.0856,10.4846 2019-06-03 15:45:02.180,137.8288,8841.3105,4.1004,-3.6442,1.0891,0.0037,2400.0,2340.0,0.186,-1.0379,4.0922,10.4846 2019-06-03 15:45:02.200,137.8377,8842.252,4.0999,-3.6084,1.0355,0.0221,2400.0,2340.0,0.1831,-1.0409,4.0843,10.4673 2019-06-03 15:45:02.220,137.8377,8843.1084,4.104,-3.5918,1.0606,0.2015,2400.0,2340.0,0.1655,-1.0409,4.0936,10.4615 2019-06-03 15:45:02.240,137.9002,8844.1924,4.104,-3.5918,0.9474,-0.0293,2400.0,2340.0,0.1568,-1.056,4.0922,10.4615 2019-06-03 15:45:02.260,137.9002,8844.1064,4.104,-3.5918,1.0037,0.2012,2400.0,2340.0,0.1626,-1.053,4.0856,10.4615 2019-06-03 15:45:02.280,137.8377,8844.0781,4.1008,-3.5726,0.9456,-0.0041,2400.0,2340.0,0.1714,-1.053,4.0949,10.4494 2019-06-03 15:45:02.300,137.8377,8844.0498,4.0999,-3.5544,0.9023,0.021,2400.0,2340.0,0.1802,-1.053,4.0856,10.4357 2019-06-03 15:45:02.320,137.8288,8844.0781,4.0999,-3.5544,1.1553,0.1794,2400.0,2340.0,0.1889,-1.056,4.0896,10.4357 2019-06-03 15:45:02.340,137.8913,8844.0781,4.0999,-3.5544,0.8631,0.057,2400.0,2340.0,0.1889,-1.053,4.0909,10.4357 2019-06-03 15:45:02.360,137.8913,8844.0498,4.1034,-3.5297,1.1579,0.1026,2400.0,2340.0,0.186,-1.056,4.0922,10.423 2019-06-03 15:45:02.380,137.8466,8844.0498,4.1043,-3.5098,0.8798,0.089,2400.0,2340.0,0.1772,-1.059,4.0962,10.4104 2019-06-03 15:45:02.400,137.8288,8844.0498,4.1034,-3.5036,0.8727,0.1076,2400.0,2400.0,0.1772,-1.056,4.0803,10.4035 2019-06-03 15:45:02.420,137.8466,8844.0498,4.1011,-3.4935,1.1028,0.0665,2400.0,2400.0,0.1772,-1.056,4.0816,10.3968 2019-06-03 15:45:02.440,137.9002,8844.1064,4.1011,-3.4935,0.9371,0.1292,2400.0,2400.0,0.1743,-1.0621,4.0856,10.3968 2019-06-03 15:45:02.460,137.8913,8844.1641,4.1011,-3.4935,1.081,0.0303,2400.0,2400.0,0.1772,-1.059,4.0724,10.3968 2019-06-03 15:45:02.480,137.8288,8844.0498,4.1002,-3.4775,0.9977,0.1582,2400.0,2400.0,0.1743,-1.0681,4.079,10.3822 2019-06-03 15:45:02.500,137.8377,8843.9355,4.1019,-3.4574,1.0662,0.1675,2400.0,2400.0,0.1743,-1.0711,4.0697,10.3683 2019-06-03 15:45:02.520,137.8288,8843.9355,4.1019,-3.4574,0.8957,0.0472,2400.0,2400.0,0.186,-1.0711,4.0618,10.3683 2019-06-03 15:45:02.540,137.8913,8844.0215,4.1019,-3.4574,1.0706,0.1416,2400.0,2400.0,0.1831,-1.1013,4.0631,10.3683 2019-06-03 15:45:02.560,137.8824,8844.1064,4.1001,-3.4415,0.9238,0.0458,2400.0,2400.0,0.1889,-1.1043,4.0499,10.3533 2019-06-03 15:45:02.580,137.8288,8844.1348,4.1001,-3.4415,1.1076,0.1062,2400.0,2400.0,0.1743,-1.1706,4.0605,10.3533 2019-06-03 15:45:02.600,137.8377,8844.1641,4.0988,-3.4164,1.1438,0.094,2400.0,2400.0,0.1772,-1.1706,4.0499,10.3321 2019-06-03 15:45:02.620,137.8466,8844.1348,4.0957,-3.4094,0.8838,0.1293,2400.0,2400.0,0.1772,-1.1736,4.0472,10.3246 2019-06-03 15:45:02.640,137.8913,8844.0781,4.0957,-3.4094,1.176,0.0543,2400.0,2400.0,0.1655,-1.2127,4.0578,10.3246 2019-06-03 15:45:02.660,137.9002,8844.0215,4.0957,-3.4094,0.8779,0.1213,2400.0,2400.0,0.1802,-1.2097,4.0525,10.3246 2019-06-03 15:45:02.680,137.8377,8844.0498,4.096,-3.3939,1.0673,0.0083,2400.0,2400.0,0.1568,-1.2097,4.0525,10.3093 2019-06-03 15:45:02.700,137.8466,8843.9355,4.0911,-3.3839,1.0492,0.009,2400.0,2400.0,0.1743,-1.2097,4.0684,10.2938 2019-06-03 15:45:02.720,137.9805,8843.9639,4.0911,-3.3839,1.0961,0.1744,2400.0,2400.0,0.1626,-1.2097,4.0538,10.2938 2019-06-03 15:45:02.740,138.0251,8843.9922,4.0911,-3.3839,0.8476,0.0058,2400.0,2400.0,0.1568,-1.2097,4.0909,10.2938 2019-06-03 15:45:02.760,138.034,8843.9639,4.0871,-3.3736,1.0917,0.1553,2400.0,2400.0,0.1538,-1.2067,4.0763,10.2779 2019-06-03 15:45:02.780,137.9895,8844.0215,4.0871,-3.3736,0.8927,-0.01,2400.0,2400.0,0.1451,-1.2097,4.0856,10.2779 2019-06-03 15:45:02.800,137.9805,8844.0498,4.0816,-3.3648,0.8605,0.0116,2400.0,2400.0,0.148,-1.2067,4.083,10.254 2019-06-03 15:45:02.820,137.9895,8844.0781,4.0811,-3.3594,1.1867,0.1639,2400.0,2400.0,0.1597,-1.2097,4.0763,10.2463 2019-06-03 15:45:02.840,138.034,8844.1348,4.0811,-3.3594,0.8694,0.0269,2400.0,2400.0,0.1509,-1.2097,4.0856,10.2463 2019-06-03 15:45:02.860,138.034,8844.1348,4.0811,-3.3594,1.2411,0.1313,2400.0,2400.0,0.1568,-1.1706,4.0711,10.2463 2019-06-03 15:45:02.880,137.9805,8844.1348,4.0745,-3.3541,0.8043,0.0602,2400.0,2400.0,0.1568,-1.1766,4.0763,10.2308 2019-06-03 15:45:02.900,137.9805,8844.1064,4.0728,-3.3459,0.8435,0.121,2400.0,2400.0,0.1597,-1.1796,4.0816,10.215 2019-06-03 15:45:02.920,137.9627,8844.0781,4.0728,-3.3459,1.2085,0.0493,2400.0,2400.0,0.1568,-1.1796,4.0737,10.215 2019-06-03 15:45:02.940,138.034,8844.0781,4.0728,-3.3459,0.9094,0.1674,2400.0,2400.0,0.1422,-1.1766,4.0843,10.215 2019-06-03 15:45:02.960,138.0429,8844.1064,4.0708,-3.3365,1.0092,-0.0073,2400.0,2400.0,0.1451,-1.1766,4.0724,10.1995 2019-06-03 15:45:02.980,137.9716,8844.1348,4.0708,-3.3365,1.0136,0.1884,2400.0,2400.0,0.1363,-1.1766,4.0658,10.1995 2019-06-03 15:45:03.000,137.9805,8844.1348,4.0677,-3.3255,1.0199,0.1857,2400.0,2400.0,0.1568,-1.1766,4.0816,10.1725 2019-06-03 15:45:03.020,137.9805,8844.1348,4.0595,-3.3284,0.8568,-0.0045,2400.0,2400.0,0.1626,-1.1796,4.079,10.1645 2019-06-03 15:45:03.040,138.034,8844.1064,4.0595,-3.3284,1.1664,0.1845,2400.0,2400.0,0.1451,-1.1796,4.0896,10.1645 2019-06-03 15:45:03.060,138.0518,8844.0498,4.0595,-3.3284,0.7614,0.0095,2400.0,2400.0,0.1451,-1.1766,4.0777,10.1645 2019-06-03 15:45:03.080,137.9805,8844.0498,4.0619,-3.3193,1.1779,0.1586,2400.0,2400.0,0.1422,-1.1796,4.0724,10.1488 2019-06-03 15:45:03.100,137.9805,8843.9639,4.0602,-3.3134,1.1875,0.1461,2400.0,2400.0,0.1568,-1.1796,4.0883,10.1326 2019-06-03 15:45:03.120,137.9716,8844.0215,4.0602,-3.3134,0.6372,0.0748,2400.0,2400.0,0.1568,-1.1796,4.075,10.1326 2019-06-03 15:45:03.140,138.0251,8844.0781,4.0602,-3.3134,1.2936,0.0594,2400.0,2400.0,0.1275,-1.1796,4.0856,10.1326 2019-06-03 15:45:03.160,138.0251,8844.1641,4.0521,-3.3147,0.7137,0.1338,2400.0,2400.0,0.1275,-1.1766,4.0697,10.1169 2019-06-03 15:45:03.180,137.9805,8844.1641,4.0521,-3.3147,1.1708,0.0413,2400.0,2400.0,0.1275,-1.1766,4.0658,10.1169 2019-06-03 15:45:03.200,137.9716,8844.1641,4.0502,-3.309,1.125,0.0287,2400.0,2400.0,0.148,-1.1796,4.0869,10.0931 2019-06-03 15:45:03.220,137.9895,8844.1641,4.0516,-3.3052,0.8432,0.1676,2400.0,2400.0,0.1451,-1.1766,4.0816,10.0855 2019-06-03 15:45:03.240,138.034,8844.1924,4.0516,-3.3052,1.1527,-0.0286,2400.0,2400.0,0.1305,-1.1766,4.083,10.0855 2019-06-03 15:45:03.260,138.0429,8844.1924,4.0516,-3.3052,1.0395,0.1914,2400.0,2400.0,0.1217,-1.1796,4.0671,10.0855 2019-06-03 15:45:03.280,137.9716,8844.1924,4.0491,-3.3001,1.1091,-0.0172,2400.0,2400.0,0.1188,-1.1796,4.0724,10.0697 2019-06-03 15:45:03.300,137.9895,8844.1348,4.0418,-3.2975,0.9674,-0.051,2400.0,2400.0,0.1188,-1.1796,4.0896,10.0545 2019-06-03 15:45:03.320,137.9716,8844.0498,4.0418,-3.2975,1.1113,0.2162,2400.0,2400.0,0.1275,-1.1766,4.0856,10.0545 2019-06-03 15:45:03.340,138.034,8844.0498,4.0418,-3.2975,0.8813,-0.0496,2400.0,2400.0,0.1275,-1.1766,4.0909,10.0545 2019-06-03 15:45:03.360,138.034,8844.0781,4.043,-3.2918,1.1549,0.2019,2400.0,2400.0,0.1275,-1.1766,4.0816,10.0393 2019-06-03 15:45:03.380,137.9895,8844.0498,4.0444,-3.2851,0.8935,0.0061,2400.0,2400.0,0.1217,-1.1796,4.0843,10.0249 2019-06-03 15:45:03.400,137.9716,8844.0215,4.0389,-3.2864,0.7851,0.0244,2340.0,2340.0,0.1188,-1.1796,4.0936,10.0176 2019-06-03 15:45:03.420,137.9805,8844.0215,4.0422,-3.2835,1.2352,0.1286,2340.0,2340.0,0.1129,-1.1796,4.0777,10.0104 2019-06-03 15:45:03.440,138.0251,8844.0215,4.0422,-3.2835,0.6974,0.0628,2340.0,2340.0,0.11,-1.1886,4.0896,10.0104 2019-06-03 15:45:03.460,138.0429,8843.9922,4.0422,-3.2835,1.2093,0.0887,2340.0,2340.0,0.1158,-1.1916,4.0896,10.0104 2019-06-03 15:45:03.480,137.9805,8844.0498,4.038,-3.2823,0.8598,0.136,2340.0,2340.0,0.1188,-1.1946,4.0816,9.996 2019-06-03 15:45:03.500,137.9895,8844.0215,4.039,-3.2748,0.8095,0.1332,2340.0,2340.0,0.1188,-1.1916,4.0922,9.9815 2019-06-03 15:45:03.520,138.1141,8843.9922,4.039,-3.2748,1.146,0.0319,2340.0,2340.0,0.1217,-1.1946,4.079,9.9815 2019-06-03 15:45:03.540,138.1675,8844.0498,4.039,-3.2748,0.8875,0.148,2340.0,2340.0,0.1217,-1.1946,4.0896,9.9815 2019-06-03 15:45:03.560,138.1497,8844.1641,4.0427,-3.2695,1.0802,0.0012,2340.0,2340.0,0.1246,-1.1946,4.0843,9.9663 2019-06-03 15:45:03.580,138.1141,8844.1348,4.0427,-3.2695,0.9674,0.2087,2340.0,2340.0,0.1305,-1.1916,4.083,9.9663 2019-06-03 15:45:03.600,138.1052,8844.1641,4.0407,-3.2653,1.0007,0.2002,2340.0,2340.0,0.1305,-1.1946,4.0856,9.9416 2019-06-03 15:45:03.620,138.1141,8844.1348,4.0368,-3.2685,0.9541,-0.0405,2340.0,2340.0,0.1275,-1.1916,4.0777,9.9334 2019-06-03 15:45:03.640,138.1764,8844.1348,4.0368,-3.2685,1.1893,0.1819,2340.0,2340.0,0.1012,-1.1946,4.0591,9.9334 2019-06-03 15:45:03.660,138.1764,8844.1064,4.0368,-3.2685,0.7914,-0.0005,2340.0,2340.0,0.11,-1.1977,4.0711,9.9334 2019-06-03 15:45:03.680,138.0963,8844.1924,4.0402,-3.2607,1.1679,0.1898,2340.0,2340.0,0.1158,-1.1946,4.0658,9.9198 2019-06-03 15:45:03.700,138.123,8844.1064,4.0387,-3.2581,1.2348,0.145,2340.0,2340.0,0.1188,-1.1916,4.0777,9.9056 2019-06-03 15:45:03.720,138.0963,8844.1064,4.0387,-3.2581,0.6471,0.056,2340.0,2340.0,0.1217,-1.1946,4.0631,9.9056 2019-06-03 15:45:03.740,138.1675,8844.1641,4.0387,-3.2581,1.2829,0.0721,2340.0,2340.0,0.1129,-1.1977,4.0565,9.9056 2019-06-03 15:45:03.760,138.1675,8844.1641,4.0352,-3.2594,0.8557,0.1029,2340.0,2340.0,0.1129,-1.1977,4.0671,9.8909 2019-06-03 15:45:03.780,138.1141,8844.1641,4.0352,-3.2594,1.1727,0.0845,2340.0,2340.0,0.1129,-1.1946,4.0538,9.8909 2019-06-03 15:45:03.800,138.1141,8844.1924,4.0357,-3.256,1.2052,0.0435,2340.0,2340.0,0.1188,-1.1946,4.0711,9.8675 2019-06-03 15:45:03.820,138.123,8844.1924,4.0381,-3.2544,0.7548,0.1221,2340.0,2340.0,0.1042,-1.1946,4.0525,9.8615 2019-06-03 15:45:03.840,138.1586,8844.1924,4.0381,-3.2544,1.1838,0.0183,2340.0,2340.0,0.1071,-1.1946,4.0499,9.8615 2019-06-03 15:45:03.860,138.1675,8844.1064,4.0381,-3.2544,1.0114,0.1677,2340.0,2340.0,0.1071,-1.1916,4.0631,9.8615 2019-06-03 15:45:03.880,138.1052,8844.1348,4.0371,-3.2505,1.0813,0.0308,2340.0,2340.0,0.11,-1.1916,4.0485,9.8486 2019-06-03 15:45:03.900,138.1141,8844.0215,4.0292,-3.2533,1.0436,-0.0324,2340.0,2340.0,0.1042,-1.1916,4.0618,9.8351 2019-06-03 15:45:03.920,138.1052,8844.0215,4.0292,-3.2533,1.061,0.1777,2340.0,2340.0,0.0983,-1.1916,4.0485,9.8351 2019-06-03 15:45:03.940,138.1675,8844.0498,4.0292,-3.2533,0.983,-0.0177,2340.0,2340.0,0.0954,-1.1946,4.0432,9.8351 2019-06-03 15:45:03.960,138.1497,8844.0498,4.0285,-3.2508,1.1279,0.1944,2340.0,2340.0,0.0925,-1.1946,4.0512,9.823 2019-06-03 15:45:03.980,138.1141,8844.0498,4.0285,-3.2508,0.7703,0.0497,2340.0,2340.0,0.1012,-1.1916,4.0406,9.823 2019-06-03 15:45:04.000,138.1052,8844.0498,4.0233,-3.2505,0.9242,0.0323,2340.0,2340.0,0.0983,-1.1946,4.0499,9.8027 2019-06-03 15:45:04.020,138.1052,8844.0215,4.0263,-3.2478,1.1912,0.1079,2340.0,2340.0,0.1071,-1.1916,4.0446,9.7963 2019-06-03 15:45:04.040,138.1675,8843.9639,4.0263,-3.2478,0.9145,0.0799,2340.0,2340.0,0.1071,-1.1886,4.0327,9.7963 2019-06-03 15:45:04.060,138.1764,8843.9355,4.0263,-3.2478,1.1838,0.0892,2340.0,2340.0,0.0954,-1.1916,4.0459,9.7963 2019-06-03 15:45:04.080,138.1052,8843.9355,4.0195,-3.2484,0.8143,0.1199,2340.0,2340.0,0.0603,-1.1916,4.0353,9.7838 2019-06-03 15:45:04.100,138.1052,8843.8789,4.0177,-3.2429,0.8772,0.1222,2340.0,2340.0,0.0311,-1.1916,4.0419,9.7722 2019-06-03 15:45:04.120,138.2563,8843.8789,4.0177,-3.2429,1.166,0.0311,2340.0,2340.0,0.0106,-1.1946,4.0419,9.7722 2019-06-03 15:45:04.140,138.3096,8843.8789,4.0177,-3.2429,0.946,0.1832,2340.0,2340.0,0.0106,-1.1916,4.0353,9.7722 2019-06-03 15:45:04.160,138.3096,8843.9355,4.0171,-3.2422,1.0166,-0.0034,2340.0,2340.0,0.0223,-1.1886,4.0525,9.759 2019-06-03 15:45:04.180,138.2563,8843.9639,4.0171,-3.2422,1.0961,0.1654,2340.0,2340.0,0.0282,-1.1916,4.0274,9.759 2019-06-03 15:45:04.200,138.2475,8844.0215,4.0113,-3.2367,1.1253,0.1442,2340.0,2340.0,0.0223,-1.1916,4.0327,9.7388 2019-06-03 15:45:04.220,138.2563,8843.9922,4.0069,-3.2377,0.9637,0.0243,2340.0,2340.0,0.0106,-1.1946,4.0353,9.7309 2019-06-03 15:45:04.240,138.3096,8844.0498,4.0069,-3.2377,1.0835,0.1726,2340.0,2340.0,-0.004,-1.1916,4.0234,9.7309 2019-06-03 15:45:04.260,138.3184,8843.9922,4.0069,-3.2377,0.8587,0.037,2340.0,2340.0,-0.004,-1.1886,4.0313,9.7309 2019-06-03 15:45:04.280,138.2563,8844.0215,4.0038,-3.2277,1.1797,0.1315,2340.0,2340.0,-0.0011,-1.1886,4.0234,9.7185 2019-06-03 15:45:04.300,138.2563,8843.9922,3.9985,-3.2233,1.1597,0.0864,2340.0,2340.0,-0.0128,-1.1946,4.0194,9.7042 2019-06-03 15:45:04.320,138.2563,8843.9639,3.9985,-3.2233,0.8099,0.1037,2340.0,2340.0,-0.0011,-1.1886,4.0327,9.7042 2019-06-03 15:45:04.340,138.3184,8843.9922,3.9985,-3.2233,1.1819,0.0879,2340.0,2340.0,-0.0157,-1.1946,4.0115,9.7042 2019-06-03 15:45:04.360,138.3007,8844.0215,3.9918,-3.2216,0.9193,0.1024,2340.0,2340.0,-0.0128,-1.1916,4.0313,9.6889 2019-06-03 15:45:04.380,138.2563,8844.0498,3.9918,-3.2216,1.051,0.0705,2340.0,2340.0,-0.0157,-1.1916,4.0207,9.6889 2019-06-03 15:45:04.400,138.2563,8844.0498,3.9868,-3.2105,1.1612,0.0122,2400.0,2340.0,-0.0157,-1.1916,4.026,9.6684 2019-06-03 15:45:04.420,138.2475,8844.0215,3.9879,-3.2059,0.9892,0.1723,2400.0,2340.0,-0.0245,-1.1946,4.03,9.6606 2019-06-03 15:45:04.440,138.3096,8844.0215,3.9879,-3.2059,0.9926,0.033,2400.0,2340.0,-0.0186,-1.1946,4.0194,9.6606 2019-06-03 15:45:04.460,138.3184,8843.9922,3.9879,-3.2059,1.0865,0.1911,2400.0,2340.0,-0.0098,-1.1946,4.026,9.6606 2019-06-03 15:45:04.480,138.2475,8844.0498,3.9792,-3.2026,0.9108,0.0106,2400.0,2340.0,-0.0157,-1.1916,4.0221,9.6444 2019-06-03 15:45:04.500,138.2652,8843.9639,3.9716,-3.2017,0.9696,-0.0344,2400.0,2340.0,-0.0215,-1.1916,4.0247,9.6273 2019-06-03 15:45:04.520,138.3893,8843.9922,3.9716,-3.2017,1.1819,0.1947,2400.0,2340.0,-0.0303,-1.1916,4.026,9.6273 2019-06-03 15:45:04.540,138.4424,8844.0215,3.9716,-3.2017,0.7707,0.0543,2400.0,2340.0,-0.0215,-1.1916,4.0181,9.6273 2019-06-03 15:45:04.560,138.4424,8844.0498,3.9711,-3.1935,1.095,0.0988,2400.0,2340.0,-0.0128,-1.1916,4.0353,9.6102 2019-06-03 15:45:04.580,138.3893,8844.1064,3.9711,-3.1935,0.8613,0.0859,2400.0,2340.0,-0.0157,-1.1946,4.0353,9.6102 2019-06-03 15:45:04.600,138.3982,8844.1064,3.9619,-3.1893,0.9101,0.1005,2400.0,2340.0,-0.0186,-1.1916,4.03,9.5826 2019-06-03 15:45:04.620,138.3982,8844.1348,3.9591,-3.1877,1.1527,0.0707,2400.0,2340.0,-0.0157,-1.1886,4.0366,9.5738 2019-06-03 15:45:04.640,138.4424,8844.1348,3.9591,-3.1877,0.8428,0.1466,2400.0,2340.0,-0.0245,-1.1946,4.0313,9.5738 2019-06-03 15:45:04.660,138.4513,8844.1348,3.9591,-3.1877,1.1002,0.0146,2400.0,2340.0,-0.0245,-1.1916,4.0512,9.5738 2019-06-03 15:45:04.680,138.3893,8844.0781,3.9515,-3.1846,0.9319,0.1605,2400.0,2340.0,-0.0303,-1.1916,4.0432,9.5563 2019-06-03 15:45:04.700,138.3982,8844.0215,3.9483,-3.1802,0.9574,0.1687,2400.0,2340.0,-0.0274,-1.1946,4.0419,9.5384 2019-06-03 15:45:04.720,138.3893,8844.0215,3.9483,-3.1802,0.9974,0.0156,2400.0,2340.0,-0.0215,-1.1946,4.0499,9.5384 2019-06-03 15:45:04.740,138.4424,8843.9922,3.9483,-3.1802,0.9844,0.1836,2400.0,2340.0,-0.0215,-1.1916,4.0459,9.5384 2019-06-03 15:45:04.760,138.4424,8844.0215,3.9436,-3.177,0.9182,-0.0277,2400.0,2340.0,-0.0215,-1.1946,4.0684,9.5205 2019-06-03 15:45:04.780,138.3893,8844.0215,3.9335,-3.1753,1.2378,0.1762,2400.0,2340.0,-0.0128,-1.1916,4.0618,9.5025 2019-06-03 15:45:04.800,138.3982,8844.0498,3.9346,-3.1691,1.1165,0.1457,2400.0,2340.0,-0.0157,-1.1916,4.0499,9.4944 2019-06-03 15:45:04.820,138.3893,8843.9639,3.929,-3.1696,0.7807,0.0475,2400.0,2340.0,-0.0128,-1.1916,4.0605,9.4855 2019-06-03 15:45:04.840,138.4336,8843.9639,3.929,-3.1696,1.2951,0.1375,2400.0,2340.0,-0.0245,-1.1886,4.0565,9.4855 2019-06-03 15:45:04.860,138.4601,8843.9639,3.929,-3.1696,0.8065,0.0656,2400.0,2340.0,-0.0332,-1.1916,4.0803,9.4855 2019-06-03 15:45:04.880,138.3893,8843.9639,3.9247,-3.1616,1.2318,0.066,2400.0,2340.0,-0.0303,-1.1916,4.0631,9.467 2019-06-03 15:45:04.900,138.3982,8843.9072,3.919,-3.1559,1.1061,0.0673,2400.0,2340.0,-0.0245,-1.1946,4.0512,9.4492 2019-06-03 15:45:04.920,138.3804,8843.9355,3.919,-3.1559,0.781,0.118,2400.0,2340.0,-0.0098,-1.1916,4.0671,9.4492 2019-06-03 15:45:04.940,138.4424,8844.0498,3.919,-3.1559,1.23,0.0585,2400.0,2340.0,0.0077,-1.1946,4.0658,9.4492 2019-06-03 15:45:04.960,138.4424,8844.0498,3.9109,-3.1549,0.8239,0.1508,2400.0,2340.0,-0.0128,-1.1946,4.0777,9.4306 2019-06-03 15:45:04.980,138.3893,8844.1348,3.9109,-3.1549,1.0725,-0.011,2400.0,2340.0,-0.0245,-1.1916,4.0565,9.4306 2019-06-03 15:45:05.000,138.3893,8844.1641,3.9054,-3.1473,1.0913,0.0166,2400.0,2340.0,-0.0332,-1.1916,4.0512,9.4024 2019-06-03 15:45:05.020,138.3982,8844.1348,3.9083,-3.1406,0.9811,0.1855,2400.0,2340.0,-0.0245,-1.1916,4.0658,9.3948 2019-06-03 15:45:05.040,138.4513,8844.1348,3.9083,-3.1406,0.9552,-0.0142,2400.0,2340.0,-0.0186,-1.1916,4.0631,9.3948 2019-06-03 15:45:05.060,138.4513,8844.1348,3.9083,-3.1406,1.0425,0.1991,2400.0,2340.0,-0.0332,-1.1946,4.0644,9.3948 2019-06-03 15:45:05.080,138.3982,8844.0781,3.9029,-3.1419,0.862,-0.0381,2400.0,2340.0,-0.0362,-1.1977,4.0605,9.3753 2019-06-03 15:45:05.100,138.3982,8843.9072,3.8964,-3.1473,0.8539,0.0001,2400.0,2340.0,-0.042,-1.1977,4.0512,9.3552 2019-06-03 15:45:05.120,138.5309,8843.8789,3.8964,-3.1473,1.227,0.1595,2400.0,2340.0,-0.0362,-1.1977,4.0697,9.3552 2019-06-03 15:45:05.140,138.5927,8843.9072,3.8964,-3.1473,0.7781,0.0381,2400.0,2340.0,-0.0332,-1.2037,4.0565,9.3552 2019-06-03 15:45:05.160,138.5838,8843.9639,3.8982,-3.1453,1.2507,0.126,2400.0,2340.0,-0.0215,-1.2037,4.0631,9.3363 2019-06-03 15:45:05.180,138.5309,8843.9639,3.8982,-3.1453,0.7551,0.0706,2400.0,2340.0,-0.0274,-1.2067,4.0565,9.3363 2019-06-03 15:45:05.200,138.5309,8843.9639,3.8912,-3.147,0.8128,0.1278,2400.0,2340.0,-0.0215,-1.2037,4.0419,9.3067 2019-06-03 15:45:05.220,138.5397,8843.9355,3.8897,-3.1478,1.2455,0.0542,2400.0,2340.0,-0.0245,-1.2097,4.0631,9.2968 2019-06-03 15:45:05.240,138.5838,8843.9639,3.8897,-3.1478,0.6897,0.1393,2400.0,2340.0,-0.0274,-1.2187,4.0591,9.2968 2019-06-03 15:45:05.260,138.5927,8843.9922,3.8897,-3.1478,1.2134,0.0308,2400.0,2340.0,-0.0332,-1.2217,4.0552,9.2968 2019-06-03 15:45:05.280,138.5309,8844.0498,3.8862,-3.1509,0.8716,0.1381,2400.0,2340.0,-0.042,-1.2277,4.0552,9.2772 2019-06-03 15:45:05.300,138.5397,8843.9639,3.8887,-3.1499,0.8687,0.1651,2400.0,2340.0,-0.042,-1.2247,4.0432,9.2576 2019-06-03 15:45:05.320,138.5309,8843.9639,3.8887,-3.1499,1.1357,-0.0028,2400.0,2340.0,-0.0391,-1.2247,4.0644,9.2576 2019-06-03 15:45:05.340,138.5927,8843.9922,3.8887,-3.1499,0.9304,0.1792,2400.0,2340.0,-0.0391,-1.2488,4.0578,9.2576 2019-06-03 15:45:05.360,138.5838,8843.9922,3.8878,-3.1547,1.0358,-0.0271,2400.0,2340.0,-0.0391,-1.2488,4.0472,9.2368 2019-06-03 15:45:05.380,138.5309,8843.9922,3.8878,-3.1547,1.1024,0.2085,2400.0,2340.0,-0.0332,-1.2488,4.0618,9.2368 2019-06-03 15:45:05.400,138.5309,8843.9922,3.8844,-3.1616,1.0861,0.2268,2340.0,2400.0,-0.0303,-1.2488,4.0472,9.2096 2019-06-03 15:45:05.420,138.5397,8843.9922,3.8766,-3.1686,0.9315,-0.0384,2340.0,2400.0,-0.0245,-1.2488,4.0671,9.1995 2019-06-03 15:45:05.440,138.5927,8843.9922,3.8766,-3.1686,1.1497,0.1907,2340.0,2400.0,-0.042,-1.2518,4.0565,9.1995 2019-06-03 15:45:05.460,138.5927,8843.9355,3.8766,-3.1686,0.9182,0.0089,2340.0,2400.0,-0.0449,-1.2488,4.0499,9.1995 2019-06-03 15:45:05.480,138.5397,8843.9072,3.8798,-3.1739,1.1867,0.1679,2340.0,2400.0,-0.042,-1.2518,4.0631,9.1799 2019-06-03 15:45:05.500,138.5397,8843.8496,3.8785,-3.1819,1.1967,0.1512,2340.0,2400.0,-0.042,-1.2488,4.0512,9.1612 2019-06-03 15:45:05.520,138.6809,8843.8789,3.8785,-3.1819,0.8162,0.0509,2340.0,2400.0,-0.0274,-1.2518,4.0631,9.1612 2019-06-03 15:45:05.540,138.7249,8843.9072,3.8785,-3.1819,1.2304,0.0738,2340.0,2400.0,-0.0362,-1.2488,4.0618,9.1612 2019-06-03 15:45:05.560,138.7161,8843.9639,3.8712,-3.1956,0.8661,0.0781,2340.0,2400.0,-0.0449,-1.2488,4.0538,9.1426 2019-06-03 15:45:05.580,138.672,8843.9922,3.8712,-3.1956,1.2074,0.0771,2340.0,2400.0,-0.0508,-1.2518,4.0538,9.1426 2019-06-03 15:45:05.600,138.672,8843.9922,3.8687,-3.2108,1.1068,0.0656,2340.0,2400.0,-0.0449,-1.2458,4.0499,9.1134 2019-06-03 15:45:05.620,138.6809,8844.0215,3.8683,-3.213,0.9334,0.1479,2340.0,2400.0,-0.0303,-1.2518,4.0565,9.1054 2019-06-03 15:45:05.640,138.7249,8843.9639,3.8683,-3.213,1.1276,-0.0102,2340.0,2400.0,-0.0303,-1.2488,4.0631,9.1054 2019-06-03 15:45:05.660,138.7337,8843.9639,3.8683,-3.213,0.9589,0.1229,2340.0,2400.0,-0.0362,-1.2518,4.0525,9.1054 2019-06-03 15:45:05.680,138.6809,8843.9639,3.8655,-3.2246,1.0096,0.0184,2340.0,2400.0,-0.0303,-1.2488,4.0525,9.0874 2019-06-03 15:45:05.700,138.672,8843.9355,3.8613,-3.2376,1.0199,0.0544,2340.0,2400.0,-0.0215,-1.2488,4.0472,9.0695 2019-06-03 15:45:05.720,138.6632,8843.9072,3.8613,-3.2376,0.9841,0.1727,2340.0,2400.0,-0.0274,-1.2518,4.0499,9.0695 2019-06-03 15:45:05.740,138.7249,8843.9072,3.8613,-3.2376,0.9356,-0.0007,2340.0,2400.0,-0.0303,-1.2548,4.0538,9.0695 2019-06-03 15:45:05.760,138.7161,8843.9639,3.8602,-3.2444,1.075,0.1316,2340.0,2400.0,-0.042,-1.2518,4.0432,9.0526 2019-06-03 15:45:05.780,138.6632,8843.9639,3.8602,-3.2444,0.8077,0.0228,2340.0,2400.0,-0.0478,-1.2488,4.0578,9.0526 2019-06-03 15:45:05.800,138.672,8843.9922,3.8558,-3.2612,0.8187,0.0301,2340.0,2400.0,-0.0537,-1.2488,4.0525,9.0284 2019-06-03 15:45:05.820,138.672,8844.0215,3.8571,-3.2624,1.102,0.1378,2340.0,2400.0,-0.0478,-1.2518,4.0499,9.0213 2019-06-03 15:45:05.840,138.7337,8844.0498,3.8571,-3.2624,0.8432,0.0579,2340.0,2400.0,-0.0449,-1.2518,4.0565,9.0213 2019-06-03 15:45:05.860,138.7337,8844.0215,3.8571,-3.2624,1.1054,0.0558,2340.0,2400.0,-0.0478,-1.2548,4.0446,9.0213 2019-06-03 15:45:05.880,138.6632,8844.0781,3.8528,-3.277,0.794,0.1448,2340.0,2400.0,-0.042,-1.2518,4.0631,9.006 2019-06-03 15:45:05.900,138.672,8844.0215,3.8528,-3.2874,0.7807,0.1671,2340.0,2400.0,-0.0508,-1.2759,4.0485,8.9908 2019-06-03 15:45:05.920,138.6632,8843.9922,3.8528,-3.2874,1.1523,0.0172,2340.0,2400.0,-0.0478,-1.2729,4.0512,8.9908 2019-06-03 15:45:05.940,138.7249,8844.0215,3.8528,-3.2874,0.9412,0.1553,2340.0,2400.0,-0.0508,-1.2729,4.0591,8.9908 2019-06-03 15:45:05.960,138.7249,8844.0498,3.852,-3.2972,1.149,-0.0192,2340.0,2400.0,-0.0478,-1.2729,4.0525,8.9769 2019-06-03 15:45:05.980,138.6632,8844.0781,3.852,-3.2972,1.0162,0.1866,2340.0,2400.0,-0.042,-1.2729,4.0644,8.9769 2019-06-03 15:45:06.000,138.6632,8844.0498,3.8446,-3.3187,0.9885,0.1942,2340.0,2400.0,-0.0478,-1.2729,4.0459,8.9524 2019-06-03 15:45:06.020,138.6809,8844.1064,3.8375,-3.3279,0.9963,0.0139,2340.0,2400.0,-0.0537,-1.2729,4.0565,8.9453 2019-06-03 15:45:06.040,138.7249,8843.9922,3.8375,-3.3279,1.0517,0.1537,2340.0,2400.0,-0.0625,-1.2759,4.0631,8.9453 2019-06-03 15:45:06.060,138.7337,8843.9355,3.8375,-3.3279,0.9308,-0.012,2340.0,2400.0,-0.0654,-1.2729,4.0499,8.9453 2019-06-03 15:45:06.080,138.6632,8843.9639,3.8364,-3.342,1.2067,0.1601,2340.0,2400.0,-0.0595,-1.2729,4.0591,8.9308 2019-06-03 15:45:06.100,138.672,8843.9072,3.8324,-3.3564,1.0451,0.1626,2340.0,2400.0,-0.0654,-1.2759,4.0485,8.9163 2019-06-03 15:45:06.120,138.8129,8843.9072,3.8324,-3.3564,0.9327,0.0085,2340.0,2400.0,-0.0625,-1.2729,4.0512,8.9163 2019-06-03 15:45:06.140,138.8657,8843.9072,3.8324,-3.3564,1.1446,0.1539,2340.0,2400.0,-0.0683,-1.2759,4.0578,8.9163 2019-06-03 15:45:06.160,138.8657,8843.9639,3.8239,-3.3731,0.8025,0.0449,2340.0,2400.0,-0.0712,-1.2759,4.0353,8.9017 2019-06-03 15:45:06.180,138.8217,8843.9072,3.817,-3.3865,1.1767,0.0808,2340.0,2400.0,-0.0683,-1.2699,4.0525,8.8878 2019-06-03 15:45:06.200,138.8041,8843.9639,3.8171,-3.393,1.149,0.0552,2340.0,2400.0,-0.0683,-1.2759,4.0499,8.8806 2019-06-03 15:45:06.220,138.8129,8843.9639,3.8153,-3.4002,0.97,0.1332,2340.0,2400.0,-0.08,-1.2729,4.0432,8.8731 2019-06-03 15:45:06.240,138.8569,8843.9639,3.8153,-3.4002,1.1841,0.0254,2340.0,2400.0,-0.0917,-1.2729,4.0393,8.8731 2019-06-03 15:45:06.260,138.8832,8843.9355,3.8153,-3.4002,0.8905,0.1577,2340.0,2400.0,-0.0829,-1.2699,4.0366,8.8731 2019-06-03 15:45:06.280,138.8041,8843.9072,3.8119,-3.4136,1.1608,-0.0096,2340.0,2400.0,-0.08,-1.2729,4.0432,8.8584 2019-06-03 15:45:06.300,138.8217,8843.8496,3.8036,-3.4321,1.0806,0.0167,2340.0,2400.0,-0.0654,-1.2699,4.0512,8.8433 2019-06-03 15:45:06.320,138.8041,8843.8213,3.8036,-3.4321,1.0432,0.1526,2340.0,2400.0,-0.0771,-1.2729,4.0393,8.8433 2019-06-03 15:45:06.340,138.8569,8843.9072,3.8036,-3.4321,1.0554,0.0332,2340.0,2400.0,-0.0917,-1.2729,4.038,8.8433 2019-06-03 15:45:06.360,138.8745,8843.9922,3.7994,-3.4454,1.0347,0.1768,2340.0,2400.0,-0.1005,-1.2699,4.0247,8.8282 2019-06-03 15:45:06.380,138.8129,8844.0498,3.7994,-3.4454,0.9197,-0.0142,2340.0,2400.0,-0.0917,-1.2729,4.0538,8.8282 2019-06-03 15:45:06.400,138.8041,8844.1641,3.792,-3.472,0.8994,-0.0007,2400.0,2340.0,-0.0946,-1.2699,4.0459,8.8058 2019-06-03 15:45:06.420,138.8217,8844.1641,3.7929,-3.4762,1.1697,0.1413,2400.0,2340.0,-0.0888,-1.2729,4.03,8.7985 2019-06-03 15:45:06.440,138.8657,8844.1924,3.7929,-3.4762,0.9341,0.0471,2400.0,2340.0,-0.0858,-1.2729,4.0313,8.7985 2019-06-03 15:45:06.460,138.8657,8844.1924,3.7929,-3.4762,1.193,0.1468,2400.0,2340.0,-0.0858,-1.2699,4.0287,8.7985 2019-06-03 15:45:06.480,138.8129,8844.1641,3.7868,-3.4935,0.8535,0.0711,2400.0,2340.0,-0.0858,-1.2699,4.0406,8.783 2019-06-03 15:45:06.500,138.8129,8844.0781,3.7846,-3.5064,0.8912,0.082,2400.0,2340.0,-0.0829,-1.2669,4.0459,8.7681 2019-06-03 15:45:06.520,138.9447,8844.0215,3.7846,-3.5064,1.1179,0.0512,2400.0,2340.0,-0.0946,-1.2729,4.0221,8.7681 2019-06-03 15:45:06.540,139.0061,8843.9922,3.7846,-3.5064,0.9319,0.1535,2400.0,2340.0,-0.0858,-1.2699,4.0327,8.7681 2019-06-03 15:45:06.560,138.9886,8843.9922,3.7836,-3.5197,1.105,0.0688,2400.0,2340.0,-0.0858,-1.2729,4.03,8.7531 2019-06-03 15:45:06.580,138.9447,8843.9355,3.7836,-3.5197,0.9622,0.1412,2400.0,2340.0,-0.0888,-1.2699,4.0393,8.7531 2019-06-03 15:45:06.600,138.9447,8843.9355,3.7768,-3.5488,1.078,0.1346,2400.0,2340.0,-0.0888,-1.2729,4.0419,8.7264 2019-06-03 15:45:06.620,138.9535,8843.8789,3.7702,-3.5606,1.0318,-0.0061,2400.0,2340.0,-0.0946,-1.2699,4.0168,8.7178 2019-06-03 15:45:06.640,138.9973,8843.9355,3.7702,-3.5606,1.0865,0.1814,2400.0,2340.0,-0.0888,-1.2729,4.026,8.7178 2019-06-03 15:45:06.660,139.0061,8843.9072,3.7702,-3.5606,0.9426,0.026,2400.0,2340.0,-0.0742,-1.2699,4.0247,8.7178 2019-06-03 15:45:06.680,138.9447,8843.9355,3.7707,-3.5769,1.0976,0.179,2400.0,2340.0,-0.0595,-1.2428,4.034,8.7003 2019-06-03 15:45:06.700,138.9535,8843.8496,3.768,-3.5967,1.1283,0.1627,2400.0,2340.0,-0.0595,-1.2398,4.0353,8.6822 2019-06-03 15:45:06.720,138.9359,8843.8496,3.768,-3.5967,0.8942,-0.0045,2400.0,2340.0,-0.0742,-1.2157,4.0154,8.6822 2019-06-03 15:45:06.740,139.0061,8843.8496,3.768,-3.5967,1.1579,0.1328,2400.0,2340.0,-0.0742,-1.2067,4.0247,8.6822 2019-06-03 15:45:06.760,138.9886,8843.9072,3.761,-3.6144,0.8043,0.0874,2400.0,2340.0,-0.08,-1.2037,4.026,8.6631 2019-06-03 15:45:06.780,138.9447,8843.9639,3.761,-3.6144,1.2821,0.0749,2400.0,2340.0,-0.0654,-1.2007,4.0207,8.6631 2019-06-03 15:45:06.800,138.9359,8843.9922,3.7574,-3.6387,1.2932,0.0649,2400.0,2340.0,-0.0537,-1.2007,4.0234,8.636 2019-06-03 15:45:06.820,138.9535,8843.9639,3.7549,-3.6464,0.8824,0.102,2400.0,2340.0,-0.0537,-1.2037,4.0088,8.6271 2019-06-03 15:45:06.840,139.0061,8843.9922,3.7549,-3.6464,1.1405,0.0573,2400.0,2340.0,-0.0537,-1.2037,4.0247,8.6271 2019-06-03 15:45:06.860,139.0061,8843.9355,3.7549,-3.6464,0.8191,0.1476,2400.0,2340.0,-0.0566,-1.2037,4.0234,8.6271 2019-06-03 15:45:06.880,138.9359,8843.9639,3.7528,-3.6575,1.0902,0.0031,2400.0,2340.0,-0.0332,-1.2037,4.0194,8.6091 2019-06-03 15:45:06.900,138.9535,8843.9072,3.7464,-3.6731,1.0884,-0.0175,2400.0,2340.0,-0.042,-1.2067,4.0128,8.5912 2019-06-03 15:45:06.920,138.9359,8843.9639,3.7464,-3.6731,0.9759,0.1551,2400.0,2340.0,-0.0303,-1.2007,4.0101,8.5912 2019-06-03 15:45:06.940,138.9973,8843.9922,3.7464,-3.6731,1.0421,0.0025,2400.0,2340.0,-0.0245,-1.1977,4.0221,8.5912 2019-06-03 15:45:06.960,139.0061,8843.9639,3.7401,-3.6844,1.0451,0.1988,2400.0,2340.0,-0.0303,-1.2007,4.0141,8.5738 2019-06-03 15:45:06.980,138.9447,8843.9922,3.7401,-3.6844,0.9408,-0.0199,2400.0,2340.0,-0.0215,-1.1886,4.0075,8.5738 2019-06-03 15:45:07.000,138.9535,8843.9922,3.7323,-3.7041,0.8642,-0.0393,2400.0,2340.0,-0.0303,-1.1916,4.0075,8.5458 2019-06-03 15:45:07.020,138.9535,8843.9639,3.7339,-3.7067,1.1634,0.1651,2400.0,2340.0,-0.0332,-1.1615,3.9863,8.5368 2019-06-03 15:45:07.040,139.0061,8843.9922,3.7339,-3.7067,0.8931,0.0174,2400.0,2340.0,-0.0332,-1.1314,4.0009,8.5368 2019-06-03 15:45:07.060,139.0061,8843.9639,3.7339,-3.7067,1.2381,0.1628,2400.0,2340.0,-0.042,-1.1314,3.9929,8.5368 2019-06-03 15:45:07.080,138.9447,8843.9639,3.7252,-3.718,0.8221,0.0571,2400.0,2340.0,-0.0478,-1.0892,3.9744,8.52 2019-06-03 15:45:07.100,138.9535,8843.8789,3.7191,-3.7275,0.7437,0.0469,2400.0,2340.0,-0.0478,-1.0952,3.9823,8.5039 2019-06-03 15:45:07.120,139.0849,8843.9072,3.7191,-3.7275,1.169,0.1001,2400.0,2340.0,-0.0508,-1.0952,3.9757,8.5039 2019-06-03 15:45:07.140,139.1462,8843.9355,3.7191,-3.7275,0.8409,0.0812,2400.0,2340.0,-0.0332,-1.0922,3.985,8.5039 2019-06-03 15:45:07.160,139.1375,8843.9922,3.7169,-3.7321,1.2204,0.0735,2400.0,2340.0,-0.0245,-1.0952,3.9784,8.487 2019-06-03 15:45:07.180,139.0762,8844.0215,3.7169,-3.7321,0.7733,0.1366,2400.0,2340.0,-0.0274,-1.056,3.9638,8.487 2019-06-03 15:45:07.200,139.0849,8844.0498,3.7066,-3.7408,0.9057,0.1392,2400.0,2340.0,-0.0362,-1.0621,3.9572,8.4624 2019-06-03 15:45:07.220,139.0937,8844.0215,3.6995,-3.7447,1.0817,0.024,2400.0,2340.0,-0.042,-1.0621,3.9598,8.4541 2019-06-03 15:45:07.240,139.1375,8844.0781,3.6995,-3.7447,0.9818,0.1684,2400.0,2340.0,-0.0303,-1.0228,3.9665,8.4541 2019-06-03 15:45:07.260,139.1462,8844.0781,3.6995,-3.7447,1.1553,0.009,2400.0,2340.0,-0.0332,-1.0259,3.9612,8.4541 2019-06-03 15:45:07.280,139.0762,8844.0215,3.6951,-3.7447,1.0125,0.1544,2400.0,2340.0,-0.0274,-1.0168,3.9426,8.4374 2019-06-03 15:45:07.300,139.0937,8843.9072,3.6915,-3.7382,1.061,0.1935,2400.0,2340.0,-0.0245,-1.0138,3.9426,8.4214 2019-06-03 15:45:07.320,139.0849,8843.9072,3.6915,-3.7382,0.9112,-0.0024,2400.0,2340.0,-0.0215,-1.0198,3.9387,8.4214 2019-06-03 15:45:07.340,139.1375,8843.9639,3.6915,-3.7382,1.0828,0.1616,2400.0,2340.0,-0.0128,-1.0047,3.94,8.4214 2019-06-03 15:45:07.360,139.1375,8844.0215,3.6812,-3.7344,0.8054,0.0073,2400.0,2340.0,-0.042,-1.0078,3.9294,8.4052 2019-06-03 15:45:07.380,139.0937,8843.9922,3.6812,-3.7344,1.1124,0.1288,2400.0,2340.0,-0.0362,-0.9866,3.932,8.4052 2019-06-03 15:45:07.400,139.0849,8843.9072,3.6699,-3.7215,1.2208,0.1519,2520.0,2400.0,-0.0391,-0.9776,3.9241,8.3833 2019-06-03 15:45:07.420,139.0937,8843.8789,3.6632,-3.7201,0.7522,0.0619,2520.0,2400.0,-0.0362,-0.9806,3.9188,8.3749 2019-06-03 15:45:07.440,139.1462,8843.9072,3.6632,-3.7201,1.2374,0.1092,2520.0,2400.0,-0.0157,-0.9715,3.9122,8.3749 2019-06-03 15:45:07.460,139.1462,8843.9072,3.6632,-3.7201,0.7389,0.0787,2520.0,2400.0,-0.0098,-0.9715,3.9148,8.3749 2019-06-03 15:45:07.480,139.0762,8843.9639,3.656,-3.707,1.2404,0.0819,2520.0,2400.0,-0.0128,-0.9534,3.8936,8.3605 2019-06-03 15:45:07.500,139.0937,8843.8789,3.643,-3.6946,1.2163,0.0889,2520.0,2400.0,-0.0186,-0.9504,3.9095,8.345 2019-06-03 15:45:07.520,139.0762,8843.8789,3.643,-3.6946,0.8187,0.1249,2520.0,2400.0,-0.0478,-0.9534,3.8897,8.345 2019-06-03 15:45:07.540,139.1462,8843.9072,3.643,-3.6946,1.2012,0.0596,2520.0,2400.0,-0.0449,-0.9383,3.9029,8.345 2019-06-03 15:45:07.560,139.1375,8843.9355,3.6249,-3.6822,0.8073,0.1263,2520.0,2400.0,-0.0449,-0.9444,3.9003,8.3305 2019-06-03 15:45:07.580,139.0937,8843.9639,3.6148,-3.664,1.2452,0.0137,2520.0,2400.0,-0.0449,-0.896,3.8857,8.3167 2019-06-03 15:45:07.600,139.0849,8843.9922,3.6077,-3.6541,1.1161,0.007,2520.0,2400.0,-0.0391,-0.8869,3.891,8.3093 2019-06-03 15:45:07.620,139.0849,8843.9639,3.6038,-3.6439,0.9582,0.2064,2520.0,2400.0,-0.0362,-0.9262,3.8804,8.3014 2019-06-03 15:45:07.640,139.1375,8843.9922,3.6038,-3.6439,1.0602,-0.0306,2520.0,2400.0,-0.0186,-0.899,3.8804,8.3014 2019-06-03 15:45:07.660,139.1462,8843.9922,3.6038,-3.6439,1.0203,0.2034,2520.0,2400.0,-0.0128,-0.9172,3.887,8.3014 2019-06-03 15:45:07.680,139.0849,8843.8789,3.5859,-3.622,0.9626,-0.0158,2520.0,2400.0,-0.0128,-0.9232,3.8791,8.2866 2019-06-03 15:45:07.700,139.0937,8843.8496,3.5669,-3.6024,0.9304,-0.0087,2520.0,2400.0,-0.0157,-0.9141,3.8777,8.2719 2019-06-03 15:45:07.720,139.2336,8843.8789,3.5669,-3.6024,1.0898,0.1824,2520.0,2400.0,-0.042,-0.9172,3.8751,8.2719 2019-06-03 15:45:07.740,139.2685,8843.9072,3.5669,-3.6024,0.9323,0.0159,2520.0,2400.0,-0.0391,-0.896,3.8777,8.2719 2019-06-03 15:45:07.760,139.2598,8844.0215,3.5529,-3.5754,1.1035,0.1552,2520.0,2400.0,-0.0362,-0.896,3.8791,8.2558 2019-06-03 15:45:07.780,139.2161,8844.0215,3.5529,-3.5754,0.8439,0.0137,2520.0,2400.0,-0.0332,-0.899,3.8698,8.2558 2019-06-03 15:45:07.800,139.2161,8844.0215,3.5284,-3.5361,0.7943,0.0224,2520.0,2400.0,-0.0186,-0.899,3.8751,8.2317 2019-06-03 15:45:07.820,139.2336,8843.9922,3.522,-3.5216,1.1557,0.1466,2520.0,2400.0,-0.0128,-0.899,3.8725,8.2228 2019-06-03 15:45:07.840,139.2773,8844.1064,3.522,-3.5216,0.7844,0.076,2520.0,2400.0,-0.0128,-0.9021,3.8764,8.2228 2019-06-03 15:45:07.860,139.2685,8844.0781,3.522,-3.5216,1.2507,0.0625,2520.0,2400.0,-0.0186,-0.896,3.8804,8.2228 2019-06-03 15:45:07.880,139.2161,8844.1064,3.502,-3.4969,0.7426,0.1014,2520.0,2400.0,-0.0449,-0.8839,3.8672,8.2057 2019-06-03 15:45:07.900,139.2249,8844.0215,3.4896,-3.4626,0.8835,0.1421,2520.0,2400.0,-0.0391,-0.8597,3.8725,8.1878 2019-06-03 15:45:07.920,139.2074,8844.0498,3.4896,-3.4626,1.0562,0.0352,2520.0,2400.0,-0.042,-0.8809,3.8725,8.1878 2019-06-03 15:45:07.940,139.2773,8844.0781,3.4896,-3.4626,0.9012,0.1476,2520.0,2400.0,-0.0303,-0.8083,3.8698,8.1878 2019-06-03 15:45:07.960,139.2685,8844.1064,3.4741,-3.4307,1.1512,0.0122,2520.0,2400.0,-0.0186,-0.8567,3.8725,8.169 2019-06-03 15:45:07.980,139.2161,8844.0781,3.4741,-3.4307,0.8761,0.1454,2520.0,2400.0,-0.0157,-0.8658,3.8566,8.169 2019-06-03 15:45:08.000,139.2161,8844.0781,3.4494,-3.3819,0.9593,0.1668,2520.0,2400.0,-0.0128,-0.8627,3.8645,8.1399 2019-06-03 15:45:08.020,139.2161,8844.0781,3.4373,-3.3683,0.9408,0.0209,2520.0,2400.0,-0.0157,-0.8688,3.8711,8.1302 2019-06-03 15:45:08.040,139.2685,8844.1064,3.4373,-3.3683,0.9726,0.1336,2520.0,2400.0,-0.0128,-0.8627,3.8658,8.1302 2019-06-03 15:45:08.060,139.2773,8844.1064,3.4373,-3.3683,0.9578,0.0285,2520.0,2400.0,-0.0186,-0.8627,3.8619,8.1302 2019-06-03 15:45:08.080,139.2249,8844.0498,3.4221,-3.3304,0.936,0.1081,2520.0,2400.0,-0.0303,-0.8658,3.8539,8.1124 2019-06-03 15:45:08.100,139.2249,8843.9072,3.4057,-3.296,1.112,0.1158,2520.0,2400.0,-0.0245,-0.8627,3.8592,8.0934 2019-06-03 15:45:08.120,139.3645,8843.8789,3.4057,-3.296,0.8957,0.068,2520.0,2400.0,-0.0215,-0.8688,3.8672,8.0934 2019-06-03 15:45:08.140,139.408,8843.9072,3.4057,-3.296,1.0055,0.1061,2520.0,2400.0,-0.0274,-0.8658,3.8566,8.0934 2019-06-03 15:45:08.160,139.408,8843.9355,3.3874,-3.2636,0.8561,0.0792,2520.0,2400.0,-0.0332,-0.8658,3.8632,8.0748 2019-06-03 15:45:08.180,139.3557,8843.9639,3.3874,-3.2636,1.1198,0.0698,2520.0,2400.0,-0.0449,-0.8658,3.8433,8.0748 2019-06-03 15:45:08.200,139.347,8843.9922,3.3623,-3.2017,1.1934,0.0749,2520.0,2400.0,-0.0274,-0.8658,3.8539,8.0498 2019-06-03 15:45:08.220,139.3645,8843.9639,3.3572,-3.1831,0.8946,0.1111,2520.0,2400.0,-0.0245,-0.8627,3.8552,8.0407 2019-06-03 15:45:08.240,139.4167,8843.9072,3.3572,-3.1831,0.9855,0.0436,2520.0,2400.0,-0.0128,-0.8446,3.8552,8.0407 2019-06-03 15:45:08.260,139.4167,8843.9355,3.3572,-3.1831,0.8491,0.1246,2520.0,2400.0,-0.0157,-0.8476,3.8499,8.0407 2019-06-03 15:45:08.280,139.3557,8843.9922,3.341,-3.1427,1.1072,0.0099,2520.0,2400.0,-0.0098,-0.8446,3.8539,8.0229 2019-06-03 15:45:08.300,139.3645,8843.9922,3.3226,-3.1006,1.1372,0.0145,2520.0,2400.0,-0.0128,-0.8476,3.8473,8.005 2019-06-03 15:45:08.320,139.347,8844.0215,3.3226,-3.1006,0.9593,0.1839,2520.0,2400.0,-0.0274,-0.8476,3.8566,8.005 2019-06-03 15:45:08.340,139.4167,8844.0781,3.3226,-3.1006,0.8842,-0.0013,2520.0,2400.0,-0.0362,-0.8446,3.8513,8.005 2019-06-03 15:45:08.360,139.408,8844.1064,3.3077,-3.0597,0.9393,0.1595,2520.0,2400.0,-0.0362,-0.8446,3.8513,7.9885 2019-06-03 15:45:08.380,139.3557,8844.0498,3.3077,-3.0597,0.946,0.0041,2520.0,2400.0,-0.042,-0.8476,3.8486,7.9885 2019-06-03 15:45:08.400,139.3732,8844.0781,3.2842,-2.9973,0.9179,0.0139,2340.0,2340.0,-0.0186,-0.8446,3.8552,7.9652 2019-06-03 15:45:08.420,139.3645,8844.0781,3.2803,-2.975,1.0821,0.1762,2340.0,2340.0,-0.0186,-0.8446,3.8513,7.9572 2019-06-03 15:45:08.440,139.4167,8844.0781,3.2803,-2.975,0.8498,0.001,2340.0,2340.0,-0.0157,-0.8476,3.8526,7.9572 2019-06-03 15:45:08.460,139.4167,8844.0498,3.2803,-2.975,1.1893,0.1186,2340.0,2340.0,-0.0098,-0.8416,3.8473,7.9572 2019-06-03 15:45:08.480,139.3557,8844.0498,3.2618,-2.9374,0.7026,0.0303,2340.0,2340.0,-0.0157,-0.8446,3.8407,7.9419 2019-06-03 15:45:08.500,139.3645,8843.9355,3.2462,-2.8965,0.8502,0.0375,2340.0,2340.0,-0.0157,-0.8416,3.8486,7.9268 2019-06-03 15:45:08.520,139.495,8843.9072,3.2462,-2.8965,1.0921,0.15,2340.0,2340.0,-0.0303,-0.8476,3.8552,7.9268 2019-06-03 15:45:08.540,139.5472,8843.9072,3.2462,-2.8965,0.7951,0.0761,2340.0,2340.0,-0.0362,-0.8113,3.8473,7.9268 2019-06-03 15:45:08.560,139.5385,8843.9922,3.2358,-2.8577,1.1161,0.0445,2340.0,2340.0,-0.0274,-0.7932,3.8433,7.9105 2019-06-03 15:45:08.580,139.495,8844.0215,3.2208,-2.8185,0.8158,0.1307,2340.0,2340.0,-0.0274,-0.8144,3.8433,7.8948 2019-06-03 15:45:08.600,139.4863,8844.0215,3.2132,-2.7979,0.902,0.1209,2340.0,2340.0,-0.0215,-0.769,3.8499,7.8876 2019-06-03 15:45:08.620,139.495,8844.0215,3.2039,-2.7791,1.0321,0.0335,2340.0,2340.0,-0.0303,-0.7901,3.8446,7.8805 2019-06-03 15:45:08.640,139.5472,8844.0215,3.2039,-2.7791,0.9508,0.1442,2340.0,2340.0,-0.0391,-0.7992,3.8367,7.8805 2019-06-03 15:45:08.660,139.5472,8843.9922,3.2039,-2.7791,1.0521,0.0125,2340.0,2340.0,-0.0245,-0.7932,3.8446,7.8805 2019-06-03 15:45:08.680,139.495,8843.9639,3.1919,-2.7366,0.9682,0.1484,2340.0,2340.0,-0.0274,-0.7932,3.8394,7.8671 2019-06-03 15:45:08.700,139.495,8843.9072,3.1807,-2.6924,0.9648,0.1384,2340.0,2340.0,-0.0098,-0.7932,3.8473,7.8537 2019-06-03 15:45:08.720,139.4776,8843.9639,3.1807,-2.6924,0.9622,0.0089,2340.0,2340.0,-0.0069,-0.8053,3.838,7.8537 2019-06-03 15:45:08.740,139.5385,8843.9922,3.1807,-2.6924,1.085,0.1448,2340.0,2340.0,-0.0098,-0.8174,3.8274,7.8537 2019-06-03 15:45:08.760,139.5385,8844.0781,3.1697,-2.649,0.9826,0.0107,2340.0,2340.0,-0.0157,-0.7932,3.8354,7.8417 2019-06-03 15:45:08.780,139.4863,8843.9639,3.1697,-2.649,1.0636,0.1452,2340.0,2340.0,-0.0391,-0.7901,3.8301,7.8417 2019-06-03 15:45:08.800,139.5037,8843.9355,3.1521,-2.5818,1.0296,0.1193,2340.0,2340.0,-0.0391,-0.7901,3.8394,7.8231 2019-06-03 15:45:08.820,139.495,8843.9355,3.1457,-2.5613,0.9474,0.0583,2340.0,2340.0,-0.0332,-0.7932,3.8407,7.8178 2019-06-03 15:45:08.840,139.5472,8843.9922,3.1457,-2.5613,1.0543,0.1182,2340.0,2340.0,-0.0245,-0.7901,3.8208,7.8178 2019-06-03 15:45:08.860,139.5559,8843.9639,3.1457,-2.5613,0.8428,0.051,2340.0,2340.0,-0.0069,-0.7901,3.8274,7.8178 2019-06-03 15:45:08.880,139.4863,8843.9355,3.1364,-2.5127,1.1183,0.1135,2340.0,2340.0,-0.0128,-0.7932,3.8168,7.8067 2019-06-03 15:45:08.900,139.495,8843.8496,3.1246,-2.4696,0.9996,0.0762,2340.0,2340.0,-0.0069,-0.7901,3.8341,7.795 2019-06-03 15:45:08.920,139.6514,8843.7646,3.1246,-2.4696,0.9068,0.0985,2340.0,2340.0,-0.0186,-0.7901,3.8354,7.795 2019-06-03 15:45:08.940,139.6947,8843.8213,3.1246,-2.4696,1.0421,0.0604,2340.0,2340.0,-0.0245,-0.7871,3.8248,7.795 2019-06-03 15:45:08.960,139.6861,8843.8789,3.1139,-2.4243,0.9689,0.1239,2340.0,2340.0,-0.0274,-0.7871,3.8195,7.7849 2019-06-03 15:45:08.980,139.634,8843.8789,3.1051,-2.3758,1.0125,0.0401,2340.0,2340.0,-0.0128,-0.7932,3.8221,7.7728 2019-06-03 15:45:09.000,139.6254,8843.9355,3.0963,-2.3525,0.9752,0.014,2340.0,2340.0,-0.004,-0.7114,3.8274,7.7678 2019-06-03 15:45:09.020,139.6427,8843.9639,3.0933,-2.3278,1.0484,0.1269,2340.0,2340.0,-0.004,-0.7599,3.8314,7.7639 2019-06-03 15:45:09.040,139.6861,8844.0215,3.0933,-2.3278,0.9367,0.0089,2340.0,2340.0,-0.0157,-0.7841,3.8195,7.7639 2019-06-03 15:45:09.060,139.6947,8843.9922,3.0933,-2.3278,1.007,0.1481,2340.0,2340.0,-0.0157,-0.7599,3.8221,7.7639 2019-06-03 15:45:09.080,139.6427,8844.0215,3.0815,-2.2802,0.8857,0.0394,2340.0,2340.0,-0.0274,-0.778,3.8288,7.7557 2019-06-03 15:45:09.100,139.634,8843.9355,3.0679,-2.2348,0.8065,0.0183,2340.0,2340.0,-0.0215,-0.778,3.8274,7.7476 2019-06-03 15:45:09.120,139.6254,8843.9922,3.0679,-2.2348,1.1538,0.1126,2340.0,2340.0,-0.0128,-0.775,3.8288,7.7476 2019-06-03 15:45:09.140,139.6861,8844.0781,3.0679,-2.2348,0.7999,0.0208,2340.0,2340.0,-0.0069,-0.775,3.8168,7.7476 2019-06-03 15:45:09.160,139.6774,8844.1924,3.0608,-2.1862,1.149,0.1353,2340.0,2340.0,-0.0011,-0.778,3.8221,7.7412 2019-06-03 15:45:09.180,139.634,8844.1641,3.0608,-2.1862,0.7459,0.0968,2340.0,2340.0,-0.0011,-0.7811,3.8288,7.7412 2019-06-03 15:45:09.200,139.634,8844.0781,3.0395,-2.1146,0.7747,0.0717,2340.0,2340.0,-0.0069,-0.778,3.8341,7.7341 2019-06-03 15:45:09.220,139.6427,8844.0215,3.0346,-2.0898,1.1383,0.0648,2340.0,2340.0,-0.0128,-0.7811,3.8235,7.7314 2019-06-03 15:45:09.240,139.6861,8844.0498,3.0346,-2.0898,0.8424,0.0904,2340.0,2340.0,-0.0157,-0.778,3.8314,7.7314 2019-06-03 15:45:09.260,139.7034,8844.0215,3.0346,-2.0898,1.1804,0.054,2340.0,2340.0,-0.0128,-0.772,3.8367,7.7314 2019-06-03 15:45:09.280,139.6254,8843.9922,3.021,-2.042,0.8069,0.1199,2340.0,2340.0,-0.0157,-0.8113,3.8354,7.7261 2019-06-03 15:45:09.300,139.634,8843.8789,3.0109,-1.9918,0.8609,0.1152,2340.0,2340.0,-0.0098,-0.8022,3.8327,7.721 2019-06-03 15:45:09.320,139.6254,8843.8496,3.0109,-1.9918,1.0798,0.0277,2340.0,2340.0,-0.0069,-0.7932,3.838,7.721 2019-06-03 15:45:09.340,139.6947,8843.8213,3.0109,-1.9918,0.9297,0.1332,2340.0,2340.0,-0.042,-0.8022,3.8221,7.721 2019-06-03 15:45:09.360,139.6861,8843.8789,2.9989,-1.9441,1.0466,0.0421,2340.0,2340.0,-0.0157,-0.7962,3.8446,7.7163 2019-06-03 15:45:09.380,139.634,8843.9072,2.9989,-1.9441,1.0185,0.1622,2340.0,2340.0,-0.0245,-0.8022,3.8288,7.7163 2019-06-03 15:45:09.400,139.6254,8843.9922,2.9805,-1.8715,1.0255,0.1435,2460.0,2400.0,-0.0098,-0.7992,3.8446,7.7102 2019-06-03 15:45:09.420,139.6427,8843.9922,2.9715,-1.8509,0.8787,-0.0151,2460.0,2400.0,-0.0128,-0.7992,3.838,7.7092 2019-06-03 15:45:09.440,139.6861,8844.1064,2.9715,-1.8509,1.0869,0.1668,2460.0,2400.0,-0.0128,-0.8022,3.8433,7.7092 2019-06-03 15:45:09.460,139.6861,8844.0781,2.9715,-1.8509,0.9867,0.0216,2460.0,2400.0,-0.0128,-0.8022,3.8499,7.7092 2019-06-03 15:45:09.480,139.634,8844.0215,2.9625,-1.8003,1.1901,0.178,2460.0,2400.0,-0.0186,-0.8355,3.8685,7.7057 2019-06-03 15:45:09.500,139.6427,8843.9639,2.9513,-1.7533,1.1786,0.1263,2460.0,2400.0,-0.0157,-0.8295,3.8738,7.7018 2019-06-03 15:45:09.520,139.764,8843.9639,2.9513,-1.7533,0.7914,0.0203,2460.0,2400.0,-0.0157,-0.8567,3.883,7.7018 2019-06-03 15:45:09.540,139.816,8844.0498,2.9513,-1.7533,1.1098,0.0867,2460.0,2400.0,-0.042,-0.9625,3.8844,7.7018 2019-06-03 15:45:09.560,139.816,8844.0781,2.9389,-1.7083,0.8335,0.0849,2460.0,2400.0,-0.0332,-1.056,3.8976,7.698 2019-06-03 15:45:09.580,139.7727,8844.0215,2.9389,-1.7083,1.0969,0.1021,2460.0,2400.0,-0.0391,-1.1977,3.9042,7.698 2019-06-03 15:45:09.600,139.7554,8843.9922,2.9249,-1.6388,1.0884,0.0838,2460.0,2400.0,-0.042,-1.2127,3.9069,7.6945 2019-06-03 15:45:09.620,139.7813,8843.9639,2.922,-1.6157,0.8861,0.0763,2460.0,2400.0,-0.0391,-1.315,3.9281,7.6931 2019-06-03 15:45:09.640,139.816,8844.0215,2.922,-1.6157,1.0847,0.0653,2460.0,2400.0,-0.0332,-1.4201,3.9387,7.6931 2019-06-03 15:45:09.660,139.8333,8844.0498,2.922,-1.6157,0.8117,0.098,2460.0,2400.0,-0.0245,-1.4231,3.9347,7.6931 2019-06-03 15:45:09.680,139.764,8844.0498,2.9133,-1.5791,1.1142,0.0613,2460.0,2400.0,-0.0186,-1.4321,3.9241,7.6905 2019-06-03 15:45:09.700,139.764,8843.9922,2.9037,-1.549,1.0085,0.0421,2460.0,2400.0,-0.0303,-1.4351,3.8897,7.6877 2019-06-03 15:45:09.720,139.7554,8843.9639,2.9037,-1.549,0.9452,0.1165,2460.0,2400.0,-0.0215,-1.4321,3.8777,7.6877 2019-06-03 15:45:09.740,139.816,8844.0498,2.9037,-1.549,1.0406,0.0201,2460.0,2400.0,-0.0362,-1.4381,3.8777,7.6877 2019-06-03 15:45:09.760,139.816,8844.1348,2.8968,-1.5222,0.9578,0.1302,2460.0,2400.0,-0.0362,-1.4351,3.8764,7.6848 2019-06-03 15:45:09.780,139.764,8844.1641,2.8968,-1.5222,0.9497,0.0285,2460.0,2400.0,-0.0332,-1.4531,3.8817,7.6848 2019-06-03 15:45:09.800,139.764,8844.1641,2.8872,-1.4953,0.8017,0.034,2460.0,2400.0,-0.0332,-1.4531,3.8711,7.6799 2019-06-03 15:45:09.820,139.764,8844.1348,2.8881,-1.4832,1.1531,0.1412,2460.0,2400.0,-0.0186,-1.4501,3.8751,7.6787 2019-06-03 15:45:09.840,139.816,8844.1641,2.8881,-1.4832,0.8265,0.0289,2460.0,2400.0,-0.0245,-1.4501,3.8764,7.6787 2019-06-03 15:45:09.860,139.8246,8844.1641,2.8881,-1.4832,1.0602,0.1232,2460.0,2400.0,-0.0303,-1.4261,3.8791,7.6787 2019-06-03 15:45:09.880,139.764,8844.1348,2.876,-1.4775,0.7932,0.0236,2460.0,2400.0,-0.0508,-1.4261,3.8764,7.6753 2019-06-03 15:45:09.900,139.7727,8844.0215,2.8707,-1.4703,0.8084,0.0255,2460.0,2400.0,-0.0478,-1.4291,3.8764,7.672 2019-06-03 15:45:09.920,139.911,8844.0215,2.8707,-1.4703,1.1608,0.1024,2460.0,2400.0,-0.042,-1.4291,3.8791,7.672 2019-06-03 15:45:09.940,139.9542,8844.0215,2.8707,-1.4703,0.7496,0.0855,2460.0,2400.0,-0.0332,-1.4651,3.8777,7.672 2019-06-03 15:45:09.960,139.9542,8844.0498,2.8677,-1.4675,1.169,0.0754,2460.0,2400.0,-0.0274,-1.4321,3.8725,7.6679 2019-06-03 15:45:09.980,139.9024,8844.0781,2.8677,-1.4675,0.706,0.0991,2460.0,2400.0,-0.0332,-1.4411,3.8804,7.6679 2019-06-03 15:45:10.000,139.9024,8844.1064,2.8548,-1.4802,0.6963,0.0927,2460.0,2400.0,-0.0478,-1.4381,3.8764,7.6585 2019-06-03 15:45:10.020,139.9024,8844.0781,2.8496,-1.4842,1.2503,0.0323,2460.0,2400.0,-0.042,-1.4411,3.8804,7.6566 2019-06-03 15:45:10.040,139.9542,8844.1064,2.8496,-1.4842,0.8424,0.1836,2460.0,2400.0,-0.042,-1.4411,3.8804,7.6566 2019-06-03 15:45:10.060,139.9628,8844.0781,2.8496,-1.4842,1.0828,-0.0026,2460.0,2400.0,-0.0186,-1.4381,3.8844,7.6566 2019-06-03 15:45:10.080,139.911,8844.1064,2.8401,-1.4964,0.9082,0.1796,2460.0,2400.0,-0.0245,-1.4411,3.8844,7.6527 2019-06-03 15:45:10.100,139.911,8844.0215,2.8351,-1.5084,0.9737,0.1641,2460.0,2400.0,-0.0362,-1.4381,3.8777,7.6483 2019-06-03 15:45:10.120,140.0405,8844.0498,2.8351,-1.5084,0.9903,0.0008,2460.0,2400.0,-0.0391,-1.4381,3.8672,7.6483 2019-06-03 15:45:10.140,140.1008,8844.0498,2.8351,-1.5084,0.994,0.1973,2460.0,2400.0,-0.0391,-1.4381,3.8751,7.6483 2019-06-03 15:45:10.160,140.0835,8844.0781,2.8274,-1.5231,1.0051,-0.0086,2460.0,2400.0,-0.0245,-1.4381,3.8738,7.6435 2019-06-03 15:45:10.180,140.0405,8844.0781,2.8274,-1.5231,1.1135,0.1566,2460.0,2400.0,-0.0245,-1.4441,3.8685,7.6435 2019-06-03 15:45:10.200,140.0405,8844.0781,2.8128,-1.5455,1.0813,0.0988,2460.0,2400.0,-0.0362,-1.4531,3.8221,7.6365 2019-06-03 15:45:10.220,140.0405,8844.0781,2.8029,-1.5544,0.8916,0.04,2460.0,2400.0,-0.0303,-1.4411,3.7943,7.6346 2019-06-03 15:45:10.240,140.0921,8844.0781,2.8029,-1.5544,1.044,0.1808,2460.0,2400.0,-0.0391,-1.4411,3.7732,7.6346 2019-06-03 15:45:10.260,140.0921,8844.0781,2.8029,-1.5544,0.7544,0.0082,2460.0,2400.0,-0.0362,-1.3901,3.7202,7.6346 2019-06-03 15:45:10.280,140.0232,8843.1367,2.7975,-1.571,1.2659,0.1243,2460.0,2400.0,-0.0186,-1.3871,3.6911,7.632 2019-06-03 15:45:10.300,140.0405,8842.1377,2.7846,-1.5856,1.1963,0.0861,2460.0,2400.0,-0.0215,-1.3841,3.6421,7.63 2019-06-03 15:45:10.320,140.0405,8841.1963,2.7846,-1.5856,0.8043,0.0621,2460.0,2400.0,-0.0274,-1.3811,3.5759,7.63 2019-06-03 15:45:10.340,140.0921,8839.7988,2.7846,-1.5856,1.156,0.1025,2460.0,2400.0,-0.0566,-1.357,3.5335,7.63 2019-06-03 15:45:10.360,140.0921,8838.9424,2.7635,-1.6036,0.8051,0.0826,2460.0,2400.0,-0.0537,-1.339,3.4607,7.6277 2019-06-03 15:45:10.380,140.0318,8837.5732,2.7396,-1.6238,1.2489,0.0457,2460.0,2400.0,-0.0449,-1.345,3.3918,7.6228 2019-06-03 15:45:10.400,140.0318,8836.6602,2.7299,-1.6317,1.1771,0.0251,2400.0,2340.0,-0.0362,-1.339,3.3415,7.6215 2019-06-03 15:45:10.420,140.0405,8835.7188,2.715,-1.6384,0.8254,0.1162,2400.0,2340.0,-0.0303,-1.2759,3.2846,7.6206 2019-06-03 15:45:10.440,140.1008,8834.6914,2.715,-1.6384,1.1749,0.0367,2400.0,2340.0,-0.0362,-1.3029,3.2449,7.6206 2019-06-03 15:45:10.460,140.1008,8834.7207,2.715,-1.6384,0.7781,0.143,2400.0,2340.0,-0.0362,-1.2849,3.1932,7.6206 2019-06-03 15:45:10.480,140.0405,8834.7207,2.6784,-1.6555,1.0798,-0.0276,2400.0,2340.0,-0.0508,-1.2819,3.1707,7.6179 2019-06-03 15:45:10.500,140.0491,8834.6631,2.6273,-1.6728,1.0007,-0.0395,2400.0,2340.0,-0.0771,-1.2879,3.131,7.6141 2019-06-03 15:45:10.520,140.1782,8834.6631,2.6273,-1.6728,0.9227,0.1777,2400.0,2340.0,-0.0683,-1.2368,3.1125,7.6141 2019-06-03 15:45:10.540,140.2212,8834.6348,2.6273,-1.6728,0.9419,-0.0088,2400.0,2340.0,-0.0625,-1.2308,3.0992,7.6141 2019-06-03 15:45:10.560,140.2212,8834.6914,2.5714,-1.6904,0.9223,0.1453,2400.0,2340.0,-0.0449,-1.1856,3.0794,7.6107 2019-06-03 15:45:10.580,140.1696,8834.6914,2.5714,-1.6904,0.9711,-0.0704,2400.0,2340.0,-0.0449,-1.1826,3.0529,7.6107 2019-06-03 15:45:10.600,140.1868,8834.6631,2.4698,-1.7085,0.9415,-0.0153,2400.0,2340.0,-0.0478,-1.1856,3.0304,7.605 2019-06-03 15:45:10.620,140.1782,8834.6914,2.4349,-1.7089,1.0196,0.1466,2400.0,2340.0,-0.042,-1.1796,3.0092,7.6036 2019-06-03 15:45:10.640,140.2298,8834.749,2.4349,-1.7089,0.8702,0.0225,2400.0,2340.0,-0.0478,-1.1675,2.9907,7.6036 2019-06-03 15:45:10.660,140.2298,8834.749,2.4349,-1.7089,0.9848,0.1108,2400.0,2340.0,-0.0508,-1.1495,2.9523,7.6036 2019-06-03 15:45:10.680,140.1782,8834.7773,2.3535,-1.7174,0.7825,0.013,2400.0,2340.0,-0.0391,-1.1163,2.9457,7.5992 2019-06-03 15:45:10.700,140.1868,8834.749,2.2664,-1.7207,0.727,0.0573,2400.0,2340.0,-0.0566,-1.1163,2.9192,7.5954 2019-06-03 15:45:10.720,140.3156,8834.7773,2.2664,-1.7207,1.0928,0.1005,2400.0,2340.0,-0.042,-1.1193,2.9178,7.5954 2019-06-03 15:45:10.740,140.3585,8834.7773,2.2664,-1.7207,0.7337,0.0668,2400.0,2340.0,-0.042,-1.1163,2.9192,7.5954 2019-06-03 15:45:10.760,140.3585,8834.8057,2.1759,-1.7163,0.9889,0.0898,2400.0,2340.0,-0.0391,-1.1163,2.9099,7.5917 2019-06-03 15:45:10.780,140.3156,8834.8633,2.1759,-1.7163,0.6738,0.0573,2400.0,2340.0,-0.0391,-1.0741,2.894,7.5917 2019-06-03 15:45:10.800,140.3071,8834.9199,2.0236,-1.7074,0.7574,0.1095,2400.0,2340.0,-0.0391,-1.0771,2.9033,7.5851 2019-06-03 15:45:10.820,140.3156,8834.8916,1.9685,-1.7024,1.0403,0.0494,2400.0,2340.0,-0.0391,-1.0711,2.898,7.5827 2019-06-03 15:45:10.840,140.3671,8834.835,1.9685,-1.7024,0.8313,0.1076,2400.0,2340.0,-0.0391,-1.0349,2.9073,7.5827 2019-06-03 15:45:10.860,140.3585,8834.835,1.9685,-1.7024,0.933,0.0193,2400.0,2340.0,-0.0566,-1.0319,2.8914,7.5827 2019-06-03 15:45:10.880,140.3156,8834.749,1.861,-1.6937,0.7285,0.1259,2400.0,2340.0,-0.0508,-1.0319,2.8927,7.5793 2019-06-03 15:45:10.900,140.3156,8834.6914,1.7537,-1.6776,0.8025,0.1657,2400.0,2340.0,-0.0625,-1.0349,2.8927,7.5752 2019-06-03 15:45:10.920,140.3071,8834.6914,1.7537,-1.6776,0.9918,0.0038,2400.0,2340.0,-0.0478,-1.0289,2.8967,7.5752 2019-06-03 15:45:10.940,140.3671,8834.835,1.7537,-1.6776,0.8398,0.1081,2400.0,2340.0,-0.0595,-1.0198,2.8914,7.5752 2019-06-03 15:45:10.960,140.3499,8834.835,1.6415,-1.6671,0.8746,0.0387,2400.0,2340.0,-0.0654,-1.0198,2.894,7.5703 2019-06-03 15:45:10.980,140.3071,8834.8057,1.6415,-1.6671,0.7977,0.0906,2400.0,2340.0,-0.0537,-1.0168,2.902,7.5703 2019-06-03 15:45:11.000,140.3071,8834.8633,1.4721,-1.6424,0.9042,0.1336,2400.0,2340.0,-0.0595,-1.0168,2.8993,7.5572 2019-06-03 15:45:11.020,140.3156,8834.8057,1.4124,-1.6359,0.8639,0.016,2400.0,2340.0,-0.0508,-1.0138,2.8993,7.5538 2019-06-03 15:45:11.040,140.3585,8834.749,1.4124,-1.6359,0.8284,0.1115,2400.0,2340.0,-0.0566,-1.0078,2.9006,7.5538 2019-06-03 15:45:11.060,140.3757,8834.749,1.4124,-1.6359,0.8147,0.022,2400.0,2340.0,-0.0508,-1.0017,2.9033,7.5538 2019-06-03 15:45:11.080,140.3071,8834.8057,1.3034,-1.6156,0.9031,0.0957,2400.0,2340.0,-0.0508,-0.9896,2.9099,7.547 2019-06-03 15:45:11.100,140.3156,8834.6631,1.1941,-1.5933,0.8857,0.1316,2400.0,2340.0,-0.0449,-0.9927,2.9205,7.5393 2019-06-03 15:45:11.120,140.4528,8834.6348,1.1941,-1.5933,0.7522,0.0232,2400.0,2340.0,-0.042,-0.9896,2.9245,7.5393 2019-06-03 15:45:11.140,140.5127,8834.6064,1.1941,-1.5933,0.8247,0.1184,2400.0,2340.0,-0.0478,-0.9776,2.9457,7.5393 2019-06-03 15:45:11.160,140.4956,8834.6064,1.0836,-1.572,0.7418,0.0131,2400.0,2340.0,-0.0683,-0.9927,2.9496,7.5318 2019-06-03 15:45:11.180,140.4528,8834.6631,1.0836,-1.572,0.9012,0.1024,2400.0,2340.0,-0.0683,-0.9323,2.9483,7.5318 2019-06-03 15:45:11.200,140.4442,8834.7207,0.9289,-1.5325,0.9205,0.1456,2400.0,2340.0,-0.0712,-0.9776,2.9615,7.5191 2019-06-03 15:45:11.220,140.4442,8834.7207,0.8763,-1.5212,0.669,0.0354,2400.0,2340.0,-0.0683,-0.9746,2.9589,7.5151 2019-06-03 15:45:11.240,140.5041,8834.6914,0.8763,-1.5212,0.8761,0.0671,2400.0,2340.0,-0.0595,-0.9685,2.9629,7.5151 2019-06-03 15:45:11.260,140.5041,8834.6348,0.8763,-1.5212,0.7426,0.0493,2400.0,2340.0,-0.0595,-0.9746,2.9682,7.5151 2019-06-03 15:45:11.280,140.4442,8834.749,0.7802,-1.4954,0.9985,0.074,2400.0,2340.0,-0.0508,-0.9715,2.9721,7.508 2019-06-03 15:45:11.300,140.4528,8834.6914,0.6867,-1.4717,0.8535,0.1159,2400.0,2340.0,-0.0595,-0.9715,2.9854,7.4994 2019-06-03 15:45:11.320,140.4356,8834.749,0.6867,-1.4717,0.5684,0.0594,2400.0,2340.0,-0.0712,-0.9746,2.9774,7.4994 2019-06-03 15:45:11.340,140.4956,8834.7773,0.6867,-1.4717,0.9153,0.0484,2400.0,2340.0,-0.0712,-0.9685,2.992,7.4994 2019-06-03 15:45:11.360,140.4956,8834.8633,0.5929,-1.4483,0.656,0.0563,2400.0,2340.0,-0.0771,-0.9746,2.992,7.4918 2019-06-03 15:45:11.380,140.4528,8834.8633,0.5051,-1.4238,0.9256,0.0427,2400.0,2340.0,-0.0566,-0.9685,2.9946,7.4827 2019-06-03 15:45:11.400,140.4442,8834.835,0.4651,-1.4112,0.8184,0.0597,2340.0,2400.0,-0.0625,-0.9866,3.0013,7.4787 2019-06-03 15:45:11.420,140.4528,8834.835,0.4238,-1.3988,0.6257,0.0945,2340.0,2400.0,-0.0537,-0.9806,3.0039,7.4745 2019-06-03 15:45:11.440,140.5127,8834.7773,0.4238,-1.3988,0.9168,0.0131,2340.0,2400.0,-0.0566,-0.9534,3.0119,7.4745 2019-06-03 15:45:11.460,140.5041,8834.7773,0.4238,-1.3988,0.6398,0.0858,2340.0,2400.0,-0.0654,-0.9685,3.0132,7.4745 2019-06-03 15:45:11.480,140.4442,8833.8359,0.3447,-1.3743,0.8898,0.0252,2340.0,2400.0,-0.0683,-0.9715,3.0079,7.4672 2019-06-03 15:45:11.500,140.4528,8832.9238,0.2678,-1.3499,0.8169,0.0285,2340.0,2400.0,-0.0683,-0.9685,3.0185,7.4609 2019-06-03 15:45:11.520,140.5896,8832.0107,0.2678,-1.3499,0.6934,0.0957,2340.0,2400.0,-0.0625,-0.9685,3.0158,7.4609 2019-06-03 15:45:11.540,140.6323,8830.6982,0.2678,-1.3499,0.9057,-0.0112,2340.0,2400.0,-0.0508,-0.9685,3.0198,7.4609 2019-06-03 15:45:11.560,140.6408,8829.8994,0.1928,-1.327,0.7122,0.1031,2340.0,2400.0,-0.0508,-0.9685,3.0185,7.4527 2019-06-03 15:45:11.580,140.5981,8828.5596,0.1253,-1.304,0.8332,-0.0042,2340.0,2400.0,-0.0449,-0.9685,3.0185,7.4432 2019-06-03 15:45:11.600,140.5896,8827.7031,0.0905,-1.2936,0.7381,-0.0161,2340.0,2400.0,-0.0537,-0.9715,3.0238,7.4398 2019-06-03 15:45:11.620,140.5896,8826.8477,0.0592,-1.28,0.7237,0.143,2340.0,2400.0,-0.0625,-0.9655,3.0211,7.4366 2019-06-03 15:45:11.640,140.6323,8825.9063,0.0592,-1.28,0.8391,-0.0323,2340.0,2400.0,-0.0595,-0.9685,3.0277,7.4366 2019-06-03 15:45:11.660,140.6408,8825.9639,0.0592,-1.28,0.7614,0.1066,2340.0,2400.0,-0.0625,-0.9685,3.0211,7.4366 2019-06-03 15:45:11.680,140.5725,8825.9639,-0.0057,-1.2546,0.7581,0.0116,2340.0,2400.0,-0.0332,-0.9685,3.0251,7.4288 2019-06-03 15:45:11.700,140.5896,8825.8779,-0.0688,-1.2286,0.7592,-0.0034,2340.0,2400.0,-0.042,-0.9715,3.0238,7.4223 2019-06-03 15:45:11.720,140.7346,8825.8213,-0.0688,-1.2286,0.8432,0.1259,2340.0,2400.0,-0.042,-0.9685,3.0251,7.4223 2019-06-03 15:45:11.740,140.7772,8825.8496,-0.0688,-1.2286,0.7318,-0.0323,2340.0,2400.0,-0.0478,-0.9685,3.0251,7.4223 2019-06-03 15:45:11.760,140.7772,8825.9063,-0.1262,-1.199,0.825,0.1123,2340.0,2400.0,-0.0625,-0.9655,3.0238,7.4168 2019-06-03 15:45:11.780,140.7261,8825.9063,-0.1843,-1.1683,0.7322,0.017,2340.0,2400.0,-0.0537,-0.9655,3.0291,7.4133 2019-06-03 15:45:11.800,140.7261,8825.8496,-0.2156,-1.1538,0.7348,0.0284,2340.0,2400.0,-0.0595,-0.9655,3.0277,7.4102 2019-06-03 15:45:11.820,140.7176,8825.793,-0.2435,-1.1379,0.7729,0.1056,2340.0,2400.0,-0.0537,-0.9655,3.0198,7.408 2019-06-03 15:45:11.840,140.7857,8825.7637,-0.2435,-1.1379,0.6978,0.0034,2340.0,2400.0,-0.0449,-0.9625,3.0277,7.408 2019-06-03 15:45:11.860,140.7857,8825.707,-0.2435,-1.1379,0.8591,0.0567,2340.0,2400.0,-0.0625,-0.9655,3.0145,7.408 2019-06-03 15:45:11.880,140.7261,8825.7354,-0.3002,-1.1099,0.7056,0.0628,2340.0,2400.0,-0.0566,-0.9655,3.0251,7.4038 2019-06-03 15:45:11.900,140.7346,8825.6787,-0.356,-1.078,0.7873,0.0831,2340.0,2400.0,-0.0654,-0.9655,3.0185,7.4016 2019-06-03 15:45:11.920,141.0067,8825.6787,-0.356,-1.078,0.7692,0.1023,2340.0,2400.0,-0.0595,-0.9655,3.0119,7.4016 2019-06-03 15:45:11.940,141.0491,8825.6787,-0.356,-1.078,0.7019,0.0227,2340.0,2400.0,-0.0449,-0.9625,3.0105,7.4016 2019-06-03 15:45:11.960,141.0322,8825.7637,-0.4105,-1.045,1.0185,0.0493,2340.0,2400.0,-0.0391,-0.9655,3.0171,7.3998 2019-06-03 15:45:11.980,140.9898,8825.8496,-0.4675,-1.0167,0.6449,0.0859,2340.0,2400.0,-0.0508,-0.9655,3.0079,7.3959 2019-06-03 15:45:12.000,140.9898,8825.8496,-0.4951,-1.0043,0.7215,0.1054,2340.0,2400.0,-0.0508,-0.9685,3.0198,7.3953 2019-06-03 15:45:12.020,140.9898,8825.8496,-0.5247,-0.9911,0.7836,0.0405,2340.0,2400.0,-0.0654,-0.9655,3.0026,7.3943 2019-06-03 15:45:12.040,141.0406,8825.8779,-0.5247,-0.9911,0.7152,0.0581,2340.0,2400.0,-0.0625,-0.9655,3.0066,7.3943 2019-06-03 15:45:12.060,141.0491,8825.8779,-0.5247,-0.9911,0.8528,0.0101,2340.0,2400.0,-0.0683,-0.9655,3.0026,7.3943 2019-06-03 15:45:12.080,140.9898,8825.8213,-0.5802,-0.9615,0.7847,0.1101,2340.0,2400.0,-0.0508,-0.9625,3.0066,7.3932 2019-06-03 15:45:12.100,140.9982,8825.7637,-0.6338,-0.9342,0.7237,0.097,2340.0,2400.0,-0.0537,-0.9655,3.0013,7.3918 2019-06-03 15:45:12.120,141.2776,8825.7637,-0.6338,-0.9342,0.8657,0.0424,2340.0,2400.0,-0.0537,-0.9685,3.0013,7.3918 2019-06-03 15:45:12.140,141.3114,8825.7637,-0.6338,-0.9342,0.6797,0.0786,2340.0,2400.0,-0.0566,-0.9655,3.0052,7.3918 2019-06-03 15:45:12.160,141.303,8825.793,-0.6895,-0.9052,0.8742,0.0153,2340.0,2400.0,-0.0683,-0.9655,2.9946,7.3917 2019-06-03 15:45:12.180,141.2607,8825.793,-0.7499,-0.8804,0.8502,0.1008,2340.0,2400.0,-0.0566,-0.9655,2.9986,7.3902 2019-06-03 15:45:12.200,141.2523,8825.793,-0.7772,-0.8671,0.7548,0.0951,2340.0,2400.0,-0.0595,-0.9685,2.9986,7.3903 2019-06-03 15:45:12.220,141.2692,8825.7637,-0.8076,-0.8561,0.7892,0.0172,2340.0,2400.0,-0.0683,-0.9685,2.9854,7.3898 2019-06-03 15:45:12.240,141.303,8825.8213,-0.8076,-0.8561,0.8302,0.0992,2340.0,2400.0,-0.0625,-0.9383,2.9867,7.3898 2019-06-03 15:45:12.260,141.3114,8825.8213,-0.8076,-0.8561,0.7954,0.0082,2340.0,2400.0,-0.0654,-0.9444,2.988,7.3898 2019-06-03 15:45:12.280,141.2523,8825.8496,-0.8645,-0.8311,0.9467,0.1156,2340.0,2400.0,-0.0625,-0.9413,2.9761,7.389 2019-06-03 15:45:12.300,141.2607,8825.793,-0.9228,-0.8047,0.7707,0.0957,2340.0,2400.0,-0.0595,-0.9444,2.9761,7.3871 2019-06-03 15:45:12.320,141.3789,8825.793,-0.9228,-0.8047,0.7844,0.025,2340.0,2400.0,-0.0625,-0.9413,2.9668,7.3871 2019-06-03 15:45:12.340,141.4379,8825.793,-0.9228,-0.8047,0.875,0.0805,2340.0,2400.0,-0.0537,-0.9413,2.9695,7.3871 2019-06-03 15:45:12.360,141.4295,8825.8496,-0.984,-0.778,0.6886,0.0086,2340.0,2400.0,-0.0595,-0.9444,2.9615,7.3861 2019-06-03 15:45:12.380,141.3789,8825.8779,-1.0463,-0.7509,0.946,0.0915,2340.0,2400.0,-0.0478,-0.9413,2.9668,7.3856 2019-06-03 15:45:12.400,141.3789,8825.8779,-1.0744,-0.7354,0.882,0.0683,2580.0,2400.0,-0.0537,-0.9413,2.9615,7.3845 2019-06-03 15:45:12.420,141.3789,8825.8496,-1.1062,-0.7204,0.7381,0.0541,2580.0,2400.0,-0.0566,-0.9444,2.9629,7.3834 2019-06-03 15:45:12.440,141.4295,8825.9063,-1.1062,-0.7204,0.95,0.0713,2580.0,2400.0,-0.0595,-0.9413,2.9509,7.3834 2019-06-03 15:45:12.460,141.4379,8825.8779,-1.1062,-0.7204,0.5991,0.0467,2580.0,2400.0,-0.0595,-0.9444,2.9576,7.3834 2019-06-03 15:45:12.480,141.3873,8824.9365,-1.1669,-0.6855,0.8657,0.0792,2580.0,2400.0,-0.0508,-0.9323,2.9509,7.3829 2019-06-03 15:45:12.500,141.3958,8824.0244,-1.2319,-0.6522,0.7995,0.0761,2580.0,2400.0,-0.0303,-0.9202,2.9629,7.3818 2019-06-03 15:45:12.520,141.665,8823.1123,-1.2319,-0.6522,0.6919,0.0284,2580.0,2400.0,-0.0332,-0.9232,2.9457,7.3818 2019-06-03 15:45:12.540,141.6985,8821.7432,-1.2319,-0.6522,0.9112,0.0785,2580.0,2400.0,-0.0215,-0.9141,2.9509,7.3818 2019-06-03 15:45:12.560,141.6902,8820.8877,-1.2956,-0.6174,0.6926,0.0707,2580.0,2400.0,-0.0537,-0.9202,2.9509,7.3794 2019-06-03 15:45:12.580,141.6482,8819.5186,-1.3613,-0.5783,0.8158,0.0491,2580.0,2400.0,-0.0595,-0.9141,2.9496,7.379 2019-06-03 15:45:12.600,141.6398,8818.6348,-1.3939,-0.5599,0.8313,0.0183,2580.0,2400.0,-0.0654,-0.9111,2.9509,7.3792 2019-06-03 15:45:12.620,141.6566,8817.6934,-1.4242,-0.5397,0.8217,0.0572,2580.0,2400.0,-0.0595,-0.9081,2.9509,7.379 2019-06-03 15:45:12.640,141.6985,8816.7529,-1.4242,-0.5397,0.875,0.0371,2580.0,2400.0,-0.0508,-0.9141,2.9523,7.379 2019-06-03 15:45:12.660,141.7069,8816.7813,-1.4242,-0.5397,0.8461,0.096,2580.0,2400.0,-0.0508,-0.9111,2.9483,7.379 2019-06-03 15:45:12.680,141.6482,8816.7529,-1.4879,-0.4996,0.9445,0.0452,2580.0,2400.0,-0.042,-0.9081,2.9457,7.3779 2019-06-03 15:45:12.700,141.6566,8816.7236,-1.558,-0.4597,0.8465,0.0208,2580.0,2400.0,-0.0508,-0.9111,2.9549,7.3758 2019-06-03 15:45:12.720,141.7824,8816.7529,-1.558,-0.4597,0.8602,0.0622,2580.0,2400.0,-0.0654,-0.9111,2.947,7.3758 2019-06-03 15:45:12.740,141.8326,8816.7813,-1.558,-0.4597,0.7995,0.0351,2580.0,2400.0,-0.0595,-0.9081,2.947,7.3758 2019-06-03 15:45:12.760,141.8243,8816.8662,-1.6237,-0.4148,0.8236,0.0827,2580.0,2400.0,-0.0654,-0.9172,2.947,7.375 2019-06-03 15:45:12.780,141.774,8816.8379,-1.6885,-0.3704,0.7681,0.0409,2580.0,2400.0,-0.0566,-0.899,2.9523,7.3747 2019-06-03 15:45:12.800,141.774,8816.8955,-1.7219,-0.3487,0.8017,0.0424,2580.0,2400.0,-0.0595,-0.899,2.9509,7.3743 2019-06-03 15:45:12.820,141.7908,8816.8662,-1.753,-0.3266,0.862,0.0625,2580.0,2400.0,-0.0742,-0.899,2.9443,7.3743 2019-06-03 15:45:12.840,141.8243,8816.9521,-1.753,-0.3266,0.7267,0.039,2580.0,2400.0,-0.0625,-0.893,2.9509,7.3743 2019-06-03 15:45:12.860,141.8326,8816.8955,-1.753,-0.3266,0.9848,0.0837,2580.0,2400.0,-0.0595,-0.893,2.9589,7.3743 2019-06-03 15:45:12.880,141.774,8815.9541,-1.8177,-0.2812,0.6926,0.0512,2580.0,2400.0,-0.0478,-0.899,2.9509,7.3727 2019-06-03 15:45:12.900,141.7908,8815.042,-1.8825,-0.2339,0.8513,0.0366,2580.0,2400.0,-0.0478,-0.896,2.9576,7.3717 2019-06-03 15:45:12.920,142.0583,8814.1299,-1.8825,-0.2339,0.9164,0.0444,2580.0,2400.0,-0.0508,-0.896,2.9549,7.3717 2019-06-03 15:45:12.940,142.0833,8812.9033,-1.8825,-0.2339,0.8324,0.0712,2580.0,2400.0,-0.0449,-0.896,2.9576,7.3717 2019-06-03 15:45:12.960,142.0833,8812.0479,-1.9457,-0.1827,0.9892,0.0697,2580.0,2400.0,-0.0508,-0.896,2.9695,7.3711 2019-06-03 15:45:12.980,142.0583,8810.708,-2.0098,-0.1364,0.6146,0.0847,2580.0,2400.0,-0.0566,-0.89,2.9576,7.3651 2019-06-03 15:45:13.000,142.0332,8809.7959,-2.0396,-0.1127,0.8025,0.0605,2580.0,2400.0,-0.0537,-0.893,2.9761,7.3644 2019-06-03 15:45:13.020,142.0499,8808.9404,-2.0721,-0.089,0.784,0.0204,2580.0,2400.0,-0.0566,-0.893,2.9748,7.3627 2019-06-03 15:45:13.040,142.1,8808.0566,-2.0721,-0.089,0.7466,0.0617,2580.0,2400.0,-0.0362,-0.893,2.9801,7.3627 2019-06-03 15:45:13.060,142.0833,8808.1416,-2.0721,-0.089,0.8313,0.0843,2580.0,2400.0,-0.0508,-0.896,2.9761,7.3627 2019-06-03 15:45:13.080,142.0332,8808.1709,-2.1339,-0.0394,0.7263,0.0845,2580.0,2400.0,-0.0566,-0.893,2.9721,7.3608 2019-06-03 15:45:13.100,142.0583,8808.085,-2.1972,0.0109,0.8202,0.0788,2580.0,2400.0,-0.0595,-0.89,2.9814,7.3582 2019-06-03 15:45:13.120,142.3246,8808.0566,-2.1972,0.0109,0.7825,0.023,2580.0,2400.0,-0.0712,-0.896,2.9854,7.3582 2019-06-03 15:45:13.140,142.3578,8808.085,-2.1972,0.0109,0.9153,0.097,2580.0,2400.0,-0.0654,-0.893,2.9748,7.3582 2019-06-03 15:45:13.160,142.3661,8808.085,-2.2594,0.0608,0.7341,0.061,2580.0,2400.0,-0.0654,-0.893,2.9933,7.3554 2019-06-03 15:45:13.180,142.3163,8808.0283,-2.3223,0.1079,0.8202,0.078,2580.0,2400.0,-0.0566,-0.893,2.9893,7.3515 2019-06-03 15:45:13.200,142.308,8808.0283,-2.3502,0.1357,0.9042,0.0493,2580.0,2400.0,-0.0391,-0.893,3.0039,7.3507 2019-06-03 15:45:13.220,142.3163,8807.9707,-2.3808,0.1602,0.656,0.0326,2580.0,2400.0,-0.0508,-0.896,3.0039,7.349 2019-06-03 15:45:13.240,142.3578,8807.9424,-2.3808,0.1602,0.9634,0.0688,2580.0,2400.0,-0.0478,-0.8839,3.0079,7.349 2019-06-03 15:45:13.260,142.3661,8807.8564,-2.3808,0.1602,0.6427,0.0764,2580.0,2400.0,-0.0683,-0.8718,3.0066,7.349 2019-06-03 15:45:13.280,142.2997,8806.8877,-2.4389,0.2115,0.9711,0.0552,2580.0,2400.0,-0.0537,-0.8748,3.0158,7.3469 2019-06-03 15:45:13.300,142.308,8805.9756,-2.4988,0.261,0.9796,0.0149,2580.0,2400.0,-0.0625,-0.8748,3.0092,7.343 2019-06-03 15:45:13.320,142.5816,8805.0635,-2.4988,0.261,0.6553,0.0478,2580.0,2400.0,-0.0537,-0.899,3.0317,7.343 2019-06-03 15:45:13.340,142.6229,8803.7236,-2.4988,0.261,0.9796,0.031,2580.0,2400.0,-0.0508,-0.899,3.0291,7.343 2019-06-03 15:45:13.360,142.6064,8802.8682,-2.5571,0.3084,0.6331,0.0771,2580.0,2400.0,-0.0566,-0.896,3.0357,7.3396 2019-06-03 15:45:13.380,142.565,8801.5,-2.6122,0.3591,0.9966,0.0524,2580.0,2400.0,-0.0537,-0.899,3.041,7.3376 2019-06-03 15:45:13.400,142.5568,8800.6162,-2.6383,0.3858,0.9826,0.0341,2460.0,2340.0,-0.0478,-0.899,3.0423,7.3362 2019-06-03 15:45:13.420,142.5568,8799.6191,-2.6646,0.4107,0.6505,0.0415,2460.0,2340.0,-0.0478,-0.899,3.0476,7.3339 2019-06-03 15:45:13.440,142.6064,8798.7354,-2.6646,0.4107,0.9615,0.0329,2460.0,2340.0,-0.0391,-0.896,3.0423,7.3339 2019-06-03 15:45:13.460,142.6147,8798.7637,-2.6646,0.4107,0.6812,0.1379,2460.0,2340.0,-0.0508,-0.9021,3.0516,7.3339 2019-06-03 15:45:13.480,142.5485,8798.7637,-2.7174,0.4614,0.9123,0.0223,2460.0,2340.0,-0.0683,-0.896,3.041,7.3308 2019-06-03 15:45:13.500,142.5816,8798.707,-2.7714,0.5073,0.9659,-0.0192,2460.0,2340.0,-0.0654,-0.896,3.0502,7.3267 2019-06-03 15:45:13.520,142.9774,8798.6787,-2.7714,0.5073,0.7555,0.1203,2460.0,2340.0,-0.0712,-0.9021,3.0569,7.3267 2019-06-03 15:45:13.540,143.0021,8798.6787,-2.7714,0.5073,0.889,0.0098,2460.0,2340.0,-0.0508,-0.899,3.0582,7.3267 2019-06-03 15:45:13.560,142.9856,8798.707,-2.8225,0.5552,0.6534,0.1236,2460.0,2340.0,-0.0537,-0.9051,3.0489,7.3223 2019-06-03 15:45:13.580,142.9445,8798.707,-2.8704,0.6042,0.8665,0.0195,2460.0,2340.0,-0.0449,-0.9262,3.0463,7.318 2019-06-03 15:45:13.600,142.9363,8798.7354,-2.8975,0.6266,0.8757,-0.0005,2460.0,2340.0,-0.0449,-0.9232,3.0436,7.3154 2019-06-03 15:45:13.620,142.9445,8798.707,-2.9187,0.6525,0.8616,0.123,2460.0,2340.0,-0.042,-0.9262,3.0688,7.3139 2019-06-03 15:45:13.640,142.9939,8798.7354,-2.9187,0.6525,0.8306,0.0257,2460.0,2340.0,-0.0508,-0.9262,3.0476,7.3139 2019-06-03 15:45:13.660,143.0021,8798.6787,-2.9187,0.6525,0.7747,0.1622,2460.0,2340.0,-0.0537,-0.9262,3.0648,7.3139 2019-06-03 15:45:13.680,142.9445,8797.7666,-2.9697,0.6948,0.7673,-0.0149,2460.0,2340.0,-0.0683,-0.9292,3.0542,7.3089 2019-06-03 15:45:13.700,142.961,8796.8828,-3.0186,0.7387,0.8598,-0.0364,2460.0,2340.0,-0.0595,-0.9262,3.0701,7.306 2019-06-03 15:45:13.720,143.2235,8796.0566,-3.0186,0.7387,0.8857,0.1329,2460.0,2340.0,-0.0654,-0.9292,3.0714,7.306 2019-06-03 15:45:13.740,143.2563,8794.7734,-3.0186,0.7387,0.8432,0.0175,2460.0,2340.0,-0.0449,-0.9262,3.0675,7.306 2019-06-03 15:45:13.760,143.2399,8793.9756,-3.0637,0.7832,0.9504,0.1316,2460.0,2340.0,-0.0537,-0.9292,3.0675,7.3023 2019-06-03 15:45:13.780,143.199,8792.665,-3.1083,0.8274,0.7133,0.0067,2460.0,2340.0,-0.0537,-0.9262,3.0675,7.2991 2019-06-03 15:45:13.800,143.2153,8791.7246,-3.1351,0.844,0.7633,-0.0063,2460.0,2340.0,-0.0478,-0.9292,3.0728,7.297 2019-06-03 15:45:13.820,143.2072,8790.8125,-3.1546,0.8676,0.9341,0.1331,2460.0,2340.0,-0.0508,-0.9292,3.0767,7.2958 2019-06-03 15:45:13.840,143.2563,8789.9863,-3.1546,0.8676,0.764,0.0177,2460.0,2340.0,-0.0508,-0.9262,3.0741,7.2958 2019-06-03 15:45:13.860,143.2645,8790.0146,-3.1546,0.8676,0.9571,0.0902,2460.0,2340.0,-0.0595,-0.9262,3.0847,7.2958 2019-06-03 15:45:13.880,143.199,8789.9863,-3.2034,0.9059,0.669,0.0357,2460.0,2340.0,-0.0654,-0.9262,3.0794,7.2926 2019-06-03 15:45:13.900,143.2235,8789.958,-3.2484,0.9457,0.7263,0.0246,2460.0,2340.0,-0.0566,-0.9262,3.086,7.2901 2019-06-03 15:45:13.920,143.6154,8789.958,-3.2484,0.9457,0.9667,0.0835,2460.0,2340.0,-0.0625,-0.9534,3.0833,7.2901 2019-06-03 15:45:13.940,143.6398,8789.958,-3.2484,0.9457,0.6838,0.0521,2460.0,2340.0,-0.0362,-0.9444,3.0886,7.2901 2019-06-03 15:45:13.960,143.6317,8790.0146,-3.2922,0.9838,1.0218,0.0884,2460.0,2340.0,-0.0478,-0.9444,3.0953,7.2869 2019-06-03 15:45:13.980,143.591,8790.0713,-3.3367,1.0232,0.615,0.028,2460.0,2340.0,-0.0478,-0.9444,3.0886,7.2848 2019-06-03 15:45:14.000,143.5828,8790.1289,-3.3619,1.0405,0.6449,0.0107,2460.0,2340.0,-0.0449,-0.9444,3.1032,7.2842 2019-06-03 15:45:14.020,143.591,8790.0996,-3.3827,1.0597,1.0628,0.0808,2460.0,2340.0,-0.0595,-0.9474,3.1072,7.2845 2019-06-03 15:45:14.040,143.6317,8790.1289,-3.3827,1.0597,0.6538,0.069,2460.0,2340.0,-0.0537,-0.9474,3.1112,7.2845 2019-06-03 15:45:14.060,143.6398,8790.0713,-3.3827,1.0597,0.9038,0.0586,2460.0,2340.0,-0.0508,-0.9474,3.1191,7.2845 2019-06-03 15:45:14.080,143.591,8789.0176,-3.4296,1.0957,0.6275,0.0917,2460.0,2340.0,-0.0537,-0.9474,3.1257,7.2843 2019-06-03 15:45:14.100,143.5991,8788.0205,-3.4741,1.1352,0.7477,0.0863,2460.0,2340.0,-0.042,-0.9444,3.1323,7.2862 2019-06-03 15:45:14.120,143.8672,8787.0801,-3.4741,1.1352,1.0236,0.0468,2460.0,2340.0,-0.0508,-0.9595,3.1429,7.2862 2019-06-03 15:45:14.140,143.8996,8785.7119,-3.4741,1.1352,0.6656,0.0916,2460.0,2340.0,-0.0478,-0.9595,3.1416,7.2862 2019-06-03 15:45:14.160,143.8834,8784.8291,-3.5155,1.1784,0.9937,0.0342,2460.0,2340.0,-0.042,-0.9595,3.1747,7.2891 2019-06-03 15:45:14.180,143.8428,8783.4043,-3.5598,1.2187,0.6109,0.0899,2460.0,2340.0,-0.0537,-0.9595,3.1522,7.2933 2019-06-03 15:45:14.200,143.8428,8782.4639,-3.5807,1.2392,0.7133,0.0605,2460.0,2340.0,-0.0215,-0.9595,3.1787,7.2962 2019-06-03 15:45:14.220,143.8428,8781.5518,-3.6019,1.2598,1.0325,0.0733,2460.0,2340.0,-0.042,-0.9564,3.176,7.299 2019-06-03 15:45:14.240,143.8996,8780.6406,-3.6019,1.2598,0.7292,0.0774,2460.0,2340.0,-0.0332,-0.9595,3.1826,7.299 2019-06-03 15:45:14.260,143.8996,8780.6973,-3.6019,1.2598,0.9811,0.058,2460.0,2340.0,-0.0449,-0.9625,3.1853,7.299 2019-06-03 15:45:14.280,143.8428,8780.6973,-3.644,1.3023,0.6878,0.0822,2460.0,2340.0,-0.0449,-0.9595,3.1959,7.3055 2019-06-03 15:45:14.300,143.8591,8780.6406,-3.6817,1.3472,0.7307,0.0845,2460.0,2340.0,-0.0508,-0.9595,3.1919,7.3129 2019-06-03 15:45:14.320,144.239,8780.6689,-3.6817,1.3472,1.0003,0.0316,2460.0,2340.0,-0.0537,-0.9625,3.2157,7.3129 2019-06-03 15:45:14.340,144.2793,8780.6973,-3.6817,1.3472,0.7034,0.0896,2460.0,2340.0,-0.0478,-0.9564,3.1999,7.3129 2019-06-03 15:45:14.360,144.2712,8780.7549,-3.7172,1.389,1.0414,0.0201,2460.0,2340.0,-0.0362,-0.9896,3.221,7.3222 2019-06-03 15:45:14.380,144.2309,8780.7256,-3.7531,1.4346,0.7041,0.0652,2460.0,2340.0,-0.0362,-0.9836,3.2131,7.3341 2019-06-03 15:45:14.400,144.2228,8780.7549,-3.7705,1.456,0.7577,0.0684,2400.0,2400.0,-0.0332,-0.9715,3.2263,7.3398 2019-06-03 15:45:14.420,144.2309,8780.7549,-3.7882,1.4761,0.9689,0.0596,2400.0,2400.0,-0.0625,-0.9715,3.225,7.3448 2019-06-03 15:45:14.440,144.2712,8780.8115,-3.7882,1.4761,0.7285,0.0546,2400.0,2400.0,-0.0537,-0.9746,3.2356,7.3448 2019-06-03 15:45:14.460,144.2793,8780.7832,-3.7882,1.4761,1.0214,0.0494,2400.0,2400.0,-0.0625,-0.9746,3.2462,7.3448 2019-06-03 15:45:14.480,144.2228,8779.7578,-3.8216,1.5205,0.7111,0.0759,2400.0,2400.0,-0.0537,-0.9776,3.233,7.3575 2019-06-03 15:45:14.500,144.239,8778.8174,-3.8503,1.566,0.747,0.0771,2400.0,2400.0,-0.0449,-0.9746,3.2409,7.3702 2019-06-03 15:45:14.520,144.5044,8777.9053,-3.8503,1.566,0.9179,0.054,2400.0,2400.0,-0.0508,-0.9746,3.2594,7.3702 2019-06-03 15:45:14.540,144.5285,8776.709,-3.8503,1.566,0.6978,0.078,2400.0,2400.0,-0.0595,-0.9715,3.2515,7.3702 2019-06-03 15:45:14.560,144.5204,8775.9121,-3.8798,1.6103,0.9548,0.0139,2400.0,2400.0,-0.0654,-0.9776,3.2581,7.3841 2019-06-03 15:45:14.580,144.4723,8774.6582,-3.9092,1.6491,0.7537,0.0771,2400.0,2400.0,-0.042,-0.9776,3.2674,7.4034 2019-06-03 15:45:14.600,144.4803,8773.7754,-3.9233,1.6719,0.7999,0.0564,2400.0,2400.0,-0.0449,-0.9746,3.2555,7.4111 2019-06-03 15:45:14.620,144.4803,8772.8633,-3.9379,1.6907,0.9929,0.0838,2400.0,2400.0,-0.0332,-0.9806,3.2912,7.4181 2019-06-03 15:45:14.640,144.5285,8772.0371,-3.9379,1.6907,0.8302,0.0815,2400.0,2400.0,-0.0391,-0.9746,3.2727,7.4181 2019-06-03 15:45:14.660,144.5365,8772.0947,-3.9379,1.6907,0.872,0.0323,2400.0,2400.0,-0.0449,-0.9776,3.2859,7.4181 2019-06-03 15:45:14.680,144.4803,8772.0947,-3.9657,1.7336,0.7918,0.0821,2400.0,2400.0,-0.0508,-0.9806,3.2687,7.4329 2019-06-03 15:45:14.700,144.4883,8772.0088,-3.9882,1.777,0.8191,0.1043,2400.0,2400.0,-0.0449,-0.9776,3.2859,7.4487 2019-06-03 15:45:14.720,144.8885,8772.0371,-3.9882,1.777,0.9156,0.051,2400.0,2400.0,-0.0595,-1.0259,3.2978,7.4487 2019-06-03 15:45:14.740,144.9045,8772.0664,-3.9882,1.777,0.7903,0.0719,2400.0,2400.0,-0.0508,-1.0228,3.3005,7.4487 2019-06-03 15:45:14.760,144.9045,8772.0947,-4.0112,1.8201,0.9419,0.0357,2400.0,2400.0,-0.0566,-1.0228,3.3005,7.4641 2019-06-03 15:45:14.780,144.8646,8772.0947,-4.0344,1.8619,0.7877,0.0734,2400.0,2400.0,-0.0537,-1.0259,3.2978,7.4888 2019-06-03 15:45:14.800,144.8566,8772.123,-4.0464,1.8857,0.8543,0.082,2400.0,2400.0,-0.0449,-1.0228,3.3005,7.498 2019-06-03 15:45:14.820,144.8646,8772.123,-4.0577,1.9074,1.0244,0.0826,2400.0,2400.0,-0.0449,-1.0228,3.3203,7.5063 2019-06-03 15:45:14.840,144.9124,8772.1797,-4.0577,1.9074,0.831,0.0784,2400.0,2400.0,-0.0362,-1.0259,3.3217,7.5063 2019-06-03 15:45:14.860,144.9045,8772.1797,-4.0577,1.9074,0.8964,0.0312,2400.0,2400.0,-0.0508,-1.0228,3.3336,7.5063 2019-06-03 15:45:14.880,144.8566,8771.1543,-4.0811,1.9535,0.8764,0.0604,2400.0,2400.0,-0.0683,-1.0228,3.3376,7.5232 2019-06-03 15:45:14.900,144.8805,8770.1289,-4.0995,2.003,0.8254,0.0793,2400.0,2400.0,-0.0508,-1.0228,3.3495,7.5415 2019-06-03 15:45:14.920,145.2704,8769.2178,-4.0995,2.003,0.9271,0.0881,2400.0,2400.0,-0.0537,-1.0349,3.376,7.5415 2019-06-03 15:45:14.940,145.2863,8767.8506,-4.0995,2.003,0.9227,0.0523,2400.0,2400.0,-0.0274,-1.0259,3.3865,7.5415 2019-06-03 15:45:14.960,145.2704,8767.0244,-4.1196,2.05,0.8779,0.0592,2400.0,2400.0,-0.0157,-1.0259,3.4077,7.5596 2019-06-03 15:45:14.980,145.2307,8765.6865,-4.1361,2.0991,0.8931,0.0366,2400.0,2400.0,-0.0098,-1.0259,3.4249,7.5797 2019-06-03 15:45:15.000,145.2307,8764.7754,-4.146,2.1266,0.8883,0.0686,2400.0,2400.0,-0.0215,-1.0259,3.4435,7.5891 2019-06-03 15:45:15.020,145.2387,8763.8066,-4.152,2.1521,0.9578,0.0732,2400.0,2400.0,-0.042,-1.0289,3.4792,7.5992 2019-06-03 15:45:15.040,145.2704,8762.8379,-4.152,2.1521,0.8983,0.0869,2400.0,2400.0,-0.0391,-0.9625,3.5057,7.5992 2019-06-03 15:45:15.060,145.2942,8762.8955,-4.152,2.1521,0.9227,0.0205,2400.0,2400.0,-0.0245,-0.9051,3.5348,7.5992 2019-06-03 15:45:15.080,145.2307,8761.9551,-4.1684,2.2043,0.8406,0.08,2400.0,2400.0,-0.0215,-0.8627,3.5534,7.6192 2019-06-03 15:45:15.100,145.2466,8761.0156,-4.1783,2.261,0.8483,0.0807,2400.0,2400.0,0.0106,-0.7538,3.5891,7.6394 2019-06-03 15:45:15.120,145.6343,8760.1621,-4.1783,2.261,0.9256,0.0634,2400.0,2400.0,0.0252,-0.7417,3.6262,7.6394 2019-06-03 15:45:15.140,145.658,8758.9092,-4.1783,2.261,0.8968,0.0592,2400.0,2400.0,0.0223,-0.6417,3.646,7.6394 2019-06-03 15:45:15.160,145.6422,8758.0264,-4.1864,2.316,0.9841,0.0377,2400.0,2400.0,0.0194,-0.5871,3.6646,7.6602 2019-06-03 15:45:15.180,145.6106,8756.7451,-4.1885,2.3745,0.8875,0.0753,2400.0,2400.0,0.0135,-0.4321,3.7122,7.6816 2019-06-03 15:45:15.200,145.6027,8755.8623,-4.1862,2.4058,0.8572,0.0738,2400.0,2400.0,0.0077,-0.3287,3.7361,7.6923 2019-06-03 15:45:15.220,145.6106,8754.9229,-4.1852,2.4366,0.9352,0.0869,2400.0,2400.0,0.0048,-0.2677,3.7705,7.702 2019-06-03 15:45:15.240,145.658,8754.04,-4.1852,2.4366,0.8339,0.0381,2400.0,2400.0,0.0252,-0.1152,3.7877,7.702 2019-06-03 15:45:15.260,145.6501,8754.0967,-4.1852,2.4366,0.9486,0.0607,2400.0,2400.0,0.0311,-0.0632,3.801,7.702 2019-06-03 15:45:15.280,145.6027,8753.1289,-4.1783,2.5071,0.8909,0.0732,2400.0,2400.0,0.034,-0.0174,3.8248,7.7229 2019-06-03 15:45:15.300,145.6185,8752.1611,-4.1619,2.5935,0.8361,0.0851,2400.0,2400.0,0.0398,0.0254,3.8499,7.7441 2019-06-03 15:45:15.320,146.1373,8751.2217,-4.1619,2.5935,0.9689,0.056,2400.0,2400.0,0.0252,0.0285,3.8725,7.7441 2019-06-03 15:45:15.340,146.1608,8749.8262,-4.1619,2.5935,0.8761,0.0512,2400.0,2400.0,0.0077,0.0499,3.8738,7.7441 2019-06-03 15:45:15.360,146.1373,8748.9727,-4.1415,2.6854,0.9774,0.0329,2400.0,2400.0,0.0282,0.053,3.9069,7.7654 2019-06-03 15:45:15.380,146.0903,8747.6631,-4.1123,2.7918,0.9312,0.0765,2400.0,2400.0,0.0135,0.0591,3.9029,7.7989 2019-06-03 15:45:15.400,146.0903,8746.8086,-4.0982,2.8531,0.9471,0.0816,2400.0,2400.0,0.0282,0.0775,3.932,7.8109 2019-06-03 15:45:15.420,146.0981,8745.9551,-4.0835,2.9136,0.9774,0.087,2400.0,2400.0,0.0223,0.0346,3.9373,7.822 2019-06-03 15:45:15.440,146.1373,8745.0156,-4.0835,2.9136,0.933,0.0894,2400.0,2400.0,0.0282,0.0867,3.9413,7.822 2019-06-03 15:45:15.460,146.153,8745.0439,-4.0835,2.9136,1.0662,0.0167,2400.0,2400.0,0.0282,0.0499,3.9492,7.822 2019-06-03 15:45:15.480,146.0981,8745.0156,-4.0507,3.0462,0.9042,0.0835,2400.0,2400.0,0.0282,0.0346,3.9651,7.8459 2019-06-03 15:45:15.500,146.1138,8744.9297,-4.0075,3.1912,0.9674,0.1069,2400.0,2400.0,0.0223,0.0407,3.9651,7.8707 2019-06-03 15:45:15.520,146.481,8744.958,-4.0075,3.1912,1.0037,0.0793,2400.0,2400.0,0.0252,0.0101,3.985,7.8707 2019-06-03 15:45:15.540,146.5043,8744.958,-4.0075,3.1912,1.0074,0.0875,2400.0,2400.0,0.0165,0.0132,3.9731,7.8707 2019-06-03 15:45:15.560,146.4965,8744.9863,-3.9662,3.3449,1.0943,0.0176,2400.0,2400.0,0.0252,-0.0174,3.989,7.8941 2019-06-03 15:45:15.580,146.4576,8744.9014,-3.9185,3.5085,1.0259,0.1267,2400.0,2400.0,0.0165,-0.0755,3.9876,7.9374 2019-06-03 15:45:15.600,146.4498,8744.9014,-3.8922,3.5929,1.0358,0.1434,2400.0,2400.0,0.0252,-0.0755,3.9903,7.9504 2019-06-03 15:45:15.620,146.4654,8744.873,-3.8704,3.6752,1.0362,0.039,2400.0,2400.0,0.0282,-0.1518,3.989,7.9625 2019-06-03 15:45:15.640,146.5043,8744.8447,-3.8704,3.6752,1.0192,0.1153,2400.0,2400.0,0.034,-0.1701,3.9823,7.9625 2019-06-03 15:45:15.660,146.5043,8744.8164,-3.8704,3.6752,1.0732,0.0119,2400.0,2400.0,0.0398,-0.1823,3.9916,7.9625 2019-06-03 15:45:15.680,146.4498,8743.9336,-3.8192,3.8443,1.0477,0.0891,2400.0,2400.0,0.0311,-0.1976,3.989,7.9879 2019-06-03 15:45:15.700,146.4887,8743.0518,-3.7671,4.0183,1.0418,0.0983,2400.0,2400.0,0.0282,-0.2159,3.989,8.0116 2019-06-03 15:45:15.720,146.9854,8742.1973,-3.7671,4.0183,1.0011,0.0599,2400.0,2400.0,0.0282,-0.2708,4.0022,8.0116 2019-06-03 15:45:15.740,147.0009,8741.002,-3.7671,4.0183,1.061,0.077,2400.0,2400.0,0.0165,-0.2616,3.9863,8.0116 2019-06-03 15:45:15.760,146.9932,8740.1484,-3.7161,4.1888,1.0884,0.0289,2400.0,2400.0,0.034,-0.2951,4.0088,8.0337 2019-06-03 15:45:15.780,146.9468,8738.8955,-3.6597,4.3604,1.0466,0.1105,2400.0,2400.0,0.0282,-0.3073,3.985,8.0723 2019-06-03 15:45:15.800,146.9468,8738.0986,-3.6338,4.4482,1.1268,0.1329,2400.0,2400.0,0.0369,-0.2616,3.9903,8.0823 2019-06-03 15:45:15.820,146.9468,8737.2734,-3.609,4.5335,0.9438,0.0214,2400.0,2400.0,0.034,-0.3043,4.0062,8.0925 2019-06-03 15:45:15.840,146.9932,8736.4482,-3.609,4.5335,1.1427,0.1122,2400.0,2400.0,0.034,-0.2982,3.9837,8.0925 2019-06-03 15:45:15.860,147.0009,8736.4199,-3.609,4.5335,1.115,0.0126,2400.0,2400.0,0.034,-0.3043,3.9956,8.0925 2019-06-03 15:45:15.880,146.9468,8735.4238,-3.558,4.7077,1.0935,0.0949,2400.0,2400.0,0.0223,-0.3317,3.9731,8.1119 2019-06-03 15:45:15.900,146.97,8734.4277,-3.5069,4.8779,1.1956,0.0954,2400.0,2400.0,0.0369,-0.3226,3.985,8.1304 2019-06-03 15:45:15.920,147.4632,8733.5176,-3.5069,4.8779,1.0358,0.0508,2400.0,2400.0,0.0223,-0.3104,3.9876,8.1304 2019-06-03 15:45:15.940,147.4786,8732.208,-3.5069,4.8779,1.0961,0.0986,2400.0,2400.0,0.034,-0.3165,3.985,8.1304 2019-06-03 15:45:15.960,147.4632,8731.2979,-3.459,5.0443,1.1383,0.032,2400.0,2400.0,0.0311,-0.3317,3.9704,8.1473 2019-06-03 15:45:15.980,147.4248,8729.875,-3.4104,5.2127,1.1612,0.0934,2400.0,2400.0,0.034,-0.3834,3.9757,8.1784 2019-06-03 15:45:16.000,147.4171,8728.9355,-3.3867,5.2993,1.1701,0.0875,2400.0,2400.0,0.034,-0.3804,3.9612,8.1863 2019-06-03 15:45:16.020,147.4248,8728.0254,-3.3652,5.381,0.9822,0.0543,2400.0,2400.0,0.034,-0.4047,3.9691,8.1943 2019-06-03 15:45:16.040,147.4786,8727.1426,-3.3652,5.381,1.2241,0.0648,2400.0,2400.0,0.0311,-0.4017,3.9625,8.1943 2019-06-03 15:45:16.060,147.4786,8727.2568,-3.3652,5.381,1.0414,0.0537,2400.0,2400.0,0.034,-0.4047,3.9585,8.1943 2019-06-03 15:45:16.080,147.4248,8726.2891,-3.3198,5.5494,1.2355,0.0511,2400.0,2400.0,0.034,-0.4473,3.9559,8.2106 2019-06-03 15:45:16.100,147.4478,8725.3789,-3.2807,5.7139,1.2711,0.0656,2400.0,2400.0,0.0545,-0.426,3.9506,8.2244 2019-06-03 15:45:16.120,147.8232,8724.4688,-3.2807,5.7139,1.0259,0.0939,2400.0,2400.0,0.0515,-0.4747,3.9545,8.2244 2019-06-03 15:45:16.140,147.8385,8723.2451,-3.2807,5.7139,1.1742,0.0446,2400.0,2400.0,0.0515,-0.4412,3.94,8.2244 2019-06-03 15:45:16.160,147.8385,8722.4492,-3.243,5.8774,1.0236,0.0805,2400.0,2400.0,0.0457,-0.4412,3.9334,8.2389 2019-06-03 15:45:16.180,147.7926,8721.083,-3.2044,6.0415,1.2052,0.0415,2400.0,2400.0,0.034,-0.4686,3.9294,8.2634 2019-06-03 15:45:16.200,147.7926,8720.2578,-3.188,6.1234,1.1786,0.028,2400.0,2400.0,0.0398,-0.4656,3.9188,8.2713 2019-06-03 15:45:16.220,147.8003,8719.3193,-3.168,6.2058,0.9852,0.1119,2400.0,2400.0,0.0457,-0.4686,3.9135,8.2798 2019-06-03 15:45:16.240,147.8385,8718.4375,-3.168,6.2058,1.1926,0.0168,2400.0,2400.0,0.0457,-0.4656,3.8989,8.2798 2019-06-03 15:45:16.260,147.8461,8718.4375,-3.168,6.2058,0.994,0.1054,2400.0,2400.0,0.0428,-0.4656,3.891,8.2798 2019-06-03 15:45:16.280,147.7926,8718.4941,-3.1363,6.3666,1.227,0.0196,2400.0,2400.0,0.0311,-0.4656,3.8804,8.2971 2019-06-03 15:45:16.300,147.8079,8718.4092,-3.1096,6.5211,1.1901,-0.0009,2400.0,2400.0,0.0369,-0.4625,3.8817,8.3138 2019-06-03 15:45:16.320,148.1814,8718.3809,-3.1096,6.5211,1.031,0.1518,2400.0,2400.0,0.0457,-0.5294,3.8817,8.3138 2019-06-03 15:45:16.340,148.2042,8718.4092,-3.1096,6.5211,1.0713,0.0143,2400.0,2400.0,0.0398,-0.4808,3.8658,8.3138 2019-06-03 15:45:16.360,148.189,8718.4941,-3.08,6.676,1.0236,0.1044,2400.0,2400.0,0.0603,-0.4838,3.8725,8.3325 2019-06-03 15:45:16.380,148.1662,8718.5225,-3.0529,6.8318,1.254,0.0131,2400.0,2400.0,0.0632,-0.5051,3.8513,8.3624 2019-06-03 15:45:16.400,148.1433,8718.5225,-3.0431,6.9088,1.1509,0.0366,2340.0,2400.0,0.0808,-0.5112,3.8499,8.3727 2019-06-03 15:45:16.420,148.151,8718.4658,-3.0286,6.9843,1.0843,0.1435,2340.0,2400.0,0.0837,-0.5294,3.838,8.3835 2019-06-03 15:45:16.440,148.1966,8718.4941,-3.0286,6.9843,1.0921,0.0149,2340.0,2400.0,0.0662,-0.5385,3.8235,8.3835 2019-06-03 15:45:16.460,148.2042,8718.4375,-3.0286,6.9843,1.0063,0.1265,2340.0,2400.0,0.072,-0.5415,3.8076,8.3835 2019-06-03 15:45:16.480,148.1433,8717.4414,-3.0106,7.1317,1.1538,-0.0105,2340.0,2400.0,0.0691,-0.5719,3.8049,8.4054 2019-06-03 15:45:16.500,148.1662,8716.5029,-2.9939,7.2766,1.0765,0.0195,2340.0,2400.0,0.0749,-0.5689,3.8023,8.4296 2019-06-03 15:45:16.520,148.5453,8715.5645,-2.9939,7.2766,1.1338,0.1354,2340.0,2400.0,0.0895,-0.5992,3.8049,8.4296 2019-06-03 15:45:16.540,148.568,8714.1143,-2.9939,7.2766,1.0447,0.019,2340.0,2400.0,0.0749,-0.5962,3.7824,8.4296 2019-06-03 15:45:16.560,148.5453,8713.2891,-2.9773,7.4193,1.1006,0.1265,2340.0,2400.0,0.0778,-0.5962,3.7864,8.4554 2019-06-03 15:45:16.580,148.515,8711.9238,-2.9612,7.5579,1.054,0.0026,2340.0,2400.0,0.0749,-0.6417,3.7745,8.4983 2019-06-03 15:45:16.600,148.5075,8710.9854,-2.961,7.6232,1.0381,0.01,2340.0,2400.0,0.0837,-0.6386,3.7758,8.5127 2019-06-03 15:45:16.620,148.515,8710.0176,-2.9538,7.691,1.1801,0.1261,2340.0,2400.0,0.0895,-0.6417,3.7784,8.5293 2019-06-03 15:45:16.640,148.5604,8709.1934,-2.9538,7.691,0.919,0.0342,2340.0,2400.0,0.0808,-0.6629,3.7718,8.5293 2019-06-03 15:45:16.660,148.5604,8709.1934,-2.9538,7.691,1.0425,0.0864,2340.0,2400.0,0.0749,-0.6599,3.7652,8.5293 2019-06-03 15:45:16.680,148.515,8708.2266,-2.9481,7.8211,0.9889,0.0182,2340.0,2400.0,0.0749,-0.6629,3.7665,8.5617 2019-06-03 15:45:16.700,148.5226,8707.3447,-2.9435,7.9481,1.0107,0.027,2340.0,2400.0,0.0808,-0.6659,3.7652,8.5945 2019-06-03 15:45:16.720,148.7718,8706.4912,-2.9435,7.9481,1.0917,0.1226,2340.0,2400.0,0.0837,-0.7023,3.7732,8.5945 2019-06-03 15:45:16.740,148.802,8705.1836,-2.9435,7.9481,0.9704,0.0247,2340.0,2400.0,0.0837,-0.6932,3.7533,8.5945 2019-06-03 15:45:16.760,148.7944,8704.3867,-2.9387,8.0703,1.1124,0.0976,2340.0,2400.0,0.0866,-0.6932,3.7612,8.6314 2019-06-03 15:45:16.780,148.7492,8703.1641,-2.9363,8.1921,1.0344,-0.0188,2340.0,2400.0,0.072,-0.7175,3.7626,8.6683 2019-06-03 15:45:16.800,148.7567,8702.2832,-2.9402,8.2486,0.9837,0.0181,2340.0,2400.0,0.0837,-0.6811,3.7652,8.6877 2019-06-03 15:45:16.820,148.7492,8701.4014,-2.94,8.3076,1.1098,0.1296,2340.0,2400.0,0.0749,-0.7417,3.7679,8.7095 2019-06-03 15:45:16.840,148.7944,8700.6055,-2.94,8.3076,1.0358,0.0209,2340.0,2400.0,0.0778,-0.7387,3.7573,8.7095 2019-06-03 15:45:16.860,148.802,8700.6338,-2.94,8.3076,1.1671,0.0912,2340.0,2400.0,0.0895,-0.7387,3.7559,8.7095 2019-06-03 15:45:16.880,148.7567,8699.667,-2.9417,8.4184,0.8698,0.0024,2340.0,2400.0,0.0749,-0.7568,3.748,8.7527 2019-06-03 15:45:16.900,148.7643,8698.7285,-2.9428,8.5275,0.9057,-0.0015,2340.0,2400.0,0.0895,-0.7538,3.7467,8.7991 2019-06-03 15:45:16.920,149.0126,8697.8467,-2.9428,8.5275,1.1165,0.1242,2340.0,2400.0,0.0808,-0.8053,3.7586,8.7991 2019-06-03 15:45:16.940,149.0352,8696.4541,-2.9428,8.5275,0.9818,0.0278,2340.0,2400.0,0.0808,-0.8234,3.7612,8.7991 2019-06-03 15:45:16.960,149.0352,8695.6006,-2.9442,8.6344,1.2526,0.0866,2340.0,2400.0,0.0866,-0.8144,3.7401,8.8484 2019-06-03 15:45:16.980,148.9901,8694.2363,-2.9459,8.7419,0.9556,0.017,2340.0,2400.0,0.0895,-0.8597,3.7586,8.9068 2019-06-03 15:45:17.000,148.9826,8693.3545,-2.9514,8.7923,0.9508,-0.0084,2340.0,2400.0,0.0954,-0.8567,3.7414,8.9316 2019-06-03 15:45:17.020,148.9901,8692.3887,-2.9522,8.8448,1.2085,0.1181,2340.0,2400.0,0.0954,-0.8567,3.7559,8.9599 2019-06-03 15:45:17.040,149.0277,8691.5068,-2.9522,8.8448,0.9064,0.0234,2340.0,2400.0,0.0778,-0.8597,3.752,8.9599 2019-06-03 15:45:17.060,149.0427,8691.5068,-2.9522,8.8448,1.2511,0.0967,2340.0,2400.0,0.0837,-0.8597,3.7639,8.9599 2019-06-03 15:45:17.080,148.9901,8690.4551,-2.9563,8.9439,0.8861,0.015,2340.0,2400.0,0.0691,-0.896,3.7414,9.016 2019-06-03 15:45:17.100,148.9976,8689.4883,-2.962,9.0404,0.8813,0.0043,2340.0,2400.0,0.0778,-0.8869,3.7453,9.0745 2019-06-03 15:45:17.120,149.2377,8688.6357,-2.962,9.0404,1.1486,0.0909,2340.0,2400.0,0.0866,-0.9262,3.7493,9.0745 2019-06-03 15:45:17.140,149.2826,8687.3281,-2.962,9.0404,0.9219,0.0046,2340.0,2400.0,0.0866,-0.9474,3.7506,9.0745 2019-06-03 15:45:17.160,149.2677,8686.4756,-2.9641,9.1418,1.2041,0.1047,2340.0,2400.0,0.0954,-0.9715,3.7506,9.1388 2019-06-03 15:45:17.180,149.2227,8685.1396,-2.9674,9.2403,0.8894,0.013,2340.0,2400.0,0.0837,-1.0198,3.7612,9.2058 2019-06-03 15:45:17.200,149.2302,8684.2588,-2.9745,9.2844,0.879,0.0085,2340.0,2400.0,0.0778,-1.0228,3.7453,9.2363 2019-06-03 15:45:17.220,149.2302,8683.377,-2.975,9.3323,1.2185,0.1076,2340.0,2400.0,0.0749,-1.1163,3.752,9.27 2019-06-03 15:45:17.240,149.2602,8682.5244,-2.975,9.3323,0.9242,0.028,2340.0,2400.0,0.072,-1.1193,3.7453,9.27 2019-06-03 15:45:17.260,149.2826,8682.6094,-2.975,9.3323,1.1782,0.0595,2340.0,2400.0,0.0983,-1.1284,3.7665,9.27 2019-06-03 15:45:17.280,149.2227,8682.667,-2.9785,9.4208,0.909,0.035,2340.0,2400.0,0.0895,-1.2247,3.7612,9.3375 2019-06-03 15:45:17.300,149.2377,8682.6387,-2.9804,9.5097,0.9216,0.0265,2340.0,2400.0,0.0895,-1.2277,3.7387,9.4064 2019-06-03 15:45:17.320,149.477,8682.667,-2.9804,9.5097,1.2574,0.0819,2340.0,2400.0,0.0837,-1.2939,3.7665,9.4064 2019-06-03 15:45:17.340,149.5069,8682.667,-2.9804,9.5097,0.8258,0.0491,2340.0,2400.0,0.0691,-1.2969,3.7639,9.4064 2019-06-03 15:45:17.360,149.4994,8682.7236,-2.9787,9.5935,1.2581,0.0575,2340.0,2400.0,0.0808,-1.2939,3.7692,9.4768 2019-06-03 15:45:17.380,149.4546,8682.8086,-2.9787,9.5935,0.8631,0.0854,2340.0,2400.0,0.0866,-1.351,3.7612,9.4768 2019-06-03 15:45:17.400,149.4546,8682.8652,-2.9807,9.7072,0.8883,0.0713,2400.0,2400.0,0.0925,-1.354,3.7586,9.5878 2019-06-03 15:45:17.420,149.4546,8682.8369,-2.9826,9.7446,1.3469,0.022,2400.0,2400.0,0.0895,-1.3841,3.7665,9.6234 2019-06-03 15:45:17.440,149.4994,8682.8369,-2.9826,9.7446,0.8424,0.0805,2400.0,2400.0,0.0662,-1.4021,3.7586,9.6234 2019-06-03 15:45:17.460,149.4994,8682.752,-2.9826,9.7446,1.2733,0.0314,2400.0,2400.0,0.0691,-1.4141,3.7665,9.6234 2019-06-03 15:45:17.480,149.4546,8681.7285,-2.9827,9.8173,0.8476,0.0951,2400.0,2400.0,0.0574,-1.4741,3.7665,9.696 2019-06-03 15:45:17.500,149.4696,8680.7627,-2.9805,9.8827,0.7866,0.0851,2400.0,2400.0,0.0574,-1.4741,3.7665,9.7688 2019-06-03 15:45:17.520,149.7081,8679.8818,-2.9805,9.8827,1.3591,-0.0028,2400.0,2400.0,0.0632,-1.558,3.7732,9.7688 2019-06-03 15:45:17.540,149.7379,8678.5459,-2.9805,9.8827,0.8025,0.0865,2400.0,2400.0,0.0603,-1.582,3.7665,9.7688 2019-06-03 15:45:17.560,149.7305,8677.6367,-2.974,9.9471,1.3243,0.0041,2400.0,2400.0,0.072,-1.6179,3.7718,9.842 2019-06-03 15:45:17.580,149.6933,8676.2441,-2.9714,10.0016,0.8513,0.1601,2400.0,2400.0,0.0486,-1.7465,3.7599,9.9211 2019-06-03 15:45:17.600,149.6933,8675.3633,-2.9706,10.0265,0.8513,0.1479,2400.0,2400.0,0.0545,-1.7764,3.7679,9.9567 2019-06-03 15:45:17.620,149.7007,8674.4248,-2.9715,10.0491,1.2781,-0.0439,2400.0,2400.0,0.0398,-1.9703,3.7705,9.9911 2019-06-03 15:45:17.640,149.7379,8673.4873,-2.9715,10.0491,0.8653,0.1354,2400.0,2400.0,0.0486,-1.9881,3.7732,9.9911 2019-06-03 15:45:17.660,149.7453,8673.5439,-2.9715,10.0491,1.3236,-0.0073,2400.0,2400.0,0.0486,-2.1131,3.7665,9.9911 2019-06-03 15:45:17.680,149.6858,8672.6914,-2.9668,10.0917,0.8077,0.1344,2400.0,2400.0,0.0515,-2.2438,3.7705,10.0616 2019-06-03 15:45:17.700,149.7007,8671.8105,-2.9581,10.1224,0.8313,0.1139,2400.0,2400.0,0.0486,-2.2853,3.7559,10.1305 2019-06-03 15:45:17.720,149.9385,8670.958,-2.9581,10.1224,1.2433,-0.013,2400.0,2400.0,0.0457,-2.469,3.7705,10.1305 2019-06-03 15:45:17.740,149.9756,8669.7363,-2.9581,10.1224,0.8676,0.1283,2400.0,2400.0,0.0282,-2.5104,3.7692,10.1305 2019-06-03 15:45:17.760,149.9534,8668.9697,-2.95,10.1363,1.2289,-0.0247,2400.0,2400.0,0.0486,-2.5902,3.7692,10.1969 2019-06-03 15:45:17.780,149.9237,8667.748,-2.9445,10.1336,0.8605,0.1674,2400.0,2400.0,0.0428,-2.6787,3.7679,10.2607 2019-06-03 15:45:17.800,149.9237,8666.9805,-2.9395,10.1276,0.9001,0.1786,2400.0,2400.0,0.0515,-2.6787,3.7665,10.2919 2019-06-03 15:45:17.820,149.9311,8666.1855,-2.9402,10.1146,1.196,-0.0864,2400.0,2400.0,0.0486,-2.7819,3.7758,10.3212 2019-06-03 15:45:17.840,149.9756,8665.3896,-2.9402,10.1146,0.8916,0.1507,2400.0,2400.0,0.0311,-2.8084,3.7718,10.3212 2019-06-03 15:45:17.860,149.9756,8665.3613,-2.9402,10.1146,1.1594,-0.0459,2400.0,2400.0,0.0369,-2.776,3.7652,10.3212 2019-06-03 15:45:17.880,149.9237,8664.3955,-2.9292,10.0823,0.9763,0.1776,2400.0,2400.0,0.0311,-2.8378,3.7692,10.3805 2019-06-03 15:45:17.900,149.9459,8663.458,-2.9175,10.0325,0.8672,0.1558,2400.0,2400.0,0.0369,-2.8054,3.7612,10.4376 2019-06-03 15:45:17.920,150.3013,8662.5488,-2.9175,10.0325,1.1457,-0.0689,2400.0,2400.0,0.034,-2.8231,3.7692,10.4376 2019-06-03 15:45:17.940,150.3087,8661.2422,-2.9175,10.0325,0.9915,0.1387,2400.0,2400.0,0.0223,-2.8378,3.7718,10.4376 2019-06-03 15:45:17.960,150.3087,8660.333,-2.9087,9.9677,1.1276,-0.044,2400.0,2400.0,0.0282,-2.8084,3.7732,10.4916 2019-06-03 15:45:17.980,150.2643,8658.9697,-2.9012,9.8837,1.0281,0.2,2400.0,2400.0,0.0048,-2.8878,3.7692,10.5216 2019-06-03 15:45:18.000,150.2643,8658.0605,-2.8921,9.8392,0.9604,0.1372,2400.0,2400.0,0.0018,-2.8231,3.7639,10.5477 2019-06-03 15:45:18.020,150.2791,8657.1514,-2.8927,9.7874,1.0747,-0.0499,2400.0,2400.0,0.0077,-2.8643,3.7692,10.5708 2019-06-03 15:45:18.040,150.3087,8656.1855,-2.8927,9.7874,1.0554,0.1,2400.0,2400.0,-0.0011,-2.9025,3.7665,10.5708 2019-06-03 15:45:18.060,150.3234,8656.2705,-2.8927,9.7874,1.0159,0.0025,2400.0,2400.0,0.0223,-2.8937,3.7718,10.5708 2019-06-03 15:45:18.080,150.2717,8656.2988,-2.8799,9.6855,1.1324,0.1608,2400.0,2400.0,-0.0069,-2.9495,3.7599,10.6186 2019-06-03 15:45:18.100,150.2717,8656.2139,-2.8687,9.5749,1.0662,0.1213,2400.0,2400.0,0.0018,-2.9407,3.7639,10.6644 2019-06-03 15:45:18.120,150.5078,8656.2422,-2.8687,9.5749,0.9108,-0.0561,2400.0,2400.0,-0.0069,-2.9877,3.7546,10.6644 2019-06-03 15:45:18.140,150.552,8656.2705,-2.8687,9.5749,1.1664,0.1076,2400.0,2400.0,-0.0069,-3.0083,3.7665,10.6644 2019-06-03 15:45:18.160,150.5372,8656.3271,-2.86,9.4509,1.021,-0.0025,2400.0,2400.0,-0.0011,-2.9995,3.7573,10.7063 2019-06-03 15:45:18.180,150.5078,8656.2705,-2.8479,9.3116,1.1779,0.1531,2400.0,2400.0,-0.0186,-3.0406,3.7586,10.7339 2019-06-03 15:45:18.200,150.5004,8656.2988,-2.8379,9.2452,1.2074,0.1021,2400.0,2400.0,-0.0069,-3.0435,3.7652,10.755 2019-06-03 15:45:18.220,150.5078,8656.2422,-2.8344,9.1735,0.9131,0.0133,2400.0,2400.0,-0.0069,-3.0728,3.7612,10.7731 2019-06-03 15:45:18.240,150.5446,8656.2139,-2.8344,9.1735,1.203,0.0393,2400.0,2400.0,-0.0332,-3.0875,3.7387,10.7731 2019-06-03 15:45:18.260,150.552,8656.1855,-2.8344,9.1735,0.9426,0.0582,2400.0,2400.0,-0.0391,-3.0728,3.7506,10.7731 2019-06-03 15:45:18.280,150.493,8655.1914,-2.8194,9.0256,1.1338,0.0875,2400.0,2400.0,-0.0712,-3.1256,3.7599,10.8117 2019-06-03 15:45:18.300,150.5151,8654.2256,-2.8078,8.866,1.2755,0.0883,2400.0,2400.0,-0.0829,-3.1051,3.7453,10.848 2019-06-03 15:45:18.320,150.7578,8653.2891,-2.8078,8.866,0.7973,0.0173,2400.0,2400.0,-0.0917,-3.108,3.7387,10.848 2019-06-03 15:45:18.340,150.7798,8651.9824,-2.8078,8.866,1.2921,0.053,2400.0,2400.0,-0.0946,-3.1315,3.7453,10.848 2019-06-03 15:45:18.360,150.7725,8651.1865,-2.7991,8.6959,0.9574,0.0693,2400.0,2400.0,-0.0946,-3.1198,3.7401,10.8828 2019-06-03 15:45:18.380,150.7358,8649.9375,-2.7885,8.5172,1.2692,0.0875,2400.0,2400.0,-0.0917,-3.1286,3.752,10.8936 2019-06-03 15:45:18.400,150.7211,8649.1133,-2.7828,8.4316,1.301,0.0344,2400.0,2400.0,-0.0975,-3.1227,3.7361,10.9092 2019-06-03 15:45:18.420,150.7431,8648.2051,-2.7773,8.3433,0.8335,0.0817,2400.0,2400.0,-0.0858,-3.1168,3.752,10.926 2019-06-03 15:45:18.440,150.7872,8647.2676,-2.7773,8.3433,1.2796,0.029,2400.0,2400.0,-0.1005,-3.1227,3.7387,10.926 2019-06-03 15:45:18.460,150.7872,8647.2676,-2.7773,8.3433,0.9582,0.0786,2400.0,2400.0,-0.0917,-3.1227,3.7414,10.926 2019-06-03 15:45:18.480,150.7358,8647.2676,-2.7678,8.1649,1.3524,0.0496,2400.0,2400.0,-0.1063,-3.1286,3.7414,10.9587 2019-06-03 15:45:18.500,150.7431,8647.2393,-2.7612,7.9762,1.2736,-0.0173,2400.0,2400.0,-0.0975,-3.1227,3.7559,10.99 2019-06-03 15:45:18.520,150.9851,8647.2109,-2.7612,7.9762,0.9656,0.1137,2400.0,2400.0,-0.1063,-3.1227,3.7559,10.99 2019-06-03 15:45:18.540,151.0217,8647.2109,-2.7612,7.9762,1.2159,-0.0459,2400.0,2400.0,-0.1092,-3.1227,3.744,10.99 2019-06-03 15:45:18.560,151.007,8647.1826,-2.7544,7.7855,1.0162,0.1689,2400.0,2400.0,-0.0975,-3.1198,3.7612,11.0206 2019-06-03 15:45:18.580,150.9704,8647.1543,-2.7464,7.5918,1.1616,-0.0363,2400.0,2400.0,-0.1034,-3.1549,3.7626,11.0261 2019-06-03 15:45:18.600,150.9704,8647.1543,-2.7472,7.4928,1.1926,-0.0358,2400.0,2400.0,-0.1005,-3.1256,3.7665,11.0398 2019-06-03 15:45:18.620,150.9704,8647.1826,-2.737,7.3962,0.9852,0.154,2400.0,2400.0,-0.0946,-3.108,3.7798,11.0562 2019-06-03 15:45:18.640,151.007,8647.2393,-2.737,7.3962,1.1335,-0.0629,2400.0,2400.0,-0.0946,-3.1315,3.789,11.0562 2019-06-03 15:45:18.660,151.0143,8647.2393,-2.737,7.3962,0.987,0.1591,2400.0,2400.0,-0.0858,-3.0963,3.7917,11.0562 2019-06-03 15:45:18.680,150.9558,8646.3018,-2.732,7.1946,1.2574,-0.013,2400.0,2400.0,-0.0829,-3.1725,3.8327,11.0836 2019-06-03 15:45:18.700,150.9777,8645.3369,-2.7267,6.9867,1.1412,-0.0314,2400.0,2400.0,-0.0858,-3.1198,3.8367,11.1094 2019-06-03 15:45:18.720,151.2117,8644.3994,-2.7267,6.9867,1.0159,0.1573,2400.0,2400.0,-0.0829,-3.1256,3.8738,11.1094 2019-06-03 15:45:18.740,151.2409,8643.0654,-2.7267,6.9867,1.1542,-0.0407,2400.0,2400.0,-0.0975,-3.1286,3.8897,11.1094 2019-06-03 15:45:18.760,151.2336,8642.2139,-2.714,6.7808,1.0218,0.1614,2400.0,2400.0,-0.08,-3.0992,3.9439,11.1359 2019-06-03 15:45:18.780,151.1971,8640.8506,-2.6958,6.5716,1.1187,-0.0411,2400.0,2400.0,-0.0771,-3.1315,3.9651,11.1487 2019-06-03 15:45:18.800,151.1825,8639.9414,-2.691,6.4639,1.1113,-0.0531,2400.0,2400.0,-0.0829,-3.108,3.9916,11.1598 2019-06-03 15:45:18.820,151.1971,8639.0049,-2.6767,6.3628,1.1227,0.1723,2400.0,2400.0,-0.0888,-3.0963,4.0181,11.1737 2019-06-03 15:45:18.840,151.2336,8638.0957,-2.6767,6.3628,1.0946,-0.0403,2400.0,2400.0,-0.0946,-3.1286,4.0419,11.1737 2019-06-03 15:45:18.860,151.2409,8638.125,-2.6767,6.3628,1.1853,0.1748,2400.0,2400.0,-0.0712,-3.0934,4.0843,11.1737 2019-06-03 15:45:18.880,151.1898,8637.2441,-2.6593,6.1514,1.0676,-0.0415,2400.0,2400.0,-0.0683,-3.108,4.1081,11.1987 2019-06-03 15:45:18.900,151.2117,8636.3926,-2.6334,5.9411,0.9526,-0.0382,2400.0,2400.0,-0.0683,-3.108,4.1108,11.2246 2019-06-03 15:45:18.920,151.5613,8635.541,-2.6334,5.9411,1.1575,0.1304,2400.0,2400.0,-0.0654,-3.1051,4.1518,11.2246 2019-06-03 15:45:18.940,151.5903,8634.292,-2.6334,5.9411,1.1146,-0.0024,2400.0,2400.0,-0.1151,-3.1168,4.1598,11.2246 2019-06-03 15:45:18.960,151.5758,8633.5254,-2.5959,5.7311,1.1594,0.1476,2400.0,2400.0,-0.0829,-3.1139,4.2021,11.25 2019-06-03 15:45:18.980,151.5395,8632.2764,-2.5554,5.5161,0.9648,-0.0194,2400.0,2400.0,-0.0917,-3.1198,4.218,11.2557 2019-06-03 15:45:19.000,151.5395,8631.3965,-2.5391,5.4083,0.8864,-0.0445,2400.0,2400.0,-0.0858,-3.1139,4.2167,11.2676 2019-06-03 15:45:19.020,151.5395,8630.5449,-2.5137,5.309,1.3043,0.1576,2400.0,2400.0,-0.08,-3.111,4.226,11.2822 2019-06-03 15:45:19.040,151.5758,8629.75,-2.5137,5.309,1.0536,-0.0042,2400.0,2400.0,-0.0888,-3.111,4.2432,11.2822 2019-06-03 15:45:19.060,151.5903,8629.75,-2.5137,5.309,1.2929,0.1096,2400.0,2400.0,-0.0683,-3.0728,4.2538,11.2822 2019-06-03 15:45:19.080,151.5395,8629.7217,-2.469,5.102,0.9349,0.0493,2400.0,2400.0,-0.0888,-3.0787,4.2564,11.3083 2019-06-03 15:45:19.100,151.554,8629.6084,-2.4085,4.8963,0.9179,0.0342,2400.0,2400.0,-0.0888,-3.0787,4.2511,11.336 2019-06-03 15:45:19.120,151.6557,8629.5225,-2.4085,4.8963,1.3202,0.0629,2400.0,2400.0,-0.0654,-3.0376,4.2551,11.336 2019-06-03 15:45:19.140,151.6992,8629.4941,-2.4085,4.8963,0.9253,0.0726,2400.0,2400.0,-0.0683,-3.0758,4.2763,11.336 2019-06-03 15:45:19.160,151.6847,8629.5225,-2.3441,4.6992,1.301,0.036,2400.0,2400.0,-0.0771,-3.0464,4.263,11.3658 2019-06-03 15:45:19.180,151.6485,8629.5508,-2.2814,4.4958,0.8435,0.0893,2400.0,2400.0,-0.0742,-3.0494,4.2816,11.3771 2019-06-03 15:45:19.200,151.6339,8629.5791,-2.2501,4.3935,0.8912,0.0933,2400.0,2400.0,-0.0888,-3.0494,4.2657,11.39 2019-06-03 15:45:19.220,151.6485,8629.5508,-2.2184,4.295,1.3143,0.0449,2400.0,2400.0,-0.0566,-3.0083,4.2749,11.4035 2019-06-03 15:45:19.240,151.692,8629.5791,-2.2184,4.295,0.8776,0.1049,2400.0,2400.0,-0.0712,-3.0112,4.2802,11.4035 2019-06-03 15:45:19.260,151.6992,8629.4941,-2.2184,4.295,1.3824,0.0025,2400.0,2400.0,-0.0537,-3.0054,4.2749,11.4035 2019-06-03 15:45:19.280,151.6485,8628.5293,-2.1512,4.0917,0.8025,0.125,2400.0,2400.0,-0.0858,-2.973,4.2802,11.4297 2019-06-03 15:45:19.300,151.663,8627.5645,-2.076,3.8923,0.919,0.1372,2400.0,2400.0,-0.0771,-2.9701,4.2763,11.4555 2019-06-03 15:45:19.320,151.8949,8626.6563,-2.076,3.8923,1.4079,-0.0267,2400.0,2400.0,-0.0712,-2.9378,4.2789,11.4555 2019-06-03 15:45:19.340,151.9239,8625.2939,-2.076,3.8923,1.0185,0.1783,2400.0,2400.0,-0.0742,-2.9819,4.2961,11.4555 2019-06-03 15:45:19.360,151.9094,8624.4424,-2.0008,3.6963,1.3998,-0.0518,2400.0,2400.0,-0.0625,-2.926,4.2802,11.4802 2019-06-03 15:45:19.380,151.8804,8623.0518,-1.9314,3.4914,0.8598,0.1887,2400.0,2400.0,-0.0595,-2.9848,4.3107,11.496 2019-06-03 15:45:19.400,151.8732,8622.1436,-1.8922,3.3924,0.9267,0.174,2400.0,2400.0,-0.0625,-2.9877,4.2961,11.507 2019-06-03 15:45:19.420,151.8804,8621.207,-1.8611,3.2935,1.3269,-0.0565,2400.0,2400.0,-0.0595,-2.9613,4.3067,11.5158 2019-06-03 15:45:19.440,151.9166,8620.3271,-1.8611,3.2935,1.0787,0.2157,2400.0,2400.0,-0.0829,-2.9613,4.3133,11.5158 2019-06-03 15:45:19.460,151.9311,8620.4121,-1.8611,3.2935,1.3609,-0.0816,2400.0,2400.0,-0.0946,-2.9319,4.2948,11.5158 2019-06-03 15:45:19.480,151.8732,8620.3838,-1.7856,3.1006,1.0569,0.2073,2400.0,2400.0,-0.0917,-2.9701,4.3147,11.5362 2019-06-03 15:45:19.500,151.8949,8620.3271,-1.7075,2.9142,1.1131,0.1768,2400.0,2400.0,-0.08,-2.9701,4.3028,11.5559 2019-06-03 15:45:19.520,152.2488,8620.3271,-1.7075,2.9142,1.3236,-0.0667,2400.0,2400.0,-0.0742,-2.9584,4.3014,11.5559 2019-06-03 15:45:19.540,152.2776,8620.2988,-1.7075,2.9142,1.0991,0.2345,2400.0,2400.0,-0.0712,-2.9613,4.3332,11.5559 2019-06-03 15:45:19.560,152.2632,8620.4121,-1.6351,2.7289,1.3206,-0.1042,2400.0,2400.0,-0.0888,-2.9407,4.3107,11.5729 2019-06-03 15:45:19.580,152.2272,8620.4404,-1.5656,2.536,1.2156,0.2335,2400.0,2400.0,-0.0771,-2.9495,4.3292,11.587 2019-06-03 15:45:19.600,152.22,8620.582,-1.5201,2.446,1.1656,0.1872,2400.0,2400.0,-0.0917,-2.9525,4.2988,11.5954 2019-06-03 15:45:19.620,152.22,8620.5537,-1.4918,2.3513,1.1864,-0.0616,2400.0,2400.0,-0.0742,-2.9055,4.2935,11.6017 2019-06-03 15:45:19.640,152.2632,8620.582,-1.4918,2.3513,1.2932,0.2224,2400.0,2400.0,-0.08,-2.9466,4.3213,11.6017 2019-06-03 15:45:19.660,152.2704,8620.5537,-1.4918,2.3513,1.1501,-0.058,2400.0,2400.0,-0.0566,-2.8908,4.3226,11.6017 2019-06-03 15:45:19.680,152.22,8619.5322,-1.415,2.1737,1.4297,0.209,2400.0,2400.0,-0.0625,-2.9202,4.3411,11.6142 2019-06-03 15:45:19.700,152.2416,8618.5957,-1.3419,1.9977,1.2984,0.1609,2400.0,2400.0,-0.0829,-2.9231,4.3147,11.6256 2019-06-03 15:45:19.720,152.4648,8617.6875,-1.3419,1.9977,1.196,0.0004,2400.0,2400.0,-0.0742,-2.8613,4.3107,11.6256 2019-06-03 15:45:19.740,152.4935,8616.3828,-1.3419,1.9977,1.3868,0.1436,2400.0,2400.0,-0.0888,-2.9172,4.3028,11.6256 2019-06-03 15:45:19.760,152.4863,8615.5596,-1.275,1.8193,0.9955,0.0278,2400.0,2400.0,-0.0771,-2.829,4.3001,11.6347 2019-06-03 15:45:19.780,152.4504,8614.2256,-1.206,1.6411,1.4586,0.1063,2400.0,2400.0,-0.0771,-2.8584,4.3279,11.6472 2019-06-03 15:45:19.800,152.4504,8613.3467,-1.1664,1.5587,1.4826,0.0662,2400.0,2400.0,-0.0771,-2.8613,4.3332,11.6516 2019-06-03 15:45:19.820,152.4504,8612.4385,-1.1331,1.4725,1.0702,0.0573,2400.0,2400.0,-0.0508,-2.7848,4.3372,11.6548 2019-06-03 15:45:19.840,152.4935,8611.6152,-1.1331,1.4725,1.4804,0.1083,2400.0,2400.0,-0.0537,-2.8378,4.3491,11.6548 2019-06-03 15:45:19.860,152.4935,8611.6436,-1.1331,1.4725,0.9486,0.084,2400.0,2400.0,-0.0595,-2.7936,4.3028,11.6548 2019-06-03 15:45:19.880,152.4432,8611.6719,-1.0634,1.3079,1.5536,0.0641,2400.0,2400.0,-0.0683,-2.8054,4.2988,11.6603 2019-06-03 15:45:19.900,152.4576,8611.6152,-1.001,1.1418,1.524,0.0412,2400.0,2400.0,-0.0888,-2.8113,4.2697,11.664 2019-06-03 15:45:19.920,152.6873,8611.6719,-1.001,1.1418,1.112,0.0993,2400.0,2400.0,-0.0683,-2.8054,4.3213,11.664 2019-06-03 15:45:19.940,152.7303,8611.6436,-1.001,1.1418,1.4493,0.069,2400.0,2400.0,-0.0742,-2.8113,4.3504,11.664 2019-06-03 15:45:19.960,152.716,8611.6152,-0.9384,0.9755,0.9707,0.1048,2400.0,2400.0,-0.0654,-2.8084,4.3557,11.6661 2019-06-03 15:45:19.980,152.673,8611.6152,-0.8704,0.8142,1.6339,-0.0237,2400.0,2400.0,-0.0683,-2.8113,4.3557,11.6672 2019-06-03 15:45:20.000,152.673,8611.6152,-0.8379,0.7373,1.4785,-0.032,2400.0,2400.0,-0.0683,-2.8054,4.32,11.6668 2019-06-03 15:45:20.020,152.673,8611.6436,-0.8019,0.6612,1.1449,0.1701,2400.0,2400.0,-0.0654,-2.7553,4.2789,11.6671 2019-06-03 15:45:20.040,152.7088,8611.6436,-0.8019,0.6612,1.5015,-0.0122,2400.0,2400.0,-0.0742,-2.8231,4.2829,11.6671 2019-06-03 15:45:20.060,152.7232,8611.6152,-0.8019,0.6612,1.0318,0.1712,2400.0,2400.0,-0.0742,-2.7229,4.2948,11.6671 2019-06-03 15:45:20.080,152.6658,8610.5371,-0.7393,0.5054,1.5114,-0.0485,2400.0,2400.0,-0.0683,-2.7936,4.3544,11.6651 2019-06-03 15:45:20.100,152.6802,8609.5439,-0.6787,0.3484,1.3798,-0.0398,2400.0,2400.0,-0.0742,-2.7936,4.3517,11.6601 2019-06-03 15:45:20.120,152.7948,8608.6934,-0.6787,0.3484,1.1065,0.1765,2400.0,2400.0,-0.0595,-2.717,4.3676,11.6601 2019-06-03 15:45:20.140,152.8234,8607.4453,-0.6787,0.3484,1.4611,-0.0308,2400.0,2400.0,-0.0771,-2.7436,4.3411,11.6601 2019-06-03 15:45:20.160,152.8306,8606.5938,-0.6136,0.1987,1.0943,0.1963,2400.0,2400.0,-0.0829,-2.6698,4.2961,11.6549 2019-06-03 15:45:20.180,152.7805,8605.2041,-0.5491,0.0508,1.3798,-0.0799,2400.0,2400.0,-0.0858,-2.6787,4.2935,11.6417 2019-06-03 15:45:20.200,152.7733,8604.3242,-0.5222,-0.0259,1.2807,-0.0475,2400.0,2400.0,-0.0858,-2.7052,4.2776,11.6375 2019-06-03 15:45:20.220,152.7948,8603.416,-0.4857,-0.0948,1.2063,0.1905,2400.0,2400.0,-0.0537,-2.6403,4.3107,11.6349 2019-06-03 15:45:20.240,152.8306,8602.4805,-0.4857,-0.0948,1.338,-0.0497,2400.0,2400.0,-0.0537,-2.6433,4.3557,11.6349 2019-06-03 15:45:20.260,152.8378,8602.5654,-0.4857,-0.0948,1.1686,0.1915,2400.0,2400.0,-0.0566,-2.6433,4.3478,11.6349 2019-06-03 15:45:20.280,152.7876,8602.5654,-0.4281,-0.2401,1.23,-0.078,2400.0,2400.0,-0.0566,-2.6256,4.3557,11.6256 2019-06-03 15:45:20.300,152.7876,8602.4805,-0.3695,-0.3808,1.2662,-0.0403,2400.0,2400.0,-0.08,-2.6285,4.3186,11.6172 2019-06-03 15:45:20.320,153.0237,8602.4805,-0.3695,-0.3808,1.2681,0.1861,2400.0,2400.0,-0.0654,-2.6256,4.2802,11.6172 2019-06-03 15:45:20.340,153.0522,8602.5654,-0.3695,-0.3808,1.1605,-0.044,2400.0,2400.0,-0.0683,-2.6197,4.2908,11.6172 2019-06-03 15:45:20.360,153.0451,8602.5654,-0.3078,-0.5177,1.2337,0.1802,2400.0,2400.0,-0.0595,-2.5931,4.2935,11.6078 2019-06-03 15:45:20.380,153.0094,8602.5654,-0.2456,-0.6502,1.2093,-0.0707,2400.0,2400.0,-0.0537,-2.5902,4.3531,11.5904 2019-06-03 15:45:20.400,153.0022,8602.5938,-0.2218,-0.7199,1.2485,-0.0206,2400.0,2340.0,-0.08,-2.5902,4.3584,11.5839 2019-06-03 15:45:20.420,153.0094,8602.5654,-0.1885,-0.7804,1.298,0.1607,2400.0,2340.0,-0.0566,-2.5399,4.3584,11.5783 2019-06-03 15:45:20.440,153.0451,8602.5654,-0.1885,-0.7804,1.1398,-0.0024,2400.0,2340.0,-0.0654,-2.6256,4.3359,11.5783 2019-06-03 15:45:20.460,153.0522,8602.5938,-0.1885,-0.7804,1.3946,0.1446,2400.0,2340.0,-0.0566,-2.5488,4.2908,11.5783 2019-06-03 15:45:20.480,153.0022,8601.6289,-0.1337,-0.9121,1.1509,-0.0225,2400.0,2340.0,-0.0595,-2.5399,4.2776,11.5637 2019-06-03 15:45:20.500,153.0165,8600.6934,-0.0731,-1.0401,1.2625,0.0093,2400.0,2340.0,-0.0654,-2.5842,4.3054,11.5498 2019-06-03 15:45:20.520,153.1307,8599.8418,-0.0731,-1.0401,1.3461,0.1315,2400.0,2340.0,-0.0654,-2.5488,4.3213,11.5498 2019-06-03 15:45:20.540,153.1664,8598.5654,-0.0731,-1.0401,1.0565,0.022,2400.0,2340.0,-0.0478,-2.5606,4.357,11.5498 2019-06-03 15:45:20.560,153.1593,8597.7998,-0.0123,-1.1632,1.426,0.1076,2400.0,2340.0,-0.0595,-2.5577,4.3292,11.535 2019-06-03 15:45:20.580,153.1165,8596.5801,0.048,-1.2849,1.0676,0.0188,2400.0,2340.0,-0.0566,-2.5163,4.3094,11.5175 2019-06-03 15:45:20.600,153.1165,8595.7861,0.074,-1.3491,1.1627,0.0431,2400.0,2340.0,-0.0742,-2.5252,4.3041,11.5086 2019-06-03 15:45:20.620,153.1236,8594.9639,0.1034,-1.4078,1.4889,0.0895,2400.0,2340.0,-0.0683,-2.5222,4.2975,11.5004 2019-06-03 15:45:20.640,153.1664,8594.0557,0.1034,-1.4078,1.0425,0.0503,2400.0,2340.0,-0.0712,-2.5222,4.3279,11.5004 2019-06-03 15:45:20.660,153.1664,8594.1123,0.1034,-1.4078,1.4316,0.0685,2400.0,2340.0,-0.0712,-2.5192,4.3186,11.5004 2019-06-03 15:45:20.680,153.1165,8594.084,0.1611,-1.5292,1.1172,0.087,2400.0,2340.0,-0.0595,-2.5163,4.312,11.4828 2019-06-03 15:45:20.700,153.1236,8594.0557,0.2229,-1.6438,1.1294,0.1153,2400.0,2340.0,-0.0625,-2.5192,4.3133,11.466 2019-06-03 15:45:20.720,153.1165,8594.084,0.2229,-1.6438,1.3916,0.0309,2400.0,2340.0,-0.0508,-2.5163,4.3054,11.466 2019-06-03 15:45:20.740,153.1664,8594.1406,0.2229,-1.6438,1.0651,0.1176,2400.0,2340.0,-0.0654,-2.5192,4.3028,11.466 2019-06-03 15:45:20.760,153.1593,8594.2266,0.2828,-1.7577,1.4893,0.0089,2400.0,2340.0,-0.0683,-2.5192,4.2961,11.4472 2019-06-03 15:45:20.780,153.1236,8594.1406,0.3403,-1.8727,1.0994,0.107,2400.0,2340.0,-0.08,-2.5133,4.2855,11.4264 2019-06-03 15:45:20.800,153.1236,8594.1689,0.3697,-1.9319,1.0551,0.1113,2400.0,2340.0,-0.0888,-2.5163,4.3067,11.4168 2019-06-03 15:45:20.820,153.1236,8594.1689,0.3933,-1.9896,1.4471,0.0147,2400.0,2340.0,-0.0712,-2.4808,4.3028,11.4074 2019-06-03 15:45:20.840,153.1593,8594.2266,0.3933,-1.9896,1.0259,0.1378,2400.0,2340.0,-0.0712,-2.4778,4.2895,11.4074 2019-06-03 15:45:20.860,153.1664,8594.2266,0.3933,-1.9896,1.3066,-0.0057,2400.0,2340.0,-0.0712,-2.4719,4.263,11.4074 2019-06-03 15:45:20.880,153.1165,8593.2617,0.4535,-2.107,1.2696,0.1427,2400.0,2340.0,-0.0508,-2.4631,4.2842,11.3894 2019-06-03 15:45:20.900,153.1307,8592.2695,0.5148,-2.2178,1.0218,0.1576,2400.0,2340.0,-0.0537,-2.4631,4.3147,11.3712 2019-06-03 15:45:20.920,153.2377,8591.2764,0.5148,-2.2178,1.3698,-0.0463,2400.0,2340.0,-0.0566,-2.3979,4.3014,11.3712 2019-06-03 15:45:20.940,153.2733,8589.916,0.5148,-2.2178,1.1949,0.1629,2400.0,2340.0,-0.0625,-2.3861,4.2802,11.3712 2019-06-03 15:45:20.960,153.2733,8589.0645,0.571,-2.3294,1.2995,-0.0497,2400.0,2340.0,-0.0712,-2.3416,4.2485,11.3524 2019-06-03 15:45:20.980,153.2305,8587.7041,0.6215,-2.4402,1.3069,0.1986,2400.0,2340.0,-0.0654,-2.3061,4.2471,11.3288 2019-06-03 15:45:21.000,153.2234,8586.7959,0.6549,-2.4925,1.0946,0.2201,2400.0,2340.0,-0.0478,-2.3268,4.2855,11.3189 2019-06-03 15:45:21.020,153.2377,8585.917,0.6745,-2.5504,1.3032,-0.0475,2400.0,2340.0,-0.0508,-2.1755,4.2657,11.309 2019-06-03 15:45:21.040,153.2733,8585.0098,0.6745,-2.5504,1.2744,0.1855,2400.0,2340.0,-0.0508,-2.1814,4.2842,11.309 2019-06-03 15:45:21.060,153.2804,8585.0098,0.6745,-2.5504,1.2211,-0.0439,2400.0,2340.0,-0.0595,-2.1131,4.2538,11.309 2019-06-03 15:45:21.080,153.2305,8585.0098,0.7348,-2.6497,1.2847,0.1416,2400.0,2340.0,-0.0566,-2.0119,4.2458,11.2908 2019-06-03 15:45:21.100,153.2448,8584.9814,0.795,-2.7408,1.2252,0.1619,2400.0,2340.0,-0.0595,-1.9941,4.2524,11.2731 2019-06-03 15:45:21.120,153.3445,8584.9531,0.795,-2.7408,1.2855,0.0061,2400.0,2340.0,-0.0449,-1.8629,4.2498,11.2731 2019-06-03 15:45:21.140,153.3871,8585.0098,0.795,-2.7408,1.3443,0.1575,2400.0,2340.0,-0.0362,-1.8032,4.2604,11.2731 2019-06-03 15:45:21.160,153.3871,8585.0947,0.8477,-2.8299,1.1775,-0.0271,2400.0,2340.0,-0.0215,-1.6508,4.2405,11.2549 2019-06-03 15:45:21.180,153.3445,8585.0098,0.9,-2.91,1.3173,0.1541,2400.0,2340.0,-0.0011,-1.6329,4.2313,11.2346 2019-06-03 15:45:21.200,153.3445,8584.9814,0.9344,-2.9417,1.2818,0.1757,2400.0,2340.0,0.0077,-1.6119,4.2445,11.226 2019-06-03 15:45:21.220,153.3516,8584.9248,0.9553,-2.9769,1.1424,-0.005,2400.0,2340.0,0.0018,-1.5011,4.2246,11.2178 2019-06-03 15:45:21.240,153.3871,8585.0098,0.9553,-2.9769,1.4456,0.1257,2400.0,2340.0,0.0077,-1.5011,4.2458,11.2178 2019-06-03 15:45:21.260,153.3943,8585.0098,0.9553,-2.9769,1.1183,0.0204,2400.0,2340.0,-0.0069,-1.4141,4.2273,11.2178 2019-06-03 15:45:21.280,153.3445,8585.0381,1.0136,-3.0268,1.3217,0.125,2400.0,2340.0,0.0048,-1.3931,4.2127,11.2024 2019-06-03 15:45:21.300,153.3445,8584.9531,1.0695,-3.0627,1.3384,0.1484,2400.0,2340.0,-0.0011,-1.3841,4.2048,11.1863 2019-06-03 15:45:21.320,153.3373,8584.8965,1.0695,-3.0627,1.051,0.0139,2400.0,2340.0,0.0077,-1.2999,4.2035,11.1863 2019-06-03 15:45:21.340,153.3943,8584.9248,1.0695,-3.0627,1.3776,0.1027,2400.0,2340.0,0.0165,-1.2999,4.222,11.1863 2019-06-03 15:45:21.360,153.3871,8585.0098,1.1201,-3.0881,1.1453,0.0269,2400.0,2340.0,0.0077,-1.2849,4.1862,11.1723 2019-06-03 15:45:21.380,153.3445,8585.0098,1.1736,-3.0938,1.3391,0.0991,2400.0,2340.0,0.0252,-1.2548,4.177,11.1605 2019-06-03 15:45:21.400,153.3445,8585.0664,1.2053,-3.0923,1.3461,0.1167,2340.0,2400.0,0.0252,-1.2578,4.1637,11.1537 2019-06-03 15:45:21.420,153.3445,8585.0098,1.2304,-3.0888,1.0721,0.0646,2340.0,2400.0,0.0282,-1.2067,4.1545,11.1473 2019-06-03 15:45:21.440,153.3871,8585.0664,1.2304,-3.0888,1.4523,0.0497,2340.0,2400.0,0.0252,-1.2067,4.1677,11.1473 2019-06-03 15:45:21.460,153.3943,8585.0098,1.2304,-3.0888,1.078,0.0746,2340.0,2400.0,0.0194,-1.2127,4.1465,11.1473 2019-06-03 15:45:21.480,153.3445,8584.0176,1.2866,-3.0709,1.4035,0.0642,2340.0,2400.0,0.0282,-1.1706,4.1333,11.1347 2019-06-03 15:45:21.500,153.3516,8583.1104,1.3359,-3.0431,1.3524,0.0621,2340.0,2400.0,0.0252,-1.1736,4.1359,11.1222 2019-06-03 15:45:21.520,153.4582,8582.2031,1.3359,-3.0431,1.1375,0.0828,2340.0,2400.0,0.0282,-1.1314,4.1187,11.1222 2019-06-03 15:45:21.540,153.4938,8580.9268,1.3359,-3.0431,1.3524,0.0378,2340.0,2400.0,0.0369,-1.1254,4.1306,11.1222 2019-06-03 15:45:21.560,153.4867,8580.1045,1.3848,-3.006,1.1261,0.0802,2340.0,2400.0,0.0398,-1.1284,4.0989,11.1089 2019-06-03 15:45:21.580,153.4511,8578.7725,1.4355,-2.9486,1.4992,0.037,2340.0,2400.0,0.0515,-1.0922,4.1108,11.0988 2019-06-03 15:45:21.600,153.4511,8577.8936,1.4617,-2.9197,1.4216,0.0481,2340.0,2400.0,0.0369,-1.0922,4.1042,11.0929 2019-06-03 15:45:21.620,153.4653,8577.0146,1.4886,-2.8893,1.0651,0.0692,2340.0,2400.0,0.034,-1.0832,4.0949,11.087 2019-06-03 15:45:21.640,153.4938,8576.1924,1.4886,-2.8893,1.4371,0.0202,2340.0,2400.0,0.034,-1.0892,4.1015,11.087 2019-06-03 15:45:21.660,153.5009,8576.2207,1.4886,-2.8893,1.1512,0.0976,2340.0,2400.0,0.0398,-1.0802,4.075,11.087 2019-06-03 15:45:21.680,153.4511,8576.2207,1.5374,-2.8231,1.4267,0.0098,2340.0,2400.0,0.0603,-1.0228,4.0843,11.0753 2019-06-03 15:45:21.700,153.4653,8576.1924,1.5809,-2.7514,1.3062,0.0131,2340.0,2400.0,0.0662,-1.056,4.0975,11.0623 2019-06-03 15:45:21.720,153.6996,8576.1641,1.5809,-2.7514,1.0865,0.1114,2340.0,2400.0,0.072,-1.0289,4.0816,11.0623 2019-06-03 15:45:21.740,153.7279,8576.1641,1.5809,-2.7514,1.3047,-0.0448,2340.0,2400.0,0.0837,-1.0259,4.0896,11.0623 2019-06-03 15:45:21.760,153.7208,8576.1924,1.6267,-2.6718,1.0787,0.1328,2340.0,2400.0,0.0808,-1.0289,4.0711,11.0505 2019-06-03 15:45:21.780,153.6783,8576.1924,1.6745,-2.5835,1.277,-0.0241,2340.0,2400.0,0.0954,-1.0259,4.0777,11.0393 2019-06-03 15:45:21.800,153.6783,8576.249,1.6943,-2.5424,1.2245,0.0031,2340.0,2400.0,0.0954,-1.0289,4.0843,11.0327 2019-06-03 15:45:21.820,153.6854,8576.2207,1.7208,-2.4968,1.2307,0.1415,2340.0,2400.0,0.0925,-1.0259,4.075,11.0253 2019-06-03 15:45:21.840,153.7137,8576.249,1.7208,-2.4968,1.1956,-0.0195,2340.0,2400.0,0.0925,-1.0259,4.0697,11.0253 2019-06-03 15:45:21.860,153.7279,8576.2207,1.7208,-2.4968,1.196,0.1137,2340.0,2400.0,0.0983,-1.0259,4.0565,11.0253 2019-06-03 15:45:21.880,153.6783,8576.1924,1.763,-2.4065,1.2699,0.0138,2340.0,2400.0,0.0983,-1.0289,4.0485,11.0096 2019-06-03 15:45:21.900,153.6925,8576.1074,1.8093,-2.3135,1.1523,0.0162,2340.0,2400.0,0.1129,-1.0319,4.0763,10.9955 2019-06-03 15:45:21.920,153.7987,8576.1074,1.8093,-2.3135,1.2378,0.1211,2340.0,2400.0,0.1012,-1.0349,4.0512,10.9955 2019-06-03 15:45:21.940,153.827,8576.1641,1.8093,-2.3135,1.1945,-0.0052,2340.0,2400.0,0.0895,-1.0349,4.0499,10.9955 2019-06-03 15:45:21.960,153.827,8576.2207,1.8551,-2.2141,1.1897,0.136,2340.0,2400.0,0.0866,-1.0681,4.034,10.9814 2019-06-03 15:45:21.980,153.8058,8576.2207,1.8995,-2.1066,1.1571,-0.0012,2340.0,2400.0,0.1071,-1.0681,4.034,10.9664 2019-06-03 15:45:22.000,153.7846,8576.2207,1.9179,-2.0588,1.0939,0.0107,2340.0,2400.0,0.1158,-1.1224,4.0446,10.9592 2019-06-03 15:45:22.020,153.7917,8576.2207,1.9422,-2.0085,1.2792,0.0979,2340.0,2400.0,0.1071,-1.1284,4.0181,10.9526 2019-06-03 15:45:22.040,153.8412,8576.1924,1.9422,-2.0085,1.1431,0.0091,2340.0,2400.0,0.11,-1.1977,4.0247,10.9526 2019-06-03 15:45:22.060,153.8412,8576.1641,1.9422,-2.0085,1.2995,0.114,2340.0,2400.0,0.0983,-1.2518,4.0154,10.9526 2019-06-03 15:45:22.080,153.7917,8576.1641,1.984,-1.9128,1.1534,0.0098,2340.0,2400.0,0.11,-1.3089,4.0168,10.9383 2019-06-03 15:45:22.100,153.7917,8576.1074,2.0273,-1.8169,1.1253,0.0424,2340.0,2400.0,0.1071,-1.3961,4.0274,10.9237 2019-06-03 15:45:22.120,153.7846,8576.1357,2.0273,-1.8169,1.2592,0.0704,2340.0,2400.0,0.0925,-1.4171,4.0062,10.9237 2019-06-03 15:45:22.140,153.8341,8576.1357,2.0273,-1.8169,1.1479,0.0791,2340.0,2400.0,0.0954,-1.4531,4.0101,10.9237 2019-06-03 15:45:22.160,153.827,8576.1924,2.0707,-1.7268,1.3472,0.0581,2340.0,2400.0,0.0954,-1.5131,4.0101,10.9095 2019-06-03 15:45:22.180,153.7917,8576.1641,2.1078,-1.64,1.1483,0.0622,2340.0,2400.0,0.1042,-1.5101,4.0075,10.893 2019-06-03 15:45:22.200,153.7917,8576.1924,2.1272,-1.6006,1.1172,0.0942,2340.0,2400.0,0.11,-1.5101,4.0075,10.8861 2019-06-03 15:45:22.220,153.7917,8576.249,2.1447,-1.5644,1.2696,-0.0043,2340.0,2400.0,0.0983,-1.5101,3.9678,10.8784 2019-06-03 15:45:22.240,153.8341,8576.3057,2.1447,-1.5644,1.098,0.1377,2340.0,2400.0,0.0954,-1.5131,3.9757,10.8784 2019-06-03 15:45:22.260,153.8341,8576.3057,2.1447,-1.5644,1.3032,0.0315,2340.0,2400.0,0.072,-1.5101,3.9704,10.8784 2019-06-03 15:45:22.280,153.7846,8575.2002,2.1819,-1.4894,1.1146,0.1092,2340.0,2400.0,0.0866,-1.4981,3.9625,10.8638 2019-06-03 15:45:22.300,153.7987,8574.2363,2.2205,-1.4197,1.2019,0.1063,2340.0,2400.0,0.0895,-1.4981,3.9638,10.8506 2019-06-03 15:45:22.320,153.9049,8573.2725,2.2205,-1.4197,1.2226,0.0041,2340.0,2400.0,0.1071,-1.5101,3.9545,10.8506 2019-06-03 15:45:22.340,153.9402,8571.9121,2.2205,-1.4197,1.1893,0.1143,2340.0,2400.0,0.1012,-1.5071,3.9506,10.8506 2019-06-03 15:45:22.360,153.9332,8571.0898,2.259,-1.3542,1.2289,0.0183,2340.0,2400.0,0.0925,-1.5071,3.9532,10.838 2019-06-03 15:45:22.380,153.8978,8569.7578,2.2911,-1.2912,1.2089,0.1235,2340.0,2400.0,0.0837,-1.5071,3.9413,10.8253 2019-06-03 15:45:22.400,153.8907,8568.8506,2.3127,-1.2624,1.3402,0.1303,2400.0,2400.0,0.0749,-1.5071,3.9413,10.8194 2019-06-03 15:45:22.420,153.8978,8567.8584,2.3285,-1.2383,1.1172,-0.0158,2400.0,2400.0,0.072,-1.5041,3.9082,10.8138 2019-06-03 15:45:22.440,153.9402,8567.0361,2.3285,-1.2383,1.1982,0.1438,2400.0,2400.0,0.0954,-1.5101,3.9069,10.8138 2019-06-03 15:45:22.460,153.9473,8567.0645,2.3285,-1.2383,1.0595,0.0034,2400.0,2400.0,0.0808,-1.5101,3.8923,10.8138 2019-06-03 15:45:22.480,153.9049,8567.1211,2.3634,-1.182,1.2511,0.1071,2400.0,2400.0,0.0778,-1.5101,3.8777,10.8035 2019-06-03 15:45:22.500,153.8907,8567.0645,2.3972,-1.1324,1.3909,0.1109,2400.0,2400.0,0.0808,-1.5101,3.8698,10.7934 2019-06-03 15:45:22.520,153.8907,8567.0645,2.3972,-1.1324,1.0595,0.0098,2400.0,2400.0,0.0603,-1.5101,3.8314,10.7934 2019-06-03 15:45:22.540,153.9402,8566.9795,2.3972,-1.1324,1.1886,0.0775,2400.0,2400.0,0.0749,-1.5071,3.8195,10.7934 2019-06-03 15:45:22.560,153.9332,8567.0078,2.4245,-1.0871,1.0891,0.0601,2400.0,2400.0,0.0662,-1.5131,3.8115,10.7848 2019-06-03 15:45:22.580,153.8907,8567.0645,2.4513,-1.0393,1.3095,0.0712,2400.0,2400.0,0.0808,-1.5071,3.7917,10.776 2019-06-03 15:45:22.600,153.8978,8567.0645,2.4668,-1.0148,1.379,0.0618,2400.0,2400.0,0.0808,-1.5131,3.789,10.7736 2019-06-03 15:45:22.620,153.8978,8567.0078,2.4797,-0.9917,1.1549,0.0567,2400.0,2400.0,0.0632,-1.5131,3.7639,10.7713 2019-06-03 15:45:22.640,153.9402,8567.0078,2.4797,-0.9917,1.365,0.0441,2400.0,2400.0,0.0778,-1.5101,3.7599,10.7713 2019-06-03 15:45:22.660,153.9473,8567.0078,2.4797,-0.9917,0.9622,0.0868,2400.0,2400.0,0.0632,-1.5101,3.7374,10.7713 2019-06-03 15:45:22.680,153.8978,8567.0078,2.5051,-0.9465,1.3672,0.0235,2400.0,2400.0,0.0808,-1.5101,3.7281,10.7669 2019-06-03 15:45:22.700,153.8978,8566.9512,2.5227,-0.9023,1.2045,-0.0073,2400.0,2400.0,0.0691,-1.5131,3.7003,10.7653 2019-06-03 15:45:22.720,153.8837,8566.9512,2.5227,-0.9023,1.1671,0.1125,2400.0,2400.0,0.0486,-1.5101,3.6725,10.7653 2019-06-03 15:45:22.740,153.9332,8566.9229,2.5227,-0.9023,1.4245,0.0042,2400.0,2400.0,0.0574,-1.5101,3.6646,10.7653 2019-06-03 15:45:22.760,153.9402,8566.9229,2.5394,-0.8578,0.9671,0.1335,2400.0,2400.0,0.0545,-1.5101,3.6487,10.7649 2019-06-03 15:45:22.780,153.8978,8566.9795,2.555,-0.8065,1.2677,-0.023,2400.0,2400.0,0.0749,-1.5101,3.6302,10.7662 2019-06-03 15:45:22.800,153.8907,8567.0078,2.5608,-0.7815,1.2322,-0.0249,2400.0,2400.0,0.0778,-1.5101,3.6275,10.7678 2019-06-03 15:45:22.820,153.9049,8566.9795,2.5727,-0.7587,1.054,0.1116,2400.0,2400.0,0.0662,-1.5131,3.6196,10.7693 2019-06-03 15:45:22.840,153.9332,8566.9795,2.5727,-0.7587,1.2119,-0.0376,2400.0,2400.0,0.0662,-1.5041,3.6235,10.7693 2019-06-03 15:45:22.860,153.9402,8566.9795,2.5727,-0.7587,1.0336,0.1469,2400.0,2400.0,0.0603,-1.5161,3.6077,10.7693 2019-06-03 15:45:22.880,153.8907,8566.9795,2.5782,-0.7135,1.1187,-0.0318,2400.0,2400.0,0.0662,-1.5131,3.5812,10.7733 2019-06-03 15:45:22.900,153.9049,8566.9512,2.579,-0.6683,1.0943,0.0018,2400.0,2400.0,0.0778,-1.5101,3.5971,10.7803 2019-06-03 15:45:22.920,153.8907,8566.9795,2.579,-0.6683,1.1272,0.088,2400.0,2400.0,0.072,-1.5041,3.5825,10.7803 2019-06-03 15:45:22.940,153.9332,8567.0928,2.579,-0.6683,1.2111,-0.0039,2400.0,2400.0,0.072,-1.5071,3.5759,10.7803 2019-06-03 15:45:22.960,153.9402,8567.1211,2.579,-0.6683,1.1283,0.1281,2400.0,2400.0,0.0545,-1.5101,3.5851,10.7803 2019-06-03 15:45:22.980,153.8837,8567.1504,2.579,-0.6683,1.0754,0.0045,2400.0,2400.0,0.072,-1.5041,3.5812,10.7803 2019-06-03 15:45:23.000,153.9049,8567.2354,2.5844,-0.561,1.0173,-0.0104,2400.0,2400.0,0.0662,-1.5041,3.5732,10.7954 2019-06-03 15:45:23.020,153.8978,8567.207,2.5881,-0.538,1.0935,0.1213,2400.0,2400.0,0.0662,-1.5071,3.5732,10.8003 2019-06-03 15:45:23.040,153.9332,8567.2354,2.5881,-0.538,1.0902,-0.0444,2400.0,2400.0,0.0837,-1.5041,3.564,10.8003 2019-06-03 15:45:23.060,153.9473,8567.2637,2.5881,-0.538,1.2037,0.143,2400.0,2400.0,0.1012,-1.5101,3.5759,10.8003 2019-06-03 15:45:23.080,153.8978,8567.292,2.586,-0.496,1.0366,0.0037,2400.0,2400.0,0.0866,-1.5101,3.5481,10.8109 2019-06-03 15:45:23.100,153.8978,8567.1504,2.5862,-0.4586,1.0673,0.011,2400.0,2400.0,0.0866,-1.5071,3.5693,10.822 2019-06-03 15:45:23.120,153.8907,8567.1504,2.5862,-0.4586,1.2182,0.0631,2400.0,2400.0,0.0545,-1.5191,3.56,10.822 2019-06-03 15:45:23.140,153.9544,8567.1504,2.5862,-0.4586,1.0129,0.0584,2400.0,2400.0,0.0691,-1.5161,3.5653,10.822 2019-06-03 15:45:23.160,153.9473,8567.1504,2.5893,-0.4187,1.2847,0.0686,2400.0,2400.0,0.0662,-1.567,3.5732,10.8332 2019-06-03 15:45:23.180,153.8907,8567.1211,2.5893,-0.4187,0.8572,0.0585,2400.0,2400.0,0.0778,-1.564,3.5746,10.8332 2019-06-03 15:45:23.200,153.8907,8567.1504,2.587,-0.3626,1.0066,0.0607,2400.0,2400.0,0.0662,-1.567,3.5759,10.8497 2019-06-03 15:45:23.220,153.9049,8567.1211,2.5876,-0.3472,1.1479,0.0514,2400.0,2400.0,0.0632,-1.585,3.5931,10.8558 2019-06-03 15:45:23.240,153.9402,8567.0645,2.5876,-0.3472,0.936,0.0773,2400.0,2400.0,0.0632,-1.585,3.5957,10.8558 2019-06-03 15:45:23.260,153.9402,8567.0645,2.5876,-0.3472,1.2067,0.0558,2400.0,2400.0,0.0545,-1.6119,3.6024,10.8558 2019-06-03 15:45:23.280,153.8837,8567.0645,2.587,-0.317,0.8997,0.06,2400.0,2400.0,0.0515,-1.6089,3.6103,10.8699 2019-06-03 15:45:23.300,153.9049,8566.9795,2.5879,-0.28,0.9045,0.0684,2400.0,2400.0,0.0515,-1.6119,3.6024,10.8844 2019-06-03 15:45:23.320,153.8907,8566.9795,2.5879,-0.28,1.095,0.0587,2400.0,2400.0,0.0457,-1.6209,3.5971,10.8844 2019-06-03 15:45:23.340,153.9402,8567.0078,2.5879,-0.28,1.0051,0.0482,2400.0,2400.0,0.0632,-1.6209,3.601,10.8844 2019-06-03 15:45:23.360,153.9332,8567.0361,2.5917,-0.2491,1.2089,0.0663,2400.0,2400.0,0.0632,-1.6209,3.6116,10.8976 2019-06-03 15:45:23.380,153.8978,8567.0078,2.5949,-0.2193,1.0177,0.0808,2400.0,2400.0,0.0574,-1.6209,3.6024,10.9107 2019-06-03 15:45:23.400,153.8907,8567.0361,2.599,-0.2051,1.0059,0.0842,2400.0,2400.0,0.0603,-1.6209,3.6103,10.9175 2019-06-03 15:45:23.420,153.8978,8567.0361,2.602,-0.1933,1.135,0.0181,2400.0,2400.0,0.0515,-1.6239,3.6024,10.9241 2019-06-03 15:45:23.440,153.9402,8567.0361,2.602,-0.1933,0.9057,0.0853,2400.0,2400.0,0.0603,-1.6239,3.6129,10.9241 2019-06-03 15:45:23.460,153.9473,8566.9795,2.602,-0.1933,1.0876,0.0028,2400.0,2400.0,0.0603,-1.6269,3.6143,10.9241 2019-06-03 15:45:23.480,153.8978,8566.0449,2.6113,-0.1696,0.9915,0.0968,2400.0,2400.0,0.0574,-1.5969,3.6077,10.9382 2019-06-03 15:45:23.500,153.8978,8565.1094,2.6196,-0.1454,1.048,0.0957,2400.0,2400.0,0.0545,-1.591,3.6169,10.9521 2019-06-03 15:45:23.520,153.9049,8564.2021,2.6196,-0.1454,1.1457,0.0114,2400.0,2400.0,0.0457,-1.6239,3.609,10.9521 2019-06-03 15:45:23.540,153.9402,8562.9844,2.6196,-0.1454,1.0288,0.0941,2400.0,2400.0,0.0574,-1.6239,3.605,10.9521 2019-06-03 15:45:23.560,153.9261,8562.2188,2.6268,-0.1237,1.0473,-0.0037,2400.0,2400.0,0.0662,-1.6239,3.6275,10.9652 2019-06-03 15:45:23.580,153.9049,8560.8867,2.6364,-0.1076,1.0399,0.073,2400.0,2400.0,0.0574,-1.6239,3.605,10.9733 2019-06-03 15:45:23.600,153.8978,8560.0654,2.6443,-0.0947,1.0406,0.097,2400.0,2400.0,0.0662,-1.6209,3.6182,10.9795 2019-06-03 15:45:23.620,153.9049,8559.1865,2.6492,-0.0879,1.1849,0.0176,2400.0,2400.0,0.0428,-1.6508,3.6116,10.9846 2019-06-03 15:45:23.640,153.9544,8558.3359,2.6492,-0.0879,1.0802,0.068,2400.0,2400.0,0.0486,-1.6029,3.6156,10.9846 2019-06-03 15:45:23.660,153.9473,8558.3643,2.6492,-0.0879,1.0503,0.0104,2400.0,2400.0,0.0428,-1.6388,3.6262,10.9846 2019-06-03 15:45:23.680,153.8978,8558.3643,2.6609,-0.0655,1.0381,0.1022,2400.0,2400.0,0.0398,-1.6149,3.6129,10.9943 2019-06-03 15:45:23.700,153.8978,8558.3076,2.6746,-0.0417,1.125,0.1265,2400.0,2400.0,0.0398,-1.6149,3.609,11.0034 2019-06-03 15:45:23.720,153.8978,8558.2793,2.6746,-0.0417,1.0096,-0.0205,2400.0,2400.0,0.0398,-1.6418,3.6302,11.0034 2019-06-03 15:45:23.740,153.9402,8558.1943,2.6746,-0.0417,1.1878,0.0737,2400.0,2400.0,0.0545,-1.6209,3.6249,11.0034 2019-06-03 15:45:23.760,153.9402,8558.2793,2.6851,-0.0185,0.9212,0.0209,2400.0,2400.0,0.0545,-1.6329,3.6262,11.0117 2019-06-03 15:45:23.780,153.9049,8558.251,2.7013,0.0101,1.1682,0.1173,2400.0,2400.0,0.0515,-1.6388,3.6063,11.0204 2019-06-03 15:45:23.800,153.8907,8558.251,2.7113,0.0286,1.1128,0.0799,2400.0,2400.0,0.0691,-1.6239,3.6235,11.0257 2019-06-03 15:45:23.820,153.9049,8558.2793,2.7192,0.0431,0.9323,0.0463,2400.0,2400.0,0.0545,-1.6448,3.6328,11.03 2019-06-03 15:45:23.840,153.9473,8558.3076,2.7192,0.0431,1.108,0.084,2400.0,2400.0,0.0691,-1.6239,3.6262,11.03 2019-06-03 15:45:23.860,153.9544,8558.251,2.7192,0.0431,0.8298,0.0156,2400.0,2400.0,0.0603,-1.6388,3.6341,11.03 2019-06-03 15:45:23.880,153.8978,8558.1943,2.7372,0.0737,1.1904,0.068,2400.0,2400.0,0.0545,-1.6508,3.6222,11.0394 2019-06-03 15:45:23.900,153.9119,8558.1377,2.7536,0.103,1.1483,0.0475,2400.0,2400.0,0.0515,-1.6508,3.6196,11.0504 2019-06-03 15:45:23.920,154.025,8558.1377,2.7536,0.103,0.9682,0.0647,2400.0,2400.0,0.0398,-1.6628,3.6355,11.0504 2019-06-03 15:45:23.940,154.0603,8558.166,2.7536,0.103,1.1949,0.0285,2400.0,2400.0,0.0515,-1.6179,3.6275,11.0504 2019-06-03 15:45:23.960,154.0462,8558.2227,2.7536,0.103,0.9378,0.0606,2400.0,2400.0,0.0632,-1.6777,3.6341,11.0504 2019-06-03 15:45:23.980,154.018,8558.251,2.7898,0.1538,1.2108,0.0193,2400.0,2400.0,0.0662,-1.6777,3.6315,11.0646 2019-06-03 15:45:24.000,154.0038,8558.2793,2.8002,0.1684,1.2052,0.0416,2400.0,2400.0,0.0691,-1.6688,3.6328,11.0689 2019-06-03 15:45:24.020,154.0109,8558.3076,2.8139,0.1807,0.9926,0.0584,2400.0,2400.0,0.0486,-1.7584,3.6434,11.0737 2019-06-03 15:45:24.040,154.0533,8558.3643,2.8139,0.1807,1.1608,0.0032,2400.0,2400.0,0.0428,-1.7106,3.6408,11.0737 2019-06-03 15:45:24.060,154.0603,8558.3643,2.8139,0.1807,1.071,0.0845,2400.0,2400.0,0.0486,-1.7555,3.65,11.0737 2019-06-03 15:45:24.080,154.0038,8558.4209,2.8344,0.2069,1.0695,-0.011,2400.0,2400.0,0.0515,-1.7495,3.6408,11.0823 2019-06-03 15:45:24.100,154.018,8558.3643,2.8549,0.2318,1.2245,-0.0096,2400.0,2400.0,0.0662,-1.7495,3.6474,11.0904 2019-06-03 15:45:24.120,154.1238,8558.4492,2.8549,0.2318,1.0554,0.1418,2400.0,2400.0,0.0545,-1.7823,3.6474,11.0904 2019-06-03 15:45:24.140,154.1591,8558.4775,2.8549,0.2318,1.0913,-0.0106,2400.0,2400.0,0.072,-1.7465,3.6593,11.0904 2019-06-03 15:45:24.160,154.1591,8558.5625,2.878,0.2558,1.1738,0.1079,2400.0,2400.0,0.0691,-1.7734,3.654,11.0982 2019-06-03 15:45:24.180,154.1238,8558.5625,2.904,0.2772,1.0151,-0.0091,2400.0,2400.0,0.0603,-1.7823,3.6566,11.104 2019-06-03 15:45:24.200,154.1168,8558.5059,2.9128,0.284,1.0987,-0.0022,2400.0,2400.0,0.0574,-1.7794,3.6606,11.1069 2019-06-03 15:45:24.220,154.1309,8558.5059,2.9279,0.2948,1.0776,0.1272,2400.0,2400.0,0.0574,-1.7823,3.6633,11.1109 2019-06-03 15:45:24.240,154.1591,8558.5342,2.9279,0.2948,0.9774,0.0212,2400.0,2400.0,0.0486,-1.7823,3.6553,11.1109 2019-06-03 15:45:24.260,154.1803,8558.5342,2.9279,0.2948,1.3406,0.0788,2400.0,2400.0,0.0545,-1.7913,3.6659,11.1109 2019-06-03 15:45:24.280,154.1238,8558.4209,2.9458,0.3111,0.9415,0.0162,2400.0,2400.0,0.0282,-1.8003,3.65,11.1168 2019-06-03 15:45:24.300,154.1309,8558.3643,2.9707,0.3215,1.0222,-0.0097,2400.0,2400.0,0.0515,-1.7794,3.6699,11.1217 2019-06-03 15:45:24.320,154.1238,8558.3359,2.9707,0.3215,1.2448,0.1267,2400.0,2400.0,0.0428,-1.8152,3.6672,11.1217 2019-06-03 15:45:24.340,154.1662,8558.2227,2.9707,0.3215,0.8687,-0.0099,2400.0,2400.0,0.0574,-1.7584,3.6619,11.1217 2019-06-03 15:45:24.360,154.1662,8558.2793,2.9982,0.3311,1.1775,0.0985,2400.0,2400.0,0.0574,-1.7764,3.6752,11.1263 2019-06-03 15:45:24.380,154.1168,8558.251,3.0253,0.3394,0.9548,0.0041,2400.0,2400.0,0.0515,-1.7794,3.6606,11.1304 2019-06-03 15:45:24.400,154.1168,8558.251,3.0332,0.3435,0.9966,0.0067,2340.0,2340.0,0.0545,-1.7794,3.6778,11.1316 2019-06-03 15:45:24.420,154.1238,8558.166,3.0474,0.3453,1.3073,0.0982,2340.0,2340.0,0.0457,-1.8062,3.6805,11.1328 2019-06-03 15:45:24.440,154.1662,8558.2227,3.0474,0.3453,0.8535,0.0762,2340.0,2340.0,0.0369,-1.7973,3.6712,11.1328 2019-06-03 15:45:24.460,154.1803,8558.1943,3.0474,0.3453,1.2056,0.0108,2340.0,2340.0,0.0311,-1.8062,3.6884,11.1328 2019-06-03 15:45:24.480,154.1309,8558.1377,3.0703,0.3488,1.0355,0.0663,2340.0,2340.0,0.0311,-1.8032,3.6633,11.1358 2019-06-03 15:45:24.500,154.1238,8558.1377,3.0999,0.3554,0.9193,0.0875,2340.0,2340.0,0.0515,-1.8003,3.6765,11.1391 2019-06-03 15:45:24.520,154.1238,8558.166,3.0999,0.3554,1.2374,0.0255,2340.0,2340.0,0.072,-1.8003,3.695,11.1391 2019-06-03 15:45:24.540,154.1662,8558.251,3.0999,0.3554,0.8487,0.1069,2340.0,2340.0,0.0662,-1.8032,3.6725,11.1391 2019-06-03 15:45:24.560,154.1662,8558.2793,3.1301,0.3652,1.2015,-0.0533,2340.0,2340.0,0.0632,-1.8003,3.6818,11.1413 2019-06-03 15:45:24.580,154.1309,8558.3076,3.1556,0.3745,1.1253,0.1091,2340.0,2340.0,0.0398,-1.8032,3.6619,11.1416 2019-06-03 15:45:24.600,154.1238,8558.2793,3.1711,0.3793,1.0588,0.1253,2340.0,2340.0,0.0398,-1.8032,3.6725,11.1425 2019-06-03 15:45:24.620,154.1309,8558.2227,3.182,0.3769,1.1616,-0.0325,2340.0,2340.0,0.0311,-1.8212,3.6844,11.143 2019-06-03 15:45:24.640,154.1732,8558.251,3.182,0.3769,1.156,0.1558,2340.0,2340.0,0.034,-1.7704,3.6712,11.143 2019-06-03 15:45:24.660,154.1662,8558.251,3.182,0.3769,0.9674,-0.0826,2340.0,2340.0,0.034,-1.8032,3.6646,11.143 2019-06-03 15:45:24.680,154.1168,8558.251,3.2117,0.3891,1.0673,0.1547,2340.0,2340.0,0.0428,-1.8092,3.6646,11.1452 2019-06-03 15:45:24.700,154.1309,8558.166,3.2426,0.4002,1.0924,0.1497,2340.0,2340.0,0.0515,-1.7913,3.6659,11.1467 2019-06-03 15:45:24.720,154.1168,8558.166,3.2426,0.4002,1.014,-0.0334,2340.0,2340.0,0.0632,-1.8182,3.6765,11.1467 2019-06-03 15:45:24.740,154.1732,8558.1094,3.2426,0.4002,1.1697,0.1327,2340.0,2340.0,0.0486,-1.7913,3.6341,11.1467 2019-06-03 15:45:24.760,154.1662,8558.1943,3.2685,0.4033,1.0192,-0.03,2340.0,2340.0,0.0486,-1.7973,3.654,11.1458 2019-06-03 15:45:24.780,154.1238,8558.251,3.293,0.4031,1.3347,0.1052,2340.0,2340.0,0.0252,-1.851,3.6434,11.1448 2019-06-03 15:45:24.800,154.1168,8558.3359,3.3093,0.4083,1.2063,0.1038,2340.0,2340.0,0.0457,-1.8212,3.6553,11.1461 2019-06-03 15:45:24.820,154.1238,8558.3643,3.3204,0.4067,0.8975,-0.0098,2340.0,2340.0,0.034,-1.8331,3.6474,11.1457 2019-06-03 15:45:24.840,154.1591,8558.3926,3.3204,0.4067,1.2918,0.0936,2340.0,2340.0,0.0574,-1.8301,3.6249,11.1457 2019-06-03 15:45:24.860,154.1732,8558.3926,3.3204,0.4067,0.9412,0.0119,2340.0,2340.0,0.0574,-1.8271,3.6222,11.1457 2019-06-03 15:45:24.880,154.1309,8558.3359,3.3476,0.4072,1.247,0.0447,2340.0,2340.0,0.0428,-1.8331,3.6196,11.1442 2019-06-03 15:45:24.900,154.1238,8558.2793,3.3692,0.4026,1.3509,0.0174,2340.0,2340.0,0.0545,-1.8271,3.6129,11.1426 2019-06-03 15:45:24.920,153.9968,8558.3076,3.3692,0.4026,0.869,0.0949,2340.0,2340.0,0.0398,-1.8301,3.5984,11.1426 2019-06-03 15:45:24.940,154.0533,8558.3359,3.3692,0.4026,1.3532,-0.01,2340.0,2340.0,0.0369,-1.8271,3.5851,11.1426 2019-06-03 15:45:24.960,154.0533,8558.4209,3.3876,0.3934,0.9652,0.1127,2340.0,2340.0,0.0428,-1.8301,3.5851,11.1392 2019-06-03 15:45:24.980,154.0038,8558.4209,3.3876,0.3934,1.2714,-0.017,2340.0,2340.0,0.0486,-1.8301,3.5693,11.1392 2019-06-03 15:45:25.000,154.0109,8558.4209,3.4186,0.3915,1.3443,-0.0296,2340.0,2340.0,0.0632,-1.8241,3.5454,11.1334 2019-06-03 15:45:25.020,154.0109,8558.3643,3.4338,0.393,1.1065,0.1551,2340.0,2340.0,0.0603,-1.8241,3.5348,11.1326 2019-06-03 15:45:25.040,154.0674,8558.3926,3.4338,0.393,1.2122,-0.0692,2340.0,2340.0,0.034,-1.8271,3.5176,11.1326 2019-06-03 15:45:25.060,154.0603,8558.3926,3.4338,0.393,1.0358,0.1707,2340.0,2340.0,0.0369,-1.8212,3.4978,11.1326 2019-06-03 15:45:25.080,154.0109,8558.4209,3.4501,0.3895,1.112,-0.0863,2340.0,2340.0,0.0223,-1.8391,3.4792,11.1307 2019-06-03 15:45:25.100,154.018,8558.3643,3.4581,0.3856,1.1597,-0.0696,2340.0,2340.0,0.0428,-1.8062,3.458,11.127 2019-06-03 15:45:25.120,154.0038,8558.3359,3.4581,0.3856,1.1301,0.1805,2340.0,2340.0,0.0398,-1.8271,3.4382,11.127 2019-06-03 15:45:25.140,154.0533,8558.251,3.4581,0.3856,1.0706,-0.0812,2340.0,2340.0,0.0486,-1.8331,3.4249,11.127 2019-06-03 15:45:25.160,154.0462,8558.3076,3.4739,0.3865,1.0987,0.1705,2340.0,2340.0,0.0545,-1.8003,3.4104,11.1264 2019-06-03 15:45:25.180,154.0038,8558.3359,3.4739,0.3865,0.9822,-0.0527,2340.0,2340.0,0.0398,-1.8391,3.3786,11.1264 2019-06-03 15:45:25.200,154.018,8558.4209,3.4833,0.3845,0.9685,-0.0424,2340.0,2340.0,0.034,-1.8032,3.3587,11.1274 2019-06-03 15:45:25.220,154.0109,8558.3643,3.49,0.3866,1.2337,0.1466,2340.0,2340.0,0.0252,-1.8331,3.3521,11.1282 2019-06-03 15:45:25.240,154.0533,8558.3643,3.49,0.3866,0.9415,-0.0126,2340.0,2340.0,0.0165,-1.8331,3.3309,11.1282 2019-06-03 15:45:25.260,154.0533,8558.3359,3.49,0.3866,1.2341,0.0945,2340.0,2340.0,0.034,-1.8212,3.3111,11.1282 2019-06-03 15:45:25.280,154.0109,8558.2793,3.4825,0.3802,0.9267,0.0186,2340.0,2340.0,0.0398,-1.8212,3.2859,11.1271 2019-06-03 15:45:25.300,154.0109,8558.251,3.4742,0.3725,0.7873,0.008,2340.0,2340.0,0.0486,-1.8182,3.2687,11.1275 2019-06-03 15:45:25.320,154.0038,8558.251,3.4742,0.3725,1.3835,0.0723,2340.0,2340.0,0.0486,-1.8212,3.2833,11.1275 2019-06-03 15:45:25.340,154.0533,8558.3076,3.4742,0.3725,0.7703,0.0265,2340.0,2340.0,0.0369,-1.8241,3.2647,11.1275 2019-06-03 15:45:25.360,154.0391,8558.3643,3.4653,0.364,1.3025,0.0453,2340.0,2340.0,0.0398,-1.7764,3.2634,11.1276 2019-06-03 15:45:25.380,154.018,8558.4209,3.4653,0.364,0.8091,0.0739,2340.0,2340.0,0.0252,-1.8182,3.2515,11.1276 2019-06-03 15:45:25.400,154.0038,8558.4775,3.4322,0.3432,0.8077,0.0957,2400.0,2400.0,0.0369,-1.7913,3.2541,11.1264 2019-06-03 15:45:25.420,154.018,8558.4775,3.4199,0.3361,1.3291,-0.0387,2400.0,2400.0,0.0311,-1.7764,3.2634,11.1269 2019-06-03 15:45:25.440,154.0603,8558.5342,3.4199,0.3361,0.781,0.1165,2400.0,2400.0,0.0135,-1.7973,3.2515,11.1269 2019-06-03 15:45:25.460,154.0533,8558.5342,3.4199,0.3361,1.2363,-0.0774,2400.0,2400.0,0.0282,-1.7943,3.2581,11.1269 2019-06-03 15:45:25.480,154.0038,8558.5625,3.3983,0.32,0.8443,0.2045,2400.0,2400.0,0.034,-1.7943,3.2621,11.1268 2019-06-03 15:45:25.500,154.0038,8558.5059,3.3781,0.3037,0.8391,0.1945,2400.0,2400.0,0.0428,-1.7913,3.2621,11.1267 2019-06-03 15:45:25.520,153.8695,8558.5059,3.3781,0.3037,1.2559,-0.092,2400.0,2400.0,0.0369,-1.7973,3.2687,11.1267 2019-06-03 15:45:25.540,153.9402,8558.5342,3.3781,0.3037,0.8846,0.1403,2400.0,2400.0,0.0311,-1.7913,3.2555,11.1267 2019-06-03 15:45:25.560,153.9402,8558.5342,3.3536,0.2878,1.21,-0.079,2400.0,2400.0,0.0311,-1.7883,3.2621,11.127 2019-06-03 15:45:25.580,153.8978,8558.5342,3.3222,0.2752,0.9227,0.1923,2400.0,2400.0,0.0165,-1.7973,3.2608,11.1292 2019-06-03 15:45:25.600,153.8978,8558.5342,3.3132,0.27,0.8864,0.1581,2400.0,2400.0,0.0252,-1.7913,3.2608,11.1303 2019-06-03 15:45:25.620,153.8978,8558.5342,3.2939,0.2625,1.0791,-0.085,2400.0,2400.0,0.0311,-1.7943,3.278,11.1307 2019-06-03 15:45:25.640,153.9332,8558.5342,3.2939,0.2625,1.0358,0.1503,2400.0,2400.0,0.034,-1.7943,3.2753,11.1307 2019-06-03 15:45:25.660,153.9473,8558.5342,3.2939,0.2625,1.0972,-0.0418,2400.0,2400.0,0.0428,-1.7943,3.2727,11.1307 2019-06-03 15:45:25.680,153.8978,8558.4775,3.271,0.2588,1.0111,0.1729,2400.0,2400.0,0.0457,-1.7913,3.2886,11.1324 2019-06-03 15:45:25.700,153.8766,8558.3359,3.2464,0.2567,1.0473,0.1281,2400.0,2400.0,0.0398,-1.7794,3.2727,11.1355 2019-06-03 15:45:25.720,153.5293,8558.3359,3.2464,0.2567,0.7548,-0.0347,2400.0,2400.0,0.0457,-1.7913,3.2939,11.1355 2019-06-03 15:45:25.740,153.6074,8558.3643,3.2464,0.2567,1.1971,0.0929,2400.0,2400.0,0.0223,-1.8092,3.2714,11.1355 2019-06-03 15:45:25.760,153.6074,8558.4492,3.2165,0.2566,0.9511,0.0177,2400.0,2400.0,0.0282,-1.7823,3.2859,11.1377 2019-06-03 15:45:25.780,153.5648,8558.4775,3.1909,0.2523,1.2008,0.1218,2400.0,2400.0,0.0223,-1.7853,3.3005,11.1447 2019-06-03 15:45:25.800,153.5648,8558.5342,3.1841,0.2554,1.2115,0.0724,2400.0,2400.0,0.0252,-1.7853,3.2846,11.1463 2019-06-03 15:45:25.820,153.5719,8558.4492,3.1704,0.2557,0.717,0.0236,2400.0,2400.0,0.0398,-1.7764,3.3031,11.1473 2019-06-03 15:45:25.840,153.6145,8558.4209,3.1704,0.2557,1.2082,0.0281,2400.0,2400.0,0.0398,-1.8003,3.2912,11.1473 2019-06-03 15:45:25.860,153.6216,8558.4209,3.1704,0.2557,0.7892,0.0614,2400.0,2400.0,0.0662,-1.7883,3.2952,11.1473 2019-06-03 15:45:25.880,153.5719,8558.3926,3.1508,0.2609,1.3299,-0.0057,2400.0,2400.0,0.0428,-1.7943,3.3031,11.151 2019-06-03 15:45:25.900,153.5719,8558.2793,3.1279,0.2618,1.2104,-0.0293,2400.0,2400.0,0.0398,-1.7883,3.2965,11.1535 2019-06-03 15:45:25.920,153.4227,8558.2793,3.1279,0.2618,0.8176,0.1211,2400.0,2400.0,0.0282,-1.7853,3.3045,11.1535 2019-06-03 15:45:25.940,153.4938,8558.251,3.1279,0.2618,1.2185,-0.0528,2400.0,2400.0,0.0194,-1.7823,3.2952,11.1535 2019-06-03 15:45:25.960,153.4938,8558.2793,3.1059,0.2591,0.8287,0.1171,2400.0,2400.0,0.034,-1.7853,3.2833,11.1557 2019-06-03 15:45:25.980,153.4511,8558.3076,3.1059,0.2591,1.2045,-0.051,2400.0,2400.0,0.0428,-1.7823,3.3111,11.1557 2019-06-03 15:45:26.000,153.4511,8558.3643,3.0805,0.26,1.1483,-0.0735,2400.0,2400.0,0.0457,-1.7823,3.3071,11.1617 2019-06-03 15:45:26.020,153.4582,8558.3926,3.0764,0.2617,0.9338,0.1806,2400.0,2400.0,0.0457,-1.7853,3.2925,11.1627 2019-06-03 15:45:26.040,153.5009,8558.4775,3.0764,0.2617,1.014,-0.093,2400.0,2400.0,0.0428,-1.8122,3.2965,11.1627 2019-06-03 15:45:26.060,153.508,8558.5625,3.0764,0.2617,0.8894,0.1599,2400.0,2400.0,0.0398,-1.7734,3.3018,11.1627 2019-06-03 15:45:26.080,153.4582,8558.5908,3.0596,0.2573,0.9608,-0.0781,2400.0,2400.0,0.0252,-1.8092,3.3243,11.1627 2019-06-03 15:45:26.100,153.4582,8558.5059,3.0489,0.2477,0.8994,-0.0641,2400.0,2400.0,0.0194,-1.7883,3.323,11.1625 2019-06-03 15:45:26.120,153.579,8558.5342,3.0489,0.2477,1.095,0.1496,2400.0,2400.0,0.034,-1.7495,3.3256,11.1625 2019-06-03 15:45:26.140,153.6145,8558.5625,3.0489,0.2477,0.9105,-0.0349,2400.0,2400.0,0.034,-1.8032,3.3243,11.1625 2019-06-03 15:45:26.160,153.6003,8558.5908,3.0444,0.2448,1.0159,0.1223,2400.0,2400.0,0.0457,-1.7823,3.3309,11.1629 2019-06-03 15:45:26.180,153.5648,8558.6201,3.0444,0.2448,0.7977,-0.0219,2400.0,2400.0,0.0428,-1.8271,3.3601,11.1629 2019-06-03 15:45:26.200,153.5577,8558.6484,3.0329,0.2333,0.7525,0.0052,2400.0,2400.0,0.034,-1.8062,3.3468,11.1577 2019-06-03 15:45:26.220,153.5648,8558.6201,3.0328,0.2333,1.1575,0.0974,2400.0,2400.0,0.034,-1.7943,3.3362,11.1571 2019-06-03 15:45:26.240,153.6145,8558.5625,3.0328,0.2333,0.7788,0.0208,2400.0,2400.0,0.0311,-1.7973,3.3442,11.1571 2019-06-03 15:45:26.260,153.6145,8558.5342,3.0328,0.2333,1.2429,0.0526,2400.0,2400.0,0.0457,-1.7973,3.3468,11.1571 2019-06-03 15:45:26.280,153.5648,8558.5342,3.0242,0.2246,0.7352,0.0388,2400.0,2400.0,0.0457,-1.8271,3.3614,11.154 2019-06-03 15:45:26.300,153.5577,8558.4775,3.0273,0.2186,0.7751,0.029,2400.0,2400.0,0.0457,-1.8212,3.3534,11.1523 2019-06-03 15:45:26.320,153.3089,8558.4492,3.0273,0.2186,1.1889,0.0265,2400.0,2400.0,0.0457,-1.8062,3.3429,11.1523 2019-06-03 15:45:26.340,153.38,8558.4775,3.0273,0.2186,0.8184,0.1269,2400.0,2400.0,0.034,-1.8062,3.3508,11.1523 2019-06-03 15:45:26.360,153.3943,8558.4775,3.0322,0.214,1.2681,-0.0234,2400.0,2400.0,0.0282,-1.8062,3.3508,11.1509 2019-06-03 15:45:26.380,153.3516,8558.3643,3.0304,0.2067,0.7692,0.1284,2400.0,2400.0,0.0194,-1.8032,3.3667,11.1517 2019-06-03 15:45:26.400,153.3516,8558.3926,3.0341,0.2031,0.7932,0.0965,2400.0,2400.0,0.0135,-1.8062,3.3534,11.1502 2019-06-03 15:45:26.420,153.3516,8558.3926,3.0327,0.1992,1.2551,-0.0487,2400.0,2400.0,0.0369,-1.8032,3.3415,11.1495 2019-06-03 15:45:26.440,153.3871,8558.3926,3.0327,0.1992,0.8062,0.171,2400.0,2400.0,0.0398,-1.8062,3.3521,11.1495 2019-06-03 15:45:26.460,153.3871,8558.4209,3.0327,0.1992,1.1479,-0.0793,2400.0,2400.0,0.0515,-1.8032,3.3521,11.1495 2019-06-03 15:45:26.480,153.3373,8559.4414,3.0404,0.1912,0.8994,0.1704,2400.0,2400.0,0.0486,-1.8062,3.3574,11.1471 2019-06-03 15:45:26.500,153.3587,8560.1221,3.0498,0.1866,0.9504,0.1475,2400.0,2400.0,0.0486,-1.8062,3.3455,11.1457 2019-06-03 15:45:26.520,153.4653,8560.9717,3.0498,0.1866,1.1753,-0.0911,2400.0,2400.0,0.0457,-1.8032,3.3521,11.1457 2019-06-03 15:45:26.540,153.508,8562.332,3.0498,0.1866,0.9903,0.1959,2400.0,2400.0,0.0223,-1.8062,3.3561,11.1457 2019-06-03 15:45:26.560,153.4867,8563.3242,3.0564,0.1842,1.0081,-0.0652,2400.0,2400.0,0.0223,-1.8032,3.3442,11.1453 2019-06-03 15:45:26.580,153.4511,8564.5996,3.057,0.1725,1.0939,0.1558,2400.0,2400.0,0.0135,-1.8032,3.3495,11.1466 2019-06-03 15:45:26.600,153.4511,8565.4775,3.0681,0.172,1.1242,0.0937,2400.0,2400.0,0.0048,-1.8032,3.3468,11.1475 2019-06-03 15:45:26.620,153.4511,8566.2998,3.0676,0.1652,0.9175,0.0113,2400.0,2400.0,0.0311,-1.8032,3.3574,11.1467 2019-06-03 15:45:26.640,153.4938,8567.0928,3.0676,0.1652,1.1168,0.1366,2400.0,2400.0,0.0311,-1.8032,3.3521,11.1467 2019-06-03 15:45:26.660,153.5009,8567.0361,3.0676,0.1652,0.8676,-0.0162,2400.0,2400.0,0.0515,-1.7973,3.3561,11.1467 2019-06-03 15:45:26.680,153.4511,8567.0645,3.0787,0.1639,1.2196,0.1022,2400.0,2400.0,0.0398,-1.8032,3.3587,11.1468 2019-06-03 15:45:26.700,153.4582,8566.9795,3.0856,0.1571,1.1971,0.0858,2400.0,2400.0,0.0165,-1.8062,3.3481,11.1482 2019-06-03 15:45:26.720,153.579,8566.9795,3.0856,0.1571,0.9486,-0.0004,2400.0,2400.0,0.0165,-1.7823,3.3521,11.1482 2019-06-03 15:45:26.740,153.6145,8566.9795,3.0856,0.1571,1.1812,0.1208,2400.0,2400.0,0.0106,-1.8032,3.3468,11.1482 2019-06-03 15:45:26.760,153.6074,8567.0645,3.0876,0.1481,0.7696,0.0178,2400.0,2400.0,0.0282,-1.7823,3.3442,11.1486 2019-06-03 15:45:26.780,153.5719,8567.0645,3.0916,0.1424,1.3269,0.0362,2400.0,2400.0,0.0486,-1.7853,3.3627,11.1464 2019-06-03 15:45:26.800,153.5648,8567.0361,3.0969,0.1445,1.1786,0.0288,2400.0,2400.0,0.0428,-1.7853,3.3495,11.148 2019-06-03 15:45:26.820,153.5719,8567.0078,3.0989,0.1397,0.7618,0.0585,2400.0,2400.0,0.0398,-1.7853,3.3508,11.1486 2019-06-03 15:45:26.840,153.6145,8567.0361,3.0989,0.1397,1.2544,0.0025,2400.0,2400.0,0.0311,-1.7823,3.3508,11.1486 2019-06-03 15:45:26.860,153.6145,8567.0361,3.0989,0.1397,0.6823,0.0986,2400.0,2400.0,0.0252,-1.7823,3.3481,11.1486 2019-06-03 15:45:26.880,153.5648,8567.0645,3.1038,0.132,1.3188,-0.0472,2400.0,2400.0,0.034,-1.7823,3.3627,11.1501 2019-06-03 15:45:26.900,153.5719,8567.0078,3.1034,0.1213,1.2744,-0.0492,2400.0,2400.0,0.0223,-1.7853,3.3376,11.1506 2019-06-03 15:45:26.920,153.5648,8567.0078,3.1034,0.1213,0.8465,0.1582,2400.0,2400.0,0.0545,-1.7614,3.3574,11.1506 2019-06-03 15:45:26.940,153.6145,8566.9512,3.1034,0.1213,1.3006,-0.0424,2400.0,2400.0,0.0457,-1.7614,3.3574,11.1506 2019-06-03 15:45:26.960,153.6074,8567.0361,3.1044,0.1137,0.8816,0.1622,2400.0,2400.0,0.0311,-1.7495,3.3362,11.1517 2019-06-03 15:45:26.980,153.5648,8567.0928,3.1084,0.1071,1.159,-0.0962,2400.0,2400.0,0.0369,-1.7495,3.3481,11.1497 2019-06-03 15:45:27.000,153.5648,8567.1211,3.1057,0.1018,1.1827,-0.0875,2400.0,2400.0,0.0165,-1.7555,3.3468,11.1491 2019-06-03 15:45:27.020,153.5719,8567.1211,3.1106,0.1035,0.9108,0.1479,2400.0,2400.0,0.0223,-1.7076,3.3481,11.1493 2019-06-03 15:45:27.040,153.6003,8567.207,3.1106,0.1035,1.2518,-0.045,2400.0,2400.0,0.0165,-1.7525,3.3508,11.1493 2019-06-03 15:45:27.060,153.6286,8567.1211,3.1106,0.1035,0.9345,0.175,2400.0,2400.0,0.0252,-1.7196,3.3362,11.1493 2019-06-03 15:45:27.080,153.5719,8567.1211,3.1068,0.0951,1.1061,-0.0815,2400.0,2400.0,0.0311,-1.7286,3.3389,11.1478 2019-06-03 15:45:27.100,153.5648,8567.0645,3.1005,0.085,1.0159,-0.0828,2400.0,2400.0,0.0223,-1.7644,3.3455,11.1466 2019-06-03 15:45:27.120,153.5648,8567.1211,3.1005,0.085,1.0051,0.1464,2400.0,2400.0,0.0311,-1.7316,3.3402,11.1466 2019-06-03 15:45:27.140,153.6145,8567.1504,3.1005,0.085,0.9526,-0.0522,2400.0,2400.0,0.0282,-1.7823,3.3455,11.1466 2019-06-03 15:45:27.160,153.6003,8567.1787,3.0994,0.0807,1.0443,0.1515,2400.0,2400.0,0.0311,-1.7345,3.3256,11.1472 2019-06-03 15:45:27.180,153.5719,8567.1787,3.0994,0.0807,0.9149,-0.0684,2400.0,2400.0,0.0457,-1.7286,3.3336,11.1472 2019-06-03 15:45:27.200,153.5719,8567.1211,3.0882,0.0742,0.8502,-0.0332,2400.0,2400.0,0.0398,-1.7674,3.3376,11.1437 2019-06-03 15:45:27.220,153.5719,8567.0645,3.0874,0.0762,1.156,0.12,2400.0,2400.0,0.0486,-1.7345,3.3376,11.1447 2019-06-03 15:45:27.240,153.6145,8567.0928,3.0874,0.0762,0.8683,0.0113,2400.0,2400.0,0.0398,-1.7316,3.3442,11.1447 2019-06-03 15:45:27.260,153.6145,8567.0928,3.0874,0.0762,1.2481,0.0901,2400.0,2400.0,0.0223,-1.6927,3.315,11.1447 2019-06-03 15:45:27.280,153.5577,8567.0361,3.0781,0.0716,0.8653,-0.0093,2400.0,2400.0,0.0369,-1.7017,3.3336,11.1431 2019-06-03 15:45:27.300,153.5719,8566.9229,3.0728,0.0735,0.7008,0.0375,2400.0,2400.0,0.0311,-1.7495,3.3349,11.1433 2019-06-03 15:45:27.320,153.5506,8566.9512,3.0728,0.0735,1.2751,0.034,2400.0,2400.0,0.0691,-1.7405,3.3402,11.1433 2019-06-03 15:45:27.340,153.6145,8566.9229,3.0728,0.0735,0.7215,0.0593,2400.0,2400.0,0.0603,-1.7495,3.3389,11.1433 2019-06-03 15:45:27.360,153.6074,8566.9512,3.0683,0.0815,1.2792,0.0221,2400.0,2400.0,0.0457,-1.7435,3.3283,11.1434 2019-06-03 15:45:27.380,153.5648,8566.9795,3.0615,0.088,0.7888,0.0672,2400.0,2400.0,0.0369,-1.7106,3.3349,11.1436 2019-06-03 15:45:27.400,153.5648,8567.0078,3.0569,0.0894,0.7866,0.1112,2460.0,2340.0,0.0194,-1.7345,3.3442,11.1436 2019-06-03 15:45:27.420,153.5719,8567.0078,3.0498,0.0929,1.2074,-0.0481,2460.0,2340.0,0.0135,-1.7345,3.3349,11.1436 2019-06-03 15:45:27.440,153.6003,8567.0645,3.0498,0.0929,0.7588,0.1346,2460.0,2340.0,0.0165,-1.7256,3.3349,11.1436 2019-06-03 15:45:27.460,153.6145,8567.0928,3.0498,0.0929,1.1808,-0.0614,2460.0,2340.0,0.0252,-1.7286,3.327,11.1436 2019-06-03 15:45:27.480,153.5719,8567.0361,3.0471,0.1039,0.8343,0.1443,2460.0,2340.0,0.0457,-1.7226,3.3309,11.1464 2019-06-03 15:45:27.500,153.5648,8566.9512,3.0468,0.1201,0.8347,0.1695,2460.0,2340.0,0.0398,-1.7256,3.3415,11.1501 2019-06-03 15:45:27.520,153.4369,8566.9512,3.0468,0.1201,1.1756,-0.0759,2460.0,2340.0,0.0428,-1.7256,3.3402,11.1501 2019-06-03 15:45:27.540,153.5009,8566.9795,3.0468,0.1201,0.8894,0.1629,2460.0,2340.0,0.034,-1.7286,3.3376,11.1501 2019-06-03 15:45:27.560,153.4867,8567.0645,3.0407,0.1302,1.031,-0.0502,2460.0,2340.0,0.0194,-1.7256,3.3323,11.152 2019-06-03 15:45:27.580,153.4582,8567.0928,3.0339,0.1374,1.044,0.1226,2460.0,2340.0,0.0282,-1.7226,3.3415,11.1546 2019-06-03 15:45:27.600,153.4511,8567.0928,3.0377,0.1461,0.9519,0.1863,2460.0,2340.0,0.0252,-1.7405,3.3534,11.1568 2019-06-03 15:45:27.620,153.4582,8567.0361,3.0305,0.1488,1.0122,-0.0811,2460.0,2340.0,0.0369,-1.7375,3.3495,11.1576 2019-06-03 15:45:27.640,153.5009,8567.0361,3.0305,0.1488,1.1231,0.1682,2460.0,2340.0,0.0398,-1.7435,3.3574,11.1576 2019-06-03 15:45:27.660,153.5009,8567.0078,3.0305,0.1488,0.9615,-0.0379,2460.0,2340.0,0.0398,-1.7405,3.3574,11.1576 2019-06-03 15:45:27.680,153.444,8567.0361,3.0345,0.1603,1.2307,0.1055,2460.0,2340.0,0.0194,-1.7405,3.3601,11.161 2019-06-03 15:45:27.700,153.444,8566.9795,3.036,0.1708,1.2152,0.1266,2460.0,2340.0,0.034,-1.7465,3.376,11.1637 2019-06-03 15:45:27.720,153.3231,8567.0078,3.036,0.1708,0.7762,0.0115,2460.0,2340.0,0.0311,-1.7465,3.3574,11.1637 2019-06-03 15:45:27.740,153.38,8567.0645,3.036,0.1708,1.2452,0.0486,2460.0,2340.0,0.0545,-1.7555,3.3892,11.1637 2019-06-03 15:45:27.760,153.4014,8567.0361,3.0294,0.1768,0.7355,0.0805,2460.0,2340.0,0.0369,-1.7525,3.3601,11.1654 2019-06-03 15:45:27.780,153.3516,8567.0078,3.0301,0.1798,1.2311,0.0035,2460.0,2340.0,0.0369,-1.7405,3.368,11.1744 2019-06-03 15:45:27.800,153.3445,8567.0361,3.0327,0.1852,1.2614,0.0434,2460.0,2340.0,0.0311,-1.7853,3.376,11.1757 2019-06-03 15:45:27.820,153.3445,8567.0361,3.0352,0.1858,0.7755,0.0784,2460.0,2340.0,0.0369,-1.7614,3.368,11.1765 2019-06-03 15:45:27.840,153.38,8567.0928,3.0352,0.1858,1.3206,-0.0247,2460.0,2340.0,0.0457,-1.7525,3.3773,11.1765 2019-06-03 15:45:27.860,153.3943,8567.0928,3.0352,0.1858,0.7611,0.1185,2460.0,2340.0,0.0486,-1.7495,3.3667,11.1765 2019-06-03 15:45:27.880,153.3445,8567.0078,3.0373,0.1908,1.311,-0.0341,2460.0,2340.0,0.0603,-1.7525,3.368,11.1772 2019-06-03 15:45:27.900,153.3445,8566.8662,3.0338,0.1951,1.2259,-0.0166,2460.0,2340.0,0.0574,-1.7525,3.3707,11.1769 2019-06-03 15:45:27.920,153.3373,8566.8662,3.0338,0.1951,0.6941,0.1443,2460.0,2340.0,0.0428,-1.7196,3.3574,11.1769 2019-06-03 15:45:27.940,153.3871,8566.9229,3.0338,0.1951,1.2333,-0.1014,2460.0,2340.0,0.0457,-1.7226,3.3879,11.1769 2019-06-03 15:45:27.960,153.38,8566.9795,3.0311,0.1988,0.8513,0.1661,2460.0,2340.0,0.0223,-1.7375,3.3667,11.1762 2019-06-03 15:45:27.980,153.3445,8566.9795,3.0352,0.2079,1.1664,-0.0756,2460.0,2340.0,0.0486,-1.7345,3.3786,11.1769 2019-06-03 15:45:28.000,153.3373,8567.0078,3.03,0.2097,1.0111,-0.0668,2460.0,2340.0,0.0369,-1.7674,3.3786,11.1758 2019-06-03 15:45:28.020,153.3445,8566.9795,3.0358,0.2167,0.9744,0.1683,2460.0,2340.0,0.0398,-1.7465,3.368,11.176 2019-06-03 15:45:28.040,153.3871,8566.9795,3.0358,0.2167,1.0503,-0.0561,2460.0,2340.0,0.0428,-1.7435,3.3799,11.176 2019-06-03 15:45:28.060,153.4014,8567.0078,3.0358,0.2167,0.9356,0.1228,2460.0,2340.0,0.0369,-1.7465,3.372,11.176 2019-06-03 15:45:28.080,153.3373,8567.0078,3.0323,0.2234,0.987,-0.0134,2460.0,2340.0,0.0486,-1.7136,3.3786,11.1747 2019-06-03 15:45:28.100,153.3516,8566.9795,3.0321,0.2346,0.943,-0.0067,2460.0,2340.0,0.0428,-1.7644,3.3892,11.1743 2019-06-03 15:45:28.120,153.3373,8567.0078,3.0321,0.2346,1.0151,0.0817,2460.0,2340.0,0.0398,-1.7644,3.3799,11.1743 2019-06-03 15:45:28.140,153.38,8567.0645,3.0321,0.2346,0.8114,-0.0099,2460.0,2340.0,0.0428,-1.7555,3.3826,11.1743 2019-06-03 15:45:28.160,153.3871,8567.0928,3.0355,0.2456,1.2252,0.0469,2460.0,2340.0,0.0369,-1.7614,3.3892,11.1735 2019-06-03 15:45:28.180,153.3516,8567.0361,3.0377,0.2557,0.8746,0.0519,2460.0,2340.0,0.0223,-1.7584,3.3812,11.1705 2019-06-03 15:45:28.200,153.3445,8567.1211,3.036,0.256,0.7777,0.052,2460.0,2340.0,0.0252,-1.7584,3.4051,11.1699 2019-06-03 15:45:28.220,153.3516,8567.0928,3.035,0.2592,1.2152,0.0232,2460.0,2340.0,0.0311,-1.7584,3.3958,11.1688 2019-06-03 15:45:28.240,153.3871,8567.0928,3.035,0.2592,0.8158,0.0549,2460.0,2340.0,0.0515,-1.7614,3.4077,11.1688 2019-06-03 15:45:28.260,153.3943,8567.0928,3.035,0.2592,1.1335,-0.0291,2460.0,2340.0,0.0398,-1.7614,3.3958,11.1688 2019-06-03 15:45:28.280,153.3445,8567.0645,3.037,0.2652,0.7703,0.1131,2460.0,2340.0,0.0457,-1.7614,3.3945,11.1675 2019-06-03 15:45:28.300,153.3373,8567.0078,3.0392,0.2725,0.8106,0.1475,2460.0,2340.0,0.0398,-1.7823,3.4143,11.1656 2019-06-03 15:45:28.320,153.2163,8566.9512,3.0392,0.2725,1.1205,-0.0625,2460.0,2340.0,0.0194,-1.7823,3.4091,11.1656 2019-06-03 15:45:28.340,153.2733,8566.9795,3.0392,0.2725,0.9164,0.1432,2460.0,2340.0,0.0223,-1.7853,3.4157,11.1656 2019-06-03 15:45:28.360,153.2661,8567.0078,3.0431,0.2782,1.2359,-0.098,2460.0,2340.0,-0.0186,-1.8212,3.4104,11.1633 2019-06-03 15:45:28.380,153.2305,8567.0645,3.042,0.2814,0.9334,0.1695,2460.0,2340.0,-0.0157,-1.8152,3.4117,11.1624 2019-06-03 15:45:28.400,153.2234,8567.1211,3.0492,0.2829,1.0188,0.2064,2340.0,2400.0,-0.0098,-1.851,3.4263,11.1623 2019-06-03 15:45:28.420,153.2377,8567.0928,3.0466,0.2813,0.9863,-0.061,2340.0,2400.0,-0.0069,-1.8391,3.4249,11.1599 2019-06-03 15:45:28.440,153.2733,8566.9229,3.0466,0.2813,0.9504,0.1182,2340.0,2400.0,-0.0069,-1.8391,3.4223,11.1599 2019-06-03 15:45:28.460,153.2804,8566.9512,3.0466,0.2813,0.9293,-0.0393,2340.0,2400.0,-0.0508,-1.842,3.4157,11.1599 2019-06-03 15:45:28.480,153.2305,8566.9512,3.0539,0.2862,0.9807,0.0988,2340.0,2400.0,-0.0712,-1.842,3.421,11.1573 2019-06-03 15:45:28.500,153.2305,8566.9512,3.0612,0.2847,1.0884,0.151,2340.0,2400.0,-0.0742,-1.842,3.4289,11.1542 2019-06-03 15:45:28.520,153.2305,8566.9795,3.0612,0.2847,0.9511,-0.0151,2340.0,2400.0,-0.0829,-1.845,3.4157,11.1542 2019-06-03 15:45:28.540,153.2661,8567.0645,3.0612,0.2847,1.1501,0.0878,2340.0,2400.0,-0.0771,-1.842,3.4104,11.1542 2019-06-03 15:45:28.560,153.2661,8567.1211,3.0648,0.2799,0.798,-0.0053,2340.0,2400.0,-0.0771,-1.8808,3.4117,11.1501 2019-06-03 15:45:28.580,153.2377,8567.0645,3.0708,0.2716,1.1242,0.0407,2340.0,2400.0,-0.0595,-1.848,3.4249,11.1477 2019-06-03 15:45:28.600,153.2377,8567.1211,3.0762,0.27,1.21,0.0294,2340.0,2400.0,-0.0712,-1.8719,3.4249,11.1456 2019-06-03 15:45:28.620,153.2377,8567.0928,3.0798,0.2633,0.9119,0.0822,2340.0,2400.0,-0.08,-1.8689,3.4091,11.1444 2019-06-03 15:45:28.640,153.2733,8567.1504,3.0798,0.2633,1.1812,0.0067,2340.0,2400.0,-0.0742,-1.8241,3.413,11.1444 2019-06-03 15:45:28.660,153.2733,8567.0928,3.0798,0.2633,0.7285,0.0877,2340.0,2400.0,-0.08,-1.9047,3.4104,11.1444 2019-06-03 15:45:28.680,153.2305,8567.0361,3.0863,0.2494,1.1597,-0.0312,2340.0,2400.0,-0.0508,-1.854,3.4157,11.1385 2019-06-03 15:45:28.700,153.2377,8566.8945,3.0853,0.2311,1.1131,-0.0057,2340.0,2400.0,-0.0215,-1.854,3.4276,11.1327 2019-06-03 15:45:28.720,153.1022,8566.8096,3.0853,0.2311,0.862,0.0906,2340.0,2400.0,-0.0566,-1.854,3.4104,11.1327 2019-06-03 15:45:28.740,153.1664,8566.7813,3.0853,0.2311,1.1963,-0.043,2340.0,2400.0,-0.0712,-1.851,3.4104,11.1327 2019-06-03 15:45:28.760,153.1664,8566.8096,3.0901,0.2123,0.8687,0.174,2340.0,2400.0,-0.1092,-1.854,3.4183,11.1273 2019-06-03 15:45:28.780,153.1165,8566.8662,3.0943,0.2001,1.0702,-0.0661,2340.0,2400.0,-0.118,-1.851,3.4183,11.1273 2019-06-03 15:45:28.800,153.1165,8566.8945,3.0916,0.1922,1.0835,-0.0914,2340.0,2400.0,-0.0946,-1.851,3.4289,11.1254 2019-06-03 15:45:28.820,153.1165,8566.9512,3.1,0.1881,0.8354,0.1528,2340.0,2400.0,-0.0771,-1.857,3.4104,11.1239 2019-06-03 15:45:28.840,153.1593,8566.9512,3.1,0.1881,1.0429,-0.0515,2340.0,2400.0,-0.0742,-1.8361,3.4117,11.1239 2019-06-03 15:45:28.860,153.1664,8566.8945,3.1,0.1881,1.0399,0.167,2340.0,2400.0,-0.0858,-1.854,3.4196,11.1239 2019-06-03 15:45:28.880,153.1236,8566.8945,3.0995,0.1711,0.9874,-0.0399,2340.0,2400.0,-0.1005,-1.8271,3.4143,11.1208 2019-06-03 15:45:28.900,153.1236,8566.8379,3.102,0.1561,1.0865,-0.0356,2340.0,2400.0,-0.0975,-1.8361,3.4316,11.1187 2019-06-03 15:45:28.920,153.1165,8566.8662,3.102,0.1561,1.186,0.086,2340.0,2400.0,-0.118,-1.8719,3.4157,11.1187 2019-06-03 15:45:28.940,153.1664,8566.9229,3.102,0.1561,0.9142,0.0384,2340.0,2400.0,-0.0917,-1.8092,3.4157,11.1187 2019-06-03 15:45:28.960,153.1521,8566.9795,3.1093,0.1472,1.1416,0.089,2340.0,2400.0,-0.0917,-1.851,3.421,11.1186 2019-06-03 15:45:28.980,153.1236,8566.8096,3.114,0.1285,0.8768,0.0479,2340.0,2400.0,-0.0742,-1.8301,3.421,11.1179 2019-06-03 15:45:29.000,153.1165,8566.8096,3.1139,0.1185,0.9171,0.039,2340.0,2400.0,-0.0888,-1.8301,3.4183,11.1167 2019-06-03 15:45:29.020,153.1307,8566.7529,3.1153,0.1096,1.2233,-0.0165,2340.0,2400.0,-0.0829,-1.848,3.4249,11.1156 2019-06-03 15:45:29.040,153.1664,8566.7813,3.1153,0.1096,0.8994,0.0847,2340.0,2400.0,-0.0888,-1.8361,3.413,11.1156 2019-06-03 15:45:29.060,153.1664,8566.7246,3.1153,0.1096,1.2089,0.0278,2340.0,2400.0,-0.08,-1.8391,3.4249,11.1156 2019-06-03 15:45:29.080,153.1165,8566.7813,3.1216,0.0964,0.828,0.097,2340.0,2400.0,-0.0917,-1.8301,3.4117,11.1147 2019-06-03 15:45:29.100,153.1236,8566.6963,3.1275,0.0806,0.8683,0.1046,2340.0,2400.0,-0.0858,-1.8331,3.4183,11.1133 2019-06-03 15:45:29.120,153.1165,8566.668,3.1275,0.0806,1.1479,-0.0382,2340.0,2400.0,-0.1005,-1.8391,3.4183,11.1133 2019-06-03 15:45:29.140,153.1735,8566.6963,3.1275,0.0806,0.8868,0.1229,2340.0,2400.0,-0.0888,-1.8301,3.4143,11.1133 2019-06-03 15:45:29.160,153.1664,8566.668,3.1349,0.0616,1.1216,-0.0035,2340.0,2400.0,-0.0858,-1.8391,3.421,11.1108 2019-06-03 15:45:29.180,153.1165,8566.668,3.1349,0.0616,0.8927,0.1075,2340.0,2400.0,-0.0858,-1.8301,3.4064,11.1108 2019-06-03 15:45:29.200,153.1236,8566.7246,3.1442,0.032,1.0,0.0967,2340.0,2400.0,-0.0625,-1.8271,3.421,11.1088 2019-06-03 15:45:29.220,153.1236,8566.7813,3.1443,0.019,0.9763,-0.0366,2340.0,2400.0,-0.0829,-1.8331,3.3985,11.1063 2019-06-03 15:45:29.240,153.1521,8566.8379,3.1443,0.019,1.0906,0.1214,2340.0,2400.0,-0.0771,-1.8092,3.4011,11.1063 2019-06-03 15:45:29.260,153.1735,8566.8096,3.1443,0.019,0.9863,0.0044,2340.0,2400.0,-0.0975,-1.8212,3.3932,11.1063 2019-06-03 15:45:29.280,153.1236,8566.8096,3.1511,-0.0036,1.0092,0.0989,2340.0,2400.0,-0.0917,-1.8092,3.3746,11.1022 2019-06-03 15:45:29.300,153.1236,8566.7246,3.1564,-0.0267,1.071,0.086,2340.0,2400.0,-0.0771,-1.7734,3.3733,11.0981 2019-06-03 15:45:29.320,153.1165,8566.8379,3.1564,-0.0267,0.9711,-0.0217,2340.0,2400.0,-0.0683,-1.8003,3.3733,11.0981 2019-06-03 15:45:29.340,153.1593,8566.9512,3.1564,-0.0267,1.0392,0.0996,2340.0,2400.0,-0.0654,-1.7614,3.3534,11.0981 2019-06-03 15:45:29.360,153.1593,8567.0078,3.153,-0.0482,0.9648,0.0183,2340.0,2400.0,-0.0829,-1.7764,3.3521,11.092 2019-06-03 15:45:29.380,153.1165,8567.0078,3.1549,-0.0714,1.0795,0.0759,2340.0,2400.0,-0.0858,-1.7704,3.3389,11.0891 2019-06-03 15:45:29.400,153.1165,8567.0361,3.1574,-0.0779,1.1864,0.0622,2400.0,2340.0,-0.0771,-1.7704,3.3296,11.0874 2019-06-03 15:45:29.420,153.1165,8566.9795,3.1563,-0.0884,0.8365,0.048,2400.0,2340.0,-0.0771,-1.7734,3.319,11.0846 2019-06-03 15:45:29.440,153.1664,8567.0078,3.1563,-0.0884,1.1342,0.0346,2400.0,2340.0,-0.0566,-1.7734,3.3137,11.0846 2019-06-03 15:45:29.460,153.1735,8566.9512,3.1563,-0.0884,0.8572,0.0863,2400.0,2340.0,-0.0595,-1.8062,3.3124,11.0846 2019-06-03 15:45:29.480,153.1165,8566.9795,3.1543,-0.1024,1.098,0.0146,2400.0,2340.0,-0.0654,-1.7794,3.2872,11.0786 2019-06-03 15:45:29.500,153.1165,8566.8945,3.1456,-0.1212,1.2514,0.0308,2400.0,2340.0,-0.08,-1.7853,3.2714,11.0732 2019-06-03 15:45:29.520,152.9808,8566.8945,3.1456,-0.1212,0.8106,0.092,2400.0,2340.0,-0.0975,-1.7883,3.2634,11.0732 2019-06-03 15:45:29.540,153.0451,8566.8662,3.1456,-0.1212,1.1505,-0.0131,2400.0,2340.0,-0.0742,-1.7823,3.2608,11.0732 2019-06-03 15:45:29.560,153.0451,8566.8662,3.1386,-0.136,0.9918,0.1198,2400.0,2340.0,-0.0712,-1.7794,3.2568,11.0679 2019-06-03 15:45:29.580,153.0165,8566.8379,3.1317,-0.1479,0.9545,-0.0089,2400.0,2340.0,-0.0712,-1.7794,3.2303,11.0648 2019-06-03 15:45:29.600,153.0094,8566.8662,3.1228,-0.1542,1.1605,-0.0002,2400.0,2340.0,-0.0742,-1.7764,3.2343,11.0621 2019-06-03 15:45:29.620,153.0165,8566.8379,3.1208,-0.1573,1.0403,0.1313,2400.0,2340.0,-0.0771,-1.7794,3.2316,11.0605 2019-06-03 15:45:29.640,153.0451,8566.8662,3.1208,-0.1573,0.9645,-0.0183,2400.0,2340.0,-0.0683,-1.7823,3.233,11.0605 2019-06-03 15:45:29.660,153.0594,8566.7529,3.1208,-0.1573,0.9974,0.1249,2400.0,2340.0,-0.0625,-1.7913,3.2316,11.0605 2019-06-03 15:45:29.680,153.0094,8566.6963,3.1002,-0.1689,0.8731,-0.0031,2400.0,2340.0,-0.0654,-1.7853,3.221,11.057 2019-06-03 15:45:29.700,152.9951,8566.6396,3.0845,-0.1768,1.0122,-0.0092,2400.0,2340.0,-0.0654,-1.7764,3.225,11.0532 2019-06-03 15:45:29.720,152.8807,8566.6396,3.0845,-0.1768,1.1035,0.1346,2400.0,2340.0,-0.0829,-1.8092,3.2396,11.0532 2019-06-03 15:45:29.740,152.9451,8566.668,3.0845,-0.1768,0.8428,0.0031,2400.0,2340.0,-0.0888,-1.7943,3.225,11.0532 2019-06-03 15:45:29.760,152.9379,8566.668,3.0656,-0.1836,1.1098,0.0765,2400.0,2340.0,-0.0829,-1.8062,3.2436,11.0494 2019-06-03 15:45:29.780,152.895,8566.668,3.0656,-0.1836,0.9186,0.0376,2400.0,2340.0,-0.0946,-1.7794,3.2157,11.0494 2019-06-03 15:45:29.800,152.9093,8566.6113,3.031,-0.1964,0.9818,0.0457,2400.0,2340.0,-0.0771,-1.7734,3.2197,11.0467 2019-06-03 15:45:29.820,152.9022,8566.5547,3.0181,-0.2004,1.2071,0.0951,2400.0,2340.0,-0.0654,-1.7883,3.2396,11.0457 2019-06-03 15:45:29.840,152.9451,8566.583,3.0181,-0.2004,0.7677,0.0585,2400.0,2340.0,-0.0566,-1.7823,3.2237,11.0457 2019-06-03 15:45:29.860,152.9522,8566.5264,3.0181,-0.2004,1.0458,-0.0035,2400.0,2340.0,-0.0625,-1.7913,3.2237,11.0457 2019-06-03 15:45:29.880,152.895,8566.5264,2.9896,-0.2087,0.8727,0.0622,2400.0,2340.0,-0.0829,-1.7943,3.2171,11.043 2019-06-03 15:45:29.900,152.895,8566.4414,2.9664,-0.2132,0.9149,0.0887,2400.0,2340.0,-0.0858,-1.7853,3.2157,11.0414 2019-06-03 15:45:29.920,152.7662,8566.4697,2.9664,-0.2132,1.0865,0.0335,2400.0,2340.0,-0.0917,-1.7943,3.225,11.0414 2019-06-03 15:45:29.940,152.8234,8566.5547,2.9664,-0.2132,0.8716,0.0757,2400.0,2340.0,-0.08,-1.7794,3.2224,11.0414 2019-06-03 15:45:29.960,152.8306,8566.6396,2.9414,-0.2197,0.9744,-0.012,2400.0,2340.0,-0.0508,-1.7704,3.2316,11.0396 2019-06-03 15:45:29.980,152.7876,8566.6963,2.9135,-0.228,0.9615,0.0707,2400.0,2340.0,-0.0478,-1.7764,3.221,11.0364 2019-06-03 15:45:30.000,152.7805,8566.6963,2.9051,-0.2308,0.983,0.0876,2400.0,2340.0,-0.0449,-1.7764,3.2144,11.0362 2019-06-03 15:45:30.020,152.7876,8566.6963,2.8917,-0.2373,0.9205,-0.0024,2400.0,2340.0,-0.0478,-1.7764,3.2224,11.0356 2019-06-03 15:45:30.040,152.8306,8566.7529,2.8917,-0.2373,1.044,0.1143,2400.0,2340.0,-0.0449,-1.7734,3.221,11.0356 2019-06-03 15:45:30.060,152.8378,8566.7529,2.8917,-0.2373,0.9781,-0.046,2400.0,2340.0,-0.0274,-1.7734,3.2237,11.0356 2019-06-03 15:45:30.080,152.7805,8566.8096,2.8711,-0.2472,0.9267,0.1163,2400.0,2340.0,-0.0245,-1.7764,3.225,11.0349 2019-06-03 15:45:30.100,152.7876,8566.7529,2.8496,-0.2541,1.0173,0.0833,2400.0,2340.0,-0.0098,-1.7794,3.229,11.0358 2019-06-03 15:45:30.120,152.7733,8566.7813,2.8496,-0.2541,0.835,0.0416,2400.0,2340.0,-0.0215,-1.7794,3.2343,11.0358 2019-06-03 15:45:30.140,152.8306,8566.7529,2.8496,-0.2541,0.9959,0.0467,2400.0,2340.0,-0.0245,-1.7764,3.2422,11.0358 2019-06-03 15:45:30.160,152.8234,8566.8096,2.8241,-0.2692,0.9197,0.0232,2400.0,2340.0,-0.0215,-1.7764,3.2475,11.0344 2019-06-03 15:45:30.180,152.7805,8566.8662,2.8241,-0.2692,0.9911,0.0252,2400.0,2340.0,-0.0186,-1.7764,3.2316,11.0344 2019-06-03 15:45:30.200,152.7876,8566.8945,2.7951,-0.2833,1.0358,0.0454,2400.0,2340.0,-0.0128,-1.7734,3.2356,11.0375 2019-06-03 15:45:30.220,152.7876,8566.9229,2.7862,-0.2872,0.8613,0.0653,2400.0,2340.0,-0.0186,-1.7794,3.2528,11.0383 2019-06-03 15:45:30.240,152.8234,8566.9512,2.7862,-0.2872,0.9334,0.0281,2400.0,2340.0,-0.004,-1.7734,3.278,11.0383 2019-06-03 15:45:30.260,152.8378,8566.9229,2.7862,-0.2872,0.9582,0.0622,2400.0,2340.0,-0.0098,-1.7764,3.3005,11.0383 2019-06-03 15:45:30.280,152.7805,8566.8662,2.7686,-0.2959,1.0506,-0.0201,2400.0,2340.0,-0.0069,-1.7764,3.3045,11.0393 2019-06-03 15:45:30.300,152.7876,8566.8662,2.7509,-0.3076,1.0821,-0.0363,2400.0,2340.0,0.0077,-1.7794,3.2925,11.0397 2019-06-03 15:45:30.320,152.6586,8566.8945,2.7509,-0.3076,0.9256,0.1504,2400.0,2340.0,0.0106,-1.7823,3.3203,11.0397 2019-06-03 15:45:30.340,152.7088,8566.9512,2.7509,-0.3076,0.9242,-0.025,2400.0,2340.0,0.0048,-1.7794,3.3243,11.0397 2019-06-03 15:45:30.360,152.7088,8567.0361,2.7392,-0.3171,1.0225,0.112,2400.0,2340.0,0.0077,-1.7794,3.3349,11.0408 2019-06-03 15:45:30.380,152.673,8567.0645,2.7392,-0.3171,0.8875,-0.0206,2400.0,2340.0,-0.0069,-1.7764,3.3256,11.0408 2019-06-03 15:45:30.400,152.6658,8567.0928,2.7189,-0.3328,0.9012,0.0155,2340.0,2400.0,0.0018,-1.7794,3.3323,11.0418 2019-06-03 15:45:30.420,152.6802,8567.0645,2.7188,-0.3355,1.0303,0.0738,2340.0,2400.0,-0.004,-1.7794,3.3481,11.0437 2019-06-03 15:45:30.440,152.716,8567.0928,2.7188,-0.3355,0.8383,0.0413,2340.0,2400.0,-0.004,-1.7794,3.3468,11.0437 2019-06-03 15:45:30.460,152.716,8567.1211,2.7188,-0.3355,1.0218,0.0523,2340.0,2400.0,-0.0215,-1.7794,3.3455,11.0437 2019-06-03 15:45:30.480,152.6658,8567.1211,2.7103,-0.3478,0.8424,0.0093,2340.0,2400.0,-0.0332,-1.7823,3.3481,11.0461 2019-06-03 15:45:30.500,152.6658,8567.0361,2.7078,-0.3584,0.764,0.0279,2340.0,2400.0,-0.0332,-1.7794,3.3481,11.0502 2019-06-03 15:45:30.520,152.5366,8567.0645,2.7078,-0.3584,1.159,0.0488,2340.0,2400.0,-0.0274,-1.8152,3.3654,11.0502 2019-06-03 15:45:30.540,152.6012,8567.0361,2.7078,-0.3584,0.8228,0.0629,2340.0,2400.0,-0.0011,-1.8092,3.3495,11.0502 2019-06-03 15:45:30.560,152.6012,8567.0645,2.7111,-0.3681,1.1191,-0.0129,2340.0,2400.0,0.0223,-1.7973,3.3521,11.0548 2019-06-03 15:45:30.580,152.551,8567.1211,2.7111,-0.3681,0.8946,0.0594,2340.0,2400.0,0.0018,-1.8212,3.3574,11.0548 2019-06-03 15:45:30.600,152.5582,8567.1211,2.7126,-0.3817,0.8147,0.0807,2340.0,2400.0,-0.0098,-1.7764,3.3534,11.0636 2019-06-03 15:45:30.620,152.5654,8567.1211,2.7109,-0.392,1.0628,-0.0054,2340.0,2400.0,-0.0332,-1.8271,3.3574,11.0665 2019-06-03 15:45:30.640,152.6012,8567.1211,2.7109,-0.392,0.9645,0.0874,2340.0,2400.0,-0.0274,-1.8241,3.3442,11.0665 2019-06-03 15:45:30.660,152.6012,8567.1211,2.7109,-0.392,1.0218,-0.0132,2340.0,2400.0,-0.0011,-1.7853,3.3415,11.0665 2019-06-03 15:45:30.680,152.5582,8567.1504,2.7143,-0.403,0.906,0.06,2340.0,2400.0,0.0048,-1.8003,3.3548,11.072 2019-06-03 15:45:30.700,152.5654,8567.0928,2.7191,-0.4131,0.9482,0.0671,2340.0,2400.0,0.0106,-1.7973,3.3548,11.0773 2019-06-03 15:45:30.720,152.551,8567.1504,2.7191,-0.4131,0.9297,0.0279,2340.0,2400.0,0.0048,-1.7973,3.3574,11.0773 2019-06-03 15:45:30.740,152.6012,8567.1504,2.7191,-0.4131,1.135,0.0629,2340.0,2400.0,-0.0098,-1.8003,3.3481,11.0773 2019-06-03 15:45:30.760,152.6012,8567.1787,2.7215,-0.4255,0.9622,-0.0088,2340.0,2400.0,-0.0098,-1.7943,3.3587,11.0835 2019-06-03 15:45:30.780,152.5582,8567.207,2.7215,-0.4255,0.987,0.1372,2340.0,2400.0,-0.0215,-1.8003,3.3614,11.0835 2019-06-03 15:45:30.800,152.551,8567.2637,2.7284,-0.4472,1.068,0.0973,2340.0,2400.0,-0.0098,-1.7973,3.3561,11.0925 2019-06-03 15:45:30.820,152.5654,8567.2637,2.7259,-0.458,0.8224,-0.0043,2340.0,2400.0,0.0077,-1.7973,3.3548,11.095 2019-06-03 15:45:30.840,152.6012,8567.2637,2.7259,-0.458,1.1812,0.05,2340.0,2400.0,0.0165,-1.7973,3.3534,11.095 2019-06-03 15:45:30.860,152.6012,8567.1787,2.7259,-0.458,0.8894,0.0327,2340.0,2400.0,0.0223,-1.7973,3.3495,11.095 2019-06-03 15:45:30.880,152.5582,8567.1787,2.7298,-0.4722,1.1324,0.0537,2340.0,2400.0,0.0135,-1.7973,3.3468,11.1006 2019-06-03 15:45:30.900,152.5654,8567.0645,2.7299,-0.492,1.1375,0.0277,2340.0,2400.0,0.0106,-1.7973,3.3362,11.105 2019-06-03 15:45:30.920,152.5438,8567.0928,2.7299,-0.492,0.9016,0.0598,2340.0,2400.0,0.0106,-1.8301,3.3561,11.105 2019-06-03 15:45:30.940,152.6012,8567.1504,2.7299,-0.492,1.1764,-0.0054,2340.0,2400.0,-0.0011,-1.8271,3.3442,11.105 2019-06-03 15:45:30.960,152.5941,8567.1504,2.7292,-0.513,0.9571,0.0986,2340.0,2400.0,0.0165,-1.7913,3.3336,11.1083 2019-06-03 15:45:30.980,152.5654,8567.1211,2.7297,-0.5341,1.1394,-0.0036,2340.0,2400.0,0.0077,-1.7943,3.3203,11.1069 2019-06-03 15:45:31.000,152.551,8567.0928,2.7259,-0.5441,1.0654,-0.0399,2340.0,2400.0,0.0135,-1.7943,3.3045,11.108 2019-06-03 15:45:31.020,152.5582,8567.0928,2.729,-0.553,1.004,0.1176,2340.0,2400.0,0.0165,-1.7913,3.3177,11.1101 2019-06-03 15:45:31.040,152.5941,8567.0645,2.729,-0.553,0.9286,-0.0716,2340.0,2400.0,-0.0157,-1.7883,3.3045,11.1101 2019-06-03 15:45:31.060,152.6084,8567.1211,2.729,-0.553,1.004,0.1324,2340.0,2400.0,0.0048,-1.7943,3.3111,11.1101 2019-06-03 15:45:31.080,152.5582,8567.1211,2.7248,-0.5755,0.9811,0.0022,2340.0,2400.0,-0.004,-1.7973,3.3058,11.1118 2019-06-03 15:45:31.100,152.551,8567.0361,2.7183,-0.6008,0.8694,-0.0195,2340.0,2400.0,0.0106,-1.7883,3.3005,11.1144 2019-06-03 15:45:31.120,152.551,8567.0361,2.7183,-0.6008,1.1102,0.0909,2340.0,2400.0,0.0194,-1.7943,3.3071,11.1144 2019-06-03 15:45:31.140,152.6012,8567.1211,2.7183,-0.6008,0.9016,-0.0124,2340.0,2400.0,0.0165,-1.8032,3.3058,11.1144 2019-06-03 15:45:31.160,152.5869,8567.2354,2.7161,-0.623,1.0887,0.0939,2340.0,2400.0,0.0106,-1.8003,3.2886,11.1149 2019-06-03 15:45:31.180,152.5582,8567.207,2.7107,-0.6428,0.862,0.0655,2340.0,2400.0,0.0077,-1.8003,3.2912,11.118 2019-06-03 15:45:31.200,152.551,8567.2354,2.7059,-0.6595,0.7681,0.0408,2340.0,2400.0,0.0077,-1.8032,3.278,11.1177 2019-06-03 15:45:31.220,152.5582,8567.2354,2.7009,-0.6718,1.1579,0.0268,2340.0,2400.0,0.0135,-1.8003,3.2965,11.118 2019-06-03 15:45:31.240,152.6084,8567.2637,2.7009,-0.6718,0.7736,0.0402,2340.0,2400.0,-0.0011,-1.8003,3.2886,11.118 2019-06-03 15:45:31.260,152.6084,8567.2354,2.7009,-0.6718,1.1904,0.022,2340.0,2400.0,0.0077,-1.8032,3.2846,11.118 2019-06-03 15:45:31.280,152.551,8567.2637,2.6919,-0.6967,0.8151,0.1057,2340.0,2400.0,0.0048,-1.8032,3.2952,11.1168 2019-06-03 15:45:31.300,152.5654,8567.1504,2.6831,-0.7181,0.8028,0.1028,2340.0,2400.0,0.0048,-1.8032,3.2767,11.1157 2019-06-03 15:45:31.320,152.551,8567.1211,2.6831,-0.7181,1.2367,-0.0592,2340.0,2400.0,0.0077,-1.8032,3.2793,11.1157 2019-06-03 15:45:31.340,152.5941,8567.1211,2.6831,-0.7181,0.9301,0.1247,2340.0,2400.0,0.0048,-1.8003,3.2793,11.1157 2019-06-03 15:45:31.360,152.6012,8567.1787,2.6763,-0.7371,1.0884,-0.0613,2340.0,2400.0,0.0194,-1.8003,3.2661,11.1142 2019-06-03 15:45:31.380,152.5582,8567.1787,2.6608,-0.7578,0.8705,0.1634,2340.0,2400.0,0.0194,-1.8062,3.2939,11.1119 2019-06-03 15:45:31.400,152.5582,8567.1787,2.6585,-0.7641,0.9349,0.1471,2400.0,2400.0,0.0135,-1.8062,3.2753,11.1121 2019-06-03 15:45:31.420,152.5582,8567.1504,2.6464,-0.7746,1.1013,-0.0911,2400.0,2400.0,0.0165,-1.7764,3.2793,11.1108 2019-06-03 15:45:31.440,152.6012,8567.207,2.6464,-0.7746,0.956,0.1507,2400.0,2400.0,-0.0011,-1.8032,3.27,11.1108 2019-06-03 15:45:31.460,152.6012,8567.1211,2.6464,-0.7746,0.9981,-0.0516,2400.0,2400.0,0.0194,-1.7913,3.2581,11.1108 2019-06-03 15:45:31.480,152.5582,8567.207,2.6385,-0.7901,1.1205,0.1457,2400.0,2400.0,0.0282,-1.7883,3.2819,11.1097 2019-06-03 15:45:31.500,152.551,8567.1211,2.6279,-0.805,1.1486,0.1349,2400.0,2400.0,0.0311,-1.7883,3.2767,11.1079 2019-06-03 15:45:31.520,152.4216,8567.1504,2.6279,-0.805,0.8979,-0.0198,2400.0,2400.0,0.0077,-1.7853,3.2621,11.1079 2019-06-03 15:45:31.540,152.4935,8567.1504,2.6279,-0.805,1.2245,0.0872,2400.0,2400.0,-0.0098,-1.7913,3.2687,11.1079 2019-06-03 15:45:31.560,152.4791,8567.2354,2.6109,-0.8249,0.6982,0.0561,2400.0,2400.0,-0.0011,-1.7883,3.2568,11.1039 2019-06-03 15:45:31.580,152.4504,8567.207,2.5957,-0.8468,1.1871,0.0213,2400.0,2400.0,0.0135,-1.7853,3.2753,11.0993 2019-06-03 15:45:31.600,152.4504,8567.207,2.5918,-0.8537,1.2855,0.0098,2400.0,2400.0,0.0311,-1.7883,3.27,11.0965 2019-06-03 15:45:31.620,152.4432,8567.2354,2.5861,-0.865,0.7311,0.1092,2400.0,2400.0,0.0311,-1.7405,3.2647,11.0945 2019-06-03 15:45:31.640,152.4863,8567.2637,2.5861,-0.865,1.2344,-0.0225,2400.0,2400.0,0.0194,-1.7405,3.2819,11.0945 2019-06-03 15:45:31.660,152.5079,8567.2637,2.5861,-0.865,0.8091,0.1125,2400.0,2400.0,0.0077,-1.6867,3.2753,11.0945 2019-06-03 15:45:31.680,152.4432,8567.292,2.5729,-0.8831,1.1727,-0.043,2400.0,2400.0,0.0018,-1.6807,3.2886,11.0887 2019-06-03 15:45:31.700,152.4576,8567.2354,2.5545,-0.9046,1.1453,-0.0564,2400.0,2400.0,0.0077,-1.6747,3.2899,11.0809 2019-06-03 15:45:31.720,152.436,8567.207,2.5545,-0.9046,0.8757,0.1557,2400.0,2400.0,0.0165,-1.6299,3.2859,11.0809 2019-06-03 15:45:31.740,152.4863,8567.1787,2.5545,-0.9046,1.0595,-0.0694,2400.0,2400.0,0.0223,-1.6269,3.2925,11.0809 2019-06-03 15:45:31.760,152.4863,8567.2637,2.5423,-0.9214,0.7936,0.1698,2400.0,2400.0,0.0252,-1.6089,3.2846,11.073 2019-06-03 15:45:31.780,152.4432,8567.292,2.5314,-0.9309,1.0196,-0.0999,2400.0,2400.0,0.0369,-1.6089,3.2912,11.0674 2019-06-03 15:45:31.800,152.4432,8567.3203,2.52,-0.9387,0.9807,-0.0945,2400.0,2400.0,0.034,-1.5999,3.2833,11.0623 2019-06-03 15:45:31.820,152.4576,8567.3203,2.5182,-0.9399,1.0336,0.1748,2400.0,2400.0,0.0369,-1.546,3.2767,11.0596 2019-06-03 15:45:31.840,152.4863,8567.3203,2.5182,-0.9399,0.828,-0.0411,2400.0,2400.0,0.0223,-1.558,3.3058,11.0596 2019-06-03 15:45:31.860,152.5007,8567.2354,2.5182,-0.9399,1.0728,0.1272,2400.0,2400.0,0.0223,-1.555,3.2965,11.0596 2019-06-03 15:45:31.880,152.4504,8567.207,2.4982,-0.9502,0.8354,-0.0049,2400.0,2400.0,0.0165,-1.528,3.3031,11.0513 2019-06-03 15:45:31.900,152.4504,8567.1787,2.4849,-0.9564,0.6571,0.0123,2400.0,2400.0,0.0223,-1.4981,3.2952,11.0455 2019-06-03 15:45:31.920,152.436,8567.1787,2.4849,-0.9564,1.2511,0.05,2400.0,2400.0,0.0311,-1.4021,3.2899,11.0455 2019-06-03 15:45:31.940,152.5007,8567.1787,2.4849,-0.9564,0.7969,0.065,2400.0,2400.0,0.0252,-1.4141,3.3111,11.0455 2019-06-03 15:45:31.960,152.4863,8567.207,2.4754,-0.9571,1.223,0.0241,2400.0,2400.0,0.034,-1.3991,3.3084,11.0384 2019-06-03 15:45:31.980,152.4432,8567.1211,2.4754,-0.9571,0.7415,0.1107,2400.0,2400.0,0.0194,-1.3871,3.3045,11.0384 2019-06-03 15:45:32.000,152.4504,8567.1211,2.4526,-0.9588,0.8065,0.1202,2400.0,2400.0,0.0282,-1.3991,3.315,11.0269 2019-06-03 15:45:32.020,152.4432,8567.0928,2.4408,-0.958,1.2478,-0.0216,2400.0,2400.0,0.0252,-1.3931,3.2859,11.0234 2019-06-03 15:45:32.040,152.4863,8567.0928,2.4408,-0.958,0.7729,0.1796,2400.0,2400.0,0.034,-1.3961,3.315,11.0234 2019-06-03 15:45:32.060,152.4935,8567.1211,2.4408,-0.958,1.1412,-0.0996,2400.0,2400.0,0.0369,-1.3871,3.2899,11.0234 2019-06-03 15:45:32.080,152.4432,8567.1211,2.4311,-0.9513,0.8568,0.1753,2400.0,2400.0,0.0457,-1.3931,3.3098,11.0149 2019-06-03 15:45:32.100,152.4504,8567.0645,2.425,-0.9367,0.9075,0.179,2400.0,2400.0,0.0311,-1.3961,3.3098,11.0087 2019-06-03 15:45:32.120,152.4432,8567.1211,2.425,-0.9367,0.9693,-0.0475,2400.0,2400.0,0.034,-1.3931,3.2992,11.0087 2019-06-03 15:45:32.140,152.4863,8567.1504,2.425,-0.9367,1.0736,0.1868,2400.0,2400.0,0.0252,-1.4021,3.3217,11.0087 2019-06-03 15:45:32.160,152.4863,8567.207,2.4122,-0.9207,0.9045,-0.0573,2400.0,2400.0,0.0223,-1.3991,3.3045,11.0022 2019-06-03 15:45:32.180,152.4504,8567.2354,2.4122,-0.9207,1.0865,0.1303,2400.0,2400.0,0.0252,-1.3991,3.3058,11.0022 2019-06-03 15:45:32.200,152.4432,8567.3203,2.401,-0.8916,1.1682,0.1458,2400.0,2400.0,0.0135,-1.3961,3.3098,10.9934 2019-06-03 15:45:32.220,152.4504,8567.3203,2.3932,-0.883,0.7884,-0.015,2400.0,2400.0,0.0282,-1.3961,3.3084,10.9901 2019-06-03 15:45:32.240,152.4863,8567.292,2.3932,-0.883,1.1816,0.1177,2400.0,2400.0,0.0311,-1.4021,3.3217,10.9901 2019-06-03 15:45:32.260,152.5007,8567.2354,2.3932,-0.883,0.7463,0.0057,2400.0,2400.0,0.0486,-1.3991,3.3084,10.9901 2019-06-03 15:45:32.280,152.4504,8567.1211,2.3892,-0.8568,1.2211,0.0366,2400.0,2400.0,0.0515,-1.3961,3.3058,10.9849 2019-06-03 15:45:32.300,152.4504,8567.0361,2.3794,-0.827,1.3254,0.0372,2400.0,2400.0,0.0428,-1.4021,3.3177,10.9805 2019-06-03 15:45:32.320,152.436,8567.0361,2.3794,-0.827,0.7219,0.0893,2400.0,2400.0,0.0369,-1.3961,3.3084,10.9805 2019-06-03 15:45:32.340,152.4863,8567.0645,2.3794,-0.827,1.2204,-0.0205,2400.0,2400.0,0.0398,-1.3961,3.3177,10.9805 2019-06-03 15:45:32.360,152.4935,8567.0928,2.368,-0.8018,0.6771,0.1232,2400.0,2400.0,0.0369,-1.3961,3.3084,10.9749 2019-06-03 15:45:32.380,152.4576,8567.0361,2.3658,-0.7732,1.2348,-0.057,2400.0,2400.0,0.0515,-1.3961,3.3045,10.9659 2019-06-03 15:45:32.400,152.4432,8567.0361,2.3614,-0.7557,1.1915,-0.0349,2400.0,2340.0,0.0457,-1.3991,3.3177,10.9635 2019-06-03 15:45:32.420,152.4432,8567.0078,2.3645,-0.7381,0.8265,0.1442,2400.0,2340.0,0.0457,-1.3991,3.315,10.9623 2019-06-03 15:45:32.440,152.4935,8567.0361,2.3645,-0.7381,1.1035,-0.0723,2400.0,2340.0,0.0457,-1.3931,3.3203,10.9623 2019-06-03 15:45:32.460,152.4935,8567.0645,2.3645,-0.7381,0.882,0.1308,2400.0,2340.0,0.0457,-1.3961,3.3111,10.9623 2019-06-03 15:45:32.480,152.436,8567.0928,2.355,-0.708,1.1716,-0.0638,2400.0,2340.0,0.0428,-1.3991,3.3098,10.9574 2019-06-03 15:45:32.500,152.4504,8567.0078,2.3469,-0.6797,1.0029,-0.0588,2400.0,2340.0,0.0252,-1.3961,3.3164,10.9534 2019-06-03 15:45:32.520,152.4504,8567.0078,2.3469,-0.6797,1.0595,0.15,2400.0,2340.0,0.0223,-1.3991,3.315,10.9534 2019-06-03 15:45:32.540,152.5007,8567.0078,2.3469,-0.6797,0.9741,-0.0509,2400.0,2340.0,0.034,-1.4261,3.327,10.9534 2019-06-03 15:45:32.560,152.4863,8567.0928,2.3395,-0.6491,1.014,0.1345,2400.0,2340.0,0.0311,-1.4201,3.3203,10.9496 2019-06-03 15:45:32.580,152.4432,8567.1211,2.3395,-0.6491,0.8849,-0.0393,2400.0,2340.0,0.0515,-1.4201,3.3217,10.9496 2019-06-03 15:45:32.600,152.4432,8567.1787,2.331,-0.6024,0.7929,-0.0143,2400.0,2340.0,0.0515,-1.4411,3.3243,10.9398 2019-06-03 15:45:32.620,152.4504,8567.1787,2.3306,-0.584,1.0847,0.0982,2400.0,2340.0,0.0603,-1.4381,3.3256,10.9381 2019-06-03 15:45:32.640,152.5007,8567.1787,2.3306,-0.584,0.8513,0.0129,2400.0,2340.0,0.0428,-1.4411,3.3256,10.9381 2019-06-03 15:45:32.660,152.4935,8567.1211,2.3306,-0.584,1.1989,0.046,2400.0,2340.0,0.0311,-1.4561,3.3177,10.9381 2019-06-03 15:45:32.680,152.4504,8567.0928,2.3233,-0.5578,0.7252,0.0518,2400.0,2340.0,0.0369,-1.4531,3.3084,10.9345 2019-06-03 15:45:32.700,152.4648,8567.0361,2.3206,-0.5269,0.7296,0.0791,2400.0,2340.0,0.0369,-1.4591,3.3283,10.9315 2019-06-03 15:45:32.720,152.5582,8567.0928,2.3206,-0.5269,1.1705,0.0139,2400.0,2340.0,0.0428,-1.4561,3.3177,10.9315 2019-06-03 15:45:32.740,152.6012,8567.1211,2.3206,-0.5269,0.7958,0.0955,2400.0,2340.0,0.0486,-1.4591,3.3243,10.9315 2019-06-03 15:45:32.760,152.5941,8567.1787,2.3177,-0.4959,1.152,-0.0283,2400.0,2340.0,0.034,-1.4591,3.319,10.9299 2019-06-03 15:45:32.780,152.551,8567.1787,2.3177,-0.4959,0.8032,0.122,2400.0,2340.0,0.0428,-1.4591,3.3164,10.9299 2019-06-03 15:45:32.800,152.5582,8567.1787,2.3095,-0.4558,0.855,0.147,2400.0,2340.0,0.0398,-1.4531,3.3283,10.9245 2019-06-03 15:45:32.820,152.5654,8567.1504,2.3017,-0.4456,1.1457,-0.0445,2400.0,2340.0,0.0252,-1.4591,3.3203,10.9224 2019-06-03 15:45:32.840,152.6012,8567.207,2.3017,-0.4456,0.8983,0.1291,2400.0,2340.0,0.0194,-1.4531,3.3256,10.9224 2019-06-03 15:45:32.860,152.6012,8567.1787,2.3017,-0.4456,1.1608,-0.0445,2400.0,2340.0,0.0165,-1.4531,3.3177,10.9224 2019-06-03 15:45:32.880,152.551,8567.1504,2.2996,-0.4172,0.9404,0.1341,2400.0,2340.0,0.0369,-1.4591,3.3217,10.9211 2019-06-03 15:45:32.900,152.551,8567.1211,2.2962,-0.3887,0.9774,0.1526,2400.0,2340.0,0.0369,-1.4531,3.3296,10.9213 2019-06-03 15:45:32.920,152.551,8567.1504,2.2962,-0.3887,0.9315,-0.0418,2400.0,2340.0,0.0545,-1.4561,3.3243,10.9213 2019-06-03 15:45:32.940,152.6084,8567.0928,2.2962,-0.3887,1.0103,0.1274,2400.0,2340.0,0.0574,-1.4591,3.3243,10.9213 2019-06-03 15:45:32.960,152.6012,8567.0928,2.2873,-0.3621,0.8916,-0.0271,2400.0,2340.0,0.0632,-1.4561,3.3323,10.9204 2019-06-03 15:45:32.980,152.5582,8567.0928,2.2873,-0.3621,1.1579,0.0963,2400.0,2340.0,0.0428,-1.4531,3.327,10.9204 2019-06-03 15:45:33.000,152.551,8567.0645,2.2825,-0.3185,1.1616,0.1241,2400.0,2340.0,0.034,-1.4531,3.3402,10.9175 2019-06-03 15:45:33.020,152.5654,8567.0928,2.2774,-0.3086,0.7403,0.0136,2400.0,2340.0,0.0077,-1.4561,3.3296,10.918 2019-06-03 15:45:33.040,152.6012,8567.1504,2.2774,-0.3086,1.1227,0.0509,2400.0,2340.0,0.0252,-1.4591,3.3402,10.918 2019-06-03 15:45:33.060,152.6084,8567.1211,2.2774,-0.3086,0.8162,0.0482,2400.0,2340.0,0.0398,-1.4591,3.3468,10.918 2019-06-03 15:45:33.080,152.5582,8567.0078,2.2742,-0.2783,1.1412,0.0186,2400.0,2340.0,0.0515,-1.4561,3.3309,10.9196 2019-06-03 15:45:33.100,152.551,8566.9512,2.2644,-0.2489,1.2067,0.0096,2400.0,2340.0,0.0457,-1.4831,3.3455,10.921 2019-06-03 15:45:33.120,152.4216,8567.0078,2.2644,-0.2489,0.8635,0.104,2400.0,2340.0,0.0457,-1.5041,3.3415,10.921 2019-06-03 15:45:33.140,152.4863,8567.0928,2.2644,-0.2489,1.257,-0.0365,2400.0,2340.0,0.0135,-1.4591,3.3389,10.921 2019-06-03 15:45:33.160,152.4863,8567.1504,2.257,-0.219,0.8461,0.1403,2400.0,2340.0,-0.0011,-1.4621,3.3468,10.9214 2019-06-03 15:45:33.180,152.4432,8567.207,2.257,-0.219,1.1468,-0.0421,2400.0,2340.0,0.0048,-1.4621,3.3349,10.9214 2019-06-03 15:45:33.200,152.4432,8567.1787,2.247,-0.1663,1.0136,-0.0432,2400.0,2340.0,0.0194,-1.4861,3.3534,10.9251 2019-06-03 15:45:33.220,152.4576,8567.1211,2.2505,-0.146,0.9009,0.1089,2400.0,2340.0,0.034,-1.5071,3.3442,10.9275 2019-06-03 15:45:33.240,152.4935,8567.1504,2.2505,-0.146,1.1531,-0.0582,2400.0,2340.0,0.0545,-1.4951,3.3442,10.9275 2019-06-03 15:45:33.260,152.5007,8567.1504,2.2505,-0.146,0.8365,0.1536,2400.0,2340.0,0.0486,-1.5011,3.3508,10.9275 2019-06-03 15:45:33.280,152.4432,8567.0928,2.2407,-0.1081,0.9955,-0.0227,2400.0,2340.0,0.0486,-1.4981,3.3362,10.9306 2019-06-03 15:45:33.300,152.4504,8567.0645,2.2312,-0.0703,0.9534,-0.0207,2400.0,2340.0,0.0223,-1.4981,3.3376,10.934 2019-06-03 15:45:33.320,152.5654,8567.0928,2.2312,-0.0703,0.9386,0.1034,2400.0,2340.0,0.0252,-1.5011,3.3415,10.934 2019-06-03 15:45:33.340,152.6012,8567.0928,2.2312,-0.0703,1.041,0.0016,2400.0,2340.0,0.0165,-1.5041,3.3402,10.934 2019-06-03 15:45:33.360,152.6012,8567.0928,2.2274,-0.0353,1.0325,0.0847,2400.0,2340.0,0.0194,-1.5101,3.3574,10.9375 2019-06-03 15:45:33.380,152.551,8567.0645,2.2243,0.0033,0.9981,0.0445,2400.0,2340.0,0.0311,-1.5131,3.3402,10.9387 2019-06-03 15:45:33.400,152.5582,8567.0928,2.219,0.0183,1.0014,0.0454,2340.0,2400.0,0.0282,-1.555,3.3455,10.9396 2019-06-03 15:45:33.420,152.5582,8567.1211,2.2152,0.0359,1.0736,0.046,2340.0,2400.0,0.0252,-1.576,3.3495,10.9409 2019-06-03 15:45:33.440,152.5941,8567.207,2.2152,0.0359,0.8964,0.0453,2340.0,2400.0,0.0252,-1.582,3.3402,10.9409 2019-06-03 15:45:33.460,152.6012,8567.207,2.2152,0.0359,1.1712,0.0229,2340.0,2400.0,0.0106,-1.6538,3.3614,10.9409 2019-06-03 15:45:33.480,152.551,8567.1504,2.2104,0.0665,0.7855,0.0625,2340.0,2400.0,0.0106,-1.6688,3.3468,10.9432 2019-06-03 15:45:33.500,152.5654,8567.0078,2.2066,0.0953,0.8853,0.1042,2340.0,2400.0,0.0194,-1.7794,3.3508,10.945 2019-06-03 15:45:33.520,152.5438,8567.0361,2.2066,0.0953,1.1006,-0.035,2340.0,2400.0,0.0165,-1.7913,3.3468,10.945 2019-06-03 15:45:33.540,152.6012,8567.0928,2.2066,0.0953,0.9304,0.1147,2340.0,2400.0,0.0106,-1.842,3.3534,10.945 2019-06-03 15:45:33.560,152.6012,8567.1504,2.2024,0.1195,1.0244,-0.0707,2340.0,2400.0,0.0048,-1.8659,3.3693,10.946 2019-06-03 15:45:33.580,152.5582,8567.1787,2.1945,0.1345,0.8972,0.1592,2340.0,2400.0,0.0018,-1.8659,3.3548,10.9447 2019-06-03 15:45:33.600,152.551,8567.1787,2.1956,0.1438,0.919,0.1299,2340.0,2400.0,-0.0011,-1.8629,3.3574,10.9453 2019-06-03 15:45:33.620,152.5654,8567.1504,2.1896,0.1459,1.0547,-0.0698,2340.0,2400.0,-0.0069,-1.8659,3.3561,10.9446 2019-06-03 15:45:33.640,152.6012,8567.1504,2.1896,0.1459,0.9874,0.1113,2340.0,2400.0,-0.0069,-1.8629,3.3601,10.9446 2019-06-03 15:45:33.660,152.6084,8567.1211,2.1896,0.1459,0.9789,-0.0326,2340.0,2400.0,-0.0332,-1.8689,3.376,10.9446 2019-06-03 15:45:33.680,152.5582,8567.1504,2.1868,0.1505,1.0074,0.1265,2340.0,2400.0,-0.0215,-1.845,3.368,10.9444 2019-06-03 15:45:33.700,152.5654,8567.1504,2.1822,0.1496,0.9896,0.1114,2340.0,2400.0,-0.0186,-1.857,3.3826,10.944 2019-06-03 15:45:33.720,152.5438,8567.1787,2.1822,0.1496,0.896,0.0084,2340.0,2400.0,-0.0245,-1.857,3.3799,10.944 2019-06-03 15:45:33.740,152.6012,8567.207,2.1822,0.1496,1.0577,0.0609,2340.0,2400.0,-0.0157,-1.845,3.3826,10.944 2019-06-03 15:45:33.760,152.6012,8567.2354,2.1715,0.1428,0.9101,-0.0055,2340.0,2400.0,-0.0274,-1.848,3.3945,10.9408 2019-06-03 15:45:33.780,152.5582,8567.2354,2.1674,0.1354,1.1523,0.0778,2340.0,2400.0,-0.0128,-1.842,3.3865,10.9364 2019-06-03 15:45:33.800,152.5582,8567.2354,2.1667,0.1295,1.0617,0.0547,2340.0,2400.0,-0.0128,-1.8361,3.3932,10.9342 2019-06-03 15:45:33.820,152.551,8567.2354,2.1638,0.122,0.9079,0.0229,2340.0,2400.0,-0.004,-1.8331,3.3958,10.9323 2019-06-03 15:45:33.840,152.5941,8567.2637,2.1638,0.122,1.0976,0.0247,2340.0,2400.0,-0.0098,-1.8331,3.3892,10.9323 2019-06-03 15:45:33.860,152.6084,8567.2354,2.1638,0.122,0.8986,0.0674,2340.0,2400.0,-0.0128,-1.8361,3.413,10.9323 2019-06-03 15:45:33.880,152.5438,8567.2354,2.1623,0.1119,1.031,0.001,2340.0,2400.0,-0.0186,-1.8361,3.3945,10.9278 2019-06-03 15:45:33.900,152.5654,8567.1211,2.1565,0.0944,1.0795,-0.0207,2340.0,2400.0,-0.0128,-1.8271,3.4038,10.9246 2019-06-03 15:45:33.920,152.6873,8567.0361,2.1565,0.0944,1.0314,0.1166,2340.0,2400.0,-0.0186,-1.8301,3.3998,10.9246 2019-06-03 15:45:33.940,152.716,8567.0361,2.1565,0.0944,1.0514,-0.0052,2340.0,2400.0,-0.0157,-1.8062,3.4011,10.9246 2019-06-03 15:45:33.960,152.716,8567.1211,2.1544,0.078,0.9885,0.1262,2340.0,2400.0,-0.0186,-1.8092,3.4196,10.9202 2019-06-03 15:45:33.980,152.6658,8567.1504,2.1544,0.078,0.9112,-0.017,2340.0,2400.0,0.0048,-1.8122,3.4038,10.9202 2019-06-03 15:45:34.000,152.6658,8567.1787,2.1515,0.0496,0.9974,-0.0111,2340.0,2400.0,0.0048,-1.8032,3.3985,10.9106 2019-06-03 15:45:34.020,152.673,8567.1504,2.1563,0.0434,1.01,0.1285,2340.0,2400.0,-0.004,-1.8062,3.4077,10.9094 2019-06-03 15:45:34.040,152.7232,8567.0928,2.1563,0.0434,0.845,-0.0287,2340.0,2400.0,-0.004,-1.8032,3.4051,10.9094 2019-06-03 15:45:34.060,152.716,8567.0645,2.1563,0.0434,1.1575,0.1131,2340.0,2400.0,-0.0069,-1.8032,3.4236,10.9094 2019-06-03 15:45:34.080,152.673,8567.1211,2.1535,0.0216,0.8513,0.004,2340.0,2400.0,-0.0011,-1.8003,3.4077,10.9038 2019-06-03 15:45:34.100,152.6802,8567.0361,2.1541,-0.0017,0.9715,0.0182,2340.0,2400.0,0.0194,-1.8032,3.4091,10.8987 2019-06-03 15:45:34.120,152.6586,8567.0928,2.1541,-0.0017,1.1276,0.0735,2340.0,2400.0,0.0194,-1.8062,3.4143,10.8987 2019-06-03 15:45:34.140,152.7088,8567.1504,2.1541,-0.0017,0.879,0.0345,2340.0,2400.0,0.0135,-1.8003,3.3971,10.8987 2019-06-03 15:45:34.160,152.7088,8567.1787,2.1586,-0.0252,1.1043,0.0341,2340.0,2400.0,0.0077,-1.8032,3.421,10.894 2019-06-03 15:45:34.180,152.673,8567.1504,2.1586,-0.0252,0.8842,0.0594,2340.0,2400.0,-0.0069,-1.8003,3.4038,10.894 2019-06-03 15:45:34.200,152.6802,8567.1504,2.1569,-0.0654,0.9401,0.0942,2340.0,2400.0,0.0048,-1.8003,3.3998,10.8883 2019-06-03 15:45:34.220,152.673,8567.1211,2.1571,-0.0776,1.2222,-0.0186,2340.0,2400.0,0.0077,-1.8032,3.4091,10.8854 2019-06-03 15:45:34.240,152.7088,8567.1787,2.1571,-0.0776,0.9841,0.1116,2340.0,2400.0,0.0223,-1.8032,3.3971,10.8854 2019-06-03 15:45:34.260,152.7232,8567.207,2.1571,-0.0776,1.1024,0.0118,2340.0,2400.0,0.0165,-1.8032,3.4077,10.8854 2019-06-03 15:45:34.280,152.6658,8567.207,2.1563,-0.103,0.8668,0.0997,2340.0,2400.0,0.0048,-1.8032,3.4104,10.8821 2019-06-03 15:45:34.300,152.6802,8567.0928,2.1584,-0.1282,0.9593,0.1021,2340.0,2400.0,-0.0011,-1.8003,3.3998,10.8791 2019-06-03 15:45:34.320,152.7948,8567.0928,2.1584,-0.1282,1.0547,-0.0177,2340.0,2400.0,-0.0128,-1.8003,3.4091,10.8791 2019-06-03 15:45:34.340,152.8306,8567.0928,2.1584,-0.1282,0.9837,0.1387,2340.0,2400.0,0.0048,-1.8003,3.3905,10.8791 2019-06-03 15:45:34.360,152.8163,8567.1504,2.1587,-0.1559,0.9977,-0.0135,2340.0,2400.0,-0.004,-1.8003,3.4011,10.8767 2019-06-03 15:45:34.380,152.7876,8567.1787,2.1587,-0.1559,1.0835,0.0948,2340.0,2400.0,-0.0011,-1.7973,3.4051,10.8767 2019-06-03 15:45:34.400,152.7733,8567.207,2.1564,-0.1967,1.0599,0.0676,2400.0,2340.0,0.0018,-1.7943,3.3998,10.8743 2019-06-03 15:45:34.420,152.7876,8567.1504,2.1526,-0.2113,0.9667,-0.011,2400.0,2340.0,-0.0157,-1.7973,3.4077,10.8735 2019-06-03 15:45:34.440,152.8234,8567.1787,2.1526,-0.2113,1.0588,0.1079,2400.0,2340.0,-0.004,-1.7794,3.4051,10.8735 2019-06-03 15:45:34.460,152.8306,8567.1504,2.1526,-0.2113,0.9201,0.0265,2400.0,2340.0,0.0018,-1.7644,3.4117,10.8735 2019-06-03 15:45:34.480,152.7876,8567.1504,2.1517,-0.2374,1.1908,0.0748,2400.0,2340.0,0.0194,-1.7644,3.4091,10.8711 2019-06-03 15:45:34.500,152.7876,8567.0928,2.1477,-0.2669,1.2015,0.062,2400.0,2340.0,0.0223,-1.7644,3.3998,10.8686 2019-06-03 15:45:34.520,152.7733,8567.0928,2.1477,-0.2669,0.7762,0.0206,2400.0,2340.0,0.0194,-1.7644,3.4263,10.8686 2019-06-03 15:45:34.540,152.8306,8567.1504,2.1477,-0.2669,1.1424,0.0756,2400.0,2340.0,0.0135,-1.7614,3.4157,10.8686 2019-06-03 15:45:34.560,152.8234,8567.207,2.1427,-0.2922,0.8554,0.0479,2400.0,2340.0,0.0018,-1.7674,3.4302,10.8674 2019-06-03 15:45:34.580,152.7805,8567.2637,2.1427,-0.2922,1.0943,0.0674,2400.0,2340.0,-0.004,-1.7644,3.421,10.8674 2019-06-03 15:45:34.600,152.7876,8567.207,2.1375,-0.3277,1.1631,0.0342,2400.0,2340.0,0.0106,-1.7614,3.4223,10.8669 2019-06-03 15:45:34.620,152.7876,8567.1211,2.1361,-0.3403,0.8753,0.0528,2400.0,2340.0,0.0106,-1.7584,3.4236,10.8661 2019-06-03 15:45:34.640,152.8234,8567.1504,2.1361,-0.3403,1.1316,0.0113,2400.0,2340.0,0.0282,-1.6927,3.4263,10.8661 2019-06-03 15:45:34.660,152.8378,8567.1787,2.1361,-0.3403,0.919,0.1357,2400.0,2340.0,0.0194,-1.6807,3.4316,10.8661 2019-06-03 15:45:34.680,152.7805,8567.2354,2.1324,-0.3639,1.0691,-0.05,2400.0,2340.0,0.0077,-1.6688,3.4302,10.865 2019-06-03 15:45:34.700,152.7876,8567.1787,2.1242,-0.3876,1.0869,-0.075,2400.0,2340.0,0.0018,-1.6658,3.4223,10.8648 2019-06-03 15:45:34.720,152.9165,8567.2354,2.1242,-0.3876,1.0029,0.132,2400.0,2340.0,0.0048,-1.6658,3.4329,10.8648 2019-06-03 15:45:34.740,152.9451,8567.1787,2.1242,-0.3876,1.0536,-0.0329,2400.0,2340.0,0.0223,-1.6359,3.4302,10.8648 2019-06-03 15:45:34.760,152.9308,8567.2354,2.1241,-0.4037,0.9608,0.1499,2400.0,2340.0,0.0457,-1.6149,3.4488,10.8666 2019-06-03 15:45:34.780,152.9022,8567.292,2.1243,-0.4159,0.9489,-0.0376,2400.0,2340.0,0.0457,-1.6329,3.4408,10.8675 2019-06-03 15:45:34.800,152.895,8567.3203,2.119,-0.424,0.9504,-0.016,2400.0,2340.0,0.0457,-1.6269,3.4395,10.868 2019-06-03 15:45:34.820,152.9022,8567.292,2.1222,-0.4231,1.1867,0.0939,2400.0,2340.0,0.0165,-1.6239,3.4435,10.8698 2019-06-03 15:45:34.840,152.9308,8567.2637,2.1222,-0.4231,0.8931,0.0318,2400.0,2340.0,0.0165,-1.6239,3.4355,10.8698 2019-06-03 15:45:34.860,152.9451,8567.1787,2.1222,-0.4231,1.1039,0.1241,2400.0,2340.0,0.0311,-1.6269,3.4501,10.8698 2019-06-03 15:45:34.880,152.9093,8567.0361,2.1156,-0.4308,0.8639,-0.0262,2400.0,2340.0,0.0486,-1.6209,3.4488,10.8732 2019-06-03 15:45:34.900,152.9093,8567.0078,2.1179,-0.432,0.8295,-0.0,2400.0,2340.0,0.0486,-1.6239,3.4302,10.8763 2019-06-03 15:45:34.920,153.0094,8567.0361,2.1179,-0.432,1.2067,0.0819,2400.0,2340.0,0.0369,-1.6269,3.4474,10.8763 2019-06-03 15:45:34.940,153.0451,8567.0361,2.1179,-0.432,0.8435,0.0368,2400.0,2340.0,0.034,-1.6209,3.4501,10.8763 2019-06-03 15:45:34.960,153.0451,8567.1211,2.1242,-0.4358,1.2455,0.0601,2400.0,2340.0,0.0223,-1.6209,3.4567,10.8798 2019-06-03 15:45:34.980,153.0094,8567.1787,2.1285,-0.4344,0.7211,0.0306,2400.0,2340.0,0.0223,-1.6329,3.4567,10.8811 2019-06-03 15:45:35.000,153.0022,8567.207,2.126,-0.4347,0.8091,0.0749,2400.0,2340.0,0.0428,-1.6029,3.4408,10.8822 2019-06-03 15:45:35.020,153.0165,8567.1787,2.1261,-0.433,1.2796,-0.0075,2400.0,2340.0,0.0428,-1.6119,3.4527,10.8824 2019-06-03 15:45:35.040,153.0451,8567.1787,2.1261,-0.433,0.7932,0.1209,2400.0,2340.0,0.0428,-1.5999,3.4488,10.8824 2019-06-03 15:45:35.060,153.0594,8567.1504,2.1261,-0.433,1.2119,-0.0401,2400.0,2340.0,0.0398,-1.585,3.4607,10.8824 2019-06-03 15:45:35.080,153.0022,8566.1016,2.1309,-0.4324,0.818,0.1247,2400.0,2340.0,0.0252,-1.5969,3.4633,10.8846 2019-06-03 15:45:35.100,152.9951,8565.1943,2.1382,-0.4246,0.8713,0.1605,2400.0,2340.0,0.0282,-1.5969,3.4474,10.8868 2019-06-03 15:45:35.120,152.8735,8564.3164,2.1382,-0.4246,1.0599,-0.0876,2400.0,2340.0,0.034,-1.5999,3.4554,10.8868 2019-06-03 15:45:35.140,152.9522,8562.9844,2.1382,-0.4246,0.9726,0.1595,2400.0,2340.0,0.0749,-1.6149,3.4541,10.8868 2019-06-03 15:45:35.160,152.9379,8562.1338,2.1416,-0.4182,1.1309,-0.0556,2400.0,2340.0,0.0603,-1.6119,3.4527,10.8884 2019-06-03 15:45:35.180,152.895,8560.8301,2.1438,-0.4121,1.0196,0.1331,2400.0,2340.0,0.0545,-1.6119,3.47,10.8864 2019-06-03 15:45:35.200,152.895,8560.0654,2.1507,-0.4074,1.0088,0.1137,2400.0,2340.0,0.0311,-1.6119,3.4355,10.8862 2019-06-03 15:45:35.220,152.9022,8559.2715,2.1504,-0.4062,0.9042,-0.0267,2400.0,2340.0,0.034,-1.6149,3.462,10.8855 2019-06-03 15:45:35.240,152.9379,8558.5625,2.1504,-0.4062,1.1209,0.0936,2400.0,2340.0,0.0428,-1.6119,3.4408,10.8855 2019-06-03 15:45:35.260,152.9451,8558.5908,2.1504,-0.4062,0.9186,-0.0054,2400.0,2340.0,0.0749,-1.6119,3.4554,10.8855 2019-06-03 15:45:35.280,152.895,8558.5908,2.1575,-0.3979,1.1886,0.1024,2400.0,2340.0,0.0662,-1.6119,3.4554,10.8845 2019-06-03 15:45:35.300,152.9093,8558.5059,2.164,-0.3891,1.2666,0.1177,2400.0,2340.0,0.0778,-1.6089,3.4461,10.8814 2019-06-03 15:45:35.320,153.0165,8558.5342,2.164,-0.3891,0.8143,0.0123,2400.0,2340.0,0.0428,-1.6329,3.4527,10.8814 2019-06-03 15:45:35.340,153.0522,8558.6201,2.164,-0.3891,1.1816,0.0442,2400.0,2340.0,0.0311,-1.6299,3.4474,10.8814 2019-06-03 15:45:35.360,153.0379,8558.6484,2.1647,-0.3819,0.7555,0.061,2400.0,2340.0,0.0252,-1.6269,3.4527,10.8789 2019-06-03 15:45:35.380,153.0022,8558.6201,2.1735,-0.374,1.3458,0.0258,2400.0,2340.0,0.0282,-1.6299,3.4554,10.8746 2019-06-03 15:45:35.400,153.0094,8558.6484,2.1769,-0.3668,1.2696,0.0164,2400.0,2400.0,0.0515,-1.6299,3.4514,10.8728 2019-06-03 15:45:35.420,153.0094,8558.5908,2.1806,-0.3643,0.8587,0.0936,2400.0,2400.0,0.0632,-1.6299,3.4567,10.8711 2019-06-03 15:45:35.440,153.0522,8558.5625,2.1806,-0.3643,1.2722,-0.037,2400.0,2400.0,0.0662,-1.6299,3.4461,10.8711 2019-06-03 15:45:35.460,153.0522,8558.5342,2.1806,-0.3643,0.8306,0.1335,2400.0,2400.0,0.0574,-1.6269,3.4461,10.8711 2019-06-03 15:45:35.480,153.0022,8558.5059,2.1851,-0.3556,1.2681,-0.0654,2400.0,2400.0,0.0486,-1.6299,3.4567,10.8677 2019-06-03 15:45:35.500,153.0022,8558.4492,2.1865,-0.3502,1.1483,-0.0594,2400.0,2400.0,0.0545,-1.6329,3.4501,10.8619 2019-06-03 15:45:35.520,152.9879,8558.4775,2.1865,-0.3502,0.9112,0.1723,2400.0,2400.0,0.0515,-1.6299,3.4488,10.8619 2019-06-03 15:45:35.540,153.0522,8558.4775,2.1865,-0.3502,1.1512,-0.0987,2400.0,2400.0,0.0457,-1.6299,3.4488,10.8619 2019-06-03 15:45:35.560,153.0379,8558.4775,2.1918,-0.3449,0.9678,0.1787,2400.0,2400.0,0.0486,-1.6269,3.4501,10.856 2019-06-03 15:45:35.580,153.0094,8558.4775,2.1997,-0.3377,1.0847,-0.0712,2400.0,2400.0,0.0398,-1.6329,3.4541,10.8503 2019-06-03 15:45:35.600,153.0022,8558.5342,2.1961,-0.3368,0.9952,-0.0555,2400.0,2400.0,0.0369,-1.6329,3.4448,10.8462 2019-06-03 15:45:35.620,153.0022,8558.5342,2.2047,-0.3289,1.0532,0.166,2400.0,2400.0,0.0282,-1.6299,3.4395,10.8431 2019-06-03 15:45:35.640,153.0451,8558.5908,2.2047,-0.3289,1.0074,-0.0762,2400.0,2400.0,0.0457,-1.6299,3.4527,10.8431 2019-06-03 15:45:35.660,153.0451,8558.5908,2.2047,-0.3289,1.1139,0.1534,2400.0,2400.0,0.0398,-1.6329,3.4369,10.8431 2019-06-03 15:45:35.680,153.0022,8558.5625,2.2019,-0.3256,0.936,-0.0591,2400.0,2400.0,0.0398,-1.6299,3.4408,10.8357 2019-06-03 15:45:35.700,153.0165,8558.5342,2.2038,-0.3218,0.8276,-0.0245,2400.0,2400.0,0.0369,-1.6299,3.4249,10.8278 2019-06-03 15:45:35.720,153.1378,8558.5059,2.2038,-0.3218,1.2141,0.1444,2400.0,2400.0,0.0428,-1.6299,3.4355,10.8278 2019-06-03 15:45:35.740,153.1664,8558.4775,2.2038,-0.3218,0.8339,-0.0295,2400.0,2400.0,0.0457,-1.6299,3.4395,10.8278 2019-06-03 15:45:35.760,153.1593,8558.5342,2.2106,-0.3121,1.2211,0.0695,2400.0,2400.0,0.0574,-1.6299,3.4302,10.8203 2019-06-03 15:45:35.780,153.1165,8558.5625,2.2144,-0.3044,0.7126,0.0363,2400.0,2400.0,0.0428,-1.6299,3.4289,10.8146 2019-06-03 15:45:35.800,153.1165,8558.6201,2.2117,-0.3039,0.8213,0.0923,2400.0,2400.0,0.0428,-1.6299,3.417,10.8105 2019-06-03 15:45:35.820,153.1236,8558.5908,2.2103,-0.2998,1.3483,0.0392,2400.0,2400.0,0.0398,-1.6299,3.4223,10.8062 2019-06-03 15:45:35.840,153.1735,8558.5908,2.2103,-0.2998,0.8665,0.0807,2400.0,2400.0,0.034,-1.6418,3.4196,10.8062 2019-06-03 15:45:35.860,153.1664,8558.4775,2.2103,-0.2998,1.2511,-0.0236,2400.0,2400.0,0.0428,-1.6388,3.3985,10.8062 2019-06-03 15:45:35.880,153.1165,8558.4775,2.2109,-0.2981,0.8073,0.1176,2400.0,2400.0,0.0515,-1.6718,3.4011,10.7977 2019-06-03 15:45:35.900,153.1307,8558.4775,2.2151,-0.2912,0.842,0.1378,2400.0,2400.0,0.0574,-1.6688,3.3932,10.7909 2019-06-03 15:45:35.920,153.1093,8558.4775,2.2151,-0.2912,1.2618,-0.0348,2400.0,2400.0,0.0515,-1.6688,3.3985,10.7909 2019-06-03 15:45:35.940,153.1664,8558.5342,2.2151,-0.2912,0.8469,0.1381,2400.0,2400.0,0.0282,-1.6927,3.3958,10.7909 2019-06-03 15:45:35.960,153.1593,8558.5342,2.2163,-0.2854,1.2045,-0.0735,2400.0,2400.0,0.0282,-1.6897,3.3879,10.7834 2019-06-03 15:45:35.980,153.1093,8558.5059,2.2109,-0.281,0.9271,0.1369,2400.0,2400.0,0.0252,-1.6957,3.3773,10.7738 2019-06-03 15:45:36.000,153.1165,8558.5059,2.2149,-0.2775,0.9652,0.1473,2400.0,2400.0,0.0545,-1.6897,3.3733,10.7713 2019-06-03 15:45:36.020,153.1236,8558.5625,2.208,-0.2772,1.1878,-0.0576,2400.0,2400.0,0.0545,-1.6897,3.368,10.7675 2019-06-03 15:45:36.040,153.1593,8558.6201,2.208,-0.2772,0.9282,0.1849,2400.0,2400.0,0.072,-1.6897,3.3879,10.7675 2019-06-03 15:45:36.060,153.1664,8558.6201,2.208,-0.2772,1.0602,-0.0869,2400.0,2400.0,0.0603,-1.6747,3.3601,10.7675 2019-06-03 15:45:36.080,153.1236,8558.6201,2.2072,-0.2717,1.081,0.1491,2400.0,2400.0,0.0311,-1.6658,3.3654,10.7607 2019-06-03 15:45:36.100,153.1236,8558.5342,2.2057,-0.2645,1.0344,0.1312,2400.0,2400.0,0.0223,-1.6658,3.3548,10.7551 2019-06-03 15:45:36.120,153.1165,8558.5059,2.2057,-0.2645,1.0532,-0.0357,2400.0,2400.0,0.0369,-1.6718,3.3733,10.7551 2019-06-03 15:45:36.140,153.1664,8558.5059,2.2057,-0.2645,1.0236,0.1276,2400.0,2400.0,0.0515,-1.6658,3.3879,10.7551 2019-06-03 15:45:36.160,153.1664,8558.5625,2.1948,-0.2606,0.865,-0.0115,2400.0,2400.0,0.0545,-1.6688,3.3707,10.7497 2019-06-03 15:45:36.180,153.1236,8558.5625,2.1948,-0.2606,1.2662,0.0962,2400.0,2400.0,0.0369,-1.6688,3.3879,10.7497 2019-06-03 15:45:36.200,153.1165,8558.5908,2.1848,-0.2555,1.1827,0.0828,2400.0,2400.0,0.0428,-1.6658,3.3786,10.743 2019-06-03 15:45:36.220,153.1236,8558.5625,2.178,-0.2574,0.9205,0.025,2400.0,2400.0,0.0398,-1.6688,3.3932,10.7411 2019-06-03 15:45:36.240,153.1664,8558.5342,2.178,-0.2574,1.2385,0.0513,2400.0,2400.0,0.0369,-1.6688,3.4196,10.7411 2019-06-03 15:45:36.260,153.1664,8558.5059,2.178,-0.2574,0.7773,0.0519,2400.0,2400.0,0.0457,-1.6658,3.4236,10.7411 2019-06-03 15:45:36.280,153.1165,8558.5059,2.176,-0.2485,1.1767,-0.0002,2400.0,2400.0,0.034,-1.6688,3.4223,10.7378 2019-06-03 15:45:36.300,153.1236,8558.5059,2.1644,-0.2456,1.2341,-0.0076,2400.0,2400.0,0.0398,-1.6688,3.4289,10.7353 2019-06-03 15:45:36.320,153.1093,8558.5059,2.1644,-0.2456,0.8716,0.0872,2400.0,2400.0,0.034,-1.6688,3.417,10.7353 2019-06-03 15:45:36.340,153.1593,8558.5908,2.1644,-0.2456,1.1168,-0.0055,2400.0,2400.0,0.0398,-1.6688,3.4527,10.7353 2019-06-03 15:45:36.360,153.1593,8558.5908,2.1584,-0.2463,0.8025,0.1027,2400.0,2400.0,0.0398,-1.6718,3.4369,10.7331 2019-06-03 15:45:36.380,153.1165,8558.5908,2.153,-0.2435,1.264,-0.0309,2400.0,2400.0,0.034,-1.6718,3.4448,10.7342 2019-06-03 15:45:36.400,153.1165,8558.5908,2.1513,-0.2432,1.1745,-0.0465,2340.0,2340.0,0.034,-1.6688,3.4302,10.7341 2019-06-03 15:45:36.420,153.1378,8558.5342,2.1525,-0.2434,0.8875,0.143,2340.0,2340.0,0.0369,-1.6718,3.4395,10.7343 2019-06-03 15:45:36.440,153.1664,8558.5625,2.1525,-0.2434,1.1176,-0.0354,2340.0,2340.0,0.0369,-1.6658,3.4686,10.7343 2019-06-03 15:45:36.460,153.1735,8558.5059,2.1525,-0.2434,0.9504,0.1312,2340.0,2340.0,0.0515,-1.6718,3.4527,10.7343 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/axis_function.vsz0000664000175000017500000000362414365252232016364 0ustar00jssjss# Veusz saved document (version 1.25.1) # Saved at 2017-04-29T15:04:45.027651 Set('width', '12cm') Set('height', '12cm') Set('colorTheme', u'default1') Set('StyleSheet/Font/font', u'DejaVu Sans') Set('StyleSheet/Font/size', u'16pt') Set('StyleSheet/axis/TickLabels/color', u'darkgray') Set('StyleSheet/function/steps', 100) Set('StyleSheet/function/Line/width', u'2pt') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', '1.7cm') Set('rightMargin', '0.2cm') Set('topMargin', '0.2cm') Set('bottomMargin', '1.7cm') Add('axis', name='x', autoadd=False) To('x') Set('label', u'Linear axis') Set('max', 2.0) To('..') Add('axis-function', name=u'y', autoadd=False) To(u'y') Set('function', u't**2') Set('label', u'Squared axis') Set('mint', 0.0) Set('direction', u'vertical') Set('TickLabels/color', u'darkgrey') Set('TickLabels/rotate', u'45') Set('GridLines/style', u'solid') Set('GridLines/hide', False) Set('MinorGridLines/style', u'solid') Set('MinorGridLines/hide', False) To('..') Add('function', name=u'xsquared', autoadd=False) To(u'xsquared') Set('function', u'x**2') To('..') Add('function', name=u'xlinear', autoadd=False) Add('function', name=u'xcubed', autoadd=False) To(u'xcubed') Set('function', u'x**3') To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'\\emph{x}^2') Set('xPos', [0.8986329307542781]) Set('yPos', [0.5768936617698607]) Set('Text/size', u'20pt') Set('Text/color', u'theme1') To('..') Add('label', name='label2', autoadd=False) To('label2') Set('label', u'\\emph{x}^3') Set('xPos', [0.8986329307542781]) Set('yPos', [0.8]) Set('Text/size', u'20pt') Set('Text/color', u'theme3') To('..') Add('label', name='label3', autoadd=False) To('label3') Set('label', u'\\emph{x}^1') Set('xPos', [0.8986329307542781]) Set('yPos', [0.4]) Set('Text/size', u'20pt') Set('Text/color', u'theme2') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/axis_function_linked.csv0000664000175000017500000002471614365252232017670 0ustar00jssjssz Bmag +- colour 0.0500 17.79 0.05 0.09 0.0529 17.61 0.05 -0.01 0.0251 16.74 0.09 0.21 0.0701 18.38 0.09 0.04 0.0627 18.18 0.05 -0.03 0.0876 19.40 0.11 0.03 0.0786 18.28 0.03 -0.04 0.0172 15.75 0.13 0.03 0.0422 17.29 0.06 -0.01 0.0453 17.59 0.05 0.10 0.0196 15.07 0.11 -0.06 0.1009 19.30 0.03 -0.05 0.0135 14.44 0.16 -0.05 0.0273 16.24 0.09 0.15 0.0746 18.39 0.05 -0.02 0.0265 16.03 0.08 -0.01 0.0499 17.73 0.04 0.00 0.0306 16.20 0.08 0.00 0.0285 16.07 0.08 -0.12 0.0589 18.04 0.09 -0.03 0.0365 16.53 0.10 -0.06 0.0603 17.47 0.14 -0.25 0.0111 15.09 0.20 0.22 0.0461 18.28 0.23 0.40 0.0139 14.16 0.17 -0.05 0.0324 16.33 0.13 0.05 0.0561 17.66 0.07 -0.02 0.0387 17.50 0.14 0.24 0.0397 17.26 0.18 0.08 0.0163 15.03 0.13 0.11 0.0154 15.22 0.14 0.17 0.0144 15.26 0.15 0.22 0.0305 16.18 0.07 -0.04 0.0245 15.51 0.09 -0.06 0.0240 15.94 0.09 0.10 0.0260 15.99 0.09 0.04 0.0139 14.81 0.16 0.07 0.0125 16.45 0.20 0.41 0.0104 13.93 0.21 -0.02 0.0087 14.84 0.25 1.08 0.0165 17.04 0.16 0.53 0.0266 16.72 0.11 0.08 0.0489 17.80 0.13 0.08 0.0243 16.30 0.10 0.11 0.0152 14.77 0.15 -0.01 0.0357 17.05 0.11 0.02 0.0065 13.23 0.33 0.00 0.0117 16.69 0.19 0.78 0.0043 13.10 0.51 0.13 0.0050 13.29 0.43 0.12 0.0488 17.03 0.05 0.01 0.0220 15.87 0.14 0.07 0.0144 15.26 0.18 0.31 0.0275 16.65 0.08 0.12 0.0070 12.94 0.31 -0.01 0.0086 14.19 0.26 0.24 0.1244 19.53 0.03 -0.08 0.0030 16.89 0.72 1.61 0.0360 16.62 0.07 0.03 0.0167 15.35 0.14 0.22 0.0163 15.82 0.13 0.37 0.0180 15.22 0.12 -0.07 0.0299 16.17 0.12 0.02 0.0066 14.84 0.33 0.49 0.0218 15.84 0.11 0.08 0.0164 15.33 0.13 0.05 0.0232 16.53 0.10 0.17 0.0365 17.09 0.07 0.05 0.0193 16.94 0.11 0.43 0.0176 15.59 0.17 0.17 0.0128 15.44 0.18 0.05 0.0135 14.39 0.16 0.12 0.0315 16.78 0.07 0.06 0.0096 13.80 0.23 0.10 0.0235 16.10 0.10 0.05 0.0167 14.81 0.13 0.02 0.0537 17.64 0.06 0.08 0.0077 13.83 0.28 0.12 0.0156 17.21 0.14 0.49 0.0170 15.70 0.13 0.11 0.0102 15.31 0.21 0.29 0.0279 16.05 0.08 0.10 0.0172 15.10 0.13 0.05 0.0061 15.40 0.36 0.56 0.0105 14.32 0.21 0.12 0.0300 16.83 0.08 0.03 0.0096 14.44 0.23 0.16 0.0094 13.95 0.23 0.24 0.0166 15.31 0.13 0.04 0.0133 15.09 0.17 0.09 0.0201 15.83 0.22 0.18 0.0088 14.20 0.25 0.22 0.0380 17.05 0.14 0.02 0.0113 14.14 0.29 0.12 0.0258 16.24 0.18 0.06 0.0201 16.16 0.18 0.19 0.0056 14.71 0.40 0.30 0.0120 14.61 0.24 0.09 0.0170 16.33 0.15 0.21 0.0160 15.88 0.14 0.38 0.0150 14.69 0.15 -0.02 0.0095 14.13 0.23 0.10 0.0544 17.89 0.06 0.07 0.1561 19.97 0.03 -0.01 0.0393 16.78 0.06 0.01 0.1241 19.76 0.05 0.21 0.1441 20.43 0.04 0.12 0.1299 19.60 0.03 0.01 0.0784 18.39 0.03 0.00 0.6200 23.50 0.09 -0.12 0.5700 23.40 0.07 -0.06 0.3000 22.03 0.10 0.07 0.3800 22.64 0.05 -0.10 0.4300 22.61 0.05 -0.21 0.2400 21.60 0.08 0.18 0.3000 21.53 0.38 0.05 0.2400 20.99 0.03 -0.10 0.4400 22.80 0.06 -0.04 0.5000 23.14 0.05 -0.04 0.9700 24.72 0.15 0.42 0.4790 22.72 0.06 -0.12 0.4300 22.38 0.19 0.07 0.1600 0.8300 24.34 0.09 0.06 0.4160 22.46 0.07 -0.08 0.5810 23.16 0.09 0.22 0.4500 22.92 0.05 0.05 0.5790 23.57 0.10 -0.16 0.3200 21.89 0.04 0.03 0.6570 23.92 0.12 0.05 0.4300 22.82 0.07 0.97 0.4720 23.13 0.06 0.11 0.3740 23.32 0.15 -0.18 0.5260 23.18 0.06 0.17 0.7630 24.37 0.29 -0.36 0.5800 23.41 0.07 -0.04 0.4300 23.22 0.05 0.25 0.4500 23.25 0.06 0.11 0.8280 24.55 0.17 0.05 0.6560 23.77 0.11 -0.13 0.4950 22.82 0.05 -0.04 0.4900 23.07 0.05 0.23 0.5700 23.31 0.06 -0.01 0.3880 22.55 0.07 -0.14 0.4500 22.61 0.06 -0.16 0.4800 23.06 0.06 0.01 0.6150 23.22 0.10 0.02 0.4000 22.18 0.05 -0.17 0.6550 23.22 0.11 0.16 0.4980 23.66 0.06 -0.01 0.4650 23.37 0.11 0.33 0.4530 23.20 0.06 -0.12 0.4250 22.34 0.15 0.09 0.1800 20.47 0.03 0.00 0.1720 20.23 0.03 0.00 0.3780 22.63 0.11 0.00 0.3720 22.00 0.08 0.00 0.4200 22.89 0.06 0.00 0.3740 21.80 0.08 0.00 0.3540 22.51 0.16 0.00 0.4580 22.83 0.05 0.00 0.6120 0.5500 0.5920 0.6190 0.2780 21.72 0.06 0.09 0.4770 22.72 0.07 0.02 0.9500 24.30 0.10 0.04 1.0570 24.77 0.13 -0.03 0.8160 24.22 0.09 -0.11 0.4550 23.21 0.07 0.00 1.1950 23.88 0.54 -0.85 0.3690 23.45 0.06 0.44 0.5140 23.06 0.24 -0.09 0.4230 22.60 0.05 0.10 0.9460 24.60 0.19 0.30 0.8590 24.73 0.10 -0.10 1.0310 24.47 0.18 0.67 0.9360 24.96 0.16 -0.15 0.5280 22.89 0.08 -0.10 0.6450 24.55 0.17 0.10 0.9780 24.50 0.10 -0.01 0.8850 24.31 0.11 -0.28 0.8150 25.19 0.20 -0.07 0.6980 24.39 0.08 -0.30 0.5680 23.07 0.06 -0.13 0.7110 23.80 0.08 -0.09 0.3396 22.10 0.09 0.07 0.3965 22.47 0.06 0.15 0.8120 24.95 0.09 0.03 0.7990 24.78 0.08 0.38 0.8820 24.91 0.10 0.63 0.8330 24.26 0.09 0.12 0.8740 25.12 0.14 0.37 0.7720 23.75 0.08 -0.19 0.7190 0.5430 23.03 0.06 -0.01 0.7500 23.91 0.07 -0.01 0.6400 23.80 0.08 0.02 0.4300 22.87 0.08 -0.03 0.6400 23.72 0.09 -0.06 0.4970 23.15 0.06 0.07 0.4400 23.20 0.05 0.23 0.3550 22.67 0.05 0.13 0.7800 24.26 0.09 0.08 0.5400 23.16 0.05 -0.02 0.8600 24.48 0.08 0.02 1.0200 24.97 0.10 0.03 1.1400 24.73 0.12 -0.03 0.8540 24.53 0.09 -0.07 1.3700 25.73 0.18 0.06 0.9750 24.88 0.09 0.10 0.9700 25.02 0.09 -0.12 0.7400 23.84 0.12 -0.11 1.3900 25.82 0.17 0.34 0.4600 23.59 0.11 0.24 1.0200 24.83 0.20 0.11 1.1200 25.07 0.11 0.03 1.2300 26.02 0.12 0.14 1.1900 25.76 0.13 0.25 0.8390 24.20 0.14 -0.04 1.0100 25.03 0.10 -0.01 0.5210 23.07 0.08 0.09 0.4750 23.09 0.15 0.00 0.9500 24.66 0.10 0.13 1.3000 25.65 0.14 0.01 1.3050 25.41 0.16 0.05 0.5260 24.04 0.12 0.16 0.2160 22.13 0.08 0.32 0.7350 24.02 0.08 0.04 1.1400 25.35 0.16 0.27 1.5510 26.64 0.26 0.29 1.2650 25.68 0.12 0.15 1.3400 25.77 0.14 0.18 0.9000 24.08 0.09 0.08 0.8400 24.35 0.08 0.02 0.3590 23.97 0.05 0.00 0.9540 24.37 0.24 -0.17 0.6380 23.59 0.06 0.13 1.2300 24.93 0.16 -0.12 1.4000 26.57 1.16 0.00 1.3070 26.54 0.17 0.08 0.6700 24.21 0.10 0.11 0.6400 24.00 0.35 0.12 0.9540 24.50 0.34 -0.17 0.9350 24.31 0.11 0.00 0.4900 0.5720 24.60 0.09 0.03 0.4680 23.86 0.05 0.29 0.8400 24.31 0.09 0.14 0.9600 24.54 0.13 0.07 0.8218 24.34 0.09 0.02 0.9300 24.87 0.17 -0.26 0.4510 23.23 0.04 0.28 0.6100 23.57 0.06 -0.08 0.8300 24.24 0.10 -0.45 0.7070 24.15 0.09 -0.05 0.4150 22.53 0.04 0.01 0.5570 23.00 0.06 -0.18 0.7910 24.21 0.08 0.04 0.6950 24.03 0.08 -0.06 0.6330 23.74 0.07 -0.08 0.2486 21.13 0.08 -0.09 0.5320 23.49 0.06 0.03 0.3310 21.80 0.03 0.04 0.3460 22.45 0.04 0.12 0.9610 24.57 0.15 -0.12 0.6130 24.02 0.06 0.06 0.3402 22.14 0.03 0.08 0.9830 24.93 0.24 0.02 0.7100 24.26 0.08 0.22 0.7300 24.13 0.07 0.01 0.4700 23.47 0.05 0.06 0.6200 23.78 0.06 -0.06 0.5210 23.32 0.06 0.18 0.3690 22.34 0.04 0.00 0.5710 23.26 0.07 0.03 0.6040 23.32 0.06 0.11 0.9271 24.72 0.16 -0.29 0.2850 21.21 0.03 -0.08 0.2912 22.05 0.05 0.26 0.5480 24.12 0.08 0.24 0.8680 24.37 0.14 -0.11 0.4960 22.96 0.05 -0.05 0.8110 24.39 0.09 -0.16 0.7560 24.08 0.09 -0.23 0.8170 24.27 0.08 0.06 0.7520 23.88 0.08 0.02 0.5516 23.47 0.05 0.11 0.3578 22.53 0.04 0.15 1.0100 25.12 0.27 -0.07 0.7410 24.10 0.07 -0.07 0.4300 22.80 0.05 -0.01 0.5260 23.63 0.06 0.02 0.5920 23.40 0.07 0.08 0.9050 24.29 0.12 0.02 0.9490 24.50 0.14 0.09 0.4607 22.56 0.10 0.02 0.3709 22.20 0.04 -0.02 0.8000 24.52 0.10 -0.39 0.6790 24.10 0.07 0.00 0.5817 23.59 0.07 0.01 0.5500 23.36 0.06 0.11 0.8100 24.27 0.10 -0.07 0.9500 24.55 0.13 0.13 0.3373 21.97 0.03 0.07 0.9100 24.71 0.11 -0.20 0.2630 21.68 0.03 0.09 0.6430 23.80 0.07 0.02 0.6910 24.26 0.07 0.07 0.3570 22.42 0.04 0.13 0.7210 23.90 0.08 0.07 0.5810 23.35 0.06 -0.05 0.6268 23.39 0.06 0.01 0.8180 24.65 0.10 0.03 0.4490 22.55 0.05 -0.05 0.6880 23.63 0.07 -0.07 0.8700 24.46 0.11 -0.04 0.5043 22.98 0.05 0.03 0.4627 22.62 0.19 -0.05 0.5910 23.40 0.08 -0.14 0.4260 22.68 0.05 0.08 0.3290 22.50 0.21 0.26 0.5310 23.23 0.06 -0.15 0.5830 23.59 0.10 0.18 0.3330 21.03 0.04 -0.02 0.5190 23.64 0.09 -0.01 0.4010 22.48 0.07 0.08 0.3400 21.91 0.18 0.04 0.4360 22.50 0.05 0.00 0.3630 21.89 0.07 -0.07 0.4360 22.50 0.05 0.09 0.3090 22.36 0.07 0.07 0.3420 22.19 0.06 0.07 0.3320 22.52 0.06 0.17 0.4690 22.55 0.05 -0.05 0.2390 21.70 0.05 0.19 0.3520 22.80 0.06 0.19 0.6120 24.05 0.19 0.68 0.6310 23.39 0.07 0.05 0.6450 23.38 0.07 -0.09 0.4290 22.65 0.05 -0.02 0.4970 22.90 0.07 0.01 0.5390 23.29 0.07 0.03 0.5610 23.09 0.06 -0.05 0.4100 22.37 0.05 0.09 0.4120 23.06 0.11 0.37 0.5990 23.75 0.09 -0.07 0.6190 23.45 0.08 -0.07 0.4220 22.45 0.07 -0.03 0.5400 23.30 0.06 -0.02 0.4010 23.07 0.08 0.07 0.2180 21.32 0.07 0.23 0.6330 23.18 0.09 0.09 0.3830 22.33 0.08 -0.10 0.3020 23.28 0.14 0.57 0.3400 22.27 0.06 0.19 0.5100 22.79 0.07 0.06 0.4210 23.17 0.12 0.30 0.3990 23.46 0.11 0.32 0.4930 22.92 0.06 0.08 0.6870 23.40 0.09 -0.10 0.5020 23.45 0.13 0.18 0.6870 23.52 0.08 0.02 0.4950 22.90 0.06 0.05 0.6030 23.48 0.07 0.02 0.4210 22.44 0.08 -0.05 0.3480 22.65 0.05 0.15 0.2130 22.01 0.09 0.36 0.3440 21.71 0.05 -0.08 0.2710 21.84 0.07 0.15 0.5640 22.89 0.13 -0.12 0.2740 21.94 0.09 0.15 0.5820 23.81 0.07 -0.08 0.6800 23.73 0.07 0.16 0.4010 23.34 0.07 0.29 0.4160 23.93 0.11 0.61 0.2860 22.52 0.12 0.24 0.3140 21.99 0.11 0.03 0.5810 23.28 0.09 -0.34 0.4630 23.09 0.07 0.19 0.3410 21.66 0.08 -0.07 0.6710 23.64 0.09 0.37 0.6310 23.41 0.07 -0.06 0.5220 23.29 0.07 -0.08 0.3680 22.04 0.05 -0.05 0.3090 21.87 0.05 0.08 0.5280 23.27 0.09 0.11 0.2680 22.11 0.06 0.09 0.2160 21.85 0.07 0.19 0.6950 23.93 0.11 -0.02 0.2840 21.66 0.06 -0.01 0.5080 22.91 0.06 0.04 0.7810 24.12 0.11 0.00 0.6130 23.40 0.11 -0.08 0.4250 22.47 0.18 0.07 0.2050 20.94 0.03 0.00 0.2110 20.88 0.10 -0.06 0.1590 20.65 0.03 0.00 0.1810 20.34 0.03 0.00 0.6530 22.90 0.25 -0.08 0.1550 20.21 0.14 0.00 0.5620 22.90 0.15 -0.30 0.2490 22.01 0.24 0.30 0.1840 21.01 0.10 0.00 0.7500 0.2400 0.2660 0.1020 0.2660 0.3440 0.4620 0.4530 0.5480 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/axis_function_linked.vsz0000664000175000017500000000463714365252232017717 0ustar00jssjss# Veusz saved document (version 1.23.1) # Saved at 2015-06-21T15:38:09.523457 ImportFileCSV(u'axis_function_linked.csv', blanksaredata=True, delimiter='\t', linked=True, numericlocale='en_GB') Set('height', u'12cm') Set('StyleSheet/Font/font', u'DejaVu Serif') Set('StyleSheet/axis/TickLabels/size', u'12pt') Set('StyleSheet/axis/GridLines/style', u'solid') Set('StyleSheet/axis/MinorGridLines/style', u'solid') Set('StyleSheet/axis-function/GridLines/style', u'solid') Set('StyleSheet/axis-function/MinorGridLines/style', u'solid') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', '1.7cm') Set('rightMargin', u'0.2cm') Set('topMargin', u'1.2cm') Set('bottomMargin', u'1.2cm') Add('axis', name='x', autoadd=False) To('x') Set('label', u'Redshift') Set('min', 0.0) Set('autoRange', u'exact') Set('MajorTicks/number', 8) To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Maximum B magnitude') Set('log', False) Set('direction', 'vertical') Set('GridLines/hide', False) Set('MinorGridLines/hide', True) To('..') Add('axis-function', name=u'time-bb', autoadd=False) To(u'time-bb') Set('linked', True) Set('function', u'28 / (1+(1+t)**2)') Set('label', u'Time since big bang (Gyr)') Set('linkedaxis', u'x') Set('mint', 0.0) Set('log', True) Set('autoRange', 'exact') Set('otherPosition', 1.0) Set('TickLabels/size', u'12pt') Set('GridLines/hide', False) Set('MinorGridLines/hide', False) To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'Data taken from Kowalski et al. (2008)') Set('xPos', [0.95]) Set('yPos', [0.05]) Set('alignHorz', u'right') To('..') Add('xy', name=u'snmag', autoadd=False) To(u'snmag') Set('xData', u'z') Set('yData', u'Bmag') Set('Color/points', u'colour') Set('Color/min', -0.301) Set('Color/max', 0.302) Set('PlotLine/hide', True) Set('MarkerFill/colorMap', u'spectrum2-step') To('..') Add('colorbar', name='colorbar1', autoadd=False) To('colorbar1') Set('widgetName', u'snmag') Set('label', u'Supernova colour') Set('autoRange', u'exact') Set('Label/size', u'8pt') Set('TickLabels/size', u'8pt') Set('horzPosn', u'centre') Set('vertPosn', u'top') Set('width', u'10cm') To('..') Add('function', name='function1', autoadd=False) To('function1') Set('function', u'20+2*sin(x)') Set('xAxis', u'time-bb') Set('Line/color', u'magenta') Set('Line/width', u'1.5pt') Set('Line/style', u'dotted') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/bar_labels.dat0000664000175000017500000000020514365252232015517 0ustar00jssjssdescriptor name spring,+,- summer,+- "Red" 2 0.2 -0.2 4 0.3 "Green" 3 0.1 -0.1 2.5 0.1 "Blue" 5 0.3 -0.2 3 0.2 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/bar_labels.vsz0000664000175000017500000000500114365252232015570 0ustar00jssjss# Veusz saved document (version 1.17.1) ImportFile(u'bar_labels.dat', u'', linked=True, ignoretext=True) Set('width', '10.5cm') Set('height', '16.2cm') Set('StyleSheet/Font/font', u'Arial') Set('StyleSheet/axis/Label/bold', True) Add('page', name='page1', autoadd=False) To('page1') Add('grid', name='grid1', autoadd=False) To('grid1') Set('columns', 1) Set('scaleRows', [1.0, 0.8]) Set('leftMargin', u'0cm') Set('rightMargin', u'0cm') Set('topMargin', u'0cm') Set('bottomMargin', u'0cm') Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', u'1.7cm') Set('rightMargin', u'1.7cm') Add('axis', name='x', autoadd=False) To('x') Set('label', u'Colour') Set('mode', u'labels') To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Number of balloons') Set('min', 0.0) Set('direction', 'vertical') Set('Label/atEdge', True) To('..') Add('bar', name='bar1', autoadd=False) To('bar1') Set('lengths', (u'spring', u'summer')) Set('keys', (u'Spring', u'Summer')) Set('labels', u'name') Set('errorstyle', u'barends') Set('BarFill/fills', [('solid', u'#aaffff', False), ('solid', u'#00aaff', False)]) Set('ErrorBarLine/width', u'2pt') To('..') Add('key', name='key1', autoadd=False) To('key1') Set('Border/hide', True) Set('horzPosn', 'left') Set('vertPosn', 'top') Set('horzManual', 0.0) Set('vertManual', 0.0) To('..') To('..') Add('graph', name='graph2', autoadd=False) To('graph2') Set('leftMargin', u'1.7cm') Set('rightMargin', u'1.7cm') Set('topMargin', u'0.6cm') Set('bottomMargin', '1.7cm') Add('axis', name='x', autoadd=False) To('x') Set('label', u'Spring') To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Summer') Set('direction', 'vertical') Set('Label/atEdge', True) To('..') Add('axis', name='x2', autoadd=False) To('x2') Set('mode', u'labels') Set('otherPosition', 1.0) To('..') Add('axis', name='y2', autoadd=False) To('y2') Set('mode', u'labels') Set('direction', u'vertical') Set('otherPosition', 1.0) To('..') Add('xy', name='data', autoadd=False) To('data') Set('xData', u'spring') Set('yData', u'summer') Set('labels', u'name') Set('PlotLine/hide', True) Set('MarkerLine/hide', True) Set('MarkerFill/hide', True) Set('ErrorBarLine/hide', True) Set('Label/hide', True) To('..') Add('xy', name='datacopy', autoadd=False) To('datacopy') Set('xData', u'spring') Set('yData', u'summer') Set('markerSize', u'5pt') Set('labels', u'name') Set('xAxis', u'x2') Set('yAxis', u'y2') Set('PlotLine/hide', True) Set('MarkerFill/color', u'#55aaff') Set('Label/hide', True) To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/bar_options.vsz0000664000175000017500000000646114365252232016034 0ustar00jssjss# Veusz saved document (version 1.15.99) # Saved at 2012-06-10T10:13:43.570573 ImportString(u'x(numeric)',''' 1.000000e+00 2.000000e+00 3.000000e+00 4.000000e+00 5.000000e+00 6.000000e+00 7.000000e+00 8.000000e+00 ''') ImportString(u'y1(numeric)',''' 4.000000e+00 2.000000e+00 6.000000e+00 7.000000e+00 3.000000e+00 5.000000e+00 7.000000e+00 2.000000e+00 ''') ImportString(u'y2(numeric)',''' 1.000000e+00 3.000000e+00 2.000000e+00 2.000000e+00 3.000000e+00 3.000000e+00 1.000000e+00 2.000000e+00 ''') ImportString(u'y3(numeric)',''' 5.000000e-01 1.000000e+00 3.000000e-01 5.000000e-01 7.000000e-01 1.000000e+00 1.500000e+00 1.000000e+00 ''') Set('width', '12cm') Set('height', '15cm') Set('StyleSheet/Font/font', u'Georgia') Set('StyleSheet/bar/BarFill/fills', [('solid', '#5555ff', False), ('solid', '#00ffff', False), ('solid', '#00aaff', False)]) Set('StyleSheet/graph/bottomMargin', u'0.3cm') Add('page', name='page1', autoadd=False) To('page1') Add('grid', name='grid1', autoadd=False) To('grid1') Set('columns', 1) Set('leftMargin', u'0cm') Set('rightMargin', u'0cm') Set('topMargin', u'0.cm') Set('bottomMargin', u'1.cm') Add('graph', name=u'stackedarea', autoadd=False) To(u'stackedarea') Add('axis', name='x', autoadd=False) To('x') Set('autoRange', u'exact') To('..') Add('axis', name='y', autoadd=False) To('y') Set('min', 0.0) Set('direction', 'vertical') To('..') Add('key', name='key1', autoadd=False) To('key1') Set('Text/size', u'10pt') Set('horzPosn', 'centre') Set('vertPosn', 'bottom') Set('horzManual', 0.0) Set('vertManual', 0.0) To('..') Add('bar', name='bar1', autoadd=False) To('bar1') Set('lengths', (u'y1', u'y2', u'y3')) Set('posn', u'x') Set('mode', u'stacked-area') Set('keys', (u'Balloons', u'Slinkys', u'Jigsaws')) Set('BarLine/lines', [('solid', u'1.5pt', 'black', False), ('solid', u'1pt', 'black', False), ('solid', u'0.5pt', 'black', False)]) To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'Stacked area') Set('xPos', [0.025]) Set('yPos', [0.95]) Set('alignVert', u'top') To('..') To('..') Add('graph', name=u'stacked', autoadd=False) To(u'stacked') Add('axis', name='x', autoadd=False) To('x') Set('autoRange', u'exact') To('..') Add('axis', name='y', autoadd=False) To('y') Set('min', 0.0) Set('direction', 'vertical') To('..') Add('bar', name=u'bar1', autoadd=False) To(u'bar1') Set('lengths', (u'y1', u'y2', u'y3')) Set('posn', u'x') Set('mode', u'stacked') Set('barfill', 1.0) Set('BarLine/lines', []) To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'Stacked') Set('xPos', [0.025]) Set('yPos', [0.95]) Set('alignVert', u'top') To('..') To('..') Add('graph', name=u'grouped', autoadd=False) To(u'grouped') Add('axis', name='x', autoadd=False) To('x') Set('label', u'Area') Set('autoRange', u'exact') Set('Label/position', u'at-minimum') To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Sales') Set('min', 0.0) Set('direction', 'vertical') Set('Label/position', u'at-minimum') To('..') Add('bar', name=u'bar1', autoadd=False) To(u'bar1') Set('lengths', (u'y1', u'y2', u'y3')) Set('posn', u'x') Set('mode', u'grouped') Set('barfill', 1.0) Set('BarLine/lines', []) To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'Grouped') Set('xPos', [0.025]) Set('yPos', [0.95]) Set('alignVert', u'top') To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/barplots.vsz0000664000175000017500000001152014365252232015333 0ustar00jssjss# Veusz saved document (version 1.25.1) # Saved at 2017-04-30T10:42:41.492556 AddCustom('color', u'theme2', u'#0055ff') AddCustom('color', u'theme1', u'#ff557f') ImportString(u'ds1(numeric)',''' 0.000000e+00 3.894183e-01 7.173561e-01 9.320391e-01 9.995736e-01 9.092974e-01 6.754632e-01 3.349882e-01 -5.837414e-02 -4.425204e-01 -7.568025e-01 -9.516021e-01 -9.961646e-01 -8.834547e-01 -6.312666e-01 -2.794155e-01 1.165492e-01 4.941134e-01 7.936679e-01 9.679197e-01 9.893582e-01 ''') ImportString(u'ds2(numeric)',''' 1.000000e+00 9.210610e-01 6.967067e-01 3.623578e-01 -2.919952e-02 -4.161468e-01 -7.373937e-01 -9.422223e-01 -9.982948e-01 -8.967584e-01 -6.536436e-01 -3.073329e-01 8.749898e-02 4.685167e-01 7.755659e-01 9.601703e-01 9.931849e-01 8.693975e-01 6.083513e-01 2.512598e-01 -1.455000e-01 ''') ImportString(u'dswerr(numeric),+-',''' 1.000000e+00 1.000000e-01 9.210610e-01 1.000000e-01 6.967067e-01 1.000000e-01 3.623578e-01 1.000000e-01 -2.919952e-02 1.000000e-01 -4.161468e-01 1.000000e-01 -7.373937e-01 1.000000e-01 -9.422223e-01 1.000000e-01 -9.982948e-01 1.000000e-01 -8.967584e-01 1.000000e-01 -6.536436e-01 1.000000e-01 -3.073329e-01 1.000000e-01 8.749898e-02 1.000000e-01 4.685167e-01 1.000000e-01 7.755659e-01 1.000000e-01 9.601703e-01 1.000000e-01 9.931849e-01 1.000000e-01 8.693975e-01 1.000000e-01 6.083513e-01 1.000000e-01 2.512598e-01 1.000000e-01 -1.455000e-01 1.000000e-01 ''') ImportString(u'xvals(numeric)',''' 1.000000e+00 2.718282e+00 7.389056e+00 2.008554e+01 5.459815e+01 1.484132e+02 4.034288e+02 1.096633e+03 2.980958e+03 8.103084e+03 2.202647e+04 5.987414e+04 1.627548e+05 4.424134e+05 1.202604e+06 3.269017e+06 8.886111e+06 2.415495e+07 6.565997e+07 1.784823e+08 4.851652e+08 ''') Set('colorTheme', u'black') Set('StyleSheet/Font/font', u'Arial') Add('page', name='page1', autoadd=False) To('page1') Add('grid', name='grid1', autoadd=False) To('grid1') Set('leftMargin', u'0.1cm') Set('bottomMargin', u'0.1cm') Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', u'1.cm') Set('bottomMargin', u'1.cm') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') Set('GridLines/style', u'dotted-fine') Set('GridLines/hide', False) To('..') Add('bar', name='bar1', autoadd=False) To('bar1') Set('lengths', (u'ds1', u'ds2')) Set('mode', u'stacked') Set('keys', (u'a', u'b')) Set('BarFill/fills', [('solid', u'auto', False)]) To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'stacked\\\\mode') Set('xPos', [0.5]) Set('yPos', [0.7750554974893026]) Set('alignHorz', u'centre') To('..') Add('key', name='key1', autoadd=False) To('key1') Set('Background/hide', True) Set('Border/hide', True) Set('horzPosn', 'manual') Set('vertPosn', 'manual') Set('keyLength', u'0.5cm') Set('horzManual', 0.7084593492454648) Set('vertManual', 0.03438193718616283) To('..') To('..') Add('graph', name='graph2', autoadd=False) To('graph2') Set('leftMargin', u'1.cm') Set('bottomMargin', u'1.cm') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('bar', name='bar1', autoadd=False) To('bar1') Set('lengths', (u'ds1', u'ds2')) Set('keys', ('',)) Set('BarFill/fills', [('solid', u'auto', False)]) To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'grouped\\\\mode') Set('xPos', [0.5]) Set('yPos', [0.7750554974893026]) Set('alignHorz', u'centre') To('..') To('..') Add('graph', name='graph3', autoadd=False) To('graph3') Set('leftMargin', u'1.cm') Set('bottomMargin', u'1.cm') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('bar', name='bar1', autoadd=False) To('bar1') Set('lengths', (u'dswerr',)) Set('keys', ('',)) Set('errorstyle', u'barends') Set('BarFill/fills', [('solid', u'auto', False)]) To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'error bars') Set('xPos', [0.5]) Set('yPos', [0.9]) Set('alignHorz', u'centre') To('..') To('..') Add('graph', name='graph4', autoadd=False) To('graph4') Set('leftMargin', u'1.cm') Set('bottomMargin', u'1.cm') Add('axis', name='x', autoadd=False) To('x') Set('GridLines/style', u'dotted-fine') Set('GridLines/hide', False) To('..') Add('axis', name='y', autoadd=False) To('y') Set('log', True) Set('direction', 'vertical') Set('GridLines/style', u'dotted-fine') Set('GridLines/hide', False) To('..') Add('bar', name='bar1', autoadd=False) To('bar1') Set('lengths', (u'dswerr',)) Set('posn', u'xvals') Set('direction', u'horizontal') Set('mode', u'stacked') Set('keys', ('',)) Set('barfill', 1.0) Set('groupfill', 1.0) Set('errorstyle', u'barends') Set('BarFill/fills', [('solid', u'auto', False)]) To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'horizontal\\\\with values') Set('xPos', [0.05]) Set('yPos', [0.8]) To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/boxplot.vsz0000664000175000017500000000364714365252232015207 0ustar00jssjss# Veusz saved document (version 1.9.99) # User: jss # Date: Thu, 02 Dec 2010 19:28:57 +0000 ImportString(u'd1(numeric)',''' 1.503414e+01 1.771985e+01 1.603614e+01 1.697182e+01 1.408432e+01 1.375135e+01 1.290579e+01 1.474151e+01 1.383836e+01 1.370710e+01 ''') SetDataExpression(u'd1_x', u'd1*0+0.6', linked=True) ImportString(u'd2(numeric)',''' 1.298826e+01 4.121945e+00 4.666195e+00 7.293386e+00 1.682599e+00 1.611030e+01 1.834109e+01 1.385013e+01 6.923665e+00 1.859132e+01 ''') SetDataExpression(u'd2_x', u'd2*0+2.4', linked=True) ImportString(u'label(text)',r''' u'Bees' u'Butterflys' ''') Set('width', '14.5cm') Set('height', '12cm') Set('StyleSheet/Font/font', u'Arial') Set('StyleSheet/boxplot/Border/width', u'1pt') Set('StyleSheet/boxplot/Whisker/width', u'1pt') Set('StyleSheet/boxplot/MarkersLine/width', u'1pt') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', u'1.3cm') Set('rightMargin', '0.2cm') Set('topMargin', '0.2cm') Set('bottomMargin', u'1.3cm') Set('Background/color', u'#fffeea') Add('axis', name='x', autoadd=False) To('x') Set('mode', u'labels') Set('TickLabels/size', u'18pt') To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Number of insects') Set('direction', 'vertical') To('..') Add('boxplot', name='boxplot1', autoadd=False) To('boxplot1') Set('values', (u'd1', u'd2')) Set('labels', u'label') Set('whiskermode', u'9/91 percentile') Set('fillfraction', 0.5) Set('Fill/color', u'white') To('..') Add('xy', name=u'd2vals', autoadd=False) To(u'd2vals') Set('xData', u'd2_x') Set('yData', u'd2') Set('marker', u'cross') Set('PlotLine/hide', True) Set('MarkerLine/hide', True) Set('MarkerFill/color', u'blue') To('..') Add('xy', name=u'd1vals', autoadd=False) To(u'd1vals') Set('xData', u'd1_x') Set('yData', u'd1') Set('PlotLine/hide', True) Set('MarkerLine/hide', True) Set('MarkerFill/color', u'magenta') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/broken_axis.vsz0000664000175000017500000000251214365252232016012 0ustar00jssjss# Veusz saved document (version 1.16) # Saved at 2013-02-16T17:16:25.362109 ImportString(u'vals(numeric)',''' 3.000000e+00 1.000000e+00 5.000000e+00 8.000000e+00 1.000000e+00 3.000000e+00 1.010000e+02 1.030000e+02 1.100000e+02 9.500000e+01 8.000000e+01 5.000000e+00 2.000000e+00 4.000000e+00 1.000000e+00 ''') SetDataRange(u'x', 15, (0.0, 14.0), linked=True) Set('width', u'14cm') Set('height', u'10cm') Set('StyleSheet/Font/font', u'Arial') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('Border/hide', True) Add('axis', name='x', autoadd=False) To('x') Set('label', u'Axis without breaks') Set('autoRange', u'exact') Set('Label/size', u'16pt') Set('Label/position', u'at-minimum') Set('MajorTicks/number', 7) To('..') Add('axis-broken', name=u'y', autoadd=False) To(u'y') Set('label', u'An axis with a break in it') Set('breakPoints', [25.0, 75.0]) Set('direction', u'vertical') Set('Label/size', u'16pt') Set('Label/position', u'at-minimum') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'x') Set('yData', u'vals') Set('marker', u'squashbox') Set('markerSize', u'5pt') Set('PlotLine/width', u'1pt') Set('MarkerFill/color', u'red') Set('FillBelow/color', u'red') Set('FillBelow/style', u'diagonal cross') Set('FillBelow/hide', False) To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/coloredpoints.vsz0000664000175000017500000001247214365252232016400 0ustar00jssjss# Veusz saved document (version 1.19) # Saved at 2013-11-23T13:54:44.879031 ImportString('c(numeric)',''' 1.459606e+02 1.702896e+02 7.934817e+01 1.227687e+01 5.599601e+03 1.539531e+01 1.828166e+04 5.054989e+03 3.191051e+02 7.949710e+00 2.216535e+03 5.143240e+03 3.148290e+01 4.965444e+01 7.777005e+02 3.185130e+02 1.588387e+04 2.813152e+02 1.339360e+02 4.215790e+03 6.843036e+03 8.415999e+01 1.362926e+02 6.243027e+03 6.179793e+02 1.897636e+03 2.796312e+02 1.026779e+01 4.765936e+03 1.570359e+04 1.467323e+02 1.164478e+03 1.902282e+02 1.520207e+04 2.973087e+00 2.337408e+00 4.134565e+02 7.166886e+03 4.217587e+03 9.953222e+02 8.267064e+01 5.035324e+00 9.556994e+00 8.546561e+01 1.500701e+01 1.351431e+01 4.917555e+03 2.496430e+00 2.103088e+01 1.077053e+03 1.563147e+02 3.163246e+03 1.626294e+04 4.627788e+03 8.483016e+03 5.805220e+03 1.600690e+01 2.339657e+02 1.526946e+02 4.282832e+02 2.799937e+02 3.737549e+02 2.842098e+01 1.275867e+03 4.526153e+04 2.403380e+04 4.756101e+01 2.977493e+04 5.519853e+01 2.365612e+02 4.460124e+03 2.131700e+03 6.597176e+03 8.787685e+02 3.755261e+04 5.750869e+02 7.043527e+02 8.845572e+03 1.043050e+02 5.741879e+00 2.603017e+02 1.178276e+01 9.850848e+00 9.117799e+02 1.102115e+02 9.833058e+01 2.374284e+02 1.129614e+04 2.973567e+03 2.594940e+02 3.478364e+01 2.132164e+00 7.268064e+03 1.879249e+01 1.321168e+02 1.057914e+03 7.070878e+01 4.039144e+00 7.826971e+01 1.123204e+04 ''') SetDataExpression(u'sizef', u'abs(x-0.5)+0.5', linked=True) ImportString('x(numeric)',''' 3.259640e-01 2.936538e-01 3.162201e-01 2.638131e-01 8.803033e-01 2.577980e-01 9.479319e-01 5.931048e-01 5.222732e-01 1.018496e-01 7.321032e-01 7.753362e-01 2.971560e-01 3.875175e-01 4.714681e-01 5.461489e-01 8.912572e-01 3.138063e-01 3.838737e-01 7.173045e-01 9.487288e-01 3.029883e-01 4.863407e-01 8.589109e-01 5.710536e-01 7.576283e-01 5.049896e-01 2.308246e-01 8.570804e-01 8.612760e-01 4.759630e-01 5.248471e-01 4.719874e-01 7.990987e-01 9.636075e-02 6.375893e-02 6.057062e-01 9.102558e-01 7.864667e-01 6.260576e-01 4.087506e-01 1.741066e-01 1.165042e-01 3.446296e-01 2.170302e-01 9.573020e-02 8.219256e-01 9.182756e-02 2.018576e-01 6.840850e-01 3.888053e-01 8.064366e-01 9.381433e-01 8.748492e-01 8.716737e-01 8.351529e-01 1.047454e-01 4.707636e-01 4.919583e-01 5.672392e-01 4.050533e-01 4.783146e-01 3.282565e-01 6.755866e-01 9.435113e-01 9.404685e-01 2.656279e-01 9.456492e-01 3.985884e-01 5.263482e-01 6.925591e-01 6.756365e-01 9.412488e-01 6.768923e-01 8.147229e-01 5.731504e-01 5.591458e-01 8.806983e-01 4.030426e-01 1.638092e-01 4.160340e-01 2.343386e-01 1.942402e-01 6.532868e-01 3.740195e-01 3.338149e-01 3.336983e-01 8.617688e-01 7.426878e-01 4.504087e-01 2.690837e-01 5.143151e-02 9.142272e-01 1.996254e-01 5.223122e-01 7.060125e-01 3.945721e-01 1.191278e-01 3.037703e-01 8.536895e-01 ''') ImportString('y(numeric)',''' 1.720759e+00 -2.113146e+00 -1.269313e+00 6.767068e-02 -4.538878e-01 -3.123929e-01 -9.405761e-01 -2.662602e+00 -8.296818e-01 -9.859058e-01 -8.345237e-01 1.219784e+00 6.189014e-01 2.917761e-01 -2.009880e+00 -6.370632e-01 1.271855e+00 -2.387936e+00 -1.182805e+00 1.511322e+00 8.066724e-02 -1.426305e+00 -3.782192e-01 -7.195032e-01 -1.013519e+00 -4.953992e-01 -8.532545e-01 -1.763571e-01 4.996532e-01 -1.501790e+00 -5.253474e-01 -1.933486e+00 7.826508e-01 1.971016e+00 1.755292e-01 2.273975e-01 3.872100e-01 -4.286146e-01 9.583945e-01 -9.874666e-01 5.646978e-01 1.120199e-02 1.028609e+00 -1.106546e+00 6.163468e-01 -1.495746e+00 -8.080937e-01 6.001841e-02 -1.030854e+00 -5.917945e-01 -1.277557e+00 -5.487731e-01 -9.172515e-01 3.319534e-01 -8.837110e-01 8.464141e-01 1.570651e+00 -9.721957e-01 -4.319809e-01 7.255485e-01 1.653870e+00 -1.318657e+00 2.812261e-01 -8.069181e-01 -1.763368e+00 -1.237897e+00 -1.229479e+00 -1.382508e+00 2.951479e-01 -5.371013e-01 -1.758221e+00 -1.252360e+00 -1.087257e-01 -4.726106e-01 -2.631497e+00 -9.342638e-01 1.222414e+00 -8.478654e-01 8.122695e-01 2.076344e-01 -1.502682e+00 2.677853e-01 4.330256e-01 -6.934856e-01 1.092298e+00 1.314858e+00 -2.081479e+00 -1.211710e+00 1.005053e+00 -1.224985e+00 -9.300805e-01 2.461890e-01 -4.090199e-01 9.509655e-01 -6.341827e-02 4.008008e-01 5.423699e-01 2.595563e-01 1.357025e+00 -1.271401e+00 ''') Set('StyleSheet/Font/font', u'Arial') Set('StyleSheet/axis/Line/width', u'1pt') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('Background/color', u'#e5e9ff') Set('Border/width', u'1pt') Add('axis', name='x', autoadd=False) To('x') Set('label', u'Time (yr)') Set('GridLines/hide', False) To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Offset (m)') Set('min', -3.0) Set('max', 3.0) Set('direction', 'vertical') Set('GridLines/hide', False) To('..') Add('colorbar', name='colorbar1', autoadd=False) To('colorbar1') Set('widgetName', u'xy1') Set('label', u'Power (W)') Set('autoRange', u'exact') Set('lowerPosition', 0.0) Set('upperPosition', 1.0) Set('otherPosition', 0.0) Set('TickLabels/format', u'%VE') Set('horzPosn', u'centre') Set('vertPosn', u'top') Set('width', u'8cm') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('marker', u'circle') Set('markerSize', u'5pt') Set('scalePoints', u'sizef') Set('Color/points', u'c') Set('Color/min', 2.0) Set('Color/max', 4500.0) Set('Color/scaling', u'log') Set('PlotLine/hide', True) Set('MarkerLine/scaleLine', False) Set('MarkerFill/colorMap', u'complement') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/contour.vsz0000664000175000017500000000146414365252232015204 0ustar00jssjss# Veusz saved document (version 0.9) # User: jss # Date: Wed, 18 Jan 2006 21:50:11 +0000 SetData2D('vals', fromfunction(lambda x, y: sin(x*0.05)+cos(x*0.1+y*0.1), (100, 100))) SetData2D('vals2', fromfunction(lambda x, y: sin(x*0.2+y*0.1), (100, 100))) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('contour', name='contour1', autoadd=False) To('contour1') Set('data', u'vals') Set('numLevels', 10) Set('lines', [('solid', '1pt', u'#5500ff', False), ('dotted', '1pt', u'#aa557f', False)]) To('..') Add('image', name='image1', autoadd=False) To('image1') Set('data', u'vals2') Set('colorMap', u'bluegreen') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/contour_labels.vsz0000664000175000017500000000173314365252232016525 0ustar00jssjss# Veusz saved document (version 1.20.99) # Saved at 2014-04-27T12:24:58.888827 SetData2DXYFunc(u'foo', (0.0, 10.0, 0.1), (0.0, 10.0, 0.1), u'(sin(x)+2)*(cos(y+x)+2)', linked=True) Set('StyleSheet/Font/font', u'Liberation Serif') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', u'1cm') Set('bottomMargin', u'1cm') Add('axis', name='x', autoadd=False) To('x') Set('autoRange', u'exact') Set('TickLabels/format', u'%Vg \\emph{a}') Set('MajorTicks/number', 10) To('..') Add('axis', name='y', autoadd=False) To('y') Set('autoRange', u'exact') Set('direction', 'vertical') Set('TickLabels/format', u'%Vg \\emph{b}') Set('MajorTicks/number', 10) To('..') Add('contour', name='contour1', autoadd=False) To('contour1') Set('data', u'foo') Set('numLevels', 10) Set('ContourLabels/hide', False) Set('Lines/lines', [('solid', '1pt', u'#5500ff', False), ('dotted', '1pt', u'#aa557f', False)]) To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/custom_definitions.vsz0000664000175000017500000000235314365252232017416 0ustar00jssjss# Veusz saved document (version 1.25.1) # Saved at 2017-05-01T15:36:14.647425 AddCustom('import', u'numpy.fft', u'fft') AddCustom('definition', u'scale', u'3') AddCustom('definition', u'boxfn(x)', u'cos(scale*x)/sqrt(abs(x))') AddCustom('color', u'migraine', u'#b256bc') SetDataExpression(u'infn', u'boxfn(xv)', linked=True) SetDataExpression(u'outfn', u'imag(fft(infn))', linked=True) SetDataRange(u'xv', 200, (-4.0, 4.0), linked=True) Set('width', '16.728cm') Set('height', '9.899cm') Set('colorTheme', u'default-latest') Set('StyleSheet/Font/font', u'Calibri') Add('page', name='page1', autoadd=False) To('page1') Set('width', u'16cm') Set('height', u'10cm') Add('graph', name='graph1', autoadd=False) To('graph1') Set('bottomMargin', u'1.4cm') Add('axis', name='x', autoadd=False) To('x') Set('label', u'x') Set('Label/italic', True) To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Imaginary value of FFT function') Set('direction', 'vertical') To('..') Add('xy', name=u'fft', autoadd=False) To(u'fft') Set('marker', u'none') Set('xData', u'xv') Set('yData', u'outfn') Set('PlotLine/color', u'migraine') To('..') Add('xy', name=u'func', autoadd=False) To(u'func') Set('xData', u'xv') Set('yData', u'infn') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/dataset_operations.vsz0000664000175000017500000001172714365252232017406 0ustar00jssjss# Veusz saved document (version 1.8.99) # User: jss # Date: Thu, 26 Aug 2010 20:55:46 +0000 ImportString('x(numeric)',''' 0.000000e+00 1.000000e+00 2.000000e+00 3.000000e+00 4.000000e+00 5.000000e+00 6.000000e+00 7.000000e+00 8.000000e+00 9.000000e+00 1.000000e+01 1.100000e+01 1.200000e+01 1.300000e+01 1.400000e+01 1.500000e+01 1.600000e+01 1.700000e+01 1.800000e+01 1.900000e+01 ''') DatasetPlugin('Thin', {'ds_out': u'xthin', 'start': 1, 'interval': 2, 'ds_in': u'x'}) ImportString('y1(numeric)',''' -8.627642e-01 1.213047e+00 -1.682870e+00 2.540669e+00 9.385744e-04 -6.966657e-01 -8.769203e-01 -6.930465e-01 -2.456379e-01 -6.419765e-01 -1.485679e+00 -7.142200e-01 8.639527e-02 -1.155861e+00 -9.576156e-01 6.018372e-02 -1.027861e+00 2.953903e-01 -3.615840e-01 2.474292e-01 ''') DatasetPlugin('Add Datasets', {'ds_out': u'y1plusy2', 'ds_in': (u'y1', u'y2')}) ImportString('y2(numeric)',''' 7.356253e-01 2.187511e+00 9.680102e-01 -7.393343e-01 1.071199e+00 1.763134e+00 1.589872e+00 2.015283e+00 7.102356e-01 1.808795e+00 8.750188e-01 1.477934e+00 3.591239e-02 3.046406e+00 3.515513e+00 7.194178e-01 3.498590e+00 4.465251e+00 1.638100e+00 3.577523e+00 ''') ImportString('y3(numeric),+-',''' 1.537872e+00 3.000000e-01 2.879103e-01 3.000000e-01 7.127184e+00 3.000000e-01 5.775675e+00 3.000000e-01 3.390224e+00 3.000000e-01 2.470264e+00 3.000000e-01 1.019945e+00 3.000000e-01 -5.690097e-01 3.000000e-01 4.276276e+00 3.000000e-01 -4.449537e+00 3.000000e-01 -7.127589e-02 3.000000e-01 -9.531333e-01 3.000000e-01 -1.129021e+00 3.000000e-01 2.561764e+00 3.000000e-01 -1.763882e+00 3.000000e-01 -3.791216e-01 3.000000e-01 2.752641e-02 3.000000e-01 -1.044617e+00 3.000000e-01 2.075609e+00 3.000000e-01 -7.859457e-01 3.000000e-01 ''') DatasetPlugin('Add', {'ds_out': u'yadd', 'ds_in': u'y1', 'value': 2.0}) DatasetPlugin('Extremes', {'ds_min': '', 'ds_max': '', 'ds_errorbar': u'yextreme', 'errorbars': False, 'ds_in': (u'ysub', u'y1')}) DatasetPlugin('Mean', {'ds_out': u'ymean', 'ds_in': (u'yadd', u'y1plusy2', u'y1', u'y2')}) DatasetPlugin('Multiply', {'ds_out': u'yscale', 'ds_in': u'ymean', 'factor': 0.5}) DatasetPlugin('Subtract Datasets', {'ds_out': u'ysub', 'ds_in2': u'ymean', 'ds_in1': u'y1'}) DatasetPlugin('Thin', {'ds_out': u'ythin', 'start': 1, 'interval': 2, 'ds_in': u'yadd'}) Set('width', '18cm') Set('height', '15cm') Set('StyleSheet/Font/font', u'Verdana') Add('page', name=u'page1', autoadd=False) To(u'page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('Background/color', u'#f9faff') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name=u'y1', autoadd=False) To(u'y1') Set('yData', u'y1') Set('marker', u'plus') Set('key', u'data') Set('PlotLine/bezierJoin', False) Set('PlotLine/color', '#659f23') Set('MarkerFill/color', '#659f23') Set('ErrorBarLine/color', '#659f23') To('..') Add('xy', name=u'add', autoadd=False) To(u'add') Set('yData', u'yadd') Set('key', u'add') Set('PlotLine/color', '#de9578') Set('MarkerFill/color', '#de9578') Set('ErrorBarLine/color', '#de9578') To('..') Add('xy', name=u'plus', autoadd=False) To(u'plus') Set('yData', u'y1plusy2') Set('key', u'plus') Set('PlotLine/bezierJoin', False) Set('PlotLine/color', '#d02bf1') Set('MarkerFill/color', '#d02bf1') Set('ErrorBarLine/color', '#d02bf1') To('..') Add('xy', name=u'ymean', autoadd=False) To(u'ymean') Set('yData', u'ymean') Set('marker', u'square') Set('key', u'mean') Set('PlotLine/color', '#00a2b7') Set('MarkerFill/color', '#00a2b7') Set('ErrorBarLine/color', '#00a2b7') To('..') Add('xy', name=u'ysub', autoadd=False) To(u'ysub') Set('xData', u'x') Set('yData', u'ysub') Set('marker', u'diamond') Set('key', u'sub') Set('PlotLine/color', '#696b69') Set('MarkerFill/color', '#696b69') Set('ErrorBarLine/color', '#696b69') To('..') Add('xy', name=u'yscale', autoadd=False) To(u'yscale') Set('yData', u'yscale') Set('marker', u'squashbox') Set('key', u'scale') Set('PlotLine/color', '#684f5f') Set('MarkerFill/color', u'#cf9ebe') Set('ErrorBarLine/color', '#684f5f') To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'Using data operations to combine datasets') Set('xPos', [0.5]) Set('yPos', [-0.097615808953379762]) Set('alignHorz', u'centre') Set('Text/size', u'15pt') To('..') Add('xy', name=u'extremes', autoadd=False) To(u'extremes') Set('yData', u'yextreme') Set('marker', u'star6') Set('markerSize', u'5pt') Set('key', u'extremes') Set('errorStyle', u'fillvert') Set('MarkerFill/color', u'#bcfff2') Set('ErrorBarLine/color', u'grey') Set('FillBelow/color', u'#dbe0ed') Set('FillAbove/color', u'#dbe0ed') To('..') Add('key', name='key1', autoadd=False) To('key1') Set('Background/hide', True) Set('Border/hide', True) Set('horzPosn', 'centre') Set('vertPosn', 'top') Set('horzManual', 0.0) Set('vertManual', 0.0) Set('columns', 2) To('..') Add('xy', name=u'thin', autoadd=False) To(u'thin') Set('xData', u'xthin') Set('yData', u'ythin') Set('markerSize', u'6pt') Set('key', u'thin') Set('MarkerFill/color', u'#c7b266') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/datebar.dat0000664000175000017500000000024414365252232015036 0ustar00jssjssdescriptor d(date) value(numeric),+- 2009-03-10 1 0.1 2009-03-11 2 0.2 2009-03-12 1.3 0.12 2009-03-13 1.5 0.1 2009-03-14 4 0.2 2009-03-15 3 0.15 2009-03-16 1.8 0.2 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/datebar.vsz0000664000175000017500000000373414365252232015117 0ustar00jssjss# Veusz saved document (version 1.3) # User: jss # Date: Wed, 27 May 2009 19:46:06 +0000 ImportFile('datebar.dat', '', linked=True, ignoretext=True) Set('StyleSheet/Line/color', u'#005500') Set('StyleSheet/Font/font', u'Verdana') Set('StyleSheet/Font/color', u'#00557f') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', '1.59cm') Set('rightMargin', '0.416cm') Set('topMargin', '2.11cm') Set('bottomMargin', '4.02cm') Set('Background/color', u'#f5ffcd') Add('axis', name='x', autoadd=False) To('x') Set('label', u'Date') Set('mode', u'datetime') Set('TickLabels/rotate', True) To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Crazy bar value') Set('min', 0.0) Set('direction', 'vertical') To('..') Add('bar', name='bar1', autoadd=False) To('bar1') Set('lengths', (u'value',)) Set('posn', u'd') Set('keys', ('',)) Set('BarFill/fills', [('solid', u'#00aa7f', False)]) Set('BarLine/lines', [('solid', u'1pt', 'black', False)]) Set('ErrorBarLine/width', u'1pt') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'd') Set('yData', u'value') Set('marker', u'none') Set('PlotLine/hide', True) Set('FillBelow/color', u'#d9ffe5') Set('FillBelow/hide', False) To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'Look!') Set('xPos', [0.31336981405284353]) Set('yPos', [0.63329357828966459]) Set('alignHorz', u'right') Set('angle', 50.0) Set('Text/size', u'20pt') To('..') Add('line', name='line1', autoadd=False) To('line1') Set('arrowleft', u'bar') Set('arrowright', u'arrow') Set('xPos', [0.30322686916441111]) Set('yPos', [0.63075731090716558]) Set('length', [0.24757735730509881]) Set('angle', [45.467843029728137]) To('..') To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'A graph title') Set('xPos', [0.5]) Set('yPos', [0.97999999999999998]) Set('alignHorz', u'centre') Set('alignVert', u'top') Set('Text/size', u'30pt') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/dsexpressions.vsz0000664000175000017500000000405214365252232016420 0ustar00jssjss# Veusz saved document (version 1.17.1) ImportString('x(numeric)',''' 0.000000e+00 4.188790e-01 8.377580e-01 1.256637e+00 1.675516e+00 2.094395e+00 2.513274e+00 2.932153e+00 3.351032e+00 3.769911e+00 4.188790e+00 4.607669e+00 5.026548e+00 5.445427e+00 5.864306e+00 6.283185e+00 ''') ImportString('y(numeric)',''' 0.000000e+00 4.067366e-01 7.431448e-01 9.510565e-01 9.945219e-01 8.660254e-01 5.877853e-01 2.079117e-01 -2.079117e-01 -5.877853e-01 -8.660254e-01 -9.945219e-01 -9.510565e-01 -7.431448e-01 -4.067366e-01 -2.449213e-16 ''') Set('StyleSheet/Font/font', u'Bitstream Vera Serif') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('label', '\\italic{x}') Set('autoRange', u'exact') To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'\\italic{y}') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('PlotLine/color', '#3b57d0') Set('MarkerFill/color', '#3b57d0') Set('ErrorBarLine/color', '#3b57d0') To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('yData', u'y*1.5') Set('PlotLine/color', '#d7dede') Set('MarkerFill/color', '#d7dede') Set('ErrorBarLine/color', '#d7dede') To('..') Add('xy', name='xy3', autoadd=False) To('xy3') Set('yData', u'(-y*1.5,0.1)') Set('PlotLine/color', '#526c38') Set('MarkerFill/color', '#526c38') Set('ErrorBarLine/color', '#526c38') To('..') Add('xy', name='xy4', autoadd=False) To('xy4') Set('yData', u'(-y, 0.1, -0.2)') Set('PlotLine/color', '#5e136d') Set('MarkerFill/color', '#5e136d') Set('ErrorBarLine/color', '#5e136d') To('..') Add('xy', name='xy5', autoadd=False) To('xy5') Set('xData', u'(x+y,0.1)') Set('yData', u'(-y*1.5,y*0.2)') Set('PlotLine/color', '#a60523') Set('MarkerFill/color', '#a60523') Set('ErrorBarLine/color', '#a60523') To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'Using expressions of datasets') Set('xPos', [0.5]) Set('yPos', [0.98]) Set('alignHorz', u'centre') Set('alignVert', u'top') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/embedexample.py0000664000175000017500000000354214365252232015750 0ustar00jssjss# Copyright (C) 2009 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """An example embedding program. Veusz needs to be installed into the Python path for this to work (use setup.py) This animates a sin plot, then finishes """ import time import numpy import veusz.embed as veusz # construct a Veusz embedded window # many of these can be opened at any time g = veusz.Embedded('window title', compatlevel=-1) g.EnableToolbar() # construct the plot g.To( g.Add('page') ) g.To( g.Add('graph') ) g.Add('xy', marker='tiehorz', MarkerFill__color='green') # this stops intelligent axis extending g.Set('x/autoRange', 'exact') # zoom out g.Zoom(0.8) # loop, changing the values of the x and y datasets for i in range(10): x = numpy.arange(0+i/2., 7.+i/2., 0.05) y = numpy.sin(x) g.SetData('x', x) g.SetData('y', y) # wait to animate the graph time.sleep(2) # let the user see the final result print("Waiting for 10 seconds") time.sleep(10) print("Done!") # close the window (this is not strictly necessary) g.Close() ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/example_csv.csv0000664000175000017500000000034414365252232015766 0ustar00jssjss"Xval","Yval","+-", 1,0.1,0.03, 1.2,0.5,0.12, 1.5,0.6,0.05, 2.2,1.5,0.14, 3,2.2,0.2, 4,3.2,0.21, 4.3,4.01,0.22, 4.99,4,0.4, 5.2,4.6,0.32, 7,4.4,1, 7.1,6,0.22, ,,, "Xval2","Yval2","+","-" 1,1,0.1,-0.1 2,2,0.1,-0.12 3,3,0.12,-0.1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/example_csv.vsz0000664000175000017500000000200514365252232016011 0ustar00jssjss# Veusz saved document (version 1.25.1) # Saved at 2017-04-30T11:00:14.681801 ImportFileCSV(u'example_csv.csv', linked=True) Set('colorTheme', u'colorbrewer1') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('label', u'Imported CSV file example') Set('min', 0.0) To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Data read into from CSV') Set('direction', 'vertical') To('..') Add('xy', name='lineplot', autoadd=False) To('lineplot') Set('xData', u'Xval') Set('yData', u'Yval') Set('key', u'Line plot') Set('errorStyle', u'barends') To('..') Add('xy', name='histo', autoadd=False) To('histo') Set('marker', u'square') Set('xData', u'Xval2') Set('yData', u'Yval2') Set('key', u'Histogram') Set('PlotLine/steps', u'centre') Set('FillBelow/color', u'lightblue') Set('FillBelow/hide', False) To('..') Add('key', name='key1', autoadd=False) To('key1') Set('Border/hide', True) To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/example_import.vsz0000664000175000017500000000545414365252232016543 0ustar00jssjss# Veusz saved document (version 0.10.cvs) # User: jss # Date: Sat, 17 Jun 2006 16:23:25 +0000 ImportFile('example_import_1.dat', 'x1 y1,+-', linked=True, useblocks=True) ImportFile('example_import_2.dat', '', linked=True) Set('width', u'10cm') Add('page', name='page1', autoadd=False) To('page1') Add('grid', name='grid1', autoadd=False) To('grid1') Set('rows', 3) Set('columns', 1) Set('leftMargin', u'0.1cm') Set('bottomMargin', u'0.1cm') Add('graph', name='samplefile1', autoadd=False) To('samplefile1') Add('axis', name='x', autoadd=False) To('x') Set('label', u'This is an \\emph{x-axis}') To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'\\emph{y}^1') Set('direction', 'vertical') Set('Label/rotate', True) To('..') Add('xy', name='ds1', autoadd=False) To('ds1') Set('xData', u'x1_1') Set('yData', u'y1_1') Set('PlotLine/color', u'red') Set('MarkerFill/color', u'red') To('..') Add('xy', name='ds2', autoadd=False) To('ds2') Set('xData', u'x1_2') Set('yData', u'y1_2') Set('marker', u'diamond') Set('PlotLine/color', u'blue') Set('MarkerFill/color', u'blue') To('..') To('..') Add('graph', name='file2graph1', autoadd=False) To('file2graph1') Add('axis', name='x', autoadd=False) To('x') Set('label', u'Another \\bold{x-axis}') To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'\\emph{y}^2') Set('direction', 'vertical') Set('Label/rotate', True) To('..') Add('xy', name='thisxy', autoadd=False) To('thisxy') Set('xData', u'thisx') Set('yData', u'thisy') Set('errorStyle', u'diamond') Set('PlotLine/color', u'green') Set('MarkerFill/color', u'green') Set('ErrorBarLine/color', u'green') To('..') Add('xy', name='anotherxy', autoadd=False) To('anotherxy') Set('xData', u'anotherx') Set('yData', u'anothery') Set('errorStyle', u'curve') Set('PlotLine/color', u'magenta') Set('MarkerFill/color', u'magenta') Set('ErrorBarLine/color', u'magenta') To('..') To('..') Add('graph', name='file2graph2', autoadd=False) To('file2graph2') Add('axis', name='x', autoadd=False) To('x') Set('label', u'Final \\underline{x axis}') To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'\\emph{y}^3') Set('direction', 'vertical') Set('Label/rotate', True) To('..') Add('xy', name='noise1', autoadd=False) To('noise1') Set('xData', u'noisex') Set('yData', u'noisey_1') Set('PlotLine/steps', u'centre') Set('PlotLine/color', u'red') Set('MarkerFill/color', u'red') To('..') Add('xy', name='noise2', autoadd=False) To('noise2') Set('xData', u'noisex') Set('yData', u'noisey_2') Set('PlotLine/steps', u'centre') Set('PlotLine/color', u'cyan') Set('MarkerFill/color', u'cyan') To('..') Add('xy', name='noise3', autoadd=False) To('noise3') Set('xData', u'noisex') Set('yData', u'noisey_3') Set('PlotLine/steps', u'centre') Set('PlotLine/color', u'grey') Set('MarkerFill/color', u'grey') To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/example_import_1.dat0000664000175000017500000000126414365252232016704 0ustar00jssjss# Example data file 1 for importing # this is read in with blocks enabled 1 0.1 0.04 1.5 1.2 0.21 2 2.1 0.11 2.4 2.0 0.11 6.3 3.5 0.21 6.9 4.0 0.34 8.1 5.1 0.11 0 0.598891867123 0.571271171527 1 1.27652599928 0.293211984296 2 1.80910012902 0.59316037268 3 2.49652366924 0.212350438791 4 2.46688314965 0.418003360397 5 2.84211196873 0.303143691697 6 3.03125458979 0.905546142022 7 3.34096409413 0.276983451243 8 3.38876182999 0.644970504048 9 3.3431954804 0.0314161044416 10 3.72957202336 0.586131190135 11 3.32604926178 0.611351645308 12 4.31563271648 0.703522901568 13 4.59995446895 0.844015647958 14 4.15530039017 0.724286803521 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/example_import_2.dat0000664000175000017500000000531614365252232016707 0ustar00jssjss# second example file # descriptors can be placed down the file multiple times # to specify sets of data descriptor thisx,+- thisy,+,- 1.0048e-01 2.1160e-01 9.5824e-01 1.3893e-01 -6.0814e-01 1.2665e+00 9.5604e-01 6.7138e-01 4.1650e-01 -6.7098e-01 2.4097e+00 6.2898e-01 2.1296e-01 4.9144e-01 -3.3067e-02 3.9563e+00 4.7805e-01 2.3593e-01 4.9881e-01 -2.7282e-02 4.5674e+00 4.2886e-01 3.8157e-01 5.3305e-01 -3.2969e-01 5.4321e+00 5.1148e-02 1.5812e+00 1.2613e-01 -2.2894e-01 6.9457e+00 8.1255e-01 1.6777e+00 9.8834e-01 -9.7390e-01 7.4897e+00 9.3973e-01 1.7167e+00 4.3308e-01 -3.7178e-01 8.0426e+00 5.6998e-01 1.5577e+00 8.7185e-01 -1.1033e-01 9.9084e+00 9.6405e-01 1.0996e+00 5.9948e-01 -3.3716e-01 1.0963e+01 9.5036e-01 1.7831e+00 3.6308e-03 -1.3141e-01 1.1522e+01 3.2964e-02 1.8577e+00 3.3410e-01 -4.1994e-01 1.2634e+01 2.4651e-01 1.5259e+00 6.8782e-01 -8.0710e-01 1.3764e+01 5.7442e-01 1.6989e+00 6.6327e-01 -4.2052e-01 1.4102e+01 9.0656e-01 1.1045e+00 8.2707e-01 -2.7248e-01 descriptor anotherx,+- anothery,+,- 4.4622e-01 6.4802e-01 1.0884e+00 2.5945e-01 -4.7283e-01 1.2226e+00 3.2900e-01 1.5053e+00 2.8890e-01 -3.6051e-01 2.6112e+00 2.7019e-01 1.6834e+00 7.0039e-01 -7.7591e-01 3.7616e+00 1.5996e-01 1.3153e+00 7.8240e-01 -5.5298e-01 4.2028e+00 5.4426e-01 1.6729e+00 8.0976e-01 -1.2393e-01 5.5345e+00 2.6658e-01 8.9366e-01 1.2642e-01 -8.6600e-02 6.4766e+00 9.2462e-01 1.1606e+00 8.4187e-01 -6.3709e-01 7.1592e+00 7.4514e-01 6.7465e-01 2.9700e-01 -2.9862e-01 8.2514e+00 6.7011e-01 1.3665e+00 2.1944e-01 -2.1589e-01 9.1714e+00 7.5465e-01 1.1409e+00 7.2534e-01 -8.5968e-01 1.0905e+01 4.0861e-02 9.5769e-02 4.7422e-01 -9.2371e-02 1.1232e+01 8.9452e-01 -9.0869e-02 3.2122e-01 -8.0847e-01 1.2988e+01 4.4257e-01 2.5282e-01 5.9169e-02 -5.4564e-01 1.3888e+01 6.8980e-01 -1.0379e-01 4.0765e-01 -3.7785e-01 1.4439e+01 1.9561e-01 3.7001e-01 3.4897e-01 -9.3970e-01 descriptor noisex noisey[1:3] 0.0000e+00 4.2279e-01 6.4775e-01 2.8592e+00 1.0000e+00 9.2479e-01 1.0987e+00 8.5007e-01 2.0000e+00 8.8329e-01 6.8191e-01 5.7917e-01 3.0000e+00 9.5791e-01 1.1615e+00 5.1192e-01 4.0000e+00 1.5129e-01 8.5718e-01 2.3247e+00 5.0000e+00 5.3964e-01 1.5094e+00 7.9621e-01 6.0000e+00 1.8649e-01 1.2638e+00 1.5540e-01 7.0000e+00 8.4299e-01 1.1033e+00 6.9083e-01 8.0000e+00 8.0603e-01 1.5430e+00 1.2785e+00 9.0000e+00 3.9557e-02 1.4083e+00 1.9398e+00 1.0000e+01 6.6562e-02 1.1485e+00 2.7042e+00 1.1000e+01 2.3951e-01 3.8934e-01 9.6851e-01 1.2000e+01 9.2450e-01 7.2653e-01 1.1478e-01 1.3000e+01 5.3937e-01 1.1756e+00 1.6637e+00 1.4000e+01 4.9036e-01 3.5158e-01 2.3081e+00 1.5000e+01 3.0818e-01 1.5758e-01 9.5081e-01 1.6000e+01 1.6127e-01 1.0475e-01 9.0180e-01 1.7000e+01 4.1190e-02 9.0279e-01 2.8207e+00 1.8000e+01 9.4011e-01 1.4106e+00 5.1369e-01 1.9000e+01 6.2362e-01 1.3872e-01 4.2210e-01 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/filtered.vsz0000664000175000017500000000454214365252232015311 0ustar00jssjss# Veusz saved document (version 1.22.99) # Saved at 2015-04-14T17:42:14.659501 FilterDatasets(u'filter_x>6', [u'filter_x', u'filter_y'], prefix=u'filter2_') FilterDatasets(u'y>2.5', [u'x', 'y'], prefix=u'filter_') SetDataRange(u'x', 50, (0.0, 10.0), linked=True) ImportString('y(numeric)',''' 2.528453e+00 1.816528e+00 1.502053e+00 3.643409e+00 2.191947e+00 1.178337e+00 4.517599e-01 2.776858e+00 4.134110e+00 1.368582e+00 1.520669e+00 1.740393e+00 1.145020e+00 2.784998e+00 1.718806e+00 2.290992e-01 2.750012e+00 3.003834e+00 8.065036e-01 2.700813e+00 8.253849e-01 3.472289e+00 1.620575e+00 3.641267e+00 4.154029e-01 3.113261e+00 1.846461e+00 1.974401e+00 2.230803e+00 1.855437e+00 -4.376838e-01 1.718318e+00 -3.487412e-01 4.913468e+00 2.695930e+00 1.504972e+00 1.737499e+00 2.401471e+00 3.216212e+00 1.021641e+00 2.452775e+00 3.390762e+00 3.383650e+00 5.650132e-01 2.609646e+00 2.381425e+00 2.313510e+00 1.720346e+00 2.206088e+00 8.747802e-01 ''') Set('StyleSheet/Font/font', u'Liberation Mono') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('label', u'X axis') To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Y axis') Set('autoRange', u'+10%') Set('direction', 'vertical') To('..') Add('xy', name=u'filtered', autoadd=False) To(u'filtered') Set('marker', u'square') Set('markerSize', u'5pt') Set('color', u'#ffaa00') Set('xData', u'filter_x') Set('yData', u'filter_y') Set('key', u'Filtered') Set('PlotLine/hide', True) To('..') Add('xy', name=u'original', autoadd=False) To(u'original') Set('key', u'Data') To('..') Add('function', name='function1', autoadd=False) To('function1') Set('function', u'2.5') Set('Line/color', u'grey') Set('Line/width', u'1pt') To('..') Add('key', name='key1', autoadd=False) To('key1') Set('Border/hide', True) Set('horzPosn', 'left') Set('vertPosn', 'bottom') Set('horzManual', 0.0) Set('vertManual', 0.0) To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('marker', u'diamond') Set('markerSize', u'8pt') Set('color', u'#aaaaff') Set('xData', u'filter2_filter_x') Set('yData', u'filter2_filter_y') Set('PlotLine/hide', True) To('..') Add('function', name='function2', autoadd=False) To('function2') Set('function', u'6') Set('variable', u'y') Set('Line/color', u'grey') Set('Line/width', u'1pt') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/fit.vsz0000664000175000017500000000300314365252232014264 0ustar00jssjss# Veusz saved document (version 0.4) # User: jss # Date: Sun, 13 Mar 2005 20:22:08 +0000 ImportString('y,+-',''' 2.051912e+00 1.000000e+00 8.445439e-01 1.000000e+00 3.071220e+00 1.000000e+00 3.570666e-01 1.000000e+00 4.607197e+00 1.000000e+00 5.686059e+00 1.000000e+00 6.768538e+00 1.000000e+00 6.120451e+00 1.000000e+00 8.245063e+00 1.000000e+00 8.996650e+00 1.000000e+00 1.106673e+01 1.000000e+00 1.167119e+01 1.000000e+00 1.352823e+01 1.000000e+00 1.212483e+01 1.000000e+00 1.528200e+01 1.000000e+00 1.613522e+01 1.000000e+00 1.563430e+01 1.000000e+00 1.673132e+01 1.000000e+00 1.914110e+01 1.000000e+00 1.954017e+01 1.000000e+00 ''') ImportString('x',''' 1.000000e+00 2.000000e+00 3.000000e+00 4.000000e+00 5.000000e+00 6.000000e+00 7.000000e+00 8.000000e+00 9.000000e+00 1.000000e+01 1.100000e+01 1.200000e+01 1.300000e+01 1.400000e+01 1.500000e+01 1.600000e+01 1.700000e+01 1.800000e+01 1.900000e+01 2.000000e+01 ''') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('label', 'A wonderful \\emph{x} axis') Set('log', True) To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', 'A dubious \\emph{y} axis') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('key', 'data') Set('PlotLine/hide', True) Set('MarkerFill/color', 'red') To('..') Add('fit', name='fit1', autoadd=False) To('fit1') Set('key', 'fit') To('..') Add('key', name='key1', autoadd=False) To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/fixed_aspect.vsz0000664000175000017500000000314714365252232016151 0ustar00jssjss# Veusz saved document (version 1.17.1) Set('StyleSheet/function/steps', 200) Add('page', name='page1', autoadd=False) To('page1') Add('grid', name='grid1', autoadd=False) To('grid1') Set('scaleRows', [1.0, 0.25]) Set('scaleCols', [1.0, 0.25]) Set('leftMargin', u'1cm') Set('bottomMargin', u'1cm') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('graph', name=u'main', autoadd=False) To(u'main') Set('leftMargin', '0cm') Set('rightMargin', '0cm') Set('topMargin', '0cm') Set('bottomMargin', '0cm') Set('aspect', 1.0) Add('function', name=u'lin', autoadd=False) Add('function', name=u'siny', autoadd=False) To(u'siny') Set('function', u'abs(sin(y*20)*y)') Set('variable', u'y') To('..') Add('function', name=u'sinx', autoadd=False) To(u'sinx') Set('function', u'abs(sin(x*20)*x)') Set('FillBelow/hide', False) To('..') To('..') Add('graph', name='graph3', autoadd=False) To('graph3') Set('leftMargin', '0cm') Set('rightMargin', '0cm') Set('topMargin', '0cm') Set('bottomMargin', '0cm') Set('aspect', 0.2) Add('function', name=u'lin', autoadd=False) Add('function', name=u'siny', autoadd=False) To(u'siny') Set('function', u'abs(sin(y*20)*y)') Set('variable', u'y') To('..') To('..') Add('graph', name='graph2', autoadd=False) To('graph2') Set('leftMargin', '0cm') Set('rightMargin', '0cm') Set('topMargin', '0cm') Set('bottomMargin', '0cm') Set('aspect', 5.0) Add('function', name=u'lin', autoadd=False) Add('function', name=u'sinx', autoadd=False) To(u'sinx') Set('function', u'abs(sin(x*20)*x)') Set('FillBelow/hide', False) To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/functions.vsz0000664000175000017500000000320214365252232015513 0ustar00jssjss# Veusz saved document (version 1.17.1) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('rightMargin', '1.7cm') Add('axis', name='x', autoadd=False) To('x') Set('label', u'\\emph{x} axis') Set('min', -1.5) Set('max', 1.5) To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', 'Left axis') Set('min', 0.0) Set('max', 30.0) Set('direction', 'vertical') To('..') Add('axis', name='axis1', autoadd=False) To('axis1') Set('label', 'Another axis') Set('min', 0.01) Set('max', 1.0) Set('log', True) Set('direction', 'vertical') Set('otherPosition', 1.0) Set('TickLabels/format', u'%Ve') To('..') Add('function', name='function3', autoadd=False) To('function3') Set('function', 'exp( -x**2 )*20') Set('Line/color', 'purple') Set('Line/width', '3pt') To('..') Add('function', name='function2', autoadd=False) To('function2') Set('function', 'sin(x*4)*5+5') Set('FillBelow/color', 'red') Set('FillBelow/hide', False) Set('FillBelow/transparency', 60) To('..') Add('function', name='function1', autoadd=False) To('function1') Set('function', 'sin(y)') Set('variable', 'y') Set('steps', 100) Set('FillBelow/color', 'cyan') Set('FillBelow/hide', False) Set('FillBelow/transparency', 60) To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', '\\delta') Set('xPos', [0.98]) Set('yPos', [0.95]) Set('alignHorz', 'right') Set('alignVert', 'top') Set('Text/size', '100pt') To('..') Add('function', name='function4', autoadd=False) To('function4') Set('function', 'x**2') Set('yAxis', 'axis1') Set('FillAbove/color', 'green') Set('FillAbove/hide', False) To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/hatching.vsz0000664000175000017500000000607114365252232015277 0ustar00jssjss# Veusz saved document (version 1.15) # Saved at 2012-04-21T09:57:53.271330 ImportString(u'y1(numeric)',''' 0.000000e+00 2.000000e+00 3.000000e+00 5.000000e+00 6.000000e+00 9.000000e+00 3.000000e+00 ''') ImportString(u'y2(numeric)',''' 1.000000e+00 4.000000e+00 5.000000e+00 8.000000e+00 8.000000e+00 1.000000e+01 9.000000e+00 ''') DatasetPlugin('Add', {'ds_out': u'y3', 'value': 1.0, 'ds_in': u'y2'}) Set('StyleSheet/Font/font', u'Lucida Sans') Set('StyleSheet/xy/marker', u'none') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', u'0.8cm') Set('rightMargin', u'0.8cm') Set('topMargin', u'0.8cm') Set('bottomMargin', u'0.8cm') Set('Border/width', u'1pt') Add('axis', name='x', autoadd=False) To('x') Set('min', 1.0) Set('max', 7.0) Set('MinorTicks/hide', True) To('..') Add('axis', name='y', autoadd=False) To('y') Set('max', 12.0) Set('direction', 'vertical') Set('MinorTicks/hide', True) To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', []) Set('yData', u'y1') Set('PlotLine/steps', u'centre') Set('PlotLine/color', u'blue') Set('PlotLine/width', u'1pt') Set('FillBelow/color', u'blue') Set('FillBelow/style', u'backward diagonals') Set('FillBelow/hide', False) Set('FillBelow/patternspacing', u'6pt') Set('FillBelow/backhide', False) To('..') Add('function', name='function3', autoadd=False) To('function3') Set('function', u'4-y/2.01') Set('variable', u'y') Set('Line/color', u'magenta') Set('Line/width', u'1pt') Set('FillBelow/color', u'magenta') Set('FillBelow/style', u'vertical forward') Set('FillBelow/hide', False) To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('xData', []) Set('yData', u'y2') Set('PlotLine/color', u'red') Set('PlotLine/width', u'1pt') Set('FillBelow/color', u'red') Set('FillBelow/style', u'forward diagonals') Set('FillBelow/hide', False) Set('FillBelow/linestyle', u'dashed') Set('FillBelow/backhide', False) To('..') Add('xy', name='xy3', autoadd=False) To('xy3') Set('xData', []) Set('yData', u'y3') Set('PlotLine/color', u'grey') Set('PlotLine/width', u'1pt') Set('FillBelow/style', u'horizontal') Set('FillBelow/hide', False) Set('FillBelow/patternspacing', u'3pt') Set('FillBelow/backhide', False) To('..') Add('function', name='function1', autoadd=False) To('function1') Set('function', u'10-y/2') Set('variable', u'y') Set('Line/color', u'green') Set('FillAbove/color', u'#00ff7f') Set('FillAbove/style', u'horizontal double') Set('FillAbove/hide', False) Set('FillAbove/linewidth', u'0.25pt') Set('FillAbove/backcolor', u'green') Set('FillAbove/backhide', False) To('..') Add('function', name='function2', autoadd=False) To('function2') Set('function', u'9-y/2') Set('variable', u'y') Set('Line/color', u'#5500ff') Set('FillAbove/color', u'#5500ff') Set('FillAbove/style', u'diagonal cross 2') Set('FillAbove/hide', False) To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'\\color{green}{Hatch}ing') Set('xPos', [0.5]) Set('yPos', [1.06]) Set('alignHorz', u'centre') Set('alignVert', u'top') Set('Text/size', u'18pt') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/histo.vsz0000664000175000017500000003131214365252232014634 0ustar00jssjss# Veusz saved document (version 0.5) # User: jss # Date: Sat, 16 Apr 2005 14:43:47 +0000 ImportString('y,+-',''' 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 1.000000e+00 1.414214e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 2.000000e+00 1.732051e+00 1.000000e+00 1.414214e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 1.000000e+00 1.414214e+00 1.000000e+00 1.414214e+00 3.000000e+00 2.000000e+00 1.000000e+00 1.414214e+00 0.000000e+00 1.000000e+00 1.000000e+00 1.414214e+00 1.000000e+00 1.414214e+00 6.000000e+00 2.645751e+00 4.000000e+00 2.236068e+00 2.000000e+00 1.732051e+00 6.000000e+00 2.645751e+00 1.200000e+01 3.605551e+00 7.000000e+00 2.828427e+00 9.000000e+00 3.162278e+00 9.000000e+00 3.162278e+00 9.000000e+00 3.162278e+00 1.000000e+01 3.316625e+00 1.400000e+01 3.872983e+00 1.300000e+01 3.741657e+00 2.000000e+01 4.582576e+00 1.500000e+01 4.000000e+00 1.700000e+01 4.242641e+00 2.200000e+01 4.795832e+00 3.400000e+01 5.916080e+00 2.400000e+01 5.000000e+00 3.900000e+01 6.324555e+00 4.300000e+01 6.633250e+00 4.000000e+01 6.403124e+00 5.700000e+01 7.615773e+00 4.700000e+01 6.928203e+00 6.000000e+01 7.810250e+00 6.000000e+01 7.810250e+00 8.000000e+01 9.000000e+00 7.800000e+01 8.888194e+00 9.300000e+01 9.695360e+00 1.010000e+02 1.009950e+01 9.700000e+01 9.899495e+00 1.260000e+02 1.126943e+01 1.330000e+02 1.157584e+01 1.200000e+02 1.100000e+01 1.340000e+02 1.161895e+01 1.680000e+02 1.300000e+01 1.630000e+02 1.280625e+01 1.680000e+02 1.300000e+01 1.880000e+02 1.374773e+01 1.930000e+02 1.392839e+01 2.200000e+02 1.486607e+01 2.120000e+02 1.459452e+01 2.180000e+02 1.479865e+01 2.370000e+02 1.542725e+01 2.610000e+02 1.618641e+01 2.420000e+02 1.558846e+01 2.710000e+02 1.649242e+01 2.920000e+02 1.711724e+01 2.980000e+02 1.729162e+01 3.060000e+02 1.752142e+01 3.020000e+02 1.740690e+01 3.450000e+02 1.860108e+01 3.550000e+02 1.886796e+01 3.130000e+02 1.772005e+01 3.390000e+02 1.843909e+01 3.890000e+02 1.974842e+01 3.530000e+02 1.881489e+01 3.950000e+02 1.989975e+01 4.320000e+02 2.080865e+01 3.670000e+02 1.918333e+01 4.090000e+02 2.024846e+01 4.170000e+02 2.044505e+01 3.970000e+02 1.994994e+01 4.000000e+02 2.002498e+01 4.100000e+02 2.027313e+01 3.980000e+02 1.997498e+01 4.320000e+02 2.080865e+01 4.200000e+02 2.051828e+01 3.590000e+02 1.897367e+01 3.990000e+02 2.000000e+01 3.740000e+02 1.936492e+01 3.830000e+02 1.959592e+01 3.450000e+02 1.860108e+01 3.320000e+02 1.824829e+01 3.700000e+02 1.926136e+01 3.460000e+02 1.862794e+01 3.350000e+02 1.833030e+01 3.480000e+02 1.868154e+01 2.950000e+02 1.720465e+01 2.910000e+02 1.708801e+01 2.660000e+02 1.634013e+01 2.400000e+02 1.552417e+01 2.680000e+02 1.640122e+01 2.530000e+02 1.593738e+01 2.400000e+02 1.552417e+01 2.290000e+02 1.516575e+01 1.950000e+02 1.400000e+01 1.930000e+02 1.392839e+01 1.850000e+02 1.363818e+01 1.800000e+02 1.345362e+01 1.560000e+02 1.252996e+01 1.500000e+02 1.228821e+01 1.260000e+02 1.126943e+01 1.400000e+02 1.187434e+01 1.270000e+02 1.131371e+01 1.140000e+02 1.072381e+01 1.040000e+02 1.024695e+01 9.500000e+01 9.797959e+00 7.600000e+01 8.774964e+00 1.010000e+02 1.009950e+01 6.300000e+01 8.000000e+00 7.600000e+01 8.774964e+00 5.700000e+01 7.615773e+00 6.500000e+01 8.124038e+00 5.800000e+01 7.681146e+00 4.300000e+01 6.633250e+00 4.300000e+01 6.633250e+00 3.400000e+01 5.916080e+00 2.200000e+01 4.795832e+00 4.000000e+01 6.403124e+00 3.300000e+01 5.830952e+00 2.900000e+01 5.477226e+00 1.700000e+01 4.242641e+00 1.100000e+01 3.464102e+00 1.500000e+01 4.000000e+00 1.400000e+01 3.872983e+00 1.500000e+01 4.000000e+00 8.000000e+00 3.000000e+00 1.600000e+01 4.123106e+00 3.000000e+00 2.000000e+00 5.000000e+00 2.449490e+00 7.000000e+00 2.828427e+00 9.000000e+00 3.162278e+00 6.000000e+00 2.645751e+00 4.000000e+00 2.236068e+00 3.000000e+00 2.000000e+00 5.000000e+00 2.449490e+00 2.000000e+00 1.732051e+00 1.000000e+00 1.414214e+00 4.000000e+00 2.236068e+00 2.000000e+00 1.732051e+00 3.000000e+00 2.000000e+00 1.000000e+00 1.414214e+00 1.000000e+00 1.414214e+00 2.000000e+00 1.732051e+00 2.000000e+00 1.732051e+00 1.000000e+00 1.414214e+00 1.000000e+00 1.414214e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 1.000000e+00 1.414214e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 0.000000e+00 1.000000e+00 ''') ImportString('x',''' 0.000000e+00 1.000000e+00 2.000000e+00 3.000000e+00 4.000000e+00 5.000000e+00 6.000000e+00 7.000000e+00 8.000000e+00 9.000000e+00 1.000000e+01 1.100000e+01 1.200000e+01 1.300000e+01 1.400000e+01 1.500000e+01 1.600000e+01 1.700000e+01 1.800000e+01 1.900000e+01 2.000000e+01 2.100000e+01 2.200000e+01 2.300000e+01 2.400000e+01 2.500000e+01 2.600000e+01 2.700000e+01 2.800000e+01 2.900000e+01 3.000000e+01 3.100000e+01 3.200000e+01 3.300000e+01 3.400000e+01 3.500000e+01 3.600000e+01 3.700000e+01 3.800000e+01 3.900000e+01 4.000000e+01 4.100000e+01 4.200000e+01 4.300000e+01 4.400000e+01 4.500000e+01 4.600000e+01 4.700000e+01 4.800000e+01 4.900000e+01 5.000000e+01 5.100000e+01 5.200000e+01 5.300000e+01 5.400000e+01 5.500000e+01 5.600000e+01 5.700000e+01 5.800000e+01 5.900000e+01 6.000000e+01 6.100000e+01 6.200000e+01 6.300000e+01 6.400000e+01 6.500000e+01 6.600000e+01 6.700000e+01 6.800000e+01 6.900000e+01 7.000000e+01 7.100000e+01 7.200000e+01 7.300000e+01 7.400000e+01 7.500000e+01 7.600000e+01 7.700000e+01 7.800000e+01 7.900000e+01 8.000000e+01 8.100000e+01 8.200000e+01 8.300000e+01 8.400000e+01 8.500000e+01 8.600000e+01 8.700000e+01 8.800000e+01 8.900000e+01 9.000000e+01 9.100000e+01 9.200000e+01 9.300000e+01 9.400000e+01 9.500000e+01 9.600000e+01 9.700000e+01 9.800000e+01 9.900000e+01 1.000000e+02 1.010000e+02 1.020000e+02 1.030000e+02 1.040000e+02 1.050000e+02 1.060000e+02 1.070000e+02 1.080000e+02 1.090000e+02 1.100000e+02 1.110000e+02 1.120000e+02 1.130000e+02 1.140000e+02 1.150000e+02 1.160000e+02 1.170000e+02 1.180000e+02 1.190000e+02 1.200000e+02 1.210000e+02 1.220000e+02 1.230000e+02 1.240000e+02 1.250000e+02 1.260000e+02 1.270000e+02 1.280000e+02 1.290000e+02 1.300000e+02 1.310000e+02 1.320000e+02 1.330000e+02 1.340000e+02 1.350000e+02 1.360000e+02 1.370000e+02 1.380000e+02 1.390000e+02 1.400000e+02 1.410000e+02 1.420000e+02 1.430000e+02 1.440000e+02 1.450000e+02 1.460000e+02 1.470000e+02 1.480000e+02 1.490000e+02 1.500000e+02 1.510000e+02 1.520000e+02 1.530000e+02 1.540000e+02 1.550000e+02 1.560000e+02 1.570000e+02 1.580000e+02 1.590000e+02 1.600000e+02 1.610000e+02 1.620000e+02 1.630000e+02 1.640000e+02 1.650000e+02 1.660000e+02 1.670000e+02 1.680000e+02 1.690000e+02 1.700000e+02 1.710000e+02 1.720000e+02 1.730000e+02 1.740000e+02 1.750000e+02 1.760000e+02 1.770000e+02 1.780000e+02 1.790000e+02 1.800000e+02 1.810000e+02 1.820000e+02 1.830000e+02 1.840000e+02 1.850000e+02 1.860000e+02 1.870000e+02 1.880000e+02 1.890000e+02 1.900000e+02 1.910000e+02 1.920000e+02 1.930000e+02 1.940000e+02 1.950000e+02 1.960000e+02 1.970000e+02 1.980000e+02 1.990000e+02 2.000000e+02 2.010000e+02 2.020000e+02 2.030000e+02 2.040000e+02 2.050000e+02 2.060000e+02 2.070000e+02 2.080000e+02 2.090000e+02 2.100000e+02 2.110000e+02 2.120000e+02 2.130000e+02 2.140000e+02 2.150000e+02 2.160000e+02 2.170000e+02 2.180000e+02 2.190000e+02 2.200000e+02 2.210000e+02 2.220000e+02 2.230000e+02 2.240000e+02 2.250000e+02 2.260000e+02 2.270000e+02 2.280000e+02 2.290000e+02 2.300000e+02 2.310000e+02 2.320000e+02 2.330000e+02 2.340000e+02 2.350000e+02 2.360000e+02 2.370000e+02 2.380000e+02 2.390000e+02 2.400000e+02 2.410000e+02 2.420000e+02 2.430000e+02 2.440000e+02 2.450000e+02 2.460000e+02 2.470000e+02 2.480000e+02 2.490000e+02 2.500000e+02 2.510000e+02 2.520000e+02 2.530000e+02 2.540000e+02 2.550000e+02 2.560000e+02 2.570000e+02 2.580000e+02 2.590000e+02 2.600000e+02 2.610000e+02 2.620000e+02 2.630000e+02 2.640000e+02 2.650000e+02 2.660000e+02 2.670000e+02 2.680000e+02 2.690000e+02 2.700000e+02 2.710000e+02 2.720000e+02 2.730000e+02 2.740000e+02 2.750000e+02 2.760000e+02 2.770000e+02 2.780000e+02 2.790000e+02 2.800000e+02 2.810000e+02 2.820000e+02 2.830000e+02 2.840000e+02 2.850000e+02 2.860000e+02 2.870000e+02 2.880000e+02 2.890000e+02 2.900000e+02 2.910000e+02 2.920000e+02 2.930000e+02 2.940000e+02 2.950000e+02 2.960000e+02 2.970000e+02 2.980000e+02 2.990000e+02 ''') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('label', 'Wingspan (m)') Set('max', 200.0) To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', 'Dragons') Set('direction', 'vertical') To('..') Add('fit', name='fit1', autoadd=False) To('fit1') Set('function', 'exp( -(x-b)**2 / c )*a') Set('values', {'a': 402.44000280769995, 'c': 791.92768286084686, 'b': 99.159997652570837}) Set('key', 'Fit to histogram') Set('Line/color', 'blue') To('..') Add('key', name='key1', autoadd=False) To('key1') Set('Text/size', '12pt') Set('horzPosn', 'left') Set('vertPosn', 'top') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('marker', 'none') Set('key', 'Histogram') Set('PlotLine/steps', 'centre') Set('ErrorBarLine/hide', True) Set('FillBelow/color', 'lightgreen') Set('FillBelow/hide', False) To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', 'Example \\emph{histogram}') Set('xPos', 0.84999999999999998) Set('alignVert', 'centre') Set('angle', 90.0) Set('Text/size', '35pt') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/histo_widget.vsz0000664000175000017500000001676414365252232016215 0ustar00jssjss# Veusz saved document (version 3.2.1) # Saved at 2020-08-19T12:38:05.769331 AddImportPath(u'/home/jss/code/veusz/examples') ImportString(u'xd(numeric)',''' 4.603126e+00 3.110372e+00 4.016825e+00 4.385626e+00 3.501978e+00 3.849194e+00 5.404378e+00 4.382688e+00 1.536641e+00 5.049915e+00 3.601194e+00 4.812134e+00 5.175717e+00 3.979094e+00 2.173798e+00 3.910894e+00 3.591013e+00 3.772039e+00 2.867150e+00 2.725553e+00 2.301890e+00 4.807040e+00 4.161016e+00 2.349295e+00 4.991761e+00 3.926991e+00 3.916596e+00 3.565722e+00 4.548123e+00 4.997039e+00 4.173750e+00 2.202663e+00 3.900565e+00 4.017090e+00 5.652219e+00 3.891880e+00 4.626611e+00 5.770245e+00 3.747881e+00 4.437593e+00 3.231484e+00 3.332086e+00 3.840316e+00 6.040935e+00 4.749722e+00 4.310909e+00 4.878207e+00 5.408858e+00 2.266693e+00 4.780007e+00 4.075740e+00 4.446120e+00 3.082668e+00 5.536905e+00 3.616040e+00 4.411237e+00 4.102654e+00 3.196449e+00 4.631878e+00 5.436157e+00 3.023128e+00 2.542548e+00 3.169579e+00 3.713584e+00 3.329044e+00 3.268680e+00 4.181729e+00 4.768949e+00 5.021548e+00 4.792373e+00 5.563426e+00 3.528129e+00 3.915923e+00 5.406510e+00 3.970863e+00 4.955394e+00 6.157051e+00 5.640214e+00 3.750166e+00 3.979924e+00 3.334914e+00 5.894997e+00 3.172045e+00 5.405069e+00 2.703069e+00 4.679908e+00 4.111772e+00 4.936916e+00 4.630600e+00 4.014083e+00 1.479663e+00 4.936097e+00 4.677710e+00 3.947043e+00 3.987036e+00 3.743184e+00 3.516029e+00 2.571663e+00 3.829790e+00 4.793351e+00 2.627995e+00 3.789233e+00 3.404811e+00 3.093312e+00 4.221806e+00 2.053850e+00 3.022841e+00 4.513771e+00 3.904956e+00 4.883553e+00 4.828993e+00 4.898580e+00 4.898525e+00 4.914191e+00 5.141815e+00 6.564856e+00 3.937779e+00 4.791621e+00 5.361189e+00 3.381519e+00 4.685645e+00 3.926532e+00 2.425906e+00 4.395763e+00 3.097755e+00 4.266223e+00 4.007771e+00 4.408125e+00 2.748079e+00 2.741993e+00 3.374825e+00 2.978925e+00 2.918192e+00 2.879790e+00 3.422710e+00 4.614508e+00 4.171178e+00 4.242619e+00 5.112964e+00 4.259962e+00 5.670118e+00 4.887282e+00 3.585165e+00 3.485193e+00 3.908035e+00 2.352088e+00 5.512793e+00 4.377198e+00 3.644048e+00 3.686300e+00 6.138571e+00 2.975937e+00 4.273045e+00 5.552694e+00 3.592540e+00 3.115081e+00 3.683879e+00 3.700379e+00 4.705349e+00 4.180764e+00 4.273905e+00 4.115196e+00 2.762401e+00 4.616141e+00 3.346017e+00 2.715745e+00 3.366972e+00 6.192063e+00 4.808914e+00 4.117316e+00 5.592537e+00 4.044876e+00 2.759518e+00 3.894522e+00 4.556697e+00 2.983850e+00 4.713891e+00 3.720471e+00 1.369391e+00 3.142010e+00 4.919372e+00 4.771631e+00 2.044056e+00 3.875647e+00 3.540053e+00 2.404795e+00 2.657162e+00 4.231232e+00 5.582671e+00 4.743855e+00 5.332581e+00 3.954649e+00 3.375103e+00 4.879659e+00 4.065591e+00 3.611997e+00 1.599665e+00 5.242958e+00 4.338711e+00 4.182140e+00 ''') ImportString(u'yd(numeric)',''' 5.072721e+00 3.789137e+00 4.837493e+00 5.436973e+00 4.629737e+00 3.872128e+00 3.960796e+00 4.275135e+00 5.953223e+00 5.020631e+00 3.450002e+00 5.126552e+00 5.365057e+00 4.665514e+00 4.334834e+00 5.805341e+00 3.635087e+00 4.150164e+00 4.451603e+00 5.642667e+00 6.629506e+00 4.198472e+00 3.010114e+00 5.869517e+00 6.158500e+00 3.960782e+00 4.878230e+00 6.206715e+00 6.117706e+00 5.219414e+00 5.041067e+00 4.237933e+00 5.599555e+00 6.218520e+00 4.957239e+00 4.952985e+00 4.992029e+00 5.789392e+00 4.634202e+00 6.023211e+00 4.044787e+00 4.459611e+00 6.161872e+00 4.735012e+00 5.582381e+00 4.782809e+00 3.587919e+00 5.368073e+00 4.783934e+00 3.535477e+00 6.529795e+00 5.412075e+00 3.968334e+00 4.412906e+00 3.819547e+00 5.466502e+00 5.324314e+00 4.183729e+00 5.361410e+00 6.349983e+00 6.356030e+00 3.563330e+00 4.277240e+00 4.066481e+00 3.760037e+00 4.835265e+00 3.356791e+00 6.875514e+00 4.615810e+00 3.737560e+00 3.818761e+00 5.055013e+00 5.217149e+00 4.262627e+00 5.527072e+00 3.351530e+00 3.454306e+00 4.061968e+00 4.636635e+00 4.988659e+00 5.455026e+00 5.352328e+00 4.795818e+00 6.378401e+00 5.002732e+00 6.133422e+00 4.495945e+00 2.758053e+00 5.628537e+00 4.791587e+00 4.980471e+00 5.446002e+00 5.592384e+00 3.969305e+00 6.685742e+00 3.467471e+00 7.138042e+00 4.459901e+00 4.705527e+00 5.310370e+00 5.197201e+00 4.504526e+00 6.222443e+00 3.228694e+00 5.594940e+00 5.452755e+00 4.091967e+00 6.036730e+00 4.994981e+00 5.926247e+00 5.341274e+00 3.582304e+00 5.147566e+00 4.568473e+00 4.821685e+00 4.991184e+00 5.179044e+00 5.294194e+00 3.283831e+00 6.080009e+00 5.767379e+00 4.807079e+00 4.920399e+00 5.981496e+00 3.638530e+00 4.769086e+00 5.184633e+00 4.632390e+00 5.805825e+00 4.920580e+00 4.572194e+00 4.038595e+00 6.076283e+00 5.668326e+00 5.020974e+00 6.235163e+00 4.937179e+00 6.653215e+00 5.934949e+00 5.923469e+00 6.521931e+00 5.440403e+00 6.029404e+00 4.152229e+00 4.372551e+00 5.752363e+00 3.119823e+00 7.130189e+00 3.665072e+00 3.490244e+00 5.707712e+00 4.585697e+00 4.598227e+00 6.223932e+00 4.046163e+00 5.166915e+00 4.003784e+00 5.281609e+00 4.946309e+00 5.015266e+00 3.547756e+00 5.337472e+00 5.239509e+00 6.353617e+00 5.327173e+00 5.480491e+00 5.600596e+00 3.104728e+00 3.750946e+00 3.765652e+00 4.989105e+00 4.679186e+00 5.886964e+00 7.131809e+00 4.899029e+00 5.576353e+00 4.244774e+00 6.579049e+00 5.635122e+00 5.198577e+00 3.776553e+00 4.814821e+00 3.783573e+00 4.572085e+00 4.862149e+00 6.514966e+00 6.406707e+00 5.829618e+00 4.023163e+00 4.832410e+00 4.906793e+00 5.502393e+00 4.410306e+00 4.802800e+00 5.927727e+00 6.253316e+00 2.656906e+00 3.557615e+00 2.835692e+00 4.819589e+00 ''') AddCustom(u'color', u'mycolour', u'#800000') Set('colorTheme', u'default-latest') Set('StyleSheet/Line/color', u'mycolour') Set('StyleSheet/Font/font', u'Noto Sans') Set('StyleSheet/Font/color', u'mycolour') Set('StyleSheet/axis/TickLabels/color', u'mycolour') Set('StyleSheet/axis-function/autoRange', u'next-tick') Set('StyleSheet/histo/PostLine/color', u'#ffffff') Set('StyleSheet/histo/PostLine/hide', False) Add('page', name=u'page1', autoadd=False) To(u'page1') Add('graph', name=u'pts', autoadd=False) To(u'pts') Set('leftMargin', u'5cm') Set('bottomMargin', u'5cm') Add('axis', name=u'x', autoadd=False) To(u'x') Set('min', 1.0) Set('max', 7.0) Set('TickLabels/hide', True) To('..') Add('axis', name=u'y', autoadd=False) To(u'y') Set('min', 2.0) Set('max', 8.0) Set('direction', u'vertical') Set('TickLabels/hide', True) To('..') Add('xy', name=u'xy1', autoadd=False) To(u'xy1') Set('marker', u'square') Set('xData', u'xd') Set('yData', u'yd') Set('PlotLine/hide', True) To('..') To('..') Add('graph', name=u'xhist', autoadd=False) To(u'xhist') Set('leftMargin', u'5cm') Set('topMargin', u'10.1cm') Set('bottomMargin', u'1cm') Add('axis', name=u'x', autoadd=False) To(u'x') Set('min', 1.0) Set('max', 7.0) To('..') Add('axis', name=u'y', autoadd=False) To(u'y') Set('max', 0.24) Set('direction', u'vertical') Set('MajorTicks/manualTicks', [0.0, 0.05, 0.1, 0.15]) To('..') Add('histo', name=u'histo1', autoadd=False) To(u'histo1') Set('errorStyle', u'barendshi') Set('data', u'xd') Set('calcmode', u'fraction') Set('binning', u'rice') To('..') To('..') Add('graph', name=u'yhist', autoadd=False) To(u'yhist') Set('leftMargin', u'1cm') Set('rightMargin', u'10.1cm') Set('bottomMargin', u'5cm') Add('axis', name=u'x', autoadd=False) To(u'x') Set('min', 0.28) Set('max', 0.0) Set('MajorTicks/manualTicks', [0.25, 0.15, 0.05]) Set('MinorTicks/number', 10) To('..') Add('axis', name=u'y', autoadd=False) To(u'y') Set('min', 2.0) Set('max', 8.0) Set('direction', u'vertical') To('..') Add('histo', name=u'histo1', autoadd=False) To(u'histo1') Set('errorStyle', u'barendshi') Set('data', u'yd') Set('calcmode', u'fraction') Set('binning', u'constant') Set('minval', 2.0) Set('maxval', 8.0) Set('numbins', 12) Set('direction', u'horizontal') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/histogramming.vsz0000664000175000017500000001027414365252232016362 0ustar00jssjss# Veusz saved document (version 1.17.1) ImportString('a(numeric)',''' 4.064151e-01 -1.955427e+00 5.367960e-01 -1.201281e+00 -8.823834e-01 3.370551e-01 -1.877312e-02 1.088443e+00 -1.707573e+00 -2.634517e-01 -4.137204e-01 -1.097392e+00 -5.821462e-01 1.091239e-01 1.074642e+00 2.023820e-01 -2.822896e+00 -9.460682e-01 -2.210939e+00 -7.071375e-01 -6.229418e-02 4.740030e-01 1.142621e+00 -1.115908e+00 -1.119911e-01 1.821279e+00 1.493768e+00 -3.421813e-01 1.325412e+00 -1.768811e-01 -1.314423e+00 -3.753827e-02 1.842780e-02 9.716551e-01 1.956101e+00 1.649411e+00 -7.339221e-01 3.996795e-01 6.276289e-02 3.893068e-02 9.249883e-01 -4.728369e-02 5.743185e-01 1.701567e-01 -5.380860e-01 -4.650062e-01 -3.322537e-01 -1.565993e+00 -3.993179e-01 6.449638e-01 ''') CreateHistogram(u'a+0', u'a_p', u'a_h', binparams=(11, -2.5, 2.5, False), binmanual=None, method=u'density', cumulative='none', errors=False) CreateHistogram(u'a', u'a_p_cuml', u'a_h_cuml', binparams=(11, -2.5, 2.5, False), binmanual=None, method=u'fractions', cumulative='smalltolarge', errors=False) ImportString('b(numeric)',''' -5.119920e-01 2.569989e-01 8.461096e-01 -7.280449e-01 3.753062e-01 -1.363823e+00 -3.881765e-01 5.583240e-01 4.682697e-01 -1.904293e-01 -1.090520e+00 -1.606417e+00 -3.863972e-01 -3.592417e-01 -4.671219e-01 -1.263556e+00 -9.915580e-02 -8.630928e-01 2.531121e-01 8.082021e-01 1.220910e+00 1.136309e+00 -6.283861e-01 -9.666840e-01 1.243800e-02 5.026563e-01 -4.936574e-01 -2.520510e-01 -6.160691e-01 9.710006e-02 -1.182792e+00 8.105359e-01 -1.931395e+00 1.213877e-01 -8.875079e-01 -3.964456e-01 -5.933237e-01 -3.436124e-01 1.381866e+00 -1.315651e+00 1.829677e+00 6.486507e-01 3.684826e-01 1.283694e+00 5.930318e-01 -5.533747e-01 6.386597e-01 1.467606e+00 8.377984e-01 1.625319e-01 ''') CreateHistogram(u'b', u'b_p', u'b_h', binparams=(11, -2.5, 2.5, False), binmanual=None, method=u'density', cumulative='none', errors=False) CreateHistogram(u'b', u'b_p_cuml', u'b_h_cuml', binparams=(11, -2.5, 2.5, False), binmanual=None, method=u'fractions', cumulative='smalltolarge', errors=False) Set('StyleSheet/Font/font', u'Bitstream Vera Sans') Set('StyleSheet/xy/ErrorBarLine/hide', True) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('rightMargin', u'1.7cm') Set('topMargin', u'1.7cm') Add('axis', name='x', autoadd=False) To('x') Set('label', u'X value') Set('min', -2.5) Set('max', 2.5) To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Y value') Set('min', -2.5) Set('max', 2.5) Set('direction', 'vertical') To('..') Add('xy', name=u'b_hist', autoadd=False) To(u'b_hist') Set('xData', u'b_h') Set('yData', u'b_p') Set('marker', u'none') Set('xAxis', u'x2') Set('PlotLine/steps', u'vcentre') Set('PlotLine/color', u'red') Set('PlotLine/width', u'2pt') Set('MarkerFill/color', u'red') To('..') Add('axis', name=u'x2', autoadd=False) To(u'x2') Set('label', u'Y histogram') Set('max', 1.02) Set('upperPosition', 0.5) Set('otherPosition', 1.0) To('..') Add('xy', name=u'b_hist_cuml', autoadd=False) To(u'b_hist_cuml') Set('xData', u'b_h_cuml') Set('yData', u'b_p_cuml') Set('marker', u'none') Set('hide', False) Set('xAxis', u'x2') Set('PlotLine/steps', u'vcentre') Set('PlotLine/color', u'#00ff00') Set('PlotLine/width', u'2pt') To('..') Add('xy', name=u'a_hist', autoadd=False) To(u'a_hist') Set('xData', u'a_p') Set('yData', u'a_h') Set('marker', u'none') Set('yAxis', u'y2') Set('PlotLine/steps', u'centre') Set('PlotLine/color', u'blue') Set('PlotLine/width', u'2pt') Set('MarkerFill/color', u'red') To('..') Add('axis', name=u'y2', autoadd=False) To(u'y2') Set('label', u'X histogram') Set('max', 1.02) Set('direction', 'vertical') Set('upperPosition', 0.5) Set('otherPosition', 1.0) To('..') Add('xy', name=u'a_hist_cuml', autoadd=False) To(u'a_hist_cuml') Set('xData', u'a_p_cuml') Set('yData', u'a_h_cuml') Set('marker', u'none') Set('hide', False) Set('yAxis', u'y2') Set('PlotLine/steps', u'centre') Set('PlotLine/color', u'magenta') Set('PlotLine/width', u'2pt') To('..') Add('xy', name=u'datapoints', autoadd=False) To(u'datapoints') Set('xData', u'a') Set('yData', u'b') Set('marker', u'diamond') Set('markerSize', u'6pt') Set('PlotLine/hide', True) Set('MarkerFill/color', u'white') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/inside.vsz0000664000175000017500000002037114365252232014764 0ustar00jssjss# Veusz saved document (version 0.6) # User: jss # Date: Thu, 19 May 2005 19:04:53 +0000 ImportString('y',''' -2.587729e+00 -1.609362e+01 -7.226746e+00 1.700540e+01 1.138952e+01 4.296140e+00 -3.227336e+00 -4.241213e+00 -5.803339e-02 4.611423e+00 -3.984561e+00 7.906768e+00 -7.745864e+00 2.987510e+00 3.210930e-01 -6.378710e+00 2.515961e+01 2.522258e+01 -3.091128e+00 5.041150e+00 -1.050379e+01 -1.316306e+01 -2.276787e+00 -5.742196e+00 -9.082636e+00 -1.266413e+01 3.199799e+00 -3.311777e+00 1.562370e+01 1.462025e+00 2.950148e+00 -2.691806e+00 -6.179390e+00 5.307104e+00 -6.554100e+00 7.560850e+00 5.671131e-01 2.216967e+00 1.233732e+01 -9.873626e+00 6.128890e+00 -1.371993e+01 8.882399e-01 1.446327e+01 2.803639e+00 -6.576762e-01 5.930219e+00 2.008943e+00 -1.090018e-01 -6.018549e+00 -1.934561e+00 -3.101619e+00 1.802873e+00 -5.754469e+00 2.941526e+01 1.362095e+01 1.984763e+00 5.046622e+00 -1.380654e+01 7.847492e+00 -4.982190e+00 4.118090e-01 -1.053461e+01 -4.595230e+00 -8.601879e+00 -1.179473e+01 -1.863332e+00 1.987707e+00 7.777890e-01 1.101049e+01 2.914746e+00 9.698452e+00 3.350153e+00 -1.289850e+01 5.864994e+00 4.532047e+00 5.557848e+00 1.153725e+00 6.995080e-01 -5.830288e+00 1.251062e+01 1.392709e+01 -1.595572e+01 1.185186e+00 -7.681659e+00 -1.987566e+01 -1.177874e+00 6.851930e+00 -8.103260e-01 -6.909352e+00 2.749254e-01 5.844212e+00 -1.041544e+00 -7.869795e+00 -1.132402e+01 8.992709e+00 1.866769e+01 1.701594e+01 3.893783e+00 5.528125e+00 -7.268189e+00 1.346805e+01 1.946215e+01 8.250416e+00 -1.334784e+01 2.024725e+01 4.509477e+00 -9.515657e+00 -4.556112e+00 -4.316370e+00 2.908727e+00 1.554901e+01 -2.681748e+00 1.779937e+01 -5.736510e+00 -3.372016e+00 -3.216765e+00 1.344067e+01 5.409029e+00 6.133639e+00 -6.941178e+00 -1.122230e+01 1.461280e+01 1.189957e+00 -8.297384e+00 -7.565539e+00 4.255451e+00 8.152416e+00 5.124337e+00 3.879700e+00 -1.763969e+01 1.595328e+01 -7.472883e+00 -6.698127e+00 -1.692927e+01 -7.813697e+00 2.329430e+00 -1.743128e+00 4.229842e+00 -1.035399e+01 -6.785784e+00 -2.798282e+00 5.799159e+00 -1.373382e+01 7.725470e+00 1.154953e+01 1.586832e+01 4.111123e+00 -9.513406e+00 1.032531e+01 -9.989098e+00 1.777364e+01 4.158636e+00 1.737422e+00 1.059494e+01 4.625862e+00 1.722851e+00 2.564189e+01 7.694167e+00 -6.319989e+00 -8.148266e-01 5.716334e+00 -4.233620e+00 1.226502e+01 5.164003e+00 2.041126e+01 9.797467e+00 -1.132923e+01 7.612042e-01 -1.930018e+00 1.436253e+01 -1.407661e+00 -1.920934e+00 1.114966e+01 2.273019e+01 -4.461129e+00 7.384006e+00 3.493240e+00 -1.636330e+00 -1.843285e+01 1.681489e+01 1.153851e+01 -1.673654e+01 1.622110e+01 3.797960e+00 1.071981e+01 2.440005e+00 4.263002e+00 1.356043e+01 7.384417e+00 2.971312e+01 3.127700e+00 -6.236787e-01 1.118915e+01 1.870411e+01 1.712239e+00 1.117415e+01 -9.288272e+00 9.190616e+00 -1.792989e+01 ''') ImportString(u'x',''' 0.000000e+00 1.000000e+00 2.000000e+00 3.000000e+00 4.000000e+00 5.000000e+00 6.000000e+00 7.000000e+00 8.000000e+00 9.000000e+00 1.000000e+01 1.100000e+01 1.200000e+01 1.300000e+01 1.400000e+01 1.500000e+01 1.600000e+01 1.700000e+01 1.800000e+01 1.900000e+01 2.000000e+01 2.100000e+01 2.200000e+01 2.300000e+01 2.400000e+01 2.500000e+01 2.600000e+01 2.700000e+01 2.800000e+01 2.900000e+01 3.000000e+01 3.100000e+01 3.200000e+01 3.300000e+01 3.400000e+01 3.500000e+01 3.600000e+01 3.700000e+01 3.800000e+01 3.900000e+01 4.000000e+01 4.100000e+01 4.200000e+01 4.300000e+01 4.400000e+01 4.500000e+01 4.600000e+01 4.700000e+01 4.800000e+01 4.900000e+01 5.000000e+01 5.100000e+01 5.200000e+01 5.300000e+01 5.400000e+01 5.500000e+01 5.600000e+01 5.700000e+01 5.800000e+01 5.900000e+01 6.000000e+01 6.100000e+01 6.200000e+01 6.300000e+01 6.400000e+01 6.500000e+01 6.600000e+01 6.700000e+01 6.800000e+01 6.900000e+01 7.000000e+01 7.100000e+01 7.200000e+01 7.300000e+01 7.400000e+01 7.500000e+01 7.600000e+01 7.700000e+01 7.800000e+01 7.900000e+01 8.000000e+01 8.100000e+01 8.200000e+01 8.300000e+01 8.400000e+01 8.500000e+01 8.600000e+01 8.700000e+01 8.800000e+01 8.900000e+01 9.000000e+01 9.100000e+01 9.200000e+01 9.300000e+01 9.400000e+01 9.500000e+01 9.600000e+01 9.700000e+01 9.800000e+01 9.900000e+01 1.000000e+02 1.010000e+02 1.020000e+02 1.030000e+02 1.040000e+02 1.050000e+02 1.060000e+02 1.070000e+02 1.080000e+02 1.090000e+02 1.100000e+02 1.110000e+02 1.120000e+02 1.130000e+02 1.140000e+02 1.150000e+02 1.160000e+02 1.170000e+02 1.180000e+02 1.190000e+02 1.200000e+02 1.210000e+02 1.220000e+02 1.230000e+02 1.240000e+02 1.250000e+02 1.260000e+02 1.270000e+02 1.280000e+02 1.290000e+02 1.300000e+02 1.310000e+02 1.320000e+02 1.330000e+02 1.340000e+02 1.350000e+02 1.360000e+02 1.370000e+02 1.380000e+02 1.390000e+02 1.400000e+02 1.410000e+02 1.420000e+02 1.430000e+02 1.440000e+02 1.450000e+02 1.460000e+02 1.470000e+02 1.480000e+02 1.490000e+02 1.500000e+02 1.510000e+02 1.520000e+02 1.530000e+02 1.540000e+02 1.550000e+02 1.560000e+02 1.570000e+02 1.580000e+02 1.590000e+02 1.600000e+02 1.610000e+02 1.620000e+02 1.630000e+02 1.640000e+02 1.650000e+02 1.660000e+02 1.670000e+02 1.680000e+02 1.690000e+02 1.700000e+02 1.710000e+02 1.720000e+02 1.730000e+02 1.740000e+02 1.750000e+02 1.760000e+02 1.770000e+02 1.780000e+02 1.790000e+02 1.800000e+02 1.810000e+02 1.820000e+02 1.830000e+02 1.840000e+02 1.850000e+02 1.860000e+02 1.870000e+02 1.880000e+02 1.890000e+02 1.900000e+02 1.910000e+02 1.920000e+02 1.930000e+02 1.940000e+02 1.950000e+02 1.960000e+02 1.970000e+02 1.980000e+02 1.990000e+02 ''') ImportString(u'y3',''' 0.000000e+00 1.557408e+00 -2.185040e+00 -1.425465e-01 1.157821e+00 -3.380515e+00 -2.910062e-01 8.714480e-01 -6.799711e+00 -4.523157e-01 ''') ImportString(u'y2,+-',''' 0.000000e+00 1.000000e+00 1.000000e+00 5.000000e-01 1.414214e+00 1.200000e+00 1.732051e+00 8.000000e-01 2.000000e+00 1.000000e+00 2.236068e+00 0.000000e+00 2.449490e+00 0.000000e+00 2.645751e+00 0.000000e+00 2.828427e+00 0.000000e+00 3.000000e+00 0.000000e+00 ''') ImportString(u'x2',''' 0.000000e+00 1.000000e+00 2.000000e+00 3.000000e+00 4.000000e+00 5.000000e+00 6.000000e+00 7.000000e+00 8.000000e+00 9.000000e+00 ''') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph2', autoadd=False) To('graph2') Set('leftMargin', u'10.5cm') Set('rightMargin', u'0.5cm') Set('topMargin', u'0.5cm') Set('bottomMargin', u'10.5cm') Set('Background/hide', True) Add('axis', name='x', autoadd=False) To('x') Set('label', u'an x-axis') Set('Label/italic', True) To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'sin 2\\emph{\\pi x}') Set('min', -1.0) Set('max', 1.0) Set('direction', 'vertical') To('..') Add('function', name='function1', autoadd=False) To('function1') Set('function', u'sin(x*pi*2)') Set('FillBelow/color', u'cyan') Set('FillBelow/hide', False) To('..') To('..') Add('grid', name='grid1', autoadd=False) To('grid1') Set('columns', 1) Set('leftMargin', u'2.3cm') Set('rightMargin', u'9cm') Set('topMargin', u'0.5cm') Set('bottomMargin', u'10.5cm') Add('axis', name='x', autoadd=False) Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', '0cm') Set('rightMargin', '0cm') Set('topMargin', '0cm') Set('bottomMargin', '0cm') Set('Background/color', u'#ffffc0') Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') Set('otherPosition', 1.0) To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'x2') Set('yData', u'y3') Set('marker', u'pentagon') Set('MarkerFill/color', u'magenta') To('..') To('..') Add('graph', name='graph2', autoadd=False) To('graph2') Set('leftMargin', '0cm') Set('rightMargin', '0cm') Set('topMargin', '0cm') Set('bottomMargin', '0cm') Set('Background/color', u'#ffffc0') Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') Set('otherPosition', 1.0) To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'x2') Set('yData', u'y2') Set('marker', u'square') Set('MarkerFill/color', u'green') To('..') To('..') To('..') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('label', u'Random axis, maybe something interesting^{2}...') To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'All the cheese in the world') Set('min', -50.0) Set('max', 100.0) Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) Add('function', name='function1', autoadd=False) To('function1') Set('function', u'0') Set('Line/color', u'red') Set('Line/width', u'2pt') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/isolatedaxes.vsz0000664000175000017500000000216014365252232016172 0ustar00jssjss# Veusz saved document (version 1.3) # User: jss # Date: Wed, 27 May 2009 19:18:06 +0000 Set('width', '9.6cm') Set('height', '8.25cm') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', '1.75cm') Set('rightMargin', '0.116cm') Set('topMargin', '0.163cm') Set('bottomMargin', '0.137cm') Set('Border/hide', True) Add('axis', name='x', autoadd=False) To('x') Set('label', u'\\emph{x}-axis\\\\(erg)') Set('log', True) Set('autoMirror', False) Set('lowerPosition', 0.17369650762420075) Set('upperPosition', 0.94726788504290027) Set('otherPosition', 0.47642172482345269) To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'\\emph{y}-axis\\\\(cm^{-3}})') Set('autoMirror', False) Set('direction', 'vertical') Set('lowerPosition', 0.043559240567171316) Set('upperPosition', 0.93040302493489757) Set('otherPosition', 0.089153959665518978) Set('Label/rotate', True) To('..') Add('function', name='function1', autoadd=False) To('function1') Set('Line/color', u'red') Set('Line/width', u'1pt') Set('Line/style', u'dotted-fine') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/labels.dat0000664000175000017500000000010214365252232014667 0ustar00jssjss1 1 "A test" 2 4 test2 3 4 "A^{200}" 4 6 "\\alpha \\beta \\gamma" ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/labels.vsz0000664000175000017500000000211614365252232014750 0ustar00jssjss# Veusz saved document (version 1.0) # User: jss # Date: Sat, 27 Oct 2007 14:31:12 +0000 ImportFile('labels.dat', u'x y label', linked=True) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('label', u'X axis') Set('max', 5.0) To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Y axis') Set('max', 8.0) Set('direction', 'vertical') To('..') Add('xy', name='test1', autoadd=False) To('test1') Set('labels', u'label') Set('PlotLine/hide', True) Set('Label/posnVert', u'top') Set('Label/size', u'16pt') To('..') Add('xy', name='test2', autoadd=False) To('test2') Set('xData', [0.5, 2.1000000000000001, 4.0999999999999996]) Set('yData', [0.10000000000000001, 0.10000000000000001, 3.1000000000000001]) Set('marker', u'square') Set('labels', u'dataset 2') Set('PlotLine/hide', True) Set('MarkerFill/hide', True) Set('Label/posnHorz', u'centre') Set('Label/posnVert', u'top') Set('Label/angle', 90.0) Set('Label/size', u'16pt') Set('Label/color', u'red') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/linked_datasets.vsz0000664000175000017500000000321214365252232016642 0ustar00jssjss# Veusz saved document (version 1.17.1) SetDataRange(u't', 100, (-3.141592, 3.141592), linked=True) SetDataExpression(u'x', u'sin(t)', linked=True) SetDataExpression(u'x2', u'sin(t*8)', linked=True) SetDataExpression(u'x3', u'sin(x*2)', linked=True) SetDataExpression(u'y', u'cos(t)', linked=True) SetDataExpression(u'y2', u'cos(t*16)', linked=True) Set('StyleSheet/Line/width', u'1pt') Set('StyleSheet/Font/font', u'Arial') Set('StyleSheet/axis/Label/size', u'18pt') Set('StyleSheet/axis/MajorTicks/number', 8) Set('StyleSheet/xy/markerSize', u'4pt') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('Background/color', u'#e9ffff') Add('axis', name='x', autoadd=False) To('x') Set('label', u'Experiments with linked datasets') Set('autoRange', u'exact') To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Another axis') Set('autoRange', u'exact') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('marker', u'diamond') Set('MarkerFill/color', u'blue') To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('xData', u'x2') Set('yData', u'y2') Set('PlotLine/color', u'#00aa00') Set('MarkerFill/color', u'green') To('..') Add('xy', name='xy3', autoadd=False) To('xy3') Set('xData', u'x3') Set('marker', u'star') Set('markerSize', u'6pt') Set('PlotLine/color', u'red') Set('PlotLine/width', u'1pt') Set('MarkerLine/hide', False) Set('MarkerFill/color', u'red') To('..') Add('xy', name='xy4', autoadd=False) To('xy4') Set('xData', u'x/2*y') Set('yData', u'y/2') Set('marker', u'barhorz') Set('MarkerFill/color', u'yellow') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/mandelbrot.vsz0000664000175000017500000000254214365252232015640 0ustar00jssjss# Veusz script (version 0.7 or later) # Jeremy Sanders (2005) # computes the Mandelbrot set in real time size = 300 maxiters = 20 image = zeros( (size, size) ) print("This takes some time, please wait") minx = 100000 maxx = -100000 miny = 100000 maxy = -100000 for i in range(size): for j in range(int(size/2)): c1 = -2+4.*i/size c2 = 2-4.*j/size x = c1 y = c2 minx=min(x, minx) maxx=max(x, maxx) miny=min(y, miny) maxy=max(y, maxy) n = 0 while n < maxiters and x**2+y**2 < 4.: x1 = x**2-y**2+c1 y1 = 2*x*y+c2 x = x1 y = y1 n += 1 image[j, i] = n image[size-j-1, i] = n # set output data into veusz SetData2D('image', image, xrange=(minx, maxx), yrange=(miny, maxy)) # construct the graph To(Add('page')) To(Add('graph')) # Add a label Add('label', label='The Mandelbrot Set', yPos=0.95, alignHorz='centre', alignVert='top', Text__size='30pt') # add colorbar in front of image Add('colorbar', name='colorbar1', image='image1', direction='vertical', vertPosn='top') # add image Add('image', name='image1', data='image', min=1, colorScaling='log', colorMap='heat', colorInvert=True) # adjust axes Set('x/min', -2.2) Set('x/max', 1.2) Set('y/min', 0.3) Set('y/max', 1.9) To('/') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/markerspolygon.vsz0000664000175000017500000000375714365252232016576 0ustar00jssjss# Veusz saved document (version 1.6) # User: jss # Date: Tue, 19 Jan 2010 21:30:02 +0000 SetDataExpression(u'stary_offset', u'stary+0.1', linked=True) SetDataExpression(u'starx_offset', u'starx+0.1', linked=True) # star shape for polygon ImportString(u'stary(numeric)',''' -1.200000e+00 -3.708000e-01 -3.708000e-01 1.416000e-01 9.708000e-01 4.584000e-01 9.708000e-01 1.416000e-01 -3.708000e-01 -3.708000e-01 ''') ImportString(u'starx(numeric)',''' 0.000000e+00 -2.700000e-01 -1.141200e+00 -4.356000e-01 -7.056000e-01 0.000000e+00 7.056000e-01 4.356000e-01 1.141200e+00 2.700000e-01 ''') Set('StyleSheet/xy/markerSize', u'5pt') Set('StyleSheet/xy/MarkerFill/color', u'#aaaaff') Set('StyleSheet/xy/PlotLine/color', 'grey') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('label', u'Outward ticks on this x axis') Set('min', -2.0) Set('max', 2.0) Set('outerticks', True) To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Outward ticks on this y axis') Set('min', -2.0) Set('max', 2.0) Set('outerticks', True) Set('direction', 'vertical') To('..') Add('polygon', name='polygon2', autoadd=False) To('polygon2') Set('xPos', u'starx') Set('yPos', u'stary') Set('positioning', u'axes') Set('Line/hide', True) Set('Fill/color', u'cyan') Set('Fill/transparency', 10) To('..') Add('polygon', name='polygon1', autoadd=False) To('polygon1') Set('xPos', u'starx_offset') Set('yPos', u'stary_offset') Set('positioning', u'axes') Set('Line/hide', True) Set('Fill/color', u'blue') To('..') colours = ['blue', 'cyan', 'lightgreen', 'purple', 'pink'] # add plot symbols for each type of plot symbol codes = veusz_markercodes for i, mcode in enumerate(codes): r = 1.6 + 0.2 * sin(16*pi/len(codes)*i) x = r*sin(2*pi/len(codes)*i) y = r*cos(2*pi/len(codes)*i) Add('xy', name=mcode, marker=mcode, xData=[x,x*1.2], yData=[y,y*1.2], MarkerFill__color=colours[i % len(colours)]) To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/mathml.vsz0000664000175000017500000001022714365252232014772 0ustar00jssjss# Veusz saved document (version 1.15.99) # Saved at 2012-07-01T14:28:01.630526 Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', u'2.5cm') Set('rightMargin', '0.2cm') Set('topMargin', '0.412cm') Set('bottomMargin', u'2.5cm') Add('axis', name='x', autoadd=False) To('x') Set('label', u"f(a)=γf(z)zadz\n") To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u"x=b±b24ac2a\n") Set('direction', 'vertical') To('..') Add('label', name=u'Christoffel', autoadd=False) To(u'Christoffel') Set('label', u"(XY)k=Xi(iY)k=Xi(Ykxi+ΓimkYm)") Set('alignHorz', u'centre') Set('alignVert', u'centre') Set('Text/size', u'16pt') To('..') Add('label', name=u'URL', autoadd=False) To(u'URL') Set('label', u'Taken from http://www.mathjax.org/demos/mathml-samples/') Set('xPos', [0.02]) Set('yPos', [0.02]) To('..') Add('label', name=u'CurlVector', autoadd=False) To(u'CurlVector') Set('label', u"×F=(FzyFyz)i+(FxzFzx)j+(FyxFxy)k\n") Set('xPos', [0.5]) Set('yPos', [0.2]) Set('alignHorz', u'centre') Set('alignVert', u'centre') To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'MathML examples') Set('yPos', [0.9]) Set('alignHorz', u'centre') Set('alignVert', u'centre') Set('Text/size', u'28pt') Set('Text/bold', True) To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/multiaxes.vsz0000664000175000017500000001432614365252232015527 0ustar00jssjss# Veusz saved document (version 1.17.1) ImportString('e_vapec_Fe(numeric),+,-',''' 1.048560e+00 2.058700e-01 -1.548750e-01 1.100720e+00 1.566200e-01 -1.362230e-01 1.458910e+00 1.215400e-01 -1.124400e-01 1.385790e+00 9.432000e-02 -8.882000e-02 1.554010e+00 1.010600e-01 -9.609000e-02 1.606450e+00 9.489000e-02 -8.930000e-02 1.529250e+00 6.969000e-02 -6.718000e-02 1.313880e+00 7.225000e-02 -8.319000e-02 1.225040e+00 6.154000e-02 -6.191000e-02 1.032810e+00 6.701000e-02 -6.126800e-02 9.529260e-01 4.919400e-02 -4.681300e-02 9.398610e-01 3.345500e-02 -4.384400e-02 8.007790e-01 6.300700e-02 -5.745300e-02 8.208400e-01 5.647500e-02 -5.382100e-02 7.343680e-01 7.786000e-02 -7.430000e-02 ''') ImportString('e_vapec_r(numeric),+,-',''' 6.572440e-01 6.572440e-01 -6.572440e-01 1.971730e+00 6.572440e-01 -6.572440e-01 3.812020e+00 1.183040e+00 -1.183040e+00 6.178090e+00 1.183040e+00 -1.183040e+00 8.675620e+00 1.314490e+00 -1.314490e+00 1.130460e+01 1.314490e+00 -1.314490e+00 1.472230e+01 2.103180e+00 -2.103180e+00 1.892860e+01 2.103180e+00 -2.103180e+00 2.366080e+01 2.628980e+00 -2.628980e+00 2.891870e+01 2.628980e+00 -2.628980e+00 3.417670e+01 2.628980e+00 -2.628980e+00 3.943460e+01 2.628980e+00 -2.628980e+00 4.469260e+01 2.628980e+00 -2.628980e+00 4.995050e+01 2.628980e+00 -2.628980e+00 5.573430e+01 3.154770e+00 -3.154770e+00 ''') ImportString('w_vapec_Fe(numeric),+,-',''' 1.142760e+00 2.147200e-01 -2.006420e-01 1.038570e+00 1.464800e-01 -1.187820e-01 1.420330e+00 8.939000e-02 -6.251000e-02 1.497210e+00 9.649000e-02 -7.899000e-02 1.583470e+00 8.227000e-02 -7.777000e-02 1.706010e+00 9.421000e-02 -8.042000e-02 1.700910e+00 6.814000e-02 -6.507000e-02 1.767900e+00 3.961000e-02 -5.456000e-02 1.492170e+00 4.743000e-02 -4.632000e-02 1.527640e+00 3.653000e-02 -5.372000e-02 1.387660e+00 5.398000e-02 -5.368000e-02 1.125260e+00 5.653000e-02 -5.886000e-02 8.423050e-01 5.660000e-02 -5.480100e-02 7.408840e-01 5.404300e-02 -5.544300e-02 7.804360e-01 5.989600e-02 -5.716000e-02 4.899940e-01 5.548800e-02 -5.086800e-02 ''') ImportString('w_vapec_r(numeric),+,-',''' 6.572440e-01 6.572440e-01 -6.572440e-01 1.971730e+00 6.572440e-01 -6.572440e-01 3.812020e+00 1.183040e+00 -1.183040e+00 6.178090e+00 1.183040e+00 -1.183040e+00 8.675620e+00 1.314490e+00 -1.314490e+00 1.130460e+01 1.314490e+00 -1.314490e+00 1.472230e+01 2.103180e+00 -2.103180e+00 1.892860e+01 2.103180e+00 -2.103180e+00 2.366080e+01 2.628980e+00 -2.628980e+00 2.891870e+01 2.628980e+00 -2.628980e+00 3.417670e+01 2.628980e+00 -2.628980e+00 3.943460e+01 2.628980e+00 -2.628980e+00 4.469260e+01 2.628980e+00 -2.628980e+00 4.995050e+01 2.628980e+00 -2.628980e+00 5.573430e+01 3.154770e+00 -3.154770e+00 6.204380e+01 3.154770e+00 -3.154770e+00 ''') ImportString('xmm_vapec_Fe(numeric),+,-',''' 1.449610e+00 9.015000e-02 -8.800000e-02 1.678040e+00 9.248000e-02 -8.888000e-02 1.397970e+00 5.039000e-02 -4.878000e-02 1.268240e+00 4.763000e-02 -4.640000e-02 9.716710e-01 2.446800e-02 -3.534100e-02 6.921560e-01 3.152200e-02 -2.766700e-02 5.156140e-01 5.149700e-02 -3.500000e-02 5.237700e-01 2.780900e-02 -2.708700e-02 4.533620e-01 2.902700e-02 -2.945400e-02 3.195460e-01 2.948100e-02 -2.584100e-02 ''') ImportString(u'xmm_vapec_Fe_outer(numeric),+,-',''' 9.716710e-01 2.446800e-02 -3.534100e-02 6.921560e-01 3.152200e-02 -2.766700e-02 5.156140e-01 5.149700e-02 -3.500000e-02 5.237700e-01 2.780900e-02 -2.708700e-02 4.533620e-01 2.902700e-02 -2.945400e-02 3.195460e-01 2.948100e-02 -2.584100e-02 ''') ImportString('xmm_vapec_r(numeric),+,-',''' 4.274760e+00 4.274760e+00 -4.274760e+00 1.207620e+01 3.526680e+00 -3.526680e+00 1.998450e+01 4.381630e+00 -4.381630e+00 2.917520e+01 4.809100e+00 -4.809100e+00 3.954150e+01 5.557190e+00 -5.557190e+00 5.183140e+01 6.732740e+00 -6.732740e+00 6.700680e+01 8.442650e+00 -8.442650e+00 8.570890e+01 1.025940e+01 -1.025940e+01 1.066550e+02 1.068690e+01 -1.068690e+01 1.292050e+02 1.186250e+01 -1.186250e+01 ''') ImportString(u'xmm_vapec_r_outer(numeric),+,-',''' 3.954150e+01 5.557190e+00 -5.557190e+00 5.183140e+01 6.732740e+00 -6.732740e+00 6.700680e+01 8.442650e+00 -8.442650e+00 8.570890e+01 1.025940e+01 -1.025940e+01 1.066550e+02 1.068690e+01 -1.068690e+01 1.292050e+02 1.186250e+01 -1.186250e+01 ''') Set('width', u'20cm') Add('page', name='flux', autoadd=False) To('flux') Add('graph', name='graph1', autoadd=False) To('graph1') Set('rightMargin', u'1.7cm') Add('axis', name='x', autoadd=False) To('x') Set('label', u'Radius (kpc)') Set('min', 8.0) Set('log', True) To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Optical surface brightness (mag arcsec^{-2})') Set('min', 31.0) Set('max', 22.0) Set('direction', 'vertical') To('..') Add('axis', name='ydensity', autoadd=False) To('ydensity') Set('label', u'Electron density (cm^{-3})') Set('min', 0.001) Set('max', 0.03) Set('log', True) Set('direction', u'vertical') Set('otherPosition', 1.0) To('..') Add('function', name='Bsb', autoadd=False) To('Bsb') Set('function', u'(1.39+22.6)-8.33+8.33*(x/15.43)**0.25') Set('key', u'Optical surface brightness') Set('Line/color', u'red') To('..') Add('function', name='jamesne', autoadd=False) To('jamesne') Set('function', u'((x/0.096)**-0.87-0.00055)*1.2') Set('key', u'Electron density') Set('yAxis', u'ydensity') Set('Line/color', u'black') Set('Line/style', u'dashed') To('..') Add('xy', name='FeW', autoadd=False) To('FeW') Set('xData', u'w_vapec_r') Set('yData', u'w_vapec_Fe') Set('key', u'Iron \\emph{Chandra} Western') Set('yAxis', u'yZ') Set('MarkerFill/color', u'blue') To('..') Add('xy', name='FeE', autoadd=False) To('FeE') Set('xData', u'e_vapec_r') Set('yData', u'e_vapec_Fe') Set('marker', u'cross') Set('key', u'Iron \\emph{Chandra} Eastern') Set('yAxis', u'yZ') Set('MarkerFill/color', u'grey') To('..') Add('axis', name='yZ', autoadd=False) To('yZ') Set('label', u'Iron metallicity (solar units)') Set('min', 0.3) Set('max', 1.9) Set('direction', u'vertical') Set('otherPosition', 0.8) Set('MajorTicks/number', 8) To('..') Add('xy', name='FeWXMM', autoadd=False) To('FeWXMM') Set('xData', u'xmm_vapec_r_outer') Set('yData', u'xmm_vapec_Fe_outer') Set('marker', u'square') Set('key', u'Iron \\emph{XMM}') Set('yAxis', u'yZ') Set('MarkerFill/color', u'white') To('..') Add('key', name='key1', autoadd=False) To('key1') Set('Text/size', u'14pt') Set('Border/hide', True) Set('horzPosn', u'left') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/multixy.vsz0000664000175000017500000000536014365252232015225 0ustar00jssjss# Veusz saved document (version 1.15) # Saved at 2012-03-28T19:15:56.421913 ImportString('x(numeric)',''' 0.000000e+00 1.000000e+00 2.000000e+00 3.000000e+00 4.000000e+00 5.000000e+00 6.000000e+00 7.000000e+00 8.000000e+00 9.000000e+00 1.000000e+01 1.100000e+01 1.200000e+01 1.300000e+01 1.400000e+01 1.500000e+01 1.600000e+01 1.700000e+01 1.800000e+01 1.900000e+01 ''') ImportString('y1(numeric)',''' -8.627642e-01 1.213047e+00 -1.682870e+00 2.540669e+00 9.385744e-04 -6.966657e-01 -8.769203e-01 -6.930465e-01 -2.456379e-01 -6.419765e-01 -1.485679e+00 -7.142200e-01 8.639527e-02 -1.155861e+00 -9.576156e-01 6.018372e-02 -1.027861e+00 2.953903e-01 -3.615840e-01 2.474292e-01 ''') ImportString('y2(numeric)',''' 7.356253e-01 2.187511e+00 9.680102e-01 -7.393343e-01 1.071199e+00 1.763134e+00 1.589872e+00 2.015283e+00 7.102356e-01 1.808795e+00 8.750188e-01 1.477934e+00 3.591239e-02 3.046406e+00 3.515513e+00 7.194178e-01 3.498590e+00 4.465251e+00 1.638100e+00 3.577523e+00 ''') ImportString('y3(numeric),+-',''' 1.537872e+00 3.000000e-01 2.879103e-01 3.000000e-01 7.127184e+00 3.000000e-01 5.775675e+00 3.000000e-01 3.390224e+00 3.000000e-01 2.470264e+00 3.000000e-01 1.019945e+00 3.000000e-01 -5.690097e-01 3.000000e-01 4.276276e+00 3.000000e-01 -4.449537e+00 3.000000e-01 -7.127589e-02 3.000000e-01 -9.531333e-01 3.000000e-01 -1.129021e+00 3.000000e-01 2.561764e+00 3.000000e-01 -1.763882e+00 3.000000e-01 -3.791216e-01 3.000000e-01 2.752641e-02 3.000000e-01 -1.044617e+00 3.000000e-01 2.075609e+00 3.000000e-01 -7.859457e-01 3.000000e-01 ''') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('label', 'Winged warriors') To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', 'Death rate') Set('direction', 'vertical') To('..') Add('key', name='key1', autoadd=False) To('key1') Set('Background/color', '#f0f0f0') Set('title', u'Datasets') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('yData', 'y1') Set('key', 'Valkyries') To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('yData', 'y2') Set('marker', 'diamond') Set('key', 'Swindon') Set('PlotLine/style', 'dotted') Set('MarkerFill/color', 'red') To('..') Add('xy', name='xy3', autoadd=False) To('xy3') Set('yData', 'y3') Set('marker', 'square') Set('key', 'Discworld') Set('PlotLine/style', 'dashed') Set('MarkerFill/color', 'blue') To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', 'The joy of plots') Set('yPos', [0.9]) Set('alignHorz', 'centre') Set('Text/size', '20pt') To('..') Add('function', name='function1', autoadd=False) To('function1') Set('function', '2.5') Set('key', 'Model') Set('Line/color', '#20f020') Set('Line/width', '2pt') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/nd-1.csv0000664000175000017500000000022314365252232014213 0ustar00jssjss1.0,2.3,1.4,1.7 2.1,2.5,1.0,1.8 1.3,2.2,1.7,2.9 3.3,2.1,2.5,1.5 1.3,1.9,2.8,1.3 1.8,2.9,2.0,2.7 1.6,1.8,2.5,1.7 2.5,2.0,1.1,2.5 3.1,1.1,2.1,1.8 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/nd.vsz0000664000175000017500000000456014365252232014114 0ustar00jssjss# Veusz saved document (version 1.24) # Saved at 2016-11-20T10:15:49.326108 ImportFileND(u'nd-1.csv', u'ndim', csvlocale=u'en_GB', linked=True, mode='csv') Set('StyleSheet/Font/font', u'DejaVu Sans') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name=u'inset', autoadd=False) To(u'inset') Set('leftMargin', '3.235cm') Set('rightMargin', '8.745cm') Set('topMargin', '9.487cm') Set('bottomMargin', u'2.6cm') Add('axis', name='x', autoadd=False) To('x') Set('TickLabels/hide', True) To('..') Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') Set('TickLabels/hide', True) To('..') Add('image', name='image1', autoadd=False) To('image1') Set('data', u'ndim[:,:,0]') Set('colorMap', u'brown-blue') To('..') To('..') Add('graph', name=u'inset2', autoadd=False) To(u'inset2') Set('leftMargin', '10.379cm') Set('rightMargin', '1.601cm') Set('topMargin', '9.487cm') Set('bottomMargin', u'2.6cm') Add('axis', name='x', autoadd=False) To('x') Set('TickLabels/hide', True) To('..') Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') Set('TickLabels/hide', True) To('..') Add('image', name='image1', autoadd=False) To('image1') Set('data', u'ndim[:,2,:]') Set('colorMap', u'blue-darkorange') To('..') To('..') Add('graph', name=u'main', autoadd=False) To(u'main') Set('Background/color', u'#ffe9ff') Add('axis', name='x', autoadd=False) To('x') Set('autoRange', u'+5%') To('..') Add('axis', name='y', autoadd=False) To('y') Set('autoRange', u'+5%') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'ndim[1,2,:]') Set('yData', u'ndim[0,1,:]') Set('scalePoints', u'ndim[2,0,:]') Set('PlotLine/hide', True) To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('marker', u'square') Set('color', u'#ffaa00') Set('xData', u'ndim[0,:,2]') Set('yData', u'ndim[1,:,2]') Set('scalePoints', u'ndim[0,:,2]') Set('PlotLine/hide', True) To('..') Add('xy', name='xy3', autoadd=False) To('xy3') Set('marker', u'diamond') Set('color', u'#00aaff') Set('xData', u'ndim[0,1,:]') Set('yData', u'ndim[0,2,:]') Set('scalePoints', u'ndim[2,0,:]') Set('PlotLine/hide', True) To('..') Add('xy', name='xy4', autoadd=False) To('xy4') Set('marker', u'pentagon') Set('color', u'#55aa00') Set('xData', u'ndim[:,1,2]') Set('yData', u'ndim[0,:,1]') Set('scalePoints', u'ndim[2,0,:]') Set('PlotLine/hide', True) To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/polar.vsz0000664000175000017500000000445614365252232014634 0ustar00jssjss# Veusz saved document (version 1.25.1) # Saved at 2017-04-30T10:56:21.427544 ImportString(u'r(numeric)',''' 2.029732e+00 2.688856e+00 2.708923e+00 2.711315e+00 2.640299e+00 2.735022e+00 2.407293e+00 2.130543e+00 2.007767e+00 2.792255e+00 2.070002e+00 2.555355e+00 2.644494e+00 2.639505e+00 2.372546e+00 2.595538e+00 2.646493e+00 2.698109e+00 ''') ImportString(u'theta(numeric)',''' 0.000000e+00 2.000000e+01 4.000000e+01 6.000000e+01 8.000000e+01 1.000000e+02 1.200000e+02 1.400000e+02 1.600000e+02 1.800000e+02 2.000000e+02 2.200000e+02 2.400000e+02 2.600000e+02 2.800000e+02 3.000000e+02 3.200000e+02 3.400000e+02 ''') Set('colorTheme', u'colorbrewer1') Set('StyleSheet/Font/font', u'Arial') Add('page', name='page1', autoadd=False) To('page1') Add('polar', name='polar2', autoadd=False) To('polar2') Set('rightMargin', u'7.8cm') Set('topMargin', u'0.5cm') Set('bottomMargin', u'8.3cm') Set('minradius', 0.1) Set('maxradius', 10.0) Set('log', True) Set('TickLabels/bold', True) Add('nonorthpoint', name='nonorthpoint1', autoadd=False) To('nonorthpoint1') Set('data1', u'r') Set('data2', u'theta') Set('PlotLine/color', u'blue') Set('PlotLine/hide', False) Set('MarkerLine/color', u'blue') Set('MarkerFill/color', u'blue') To('..') Add('nonorthfunc', name='nonorthfunc2', autoadd=False) To('nonorthfunc2') Set('steps', 100) Set('function', u'sin(b / 10)*10') Set('variable', u'b') Set('PlotLine/color', u'#00ff00') Set('PlotLine/width', u'1pt') Set('Fill1/color', u'#00ff00') Set('Fill1/hide', False) Set('Fill1/transparency', 80) To('..') To('..') Add('polar', name='polar1', autoadd=False) To('polar1') Set('maxradius', 3.0) Add('nonorthfunc', name='nonorthfunc1', autoadd=False) To('nonorthfunc1') Set('function', u'1+cos(b/180*pi)') Set('variable', u'b') Set('PlotLine/width', u'1pt') Set('Fill1/color', u'auto') Set('Fill1/hide', False) Set('Fill1/transparency', 80) To('..') Add('nonorthfunc', name='nonorthfunc2', autoadd=False) To('nonorthfunc2') Set('function', u'2+sin(b/180*pi)*cos(b/180*pi)') Set('variable', u'b') Set('PlotLine/width', u'1pt') Set('Fill1/color', u'auto') Set('Fill1/hide', False) Set('Fill1/transparency', 80) To('..') Add('nonorthpoint', name='nonorthpoint1', autoadd=False) To('nonorthpoint1') Set('marker', u'cross') Set('data1', u'r') Set('data2', u'theta') Set('PlotLine/hide', False) To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/profile.vsz0000664000175000017500000002347614365252232015162 0ustar00jssjss# Veusz saved document (version 1.8) # User: jss # Date: Thu, 17 Jun 2010 19:05:07 +0000 ImportString(u'XMM_T(numeric),+,-',''' 5.628000e+00 4.444000e-02 -4.377000e-02 7.894300e+00 9.637000e-02 -9.432000e-02 8.572800e+00 1.505600e-01 -1.452800e-01 8.935100e+00 2.016700e-01 -1.921900e-01 8.812300e+00 2.500800e-01 -2.317200e-01 9.093300e+00 3.304300e-01 -3.117300e-01 8.778200e+00 3.833500e-01 -3.486300e-01 9.014000e+00 5.364900e-01 -4.666900e-01 8.116000e+00 6.585900e-01 -5.105600e-01 7.009700e+00 6.368200e-01 -4.733100e-01 7.267300e+00 7.396100e-01 -6.892600e-01 7.608800e+00 1.070300e+00 -7.781600e-01 6.167300e+00 9.326400e-01 -7.295500e-01 4.853700e+00 8.235500e-01 -5.775300e-01 5.289800e+00 1.210600e+00 -6.668300e-01 ''') ImportString(u'XMM_r(numeric),+,-',''' 4.079410e+01 4.079410e+01 -4.079410e+01 1.223820e+02 4.079420e+01 -4.079420e+01 2.039710e+02 4.079410e+01 -4.079410e+01 2.855590e+02 4.079410e+01 -4.079410e+01 3.671470e+02 4.079420e+01 -4.079420e+01 4.487360e+02 4.079410e+01 -4.079410e+01 5.303240e+02 4.079410e+01 -4.079410e+01 6.119120e+02 4.079420e+01 -4.079420e+01 6.935010e+02 4.079410e+01 -4.079410e+01 7.750890e+02 4.079410e+01 -4.079410e+01 8.566770e+02 4.079420e+01 -4.079420e+01 9.382660e+02 4.079410e+01 -4.079410e+01 1.019850e+03 4.079410e+01 -4.079410e+01 1.101440e+03 4.079420e+01 -4.079420e+01 1.183030e+03 4.079410e+01 -4.079410e+01 ''') ImportString(u'join_T(numeric),+,-',''' 2.848300e+00 2.038400e-01 -1.924600e-01 3.486000e+00 2.454100e-01 -2.203600e-01 4.130900e+00 2.842800e-01 -2.521200e-01 5.275100e+00 5.145600e-01 -4.345200e-01 5.181000e+00 5.605500e-01 -4.667900e-01 5.945600e+00 1.172900e+00 -8.520800e-01 5.172900e+00 7.715200e-01 -6.454600e-01 8.381900e+00 2.117600e+00 -1.484000e+00 9.151200e+00 2.933500e+00 -1.821600e+00 8.095900e+00 1.144400e+00 -9.110800e-01 6.760900e+00 7.825600e-01 -6.630700e-01 7.512700e+00 1.078900e+00 -8.886900e-01 8.290300e+00 1.508700e+00 -1.175700e+00 8.545500e+00 1.509800e+00 -1.083000e+00 1.002600e+01 2.347800e+00 -1.586200e+00 8.040800e+00 1.518800e+00 -1.075000e+00 8.924100e+00 1.402500e+00 -1.070000e+00 8.500300e+00 1.747800e+00 -1.243100e+00 1.193400e+01 2.563800e+00 -1.914100e+00 7.966200e+00 1.015300e+00 -8.143500e-01 1.115500e+01 1.851900e+00 -1.732100e+00 8.335400e+00 9.302900e-01 -8.166900e-01 1.087300e+01 2.340300e+00 -1.582200e+00 9.084100e+00 3.011000e+00 -1.691800e+00 5.619500e+00 2.557100e+00 -1.645100e+00 4.188800e+00 5.971800e-01 -5.137700e-01 ''') ImportString(u'join_Tcool(numeric)',''' 4.866533e+08 6.460709e+08 8.457038e+08 1.309789e+09 1.646014e+09 2.438356e+09 2.569063e+09 3.818538e+09 4.713869e+09 5.285466e+09 5.610075e+09 8.007782e+09 1.066876e+10 1.256449e+10 1.707578e+10 1.696616e+10 2.241039e+10 2.815604e+10 4.075918e+10 4.094509e+10 7.030750e+10 8.146804e+10 1.612034e+11 2.300251e+11 2.865877e+11 2.415128e+11 ''') ImportString(u'join_ne(numeric),+,-',''' 1.013051e-01 3.885018e-03 -3.855963e-03 8.459975e-02 2.732787e-03 -2.742314e-03 7.253090e-02 1.800797e-03 -1.736446e-03 5.611583e-02 1.295804e-03 -1.302452e-03 4.173251e-02 1.210027e-03 -1.232160e-03 3.347415e-02 1.139675e-03 -1.112957e-03 2.727904e-02 1.157072e-03 -1.168092e-03 2.577121e-02 8.503261e-04 -8.617833e-04 2.115231e-02 8.235903e-04 -8.098673e-04 1.808490e-02 3.904686e-04 -3.737143e-04 1.425932e-02 3.416427e-04 -3.560778e-04 1.145005e-02 2.591201e-04 -2.492951e-04 8.995093e-03 3.524567e-04 -2.439155e-04 7.476746e-03 1.812584e-04 -1.850032e-04 6.574554e-03 1.239572e-04 -1.802632e-04 5.492044e-03 1.489112e-04 -1.482904e-04 4.334784e-03 9.548168e-05 -9.709612e-05 3.633731e-03 7.439211e-05 -8.608619e-05 2.939645e-03 7.883378e-05 -7.137054e-05 2.261917e-03 4.206105e-05 -4.172175e-05 1.721952e-03 2.050454e-05 -3.562590e-05 1.240906e-03 1.624617e-05 -2.028029e-05 6.830295e-04 1.871479e-05 -1.764928e-05 4.394545e-04 1.473820e-05 -1.445650e-05 2.567464e-04 2.377862e-05 -2.075020e-05 2.581937e-04 9.016915e-06 -9.065599e-06 ''') ImportString(u'join_proj_T(numeric),+,-',''' 3.921200e+00 8.241000e-02 -7.806000e-02 4.463200e+00 1.025400e-01 -1.001800e-01 5.158200e+00 1.329200e-01 -1.324300e-01 5.936800e+00 1.843800e-01 -1.741000e-01 6.327500e+00 2.304300e-01 -2.105600e-01 6.879600e+00 2.833800e-01 -2.641800e-01 7.067100e+00 3.068400e-01 -2.814800e-01 8.386500e+00 4.438700e-01 -4.020400e-01 8.368100e+00 4.678800e-01 -4.193100e-01 7.987900e+00 3.082700e-01 -2.867900e-01 7.755000e+00 3.112900e-01 -2.885900e-01 8.491100e+00 3.669700e-01 -3.308300e-01 8.926800e+00 4.274000e-01 -3.907600e-01 9.433600e+00 4.752000e-01 -4.266000e-01 9.448900e+00 4.931200e-01 -4.461500e-01 8.913100e+00 4.832100e-01 -4.371800e-01 9.483900e+00 4.748600e-01 -4.375600e-01 9.535400e+00 5.495100e-01 -4.887600e-01 9.956600e+00 5.910000e-01 -5.276500e-01 8.940600e+00 4.640400e-01 -4.203600e-01 9.809900e+00 6.470500e-01 -5.633500e-01 9.168100e+00 5.598600e-01 -4.978400e-01 9.803500e+00 8.398200e-01 -7.446100e-01 7.418000e+00 7.233800e-01 -5.940900e-01 5.493000e+00 6.999100e-01 -5.576600e-01 4.669900e+00 8.224700e-01 -5.288900e-01 ''') ImportString(u'join_r(numeric),+,-',''' 1.166880e+01 5.838770e+00 -5.838770e+00 2.140010e+01 3.892510e+00 -3.892510e+00 2.918510e+01 3.892510e+00 -3.892510e+00 3.697010e+01 3.892510e+00 -3.892510e+00 4.475520e+01 3.892510e+00 -3.892510e+00 5.254020e+01 3.892510e+00 -3.892510e+00 6.032520e+01 3.892510e+00 -3.892510e+00 6.811020e+01 3.892510e+00 -3.892510e+00 7.589530e+01 3.892510e+00 -3.892510e+00 8.757280e+01 7.785030e+00 -7.785030e+00 1.031430e+02 7.785030e+00 -7.785030e+00 1.206590e+02 9.731290e+00 -9.731290e+00 1.401220e+02 9.731290e+00 -9.731290e+00 1.615310e+02 1.167750e+01 -1.167750e+01 1.848860e+02 1.167750e+01 -1.167750e+01 2.082410e+02 1.167750e+01 -1.167750e+01 2.374350e+02 1.751630e+01 -1.751630e+01 2.724670e+02 1.751630e+01 -1.751630e+01 3.113920e+02 2.140880e+01 -2.140880e+01 3.639410e+02 3.114010e+01 -3.114010e+01 4.320600e+02 3.697890e+01 -3.697890e+01 5.247020e+02 5.830020e+01 -5.830020e+01 6.607350e+02 7.773360e+01 -7.773360e+01 8.356360e+02 9.716700e+01 -9.716700e+01 1.029970e+03 9.716700e+01 -9.716700e+01 1.272890e+03 1.457500e+02 -1.457500e+02 ''') Set('width', '15.9cm') Set('height', '11.8cm') Set('StyleSheet/Font/font', u'Verdana') Set('StyleSheet/axis/Label/atEdge', True) Set('StyleSheet/graph/leftMargin', '0cm') Set('StyleSheet/graph/rightMargin', '0cm') Set('StyleSheet/graph/bottomMargin', '0cm') Add('page', name='page1', autoadd=False) To('page1') Add('grid', name='grid1', autoadd=False) To('grid1') Set('columns', 1) Set('leftMargin', '1.83cm') Set('rightMargin', '1.77cm') Set('topMargin', '0cm') Set('bottomMargin', '1.23cm') Add('axis', name='x', autoadd=False) To('x') Set('label', u'Radius (kpc)') Set('min', 8.0) Set('log', True) To('..') Add('graph', name='T', autoadd=False) To('T') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Temperature (keV)') Set('log', True) Set('direction', 'vertical') To('..') Add('xy', name='deproj', autoadd=False) To('deproj') Set('xData', u'join_r') Set('yData', u'join_T') Set('marker', u'square') Set('markerSize', u'1pt') Set('key', u'Chandra deprojected') Set('errorStyle', u'diamond') Set('PlotLine/hide', True) Set('MarkerLine/hide', True) Set('MarkerFill/color', u'magenta') Set('ErrorBarLine/color', u'grey') To('..') Add('xy', name='proj', autoadd=False) To('proj') Set('xData', u'join_r') Set('yData', u'join_proj_T') Set('marker', u'diamond') Set('markerSize', u'2.5pt') Set('key', u'Chandra projected') Set('errorStyle', u'barends') Set('PlotLine/hide', True) Set('MarkerFill/color', u'cyan') Set('ErrorBarLine/color', u'blue') Set('ErrorBarLine/width', '0.5pt') To('..') Add('xy', name='xmm', autoadd=False) To('xmm') Set('xData', u'XMM_r') Set('yData', u'XMM_T') Set('marker', u'star') Set('markerSize', u'3pt') Set('key', u'XMM projected') Set('errorStyle', u'curve') Set('PlotLine/hide', True) Set('MarkerLine/hide', True) Set('MarkerFill/color', u'#ff0000') Set('ErrorBarLine/color', u'red') Set('ErrorBarLine/width', '0.5pt') To('..') Add('key', name='key1', autoadd=False) To('key1') Set('Text/size', u'12pt') Set('Border/hide', True) Set('horzPosn', 'manual') Set('vertPosn', 'manual') Set('keyLength', u'0.5cm') Set('horzManual', 0.44233856029204632) Set('vertManual', 0.028242379921377202) To('..') To('..') Add('graph', name='ne', autoadd=False) To('ne') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Electron density (cm^{-3})') Set('max', 0.20000000000000001) Set('log', True) Set('direction', 'vertical') To('..') Add('xy', name='deproj', autoadd=False) To('deproj') Set('xData', u'join_r') Set('yData', u'join_ne') Set('marker', u'square') Set('markerSize', u'1pt') Set('key', u'Chandra deproj. density') Set('errorStyle', u'diamond') Set('PlotLine/hide', True) Set('MarkerLine/hide', True) Set('MarkerFill/color', u'magenta') Set('ErrorBarLine/color', u'grey') Set('ErrorBarLine/width', '0.5pt') To('..') Add('xy', name='tcool', autoadd=False) To('tcool') Set('xData', u'join_r') Set('yData', u'join_Tcool') Set('marker', u'linecross') Set('markerSize', u'3pt') Set('key', u'Chandra cooling time') Set('yAxis', u'y2') Set('errorStyle', u'bar') Set('PlotLine/hide', True) Set('MarkerLine/hide', False) Set('MarkerFill/color', u'magenta') Set('ErrorBarLine/color', u'grey') Set('ErrorBarLine/width', '0.5pt') To('..') Add('axis', name='y2', autoadd=False) To('y2') Set('label', u'Cooling time (yr)') Set('min', 100000000.0) Set('max', 1000000000000.0) Set('log', True) Set('reflect', False) Set('direction', u'vertical') Set('lowerPosition', 0.0) Set('upperPosition', 1.0) Set('otherPosition', 1.0) To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u'Cooling time') Set('xPos', [0.22084923837100287]) Set('yPos', [0.29071858444521959]) Set('angle', 340.0) Set('Text/size', u'14pt') To('..') Add('label', name='label2', autoadd=False) To('label2') Set('label', u'Density') Set('xPos', [0.43108631326520735]) Set('yPos', [0.65525239745398034]) Set('angle', 22.0) Set('Text/size', u'14pt') Set('Text/color', u'magenta') To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/shapes.vsz0000664000175000017500000000540514365252232014775 0ustar00jssjss# Veusz saved document (version 1.2) # User: jss # Date: Sun, 23 Nov 2008 13:04:18 +0000 Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', u'1.2cm') Set('bottomMargin', u'1.2cm') Add('axis', name='x', autoadd=False) To('x') Set('min', 0.0) Set('max', 1.0) To('..') Add('axis', name='y', autoadd=False) To('y') Set('min', 0.0) Set('max', 1.5) Set('direction', 'vertical') To('..') Add('rect', name='diamons', autoadd=False) To('diamons') Set('Fill/transparency', 50) Set('Fill/hide', False) Set('xPos', [0.10000000000000001, 0.5]) Set('yPos', [0.10000000000000001, 0.5]) Set('width', [0.10000000000000001, 0.20000000000000001]) Set('height', [0.10000000000000001, 0.20000000000000001]) Set('rotate', [45.0]) To('..') Add('line', name='arrow', autoadd=False) To('arrow') Set('arrowleft', u'arrow') Set('arrowright', u'arrow') Set('xPos', [0.16651257389999999]) Set('yPos', [0.17450029668958472]) Set('length', [0.33063522110660781]) Set('angle', [315.0]) To('..') Add('ellipse', name='circle', autoadd=False) To('circle') Set('Fill/color', u'blue') Set('Fill/transparency', 50) Set('Fill/hide', False) Set('xPos', [0.75361019828480202]) Set('yPos', [0.71367158438168354]) Set('width', [0.10000000000000001]) Set('height', [0.10000000000000001]) Set('rotate', [0.0]) To('..') Add('xy', name='pts', autoadd=False) To('pts') Set('xData', [0.10000000000000001, 0.20000000000000001, 0.5, 0.5]) Set('yData', [0.14999999999999999, 0.20000000000000001, 0.5, 0.75]) Set('marker', u'diamondhole') Set('markerSize', u'5pt') Set('MarkerFill/color', u'red') To('..') Add('label', name='alpha', autoadd=False) To('alpha') Set('label', u'\\alpha') Set('xPos', [0.26436217797160116]) Set('yPos', [0.31827930674081106]) Set('Text/size', u'20pt') To('..') Add('label', name='title', autoadd=False) To('title') Set('label', u'Some shapes') Set('xPos', [0.5]) Set('yPos', [0.90000000000000002]) Set('alignHorz', u'centre') Set('alignVert', u'centre') Set('Text/size', u'30pt') To('..') Add('function', name='function1', autoadd=False) To('function1') Set('function', u'x**2+0.5') Set('Line/hide', True) Set('FillBelow/color', u'green') Set('FillBelow/hide', False) To('..') Add('line', name='line2', autoadd=False) To('line2') Set('arrowleft', u'arrowreverse') Set('arrowright', u'circle') Set('xPos', [0.40548435678619482]) Set('yPos', [0.80000000000000004]) Set('length', [0.20000000000000001]) Set('angle', [90.471358757255615]) Set('Line/color', u'blue') To('..') Add('rect', name='rect2', autoadd=False) To('rect2') Set('Fill/color', u'#aaff7f') Set('Fill/hide', False) Set('Border/style', u'dotted') Set('xPos', [0.5]) Set('yPos', [0.89000000000000001]) Set('width', [0.5]) Set('height', [0.10000000000000001]) Set('rotate', [0.0]) To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/sin.vsz0000664000175000017500000000211714365252232014300 0ustar00jssjss# Veusz saved document (version 0.4) # User: jss # Date: Sun, 13 Mar 2005 18:05:32 +0000 ImportString('y',''' 0.000000e+00 4.067366e-01 7.431448e-01 9.510565e-01 9.945219e-01 8.660254e-01 5.877853e-01 2.079117e-01 -2.079117e-01 -5.877853e-01 -8.660254e-01 -9.945219e-01 -9.510565e-01 -7.431448e-01 -4.067366e-01 -2.449213e-16 ''') ImportString('x',''' 0.000000e+00 4.188790e-01 8.377580e-01 1.256637e+00 1.675516e+00 2.094395e+00 2.513274e+00 2.932153e+00 3.351032e+00 3.769911e+00 4.188790e+00 4.607669e+00 5.026548e+00 5.445427e+00 5.864306e+00 6.283185e+00 ''') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('label', '\\italic{x}') To('..') Add('axis', name='y', autoadd=False) To('y') Set('label', 'sin \\italic{x}') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('MarkerFill/color', 'cyan') To('..') Add('function', name='function1', autoadd=False) To('function1') Set('function', 'sin(x)') Set('Line/color', 'red') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/sin_byhand.vsz0000664000175000017500000000105714365252232015627 0ustar00jssjss# this is sin.vsz # but this is what we would use if we were programming it by hand x=arange(16)/15. * 2* pi y=sin(x) SetData('x', x) SetData('y', y) To( Add('page') ) To( Add('graph') ) Set('x/label', '\\italic{x}') Set('y/label', 'sin \\italic{x}') # we could assume that the name of the xy is xy1, but # this code means other xys could be inserted before this one # but it would still work xy = Add('xy') Set('%s/MarkerFill/color' % xy, 'cyan') fn = Add('function') Set('%s/function' % fn, 'sin(x)') Set('%s/Line/color' % fn, 'red') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/spectrum.vsz0000664000175000017500000074234114365252232015363 0ustar00jssjss# Veusz saved document (version 1.8) # User: jss # Date: Thu, 17 Jun 2010 17:00:56 +0000 ImportString(u'flux(numeric),+-',''' 2.861010e+03 4.547170e+03 -7.409870e+01 6.536110e+01 -2.857510e+00 4.228670e+00 -1.980870e-01 2.777620e-01 1.785610e-01 7.082090e-02 -1.368460e-02 1.465760e-02 3.897360e-04 5.402620e-03 3.944980e-03 2.587620e-03 4.341220e-05 1.533630e-03 1.702510e-03 8.312080e-04 -1.016690e-03 6.990930e-04 7.531280e-04 5.704690e-04 5.805790e-04 4.560370e-04 3.678060e-04 4.197650e-04 5.169160e-05 2.739360e-04 4.095020e-04 1.523600e-04 1.338490e-04 8.217050e-05 3.564070e-05 6.596020e-05 -2.585000e-05 4.778170e-05 1.126610e-04 5.349490e-05 8.400350e-05 7.116170e-05 2.121370e-04 9.766310e-05 3.038190e-04 1.869580e-04 7.236700e-04 3.161350e-04 1.028230e-03 4.622540e-04 2.146910e-03 6.097640e-04 2.904600e-03 7.987310e-04 2.291840e-03 8.011260e-04 2.960800e-03 8.085590e-04 4.408690e-03 7.376950e-04 3.567680e-03 5.860230e-04 2.422900e-03 4.616410e-04 2.563590e-03 3.805690e-04 1.620900e-03 3.021680e-04 2.021810e-03 2.428460e-04 1.716790e-03 1.923180e-04 1.838320e-03 1.890360e-04 1.445380e-03 1.340410e-04 1.510370e-03 1.192620e-04 1.544470e-03 1.198910e-04 1.521150e-03 1.129190e-04 1.362110e-03 1.108320e-04 1.581290e-03 1.038470e-04 1.804590e-03 1.084650e-04 1.929750e-03 1.038210e-04 1.834490e-03 9.696040e-05 1.666100e-03 9.004330e-05 1.223830e-03 8.225680e-05 1.124530e-03 7.873860e-05 1.206090e-03 7.675500e-05 1.264110e-03 7.400770e-05 1.371810e-03 7.158190e-05 1.338920e-03 6.836650e-05 1.342980e-03 6.895620e-05 1.219650e-03 6.543910e-05 1.163210e-03 6.335340e-05 1.127750e-03 6.091640e-05 1.026730e-03 5.334660e-05 9.756010e-04 4.979970e-05 9.780990e-04 4.899700e-05 8.115800e-04 4.475730e-05 8.957100e-04 4.645520e-05 8.947580e-04 4.497950e-05 9.635150e-04 5.058840e-05 1.069390e-03 5.872320e-05 1.006650e-03 4.948750e-05 9.243670e-04 4.591560e-05 9.125620e-04 4.679670e-05 8.713890e-04 4.256130e-05 8.910070e-04 4.384970e-05 7.762210e-04 4.241900e-05 8.683510e-04 4.119610e-05 8.455850e-04 4.172860e-05 6.999520e-04 4.040850e-05 8.657580e-04 4.669020e-05 8.503220e-04 4.050280e-05 1.009740e-03 4.270630e-05 9.939050e-04 4.107680e-05 9.318460e-04 4.149810e-05 9.162650e-04 3.974780e-05 9.679990e-04 3.982370e-05 1.037850e-03 4.140730e-05 1.048320e-03 4.221370e-05 9.859770e-04 4.018910e-05 9.611630e-04 4.050540e-05 9.496320e-04 4.197060e-05 1.154220e-03 4.397390e-05 1.195480e-03 4.304880e-05 1.316100e-03 4.479180e-05 1.322080e-03 4.447060e-05 1.462290e-03 4.833050e-05 1.409960e-03 4.638030e-05 1.324160e-03 5.276210e-05 1.161440e-03 4.374760e-05 1.134130e-03 4.164150e-05 1.137740e-03 4.225890e-05 1.060220e-03 4.030560e-05 1.057720e-03 4.105860e-05 1.014710e-03 4.044670e-05 9.644090e-04 3.719090e-05 1.029160e-03 3.826920e-05 8.932350e-04 3.508860e-05 9.523760e-04 3.626080e-05 1.031550e-03 3.898160e-05 1.037600e-03 3.908580e-05 9.752100e-04 3.662610e-05 9.999040e-04 3.697830e-05 9.950660e-04 3.565950e-05 1.087500e-03 3.751450e-05 9.485900e-04 3.502090e-05 1.017960e-03 3.724980e-05 9.560120e-04 3.503670e-05 1.016640e-03 3.755340e-05 9.564330e-04 3.484880e-05 9.770200e-04 3.417970e-05 9.268900e-04 3.296080e-05 9.034370e-04 3.352500e-05 8.671910e-04 3.244000e-05 9.829280e-04 3.439780e-05 9.941800e-04 3.471960e-05 9.448990e-04 3.263870e-05 9.526980e-04 3.644530e-05 9.415620e-04 4.245090e-05 1.085490e-03 4.495640e-05 1.059780e-03 3.875400e-05 1.085230e-03 3.916330e-05 1.059810e-03 3.777580e-05 9.934540e-04 3.729870e-05 1.007470e-03 3.746450e-05 1.063620e-03 3.789320e-05 1.180250e-03 4.206580e-05 1.191950e-03 4.368860e-05 1.173540e-03 3.911450e-05 1.285680e-03 4.113160e-05 1.420680e-03 5.629710e-05 1.467120e-03 5.625290e-05 1.711210e-03 6.086900e-05 1.813310e-03 6.263700e-05 1.988670e-03 6.582080e-05 1.909580e-03 6.424930e-05 1.793240e-03 6.205990e-05 1.794340e-03 6.273630e-05 1.541830e-03 6.133070e-05 1.700930e-03 5.972990e-05 1.743430e-03 6.117250e-05 1.848860e-03 6.230040e-05 2.076060e-03 6.570080e-05 2.480300e-03 7.184680e-05 2.433870e-03 7.028620e-05 2.312970e-03 6.872160e-05 2.465270e-03 7.242480e-05 2.511480e-03 7.368900e-05 2.488910e-03 7.248220e-05 2.312320e-03 7.219380e-05 2.106310e-03 6.584510e-05 2.057450e-03 8.573220e-05 2.014860e-03 6.764160e-05 1.886570e-03 6.261900e-05 1.722480e-03 5.960430e-05 1.726690e-03 6.164920e-05 1.714720e-03 6.004540e-05 2.058800e-03 6.711510e-05 2.270420e-03 6.894370e-05 2.345830e-03 6.963730e-05 2.179790e-03 6.633480e-05 1.947280e-03 6.339100e-05 1.770830e-03 5.906180e-05 1.657760e-03 5.116800e-05 1.617140e-03 5.004290e-05 1.737280e-03 5.254400e-05 1.955750e-03 5.517160e-05 2.327110e-03 6.034000e-05 2.034150e-03 5.579600e-05 1.793670e-03 5.603270e-05 1.786760e-03 5.929700e-05 1.780900e-03 5.311330e-05 1.467690e-03 4.967820e-05 1.357520e-03 4.717840e-05 1.283180e-03 4.533820e-05 1.288750e-03 4.563510e-05 1.146980e-03 4.253180e-05 1.069530e-03 4.100800e-05 1.051730e-03 4.122660e-05 1.000000e-03 4.035170e-05 9.702090e-04 3.974090e-05 1.115700e-03 4.289800e-05 1.215350e-03 4.596170e-05 1.203690e-03 4.515030e-05 1.108780e-03 7.097760e-05 9.385710e-04 5.090720e-05 9.011720e-04 3.890710e-05 9.431780e-04 4.058840e-05 9.163000e-04 3.924170e-05 8.846180e-04 3.863360e-05 8.958540e-04 3.996850e-05 8.987240e-04 3.969160e-05 8.841800e-04 3.896110e-05 9.454700e-04 4.043850e-05 1.025550e-03 4.212830e-05 1.029330e-03 4.169800e-05 9.236210e-04 3.961090e-05 8.037460e-04 3.282890e-05 8.121830e-04 3.028440e-05 7.751830e-04 2.974850e-05 8.192630e-04 3.020080e-05 7.800070e-04 2.923660e-05 7.512600e-04 2.929310e-05 6.918980e-04 2.881160e-05 7.952500e-04 3.150440e-05 8.502090e-04 3.100650e-05 8.064780e-04 3.000180e-05 7.608890e-04 2.975180e-05 8.237940e-04 3.093400e-05 7.862610e-04 3.022490e-05 7.936110e-04 3.077030e-05 7.620850e-04 3.192690e-05 7.787270e-04 2.987040e-05 7.523590e-04 2.989110e-05 7.232450e-04 2.886770e-05 7.036520e-04 3.019410e-05 7.214750e-04 3.501420e-05 7.126900e-04 3.082310e-05 6.976470e-04 2.898830e-05 6.728590e-04 2.812690e-05 6.741780e-04 2.942630e-05 6.763330e-04 3.290670e-05 6.360100e-04 2.906300e-05 6.806230e-04 2.869370e-05 6.806820e-04 2.833820e-05 6.989240e-04 2.892490e-05 7.976530e-04 3.131240e-05 7.567250e-04 3.226120e-05 6.778250e-04 3.071740e-05 6.994180e-04 3.214040e-05 6.748710e-04 2.880460e-05 6.132930e-04 2.986610e-05 5.866450e-04 2.728230e-05 6.131070e-04 2.865200e-05 5.416110e-04 2.645350e-05 5.455280e-04 2.658340e-05 5.776050e-04 2.756840e-05 6.203470e-04 2.968180e-05 5.671440e-04 2.706110e-05 5.816770e-04 2.802630e-05 5.971860e-04 2.834120e-05 6.460490e-04 2.922830e-05 6.181770e-04 2.886470e-05 6.820700e-04 2.996520e-05 7.247100e-04 3.084360e-05 7.759860e-04 3.652260e-05 7.327970e-04 3.183040e-05 7.047140e-04 3.098690e-05 6.528700e-04 3.085540e-05 5.392520e-04 3.063810e-05 6.161510e-04 4.034180e-05 5.611310e-04 3.802640e-05 6.344880e-04 3.763000e-05 5.429920e-04 2.921130e-05 5.444720e-04 2.844010e-05 4.276200e-04 2.516010e-05 4.554120e-04 2.597290e-05 4.493410e-04 2.652790e-05 4.447980e-04 2.652980e-05 5.224540e-04 2.924500e-05 5.318340e-04 2.872930e-05 6.182950e-04 3.086820e-05 5.544040e-04 2.884330e-05 4.816930e-04 2.983900e-05 5.126870e-04 3.680080e-05 5.147660e-04 3.098070e-05 6.374550e-04 3.066170e-05 6.554620e-04 3.136400e-05 6.236090e-04 3.019030e-05 5.034590e-04 2.781270e-05 4.734420e-04 2.767240e-05 5.042050e-04 2.785790e-05 4.581950e-04 2.732260e-05 4.970930e-04 3.444130e-05 4.646210e-04 2.758950e-05 4.833420e-04 2.700570e-05 4.999550e-04 2.775630e-05 4.680400e-04 2.724540e-05 4.401610e-04 2.749640e-05 5.400870e-04 2.968690e-05 5.278720e-04 2.916140e-05 4.798640e-04 2.823670e-05 4.239470e-04 2.670990e-05 4.641170e-04 2.732610e-05 4.850710e-04 2.773380e-05 4.509850e-04 2.650590e-05 4.252190e-04 2.605830e-05 4.668860e-04 3.246880e-05 4.577890e-04 3.003070e-05 4.335870e-04 2.667710e-05 4.171130e-04 2.808100e-05 4.619760e-04 2.926000e-05 4.085890e-04 2.576520e-05 3.883100e-04 2.555600e-05 4.259280e-04 2.714870e-05 4.594990e-04 2.723480e-05 4.989350e-04 3.017650e-05 5.038000e-04 3.461010e-05 5.285230e-04 3.049320e-05 5.226110e-04 2.981470e-05 5.656870e-04 3.313260e-05 5.680540e-04 3.609410e-05 6.690510e-04 3.405850e-05 7.017520e-04 3.572780e-05 8.580000e-04 4.240700e-05 9.937860e-04 4.238600e-05 1.048150e-03 4.339060e-05 9.393550e-04 4.021780e-05 7.923770e-04 3.745260e-05 6.740910e-04 3.510610e-05 6.476020e-04 3.581350e-05 5.807330e-04 3.405770e-05 5.137690e-04 3.195450e-05 4.677410e-04 3.071010e-05 4.623170e-04 3.117640e-05 4.200170e-04 2.926980e-05 3.953640e-04 2.823510e-05 3.898140e-04 2.965010e-05 3.740230e-04 3.056350e-05 3.763400e-04 2.849310e-05 4.416930e-04 3.097710e-05 4.142190e-04 2.882360e-05 4.310560e-04 2.963170e-05 3.800950e-04 2.828830e-05 4.202660e-04 2.935760e-05 3.788250e-04 3.088230e-05 4.304580e-04 4.246700e-05 3.979740e-04 4.076640e-05 3.582540e-04 3.844520e-05 3.870910e-04 4.226250e-05 4.417540e-04 4.599760e-05 3.657650e-04 4.018400e-05 3.324060e-04 3.857810e-05 3.685220e-04 4.021680e-05 2.958760e-04 3.619180e-05 3.168040e-04 3.671770e-05 3.264960e-04 3.814460e-05 3.706650e-04 3.982650e-05 3.484040e-04 4.097060e-05 3.222550e-04 4.147550e-05 3.072360e-04 3.938360e-05 3.244510e-04 3.965230e-05 3.133700e-04 4.005980e-05 3.413290e-04 4.850170e-05 3.563580e-04 4.142410e-05 3.395470e-04 4.031830e-05 3.357620e-04 3.971920e-05 4.155700e-04 4.493060e-05 3.353600e-04 4.012680e-05 3.162100e-04 3.943580e-05 3.269470e-04 3.878660e-05 3.888780e-04 4.258220e-05 3.507230e-04 4.199000e-05 3.211280e-04 3.943140e-05 3.272560e-04 4.097850e-05 2.917890e-04 3.825580e-05 2.723260e-04 3.741270e-05 3.548400e-04 4.157350e-05 2.730940e-04 3.785460e-05 3.780600e-04 4.267290e-05 2.990880e-04 3.955590e-05 3.062080e-04 4.016820e-05 3.336380e-04 3.965360e-05 2.642930e-04 3.878470e-05 2.767200e-04 3.812250e-05 2.944730e-04 3.944330e-05 3.438840e-04 4.257430e-05 2.755910e-04 6.728730e-05 3.045650e-04 3.816990e-05 2.774550e-04 3.762880e-05 3.436050e-04 4.336140e-05 2.118240e-04 3.459580e-05 2.653250e-04 3.753270e-05 2.926040e-04 4.036290e-05 2.403630e-04 3.873070e-05 3.572570e-04 4.374210e-05 2.985860e-04 4.154380e-05 3.177100e-04 4.278440e-05 2.885790e-04 3.900820e-05 2.492620e-04 3.700790e-05 3.035410e-04 4.212120e-05 3.292170e-04 4.389020e-05 3.551910e-04 4.452550e-05 2.611890e-04 3.790380e-05 2.890790e-04 4.058870e-05 3.176660e-04 4.286220e-05 2.719400e-04 3.918250e-05 2.556290e-04 3.803010e-05 3.186170e-04 4.457240e-05 3.304370e-04 6.434260e-05 3.212150e-04 4.455150e-05 2.859880e-04 4.279710e-05 3.069420e-04 4.647420e-05 3.184630e-04 4.894080e-05 3.789710e-04 5.346840e-05 3.858650e-04 5.440110e-05 2.805850e-04 4.412170e-05 2.946850e-04 4.333800e-05 3.029370e-04 4.227280e-05 3.182710e-04 4.382730e-05 3.405070e-04 4.429830e-05 3.244850e-04 4.601550e-05 3.121400e-04 8.020120e-05 3.751010e-04 4.571470e-05 3.188810e-04 4.155220e-05 3.491500e-04 4.283890e-05 2.519610e-04 3.849190e-05 3.522580e-04 4.229360e-05 3.775990e-04 4.528940e-05 3.907480e-04 4.509510e-05 3.546410e-04 4.369960e-05 3.278480e-04 4.043990e-05 3.157380e-04 4.303600e-05 3.345870e-04 4.330240e-05 3.374060e-04 4.137300e-05 2.884940e-04 3.937530e-05 3.116010e-04 4.017600e-05 3.484180e-04 4.031820e-05 3.256430e-04 2.829330e-05 3.258680e-04 2.885560e-05 2.949130e-04 2.771760e-05 3.520740e-04 3.010880e-05 3.327740e-04 2.990660e-05 3.242210e-04 3.011480e-05 2.933610e-04 2.847450e-05 3.446060e-04 3.029480e-05 3.207560e-04 2.846260e-05 3.447900e-04 3.067590e-05 3.465690e-04 3.022480e-05 2.913870e-04 2.846990e-05 3.056820e-04 2.878110e-05 2.595220e-04 3.227520e-05 2.769480e-04 3.713070e-05 3.254210e-04 3.678700e-05 3.152450e-04 2.971290e-05 3.121030e-04 2.913680e-05 3.762530e-04 3.729750e-05 3.914630e-04 3.212950e-05 4.720770e-04 3.463980e-05 4.094890e-04 3.266230e-05 3.831580e-04 3.128650e-05 3.500760e-04 3.038000e-05 3.054450e-04 2.996120e-05 3.434850e-04 3.144790e-05 3.455080e-04 3.011890e-05 3.043760e-04 2.913640e-05 2.635850e-04 2.667480e-05 2.900000e-04 2.729600e-05 3.308770e-04 3.078570e-05 3.168560e-04 2.933630e-05 3.279870e-04 2.990530e-05 3.315650e-04 3.018430e-05 2.438170e-04 2.668190e-05 2.905260e-04 2.980360e-05 2.968570e-04 3.043200e-05 2.998830e-04 2.790780e-05 2.966130e-04 3.444750e-05 3.049130e-04 3.590900e-05 3.308690e-04 3.540300e-05 3.030670e-04 2.981530e-05 3.023410e-04 3.029530e-05 2.487670e-04 3.332600e-05 3.099690e-04 3.468300e-05 2.482250e-04 2.732090e-05 2.760110e-04 2.960090e-05 2.710220e-04 2.951250e-05 2.711740e-04 2.982640e-05 2.601570e-04 2.935910e-05 2.419090e-04 2.893340e-05 2.790100e-04 3.076040e-05 2.360450e-04 2.779860e-05 2.734820e-04 3.073880e-05 2.590530e-04 3.113010e-05 2.129930e-04 2.727480e-05 2.205300e-04 3.201980e-05 2.920970e-04 3.130020e-05 1.791730e-04 2.749190e-05 2.271190e-04 3.173030e-05 2.193500e-04 3.048110e-05 2.414980e-04 3.030750e-05 2.347810e-04 2.909560e-05 2.000460e-04 1.988060e-05 2.377080e-04 2.044350e-05 2.549620e-04 2.156820e-05 2.382640e-04 2.163620e-05 2.202990e-04 2.223030e-05 2.206130e-04 2.228180e-05 2.198130e-04 2.244550e-05 2.245690e-04 2.494680e-05 2.158890e-04 2.345740e-05 2.295680e-04 2.277040e-05 2.039340e-04 2.183360e-05 2.170470e-04 2.211360e-05 2.280540e-04 2.778760e-05 2.290840e-04 3.208900e-05 2.295780e-04 2.533740e-05 2.088020e-04 2.506950e-05 2.270230e-04 2.646760e-05 2.548750e-04 2.625970e-05 2.542780e-04 2.638950e-05 2.192710e-04 2.658520e-05 2.233170e-04 2.834870e-05 2.269950e-04 3.832980e-05 1.741830e-04 2.731850e-05 2.077740e-04 2.775460e-05 2.168850e-04 2.813770e-05 2.494080e-04 2.995190e-05 1.847190e-04 2.777430e-05 2.131180e-04 2.858370e-05 2.326600e-04 2.837060e-05 2.375710e-04 2.972310e-05 1.919940e-04 2.826280e-05 2.118940e-04 2.896070e-05 1.799910e-04 2.697110e-05 2.084800e-04 2.756780e-05 2.048710e-04 2.893760e-05 2.039400e-04 2.849890e-05 1.479110e-04 2.763830e-05 1.746140e-04 3.125820e-05 1.938630e-04 2.993970e-05 2.273160e-04 3.199730e-05 1.893220e-04 2.967660e-05 2.544100e-04 3.275580e-05 2.620560e-04 3.528150e-05 2.452550e-04 3.286810e-05 2.370690e-04 3.245880e-05 2.067780e-04 3.114670e-05 2.138080e-04 3.655750e-05 2.745210e-04 4.825130e-05 2.388920e-04 3.646220e-05 2.930640e-04 3.490560e-05 1.833240e-04 3.570090e-05 1.920090e-04 3.617750e-05 2.599530e-04 3.908610e-05 1.867340e-04 3.514540e-05 1.738400e-04 3.658140e-05 2.480720e-04 3.667500e-05 1.996910e-04 3.531350e-05 2.162660e-04 3.692390e-05 2.663410e-04 3.805280e-05 1.941180e-04 3.663090e-05 1.642050e-04 3.523890e-05 2.689110e-04 3.838150e-05 2.409360e-04 4.965310e-05 1.847900e-04 5.041100e-05 1.780040e-04 3.219900e-05 2.234630e-04 3.296830e-05 1.370700e-04 3.059550e-05 2.075870e-04 3.348930e-05 1.341410e-04 3.284120e-05 1.832390e-04 3.434580e-05 1.508510e-04 3.167450e-05 1.333470e-04 4.119730e-05 1.524640e-04 3.975300e-05 1.713540e-04 3.992650e-05 1.498740e-04 3.718810e-05 1.630350e-04 3.503340e-05 1.212000e-04 3.026400e-05 4.009120e-05 3.562720e-05 1.973950e-04 3.471480e-05 1.461300e-04 2.871250e-05 1.476770e-04 2.882960e-05 1.175550e-04 2.928400e-05 1.072990e-04 2.749720e-05 1.482710e-04 3.188290e-05 1.242280e-04 2.794560e-05 1.039130e-04 2.777680e-05 2.152580e-04 3.162130e-05 1.210340e-04 2.838330e-05 5.914980e-05 2.777230e-05 9.871170e-05 2.978000e-05 1.401770e-04 3.355030e-05 6.826660e-05 2.925510e-05 1.677930e-04 3.064590e-05 6.853110e-05 2.514600e-05 1.431750e-04 3.020160e-05 1.100100e-04 2.916770e-05 1.275130e-04 2.784630e-05 8.670860e-05 2.643850e-05 1.328280e-04 3.301160e-05 1.012330e-04 2.817270e-05 1.299050e-04 2.832730e-05 1.291000e-04 2.945080e-05 6.946560e-05 2.886690e-05 9.621770e-05 2.719220e-05 1.074810e-04 2.955330e-05 1.353190e-04 3.123540e-05 1.534920e-04 2.976960e-05 1.261350e-04 2.864630e-05 9.923770e-05 3.167100e-05 1.104340e-04 3.648610e-05 9.240890e-05 2.888430e-05 -5.476390e-06 2.996170e-05 1.150100e-04 3.324890e-05 1.000750e-04 3.427050e-05 6.576840e-05 3.566030e-05 -2.233520e-04 9.337150e-05 1.557920e-04 4.651850e-05 8.327750e-05 3.995890e-05 1.121130e-04 4.034960e-05 7.820600e-05 3.808170e-05 7.453110e-05 5.616330e-05 1.553410e-04 5.948510e-05 8.860320e-05 4.228480e-05 8.186370e-05 6.762710e-05 4.912510e-05 6.950520e-05 ''') ImportString(u'flux_090(numeric),+-',''' 2.189310e+03 3.957380e+03 -3.848260e+01 2.944600e+01 -2.235260e-01 2.569630e+00 1.148560e-01 1.804310e-01 1.187360e-02 3.671730e-02 -5.200170e-03 7.960460e-03 -1.414540e-03 2.831620e-03 2.513630e-04 1.136470e-03 4.521350e-04 9.816890e-04 3.368390e-04 4.359300e-04 -4.878070e-04 3.649430e-04 1.040890e-04 3.122470e-04 1.988550e-04 2.699880e-04 1.019220e-04 2.450900e-04 -1.046140e-04 1.368130e-04 1.014340e-04 7.702500e-05 1.627390e-05 4.172710e-05 3.418940e-05 3.641600e-05 -7.669300e-06 2.265170e-05 2.431390e-05 2.461040e-05 1.886670e-05 3.256710e-05 9.342400e-05 4.966980e-05 8.700760e-05 9.238170e-05 3.042900e-04 1.879750e-04 5.940840e-04 2.743870e-04 1.003320e-03 3.625380e-04 1.336580e-03 4.839930e-04 3.792900e-04 4.150900e-04 2.378790e-04 3.557360e-04 1.609710e-03 4.530660e-04 1.343500e-03 3.489400e-04 1.238390e-03 2.893310e-04 8.969520e-04 2.250110e-04 4.661140e-04 1.607770e-04 8.105390e-04 1.487010e-04 7.264460e-04 1.226090e-04 7.527700e-04 1.148020e-04 4.630340e-04 7.487960e-05 5.272710e-04 7.094880e-05 4.811790e-04 6.802030e-05 4.768310e-04 6.411700e-05 4.895900e-04 6.535510e-05 6.122410e-04 6.522840e-05 7.670080e-04 7.055660e-05 7.904070e-04 6.722970e-05 7.670350e-04 6.367560e-05 6.694930e-04 5.760900e-05 4.834540e-04 5.092890e-05 4.135160e-04 4.699490e-05 4.042320e-04 4.437900e-05 4.783140e-04 4.665430e-05 5.667440e-04 4.634570e-05 6.032080e-04 4.720030e-05 5.421420e-04 4.467770e-05 6.051960e-04 4.692450e-05 5.844670e-04 4.596860e-05 5.009010e-04 4.121890e-05 4.163550e-04 3.437820e-05 4.029660e-04 3.248040e-05 3.760420e-04 3.112840e-05 2.921990e-04 2.707350e-05 4.426360e-04 3.330880e-05 3.394490e-04 2.853650e-05 3.824900e-04 3.266230e-05 4.405500e-04 3.842730e-05 3.974210e-04 3.204660e-05 3.742320e-04 3.002110e-05 3.485960e-04 2.948280e-05 3.402540e-04 2.646820e-05 3.316290e-04 2.685680e-05 2.728030e-04 2.464370e-05 3.453200e-04 2.671720e-05 3.008220e-04 2.507950e-05 3.167260e-04 2.842040e-05 3.018550e-04 2.785470e-05 3.418200e-04 2.629130e-05 4.013920e-04 2.817840e-05 3.879520e-04 2.680130e-05 3.766470e-04 2.726420e-05 3.904920e-04 2.731480e-05 3.864770e-04 2.630150e-05 4.165190e-04 2.741630e-05 4.073560e-04 2.729510e-05 3.717290e-04 2.527240e-05 3.854870e-04 2.663850e-05 3.890700e-04 2.767200e-05 4.633250e-04 2.888230e-05 4.832750e-04 2.909130e-05 5.989080e-04 3.145740e-05 5.622960e-04 3.018420e-05 6.573950e-04 3.396660e-05 6.209600e-04 3.208950e-05 5.730690e-04 3.570650e-05 4.638390e-04 2.819540e-05 4.755720e-04 2.808470e-05 4.856120e-04 2.868640e-05 4.598610e-04 2.728380e-05 4.053160e-04 2.613350e-05 4.278810e-04 2.729730e-05 4.120400e-04 2.552130e-05 4.318480e-04 2.593390e-05 3.666020e-04 2.306130e-05 3.703610e-04 2.338260e-05 4.494530e-04 2.667210e-05 4.441930e-04 2.690620e-05 3.794860e-04 2.332380e-05 4.032390e-04 2.439100e-05 4.400150e-04 2.454610e-05 4.482450e-04 2.531100e-05 4.082950e-04 2.393610e-05 4.453790e-04 2.591680e-05 3.885490e-04 2.303500e-05 4.058890e-04 2.492030e-05 4.364210e-04 2.476390e-05 4.208970e-04 2.308230e-05 3.966090e-04 2.264030e-05 4.038420e-04 2.327710e-05 3.766320e-04 2.243100e-05 4.029770e-04 2.313100e-05 4.271150e-04 2.387070e-05 3.986970e-04 2.241500e-05 3.759110e-04 2.349600e-05 3.541990e-04 2.689230e-05 4.950470e-04 3.213940e-05 4.682630e-04 2.717000e-05 4.237930e-04 2.555710e-05 4.268360e-04 2.544000e-05 4.308350e-04 2.560270e-05 4.162720e-04 2.549180e-05 4.407000e-04 2.541610e-05 5.012660e-04 2.869820e-05 4.968080e-04 2.977780e-05 4.860740e-04 2.664370e-05 4.918510e-04 2.691120e-05 5.597910e-04 3.824190e-05 6.136890e-04 3.902550e-05 6.752500e-04 4.012790e-05 7.669390e-04 4.342700e-05 8.135920e-04 4.481290e-05 7.947810e-04 4.405070e-05 7.082690e-04 4.112800e-05 6.424060e-04 3.989990e-05 6.482680e-04 4.232460e-05 6.848350e-04 4.067380e-05 7.432990e-04 4.187700e-05 7.561130e-04 4.200300e-05 8.847240e-04 4.594600e-05 1.051090e-03 4.990120e-05 1.072130e-03 4.944570e-05 9.847120e-04 4.749810e-05 9.632770e-04 4.773560e-05 1.166510e-03 5.315660e-05 1.102740e-03 5.123650e-05 1.005590e-03 5.068740e-05 8.306470e-04 4.337450e-05 9.148520e-04 6.053090e-05 9.024780e-04 4.797280e-05 8.131140e-04 4.335410e-05 7.865150e-04 4.287560e-05 7.344510e-04 4.189260e-05 7.761440e-04 4.291760e-05 8.759570e-04 4.627650e-05 1.124620e-03 5.085710e-05 1.163600e-03 5.160870e-05 1.125660e-03 5.017850e-05 9.262800e-04 4.618390e-05 8.268290e-04 4.205060e-05 8.068440e-04 3.770970e-05 7.715470e-04 3.639450e-05 8.273580e-04 3.791650e-05 9.249840e-04 4.000860e-05 1.231950e-03 4.618910e-05 1.029860e-03 4.198100e-05 9.347270e-04 4.229940e-05 9.118660e-04 4.401100e-05 9.238550e-04 3.939530e-05 7.560730e-04 3.691880e-05 6.870150e-04 3.534350e-05 6.963400e-04 3.504840e-05 6.522050e-04 3.382380e-05 5.132750e-04 2.945600e-05 5.119080e-04 2.960120e-05 4.563810e-04 2.838800e-05 4.477500e-04 2.806660e-05 4.245150e-04 2.717070e-05 5.459650e-04 3.160100e-05 6.898200e-04 3.691700e-05 6.735890e-04 3.457740e-05 5.433300e-04 5.174020e-05 4.444810e-04 3.680070e-05 4.379060e-04 2.837160e-05 4.768070e-04 3.008840e-05 4.259950e-04 2.795140e-05 4.641260e-04 2.881110e-05 4.342080e-04 2.875370e-05 4.511970e-04 2.947330e-05 3.970060e-04 2.677690e-05 4.756860e-04 2.949110e-05 5.503190e-04 3.244230e-05 6.075410e-04 3.344380e-05 4.510560e-04 2.874830e-05 3.846050e-04 2.365440e-05 3.849010e-04 2.148730e-05 4.165880e-04 2.250840e-05 3.656070e-04 2.059810e-05 4.180400e-04 2.185650e-05 3.786980e-04 2.147910e-05 3.356630e-04 2.044950e-05 3.666890e-04 2.255640e-05 4.225550e-04 2.254930e-05 4.186750e-04 2.240740e-05 3.535560e-04 2.054840e-05 4.114510e-04 2.272900e-05 4.533170e-04 2.359970e-05 4.470720e-04 2.364200e-05 3.550670e-04 2.217940e-05 3.780510e-04 2.103430e-05 3.766290e-04 2.168190e-05 3.476090e-04 2.109610e-05 3.331580e-04 2.128430e-05 3.804490e-04 2.584950e-05 3.198560e-04 2.130740e-05 3.043750e-04 1.969080e-05 2.907190e-04 1.867410e-05 3.212390e-04 2.083660e-05 2.907430e-04 2.208830e-05 2.729850e-04 1.901210e-05 3.008320e-04 1.948910e-05 3.215500e-04 2.038920e-05 3.509110e-04 2.108900e-05 4.497720e-04 2.466890e-05 3.881780e-04 2.325600e-05 3.362740e-04 2.228140e-05 3.404450e-04 2.348080e-05 3.221980e-04 1.993270e-05 2.899130e-04 2.117170e-05 2.172050e-04 1.685090e-05 2.633540e-04 1.970370e-05 2.228880e-04 1.721260e-05 2.611010e-04 1.922450e-05 2.433760e-04 1.838170e-05 2.553230e-04 1.973050e-05 2.269310e-04 1.741710e-05 2.463680e-04 1.871310e-05 2.689320e-04 1.961470e-05 2.710120e-04 1.943940e-05 2.743060e-04 1.972980e-05 3.165980e-04 2.142750e-05 2.964300e-04 2.031540e-05 3.814600e-04 2.643690e-05 3.934200e-04 2.383800e-05 3.762790e-04 2.309830e-05 3.223700e-04 2.241240e-05 2.508420e-04 2.127430e-05 2.272260e-04 2.458500e-05 2.433310e-04 2.555020e-05 2.466050e-04 2.426480e-05 2.157370e-04 1.834870e-05 2.337090e-04 1.896410e-05 1.730880e-04 1.651370e-05 1.834370e-04 1.712470e-05 1.767030e-04 1.707730e-05 1.850980e-04 1.773440e-05 2.317430e-04 1.983130e-05 2.363810e-04 1.936410e-05 3.163970e-04 2.251870e-05 2.686570e-04 2.016570e-05 1.817340e-04 1.797690e-05 1.769360e-04 2.172880e-05 2.315540e-04 2.106780e-05 3.607100e-04 2.410770e-05 4.228070e-04 2.547590e-05 3.230370e-04 2.151710e-05 2.113980e-04 1.834630e-05 1.593280e-04 1.620070e-05 1.826030e-04 1.696200e-05 1.621360e-04 1.680160e-05 2.026230e-04 2.225970e-05 1.882860e-04 1.820230e-05 1.853480e-04 1.683110e-05 1.679850e-04 1.660570e-05 1.901490e-04 1.807590e-05 1.984030e-04 1.883860e-05 2.170980e-04 1.896430e-05 2.077690e-04 1.843080e-05 1.890880e-04 1.847100e-05 1.593040e-04 1.696240e-05 1.694350e-04 1.633860e-05 1.741820e-04 1.702330e-05 1.712220e-04 1.702000e-05 1.569070e-04 1.648740e-05 1.710360e-04 1.932610e-05 1.480450e-04 1.741920e-05 1.770950e-04 1.771470e-05 1.654610e-04 1.788410e-05 1.622280e-04 1.816770e-05 1.518910e-04 1.634970e-05 1.301070e-04 1.531500e-05 1.722310e-04 1.723240e-05 1.585080e-04 1.634870e-05 2.195240e-04 2.012820e-05 1.717000e-04 2.101260e-05 2.155510e-04 2.014470e-05 1.950330e-04 1.838060e-05 2.110570e-04 1.978050e-05 1.967610e-04 2.181210e-05 2.929480e-04 2.323980e-05 2.730930e-04 2.315850e-05 3.643080e-04 2.769350e-05 5.202760e-04 3.200170e-05 5.679730e-04 3.347840e-05 4.861390e-04 2.957460e-05 3.499850e-04 2.538360e-05 2.786060e-04 2.355510e-05 2.604830e-04 2.296670e-05 2.333050e-04 2.220100e-05 2.039960e-04 2.062450e-05 1.939900e-04 2.078750e-05 1.905580e-04 2.020830e-05 1.616390e-04 1.825540e-05 1.370730e-04 1.679840e-05 1.508030e-04 1.873990e-05 1.408870e-04 1.855940e-05 1.320390e-04 1.718750e-05 1.693530e-04 1.944680e-05 1.538960e-04 1.776660e-05 1.902140e-04 2.082780e-05 1.537900e-04 1.824720e-05 1.369430e-04 1.662840e-05 1.639220e-04 1.982100e-05 1.368490e-04 2.442950e-05 1.462460e-04 2.591340e-05 1.347690e-04 2.453050e-05 1.356830e-04 2.491550e-05 1.754900e-04 2.952930e-05 8.863090e-05 2.008080e-05 1.278080e-04 2.381000e-05 1.359020e-04 2.598260e-05 1.148680e-04 2.250130e-05 1.161110e-04 2.188610e-05 8.540910e-05 1.888680e-05 1.108980e-04 2.134620e-05 1.616390e-04 2.835570e-05 1.320740e-04 2.631360e-05 1.156300e-04 2.426370e-05 1.150670e-04 2.228250e-05 1.178350e-04 2.395820e-05 8.479670e-05 2.409060e-05 1.525950e-04 2.806050e-05 1.202580e-04 2.390140e-05 1.388730e-04 2.666730e-05 1.451350e-04 2.664400e-05 1.180570e-04 2.390850e-05 1.401550e-04 2.688890e-05 1.543920e-04 2.761250e-05 1.672210e-04 2.718470e-05 1.580430e-04 2.773210e-05 1.177980e-04 2.366220e-05 1.113850e-04 2.432650e-05 1.201190e-04 2.552750e-05 1.140480e-04 2.401440e-05 1.556630e-04 2.691640e-05 7.708020e-05 1.971010e-05 1.410430e-04 2.650430e-05 1.013070e-04 2.143620e-05 1.206690e-04 2.545310e-05 1.209640e-04 2.480310e-05 1.093820e-04 2.455250e-05 8.053830e-05 2.107410e-05 8.219740e-05 2.049970e-05 1.577030e-04 2.881110e-05 1.100950e-04 3.925630e-05 1.254610e-04 2.337630e-05 9.541680e-05 2.222230e-05 1.030650e-04 2.384190e-05 8.753700e-05 2.322180e-05 1.151360e-04 2.409380e-05 1.171970e-04 2.588510e-05 7.645200e-05 2.172200e-05 1.191450e-04 2.548730e-05 9.405710e-05 2.381870e-05 1.179810e-04 2.619000e-05 9.514210e-05 2.277540e-05 6.651240e-05 2.067810e-05 1.309440e-04 2.745420e-05 1.288110e-04 2.672590e-05 1.084650e-04 2.509860e-05 8.753660e-05 2.231390e-05 9.551640e-05 2.399950e-05 1.097720e-04 2.594050e-05 7.027060e-05 2.077640e-05 1.226920e-04 2.560470e-05 1.090420e-04 2.560110e-05 1.300320e-04 4.195140e-05 1.175640e-04 2.584890e-05 1.450130e-04 3.035600e-05 1.194760e-04 2.998020e-05 1.020770e-04 2.873730e-05 1.229290e-04 2.996850e-05 1.041010e-04 2.852600e-05 1.090500e-04 2.931620e-05 8.305970e-05 2.324780e-05 8.550330e-05 2.280670e-05 1.053820e-04 2.492270e-05 9.525930e-05 2.348280e-05 1.217570e-04 2.733860e-05 1.378520e-04 4.244890e-05 1.053260e-04 2.329600e-05 9.978090e-05 2.363680e-05 1.112200e-04 2.503330e-05 7.541960e-05 2.100170e-05 1.104820e-04 2.495930e-05 1.176530e-04 2.519410e-05 1.482200e-04 2.842620e-05 1.353610e-04 2.814750e-05 1.046080e-04 2.223810e-05 1.043620e-04 2.484270e-05 1.716590e-04 3.029100e-05 1.292850e-04 2.537210e-05 1.152540e-04 2.478310e-05 1.363750e-04 2.692090e-05 1.323550e-04 2.566820e-05 1.142670e-04 1.680600e-05 1.178140e-04 1.716560e-05 1.202570e-04 1.795190e-05 1.261820e-04 1.803730e-05 1.442150e-04 1.993030e-05 1.320060e-04 1.872940e-05 1.089160e-04 1.729060e-05 1.230990e-04 1.804120e-05 1.242430e-04 1.836550e-05 1.507060e-04 2.067550e-05 1.346240e-04 1.853340e-05 1.276210e-04 1.843930e-05 8.129750e-05 1.493320e-05 1.234800e-04 2.254670e-05 1.298080e-04 2.496220e-05 1.177570e-04 2.190980e-05 1.208600e-04 1.827070e-05 1.198560e-04 1.842010e-05 1.378740e-04 2.286000e-05 1.862510e-04 2.280360e-05 2.288730e-04 2.461690e-05 1.847750e-04 2.248560e-05 1.264400e-04 1.829690e-05 1.361440e-04 1.935220e-05 1.421310e-04 2.107330e-05 1.487440e-04 2.140700e-05 1.345510e-04 1.912050e-05 1.106680e-04 1.720580e-05 7.928700e-05 1.499060e-05 9.544570e-05 1.605820e-05 1.208860e-04 1.916950e-05 9.626840e-05 1.676630e-05 1.300420e-04 1.939780e-05 1.628070e-04 2.185710e-05 9.024460e-05 1.610480e-05 1.071200e-04 1.813280e-05 1.108670e-04 1.898680e-05 1.206780e-04 1.844400e-05 1.546930e-04 2.460740e-05 1.427230e-04 2.503730e-05 1.321720e-04 2.251250e-05 1.047630e-04 1.782200e-05 1.345880e-04 2.007590e-05 8.450010e-05 1.873870e-05 1.125290e-04 2.086700e-05 1.086640e-04 1.788820e-05 1.009180e-04 1.738930e-05 1.077490e-04 1.869770e-05 1.314380e-04 2.102130e-05 1.028240e-04 1.841490e-05 1.005090e-04 1.797710e-05 9.947960e-05 1.806900e-05 6.297460e-05 1.557010e-05 1.019190e-04 1.838910e-05 6.407510e-05 1.559560e-05 8.464310e-05 1.655980e-05 6.804990e-05 1.764170e-05 1.141680e-04 2.024150e-05 6.302310e-05 1.570300e-05 9.441250e-05 2.035660e-05 9.153530e-05 1.928880e-05 9.232240e-05 1.831240e-05 1.118250e-04 2.019520e-05 8.523570e-05 1.278950e-05 8.677740e-05 1.229410e-05 8.181380e-05 1.221410e-05 8.308390e-05 1.274030e-05 8.219700e-05 1.367640e-05 8.920160e-05 1.375670e-05 7.258440e-05 1.276070e-05 9.015920e-05 1.528490e-05 1.160040e-04 1.677330e-05 9.919070e-05 1.470680e-05 9.141510e-05 1.373840e-05 8.809160e-05 1.316330e-05 8.480170e-05 1.737330e-05 9.242640e-05 2.024270e-05 9.734510e-05 1.487870e-05 7.828420e-05 1.450600e-05 8.811210e-05 1.535970e-05 8.860830e-05 1.534490e-05 1.206280e-04 1.732040e-05 6.816770e-05 1.467670e-05 1.118430e-04 1.857100e-05 7.659590e-05 2.120910e-05 8.801850e-05 1.723730e-05 9.765050e-05 1.728740e-05 9.480540e-05 1.697640e-05 5.330690e-05 1.520880e-05 5.542910e-05 1.482640e-05 9.426510e-05 1.716280e-05 7.990070e-05 1.609890e-05 9.082360e-05 1.742080e-05 6.125430e-05 1.493280e-05 8.153730e-05 1.723310e-05 8.734000e-05 1.680450e-05 6.825010e-05 1.563060e-05 6.526390e-05 1.633400e-05 4.182360e-05 1.379650e-05 4.842100e-05 1.478030e-05 8.598900e-05 1.910990e-05 6.012170e-05 1.662580e-05 7.657060e-05 1.778200e-05 5.923120e-05 1.617660e-05 1.363290e-04 2.160890e-05 9.253890e-05 2.026420e-05 9.464420e-05 1.940600e-05 8.594680e-05 1.891840e-05 7.388890e-05 1.809060e-05 1.260230e-04 2.500290e-05 9.598130e-05 2.823840e-05 1.145890e-04 2.260720e-05 1.214390e-04 2.085150e-05 7.017010e-05 2.061090e-05 9.425200e-05 2.210500e-05 9.207530e-05 2.226070e-05 9.367040e-05 2.099240e-05 1.041640e-04 2.307210e-05 8.767790e-05 2.108680e-05 6.132360e-05 1.953140e-05 3.383470e-05 1.734240e-05 1.274730e-04 2.345420e-05 4.972170e-05 1.891460e-05 8.214450e-05 2.149860e-05 1.013380e-04 2.212960e-05 6.709950e-05 2.603140e-05 9.392430e-05 3.063280e-05 8.199390e-05 1.927460e-05 9.488300e-05 1.994580e-05 5.338870e-05 1.652970e-05 8.752200e-05 1.947110e-05 6.659600e-05 1.961090e-05 9.018510e-05 2.120990e-05 7.002800e-05 1.857560e-05 5.944480e-05 2.328890e-05 8.569420e-05 2.432770e-05 5.097920e-05 2.151620e-05 5.314880e-05 2.009670e-05 7.485610e-05 2.078880e-05 4.125950e-05 1.585860e-05 4.223670e-05 1.982160e-05 1.005500e-04 2.249630e-05 6.217580e-05 1.673370e-05 6.807440e-05 1.769030e-05 2.896580e-05 1.485400e-05 5.081910e-05 1.643620e-05 6.275850e-05 2.032010e-05 2.932820e-05 1.374720e-05 2.485330e-05 1.426590e-05 7.546890e-05 1.835550e-05 6.925820e-05 1.804420e-05 2.421510e-05 1.524950e-05 4.176270e-05 1.684660e-05 3.131620e-05 1.762550e-05 2.991900e-05 1.661930e-05 2.584090e-05 1.387280e-05 4.416010e-05 1.544960e-05 5.502680e-05 1.743100e-05 6.226740e-05 1.879430e-05 4.787250e-05 1.606620e-05 2.452870e-05 1.336580e-05 2.902590e-05 1.606590e-05 5.583530e-05 1.716640e-05 9.065510e-05 1.993000e-05 6.089810e-05 1.789940e-05 3.587730e-05 1.730450e-05 4.004220e-05 1.596700e-05 1.560880e-05 1.376360e-05 1.024310e-04 2.249720e-05 4.332750e-05 1.574300e-05 3.633940e-05 1.579770e-05 2.198550e-05 1.575820e-05 4.997950e-05 2.082940e-05 4.277200e-05 1.741470e-05 -3.043260e-06 1.529930e-05 5.554110e-05 2.039130e-05 3.265840e-05 1.832360e-05 5.363930e-06 1.629740e-05 -5.950040e-05 3.664910e-05 5.674340e-05 2.668630e-05 -5.359900e-06 1.441850e-05 4.501340e-05 2.293660e-05 5.012770e-06 1.789040e-05 2.662400e-05 2.937400e-05 1.719700e-05 2.522640e-05 2.278130e-05 2.083440e-05 2.830410e-05 3.645150e-05 7.612740e-05 4.944380e-05 ''') ImportString(u'flux_model_0_5(numeric)',''' 2.638349e-03 3.500185e-03 4.195564e-03 5.033681e-03 6.662102e-03 9.691017e-03 1.383798e-02 1.730952e-02 1.782465e-02 1.491672e-02 1.052511e-02 6.985221e-03 5.120528e-03 4.457958e-03 4.315053e-03 4.329839e-03 4.390443e-03 4.461482e-03 4.517663e-03 4.541635e-03 4.527193e-03 4.484314e-03 4.441404e-03 4.425652e-03 4.452141e-03 4.523108e-03 4.630249e-03 4.762861e-03 4.916740e-03 5.085519e-03 5.226392e-03 5.294072e-03 5.323343e-03 5.443004e-03 5.770480e-03 6.351340e-03 7.204733e-03 8.298443e-03 9.389546e-03 1.001495e-02 9.825170e-03 8.917985e-03 7.738226e-03 6.692107e-03 5.924180e-03 5.398249e-03 5.062076e-03 4.911711e-03 4.935686e-03 5.067608e-03 5.194373e-03 5.222608e-03 5.144365e-03 5.037660e-03 4.988319e-03 5.019739e-03 5.093912e-03 5.152969e-03 5.163832e-03 5.131372e-03 5.085257e-03 5.060005e-03 5.083899e-03 5.199510e-03 5.465772e-03 5.893727e-03 6.344101e-03 6.561472e-03 6.398052e-03 5.966652e-03 5.515189e-03 5.208256e-03 5.069245e-03 5.086064e-03 5.346950e-03 6.141645e-03 7.876758e-03 1.062103e-02 1.359337e-02 1.543759e-02 1.537860e-02 1.385804e-02 1.182906e-02 9.895545e-03 8.278267e-03 7.071151e-03 6.280646e-03 5.812481e-03 5.550927e-03 5.417207e-03 5.359876e-03 5.344851e-03 5.357774e-03 5.402117e-03 5.497721e-03 5.658911e-03 5.885693e-03 6.181025e-03 6.561367e-03 7.014364e-03 7.409760e-03 7.541663e-03 7.306973e-03 6.819452e-03 6.311415e-03 5.948962e-03 5.776437e-03 5.773050e-03 5.914581e-03 6.169031e-03 6.463208e-03 6.718062e-03 6.973356e-03 7.450235e-03 8.391633e-03 9.788708e-03 1.132921e-02 1.265226e-02 1.357322e-02 1.391399e-02 1.336779e-02 1.182625e-02 9.745662e-03 7.877703e-03 6.689730e-03 6.161845e-03 6.036965e-03 6.076394e-03 6.142457e-03 6.193032e-03 6.255145e-03 6.414870e-03 6.805693e-03 7.540205e-03 8.561670e-03 9.511556e-03 9.884710e-03 9.445193e-03 8.462913e-03 7.455984e-03 6.764556e-03 6.416781e-03 6.279466e-03 6.238789e-03 6.236223e-03 6.247693e-03 6.264526e-03 6.287873e-03 6.319859e-03 6.355495e-03 6.377765e-03 6.374531e-03 6.355951e-03 6.354557e-03 6.411426e-03 6.557892e-03 6.792885e-03 7.072779e-03 7.351488e-03 7.635578e-03 7.955848e-03 8.261680e-03 8.407689e-03 8.284276e-03 7.936441e-03 7.512128e-03 7.135670e-03 6.858952e-03 6.687729e-03 6.604043e-03 6.582204e-03 6.605375e-03 6.680189e-03 6.821240e-03 7.023224e-03 7.230743e-03 7.361530e-03 7.372550e-03 7.298509e-03 7.233538e-03 7.254974e-03 7.367637e-03 7.511028e-03 7.623095e-03 7.735142e-03 7.997609e-03 8.572497e-03 9.436619e-03 1.027271e-02 1.063284e-02 1.029918e-02 9.494261e-03 8.706038e-03 8.313137e-03 8.354012e-03 8.587754e-03 8.702097e-03 8.541980e-03 8.170747e-03 7.770373e-03 7.473888e-03 7.304975e-03 7.224075e-03 7.198561e-03 7.216503e-03 7.286777e-03 7.436890e-03 7.723366e-03 8.192892e-03 8.808263e-03 9.398174e-03 9.765725e-03 9.885055e-03 9.999391e-03 1.046360e-02 1.148160e-02 1.296156e-02 1.452561e-02 1.563003e-02 1.583690e-02 1.522935e-02 1.459465e-02 1.518075e-02 1.827562e-02 2.481496e-02 3.467502e-02 4.567079e-02 5.356495e-02 5.430129e-02 4.711052e-02 3.528816e-02 2.363950e-02 1.531288e-02 1.076014e-02 8.852233e-03 8.316687e-03 8.363831e-03 8.624770e-03 8.903523e-03 9.074247e-03 9.084827e-03 8.982937e-03 8.856234e-03 8.784448e-03 8.848024e-03 9.158531e-03 9.811356e-03 1.074434e-02 1.165930e-02 1.218393e-02 1.213135e-02 1.163627e-02 1.097359e-02 1.033227e-02 9.752006e-03 9.225862e-03 8.785322e-03 8.467982e-03 8.279487e-03 8.187440e-03 8.150270e-03 8.144439e-03 8.148754e-03 8.162733e-03 8.178647e-03 8.197497e-03 8.220041e-03 8.244955e-03 8.276387e-03 8.315169e-03 8.359424e-03 8.407638e-03 8.463450e-03 8.570347e-03 8.833080e-03 9.418809e-03 1.049098e-02 1.207705e-02 1.394416e-02 1.563976e-02 1.666920e-02 1.671853e-02 1.578877e-02 1.418209e-02 1.238207e-02 1.083961e-02 9.811778e-03 9.298561e-03 9.155245e-03 9.191974e-03 9.271901e-03 9.316526e-03 9.300929e-03 9.240680e-03 9.159161e-03 9.083294e-03 9.030324e-03 9.001008e-03 8.991310e-03 8.975531e-03 8.913346e-03 8.773651e-03 8.564204e-03 8.356713e-03 8.252824e-03 8.288762e-03 8.367720e-03 8.304888e-03 7.970950e-03 7.403291e-03 6.773978e-03 6.254741e-03 5.925057e-03 5.762625e-03 5.710123e-03 5.712811e-03 5.743801e-03 5.791515e-03 5.854992e-03 5.933499e-03 6.019581e-03 6.086817e-03 6.106109e-03 6.067309e-03 5.986337e-03 5.908203e-03 5.875052e-03 5.918834e-03 6.041366e-03 6.220534e-03 6.400033e-03 6.517583e-03 6.524953e-03 6.426368e-03 6.263959e-03 6.100332e-03 5.974766e-03 5.903430e-03 5.879032e-03 5.898911e-03 5.977836e-03 6.173112e-03 6.594283e-03 7.436107e-03 9.016654e-03 1.175857e-02 1.601445e-02 2.165502e-02 2.765495e-02 3.215739e-02 3.336180e-02 3.063611e-02 2.506963e-02 1.871558e-02 1.336728e-02 9.805501e-03 7.877279e-03 7.056336e-03 6.912922e-03 7.267903e-03 8.107245e-03 9.387062e-03 1.087789e-02 1.214594e-02 1.276774e-02 1.261191e-02 1.203416e-02 1.185113e-02 1.323157e-02 1.750119e-02 2.566630e-02 3.757828e-02 5.098214e-02 6.177396e-02 6.574720e-02 6.122219e-02 5.017444e-02 3.703641e-02 2.601842e-02 1.914604e-02 1.609990e-02 1.523513e-02 1.484655e-02 1.393847e-02 1.236248e-02 1.052907e-02 8.939297e-03 7.912371e-03 7.532069e-03 7.778645e-03 8.592328e-03 9.855602e-03 1.128326e-02 1.244546e-02 1.291175e-02 1.250033e-02 1.139416e-02 1.001516e-02 8.784835e-03 7.926752e-03 7.461348e-03 7.303685e-03 7.383199e-03 7.694687e-03 8.293150e-03 9.232636e-03 1.045986e-02 1.175012e-02 1.273095e-02 1.305434e-02 1.259108e-02 1.152228e-02 1.023135e-02 9.093793e-03 8.313852e-03 7.898860e-03 7.755840e-03 7.782374e-03 7.908337e-03 8.100160e-03 8.323000e-03 8.533517e-03 8.682410e-03 8.735127e-03 8.681234e-03 8.541031e-03 8.350113e-03 8.153214e-03 7.989999e-03 7.891449e-03 7.867648e-03 7.904958e-03 7.965628e-03 8.003064e-03 7.989327e-03 7.921439e-03 7.825663e-03 7.727321e-03 7.647310e-03 7.596543e-03 7.599218e-03 7.677603e-03 7.841384e-03 8.053457e-03 8.234243e-03 8.297769e-03 8.201583e-03 7.976229e-03 7.706096e-03 7.488867e-03 7.380434e-03 7.390142e-03 7.474693e-03 7.573418e-03 7.625229e-03 7.605841e-03 7.525440e-03 7.430649e-03 7.370103e-03 7.391247e-03 7.527406e-03 7.820009e-03 8.307527e-03 9.008409e-03 9.879768e-03 1.077957e-02 1.149549e-02 1.181835e-02 1.164388e-02 1.103751e-02 1.021328e-02 9.460298e-03 9.022510e-03 9.035720e-03 9.496499e-03 1.027977e-02 1.117551e-02 1.194092e-02 1.235750e-02 1.229592e-02 1.176092e-02 1.087313e-02 9.851906e-03 8.918431e-03 8.243966e-03 7.913210e-03 7.928296e-03 8.224633e-03 8.692377e-03 9.191621e-03 9.585596e-03 9.773852e-03 9.727390e-03 9.477054e-03 9.102014e-03 8.685155e-03 8.295125e-03 7.973884e-03 7.732108e-03 7.558865e-03 7.479201e-03 7.520754e-03 7.967748e-03 9.520626e-03 1.389450e-02 2.472043e-02 4.845768e-02 9.448146e-02 1.725475e-01 2.871600e-01 4.296480e-01 5.747074e-01 6.854643e-01 7.273508e-01 6.863860e-01 5.757480e-01 4.296219e-01 2.854793e-01 1.697547e-01 9.140206e-02 4.587189e-02 2.308636e-02 1.322964e-02 9.680926e-03 8.810654e-03 9.031567e-03 9.783368e-03 1.091781e-02 1.247661e-02 1.442600e-02 1.661938e-02 1.869979e-02 2.016831e-02 2.055129e-02 1.966201e-02 1.770881e-02 1.519817e-02 1.271533e-02 1.066971e-02 9.212579e-03 8.280414e-03 7.719573e-03 7.384676e-03 7.183567e-03 7.067337e-03 7.022019e-03 7.044664e-03 7.139591e-03 7.305093e-03 7.533553e-03 7.801603e-03 8.074812e-03 8.317829e-03 8.510754e-03 8.647176e-03 8.741611e-03 8.805587e-03 8.839296e-03 8.826273e-03 8.743930e-03 8.581818e-03 8.351759e-03 8.086007e-03 7.825758e-03 7.598645e-03 7.423246e-03 7.300393e-03 7.226048e-03 7.196899e-03 7.207924e-03 7.263809e-03 7.368215e-03 7.531663e-03 7.755765e-03 8.034494e-03 8.358277e-03 8.716793e-03 9.124364e-03 9.621641e-03 1.024680e-02 1.101464e-02 1.187623e-02 1.276852e-02 1.371017e-02 1.496196e-02 1.710768e-02 2.099020e-02 2.740384e-02 3.657487e-02 4.767098e-02 5.868538e-02 6.693014e-02 7.003922e-02 6.697556e-02 5.860499e-02 4.718079e-02 3.540182e-02 2.541912e-02 1.825895e-02 1.391639e-02 1.180377e-02 1.114952e-02 1.127039e-02 1.166577e-02 1.199422e-02 1.206024e-02 1.179497e-02 1.123414e-02 1.050128e-02 9.755202e-03 9.122123e-03 8.732170e-03 8.741889e-03 9.473883e-03 1.174996e-02 1.729896e-02 2.929594e-02 5.267659e-02 9.386796e-02 1.593664e-01 2.530190e-01 3.726299e-01 5.081310e-01 6.415411e-01 7.504432e-01 8.138642e-01 8.189348e-01 7.643213e-01 6.609489e-01 5.290110e-01 3.913017e-01 2.674466e-01 1.693763e-01 1.007277e-01 5.910326e-02 3.954862e-02 3.796503e-02 5.267582e-02 8.439147e-02 1.336887e-01 1.989496e-01 2.727730e-01 3.429033e-01 3.939203e-01 4.131436e-01 3.953264e-01 3.451843e-01 2.751369e-01 2.007517e-01 1.345754e-01 8.366989e-02 4.926526e-02 2.854155e-02 1.737755e-02 1.195803e-02 9.558667e-03 8.578883e-03 8.200795e-03 8.062436e-03 8.027728e-03 8.039646e-03 8.115903e-03 8.284763e-03 8.624448e-03 9.266158e-03 1.038986e-02 1.220045e-02 1.486349e-02 1.842647e-02 2.274805e-02 2.744008e-02 3.194724e-02 3.565375e-02 3.810749e-02 3.914260e-02 3.900992e-02 3.830663e-02 3.783181e-02 3.839888e-02 4.064266e-02 4.492343e-02 5.130484e-02 5.969504e-02 7.006256e-02 8.251904e-02 9.739518e-02 1.149415e-01 1.351648e-01 1.575816e-01 1.813980e-01 2.054499e-01 2.282755e-01 2.477685e-01 2.610628e-01 2.650966e-01 2.574116e-01 2.376814e-01 2.083251e-01 1.740047e-01 1.403001e-01 1.119055e-01 9.143031e-02 7.916461e-02 7.356905e-02 7.215858e-02 7.230131e-02 7.180182e-02 6.935077e-02 6.452194e-02 5.775045e-02 5.006570e-02 4.277694e-02 3.722509e-02 3.449823e-02 3.536098e-02 3.996757e-02 4.781812e-02 5.756850e-02 6.721530e-02 7.461750e-02 7.804290e-02 7.683382e-02 7.165094e-02 6.424576e-02 5.680025e-02 5.122445e-02 4.871994e-02 4.941294e-02 5.261513e-02 5.706711e-02 6.140390e-02 6.439516e-02 6.535518e-02 6.424193e-02 6.165434e-02 5.882503e-02 5.742332e-02 5.954136e-02 6.754334e-02 8.391391e-02 1.106450e-01 1.481907e-01 1.946876e-01 2.453059e-01 2.926229e-01 3.284052e-01 3.460627e-01 3.426641e-01 3.198676e-01 2.832318e-01 2.404668e-01 1.992538e-01 1.661250e-01 1.468392e-01 1.466236e-01 1.713802e-01 2.271228e-01 3.181776e-01 4.442966e-01 5.971096e-01 7.591323e-01 9.048728e-01 1.007239e+00 1.044810e+00 1.008758e+00 9.067758e-01 7.595049e-01 5.937905e-01 4.351478e-01 3.009174e-01 1.993869e-01 1.298028e-01 8.659863e-02 6.249543e-02 5.082114e-02 4.639960e-02 4.572211e-02 4.661896e-02 4.791437e-02 4.908005e-02 4.990833e-02 5.059090e-02 5.117670e-02 5.171545e-02 5.218405e-02 5.255086e-02 5.286922e-02 5.334352e-02 5.436102e-02 5.639414e-02 5.988001e-02 6.507341e-02 7.188922e-02 7.986892e-02 8.819487e-02 9.586426e-02 1.017880e-01 1.051853e-01 1.057029e-01 1.035529e-01 9.957407e-02 9.504312e-02 9.134782e-02 8.973418e-02 9.104694e-02 9.544356e-02 1.024400e-01 1.109466e-01 1.195670e-01 1.268357e-01 1.318688e-01 1.345993e-01 1.362082e-01 1.388552e-01 1.453705e-01 1.583458e-01 1.792234e-01 2.078033e-01 2.412799e-01 2.752272e-01 3.036751e-01 3.210806e-01 3.233637e-01 3.093626e-01 2.811786e-01 2.433937e-01 2.019809e-01 1.625546e-01 1.293085e-01 1.041221e-01 8.704689e-02 7.647927e-02 7.036209e-02 6.665612e-02 6.385951e-02 6.120854e-02 5.849326e-02 5.592061e-02 5.377958e-02 5.235954e-02 5.181576e-02 5.232011e-02 5.413318e-02 5.763409e-02 6.330797e-02 7.154430e-02 8.241149e-02 9.547129e-02 1.096732e-01 1.234733e-01 1.351841e-01 1.433816e-01 1.473067e-01 1.470847e-01 1.436253e-01 1.383880e-01 1.327625e-01 1.277958e-01 1.237546e-01 1.203331e-01 1.166890e-01 1.119667e-01 1.056409e-01 9.777334e-02 8.901619e-02 8.057575e-02 7.382485e-02 7.009993e-02 7.038209e-02 7.514348e-02 8.434866e-02 9.745461e-02 1.136247e-01 1.318253e-01 1.510347e-01 1.701826e-01 1.882948e-01 2.042028e-01 2.166449e-01 2.241429e-01 2.254958e-01 2.199047e-01 2.075176e-01 1.892840e-01 1.671504e-01 1.434139e-01 1.203324e-01 9.969115e-02 8.248828e-02 6.895737e-02 5.873585e-02 5.112160e-02 4.535965e-02 4.083057e-02 3.711594e-02 3.404782e-02 3.160733e-02 2.987048e-02 2.892143e-02 2.876273e-02 2.931211e-02 3.038354e-02 3.168973e-02 3.294695e-02 3.388460e-02 3.434770e-02 3.429913e-02 3.383702e-02 3.313122e-02 3.239895e-02 3.182370e-02 3.153666e-02 3.158685e-02 3.196087e-02 3.261534e-02 3.347092e-02 3.447293e-02 3.557301e-02 3.674406e-02 3.798774e-02 3.933380e-02 4.082875e-02 4.256457e-02 4.459205e-02 4.693062e-02 4.949188e-02 5.205773e-02 5.427919e-02 5.575475e-02 5.606927e-02 5.497336e-02 5.240401e-02 4.855488e-02 4.382132e-02 3.875063e-02 3.387529e-02 2.967808e-02 2.645281e-02 2.432960e-02 2.326413e-02 2.307578e-02 2.352270e-02 2.432186e-02 2.520607e-02 2.595749e-02 2.642561e-02 2.652886e-02 2.626673e-02 2.570507e-02 2.495895e-02 2.416488e-02 2.347292e-02 2.302354e-02 2.294590e-02 2.335289e-02 2.434823e-02 2.601423e-02 2.837873e-02 3.140305e-02 3.494032e-02 3.870603e-02 4.232711e-02 4.537388e-02 4.744958e-02 4.830851e-02 4.794395e-02 4.663095e-02 4.492792e-02 4.361794e-02 4.359085e-02 4.570501e-02 5.065759e-02 5.876291e-02 6.993286e-02 8.354696e-02 9.852751e-02 1.134592e-01 1.269359e-01 1.379156e-01 1.461330e-01 1.523122e-01 1.583177e-01 1.666957e-01 1.801465e-01 2.007979e-01 2.293932e-01 2.647364e-01 3.036382e-01 3.411888e-01 3.717816e-01 3.902693e-01 3.930625e-01 3.788314e-01 3.489024e-01 3.071269e-01 2.582935e-01 2.078015e-01 1.602484e-01 1.189369e-01 8.550802e-02 6.024265e-02 4.230240e-02 3.032477e-02 2.280726e-02 1.836381e-02 1.590226e-02 1.463268e-02 1.404961e-02 1.384926e-02 1.387409e-02 1.403950e-02 1.430554e-02 1.461664e-02 1.496651e-02 1.530011e-02 1.557845e-02 1.577500e-02 1.587397e-02 1.587393e-02 1.579509e-02 1.565550e-02 1.548538e-02 1.529199e-02 1.509846e-02 1.489909e-02 1.470036e-02 1.450694e-02 1.433823e-02 1.422143e-02 1.420098e-02 1.434165e-02 1.471554e-02 1.542653e-02 1.659263e-02 1.833684e-02 2.078942e-02 2.405400e-02 2.818321e-02 3.310191e-02 3.865159e-02 4.452503e-02 5.030255e-02 5.548391e-02 5.964105e-02 6.241574e-02 6.364170e-02 6.336790e-02 6.187263e-02 5.952355e-02 5.677003e-02 5.399612e-02 5.146874e-02 4.933130e-02 4.758076e-02 4.618588e-02 4.507313e-02 4.426687e-02 4.382282e-02 4.386159e-02 4.452045e-02 4.590153e-02 4.803662e-02 5.086217e-02 5.426025e-02 5.799365e-02 6.180144e-02 6.540419e-02 6.844754e-02 7.066695e-02 7.176594e-02 7.159640e-02 7.008035e-02 6.737152e-02 6.374633e-02 5.967122e-02 5.562399e-02 5.211744e-02 4.949958e-02 4.795275e-02 4.739699e-02 4.757820e-02 4.810593e-02 4.856107e-02 4.859089e-02 4.797609e-02 4.667964e-02 4.479880e-02 4.258006e-02 4.026378e-02 3.807516e-02 3.614673e-02 3.450849e-02 3.309107e-02 3.177366e-02 3.041578e-02 2.891623e-02 2.722954e-02 2.537291e-02 2.342805e-02 2.150257e-02 1.973460e-02 1.824065e-02 1.711811e-02 1.644959e-02 1.628067e-02 1.664571e-02 1.756117e-02 1.902115e-02 2.102814e-02 2.351150e-02 2.642153e-02 2.964258e-02 3.300985e-02 3.635193e-02 3.944889e-02 4.208095e-02 4.408540e-02 4.533329e-02 4.578921e-02 4.553366e-02 4.470013e-02 4.353885e-02 4.227551e-02 4.114458e-02 4.028976e-02 3.978297e-02 3.959569e-02 3.959918e-02 3.965691e-02 3.961235e-02 3.937503e-02 3.892206e-02 3.830651e-02 3.764031e-02 3.709797e-02 3.681472e-02 3.690688e-02 3.742620e-02 3.833306e-02 3.952827e-02 4.084288e-02 4.211354e-02 4.314433e-02 4.378544e-02 4.394560e-02 4.357168e-02 4.271093e-02 4.141686e-02 3.982539e-02 3.806920e-02 3.627692e-02 3.457224e-02 3.302431e-02 3.165900e-02 3.049761e-02 2.947465e-02 2.856253e-02 2.771864e-02 2.693199e-02 2.622434e-02 2.567737e-02 2.538521e-02 2.547181e-02 2.605723e-02 2.721981e-02 2.897656e-02 3.125219e-02 3.389325e-02 3.668338e-02 3.933952e-02 4.155437e-02 4.308696e-02 4.375868e-02 4.347071e-02 4.227866e-02 4.033370e-02 3.782945e-02 3.506845e-02 3.227886e-02 2.966729e-02 2.740748e-02 2.554401e-02 2.407567e-02 2.295741e-02 2.209264e-02 2.140014e-02 2.080927e-02 2.026089e-02 1.974611e-02 1.926425e-02 1.883507e-02 1.847976e-02 1.821231e-02 1.803388e-02 1.792849e-02 1.786335e-02 1.780168e-02 1.769990e-02 1.752105e-02 1.724133e-02 1.685517e-02 1.637444e-02 1.582658e-02 1.525036e-02 1.468875e-02 1.418456e-02 1.376329e-02 1.344957e-02 1.324027e-02 1.313056e-02 1.309439e-02 1.310936e-02 1.315087e-02 1.320275e-02 1.326127e-02 1.333897e-02 1.345635e-02 1.365533e-02 1.397447e-02 1.445892e-02 1.513258e-02 1.601526e-02 1.709214e-02 1.832762e-02 1.965429e-02 2.098380e-02 2.220943e-02 2.322753e-02 2.394287e-02 2.428674e-02 2.421407e-02 2.372807e-02 2.286914e-02 2.170193e-02 2.032072e-02 1.882877e-02 1.732172e-02 1.588930e-02 1.460006e-02 1.350113e-02 1.261872e-02 1.196262e-02 1.152414e-02 1.129208e-02 1.124444e-02 1.135728e-02 1.160919e-02 1.196668e-02 1.240124e-02 1.288021e-02 1.335682e-02 1.380515e-02 1.418290e-02 1.447086e-02 1.465572e-02 1.474356e-02 1.476641e-02 1.477162e-02 1.483754e-02 1.504779e-02 1.551388e-02 1.632500e-02 1.758486e-02 1.935606e-02 2.168384e-02 2.454337e-02 2.787941e-02 3.157571e-02 3.545602e-02 3.934967e-02 4.302173e-02 4.630700e-02 4.906765e-02 5.123317e-02 5.282579e-02 5.399374e-02 5.490644e-02 5.584837e-02 5.710117e-02 5.893781e-02 6.153298e-02 6.503397e-02 6.938579e-02 7.442034e-02 7.991625e-02 8.538711e-02 9.040926e-02 9.453254e-02 9.722890e-02 9.821959e-02 9.725589e-02 9.428483e-02 8.945446e-02 8.302819e-02 7.537649e-02 6.704493e-02 5.841343e-02 5.000979e-02 4.215549e-02 3.513132e-02 2.907826e-02 2.405951e-02 2.002849e-02 1.689931e-02 1.453568e-02 1.280307e-02 1.155725e-02 1.068270e-02 1.007643e-02 9.659143e-03 9.374692e-03 9.183250e-03 9.051901e-03 8.967238e-03 8.913040e-03 8.885162e-03 8.871778e-03 8.882857e-03 8.906255e-03 8.941452e-03 8.986862e-03 9.040207e-03 9.098881e-03 9.160437e-03 9.218813e-03 9.273719e-03 9.318804e-03 9.352072e-03 9.371513e-03 9.376320e-03 9.367999e-03 9.346261e-03 9.314484e-03 9.276175e-03 9.235414e-03 9.193471e-03 9.153292e-03 9.116177e-03 9.083540e-03 9.053201e-03 9.025086e-03 8.998054e-03 8.972420e-03 8.946167e-03 8.921467e-03 8.897748e-03 8.877953e-03 8.864176e-03 8.859962e-03 8.867055e-03 8.886534e-03 8.921131e-03 8.972697e-03 9.042797e-03 9.129112e-03 9.231208e-03 9.349464e-03 9.484662e-03 9.635434e-03 9.805445e-03 9.997042e-03 1.021887e-02 1.048111e-02 1.080183e-02 1.120056e-02 1.170683e-02 1.235152e-02 1.316813e-02 1.418812e-02 1.544437e-02 1.695284e-02 1.871013e-02 2.069847e-02 2.287522e-02 2.516653e-02 2.747615e-02 2.968562e-02 3.166974e-02 3.330914e-02 3.448523e-02 3.511149e-02 3.513787e-02 3.455374e-02 3.338686e-02 3.171256e-02 2.963505e-02 2.727793e-02 2.476913e-02 2.223936e-02 1.979735e-02 1.753071e-02 1.550065e-02 1.374792e-02 1.228110e-02 1.108893e-02 1.014744e-02 9.423874e-03 8.880975e-03 8.484643e-03 8.198850e-03 7.997288e-03 7.856138e-03 7.757690e-03 7.688685e-03 7.639956e-03 7.605058e-03 7.580275e-03 7.563166e-03 7.552290e-03 7.546707e-03 7.550621e-03 7.560409e-03 7.577932e-03 7.602875e-03 7.638169e-03 7.681763e-03 7.734643e-03 7.795600e-03 7.863609e-03 7.936549e-03 8.012085e-03 8.085007e-03 8.153823e-03 8.212381e-03 8.258990e-03 8.288606e-03 8.300312e-03 8.291860e-03 8.264585e-03 8.219114e-03 8.158323e-03 8.090279e-03 8.015811e-03 7.945888e-03 7.887148e-03 7.847767e-03 7.837943e-03 7.865272e-03 7.943645e-03 8.080632e-03 8.289542e-03 8.577652e-03 8.954437e-03 9.426774e-03 9.999397e-03 1.066581e-02 1.142005e-02 1.225144e-02 1.313384e-02 1.404050e-02 1.494247e-02 1.580281e-02 1.657990e-02 1.724642e-02 1.776798e-02 1.812316e-02 1.830252e-02 1.830034e-02 1.812877e-02 1.780071e-02 1.734398e-02 1.678766e-02 1.615835e-02 1.549427e-02 1.481173e-02 1.413755e-02 1.348670e-02 1.286342e-02 1.228088e-02 1.173174e-02 1.121922e-02 1.073802e-02 1.028599e-02 9.861251e-03 9.461015e-03 9.087383e-03 8.739196e-03 8.419509e-03 8.130627e-03 7.870640e-03 7.642432e-03 7.447290e-03 7.281275e-03 7.145165e-03 7.036773e-03 6.952893e-03 6.890526e-03 6.849853e-03 6.827150e-03 6.821097e-03 6.830801e-03 6.855831e-03 6.895635e-03 6.952364e-03 7.024466e-03 7.114236e-03 7.221397e-03 7.345633e-03 7.485582e-03 7.638624e-03 7.801395e-03 7.968460e-03 8.133336e-03 8.288811e-03 8.427146e-03 8.540767e-03 8.622836e-03 8.667905e-03 8.672392e-03 8.634987e-03 8.557046e-03 8.442277e-03 8.297291e-03 8.127714e-03 7.944903e-03 7.756228e-03 7.570719e-03 7.399185e-03 7.244757e-03 7.115132e-03 7.013617e-03 6.940790e-03 6.897121e-03 6.880559e-03 6.887561e-03 6.914087e-03 6.953882e-03 7.001883e-03 7.052859e-03 7.100278e-03 7.141502e-03 7.169474e-03 7.184171e-03 7.182305e-03 7.164305e-03 7.131800e-03 7.085876e-03 7.030878e-03 6.969559e-03 6.906633e-03 6.848049e-03 6.796605e-03 6.757377e-03 6.733291e-03 6.727885e-03 6.742743e-03 6.779601e-03 6.839526e-03 6.920415e-03 7.023579e-03 7.144612e-03 7.281519e-03 7.432118e-03 7.588707e-03 7.748181e-03 7.905746e-03 8.051397e-03 8.181236e-03 8.288217e-03 8.367534e-03 8.412886e-03 8.420967e-03 8.390971e-03 8.321675e-03 8.214463e-03 8.074391e-03 7.905345e-03 7.713270e-03 7.505975e-03 7.291161e-03 7.075286e-03 6.864079e-03 6.663804e-03 6.480105e-03 6.313652e-03 6.167606e-03 6.041391e-03 5.935911e-03 5.849035e-03 5.778483e-03 5.722936e-03 5.679493e-03 5.646421e-03 5.620203e-03 5.600877e-03 5.588255e-03 5.577736e-03 5.569988e-03 5.565634e-03 5.563863e-03 5.565796e-03 5.572741e-03 5.587682e-03 5.612521e-03 5.651387e-03 5.710060e-03 5.795211e-03 5.913449e-03 6.080307e-03 6.298789e-03 6.584401e-03 6.953921e-03 7.415485e-03 7.989698e-03 8.689798e-03 9.523786e-03 1.051211e-02 1.165300e-02 1.295330e-02 1.442386e-02 1.604155e-02 1.781374e-02 1.971530e-02 2.173810e-02 2.386487e-02 2.605632e-02 2.831540e-02 3.060111e-02 3.289827e-02 3.518417e-02 3.743684e-02 3.963682e-02 4.175098e-02 4.375294e-02 4.562883e-02 4.730240e-02 4.876744e-02 4.996438e-02 5.085127e-02 5.137542e-02 5.152012e-02 5.121696e-02 5.049440e-02 4.930513e-02 4.769605e-02 4.566825e-02 4.329624e-02 4.061590e-02 3.770883e-02 3.466233e-02 3.152380e-02 2.842455e-02 2.537463e-02 2.249338e-02 1.979249e-02 1.732462e-02 1.511666e-02 1.316143e-02 1.148534e-02 1.004682e-02 8.858242e-03 7.874160e-03 7.083517e-03 6.449248e-03 5.956428e-03 5.572488e-03 5.280823e-03 5.058397e-03 4.892586e-03 4.768420e-03 4.676393e-03 4.607568e-03 4.555750e-03 4.516646e-03 4.486604e-03 4.463510e-03 4.444591e-03 4.428985e-03 4.414631e-03 4.405474e-03 4.397450e-03 4.391353e-03 4.386404e-03 4.382994e-03 4.380961e-03 4.381061e-03 4.382855e-03 4.385829e-03 4.390928e-03 4.398308e-03 4.407142e-03 4.418648e-03 4.432066e-03 4.447742e-03 4.466152e-03 4.486805e-03 4.509978e-03 4.536948e-03 4.566298e-03 4.599927e-03 4.637376e-03 4.679364e-03 4.726703e-03 4.779200e-03 4.837668e-03 4.902700e-03 4.973756e-03 5.050999e-03 5.134274e-03 5.222184e-03 5.314091e-03 5.407699e-03 5.501437e-03 5.593168e-03 5.679897e-03 5.758334e-03 5.826017e-03 5.880856e-03 5.918420e-03 5.938502e-03 5.938773e-03 5.917946e-03 5.876645e-03 5.814843e-03 5.734962e-03 5.637266e-03 5.526572e-03 5.404097e-03 5.273930e-03 5.139766e-03 5.004484e-03 4.871504e-03 4.741901e-03 4.621025e-03 4.506769e-03 4.403403e-03 4.309687e-03 4.227107e-03 4.154173e-03 4.091449e-03 4.036526e-03 3.991012e-03 3.951338e-03 3.917466e-03 3.888335e-03 3.864072e-03 3.841539e-03 3.822243e-03 3.804785e-03 3.788214e-03 3.772735e-03 3.758597e-03 3.745252e-03 3.732125e-03 3.719699e-03 3.708538e-03 3.698255e-03 3.688577e-03 3.680091e-03 3.674097e-03 3.668491e-03 3.666191e-03 3.665461e-03 3.667222e-03 3.672532e-03 3.681333e-03 3.693135e-03 3.709894e-03 3.730801e-03 3.755893e-03 3.786145e-03 3.822221e-03 3.862096e-03 3.906501e-03 3.955491e-03 4.007366e-03 4.061602e-03 4.118127e-03 4.174478e-03 4.230238e-03 4.283223e-03 4.333597e-03 4.379446e-03 4.419715e-03 4.453434e-03 4.481107e-03 4.502275e-03 4.516671e-03 4.527106e-03 4.532146e-03 4.535846e-03 4.538127e-03 4.543382e-03 4.551327e-03 4.566181e-03 4.588503e-03 4.620214e-03 4.662624e-03 4.716004e-03 4.781436e-03 4.855120e-03 4.940313e-03 5.029117e-03 5.124064e-03 5.216646e-03 5.307801e-03 5.392458e-03 5.464574e-03 5.524390e-03 5.565697e-03 5.588395e-03 5.589273e-03 5.567571e-03 5.524592e-03 5.460197e-03 5.374582e-03 5.273169e-03 5.156769e-03 5.028174e-03 4.892947e-03 4.753880e-03 4.612705e-03 4.475305e-03 4.342746e-03 4.217169e-03 4.102355e-03 3.995995e-03 3.901991e-03 3.819203e-03 3.745981e-03 3.683340e-03 3.629418e-03 3.584208e-03 3.544403e-03 3.510816e-03 3.481371e-03 3.455680e-03 3.432212e-03 3.411545e-03 3.392261e-03 3.374840e-03 3.359202e-03 3.345325e-03 3.334221e-03 3.325130e-03 3.318844e-03 3.316535e-03 3.316875e-03 3.321186e-03 3.329320e-03 3.340562e-03 3.355175e-03 3.372550e-03 3.392473e-03 3.414195e-03 3.436053e-03 3.457704e-03 3.479450e-03 3.498063e-03 3.514023e-03 3.526964e-03 3.534634e-03 3.537397e-03 3.534730e-03 3.526534e-03 3.512039e-03 3.492296e-03 3.466590e-03 3.435964e-03 3.401382e-03 3.363075e-03 3.321658e-03 3.279458e-03 3.235549e-03 3.192392e-03 3.149727e-03 3.108457e-03 3.070451e-03 3.034149e-03 3.001840e-03 2.972155e-03 2.946574e-03 2.923901e-03 2.904076e-03 2.887001e-03 2.871828e-03 2.859690e-03 2.847789e-03 2.837868e-03 2.828863e-03 2.820081e-03 2.812003e-03 2.804105e-03 2.796941e-03 2.790734e-03 2.785791e-03 2.782240e-03 2.780687e-03 2.782696e-03 2.788354e-03 2.799341e-03 2.816835e-03 2.841675e-03 2.875651e-03 2.920392e-03 2.976797e-03 3.047024e-03 3.132120e-03 3.234657e-03 3.354471e-03 3.493628e-03 3.653697e-03 3.834097e-03 4.036427e-03 4.259773e-03 4.504780e-03 4.770263e-03 5.055184e-03 5.357638e-03 5.674262e-03 6.003961e-03 6.342714e-03 6.686941e-03 7.031950e-03 7.375701e-03 7.710483e-03 8.033918e-03 8.339347e-03 8.624727e-03 8.882888e-03 9.109266e-03 9.301693e-03 9.455527e-03 9.567361e-03 9.634796e-03 9.656575e-03 9.631566e-03 9.558519e-03 9.441144e-03 9.276438e-03 9.071078e-03 8.824799e-03 8.545139e-03 8.232559e-03 7.895027e-03 7.537460e-03 7.164015e-03 6.782109e-03 6.396457e-03 6.012612e-03 5.633474e-03 5.266165e-03 4.913589e-03 4.580073e-03 4.265802e-03 3.974963e-03 3.706911e-03 3.462721e-03 3.243220e-03 3.046754e-03 2.873544e-03 2.721871e-03 2.589482e-03 2.475830e-03 2.378059e-03 2.295153e-03 2.225146e-03 2.166375e-03 2.117377e-03 2.076008e-03 2.041560e-03 2.012841e-03 1.988944e-03 1.968940e-03 1.951496e-03 1.936801e-03 1.923706e-03 1.912164e-03 1.900983e-03 1.891125e-03 1.881528e-03 1.871682e-03 1.861989e-03 1.851783e-03 1.841096e-03 1.829296e-03 1.816996e-03 1.803498e-03 1.788756e-03 1.772265e-03 1.754189e-03 1.733962e-03 1.711560e-03 1.686997e-03 1.659762e-03 1.630046e-03 1.597348e-03 1.561778e-03 1.523427e-03 1.482097e-03 1.437636e-03 1.390258e-03 1.340285e-03 1.287592e-03 1.232648e-03 1.175462e-03 1.116603e-03 1.056219e-03 9.948738e-04 9.328031e-04 ''') ImportString(u'flux_model_0_5_reduce(numeric)',''' 1.319175e-03 1.750092e-03 2.097782e-03 2.516841e-03 3.331051e-03 4.845508e-03 6.918991e-03 8.654762e-03 8.912326e-03 7.458358e-03 5.262554e-03 3.492610e-03 2.560264e-03 2.228979e-03 2.157527e-03 2.164920e-03 2.195222e-03 2.230741e-03 2.258832e-03 2.270818e-03 2.263597e-03 2.242157e-03 2.220702e-03 2.212826e-03 2.226071e-03 2.261554e-03 2.315124e-03 2.381431e-03 2.458370e-03 2.542760e-03 2.613196e-03 2.647036e-03 2.661671e-03 2.721502e-03 2.885240e-03 3.175670e-03 3.602367e-03 4.149221e-03 4.694773e-03 5.007476e-03 4.912585e-03 4.458992e-03 3.869113e-03 3.346053e-03 2.962090e-03 2.699124e-03 2.531038e-03 2.455856e-03 2.467843e-03 2.533804e-03 2.597186e-03 2.611304e-03 2.572183e-03 2.518830e-03 2.494159e-03 2.509870e-03 2.546956e-03 2.576485e-03 2.581916e-03 2.565686e-03 2.542628e-03 2.530002e-03 2.541950e-03 2.599755e-03 2.732886e-03 2.946864e-03 3.172050e-03 3.280736e-03 3.199026e-03 2.983326e-03 2.757594e-03 2.604128e-03 2.534622e-03 2.543032e-03 2.673475e-03 3.070823e-03 3.938379e-03 5.310514e-03 6.796687e-03 7.718797e-03 7.689302e-03 6.929021e-03 5.914528e-03 4.947772e-03 4.139133e-03 3.535575e-03 3.140323e-03 2.906241e-03 2.775464e-03 2.708603e-03 2.679938e-03 2.672426e-03 2.678887e-03 2.701059e-03 2.748861e-03 2.829456e-03 2.942847e-03 3.090513e-03 3.280684e-03 3.507182e-03 3.704880e-03 3.770831e-03 3.653487e-03 3.409726e-03 3.155707e-03 2.974481e-03 2.888218e-03 2.886525e-03 2.957291e-03 3.084516e-03 3.231604e-03 3.359031e-03 3.486678e-03 3.725117e-03 4.195816e-03 4.894354e-03 5.664606e-03 6.326131e-03 6.786610e-03 6.956993e-03 6.683895e-03 5.913124e-03 4.872831e-03 3.938851e-03 3.344865e-03 3.080923e-03 3.018482e-03 3.038197e-03 3.071228e-03 3.096516e-03 3.127572e-03 3.207435e-03 3.402847e-03 3.770103e-03 4.280835e-03 4.755778e-03 4.942355e-03 4.722597e-03 4.231457e-03 3.727992e-03 3.382278e-03 3.208390e-03 3.139733e-03 3.119395e-03 3.118112e-03 3.123846e-03 3.132263e-03 3.143936e-03 3.159930e-03 3.177747e-03 3.188882e-03 3.187266e-03 3.177975e-03 3.177278e-03 3.205713e-03 3.278946e-03 3.396443e-03 3.536390e-03 3.675744e-03 3.817789e-03 3.977924e-03 4.130840e-03 4.203844e-03 4.142138e-03 3.968221e-03 3.756064e-03 3.567835e-03 3.429476e-03 3.343864e-03 3.302021e-03 3.291102e-03 3.302688e-03 3.340095e-03 3.410620e-03 3.511612e-03 3.615371e-03 3.680765e-03 3.686275e-03 3.649254e-03 3.616769e-03 3.627487e-03 3.683819e-03 3.755514e-03 3.811547e-03 3.867571e-03 3.998804e-03 4.286249e-03 4.718309e-03 5.136354e-03 5.316422e-03 5.149588e-03 4.747130e-03 4.353019e-03 4.156569e-03 4.177006e-03 4.293877e-03 4.351049e-03 4.270990e-03 4.085374e-03 3.885187e-03 3.736944e-03 3.652488e-03 3.612037e-03 3.599281e-03 3.608251e-03 3.643389e-03 3.718445e-03 3.861683e-03 4.096446e-03 4.404131e-03 4.699087e-03 4.882862e-03 4.942528e-03 4.999695e-03 5.231800e-03 5.740802e-03 6.480780e-03 7.262807e-03 7.815016e-03 7.918450e-03 7.614676e-03 7.297327e-03 7.590373e-03 9.137810e-03 1.240748e-02 1.733751e-02 2.283540e-02 2.678248e-02 2.715064e-02 2.355526e-02 1.764408e-02 1.181975e-02 7.656440e-03 5.380071e-03 4.426117e-03 4.158344e-03 4.181915e-03 4.312385e-03 4.451761e-03 4.537124e-03 4.542414e-03 4.491468e-03 4.428117e-03 4.392224e-03 4.424012e-03 4.579266e-03 4.905678e-03 5.372169e-03 5.829649e-03 6.091967e-03 6.065673e-03 5.818136e-03 5.486793e-03 5.166137e-03 4.876003e-03 4.612931e-03 4.392661e-03 4.233991e-03 4.139743e-03 4.093720e-03 4.075135e-03 4.072220e-03 4.074377e-03 4.081367e-03 4.089323e-03 4.098748e-03 4.110021e-03 4.122477e-03 4.138194e-03 4.157585e-03 4.179712e-03 4.203819e-03 4.231725e-03 4.285173e-03 4.416540e-03 4.709404e-03 5.245488e-03 6.038527e-03 6.972079e-03 7.819878e-03 8.334602e-03 8.359266e-03 7.894386e-03 7.091047e-03 6.191037e-03 5.419804e-03 4.905889e-03 4.649281e-03 4.577622e-03 4.595987e-03 4.635951e-03 4.658263e-03 4.650464e-03 4.620340e-03 4.579580e-03 4.541647e-03 4.515162e-03 4.500504e-03 4.495655e-03 4.487765e-03 4.456673e-03 4.386825e-03 4.282102e-03 4.178356e-03 4.126412e-03 4.144381e-03 4.183860e-03 4.152444e-03 3.985475e-03 3.701646e-03 3.386989e-03 3.127370e-03 2.962528e-03 2.881313e-03 2.855061e-03 2.856405e-03 2.871900e-03 2.895757e-03 2.927496e-03 2.966749e-03 3.009791e-03 3.043409e-03 3.053055e-03 3.033655e-03 2.993168e-03 2.954102e-03 2.937526e-03 2.959417e-03 3.020683e-03 3.110267e-03 3.200016e-03 3.258791e-03 3.262476e-03 3.213184e-03 3.131980e-03 3.050166e-03 2.987383e-03 2.951715e-03 2.939516e-03 2.949456e-03 2.988918e-03 3.086556e-03 3.297142e-03 3.718053e-03 4.508327e-03 5.879284e-03 8.007223e-03 1.082751e-02 1.382748e-02 1.607870e-02 1.668090e-02 1.531806e-02 1.253481e-02 9.357792e-03 6.683642e-03 4.902750e-03 3.938640e-03 3.528168e-03 3.456461e-03 3.633952e-03 4.053622e-03 4.693531e-03 5.438943e-03 6.072968e-03 6.383871e-03 6.305955e-03 6.017079e-03 5.925563e-03 6.615786e-03 8.750596e-03 1.283315e-02 1.878914e-02 2.549107e-02 3.088698e-02 3.287360e-02 3.061109e-02 2.508722e-02 1.851821e-02 1.300921e-02 9.573020e-03 8.049950e-03 7.617563e-03 7.423274e-03 6.969233e-03 6.181242e-03 5.264537e-03 4.469648e-03 3.956186e-03 3.766035e-03 3.889322e-03 4.296164e-03 4.927801e-03 5.641628e-03 6.222730e-03 6.455877e-03 6.250164e-03 5.697078e-03 5.007578e-03 4.392418e-03 3.963376e-03 3.730674e-03 3.651842e-03 3.691599e-03 3.847344e-03 4.146575e-03 4.616318e-03 5.229929e-03 5.875058e-03 6.365476e-03 6.527171e-03 6.295541e-03 5.761138e-03 5.115677e-03 4.546897e-03 4.156926e-03 3.949430e-03 3.877920e-03 3.891187e-03 3.954168e-03 4.050080e-03 4.161500e-03 4.266758e-03 4.341205e-03 4.367563e-03 4.340617e-03 4.270515e-03 4.175057e-03 4.076607e-03 3.994999e-03 3.945725e-03 3.933824e-03 3.952479e-03 3.982814e-03 4.001532e-03 3.994664e-03 3.960719e-03 3.912832e-03 3.863661e-03 3.823655e-03 3.798271e-03 3.799609e-03 3.838802e-03 3.920692e-03 4.026729e-03 4.117121e-03 4.148885e-03 4.100792e-03 3.988115e-03 3.853048e-03 3.744434e-03 3.690217e-03 3.695071e-03 3.737347e-03 3.786709e-03 3.812615e-03 3.802920e-03 3.762720e-03 3.715324e-03 3.685051e-03 3.695623e-03 3.763703e-03 3.910005e-03 4.153763e-03 4.504205e-03 4.939884e-03 5.389785e-03 5.747745e-03 5.909177e-03 5.821939e-03 5.518757e-03 5.106638e-03 4.730149e-03 4.511255e-03 4.517860e-03 4.748249e-03 5.139885e-03 5.587755e-03 5.970462e-03 6.178748e-03 6.147959e-03 5.880461e-03 5.436565e-03 4.925953e-03 4.459215e-03 4.121983e-03 3.956605e-03 3.964148e-03 4.112316e-03 4.346189e-03 4.595811e-03 4.792798e-03 4.886926e-03 4.863695e-03 4.738527e-03 4.551007e-03 4.342577e-03 4.147563e-03 3.986942e-03 3.866054e-03 3.779433e-03 3.739600e-03 3.760377e-03 3.983874e-03 4.760313e-03 6.947250e-03 1.236022e-02 2.422884e-02 4.724073e-02 8.627376e-02 1.435800e-01 2.148240e-01 2.873537e-01 3.427321e-01 3.636754e-01 3.431930e-01 2.878740e-01 2.148110e-01 1.427396e-01 8.487734e-02 4.570103e-02 2.293594e-02 1.154318e-02 6.614820e-03 4.840463e-03 4.405327e-03 4.515783e-03 4.891684e-03 5.458907e-03 6.238304e-03 7.213002e-03 8.309690e-03 9.349895e-03 1.008416e-02 1.027565e-02 9.831006e-03 8.854404e-03 7.599085e-03 6.357663e-03 5.334853e-03 4.606289e-03 4.140207e-03 3.859786e-03 3.692338e-03 3.591784e-03 3.533668e-03 3.511010e-03 3.522332e-03 3.569795e-03 3.652546e-03 3.766776e-03 3.900802e-03 4.037406e-03 4.158915e-03 4.255377e-03 4.323588e-03 4.370805e-03 4.402793e-03 4.419648e-03 4.413137e-03 4.371965e-03 4.290909e-03 4.175880e-03 4.043004e-03 3.912879e-03 3.799322e-03 3.711623e-03 3.650196e-03 3.613024e-03 3.598450e-03 3.603962e-03 3.631904e-03 3.684107e-03 3.765832e-03 3.877883e-03 4.017247e-03 4.179139e-03 4.358396e-03 4.562182e-03 4.810820e-03 5.123401e-03 5.507320e-03 5.938117e-03 6.384260e-03 6.855084e-03 7.480982e-03 8.553842e-03 1.049510e-02 1.370192e-02 1.828744e-02 2.383549e-02 2.934269e-02 3.346507e-02 3.501961e-02 3.348778e-02 2.930249e-02 2.359039e-02 1.770091e-02 1.270956e-02 9.129475e-03 6.958195e-03 5.901887e-03 5.574760e-03 5.635194e-03 5.832885e-03 5.997112e-03 6.030119e-03 5.897483e-03 5.617070e-03 5.250641e-03 4.877601e-03 4.561062e-03 4.366085e-03 4.370945e-03 4.736941e-03 5.874980e-03 8.649478e-03 1.464797e-02 2.633829e-02 4.693398e-02 7.968320e-02 1.265095e-01 1.863149e-01 2.540655e-01 3.207705e-01 3.752216e-01 4.069321e-01 4.094674e-01 3.821606e-01 3.304745e-01 2.645055e-01 1.956509e-01 1.337233e-01 8.468816e-02 5.036386e-02 2.955163e-02 1.977431e-02 1.898251e-02 2.633791e-02 4.219574e-02 6.684437e-02 9.947478e-02 1.363865e-01 1.714517e-01 1.969601e-01 2.065718e-01 1.976632e-01 1.725921e-01 1.375684e-01 1.003759e-01 6.728772e-02 4.183495e-02 2.463263e-02 1.427077e-02 8.688774e-03 5.979014e-03 4.779334e-03 4.289441e-03 4.100398e-03 4.031218e-03 4.013864e-03 4.019823e-03 4.057951e-03 4.142382e-03 4.312224e-03 4.633079e-03 5.194932e-03 6.100224e-03 7.431744e-03 9.213234e-03 1.137402e-02 1.372004e-02 1.597362e-02 1.782688e-02 1.905374e-02 1.957130e-02 1.950496e-02 1.915331e-02 1.891590e-02 1.919944e-02 2.032133e-02 2.246172e-02 2.565242e-02 2.984752e-02 3.503128e-02 4.125952e-02 4.869759e-02 5.747077e-02 6.758238e-02 7.879080e-02 9.069902e-02 1.027250e-01 1.141377e-01 1.238843e-01 1.305314e-01 1.325483e-01 1.287058e-01 1.188407e-01 1.041626e-01 8.700237e-02 7.015005e-02 5.595274e-02 4.571515e-02 3.958230e-02 3.678453e-02 3.607929e-02 3.615066e-02 3.590091e-02 3.467539e-02 3.226097e-02 2.887522e-02 2.503285e-02 2.138847e-02 1.861254e-02 1.724911e-02 1.768049e-02 1.998378e-02 2.390906e-02 2.878425e-02 3.360765e-02 3.730875e-02 3.902145e-02 3.841691e-02 3.582547e-02 3.212288e-02 2.840012e-02 2.561222e-02 2.435997e-02 2.470647e-02 2.630757e-02 2.853356e-02 3.070195e-02 3.219758e-02 3.267759e-02 3.212097e-02 3.082717e-02 2.941252e-02 2.871166e-02 2.977068e-02 3.377167e-02 4.195695e-02 5.532252e-02 7.409535e-02 9.734378e-02 1.226529e-01 1.463114e-01 1.642026e-01 1.730314e-01 1.713320e-01 1.599338e-01 1.416159e-01 1.202334e-01 9.962690e-02 8.306252e-02 7.341960e-02 7.331178e-02 8.569011e-02 1.135614e-01 1.590888e-01 2.221483e-01 2.985548e-01 3.795661e-01 4.524364e-01 5.036193e-01 5.224049e-01 5.043792e-01 4.533879e-01 3.797524e-01 2.968952e-01 2.175739e-01 1.504587e-01 9.969346e-02 6.490139e-02 4.329932e-02 3.124771e-02 2.541057e-02 2.319980e-02 2.286106e-02 2.330948e-02 2.395719e-02 2.454002e-02 2.495417e-02 2.529545e-02 2.558835e-02 2.585772e-02 2.609202e-02 2.627543e-02 2.643461e-02 2.667176e-02 2.718051e-02 2.819707e-02 2.994000e-02 3.253670e-02 3.594461e-02 3.993446e-02 4.409743e-02 4.793213e-02 5.089401e-02 5.259263e-02 5.285144e-02 5.177643e-02 4.978703e-02 4.752156e-02 4.567391e-02 4.486709e-02 4.552347e-02 4.772178e-02 5.122000e-02 5.547331e-02 5.978348e-02 6.341784e-02 6.593439e-02 6.729967e-02 6.810408e-02 6.942760e-02 7.268526e-02 7.917289e-02 8.961169e-02 1.039017e-01 1.206399e-01 1.376136e-01 1.518376e-01 1.605403e-01 1.616819e-01 1.546813e-01 1.405893e-01 1.216969e-01 1.009905e-01 8.127730e-02 6.465425e-02 5.206104e-02 4.352345e-02 3.823964e-02 3.518105e-02 3.332806e-02 3.192975e-02 3.060427e-02 2.924663e-02 2.796030e-02 2.688979e-02 2.617977e-02 2.590788e-02 2.616005e-02 2.706659e-02 2.881704e-02 3.165399e-02 3.577215e-02 4.120575e-02 4.773564e-02 5.483662e-02 6.173664e-02 6.759207e-02 7.169078e-02 7.365336e-02 7.354236e-02 7.181264e-02 6.919399e-02 6.638124e-02 6.389790e-02 6.187728e-02 6.016655e-02 5.834452e-02 5.598335e-02 5.282044e-02 4.888667e-02 4.450810e-02 4.028787e-02 3.691243e-02 3.504997e-02 3.519104e-02 3.757174e-02 4.217433e-02 4.872731e-02 5.681236e-02 6.591267e-02 7.551733e-02 8.509132e-02 9.414738e-02 1.021014e-01 1.083225e-01 1.120714e-01 1.127479e-01 1.099524e-01 1.037588e-01 9.464200e-02 8.357520e-02 7.170697e-02 6.016618e-02 4.984557e-02 4.124414e-02 3.447869e-02 2.936793e-02 2.556080e-02 2.267983e-02 2.041528e-02 1.855797e-02 1.702391e-02 1.580367e-02 1.493524e-02 1.446071e-02 1.438136e-02 1.465606e-02 1.519177e-02 1.584486e-02 1.647348e-02 1.694230e-02 1.717385e-02 1.714957e-02 1.691851e-02 1.656561e-02 1.619948e-02 1.591185e-02 1.576833e-02 1.579342e-02 1.598044e-02 1.630767e-02 1.673546e-02 1.723646e-02 1.778651e-02 1.837203e-02 1.899387e-02 1.966690e-02 2.041438e-02 2.128229e-02 2.229602e-02 2.346531e-02 2.474594e-02 2.602886e-02 2.713960e-02 2.787738e-02 2.803463e-02 2.748668e-02 2.620200e-02 2.427744e-02 2.191066e-02 1.937531e-02 1.693765e-02 1.483904e-02 1.322640e-02 1.216480e-02 1.163207e-02 1.153789e-02 1.176135e-02 1.216093e-02 1.260303e-02 1.297874e-02 1.321280e-02 1.326443e-02 1.313337e-02 1.285253e-02 1.247947e-02 1.208244e-02 1.173646e-02 1.151177e-02 1.147295e-02 1.167644e-02 1.217412e-02 1.300712e-02 1.418936e-02 1.570152e-02 1.747016e-02 1.935302e-02 2.116355e-02 2.268694e-02 2.372479e-02 2.415426e-02 2.397197e-02 2.331547e-02 2.246396e-02 2.180897e-02 2.179543e-02 2.285250e-02 2.532879e-02 2.938145e-02 3.496643e-02 4.177348e-02 4.926376e-02 5.672959e-02 6.346796e-02 6.895782e-02 7.306649e-02 7.615609e-02 7.915883e-02 8.334784e-02 9.007324e-02 1.003989e-01 1.146966e-01 1.323682e-01 1.518191e-01 1.705944e-01 1.858908e-01 1.951346e-01 1.965313e-01 1.894157e-01 1.744512e-01 1.535635e-01 1.291467e-01 1.039008e-01 8.012421e-02 5.946847e-02 4.275401e-02 3.012132e-02 2.115120e-02 1.516239e-02 1.140363e-02 9.181906e-03 7.951132e-03 7.316338e-03 7.024806e-03 6.924632e-03 6.937045e-03 7.019752e-03 7.152771e-03 7.308322e-03 7.483257e-03 7.650055e-03 7.789223e-03 7.887501e-03 7.936987e-03 7.936966e-03 7.897544e-03 7.827752e-03 7.742688e-03 7.645997e-03 7.549228e-03 7.449546e-03 7.350181e-03 7.253472e-03 7.169116e-03 7.110717e-03 7.100488e-03 7.170824e-03 7.357769e-03 7.713263e-03 8.296316e-03 9.168421e-03 1.039471e-02 1.202700e-02 1.409160e-02 1.655095e-02 1.932580e-02 2.226252e-02 2.515127e-02 2.774196e-02 2.982053e-02 3.120787e-02 3.182085e-02 3.168395e-02 3.093632e-02 2.976177e-02 2.838502e-02 2.699806e-02 2.573437e-02 2.466565e-02 2.379038e-02 2.309294e-02 2.253656e-02 2.213344e-02 2.191141e-02 2.193080e-02 2.226022e-02 2.295076e-02 2.401831e-02 2.543108e-02 2.713013e-02 2.899683e-02 3.090072e-02 3.270210e-02 3.422377e-02 3.533348e-02 3.588297e-02 3.579820e-02 3.504018e-02 3.368576e-02 3.187316e-02 2.983561e-02 2.781200e-02 2.605872e-02 2.474979e-02 2.397637e-02 2.369850e-02 2.378910e-02 2.405296e-02 2.428054e-02 2.429544e-02 2.398805e-02 2.333982e-02 2.239940e-02 2.129003e-02 2.013189e-02 1.903758e-02 1.807337e-02 1.725424e-02 1.654554e-02 1.588683e-02 1.520789e-02 1.445812e-02 1.361477e-02 1.268646e-02 1.171403e-02 1.075128e-02 9.867298e-03 9.120326e-03 8.559053e-03 8.224797e-03 8.140334e-03 8.322854e-03 8.780587e-03 9.510577e-03 1.051407e-02 1.175575e-02 1.321077e-02 1.482129e-02 1.650493e-02 1.817596e-02 1.972445e-02 2.104048e-02 2.204270e-02 2.266665e-02 2.289460e-02 2.276683e-02 2.235007e-02 2.176942e-02 2.113776e-02 2.057229e-02 2.014488e-02 1.989148e-02 1.979784e-02 1.979959e-02 1.982846e-02 1.980617e-02 1.968751e-02 1.946103e-02 1.915325e-02 1.882016e-02 1.854899e-02 1.840736e-02 1.845344e-02 1.871310e-02 1.916653e-02 1.976413e-02 2.042144e-02 2.105677e-02 2.157217e-02 2.189272e-02 2.197280e-02 2.178584e-02 2.135547e-02 2.070843e-02 1.991270e-02 1.903460e-02 1.813846e-02 1.728612e-02 1.651215e-02 1.582950e-02 1.524880e-02 1.473733e-02 1.428127e-02 1.385932e-02 1.346599e-02 1.311217e-02 1.283869e-02 1.269261e-02 1.273590e-02 1.302862e-02 1.360990e-02 1.448828e-02 1.562609e-02 1.694663e-02 1.834169e-02 1.966976e-02 2.077719e-02 2.154348e-02 2.187934e-02 2.173536e-02 2.113933e-02 2.016685e-02 1.891472e-02 1.753422e-02 1.613943e-02 1.483365e-02 1.370374e-02 1.277200e-02 1.203784e-02 1.147870e-02 1.104632e-02 1.070007e-02 1.040463e-02 1.013045e-02 9.873055e-03 9.632124e-03 9.417536e-03 9.239881e-03 9.106154e-03 9.016939e-03 8.964244e-03 8.931677e-03 8.900838e-03 8.849952e-03 8.760523e-03 8.620666e-03 8.427585e-03 8.187218e-03 7.913290e-03 7.625180e-03 7.344373e-03 7.092280e-03 6.881645e-03 6.724785e-03 6.620137e-03 6.565281e-03 6.547197e-03 6.554680e-03 6.575434e-03 6.601376e-03 6.630637e-03 6.669487e-03 6.728174e-03 6.827667e-03 6.987234e-03 7.229462e-03 7.566292e-03 8.007630e-03 8.546069e-03 9.163808e-03 9.827143e-03 1.049190e-02 1.110472e-02 1.161377e-02 1.197144e-02 1.214337e-02 1.210704e-02 1.186403e-02 1.143457e-02 1.085097e-02 1.016036e-02 9.414387e-03 8.660860e-03 7.944651e-03 7.300031e-03 6.750567e-03 6.309360e-03 5.981309e-03 5.762068e-03 5.646042e-03 5.622219e-03 5.678641e-03 5.804596e-03 5.983342e-03 6.200620e-03 6.440104e-03 6.678409e-03 6.902577e-03 7.091450e-03 7.235428e-03 7.327859e-03 7.371781e-03 7.383205e-03 7.385809e-03 7.418771e-03 7.523896e-03 7.756941e-03 8.162498e-03 8.792428e-03 9.678032e-03 1.084192e-02 1.227168e-02 1.393970e-02 1.578786e-02 1.772801e-02 1.967484e-02 2.151087e-02 2.315350e-02 2.453383e-02 2.561659e-02 2.641289e-02 2.699687e-02 2.745322e-02 2.792419e-02 2.855058e-02 2.946891e-02 3.076649e-02 3.251699e-02 3.469289e-02 3.721017e-02 3.995812e-02 4.269356e-02 4.520463e-02 4.726627e-02 4.861445e-02 4.910979e-02 4.862794e-02 4.714241e-02 4.472723e-02 4.151409e-02 3.768824e-02 3.352246e-02 2.920671e-02 2.500489e-02 2.107774e-02 1.756566e-02 1.453913e-02 1.202975e-02 1.001425e-02 8.449657e-03 7.267842e-03 6.401535e-03 5.778626e-03 5.341348e-03 5.038213e-03 4.829572e-03 4.687346e-03 4.591625e-03 4.525951e-03 4.483619e-03 4.456520e-03 4.442581e-03 4.435889e-03 4.441428e-03 4.453128e-03 4.470726e-03 4.493431e-03 4.520103e-03 4.549440e-03 4.580218e-03 4.609406e-03 4.636860e-03 4.659402e-03 4.676036e-03 4.685756e-03 4.688160e-03 4.683999e-03 4.673130e-03 4.657242e-03 4.638087e-03 4.617707e-03 4.596735e-03 4.576646e-03 4.558088e-03 4.541770e-03 4.526601e-03 4.512543e-03 4.499027e-03 4.486210e-03 4.473084e-03 4.460733e-03 4.448874e-03 4.438976e-03 4.432088e-03 4.429981e-03 4.433528e-03 4.443267e-03 4.460566e-03 4.486348e-03 4.521398e-03 4.564556e-03 4.615604e-03 4.674732e-03 4.742331e-03 4.817717e-03 4.902722e-03 4.998521e-03 5.109433e-03 5.240555e-03 5.400914e-03 5.600282e-03 5.853413e-03 6.175758e-03 6.584065e-03 7.094061e-03 7.722185e-03 8.476419e-03 9.355064e-03 1.034923e-02 1.143761e-02 1.258326e-02 1.373807e-02 1.484281e-02 1.583487e-02 1.665457e-02 1.724261e-02 1.755574e-02 1.756894e-02 1.727687e-02 1.669343e-02 1.585628e-02 1.481752e-02 1.363896e-02 1.238457e-02 1.111968e-02 9.898675e-03 8.765354e-03 7.750327e-03 6.873960e-03 6.140552e-03 5.544467e-03 5.073721e-03 4.711937e-03 4.440487e-03 4.242321e-03 4.099425e-03 3.998644e-03 3.928069e-03 3.878845e-03 3.844343e-03 3.819978e-03 3.802529e-03 3.790138e-03 3.781583e-03 3.776145e-03 3.773354e-03 3.775311e-03 3.780205e-03 3.788966e-03 3.801438e-03 3.819084e-03 3.840882e-03 3.867322e-03 3.897800e-03 3.931805e-03 3.968275e-03 4.006043e-03 4.042503e-03 4.076912e-03 4.106191e-03 4.129495e-03 4.144303e-03 4.150156e-03 4.145930e-03 4.132293e-03 4.109557e-03 4.079162e-03 4.045140e-03 4.007906e-03 3.972944e-03 3.943574e-03 3.923884e-03 3.918971e-03 3.932636e-03 3.971823e-03 4.040316e-03 4.144771e-03 4.288826e-03 4.477219e-03 4.713387e-03 4.999699e-03 5.332903e-03 5.710025e-03 6.125718e-03 6.566920e-03 7.020252e-03 7.471234e-03 7.901403e-03 8.289948e-03 8.623211e-03 8.883991e-03 9.061578e-03 9.151259e-03 9.150172e-03 9.064385e-03 8.900356e-03 8.671990e-03 8.393831e-03 8.079176e-03 7.747136e-03 7.405866e-03 7.068776e-03 6.743348e-03 6.431710e-03 6.140440e-03 5.865868e-03 5.609611e-03 5.369010e-03 5.142997e-03 4.930626e-03 4.730508e-03 4.543691e-03 4.369598e-03 4.209755e-03 4.065313e-03 3.935320e-03 3.821216e-03 3.723645e-03 3.640637e-03 3.572583e-03 3.518386e-03 3.476446e-03 3.445263e-03 3.424926e-03 3.413575e-03 3.410548e-03 3.415400e-03 3.427916e-03 3.447817e-03 3.476182e-03 3.512233e-03 3.557118e-03 3.610699e-03 3.672816e-03 3.742791e-03 3.819312e-03 3.900697e-03 3.984230e-03 4.066668e-03 4.144405e-03 4.213573e-03 4.270384e-03 4.311418e-03 4.333952e-03 4.336196e-03 4.317494e-03 4.278523e-03 4.221139e-03 4.148645e-03 4.063857e-03 3.972452e-03 3.878114e-03 3.785359e-03 3.699592e-03 3.622379e-03 3.557566e-03 3.506809e-03 3.470395e-03 3.448561e-03 3.440279e-03 3.443781e-03 3.457044e-03 3.476941e-03 3.500942e-03 3.526430e-03 3.550139e-03 3.570751e-03 3.584737e-03 3.592085e-03 3.591152e-03 3.582153e-03 3.565900e-03 3.542938e-03 3.515439e-03 3.484779e-03 3.453316e-03 3.424024e-03 3.398302e-03 3.378689e-03 3.366645e-03 3.363942e-03 3.371371e-03 3.389801e-03 3.419763e-03 3.460207e-03 3.511789e-03 3.572306e-03 3.640759e-03 3.716059e-03 3.794353e-03 3.874090e-03 3.952873e-03 4.025699e-03 4.090618e-03 4.144108e-03 4.183767e-03 4.206443e-03 4.210484e-03 4.195486e-03 4.160838e-03 4.107232e-03 4.037195e-03 3.952673e-03 3.856635e-03 3.752988e-03 3.645580e-03 3.537643e-03 3.432039e-03 3.331902e-03 3.240053e-03 3.156826e-03 3.083803e-03 3.020696e-03 2.967956e-03 2.924518e-03 2.889241e-03 2.861468e-03 2.839747e-03 2.823210e-03 2.810101e-03 2.800439e-03 2.794127e-03 2.788868e-03 2.784994e-03 2.782817e-03 2.781931e-03 2.782898e-03 2.786371e-03 2.793841e-03 2.806261e-03 2.825693e-03 2.855030e-03 2.897606e-03 2.956724e-03 3.040154e-03 3.149394e-03 3.292200e-03 3.476961e-03 3.707743e-03 3.994849e-03 4.344899e-03 4.761893e-03 5.256053e-03 5.826500e-03 6.476651e-03 7.211932e-03 8.020773e-03 8.906870e-03 9.857650e-03 1.086905e-02 1.193244e-02 1.302816e-02 1.415770e-02 1.530056e-02 1.644913e-02 1.759208e-02 1.871842e-02 1.981841e-02 2.087549e-02 2.187647e-02 2.281442e-02 2.365120e-02 2.438372e-02 2.498219e-02 2.542563e-02 2.568771e-02 2.576006e-02 2.560848e-02 2.524720e-02 2.465257e-02 2.384803e-02 2.283412e-02 2.164812e-02 2.030795e-02 1.885441e-02 1.733117e-02 1.576190e-02 1.421228e-02 1.268731e-02 1.124669e-02 9.896244e-03 8.662309e-03 7.558329e-03 6.580715e-03 5.742671e-03 5.023410e-03 4.429121e-03 3.937080e-03 3.541758e-03 3.224624e-03 2.978214e-03 2.786244e-03 2.640411e-03 2.529198e-03 2.446293e-03 2.384210e-03 2.338196e-03 2.303784e-03 2.277875e-03 2.258323e-03 2.243302e-03 2.231755e-03 2.222295e-03 2.214493e-03 2.207316e-03 2.202737e-03 2.198725e-03 2.195677e-03 2.193202e-03 2.191497e-03 2.190480e-03 2.190530e-03 2.191428e-03 2.192914e-03 2.195464e-03 2.199154e-03 2.203571e-03 2.209324e-03 2.216033e-03 2.223871e-03 2.233076e-03 2.243403e-03 2.254989e-03 2.268474e-03 2.283149e-03 2.299963e-03 2.318688e-03 2.339682e-03 2.363352e-03 2.389600e-03 2.418834e-03 2.451350e-03 2.486878e-03 2.525500e-03 2.567137e-03 2.611092e-03 2.657046e-03 2.703850e-03 2.750718e-03 2.796584e-03 2.839948e-03 2.879167e-03 2.913008e-03 2.940428e-03 2.959210e-03 2.969251e-03 2.969386e-03 2.958973e-03 2.938322e-03 2.907422e-03 2.867481e-03 2.818633e-03 2.763286e-03 2.702049e-03 2.636965e-03 2.569883e-03 2.502242e-03 2.435752e-03 2.370950e-03 2.310512e-03 2.253385e-03 2.201702e-03 2.154844e-03 2.113553e-03 2.077086e-03 2.045725e-03 2.018263e-03 1.995506e-03 1.975669e-03 1.958733e-03 1.944168e-03 1.932036e-03 1.920769e-03 1.911121e-03 1.902393e-03 1.894107e-03 1.886368e-03 1.879299e-03 1.872626e-03 1.866063e-03 1.859849e-03 1.854269e-03 1.849128e-03 1.844289e-03 1.840046e-03 1.837048e-03 1.834246e-03 1.833095e-03 1.832731e-03 1.833611e-03 1.836266e-03 1.840666e-03 1.846567e-03 1.854947e-03 1.865400e-03 1.877946e-03 1.893073e-03 1.911111e-03 1.931048e-03 1.953250e-03 1.977745e-03 2.003683e-03 2.030801e-03 2.059063e-03 2.087239e-03 2.115119e-03 2.141611e-03 2.166799e-03 2.189723e-03 2.209858e-03 2.226717e-03 2.240553e-03 2.251138e-03 2.258336e-03 2.263553e-03 2.266073e-03 2.267923e-03 2.269064e-03 2.271691e-03 2.275663e-03 2.283090e-03 2.294252e-03 2.310107e-03 2.331312e-03 2.358002e-03 2.390718e-03 2.427560e-03 2.470156e-03 2.514558e-03 2.562032e-03 2.608323e-03 2.653901e-03 2.696229e-03 2.732287e-03 2.762195e-03 2.782849e-03 2.794198e-03 2.794637e-03 2.783786e-03 2.762296e-03 2.730098e-03 2.687291e-03 2.636585e-03 2.578384e-03 2.514087e-03 2.446474e-03 2.376940e-03 2.306352e-03 2.237652e-03 2.171373e-03 2.108585e-03 2.051177e-03 1.997998e-03 1.950995e-03 1.909602e-03 1.872990e-03 1.841670e-03 1.814709e-03 1.792104e-03 1.772202e-03 1.755408e-03 1.740686e-03 1.727840e-03 1.716106e-03 1.705772e-03 1.696131e-03 1.687420e-03 1.679601e-03 1.672663e-03 1.667111e-03 1.662565e-03 1.659422e-03 1.658267e-03 1.658438e-03 1.660593e-03 1.664660e-03 1.670281e-03 1.677588e-03 1.686275e-03 1.696237e-03 1.707097e-03 1.718026e-03 1.728852e-03 1.739725e-03 1.749031e-03 1.757011e-03 1.763482e-03 1.767317e-03 1.768699e-03 1.767365e-03 1.763267e-03 1.756019e-03 1.746148e-03 1.733295e-03 1.717982e-03 1.700691e-03 1.681538e-03 1.660829e-03 1.639729e-03 1.617774e-03 1.596196e-03 1.574864e-03 1.554228e-03 1.535226e-03 1.517074e-03 1.500920e-03 1.486077e-03 1.473287e-03 1.461950e-03 1.452038e-03 1.443501e-03 1.435914e-03 1.429845e-03 1.423894e-03 1.418934e-03 1.414431e-03 1.410041e-03 1.406002e-03 1.402053e-03 1.398470e-03 1.395367e-03 1.392895e-03 1.391120e-03 1.390343e-03 1.391348e-03 1.394177e-03 1.399671e-03 1.408418e-03 1.420838e-03 1.437826e-03 1.460196e-03 1.488398e-03 1.523512e-03 1.566060e-03 1.617328e-03 1.677236e-03 1.746814e-03 1.826849e-03 1.917049e-03 2.018214e-03 2.129886e-03 2.252390e-03 2.385132e-03 2.527592e-03 2.678819e-03 2.837131e-03 3.001981e-03 3.171357e-03 3.343470e-03 3.515975e-03 3.687850e-03 3.855242e-03 4.016959e-03 4.169674e-03 4.312363e-03 4.441444e-03 4.554633e-03 4.650847e-03 4.727764e-03 4.783681e-03 4.817398e-03 4.828287e-03 4.815783e-03 4.779260e-03 4.720572e-03 4.638219e-03 4.535539e-03 4.412400e-03 4.272569e-03 4.116280e-03 3.947514e-03 3.768730e-03 3.582007e-03 3.391054e-03 3.198229e-03 3.006306e-03 2.816737e-03 2.633082e-03 2.456795e-03 2.290037e-03 2.132901e-03 1.987481e-03 1.853456e-03 1.731361e-03 1.621610e-03 1.523377e-03 1.436772e-03 1.360936e-03 1.294741e-03 1.237915e-03 1.189030e-03 1.147576e-03 1.112573e-03 1.083188e-03 1.058689e-03 1.038004e-03 1.020780e-03 1.006420e-03 9.944722e-04 9.844701e-04 9.757478e-04 9.684005e-04 9.618528e-04 9.560822e-04 9.504914e-04 9.455624e-04 9.407638e-04 9.358409e-04 9.309943e-04 9.258915e-04 9.205480e-04 9.146478e-04 9.084981e-04 9.017488e-04 8.943778e-04 8.861325e-04 8.770946e-04 8.669812e-04 8.557799e-04 8.434984e-04 8.298810e-04 8.150231e-04 7.986739e-04 7.808888e-04 7.617136e-04 7.410483e-04 7.188182e-04 6.951288e-04 6.701424e-04 6.437958e-04 6.163239e-04 5.877310e-04 5.583017e-04 5.281093e-04 4.974369e-04 4.664016e-04 ''') ImportString(u'flux_model_0_7(numeric)',''' 2.960127e-03 3.898180e-03 4.538399e-03 5.117529e-03 6.223361e-03 8.443569e-03 1.161904e-02 1.433340e-02 1.476923e-02 1.255534e-02 9.201769e-03 6.506684e-03 5.090013e-03 4.579968e-03 4.447838e-03 4.413846e-03 4.400058e-03 4.396189e-03 4.397586e-03 4.396905e-03 4.386854e-03 4.364470e-03 4.339086e-03 4.328808e-03 4.354148e-03 4.425474e-03 4.537631e-03 4.674295e-03 4.809780e-03 4.914867e-03 4.960325e-03 4.947345e-03 4.927428e-03 4.984884e-03 5.179337e-03 5.526901e-03 6.030719e-03 6.665152e-03 7.288787e-03 7.645638e-03 7.554182e-03 7.083422e-03 6.480433e-03 5.951771e-03 5.550399e-03 5.242111e-03 5.010124e-03 4.884662e-03 4.885051e-03 4.979834e-03 5.093996e-03 5.157995e-03 5.158198e-03 5.148880e-03 5.203719e-03 5.357216e-03 5.582650e-03 5.798474e-03 5.913054e-03 5.885488e-03 5.750393e-03 5.580127e-03 5.430615e-03 5.338663e-03 5.329562e-03 5.404790e-03 5.513447e-03 5.567058e-03 5.513664e-03 5.390704e-03 5.283020e-03 5.247741e-03 5.288353e-03 5.402729e-03 5.656997e-03 6.244950e-03 7.421661e-03 9.201732e-03 1.104040e-02 1.202964e-02 1.167755e-02 1.036167e-02 8.852511e-03 7.635790e-03 6.806801e-03 6.306770e-03 6.053404e-03 5.942179e-03 5.877909e-03 5.824433e-03 5.788146e-03 5.775002e-03 5.777035e-03 5.786637e-03 5.815971e-03 5.885222e-03 6.016816e-03 6.238043e-03 6.565017e-03 6.965520e-03 7.310446e-03 7.430524e-03 7.251556e-03 6.868551e-03 6.461494e-03 6.152929e-03 5.969613e-03 5.881832e-03 5.850369e-03 5.849684e-03 5.875109e-03 5.944403e-03 6.101490e-03 6.405338e-03 6.878087e-03 7.444120e-03 7.961059e-03 8.320566e-03 8.503940e-03 8.490849e-03 8.216070e-03 7.671875e-03 7.008395e-03 6.443795e-03 6.103557e-03 5.970719e-03 5.967635e-03 6.025407e-03 6.101462e-03 6.183536e-03 6.287287e-03 6.462595e-03 6.786587e-03 7.316158e-03 8.010244e-03 8.661106e-03 8.984734e-03 8.852773e-03 8.418823e-03 7.952355e-03 7.591396e-03 7.304902e-03 7.023414e-03 6.749637e-03 6.524888e-03 6.374770e-03 6.294181e-03 6.264651e-03 6.267293e-03 6.287976e-03 6.312986e-03 6.333719e-03 6.352297e-03 6.384126e-03 6.455818e-03 6.594409e-03 6.803618e-03 7.046162e-03 7.272353e-03 7.471230e-03 7.661150e-03 7.812639e-03 7.832351e-03 7.654584e-03 7.334662e-03 7.007094e-03 6.772770e-03 6.648619e-03 6.602378e-03 6.596916e-03 6.611587e-03 6.640989e-03 6.692581e-03 6.774412e-03 6.887186e-03 7.008251e-03 7.101106e-03 7.143964e-03 7.143591e-03 7.133951e-03 7.145017e-03 7.181084e-03 7.225574e-03 7.266162e-03 7.340247e-03 7.545477e-03 7.976945e-03 8.607261e-03 9.214542e-03 9.487975e-03 9.272526e-03 8.718247e-03 8.165139e-03 7.884301e-03 7.911400e-03 8.083208e-03 8.177343e-03 8.077710e-03 7.823295e-03 7.545377e-03 7.347345e-03 7.254073e-03 7.236221e-03 7.260816e-03 7.304771e-03 7.359999e-03 7.426362e-03 7.519101e-03 7.656467e-03 7.844352e-03 8.053956e-03 8.251062e-03 8.443192e-03 8.709261e-03 9.164157e-03 9.897548e-03 1.091347e-02 1.204785e-02 1.294289e-02 1.322353e-02 1.286212e-02 1.235710e-02 1.253288e-02 1.418151e-02 1.780613e-02 2.328819e-02 2.938928e-02 3.374957e-02 3.410266e-02 3.001171e-02 2.332717e-02 1.675964e-02 1.209145e-02 9.577644e-03 8.569764e-03 8.330896e-03 8.398942e-03 8.562882e-03 8.716597e-03 8.796167e-03 8.774783e-03 8.685703e-03 8.583850e-03 8.518599e-03 8.539189e-03 8.715560e-03 9.111929e-03 9.695668e-03 1.028540e-02 1.065277e-02 1.067826e-02 1.043651e-02 1.008176e-02 9.717317e-03 9.362831e-03 9.018431e-03 8.714753e-03 8.483836e-03 8.336628e-03 8.257042e-03 8.220593e-03 8.214160e-03 8.220356e-03 8.238998e-03 8.261262e-03 8.286742e-03 8.314819e-03 8.342952e-03 8.374476e-03 8.410899e-03 8.453525e-03 8.503521e-03 8.555354e-03 8.615251e-03 8.713386e-03 8.922225e-03 9.349107e-03 1.008609e-02 1.112222e-02 1.229568e-02 1.329855e-02 1.378705e-02 1.355963e-02 1.268444e-02 1.148297e-02 1.033928e-02 9.512042e-03 9.044262e-03 8.852127e-03 8.807704e-03 8.824340e-03 8.854005e-03 8.878395e-03 8.897493e-03 8.908582e-03 8.914967e-03 8.919770e-03 8.918653e-03 8.909144e-03 8.873051e-03 8.781673e-03 8.614950e-03 8.383610e-03 8.149443e-03 7.997592e-03 7.959776e-03 7.960403e-03 7.854051e-03 7.540452e-03 7.053298e-03 6.531589e-03 6.109568e-03 5.845498e-03 5.715793e-03 5.671904e-03 5.667936e-03 5.681901e-03 5.703205e-03 5.729217e-03 5.758529e-03 5.790872e-03 5.818757e-03 5.835803e-03 5.841740e-03 5.838498e-03 5.838447e-03 5.848585e-03 5.877578e-03 5.923159e-03 5.982175e-03 6.039282e-03 6.081440e-03 6.094282e-03 6.080564e-03 6.048785e-03 6.017065e-03 5.993270e-03 5.983217e-03 5.983445e-03 5.994094e-03 6.019390e-03 6.077086e-03 6.198476e-03 6.443219e-03 6.913088e-03 7.734777e-03 8.999220e-03 1.063516e-02 1.231249e-02 1.349413e-02 1.371116e-02 1.284685e-02 1.125386e-02 9.506701e-03 8.073179e-03 7.138472e-03 6.644627e-03 6.445741e-03 6.428681e-03 6.546698e-03 6.797493e-03 7.169737e-03 7.605185e-03 7.993665e-03 8.231495e-03 8.285820e-03 8.238515e-03 8.275026e-03 8.670697e-03 9.754004e-03 1.179051e-02 1.476615e-02 1.812732e-02 2.083617e-02 2.181327e-02 2.062007e-02 1.775078e-02 1.433463e-02 1.144887e-02 9.615536e-03 8.765321e-03 8.496395e-03 8.389816e-03 8.198531e-03 7.873841e-03 7.501112e-03 7.193843e-03 7.036048e-03 7.074254e-03 7.349217e-03 7.880680e-03 8.641529e-03 9.484537e-03 1.016947e-02 1.044655e-02 1.020689e-02 9.554788e-03 8.734426e-03 7.994536e-03 7.469190e-03 7.174354e-03 7.060587e-03 7.086135e-03 7.247129e-03 7.577963e-03 8.117152e-03 8.840683e-03 9.621995e-03 1.023873e-02 1.047593e-02 1.024391e-02 9.640235e-03 8.889017e-03 8.217474e-03 7.757142e-03 7.524492e-03 7.477149e-03 7.558837e-03 7.715782e-03 7.904020e-03 8.072513e-03 8.178604e-03 8.200102e-03 8.147780e-03 8.054144e-03 7.956036e-03 7.873085e-03 7.810992e-03 7.768456e-03 7.748119e-03 7.750516e-03 7.771073e-03 7.795711e-03 7.806086e-03 7.793751e-03 7.759152e-03 7.719363e-03 7.690059e-03 7.690627e-03 7.738977e-03 7.867218e-03 8.098211e-03 8.430336e-03 8.802360e-03 9.104138e-03 9.224736e-03 9.115278e-03 8.824034e-03 8.469356e-03 8.184228e-03 8.045198e-03 8.063433e-03 8.180297e-03 8.312327e-03 8.377594e-03 8.341962e-03 8.217651e-03 8.061583e-03 7.932048e-03 7.881698e-03 7.943803e-03 8.160812e-03 8.580476e-03 9.244765e-03 1.014443e-02 1.116321e-02 1.208268e-02 1.264495e-02 1.267334e-02 1.217734e-02 1.136190e-02 1.055139e-02 1.003285e-02 9.956781e-03 1.029413e-02 1.087588e-02 1.147101e-02 1.187052e-02 1.194258e-02 1.165980e-02 1.109132e-02 1.035357e-02 9.596229e-03 8.941106e-03 8.469497e-03 8.209771e-03 8.148061e-03 8.239838e-03 8.425917e-03 8.636608e-03 8.805538e-03 8.882228e-03 8.852070e-03 8.729234e-03 8.555645e-03 8.371741e-03 8.208545e-03 8.082299e-03 7.993716e-03 7.935530e-03 7.921733e-03 7.965598e-03 8.220197e-03 9.073138e-03 1.149528e-02 1.756746e-02 3.101540e-02 5.726705e-02 1.019838e-01 1.678098e-01 2.497843e-01 3.333407e-01 3.972229e-01 4.214890e-01 3.980621e-01 3.345206e-01 2.505518e-01 1.677327e-01 1.012805e-01 5.634250e-02 3.029798e-02 1.735596e-02 1.188816e-02 1.010739e-02 9.932546e-03 1.042359e-02 1.117907e-02 1.199363e-02 1.276577e-02 1.340851e-02 1.388496e-02 1.415901e-02 1.418437e-02 1.389882e-02 1.329144e-02 1.243257e-02 1.146172e-02 1.054420e-02 9.790503e-03 9.236124e-03 8.851115e-03 8.584013e-03 8.392323e-03 8.257817e-03 8.173894e-03 8.148514e-03 8.189110e-03 8.306450e-03 8.500712e-03 8.765319e-03 9.074441e-03 9.389206e-03 9.669512e-03 9.892940e-03 1.005243e-02 1.016487e-02 1.024334e-02 1.028762e-02 1.027809e-02 1.018810e-02 1.000528e-02 9.743224e-03 9.439408e-03 9.141863e-03 8.883017e-03 8.685010e-03 8.549401e-03 8.471791e-03 8.447894e-03 8.469976e-03 8.540663e-03 8.660073e-03 8.836240e-03 9.065991e-03 9.334003e-03 9.612817e-03 9.861641e-03 1.005731e-02 1.021012e-02 1.035765e-02 1.056609e-02 1.089637e-02 1.143287e-02 1.233342e-02 1.394713e-02 1.687716e-02 2.193286e-02 2.984014e-02 4.072876e-02 5.360405e-02 6.621631e-02 7.558471e-02 7.909726e-02 7.562791e-02 6.617672e-02 5.329244e-02 4.001451e-02 2.875574e-02 2.065354e-02 1.567703e-02 1.313946e-02 1.215824e-02 1.197477e-02 1.206765e-02 1.212130e-02 1.198997e-02 1.164727e-02 1.113854e-02 1.055708e-02 9.997049e-03 9.524122e-03 9.197932e-03 9.084083e-03 9.321747e-03 1.027066e-02 1.268970e-02 1.797892e-02 2.832676e-02 4.660252e-02 7.574301e-02 1.175657e-01 1.712523e-01 2.324975e-01 2.934030e-01 3.439203e-01 3.744144e-01 3.786828e-01 3.556364e-01 3.098219e-01 2.502314e-01 1.873092e-01 1.302553e-01 8.481877e-02 5.290705e-02 3.356128e-02 2.454664e-02 2.395526e-02 3.096322e-02 4.584013e-02 6.880349e-02 9.906499e-02 1.331854e-01 1.655032e-01 1.889249e-01 1.976456e-01 1.893034e-01 1.661206e-01 1.338478e-01 9.964475e-02 6.925201e-02 4.586915e-02 3.001861e-02 2.037991e-02 1.506296e-02 1.234541e-02 1.101848e-02 1.039086e-02 1.011298e-02 1.002831e-02 1.006738e-02 1.018961e-02 1.040265e-02 1.073894e-02 1.128613e-02 1.218518e-02 1.361638e-02 1.577201e-02 1.880303e-02 2.277419e-02 2.762404e-02 3.310011e-02 3.878719e-02 4.409776e-02 4.841720e-02 5.119253e-02 5.220903e-02 5.172019e-02 5.050914e-02 4.979609e-02 5.095143e-02 5.519238e-02 6.330054e-02 7.556026e-02 9.188043e-02 1.118142e-01 1.346575e-01 1.592054e-01 1.838305e-01 2.065712e-01 2.257908e-01 2.404048e-01 2.501293e-01 2.548637e-01 2.541668e-01 2.472168e-01 2.330752e-01 2.118809e-01 1.854399e-01 1.570281e-01 1.305438e-01 1.092020e-01 9.464280e-02 8.675305e-02 8.403017e-02 8.424836e-02 8.507838e-02 8.456123e-02 8.156984e-02 7.581957e-02 6.789507e-02 5.899438e-02 5.061303e-02 4.426210e-02 4.117208e-02 4.219978e-02 4.749728e-02 5.646183e-02 6.751933e-02 7.833651e-02 8.643230e-02 8.980897e-02 8.771384e-02 8.090673e-02 7.136626e-02 6.150588e-02 5.336856e-02 4.815053e-02 4.590474e-02 4.591396e-02 4.710210e-02 4.850046e-02 4.945895e-02 4.978151e-02 4.965020e-02 4.943003e-02 4.958477e-02 5.057728e-02 5.295086e-02 5.740999e-02 6.491864e-02 7.650673e-02 9.280539e-02 1.136113e-01 1.374047e-01 1.613400e-01 1.818870e-01 1.958475e-01 2.012718e-01 1.979657e-01 1.874851e-01 1.726043e-01 1.565975e-01 1.428584e-01 1.349196e-01 1.362181e-01 1.502829e-01 1.801733e-01 2.275842e-01 2.917465e-01 3.679773e-01 4.476063e-01 5.184686e-01 5.679940e-01 5.863932e-01 5.697607e-01 5.218078e-01 4.520990e-01 3.729249e-01 2.959581e-01 2.290827e-01 1.762598e-01 1.374384e-01 1.105785e-01 9.294958e-02 8.208787e-02 7.610568e-02 7.374725e-02 7.418338e-02 7.688164e-02 8.136597e-02 8.709437e-02 9.351331e-02 9.988935e-02 1.054833e-01 1.096629e-01 1.120196e-01 1.124609e-01 1.112301e-01 1.089661e-01 1.065675e-01 1.050636e-01 1.053783e-01 1.080589e-01 1.131090e-01 1.199156e-01 1.274435e-01 1.343687e-01 1.396195e-01 1.425686e-01 1.432068e-01 1.422292e-01 1.407882e-01 1.401087e-01 1.412751e-01 1.449906e-01 1.513014e-01 1.597328e-01 1.692872e-01 1.787416e-01 1.868190e-01 1.928353e-01 1.969443e-01 2.005860e-01 2.061909e-01 2.168368e-01 2.351935e-01 2.625233e-01 2.981558e-01 3.384342e-01 3.779880e-01 4.098327e-01 4.276902e-01 4.271323e-01 4.071823e-01 3.707059e-01 3.233549e-01 2.723569e-01 2.244421e-01 1.846067e-01 1.550906e-01 1.359179e-01 1.251092e-01 1.200927e-01 1.182635e-01 1.175941e-01 1.168988e-01 1.156118e-01 1.136303e-01 1.109796e-01 1.077289e-01 1.039257e-01 9.980093e-02 9.595789e-02 9.337254e-02 9.333248e-02 9.712571e-02 1.056385e-01 1.190841e-01 1.367336e-01 1.569803e-01 1.776668e-01 1.963953e-01 2.110761e-01 2.202471e-01 2.233006e-01 2.205243e-01 2.128153e-01 2.016585e-01 1.885353e-01 1.749376e-01 1.619066e-01 1.501627e-01 1.400890e-01 1.319053e-01 1.259214e-01 1.228726e-01 1.239032e-01 1.305530e-01 1.443705e-01 1.663614e-01 1.964972e-01 2.331833e-01 2.733651e-01 3.127477e-01 3.468107e-01 3.714429e-01 3.842555e-01 3.845891e-01 3.737481e-01 3.542330e-01 3.291938e-01 3.014634e-01 2.734221e-01 2.464585e-01 2.215368e-01 1.990747e-01 1.793052e-01 1.623819e-01 1.482981e-01 1.369209e-01 1.279397e-01 1.208448e-01 1.150556e-01 1.100659e-01 1.054762e-01 1.011948e-01 9.732743e-02 9.418336e-02 9.215418e-02 9.150715e-02 9.240822e-02 9.473208e-02 9.811165e-02 1.021007e-01 1.061455e-01 1.098765e-01 1.130830e-01 1.158335e-01 1.182925e-01 1.208093e-01 1.236048e-01 1.269020e-01 1.307782e-01 1.352202e-01 1.402484e-01 1.457827e-01 1.518479e-01 1.584845e-01 1.658068e-01 1.740890e-01 1.838063e-01 1.955232e-01 2.100108e-01 2.276698e-01 2.484301e-01 2.713525e-01 2.944449e-01 3.147860e-01 3.291861e-01 3.345089e-01 3.289011e-01 3.119166e-01 2.849467e-01 2.507058e-01 2.129171e-01 1.751275e-01 1.405208e-01 1.110897e-01 8.784912e-02 7.087205e-02 5.958149e-02 5.311729e-02 5.050030e-02 5.079257e-02 5.316955e-02 5.690591e-02 6.136206e-02 6.597739e-02 7.027803e-02 7.390693e-02 7.659137e-02 7.824707e-02 7.894589e-02 7.892942e-02 7.858036e-02 7.835929e-02 7.874124e-02 8.006661e-02 8.251293e-02 8.603037e-02 9.032673e-02 9.491573e-02 9.922995e-02 1.026992e-01 1.049265e-01 1.058098e-01 1.056169e-01 1.050260e-01 1.050749e-01 1.069597e-01 1.118166e-01 1.204290e-01 1.329270e-01 1.486479e-01 1.660892e-01 1.831774e-01 1.975922e-01 2.073913e-01 2.114555e-01 2.099018e-01 2.041217e-01 1.966978e-01 1.906923e-01 1.890707e-01 1.940735e-01 2.065068e-01 2.254821e-01 2.484998e-01 2.717602e-01 2.909664e-01 3.022251e-01 3.028333e-01 2.917553e-01 2.698899e-01 2.399825e-01 2.054327e-01 1.700943e-01 1.372408e-01 1.092233e-01 8.714168e-02 7.112133e-02 6.041747e-02 5.386949e-02 5.020262e-02 4.822029e-02 4.701348e-02 4.595758e-02 4.476451e-02 4.337365e-02 4.192777e-02 4.063855e-02 3.974693e-02 3.942517e-02 3.981235e-02 4.094990e-02 4.279568e-02 4.527697e-02 4.824365e-02 5.149234e-02 5.478309e-02 5.778987e-02 6.020859e-02 6.166871e-02 6.196611e-02 6.092510e-02 5.858558e-02 5.511833e-02 5.086701e-02 4.621620e-02 4.161150e-02 3.743857e-02 3.400281e-02 3.153643e-02 3.017650e-02 2.999426e-02 3.101825e-02 3.324782e-02 3.665177e-02 4.108953e-02 4.638637e-02 5.224596e-02 5.828870e-02 6.404173e-02 6.910512e-02 7.312435e-02 7.588940e-02 7.738502e-02 7.778990e-02 7.736056e-02 7.643516e-02 7.527815e-02 7.408263e-02 7.292838e-02 7.177950e-02 7.062083e-02 6.940363e-02 6.823558e-02 6.723811e-02 6.660286e-02 6.650222e-02 6.702153e-02 6.811781e-02 6.961613e-02 7.127337e-02 7.274231e-02 7.373298e-02 7.404064e-02 7.348102e-02 7.206271e-02 6.979762e-02 6.682780e-02 6.328631e-02 5.940868e-02 5.542029e-02 5.160024e-02 4.816841e-02 4.535224e-02 4.326293e-02 4.193963e-02 4.127519e-02 4.109443e-02 4.116395e-02 4.125036e-02 4.116836e-02 4.081281e-02 4.018335e-02 3.934353e-02 3.844560e-02 3.761313e-02 3.695516e-02 3.651576e-02 3.627198e-02 3.613722e-02 3.600078e-02 3.573894e-02 3.526843e-02 3.455390e-02 3.361388e-02 3.252738e-02 3.139973e-02 3.038570e-02 2.963231e-02 2.928328e-02 2.948091e-02 3.032427e-02 3.188384e-02 3.416584e-02 3.710841e-02 4.061935e-02 4.445050e-02 4.838966e-02 5.214581e-02 5.543761e-02 5.804991e-02 5.982273e-02 6.070132e-02 6.076403e-02 6.016629e-02 5.915629e-02 5.804235e-02 5.710211e-02 5.664089e-02 5.682870e-02 5.776628e-02 5.941824e-02 6.162021e-02 6.412568e-02 6.658619e-02 6.868313e-02 7.010636e-02 7.067198e-02 7.032243e-02 6.911733e-02 6.723961e-02 6.498842e-02 6.261174e-02 6.039079e-02 5.851097e-02 5.705302e-02 5.601151e-02 5.530527e-02 5.481886e-02 5.439768e-02 5.391862e-02 5.329728e-02 5.246486e-02 5.144593e-02 5.022991e-02 4.889421e-02 4.749600e-02 4.609647e-02 4.476835e-02 4.354208e-02 4.242963e-02 4.145037e-02 4.055157e-02 3.971256e-02 3.890549e-02 3.812588e-02 3.739881e-02 3.680819e-02 3.645562e-02 3.646203e-02 3.696283e-02 3.803680e-02 3.971346e-02 4.193015e-02 4.454412e-02 4.736454e-02 5.012731e-02 5.255828e-02 5.444351e-02 5.563060e-02 5.602951e-02 5.569450e-02 5.475479e-02 5.336096e-02 5.177049e-02 5.014921e-02 4.866247e-02 4.744599e-02 4.653377e-02 4.594832e-02 4.567862e-02 4.569458e-02 4.599379e-02 4.657990e-02 4.744823e-02 4.862688e-02 5.009979e-02 5.182566e-02 5.371227e-02 5.561664e-02 5.735354e-02 5.871481e-02 5.948927e-02 5.952343e-02 5.869602e-02 5.698837e-02 5.447241e-02 5.131383e-02 4.773987e-02 4.401726e-02 4.041862e-02 3.718454e-02 3.450470e-02 3.247772e-02 3.115165e-02 3.046328e-02 3.031845e-02 3.055913e-02 3.102795e-02 3.157305e-02 3.207159e-02 3.244737e-02 3.268160e-02 3.279494e-02 3.287294e-02 3.300608e-02 3.331000e-02 3.386491e-02 3.473795e-02 3.592481e-02 3.737498e-02 3.897784e-02 4.058292e-02 4.200234e-02 4.306228e-02 4.361171e-02 4.355433e-02 4.283898e-02 4.150205e-02 3.964364e-02 3.740039e-02 3.495293e-02 3.248767e-02 3.016669e-02 2.813500e-02 2.649316e-02 2.530023e-02 2.457601e-02 2.431395e-02 2.447162e-02 2.501110e-02 2.587348e-02 2.699473e-02 2.832873e-02 2.978788e-02 3.129971e-02 3.279286e-02 3.413889e-02 3.527329e-02 3.608095e-02 3.650489e-02 3.650095e-02 3.606167e-02 3.524594e-02 3.413271e-02 3.285788e-02 3.157253e-02 3.044845e-02 2.962556e-02 2.925727e-02 2.943243e-02 3.021303e-02 3.158290e-02 3.350799e-02 3.587971e-02 3.855207e-02 4.137921e-02 4.416614e-02 4.677434e-02 4.909067e-02 5.104851e-02 5.266101e-02 5.403892e-02 5.530748e-02 5.668296e-02 5.838356e-02 6.061503e-02 6.350230e-02 6.715403e-02 7.150391e-02 7.639694e-02 8.163513e-02 8.679625e-02 9.151164e-02 9.540792e-02 9.802556e-02 9.914309e-02 9.855767e-02 9.623404e-02 9.231404e-02 8.703026e-02 8.070613e-02 7.380795e-02 6.664458e-02 5.965659e-02 5.310174e-02 4.718643e-02 4.201253e-02 3.762017e-02 3.395115e-02 3.094013e-02 2.846894e-02 2.645507e-02 2.478925e-02 2.340713e-02 2.225163e-02 2.127120e-02 2.044374e-02 1.974852e-02 1.915416e-02 1.866037e-02 1.824254e-02 1.789810e-02 1.760971e-02 1.738637e-02 1.721545e-02 1.709527e-02 1.702742e-02 1.700741e-02 1.702975e-02 1.708912e-02 1.716951e-02 1.726313e-02 1.735208e-02 1.742391e-02 1.746621e-02 1.747148e-02 1.743848e-02 1.736454e-02 1.725686e-02 1.712511e-02 1.698140e-02 1.683477e-02 1.669584e-02 1.657170e-02 1.646731e-02 1.637947e-02 1.630653e-02 1.624411e-02 1.618933e-02 1.613590e-02 1.608600e-02 1.603887e-02 1.600243e-02 1.598462e-02 1.599718e-02 1.604947e-02 1.614808e-02 1.630196e-02 1.651616e-02 1.679230e-02 1.711973e-02 1.749009e-02 1.789357e-02 1.831934e-02 1.875161e-02 1.918723e-02 1.962367e-02 2.007545e-02 2.056768e-02 2.114892e-02 2.187826e-02 2.284282e-02 2.413810e-02 2.586759e-02 2.812824e-02 3.101975e-02 3.459636e-02 3.885938e-02 4.376695e-02 4.921389e-02 5.501051e-02 6.090492e-02 6.658990e-02 7.174029e-02 7.604320e-02 7.919050e-02 8.095347e-02 8.120037e-02 7.989922e-02 7.711794e-02 7.304280e-02 6.793827e-02 6.211698e-02 5.590190e-02 4.962214e-02 4.355265e-02 3.791244e-02 3.285453e-02 2.848062e-02 2.480849e-02 2.180897e-02 1.942129e-02 1.756335e-02 1.614374e-02 1.507852e-02 1.428290e-02 1.369345e-02 1.325582e-02 1.292942e-02 1.268481e-02 1.250101e-02 1.236320e-02 1.226215e-02 1.219057e-02 1.214238e-02 1.211281e-02 1.210717e-02 1.211438e-02 1.213393e-02 1.216283e-02 1.220249e-02 1.224840e-02 1.229963e-02 1.235426e-02 1.240973e-02 1.246393e-02 1.251377e-02 1.255355e-02 1.258344e-02 1.259675e-02 1.259487e-02 1.257320e-02 1.253339e-02 1.247558e-02 1.240342e-02 1.231937e-02 1.222744e-02 1.213866e-02 1.205271e-02 1.198126e-02 1.193189e-02 1.191045e-02 1.192796e-02 1.198997e-02 1.211116e-02 1.229794e-02 1.256329e-02 1.291397e-02 1.335930e-02 1.390528e-02 1.455658e-02 1.530457e-02 1.614228e-02 1.705658e-02 1.801984e-02 1.900309e-02 1.997506e-02 2.089825e-02 2.172907e-02 2.244101e-02 2.299971e-02 2.338571e-02 2.359213e-02 2.361527e-02 2.347034e-02 2.317205e-02 2.274990e-02 2.223397e-02 2.165067e-02 2.103571e-02 2.040232e-02 1.977492e-02 1.916324e-02 1.856771e-02 1.799791e-02 1.744308e-02 1.690552e-02 1.637867e-02 1.586221e-02 1.535522e-02 1.485901e-02 1.437861e-02 1.391646e-02 1.347965e-02 1.307484e-02 1.270038e-02 1.236292e-02 1.206605e-02 1.180458e-02 1.158154e-02 1.139454e-02 1.124016e-02 1.111560e-02 1.102149e-02 1.095369e-02 1.091157e-02 1.089420e-02 1.090139e-02 1.093257e-02 1.099101e-02 1.107385e-02 1.118416e-02 1.132105e-02 1.148341e-02 1.166881e-02 1.187320e-02 1.209187e-02 1.231711e-02 1.254017e-02 1.275150e-02 1.294097e-02 1.309883e-02 1.321627e-02 1.328635e-02 1.330457e-02 1.326930e-02 1.318232e-02 1.304834e-02 1.287596e-02 1.267171e-02 1.245072e-02 1.222175e-02 1.199619e-02 1.178851e-02 1.160161e-02 1.144602e-02 1.132617e-02 1.124265e-02 1.119614e-02 1.118445e-02 1.120344e-02 1.124852e-02 1.131170e-02 1.138720e-02 1.146905e-02 1.154944e-02 1.162584e-02 1.168916e-02 1.174121e-02 1.177828e-02 1.180243e-02 1.181722e-02 1.182543e-02 1.183505e-02 1.185085e-02 1.188132e-02 1.193687e-02 1.202223e-02 1.214572e-02 1.231269e-02 1.252814e-02 1.279409e-02 1.311164e-02 1.348040e-02 1.389460e-02 1.435364e-02 1.484385e-02 1.535884e-02 1.589094e-02 1.641805e-02 1.693094e-02 1.741737e-02 1.784985e-02 1.821818e-02 1.850497e-02 1.869781e-02 1.878159e-02 1.874940e-02 1.860034e-02 1.833319e-02 1.795438e-02 1.747851e-02 1.691910e-02 1.629412e-02 1.562749e-02 1.494114e-02 1.425477e-02 1.358522e-02 1.295166e-02 1.236938e-02 1.184227e-02 1.137826e-02 1.097655e-02 1.063849e-02 1.035917e-02 1.013189e-02 9.951614e-03 9.810468e-03 9.702484e-03 9.618912e-03 9.557200e-03 9.515783e-03 9.483976e-03 9.461894e-03 9.449512e-03 9.444560e-03 9.448319e-03 9.462571e-03 9.492229e-03 9.540240e-03 9.613574e-03 9.722074e-03 9.877603e-03 1.009114e-02 1.039193e-02 1.078277e-02 1.129164e-02 1.194947e-02 1.276964e-02 1.378874e-02 1.503251e-02 1.651280e-02 1.826878e-02 2.029762e-02 2.260968e-02 2.523040e-02 2.811489e-02 3.128116e-02 3.468496e-02 3.831253e-02 4.214123e-02 4.609709e-02 5.019291e-02 5.435932e-02 5.857211e-02 6.279117e-02 6.698547e-02 7.112133e-02 7.513537e-02 7.898439e-02 8.264580e-02 8.596457e-02 8.893831e-02 9.144354e-02 9.339614e-02 9.469099e-02 9.528888e-02 9.504757e-02 9.401723e-02 9.209470e-02 8.936236e-02 8.581278e-02 8.158410e-02 7.673472e-02 7.142035e-02 6.580388e-02 5.997267e-02 5.418349e-02 4.845010e-02 4.301064e-02 3.788661e-02 3.318371e-02 2.895980e-02 2.520096e-02 2.196790e-02 1.917741e-02 1.686382e-02 1.493693e-02 1.338185e-02 1.212660e-02 1.114562e-02 1.037645e-02 9.788728e-03 9.337643e-03 8.999838e-03 8.745925e-03 8.557712e-03 8.417606e-03 8.313276e-03 8.236103e-03 8.178626e-03 8.136319e-03 8.103930e-03 8.079169e-03 8.057298e-03 8.047121e-03 8.040157e-03 8.037925e-03 8.039122e-03 8.045240e-03 8.056566e-03 8.073693e-03 8.096946e-03 8.126091e-03 8.163713e-03 8.211005e-03 8.267676e-03 8.337256e-03 8.419885e-03 8.518060e-03 8.634836e-03 8.771677e-03 8.931952e-03 9.121128e-03 9.339885e-03 9.595656e-03 9.891369e-03 1.023235e-02 1.062407e-02 1.106942e-02 1.157298e-02 1.213775e-02 1.276301e-02 1.344779e-02 1.418830e-02 1.497597e-02 1.580190e-02 1.665023e-02 1.750493e-02 1.834696e-02 1.915304e-02 1.989824e-02 2.055993e-02 2.111785e-02 2.154451e-02 2.182956e-02 2.195752e-02 2.191971e-02 2.171759e-02 2.135359e-02 2.084243e-02 2.019366e-02 1.943582e-02 1.858639e-02 1.767397e-02 1.672603e-02 1.576696e-02 1.482156e-02 1.390596e-02 1.304660e-02 1.224551e-02 1.152100e-02 1.087245e-02 1.030560e-02 9.815045e-03 9.399401e-03 9.048929e-03 8.762146e-03 8.525607e-03 8.333687e-03 8.178554e-03 8.055588e-03 7.953460e-03 7.871676e-03 7.804023e-03 7.745854e-03 7.695487e-03 7.651979e-03 7.613001e-03 7.576570e-03 7.543098e-03 7.513281e-03 7.486089e-03 7.460333e-03 7.437165e-03 7.420018e-03 7.403485e-03 7.393188e-03 7.385157e-03 7.381142e-03 7.382731e-03 7.389425e-03 7.400057e-03 7.417765e-03 7.441052e-03 7.469546e-03 7.504709e-03 7.548724e-03 7.596594e-03 7.650353e-03 7.710819e-03 7.774602e-03 7.841828e-03 7.913326e-03 7.984827e-03 8.057108e-03 8.127184e-03 8.196381e-03 8.262491e-03 8.324887e-03 8.382776e-03 8.438149e-03 8.491314e-03 8.542188e-03 8.597136e-03 8.653245e-03 8.718872e-03 8.793177e-03 8.885135e-03 8.992364e-03 9.123140e-03 9.277182e-03 9.457156e-03 9.663965e-03 9.896304e-03 1.015585e-02 1.043147e-02 1.072995e-02 1.103075e-02 1.133999e-02 1.163617e-02 1.192088e-02 1.218172e-02 1.240421e-02 1.258884e-02 1.272065e-02 1.279959e-02 1.281820e-02 1.277505e-02 1.267336e-02 1.251373e-02 1.229669e-02 1.203610e-02 1.173450e-02 1.139876e-02 1.104379e-02 1.067616e-02 1.030113e-02 9.933656e-03 9.576710e-03 9.236231e-03 8.922411e-03 8.629629e-03 8.368453e-03 8.136621e-03 7.930825e-03 7.753832e-03 7.602089e-03 7.475012e-03 7.366045e-03 7.276549e-03 7.201903e-03 7.140825e-03 7.089948e-03 7.049944e-03 7.017271e-03 6.992685e-03 6.975495e-03 6.965241e-03 6.963434e-03 6.968759e-03 6.981758e-03 7.005359e-03 7.036176e-03 7.077074e-03 7.127347e-03 7.185685e-03 7.252536e-03 7.326387e-03 7.406772e-03 7.492342e-03 7.578539e-03 7.664872e-03 7.752018e-03 7.832199e-03 7.906002e-03 7.972893e-03 8.026704e-03 8.068410e-03 8.096425e-03 8.109995e-03 8.107465e-03 8.090753e-03 8.058514e-03 8.012610e-03 7.955951e-03 7.888776e-03 7.812858e-03 7.734107e-03 7.650464e-03 7.568231e-03 7.487124e-03 7.409463e-03 7.340601e-03 7.276530e-03 7.223582e-03 7.178548e-03 7.145296e-03 7.121032e-03 7.105664e-03 7.099282e-03 7.099570e-03 7.109569e-03 7.122087e-03 7.140874e-03 7.163182e-03 7.186696e-03 7.212156e-03 7.237755e-03 7.264045e-03 7.290324e-03 7.317571e-03 7.344144e-03 7.371196e-03 7.402068e-03 7.435552e-03 7.475697e-03 7.525118e-03 7.585420e-03 7.660910e-03 7.756053e-03 7.873261e-03 8.018486e-03 8.194804e-03 8.410383e-03 8.665429e-03 8.966440e-03 9.318208e-03 9.721901e-03 1.018257e-02 1.069909e-02 1.127472e-02 1.190878e-02 1.259960e-02 1.334318e-02 1.413327e-02 1.496807e-02 1.583794e-02 1.673456e-02 1.764704e-02 1.856994e-02 1.948340e-02 2.038150e-02 2.124615e-02 2.207101e-02 2.283658e-02 2.352924e-02 2.414135e-02 2.465886e-02 2.507050e-02 2.536754e-02 2.554434e-02 2.559512e-02 2.551420e-02 2.530930e-02 2.497033e-02 2.451342e-02 2.393633e-02 2.325793e-02 2.247875e-02 2.162012e-02 2.069508e-02 1.971542e-02 1.870148e-02 1.766688e-02 1.662782e-02 1.559308e-02 1.458253e-02 1.360669e-02 1.267801e-02 1.179814e-02 1.097954e-02 1.022133e-02 9.527385e-03 8.900329e-03 8.336098e-03 7.836776e-03 7.397303e-03 7.011916e-03 6.679283e-03 6.391686e-03 6.146113e-03 5.937971e-03 5.762449e-03 5.615505e-03 5.491430e-03 5.388102e-03 5.302466e-03 5.231951e-03 5.174008e-03 5.125059e-03 5.085493e-03 5.052250e-03 5.025141e-03 5.000809e-03 4.981800e-03 4.965204e-03 4.949530e-03 4.935818e-03 4.922143e-03 4.908557e-03 4.892848e-03 4.877406e-03 4.859760e-03 4.839820e-03 4.816145e-03 4.789037e-03 4.756798e-03 4.719343e-03 4.676615e-03 4.627055e-03 4.570822e-03 4.506440e-03 4.434051e-03 4.353672e-03 4.264285e-03 4.165221e-03 4.056819e-03 3.939735e-03 3.813271e-03 3.678292e-03 3.534746e-03 3.383996e-03 3.226229e-03 3.062945e-03 2.894667e-03 ''') ImportString(u'flux_model_1_0(numeric)',''' 2.795926e-03 3.664451e-03 4.234822e-03 4.692629e-03 5.493201e-03 7.071624e-03 9.315712e-03 1.123027e-02 1.154659e-02 1.001144e-02 7.680693e-03 5.805874e-03 4.816900e-03 4.457820e-03 4.360444e-03 4.325183e-03 4.299991e-03 4.291636e-03 4.306400e-03 4.331071e-03 4.345031e-03 4.338566e-03 4.319855e-03 4.304587e-03 4.308393e-03 4.338773e-03 4.395153e-03 4.470044e-03 4.540741e-03 4.578945e-03 4.571582e-03 4.540354e-03 4.519871e-03 4.531703e-03 4.578494e-03 4.662658e-03 4.799377e-03 4.997884e-03 5.222071e-03 5.384182e-03 5.409365e-03 5.310966e-03 5.176761e-03 5.080273e-03 5.020871e-03 4.956448e-03 4.868438e-03 4.788391e-03 4.753854e-03 4.770719e-03 4.811976e-03 4.846114e-03 4.861902e-03 4.876799e-03 4.921897e-03 5.022237e-03 5.185621e-03 5.387023e-03 5.569133e-03 5.667294e-03 5.649342e-03 5.533873e-03 5.371652e-03 5.225477e-03 5.143508e-03 5.141076e-03 5.192619e-03 5.246570e-03 5.263103e-03 5.246081e-03 5.232226e-03 5.257946e-03 5.337141e-03 5.483993e-03 5.751980e-03 6.257228e-03 7.124805e-03 8.315096e-03 9.462988e-03 1.001214e-02 9.682868e-03 8.743498e-03 7.714515e-03 6.932042e-03 6.458024e-03 6.227117e-03 6.150602e-03 6.129398e-03 6.084279e-03 6.003645e-03 5.925308e-03 5.880495e-03 5.867752e-03 5.872381e-03 5.901174e-03 5.976073e-03 6.113561e-03 6.305273e-03 6.509826e-03 6.677845e-03 6.761523e-03 6.737088e-03 6.622453e-03 6.475778e-03 6.353055e-03 6.268290e-03 6.210241e-03 6.161562e-03 6.101486e-03 6.017767e-03 5.928254e-03 5.877664e-03 5.910153e-03 6.044571e-03 6.264351e-03 6.521152e-03 6.762987e-03 6.946342e-03 7.039609e-03 7.009725e-03 6.846050e-03 6.585501e-03 6.310042e-03 6.099161e-03 5.990936e-03 5.974474e-03 6.021208e-03 6.102109e-03 6.191581e-03 6.278879e-03 6.372633e-03 6.507517e-03 6.735723e-03 7.091359e-03 7.550079e-03 7.991543e-03 8.250561e-03 8.247904e-03 8.066342e-03 7.852556e-03 7.669650e-03 7.484414e-03 7.255439e-03 7.005591e-03 6.783504e-03 6.620635e-03 6.522074e-03 6.480007e-03 6.480011e-03 6.504643e-03 6.533874e-03 6.555568e-03 6.573049e-03 6.606794e-03 6.691335e-03 6.861169e-03 7.119803e-03 7.414118e-03 7.664893e-03 7.835538e-03 7.945251e-03 7.998472e-03 7.947500e-03 7.750991e-03 7.456630e-03 7.178225e-03 7.004543e-03 6.948744e-03 6.971842e-03 7.023267e-03 7.069058e-03 7.099641e-03 7.132318e-03 7.196985e-03 7.318586e-03 7.485053e-03 7.646770e-03 7.750958e-03 7.773987e-03 7.739799e-03 7.695572e-03 7.681366e-03 7.715330e-03 7.796783e-03 7.937115e-03 8.171577e-03 8.524392e-03 8.944687e-03 9.279085e-03 9.351064e-03 9.108100e-03 8.690043e-03 8.329460e-03 8.179937e-03 8.228309e-03 8.349569e-03 8.402313e-03 8.324038e-03 8.146049e-03 7.958258e-03 7.834423e-03 7.791503e-03 7.796999e-03 7.813054e-03 7.819258e-03 7.821458e-03 7.829615e-03 7.851808e-03 7.892544e-03 7.971509e-03 8.120939e-03 8.384394e-03 8.789833e-03 9.322087e-03 9.913954e-03 1.049519e-02 1.105004e-02 1.156739e-02 1.193451e-02 1.196500e-02 1.163429e-02 1.123862e-02 1.128974e-02 1.227257e-02 1.447816e-02 1.781692e-02 2.152883e-02 2.417632e-02 2.437566e-02 2.185923e-02 1.776329e-02 1.375950e-02 1.096261e-02 9.547665e-03 9.101787e-03 9.107553e-03 9.197377e-03 9.206326e-03 9.109596e-03 8.951936e-03 8.778772e-03 8.628693e-03 8.520672e-03 8.465493e-03 8.481066e-03 8.605424e-03 8.878719e-03 9.280278e-03 9.691783e-03 9.963601e-03 1.001423e-02 9.895438e-03 9.720786e-03 9.575414e-03 9.469335e-03 9.361727e-03 9.215063e-03 9.018303e-03 8.803249e-03 8.618085e-03 8.496982e-03 8.450200e-03 8.454402e-03 8.494890e-03 8.552627e-03 8.624314e-03 8.711399e-03 8.817429e-03 8.955723e-03 9.137725e-03 9.365142e-03 9.616338e-03 9.831066e-03 9.943411e-03 9.926737e-03 9.842315e-03 9.836002e-03 1.007139e-02 1.062463e-02 1.142259e-02 1.222479e-02 1.271087e-02 1.264998e-02 1.204179e-02 1.112659e-02 1.022410e-02 9.563205e-03 9.191798e-03 9.049342e-03 9.031229e-03 9.066161e-03 9.114763e-03 9.164127e-03 9.215918e-03 9.261403e-03 9.289986e-03 9.289826e-03 9.252212e-03 9.187663e-03 9.099782e-03 8.973934e-03 8.785811e-03 8.525656e-03 8.230094e-03 7.970064e-03 7.790824e-03 7.660265e-03 7.486123e-03 7.195151e-03 6.803888e-03 6.404371e-03 6.087342e-03 5.891493e-03 5.796233e-03 5.765947e-03 5.767137e-03 5.786563e-03 5.818654e-03 5.862529e-03 5.915350e-03 5.972791e-03 6.021984e-03 6.052003e-03 6.060679e-03 6.050602e-03 6.036075e-03 6.024845e-03 6.025092e-03 6.034687e-03 6.055092e-03 6.082279e-03 6.119683e-03 6.167445e-03 6.231837e-03 6.308338e-03 6.388516e-03 6.450586e-03 6.482095e-03 6.480901e-03 6.465781e-03 6.462672e-03 6.496057e-03 6.575965e-03 6.707695e-03 6.908451e-03 7.206637e-03 7.629426e-03 8.158073e-03 8.697091e-03 9.084200e-03 9.176737e-03 8.929303e-03 8.443873e-03 7.891644e-03 7.417550e-03 7.087449e-03 6.892965e-03 6.796737e-03 6.769469e-03 6.798478e-03 6.884631e-03 7.025107e-03 7.204563e-03 7.390703e-03 7.551138e-03 7.665440e-03 7.739227e-03 7.804564e-03 7.931507e-03 8.224015e-03 8.781880e-03 9.627121e-03 1.060905e-02 1.141505e-02 1.170576e-02 1.133491e-02 1.044077e-02 9.362677e-03 8.429773e-03 7.806642e-03 7.486567e-03 7.367232e-03 7.338732e-03 7.335004e-03 7.332558e-03 7.336830e-03 7.357789e-03 7.400137e-03 7.467051e-03 7.576157e-03 7.742446e-03 7.978759e-03 8.251280e-03 8.492948e-03 8.614898e-03 8.562320e-03 8.350205e-03 8.048290e-03 7.747178e-03 7.509091e-03 7.359866e-03 7.294371e-03 7.306060e-03 7.400089e-03 7.599631e-03 7.931230e-03 8.383187e-03 8.881570e-03 9.288481e-03 9.466657e-03 9.352129e-03 8.998252e-03 8.541738e-03 8.128489e-03 7.849624e-03 7.722809e-03 7.726408e-03 7.823200e-03 7.969951e-03 8.130990e-03 8.268412e-03 8.357954e-03 8.392502e-03 8.385573e-03 8.357848e-03 8.325594e-03 8.289684e-03 8.245600e-03 8.190747e-03 8.131386e-03 8.074046e-03 8.024807e-03 7.986093e-03 7.957800e-03 7.943003e-03 7.940398e-03 7.953744e-03 7.980394e-03 8.022810e-03 8.085300e-03 8.190187e-03 8.355775e-03 8.587285e-03 8.846182e-03 9.057591e-03 9.144037e-03 9.071055e-03 8.873225e-03 8.634889e-03 8.451520e-03 8.375268e-03 8.412382e-03 8.516727e-03 8.628245e-03 8.689136e-03 8.680711e-03 8.614601e-03 8.532023e-03 8.466884e-03 8.448152e-03 8.491120e-03 8.627092e-03 8.896917e-03 9.342196e-03 9.967363e-03 1.069297e-02 1.136065e-02 1.177822e-02 1.181036e-02 1.145814e-02 1.086600e-02 1.026792e-02 9.866484e-03 9.761338e-03 9.918990e-03 1.020940e-02 1.047281e-02 1.058694e-02 1.050074e-02 1.023887e-02 9.875420e-03 9.483433e-03 9.132414e-03 8.858258e-03 8.677235e-03 8.588632e-03 8.583467e-03 8.643741e-03 8.746552e-03 8.859709e-03 8.949645e-03 8.988934e-03 8.972578e-03 8.911045e-03 8.832389e-03 8.757565e-03 8.697599e-03 8.653221e-03 8.617870e-03 8.586279e-03 8.569986e-03 8.583211e-03 8.719233e-03 9.207525e-03 1.062143e-02 1.419462e-02 2.214402e-02 3.770935e-02 6.427223e-02 1.034250e-01 1.522274e-01 2.020126e-01 2.401212e-01 2.546657e-01 2.408210e-01 2.030842e-01 1.531684e-01 1.039175e-01 6.439663e-02 3.767736e-02 2.221044e-02 1.455877e-02 1.138315e-02 1.043629e-02 1.047867e-02 1.093760e-02 1.154069e-02 1.211831e-02 1.255923e-02 1.278097e-02 1.277340e-02 1.257206e-02 1.223904e-02 1.182061e-02 1.135891e-02 1.089067e-02 1.044934e-02 1.007160e-02 9.773894e-03 9.557352e-03 9.407465e-03 9.308502e-03 9.247796e-03 9.220224e-03 9.216198e-03 9.232550e-03 9.262607e-03 9.306050e-03 9.358275e-03 9.420429e-03 9.487406e-03 9.551618e-03 9.603663e-03 9.640768e-03 9.659521e-03 9.667772e-03 9.670511e-03 9.670733e-03 9.666483e-03 9.652995e-03 9.627097e-03 9.589981e-03 9.546704e-03 9.507648e-03 9.475701e-03 9.458359e-03 9.454313e-03 9.463085e-03 9.485303e-03 9.514514e-03 9.551204e-03 9.589494e-03 9.632528e-03 9.678601e-03 9.728821e-03 9.786466e-03 9.849575e-03 9.923663e-03 1.002056e-02 1.015584e-02 1.034569e-02 1.059126e-02 1.088890e-02 1.122906e-02 1.163989e-02 1.220040e-02 1.305206e-02 1.434655e-02 1.614083e-02 1.829723e-02 2.043490e-02 2.202794e-02 2.260378e-02 2.194803e-02 2.023529e-02 1.791709e-02 1.554057e-02 1.353751e-02 1.211449e-02 1.126171e-02 1.084967e-02 1.071754e-02 1.072134e-02 1.076356e-02 1.078020e-02 1.074024e-02 1.063587e-02 1.047436e-02 1.027949e-02 1.007939e-02 9.896940e-03 9.752640e-03 9.656772e-03 9.622029e-03 9.677114e-03 9.884506e-03 1.036678e-02 1.132304e-02 1.301874e-02 1.572851e-02 1.963392e-02 2.467708e-02 3.048330e-02 3.633517e-02 4.129895e-02 4.444638e-02 4.514418e-02 4.322224e-02 3.905083e-02 3.345447e-02 2.743284e-02 2.190289e-02 1.746324e-02 1.433912e-02 1.246593e-02 1.163392e-02 1.165292e-02 1.242792e-02 1.396798e-02 1.627866e-02 1.927225e-02 2.260743e-02 2.573708e-02 2.798336e-02 2.880193e-02 2.798503e-02 2.576185e-02 2.269398e-02 1.946162e-02 1.659981e-02 1.439454e-02 1.288121e-02 1.192568e-02 1.135092e-02 1.100567e-02 1.079059e-02 1.065809e-02 1.058231e-02 1.055499e-02 1.056909e-02 1.061639e-02 1.070065e-02 1.083378e-02 1.103857e-02 1.135201e-02 1.181529e-02 1.246927e-02 1.333622e-02 1.442232e-02 1.571687e-02 1.717508e-02 1.872945e-02 2.025743e-02 2.160664e-02 2.258543e-02 2.305011e-02 2.296837e-02 2.246802e-02 2.185950e-02 2.156935e-02 2.205043e-02 2.366674e-02 2.663073e-02 3.099074e-02 3.659463e-02 4.313043e-02 5.011936e-02 5.705209e-02 6.350545e-02 6.933881e-02 7.462602e-02 7.951541e-02 8.386774e-02 8.705852e-02 8.812220e-02 8.608530e-02 8.057920e-02 7.212315e-02 6.200098e-02 5.183828e-02 4.302292e-02 3.632680e-02 3.185735e-02 2.922257e-02 2.780097e-02 2.696371e-02 2.620352e-02 2.522581e-02 2.391878e-02 2.234683e-02 2.069617e-02 1.920846e-02 1.813660e-02 1.768150e-02 1.798350e-02 1.905175e-02 2.077110e-02 2.285017e-02 2.486769e-02 2.638627e-02 2.706645e-02 2.679800e-02 2.575571e-02 2.432130e-02 2.292937e-02 2.191301e-02 2.141833e-02 2.137604e-02 2.159672e-02 2.188260e-02 2.212238e-02 2.231150e-02 2.252390e-02 2.287107e-02 2.340410e-02 2.411471e-02 2.491306e-02 2.569328e-02 2.638630e-02 2.703815e-02 2.781650e-02 2.897818e-02 3.080276e-02 3.348133e-02 3.704673e-02 4.134780e-02 4.607457e-02 5.080113e-02 5.502884e-02 5.829669e-02 6.026766e-02 6.084706e-02 6.028913e-02 5.921290e-02 5.846838e-02 5.896077e-02 6.140203e-02 6.609754e-02 7.288815e-02 8.108328e-02 8.966892e-02 9.738345e-02 1.031030e-01 1.060381e-01 1.059228e-01 1.030969e-01 9.826993e-02 9.226640e-02 8.585557e-02 7.950760e-02 7.355406e-02 6.811582e-02 6.329288e-02 5.917084e-02 5.583515e-02 5.335292e-02 5.179087e-02 5.118418e-02 5.155087e-02 5.279135e-02 5.467709e-02 5.684290e-02 5.883380e-02 6.019994e-02 6.062364e-02 5.996716e-02 5.828461e-02 5.576381e-02 5.271535e-02 4.949826e-02 4.649764e-02 4.407271e-02 4.251065e-02 4.197865e-02 4.249137e-02 4.395301e-02 4.615700e-02 4.889511e-02 5.198020e-02 5.525381e-02 5.861232e-02 6.196297e-02 6.516752e-02 6.810299e-02 7.067532e-02 7.279757e-02 7.448104e-02 7.577939e-02 7.679425e-02 7.763839e-02 7.845919e-02 7.948466e-02 8.104932e-02 8.354925e-02 8.736853e-02 9.268838e-02 9.936303e-02 1.068779e-01 1.142630e-01 1.204376e-01 1.242591e-01 1.249210e-01 1.220776e-01 1.159947e-01 1.075758e-01 9.804909e-02 8.882300e-02 8.112933e-02 7.585522e-02 7.340587e-02 7.375047e-02 7.644131e-02 8.079931e-02 8.595793e-02 9.095366e-02 9.488727e-02 9.699097e-02 9.674098e-02 9.399543e-02 8.898392e-02 8.230445e-02 7.476406e-02 6.734322e-02 6.101417e-02 5.659117e-02 5.470413e-02 5.565449e-02 5.943833e-02 6.569882e-02 7.376368e-02 8.276148e-02 9.166206e-02 9.946743e-02 1.053039e-01 1.085663e-01 1.089950e-01 1.066739e-01 1.021001e-01 9.597346e-02 8.916452e-02 8.247627e-02 7.661007e-02 7.207823e-02 6.924298e-02 6.841385e-02 7.001486e-02 7.458686e-02 8.279667e-02 9.526456e-02 1.122789e-01 1.335524e-01 1.579586e-01 1.835650e-01 2.077725e-01 2.279366e-01 2.416940e-01 2.477983e-01 2.460993e-01 2.376866e-01 2.243726e-01 2.082946e-01 1.912711e-01 1.746916e-01 1.592049e-01 1.451409e-01 1.325140e-01 1.213465e-01 1.117753e-01 1.039859e-01 9.818824e-02 9.450686e-02 9.286352e-02 9.297723e-02 9.443232e-02 9.668450e-02 9.923623e-02 1.016735e-01 1.037549e-01 1.054305e-01 1.067605e-01 1.079530e-01 1.091749e-01 1.105168e-01 1.120283e-01 1.136141e-01 1.152258e-01 1.168152e-01 1.184460e-01 1.201691e-01 1.221692e-01 1.245049e-01 1.272931e-01 1.305908e-01 1.344418e-01 1.389601e-01 1.441787e-01 1.501762e-01 1.570036e-01 1.647111e-01 1.735077e-01 1.837997e-01 1.961705e-01 2.114694e-01 2.302625e-01 2.526713e-01 2.779522e-01 3.042703e-01 3.287926e-01 3.483262e-01 3.596431e-01 3.606936e-01 3.506992e-01 3.305958e-01 3.025668e-01 2.697515e-01 2.351260e-01 2.015184e-01 1.707780e-01 1.440992e-01 1.220727e-01 1.048168e-01 9.230843e-02 8.430600e-02 8.038392e-02 7.998773e-02 8.233368e-02 8.650888e-02 9.155479e-02 9.656824e-02 1.008562e-01 1.039302e-01 1.056583e-01 1.061924e-01 1.059383e-01 1.054593e-01 1.053675e-01 1.062400e-01 1.084604e-01 1.122144e-01 1.174928e-01 1.240857e-01 1.316004e-01 1.395745e-01 1.474703e-01 1.548378e-01 1.614435e-01 1.674124e-01 1.733725e-01 1.804985e-01 1.902537e-01 2.041167e-01 2.230396e-01 2.469940e-01 2.745950e-01 3.031183e-01 3.290083e-01 3.485058e-01 3.587167e-01 3.582461e-01 3.476707e-01 3.293439e-01 3.070100e-01 2.846043e-01 2.655499e-01 2.521942e-01 2.451810e-01 2.436490e-01 2.456030e-01 2.483827e-01 2.492615e-01 2.461215e-01 2.377948e-01 2.241567e-01 2.061424e-01 1.856401e-01 1.646545e-01 1.453156e-01 1.292721e-01 1.176104e-01 1.105454e-01 1.077656e-01 1.083388e-01 1.110207e-01 1.145134e-01 1.175336e-01 1.191903e-01 1.189004e-01 1.166226e-01 1.126673e-01 1.077661e-01 1.028272e-01 9.889286e-02 9.700955e-02 9.816533e-02 1.033018e-01 1.129898e-01 1.276777e-01 1.471718e-01 1.707195e-01 1.969541e-01 2.236596e-01 2.484531e-01 2.683898e-01 2.813195e-01 2.853395e-01 2.798837e-01 2.653411e-01 2.433606e-01 2.161036e-01 1.863348e-01 1.565664e-01 1.289415e-01 1.049817e-01 8.543099e-02 7.049588e-02 5.979445e-02 5.282714e-02 4.890480e-02 4.739406e-02 4.781241e-02 4.976286e-02 5.299822e-02 5.730378e-02 6.254785e-02 6.857280e-02 7.518724e-02 8.214842e-02 8.919369e-02 9.595639e-02 1.020692e-01 1.071429e-01 1.107950e-01 1.127780e-01 1.128613e-01 1.110425e-01 1.074301e-01 1.023795e-01 9.630956e-02 8.975954e-02 8.326138e-02 7.724594e-02 7.202885e-02 6.777212e-02 6.449261e-02 6.206645e-02 6.034909e-02 5.920837e-02 5.850766e-02 5.823173e-02 5.835186e-02 5.891673e-02 5.990039e-02 6.128461e-02 6.290820e-02 6.458214e-02 6.600372e-02 6.690381e-02 6.699518e-02 6.615639e-02 6.434778e-02 6.172847e-02 5.860685e-02 5.541298e-02 5.264110e-02 5.078751e-02 5.029750e-02 5.148596e-02 5.454615e-02 5.943983e-02 6.592286e-02 7.354665e-02 8.166471e-02 8.951546e-02 9.630886e-02 1.012803e-01 1.038614e-01 1.037456e-01 1.009227e-01 9.569203e-02 8.855784e-02 8.025743e-02 7.152107e-02 6.303082e-02 5.538093e-02 4.894742e-02 4.392801e-02 4.033736e-02 3.804007e-02 3.683968e-02 3.643093e-02 3.656283e-02 3.697409e-02 3.747085e-02 3.793069e-02 3.830095e-02 3.859439e-02 3.889665e-02 3.930958e-02 3.994867e-02 4.093436e-02 4.232474e-02 4.418167e-02 4.647699e-02 4.916558e-02 5.215084e-02 5.527531e-02 5.837925e-02 6.122586e-02 6.361560e-02 6.530013e-02 6.612353e-02 6.594415e-02 6.472693e-02 6.250833e-02 5.946854e-02 5.579207e-02 5.177144e-02 4.768141e-02 4.378575e-02 4.028568e-02 3.731591e-02 3.496712e-02 3.322086e-02 3.202561e-02 3.130305e-02 3.093456e-02 3.082122e-02 3.085219e-02 3.094646e-02 3.104529e-02 3.110070e-02 3.109998e-02 3.103529e-02 3.090842e-02 3.074367e-02 3.055420e-02 3.036433e-02 3.021699e-02 3.015679e-02 3.024013e-02 3.054404e-02 3.114133e-02 3.209000e-02 3.344345e-02 3.520316e-02 3.733067e-02 3.972623e-02 4.224684e-02 4.473279e-02 4.699087e-02 4.883702e-02 5.014945e-02 5.085352e-02 5.092090e-02 5.042225e-02 4.947706e-02 4.820428e-02 4.679896e-02 4.538237e-02 4.408268e-02 4.300880e-02 4.220938e-02 4.173631e-02 4.162062e-02 4.188538e-02 4.257171e-02 4.371209e-02 4.531397e-02 4.738862e-02 4.988634e-02 5.271478e-02 5.572059e-02 5.869588e-02 6.139513e-02 6.355844e-02 6.493702e-02 6.535832e-02 6.469291e-02 6.293522e-02 6.018234e-02 5.663551e-02 5.256281e-02 4.827388e-02 4.408297e-02 4.026834e-02 3.705360e-02 3.456686e-02 3.288482e-02 3.196778e-02 3.174118e-02 3.205968e-02 3.276638e-02 3.369690e-02 3.469802e-02 3.564636e-02 3.646248e-02 3.709852e-02 3.757463e-02 3.792264e-02 3.821936e-02 3.852530e-02 3.891682e-02 3.941520e-02 4.001717e-02 4.067219e-02 4.129720e-02 4.177534e-02 4.199985e-02 4.187900e-02 4.136770e-02 4.044853e-02 3.918063e-02 3.767019e-02 3.604639e-02 3.447041e-02 3.310300e-02 3.207253e-02 3.149343e-02 3.143810e-02 3.194144e-02 3.300282e-02 3.461311e-02 3.671442e-02 3.927266e-02 4.222345e-02 4.547899e-02 4.898975e-02 5.260495e-02 5.619434e-02 5.963051e-02 6.265535e-02 6.514052e-02 6.685590e-02 6.768617e-02 6.754321e-02 6.640861e-02 6.438580e-02 6.161292e-02 5.831414e-02 5.474285e-02 5.115411e-02 4.774527e-02 4.473486e-02 4.222460e-02 4.028920e-02 3.891609e-02 3.810760e-02 3.777595e-02 3.784945e-02 3.824813e-02 3.887727e-02 3.966798e-02 4.056894e-02 4.152549e-02 4.253109e-02 4.360239e-02 4.475898e-02 4.605315e-02 4.754849e-02 4.929098e-02 5.130042e-02 5.359927e-02 5.612425e-02 5.878958e-02 6.148764e-02 6.401849e-02 6.621020e-02 6.791528e-02 6.893019e-02 6.919879e-02 6.866730e-02 6.736690e-02 6.542139e-02 6.297150e-02 6.021884e-02 5.739036e-02 5.464317e-02 5.216888e-02 5.008290e-02 4.843250e-02 4.723656e-02 4.648117e-02 4.609428e-02 4.601678e-02 4.614851e-02 4.643912e-02 4.679181e-02 4.716042e-02 4.748059e-02 4.768415e-02 4.774177e-02 4.761794e-02 4.726058e-02 4.668291e-02 4.586734e-02 4.485467e-02 4.367090e-02 4.239433e-02 4.107726e-02 3.978686e-02 3.860280e-02 3.757199e-02 3.672638e-02 3.609958e-02 3.567433e-02 3.544063e-02 3.536222e-02 3.539432e-02 3.548363e-02 3.558963e-02 3.567381e-02 3.570129e-02 3.566108e-02 3.555542e-02 3.539691e-02 3.520093e-02 3.498723e-02 3.477743e-02 3.458125e-02 3.439154e-02 3.419948e-02 3.398778e-02 3.373783e-02 3.343020e-02 3.306127e-02 3.262984e-02 3.215880e-02 3.168054e-02 3.123889e-02 3.087650e-02 3.062948e-02 3.053585e-02 3.061738e-02 3.088107e-02 3.130593e-02 3.186111e-02 3.250693e-02 3.319563e-02 3.386579e-02 3.447651e-02 3.498825e-02 3.538908e-02 3.568423e-02 3.592072e-02 3.616339e-02 3.652279e-02 3.712539e-02 3.811113e-02 3.962206e-02 4.180121e-02 4.474155e-02 4.847582e-02 5.298829e-02 5.818734e-02 6.388614e-02 6.982973e-02 7.569645e-02 8.114515e-02 8.584672e-02 8.947176e-02 9.178067e-02 9.262960e-02 9.198175e-02 8.990769e-02 8.659013e-02 8.230025e-02 7.735087e-02 7.204840e-02 6.671435e-02 6.159553e-02 5.686951e-02 5.265192e-02 4.899383e-02 4.586882e-02 4.320647e-02 4.091783e-02 3.890569e-02 3.707888e-02 3.537948e-02 3.375115e-02 3.218054e-02 3.066824e-02 2.922474e-02 2.787920e-02 2.665301e-02 2.556583e-02 2.463348e-02 2.386296e-02 2.325097e-02 2.278499e-02 2.246181e-02 2.225277e-02 2.214239e-02 2.210993e-02 2.214231e-02 2.222133e-02 2.233022e-02 2.245948e-02 2.259236e-02 2.272211e-02 2.283235e-02 2.291221e-02 2.295770e-02 2.295613e-02 2.291455e-02 2.282823e-02 2.270608e-02 2.256065e-02 2.240296e-02 2.225082e-02 2.211109e-02 2.201041e-02 2.194591e-02 2.192732e-02 2.196518e-02 2.204658e-02 2.217952e-02 2.235100e-02 2.256584e-02 2.281594e-02 2.310099e-02 2.341673e-02 2.376463e-02 2.413798e-02 2.454158e-02 2.495682e-02 2.538180e-02 2.579834e-02 2.619184e-02 2.654395e-02 2.683530e-02 2.705168e-02 2.717242e-02 2.719581e-02 2.711320e-02 2.693029e-02 2.666062e-02 2.631481e-02 2.592059e-02 2.549502e-02 2.506432e-02 2.465195e-02 2.427426e-02 2.394634e-02 2.366965e-02 2.344865e-02 2.327626e-02 2.313961e-02 2.303096e-02 2.292905e-02 2.282413e-02 2.269937e-02 2.254736e-02 2.235759e-02 2.212728e-02 2.185309e-02 2.153510e-02 2.117725e-02 2.078748e-02 2.036304e-02 1.991628e-02 1.945864e-02 1.899108e-02 1.852865e-02 1.807907e-02 1.765315e-02 1.725927e-02 1.690996e-02 1.661111e-02 1.637345e-02 1.620303e-02 1.610521e-02 1.608403e-02 1.614726e-02 1.629115e-02 1.651933e-02 1.682942e-02 1.721620e-02 1.767145e-02 1.818409e-02 1.873996e-02 1.932029e-02 1.990362e-02 2.046674e-02 2.098541e-02 2.143616e-02 2.179763e-02 2.205243e-02 2.218844e-02 2.219966e-02 2.208719e-02 2.185894e-02 2.153037e-02 2.111501e-02 2.064161e-02 2.012892e-02 1.960033e-02 1.908431e-02 1.859033e-02 1.813943e-02 1.774217e-02 1.740266e-02 1.712425e-02 1.690593e-02 1.674360e-02 1.663254e-02 1.656290e-02 1.652844e-02 1.652289e-02 1.653700e-02 1.656938e-02 1.660892e-02 1.665938e-02 1.671581e-02 1.678099e-02 1.685818e-02 1.694972e-02 1.706476e-02 1.720658e-02 1.738410e-02 1.760905e-02 1.788510e-02 1.821960e-02 1.861714e-02 1.908196e-02 1.961233e-02 2.020505e-02 2.085679e-02 2.155388e-02 2.229246e-02 2.304876e-02 2.381130e-02 2.456826e-02 2.528897e-02 2.596204e-02 2.657348e-02 2.709075e-02 2.750537e-02 2.779916e-02 2.796160e-02 2.797855e-02 2.784465e-02 2.756269e-02 2.713188e-02 2.656155e-02 2.587004e-02 2.507397e-02 2.419507e-02 2.326148e-02 2.230017e-02 2.133542e-02 2.038859e-02 1.948361e-02 1.864170e-02 1.786804e-02 1.717582e-02 1.656500e-02 1.603984e-02 1.559515e-02 1.522430e-02 1.492208e-02 1.467970e-02 1.448988e-02 1.434165e-02 1.423126e-02 1.415606e-02 1.410312e-02 1.407127e-02 1.405910e-02 1.406222e-02 1.408027e-02 1.411371e-02 1.416499e-02 1.423629e-02 1.433189e-02 1.446033e-02 1.463161e-02 1.485426e-02 1.515670e-02 1.554000e-02 1.602896e-02 1.665398e-02 1.742626e-02 1.838020e-02 1.954115e-02 2.091845e-02 2.255020e-02 2.443332e-02 2.657689e-02 2.900821e-02 3.168219e-02 3.461963e-02 3.777942e-02 4.115019e-02 4.471676e-02 4.840804e-02 5.224307e-02 5.616073e-02 6.014201e-02 6.415134e-02 6.816690e-02 7.215945e-02 7.606728e-02 7.985399e-02 8.350006e-02 8.684655e-02 8.989569e-02 9.252098e-02 9.463299e-02 9.612498e-02 9.695093e-02 9.696107e-02 9.620063e-02 9.455725e-02 9.210631e-02 8.883255e-02 8.486944e-02 8.026683e-02 7.517815e-02 6.976228e-02 6.410280e-02 5.845976e-02 5.284063e-02 4.749144e-02 4.243108e-02 3.776897e-02 3.356740e-02 2.981168e-02 2.657098e-02 2.375932e-02 2.141889e-02 1.945891e-02 1.786830e-02 1.657597e-02 1.555893e-02 1.475485e-02 1.413580e-02 1.365594e-02 1.329355e-02 1.301895e-02 1.281408e-02 1.266100e-02 1.254731e-02 1.246392e-02 1.240286e-02 1.236010e-02 1.232943e-02 1.230807e-02 1.229154e-02 1.228845e-02 1.228984e-02 1.229818e-02 1.231126e-02 1.233306e-02 1.236492e-02 1.240463e-02 1.245517e-02 1.251713e-02 1.259587e-02 1.269494e-02 1.281607e-02 1.296771e-02 1.315374e-02 1.338259e-02 1.366462e-02 1.400868e-02 1.442803e-02 1.493979e-02 1.555508e-02 1.629677e-02 1.718104e-02 1.822841e-02 1.945954e-02 2.088977e-02 2.253628e-02 2.441058e-02 2.651455e-02 2.884533e-02 3.138914e-02 3.411918e-02 3.700255e-02 3.998591e-02 4.301087e-02 4.600924e-02 4.889948e-02 5.159426e-02 5.401164e-02 5.607701e-02 5.769854e-02 5.883249e-02 5.942576e-02 5.944755e-02 5.889928e-02 5.778960e-02 5.616545e-02 5.406386e-02 5.157664e-02 4.876849e-02 4.573561e-02 4.257141e-02 3.936114e-02 3.618891e-02 3.311545e-02 3.022208e-02 2.752819e-02 2.508773e-02 2.290483e-02 2.099642e-02 1.934851e-02 1.795328e-02 1.678384e-02 1.582695e-02 1.504624e-02 1.441955e-02 1.392080e-02 1.353068e-02 1.321910e-02 1.297647e-02 1.278443e-02 1.262865e-02 1.250108e-02 1.239614e-02 1.230685e-02 1.222764e-02 1.215747e-02 1.209614e-02 1.204107e-02 1.198868e-02 1.194064e-02 1.190495e-02 1.186972e-02 1.184364e-02 1.181967e-02 1.180051e-02 1.178789e-02 1.178049e-02 1.177620e-02 1.177886e-02 1.178632e-02 1.179729e-02 1.181336e-02 1.183843e-02 1.186443e-02 1.189483e-02 1.193193e-02 1.197019e-02 1.201152e-02 1.205844e-02 1.210504e-02 1.215458e-02 1.220413e-02 1.225677e-02 1.231086e-02 1.236693e-02 1.242454e-02 1.248748e-02 1.255648e-02 1.263144e-02 1.272114e-02 1.282052e-02 1.294014e-02 1.307768e-02 1.324432e-02 1.343408e-02 1.365712e-02 1.391160e-02 1.419935e-02 1.451954e-02 1.487013e-02 1.525203e-02 1.565056e-02 1.607310e-02 1.649381e-02 1.692009e-02 1.732486e-02 1.771054e-02 1.806198e-02 1.836046e-02 1.860792e-02 1.878578e-02 1.889429e-02 1.892450e-02 1.887455e-02 1.874986e-02 1.855037e-02 1.827668e-02 1.794748e-02 1.756444e-02 1.713763e-02 1.668436e-02 1.621408e-02 1.573260e-02 1.525842e-02 1.479677e-02 1.435342e-02 1.394325e-02 1.355759e-02 1.321184e-02 1.290219e-02 1.262562e-02 1.238569e-02 1.217837e-02 1.200434e-02 1.185411e-02 1.173068e-02 1.162843e-02 1.154605e-02 1.147847e-02 1.142785e-02 1.138854e-02 1.136180e-02 1.134647e-02 1.134178e-02 1.134942e-02 1.136743e-02 1.139552e-02 1.143911e-02 1.149144e-02 1.155748e-02 1.163610e-02 1.172520e-02 1.182570e-02 1.193545e-02 1.205440e-02 1.218049e-02 1.230787e-02 1.243618e-02 1.256665e-02 1.268922e-02 1.280382e-02 1.291074e-02 1.300094e-02 1.307624e-02 1.313442e-02 1.317457e-02 1.319419e-02 1.319611e-02 1.317838e-02 1.314342e-02 1.309606e-02 1.303593e-02 1.296626e-02 1.289557e-02 1.282111e-02 1.275243e-02 1.268939e-02 1.263614e-02 1.260112e-02 1.257921e-02 1.258060e-02 1.260184e-02 1.264916e-02 1.271863e-02 1.281179e-02 1.292856e-02 1.306636e-02 1.323029e-02 1.340884e-02 1.360609e-02 1.381751e-02 1.403719e-02 1.426505e-02 1.449561e-02 1.472740e-02 1.495387e-02 1.517561e-02 1.538488e-02 1.558046e-02 1.576540e-02 1.593224e-02 1.608709e-02 1.623172e-02 1.636704e-02 1.650000e-02 1.663798e-02 1.678575e-02 1.695549e-02 1.715278e-02 1.739780e-02 1.769201e-02 1.805059e-02 1.848474e-02 1.900364e-02 1.961914e-02 2.033193e-02 2.115216e-02 2.208495e-02 2.312920e-02 2.427937e-02 2.553037e-02 2.688110e-02 2.831550e-02 2.982059e-02 3.138006e-02 3.298398e-02 3.459661e-02 3.620942e-02 3.778851e-02 3.932116e-02 4.077209e-02 4.211444e-02 4.333187e-02 4.439691e-02 4.528596e-02 4.597996e-02 4.646552e-02 4.672812e-02 4.675386e-02 4.655365e-02 4.610557e-02 4.543627e-02 4.453855e-02 4.344463e-02 4.215353e-02 4.070328e-02 3.911645e-02 3.741483e-02 3.563528e-02 3.380293e-02 3.194850e-02 3.008839e-02 2.825892e-02 2.648267e-02 2.478329e-02 2.316443e-02 2.165051e-02 2.024069e-02 1.894312e-02 1.776342e-02 1.669457e-02 1.574322e-02 1.489915e-02 1.415265e-02 1.350258e-02 1.293480e-02 1.244454e-02 1.202494e-02 1.166755e-02 1.136578e-02 1.110976e-02 1.089647e-02 1.072091e-02 1.057920e-02 1.046730e-02 1.037903e-02 1.031607e-02 1.027290e-02 1.025003e-02 1.024122e-02 1.025165e-02 1.027635e-02 1.031259e-02 1.036325e-02 1.042395e-02 1.049590e-02 1.057399e-02 1.066391e-02 1.075971e-02 1.086228e-02 1.096802e-02 1.107674e-02 1.118333e-02 1.128782e-02 1.138905e-02 1.148184e-02 1.156307e-02 1.162847e-02 1.167670e-02 1.170516e-02 1.170694e-02 1.167800e-02 1.161672e-02 1.152223e-02 1.138944e-02 1.121664e-02 1.100222e-02 1.074785e-02 1.045185e-02 1.011713e-02 9.743785e-03 ''') ImportString(u'flux_model_1_0_scaled(numeric)',''' 3.886337e-03 5.093587e-03 5.886402e-03 6.522754e-03 7.635550e-03 9.829557e-03 1.294884e-02 1.561008e-02 1.604977e-02 1.391590e-02 1.067616e-02 8.070165e-03 6.695492e-03 6.196370e-03 6.061017e-03 6.012004e-03 5.976988e-03 5.965375e-03 5.985896e-03 6.020189e-03 6.039592e-03 6.030606e-03 6.004598e-03 5.983376e-03 5.988667e-03 6.030895e-03 6.109263e-03 6.213361e-03 6.311629e-03 6.364734e-03 6.354499e-03 6.311092e-03 6.282620e-03 6.299068e-03 6.364106e-03 6.481094e-03 6.671134e-03 6.947059e-03 7.258679e-03 7.484013e-03 7.519017e-03 7.382242e-03 7.195698e-03 7.061579e-03 6.979010e-03 6.889463e-03 6.767129e-03 6.655864e-03 6.607857e-03 6.631299e-03 6.688647e-03 6.736098e-03 6.758044e-03 6.778751e-03 6.841437e-03 6.980910e-03 7.208014e-03 7.487961e-03 7.741094e-03 7.877539e-03 7.852586e-03 7.692083e-03 7.466596e-03 7.263413e-03 7.149476e-03 7.146096e-03 7.217741e-03 7.292732e-03 7.315713e-03 7.292052e-03 7.272794e-03 7.308546e-03 7.418625e-03 7.622750e-03 7.995253e-03 8.697547e-03 9.903479e-03 1.155798e-02 1.315355e-02 1.391688e-02 1.345919e-02 1.215346e-02 1.072318e-02 9.635538e-03 8.976653e-03 8.655692e-03 8.549337e-03 8.519863e-03 8.457147e-03 8.345066e-03 8.236178e-03 8.173887e-03 8.156175e-03 8.162610e-03 8.202632e-03 8.306742e-03 8.497850e-03 8.764330e-03 9.048658e-03 9.282205e-03 9.398518e-03 9.364552e-03 9.205209e-03 9.001332e-03 8.830747e-03 8.712923e-03 8.632236e-03 8.564571e-03 8.481066e-03 8.364697e-03 8.240273e-03 8.169953e-03 8.215113e-03 8.401954e-03 8.707448e-03 9.064402e-03 9.400551e-03 9.655415e-03 9.785057e-03 9.743517e-03 9.516009e-03 9.153847e-03 8.770958e-03 8.477834e-03 8.327402e-03 8.304519e-03 8.369479e-03 8.481931e-03 8.606298e-03 8.727641e-03 8.857960e-03 9.045449e-03 9.362656e-03 9.856989e-03 1.049461e-02 1.110824e-02 1.146828e-02 1.146459e-02 1.121222e-02 1.091505e-02 1.066081e-02 1.040334e-02 1.008506e-02 9.737771e-03 9.429071e-03 9.202683e-03 9.065683e-03 9.007210e-03 9.007216e-03 9.041454e-03 9.082085e-03 9.112240e-03 9.136538e-03 9.183444e-03 9.300955e-03 9.537025e-03 9.896526e-03 1.030562e-02 1.065420e-02 1.089140e-02 1.104390e-02 1.111788e-02 1.104702e-02 1.077388e-02 1.036472e-02 9.977732e-03 9.736314e-03 9.658755e-03 9.690860e-03 9.762340e-03 9.825991e-03 9.868500e-03 9.913922e-03 1.000381e-02 1.017283e-02 1.040422e-02 1.062901e-02 1.077383e-02 1.080584e-02 1.075832e-02 1.069685e-02 1.067710e-02 1.072431e-02 1.083753e-02 1.103259e-02 1.135849e-02 1.184890e-02 1.243311e-02 1.289793e-02 1.299798e-02 1.266026e-02 1.207916e-02 1.157795e-02 1.137011e-02 1.143735e-02 1.160590e-02 1.167922e-02 1.157041e-02 1.132301e-02 1.106198e-02 1.088985e-02 1.083019e-02 1.083783e-02 1.086015e-02 1.086877e-02 1.087183e-02 1.088316e-02 1.091401e-02 1.097064e-02 1.108040e-02 1.128811e-02 1.165431e-02 1.221787e-02 1.295770e-02 1.378040e-02 1.458832e-02 1.535955e-02 1.607867e-02 1.658897e-02 1.663135e-02 1.617166e-02 1.562168e-02 1.569273e-02 1.705887e-02 2.012465e-02 2.476552e-02 2.992508e-02 3.360508e-02 3.388217e-02 3.038433e-02 2.469098e-02 1.912571e-02 1.523802e-02 1.327125e-02 1.265148e-02 1.265950e-02 1.278435e-02 1.279679e-02 1.266234e-02 1.244319e-02 1.220249e-02 1.199388e-02 1.184373e-02 1.176704e-02 1.178868e-02 1.196154e-02 1.234142e-02 1.289959e-02 1.347158e-02 1.384941e-02 1.391978e-02 1.375466e-02 1.351189e-02 1.330982e-02 1.316238e-02 1.301280e-02 1.280894e-02 1.253544e-02 1.223652e-02 1.197914e-02 1.181081e-02 1.174578e-02 1.175162e-02 1.180790e-02 1.188815e-02 1.198780e-02 1.210884e-02 1.225623e-02 1.244845e-02 1.270144e-02 1.301755e-02 1.336671e-02 1.366518e-02 1.382134e-02 1.379816e-02 1.368082e-02 1.367204e-02 1.399923e-02 1.476824e-02 1.587741e-02 1.699246e-02 1.766811e-02 1.758348e-02 1.673809e-02 1.546596e-02 1.421149e-02 1.329285e-02 1.277660e-02 1.257859e-02 1.255341e-02 1.260196e-02 1.266952e-02 1.273814e-02 1.281013e-02 1.287335e-02 1.291308e-02 1.291286e-02 1.286057e-02 1.277085e-02 1.264870e-02 1.247377e-02 1.221228e-02 1.185066e-02 1.143983e-02 1.107839e-02 1.082925e-02 1.064777e-02 1.040571e-02 1.000126e-02 9.457405e-03 8.902076e-03 8.461405e-03 8.189175e-03 8.056764e-03 8.014666e-03 8.016321e-03 8.043322e-03 8.087929e-03 8.148916e-03 8.222336e-03 8.302180e-03 8.370558e-03 8.412285e-03 8.424343e-03 8.410336e-03 8.390144e-03 8.374534e-03 8.374878e-03 8.388215e-03 8.416578e-03 8.454367e-03 8.506359e-03 8.572748e-03 8.662253e-03 8.768590e-03 8.880037e-03 8.966314e-03 9.010111e-03 9.008452e-03 8.987435e-03 8.983114e-03 9.029520e-03 9.140591e-03 9.323696e-03 9.602747e-03 1.001723e-02 1.060490e-02 1.133972e-02 1.208896e-02 1.262704e-02 1.275566e-02 1.241173e-02 1.173698e-02 1.096938e-02 1.031039e-02 9.851554e-03 9.581221e-03 9.447464e-03 9.409562e-03 9.449885e-03 9.569637e-03 9.764898e-03 1.001434e-02 1.027308e-02 1.049608e-02 1.065496e-02 1.075753e-02 1.084834e-02 1.102479e-02 1.143138e-02 1.220681e-02 1.338170e-02 1.474658e-02 1.586692e-02 1.627100e-02 1.575552e-02 1.451267e-02 1.301412e-02 1.171738e-02 1.085123e-02 1.040633e-02 1.024045e-02 1.020084e-02 1.019566e-02 1.019226e-02 1.019819e-02 1.022733e-02 1.028619e-02 1.037920e-02 1.053086e-02 1.076200e-02 1.109047e-02 1.146928e-02 1.180520e-02 1.197471e-02 1.190162e-02 1.160678e-02 1.118712e-02 1.076858e-02 1.043764e-02 1.023021e-02 1.013918e-02 1.015542e-02 1.028612e-02 1.056349e-02 1.102441e-02 1.165263e-02 1.234538e-02 1.291099e-02 1.315865e-02 1.299946e-02 1.250757e-02 1.187302e-02 1.129860e-02 1.091098e-02 1.073470e-02 1.073971e-02 1.087425e-02 1.107823e-02 1.130208e-02 1.149309e-02 1.161756e-02 1.166558e-02 1.165595e-02 1.161741e-02 1.157258e-02 1.152266e-02 1.146138e-02 1.138514e-02 1.130263e-02 1.122292e-02 1.115448e-02 1.110067e-02 1.106134e-02 1.104077e-02 1.103715e-02 1.105570e-02 1.109275e-02 1.115171e-02 1.123857e-02 1.138436e-02 1.161453e-02 1.193633e-02 1.229619e-02 1.259005e-02 1.271021e-02 1.260877e-02 1.233378e-02 1.200250e-02 1.174761e-02 1.164162e-02 1.169321e-02 1.183825e-02 1.199326e-02 1.207790e-02 1.206619e-02 1.197429e-02 1.185951e-02 1.176897e-02 1.174293e-02 1.180266e-02 1.199166e-02 1.236671e-02 1.298565e-02 1.385464e-02 1.486323e-02 1.579130e-02 1.637173e-02 1.641640e-02 1.592682e-02 1.510374e-02 1.427241e-02 1.371441e-02 1.356826e-02 1.378740e-02 1.419106e-02 1.455721e-02 1.471585e-02 1.459603e-02 1.423203e-02 1.372683e-02 1.318197e-02 1.269406e-02 1.231298e-02 1.206136e-02 1.193820e-02 1.193102e-02 1.201480e-02 1.215771e-02 1.231500e-02 1.244001e-02 1.249462e-02 1.247188e-02 1.238635e-02 1.227702e-02 1.217302e-02 1.208966e-02 1.202798e-02 1.197884e-02 1.193493e-02 1.191228e-02 1.193066e-02 1.211973e-02 1.279846e-02 1.476379e-02 1.973052e-02 3.078019e-02 5.241600e-02 8.933840e-02 1.437608e-01 2.115961e-01 2.807975e-01 3.337684e-01 3.539854e-01 3.347412e-01 2.822871e-01 2.129040e-01 1.444454e-01 8.951132e-02 5.237153e-02 3.087252e-02 2.023669e-02 1.582258e-02 1.450644e-02 1.456535e-02 1.520326e-02 1.604156e-02 1.684445e-02 1.745733e-02 1.776555e-02 1.775502e-02 1.747516e-02 1.701226e-02 1.643065e-02 1.578889e-02 1.513803e-02 1.452458e-02 1.399952e-02 1.358571e-02 1.328472e-02 1.307638e-02 1.293882e-02 1.285444e-02 1.281611e-02 1.281051e-02 1.283324e-02 1.287502e-02 1.293541e-02 1.300800e-02 1.309440e-02 1.318749e-02 1.327675e-02 1.334909e-02 1.340067e-02 1.342673e-02 1.343820e-02 1.344201e-02 1.344232e-02 1.343641e-02 1.341766e-02 1.338167e-02 1.333007e-02 1.326992e-02 1.321563e-02 1.317123e-02 1.314712e-02 1.314149e-02 1.315369e-02 1.318457e-02 1.322517e-02 1.327617e-02 1.332940e-02 1.338921e-02 1.345326e-02 1.352306e-02 1.360319e-02 1.369091e-02 1.379389e-02 1.392858e-02 1.411661e-02 1.438050e-02 1.472185e-02 1.513557e-02 1.560839e-02 1.617945e-02 1.695856e-02 1.814236e-02 1.994170e-02 2.243576e-02 2.543315e-02 2.840451e-02 3.061884e-02 3.141925e-02 3.050776e-02 2.812706e-02 2.490476e-02 2.160140e-02 1.881714e-02 1.683914e-02 1.565377e-02 1.508104e-02 1.489737e-02 1.490267e-02 1.496135e-02 1.498447e-02 1.492893e-02 1.478386e-02 1.455936e-02 1.428849e-02 1.401035e-02 1.375675e-02 1.355617e-02 1.342291e-02 1.337462e-02 1.345119e-02 1.373946e-02 1.440982e-02 1.573903e-02 1.809605e-02 2.186262e-02 2.729115e-02 3.430114e-02 4.237179e-02 5.050589e-02 5.740554e-02 6.178047e-02 6.275041e-02 6.007892e-02 5.428066e-02 4.650172e-02 3.813165e-02 3.044502e-02 2.427390e-02 1.993138e-02 1.732765e-02 1.617115e-02 1.619756e-02 1.727481e-02 1.941549e-02 2.262734e-02 2.678843e-02 3.142433e-02 3.577454e-02 3.889687e-02 4.003469e-02 3.889919e-02 3.580897e-02 3.154463e-02 2.705166e-02 2.307374e-02 2.000842e-02 1.790489e-02 1.657669e-02 1.577778e-02 1.529788e-02 1.499892e-02 1.481474e-02 1.470940e-02 1.467143e-02 1.469104e-02 1.475679e-02 1.487391e-02 1.505896e-02 1.534361e-02 1.577929e-02 1.642325e-02 1.733228e-02 1.853735e-02 2.004703e-02 2.184644e-02 2.387336e-02 2.603393e-02 2.815782e-02 3.003323e-02 3.139374e-02 3.203966e-02 3.192604e-02 3.123055e-02 3.038470e-02 2.998139e-02 3.065009e-02 3.289676e-02 3.701671e-02 4.307712e-02 5.086653e-02 5.995129e-02 6.966591e-02 7.930240e-02 8.827257e-02 9.638095e-02 1.037302e-01 1.105264e-01 1.165762e-01 1.210113e-01 1.224899e-01 1.196586e-01 1.120051e-01 1.002512e-01 8.618137e-02 7.205521e-02 5.980185e-02 5.049425e-02 4.428172e-02 4.061937e-02 3.864335e-02 3.747955e-02 3.642290e-02 3.506387e-02 3.324710e-02 3.106209e-02 2.876767e-02 2.669977e-02 2.520987e-02 2.457728e-02 2.499707e-02 2.648193e-02 2.887184e-02 3.176174e-02 3.456608e-02 3.667691e-02 3.762236e-02 3.724922e-02 3.580043e-02 3.380660e-02 3.187182e-02 3.045908e-02 2.977148e-02 2.971270e-02 3.001944e-02 3.041681e-02 3.075011e-02 3.101298e-02 3.130822e-02 3.179078e-02 3.253170e-02 3.351945e-02 3.462915e-02 3.571365e-02 3.667695e-02 3.758303e-02 3.866494e-02 4.027967e-02 4.281583e-02 4.653904e-02 5.149496e-02 5.747344e-02 6.404365e-02 7.061357e-02 7.649008e-02 8.103240e-02 8.377204e-02 8.457741e-02 8.380190e-02 8.230594e-02 8.127104e-02 8.195547e-02 8.534883e-02 9.187558e-02 1.013145e-01 1.127058e-01 1.246398e-01 1.353630e-01 1.433132e-01 1.473929e-01 1.472327e-01 1.433047e-01 1.365952e-01 1.282503e-01 1.193392e-01 1.105156e-01 1.022401e-01 9.468098e-02 8.797711e-02 8.224747e-02 7.761085e-02 7.416056e-02 7.198931e-02 7.114602e-02 7.165571e-02 7.337998e-02 7.600115e-02 7.901163e-02 8.177898e-02 8.367791e-02 8.426686e-02 8.335435e-02 8.101560e-02 7.751170e-02 7.327433e-02 6.880258e-02 6.463172e-02 6.126107e-02 5.908980e-02 5.835032e-02 5.906301e-02 6.109468e-02 6.415823e-02 6.796421e-02 7.225248e-02 7.680279e-02 8.147113e-02 8.612853e-02 9.058285e-02 9.466316e-02 9.823870e-02 1.011886e-01 1.035286e-01 1.053333e-01 1.067440e-01 1.079174e-01 1.090583e-01 1.104837e-01 1.126586e-01 1.161335e-01 1.214423e-01 1.288369e-01 1.381146e-01 1.485602e-01 1.588256e-01 1.674083e-01 1.727201e-01 1.736402e-01 1.696879e-01 1.612326e-01 1.495303e-01 1.362882e-01 1.234640e-01 1.127698e-01 1.054388e-01 1.020342e-01 1.025131e-01 1.062534e-01 1.123110e-01 1.194815e-01 1.264256e-01 1.318933e-01 1.348174e-01 1.344700e-01 1.306536e-01 1.236877e-01 1.144032e-01 1.039220e-01 9.360708e-02 8.480969e-02 7.866173e-02 7.603874e-02 7.735974e-02 8.261928e-02 9.132136e-02 1.025315e-01 1.150385e-01 1.274103e-01 1.382597e-01 1.463724e-01 1.509071e-01 1.515031e-01 1.482767e-01 1.419191e-01 1.334031e-01 1.239387e-01 1.146420e-01 1.064880e-01 1.001887e-01 9.624775e-02 9.509525e-02 9.732065e-02 1.036757e-01 1.150874e-01 1.324177e-01 1.560677e-01 1.856379e-01 2.195624e-01 2.551554e-01 2.888038e-01 3.168318e-01 3.359547e-01 3.444396e-01 3.420780e-01 3.303844e-01 3.118778e-01 2.895295e-01 2.658668e-01 2.428213e-01 2.212948e-01 2.017458e-01 1.841945e-01 1.686717e-01 1.553676e-01 1.445404e-01 1.364816e-01 1.313645e-01 1.290803e-01 1.292384e-01 1.312609e-01 1.343915e-01 1.379384e-01 1.413262e-01 1.442193e-01 1.465485e-01 1.483971e-01 1.500546e-01 1.517530e-01 1.536184e-01 1.557193e-01 1.579236e-01 1.601639e-01 1.623731e-01 1.646399e-01 1.670350e-01 1.698152e-01 1.730618e-01 1.769374e-01 1.815212e-01 1.868741e-01 1.931546e-01 2.004084e-01 2.087449e-01 2.182350e-01 2.289485e-01 2.411758e-01 2.554815e-01 2.726770e-01 2.939425e-01 3.200649e-01 3.512131e-01 3.863536e-01 4.229357e-01 4.570218e-01 4.841734e-01 4.999039e-01 5.013641e-01 4.874719e-01 4.595282e-01 4.205678e-01 3.749545e-01 3.268251e-01 2.801105e-01 2.373814e-01 2.002979e-01 1.696811e-01 1.456953e-01 1.283087e-01 1.171853e-01 1.117336e-01 1.111830e-01 1.144438e-01 1.202473e-01 1.272612e-01 1.342299e-01 1.401901e-01 1.444630e-01 1.468650e-01 1.476074e-01 1.472542e-01 1.465885e-01 1.464608e-01 1.476736e-01 1.507600e-01 1.559780e-01 1.633150e-01 1.724791e-01 1.829246e-01 1.940085e-01 2.049837e-01 2.152246e-01 2.244065e-01 2.327033e-01 2.409878e-01 2.508929e-01 2.644527e-01 2.837222e-01 3.100251e-01 3.433217e-01 3.816870e-01 4.213345e-01 4.573215e-01 4.844231e-01 4.986162e-01 4.979621e-01 4.832623e-01 4.577881e-01 4.267439e-01 3.956000e-01 3.691144e-01 3.505500e-01 3.408016e-01 3.386721e-01 3.413882e-01 3.452520e-01 3.464735e-01 3.421088e-01 3.305348e-01 3.115778e-01 2.865380e-01 2.580398e-01 2.288698e-01 2.019887e-01 1.796882e-01 1.634784e-01 1.536581e-01 1.497941e-01 1.505910e-01 1.543188e-01 1.591736e-01 1.633716e-01 1.656745e-01 1.652715e-01 1.621054e-01 1.566075e-01 1.497948e-01 1.429298e-01 1.374611e-01 1.348433e-01 1.364498e-01 1.435896e-01 1.570558e-01 1.774720e-01 2.045688e-01 2.373000e-01 2.737662e-01 3.108869e-01 3.453497e-01 3.730618e-01 3.910341e-01 3.966219e-01 3.890383e-01 3.688241e-01 3.382712e-01 3.003840e-01 2.590054e-01 2.176273e-01 1.792287e-01 1.459246e-01 1.187491e-01 9.798927e-02 8.311429e-02 7.342973e-02 6.797767e-02 6.587774e-02 6.645924e-02 6.917038e-02 7.366753e-02 7.965225e-02 8.694151e-02 9.531619e-02 1.045103e-01 1.141863e-01 1.239792e-01 1.333794e-01 1.418762e-01 1.489286e-01 1.540050e-01 1.567615e-01 1.568773e-01 1.543491e-01 1.493279e-01 1.423075e-01 1.338703e-01 1.247658e-01 1.157333e-01 1.073719e-01 1.001201e-01 9.420325e-02 8.964473e-02 8.627237e-02 8.388523e-02 8.229964e-02 8.132565e-02 8.094210e-02 8.110908e-02 8.189426e-02 8.326154e-02 8.518560e-02 8.744240e-02 8.976917e-02 9.174517e-02 9.299629e-02 9.312330e-02 9.195739e-02 8.944342e-02 8.580258e-02 8.146352e-02 7.702404e-02 7.317113e-02 7.059464e-02 6.991352e-02 7.156548e-02 7.581916e-02 8.262137e-02 9.163277e-02 1.022298e-01 1.135139e-01 1.244265e-01 1.338693e-01 1.407796e-01 1.443673e-01 1.442064e-01 1.402826e-01 1.330119e-01 1.230954e-01 1.115578e-01 9.941429e-02 8.761284e-02 7.697950e-02 6.803692e-02 6.105994e-02 5.606893e-02 5.287570e-02 5.120715e-02 5.063899e-02 5.082233e-02 5.139399e-02 5.208449e-02 5.272366e-02 5.323832e-02 5.364620e-02 5.406634e-02 5.464032e-02 5.552865e-02 5.689876e-02 5.883139e-02 6.141252e-02 6.460301e-02 6.834016e-02 7.248966e-02 7.683268e-02 8.114715e-02 8.510395e-02 8.842568e-02 9.076718e-02 9.191171e-02 9.166237e-02 8.997043e-02 8.688658e-02 8.266128e-02 7.755098e-02 7.196231e-02 6.627716e-02 6.086219e-02 5.599710e-02 5.186911e-02 4.860430e-02 4.617700e-02 4.451559e-02 4.351124e-02 4.299904e-02 4.284149e-02 4.288455e-02 4.301558e-02 4.315296e-02 4.322998e-02 4.322897e-02 4.313906e-02 4.296270e-02 4.273370e-02 4.247033e-02 4.220642e-02 4.200161e-02 4.191794e-02 4.203379e-02 4.245622e-02 4.328645e-02 4.460511e-02 4.648639e-02 4.893239e-02 5.188963e-02 5.521946e-02 5.872311e-02 6.217858e-02 6.531731e-02 6.788346e-02 6.970774e-02 7.068640e-02 7.078006e-02 7.008693e-02 6.877312e-02 6.700395e-02 6.505055e-02 6.308149e-02 6.127493e-02 5.978223e-02 5.867103e-02 5.801347e-02 5.785267e-02 5.822068e-02 5.917467e-02 6.075981e-02 6.298642e-02 6.587019e-02 6.934201e-02 7.327354e-02 7.745162e-02 8.158727e-02 8.533923e-02 8.834623e-02 9.026245e-02 9.084806e-02 8.992314e-02 8.747995e-02 8.365345e-02 7.872335e-02 7.306230e-02 6.710069e-02 6.127533e-02 5.597300e-02 5.150450e-02 4.804793e-02 4.570991e-02 4.443522e-02 4.412024e-02 4.456296e-02 4.554526e-02 4.683869e-02 4.823024e-02 4.954845e-02 5.068284e-02 5.156695e-02 5.222874e-02 5.271247e-02 5.312491e-02 5.355016e-02 5.409438e-02 5.478712e-02 5.562387e-02 5.653435e-02 5.740311e-02 5.806773e-02 5.837980e-02 5.821181e-02 5.750111e-02 5.622346e-02 5.446108e-02 5.236157e-02 5.010449e-02 4.791387e-02 4.601317e-02 4.458081e-02 4.377587e-02 4.369896e-02 4.439860e-02 4.587392e-02 4.811222e-02 5.103304e-02 5.458900e-02 5.869060e-02 6.321580e-02 6.809575e-02 7.312088e-02 7.811014e-02 8.288641e-02 8.709094e-02 9.054532e-02 9.292970e-02 9.408378e-02 9.388506e-02 9.230797e-02 8.949626e-02 8.564196e-02 8.105666e-02 7.609256e-02 7.110421e-02 6.636592e-02 6.218146e-02 5.869220e-02 5.600199e-02 5.409336e-02 5.296957e-02 5.250857e-02 5.261074e-02 5.316489e-02 5.403941e-02 5.513849e-02 5.639083e-02 5.772044e-02 5.911822e-02 6.060733e-02 6.221499e-02 6.401388e-02 6.609240e-02 6.851446e-02 7.130758e-02 7.450299e-02 7.801271e-02 8.171752e-02 8.546782e-02 8.898570e-02 9.203218e-02 9.440224e-02 9.581297e-02 9.618631e-02 9.544755e-02 9.363999e-02 9.093573e-02 8.753039e-02 8.370419e-02 7.977260e-02 7.595400e-02 7.251474e-02 6.961523e-02 6.732117e-02 6.565882e-02 6.460882e-02 6.407105e-02 6.396332e-02 6.414643e-02 6.455037e-02 6.504062e-02 6.555298e-02 6.599803e-02 6.628097e-02 6.636107e-02 6.618893e-02 6.569220e-02 6.488925e-02 6.375561e-02 6.234799e-02 6.070256e-02 5.892812e-02 5.709740e-02 5.530373e-02 5.365790e-02 5.222506e-02 5.104967e-02 5.017841e-02 4.958732e-02 4.926248e-02 4.915349e-02 4.919810e-02 4.932224e-02 4.946959e-02 4.958659e-02 4.962479e-02 4.956889e-02 4.942204e-02 4.920171e-02 4.892929e-02 4.863225e-02 4.834063e-02 4.806793e-02 4.780424e-02 4.753727e-02 4.724301e-02 4.689559e-02 4.646798e-02 4.595516e-02 4.535547e-02 4.470073e-02 4.403594e-02 4.342206e-02 4.291833e-02 4.257498e-02 4.244484e-02 4.255816e-02 4.292469e-02 4.351524e-02 4.428694e-02 4.518463e-02 4.614192e-02 4.707344e-02 4.792236e-02 4.863367e-02 4.919083e-02 4.960108e-02 4.992980e-02 5.026712e-02 5.076668e-02 5.160429e-02 5.297447e-02 5.507466e-02 5.810368e-02 6.219076e-02 6.738140e-02 7.365373e-02 8.088040e-02 8.880173e-02 9.706333e-02 1.052181e-01 1.127918e-01 1.193269e-01 1.243658e-01 1.275751e-01 1.287551e-01 1.278546e-01 1.249717e-01 1.203603e-01 1.143974e-01 1.075177e-01 1.001473e-01 9.273295e-02 8.561778e-02 7.904862e-02 7.318617e-02 6.810142e-02 6.375766e-02 6.005700e-02 5.687579e-02 5.407891e-02 5.153964e-02 4.917748e-02 4.691409e-02 4.473096e-02 4.262886e-02 4.062238e-02 3.875209e-02 3.704769e-02 3.553650e-02 3.424054e-02 3.316951e-02 3.231885e-02 3.167114e-02 3.122192e-02 3.093136e-02 3.077792e-02 3.073281e-02 3.077781e-02 3.088764e-02 3.103901e-02 3.121867e-02 3.140338e-02 3.158373e-02 3.173696e-02 3.184798e-02 3.191121e-02 3.190902e-02 3.185123e-02 3.173124e-02 3.156145e-02 3.135930e-02 3.114012e-02 3.092863e-02 3.073441e-02 3.059448e-02 3.050481e-02 3.047898e-02 3.053159e-02 3.064474e-02 3.082954e-02 3.106789e-02 3.136651e-02 3.171415e-02 3.211037e-02 3.254925e-02 3.303283e-02 3.355179e-02 3.411279e-02 3.468998e-02 3.528071e-02 3.585969e-02 3.640665e-02 3.689610e-02 3.730107e-02 3.760184e-02 3.776967e-02 3.780217e-02 3.768735e-02 3.743310e-02 3.705826e-02 3.657759e-02 3.602962e-02 3.543808e-02 3.483941e-02 3.426621e-02 3.374122e-02 3.328541e-02 3.290081e-02 3.259362e-02 3.235401e-02 3.216406e-02 3.201303e-02 3.187137e-02 3.172553e-02 3.155213e-02 3.134083e-02 3.107705e-02 3.075692e-02 3.037579e-02 2.993379e-02 2.943638e-02 2.889460e-02 2.830463e-02 2.768363e-02 2.704750e-02 2.639761e-02 2.575482e-02 2.512990e-02 2.453788e-02 2.399039e-02 2.350484e-02 2.308945e-02 2.275909e-02 2.252221e-02 2.238625e-02 2.235680e-02 2.244469e-02 2.264470e-02 2.296187e-02 2.339290e-02 2.393052e-02 2.456332e-02 2.527588e-02 2.604855e-02 2.685520e-02 2.766604e-02 2.844876e-02 2.916972e-02 2.979626e-02 3.029870e-02 3.065287e-02 3.084193e-02 3.085752e-02 3.070120e-02 3.038393e-02 2.992721e-02 2.934987e-02 2.869184e-02 2.797919e-02 2.724446e-02 2.652719e-02 2.584056e-02 2.521381e-02 2.466162e-02 2.418969e-02 2.380270e-02 2.349925e-02 2.327361e-02 2.311923e-02 2.302243e-02 2.297454e-02 2.296682e-02 2.298642e-02 2.303144e-02 2.308639e-02 2.315653e-02 2.323498e-02 2.332557e-02 2.343287e-02 2.356011e-02 2.372002e-02 2.391714e-02 2.416391e-02 2.447658e-02 2.486029e-02 2.532524e-02 2.587783e-02 2.652392e-02 2.726113e-02 2.808502e-02 2.899094e-02 2.995990e-02 3.098652e-02 3.203778e-02 3.309770e-02 3.414988e-02 3.515167e-02 3.608724e-02 3.693713e-02 3.765615e-02 3.823246e-02 3.864083e-02 3.886662e-02 3.889018e-02 3.870406e-02 3.831214e-02 3.771332e-02 3.692056e-02 3.595935e-02 3.485282e-02 3.363115e-02 3.233345e-02 3.099724e-02 2.965624e-02 2.834015e-02 2.708222e-02 2.591196e-02 2.483657e-02 2.387439e-02 2.302536e-02 2.229538e-02 2.167725e-02 2.116177e-02 2.074169e-02 2.040478e-02 2.014093e-02 1.993489e-02 1.978145e-02 1.967692e-02 1.960333e-02 1.955907e-02 1.954215e-02 1.954648e-02 1.957158e-02 1.961806e-02 1.968934e-02 1.978845e-02 1.992133e-02 2.009986e-02 2.033794e-02 2.064743e-02 2.106782e-02 2.160060e-02 2.228026e-02 2.314903e-02 2.422250e-02 2.554848e-02 2.716220e-02 2.907664e-02 3.134478e-02 3.396232e-02 3.694187e-02 4.032141e-02 4.403824e-02 4.812128e-02 5.251339e-02 5.719876e-02 6.215629e-02 6.728717e-02 7.261786e-02 7.806341e-02 8.359739e-02 8.917036e-02 9.475199e-02 1.003016e-01 1.057335e-01 1.109970e-01 1.160651e-01 1.207167e-01 1.249550e-01 1.286042e-01 1.315399e-01 1.336137e-01 1.347618e-01 1.347759e-01 1.337189e-01 1.314346e-01 1.280278e-01 1.234772e-01 1.179685e-01 1.115709e-01 1.044976e-01 9.696957e-02 8.910289e-02 8.125906e-02 7.344847e-02 6.601310e-02 5.897919e-02 5.249888e-02 4.665868e-02 4.143824e-02 3.693367e-02 3.302546e-02 2.977225e-02 2.704789e-02 2.483694e-02 2.304060e-02 2.162692e-02 2.050925e-02 1.964877e-02 1.898176e-02 1.847804e-02 1.809634e-02 1.781158e-02 1.759878e-02 1.744076e-02 1.732485e-02 1.723997e-02 1.718054e-02 1.713791e-02 1.710821e-02 1.708524e-02 1.708095e-02 1.708288e-02 1.709447e-02 1.711265e-02 1.714295e-02 1.718724e-02 1.724244e-02 1.731269e-02 1.739881e-02 1.750826e-02 1.764597e-02 1.781433e-02 1.802512e-02 1.828370e-02 1.860180e-02 1.899382e-02 1.947207e-02 2.005496e-02 2.076631e-02 2.162156e-02 2.265251e-02 2.388165e-02 2.533748e-02 2.704876e-02 2.903678e-02 3.132543e-02 3.393070e-02 3.685523e-02 4.009501e-02 4.363090e-02 4.742566e-02 5.143354e-02 5.558042e-02 5.978511e-02 6.395284e-02 6.797028e-02 7.171602e-02 7.507617e-02 7.794705e-02 8.020098e-02 8.177715e-02 8.260181e-02 8.263209e-02 8.186999e-02 8.032754e-02 7.806997e-02 7.514877e-02 7.169153e-02 6.778821e-02 6.357250e-02 5.917427e-02 5.471198e-02 5.030258e-02 4.603048e-02 4.200869e-02 3.826419e-02 3.487194e-02 3.183772e-02 2.918503e-02 2.689443e-02 2.495506e-02 2.332954e-02 2.199946e-02 2.091428e-02 2.004317e-02 1.934991e-02 1.880764e-02 1.837454e-02 1.803729e-02 1.777036e-02 1.755382e-02 1.737650e-02 1.723063e-02 1.710652e-02 1.699643e-02 1.689888e-02 1.681363e-02 1.673708e-02 1.666426e-02 1.659749e-02 1.654788e-02 1.649891e-02 1.646266e-02 1.642933e-02 1.640270e-02 1.638516e-02 1.637488e-02 1.636892e-02 1.637262e-02 1.638298e-02 1.639823e-02 1.642057e-02 1.645541e-02 1.649156e-02 1.653381e-02 1.658539e-02 1.663856e-02 1.669601e-02 1.676124e-02 1.682601e-02 1.689487e-02 1.696374e-02 1.703691e-02 1.711209e-02 1.719004e-02 1.727011e-02 1.735760e-02 1.745350e-02 1.755770e-02 1.768238e-02 1.782052e-02 1.798680e-02 1.817797e-02 1.840960e-02 1.867337e-02 1.898340e-02 1.933712e-02 1.973709e-02 2.018216e-02 2.066947e-02 2.120032e-02 2.175429e-02 2.234161e-02 2.292639e-02 2.351892e-02 2.408156e-02 2.461765e-02 2.510616e-02 2.552104e-02 2.586501e-02 2.611224e-02 2.626306e-02 2.630505e-02 2.623563e-02 2.606231e-02 2.578501e-02 2.540459e-02 2.494700e-02 2.441457e-02 2.382130e-02 2.319126e-02 2.253757e-02 2.186831e-02 2.120920e-02 2.056751e-02 1.995125e-02 1.938111e-02 1.884504e-02 1.836445e-02 1.793404e-02 1.754962e-02 1.721611e-02 1.692794e-02 1.668604e-02 1.647721e-02 1.630564e-02 1.616352e-02 1.604902e-02 1.595507e-02 1.588471e-02 1.583008e-02 1.579290e-02 1.577159e-02 1.576507e-02 1.577570e-02 1.580072e-02 1.583977e-02 1.590037e-02 1.597311e-02 1.606490e-02 1.617418e-02 1.629803e-02 1.643772e-02 1.659028e-02 1.675561e-02 1.693089e-02 1.710794e-02 1.728629e-02 1.746764e-02 1.763802e-02 1.779731e-02 1.794593e-02 1.807130e-02 1.817598e-02 1.825684e-02 1.831265e-02 1.833992e-02 1.834259e-02 1.831795e-02 1.826935e-02 1.820352e-02 1.811994e-02 1.802311e-02 1.792485e-02 1.782134e-02 1.772587e-02 1.763826e-02 1.756423e-02 1.751555e-02 1.748511e-02 1.748703e-02 1.751655e-02 1.758233e-02 1.767889e-02 1.780839e-02 1.797071e-02 1.816223e-02 1.839011e-02 1.863829e-02 1.891246e-02 1.920634e-02 1.951170e-02 1.982841e-02 2.014890e-02 2.047108e-02 2.078588e-02 2.109410e-02 2.138498e-02 2.165684e-02 2.191391e-02 2.214581e-02 2.236106e-02 2.256208e-02 2.275019e-02 2.293500e-02 2.312679e-02 2.333219e-02 2.356812e-02 2.384236e-02 2.418295e-02 2.459190e-02 2.509032e-02 2.569379e-02 2.641506e-02 2.727060e-02 2.826138e-02 2.940150e-02 3.069808e-02 3.214959e-02 3.374832e-02 3.548722e-02 3.736473e-02 3.935855e-02 4.145062e-02 4.361828e-02 4.584774e-02 4.808928e-02 5.033109e-02 5.252603e-02 5.465641e-02 5.667321e-02 5.853907e-02 6.023129e-02 6.171171e-02 6.294749e-02 6.391215e-02 6.458707e-02 6.495209e-02 6.498787e-02 6.470957e-02 6.408674e-02 6.315641e-02 6.190858e-02 6.038803e-02 5.859340e-02 5.657756e-02 5.437187e-02 5.200661e-02 4.953304e-02 4.698608e-02 4.440842e-02 4.182286e-02 3.927990e-02 3.681092e-02 3.444877e-02 3.219855e-02 3.009421e-02 2.813456e-02 2.633094e-02 2.469116e-02 2.320545e-02 2.188307e-02 2.070981e-02 1.967218e-02 1.876859e-02 1.797937e-02 1.729791e-02 1.671467e-02 1.621789e-02 1.579843e-02 1.544256e-02 1.514609e-02 1.490207e-02 1.470508e-02 1.454954e-02 1.442685e-02 1.433933e-02 1.427933e-02 1.424755e-02 1.423530e-02 1.424979e-02 1.428413e-02 1.433449e-02 1.440492e-02 1.448929e-02 1.458930e-02 1.469784e-02 1.482283e-02 1.495600e-02 1.509857e-02 1.524554e-02 1.539666e-02 1.554483e-02 1.569007e-02 1.583078e-02 1.595975e-02 1.607266e-02 1.616358e-02 1.623061e-02 1.627017e-02 1.627265e-02 1.623242e-02 1.614724e-02 1.601590e-02 1.583132e-02 1.559113e-02 1.529309e-02 1.493951e-02 1.452807e-02 1.406282e-02 1.354386e-02 ''') ImportString(u'fluxdelta(numeric)',''' 6.717000e+02 -3.561610e+01 -2.633984e+00 -3.129430e-01 1.666874e-01 -8.484430e-03 1.804276e-03 3.693617e-03 -4.087228e-04 1.365671e-03 -5.288830e-04 6.490390e-04 3.817240e-04 2.658840e-04 1.563056e-04 3.080680e-04 1.175751e-04 1.451300e-06 -1.818070e-05 8.834710e-05 6.513680e-05 1.187130e-04 2.168114e-04 4.193800e-04 4.341460e-04 1.143590e-03 1.568020e-03 1.912550e-03 2.722921e-03 2.798980e-03 2.224180e-03 1.184510e-03 1.666638e-03 1.154786e-03 1.211271e-03 9.903440e-04 1.085550e-03 9.823460e-04 9.830990e-04 1.063291e-03 1.044319e-03 8.725200e-04 9.690490e-04 1.037582e-03 1.139343e-03 1.067455e-03 9.966070e-04 7.403760e-04 7.110140e-04 8.018580e-04 7.857960e-04 8.050660e-04 7.357120e-04 8.008380e-04 6.144540e-04 5.787430e-04 6.268490e-04 6.103750e-04 5.726350e-04 6.020570e-04 5.193810e-04 4.530740e-04 5.553090e-04 5.810250e-04 6.288400e-04 6.092290e-04 5.501350e-04 5.639660e-04 5.311350e-04 5.593780e-04 5.034180e-04 5.230310e-04 5.447630e-04 3.832260e-04 5.639030e-04 5.085020e-04 6.083480e-04 6.059530e-04 5.551990e-04 5.257730e-04 5.815220e-04 6.213310e-04 6.409640e-04 6.142480e-04 5.756760e-04 5.605620e-04 6.908950e-04 7.122050e-04 7.171920e-04 7.597840e-04 8.048950e-04 7.890000e-04 7.510910e-04 6.976010e-04 6.585580e-04 6.521280e-04 6.003590e-04 6.524040e-04 5.868290e-04 5.523690e-04 5.973120e-04 5.266330e-04 5.820150e-04 5.820970e-04 5.934070e-04 5.957240e-04 5.966650e-04 5.550510e-04 6.392550e-04 5.402950e-04 5.725810e-04 5.674630e-04 6.107510e-04 5.200120e-04 5.561230e-04 5.302810e-04 4.995950e-04 4.905590e-04 5.799510e-04 5.670650e-04 5.462020e-04 5.767870e-04 5.873630e-04 5.904430e-04 5.915170e-04 6.614370e-04 6.329740e-04 5.626190e-04 5.911980e-04 6.229200e-04 6.789840e-04 6.951420e-04 6.874660e-04 7.938290e-04 8.608890e-04 8.534310e-04 1.035960e-03 1.046371e-03 1.175078e-03 1.114799e-03 1.084971e-03 1.151934e-03 8.935620e-04 1.016095e-03 1.000131e-03 1.092747e-03 1.191336e-03 1.429210e-03 1.361740e-03 1.328258e-03 1.501993e-03 1.344970e-03 1.386170e-03 1.306730e-03 1.275663e-03 1.142598e-03 1.112382e-03 1.073456e-03 9.359650e-04 9.922390e-04 9.385760e-04 1.182843e-03 1.145800e-03 1.182230e-03 1.054130e-03 1.021000e-03 9.440010e-04 8.509160e-04 8.455930e-04 9.099220e-04 1.030766e-03 1.095160e-03 1.004290e-03 8.589430e-04 8.748940e-04 8.570450e-04 7.116170e-04 6.705050e-04 5.868400e-04 6.365450e-04 6.337050e-04 5.576220e-04 5.953490e-04 5.522500e-04 5.456940e-04 5.697350e-04 5.255300e-04 5.301010e-04 5.654500e-04 4.940900e-04 4.632660e-04 4.663710e-04 4.903050e-04 4.204920e-04 4.616460e-04 4.475270e-04 4.871740e-04 4.697840e-04 4.752310e-04 4.217890e-04 4.725650e-04 4.191410e-04 4.272820e-04 3.585950e-04 4.536560e-04 3.619670e-04 3.725620e-04 3.562350e-04 4.285610e-04 4.276540e-04 3.878030e-04 4.073330e-04 4.123430e-04 3.329440e-04 3.465390e-04 4.070180e-04 4.006760e-04 3.757300e-04 3.756360e-04 3.704940e-04 3.410260e-04 3.928340e-04 3.932720e-04 3.821400e-04 3.529390e-04 3.855900e-04 3.630250e-04 3.797910e-04 3.591320e-04 3.480130e-04 3.478810e-04 3.685470e-04 3.415510e-04 3.589730e-04 3.526730e-04 3.233800e-04 3.694400e-04 3.497530e-04 3.187230e-04 2.844270e-04 3.342290e-04 3.650240e-04 3.402130e-04 3.353090e-04 3.282540e-04 3.750370e-04 3.438710e-04 3.654720e-04 4.282800e-04 3.945260e-04 3.393770e-04 3.284350e-04 3.305000e-04 2.884100e-04 3.889250e-04 3.178000e-04 3.878830e-04 3.272550e-04 3.107630e-04 2.545320e-04 2.719750e-04 2.726380e-04 2.597000e-04 2.907110e-04 2.954530e-04 3.018980e-04 2.857470e-04 2.999590e-04 3.357510e-04 2.832120e-04 2.767450e-04 2.326550e-04 3.005720e-04 2.920610e-04 3.141140e-04 3.216020e-04 2.960590e-04 2.944700e-04 2.763350e-04 2.979940e-04 3.319700e-04 2.778910e-04 2.417580e-04 3.229890e-04 3.201030e-04 2.907760e-04 2.646430e-04 2.946820e-04 3.108890e-04 2.797630e-04 2.683120e-04 2.958500e-04 3.097440e-04 2.564920e-04 2.516520e-04 2.997480e-04 2.566980e-04 2.582030e-04 2.536970e-04 3.009910e-04 2.794110e-04 3.321000e-04 3.129720e-04 3.275780e-04 3.546300e-04 3.712930e-04 3.761030e-04 4.286590e-04 4.936920e-04 4.735100e-04 4.801770e-04 4.532160e-04 4.423920e-04 3.954850e-04 3.871190e-04 3.474280e-04 3.097730e-04 2.737510e-04 2.717590e-04 2.583780e-04 2.582910e-04 2.390110e-04 2.331360e-04 2.443010e-04 2.723400e-04 2.603230e-04 2.408420e-04 2.263050e-04 2.833230e-04 2.149030e-04 2.936090e-04 2.517280e-04 2.234850e-04 2.514080e-04 2.662640e-04 2.771341e-04 2.045980e-04 2.326200e-04 1.810080e-04 2.006930e-04 2.410869e-04 2.597670e-04 1.867650e-04 1.901810e-04 1.916060e-04 2.093840e-04 1.955350e-04 2.565323e-04 2.037630e-04 2.192890e-04 1.968890e-04 2.704350e-04 2.173030e-04 1.760550e-04 1.725550e-04 2.216570e-04 1.926800e-04 2.033300e-04 2.158710e-04 1.716700e-04 1.582780e-04 1.991770e-04 1.960138e-04 2.370170e-04 1.977810e-04 1.855390e-04 2.126740e-04 1.549110e-04 1.961817e-04 2.122756e-04 1.861810e-04 1.654960e-04 1.791040e-04 1.820382e-04 2.405400e-04 1.242870e-04 1.501890e-04 1.754070e-04 1.639110e-04 2.381120e-04 2.045289e-04 1.997290e-04 1.934369e-04 1.827496e-04 1.725970e-04 2.004060e-04 2.467260e-04 1.736524e-04 1.935626e-04 2.078940e-04 2.016694e-04 1.329370e-04 2.095750e-04 2.004050e-04 2.036510e-04 1.409750e-04 1.874660e-04 2.163860e-04 2.560420e-04 2.817640e-04 1.715350e-04 2.116253e-04 2.174337e-04 2.128890e-04 2.452477e-04 2.027280e-04 1.742880e-04 2.697750e-04 2.191001e-04 2.379300e-04 1.765414e-04 2.417760e-04 2.599460e-04 2.425280e-04 2.192800e-04 2.232400e-04 2.113760e-04 1.629280e-04 2.081210e-04 1.732400e-04 1.752260e-04 2.160630e-04 2.113760e-04 2.080540e-04 1.746560e-04 2.258920e-04 1.885590e-04 1.922150e-04 1.844450e-04 2.215070e-04 1.965130e-04 1.940840e-04 2.119450e-04 1.637660e-04 2.243845e-04 1.360420e-04 1.471400e-04 2.076640e-04 1.943850e-04 1.922470e-04 2.383790e-04 2.052120e-04 2.432040e-04 2.247140e-04 2.567180e-04 2.139320e-04 1.633140e-04 1.947410e-04 2.109570e-04 1.937080e-04 1.842980e-04 1.945543e-04 2.099910e-04 2.205876e-04 1.979450e-04 1.687580e-04 1.535724e-04 1.834060e-04 1.859900e-04 1.792050e-04 1.419200e-04 1.621900e-04 1.986970e-04 1.983040e-04 1.677530e-04 1.642669e-04 1.974400e-04 1.395610e-04 1.750930e-04 1.632730e-04 1.397360e-04 1.573330e-04 1.414000e-04 1.795304e-04 1.730704e-04 1.715630e-04 1.949779e-04 1.283499e-04 1.524801e-04 1.779290e-04 1.161499e-04 1.327065e-04 1.278147e-04 1.491756e-04 1.229560e-04 1.148103e-04 1.509306e-04 1.731482e-04 1.551801e-04 1.381020e-04 1.314114e-04 1.472286e-04 1.344098e-04 9.988500e-05 1.303773e-04 1.125189e-04 1.289554e-04 1.432523e-04 1.366576e-04 1.322329e-04 1.305178e-04 1.389109e-04 1.662667e-04 1.336500e-04 1.511033e-04 1.114740e-04 1.503991e-04 8.616450e-05 1.101235e-04 1.220796e-04 1.961011e-04 1.292899e-04 1.188529e-04 1.527593e-04 1.467474e-04 1.307397e-04 1.303567e-04 9.265100e-05 1.402299e-04 1.396071e-04 1.621164e-04 9.949000e-05 8.862500e-05 1.337413e-04 1.507454e-04 1.300908e-04 1.180810e-04 1.695171e-04 1.506108e-04 1.511222e-04 1.328891e-04 8.778500e-05 1.785397e-04 1.243030e-04 1.716250e-04 1.131539e-04 9.775700e-05 1.678777e-04 9.306360e-05 6.967600e-05 1.603941e-04 1.383674e-04 1.824313e-04 1.388680e-04 1.443963e-04 8.206050e-05 1.675730e-04 1.738365e-04 9.086570e-05 9.601010e-05 1.285800e-04 8.368130e-05 1.200650e-04 6.754500e-05 9.305390e-05 8.082300e-05 7.390220e-05 6.676980e-05 1.203748e-04 9.672520e-05 8.817890e-05 7.994050e-05 -2.145500e-06 9.684500e-05 8.395420e-05 7.960260e-05 8.858920e-05 5.647990e-05 8.551250e-05 9.489980e-05 7.905970e-05 1.397891e-04 5.177580e-05 3.493470e-05 5.694900e-05 1.088608e-04 3.834760e-05 1.419521e-04 2.437100e-05 8.814820e-05 4.774260e-05 7.964050e-05 6.217990e-05 1.038021e-04 4.539770e-05 3.924990e-05 6.820190e-05 3.358830e-05 5.617550e-05 9.187220e-05 3.288800e-05 1.101645e-04 8.979560e-05 7.725220e-05 6.045450e-05 4.963690e-05 -2.433130e-06 5.946890e-05 6.741660e-05 6.040447e-05 -1.638516e-04 9.904860e-05 8.863740e-05 6.709960e-05 7.319323e-05 4.790710e-05 1.381440e-04 6.582190e-05 5.355960e-05 -2.700230e-05 ''') ImportString(u'lambda_model(numeric),+-',''' 3.098155e+01 1.449783e-02 3.095257e+01 1.448427e-02 3.092361e+01 1.447072e-02 3.089469e+01 1.445718e-02 3.086578e+01 1.444366e-02 3.083691e+01 1.443015e-02 3.080806e+01 1.441665e-02 3.077924e+01 1.440316e-02 3.075045e+01 1.438969e-02 3.072169e+01 1.437623e-02 3.069295e+01 1.436278e-02 3.066423e+01 1.434934e-02 3.063555e+01 1.433592e-02 3.060689e+01 1.432251e-02 3.057826e+01 1.430911e-02 3.054965e+01 1.429573e-02 3.052108e+01 1.428235e-02 3.049253e+01 1.426899e-02 3.046400e+01 1.425564e-02 3.043550e+01 1.424231e-02 3.040703e+01 1.422899e-02 3.037859e+01 1.421567e-02 3.035017e+01 1.420238e-02 3.032178e+01 1.418909e-02 3.029341e+01 1.417582e-02 3.026507e+01 1.416256e-02 3.023676e+01 1.414931e-02 3.020848e+01 1.413607e-02 3.018022e+01 1.412285e-02 3.015198e+01 1.410964e-02 3.012378e+01 1.409644e-02 3.009560e+01 1.408325e-02 3.006745e+01 1.407008e-02 3.003932e+01 1.405691e-02 3.001122e+01 1.404376e-02 2.998314e+01 1.403063e-02 2.995510e+01 1.401750e-02 2.992707e+01 1.400439e-02 2.989908e+01 1.399129e-02 2.987111e+01 1.397820e-02 2.984316e+01 1.396512e-02 2.981525e+01 1.395206e-02 2.978736e+01 1.393901e-02 2.975949e+01 1.392597e-02 2.973165e+01 1.391294e-02 2.970384e+01 1.389993e-02 2.967605e+01 1.388692e-02 2.964829e+01 1.387393e-02 2.962056e+01 1.386095e-02 2.959285e+01 1.384799e-02 2.956516e+01 1.383503e-02 2.953751e+01 1.382209e-02 2.950988e+01 1.380916e-02 2.948227e+01 1.379624e-02 2.945469e+01 1.378334e-02 2.942714e+01 1.377044e-02 2.939961e+01 1.375756e-02 2.937211e+01 1.374469e-02 2.934463e+01 1.373184e-02 2.931718e+01 1.371899e-02 2.928975e+01 1.370616e-02 2.926236e+01 1.369333e-02 2.923498e+01 1.368052e-02 2.920763e+01 1.366773e-02 2.918031e+01 1.365494e-02 2.915301e+01 1.364217e-02 2.912574e+01 1.362941e-02 2.909850e+01 1.361666e-02 2.907128e+01 1.360392e-02 2.904408e+01 1.359119e-02 2.901691e+01 1.357848e-02 2.898977e+01 1.356578e-02 2.896265e+01 1.355309e-02 2.893555e+01 1.354041e-02 2.890849e+01 1.352774e-02 2.888144e+01 1.351509e-02 2.885443e+01 1.350244e-02 2.882743e+01 1.348981e-02 2.880047e+01 1.347719e-02 2.877353e+01 1.346459e-02 2.874661e+01 1.345199e-02 2.871972e+01 1.343941e-02 2.869285e+01 1.342683e-02 2.866601e+01 1.341427e-02 2.863919e+01 1.340173e-02 2.861240e+01 1.338919e-02 2.858564e+01 1.337666e-02 2.855890e+01 1.336415e-02 2.853218e+01 1.335165e-02 2.850549e+01 1.333916e-02 2.847882e+01 1.332668e-02 2.845218e+01 1.331421e-02 2.842557e+01 1.330176e-02 2.839898e+01 1.328931e-02 2.837241e+01 1.327688e-02 2.834587e+01 1.326446e-02 2.831935e+01 1.325206e-02 2.829286e+01 1.323966e-02 2.826639e+01 1.322727e-02 2.823995e+01 1.321490e-02 2.821353e+01 1.320254e-02 2.818714e+01 1.319019e-02 2.816077e+01 1.317785e-02 2.813443e+01 1.316552e-02 2.810811e+01 1.315320e-02 2.808182e+01 1.314090e-02 2.805555e+01 1.312861e-02 2.802930e+01 1.311633e-02 2.800308e+01 1.310406e-02 2.797688e+01 1.309180e-02 2.795071e+01 1.307955e-02 2.792457e+01 1.306732e-02 2.789845e+01 1.305509e-02 2.787235e+01 1.304288e-02 2.784627e+01 1.303068e-02 2.782022e+01 1.301849e-02 2.779420e+01 1.300631e-02 2.776820e+01 1.299414e-02 2.774222e+01 1.298199e-02 2.771627e+01 1.296984e-02 2.769034e+01 1.295771e-02 2.766444e+01 1.294559e-02 2.763856e+01 1.293348e-02 2.761271e+01 1.292138e-02 2.758688e+01 1.290929e-02 2.756107e+01 1.289722e-02 2.753529e+01 1.288515e-02 2.750953e+01 1.287310e-02 2.748379e+01 1.286106e-02 2.745808e+01 1.284902e-02 2.743240e+01 1.283700e-02 2.740674e+01 1.282500e-02 2.738110e+01 1.281300e-02 2.735548e+01 1.280101e-02 2.732989e+01 1.278904e-02 2.730433e+01 1.277707e-02 2.727879e+01 1.276512e-02 2.725327e+01 1.275318e-02 2.722777e+01 1.274125e-02 2.720230e+01 1.272933e-02 2.717686e+01 1.271742e-02 2.715143e+01 1.270553e-02 2.712603e+01 1.269364e-02 2.710066e+01 1.268177e-02 2.707531e+01 1.266990e-02 2.704998e+01 1.265805e-02 2.702467e+01 1.264621e-02 2.699939e+01 1.263438e-02 2.697414e+01 1.262256e-02 2.694890e+01 1.261075e-02 2.692369e+01 1.259896e-02 2.689851e+01 1.258717e-02 2.687334e+01 1.257540e-02 2.684821e+01 1.256363e-02 2.682309e+01 1.255188e-02 2.679800e+01 1.254014e-02 2.677293e+01 1.252841e-02 2.674788e+01 1.251669e-02 2.672286e+01 1.250498e-02 2.669786e+01 1.249328e-02 2.667289e+01 1.248159e-02 2.664794e+01 1.246992e-02 2.662301e+01 1.245825e-02 2.659810e+01 1.244660e-02 2.657322e+01 1.243495e-02 2.654836e+01 1.242332e-02 2.652353e+01 1.241170e-02 2.649872e+01 1.240009e-02 2.647393e+01 1.238849e-02 2.644917e+01 1.237690e-02 2.642442e+01 1.236532e-02 2.639970e+01 1.235375e-02 2.637501e+01 1.234220e-02 2.635033e+01 1.233065e-02 2.632569e+01 1.231912e-02 2.630106e+01 1.230759e-02 2.627645e+01 1.229608e-02 2.625187e+01 1.228458e-02 2.622732e+01 1.227309e-02 2.620278e+01 1.226160e-02 2.617827e+01 1.225013e-02 2.615378e+01 1.223867e-02 2.612931e+01 1.222723e-02 2.610487e+01 1.221579e-02 2.608045e+01 1.220436e-02 2.605606e+01 1.219294e-02 2.603168e+01 1.218154e-02 2.600733e+01 1.217014e-02 2.598300e+01 1.215876e-02 2.595869e+01 1.214738e-02 2.593441e+01 1.213602e-02 2.591015e+01 1.212467e-02 2.588591e+01 1.211333e-02 2.586170e+01 1.210199e-02 2.583750e+01 1.209067e-02 2.581333e+01 1.207936e-02 2.578919e+01 1.206806e-02 2.576506e+01 1.205677e-02 2.574096e+01 1.204550e-02 2.571688e+01 1.203423e-02 2.569282e+01 1.202297e-02 2.566879e+01 1.201172e-02 2.564478e+01 1.200049e-02 2.562078e+01 1.198926e-02 2.559682e+01 1.197804e-02 2.557287e+01 1.196684e-02 2.554895e+01 1.195564e-02 2.552505e+01 1.194446e-02 2.550117e+01 1.193329e-02 2.547732e+01 1.192212e-02 2.545348e+01 1.191097e-02 2.542967e+01 1.189983e-02 2.540589e+01 1.188870e-02 2.538212e+01 1.187757e-02 2.535837e+01 1.186646e-02 2.533465e+01 1.185536e-02 2.531095e+01 1.184427e-02 2.528728e+01 1.183319e-02 2.526362e+01 1.182212e-02 2.523999e+01 1.181106e-02 2.521638e+01 1.180002e-02 2.519279e+01 1.178898e-02 2.516922e+01 1.177795e-02 2.514568e+01 1.176693e-02 2.512215e+01 1.175592e-02 2.509865e+01 1.174493e-02 2.507517e+01 1.173394e-02 2.505172e+01 1.172296e-02 2.502828e+01 1.171200e-02 2.500487e+01 1.170104e-02 2.498148e+01 1.169010e-02 2.495811e+01 1.167916e-02 2.493476e+01 1.166823e-02 2.491143e+01 1.165732e-02 2.488813e+01 1.164641e-02 2.486485e+01 1.163552e-02 2.484159e+01 1.162463e-02 2.481835e+01 1.161376e-02 2.479513e+01 1.160290e-02 2.477194e+01 1.159204e-02 2.474877e+01 1.158120e-02 2.472561e+01 1.157036e-02 2.470248e+01 1.155954e-02 2.467937e+01 1.154873e-02 2.465629e+01 1.153792e-02 2.463322e+01 1.152713e-02 2.461018e+01 1.151635e-02 2.458716e+01 1.150557e-02 2.456416e+01 1.149481e-02 2.454118e+01 1.148406e-02 2.451822e+01 1.147331e-02 2.449528e+01 1.146258e-02 2.447237e+01 1.145186e-02 2.444948e+01 1.144115e-02 2.442661e+01 1.143044e-02 2.440376e+01 1.141975e-02 2.438093e+01 1.140907e-02 2.435812e+01 1.139839e-02 2.433533e+01 1.138773e-02 2.431257e+01 1.137708e-02 2.428983e+01 1.136644e-02 2.426710e+01 1.135580e-02 2.424440e+01 1.134518e-02 2.422172e+01 1.133457e-02 2.419906e+01 1.132396e-02 2.417643e+01 1.131337e-02 2.415381e+01 1.130279e-02 2.413122e+01 1.129221e-02 2.410864e+01 1.128165e-02 2.408609e+01 1.127110e-02 2.406356e+01 1.126055e-02 2.404105e+01 1.125002e-02 2.401856e+01 1.123950e-02 2.399609e+01 1.122898e-02 2.397364e+01 1.121848e-02 2.395122e+01 1.120798e-02 2.392881e+01 1.119750e-02 2.390643e+01 1.118702e-02 2.388406e+01 1.117656e-02 2.386172e+01 1.116610e-02 2.383940e+01 1.115566e-02 2.381710e+01 1.114522e-02 2.379482e+01 1.113480e-02 2.377256e+01 1.112438e-02 2.375032e+01 1.111397e-02 2.372810e+01 1.110358e-02 2.370590e+01 1.109319e-02 2.368373e+01 1.108281e-02 2.366157e+01 1.107245e-02 2.363944e+01 1.106209e-02 2.361732e+01 1.105174e-02 2.359523e+01 1.104140e-02 2.357316e+01 1.103107e-02 2.355111e+01 1.102075e-02 2.352908e+01 1.101044e-02 2.350706e+01 1.100014e-02 2.348507e+01 1.098985e-02 2.346311e+01 1.097957e-02 2.344116e+01 1.096930e-02 2.341923e+01 1.095904e-02 2.339732e+01 1.094879e-02 2.337543e+01 1.093855e-02 2.335357e+01 1.092831e-02 2.333172e+01 1.091809e-02 2.330989e+01 1.090788e-02 2.328809e+01 1.089767e-02 2.326630e+01 1.088748e-02 2.324454e+01 1.087729e-02 2.322280e+01 1.086712e-02 2.320107e+01 1.085695e-02 2.317937e+01 1.084680e-02 2.315768e+01 1.083665e-02 2.313602e+01 1.082651e-02 2.311438e+01 1.081638e-02 2.309275e+01 1.080627e-02 2.307115e+01 1.079616e-02 2.304957e+01 1.078606e-02 2.302801e+01 1.077597e-02 2.300647e+01 1.076589e-02 2.298495e+01 1.075582e-02 2.296344e+01 1.074575e-02 2.294196e+01 1.073570e-02 2.292050e+01 1.072566e-02 2.289906e+01 1.071563e-02 2.287764e+01 1.070560e-02 2.285624e+01 1.069559e-02 2.283486e+01 1.068558e-02 2.281349e+01 1.067559e-02 2.279215e+01 1.066560e-02 2.277083e+01 1.065562e-02 2.274953e+01 1.064565e-02 2.272825e+01 1.063570e-02 2.270699e+01 1.062575e-02 2.268575e+01 1.061581e-02 2.266452e+01 1.060588e-02 2.264332e+01 1.059595e-02 2.262214e+01 1.058604e-02 2.260098e+01 1.057614e-02 2.257984e+01 1.056625e-02 2.255871e+01 1.055636e-02 2.253761e+01 1.054649e-02 2.251653e+01 1.053662e-02 2.249546e+01 1.052676e-02 2.247442e+01 1.051692e-02 2.245340e+01 1.050708e-02 2.243239e+01 1.049725e-02 2.241141e+01 1.048743e-02 2.239044e+01 1.047762e-02 2.236950e+01 1.046782e-02 2.234857e+01 1.045803e-02 2.232767e+01 1.044824e-02 2.230678e+01 1.043847e-02 2.228591e+01 1.042870e-02 2.226506e+01 1.041895e-02 2.224424e+01 1.040920e-02 2.222343e+01 1.039946e-02 2.220264e+01 1.038974e-02 2.218187e+01 1.038002e-02 2.216112e+01 1.037031e-02 2.214039e+01 1.036061e-02 2.211967e+01 1.035091e-02 2.209898e+01 1.034123e-02 2.207831e+01 1.033156e-02 2.205766e+01 1.032189e-02 2.203702e+01 1.031224e-02 2.201641e+01 1.030259e-02 2.199581e+01 1.029295e-02 2.197524e+01 1.028332e-02 2.195468e+01 1.027370e-02 2.193414e+01 1.026409e-02 2.191362e+01 1.025449e-02 2.189312e+01 1.024490e-02 2.187264e+01 1.023531e-02 2.185218e+01 1.022574e-02 2.183174e+01 1.021617e-02 2.181132e+01 1.020662e-02 2.179091e+01 1.019707e-02 2.177053e+01 1.018753e-02 2.175016e+01 1.017800e-02 2.172982e+01 1.016848e-02 2.170949e+01 1.015897e-02 2.168918e+01 1.014946e-02 2.166889e+01 1.013997e-02 2.164862e+01 1.013048e-02 2.162837e+01 1.012101e-02 2.160814e+01 1.011154e-02 2.158792e+01 1.010208e-02 2.156773e+01 1.009263e-02 2.154755e+01 1.008319e-02 2.152740e+01 1.007376e-02 2.150726e+01 1.006433e-02 2.148714e+01 1.005492e-02 2.146704e+01 1.004551e-02 2.144696e+01 1.003611e-02 2.142689e+01 1.002673e-02 2.140685e+01 1.001735e-02 2.138682e+01 1.000798e-02 2.136682e+01 9.998613e-03 2.134683e+01 9.989260e-03 2.132686e+01 9.979915e-03 2.130691e+01 9.970579e-03 2.128698e+01 9.961252e-03 2.126706e+01 9.951934e-03 2.124717e+01 9.942624e-03 2.122729e+01 9.933324e-03 2.120744e+01 9.924031e-03 2.118760e+01 9.914747e-03 2.116778e+01 9.905472e-03 2.114798e+01 9.896207e-03 2.112819e+01 9.886948e-03 2.110843e+01 9.877700e-03 2.108868e+01 9.868460e-03 2.106895e+01 9.859229e-03 2.104925e+01 9.850005e-03 2.102955e+01 9.840791e-03 2.100988e+01 9.831585e-03 2.099023e+01 9.822388e-03 2.097059e+01 9.813200e-03 2.095098e+01 9.804020e-03 2.093138e+01 9.794848e-03 2.091180e+01 9.785686e-03 2.089223e+01 9.776532e-03 2.087269e+01 9.767386e-03 2.085316e+01 9.758249e-03 2.083366e+01 9.749120e-03 2.081417e+01 9.740001e-03 2.079470e+01 9.730889e-03 2.077524e+01 9.721786e-03 2.075581e+01 9.712691e-03 2.073639e+01 9.703606e-03 2.071700e+01 9.694529e-03 2.069761e+01 9.685460e-03 2.067825e+01 9.676400e-03 2.065891e+01 9.667347e-03 2.063958e+01 9.658304e-03 2.062028e+01 9.649269e-03 2.060099e+01 9.640242e-03 2.058171e+01 9.631224e-03 2.056246e+01 9.622214e-03 2.054323e+01 9.613213e-03 2.052401e+01 9.604220e-03 2.050481e+01 9.595236e-03 2.048563e+01 9.586261e-03 2.046646e+01 9.577293e-03 2.044732e+01 9.568334e-03 2.042819e+01 9.559383e-03 2.040908e+01 9.550440e-03 2.038999e+01 9.541506e-03 2.037092e+01 9.532580e-03 2.035186e+01 9.523663e-03 2.033282e+01 9.514754e-03 2.031380e+01 9.505853e-03 2.029480e+01 9.496961e-03 2.027581e+01 9.488077e-03 2.025685e+01 9.479201e-03 2.023790e+01 9.470333e-03 2.021896e+01 9.461475e-03 2.020005e+01 9.452623e-03 2.018115e+01 9.443781e-03 2.016228e+01 9.434947e-03 2.014341e+01 9.426121e-03 2.012457e+01 9.417303e-03 2.010574e+01 9.408494e-03 2.008694e+01 9.399692e-03 2.006815e+01 9.390899e-03 2.004937e+01 9.382114e-03 2.003062e+01 9.373337e-03 2.001188e+01 9.364569e-03 1.999316e+01 9.355809e-03 1.997446e+01 9.347057e-03 1.995577e+01 9.338313e-03 1.993710e+01 9.329577e-03 1.991845e+01 9.320850e-03 1.989982e+01 9.312131e-03 1.988120e+01 9.303420e-03 1.986261e+01 9.294717e-03 1.984402e+01 9.286022e-03 1.982546e+01 9.277334e-03 1.980692e+01 9.268656e-03 1.978839e+01 9.259986e-03 1.976987e+01 9.251324e-03 1.975138e+01 9.242669e-03 1.973290e+01 9.234023e-03 1.971445e+01 9.225384e-03 1.969600e+01 9.216755e-03 1.967758e+01 9.208133e-03 1.965917e+01 9.199519e-03 1.964078e+01 9.190913e-03 1.962241e+01 9.182315e-03 1.960405e+01 9.173726e-03 1.958571e+01 9.165144e-03 1.956739e+01 9.156571e-03 1.954909e+01 9.148004e-03 1.953080e+01 9.139447e-03 1.951253e+01 9.130898e-03 1.949427e+01 9.122356e-03 1.947604e+01 9.113822e-03 1.945782e+01 9.105297e-03 1.943962e+01 9.096779e-03 1.942143e+01 9.088269e-03 1.940327e+01 9.079767e-03 1.938511e+01 9.071274e-03 1.936698e+01 9.062788e-03 1.934886e+01 9.054310e-03 1.933076e+01 9.045840e-03 1.931268e+01 9.037378e-03 1.929461e+01 9.028924e-03 1.927656e+01 9.020478e-03 1.925853e+01 9.012039e-03 1.924051e+01 9.003608e-03 1.922252e+01 8.995187e-03 1.920453e+01 8.986772e-03 1.918657e+01 8.978365e-03 1.916862e+01 8.969965e-03 1.915069e+01 8.961575e-03 1.913277e+01 8.953191e-03 1.911488e+01 8.944816e-03 1.909699e+01 8.936449e-03 1.907913e+01 8.928088e-03 1.906128e+01 8.919737e-03 1.904345e+01 8.911393e-03 1.902564e+01 8.903056e-03 1.900784e+01 8.894729e-03 1.899006e+01 8.886407e-03 1.897229e+01 8.878094e-03 1.895455e+01 8.869790e-03 1.893682e+01 8.861492e-03 1.891910e+01 8.853203e-03 1.890140e+01 8.844920e-03 1.888372e+01 8.836647e-03 1.886605e+01 8.828380e-03 1.884841e+01 8.820121e-03 1.883077e+01 8.811871e-03 1.881316e+01 8.803627e-03 1.879556e+01 8.795392e-03 1.877798e+01 8.787164e-03 1.876041e+01 8.778944e-03 1.874286e+01 8.770732e-03 1.872533e+01 8.762527e-03 1.870781e+01 8.754330e-03 1.869031e+01 8.746141e-03 1.867283e+01 8.737959e-03 1.865536e+01 8.729785e-03 1.863791e+01 8.721619e-03 1.862047e+01 8.713460e-03 1.860305e+01 8.705309e-03 1.858565e+01 8.697165e-03 1.856827e+01 8.689029e-03 1.855090e+01 8.680901e-03 1.853354e+01 8.672780e-03 1.851620e+01 8.664668e-03 1.849888e+01 8.656561e-03 1.848158e+01 8.648464e-03 1.846429e+01 8.640374e-03 1.844702e+01 8.632291e-03 1.842976e+01 8.624216e-03 1.841252e+01 8.616148e-03 1.839530e+01 8.608088e-03 1.837809e+01 8.600036e-03 1.836090e+01 8.591990e-03 1.834372e+01 8.583953e-03 1.832656e+01 8.575923e-03 1.830942e+01 8.567900e-03 1.829229e+01 8.559885e-03 1.827518e+01 8.551878e-03 1.825808e+01 8.543878e-03 1.824100e+01 8.535885e-03 1.822394e+01 8.527901e-03 1.820689e+01 8.519923e-03 1.818986e+01 8.511953e-03 1.817284e+01 8.503990e-03 1.815584e+01 8.496035e-03 1.813886e+01 8.488088e-03 1.812189e+01 8.480147e-03 1.810494e+01 8.472214e-03 1.808800e+01 8.464289e-03 1.807108e+01 8.456371e-03 1.805417e+01 8.448460e-03 1.803728e+01 8.440557e-03 1.802041e+01 8.432661e-03 1.800356e+01 8.424773e-03 1.798671e+01 8.416892e-03 1.796989e+01 8.409018e-03 1.795308e+01 8.401152e-03 1.793628e+01 8.393292e-03 1.791950e+01 8.385441e-03 1.790274e+01 8.377597e-03 1.788599e+01 8.369760e-03 1.786926e+01 8.361930e-03 1.785255e+01 8.354108e-03 1.783585e+01 8.346293e-03 1.781916e+01 8.338485e-03 1.780249e+01 8.330685e-03 1.778584e+01 8.322892e-03 1.776920e+01 8.315106e-03 1.775258e+01 8.307328e-03 1.773597e+01 8.299557e-03 1.771938e+01 8.291792e-03 1.770280e+01 8.284036e-03 1.768624e+01 8.276287e-03 1.766970e+01 8.268544e-03 1.765317e+01 8.260810e-03 1.763666e+01 8.253082e-03 1.762016e+01 8.245361e-03 1.760367e+01 8.237648e-03 1.758721e+01 8.229942e-03 1.757075e+01 8.222243e-03 1.755432e+01 8.214552e-03 1.753790e+01 8.206868e-03 1.752149e+01 8.199190e-03 1.750510e+01 8.191520e-03 1.748872e+01 8.183857e-03 1.747236e+01 8.176201e-03 1.745602e+01 8.168553e-03 1.743969e+01 8.160911e-03 1.742337e+01 8.153277e-03 1.740708e+01 8.145650e-03 1.739079e+01 8.138030e-03 1.737452e+01 8.130417e-03 1.735827e+01 8.122812e-03 1.734203e+01 8.115213e-03 1.732581e+01 8.107621e-03 1.730960e+01 8.100037e-03 1.729341e+01 8.092460e-03 1.727723e+01 8.084889e-03 1.726107e+01 8.077326e-03 1.724492e+01 8.069770e-03 1.722879e+01 8.062221e-03 1.721267e+01 8.054679e-03 1.719657e+01 8.047145e-03 1.718048e+01 8.039617e-03 1.716441e+01 8.032097e-03 1.714836e+01 8.024583e-03 1.713231e+01 8.017076e-03 1.711629e+01 8.009576e-03 1.710028e+01 8.002084e-03 1.708428e+01 7.994598e-03 1.706830e+01 7.987119e-03 1.705233e+01 7.979647e-03 1.703638e+01 7.972183e-03 1.702044e+01 7.964725e-03 1.700452e+01 7.957274e-03 1.698861e+01 7.949831e-03 1.697272e+01 7.942394e-03 1.695684e+01 7.934964e-03 1.694098e+01 7.927542e-03 1.692513e+01 7.920125e-03 1.690930e+01 7.912716e-03 1.689348e+01 7.905315e-03 1.687768e+01 7.897919e-03 1.686189e+01 7.890531e-03 1.684612e+01 7.883149e-03 1.683036e+01 7.875775e-03 1.681462e+01 7.868407e-03 1.679889e+01 7.861047e-03 1.678317e+01 7.853693e-03 1.676747e+01 7.846346e-03 1.675179e+01 7.839006e-03 1.673611e+01 7.831673e-03 1.672046e+01 7.824347e-03 1.670482e+01 7.817028e-03 1.668919e+01 7.809715e-03 1.667358e+01 7.802410e-03 1.665798e+01 7.795111e-03 1.664240e+01 7.787819e-03 1.662683e+01 7.780533e-03 1.661128e+01 7.773255e-03 1.659574e+01 7.765983e-03 1.658021e+01 7.758718e-03 1.656470e+01 7.751461e-03 1.654921e+01 7.744209e-03 1.653373e+01 7.736965e-03 1.651826e+01 7.729727e-03 1.650281e+01 7.722497e-03 1.648737e+01 7.715272e-03 1.647194e+01 7.708055e-03 1.645654e+01 7.700845e-03 1.644114e+01 7.693640e-03 1.642576e+01 7.686444e-03 1.641040e+01 7.679253e-03 1.639504e+01 7.672070e-03 1.637971e+01 7.664892e-03 1.636439e+01 7.657722e-03 1.634908e+01 7.650559e-03 1.633378e+01 7.643402e-03 1.631850e+01 7.636252e-03 1.630324e+01 7.629108e-03 1.628799e+01 7.621971e-03 1.627275e+01 7.614842e-03 1.625753e+01 7.607718e-03 1.624232e+01 7.600601e-03 1.622713e+01 7.593491e-03 1.621194e+01 7.586388e-03 1.619678e+01 7.579291e-03 1.618163e+01 7.572201e-03 1.616649e+01 7.565117e-03 1.615137e+01 7.558040e-03 1.613626e+01 7.550970e-03 1.612116e+01 7.543907e-03 1.610608e+01 7.536849e-03 1.609102e+01 7.529799e-03 1.607596e+01 7.522755e-03 1.606092e+01 7.515718e-03 1.604590e+01 7.508687e-03 1.603089e+01 7.501663e-03 1.601589e+01 7.494646e-03 1.600091e+01 7.487635e-03 1.598594e+01 7.480630e-03 1.597099e+01 7.473633e-03 1.595605e+01 7.466641e-03 1.594112e+01 7.459656e-03 1.592621e+01 7.452678e-03 1.591131e+01 7.445707e-03 1.589643e+01 7.438741e-03 1.588156e+01 7.431783e-03 1.586670e+01 7.424830e-03 1.585186e+01 7.417885e-03 1.583703e+01 7.410946e-03 1.582221e+01 7.404013e-03 1.580741e+01 7.397087e-03 1.579263e+01 7.390167e-03 1.577785e+01 7.383254e-03 1.576309e+01 7.376347e-03 1.574835e+01 7.369447e-03 1.573361e+01 7.362553e-03 1.571890e+01 7.355665e-03 1.570419e+01 7.348785e-03 1.568950e+01 7.341910e-03 1.567482e+01 7.335042e-03 1.566016e+01 7.328180e-03 1.564551e+01 7.321325e-03 1.563088e+01 7.314476e-03 1.561625e+01 7.307634e-03 1.560165e+01 7.300798e-03 1.558705e+01 7.293968e-03 1.557247e+01 7.287145e-03 1.555790e+01 7.280328e-03 1.554335e+01 7.273518e-03 1.552881e+01 7.266713e-03 1.551428e+01 7.259916e-03 1.549977e+01 7.253124e-03 1.548527e+01 7.246339e-03 1.547078e+01 7.239561e-03 1.545631e+01 7.232788e-03 1.544185e+01 7.226022e-03 1.542741e+01 7.219262e-03 1.541297e+01 7.212509e-03 1.539856e+01 7.205762e-03 1.538415e+01 7.199022e-03 1.536976e+01 7.192287e-03 1.535538e+01 7.185559e-03 1.534102e+01 7.178837e-03 1.532667e+01 7.172122e-03 1.531233e+01 7.165412e-03 1.529801e+01 7.158709e-03 1.528369e+01 7.152013e-03 1.526940e+01 7.145322e-03 1.525511e+01 7.138638e-03 1.524084e+01 7.131960e-03 1.522659e+01 7.125288e-03 1.521234e+01 7.118623e-03 1.519811e+01 7.111964e-03 1.518389e+01 7.105311e-03 1.516969e+01 7.098664e-03 1.515550e+01 7.092023e-03 1.514132e+01 7.085389e-03 1.512716e+01 7.078761e-03 1.511301e+01 7.072139e-03 1.509887e+01 7.065523e-03 1.508474e+01 7.058914e-03 1.507063e+01 7.052310e-03 1.505653e+01 7.045713e-03 1.504245e+01 7.039122e-03 1.502838e+01 7.032537e-03 1.501432e+01 7.025959e-03 1.500027e+01 7.019386e-03 1.498624e+01 7.012820e-03 1.497222e+01 7.006260e-03 1.495822e+01 6.999705e-03 1.494422e+01 6.993158e-03 1.493024e+01 6.986616e-03 1.491628e+01 6.980080e-03 1.490232e+01 6.973550e-03 1.488838e+01 6.967027e-03 1.487446e+01 6.960509e-03 1.486054e+01 6.953998e-03 1.484664e+01 6.947493e-03 1.483275e+01 6.940994e-03 1.481888e+01 6.934501e-03 1.480501e+01 6.928014e-03 1.479116e+01 6.921533e-03 1.477733e+01 6.915058e-03 1.476350e+01 6.908590e-03 1.474969e+01 6.902127e-03 1.473590e+01 6.895670e-03 1.472211e+01 6.889219e-03 1.470834e+01 6.882775e-03 1.469458e+01 6.876336e-03 1.468083e+01 6.869903e-03 1.466710e+01 6.863477e-03 1.465338e+01 6.857057e-03 1.463967e+01 6.850642e-03 1.462598e+01 6.844233e-03 1.461230e+01 6.837831e-03 1.459863e+01 6.831434e-03 1.458497e+01 6.825044e-03 1.457133e+01 6.818659e-03 1.455769e+01 6.812281e-03 1.454408e+01 6.805908e-03 1.453047e+01 6.799541e-03 1.451688e+01 6.793180e-03 1.450330e+01 6.786826e-03 1.448973e+01 6.780477e-03 1.447618e+01 6.774134e-03 1.446263e+01 6.767797e-03 1.444911e+01 6.761466e-03 1.443559e+01 6.755141e-03 1.442208e+01 6.748822e-03 1.440859e+01 6.742509e-03 1.439511e+01 6.736201e-03 1.438165e+01 6.729899e-03 1.436819e+01 6.723604e-03 1.435475e+01 6.717314e-03 1.434133e+01 6.711030e-03 1.432791e+01 6.704753e-03 1.431451e+01 6.698481e-03 1.430112e+01 6.692214e-03 1.428774e+01 6.685954e-03 1.427437e+01 6.679700e-03 1.426102e+01 6.673451e-03 1.424768e+01 6.667208e-03 1.423435e+01 6.660971e-03 1.422103e+01 6.654740e-03 1.420773e+01 6.648515e-03 1.419444e+01 6.642296e-03 1.418116e+01 6.636082e-03 1.416790e+01 6.629874e-03 1.415464e+01 6.623672e-03 1.414140e+01 6.617476e-03 1.412817e+01 6.611286e-03 1.411496e+01 6.605101e-03 1.410175e+01 6.598922e-03 1.408856e+01 6.592749e-03 1.407538e+01 6.586582e-03 1.406221e+01 6.580420e-03 1.404906e+01 6.574264e-03 1.403592e+01 6.568115e-03 1.402279e+01 6.561970e-03 1.400967e+01 6.555832e-03 1.399656e+01 6.549699e-03 1.398347e+01 6.543572e-03 1.397039e+01 6.537451e-03 1.395732e+01 6.531335e-03 1.394426e+01 6.525225e-03 1.393122e+01 6.519121e-03 1.391819e+01 6.513023e-03 1.390517e+01 6.506930e-03 1.389216e+01 6.500843e-03 1.387916e+01 6.494762e-03 1.386618e+01 6.488686e-03 1.385321e+01 6.482617e-03 1.384025e+01 6.476552e-03 1.382730e+01 6.470494e-03 1.381437e+01 6.464441e-03 1.380144e+01 6.458393e-03 1.378853e+01 6.452352e-03 1.377564e+01 6.446316e-03 1.376275e+01 6.440286e-03 1.374988e+01 6.434261e-03 1.373701e+01 6.428242e-03 1.372416e+01 6.422229e-03 1.371132e+01 6.416221e-03 1.369850e+01 6.410219e-03 1.368568e+01 6.404222e-03 1.367288e+01 6.398231e-03 1.366009e+01 6.392246e-03 1.364731e+01 6.386266e-03 1.363454e+01 6.380292e-03 1.362179e+01 6.374324e-03 1.360905e+01 6.368360e-03 1.359632e+01 6.362403e-03 1.358360e+01 6.356451e-03 1.357089e+01 6.350505e-03 1.355820e+01 6.344565e-03 1.354551e+01 6.338629e-03 1.353284e+01 6.332700e-03 1.352018e+01 6.326776e-03 1.350753e+01 6.320857e-03 1.349490e+01 6.314944e-03 1.348227e+01 6.309037e-03 1.346966e+01 6.303135e-03 1.345706e+01 6.297239e-03 1.344447e+01 6.291348e-03 1.343190e+01 6.285463e-03 1.341933e+01 6.279583e-03 1.340678e+01 6.273708e-03 1.339424e+01 6.267840e-03 1.338171e+01 6.261976e-03 1.336919e+01 6.256118e-03 1.335668e+01 6.250266e-03 1.334419e+01 6.244419e-03 1.333170e+01 6.238578e-03 1.331923e+01 6.232742e-03 1.330677e+01 6.226911e-03 1.329433e+01 6.221086e-03 1.328189e+01 6.215267e-03 1.326946e+01 6.209453e-03 1.325705e+01 6.203644e-03 1.324465e+01 6.197840e-03 1.323226e+01 6.192043e-03 1.321988e+01 6.186250e-03 1.320751e+01 6.180463e-03 1.319516e+01 6.174682e-03 1.318282e+01 6.168906e-03 1.317048e+01 6.163135e-03 1.315816e+01 6.157369e-03 1.314585e+01 6.151609e-03 1.313356e+01 6.145855e-03 1.312127e+01 6.140105e-03 1.310900e+01 6.134361e-03 1.309673e+01 6.128623e-03 1.308448e+01 6.122890e-03 1.307224e+01 6.117162e-03 1.306001e+01 6.111440e-03 1.304780e+01 6.105723e-03 1.303559e+01 6.100011e-03 1.302340e+01 6.094305e-03 1.301121e+01 6.088604e-03 1.299904e+01 6.082908e-03 1.298688e+01 6.077218e-03 1.297473e+01 6.071533e-03 1.296260e+01 6.065853e-03 1.295047e+01 6.060179e-03 1.293835e+01 6.054510e-03 1.292625e+01 6.048846e-03 1.291416e+01 6.043187e-03 1.290208e+01 6.037534e-03 1.289001e+01 6.031887e-03 1.287795e+01 6.026244e-03 1.286590e+01 6.020607e-03 1.285387e+01 6.014974e-03 1.284184e+01 6.009348e-03 1.282983e+01 6.003726e-03 1.281783e+01 5.998110e-03 1.280584e+01 5.992499e-03 1.279386e+01 5.986893e-03 1.278189e+01 5.981293e-03 1.276993e+01 5.975697e-03 1.275799e+01 5.970107e-03 1.274605e+01 5.964522e-03 1.273413e+01 5.958943e-03 1.272222e+01 5.953368e-03 1.271032e+01 5.947799e-03 1.269843e+01 5.942235e-03 1.268655e+01 5.936677e-03 1.267468e+01 5.931123e-03 1.266282e+01 5.925575e-03 1.265098e+01 5.920032e-03 1.263914e+01 5.914493e-03 1.262732e+01 5.908961e-03 1.261551e+01 5.903433e-03 1.260371e+01 5.897911e-03 1.259192e+01 5.892394e-03 1.258014e+01 5.886881e-03 1.256837e+01 5.881374e-03 1.255661e+01 5.875872e-03 1.254486e+01 5.870376e-03 1.253313e+01 5.864884e-03 1.252141e+01 5.859398e-03 1.250969e+01 5.853917e-03 1.249799e+01 5.848441e-03 1.248630e+01 5.842970e-03 1.247462e+01 5.837504e-03 1.246295e+01 5.832043e-03 1.245129e+01 5.826587e-03 1.243964e+01 5.821137e-03 1.242801e+01 5.815691e-03 1.241638e+01 5.810251e-03 1.240476e+01 5.804816e-03 1.239316e+01 5.799386e-03 1.238157e+01 5.793960e-03 1.236998e+01 5.788540e-03 1.235841e+01 5.783125e-03 1.234685e+01 5.777715e-03 1.233530e+01 5.772311e-03 1.232376e+01 5.766911e-03 1.231223e+01 5.761516e-03 1.230072e+01 5.756126e-03 1.228921e+01 5.750742e-03 1.227771e+01 5.745362e-03 1.226623e+01 5.739988e-03 1.225475e+01 5.734618e-03 1.224329e+01 5.729253e-03 1.223184e+01 5.723894e-03 1.222039e+01 5.718539e-03 1.220896e+01 5.713190e-03 1.219754e+01 5.707846e-03 1.218613e+01 5.702506e-03 1.217473e+01 5.697172e-03 1.216334e+01 5.691842e-03 1.215196e+01 5.686518e-03 1.214060e+01 5.681198e-03 1.212924e+01 5.675884e-03 1.211789e+01 5.670574e-03 1.210656e+01 5.665269e-03 1.209523e+01 5.659970e-03 1.208392e+01 5.654675e-03 1.207261e+01 5.649385e-03 1.206132e+01 5.644100e-03 1.205004e+01 5.638821e-03 1.203876e+01 5.633546e-03 1.202750e+01 5.628276e-03 1.201625e+01 5.623010e-03 1.200501e+01 5.617750e-03 1.199378e+01 5.612495e-03 1.198256e+01 5.607245e-03 1.197135e+01 5.602000e-03 1.196015e+01 5.596759e-03 1.194896e+01 5.591524e-03 1.193779e+01 5.586293e-03 1.192662e+01 5.581067e-03 1.191546e+01 5.575846e-03 1.190432e+01 5.570631e-03 1.189318e+01 5.565419e-03 1.188205e+01 5.560213e-03 1.187094e+01 5.555012e-03 1.185983e+01 5.549815e-03 1.184874e+01 5.544623e-03 1.183766e+01 5.539437e-03 1.182658e+01 5.534254e-03 1.181552e+01 5.529078e-03 1.180447e+01 5.523905e-03 1.179342e+01 5.518738e-03 1.178239e+01 5.513575e-03 1.177137e+01 5.508418e-03 1.176036e+01 5.503265e-03 1.174936e+01 5.498117e-03 1.173836e+01 5.492973e-03 1.172738e+01 5.487835e-03 1.171641e+01 5.482701e-03 1.170545e+01 5.477572e-03 1.169450e+01 5.472448e-03 1.168356e+01 5.467329e-03 1.167263e+01 5.462214e-03 1.166171e+01 5.457105e-03 1.165080e+01 5.452000e-03 1.163991e+01 5.446900e-03 1.162902e+01 5.441804e-03 1.161814e+01 5.436714e-03 1.160727e+01 5.431628e-03 1.159641e+01 5.426547e-03 1.158556e+01 5.421470e-03 1.157473e+01 5.416399e-03 1.156390e+01 5.411332e-03 1.155308e+01 5.406270e-03 1.154227e+01 5.401213e-03 1.153148e+01 5.396160e-03 1.152069e+01 5.391112e-03 1.150991e+01 5.386069e-03 1.149914e+01 5.381030e-03 1.148839e+01 5.375997e-03 1.147764e+01 5.370968e-03 1.146690e+01 5.365943e-03 1.145618e+01 5.360924e-03 1.144546e+01 5.355909e-03 1.143475e+01 5.350898e-03 1.142406e+01 5.345893e-03 1.141337e+01 5.340892e-03 1.140269e+01 5.335896e-03 1.139203e+01 5.330904e-03 1.138137e+01 5.325917e-03 1.137072e+01 5.320935e-03 1.136008e+01 5.315958e-03 1.134946e+01 5.310985e-03 1.133884e+01 5.306017e-03 1.132823e+01 5.301053e-03 1.131764e+01 5.296094e-03 1.130705e+01 5.291140e-03 1.129647e+01 5.286190e-03 1.128590e+01 5.281245e-03 1.127535e+01 5.276305e-03 1.126480e+01 5.271369e-03 1.125426e+01 5.266438e-03 1.124373e+01 5.261511e-03 1.123322e+01 5.256589e-03 1.122271e+01 5.251672e-03 1.121221e+01 5.246759e-03 1.120172e+01 5.241851e-03 1.119124e+01 5.236947e-03 1.118077e+01 5.232048e-03 1.117031e+01 5.227154e-03 1.115986e+01 5.222264e-03 1.114942e+01 5.217379e-03 1.113899e+01 5.212498e-03 1.112857e+01 5.207622e-03 1.111816e+01 5.202751e-03 1.110776e+01 5.197884e-03 1.109737e+01 5.193021e-03 1.108699e+01 5.188163e-03 1.107662e+01 5.183310e-03 1.106626e+01 5.178461e-03 1.105591e+01 5.173617e-03 1.104556e+01 5.168777e-03 1.103523e+01 5.163942e-03 1.102491e+01 5.159111e-03 1.101459e+01 5.154285e-03 1.100429e+01 5.149464e-03 1.099400e+01 5.144646e-03 1.098371e+01 5.139834e-03 1.097344e+01 5.135025e-03 1.096317e+01 5.130222e-03 1.095292e+01 5.125423e-03 1.094267e+01 5.120628e-03 1.093243e+01 5.115838e-03 1.092221e+01 5.111052e-03 1.091199e+01 5.106271e-03 1.090178e+01 5.101494e-03 1.089158e+01 5.096722e-03 1.088140e+01 5.091954e-03 1.087122e+01 5.087191e-03 1.086105e+01 5.082432e-03 1.085089e+01 5.077678e-03 1.084074e+01 5.072928e-03 1.083059e+01 5.068182e-03 1.082046e+01 5.063441e-03 1.081034e+01 5.058704e-03 1.080023e+01 5.053972e-03 1.079012e+01 5.049245e-03 1.078003e+01 5.044521e-03 1.076995e+01 5.039802e-03 1.075987e+01 5.035087e-03 1.074981e+01 5.030377e-03 1.073975e+01 5.025672e-03 1.072970e+01 5.020970e-03 1.071967e+01 5.016273e-03 1.070964e+01 5.011581e-03 1.069962e+01 5.006893e-03 1.068961e+01 5.002209e-03 1.067961e+01 4.997530e-03 1.066962e+01 4.992854e-03 1.065964e+01 4.988184e-03 1.064967e+01 4.983518e-03 1.063971e+01 4.978856e-03 1.062975e+01 4.974198e-03 1.061981e+01 4.969545e-03 1.060987e+01 4.964896e-03 1.059995e+01 4.960252e-03 1.059003e+01 4.955612e-03 1.058013e+01 4.950976e-03 1.057023e+01 4.946344e-03 1.056034e+01 4.941717e-03 1.055046e+01 4.937094e-03 1.054059e+01 4.932476e-03 1.053073e+01 4.927862e-03 1.052088e+01 4.923252e-03 1.051104e+01 4.918647e-03 1.050121e+01 4.914045e-03 1.049138e+01 4.909448e-03 1.048157e+01 4.904856e-03 1.047176e+01 4.900267e-03 1.046197e+01 4.895683e-03 1.045218e+01 4.891104e-03 1.044240e+01 4.886528e-03 1.043264e+01 4.881957e-03 1.042288e+01 4.877390e-03 1.041313e+01 4.872827e-03 1.040338e+01 4.868269e-03 1.039365e+01 4.863715e-03 1.038393e+01 4.859165e-03 1.037422e+01 4.854619e-03 1.036451e+01 4.850078e-03 1.035482e+01 4.845541e-03 1.034513e+01 4.841008e-03 1.033545e+01 4.836480e-03 1.032578e+01 4.831955e-03 1.031612e+01 4.827436e-03 1.030647e+01 4.822920e-03 1.029683e+01 4.818408e-03 1.028720e+01 4.813900e-03 1.027758e+01 4.809397e-03 1.026796e+01 4.804898e-03 1.025836e+01 4.800403e-03 1.024876e+01 4.795913e-03 1.023917e+01 4.791426e-03 1.022960e+01 4.786944e-03 1.022003e+01 4.782466e-03 1.021047e+01 4.777992e-03 1.020091e+01 4.773523e-03 1.019137e+01 4.769057e-03 1.018184e+01 4.764596e-03 1.017231e+01 4.760139e-03 1.016280e+01 4.755686e-03 1.015329e+01 4.751237e-03 1.014379e+01 4.746792e-03 1.013430e+01 4.742352e-03 1.012482e+01 4.737916e-03 1.011535e+01 4.733484e-03 1.010589e+01 4.729056e-03 1.009643e+01 4.724632e-03 1.008699e+01 4.720212e-03 1.007755e+01 4.715797e-03 1.006813e+01 4.711385e-03 1.005871e+01 4.706978e-03 1.004930e+01 4.702575e-03 1.003990e+01 4.698175e-03 1.003051e+01 4.693781e-03 1.002112e+01 4.689389e-03 1.001175e+01 4.685003e-03 1.000238e+01 4.680620e-03 9.993026e+00 4.676241e-03 9.983678e+00 4.671867e-03 9.974339e+00 4.667497e-03 9.965008e+00 4.663131e-03 9.955686e+00 4.658768e-03 9.946373e+00 4.654410e-03 9.937068e+00 4.650056e-03 9.927773e+00 4.645706e-03 9.918486e+00 4.641360e-03 9.909207e+00 4.637018e-03 9.899938e+00 4.632681e-03 9.890676e+00 4.628347e-03 9.881424e+00 4.624018e-03 9.872180e+00 4.619692e-03 9.862946e+00 4.615370e-03 9.853719e+00 4.611053e-03 9.844501e+00 4.606739e-03 9.835292e+00 4.602430e-03 9.826092e+00 4.598124e-03 9.816899e+00 4.593823e-03 9.807716e+00 4.589526e-03 9.798541e+00 4.585233e-03 9.789375e+00 4.580943e-03 9.780217e+00 4.576658e-03 9.771069e+00 4.572377e-03 9.761928e+00 4.568099e-03 9.752796e+00 4.563826e-03 9.743672e+00 4.559556e-03 9.734558e+00 4.555292e-03 9.725451e+00 4.551030e-03 9.716353e+00 4.546773e-03 9.707264e+00 4.542519e-03 9.698184e+00 4.538270e-03 9.689112e+00 4.534025e-03 9.680048e+00 4.529783e-03 9.670992e+00 4.525546e-03 9.661945e+00 4.521312e-03 9.652907e+00 4.517083e-03 9.643877e+00 4.512857e-03 9.634855e+00 4.508635e-03 9.625842e+00 4.504418e-03 9.616838e+00 4.500204e-03 9.607841e+00 4.495994e-03 9.598854e+00 4.491788e-03 9.589874e+00 4.487587e-03 9.580903e+00 4.483389e-03 9.571941e+00 4.479195e-03 9.562986e+00 4.475005e-03 9.554041e+00 4.470818e-03 9.545103e+00 4.466636e-03 9.536175e+00 4.462458e-03 9.527253e+00 4.458283e-03 9.518341e+00 4.454113e-03 9.509438e+00 4.449946e-03 9.500542e+00 4.445783e-03 9.491654e+00 4.441625e-03 9.482775e+00 4.437469e-03 9.473904e+00 4.433318e-03 9.465042e+00 4.429171e-03 9.456187e+00 4.425028e-03 9.447342e+00 4.420888e-03 9.438504e+00 4.416753e-03 9.429674e+00 4.412621e-03 9.420854e+00 4.408493e-03 9.412041e+00 4.404369e-03 9.403236e+00 4.400249e-03 9.394440e+00 4.396133e-03 9.385652e+00 4.392020e-03 9.376871e+00 4.387912e-03 9.368100e+00 4.383807e-03 9.359336e+00 4.379706e-03 9.350581e+00 4.375609e-03 9.341834e+00 4.371516e-03 9.333095e+00 4.367427e-03 9.324364e+00 4.363341e-03 9.315641e+00 4.359259e-03 9.306927e+00 4.355181e-03 9.298221e+00 4.351107e-03 9.289522e+00 4.347037e-03 9.280832e+00 4.342970e-03 9.272151e+00 4.338908e-03 9.263477e+00 4.334849e-03 9.254811e+00 4.330794e-03 9.246154e+00 4.326743e-03 9.237504e+00 4.322695e-03 9.228863e+00 4.318651e-03 9.220230e+00 4.314611e-03 9.211604e+00 4.310575e-03 9.202988e+00 4.306543e-03 9.194378e+00 4.302514e-03 9.185778e+00 4.298489e-03 9.177184e+00 4.294468e-03 9.168599e+00 4.290451e-03 9.160023e+00 4.286437e-03 9.151454e+00 4.282427e-03 9.142893e+00 4.278421e-03 9.134340e+00 4.274419e-03 9.125795e+00 4.270420e-03 9.117258e+00 4.266425e-03 9.108729e+00 4.262435e-03 9.100208e+00 4.258447e-03 9.091696e+00 4.254464e-03 9.083191e+00 4.250484e-03 9.074694e+00 4.246508e-03 9.066205e+00 4.242535e-03 9.057724e+00 4.238566e-03 9.049251e+00 4.234601e-03 9.040785e+00 4.230640e-03 9.032328e+00 4.226682e-03 9.023878e+00 4.222728e-03 9.015437e+00 4.218778e-03 9.007004e+00 4.214832e-03 8.998578e+00 4.210889e-03 8.990160e+00 4.206950e-03 8.981750e+00 4.203015e-03 8.973348e+00 4.199083e-03 8.964953e+00 4.195155e-03 8.956567e+00 4.191230e-03 8.948189e+00 4.187309e-03 8.939817e+00 4.183393e-03 8.931455e+00 4.179479e-03 8.923100e+00 4.175569e-03 8.914753e+00 4.171663e-03 8.906413e+00 4.167761e-03 8.898082e+00 4.163862e-03 8.889758e+00 4.159967e-03 8.881442e+00 4.156075e-03 8.873134e+00 4.152187e-03 8.864833e+00 4.148303e-03 8.856541e+00 4.144423e-03 8.848255e+00 4.140546e-03 8.839978e+00 4.136672e-03 8.831709e+00 4.132803e-03 8.823447e+00 4.128937e-03 8.815193e+00 4.125074e-03 8.806947e+00 4.121215e-03 8.798708e+00 4.117360e-03 8.790477e+00 4.113508e-03 8.782254e+00 4.109660e-03 8.774038e+00 4.105816e-03 8.765831e+00 4.101975e-03 8.757630e+00 4.098138e-03 8.749438e+00 4.094304e-03 8.741254e+00 4.090474e-03 8.733076e+00 4.086648e-03 8.724907e+00 4.082825e-03 8.716745e+00 4.079005e-03 8.708591e+00 4.075190e-03 8.700444e+00 4.071377e-03 8.692306e+00 4.067569e-03 8.684174e+00 4.063764e-03 8.676050e+00 4.059962e-03 8.667934e+00 4.056164e-03 8.659825e+00 4.052370e-03 8.651725e+00 4.048579e-03 8.643631e+00 4.044792e-03 8.635546e+00 4.041008e-03 8.627467e+00 4.037227e-03 8.619396e+00 4.033451e-03 8.611334e+00 4.029678e-03 8.603278e+00 4.025908e-03 8.595230e+00 4.022142e-03 8.587190e+00 4.018379e-03 8.579156e+00 4.014621e-03 8.571131e+00 4.010865e-03 8.563113e+00 4.007113e-03 8.555102e+00 4.003365e-03 8.547099e+00 3.999619e-03 8.539104e+00 3.995878e-03 8.531116e+00 3.992140e-03 8.523135e+00 3.988406e-03 8.515162e+00 3.984674e-03 8.507196e+00 3.980947e-03 8.499238e+00 3.977223e-03 8.491287e+00 3.973502e-03 8.483344e+00 3.969785e-03 8.475409e+00 3.966072e-03 8.467480e+00 3.962362e-03 8.459559e+00 3.958655e-03 8.451646e+00 3.954952e-03 8.443739e+00 3.951252e-03 8.435841e+00 3.947556e-03 8.427949e+00 3.943863e-03 8.420065e+00 3.940174e-03 8.412189e+00 3.936488e-03 8.404319e+00 3.932805e-03 8.396457e+00 3.929127e-03 8.388602e+00 3.925451e-03 8.380755e+00 3.921779e-03 8.372915e+00 3.918110e-03 8.365083e+00 3.914445e-03 8.357258e+00 3.910783e-03 8.349440e+00 3.907125e-03 8.341629e+00 3.903470e-03 8.333826e+00 3.899818e-03 8.326030e+00 3.896170e-03 8.318241e+00 3.892525e-03 8.310460e+00 3.888884e-03 8.302686e+00 3.885246e-03 8.294919e+00 3.881611e-03 8.287159e+00 3.877980e-03 8.279407e+00 3.874353e-03 8.271662e+00 3.870728e-03 8.263924e+00 3.867107e-03 8.256193e+00 3.863490e-03 8.248470e+00 3.859876e-03 8.240754e+00 3.856265e-03 8.233045e+00 3.852658e-03 8.225343e+00 3.849054e-03 8.217649e+00 3.845453e-03 8.209961e+00 3.841856e-03 8.202281e+00 3.838262e-03 8.194609e+00 3.834671e-03 8.186942e+00 3.831084e-03 8.179284e+00 3.827500e-03 8.171633e+00 3.823920e-03 8.163988e+00 3.820342e-03 8.156351e+00 3.816769e-03 8.148722e+00 3.813198e-03 8.141098e+00 3.809631e-03 8.133483e+00 3.806067e-03 8.125875e+00 3.802507e-03 8.118273e+00 3.798950e-03 8.110679e+00 3.795396e-03 8.103091e+00 3.791846e-03 8.095510e+00 3.788298e-03 8.087938e+00 3.784755e-03 8.080372e+00 3.781214e-03 8.072813e+00 3.777677e-03 8.065261e+00 3.774143e-03 8.057716e+00 3.770612e-03 8.050179e+00 3.767085e-03 8.042648e+00 3.763561e-03 8.035125e+00 3.760040e-03 8.027608e+00 3.756523e-03 8.020099e+00 3.753009e-03 8.012596e+00 3.749498e-03 8.005100e+00 3.745991e-03 7.997612e+00 3.742486e-03 7.990130e+00 3.738986e-03 7.982656e+00 3.735488e-03 7.975189e+00 3.731993e-03 7.967728e+00 3.728502e-03 7.960275e+00 3.725014e-03 7.952828e+00 3.721530e-03 7.945388e+00 3.718049e-03 7.937956e+00 3.714571e-03 7.930530e+00 3.711096e-03 7.923111e+00 3.707624e-03 7.915699e+00 3.704156e-03 7.908295e+00 3.700691e-03 7.900897e+00 3.697229e-03 7.893506e+00 3.693770e-03 7.886122e+00 3.690315e-03 7.878745e+00 3.686863e-03 7.871374e+00 3.683414e-03 7.864011e+00 3.679968e-03 7.856655e+00 3.676526e-03 7.849305e+00 3.673086e-03 7.841962e+00 3.669650e-03 7.834626e+00 3.666217e-03 7.827297e+00 3.662788e-03 7.819975e+00 3.659361e-03 7.812660e+00 3.655938e-03 7.805351e+00 3.652518e-03 7.798049e+00 3.649101e-03 7.790755e+00 3.645688e-03 7.783467e+00 3.642277e-03 7.776186e+00 3.638870e-03 7.768911e+00 3.635466e-03 7.761644e+00 3.632065e-03 7.754383e+00 3.628667e-03 7.747129e+00 3.625273e-03 7.739882e+00 3.621882e-03 7.732642e+00 3.618494e-03 7.725408e+00 3.615109e-03 7.718181e+00 3.611727e-03 7.710961e+00 3.608348e-03 7.703748e+00 3.604973e-03 7.696541e+00 3.601600e-03 7.689342e+00 3.598231e-03 7.682148e+00 3.594865e-03 7.674962e+00 3.591502e-03 7.667782e+00 3.588143e-03 7.660609e+00 3.584786e-03 7.653443e+00 3.581433e-03 7.646284e+00 3.578082e-03 7.639131e+00 3.574735e-03 7.631985e+00 3.571391e-03 7.624846e+00 3.568050e-03 7.617712e+00 3.564712e-03 7.610587e+00 3.561378e-03 7.603467e+00 3.558046e-03 7.596354e+00 3.554718e-03 7.589248e+00 3.551393e-03 7.582149e+00 3.548070e-03 7.575056e+00 3.544751e-03 7.567970e+00 3.541435e-03 7.560890e+00 3.538122e-03 7.553817e+00 3.534813e-03 7.546751e+00 3.531506e-03 7.539691e+00 3.528202e-03 7.532638e+00 3.524902e-03 7.525591e+00 3.521604e-03 7.518552e+00 3.518310e-03 7.511518e+00 3.515019e-03 7.504491e+00 3.511731e-03 7.497471e+00 3.508446e-03 7.490458e+00 3.505164e-03 7.483451e+00 3.501885e-03 7.476450e+00 3.498609e-03 7.469456e+00 3.495336e-03 7.462469e+00 3.492066e-03 7.455488e+00 3.488799e-03 7.448514e+00 3.485536e-03 7.441546e+00 3.482275e-03 7.434585e+00 3.479018e-03 7.427630e+00 3.475763e-03 7.420681e+00 3.472512e-03 7.413740e+00 3.469263e-03 7.406805e+00 3.466018e-03 7.399876e+00 3.462776e-03 7.392953e+00 3.459536e-03 7.386037e+00 3.456300e-03 7.379128e+00 3.453067e-03 7.372225e+00 3.449837e-03 7.365329e+00 3.446609e-03 7.358439e+00 3.443385e-03 7.351555e+00 3.440164e-03 7.344678e+00 3.436946e-03 7.337808e+00 3.433731e-03 7.330943e+00 3.430519e-03 7.324085e+00 3.427309e-03 7.317234e+00 3.424103e-03 7.310389e+00 3.420900e-03 7.303550e+00 3.417700e-03 7.296718e+00 3.414503e-03 7.289892e+00 3.411309e-03 7.283073e+00 3.408118e-03 7.276260e+00 3.404930e-03 7.269453e+00 3.401744e-03 7.262653e+00 3.398562e-03 7.255859e+00 3.395383e-03 7.249072e+00 3.392207e-03 7.242290e+00 3.389033e-03 7.235515e+00 3.385863e-03 7.228747e+00 3.382696e-03 7.221984e+00 3.379531e-03 7.215229e+00 3.376370e-03 7.208479e+00 3.373211e-03 7.201735e+00 3.370056e-03 7.194999e+00 3.366903e-03 7.188268e+00 3.363754e-03 7.181544e+00 3.360607e-03 7.174826e+00 3.357463e-03 7.168114e+00 3.354323e-03 7.161408e+00 3.351185e-03 7.154709e+00 3.348050e-03 7.148016e+00 3.344918e-03 7.141329e+00 3.341789e-03 7.134649e+00 3.338663e-03 7.127975e+00 3.335539e-03 7.121307e+00 3.332419e-03 7.114645e+00 3.329302e-03 7.107990e+00 3.326187e-03 7.101340e+00 3.323076e-03 7.094697e+00 3.319967e-03 7.088060e+00 3.316862e-03 7.081430e+00 3.313759e-03 7.074805e+00 3.310659e-03 7.068187e+00 3.307562e-03 7.061575e+00 3.304468e-03 7.054969e+00 3.301376e-03 7.048370e+00 3.298288e-03 7.041776e+00 3.295203e-03 7.035189e+00 3.292120e-03 7.028608e+00 3.289041e-03 7.022033e+00 3.285964e-03 7.015464e+00 3.282890e-03 7.008901e+00 3.279819e-03 7.002345e+00 3.276751e-03 6.995794e+00 3.273685e-03 6.989250e+00 3.270623e-03 6.982712e+00 3.267563e-03 6.976180e+00 3.264507e-03 6.969654e+00 3.261453e-03 6.963134e+00 3.258402e-03 6.956620e+00 3.255354e-03 6.950112e+00 3.252309e-03 6.943611e+00 3.249266e-03 6.937115e+00 3.246227e-03 6.930626e+00 3.243190e-03 6.924142e+00 3.240156e-03 6.917665e+00 3.237125e-03 6.911194e+00 3.234097e-03 6.904729e+00 3.231071e-03 6.898270e+00 3.228049e-03 6.891817e+00 3.225029e-03 6.885370e+00 3.222012e-03 6.878929e+00 3.218998e-03 6.872494e+00 3.215987e-03 6.866065e+00 3.212978e-03 6.859642e+00 3.209973e-03 6.853225e+00 3.206970e-03 6.846814e+00 3.203970e-03 6.840409e+00 3.200973e-03 6.834010e+00 3.197978e-03 6.827617e+00 3.194987e-03 6.821230e+00 3.191998e-03 6.814849e+00 3.189012e-03 6.808474e+00 3.186029e-03 6.802105e+00 3.183048e-03 6.795742e+00 3.180071e-03 6.789384e+00 3.177096e-03 6.783033e+00 3.174124e-03 6.776688e+00 3.171155e-03 6.770349e+00 3.168188e-03 6.764015e+00 3.165224e-03 6.757688e+00 3.162263e-03 6.751366e+00 3.159305e-03 6.745050e+00 3.156350e-03 6.738741e+00 3.153397e-03 6.732437e+00 3.150447e-03 6.726139e+00 3.147500e-03 6.719847e+00 3.144556e-03 6.713561e+00 3.141614e-03 6.707281e+00 3.138675e-03 6.701006e+00 3.135739e-03 6.694737e+00 3.132806e-03 6.688475e+00 3.129875e-03 6.682218e+00 3.126947e-03 6.675967e+00 3.124022e-03 6.669722e+00 3.121100e-03 6.663483e+00 3.118180e-03 6.657249e+00 3.115263e-03 6.651021e+00 3.112349e-03 6.644800e+00 3.109437e-03 6.638584e+00 3.106529e-03 6.632374e+00 3.103623e-03 6.626169e+00 3.100719e-03 6.619971e+00 3.097819e-03 6.613778e+00 3.094921e-03 6.607591e+00 3.092026e-03 6.601410e+00 3.089133e-03 6.595235e+00 3.086244e-03 6.589065e+00 3.083356e-03 6.582901e+00 3.080472e-03 6.576743e+00 3.077590e-03 6.570591e+00 3.074711e-03 6.564444e+00 3.071835e-03 6.558303e+00 3.068961e-03 6.552168e+00 3.066091e-03 6.546039e+00 3.063222e-03 6.539916e+00 3.060357e-03 6.533798e+00 3.057494e-03 6.527686e+00 3.054634e-03 6.521579e+00 3.051776e-03 6.515479e+00 3.048921e-03 6.509384e+00 3.046069e-03 6.503294e+00 3.043220e-03 6.497211e+00 3.040373e-03 6.491133e+00 3.037529e-03 6.485061e+00 3.034687e-03 6.478994e+00 3.031848e-03 6.472933e+00 3.029012e-03 6.466878e+00 3.026179e-03 6.460828e+00 3.023348e-03 6.454784e+00 3.020520e-03 6.448746e+00 3.017694e-03 6.442714e+00 3.014871e-03 6.436687e+00 3.012051e-03 6.430665e+00 3.009233e-03 6.424650e+00 3.006418e-03 6.418640e+00 3.003606e-03 6.412635e+00 3.000796e-03 6.406637e+00 2.997989e-03 6.400643e+00 2.995184e-03 6.394656e+00 2.992383e-03 6.388674e+00 2.989583e-03 6.382698e+00 2.986787e-03 6.376727e+00 2.983992e-03 6.370761e+00 2.981201e-03 6.364802e+00 2.978412e-03 6.358848e+00 2.975626e-03 6.352900e+00 2.972843e-03 6.346957e+00 2.970062e-03 6.341019e+00 2.967283e-03 6.335087e+00 2.964507e-03 6.329161e+00 2.961734e-03 6.323240e+00 2.958964e-03 6.317325e+00 2.956196e-03 6.311416e+00 2.953430e-03 6.305511e+00 2.950667e-03 6.299613e+00 2.947907e-03 6.293720e+00 2.945150e-03 6.287832e+00 2.942394e-03 6.281950e+00 2.939642e-03 6.276074e+00 2.936892e-03 6.270203e+00 2.934145e-03 6.264337e+00 2.931400e-03 6.258477e+00 2.928658e-03 6.252623e+00 2.925918e-03 6.246774e+00 2.923181e-03 6.240930e+00 2.920446e-03 6.235092e+00 2.917714e-03 6.229259e+00 2.914985e-03 6.223432e+00 2.912258e-03 6.217610e+00 2.909534e-03 6.211794e+00 2.906812e-03 6.205983e+00 2.904093e-03 6.200177e+00 2.901376e-03 6.194377e+00 2.898662e-03 6.188583e+00 2.895950e-03 6.182794e+00 2.893241e-03 6.177010e+00 2.890535e-03 6.171231e+00 2.887831e-03 6.165458e+00 2.885129e-03 6.159691e+00 2.882431e-03 6.153929e+00 2.879734e-03 6.148172e+00 2.877040e-03 6.142420e+00 2.874349e-03 6.136674e+00 2.871660e-03 6.130934e+00 2.868974e-03 6.125198e+00 2.866290e-03 6.119469e+00 2.863609e-03 6.113744e+00 2.860930e-03 6.108025e+00 2.858253e-03 6.102311e+00 2.855580e-03 6.096602e+00 2.852908e-03 6.090899e+00 2.850240e-03 6.085202e+00 2.847573e-03 6.079509e+00 2.844909e-03 6.073822e+00 2.842248e-03 6.068140e+00 2.839589e-03 6.062464e+00 2.836933e-03 6.056792e+00 2.834279e-03 6.051126e+00 2.831628e-03 6.045466e+00 2.828979e-03 6.039811e+00 2.826333e-03 6.034161e+00 2.823689e-03 6.028516e+00 2.821047e-03 6.022876e+00 2.818408e-03 6.017242e+00 2.815772e-03 6.011613e+00 2.813138e-03 6.005990e+00 2.810506e-03 6.000371e+00 2.807877e-03 5.994758e+00 2.805250e-03 5.989151e+00 2.802626e-03 5.983548e+00 2.800004e-03 5.977950e+00 2.797385e-03 5.972358e+00 2.794768e-03 5.966771e+00 2.792154e-03 5.961190e+00 2.789542e-03 5.955613e+00 2.786932e-03 5.950042e+00 2.784325e-03 5.944476e+00 2.781720e-03 5.938915e+00 2.779118e-03 5.933359e+00 2.776518e-03 5.927809e+00 2.773921e-03 5.922264e+00 2.771326e-03 5.916724e+00 2.768734e-03 5.911189e+00 2.766144e-03 5.905659e+00 2.763556e-03 5.900135e+00 2.760971e-03 5.894615e+00 2.758388e-03 5.889101e+00 2.755808e-03 5.883592e+00 2.753230e-03 5.878088e+00 2.750654e-03 5.872589e+00 2.748081e-03 5.867095e+00 2.745510e-03 5.861607e+00 2.742942e-03 5.856124e+00 2.740376e-03 5.850646e+00 2.737813e-03 5.845172e+00 2.735252e-03 5.839705e+00 2.732693e-03 5.834242e+00 2.730136e-03 5.828784e+00 2.727583e-03 5.823331e+00 2.725031e-03 5.817884e+00 2.722482e-03 5.812441e+00 2.719935e-03 5.807004e+00 2.717391e-03 5.801572e+00 2.714849e-03 5.796145e+00 2.712309e-03 5.790723e+00 2.709772e-03 5.785306e+00 2.707237e-03 5.779894e+00 2.704704e-03 5.774487e+00 2.702174e-03 5.769085e+00 2.699646e-03 5.763689e+00 2.697121e-03 5.758296e+00 2.694598e-03 5.752910e+00 2.692077e-03 5.747529e+00 2.689559e-03 5.742152e+00 2.687043e-03 5.736780e+00 2.684529e-03 5.731413e+00 2.682018e-03 5.726052e+00 2.679509e-03 5.720695e+00 2.677002e-03 5.715344e+00 2.674498e-03 5.709998e+00 2.671996e-03 5.704656e+00 2.669497e-03 5.699319e+00 2.667000e-03 5.693988e+00 2.664505e-03 5.688662e+00 2.662012e-03 5.683340e+00 2.659522e-03 5.678023e+00 2.657034e-03 5.672712e+00 2.654548e-03 5.667405e+00 2.652065e-03 5.662104e+00 2.649584e-03 5.656807e+00 2.647106e-03 5.651515e+00 2.644629e-03 5.646228e+00 2.642155e-03 5.640946e+00 2.639684e-03 5.635670e+00 2.637214e-03 5.630398e+00 2.634747e-03 5.625131e+00 2.632283e-03 5.619869e+00 2.629820e-03 5.614612e+00 2.627360e-03 5.609359e+00 2.624902e-03 5.604112e+00 2.622447e-03 5.598869e+00 2.619994e-03 5.593632e+00 2.617543e-03 5.588399e+00 2.615094e-03 5.583171e+00 2.612648e-03 5.577949e+00 2.610204e-03 5.572731e+00 2.607762e-03 5.567518e+00 2.605323e-03 5.562309e+00 2.602885e-03 5.557106e+00 2.600451e-03 5.551908e+00 2.598018e-03 5.546714e+00 2.595588e-03 5.541525e+00 2.593159e-03 5.536341e+00 2.590734e-03 5.531162e+00 2.588310e-03 5.525988e+00 2.585889e-03 5.520819e+00 2.583470e-03 5.515654e+00 2.581053e-03 5.510494e+00 2.578639e-03 5.505340e+00 2.576226e-03 5.500189e+00 2.573817e-03 5.495044e+00 2.571409e-03 5.489904e+00 2.569003e-03 5.484768e+00 2.566600e-03 5.479638e+00 2.564199e-03 5.474512e+00 2.561800e-03 5.469390e+00 2.559404e-03 5.464274e+00 2.557010e-03 5.459162e+00 2.554618e-03 5.454055e+00 2.552228e-03 5.448953e+00 2.549841e-03 5.443856e+00 2.547455e-03 5.438764e+00 2.545072e-03 5.433676e+00 2.542691e-03 5.428593e+00 2.540313e-03 5.423514e+00 2.537936e-03 5.418441e+00 2.535562e-03 5.413372e+00 2.533190e-03 5.408308e+00 2.530821e-03 5.403249e+00 2.528453e-03 5.398194e+00 2.526088e-03 5.393145e+00 2.523725e-03 5.388100e+00 2.521364e-03 5.383059e+00 2.519005e-03 5.378024e+00 2.516649e-03 5.372993e+00 2.514295e-03 5.367966e+00 2.511943e-03 5.362945e+00 2.509593e-03 5.357928e+00 2.507245e-03 5.352916e+00 2.504900e-03 5.347908e+00 2.502556e-03 5.342906e+00 2.500215e-03 5.337907e+00 2.497877e-03 5.332914e+00 2.495540e-03 5.327925e+00 2.493205e-03 5.322941e+00 2.490873e-03 5.317962e+00 2.488543e-03 5.312987e+00 2.486215e-03 5.308017e+00 2.483889e-03 5.303051e+00 2.481566e-03 5.298090e+00 2.479244e-03 5.293135e+00 2.476925e-03 5.288183e+00 2.474608e-03 5.283236e+00 2.472293e-03 5.278294e+00 2.469980e-03 5.273356e+00 2.467670e-03 5.268423e+00 2.465361e-03 5.263494e+00 2.463055e-03 5.258571e+00 2.460751e-03 5.253652e+00 2.458449e-03 5.248737e+00 2.456149e-03 5.243827e+00 2.453852e-03 5.238922e+00 2.451556e-03 5.234021e+00 2.449263e-03 5.229125e+00 2.446972e-03 5.224233e+00 2.444682e-03 5.219346e+00 2.442396e-03 5.214463e+00 2.440111e-03 5.209586e+00 2.437828e-03 5.204712e+00 2.435548e-03 5.199843e+00 2.433269e-03 5.194979e+00 2.430993e-03 5.190119e+00 2.428719e-03 5.185264e+00 2.426447e-03 5.180414e+00 2.424177e-03 5.175568e+00 2.421909e-03 5.170726e+00 2.419644e-03 5.165889e+00 2.417380e-03 5.161057e+00 2.415119e-03 5.156229e+00 2.412860e-03 5.151405e+00 2.410603e-03 5.146586e+00 2.408348e-03 5.141771e+00 2.406095e-03 5.136961e+00 2.403844e-03 5.132156e+00 2.401595e-03 5.127355e+00 2.399348e-03 5.122559e+00 2.397104e-03 5.117767e+00 2.394862e-03 5.112979e+00 2.392621e-03 5.108196e+00 2.390383e-03 5.103418e+00 2.388147e-03 5.098644e+00 2.385913e-03 5.093874e+00 2.383681e-03 5.089109e+00 2.381451e-03 5.084348e+00 2.379223e-03 5.079592e+00 2.376998e-03 5.074841e+00 2.374774e-03 5.070093e+00 2.372553e-03 5.065350e+00 2.370333e-03 5.060612e+00 2.368116e-03 5.055878e+00 2.365900e-03 5.051148e+00 2.363687e-03 5.046423e+00 2.361476e-03 5.041702e+00 2.359267e-03 5.036986e+00 2.357060e-03 5.032274e+00 2.354855e-03 5.027566e+00 2.352652e-03 5.022863e+00 2.350451e-03 5.018165e+00 2.348253e-03 5.013470e+00 2.346056e-03 5.008780e+00 2.343861e-03 5.004095e+00 2.341669e-03 4.999413e+00 2.339478e-03 4.994737e+00 2.337290e-03 4.990065e+00 2.335103e-03 4.985396e+00 2.332919e-03 4.980733e+00 2.330736e-03 4.976074e+00 2.328556e-03 4.971418e+00 2.326378e-03 4.966768e+00 2.324202e-03 4.962122e+00 2.322027e-03 4.957480e+00 2.319855e-03 4.952842e+00 2.317685e-03 4.948209e+00 2.315517e-03 4.943580e+00 2.313351e-03 4.938956e+00 2.311187e-03 4.934336e+00 2.309025e-03 4.929719e+00 2.306865e-03 4.925108e+00 2.304707e-03 4.920501e+00 2.302551e-03 4.915898e+00 2.300397e-03 4.911299e+00 2.298245e-03 4.906705e+00 2.296095e-03 4.902115e+00 2.293947e-03 4.897529e+00 2.291801e-03 4.892948e+00 2.289657e-03 4.888371e+00 2.287515e-03 4.883798e+00 2.285375e-03 4.879229e+00 2.283238e-03 4.874665e+00 2.281102e-03 4.870105e+00 2.278968e-03 4.865549e+00 2.276836e-03 4.860997e+00 2.274706e-03 4.856450e+00 2.272578e-03 4.851907e+00 2.270452e-03 4.847368e+00 2.268328e-03 4.842834e+00 2.266207e-03 4.838303e+00 2.264086e-03 4.833777e+00 2.261969e-03 4.829256e+00 2.259853e-03 4.824738e+00 2.257739e-03 4.820224e+00 2.255626e-03 4.815715e+00 2.253516e-03 4.811211e+00 2.251408e-03 4.806710e+00 2.249302e-03 4.802213e+00 2.247198e-03 4.797721e+00 2.245096e-03 4.793233e+00 2.242996e-03 4.788749e+00 2.240897e-03 4.784269e+00 2.238801e-03 4.779794e+00 2.236707e-03 4.775322e+00 2.234614e-03 4.770855e+00 2.232524e-03 ''') ImportString(u'wave(numeric)',''' 4.108090e+00 4.236760e+00 4.283090e+00 4.329410e+00 4.370590e+00 4.411770e+00 4.452940e+00 4.494120e+00 4.545590e+00 4.597060e+00 4.638240e+00 4.694850e+00 4.751470e+00 4.792650e+00 4.838970e+00 4.885290e+00 4.926470e+00 4.998530e+00 5.070590e+00 5.111760e+00 5.163240e+00 5.214710e+00 5.266180e+00 5.317650e+00 5.358820e+00 5.400000e+00 5.441180e+00 5.482350e+00 5.523530e+00 5.564710e+00 5.605880e+00 5.647060e+00 5.688240e+00 5.729410e+00 5.780880e+00 5.832350e+00 5.873530e+00 5.930150e+00 5.986760e+00 6.027940e+00 6.069120e+00 6.110290e+00 6.151470e+00 6.192650e+00 6.233820e+00 6.275000e+00 6.316180e+00 6.372790e+00 6.429410e+00 6.491180e+00 6.568380e+00 6.625000e+00 6.666180e+00 6.707350e+00 6.748530e+00 6.789710e+00 6.830880e+00 6.882350e+00 6.933820e+00 6.975000e+00 7.016180e+00 7.057350e+00 7.098530e+00 7.139710e+00 7.180880e+00 7.242650e+00 7.304410e+00 7.345590e+00 7.397060e+00 7.448530e+00 7.489710e+00 7.530880e+00 7.572060e+00 7.649260e+00 7.736760e+00 7.788240e+00 7.829410e+00 7.870590e+00 7.922060e+00 7.973530e+00 8.014710e+00 8.055880e+00 8.097060e+00 8.138240e+00 8.179410e+00 8.220590e+00 8.272060e+00 8.323530e+00 8.364710e+00 8.405880e+00 8.447060e+00 8.488240e+00 8.534560e+00 8.596320e+00 8.652940e+00 8.694120e+00 8.735290e+00 8.776470e+00 8.817650e+00 8.858820e+00 8.900000e+00 8.941180e+00 8.982350e+00 9.023530e+00 9.064710e+00 9.131620e+00 9.198530e+00 9.239710e+00 9.280880e+00 9.322060e+00 9.373530e+00 9.425000e+00 9.476470e+00 9.527940e+00 9.569120e+00 9.610290e+00 9.666910e+00 9.723530e+00 9.764710e+00 9.805880e+00 9.857350e+00 9.908820e+00 9.970590e+00 1.004780e+01 1.010440e+01 1.014560e+01 1.018680e+01 1.022790e+01 1.026910e+01 1.031030e+01 1.036180e+01 1.041320e+01 1.045440e+01 1.049560e+01 1.055220e+01 1.060880e+01 1.065000e+01 1.069120e+01 1.073240e+01 1.077350e+01 1.081470e+01 1.085590e+01 1.089710e+01 1.093820e+01 1.097940e+01 1.102060e+01 1.106180e+01 1.110290e+01 1.114410e+01 1.118530e+01 1.122650e+01 1.126760e+01 1.130880e+01 1.137060e+01 1.143240e+01 1.148380e+01 1.155070e+01 1.160740e+01 1.164850e+01 1.170000e+01 1.175150e+01 1.179260e+01 1.183380e+01 1.187500e+01 1.191620e+01 1.195740e+01 1.201400e+01 1.207060e+01 1.211180e+01 1.216320e+01 1.221470e+01 1.225590e+01 1.229710e+01 1.234340e+01 1.238970e+01 1.243090e+01 1.248240e+01 1.253380e+01 1.257500e+01 1.261620e+01 1.265740e+01 1.269850e+01 1.273970e+01 1.278090e+01 1.282210e+01 1.286320e+01 1.292500e+01 1.298680e+01 1.305370e+01 1.314630e+01 1.321320e+01 1.325440e+01 1.331100e+01 1.336760e+01 1.341910e+01 1.347060e+01 1.351180e+01 1.355290e+01 1.359410e+01 1.363530e+01 1.369190e+01 1.375880e+01 1.382570e+01 1.388240e+01 1.392350e+01 1.396470e+01 1.400590e+01 1.404710e+01 1.411400e+01 1.418090e+01 1.422210e+01 1.426320e+01 1.430440e+01 1.434560e+01 1.439710e+01 1.446910e+01 1.453600e+01 1.458240e+01 1.462350e+01 1.466470e+01 1.470590e+01 1.476250e+01 1.481910e+01 1.486030e+01 1.490150e+01 1.494260e+01 1.498380e+01 1.502500e+01 1.506620e+01 1.510740e+01 1.514850e+01 1.522060e+01 1.530290e+01 1.536990e+01 1.542650e+01 1.548310e+01 1.553970e+01 1.560660e+01 1.568900e+01 1.574560e+01 1.578680e+01 1.584340e+01 1.590000e+01 1.594120e+01 1.598240e+01 1.602350e+01 1.606470e+01 1.610590e+01 1.614710e+01 1.618820e+01 1.622940e+01 1.627060e+01 1.631180e+01 1.636320e+01 1.641470e+01 1.645590e+01 1.651250e+01 1.656910e+01 1.661030e+01 1.665150e+01 1.670290e+01 1.675440e+01 1.680590e+01 1.685740e+01 1.689850e+01 1.693970e+01 1.699120e+01 1.705810e+01 1.711470e+01 1.715590e+01 1.719710e+01 1.725370e+01 1.731030e+01 1.735150e+01 1.739260e+01 1.743380e+01 1.749040e+01 1.754710e+01 1.759850e+01 1.765000e+01 1.769120e+01 1.773240e+01 1.777350e+01 1.781470e+01 1.785590e+01 1.791760e+01 1.797940e+01 1.802060e+01 1.806180e+01 1.811320e+01 1.816470e+01 1.820590e+01 1.826250e+01 1.831910e+01 1.836030e+01 1.840150e+01 1.845290e+01 1.850440e+01 1.854560e+01 1.860220e+01 1.865880e+01 1.870000e+01 1.875660e+01 1.881320e+01 1.885440e+01 1.892130e+01 1.898820e+01 1.902940e+01 1.907060e+01 1.912210e+01 1.917350e+01 1.921470e+01 1.925590e+01 1.929710e+01 1.933820e+01 1.937940e+01 1.942060e+01 1.946180e+01 1.950290e+01 1.954410e+01 1.958530e+01 1.962650e+01 1.968310e+01 1.973970e+01 1.978090e+01 1.982210e+01 1.986320e+01 1.990440e+01 1.994560e+01 1.998680e+01 2.002790e+01 2.006910e+01 2.011030e+01 2.015150e+01 2.019260e+01 2.023380e+01 2.027500e+01 2.031620e+01 2.035740e+01 2.039850e+01 2.043970e+01 2.048090e+01 2.052210e+01 2.056320e+01 2.060440e+01 2.064560e+01 2.068680e+01 2.077940e+01 2.087210e+01 2.091320e+01 2.095440e+01 2.099560e+01 2.103680e+01 2.107790e+01 2.111910e+01 2.116030e+01 2.120150e+01 2.124260e+01 2.128380e+01 2.132500e+01 2.136620e+01 2.140740e+01 2.144850e+01 2.148970e+01 2.153090e+01 2.157210e+01 2.161320e+01 2.165440e+01 2.169560e+01 2.173680e+01 2.177790e+01 2.181910e+01 2.186030e+01 2.190150e+01 2.194260e+01 2.198380e+01 2.202500e+01 2.206620e+01 2.210740e+01 2.214850e+01 2.218970e+01 2.223090e+01 2.227210e+01 2.231320e+01 2.235440e+01 2.239560e+01 2.243680e+01 2.247790e+01 2.251910e+01 2.256030e+01 2.260150e+01 2.264260e+01 2.268380e+01 2.276100e+01 2.283820e+01 2.287940e+01 2.294120e+01 2.300290e+01 2.304410e+01 2.308530e+01 2.312650e+01 2.316760e+01 2.320880e+01 2.325000e+01 2.329120e+01 2.333240e+01 2.338900e+01 2.344560e+01 2.348680e+01 2.352790e+01 2.356910e+01 2.361030e+01 2.365150e+01 2.369260e+01 2.373380e+01 2.377500e+01 2.381620e+01 2.385740e+01 2.389850e+01 2.393970e+01 2.398090e+01 2.404260e+01 2.410440e+01 2.414560e+01 2.418680e+01 2.422790e+01 2.428970e+01 2.435150e+01 2.439260e+01 2.443380e+01 2.447500e+01 2.451620e+01 2.455740e+01 2.459850e+01 2.463970e+01 2.469120e+01 2.474260e+01 2.478380e+01 2.482500e+01 2.486620e+01 2.490740e+01 2.496910e+01 2.503090e+01 2.507210e+01 2.511320e+01 2.515440e+01 2.519560e+01 2.523680e+01 2.527790e+01 2.531910e+01 2.536030e+01 2.540150e+01 2.544260e+01 2.548380e+01 2.552500e+01 2.556620e+01 2.560740e+01 2.564850e+01 2.568970e+01 2.573090e+01 2.577210e+01 2.583900e+01 2.590590e+01 2.594710e+01 2.598820e+01 2.605000e+01 2.611180e+01 2.616840e+01 2.622500e+01 2.626620e+01 2.630740e+01 2.634850e+01 2.638970e+01 2.643090e+01 2.647210e+01 2.651320e+01 2.655440e+01 2.659560e+01 2.665220e+01 2.670880e+01 2.675000e+01 2.681180e+01 2.687350e+01 2.691470e+01 2.695590e+01 2.701760e+01 2.710000e+01 2.718240e+01 2.726470e+01 2.737280e+01 2.748090e+01 2.756320e+01 2.767130e+01 2.777940e+01 2.786180e+01 2.794410e+01 2.802650e+01 2.810880e+01 2.823240e+01 2.835590e+01 2.843820e+01 2.852060e+01 2.860290e+01 2.868530e+01 2.878820e+01 2.890150e+01 2.900960e+01 2.910740e+01 2.918970e+01 2.927210e+01 2.935440e+01 2.943680e+01 2.951910e+01 2.960150e+01 2.968380e+01 2.976620e+01 2.984850e+01 2.993090e+01 3.001320e+01 3.009560e+01 3.017790e+01 3.026030e+01 3.037870e+01 3.049710e+01 3.057940e+01 3.066180e+01 3.074410e+01 3.082650e+01 3.090880e+01 3.099120e+01 3.107350e+01 3.117130e+01 3.130510e+01 3.142350e+01 3.150590e+01 3.158820e+01 3.167060e+01 3.175290e+01 3.183530e+01 3.191760e+01 3.200000e+01 3.208240e+01 3.216470e+01 3.224710e+01 3.232940e+01 3.241180e+01 3.249410e+01 3.257650e+01 3.267430e+01 3.277210e+01 3.285440e+01 3.293680e+01 3.301910e+01 3.310150e+01 3.318380e+01 3.326620e+01 3.334850e+01 3.344120e+01 3.353380e+01 3.363680e+01 3.373970e+01 3.382210e+01 3.390440e+01 3.400740e+01 3.411030e+01 3.419260e+01 3.427500e+01 3.435740e+01 3.445510e+01 3.455290e+01 3.463530e+01 3.471760e+01 3.480000e+01 3.488240e+01 3.499040e+01 3.509850e+01 3.520150e+01 3.530440e+01 3.538680e+01 3.546910e+01 3.555150e+01 3.563380e+01 3.571620e+01 3.582940e+01 3.594260e+01 3.602500e+01 3.610740e+01 3.620510e+01 3.630290e+01 3.638530e+01 3.646760e+01 3.655000e+01 3.663240e+01 3.671470e+01 3.679710e+01 3.690000e+01 3.700290e+01 3.708530e+01 3.718310e+01 3.728090e+01 3.736320e+01 3.744560e+01 3.752790e+01 3.761030e+01 3.769260e+01 3.777500e+01 3.785740e+01 3.793970e+01 3.802210e+01 3.810440e+01 ''') ImportString(u'wave_090(numeric)',''' 4.108090e+00 4.236760e+00 4.283090e+00 4.329410e+00 4.370590e+00 4.411770e+00 4.452940e+00 4.494120e+00 4.545590e+00 4.597060e+00 4.638240e+00 4.694850e+00 4.751470e+00 4.792650e+00 4.838970e+00 4.885290e+00 4.926470e+00 4.998530e+00 5.070590e+00 5.111760e+00 5.163240e+00 5.214710e+00 5.266180e+00 5.317650e+00 5.358820e+00 5.400000e+00 5.441180e+00 5.482350e+00 5.523530e+00 5.564710e+00 5.605880e+00 5.647060e+00 5.688240e+00 5.729410e+00 5.780880e+00 5.832350e+00 5.873530e+00 5.930150e+00 5.986760e+00 6.027940e+00 6.069120e+00 6.110290e+00 6.151470e+00 6.192650e+00 6.233820e+00 6.275000e+00 6.316180e+00 6.372790e+00 6.429410e+00 6.491180e+00 6.568380e+00 6.625000e+00 6.666180e+00 6.707350e+00 6.748530e+00 6.789710e+00 6.830880e+00 6.882350e+00 6.933820e+00 6.975000e+00 7.016180e+00 7.057350e+00 7.098530e+00 7.139710e+00 7.180880e+00 7.242650e+00 7.304410e+00 7.345590e+00 7.397060e+00 7.448530e+00 7.489710e+00 7.530880e+00 7.572060e+00 7.649260e+00 7.736760e+00 7.788240e+00 7.829410e+00 7.870590e+00 7.922060e+00 7.973530e+00 8.014710e+00 8.055880e+00 8.097060e+00 8.138240e+00 8.179410e+00 8.220590e+00 8.272060e+00 8.323530e+00 8.364710e+00 8.405880e+00 8.447060e+00 8.488240e+00 8.534560e+00 8.596320e+00 8.652940e+00 8.694120e+00 8.735290e+00 8.776470e+00 8.817650e+00 8.858820e+00 8.900000e+00 8.941180e+00 8.982350e+00 9.023530e+00 9.064710e+00 9.131620e+00 9.198530e+00 9.239710e+00 9.280880e+00 9.322060e+00 9.373530e+00 9.425000e+00 9.476470e+00 9.527940e+00 9.569120e+00 9.610290e+00 9.666910e+00 9.723530e+00 9.764710e+00 9.805880e+00 9.857350e+00 9.908820e+00 9.970590e+00 1.004780e+01 1.010440e+01 1.014560e+01 1.018680e+01 1.022790e+01 1.026910e+01 1.031030e+01 1.036180e+01 1.041320e+01 1.045440e+01 1.049560e+01 1.055220e+01 1.060880e+01 1.065000e+01 1.069120e+01 1.073240e+01 1.077350e+01 1.081470e+01 1.085590e+01 1.089710e+01 1.093820e+01 1.097940e+01 1.102060e+01 1.106180e+01 1.110290e+01 1.114410e+01 1.118530e+01 1.122650e+01 1.126760e+01 1.130880e+01 1.137060e+01 1.143240e+01 1.148380e+01 1.155070e+01 1.160740e+01 1.164850e+01 1.170000e+01 1.175150e+01 1.179260e+01 1.183380e+01 1.187500e+01 1.191620e+01 1.195740e+01 1.201400e+01 1.207060e+01 1.211180e+01 1.216320e+01 1.221470e+01 1.225590e+01 1.229710e+01 1.234340e+01 1.238970e+01 1.243090e+01 1.248240e+01 1.253380e+01 1.257500e+01 1.261620e+01 1.265740e+01 1.269850e+01 1.273970e+01 1.278090e+01 1.282210e+01 1.286320e+01 1.292500e+01 1.298680e+01 1.305370e+01 1.314630e+01 1.321320e+01 1.325440e+01 1.331100e+01 1.336760e+01 1.341910e+01 1.347060e+01 1.351180e+01 1.355290e+01 1.359410e+01 1.363530e+01 1.369190e+01 1.375880e+01 1.382570e+01 1.388240e+01 1.392350e+01 1.396470e+01 1.400590e+01 1.404710e+01 1.411400e+01 1.418090e+01 1.422210e+01 1.426320e+01 1.430440e+01 1.434560e+01 1.439710e+01 1.446910e+01 1.453600e+01 1.458240e+01 1.462350e+01 1.466470e+01 1.470590e+01 1.476250e+01 1.481910e+01 1.486030e+01 1.490150e+01 1.494260e+01 1.498380e+01 1.502500e+01 1.506620e+01 1.510740e+01 1.514850e+01 1.522060e+01 1.530290e+01 1.536990e+01 1.542650e+01 1.548310e+01 1.553970e+01 1.560660e+01 1.568900e+01 1.574560e+01 1.578680e+01 1.584340e+01 1.590000e+01 1.594120e+01 1.598240e+01 1.602350e+01 1.606470e+01 1.610590e+01 1.614710e+01 1.618820e+01 1.622940e+01 1.627060e+01 1.631180e+01 1.636320e+01 1.641470e+01 1.645590e+01 1.651250e+01 1.656910e+01 1.661030e+01 1.665150e+01 1.670290e+01 1.675440e+01 1.680590e+01 1.685740e+01 1.689850e+01 1.693970e+01 1.699120e+01 1.705810e+01 1.711470e+01 1.715590e+01 1.719710e+01 1.725370e+01 1.731030e+01 1.735150e+01 1.739260e+01 1.743380e+01 1.749040e+01 1.754710e+01 1.759850e+01 1.765000e+01 1.769120e+01 1.773240e+01 1.777350e+01 1.781470e+01 1.785590e+01 1.791760e+01 1.797940e+01 1.802060e+01 1.806180e+01 1.811320e+01 1.816470e+01 1.820590e+01 1.826250e+01 1.831910e+01 1.836030e+01 1.840150e+01 1.845290e+01 1.850440e+01 1.854560e+01 1.860220e+01 1.865880e+01 1.870000e+01 1.875660e+01 1.881320e+01 1.885440e+01 1.892130e+01 1.898820e+01 1.902940e+01 1.907060e+01 1.912210e+01 1.917350e+01 1.921470e+01 1.925590e+01 1.929710e+01 1.933820e+01 1.937940e+01 1.942060e+01 1.946180e+01 1.950290e+01 1.954410e+01 1.958530e+01 1.962650e+01 1.968310e+01 1.973970e+01 1.978090e+01 1.982210e+01 1.986320e+01 1.990440e+01 1.994560e+01 1.998680e+01 2.002790e+01 2.006910e+01 2.011030e+01 2.015150e+01 2.019260e+01 2.023380e+01 2.027500e+01 2.031620e+01 2.035740e+01 2.039850e+01 2.043970e+01 2.048090e+01 2.052210e+01 2.056320e+01 2.060440e+01 2.064560e+01 2.068680e+01 2.077940e+01 2.087210e+01 2.091320e+01 2.095440e+01 2.099560e+01 2.103680e+01 2.107790e+01 2.111910e+01 2.116030e+01 2.120150e+01 2.124260e+01 2.128380e+01 2.132500e+01 2.136620e+01 2.140740e+01 2.144850e+01 2.148970e+01 2.153090e+01 2.157210e+01 2.161320e+01 2.165440e+01 2.169560e+01 2.173680e+01 2.177790e+01 2.181910e+01 2.186030e+01 2.190150e+01 2.194260e+01 2.198380e+01 2.202500e+01 2.206620e+01 2.210740e+01 2.214850e+01 2.218970e+01 2.223090e+01 2.227210e+01 2.231320e+01 2.235440e+01 2.239560e+01 2.243680e+01 2.247790e+01 2.251910e+01 2.256030e+01 2.260150e+01 2.264260e+01 2.268380e+01 2.276100e+01 2.283820e+01 2.287940e+01 2.294120e+01 2.300290e+01 2.304410e+01 2.308530e+01 2.312650e+01 2.316760e+01 2.320880e+01 2.325000e+01 2.329120e+01 2.333240e+01 2.338900e+01 2.344560e+01 2.348680e+01 2.352790e+01 2.356910e+01 2.361030e+01 2.365150e+01 2.369260e+01 2.373380e+01 2.377500e+01 2.381620e+01 2.385740e+01 2.389850e+01 2.393970e+01 2.398090e+01 2.404260e+01 2.410440e+01 2.414560e+01 2.418680e+01 2.422790e+01 2.428970e+01 2.435150e+01 2.439260e+01 2.443380e+01 2.447500e+01 2.451620e+01 2.455740e+01 2.459850e+01 2.463970e+01 2.469120e+01 2.474260e+01 2.478380e+01 2.482500e+01 2.486620e+01 2.490740e+01 2.496910e+01 2.503090e+01 2.507210e+01 2.511320e+01 2.515440e+01 2.519560e+01 2.523680e+01 2.527790e+01 2.531910e+01 2.536030e+01 2.540150e+01 2.544260e+01 2.548380e+01 2.552500e+01 2.556620e+01 2.560740e+01 2.564850e+01 2.568970e+01 2.573090e+01 2.577210e+01 2.583900e+01 2.590590e+01 2.594710e+01 2.598820e+01 2.605000e+01 2.611180e+01 2.616840e+01 2.622500e+01 2.626620e+01 2.630740e+01 2.634850e+01 2.638970e+01 2.643090e+01 2.647210e+01 2.651320e+01 2.655440e+01 2.659560e+01 2.665220e+01 2.670880e+01 2.675000e+01 2.681180e+01 2.687350e+01 2.691470e+01 2.695590e+01 2.701760e+01 2.710000e+01 2.718240e+01 2.726470e+01 2.737280e+01 2.748090e+01 2.756320e+01 2.767130e+01 2.777940e+01 2.786180e+01 2.794410e+01 2.802650e+01 2.810880e+01 2.823240e+01 2.835590e+01 2.843820e+01 2.852060e+01 2.860290e+01 2.868530e+01 2.878820e+01 2.890150e+01 2.900960e+01 2.910740e+01 2.918970e+01 2.927210e+01 2.935440e+01 2.943680e+01 2.951910e+01 2.960150e+01 2.968380e+01 2.976620e+01 2.984850e+01 2.993090e+01 3.001320e+01 3.009560e+01 3.017790e+01 3.026030e+01 3.037870e+01 3.049710e+01 3.057940e+01 3.066180e+01 3.074410e+01 3.082650e+01 3.090880e+01 3.099120e+01 3.107350e+01 3.117130e+01 3.130510e+01 3.142350e+01 3.150590e+01 3.158820e+01 3.167060e+01 3.175290e+01 3.183530e+01 3.191760e+01 3.200000e+01 3.208240e+01 3.216470e+01 3.224710e+01 3.232940e+01 3.241180e+01 3.249410e+01 3.257650e+01 3.267430e+01 3.277210e+01 3.285440e+01 3.293680e+01 3.301910e+01 3.310150e+01 3.318380e+01 3.326620e+01 3.334850e+01 3.344120e+01 3.353380e+01 3.363680e+01 3.373970e+01 3.382210e+01 3.390440e+01 3.400740e+01 3.411030e+01 3.419260e+01 3.427500e+01 3.435740e+01 3.445510e+01 3.455290e+01 3.463530e+01 3.471760e+01 3.480000e+01 3.488240e+01 3.499040e+01 3.509850e+01 3.520150e+01 3.530440e+01 3.538680e+01 3.546910e+01 3.555150e+01 3.563380e+01 3.571620e+01 3.582940e+01 3.594260e+01 3.602500e+01 3.610740e+01 3.620510e+01 3.630290e+01 3.638530e+01 3.646760e+01 3.655000e+01 3.663240e+01 3.671470e+01 3.679710e+01 3.690000e+01 3.700290e+01 3.708530e+01 3.718310e+01 3.728090e+01 3.736320e+01 3.744560e+01 3.752790e+01 3.761030e+01 3.769260e+01 3.777500e+01 3.785740e+01 3.793970e+01 3.802210e+01 3.810440e+01 ''') Set('width', '24.7cm') Set('height', '16.1cm') Set('StyleSheet/Font/font', u'Arial') Add('page', name='page1', autoadd=False) To('page1') Add('grid', name='grid1', autoadd=False) To('grid1') Set('columns', 1) Set('scaleRows', [1.0, 0.5]) Add('axis', name='x', autoadd=False) To('x') Set('label', u'Wavelength (\\AA)') Set('min', 6.0) Set('max', 26.0) Set('MajorTicks/number', 30) To('..') Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', '0cm') Set('rightMargin', '0cm') Set('topMargin', '0cm') Set('bottomMargin', '0cm') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Flux (10^{-3} photon cm^{-2} s^{-1} \\AA^{-1})') Set('min', 0.0) Set('max', 0.0027000000000000001) Set('direction', 'vertical') Set('TickLabels/scale', 1000.0) To('..') Add('xy', name='psf099', autoadd=False) To('psf099') Set('xData', u'wave') Set('yData', u'flux') Set('marker', u'none') Set('key', u'99% PSF') Set('PlotLine/steps', u'centre') Set('PlotLine/width', u'1pt') Set('ErrorBarLine/color', u'grey') To('..') Add('label', name='labelOVIII', autoadd=False) To('labelOVIII') Set('label', u'O \\size{-2}{VIII}') Set('xPos', [19.23]) Set('yPos', [0.0011999999999999999]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='labelOVIII2', autoadd=False) To('labelOVIII2') Set('label', u'O \\size{-2}{VIII} Fe \\size{-2}{XVIII}') Set('xPos', [16.25]) Set('yPos', [0.00089999999999999998]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='labelFeXVII', autoadd=False) To('labelFeXVII') Set('label', u'Fe \\size{-2}{XVII}') Set('xPos', [17.300000000000001]) Set('yPos', [0.00073999999999999999]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='labelFeXVII2', autoadd=False) To('labelFeXVII2') Set('label', u'Fe \\size{-2}{XVII}') Set('xPos', [15.25]) Set('yPos', [0.00089999999999999998]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='labelNVII', autoadd=False) To('labelNVII') Set('label', u'N \\size{-2}{VII}') Set('xPos', [25.100000000000001]) Set('yPos', [0.00059999999999999995]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='MgXII', autoadd=False) To('MgXII') Set('label', u'Mg \\size{-2}{XII}') Set('xPos', [8.5]) Set('yPos', [0.0016000000000000001]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('xy', name='psf090', autoadd=False) To('psf090') Set('xData', u'wave_090') Set('yData', u'flux_090') Set('marker', u'none') Set('key', u'90% PSF') Set('PlotLine/steps', u'centre') Set('PlotLine/color', u'darkgreen') Set('PlotLine/width', u'1pt') Set('ErrorBarLine/color', u'#55aa7f') To('..') Add('key', name='key1', autoadd=False) To('key1') Set('Border/hide', True) Set('vertPosn', u'top') To('..') Add('label', name='labelSiXIV', autoadd=False) To('labelSiXIV') Set('label', u'Si \\size{-2}{XIV}') Set('xPos', [6.2060000000000004]) Set('yPos', [0.0020999999999999999]) Set('positioning', u'axes') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='labelSiXIII', autoadd=False) To('labelSiXIII') Set('label', u'Si \\size{-3}{XIII}') Set('xPos', [6.75]) Set('yPos', [0.0015]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('xy', name='psfdelta', autoadd=False) To('psfdelta') Set('xData', u'wave') Set('yData', u'fluxdelta') Set('marker', u'none') Set('key', u'99% - 90%') Set('PlotLine/steps', u'centre') Set('PlotLine/color', u'#ff007f') Set('PlotLine/width', u'1pt') Set('ErrorBarLine/color', u'#ff557f') To('..') Add('label', name='labelNeIXFeXIX', autoadd=False) To('labelNeIXFeXIX') Set('label', u'Fe \\size{-2}{XIX}') Set('xPos', [13.529999999999999]) Set('yPos', [0.0011999999999999999]) Set('positioning', u'axes') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='FeXX_XXII', autoadd=False) To('FeXX_XXII') Set('label', u'Fe \\size{-2}{XX}-\\size{-2}{XXII}') Set('xPos', [12.9]) Set('yPos', [0.0013500000000000001]) Set('positioning', u'axes') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='FeXVII_3', autoadd=False) To('FeXVII_3') Set('label', u'Fe \\size{-2}{XVII}') Set('xPos', [17.0]) Set('yPos', [0.00073999999999999999]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='FeXVII_4', autoadd=False) To('FeXVII_4') Set('label', u'Fe \\size{-2}{XVII}') Set('xPos', [15.5]) Set('yPos', [0.00089999999999999998]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='FeXVIII', autoadd=False) To('FeXVIII') Set('label', u'Fe \\size{-2}{XVIII}') Set('xPos', [17.899999999999999]) Set('yPos', [0.00067000000000000002]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='FeXVIII_2', autoadd=False) To('FeXVIII_2') Set('label', u'Fe \\size{-2}{XVIII}') Set('xPos', [14.4]) Set('yPos', [0.00095]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='FeXVII_5', autoadd=False) To('FeXVII_5') Set('label', u'Ne \\size{-2}{X}, Fe \\size{-2}{XVII}-\\size{-2}{XVIII}') Set('xPos', [12.1]) Set('yPos', [0.0023999999999999998]) Set('positioning', u'axes') Set('Text/size', u'12pt') To('..') Add('label', name='FeXXI_XXIII', autoadd=False) To('FeXXI_XXIII') Set('label', u'Fe \\size{-2}{XXII}-\\size{-2}{XXIII}') Set('xPos', [11.699999999999999]) Set('yPos', [0.0025000000000000001]) Set('positioning', u'axes') Set('Text/size', u'12pt') To('..') Add('label', name='FeXIX_XX', autoadd=False) To('FeXIX_XX') Set('label', u'Fe \\size{-2}{XXIV}') Set('xPos', [10.779999999999999]) Set('yPos', [0.0020999999999999999]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='NeX', autoadd=False) To('NeX') Set('label', u'Ne \\size{-2}{X}') Set('xPos', [10.4]) Set('yPos', [0.0012999999999999999]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='MgXII_2', autoadd=False) To('MgXII_2') Set('label', u'Mg \\size{-2}{XII}') Set('xPos', [7.25]) Set('yPos', [0.0011999999999999999]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='FeXXIV', autoadd=False) To('FeXXIV') Set('label', u'Fe \\size{-2}{XXIV}') Set('xPos', [8.0999999999999996]) Set('yPos', [0.0011999999999999999]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') Add('label', name='FeXXIII_XIV', autoadd=False) To('FeXXIII_XIV') Set('label', u'Fe \\size{-2}{XXIII}-\\size{-2}{XXIV}') Set('xPos', [10.196808119541004]) Set('yPos', [0.0025058612874790131]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('Text/size', u'12pt') To('..') Add('label', name='FeXXI', autoadd=False) To('FeXXI') Set('label', u'Fe \\size{-2}{XXI}') Set('xPos', [12.6]) Set('yPos', [0.0019]) Set('positioning', u'axes') Set('alignHorz', u'centre') Set('angle', 90.0) Set('Text/size', u'12pt') To('..') To('..') Add('graph', name='graph2', autoadd=False) To('graph2') Set('leftMargin', '0cm') Set('rightMargin', '0cm') Set('bottomMargin', '0cm') Add('axis', name='y', autoadd=False) To('y') Set('label', u'Arbitrary units') Set('direction', 'vertical') To('..') Add('xy', name='model05', autoadd=False) To('model05') Set('xData', u'lambda_model') Set('yData', u'flux_model_0_5_reduce') Set('marker', u'none') Set('key', u'0.5 keV model spectrum') Set('PlotLine/width', u'1pt') Set('ErrorBarLine/hide', True) To('..') Add('xy', name='model07', autoadd=False) To('model07') Set('xData', u'lambda_model') Set('yData', u'flux_model_0_7') Set('marker', u'none') Set('key', u'0.7 keV model spectrum') Set('PlotLine/color', u'#ff007f') Set('PlotLine/width', u'1pt') Set('ErrorBarLine/hide', True) To('..') Add('xy', name='model10', autoadd=False) To('model10') Set('xData', u'lambda_model') Set('yData', u'flux_model_1_0_scaled') Set('marker', u'none') Set('key', u'1.0 keV model spectrum') Set('PlotLine/color', u'darkgreen') Set('PlotLine/width', u'1pt') Set('ErrorBarLine/hide', True) To('..') Add('key', name='key1', autoadd=False) To('key1') Set('Border/hide', True) Set('horzPosn', 'right') Set('vertPosn', 'top') Set('horzManual', 0.0) Set('vertManual', 0.0) To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/stackedxy.vsz0000664000175000017500000000416314365252232015511 0ustar00jssjss# Example stacked plot # Load in datasets x, y1, y2 and y3+symerrors ImportString('x y1 y2 y3,+-',''' 0.0 -8.627642e-01 7.356253e-01 1.537872e+00 0.3 1.0 1.213047e+00 2.187511e+00 2.879103e-01 0.3 2.0 -1.682870e+00 9.680102e-01 7.127184e+00 0.3 3.0 2.540669e+00 -7.393343e-01 5.775675e+00 0.3 4.0 9.385744e-04 1.071199e+00 3.390224e+00 0.3 5.0 -6.966657e-01 1.763134e+00 2.470264e+00 0.3 6.0 -8.769203e-01 1.589872e+00 1.019945e+00 0.3 7.0 -6.930465e-01 2.015283e+00 -5.690097e-01 0.3 8.0 -2.456379e-01 7.102356e-01 4.276276e+00 0.3 9.0 -6.419765e-01 1.808795e+00 -4.449537e+00 0.3 10.0 -1.485679e+00 8.750188e-01 -7.127589e-02 0.3 11.0 -7.142200e-01 1.477934e+00 -9.531333e-01 0.3 12.0 8.639527e-02 3.591239e-02 -1.129021e+00 0.3 13.0 -1.155861e+00 3.046406e+00 2.561764e+00 0.3 14.0 -9.576156e-01 3.515513e+00 -1.763882e+00 0.3 15.0 6.018372e-02 7.194178e-01 -3.791216e-01 0.3 16.0 -1.027861e+00 3.498590e+00 2.752641e-02 0.3 17.0 2.953903e-01 4.465251e+00 -1.044617e+00 0.3 18.0 -3.615840e-01 1.638100e+00 2.075609e+00 0.3 19.0 2.474292e-01 3.577523e+00 -7.859457e-01 0.3 ''') To(Add('page')) # grid container holds sets of plots To(Add('grid')) Set('rows', 3) Set('columns', 1) # x axis is shared by all graphs in grid Add('axis', name='x') Set('x/label', 'Traffic police') # add the first graph in the grid To(Add('graph')) Set('y/label', 'Valkyries') To(Add('xy')) Set('yData', 'y1') To('../..') # add 2nd To(Add('graph')) Set('y/label', 'Swindon') To(Add('xy')) Set('yData', 'y2') Set('marker', 'diamond') Set('PlotLine/style', 'dotted') Set('MarkerFill/color', 'red') To('../..') # add 3rd To(Add('graph')) Set('y/label', 'Discworld') To(Add('xy')) Set('yData', 'y3') Set('marker', 'square') Set('PlotLine/style', 'dashed') Set('MarkerFill/color', 'blue') To('../..') # this puts the label at the side of the plot, so # all the labels line up # of course, this seems a silly way to do it, but it's just # an example for i in GetChildren(): if 'y' in GetChildren(i): Set('%s/y/Label/atEdge' % i, True) # collapse margins of all the items in the grid Action('zeroMargins') To('/') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/starchart.vsz0000664000175000017500000003770514365252232015515 0ustar00jssjss# Veusz saved document (version 1.12.99) # Saved at 2011-08-17T21:38:56.668330 ImportString('size(numeric)',''' 4.050e-01 3.455e-01 5.800e-01 8.497e-01 8.651e-01 8.397e-01 7.715e-01 3.617e-01 2.565e-01 6.906e-01 5.932e-01 8.708e-01 2.335e-01 2.521e-01 4.786e-01 7.606e-01 3.874e-01 3.600e-01 5.842e-01 7.647e-01 4.191e-01 7.555e-01 8.471e-01 4.407e-01 4.300e-01 1.249e-01 6.256e-02 4.905e-01 2.311e-02 3.583e-01 7.830e-01 5.041e-01 3.003e-01 6.946e-01 4.093e-01 3.897e-01 4.539e-01 6.352e-01 8.445e-01 2.948e-01 5.420e-01 4.801e-01 8.155e-01 4.433e-02 3.789e-01 5.625e-01 6.695e-02 7.941e-01 3.804e-01 9.344e-01 8.059e-01 1.631e-01 4.861e-02 6.394e-01 3.932e-01 2.929e-01 8.481e-01 3.624e-01 3.574e-02 1.552e-01 3.909e-01 4.646e-02 8.587e-01 1.063e-02 9.837e-01 7.219e-01 7.637e-01 6.057e-01 8.209e-01 4.198e-01 6.915e-01 9.860e-01 9.955e-01 3.070e-01 4.891e-01 9.027e-02 1.901e-01 4.686e-01 4.856e-01 8.366e-01 2.897e-02 9.239e-01 7.923e-01 4.719e-01 7.960e-01 9.449e-01 5.453e-01 6.638e-01 7.995e-01 9.712e-02 3.511e-01 5.018e-01 1.632e-01 1.294e-02 6.344e-01 6.543e-02 7.970e-01 2.727e-01 2.513e-01 8.460e-01 3.325e-02 7.681e-02 5.476e-01 7.590e-01 8.837e-01 1.755e-01 9.289e-01 1.040e-01 4.746e-01 6.847e-02 6.449e-01 6.703e-01 5.274e-02 4.158e-01 9.168e-01 1.963e-01 4.417e-01 4.567e-01 2.895e-01 5.929e-03 9.152e-01 8.444e-01 8.529e-01 5.076e-01 4.550e-01 6.566e-01 7.721e-01 3.514e-01 3.746e-01 9.664e-01 1.667e-01 9.201e-02 4.317e-01 4.654e-01 6.015e-01 6.814e-01 4.866e-01 9.389e-01 8.908e-01 4.130e-02 4.716e-01 5.987e-01 4.767e-02 8.905e-01 8.800e-01 7.935e-01 7.342e-01 3.535e-01 9.705e-01 1.858e-01 9.075e-01 9.458e-02 1.833e-01 2.194e-01 1.657e-01 2.087e-01 4.359e-01 3.506e-01 9.515e-01 8.851e-01 4.048e-02 1.991e-01 3.447e-01 2.877e-01 1.286e-01 3.182e-01 4.290e-01 7.130e-01 5.366e-01 5.687e-01 5.497e-01 7.495e-01 7.154e-01 2.551e-01 4.554e-01 6.916e-01 6.407e-01 2.440e-01 9.261e-01 5.933e-02 8.469e-01 3.196e-01 8.569e-01 6.384e-01 2.937e-01 5.292e-02 1.931e-01 2.760e-01 2.912e-02 3.069e-01 9.244e-01 1.239e-01 2.516e-01 4.644e-01 9.013e-02 9.745e-01 3.796e-01 2.707e-02 9.780e-01 2.674e-01 ''') ImportString('size2(numeric)',''' 4.149e-01 6.146e-01 2.448e-01 7.628e-02 1.768e-01 2.063e-01 5.393e-01 2.900e-01 3.645e-01 8.713e-02 5.542e-01 8.222e-02 4.418e-01 6.340e-01 6.466e-01 6.498e-01 6.988e-01 1.329e-01 3.229e-01 5.532e-01 4.700e-01 1.371e-01 3.681e-01 5.719e-01 6.000e-01 5.295e-01 3.881e-01 2.361e-01 1.955e-01 1.751e-01 7.426e-01 5.149e-01 3.111e-01 2.939e-01 1.782e-01 3.758e-01 6.307e-01 5.059e-01 7.406e-01 4.687e-01 8.772e-03 6.461e-02 4.382e-02 9.037e-02 4.053e-01 5.267e-01 9.926e-02 5.119e-01 4.667e-01 2.564e-01 1.839e-01 3.433e-01 3.153e-01 3.838e-01 5.806e-01 4.922e-01 3.729e-02 1.960e-01 6.638e-01 5.121e-01 6.760e-01 2.950e-01 2.766e-01 2.515e-01 7.347e-01 1.599e-02 2.976e-01 1.024e-01 3.245e-01 2.576e-02 4.938e-01 5.979e-01 6.476e-01 5.961e-01 2.611e-01 5.783e-01 4.673e-01 3.781e-01 7.286e-01 2.363e-01 6.622e-01 4.862e-01 7.304e-01 3.534e-01 6.367e-01 1.068e-01 3.883e-01 6.653e-01 5.703e-01 2.747e-01 3.201e-01 5.755e-01 6.744e-01 3.886e-01 7.911e-02 8.700e-02 3.535e-01 1.245e-01 1.195e-01 5.841e-01 6.398e-01 1.762e-01 5.250e-01 5.847e-01 4.941e-01 6.708e-01 3.526e-01 4.299e-01 4.609e-01 4.045e-02 3.338e-01 4.018e-01 5.591e-01 2.480e-01 3.281e-01 2.539e-01 6.600e-01 7.943e-02 3.481e-01 1.625e-02 5.123e-01 3.390e-01 3.904e-01 4.350e-01 5.448e-01 4.653e-01 4.141e-01 1.425e-01 4.031e-01 3.517e-01 6.214e-01 7.483e-01 6.904e-01 5.430e-02 2.179e-01 4.177e-01 1.834e-01 5.792e-02 2.297e-01 5.871e-01 2.647e-01 1.269e-01 2.579e-01 7.247e-01 4.171e-01 2.275e-01 7.145e-01 6.673e-01 3.532e-01 6.283e-01 9.327e-02 1.819e-01 6.711e-01 2.019e-01 5.201e-01 3.551e-01 8.790e-02 4.421e-01 6.433e-01 5.816e-01 4.612e-01 5.547e-02 2.555e-01 6.520e-01 2.823e-01 4.777e-01 4.286e-01 3.108e-01 1.322e-01 4.525e-01 3.051e-01 1.148e-01 6.799e-01 7.144e-01 1.421e-01 2.629e-01 1.992e-01 4.288e-01 2.898e-01 5.219e-01 1.484e-01 6.617e-01 2.670e-01 7.308e-01 4.514e-01 5.690e-01 2.678e-01 7.160e-02 3.514e-02 2.425e-01 3.181e-01 3.302e-01 3.846e-01 2.463e-01 5.676e-02 5.476e-01 2.593e-01 1.812e-01 2.168e-01 5.940e-01 ''') ImportString('x(numeric)',''' -1.717564e-01 4.242809e-01 1.582449e+00 9.042384e-01 -7.558175e-01 9.180096e-01 1.688422e+00 -5.624878e-01 1.148113e+00 -6.757747e-01 -7.184862e-01 9.559501e-02 -7.735163e-01 -1.368390e+00 2.839300e-01 3.863967e-01 -1.018726e+00 -1.057551e+00 1.480676e+00 -1.436318e+00 -6.077504e-01 -6.134922e-01 -1.451637e+00 6.367692e-01 -2.051966e+00 -1.061056e-01 1.132593e+00 -2.332081e+00 -1.483644e-01 -1.709232e+00 7.715420e-01 1.825963e-01 -1.242801e+00 5.126108e-01 7.855827e-01 -1.391835e+00 3.679549e-01 -1.126583e+00 7.381246e-01 -7.205989e-01 2.466142e-01 -1.842360e+00 -1.307182e+00 7.427424e-01 -3.075417e-01 1.075113e+00 -1.109696e+00 -3.353667e-02 -1.087587e+00 1.517819e-03 1.402492e+00 -4.629109e-01 -2.314234e-01 -1.404300e+00 -7.136651e-01 1.143241e-01 -2.593171e-01 5.261581e-01 7.312414e-01 9.634989e-01 6.653014e-02 -1.525272e+00 -1.979862e+00 8.790669e-02 -3.367087e-01 -1.487463e+00 -6.323704e-01 -2.691609e-01 -1.192839e+00 7.129419e-01 -2.026876e+00 -1.670084e+00 -1.105418e+00 4.942608e-01 1.440158e+00 9.895613e-01 -5.584712e-01 3.488847e-02 -5.603513e-03 9.674879e-01 6.670954e-02 9.170016e-01 -1.313607e+00 -2.246257e+00 2.042009e+00 1.025452e+00 -8.301401e-01 4.508979e-01 5.296303e-01 1.255025e+00 1.236309e+00 -8.178501e-01 1.658664e+00 -1.020029e+00 -7.597083e-01 1.642019e+00 1.163782e+00 3.648611e-01 1.205375e+00 -2.208854e+00 1.961078e-01 2.150545e-01 1.335152e+00 2.279445e-01 -3.136242e-02 9.497465e-01 2.207430e-01 -7.895290e-01 -8.275847e-01 7.666461e-01 -1.008892e-01 -1.343381e+00 -1.484571e+00 5.167052e-01 -3.572661e-01 1.440624e+00 9.023146e-01 -3.818540e-01 -1.613737e+00 -1.362967e-01 7.986278e-01 5.329052e-01 -7.147625e-02 1.977507e+00 6.095448e-01 -1.774797e+00 -5.755160e-01 -6.896392e-01 3.003489e-01 1.888296e-01 7.108283e-01 8.797144e-01 2.526157e-01 3.947440e-01 8.264080e-01 -2.686278e-01 -5.568894e-01 -8.562743e-01 -6.682676e-01 1.613319e-01 8.180479e-02 7.551501e-01 1.345002e-01 -5.441405e-01 -4.750194e-01 -1.144256e+00 -3.917083e-02 5.153497e-01 -3.864621e-01 -9.947071e-01 4.151202e-01 1.694649e-01 8.304631e-01 -2.744186e+00 -5.189704e-01 5.950722e-01 4.409983e-01 -3.860202e-01 2.654908e+00 -4.632929e-01 3.676008e-02 3.220285e-01 -1.910937e-01 -7.468510e-01 -8.650068e-01 -9.713170e-01 -1.130643e-01 -3.678296e-01 -4.921382e-01 1.181965e-01 6.255350e-01 -1.242620e+00 1.156373e+00 7.030362e-01 9.894105e-02 5.791196e-01 -8.927444e-01 1.267695e+00 -7.141264e-01 2.025816e+00 -1.293909e+00 -1.477149e+00 -3.851663e-02 -6.038046e-01 -5.637100e-01 -7.411827e-01 -1.302341e+00 -9.121214e-01 1.058442e+00 1.873947e+00 -6.876215e-01 -9.217540e-02 -1.163100e+00 1.145855e+00 -4.506662e-01 -1.423829e+00 1.236884e-01 2.303835e-01 1.388673e+00 9.321516e-01 ''') ImportString('x2(numeric)',''' -5.904152e-01 6.036018e-01 1.861803e-01 -1.182390e-01 4.273179e-01 -5.329131e-01 3.477783e-01 -4.442659e-01 4.112825e-01 -6.975073e-01 -7.894340e-02 3.737914e-01 5.502770e-01 -1.807715e-01 2.749290e-01 8.347531e-01 -2.566171e-01 4.480129e-02 -1.661492e-01 -1.005103e+00 6.827219e-02 1.267272e-01 -7.289300e-02 7.991350e-02 -4.951967e-01 1.395421e+00 -1.094929e+00 3.143240e-01 1.436579e-01 5.987043e-01 8.988077e-04 6.491476e-01 -1.945068e-01 -1.464254e-01 1.318037e-01 5.736032e-01 -6.424045e-01 1.929405e-02 1.083004e-01 -4.876157e-01 -1.975081e-01 -9.470392e-01 7.348370e-02 -3.555848e-01 -4.303004e-01 -1.937558e-01 -3.060530e-01 -1.239214e+00 -7.159538e-01 -1.180139e-01 -8.582931e-01 9.332523e-01 8.186905e-02 1.658889e-01 3.878644e-01 4.596426e-01 -2.580098e-01 1.466808e-01 -2.334527e-01 -7.628955e-01 -4.923554e-02 -1.866111e-01 -1.203111e-01 7.535110e-01 3.363780e-01 -7.143939e-01 9.262992e-01 4.826713e-02 -3.288597e-01 -3.829378e-01 6.682712e-01 -7.421102e-01 4.511552e-02 -7.936474e-01 5.949329e-01 6.510491e-02 -9.386907e-02 7.775805e-01 1.218719e-01 -1.494402e-02 -6.653168e-03 -1.096615e+00 -5.639730e-01 -2.858281e-01 4.137544e-01 9.787053e-02 -3.736432e-02 1.178890e-01 8.644677e-02 8.907128e-01 -2.575110e-01 8.681292e-01 3.192787e-01 -4.730755e-02 3.308247e-02 5.196318e-01 1.612190e-02 -9.430100e-02 -3.501541e-01 1.988158e-01 -6.610444e-02 3.183876e-01 9.110975e-01 3.537435e-01 2.405701e-02 -1.046873e+00 3.043448e-01 1.020531e-01 -5.537825e-01 -1.344010e-01 -4.608990e-01 9.335337e-01 -9.321411e-02 3.717192e-01 3.558881e-01 -2.581769e-01 7.042958e-01 4.890943e-02 -3.936620e-01 -1.006861e+00 -4.333877e-01 7.150886e-01 -4.349794e-01 4.448926e-01 4.621154e-01 1.543000e-01 -1.210074e-01 -9.640434e-02 6.018297e-01 -1.054106e-02 -9.582333e-02 -1.221224e+00 -2.510498e-01 8.605007e-01 -2.235232e-01 6.005776e-01 5.389756e-02 2.774058e-01 -7.967761e-02 -2.286575e-01 -2.433566e-01 -1.338816e-01 -1.915733e-01 -9.346132e-02 -3.945893e-01 -1.000764e+00 -4.389132e-01 -5.512491e-01 -3.093361e-01 -5.310395e-01 5.232963e-01 -4.543161e-01 1.269040e-01 -2.244547e-01 6.759115e-01 2.601059e-01 -4.742974e-01 7.627344e-02 1.575795e-01 2.050366e-01 3.363180e-01 5.956497e-01 7.390307e-01 6.510501e-01 -7.047546e-01 8.470191e-01 -2.368321e-01 -2.557962e-01 9.486894e-01 -3.198666e-01 -6.815602e-02 -2.756185e-01 9.079499e-01 6.653649e-01 1.566721e-01 -1.089555e+00 -1.078753e-01 -1.503253e-01 1.093731e+00 6.795102e-01 9.591976e-01 7.418597e-02 -4.870427e-01 -1.311627e-01 3.575294e-01 2.585647e-01 -1.156918e-01 -9.740063e-02 7.856365e-01 7.415529e-01 2.188530e-01 5.858654e-01 6.431388e-01 7.472439e-01 -3.185660e-01 1.466183e-01 -3.765560e-01 -2.363125e-01 -7.311099e-03 4.543543e-01 ''') ImportString('y(numeric)',''' -1.179418e+00 9.963364e-01 1.035245e+00 -4.930856e-01 -3.079140e-01 -8.363301e-01 3.772350e-01 -1.793423e+00 -3.955435e-01 -7.903513e-01 2.248519e-01 8.868708e-01 1.385193e+00 -9.564458e-02 -2.326000e-01 -1.571620e-01 6.207154e-01 3.515783e-01 -6.039606e-01 -4.724230e-01 -2.933388e-01 -8.633148e-01 -1.216204e-01 -9.216055e-01 -1.218777e+00 7.417790e-01 -5.619947e-02 5.039686e-01 -2.296762e-01 -6.494386e-01 1.621411e+00 -2.070276e-01 3.945420e-01 -6.584078e-02 -1.396862e-01 1.662038e+00 -1.202367e+00 2.562593e-01 -2.478231e-01 -8.922410e-01 1.175726e+00 2.447118e-01 1.086628e+00 -1.745885e+00 1.342561e+00 -9.685250e-01 1.514767e+00 -8.541269e-01 -7.186263e-01 -2.286539e-01 -4.432723e-03 -2.748991e-01 -1.319403e-01 -1.297866e+00 -1.293355e+00 -2.800920e+00 4.857350e-01 1.273159e+00 -8.956792e-01 1.418659e+00 1.314727e+00 9.482291e-01 8.534508e-01 2.193894e+00 8.981459e-01 -8.840747e-02 -8.619552e-01 4.299827e-01 -4.838336e-01 1.537284e+00 -1.290272e+00 4.619874e-01 -1.756571e-01 1.502658e+00 -1.084621e+00 1.366688e+00 6.150953e-01 -1.909314e+00 1.499255e+00 -5.910319e-01 1.289383e-01 -1.935533e+00 -7.818810e-02 1.060331e+00 -8.665276e-01 3.874504e-01 5.042166e-01 6.286272e-01 1.567413e+00 3.106100e-01 7.147362e-01 -1.696396e+00 9.068055e-01 -1.004093e+00 -5.714048e-01 -9.721016e-01 5.559200e-01 2.595251e+00 4.741763e-01 -4.348529e-01 -1.789185e+00 -3.293816e-01 -6.850946e-01 2.887457e-01 6.801073e-01 -3.200756e-01 5.279586e-01 -1.002568e+00 -1.523962e+00 -8.351697e-01 1.209814e+00 -7.876147e-01 6.289090e-01 -2.341422e-01 -3.740775e-01 2.385541e-01 -8.140004e-02 9.481686e-02 1.225121e+00 -3.815732e-01 -7.840012e-01 2.927405e+00 9.265183e-01 7.812431e-01 1.302915e+00 6.347094e-01 5.027754e-01 -7.110444e-01 -4.297201e-01 1.828868e+00 -4.414072e-02 -1.110879e+00 3.847165e-01 -4.791328e-01 3.638377e-01 -1.728797e+00 -4.163380e-02 2.300275e-01 -8.915757e-01 -6.725092e-01 9.569900e-01 -4.703625e-01 1.274738e+00 1.264137e+00 -4.649065e-01 -4.831641e-02 -1.410860e+00 6.752751e-01 -2.005785e+00 -8.789505e-01 -5.581799e-01 6.318567e-01 -7.021317e-01 2.698140e-01 -2.171639e+00 -4.838061e-01 -4.254585e-02 7.594293e-01 1.628929e+00 -7.460201e-01 -3.770777e-01 8.849620e-02 6.164952e-02 1.475529e+00 -1.113757e+00 -1.621159e+00 4.006426e-01 1.077418e-01 -1.913829e+00 -1.317677e+00 4.880339e-01 -4.312087e-01 -1.442873e-01 -2.004930e-02 5.019437e-01 -7.684092e-01 1.541577e+00 -3.599171e-01 -9.827931e-01 -1.514225e-01 3.947186e-02 1.175757e+00 1.097290e+00 -5.108434e-01 -2.445287e+00 -7.330248e-02 -4.411181e-01 9.852479e-01 -1.161989e+00 -1.082814e+00 -5.290654e-02 1.425348e+00 -2.933696e-01 -8.431636e-01 1.201905e+00 7.220561e-02 -6.565752e-02 2.359271e+00 4.880444e-01 1.560229e+00 ''') ImportString('y2(numeric)',''' 3.277343e-01 -4.791839e-01 -5.622894e-01 -8.147905e-01 1.461145e-01 -4.588977e-01 3.968568e-01 1.423664e-01 5.319692e-01 5.065758e-01 -6.637735e-01 -2.946463e-01 -4.624716e-01 6.319409e-01 4.678516e-02 2.219609e-01 1.170330e+00 7.035864e-01 -3.346529e-01 1.734514e-03 7.248274e-01 6.135434e-01 1.028304e-01 -1.206416e-01 2.208649e-02 6.919419e-01 3.821196e-01 2.178115e-01 1.770095e-01 -1.652230e-02 9.046649e-01 -4.432710e-01 2.206628e-01 -4.543656e-01 1.301324e+00 5.292525e-01 -4.944746e-01 2.174136e-01 -3.947546e-01 4.118183e-01 3.404201e-01 6.837868e-01 8.153092e-01 -1.681122e-01 -8.328832e-01 -9.128235e-02 -7.871977e-01 1.963190e-01 6.868842e-01 7.185369e-01 -1.860621e-01 9.277049e-01 -5.712796e-01 9.867310e-01 -7.430959e-01 -4.200795e-01 -3.312437e-01 3.417390e-01 5.875478e-02 -8.900409e-01 4.459047e-01 -2.478977e-01 2.576785e-01 -1.180131e+00 3.503088e-01 2.095792e-01 -5.624632e-01 -1.504682e-01 1.082096e-01 2.748657e-02 -2.188184e-01 -3.769354e-01 3.687838e-01 -1.177511e-01 -2.714600e-01 -1.006103e-01 -1.509157e-01 7.425458e-02 1.376503e-01 -4.981824e-01 -4.858082e-01 2.773604e-01 1.011194e-02 7.998077e-01 5.213352e-01 -2.153188e-01 7.149105e-01 -4.479349e-02 4.948704e-02 -3.989437e-01 -2.229656e-01 2.417801e-01 4.207912e-01 -2.746693e-01 2.094705e-01 1.712305e-01 -5.440275e-01 2.324411e-01 1.052073e+00 -1.872281e-01 6.171029e-01 1.811711e-02 3.791602e-01 -8.040386e-02 2.399947e-01 -3.413228e-01 1.895484e-01 -2.544584e-01 -4.259011e-02 6.655630e-01 -7.508104e-01 3.565060e-01 6.546992e-01 -5.122739e-01 -5.014537e-01 4.045582e-01 9.928116e-01 6.045285e-01 5.509190e-02 6.477872e-01 4.653931e-01 3.743647e-01 8.731676e-01 2.466262e-01 1.092800e-01 -2.989571e-02 1.348799e-01 1.836956e-01 2.409095e-01 4.300016e-01 -1.057074e+00 -6.740874e-01 -9.931708e-02 -1.897434e-01 8.633123e-01 1.121861e+00 7.219913e-01 5.390399e-01 -1.552721e-02 -2.794775e-01 1.651937e-01 3.403011e-01 -4.625169e-01 2.946608e-01 2.377226e-01 -3.711845e-01 1.413453e-01 2.804835e-01 -1.872180e-01 4.300357e-01 -4.654751e-01 4.160271e-01 1.007708e+00 -1.936004e-02 2.207483e-01 -6.654413e-01 -4.479407e-01 -1.364038e-01 4.005023e-01 -2.469230e-01 -4.057847e-01 -4.814272e-01 -4.971257e-01 -2.414501e-01 -1.648537e-01 8.348442e-02 -1.048533e-01 3.140404e-01 3.173624e-01 2.430033e-02 -2.236744e-01 -2.959903e-01 -2.569196e-02 5.527547e-01 -2.281922e-01 -2.492468e-01 4.654103e-01 7.154733e-01 -5.553536e-01 -6.881153e-01 8.689605e-01 6.762373e-01 -1.865834e-01 3.385609e-01 1.006165e-01 -1.133610e+00 3.109142e-01 1.346475e-01 -2.651954e-01 7.159829e-02 -4.473595e-01 -8.366994e-01 4.135409e-01 -6.879046e-01 -2.671874e-01 5.195351e-01 -2.111901e-01 5.907788e-01 6.770766e-02 -5.751893e-02 ''') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', u'0.2cm') Set('bottomMargin', u'0.2cm') Add('axis', name='x', autoadd=False) To('x') Set('TickLabels/hide', True) To('..') Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') Set('TickLabels/hide', True) To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('scalePoints', u'size') Set('PlotLine/hide', True) To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('xData', u'x2') Set('yData', u'y2') Set('marker', u'circle') Set('scalePoints', u'size2') Set('PlotLine/hide', True) Set('MarkerLine/hide', True) Set('MarkerFill/color', u'#5555ff') To('..') Add('function', name=u'horz', autoadd=False) To(u'horz') Set('function', u'0') Set('Line/color', u'lightgrey') To('..') Add('function', name=u'vert', autoadd=False) To(u'vert') Set('function', u'0') Set('variable', u'y') Set('Line/color', u'lightgrey') To('..') Add('ellipse', name='ellipse1', autoadd=False) To('ellipse1') Set('xPos', [0.5]) Set('yPos', [0.5]) Set('width', [0.8]) Set('height', [0.8]) Set('rotate', [0.0]) Set('Border/color', u'grey') Set('Border/width', u'0.25pt') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/ternary.vsz0000664000175000017500000001445314365252232015201 0ustar00jssjss# Veusz saved document (version 1.25.1) # Saved at 2017-04-29T15:44:54.108769 ImportString('a1(numeric)',''' 3.785032e+01 2.887586e+01 3.090787e+01 3.991348e+01 2.194688e+01 6.907754e+00 3.731477e+01 2.729718e+01 4.962433e+01 3.593354e+01 2.980925e+01 1.883289e+01 2.864022e+01 2.385115e+01 1.916651e+01 1.163294e+01 3.201094e+01 4.940456e+01 2.211055e+01 5.347282e+01 3.966645e+01 1.129016e+01 2.900517e+01 2.285825e+01 1.434235e+01 2.491757e+01 4.324933e+01 -5.615836e-01 1.333683e+01 1.169526e+01 5.702774e+01 -4.698968e+00 2.472287e+01 3.090273e+01 2.121293e+01 2.293004e+00 3.181916e+01 3.576081e+01 2.548760e+01 3.387097e+01 1.090547e+01 4.670771e+01 3.679762e+01 1.870816e+01 4.207707e+01 8.373339e+00 1.622552e+01 4.240925e+01 1.243271e+01 9.907227e+00 ''') ImportString('a2(numeric)',''' 3.927892e+01 3.147607e+01 3.585074e+01 2.532616e+01 2.748505e+01 3.089898e+01 3.265939e+01 2.699355e+01 2.724263e+01 3.627490e+01 3.543455e+01 2.613919e+01 2.955639e+01 2.698287e+01 3.423267e+01 2.446838e+01 3.444203e+01 4.034653e+01 2.890829e+01 2.838100e+01 2.620180e+01 3.366264e+01 2.950382e+01 3.507761e+01 2.963094e+01 3.659981e+01 2.953002e+01 3.010142e+01 2.482832e+01 4.350083e+01 2.834519e+01 2.657412e+01 3.719120e+01 3.122923e+01 3.240051e+01 2.650656e+01 3.104269e+01 3.162769e+01 3.344840e+01 3.266331e+01 2.874867e+01 2.454526e+01 3.835166e+01 3.302628e+01 3.290526e+01 3.631759e+01 3.109008e+01 3.474628e+01 3.992190e+01 3.665463e+01 ''') ImportString('a3(numeric)',''' 2.974402e+01 2.992560e+01 2.879212e+01 2.289509e+01 3.151959e+01 2.514551e+01 2.878709e+01 3.809324e+01 2.142433e+01 3.253007e+01 3.495113e+01 3.219936e+01 3.676403e+01 2.577995e+01 2.996285e+01 2.957746e+01 2.770419e+01 2.726770e+01 3.137323e+01 3.328274e+01 2.981133e+01 2.227267e+01 3.234312e+01 2.694048e+01 2.859402e+01 3.514191e+01 3.444068e+01 2.544261e+01 2.895935e+01 2.397857e+01 2.591309e+01 3.282064e+01 2.463678e+01 3.006554e+01 3.302107e+01 3.165531e+01 3.265907e+01 2.977074e+01 2.642066e+01 2.612206e+01 2.921875e+01 3.187261e+01 2.956203e+01 2.660354e+01 3.243911e+01 3.434163e+01 3.642871e+01 2.220277e+01 3.788404e+01 2.830237e+01 ''') ImportString('a4(numeric)',''' 6.023658e+01 6.951139e+01 6.130916e+01 5.480901e+01 5.694097e+01 5.796104e+01 5.963835e+01 5.135586e+01 6.062245e+01 5.609685e+01 5.564031e+01 6.290610e+01 5.559147e+01 5.874261e+01 6.085174e+01 5.703215e+01 5.848376e+01 6.636230e+01 6.031409e+01 5.848922e+01 6.486602e+01 5.198642e+01 5.658263e+01 6.206651e+01 6.050066e+01 6.178179e+01 5.837051e+01 6.618575e+01 6.036681e+01 6.307698e+01 5.658911e+01 5.888594e+01 6.263513e+01 6.270467e+01 6.305208e+01 5.303999e+01 4.733556e+01 6.382467e+01 5.859786e+01 6.703914e+01 5.636757e+01 5.305304e+01 6.576543e+01 4.626336e+01 5.763185e+01 5.699938e+01 6.279347e+01 6.506666e+01 5.402032e+01 5.895224e+01 ''') ImportString('b1(numeric)',''' 6.650787e+00 1.687328e+01 1.010450e+01 1.502892e+01 8.124262e+00 1.579514e+01 2.195101e+01 3.239890e+00 1.600109e+01 4.296486e+00 2.970698e+00 9.968865e+00 1.679330e+01 6.402929e+00 1.273309e+01 1.358886e+01 1.144324e+01 -1.422098e+00 2.708607e+00 1.120078e+01 8.676094e+00 9.079920e+00 9.543885e+00 1.468984e+01 1.288232e+01 8.349164e+00 1.372535e+01 5.718161e+00 1.638648e+01 7.551304e+00 1.155270e+01 1.067230e+01 8.879579e+00 1.171511e+01 6.194712e+00 1.445493e+01 8.503971e+00 1.397565e+01 8.748016e+00 1.188018e+01 1.910491e+01 3.901901e+00 4.879108e+00 1.863455e+01 1.608425e+01 1.645056e+01 -5.258673e+00 8.866189e+00 3.559357e-01 6.020759e+00 ''') ImportString('b2(numeric)',''' 2.738027e+01 1.836565e+01 1.566644e+01 1.609443e+01 2.403639e+01 8.289908e+00 3.651296e+01 5.184957e+01 2.844856e+00 5.319719e+00 1.482401e+01 3.813406e+01 8.649367e+00 -1.039173e+01 2.710390e+01 2.282277e+01 2.110841e+01 2.748859e+01 2.756449e+01 2.152050e+01 1.344263e+01 2.089343e+01 1.775140e+01 1.806021e+01 4.594484e+01 9.522575e+00 2.831632e+01 2.687223e+01 5.372986e+01 3.397279e+01 1.318980e+01 2.891465e+00 2.525563e+01 2.537575e+01 2.810802e+01 3.799986e+01 2.522245e+01 3.272764e+01 1.361898e+01 3.343623e+01 2.053961e+01 3.908754e+01 5.705844e+01 2.483616e+01 3.003679e+01 9.125044e+00 1.994561e+01 2.138206e+01 1.927962e+01 1.461585e+01 ''') SetDataText(u'label', [ u'Nougat', u'Chocolate', ]) ImportString(u'lx(numeric)',''' 6.000000e+01 4.500000e+01 ''') ImportString(u'ly(numeric)',''' 2.500000e+01 5.000000e+01 ''') ImportString('sizes(numeric)',''' 3.703217e-01 4.291845e-01 2.342960e-01 1.000000e-01 7.013704e-01 4.164477e-01 1.065102e+00 7.756953e-01 9.482757e-01 3.618510e-01 7.314487e-01 4.392592e-01 2.367437e-01 1.065933e-01 6.584510e-01 4.378377e-01 1.532375e-01 7.235843e-01 3.666900e-01 7.430943e-01 4.697697e-01 4.473618e-01 3.818643e-01 5.482129e-01 3.484666e-01 2.090011e-01 2.950832e-01 2.944881e-01 4.601784e-01 7.396155e-01 4.672722e-01 1.195206e-01 2.994085e-01 3.087374e-01 5.446024e-01 3.683946e-01 4.009373e-01 8.466384e-01 2.609215e-01 5.970062e-01 4.180349e-01 5.768238e-01 2.538321e-01 8.176581e-01 7.842167e-01 6.022510e-01 3.519089e-01 4.928984e-01 8.822681e-01 3.058641e-01 ''') Set('width', '15cm') Set('height', '13.9cm') Set('colorTheme', u'colorbrewer2') Add('page', name='page1', autoadd=False) To('page1') Add('ternary', name='ternary1', autoadd=False) To('ternary1') Set('topMargin', '0.72cm') Set('bottomMargin', '1.28cm') Set('labelbottom', u'Earth') Set('labelleft', u'Air') Set('labelright', u'Fire') Set('Label/size', u'20pt') Set('Label/italic', True) Add('nonorthpoint', name='nonorthpoint4', autoadd=False) To('nonorthpoint4') Set('marker', u'star') Set('markerSize', u'5pt') Set('data1', u'lx') Set('data2', u'ly') Set('labels', u'label') Set('PlotLine/hide', True) Set('Label/size', u'18pt') To('..') Add('nonorthpoint', name='nonorthpoint1', autoadd=False) To('nonorthpoint1') Set('data1', u'a1') Set('data2', u'a2') Set('PlotLine/hide', True) To('..') Add('nonorthpoint', name='nonorthpoint2', autoadd=False) To('nonorthpoint2') Set('marker', u'diamond') Set('data1', u'a3') Set('data2', u'a4') Set('PlotLine/hide', True) To('..') Add('nonorthpoint', name='nonorthpoint3', autoadd=False) To('nonorthpoint3') Set('markerSize', u'5pt') Set('data1', u'b2') Set('data2', u'b1') Set('scalePoints', u'sizes') Set('PlotLine/hide', True) To('..') Add('nonorthfunc', name='nonorthfunc1', autoadd=False) To('nonorthfunc1') Set('function', u'40') Set('PlotLine/width', u'1.5pt') Set('PlotLine/style', u'dotted') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/tutorialdata.csv0000664000175000017500000000007614365252232016157 0ustar00jssjss"alpha","beta","gamma" 1,2,4 2,5,6 3,6,5 4,13,10 5,9,6 6,3,14 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/examples/vectorfield.vsz0000664000175000017500000000245014365252232016015 0ustar00jssjss# Veusz saved document (version 1.8) # User: jss # Date: Thu, 26 Aug 2010 20:26:59 +0000 SetData2DXYFunc(u'xvec', (-1.0, 1.0, 0.10000000000000001), (-1.0, 1.0, 0.10000000000000001), u'x', linked=True) SetData2DXYFunc(u'yvec', (-1.0, 1.0, 0.10000000000000001), (-1.0, 1.0, 0.10000000000000001), u'y+x', linked=True) SetData2DXYFunc(u'img', (-1.0, 1.0, 0.02), (-1.0, 1.0, 0.02), u'sin( sqrt(x*x+y*y)*10) / (sqrt(x*x+y*y)*10)', linked=True) Set('StyleSheet/Font/font', u'Arial') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', u'1cm') Set('rightMargin', u'0.5cm') Set('topMargin', u'0.5cm') Set('bottomMargin', u'1cm') Add('axis', name='x', autoadd=False) To('x') Set('min', -1.0) Set('max', 1.0) To('..') Add('axis', name='y', autoadd=False) To('y') Set('min', -1.0) Set('max', 1.0) Set('direction', 'vertical') To('..') Add('vectorfield', name='vectorfield1', autoadd=False) To('vectorfield1') Set('arrowsize', u'3pt') Set('arrowfront', u'arrow') Set('data1', u'xvec') Set('data2', u'yvec') Set('mode', u'cartesian') Set('Line/color', u'white') Set('Line/width', u'1pt') Set('Fill/color', u'white') To('..') Add('image', name='image1', autoadd=False) To('image1') Set('data', u'img') Set('colorMap', u'bluegreen') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.1805212 veusz-3.6.2/icons/0000775000175000017500000000000014376700261012241 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/LICENSE-icons0000664000175000017500000000572014365252232014361 0ustar00jssjssThe icons are licensed as follows: ---------------------------------- button_*.svg, error_*.svg, veusz*.svg, settings_*.png, logo.png, link.png, downarrow*png, veusz.ico, veusz*.png, veusz.icns Veusz icons Copyright (C) 2008 Jeremy Sanders This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. kde_*.svg: Icons taken from the KDE project. The copyright is as follows: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ This copyright and license notice covers all Primary images. Note the license notice contains an add-on. ******************************************************************************** Primary iconset Copyright (C) 2007 Danny Allen This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, version 2.1 of the License. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA **** NOTE THIS ADD-ON **** The GNU Lesser General Public License or LGPL is written for software libraries in the first place. We expressly want the LGPL to be valid for this artwork library too. Primary iconset is a special kind of software library, it is an artwork library, its elements can be used in a Graphical User Interface, or GUI. Source code, for this library means: - for vectors svg; - for pixels, if applicable, the multi-layered formats xcf or psd, or otherwise png. The LGPL in some sections obliges you to make the files carry notices. With images this is in some cases impossible or hardly useful. With this library a notice is placed at a prominent place in the directory containing the elements. You may follow this practice. The exception in section 6 of the GNU Lesser General Public License covers the use of elements of this art library in a GUI. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_axis-broken.svg0000664000175000017500000000702114365252232016575 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_axis-function.svg0000664000175000017500000002051114365252232017141 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_axis.svg0000664000175000017500000000663114365252232015325 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_axis3d.svg0000664000175000017500000000647414365252232015561 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_bar.svg0000664000175000017500000000740014365252232015120 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_boxplot.svg0000664000175000017500000001217214365252232016045 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_colorbar.svg0000664000175000017500000000671514365252232016167 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_contour.svg0000664000175000017500000001015614365252232016047 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_covariance.svg0000664000175000017500000000562714365252232016477 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_document.svg0000664000175000017500000001501114365252232016167 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_ellipse.svg0000664000175000017500000000515314365252232016014 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_fit.svg0000664000175000017500000001632314365252232015142 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_function.svg0000664000175000017500000000561414365252232016206 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_function3d.svg0000664000175000017500000001115314365252232016430 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_graph.svg0000664000175000017500000001115214365252232015454 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_graph3d.svg0000664000175000017500000000513214365252232015704 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_grid.svg0000664000175000017500000000655014365252232015306 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_histo.svg0000664000175000017500000000543414365252232015507 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_image.svg0000664000175000017500000000655114365252232015444 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_imagefile.svg0000664000175000017500000000723314365252232016302 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_key.svg0000664000175000017500000002073614365252232015153 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_label.svg0000664000175000017500000001352114365252232015434 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_line.svg0000664000175000017500000000505514365252232015307 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_nonorthfunc.svg0000664000175000017500000000561714365252232016727 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_nonorthpoint.svg0000664000175000017500000001067114365252232017121 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_page.svg0000664000175000017500000000655314365252232015300 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_point3d.svg0000664000175000017500000001100514365252232015730 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_polar.svg0000664000175000017500000001160014365252232015466 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_polygon.svg0000664000175000017500000000544214365252232016047 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_rect.svg0000664000175000017500000000456614365252232015323 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_scene3d.svg0000664000175000017500000001036014365252232015677 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_surface3d.svg0000664000175000017500000000653414365252232016242 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_svgfile.svg0000664000175000017500000001273614365252232016023 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_ternary.svg0000664000175000017500000000554414365252232016047 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_vectorfield.svg0000664000175000017500000001140414365252232016661 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_volume3d.svg0000664000175000017500000001366314365252232016122 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/button_xy.svg0000664000175000017500000001574214365252232015024 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/downarrow.png0000664000175000017500000000034214365252232014766 0ustar00jssjss‰PNG  IHDR Vu\çbKGDÿÿÿ ½§“ pHYs  šœtIMEÖ $½†øtEXtCommentCreated with The GIMPïd%nFIDAT(Ïcd```hnnþÏ@¨­­e$Z1Ì`&ÉXØ„œÆˆn#!ÅØœÄˆO1.?0â3€…(%’50’š4Ð0bæ_SIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/downarrow_blank.png0000664000175000017500000000030314365252232016132 0ustar00jssjss‰PNG  IHDR Vu\çbKGDÿÿÿ ½§“ pHYs  šœtIMEÖ 4c{£ôtEXtCommentCreated with The GIMPïd%n'IDAT(Ïcd```hnnf ÔÖÖ¯f0‰`TÃàÐÀHjÒ%> ',@íIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_bar.svg0000664000175000017500000000510714365252232014740 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_barbox.svg0000664000175000017500000000556414365252232015460 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_barcurve.svg0000664000175000017500000000630714365252232016010 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_bardiamond.svg0000664000175000017500000000570514365252232016300 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_barends.svg0000664000175000017500000000667614365252232015626 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_barendshi.svg0000664000175000017500000000663514365252232016142 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_barendslo.svg0000664000175000017500000000665014365252232016151 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_barhi.svg0000664000175000017500000000541414365252232015262 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_barlo.svg0000664000175000017500000000540714365252232015276 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_box.svg0000664000175000017500000000567214365252232014773 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_boxfill.svg0000664000175000017500000000572414365252232015640 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_curve.svg0000664000175000017500000000640714365252232015324 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_curvefill.svg0000664000175000017500000000646714365252232016201 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_diamond.svg0000664000175000017500000000572114365252232015611 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_diamondfill.svg0000664000175000017500000000603714365252232016461 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_fillhorz.svg0000664000175000017500000000614514365252232016030 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_fillvert.svg0000664000175000017500000000614514365252232016026 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_linehorz.svg0000664000175000017500000000614214365252232016026 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_linehorzbar.svg0000664000175000017500000000661714365252232016522 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_linehorzhi.svg0000664000175000017500000000627314365252232016354 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_linehorzlo.svg0000664000175000017500000000626514365252232016367 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_linevert.svg0000664000175000017500000000614214365252232016024 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_linevertbar.svg0000664000175000017500000000641014365252232016507 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_lineverthi.svg0000664000175000017500000000626114365252232016347 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_linevertlo.svg0000664000175000017500000000626614365252232016366 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/error_none.svg0000664000175000017500000000422314365252232015131 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-application-exit.svg0000664000175000017500000001240414365252232016774 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:31:40 2004) Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-clipboard.svg0000664000175000017500000001203414365252232015460 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)

  • </Agent> </publisher> <creator id="creator28"> <Agent id="Agent29" about=""> <title id="title30">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-dataset-new-veuszedit.svg0000664000175000017500000003032614365252232017761 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator26"> <Agent about="" id="Agent27"> <title id="title28">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-dataset2d-new-veuszedit.svg0000664000175000017500000003560114365252232020210 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator26"> <Agent about="" id="Agent27"> <title id="title28">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-document-export.svg0000664000175000017500000002014514365252232016660 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator22"> <Agent about="" id="Agent23"> <title id="title24">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-document-import.svg0000664000175000017500000001723114365252232016653 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator22"> <Agent about="" id="Agent23"> <title id="title24">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-document-new-graph.svg0000664000175000017500000002273714365252232017240 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator26"> <Agent about="" id="Agent27"> <title id="title28">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-document-new-graph3d.svg0000664000175000017500000001435414365252232017463 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-document-new-polar.svg0000664000175000017500000002103314365252232017240 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-document-new-ternary.svg0000664000175000017500000001477714365252232017630 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-document-new.svg0000664000175000017500000001562014365252232016132 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator26"> <Agent about="" id="Agent27"> <title id="title28">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-document-open.svg0000664000175000017500000001206714365252232016304 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:40:13 2004)
  • </Agent> </publisher> <creator id="creator27"> <Agent about="" id="Agent28"> <title id="title29">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-document-print.svg0000664000175000017500000001362214365252232016475 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:39:51 2004)
  • </Agent> </publisher> <creator id="creator23"> <Agent about="" id="Agent24"> <title id="title25">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-document-save-as.svg0000664000175000017500000002220014365252232016670 0ustar00jssjss image/svg+xml image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-document-save.svg0000664000175000017500000001240614365252232016276 0ustar00jssjss image/svg+xml image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-edit-copy.svg0000664000175000017500000001464514365252232015430 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator19"> <Agent about="" id="Agent20"> <title id="title21">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-edit-delete.svg0000664000175000017500000001334214365252232015711 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator26"> <Agent id="Agent27" about=""> <title id="title28">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-edit-paste.svg0000664000175000017500000001514414365252232015565 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator28"> <Agent id="Agent29" about=""> <title id="title30">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-edit-redo.svg0000664000175000017500000000764514365252232015411 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:40:13 2004)
  • </Agent> </publisher> <creator id="creator30"> <Agent id="Agent31" about=""> <title id="title32">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-edit-rename.svg0000664000175000017500000001571614365252232015725 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator22"> <Agent about="" id="Agent23"> <title id="title24">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-edit-undo.svg0000664000175000017500000000764414365252232015424 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:40:13 2004)
  • </Agent> </publisher> <creator id="creator30"> <Agent about="" id="Agent31"> <title id="title32">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-edit-veuszedit.svg0000664000175000017500000002203114365252232016464 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:31:40 2004)
  • </Agent> </publisher> <creator id="creator34"> <Agent id="Agent35" about=""> <title id="title36">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-edit.svg0000664000175000017500000002201514365252232014446 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:31:40 2004)
  • </Agent> </publisher> <creator id="creator34"> <Agent id="Agent35" about=""> <title id="title36">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-filter.svg0000664000175000017500000001212514365252232015007 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator27"> <Agent id="Agent28" about=""> <title id="title29">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-go-down.svg0000664000175000017500000001133514365252232015076 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator17"> <Agent id="Agent18" about=""> <title id="title19">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-go-next.svg0000664000175000017500000001155014365252232015104 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator17"> <Agent about="" id="Agent18"> <title id="title19">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-go-previous.svg0000664000175000017500000001151614365252232016004 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator17"> <Agent id="Agent18" about=""> <title id="title19">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-go-up.svg0000664000175000017500000001055114365252232014552 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator17"> <Agent id="Agent18" about=""> <title id="title19">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-mouse-pointer.svg0000664000175000017500000000730314365252232016332 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator17"> <Agent id="Agent18" about=""> <title id="title19">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-search-jss.svg0000664000175000017500000001243714365252232015572 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator24"> <Agent id="Agent25" about=""> <title id="title26">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-view-refresh.svg0000664000175000017500000001270414365252232016133 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004) Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-vzdata-import.svg0000664000175000017500000002064014365252232016324 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator22"> <Agent about="" id="Agent23"> <title id="title24">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-window-close.svg0000664000175000017500000001066614365252232016144 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator17"> <Agent id="Agent18" about=""> <title id="title19">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-zoom-1-veuszedit.svg0000664000175000017500000001347214365252232016672 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator24"> <Agent id="Agent25" about=""> <title id="title26">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-zoom-height-veuszedit.svg0000664000175000017500000001442214365252232017776 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator24"> <Agent id="Agent25" about=""> <title id="title26">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-zoom-in.svg0000664000175000017500000001507014365252232015114 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator24"> <Agent id="Agent25" about=""> <title id="title26">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-zoom-original.svg0000664000175000017500000001337714365252232016322 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator24"> <Agent id="Agent25" about=""> <title id="title26">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-zoom-out.svg0000664000175000017500000001344014365252232015314 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator24"> <Agent id="Agent25" about=""> <title id="title26">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-zoom-page-veuszedit.svg0000664000175000017500000001634014365252232017443 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator24"> <Agent id="Agent25" about=""> <title id="title26">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-zoom-veuszedit.svg0000664000175000017500000001160714365252232016532 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator24"> <Agent id="Agent25" about=""> <title id="title26">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/kde-zoom-width-veuszedit.svg0000664000175000017500000001433314365252232017646 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:38:01 2004)
  • </Agent> </publisher> <creator id="creator24"> <Agent id="Agent25" about=""> <title id="title26">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/link.png0000664000175000017500000000035414365252232013704 0ustar00jssjss‰PNG  IHDR Vu\çbKGDÿÿÿ ½§“¡IDATxÚ­‘1 Ã0 E¹Hn`²§k¶îÚƒæ;tìrÄC Î¢Nê´…þIƒ__*‰È0U5ÀDäÊA]5}ß/)%T•RÊ iÈrÎæ½·‚ÕNM Zh?ê-°ïûWð8ϳ©ª¥”LUMDìºvX·m›œsäœqÎLÀzvÒàõÚO†RÊc¬{¸Có­1Æÿ÷ðš»t˨/ §IEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/logo.png0000664000175000017500000003061114365252232013706 0ustar00jssjss‰PNG  IHDRúW-nX sBIT|dˆ pHYsBBWF›tEXtSoftwarewww.inkscape.org›î< IDATxœíyœUÕ÷¿§¦§'Éô$“É2K¶N2YɦA –À ʦl DÔàQPEQ\AD"‹FÀ˜„,¤3Ù&dß;Ý“é™:ïU=SÝ]U]=K}æ7ŸúTuMÕ¹§nÝß=çž»”„B5k€~ XŽ}úØú-"Û›WíÆõ±x/ \Wñ¼æ`CŸ>Ç y¤/€õ˜nù‘qîS{÷¾4¯£i–•Q rP2d00¤° d›Û@ê×wïþc¼£iý_ÆÀß.‘)À;ûÙï¹/ˆ²Ø ²Ø²U„- nÞ|ãúª|"$Þ2ÜúéNðL¢Ë`‘L(îjE»"%saY>DÿK<þ—‚H^VöÉ2ãD8d¦Hx¢weÒ¾·uIõëwÁ[ O÷ïÚõ»D!i»¡¼üНuö;ÍJ›ÄŽ?¿ª³ixaÀ€NÎÍÎ×¶lGnܺuÊ4è–#€Ï‚-R20Ú+ïöôÚ³ÏYù^YùãU /ƒÌæmÚtÍÖ éWUýl ÈWrå·ïÝó½ó×Zù˜s. 7€LÉ/$ý"$Š?Ñ‹€°ÏÿeÉ’%Å'Nlö¹f¿!9uŠHørë—3³2;Ž÷_ *¿oßó‚\-ž Ò:ô’‹£@Žn(/¿ìVà¾;j ªG6DÂ_‘ûœò¯ŽÊ ˜öyÀÅÙ„³Ëg3È…Ê<øÖÈ•À¥í•(ù~ùžmàÚ® \r9 UU÷¾g“þ±¿°ÀçùN¹ÄMn—|upžÏ$o!×Èü4ÑóÞìõz@E¸XôWW¯îUŠÊ–¦x¤·1̶味_ ¾Ë…sžõsß´{÷ã+óÉí×ï¢Jàz‘ðÿ€”¶ËèôK®î.êßÿª3wì¸w]°'mGEÅW+DÂ#| †g!î ˆ„§¹["Y¼yóÊÊ;Î ß 2,WnúØ·òιÖÒ3ãZ&ƒLÆ*»>D/™ê'7«2ñÕÁýÚ|Ïá´ê²0$RÒ$!GfE=ž/ W×½$•‰=#ŒfKÈl}'7Jš×î:–½oßs/)9ªýŒ¯ûÈàûùä–—_:K$ü;`€ãÞ y…¼dw}˜ òvEÅ5ŸÚ¾ýÎ7òéä„HØQ3\æô~a!ò ÁàÁ·õ ÷ªèDä ²*+ï©áa‘ðéîå5wßE.³oE˜™¿î{—÷IÞ¾¶]÷¶k„ Üù¢½o¶÷Q¯´a¡ì“G%¹h5¦QÒŠ˜Àî‰'¦òÈê6ôëwaD$üC¿Ìs±ê×ìÜùPÒKfÿþW ß Ï¡>A^œßÞõÅ¥ÏW‚¼4`À Ó·m»í½|ÏÜv·„§ä>g†Ün³è"áÉ@Q6ÁϨ’©ªºoHøo"2Éy¿—\ï|÷·’.³gþ úd?‘ð¨\yÙ2‚”·Š'صYò„DÒDv3ù‰îÚF_²dK¤%ÜÛ…C{iní7¥¶Ï–?$’çÅ9÷}@ž8ð¦lÝú½@Í!ËâxÊÝ, "§#pwÛÓÇ—èÕÕ¿¬)™âQ!»Éd°QD6‚lzc¢GåÞï(CÞêÆÆ³<óY¤dJû ùˆ¬œdVRÁ®µt&`IH$¼h‘¢ 7Œè9®ûĉƒâØhÁ{æ‘á‰úM”†¶-IÁD&N¤CnÿþWŽ _„vf5ƒ|ÉK^EÅW ‘ðc"rR>yöþyWDX,Y³uë\Mß9pàœ¡ €€| ¤<ÏK޳ò=;8‰.Žsm²mÚôÕnó´¼Úçö¾È뙈„9$}¯¥[< ò8°jýús<ƒ—C‡>] ·‰9äd²ã7ÿΣÛVàšv=‚Xõ`×Zò3ÎOùlîµÎë¥~Õªi-¡½{_JE"§5‚Œðh—f£¢¬ìSe{ö<¹ÇãYóv¯M[¨›Âždÿæ^C{·²c3ôïÑEJîÂ>5ÛÞΓ;¶m»ýyw§xqõ WoÝúÝWüôÛºõæF øÛ Asrp^žþý“þÑ ›7_ÿ²ŸìÊÊ»ÊDJÆ8´Ï~Öýˆs­d—}øážM#€!Cþðy‘ðq™–+'?ž~òJcã™ê"&gîÞ·7€ŸöסÀgEäsÀ([¾oþ¬]{Òb`q4;ƒ‘#~ ¸Éƒ£ö±¨€Ý–)iaþwžâÝÅæÚFï ÌŸßØ«wÿHHC¡âYv*£¢âÚÓE§´ŸÉ[“6Šp‹—¼oú‚H¸­ÏÔýÞ2øÅ–-ßj-Dß-[¾¹8ðàÛ#"a ôðÒýÛ€/Ñ­6²ÓgÌ!L·↠y¬HÉ„ötstðM{èÐ?  ÿȧB¸iݺÓnî }×­;¹¸eĈWç3@.þÙ²;ƒQ£Í ? ±Î¸z4&Èå ã~ mD7Ç‘ŒâMtW×½+pä‘C“ `}Ñ꥓¢‘…Þ?`À%"á;}évîÚ­[¿³×MÞ A·œlwÏÑN–y¯gnÞ|CÁ•’›7_÷|eå=׋p¿wåÄÇ«ªî;jãÆÿñŒÂg·Ï³÷"Ý×µ&žé&b:Ý |‰.RrmméÌûEÄ®Z»ö¤û»Ti`Íš ¼bo£F-?U¤äI —Ï{L­\9êñô}i¢¯´öA‰.Q] üÌt Ó E´¼`’ˆ„¯Fk¢ ß²åp“5xðmEÂh/¸íÊ‘‹@ÎÜ´éšN‘Ü¡ÿƒ"òi,ëâ¢/€œt€è¿ÁPBžö9äéÖ Ÿã¸6ûþ'×®Ñå$?˜0zôª³EŠˆmHÝÊ/M çÄbCŸsÞë°èníW÷Š•¬‚¼ëu爯UŠ„?îSQü­«µ=˜P[Ûx‰Hø!ì®ÉÜò {AÎX±bðß³ï÷ z^«õÑ©£mtN:‘’¥îZzŸqîîM›¾âÚÍTUõ³3DÂGçÞß¶ß!"³6l¸¢Ë'ElØðÙXMͣψÈùitÈ'"ëן“3 fèЧz‹Oð®àº¯} R2Í'X¹rÍš£='B‰”Lgy£ÀY6|®Ûú¢ £ä}´BöûɉüŠ„ëÈijd<·µÏGŒx£·5ݳ|åsÛ«sïi«5ZA6v¶ÆŽÝqƒHøVëWfåè(¿[@NZ¾¼ÔÓ# lß~ç¶¾¾›¶iš¾í(€¨n…´Ñ>ØSa†Â­*“úµ ½»zç{Ïüº|÷·¿P†/ªªî-²ÇAÛg2÷Ìõ6\æÚ}(þ,5ó,ãÞç>üð‚׺Bwo„ßÏ3ªj€Û]yÚçÐC_8oª¢çÜ_ ¼ÔuxŒ·÷‘ð7½<0;×',[^æ'«ÍŶ­úäöš"ShVBƒÍ-Û²å›nd(Ä¢kR8B´e¼"fLÑThÜÄÿ‘.9gO*©sœqì]­úë~xÑ#n²jjí-þnn¦·Ë~ÐzûA$ü~žQU®’r‰žñ-Xsß»Ù8—I>¢ûE™n=zÕ«+WŽ<(fEvãÇ7 p—=ÃÐ>›ûÞDd•3—,aU>™¢—4`Íαg õ°ênÚBÚè:iLÙ_êöŽ5û(¨Hèµµ½»„ä55¿(¾Ùƒ82,}Ü 2ÛKža”|â#ïµÆÆO¸¶‘ºV/‰˜Ö¨­Ê=î›êóN—®^ýQßÁ*ÔyšK~;÷ùˆ¾Ø½’j“1ä×µµ^‹Õ°9Å„ ¡PøÃà2Àô Yœtœ[jœðÊ+|Dn–E‡Ì—ÑþÛ¥€Dq'zAmôX,†šR`1&cDŒ.ëš ßô÷³YÏù³ÆÆOút/…/Êã2çÙÖ ‡@\SHï%gaŠhôßÅ"%‡º\›>îæ@\戸¬Þµ±Øpßqú"áw=Žãüù “ÇŒÙzõŠÿÚ•úïwÅ55üÖ08/M袢 r§·wB!N~ôQDO¢{¸WÎ}ÔCf¾…'2Ð IÙ¶]wM›VX²„psóÎ>PôvO úäT·%Ú÷9Ϲ ¸ÉKÞ°a/Ž âã2/\»væ~i#Š„+=“>ÎéÒ  öy§Ýˆ«­]×ËŽš“©wðJfÅŠš5cÇnÛÒ¿ý¬ësŒyqܸ=ó@~<½|ùÁ¿¬ÙùçSR]Í"œž¶à.§¨ˆù†Á©wÝEAcIòÝ žD/h)©ÑhSZ’5I¥Ü³õMX™¬i1÷ ˜<¦Ü3Â8tè³"Rr­‹‡þ9ÏyÃÚµ'yöy‹”œÞ~}ÛY§œ–#þqŸå`¥ÙdíEÒÇmÝ#Òþg&§¯Ï•á”+®Èãç‘ðÔ<+¬tw .”•ž³|JÛLÝÛ.'{Ÿqn¦ˆÌöŸzø3ÈóË–…ºèü—¿LiUÏ3wºêöùy†Á'n¼בš~pÝ^5ÅÕÚ‘›±¾Dï–±îãVƘʥEE!]´bßîÃÆ¤ÍÈ„Hø™î8Cž‚ñO~ã—¶µ¸uŸ‡Ë|¸µ9Ï¥¯Ï[(3Îûtû½vG®þ%S¬½«\ð¬8;‹Ü‰,9•l Å&–//ûùøñͧbO j—å.×&J‰að {ÓÃçmÃàiþ0>yW ênÌK¿êjž…˜žÕ'˲?+Â9—]Æ¾Ž¤ã$úû…./—ÌŒzÈì¶‘qu£#ÛÞíŽiQ±ɇ¥,½ DÀñì&Èì5k¦{Ö‰Fßê+>Ö)ǃ0žû<Í _Û®Kis¢°ÎUO\V7Y¾bEUÁV"(DJ¦e¦—cÕ{†¾Ì0xË0‘íÞŠøº¼bnoß?÷\xôQÖtéCÀ/~ÁÀš^2 ¦¸ÜAüÇ ƒ O;–ަÕFô?¼(5dÈÖAz›[ÎØG=dêG÷ƒÝ<¶ï(¨¿¼urmßGJä@$ü-ì%ò[F¸oõêúZ‘’“i«¼òU‚ÙV·{¯uyÎU+VTe :3fs‘í>ÛÏ“#?LMm××™¶ˆlZº4Xä`É6Ÿ|2‡?á †áÕ¦õ"¾ƒDÓìí‡×]Ç¿B!5 øþ÷;f5 ÁsÏQSSÈÁ„<ú> qÅ´iW’ábÛ}é#ì_é³x *† {¡lݺS²ûÒý,ºQ¿bÏm; Cލßħë* ooà1T6}Ë^P¢]Ï<íÒ­À·ò%&Îiâ^·ëìZw«îŸžã9sF䉔Œúø¼ÓnkŸOžL¯>}B‡¤ °K»³à´ÿúWö³/»ŒGB!4 ñ]ˆµ?ÂÞ®þéO¹fölþÜ ÙÀÛo­®fž£¼ôµõú‰apͰaîFôãì_é³.DϰêÙÝQ~mtSDV«r– ¦îŽ_½d›ùó‰ûnïð85“’ŸÐæM"ä ÚÚ³ lèSZUÝ{ü¶ã¨L܇_úU"îûBìÄâ.DÏ\ ²]÷¶+ºÍ¢×ÔPg„<Úˆt<øÐCÌÿö·9Ì08Æ0øŒapN(Dÿ|¤ÏcíG‰ðÌÓOó¢að¥3Î Ö•ù±f 㪪xÙ0ê’N}oéÕ‹9]•®ÑÓ¿p·0û(¹D÷´èﮦÜP=¤D”}F‘¬¢‹†6Œµät‘ð¬,ýüˆþðSFx@dxª)~Â’ÕòljÑÒ¶è¬H¸*[®Cö‡ÀeþD÷t™=¯õÉs×kò=ˆž{­]ØÕ0º/W]Í4vgzë”7ñÝï¢ÀkÀk¿ú_2 N1 >mœ 1À'‚ô³ ƒy R7ujá œ¸¡©‰IÕÕ¼d …@UQU˦˜j¢–}¹!\þaW¤™†ÑÝ, ¸²¨‹LÏ6º±{S*TQyѾ¦=ãŠDÎ?lTé£SßÂèѱ¶%²õWËk‚̎ņe¸DÉ&¶„ óÍÃF÷Ýä<ŸIôÙË>ø`À‹]ñÝ…òò¢©ÙsìØ_ÿJ·õ3WU1ËÇ5í4ÑøÜçhžžyåÄ08Ì08Ö08Ù081"\ µnÜ \ÐYÝš[›?&!}ÁDû·ªÒœ²HŽ‚‰‰u¨ªª³ûõêwo§3# YDÏ^ã=/a¢.2=-z]]å^`/”Íÿ`ÞÖ: "áë@F;Î8ö®–ñ¡+ªÞΖsøø²m¸|XÂ"ºgžð.?œqRUÕÕui+w›Û~÷Ý”bÝÃzî¸àVwGÚLJõövÏš5ô5 N7 >eœ QÄÚŸ1Õüƒ!Æ3ÕeWÓ®Š>«ªÛb£ªN‚£h+Ê¥•‘JßnÞŽÂÅ¢C¦åjÿíB˜¨‹Ì@ýèc«;¼@dÆŒÙ8T$|£C'¼ÝZØÜTþ¸q{{‹„ûù¸Î]_è.TW3Ò0èë6”Ò.ÔÝæ¶ÂY"–õp™¬¡³1‚ÝX+å>¢ªÃ½IU? „ÅT+¨mP1³ÕD[”Y¥áÒ}c|㩊>©ª½Úåg”fE?->Ù5O›‹ B®Z5eë¨QKvã¿rŠó\ÔEæ~]aF$|;ñÉ£öãösÝ¿¹|y$ð砬ᦹò猎i¾PSÃD—9½uÛŒµª*Î÷ð"ÒÄïÖñõ^‘u‚\OŨªT´.Ý^2HoÿV.-8U;W­ªÅ鶸so“=©ªŸœ0hB·6ÿr,¯mÕ'»&Ç}ºÈ ÔÞ7nϱb}°‹‹C÷…`-ápqIžèè„Î>Gw¢ºÚê§õé^ê¢Çb ª©áx—ôœÄ? DO#Ž¬Ø´wÓñ(/+:Ù…àé6ô¡…Ê^ºeé%Š>¤hQvÐÍAö=ªzÚÔꩯwí“åƒè2ÙqƱϱêcÆl,[±¢ÊÙ—¾_,ú¸qûŠDJîöÒ3ûœˆ¨_\²¤°C†°Ù'…aPp!ØŸ¨ªb¢[”Ù~ŽÝGM·|¼¦†OYÝj"9~a7–ŒÊÒÊm ;.ê³Éhj›‹ÝoéÖ¥á 'šë¾pÃÂ/*zªŠÁQÕíŠÎ:jØQ9±¢î€—E'`{¬vzv›ÐÍ AD견«_·Éï¼BÁŸ~áv\v)àØÃñµ¯ùáÉY£í`À!D}*ªnù¢msks(TÂUéön«*ښᮢªqEWô-éÛ*„QýG-Z¼yq0ÊÕņ­Sª¦"ùëÞ¸AUouzmþ¶ÉÜœ8säÌn[q7yˆž·½ îDï2¼·2~ܤёŒõ´>š••ò=ŸHr6ñw_ï¨55l1 jÜ\PÄ08x³ÓÛ ¨ª¢Â'Ÿ:´lv>$SÉë=ÌÙîÍ&¢ïV–VvÉra]dKR]žn¯òz^nxùE¿ ™îV›|¢3OsZ—õ:—ëžþ娻ÎÀ£Þi,X@qqß=‰Èáõ+â×Ô‰´E$««™kô÷‰$g»¨7Ýq›;ªKu5KœDwI÷hR¢WWSáâ2§ peW‡S6Å751ojK+—àé@ÛçN¼¾æõQŠŽvZà¬öúZ¿ûŸ[ñœ¨ê]À—}Ž¢1UyÎÄs|åuݵ½ë´ ÑîPlÚ4Rï­¥‚ õ.m³è³g3µ¦†Ïç‰$;I_oXƒ2°`Á‚â¢þc¢E¦ 4 ¶MUæùmµª*^2¬‘V^ƒ>®ûÇ?øùÑGwhÜ~·¢©5¡Y.³s_“H%ú—÷*Ï™ÖÚ¬Ú¹j°ª>ôò‰2§Ï4DO´$NÌÉgŨú¯{ŸXò„<¨è¥9#Ü2Ÿw±¢'^\wñ™ŸCôP(¼Æ00C! Ÿö®“LÑîRnÒ˜Èà¦'À˜Ì‹ Â=†=c)Àì$ ƒÙ—\BÎ÷ΦM›–ª_?E¡RZÍÅoƶoüXm…ë±!CxÉ0ø¡KÄ=½U77tW^tÉTr™¢Ã\,jºZÞ«üMgé–¥eо èŸ(³sPýéeO—*úyW‚[Ç-ŠþÑíÞßÖÿ¶XÑߪêyàè–Ë}Þ«ê¬+§]Ù-1‘ È!úâÅ4Ÿr " ÷hïf[Ðݬ£žƒEÔª*.4 ¦ ¾aünÖ,\ ñ’%„¥åj¢&ì^Zá9×·ªŠzÃ`a0Ì'‚ýµ¦&VõêÅ}Ý•ilMl-SôJ”òA¥ƒ|gß%R‰¥ŠžèBðôþkàžGA±pÃÂÑj ™”àªÚ¤èR/yóVÍ›­ªS}ðÄQ'vÛb›-~¬—ª>£èG|òç¥ÏMþ\AXø@‰ª>œîCp€¨êi_ùØWèrV®}UU4Ãó,kÓ­®{6ž{޲êjnó|‘MÀÝ¡×{ÉÛ¼ùUf|¿_ÍÞC0Œ««ÉYP1#PÓäÃà~Ÿ‰¨êÏšZ´BUoí]Ü»ËM»+ý"ÊlEû+êùɨ4-‰¥ØÒ=­~Sýåu•uvD§7Ö½q&ð+SÍòl² 9ù“N{ÑI£Oò¬X©ÄQÀùªú¹§—?½åE{Öø³º,xøËwVÕ§™¥›3RŠ~#û޻ߺ»TUŸ11gæyÞ—=ëëG}ݳlí/¸½¦†•†Á ¯@WéÜ{/eW]…×÷Ò»55Ì1 ªê„aðÝÊJ<ÛC3f̰ Zé{AÒßךü¥¶ê5ŠŽ's"‚³pŠÎf%R‰kôÐé>Ò† ÃL5? |RÑÛi¤räBšL%—zÜyîÎùóCÀƒG=2Ð*&óVÍ›|ÇTóXÈd²ÜÄŒ¢”dT0í×øºíÉ–ä‡n‡*z7Êm,zä U}ຠ=?"™÷þûÞRU½DÑ«19wVVª·^{äµåã¶7n+Rô%UžAð¬a­ªú'àüïûƒbyW¢WWÓ0Е&Ùºñãïë×3¶ºš« Ðé}Uu|¥óè]Ü»e[bÛõ&æ³9µ8¦3pƒ¢G+úÖÞ]{ßTô”劮TtÍÈò‘žDZ¶uY™¢u(“Ô©õ`J6AmWQU5o%•H%)º(ñ‰—ªê½Š^órÃËs}h8qÔ‰mc^ˆ½P¦è$”S=ÕTs²ãyy±åREßð©`<‰þë÷~Q»ï¸E{«êÅŠ^|ÿ‚û—5Õ|ø·¢+®úÈUž‹3Üù楪:RÑ Q®P´¿G“ÂyîEoqÉÏñŠEr‚ì6Õ\|ãú—¯Ï”ô«€óþÏ¡÷¼_âמM0O¢{º<¥‰^]ÍO ƒbUõ xÐÖÀŒVýRŸâ>^_Ë ú xní®µßRô–‚;^ˆ#êú1E?æÐ±uñæÅk•j ì§h¿ô¨ª’ýŒéã¬.ŸG ;*ï éæo¹á函*K7·Â6x8ýûéeOoQ´IÑA¨I÷ÕMiPôxE§çÉO¢'R‰:Àð+Ô&æ” Ž f÷íóo_kª¹ ئª; 7Õ®hE€ÊÙYi½ƒrâÜãçæXãdKrªãy3d:ò§¯¢ßôhÞu„Ä^‡sÿ¾_9ðrÝ3,z€èvÔ/‘l¼ú*¡CöÎ8lLiÞ/`6µ4¡ª³ÌÖÜŒuË@àñŠÞ¯ø í†÷>wéÖ¥#P.w|£®ékŠi[—޾ÐtZg~%[’·šj^¢h©Á½ô”£ƒ÷õ«=îóS>ßøÀÂ÷©[ð`•lI¶y0äO_EuI+·Ì¸T>y«¼­èÉwœt‡k—c"•˜æöîÜ*@òé­›_…u}λËÓ‹áŒóŒ¸»?ê—H6 Ùs¡Š|ëÕW?c†÷Ê–;’;J½ÓÅ=ts—0ÕŒ+zmEïŠBÔ)ÉTò ŠnWÕë#OÔ5‡$ùHì÷’V=0ÑO{úºß¿ÿû‹Õš©%]ìBª¢×Ïþèìvþîù¾Tß¿~úõž‹/&R‰)®ºùU€YäÊÖÑ«Ìd=“ªêýŠ~íç§þÜ3Þ”&ºß{r‹ßdè <&¸u¼KQ×U‘Óp%úÈ‘lmiaaPfîî†óaM4 ½üÒaÁúh­ˆ|^1tÏCïÅxMDÞªÉqý©ÄuŠŽòËŒ DoS1¦[&i81µzj+ðõ××¾þ,ʯÕ1ªªZÜ¥Vv-8J†ÅØ«ªž-Dçó9ÿ©‡Þyè:E]äBƽâº#¯kó n}ãÖ"`ªíb»YTÿ@\*Ùæ’{êæŸ?~Í/™K½âWgüÊ7È÷™§>&ôÆ=úIDATc(:Å›¾î|0‚ç{î׿3ÿÒùê§»çÔ¡š´U'¥'#ä±DÑ^!¢O«&QÓ#¹¶ý¬\,pR«23ûúØöØPà¼ÜåÀ¾Jt1Ž~Ì/®|qÊçMÌ«PÆ:_$¸ß µ~Ç}^­Z¯]2é’-G|Ù”Ëî¸ç­{ê}ì©[~‚oTôAUýÁœcæd|˜1™Jbbf4Ò…Ú~^_O$Ñ’8V­>ôcTõXà㊖{’+ Á=ÞÅ|”ûM5ûý§~Ÿ7:žhIŒSÕÒŒ´‚ÜM·MŠ ÝÞEûõyy=‘J4“Z¢(½ó%uµe×-Z¥ÂYés†r|ݘHÎà‰dKòvUíôåšj~鈡Gì÷¯hÎ=k/ð“'—>y·¢'¨µjÉ‘¦š#:º’Ø›ô EßPÕçýËS¯è² _:üK/ßúÆ­£+UõjE‡úêÖNð=(O)úˆªþ}îñssF$ZEªúgÎ’éû}º;Oº³xËÞnÿü³Ÿ7ÔZâXEŽVÕ.•{^“á2·(ú¾¢¯£üâ©sŸ*h.~"•©êO Påìö^]u+˜à¹ïÉuäž’œÆÝ·+zm€B™Þ—06^‹Ÿœ_W9ÓMn}lÏó 'c-Á4P —=Îü­õo«è«,Kº =9#:ãl§Œ'ž àœs2‡¿Ö/oÙ«T›Çí½~ÁÒDu¨(iL; ËÝý‡ß{x ªÔ™jV(ZôSÕrE÷©êFE7©êF`“¢Uu“¢›ftö~Eõ­W¾5HѱXÞÈXEÇ©j‘¢ªÚ4*ºNUß¼ýÄÛ»í³ÊAqޓ牪V)Z Tªê`EÛ÷è`SѦš;v^/Pôç?ýü†O‹žlI6h‰¢êb“å†rí¾HdM8ÿªiJ ÐFô×Ö¼V¤è=~5t–»”Pô«`Ïx+Û{ŒIkɏɯ5{Sæy¹f¼„öU45}½>¶ggq±¨¡%wpb!øì¤Ïnž··ƒ·wË` ÐáA(ûêq6Ø[›è©äÊûÿ¢ z]mäšö_‘œ vDû0×´ÜÛCßÿä„O®kÆ[ý ó Ebœ¨,/ å|y[ÑŽ÷+Z"ÐK!i¤"õ*®=èAWÀ“è{S{ `ä¸èŸ–ýi ¢ß+ XSÕÛ2Z1ï Qt" Í©Ökëœÿ˜8Òt ˜k)Ú5ú­ê¬îE},.À0`¬½úb-|™ÞúxüHMö–•Ù[]íÁÿ­ðt=ü,úEMœýÄYA†,ÒG;«L"•˜«hÿâ_¹|êåhC&5äæÐ¾Ä}-å RÚ6ŠŠ~‚ÊÚjFQc¿­X P‹—‡`‘y íÄ®… !MO”Ù[cã]Òßݾ`ú/à_uµ‘.ýìP>xãžýàÙ5Àð<OŸ{ò܉çž/ç…_¼ó‹©ÀÛjOÚ`Õÿüåÿü‰N<û~A},^ L޲·‰tn~+–ÅîµgW`6é±VÊy«®6Ò%Ÿ!êÁÁß%8í€Üp4¤0ÚQ%~úöOEUïQÔðJ+«·IU¯îhzÝ…úX< L¥ÔÓJŸ[Z°\êeö¶ ØĽöÞy¼·®6’´Ó ôʳ¶XÞÂ{óÓûúÿgof},^¼Ž5WýõºÚH‡—âêÁ‡?ÑSÉSÍiQÁµÿ/š/±úå{Æ’)u£#¿wžO¤Ó6PÕÛ¾sìw†vµLN´·é¸ÜE;™ÛʺÚH‡úþëj#ŠU)ì|× «ÅûÓNú À¡À‘X17Àd{û²-c9ñ_Ç"¾oš=8¸àKôD*ÑàFpp%ã€ÏÿqäÄAWºÊZ¾|k™•\)Êß‹Åo6áSj#K¾÷ú÷ÊL5oóéÖDX¥ª·vi.€úX¼8˜ÌIJ†ÙX‹e ÿ×ÞÞ·‰y@PWÙüÓÞ€¶Jjðqàh{«ò3ÎÞ.·ï_ƒEú×€¿×ÕFxÅÛoø½%Ñ&ZÀ!…Q/YME½84,Èö)µ¥K©ÄE«sFy7®¾{ÖÝM]ñðAQ‹Ggb‘¼†vkhïã v]mdÝþÔ¯#¨«˜XÃQßî¶xÂÑ´“ŒˆÀEöF},¾ø{z««ôôsDÈ뺻 çó!cÔKÖ¤ÚÒ—Åâ?F™©†®[ðÁž¿Yõ­é¶¶ë¬#ršÏ?xÚƒî‚ç„úX¼ø0 ¶ÿµ˜¼¼VWé–õÑ÷7ìè{ ø´y/NâOÂ;.µ7êcñe´ÿÕºÚàß»ëA0ÔÇâ#€Ã€¿äó»îh `ðüJjK«ñ§)ãúüË rÿÉß)Zœg|rº2Ù§ª_ ”„íÖ~ «-;+ŸÖü_鎪«lÂzæ?ÔÇâeXqˆ™ÀÉ@Ïíãíí*@ëcñ÷h'þëuµ‘n]zì¿õ±ø@à\àÓXã(NÒ,ôí^¸ú¯Wï6Õ,ƒü3„TõdzÇßñot¯]ôôEg¨µg†wàÓD˜ûÔ9Où®xÚ°£Ùé~íÀ¬6vϺ,ÔÇâ5ÀIXñŠ  ´ÿ¦øÿL÷&ô õ±x«Ùø¬|au…žÔ›Ìû…;ÛªOò#8´‘1Šõ}qög[ J8Ýÿ&ÂZE¿äü`“¸Ê«ýX‹ƒ\+–ÖÕFök<à? uµ‘‡‡m/è£X–~p8Þn~+æqð `_},>‹ô¯ov´7â¿vWí,,rŸŽe½Óx8½®6ø{ù‰nä&eÑÛÅŽI4Ñ’¸Íú á«wO.iu0®®62/HZõ±øYXÁ³w€s€zì6¨ «»jk]m$ˆøذƒ{oÚÛ÷ì€'`Ö“¡>·—`ÅAfØ¿“¶«¿Ð±-þo'¿ô=88kŒDë€'ìíÍB{qò=; çåbÛÿ‹æ“wüo¦ªßð™[›ÝDøÛ¿.ýדvFÌÃ>ÔÇâ¯ÕÕF‚,¹˜CûpÏ%wìÌëТ=È„íR:Û÷‡ÐníÆI¢Þ´[ü4šëcñÅd’Q]m䀯™ÞQÔÇâEÀ4à8¬áÊ'Ór¯ÃÊ¿?Ðr;ÔuºjÆ€íû6õª(ñˆ•H%Ú”ÿYq¦š)Àù‘‚5XrV[å…Ï8 Hg³lksÏK´ü?uµ‘÷±º!ï¨Å{cYï“ím|éQ‡Sç´>ÿ«§ {[y°üêcñáXóޱ·ìAK´“û_]5þ"˜E÷¶¶9D]ºãAGUÍr•5éþI3=ò¬šÑþ¿;WÌ^±Új¿yXó×ÖÕFò’¼>¯ÀêîyÚ>õVí¸Ó¾&Ýz+Â^lÊtìÀÛ ö–î&šŽEâiX£ ˈJ7å†Çfÿ³>ߌEúuX½AÙÛ¶ôqWí lV·kâ!ö6‘ÌIGN¤Éý0¿;Wj£š6ŠÕ¶^µûW¢ûÙ¸"EïöZHÂ…ôë½9}]m¤x >/ÍIÀuµ‘í´÷ëžœTWy&ëšfÛ­œ†åÚ?Dvºuµ‘5XÞÚcÐ4E;ñ§ÙÇ….ï;˜ö±¾¨ÅX¤ß‹Õ+Ђ5Èï¸7©b¼OŽ`wìÆ`õ*Vðqawœ ⺯ÌœYeíõÆøªA®rZ_@9,ÏÂùN™×n¿~»kT±®6Rðç‰ëj#®Åsѫŧ`Õ´), Q[‹/ ØþïA7À.ôé9ôO¤ÏÛ–¿«™µ"´ú` ŠêlÄŠ)¼jo mõߗè‹ÿgqó¨{F­WÕaž.¶ÃÚoÜÛ82×jtû &æ÷,$‘>÷JâÆÄã]ý°uµ‘FçïúX¼ËÅZŽUxvbÕ¶UXîT"8,N‹íåE±HÅš±7”µ@×Mïu"5ûp9Ö„¥¶ýÁ0å7/Ñ¡- 7ÌàéãMÉ ƒÈZÏ+‘J|_­¯iç·€kÛ±í}½¾aÞÔÕFöa¯éV‹_¼øŸ0N½¹°½¼tÀÏv³ ?íįÀ ô…°*€Ï1XÆ`;Vû¾m°·DôdKr¥ZËíæ](rKbSÑ›iŠ^V€NwëœÌïH½ÛÞ·ÌèSÞ‹ðŸ—,Ùòñ‰(P~°Ei{Ðõ°›ÛímùVg¿ÁrQ2•lH¤$R ’-I’©$‰븩¥‰}­ûhnm&e¦ØµoG[]nQôž é`µe¾›}²·–ü¿³eµÀ¤–’>‹êc{N(/0zHÞƒÿf"`ÊL5´j+¦š Ë»¡ÙÜÙݼ3í)\„µÀAP\¯s4Ç5ßÛ»ôi€šúR]mYAŸ#êAþ¯#¨¥õý€[ÎÅ»–õ‘›¥ ¸­€ÛþWçèïœ'Þ³º½èײ·ŸaÈ …C1ø{Põ+ãß, },À¹P¤<zЃƒÚèHôÕ{VônÂÅ'Z/:O¼»zg¹AèùwgOUú6–[y‚-i,Ší9äÊE+ã[D‹çí3›wM[æ9… ¸ßîiõ1\Td¬imÑÚº1‘g°§Ôö ÿÉd±tŽnÁZœ0ÞØðò` ¹ã÷ê­xoEü­ÜûœÑú_`¸ÑÚúwWî9*ËÚzbqCâ#õ±økˆñ$€*ך´ü±8dLÊw¯bìŒÑ--z¤ EàýIçôà? …¸¦­úßÖþi$#&°ËúÐËlzDUG` ‘S •‹ûî=Ûãþ :ªÏ¿Áø±i¶M´à×u£J}g»½»lgÔþ&œ¬ô^¼29÷½ÿè¢ûë\ðu£m“KƸGÈøâ¦sJݘÒÇ‚ ¬«íógš@¶©’@Íš|÷$#ñM˜Æã¦Ê Ã0LZŠ^ß'M=cÞ{ð_ mt(°ÿÂZ¸ ŠÌá~Uí rñû£û®šX€Ð (.î§¿õ‹ü Ù‚Yœˆ‘ïž#‡Më_]²eWE8rhݸ^«ügRö ÿ9È»”TÛ…7ËUÀϺ0mø¨ÎÉùˆ»±`EÓ¦‘X´2qJoíó÷ÚÚžyâ=èAGq -ú.$0§Mkt6ºO9ç=èA|Ð-môØÔÇ݃ô ã(„è«éº>åuŽnï"Y=èAò 0ÑuŽ6ë» Í·‡º@NzЃ€(´¸³î»³uŽöŒ6ëAö# ÆEôœµ¹‚bzõÌå÷÷ô¥‹VÆ/í¨Œ|PP1I™¢)£ÙÔÖÃ0šMµ~«j‹Ñ,¦¦#…IŠ"£³%%R”ÂÔT‹hJDS!)j–M‰¡©fÃLÑl¦´4Ü\¶ÏLÅC-)c÷¾Tª®²ù#Т6x =ØŸ(”èÏ’Ç 8¦fÖ å%†dŸ¯Nž;^5ЊŸª$©h1šTI †ý›&L’¨4)$E4‰Ùbý3©"É"HŠI“i˜I14ib4µÉÖp(YÔl&›Ål’æ’d(d$÷6bêО¡²=8¸ñÿß@hù½é¹˜IEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/logo.svg0000664000175000017500000010377314365252232013733 0ustar00jssjss image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_axisgridlines.svg0000664000175000017500000000533114365252232017547 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_axislabel.svg0000664000175000017500000001406214365252232016647 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_axisline.svg0000664000175000017500000000625714365252232016526 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_axismajorticks.svg0000664000175000017500000000626514365252232017744 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_axisminorgridlines.svg0000664000175000017500000000614714365252232020622 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_axisminorticks.svg0000664000175000017500000000626514365252232017760 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_axisticklabels.svg0000664000175000017500000001212714365252232017705 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_bgfill.svg0000664000175000017500000000735014365252232016144 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_border.svg0000664000175000017500000000465214365252232016164 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_contourfill.svg0000664000175000017500000000375214365252232017247 0ustar00jssjss image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_contourline.svg0000664000175000017500000000401514365252232017241 0ustar00jssjss image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_gridline.svg0000664000175000017500000000631014365252232016475 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_lighting.svg0000664000175000017500000000735514365252232016517 0ustar00jssjss image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_main.svg0000664000175000017500000000556614365252232015640 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_ploterrorline.svg0000664000175000017500000000561314365252232017605 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_plotfillabove.svg0000664000175000017500000000652014365252232017545 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_plotfillbelow.svg0000664000175000017500000000651514365252232017565 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_plotline.svg0000664000175000017500000000464114365252232016533 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_plotmarkerfill.svg0000664000175000017500000000532514365252232017734 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_plotmarkerline.svg0000664000175000017500000000532514365252232017735 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_postline.svg0000664000175000017500000000640714365252232016544 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_stylesheet.svg0000664000175000017500000001740314365252232017076 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_subcontourline.svg0000664000175000017500000000625514365252232017763 0ustar00jssjss image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/settings_whisker.svg0000664000175000017500000000417414365252232016362 0ustar00jssjss image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-arrow-circ.svg0000664000175000017500000002753414365252232016215 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-arrow-ew.svg0000664000175000017500000002612214365252232015700 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-arrow-nesw.svg0000664000175000017500000003656314365252232016253 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-arrow-ns.svg0000664000175000017500000002650114365252232015706 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-capture-data.svg0000664000175000017500000001164314365252232016511 0ustar00jssjss image/svg+xml Veusz capture data icon Jeremy Sanders Released under GPL ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-edit-custom.svg0000664000175000017500000002321714365252232016374 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:40:13 2004)
  • </Agent> </publisher> <creator id="creator30"> <Agent id="Agent31" about=""> <title id="title32">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-edit-cut.svg0000664000175000017500000001262114365252232015652 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright Jeremy Sanders Released under the GPL ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-edit-prefs.svg0000664000175000017500000001513314365252232016177 0ustar00jssjss Part of the Flat Icon Collection (Thu Aug 26 14:40:13 2004)
  • </Agent> </publisher> <creator id="creator30"> <Agent id="Agent31" about=""> <title id="title32">Danny Allen Danny Allen image/svg+xml en image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-eye-grey.svg0000664000175000017500000000627114365252232015666 0ustar00jssjss image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-eye.svg0000664000175000017500000000626414365252232014724 0ustar00jssjss image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-pick-data.svg0000664000175000017500000000603614365252232015774 0ustar00jssjss image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-shape-menu.svg0000664000175000017500000000567614365252232016212 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-view-fullscreen.svg0000664000175000017500000000626714365252232017257 0ustar00jssjss image/svg+xml Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-zoom-graph-out.svg0000664000175000017500000001203314365252232017021 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-zoom-graph-recenter.svg0000664000175000017500000001173414365252232020030 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-zoom-graph.svg0000664000175000017500000001205114365252232016214 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz-zoom-reset.svg0000664000175000017500000001761214365252232016245 0ustar00jssjss image/svg+xml Jeremy Sanders Copyright (C) Jeremy Sanders ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz.icns0000664000175000017500000011564014365252232014300 0ustar00jssjssicns› is32•€Ñ‚ÿ ÿ €ÑÿÿÕÿÿÿÿÑÿÿÈ€ÿÿÿÑÿÍÿã€ÿ ÑÿÑÿÿÆ ߀ÿ !!ÑÿÕÿÿ$$%%ÿ%&&Ä€ÿÓS`kÒÿz†“»€ÿÏÝèõØ‚ÿøóäÿÑÓÜØÓ„ÿ Ä¿¿ÿÈ­¨£ÓÏÏ‚ÿ‹“¿Ãxto…ÿ [V_ÿIDEÓÿÒׂÿ '#(&¿ÿÎÐÒÿ ÑÐÌÏÿÓÿ‚ÃÑÿÑÒÿÌ‚ÿn†Ñÿ€Û‚ÿ ÿ €Û‚ÿ ÿÿÛÿÿÛ€ÿÿÿÛÿÚÿã€ÿ ÛÿÞÿÿã ߀ÿ !!ÛÿÕÿÿ$$%%ÿ%&&Í€ÿÜS`káÿz†“Á€ÿÏÝèõë‚ÿûùíÿÛÙîëé„ÿ âàÝÿÛÖÔÒÞÏÛ‚ÿÈÆÈ¿Õ½»¸…ÿ ¯¬¯ÿ¥££ÞÿÛׂÿ •“”ŽŒŠ”ßÿØèÝÿ ‚‚„‚‚‹ÛÙÝÚÿÞÿ‚‚ÕÛÿÑ×ÿÖ‚ÿ‚ƒ„±†Ûÿ(,.€ó‚ÿJLPRÿJMP€ó‚ÿ knqÿÿlnróÿÿí€ÿŠŒ’ÿÿ“óÿÿóÿÿ¨«®±€ÿ ®²´óÿ÷ÿÿãÉÌÏÿÐÓÖóÿèëíñÿñô÷ô€ÿö€ÿð„ÿøŠÿøóðÿóôÜØÓ„ÿ Ä¿Èÿí­¨£ôïó‚ÿ‹˜ÿÝxto…ÿ [VbÿIDGôÿóò‚ÿ '#*&ÿÿëÿôÿ ñöîôÿôÿ‚èòÿèôÿë‚ÿ†óÿs8mkîÿ@(úø#Ìÿ` ¹ÿƒªÿ€Oÿá ˆÿ ) ÝÿSfÿÀ%= |ÿ»Dÿà-õú("ÿü3¨ÿ‹ûÿJ?ÿæ Ýÿd›Ñÿ[»ÿ~kÿÂ.@™ÿ˜Mîü.wÿ²˜ÿ•.?UÿÌ1ýê -3ÿæÄÿiC0ÿÿÿÈN -áôõmHHHHÿÿÿÿ3`3ýÿÿþ61óÿÿÿS`ÆÿÿÿœÑÿÿÿr`X}]ÿÿÿï¯ÿÿÿ’`²Ù æÿÿÿlÿÿÿ²`ŠÿÿÿÐ8rQkÿÿÿÒ`'úÿÿÿ<.!Iÿÿÿñ`k·ÿÿÿ£'ÿÿÿÿk ˆPÿÿÿòþÿÿÿÜÿÿÿs äÿÿÿ“zÿÿÿÖ²,ÁJÂÿÿÿ¦ôÿÿÿCRk ÿÿÿº§ÿÿÿª ? ~ÿÿÿÎ>ÿÿÿõ‘k\ÿÿÿäÑÿÿÿz/Ž8ž%D:ÿÿÿÿÿÿÿÚQò73¡D ÿÿÿÿÿÿÿI õÿÿÿÿÿ±»ààñøñ¥˜˜˜˜˜˜˜˜”†wj[M?1#ih32 H€ÿÑ”ÿ„  ÿ‚ÿÑÿ¿ÿ ƒ ‚ÿ„ÿÑÿÿæÐتÿ ‚‚ÿ ƒ €ÿÑÿÿÆÏÎŽÿƒƒÿ €ÿÑÿª„ÿÉØ„ÿƒ„ÿ‚ €€ÿщÿÈÏ„ÿ„ÿ„€ÿÑ‘ÿ„…ÿƒ€ÿÑ„ÿÕˆÿ€ƒ†ÿ€€ÿÑ‚ÿÕÐÔÛ‡ÿ‚€‡ÿ€€ÿÑ‚ÿÕÑÒφÿƒˆÿƒ€ÿуÿÏЇÿƒˆÿƒÿÿшÿÐЀÿ‚€‰ÿ€‚ÿÿщÿÐÓÿÿ„‰ÿÿÿÑ€ÿÐÒчÿ€‚ ŠÿƒÿÿÑ€ÿÒÑÒ†ÿ‚!€"ÿÿѶˆÿƒ ÿÿÑÿ·ÿ„#$ÿÿÕ‰ÿ ‚!ÿÿÑ‹ÿ€$‚%ÿ€"#ÿÿÑŠÿƒ&€'ÿ‚$%%ÿÿÑŠÿ')-17:>BŽÿ„&'ÿцÿ ÐÐÿOSWZ`dhk€ÿª‹ÿ '(+/38<@ÿцÿÑÏÿ|€†Š‘•™ÿÿÐÐÒŠÿ QUY\bfjmÿшÿ¦ª¯³·»¾Â€ÿÌÐÌŠÿ ~‚†‹“—›ÿшÿÕÙÝàäèìñ‘ÿ±µ¹¼ÀÄÈÿÑÿªƒÿýüúù÷õô’ÿÞâæêîó÷ÿÑÿÑÕ€ÿïíìêéèåä“ÿ ùø÷õóòðÿÑÿÿÈ€Ñ ÐÿÿÝÜÛÙØÖÔÓ“ÿèçåãâàßÿÑ€ÿ ÒÑÑÿÿÎÌËÉÇÆÄÂÿÕÿÌŒÿ×ÕÓÒÑÏÎËÑ€ÿÐÏÒÿÿ¼»º·¶µ³²ÎÒÎÿÿÑÐÕŒÿÅÄÂÁ¿¾¼ºÑ„ÿ­«ª¨¦¥£¢ÿªÑÑÿÿÒÒÏŒÿ´²±¯®¬ª©Ñƒÿ›™˜–•“’€ÿÆ‚ÿÿ¡ žœ›™˜Ñ€ÿ ÏÆÿŒ‰ˆ‡…„‚€—ÿ ŽŒ‹‰ˆ‡Ñÿÿ€Ñ|zxwutrp˜ÿ~|{zxwuÑ€ÿ ÑÔjhgedb`_˜ÿmkjhgecÑÿZYWVTRQO™ÿ[ZYVUTRÑÿIGFDBA?ÕÒƒÿÑÒÔÿJIGEDBAÉ€ÿ 9864210.ÓÑÑÿ€ÒÑÑÌŽÿ8754210©ÿÿ)(&$#! ÿßÔ‚ÿÏÔÒÕÿÎÓÓ‹ÿ'&$#!ˆÿÿ ‡ÿÛÿÿÐÑÓß‹ÿ  eÿ€ÿÿÎшÿпŒÿFÿ„ÿÿÒÐÑ̘ÿƒ0…ÿÑÿÐÑ‚ÿÒƒÿÌ¿ªŠÿƒ„ÿÑÑÐÑÿ¿ÑÑÒÆÿÒÓÌŠÿ‹ÿ€Ñ΂ÿÒÑÐÿ΀ЊÿŠÿÿÒÑуÿÕÓÓ‚ÿÌÒ‹ÿŠ¡ÿˆ¢ÿ‡£ÿ‚!%#)ÀšÑ€ÿ€ÿÛ”ÿ„  ÿ‚ÿÛÿ¿ÿ ƒ ‚ÿ„ÿÛÿÿæÝâªÿ ‚‚ÿ ƒ €ÿÛÿÿãÖØŽÿƒƒÿ €ÿÛ‰ÿ×ë„ÿƒ„ÿ‚ €€ÿÛ‰ÿÓÏ„ÿ„ÿ„€ÿÛ‘ÿ„…ÿƒ€ÿÛ„ÿÕˆÿ€ƒ†ÿ€€ÿÛ‚ÿÕÞÜÛ‡ÿ‚€‡ÿ€€ÿÛ‚ÿÕÛÛ߆ÿƒˆÿƒ€ÿÛƒÿÙÙ‡ÿƒˆÿƒÿÿÛˆÿÛÙ€ÿ‚€‰ÿ€‚ÿÿÛ‰ÿÞÞÿÿ„‰ÿÿÿÛ€ÿÙÛчÿ€‚ ŠÿƒÿÿÛ€ÿ€Ü†ÿ‚!€"ÿÿÙÛˆÿƒ ÿÿÛÿ؇ÿ„#$ÿÿÕ‰ÿ ‚!ÿÿÛ‹ÿ€$‚%ÿ€"#ÿÿÛŠÿƒ&€'ÿ‚$%%ÿÿÛŠÿ')-17:>BŽÿ„&'ÿÛ†ÿ ÝÚÿOSWZ`dhk€ÿª‹ÿ '(+/38<@ÿÛ†ÿÛÚÿ|€†Š‘•™ÿÿÙÜáŠÿ QUY\bfjmÿÛˆÿ¦ª¯³·»¾Â€ÿÖÙÌŠÿ ~‚†‹“—›ÿÛˆÿÕÙÝàäèìñ‘ÿ±µ¹¼ÀÄÈÿÛˆÿþýüüûúù’ÿÞâæêîó÷ÿÛÿÛÕ€ÿ÷öõõôóòñ“ÿ üûûúùø÷ÿÛÿÿ‚Û ÿÿîîíìëêêé“ÿôóòñððïÿÛ€ÿ€Û ÿÿçæåäããâá‚ÿêÿÌŒÿëêééèççåÛ€ÿÛßÛÿÿÞÝÝÜÛÚÚÙÛÜÚÿÿÜÚߌÿââáààßÞÝÛ„ÿÖÖÕÔÓÒÒÑÿÿÛÜÿÿÚÛÙŒÿÚÙØØ×ÖÕÕÛƒÿÏÎÍÌËËÊÉ€ÿÆ‚ÿÿÑÐÏÎÎÍÌÛ€ÿ ÜãÿÆÅÄÄÃÂÂÁ—ÿÈÇÇÆÅÄÄÛÿÿÜÛÛ¾½½¼»»º¹˜ÿ¿¿¾½½¼»Û€ÿ ÜÙ¶µ´³³²±°˜ÿ·¶¶µ´³²Ûÿ®­¬¬«ª©©™ÿ¯®­¬««ªÛÿ¥¥¤£¢¢¡Õ܃ÿÛÜÝÿ¦¥¤¤£¢¢Ø€ÿ žœ›šš™˜ÚÛÜ‚ÿÛÜÛæŽÿœ›šš™Ëÿÿ–••““’‘‘ÿßÙ‚ÿßÜÜÕÿØÛÛ‹ÿ•”““’‘½ÿÿŒ‹ŠŠ‰ˆ‡ÿÛÿÿÜÛÛß‹ÿ Œ‹Š‰‰ˆ­ÿ†…„ƒƒ€‚ÿÿÛ܈ÿÛ¿Œÿƒƒ‚ ÿ„‚ÿÿáÛÛ̘ÿƒ‚–…‚ÿÛÿÜÜ‚ÿÛƒÿæ¿‹ÿƒ‚„‚ÿÛÛÚÑÿ¿ÜÛÛÕÿÛÛÌŠÿ‹‚ÿÚÛÛÞ‚ÿÛÜÛÿ€ÛÙŠÿŠ‚ÿÿÜÜÛƒÿÝÞÜ‚ÿÌá‹ÿŠ‚¡ÿˆ‚¢ÿ‡‚£ÿ‚‚’‘“ÔšÛ€ÿ !""ÿó”ÿ?@ABCDEFGÿ((*+,-.ÿó”ÿKKLMOPQQ‚ÿ3456789ÿó€ÿòõŽÿUVVWYZ[\\‚ÿ>?@ABCDE€ÿóÿÿãñëŽÿ`abcdefgƒÿIJKLMNOP€ÿó‰ÿò…ÿjklmnopq„ÿTUVWXYZ[€ÿó‰ÿéï„ÿuvwxyz{|„ÿ_abbcdef€ÿó‘ÿ€‚ƒ„…†…ÿklmnnoqr€ÿó„ÿÕˆÿŠ‹‹ŒŽ‘†ÿwxyy{|}€ÿóƒÿöóˆÿ•––—˜š›œ‡ÿ‚ƒ„…†‡ˆ€ÿóƒÿóôï†ÿŸ ¡¢¢¤¥¦ˆÿŽ‘’“€ÿóƒÿññ‡ÿª«¬­®¯°±ˆÿ ˜™š›œžŸÿÿóˆÿñö€ÿ´µ¶·¸¹º»‰ÿ £¤¥¦§¨©ªÿÿó‰ÿ öôÿÿ¾¿ÀÁÂÃÄÅÆ‰ÿ ®¯°²³³´µÿÿó€ÿòóó‡ÿÉÊËÌÍÎÏЊÿ ¹º¼½¾¿¿Àÿÿó€ÿôóõ†ÿ ÓÕÖÖרÙÛÿÿðÛˆÿ ÆÇÈÉÊÊÌÿÿóÿð‡ÿ ßàáââãåæÿÿê‰ÿ ÑÒÓÔÕÖ×ÿÿó‹ÿéêëìííïðÿ ÜÝÞßàáâÿÿóŠÿóôõö÷øùúûÿ çèéêëìíÿÿóŠÿþ•ÿ òóôõö÷øùÿó†ÿòò‰ÿª‹ÿþ…ÿó†ÿöïˆÿöó”ÿó“ÿëóæ“ÿó¬ÿóˆÿýüúù÷õôšÿóÿóê€ÿïíìêéèåä“ÿ ùø÷õóòðÿóÿÿí€ó õÿÿÝÜÛÙØÖÔÓ“ÿèçåãâàßÿó€ÿ€ó ÿÿÎÌËÉÇÆÄÄÿæŒÿ×ÕÓÒÑÏÎËó€ÿõïóÿÿ¼»º·¶µ³²óóðÿÿôóôŒÿÅÄÂÁ¿¾¼ºó„ÿ­«ª¨¦¥£¢ÿÿóôÿÿòóñŒÿ´²±¯®¬ª©óƒÿ›™˜–•“’€ÿã“ÿ¡ žœ›™˜ó€ÿ òÿÿŒ‰ˆ‡…„‚€—ÿŽŒ‹‰ˆ‡óÿÿóóò|zxwutrp˜ÿ~|{zxwuó€ÿ ôôjhgedb`_˜ÿmkjhgecóÿZYWVTRQO™ÿ[ZYVUTRóÿIGFDBA?ñòƒÿõóõÿJIGEDBAé€ÿ 9864210.óóô‚ÿòóòÿ8754210Ãÿÿ)(&$#! ÿÿô‚ÿïöóêÿõôó‹ÿ'&$#!œÿÿ ŠÿóóôŒÿ  tÿ€ÿÿóóˆÿõÿQÿ„ÿÿðóó™ÿƒ8…ÿöÿóô‚ÿó„ÿ¿‹ÿƒ„ÿ€óè‚ÿôóóñÿôô‹ÿ‹ÿòóó÷‚ÿòôóÿ€óöŠÿŠÿÿòôôƒÿ÷ôö’ÿŠ¡ÿˆ¢ÿ‡£ÿ‚'+)/àšó€ÿh8mk èøøøøø¢Èøøøøøá ÎÿÿÿÿÿÇdÿÿÿÿÿÿ`¬ÿÿÿÿÿç &êÿÿÿÿÿÆŠÿÿÿÿÿþ$ %‘ÿÿÿÿÿý2hÿÿÿÿÿÿ', +ûÿÿÿÿÿ—FÿÿÿÿÿÿG3½ÿÿÿÿÿì$ÿÿÿÿÿÿg;Sÿÿÿÿÿÿfüÿÿÿÿÿ‡B àÿÿÿÿÿËàÿÿÿÿÿ§I 6A€ÿÿÿÿÿþ7¾ÿÿÿÿÿÇQjqöÿÿÿÿÿœÿÿÿÿÿçX56¬ÿÿÿÿÿïzÿÿÿÿÿþ`GBÿÿÿÿÿÿlXÿÿÿÿÿÿ'g6ÔÿÿÿÿÿÐ6ÿÿÿÿÿÿGo<oÿÿÿÿÿÿ<ÿÿÿÿÿÿgv`½Pïÿÿÿÿÿ£Còÿÿÿÿÿ‡}4›ÿÿÿÿÿò Ðÿÿÿÿÿ§…3ýÿÿÿÿÿr®ÿÿÿÿÿÇŒÆÿÿÿÿÿÕŒÿÿÿÿÿç^ÿÿÿÿÿÿBjÿÿÿÿÿþ<ˆ æÿÿÿÿÿ©Hÿÿÿÿÿÿ'0Šÿÿÿÿÿôl&ÿÿÿÿÿÿG&úÿÿÿÿÿxW ýÿÿÿÿÿg¶ÿÿÿÿÿÚâÿÿÿÿÿ‡MÿÿÿÿÿÿHÀÿÿÿÿÿ§› Üÿÿÿÿÿ¯žÿÿÿÿÿÇÄÿä1yÿÿÿÿÿö |ÿÿÿÿÿçkû«ôÿÿÿÿÿ  Zÿÿÿÿÿþ1?¥ÿÿÿÿÿÞ*™D^™08ÿÿÿÿÿÿ'<ÿÿÿÿÿÿNÒ_`5ÿÿÿÿÿÿGÏÿÿÿÿÿ¶ óÿÿÿÿÿg; hÿÿÿÿÿø$Òÿÿÿÿÿ‡,ïzìÿÿÿÿÿ…°ÿÿÿÿÿ§_/•ÿÿÿÿÿâ ŽÿÿÿÿÿÇ.üÿÿÿÿÿTlÿÿÿÿÿçÀÿÿÿÿÿ¼Pcf5Jÿÿÿÿÿþ“Wÿÿÿÿÿú))ÿH£Â… (ÿÿÿÿÿÿ¡ ãÿÿÿÿÿ‹/;˜ ]@þÿÿÿÿÿ¯„ÿÿÿÿÿæ A€\äÿÿÿÿÿ½"øÿÿÿÿÿZ1Âÿÿÿÿÿ˰ÿÿÿÿÿÁÛª ÿÿÿÿÿÙFÿÿÿÿÿü-WH? ~ÿÿÿÿÿé×ÿÿÿÿÿ‘jÌg uÚ“[\\ÿÿÿÿÿÿÿÿÿÿÿéuÿÏOß”VV:ÿÿÿÿÿÿÿÿÿÿÿaP^pÿÿÿÿÿÿÿÿÿÿÇõÿÿÿÿÿÿÿÿý2Ôÿÿÿÿÿÿÿÿ—“ÐÐÐÐøýúøâàààààààààààààÖȺ¬Ÿ‘ƒugYL=/!it3268މÿÑѽÿ… ‰ ‰ÿ„ˆ‰ÿÑѽÿ‹ ‚ ŠÿŠ‚‰ÿÑѼÿ ŠÿˆÿÑѼÿ‡ † ‹ÿ„‰ˆÿÑчÿÑÆ¯ÿ € ŒÿŠƒˆÿÑуÿÛÎÕÕÎÕ®ÿ‚ Œ ŒÿŽˆÿÑÑ„ÿÎÑÐÕÒÓ̬ÿˆ …ÿ…ˆ ˆÿÑÑ„ÿÛÑÐÓÒÑÕªªÿ ŽÿŠ ‚ ˆÿÑÑ„ÿÈÐÔÓÒÕ¬ÿ„‰ÿ ˆÿÑÑ„ÿÏÑÕÑѬÿ‹‚ÿ… ‡ ˆÿÑÑ„ÿÑÿÿÛÏ’ÿ¿•ÿÿ‹ ‚ ‡ÿÑшÿÕ’ÿÐÒÕÌ’ÿ‡†‘ÿ€ ‡ÿÑÑžÿÒÏÕ¿‘ÿŽ€‘ÿ… ˆ ‡ÿÑÑÿÍÑÎÓÒ‘ÿƒŠ’ÿ‹ ‚‡ÿÑÑžÿÑÍÎÕÿŠƒ”ÿ ‡ÿÑÑžÿÌÓ‘ÿ€”ÿ…‡‡ÿÑÑ´ÿ…ˆ•ÿ‹‡ÿÑѳÿŒ‚•ÿ‡ÿÑѳÿŒ–ÿ†‡†ÿÑѲÿˆ…—ÿŒ†ÿÑÑÿÄÛžÿŽ—ÿ€†ÿÑÑÿÐÒÿ„‰˜ÿ†‡†ÿÑÑŽÿ×ÑÒÌ›ÿ‹ƒ™ÿŠ‚†ÿÑÑ‹ÿÑÐÐÑÑÐÐÑÑ™ÿŽšÿ†ÿÑÑŒÿ€ÑÐÐÒÏÓ˜ÿ‡‡šÿ…‡†ÿÑÑÿÏÑÐÒÒΙÿ€›ÿ‹†ÿÑÑÿÒÑÐÒÑݘÿ‚‹œÿ€…ÿÑÑÿÒÑÐÐÒÒ—ÿˆ†œÿ†‡…ÿÑÑÿÕÿÿÒÖ—ÿŽÿŒ…ÿÑÑŸÿЉÿ„Šžÿ€Œ…ÿÑÑœÿ¿ÖÎÒ‰ÿŠƒŸÿ††…ÿÑÑÿÏÑÐÒΆÿ€ ÿŒ€…ÿÑÑÿÏÐÐ͆ÿ‡‡ ÿ‹…ÿÑÑÿÎÓÑ͆ÿ€¡ÿ††…ÿÑщÿÑÕ›ÿƒ‹¡ÿŒ„ÿÑцÿÐÓÏÑÑ›ÿ‰„ ¢ÿŒ„ÿÑцÿ‚ÑšÿŽ £ÿ‡†„ÿÑцÿÕÑÐÆ˜ÿ… ˆ!ƒÿÌÕœÿŒ€„ÿÑцÿÓÑÐÑ—ÿ‹!‚"ƒÿÑÏÓœÿ‹„ÿÑÑ…ÿÎÑИÿ€!Ž"‚ÿ¿ÑÒÐÕ›ÿ‡…„ÿÑшÿÏÑΘÿ‡"†#ƒÿªÑÐÿ „ÿÑщÿИÿŽ#$$§ÿ‹ „ÿÑÑ¥ÿ‚#‹$§ÿˆ …!ƒÿÑѤÿ‰$„%¨ÿŒ!"ƒÿÑÑ£ÿ$$%©ÿ€!Œ"ƒÿÑÑ£ÿ…%ˆ&ªÿ†"†#ƒÿÑÑ¢ÿŒ&'«ÿŒ#€$ƒÿÑÑ¢ÿ&Œ'«ÿ#‹$ƒÿÑÑ¡ÿ‡'()++-/133¬ÿ‡$…%ƒÿÑÑ¡ÿ)+--/135578:<<>@BDD¬ÿ%&&ƒÿÑјÿÑ„ÿ8:<>>@BDFFHIKMMOQSU­ÿ‚%‹&‚ÿÑÑ–ÿÔÒÑÌ‚ÿHIKMOOQSUWYYZ\^``bd®ÿˆ&…'‚ÿÑÑ–ÿÑÎÿZZ\^`bbdfhjjkmoqqsu‡ÿª¤ÿŒ'()+‚ÿÑÑ–ÿÖ€Ñÿjkkmoqssuwyzz|~€‚„„…ÿßÿÌѤÿ' ()+--/135578:<‚ÿÑÑ–ÿÏÑÎÔÿz||~€‚„††ˆŠ‹‘“••…ÿÑÐÑѤÿ35778:<>>@BDFFHIKM‚ÿÑÑÿŠ‹‘“•——™›œžž ¢¤¦†ÿÌÑÕ¢ÿDFHHIKMOQQSUWYYZ\^‚ÿÑÑœÿ™›œž  ¢¤¦¨¨ª¬­¯±±³µ‡ÿÓÑÑÒÐÌ¢ÿUWYZZ\^`bbdfhjjkmo‚ÿÑÑœÿª¬­¯±³³µ·¹»»¼¾ÀÂÂÄÆ‡ÿ€ÒѤÿfhjkkmoqssuwyz||~€‚ÿÑÑ›ÿ»¼¼¾ÀÂÄÄÆÈÊÌÌÍÏÑÓÕÕ‹ÿФÿwyz|~~€‚„††ˆŠ‹‘“ÿÑÑ›ÿÌÍÍÏÑÓÕ××ÙÛÝÞÞàâäææ³ÿˆŠ‹‘“•——™›œž  ¢¤ÿÑÑšÿÛÝÞààâäæèèêìîïïñóõ÷µÿ›œž  ¢¤¦¨ªª¬­¯±±³µÿÑÑ™ÿêìîïññóõ÷ùùûýÿþýýüüûµÿ¬­¯±³³µ·¹»»¼¾ÀÂÂÄÆÿÑÑ™ÿûýÿþý€üûú€ùø€÷öõ¶ÿ¼¾ÀÂÄÄÆÈÊÌÍÍÏÑÓÕÕ×ÿÑщÿÒ‹ÿ€ùø÷÷ööõôôóóòòñððï·ÿÍÏÑÓÕ××ÙÛÝÞÞàâäææèÿÑшÿÎÑ‹ÿó€òñð€ï îííììëêêéé·ÿààâäæèèêìîïïñóõ÷ùùÿÑшÿ€Ñ‰ÿííìëëêêé€èçæ€åäãâ¸ÿññóõ÷ùûûýÿþýýüüûúúÿÑчÿÓ€ÑØˆÿçæ€åäã€âáààßÞÞÝÝܸÿý€üûú€ùø€÷öõôôóó€ÿÑÑ„ÿЄÑÒÑÒ„ÿáààßÞÞÝÝÜ€ÛÚÙ€Ø×Öºÿ ööõôôóóòòñð€ïî€í€ÿÑÑ…ÿ…ÑÒ„ÿÛÚÚÙØØ××ÖÖÕÔÔÓÓҀѻÿ€ïîííììëêêééèèçææ€ÿÑцÿƒÑÒ…ÿÔ€ÓÒ€Ñ ÐÏÎÎÍÍÌËËÊÊ»ÿé€èçæ€åäã€âáàà߀ÿÑцÿÒ‚ÑÌ„ÿÎÎÍÍÌËËÊ€ÉÈÇ€ÆÅÄļÿ€âáààßÞÞÝÝÜ€ÛÚÙØ€ÿÑцÿ„Ñ„ÿÈÇ€Æ ÅÄÄÃÃÂÁÁÀÀ¿¿¾½‹ÿÛÎØÿÿÌΧÿÜ€ÛÚÙ€Ø×ÖÖÕÕÔÓÓÒ€ÿÑцÿÑÐÑ¿ÐÒуÿÂÁÁÀ€¿¾½€¼»ºº¹¹¸·ƒÿÐÑ„ÿÌÑÐÑÐÒѧÿÖÕÔÔÓÓÒ€ÑÐÏ€ÎÍÌË€ÿÑцÿÐÿÌЂÿ ¼¼»ºº¹¸¸··¶€µ´³€²ÿÑÒÑÑÒ…ÿÑÑÐÐÒѧÿÏÎÎÍÍÌËËÊÊÉÉÈÇÇÆÆÅ€ÿÑÑ’ÿ€µ´³€²±°€¯®­­¬««ÿÓÒÒÑÑÌ„ÿÒÑÐÐѨÿÉÈÇ€ÆÅ€Ä ÃÂÁÁÀÀ¿¿¾ÿÿÑÑ‘ÿ¯¯®®­­¬«€ª©€¨§¦¥¥ƒÿÑÒÑÒÑ„ÿÑÑÐÐÒÙ¨ÿÁÁÀ€¿¾½€¼»€º¹¸·ÿÿÑÑ‘ÿ©¨¨§§¦¥¥¤¤££¢¡¡  ŸžƒÿÒÑÐÑуÿ¿€ÑÐÐÔ¨ÿ »ºº¹¹¸··¶¶µµ´³€²±ÿÿÑÑÿ££¢¡€ Ÿ€žœ››šš™˜„ÿÐφÿÉÒªÿÿÉѨÿµ´³€²±°€¯ ®­­¬¬«ªÿÿÑÑÿ œ››š™™˜˜—€–•”€“Âÿ®­­¬««ªª©€¨§¦€¥¤ÿÿÑÑÿ€–•”€“ ’‘‘ŽŽŒŒÂÿ¨§¦€¥¤££¢¡¡  Ÿ€žÿÿÑÑŽÿ‘ŽŽ€Œ‹Š€‰ˆ‡‡†Ãÿ¡  Ÿ€žœ€›š™€˜—ÿÿÑÑ…ÿÑÑ„ÿ Љ‰ˆˆ‡‡†……„„ƒ€‚€Ãÿšš™˜˜——––•””““’€‘ÿÿÑÑ…ÿÐÑÑÐЀÿ„„ƒ€‚€€~}||{{zzÅÿ““’‘‘ŽŽŒŒ‹ŠŠ‰ÿÑуÿÕÒÑÓ€ÿ ~}||{{zzyx€wv€utÆÿ€Œ‹Š€‰ˆ€‡†…„„ƒƒÿÑуÿÐÑÒ€ÿ€wvuuttsrrqqpponnmÆÿ ††…„„ƒƒ‚‚€€~}||ÿÑÑ…ÿЀÑÌÿrq€pon€mlkkjjihhgÇÿ€~}€| {zzyyxwwvvÿÑÑ…ÿÑÑÕÓÒÿkkjjihhgffeed€cba`Çÿyxxwwv€uts€rqppoÿÑÑ…ÿÑÿeed€cba€`_^^]]\[[Èÿ€rqpponnmml€kjihÿÑÑŠÿ_^^]\\[[Z€YXW€VUÉÿl€kji€hgf€edccbÿÑщÿYYXWVVUUTTSRRQQP€OÉÿeeddccba€`_€^]\[ÿÑшÿSR€QP€ONM€LKJIIH—ÿÓ°ÿ^^]]\[[ZZYYXWWVVUTÑшÿLLKKJIIH€GFE€DCBBÿÓŒÿÑÒÈÿÕÑаÿXW€VU€T SRQQPPOONÑчÿGFE€DCBBAA@??>>==<ÿÿÒÑÐÑŒÿ€ÑÑÐÑÑаÿQQP€ONM€LKJ€IHGÑчÿ@??>€=<;€:988776€ÿ€ÑÐÓŒÿ‚ÑÒÛ¯ÿKJ€IHGGFFEDDC€BAÑцÿ::98876655433221€0€ÿÐÑЋÿЃÑÏ®ÿDDC€BA@€?>==<<;:Ñцÿ3€21€0/.€-,++*)ÿЀÑÓ‹ÿÒƒÑÒÑÒ…ÿª¤ÿ>==<;;::9€876€54ÑÑ…ÿ --,,++*))(('€&%$##ÿÑ×ÒÑ‹ÿÌÑÐЀÑÓß‚ÿÑÓØÛÑÔ¤ÿ876€5 43221100/..-ÑÑ„ÿ('&&%%$##""!! …ÿÑÿÎÒÒ„ÿÒÐÒÑÒÐ¥ÿ00/.€-,€+*)€('ÑÑ„ÿ!! €€šÿÏÑ„ÿÑЀÒÕ¥ÿ *)((''&&%$$##"€!Ìуÿ €€›ÿ߃ÿÒÒЀÒÐÓ¤ÿ##"!! ®Ñƒÿ€€  ¢ÿÑÑÐЀÒÐÒÌ£ÿ€€€Ñ‚ÿ €  €¥ÿÌÒÑÒ¦ÿ € qÑÿ ‚…ÿÕÌÿÐÓ§ÿ€ € UÑÿ…ÿÐÒÿÕÆ§ÿ €€:Ñ€ÿƒÿÒÑÒÑÑÏØÇÿ€Š%Ñ€ÿ…ÿƒÑÛÇÿÑÿÿ…ÿЀÑÒÉÿÍÿ†ÿЀÑÒŒÿÕ¹ÿ޲ÿ‚ÿÛЂÿÑÓ‹ÿÓÑÓÿÓ€ÿ¿Õ¢ÿŽ•ƒÿ€Ñ‘ÿ€ÑÿÑÐʀѢÿŽy€ÿÑÐÏÒÑÑÐŽÿÖÓ‚ÑÒÒÆ‰ÿЀÒÑÌ¢ÿŽ;€ÿЃÑÒÒÓŠÿ¿„ÑÐЉÿ¿Ï€ÒÑÏ¢ÿ ‚ÿЄÑÒŒÿÏ‚ÑЉÿÌÐÒÑÑ×¢ÿŸƒÿƒÑÕŽÿÐÑÒ‰ÿÒÑÏÐÒҀТÿžƒÿÓ‚ÑÒÿÑÑÒÐÑÑŒÿÐÒÒ¥ÿ„ÿ„ÑÿÑÑÿÿÛÒÿÑÛ¥ÿ„ÿÏØÿÿÌÒÐ¥ÿÛ¦ÿœ‹ÿÕÏÿœÞÿ›ßÿšáÿ™áÿ˜âÿ˜âÿ—ãÿ•ÌÑ•ÿ”´ÌÑ•ÿІoÍÑ…ÿމÿÛÛ½ÿ… ‰ ‰ÿ„ˆ‰ÿÛÛ½ÿ‹ ‚ ŠÿŠ‚‰ÿÛÛ¼ÿ ŠÿˆÿÛÛ¼ÿ‡ † ‹ÿ„‰ˆÿÛÛ‡ÿÜã¯ÿ € ŒÿŠƒˆÿÛÛƒÿÛÛÕßÞã®ÿ‚ Œ ŒÿŽˆÿÛÛ„ÿÖØÝÜÚÓæ¬ÿˆ …ÿ…ˆ ˆÿÛÛ„ÿÛÜÛÚÙØÕªªÿ ŽÿŠ ‚ ˆÿÛÛ„ÿÛÛÙÞÝÕ¬ÿ„‰ÿ ˆÿÛÛ„ÿÝÛÜÛÛ¬ÿ‹‚ÿ… ‡ ˆÿÛÛ„ÿÑÿÿÛÚ’ÿ¿•ÿÿ‹ ‚ ‡ÿÛÛˆÿÕ’ÿÙÒÕæ’ÿ‡†‘ÿ€ ‡ÿÛÛžÿÚÝÜ¿‘ÿŽ€‘ÿ… ˆ ‡ÿÛÛÿÜÜÛÚÒ‘ÿƒŠ’ÿ‹ ‚‡ÿÛÛžÿÜØÛãÿŠƒ”ÿ ‡ÿÛÛžÿÌÞ‘ÿ€”ÿ…‡‡ÿÛÛ´ÿ…ˆ•ÿ‹‡ÿÛÛ³ÿŒ‚•ÿ‡ÿÛÛ³ÿŒ–ÿ†‡†ÿÛÛ²ÿˆ…—ÿŒ†ÿÛÛÿØÛžÿŽ—ÿ€†ÿÛÛÿÜÜÿ„‰˜ÿ†‡†ÿÛÛŽÿäÛÚœÿ‹ƒ™ÿŠ‚†ÿÛÛ‹ÿÑÚÛÚÚÜ€Û™ÿŽšÿ†ÿÛÛŒÿÞÚÚÜ€Ûܘÿ‡‡šÿ…‡†ÿÛÛÿÜ€ÛÚØ™ÿ€›ÿ‹†ÿÛÛÿÛÛÚÚÜݘÿ‚‹œÿ€…ÿÛÛÿÛÜá—ÿˆ†œÿ†‡…ÿÛÛÿÝÿÿáà—ÿŽÿŒ…ÿÛÛŸÿÙ‰ÿ„Šžÿ€Œ…ÿÛÛœÿ¿àÛ݉ÿŠƒŸÿ††…ÿÛÛÿÛÚÜÛÛ†ÿ€ ÿŒ€…ÿÛÛÿÝÜÛØ†ÿ‡‡ ÿ‹…ÿÛÛÿÛÚÞÚ†ÿ€¡ÿ††…ÿÛÛ‰ÿÑÚ›ÿƒ‹¡ÿŒ„ÿÛÛ†ÿÛÝßÛÛ›ÿ‰„ ¢ÿŒ„ÿÛÛ†ÿÚ€ÛÜšÿŽ £ÿ‡†„ÿÛÛ†ÿÛÛÚÜÛÚÆ˜ÿ… ˆ!ƒÿÌÕœÿŒ€„ÿÛÛ†ÿÜÜ€ÛÚÝ—ÿ‹!‚"ƒÿÛÚÛœÿ‹„ÿÛÛ…ÿÛÛÚÜÛÚ˜ÿ€!Ž"ƒÿÜÜÚÕ›ÿ‡…„ÿÛÛˆÿÜÛÛ˜ÿ‡"†#ƒÿªÑÛÿ „ÿÛÛ‰ÿÚ˜ÿŽ#$$§ÿ‹ „ÿÛÛ¥ÿ‚#‹$§ÿˆ …!ƒÿÛÛ¤ÿ‰$„%¨ÿŒ!"ƒÿÛÛ£ÿ$$%©ÿ€!Œ"ƒÿÛÛ£ÿ…%ˆ&ªÿ†"†#ƒÿÛÛ¢ÿŒ&'«ÿŒ#€$ƒÿÛÛ¢ÿ&Œ'«ÿ#‹$ƒÿÛÛ¡ÿ‡'()++-/133¬ÿ‡$…%ƒÿÛÛ¡ÿ)+--/135578:<<>@BDD¬ÿ%&&ƒÿÛÛ˜ÿÜ„ÿ8:<>>@BDFFHIKMMOQSU­ÿ‚%‹&‚ÿÛÛ–ÿÙÛÜÝ‚ÿHIKMOOQSUWYYZ\^``bd®ÿˆ&…'‚ÿÛÛ–ÿÝÛÿZZ\^`bbdfhjjkmoqqsu‡ÿª¤ÿŒ'()+‚ÿÛÛ–ÿÞÛÛÜÿjkkmoqssuwyzz|~€‚„„…ÿßÿÝÙ¤ÿ' ()+--/135578:<‚ÿÛÛ–ÿרÛÞÿz||~€‚„††ˆŠ‹‘“••…ÿÜ€Û¤ÿ35778:<>>@BDFFHIKM‚ÿÛÛÿŠ‹‘“•——™›œžž ¢¤¦†ÿæÚÛÛÙÝ¢ÿDFHHIKMOQQSUWYYZ\^‚ÿÛÛœÿ™›œž  ¢¤¦¨¨ª¬­¯±±³µ‡ÿÝÛÛÜÙæ¢ÿUWYZZ\^`bbdfhjjkmo‚ÿÛÛœÿª¬­¯±³³µ·¹»»¼¾ÀÂÂÄÆ‡ÿÛÜÝÛ¤ÿfhjkkmoqssuwyz||~€‚ÿÛÛ›ÿ»¼¼¾ÀÂÄÄÆÈÊÌÌÍÏÑÓÕÕ‹ÿÛ¤ÿwyz|~~€‚„††ˆŠ‹‘“ÿÛÛ›ÿÌÍÍÏÑÓÕ××ÙÛÝÞÞàâäææ³ÿˆŠ‹‘“•——™›œž  ¢¤ÿÛÛšÿÛÝÞààâäæèèêìîïïñóõ÷µÿ›œž  ¢¤¦¨ªª¬­¯±±³µÿÛÛ™ÿ êìîïññóõ÷ùùûýÿ€þ€ýµÿ¬­¯±³³µ·¹»»¼¾ÀÂÂÄÆÿÛÛ™ÿûýÿþþýüûúú¶ÿ¼¾ÀÂÄÄÆÈÊÌÍÍÏÑÓÕÕ×ÿÛÛ‰ÿá‹ÿ€ü€ûúùøø€÷·ÿÍÏÑÓÕ××ÙÛÝÞÞàâäææèÿÛÛˆÿÛÛ‹ÿ€ùøø÷€öõ€ô·ÿààâäæèèêìîïïñóõ÷ùùÿÛÛˆÿÜÛÚ‰ÿööõô€ó€ò€ñ¸ÿ ññóõ÷ùûûýÿ€þ€ýüüÿÛÛ‡ÿÚ€ÛØˆÿóó€ò€ñðï€î¸ÿþýüû€ú€ù€ÿÛÛ„ÿ…ÛÜÛÝ„ÿððï€îíììëºÿúùøø÷ö€ÿÛÛ…ÿ†Û„ÿ€íììëê€é€è»ÿ€÷€öõôó€ÿÛÛ†ÿ„Û…ÿêéè€ç€æå»ÿ€ô€ó€ò€ñðïï€ÿÛÛ†ÿƒÛÝ„ÿçç€æ€åäã€â¼ÿñðï€îíìì€ÿÛÛ†ÿÚ‚ÛÚ„ÿäã€âáàßßÞ‹ÿÛÛØÿÿÛÙ§ÿîíììëê€é€ÿÛÛ†ÿÛÛÚ¿ÚÜ܃ÿááàßßÞ€Ý܃ÿÚÛ„ÿÌÜÛÚÛÜܧÿê€éèçææå€ÿÛÛ†ÿÛÿæÛ‚ÿÞÞ€ÝÜÛ€Ú€Ùÿ‚Û…ÿÛÜܧÿ€ç€æå€äãâ€ÿÛÛ’ÿÛÚ€Ù€Ø×ÖÿÜÛ…ÿÛܨÿääãâ€áàßßÿÿÛÛ‘ÿØ×€ÖÕÔÓÓÒƒÿ€ÛÜÛ„ÿÛÜã¨ÿáàßßÞÝ€ÜÿÿÛÛ‘ÿÕÔÓÓÒÑ€ÐσÿÜÛÜÛÛƒÿßÛÚÛÚÚÛ¨ÿ€ÝÜÛ€Ú€ÙØÿÿÛÛÿÒ€ÑÐπ΀ÍÌ„ÿÛ܆ÿ×ݪÿÿר¨ÿ€Ú€Ù€Ø×ÖÕÿÿÛÛÿÏπ΀̀ÌËÊÂÿ××Ö€ÕÔ€ÓÒÒÿÿÛÛÿËÊ€ÉÈÇÂÿÔÔÓÓÒрЀÏÿÿÛÛŽÿÉÈÇÆÆÅ€ÄÃÃÿÑ€ÐÏÎÍÍÌÿÿÛÛ…ÿÛÜ„ÿ€ÅÄÀÁÀÃÿ€ÍÌ€ËÊÉÿÿÛÛ…ÿÚÛÜÜÛ€ÿÀÂÁ€À€¿¾½ÅÿÊÊ€ÉÈÇÆÆ€ÅÿÛÛƒÿÕÜÛÜ€ÿ€¿¾€½¼»ÆÿÇÇÆÆÅĀÀÂÿÛÛƒÿÙÚÛ€ÿ¼»ºº¹¸·ÆÿÀÁ€À¿ÿÛÛ…ÿÚ€ÛÙÿ¹€¸·¶€µ´Çÿ€À€¿¾½¼ÿÛÛ…ÿÛÛÕÝÚÿ¶€µ€´€³²±±Çÿ€½€¼»ºº¹¸¸ÿÛÛ…ÿÛÿ€³²±€°¯®Èÿº¹¸€·¶µµÿÛÛŠÿ€°¯€®€­¬«Éÿ·¶µ´´³€²ÿÛÛ‰ÿ€­€¬«ª©¨Éÿ³€²±°€¯ÿÛÛˆÿª€©¨€§€¦¥¥—ÿÞ°ÿ°°¯®­­¬««ÛÛˆÿ§§¦¥€¤£¢¢ÿÛŒÿÜÝÛÿÕÙÚ°ÿ­¬«€ª©¨¨ÛÛ‡ÿ€¤£¢¡¡ ŸŸÿÿÚ€ÛŒÿ€ÛÛÚ°ÿª©€¨€§¦€¥ÛÛ‡ÿ¡¡ €Ÿžœ€ÿÛÞŒÿÝÛÛÜÛÜÛ¯ÿ€¦¥¤€£¢ÛÛ†ÿ€ž€œ€›€š€™€ÿ‚ÛÝ‹ÿ€ÛÚ€ÛÚ®ÿ€£¢¡¡ ŸžÛÛ†ÿ›š™˜€—––ÿÜÛ‹ÿ ÛÚÛÛÚÛÛÜÚÚ…ÿª¤ÿ  Ÿ€žœ›ÛÛ…ÿ˜˜—–€•€”€“ÿÚ×ÛÛ‹ÿÝ€ÛÚÚÛÛß‚ÿÜÚØÛÙܤÿœ››š€™€˜ÛÛ„ÿ€•€”€“’‘…ÿØÿÙÛÛ„ÿÝÛÝÙÚÛ¥ÿ€™˜—€–€•ÛÛ„ÿ’’‘€ŽŽ€šÿÙÙ„ÿÛÛÜÚÚÜ¥ÿ€–•””“’ÙÛƒÿ€ŽŽŒ€‹€Š›ÿ߃ÿÝÛÛÜ€ÚÞ¤ÿ““€’‘ÌÛƒÿŒ‹Š‰ˆˆ€‡¢ÿÜÛÚÛÜ€ÚÜÌ£ÿ€€Ž€Œ‹‹¿Û‚ÿ‰‰€ˆ‡€†…€„¥ÿÝÛÛá¦ÿŒ‹€Š‰ˆˆ³Ûÿ††…€„ƒƒ‚…ÿÕÖÿÙÚ§ÿ‰ˆˆ‡†€…§ÛÿƒƒŽ‚…ÿÛÛÿÕã§ÿ€†€…„ƒ€‚›Û€ÿ‚ƒÿÜÛÜÛÛÚØÇÿ€ƒ‹‚’Û€ÿ‚…ÿ܃ÛÇÿ‚‰Ûÿÿ‚…ÿÜ€ÛÚÉÿ‚ƒÙÿ‚†ÿ‚ÛŒÿÛ¹ÿŽ‚Îÿ‚‚ÿÛÛ‚ÿÜÞ‹ÿÛÛÞÿÞÿÕ¢ÿŽ‚Á‚ƒÿÜÛÑ‘ÿ€ÛÿÛÙÜÛÜÛ¢ÿŽ‚¶‚€ÿÜÙÜÜ€ÛŽÿÞÛÚƒÛÕ‰ÿÝÛÛÜÜÌ¢ÿŽ‚›‚€ÿ…ÛÚÜŠÿ¿„ÛÚÛ‰ÿ¿ÚÛÛÜÜÏ¢ÿ ‚‚ÿ†ÛŒÿÚÜÛÚ‰ÿÌÚ€ÛÜÜÝä¢ÿŸ‚ƒÿƒÛߎÿÚÛ܉ÿÚÜÜÚÛÜÛÙ×¢ÿž‚ƒÿÞ‚ÛÝÿÚÛÜ€ÛŒÿ×ÛÚ¥ÿ‚„ÿƒÛÚÿÛØÿÿÛÙÿÝÛ¥ÿ‚„ÿÜØÿÿÖÚÜ¥ÿÛ¦ÿœ‚‹ÿÕÏÿœ‚Þÿ›‚ßÿš‚áÿ™‚áÿ˜‚âÿ˜‚âÿ—‚ãÿ•‚ÌÛ•ÿ”‚„ÏÌÛ•ÿŠ‚‹†±¿ÍÛ…ÿ€€‰ÿóó½ÿ€=>>?€@AABB€CD‰ÿ€€ !!"##‰ÿóó½ÿ€ABB€CDDEFF€GŠÿ!"##€$%%€&''(‰ÿóó¼ÿEFF€GHH€IJJKŠÿ%€&''())€*++,,ˆÿóó¼ÿII€JKLLMM€NOOP‹ÿ)**€+,,€-.//00ˆÿóó‡ÿó°ÿLMM€NOO€P€Q€RSSŒÿ€.€/00€122€3€4ˆÿóó„ÿóñô÷ñ®ÿQ€RSS€TUUVWWŒÿ22334€566€7889ˆÿóó„ÿïòòñðô­ÿ€UVWWXX€YZZ€[ÿ6677€89::;;€<=ˆÿóó…ÿ€óòòôªªÿX€YZZ€[€\€]^^€_Žÿ:;;€<==€>€?€@Aˆÿóó„ÿíõ€ô­ÿ\€]^^€_``aabccÿ€?€@AA€BCCDD€Eˆÿóó„ÿñðøõð¬ÿ`aabcc€dee€fggÿCCDDEFF€GHH€Iˆÿóó„ÿè€ÿô’ÿ¿•ÿddee€fgghii€jkkÿGGHH€IJJKLL€MN‡ÿóóžÿìðñ“ÿhhii€jkkll€mno‘ÿKKLL€MNNOO€PQR‡ÿóóžÿøññ’ÿl€m€n€opp€qrr€s‘ÿ€P€Q€RSS€TUU€V‡ÿóóÿñ€óð‘ÿp€qrrstt€uvvww’ÿ€TUUVWW€XYY€Z‡ÿóóžÿóôóñÿtt€uvvww€xyzz{”ÿXXYYZZ€[\]]€^‡ÿóóžÿÌô‘ÿxx€y€z{{€|}}€~”ÿ\€]^^€_``€a€bc‡ÿóó´ÿ||}}€~€€€€‚ƒ•ÿ€a€b€cdd€effgg‡ÿóó³ÿ€€‚‚€ƒ„„…€†‡•ÿee€fggh€ijjkk‡ÿóó³ÿ„…††€‡ˆˆ€‰ŠŠ‹‹–ÿii€jkk€lmmnoop†ÿóó²ÿˆˆ€‰ŠŠ‹ŒŒ€ŽŽ—ÿmnoo€pqq€r€st†ÿóóÿëŸÿŒŒ€Ž€‘’’“—ÿqrrs€tuu€vwwxx†ÿóóÿóðÿ€‘‘€’““€”••–˜ÿuvv€wxxyzz€{||†ÿóóŽÿòóòœÿ€”••–——€˜™™€š›™ÿzz€{||€}~~€€†ÿóó‹ÿèóòóôóòòñ™ÿ˜˜€™šš€›œ€žšÿ~€€€‚‚ƒƒ€„…†ÿóóŒÿ€ò€ôóí˜ÿ€œ€žž€Ÿ  €¡€¢£šÿ‚ƒƒ€„€…€†‡‡€ˆ‰†ÿóóÿ‚òë™ÿ  ¡¡¢€£¤¤€¥¦¦§›ÿ†‡‡€ˆ‰‰€Š€‹€Œ†ÿóóÿ‚ó™ÿ€¤¥¥€¦§§¨©©€ªœÿ€‹€ŒŽŽ€‘‘…ÿóóÿôóóôõø—ÿ¨©©€ª««€¬€­€®œÿ€€‘’’€“””€•–…ÿóóÿ÷€ÿðõ—ÿ¬¬­€®¯¯€°±±€²ÿ““””€•€–€—˜˜€™š…ÿóóŸÿö‰ÿ¯°°€±²²³´´€µ¶¶·žÿ—˜˜™™€š››œ€ž…ÿóóœÿ¿õóô‰ÿ³´´€µ¶¶€·¸¸¹ººŸÿ€œ€žŸŸ€ ¡¡€¢…ÿóóÿñóóôó†ÿ€¸¹ºº€»¼¼€½¾¾ ÿ  ¡¡¢££€¤¥¥€¦…ÿóóÿñôôî†ÿ»€¼½½€¾€¿€ÀÁÁ€Â ÿ¤€¥¦¦€§¨©©ªª«…ÿóóÿóóòó†ÿ¿€ÀÁÁ€ÂÃÀĀÅÆÆ¡ÿ¨€©ªª€«¬¬­®®¯…ÿóó‰ÿèô›ÿÃÄÄÅ€ÆÇÇ€ÈÉɀʡÿ­®®€¯°°€±²²€³„ÿóó†ÿñõ÷óò›ÿÇÈȀɀʀËÌÌ€ÍÎ΢ÿ±±€²³´´µµ€¶··¸„ÿóó†ÿñóòòóšÿËËÌÌ€ÍÎ΀πЀÑÒ£ÿµµ€¶··€¸€¹€º»»¼„ÿóó†ÿóòóã˜ÿЀÑÒÒ€ÓÔÔÕÕ€ÖƒÿÌêœÿ¹€º»»€¼½½€¾€¿À„ÿóó†ÿôóòô—ÿÓ€ÔÕÕÖ××€ØÙÙÚÚƒÿòòøœÿ¾¾¿ÀÀ€Á€ÃÄÄ„ÿóó…ÿóòò€ó˜ÿ××€ØÙÙ€ÚÛÛÜÝÝÞÞƒÿôóòÕ›ÿ€ÃÄÄÅÆÆ€ÇÈÈ„ÿóóˆÿòóó˜ÿÛÜÝÝ€Þßßàà€áââ„ÿèñÿÆÆ€ÇÈȀɀʀËÌÌ„ÿóó‰ÿò˜ÿßßàà€á€â€ãää€åæ§ÿÊÊËË€ÌÍÍ€ÎÏÏЄÿóó¥ÿããää€åææçèè€éê§ÿÎÏÏÐÑÑ€ÒÓÓ€ÔÕÕƒÿóó¤ÿ€çèè€éêêëë€ìí¨ÿÒÓÓ€ÔÕÕÖ××€ØÙÙƒÿóó£ÿëë€ì€í€îïï€ðññòò©ÿ××ØØ€ÙÚÚ€ÛÜÝ݃ÿóó£ÿïï€ðññ€ò€ó€ôõõöªÿۀ܀ÝÞÞ€ßàà€áâƒÿóó¢ÿ€ó€ôõõöö€÷øøù«ÿßààááâ€ãää€åæƒÿóó¢ÿ÷÷øøùúú€ûüü€ýþ«ÿ€äå倿çèèééêêƒÿóó¡ÿ€ûüü€ýþþµÿ€èéé€êëë€ì€íîîƒÿóóãÿìí€îïï€ðññòòóƒÿóó˜ÿóÇÿð€ñòòóôô€õöö÷÷‚ÿóó–ÿ€ôîÆÿô€õöö€÷øøùúúûû‚ÿóó–ÿôôóôóžÿª¤ÿ€ùúú€ûüüýý€þ…ÿóó–ÿ÷€óŸÿó¤ÿý€þÿóó–ÿïðóôœÿôóõò»ÿóóºÿòôóò÷¹ÿóó¹ÿõòôõòºÿóó¹ÿöõôò»ÿóó¼ÿó»ÿóóûÿóóûÿóó§ÿþýýüüûËÿóóœÿþý€üûú€ùø€÷öõÌÿóó‰ÿð‹ÿ€ùø÷÷ööõôôóóòòñððïÍÿóóˆÿóô‹ÿó€òñð€ï îííììëêêééÍÿóóˆÿôóó‰ÿííìëëêêé€èçæ€åäãâÂÿþýýüüûúúÿóó‡ÿóëˆÿçæ€åäã€âáààßÞÞÝÝܸÿý€üûú€ùø€÷öõôôóó€ÿóó„ÿ‡óô„ÿáààßÞÞÝÝÜ€ÛÚÙ€Ø×Öºÿ ööõôôóóòòñð€ïî€í€ÿóó…ÿ…óô„ÿÛÚÚÙØØ××ÖÖÕÔÔÓÓҀѻÿ€ïîííììëêêééèèçææ€ÿóó†ÿ„ó…ÿÔ€ÓÒ€Ñ ÐÏÎÎÍÍÌËËÊÊ»ÿé€èçæ€åäã€âáàà߀ÿóó†ÿƒóî„ÿÎÎÍÍÌËËÊ€ÉÈÇ€ÆÅÄļÿ€âáààßÞÞÝÝÜ€ÛÚÙØ€ÿóó†ÿƒóñ„ÿÈÇ€Æ ÅÄÄÃÃÂÁÁÀÀ¿¿¾½‹ÿóó€ÿðô§ÿÜ€ÛÚÙ€Ø×ÖÖÕÕÔÓÓÒ€ÿóó†ÿôóñÿóóôƒÿÂÁÁÀ€¿¾½€¼»ºº¹¹¸·ƒÿòó…ÿƒó§ÿÖÕÔÔÓÓÒ€ÑÐÏ€ÎÍÌË€ÿóó†ÿó‚ÿó‚ÿ ¼¼»ºº¹¸¸··¶€µ´³€²ÿòó…ÿòóóôóó§ÿÏÎÎÍÍÌËËÊÊÉÉÈÇÇÆÆÅ€ÿóó’ÿ€µ´³€²±°€¯®­­¬««ÿíó…ÿ€óôó¨ÿÉÈÇ€ÆÅ€Ä ÃÂÁÁÀÀ¿¿¾ÿÿóó‘ÿ¯¯®®­­¬«€ª©€¨§¦¥¥ƒÿ‚ó„ÿ€óôóö¨ÿÁÁÀ€¿¾½€¼»€º¹¸·ÿÿóó‘ÿ©¨¨§§¦¥¥¤¤££¢¡¡  Ÿžƒÿóóôôóƒÿßóòôóóô¨ÿ »ºº¹¹¸··¶¶µµ´³€²±ÿÿóóÿ££¢¡€ Ÿ€žœ››šš™˜„ÿôò†ÿòô€ÿòò¨ÿµ´³€²±°€¯ ®­­¬¬«ªÿÿóóÿ œ››š™™˜˜—€–•”€“Âÿ®­­¬««ªª©€¨§¦€¥¤ÿÿóóÿ€–•”€“ ’‘‘ŽŽŒŒÂÿ¨§¦€¥¤££¢¡¡  Ÿ€žÿÿóóŽÿ‘ŽŽ€Œ‹Š€‰ˆ‡‡†Ãÿ¡  Ÿ€žœ€›š™€˜—ÿÿóó…ÿöô„ÿ Љ‰ˆˆ‡‡†……„„ƒ€‚€Ãÿšš™˜˜——––•””““’€‘ÿÿóó…ÿóóôóô€ÿ„„ƒ€‚€€~}||{{zzÅÿ““’‘‘ŽŽŒŒ‹ŠŠ‰ÿóóƒÿêò€óôö€ÿ ~}||{{zzyx€wv€utÆÿ€Œ‹Š€‰ˆ€‡†…„„ƒƒÿóóƒÿö‚ó€ÿ€wvuuttsrrqqpponnmÆÿ ††…„„ƒƒ‚‚€€~}||ÿóó…ÿóòÿrq€pon€mlkkjjihhgÇÿ€~}€| {zzyyxwwvvÿóó…ÿóóÿõðÿkkjjihhgffeed€cba`Çÿyxxwwv€uts€rqppoÿóó…ÿöÿeed€cba€`_^^]]\[[Èÿ€rqpponnmml€kjihÿóóŠÿ_^^]\\[[Z€YXW€VUÉÿl€kji€hgf€edccbÿóó‰ÿYYXWVVUUTTSRRQQP€OÉÿeeddccba€`_€^]\[ÿóóˆÿSR€QP€ONM€LKJIIH—ÿô°ÿ^^]]\[[ZZYYXWWVVUTóóˆÿLLKKJIIH€GFE€DCBBÿðŒÿóõíÿÿòó°ÿXW€VU€T SRQQPPOONóó‡ÿGFE€DCBBAA@??>>==<ÿÿôöôóÿóòó°ÿQQP€ONM€LKJ€IHGóó‡ÿ@??>€=<;€:988776€ÿò€óôŒÿôóôóóô°ÿKJ€IHGGFFEDDC€BAóó†ÿ::98876655433221€0€ÿõóò‹ÿôóôóóòóï®ÿDDC€BA@€?>==<<;:óó†ÿ3€21€0/.€-,++*)ÿô€óð‹ÿ öóóôóóòóóø­ÿ>==<;;::9€876€54óó…ÿ --,,++*))(('€&%$##ÿñòôó‹ÿîôòò€óôƒÿóõÿíðó¤ÿ876€5 43221100/..-óó„ÿ('&&%%$##""!! …ÿòÿïóò„ÿôôóòòï¥ÿ00/.€-,€+*)€('óó„ÿ!! €€šÿòò„ÿöôóóòñ¥ÿ *)((''&&%$$##"€!íóƒÿ €€¢ÿ€ôóóòóô¤ÿ##"!! Êóƒÿ€€  ¢ÿ óôóôóóòóòæ£ÿ€€€¥ó‚ÿ €  €¥ÿîóòð¦ÿ € ƒóÿ ‚†ÿõÿóô§ÿ€ € cóÿ…ÿóôÿñã§ÿ €€Dó€ÿƒÿõóôóóñëÇÿ€Š*ó€ÿ…ÿ‚óòÈÿóÿÿ…ÿóòÉÿïÿ†ÿòóòóôŒÿó¹ÿŽÏÿƒÿô‚ÿóô‹ÿøóôÿô§ÿŽ­ƒÿóóè‘ÿòóôÿóòíõóö¢ÿŽ€ÿóñò€óôŽÿ ÷óôôóóôóòñ‰ÿóôóòôæ¢ÿŽE€ÿòƒóòòö‹ÿôƒóòõŠÿñôóòôï¢ÿ ‚ÿô„óòŒÿôƒó‰ÿæòòôóòôó£ÿŸƒÿƒóôŽÿƒó‰ÿðóòóóòðöò¢ÿžƒÿô‚óôÿóòôŒÿòóô¥ÿ„ÿ€óòóóñÿóðÿÿÛñÿö¦ÿ„ÿòëÿÿõóó¥ÿÛ¦ÿœÞÿœÞÿ›ßÿšáÿ™áÿ˜âÿ˜âÿ—ãÿ•Ìó•ÿ”ÒÌó•ÿІ§Íó…ÿt8mk@ÚèèèèèèèèèèèèèèèèžÚèèèèèèèèèèèèèèèèÜÐÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÌ“ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿy®ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿì-üÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÚŒÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ¿ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿIjÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ," Vÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ°GÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿL& âÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷!%ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿl"*'&$" ‚ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ€ýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿŒ%.,+)('!÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿßáÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¬(21/.- ¯ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿO¿ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿË+6%2$22Eÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ·ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿë.: 0×ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿù%{ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 1? rÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ†Yÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ+5C"%$ñÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿã 7ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿK8G$,*)ŸÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿVÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿk;K.6þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ½óÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‹?PÉÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿû*Ñÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ«BTbÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¯ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿËEXéÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿç ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿëH\Žÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ\kÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ L`)ûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÃIÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ*Od »ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿü/'ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿJRhA3Qÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ“ýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿjUliaßÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿêãÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿŠXq RbnombN8~ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿcÁÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿª\u'uusrqköÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÉŸÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÊ_y:zxwvªÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý4}ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿêb}?}|{Aÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿš[ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ e‚[j+F|"Óÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿí9ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ)i†mÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿiÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿIlŠïÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÎôÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿioŽ?ašÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþ:Òÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‰s’[„ƒw3ýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ °ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ©v–%‰ˆ.ÅÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿðŽÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÉyš*)=)]ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿplÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿé|ž 0 æÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÓJÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ £\4 •c‰ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ?(ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ)‚§n¸·¶n&ùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ§þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿH†«*½¼»·f ¶ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿó äÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿh‰¯sÂÁÀ¾ŸCLÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿvM`#ÂÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿˆŒ´*° »ÄRÜÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿØ^lL ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¨¸;ÇyÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿF G~ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈ“¼Lôÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ­\ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿè–À¦ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿö:ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ šÅ=ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ|ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ(ÉÏÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÜõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿH ÍiÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿLÔÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿh£Ñìÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ´²ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‡§Õ•ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿø#ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ§¨Ø/üÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿƒnÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿǨØÁÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿá Lÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿç¨Ø,XÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿR*ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþ¨Ø/rµ ãÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿº þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ'¨ØpôóË…ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿú'åÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿG¨Ø÷óB#øÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‰XÃÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿg¨Ø !*/±ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿå H~zz¡ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‡¨ØHÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿY І€dÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¦¨ØØÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÀ4Œ†|< ]ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿƨØtÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿû,93Zc;ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿæ¨Øòÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ+ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþ¨Ø¡ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿèöÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ&¨Ø8þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ_ÕÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿF¨ØËÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿƳÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿf¨Ødÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý1‘ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ†¨Øêÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ–oÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¦¨ØÈÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿìMÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿŨ؊ÿS+ûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿf+ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ卨)õÿÏ ½ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿË ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþ¨ØVÖ÷ÿÿÿÿÿæÀ-Sÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþ7çÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ%¨Øšÿÿÿÿÿÿÿq àÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÅÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿE¨Øšÿÿÿÿÿk€ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿï£ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿe¨ØUÿÿÿÿÿöÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿlÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ…¨Ø„ÿÿéÿÿ7­ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÐ? #/_ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¥¨Ø³º7gæ_Cÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ<L«¨©„“˜B=ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿŨØ+ +Õÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ£ŒÐÎë¿yª¤ž˜ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ卨pÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿòìñëÎUª¤ž÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþ¨Øðÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿs•ñìæjª¤ž˜×ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ$¨ØœÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÕ’òŸ†« pƒ™G´ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿD¨Ø4þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿBq;-'’ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿd¨ØÇÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿªpÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ„¨Ø_ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿôNÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¤¨Øçÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿy,ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿĨØtŒÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÚ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ䍨RýtmG(úÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿIèÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý¨Ø eÖÿÿô¸ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ°Æÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ#¨Ø§ÿÿÿ©Oÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷!¤ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿC¨Ø™ÿúöÝÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ€‚ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿc¨Ø€•4"{ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÞ`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿƒ¨ØõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿO>ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ£¨Ø¨ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ·ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿèØ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿù%øÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿã¨ØÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ†Øÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý¨Økÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿã #Jd™¶ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ#¨ØîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿUDrª½Ë—§¼™”ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿB¨Ø—ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ½ŒÿÿÛoÎȽŸrÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿb¨Ø1ýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿû*1ÿÿÿò<]ÎÉý·š0Pÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚¨ØÃÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿŸÿÿÙ#9ÑÏÉý·®„".ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¢¨ØZÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿæ 7‡›œ£»Ã½FXL CA ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ嬯 åÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ\'/¿£Dˆ~zv1êÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿâ¨Ø‡ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÃP_8ˆ‚|v$ÈÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýªØ$ùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿü/-ˆˆ‚|vh¦ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ´Ø´ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ“p‚ˆ‚|vhP „ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¿ØJÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿêyaÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÉØÚÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿbWE?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÔØwÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈ“‡ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿߨóÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý43«´ÿçK ùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿêØ£ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ™ÿÿÿÿ¢ÙÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõØ:ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿíAÿÿÿv·ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÙÍÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿiލyí[+•ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÝfÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÎr.#Ó sÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿâëÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþ9‘ó †âœiQ2XQÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿç“ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ,6;fÿÿ]V‹ÞâÜ˹Rqke_ /ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿóüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿðbÿÿÿÿÿì£`†óîèâÜÖÉ1Zqke^ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿoˆÿÿÿÿÿÿëOEÚèâÜÖR awqke_SëÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÓìÿÿÿÿ¸’èâÜÖf"BPhkeF6&Éÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ?.ÿÿÿÿÿ-§è™~È¢&kD§ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¦€ö«zïÿ7šBIS…ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿó; ®AcÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿvAÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿØÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿEúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ­Ûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿö¹ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ|—ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÜuÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿLSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÍXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXWURPNLJHFDB@><:86420.+)'%#! 0ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûõïéãÝ×ÑËÅ¿¹´®¨¢œ–Š„~xrlf`ZUOIC=71+%  xxxxxxxxxxxx…ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûõïéãÝ×ÑËÅÀº´®¨¢œ–Š„~xrlfa[UOIC=71+% ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz.ico0000664000175000017500000003535614365252232014123 0ustar00jssjss h6  ¨ž00 ¨%F(  ÿÿÿÿÿÿ‚áƒô„õ±nmóÛÑHóÛÑHóÛÑHóÛÑHóÛÑ<óÛÑ/óÛÑ!óÛÑóÛÑÿÿÿÿÿÿ‚‚ÿ‚ÿ‚ÿ‚ÈèÕÃòÛÑNÿÿÿèÑÑ ô×Ò-ÿÿÿëÖÌÿÿÿÿÿÿÿÿÿÿÿÿ‚3‚ÿ„æ‚Ä‚ÿ‹iñÛÑCöÙÐîÝÌôÚÏ0ÿÿÿôÞÓÿÿÿÿÿÿÿÿÿÿÿÿ'•'U#“#ÿ*”(ÌŽ1ŒýŠê&”&ÿß¿ÿÿÿëØÎÿèÐ ôÝÒ-ÿÿÿÿÿÿÿÿÿÿÿÿ[¯[wV¬Vÿb¯_²ÿÿÿI¥I˜D£DÿG£E•ôÞÓ.ÿÿÿóÛÒ?ò××ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈ™‹Æ‹ÿ˜È“˜ÿ¿¿ÝÕÃMx½xît»tüo¸o.ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÄâÄ»¿à¿ÿÈÝ¿~ÿÿÿíÛÈ­Ö­k¨Ô¨ÿ£Ò£ÂôÞÓ.ïÏÏóÛÏ@ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøûøÝóùóÿðíädÿÿÿóÛÑ›ôÙÓÜîÜÑØëØÿÓéÓ[ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿzzÿ††ûÿ““ÿøÁ»JÿÿÿÿÿÿÿÿÿÿÏÏ?ÿÝÝÿÿèèæÿõõ ÿëØ ÿÿÿÿÿÿÿÿÿÿÿÿñ%%"ô&&ÿ÷&&üôÍÄ3ÿÿÿÿÿÿÿÿÿöÜÓÿSS¨ÿ``ÿÿkk‹ðáÒÿÿÿÿÿÿÿÿÿÿÿÿÐ DÓ!!ÿÖ!!àóÛÑ-ÿÿÿÿÕÕÿÿÿÿÿÿè$$ë$$õí%%úñ%%(ÿÿÿÿÿÿÿÿÿÿÿÿ®f²ÿ´ÀóÛÑ%ÿÿÿ÷ÞÑ=ÿÿÿÿÿÿããÆ É|Ì ÿÏ »ÿßßÿÿÿÿÿÿÿÿÿˆÿ“ óÛÑÿÿÿÿóÚÍ)ÿÿÿÿãã ¨«Ý®ÿ±Sÿÿÿÿÿÿÿÿÿlªnÿr€óÛÑÿÿÿÿÿÿíÛÈÿÿÿÿÿÿÿÿÿŠOŒÿá’ ÿÿÿÿÿÿJ ÌM ÿP `óÛÑóÛÑóÛÑ ÿÿÿÿÿÿÿÿÕÿÿÿÿÿÿk¹nÿqƒÿÿÿÿÿÿ(î,ÿ.@óÛÑóÛÑóÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿJ (L úP øR #ÿÿÿÇÿÃÿÃÿÉÿÈÿŒÿžšŸ?ŸŸŸŸÏÏç?ã?ó( @ ÿÿÿÿÿÿÿÿÿÿÿÿ‚»‚à‚àˆñ‹øŠñÂɧ¥óÛјóÛјóÛјóÛјóÛјóÛјóÛјóÛјóÛÑ”óÛцóÛÑwóÛÑjóÛÑ[óÛÑMóÛÑ?óÛÑ1óÛÑ#óÛÑóÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚õ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚±ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚IÿÿÿÿÌÌëØØ ÿ¿¿ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚:‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚Ú‚òÜÐQóÛÑòñÚÑ7ÿÿÿÿÿÿÿÿÿõÜÒ3òÛÑ¡ìÙÐÿÿÿÿÿÿëØÎôÚÒDÿèÑ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚\‚ÿ‚ÿ‚ÿˆä‚Ñ‚ÿ‚ÿ‚ÿ‚zôÙÔ/òÛÐŽñÕÕÿ¿¿ÿÿÿÿÿÿöÛÑ8ôÛÒžñÝÏ%ÿÿÿÿÿÿòÙÌôÚÎDÿÿ¿ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚~‚ÿ‚ÿ‚ÿ#΂>‚ÿ‚ÿ‚ÿ‚õ‚ÿÿÿóÜÑ‘óÛÒkÿÿÿÿÿÿÿÿÿÿªªÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿŽ ÿŒÿ‹ÿCœ;ºÿÿÿ ‡ § † ÿ…ÿ„ÿƒªÿÿÿÿæÌ ÿãÆ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿïßÏóÛÎ?èÑÑ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ3›3Â1š1ÿ.˜.ÿ,—,ÿk¬`¦ÿÿÿ%”%#“#ô!’!ÿ‘ÿÿŽCÿ¿¿óÛÎÿÿÿÿÿÿÿÿÿóÛÎóÚÐRÿÌÌõÖÌóÛÏkðÒÒÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿM¨MäK¦KÿI¥IÿF¤Fÿ’¼ƒ“ÿÿÿÿÿÿ=Ÿ=z:ž:ÿ88ÿ6œ6ÿ4›4ÖÚйôÛѲÿÿªÿÿÿÿÿÿóÜÑ,óÛÑÁõÝÒJÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿj¶jg´gþe³eÿc²cÿ`±`ÿ¹Ê¤ÿÿÿÿÿÿW¬WU«UÜRªRÿP©PÿN¨NÿL§LsÿÿÿÿÿÿÿÿÿÿÿÿÿÛÛßß¿ÿãã ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ„„'‚Á‚ÿÀÿ|¿|ÿz¾zÿßÖÃkÿÿÿèÑÑ ôÛЈt»qPm·mÿj¶jÿhµhÿe³eòc²cÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿžÏžI›Î›ÿ™Í™ÿ—Ì—ÿ”Ê”ñóÛÑ`ÿÿÿÿßßóÛÒkÿÕՇć·„Äÿ‚Á‚ÿÀÿ}¿}£ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¸Ü¸kµÛµÿ³Ú³ÿ±Ø±ÿ¯×¯ÒóÛÑ`ÿÿÿÿÿÿÿÿÿÿÿÿ Ð 'žÏžúœÎœÿšÍšÿ—Ì—ÿ•Ë•<ÿÿÿôÞÓ.ÿßÏÿÿÿðØÑ!õàÖÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒéÒÐèÐÿÎçÎÿËåËÿÉäɲóÛÑ`ÿÿÿÿÿÿ÷ÝÕöÜÓÿÿÿ¸Ü¸Š¶Û¶ÿ´Ú´ÿ²Ù²ÿ¯×¯Ð­Ö­òÛÐöÛÑ8ÿÿÿôÛÐròÙÐQÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿìõì¯êôêÿèóèÿåòåÿâñâ’óÛÑ`ÿÿÿÿÿÿôÛѲóÛÑÙÿÛÛÓéÓ ÐèÐæÎçÎÿËåËÿÉäÉÿÆãÆlÿÿÿÿÿÿÿÿÿÿÕÕÿÿÌÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿêêÑÿññÿÿ÷÷ÿÿýýÿýþýróÛÑ`ÿÿÿÿÌÌóÜÑXóÚÐ}îÝÌÿÿÿêõê]èôèÿåòåÿãñãÿáðáïßïßÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¦¦óÿ¬¬ÿÿ±±ÿÿ¹¹ÿÿ¾¾SóÛÑ`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿïïÿõõÆÿûûÿýþýÿûýûÿùüùœÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿZZÿbbÿÿhhÿÿmmÿÿssÿÿzz3óÛÑ`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ±±3ÿ··ýÿ¼¼ÿÿÄÄÿÿÊÊþÿÏÏ6ÿÿÿÿÿÿõÛÕ1¿¿¿ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿú''7ü''ÿþ''ÿÿ))ÿÿ//ÿÿ55óÛÑ`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿòÛÑNóÛÎÿssšÿyyÿÿ~~ÿÿ„„ÿÿ‹‹Ëÿ‘‘ÿÿÿóÚÒ>ÿßßÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿê$$Yë$$ÿí%%ÿî%%ÿð%%óÿÿÿóÛÑ`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿôÞÓÿÿÿÿ--ÿ55ïÿ::ÿÿ@@ÿÿFFÿÿMMeÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÙ""{Û""ÿÜ""ÿÝ""ÿß##ÔÿÿÿóÛÑ]ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿñ%%mó&&ÿô&&ÿõ&&ÿ÷&&ëù''ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈœÊÿËÿÍ ÿÎ ´ÿÿÿóÛÑUÿÿÿÿÿÿÿÿÿò×Éÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿà##â##Óã##ÿå##ÿæ$$ÿç$$–ÿÿÿÿÿÿÿ¿¿ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¸¾¹ÿºÿ¼ÿ¾”ÿÿÿóÛÑNÿÿÿÿÿÿõÜÑ{óÚÐgÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÑ @Ò!!ÿÔ!!ÿÖ!!ÿ×!!ýØ""1ÿèÑ òÙÌÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ§à¨ÿªÿ«ÿ­tÿÿÿóÛÑFÿÿÿÿÿÿÿæÌ ñÕÕÿÿÿÿÿÿÿÿÿÿÿÿñÜÍ$ÿÿÿÿÿÿªÃÿÅÿÆÿÈÅÉÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ•–ý—ÿ™ÿ›ÿœUÿÿÿóÛÑ?ÿÿÿÿÿÿÿÿÿÿÿÿÿ€€ÿÿÿÿÿÿÿÿÿóÚÓ)ÿÿÿÿÿÿ±³õ´ÿµÿ·ÿ¹^ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ„$…ÿ‡ÿˆÿŠÿ‹5ÿÿÿóÛÑ7ÿÿÿÿÿÿÿÿÿÿÿÿòÜÒeóÜÑ,ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¢}£ÿ¥ÿ¦ÿ¨è©ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿsFuÿvÿxÿyÿzÿÿÿóÛÑ0ÿÿÿÿÿÿÿÿÿÿÌÌôÞÓ.ëØØ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‘’Þ”ÿ–ÿ—ÿ˜ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿbhdÿeÿgÿhõÿÿÿÿÿÿóÛÑ)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚Pƒÿ…ÿ†ÿˆû‰,ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿR ŠS ÿU ÿV ÿX ÖÿÿÿÿÿÿóÛÑ!ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõàÖªªªÿÿÿÿÿÿÿÿÿÿÿÿs¹tÿuÿwÿy¿ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿA ¬C ÿD ÿE ÿG ¶ÿÿÿÿÿÿóÛÑÿÿÿóÛÑóÛÑóÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿb(cúeÿfÿhÿiXÿÿÿÿÿÿÿÿÿÿÿÿ0Î2ÿ3ÿ5ÿ6–ÿÿÿÿÿÿóÛÑÿÿÿóÛÑóÛÑóÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿS ŒT ÿV ÿW ÿX äZ ÿÿÿÿÿÿÿÿÿ è!ø"ø$ø&sÿÿÿÿÿÿóÛÑ ÿÿÿÿÿÿóÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿB C âE øF øH øI ‚ÿÿÿÿÿÿÿÿÿðÿðÿÿðÿÿð ÷ÿð ÷ÿð†ÿÿàƒÿÿàÃÿÿàá{ÿááÿÿáÐÿÿáðÿáøÿÁø/ÿÁÌ?ÿÃþÿÃþÿÃÿÿÃÿÿÃÿ‡ÿÃÿÃÿƒÿÁÿƒÿáÿ‡ÿàÿ‡ÿðÿ‡ÿø‡ÿø?‡ÿü?ÿüÿþÿþÿÿ(0` ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚“‚ЂЂЂÐ'!ø+’%ý)‘#ú/“)øàÔÀâóÛÑàóÛÑàóÛÑàóÛÑàóÛÑàóÛÑàóÛÑàóÛÑàóÛÑàóÛÑàóÛÑàóÛÑàóÛÑàóÛÑÖóÛÑÈóÛѺóÛѬóÛÑŸóÛÑ‘óÛуóÛÑuóÛÑgóÛÑYóÛÑLóÛÑ=óÛÑ/óÛÑ!óÛÑóÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚Ô‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚—ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚õ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ý‚2ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚Ç‚ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚:‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚aÿÿÿÿÿÿòÜÒPôÜÑ^ôÛÑpÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷ÝÕôÞÓöÜÓÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÌÌÿáÒÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚\‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚é‚ÿÿÿòÚÑuóÛÑÿóÛÑÏ÷ÞÎÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿòÛÒOôÜÑßóÛДÿÿÿÿÿÿÿÿÿÿÿÿóÛÎóÛÐVóÛÐVöÙÐÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚~‚ÿ‚ÿ‚ÿ‚ÿ‚ÿé‚ׂÿ‚ÿ‚ÿ‚ÿ‚ÿ‚‘ÿÿÿóÛÑjóÛÑÌóÚÐgèÑÑ ÿÿÿÿÿÿÿÿÿÿÿÿÿ¿¿ôÜÑuóÛÑÚóÛÒ“ñÕÆÿÿÿÿÿÿÿÿÿÿÿÿôÛÒ[ôÛÓ\ÿÌÌÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚ ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ8–0Ù‚F‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ü‚-ÿÿÿöÛÑÿÿÿóÜÐWôÜÑHÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿóÛÒ?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿæÌ ¿¿¿ÿÿªÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿƒÂƒÿ‚ÿ‚ÿ‚ÿ‚ÿQ FËÿÿÿ‚°‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÁÿÿÿÿÿÿðáÒóÛÐÛóÛѪÿÌÌÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿŒä‹ÿŠÿ‰ÿ‰ÿ ˆ ÿt­e½ÿÿÿ†"…ø„ÿƒÿƒÿ‚ÿ‚ÿ‚ZÿÿÿÿÿÿóÛÎóÜÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõÛÐ1ÿ¿¿ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ'•'&”&þ$“$ÿ#“#ÿ!’!ÿ‘ÿÿœ½ˆ¯ÿÿÿÿÿÿ„ÿŒÿ‹ÿŠÿŠÿ‰æ ˆ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÛÛÿÿÿÿÿÿóÜÐAóÛÑ€ôÛÓ\ÿßßÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ88(77ÿ5œ5ÿ4›4ÿ2š2ÿ1š1ÿ0™0ÿÃË©¡ÿÿÿÿÿÿ)–) (•(ã&•&ÿ$“$ÿ#“#ÿ!’!ÿ ‘ ÿ‘‹ÿÿÿÿßßôÙÔ/ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿïßÏöÜÔ;óÜÒ˜êÕÕ ÿÿÿõØÎôÛÓ]óÛÓ@ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿJ¦JJI¥IÿG¤GÿE¤EÿD£DÿB¢BÿA¢AþéØÉ“ÿÿÿÿÿÿÿÿÿ9ž9W88ÿ6œ6ÿ4›4ÿ2š2ÿ1š1ÿ0™0ú.˜.)óÚÓ)óÛÑÿôÜÑHÿÿÿÿÿÿÿÿÿÿÿÿÿÿ€òÛÒ£óÜÑÂòÛÑ…ÿæÌ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ[¯[lZ®ZÿY­YÿV¬VÿU«UÿT«TÿRªRçóÛÑÿÿÿÿÿÿÿÿÿÿÿÿI¥IÀG¥GÿF¤FÿD£DÿB¢BÿA¢Aÿ?¡?¼ñÕÕòÜÒPÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõÛÑcóÜÒfõÝÔ5ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿm·mŽk¶kÿj¶jÿhµhÿg´gÿe³eÿc²cÇóÛÑÿÿÿÿÿÿÿÿÿÿÿÿZ®Z.Y­YüW¬WÿV¬VÿT«TÿRªRÿQ©QÿO©OTÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ~¿~°|¿|ÿ{¾{ÿz½zÿx½xÿw¼wÿu»u§óÛÑÿÿÿÿÿÿÿÿÿôÜÑ_ôÙÔ/j¶j•hµhÿg´gÿe³eÿd³dÿb²bÿ`±`â_°_ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈÒŽÇŽÿŒÇŒÿ‹Æ‹ÿ‰Å‰ÿˆÄˆÿ‡Ä‡‡óÛÑÿÿÿÿÿÿóÜÑ,óÛÑïòÛÑz|¾|z½zìx½xÿw¼wÿu»uÿt»tÿrºrÿp¹p…ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¡Ñ¡ó Ð ÿžÏžÿœÎœÿ›Î›ÿ™Í™ÿ˜Ì˜góÛÑÿÿÿÿÿÿÿÿÿòÜÏ;ÿãÆ ÿÿÿŒÆŒh‰Å‰ÿˆÄˆÿ‡Ä‡ÿ…Ã…ÿ„„ÿ‚‚ø€Á€$ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ´Ú´²Ù²ÿ±Ø±ÿ¯Ø¯ÿ®×®ÿ¬Ö¬ÿªÕªÿ©Õ©GóÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿϛΛϙ͙ÿ˜Ì˜ÿ–Ë–ÿ•Ë•ÿ“Ê“ÿ’É’¶ÿÿÿÿÿÿÿÿÿãÆÆ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÅâÅ8ÄâÄÿÂáÂÿÁàÁÿ¿à¿ÿ¾ß¾ÿ¼Þ¼ÿºÝº'óÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ­Ö­<«Ö«ÿªÕªÿ¨Ô¨ÿ¦Ó¦ÿ¥Ò¥ÿ£Ò£ÿ¢Ñ¢NÿÿÿÿÿªóÛÑÒôÜÑ_ÿÿÿÿÿÿòÚÒ`óÛÒñÙÏ5ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ×ë×ZÕêÕÿÓéÓÿÒéÒÿÑèÑÿÏçÏÿÎçÎþËåËóÛÑÿÿÿÿÿÿÿÿÿõÛÐ1ïßÏóÛÒ?ÿÿÿÿÿÿ¼Þ¼¥»Ý»ÿºÝºÿ·Ü·ÿ¶Û¶ÿµÚµÿ³Ú³Þ²Ù²óÛÎ*óÜÒ™ðÚÎDÿÿÿÿÿÿôÜÑ^óÚЙôßÕ0ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿèôè|çóçÿåòåÿãñãÿâðâÿàðàÿßïßçÿÿÿóÛÑÿÿÿÿÿÿÿÿÿóÛÒkóÛÑûóÛÑ«ÿÿÿÿÿÿÎçÎÌæÌôËåËÿÉäÉÿÇãÇÿÆãÆÿÄâÄÿÃáÃÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿêÕ ÿÿÿæÌÌ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùüùžøûøÿ÷û÷ÿõúõÿóùóÿòøòÿð÷ðÇÿÿÿóÛÑÿÿÿÿÿÿíÛÈóÛÑÄóÛÑÿóÛÑäõÛÐ1ÿÿÿÿÿÿÝîÝyÜîÜÿÛíÛÿÙìÙÿØëØÿÖêÖÿÔêÔöÓéÓ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÞÞÀÿââÿÿææÿÿêêÿÿîîÿÿóóÿÿ÷÷§ÿÿÿóÛÑÿÿÿÿÿÿÿÿÿÿÿÿóÛÑ›êÕÕ ÿÿÿÿÿÿÿÿÿï÷ïíöíÜìõìÿêõêÿéôéÿèóèÿåòåÿäñä¯ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ±±âÿµµÿÿ¹¹ÿÿ¼¼ÿÿÀÀÿÿÄÄÿÿÈȇÿÿÿóÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿªÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿMýþýÿüýüÿúüúÿùüùÿ÷û÷ÿõúõÿôùôHÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ~~ÿ‚‚ýÿ††ÿÿ‹‹ÿÿÿÿ““ÿÿ——ÿÿ››gÿÿÿóÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÕÕ¶ÿÙÙÿÿÝÝÿÿààÿÿääÿÿèèÿÿììÚÿññÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿQQ&ÿUUÿÿYYÿÿ\\ÿÿbbÿÿffÿÿjjÿÿmmGÿÿÿóÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¦¦&ÿªªúÿ¯¯ÿÿ³³ÿÿ··ÿÿ»»ÿÿ¾¾ÿÿÂÂxÿÿÿÿÿÿÿÿÿëÖÌóÙÐWæÌÌ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþ''Hÿ((ÿÿ++ÿÿ//ÿÿ33ÿÿ88ÿÿ<<ÿÿ@@'ÿÿÿóÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿöÛÑïÚÏ0ÿÿÿÿ||Šÿ€€ÿÿ††ÿÿŠŠÿÿÿÿ‘‘ÿÿ••ôÿ™™ÿÿÿÿÿÿöÙÐóÜÐlÿáÒÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿò&&jó&&ÿô&&ÿõ&&ÿö&&ÿ÷&&ÿø&&þù''ÿÿÿóÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿòÝÐ<òÚЈÿÿÿÿOO ÿSSæÿWWÿÿZZÿÿ``ÿÿddÿÿhhÿÿkk©ÿÿÿÿÿÿÿÿÿªªªÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿç$$Œè$$ÿé$$ÿê$$ÿë$$ÿì%%ÿí%%çÿÿÿÿÿÿóÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþ''^ÿ))ÿÿ--ÿÿ11ÿÿ77ÿÿ::ÿÿ>>ÿÿBBBÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÜ""®Ý""ÿÞ""ÿß##ÿà##ÿá##ÿâ##ÇÿÿÿÿÿÿóÛÑŒÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿó&&ô&&Æõ&&ÿö&&ÿ÷&&ÿø&&ÿù''ÿú''Õû''ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÑ ÐÒ ÿÓ!!ÿÔ!!ÿÕ!!ÿÖ!!ÿ×!!§ÿÿÿÿÿÿóÛÑ…ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿé$$3ê$$ýë$$ÿì%%ÿí%%ÿí%%ÿï%%ÿð%%rÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÆòÇÿÈÿÉÿÊÿÊÿÌ ‡ÿÿÿÿÿÿóÛÑ}ÿÿÿÿÿÿÿÿÿÿÿÿðØÎ4ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿß##›à##ÿá##ÿâ##ÿâ##ÿã##ÿå##òæ$$ÿÿÿÿÿÿêÕÕ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¹ºÿ¼ÿ½ÿ¾ÿ¿ÿ¿ÿÀgÿÿÿÿÿÿóÛÑvÿÿÿÿÿÿÿÿÿôÜÒ`óÜѽõÜÒPÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÓ!!Õ!!ïÖ!!ÿÖ!!ÿ×!!ÿØ""ÿÙ""ÿÛ""£ÿÿÿÿÿÿðÙÑCÛÛ¶ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ®6¯ÿ°ÿ²ÿ³ÿ³ÿ´ÿµGÿÿÿÿÿÿóÛÑoÿÿÿÿÿÿÿÿÿòÙÐ<óÛÒóÑÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÉoÊÿËÿÌ ÿÍ ÿÎ ÿÏ ÿÐ <ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ£X¤ÿ¥ÿ¦ÿ§ÿ¨ÿ©ÿª'ÿÿÿÿÿÿóÛÑgÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿöÞÐ6ôÞÓÿÿÿÿÿÿ¾¿ÔÀÿÁÿÂÿÃÿÄÿÅÐÆÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ˜z™ÿšÿ›ÿœÿÿžþŸÿÿÿÿÿÿóÛÑ`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿñÛÐGöÙÐÿÿÿÿÿÿÿÿÿ´Bµÿ¶ÿ·ÿ¸ÿ¹ÿºÿ»lÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿœŽÿÿÿ‘ÿ’ÿ“çÿÿÿÿÿÿÿÿÿóÛÑXÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿñÙÏ5ñÙÐ6ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿª¬«ÿ¬ÿ­ÿ®ÿ¯ÿ°ï±ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚¾ƒÿ„ÿ…ÿ†ÿ‡ÿˆÇÿÿÿÿÿÿÿÿÿóÛÑQÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÕÕóÛÑjôÛÒqïßÏÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿŸ ö¡ÿ¢ÿ¢ÿ¤ÿ¥ÿ¦ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿwàxÿyÿyÿ{ÿ|ÿ}§ÿÿÿÿÿÿÿÿÿóÛÑIÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÕÕ öÞÐ6óÜÔAÿÛÛÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ•€–ÿ–ÿ—ÿ˜ÿšÿ›þœ7ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿklümÿnÿnÿoÿqÿr‡ÿÿÿÿÿÿÿÿÿóÛÑBÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÕÕÕÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿŠ ‹à‹ÿŒÿÿŽÿÿË‘ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ_$aÿbÿbÿcÿdÿeÿfgÿÿÿÿÿÿÿÿÿóÛÑ;ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿS€ÿÿ‚ÿƒÿ„ÿ…ÿ†fÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿT FU ÿV ÿW ÿX ÿYÿZÿ[GÿÿÿÿÿÿÿÿÿóÛÑ3ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿéÓÈïÏÏÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿu½vÿwÿxÿyÿzÿ{ì|ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿI hJ ÿK ÿL ÿM ÿN ÿO ÿP 'ÿÿÿÿÿÿÿÿÿóÛÑ,ÿÿÿÿÿÿÿÿÿÿÿÿÿÿªÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿò×ÉÿëØ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿj+kûlÿmÿnÿoÿpÿq—ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ> Š? ÿ@ ÿA ÿB ÿC ÿD þE ÿÿÿÿÿÿÿÿÿóÛÑ$ÿÿÿÿÿÿããÆ ñÖÏ%ëØÎÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ`‘aÿbÿcÿdÿeÿfýg2ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ3¬4ÿ5ÿ6ÿ7ÿ8ÿ9çÿÿÿÿÿÿÿÿÿÿÿÿóÛÑÿÿÿÿÿÿÿææ òÝÐ&õâØÿªªÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿU V êV ÿW ÿYÿZÿ[ÿ\Æ\ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ(Î(ÿ*ÿ+ÿ,ÿ-ÿ.ÇÿÿÿÿÿÿÿÿÿÿÿÿóÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿ¿¿ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿK dK ÿL ÿM ÿO ÿP ÿQ ÿQ `ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿèøø ø!ø"ø"¢ÿÿÿÿÿÿÿÿÿÿÿÿóÛÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ? @ ÈA øB øC øD øE øF áG ÿÿÿÿÿÿÿÿÿÿÿÿüÿüÿÿÿÿüÿÿÿÿüÿÿÿüÿÿÿü9üÿÿüüÿÿøÿÿÿøÿÿø ÿÿÿø ÿ÷ÿøÿÿø~?ÿøÿÿÿðÿÿÿð€ÿÿÿðÀÿÿð/àÿÿð/à?ÿÿð/ð;ßÿð/ðßÿð/8ÿÿà.<ÿÿà/|ÿÿà/þÿÿàoþÿÿàoÿÿÿàoÿÿÿàoý€ÿÿÀoÿÀÿÿÀoÿÀÿÀoÿàÿÀÿà?ÿÀÿðÿÀÿøÿÀÿÿøÿÀÿÿüÿ€ÿÿüÿ€ÿÿþÿ€ÿÿþÿ€ÿÿÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÀÿÿÿÀÿÿÿà?ÿÿÿð?ÿÿÿð././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz.png0000664000175000017500000000063514365252232014125 0ustar00jssjss‰PNG  IHDR‘h6 pHYs  šœtIMEÕ  ®Ò²tEXtCommentCreated with The GIMPïd%nIDAT(Ïcüÿÿ?)€‰‘‘‘4 $ÛÀÀÀÐÔÔa¸çoc·™ƒ¬‚Ón®söâ‡ÿ0P<ñ8›õl87¯ç(2÷ÿÿÿèNêɳ@æ.ÜvËH]Ÿ“ ¾q?C˼sßþ9>7‹†ºº:„ã­G¦¯½¦)Ë‹7”Õ~½¾uãÙL7”_ZÊ $ÄÀÍÍÀƆÍI÷ï3Ü¿¯ënö…‘­EÔE‘ás诛 !! “'3üúQÉøÿÿFFFD|74tî}U÷߈aš5crg2^'ik3œ9£ëbÌÀÀ %Ê©ÿÿÿÿêÔB=â :q3HJ­ÿÿÿg$5yÉiÉ CK¢*IEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz.svg0000664000175000017500000006514614365252232014150 0ustar00jssjss image/svg+xml ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz_128.png0000664000175000017500000002002714365252232014514 0ustar00jssjss‰PNG  IHDR€€Ã>aËsBIT|dˆ pHYs  ;dtEXtSoftwarewww.inkscape.org›î<”IDATxœí}ytÕ•÷ïVWkë–¬–lË»ÛRË‹°$Œ'd†2NÈ$ Î’™L Áì›EÁ1›YŒIæËC‚3$|a‚!q€ baKvËjµ„¼c[Xî–¥.uÕýþèEÕݵw·$¿sút½W˽¯Þ¯î»o©[ärMßC„ éÿzyYùÿ32Ò{)l =©àj x?°sÞ‡ eeãð6€ ­{M”žÎ>&µ/ÐòÁÁ-Gìȉē굄Y&B“¡ ¸ˆÎûPH¼ @}"…ô½šopo|Ý3…Ñ2ŽL c·U“•¶.+íU^-ÀŸ:–׸&K¢ùº¦S$zˆÖŸøìcˆ ´ªP:&‘јõOÕÛ†ÍÀ˜À+–|b'€I­ùº¦ÔÔ<òU@<7ž²ëH§Ý÷:te[ÔLAmzRzÊéôO3óüeç»÷‡«‰i!XnÚ—#ù¸®]L›öxI|¶Èq<å@-Q2© 8vìþèäÉ·0ËίA ¿EÙ¦sFho?ìáRÏ߃¸’˜¼‘"@ƒánŽü~S âŒéBñf~sGÚ”·<øíãù×/O h–Å']oŸß†lÇ ©©f°½'üÄðe€Á)`b4I—Š4²cXùÓ§ÿxNb¥œ9Ò©íwúIÔÌBÚªšÑiáÌ)áø¿…)a;ÓÂ97MóÊ;Á VÜ7Xq³<üëÅuU{s¹¶]‰‰¥éS»Ù÷Jo…Ob¿Bä¾êÀoŽÙR·´ 0Z!¬Ÿ—Õ ð[”ÀÅäfÀ †€YOrMÎ넉fÌøùç1±DIË‘¶ìüxÿþ•Û ¢¤2ÖÕ¹CÚ ŒÖŽ.Iü¦ÔÔl*³ ;'`4 ÀžWˆÞ!4(F«s¿®5ÌœùK‘¸ÉÊ“n°žDb?‘xËX鄆ô+ë€ÄXÀ_-ÈÎÝ®7N«+ÙË ð—}%¦'æ Dâ¿Xlc´4+/a,nß»÷‚cQÒ™èN*•þo¾­Ñ ˜ /M@CmI«ZÌÆ9Žæò©mÏÐŒæù¥ûíœ4kÖo&â]‰K¨/§ñ ¨ÓY÷o;@OÚ‘/¤UÀ¡C«ÞŸ6í‰A€<€é0eÆ¥lûã>°uëV±fÞ²)Ã#Ê|Q¤Zÿ6zDâÝU&Rê=ÐËÓdc«úú¾0.¯¼eU@bV°1‘Bú|ÛB3à·({\ pöÙgË;‚'Îq±°HaæÁÁÕ1ðO–Ì×Ìžý»¥€û2ÀhäÔ)~Ö×÷¹ÿuX„œ¡A1Aë#Yìö[=îCÀ;ÌÔÈÒKg,ð™Vþœ9¯Rb¼?áD=(Ùùªÿkœ«Ÿ;4* }RȸÈL§þýdO€Á-2ÿ‡"òd°ÛÒ2‘øM€>£ÊÉø7ÎSYÐ;{{—ç}!ŠèX゘¿GH~ ² ½ý°G,õÖ7Ô{vØ=W K^[+mæÎ}³pßO©ïIzÚ)vxÌŽìB@ÏPçdüëç©nÂÔÙ³_,Ý»÷KFoòZ ¶à‰o¸qwLŽ ežÕ1(ïÈ ì‚H¼ ÄÂqó^’]ÕÓ³$V%m@§ 4Ì• †sÉ?Œ»‚V-£JQ”ï ŠÌDÎË;üþmóñ:û‘<²¶ÑÓÓøÇBèhYo؉½D"khÎX˜0{WÐr/@$áUnpb€ùü¶®Èåo½µ¯ÔVis‘{#‘»Èd<ß`äÔ "w„H¼IG„«µµÕÝÑqÄ;Veʪ€½{W Ï™óÊ€fŽæÚm ~€e@!:`7ƒr¼ÜSãëðš•käŠÚÚ]_"ÏͱÖKÒ˜ý[×Ý]¯9àÔ ¯pU̯V¨è `l^‚Õ©wÀÌôB6½]¿‰lK>Àö`¤Áþ,!4ŒRf<Ô\_þ¼Ù¹ùBmíîb@ܨݵ³3HFÖ’±«H𹈽²"-êèèÞÛÐÐPˆWáÒ I€ÄXÀgÍ{Úù `© Hxé_€Ýá3Ð á ³óò "ñ€ê2r3þµ¾¬{rM08[³«yd3¸jAä¿”²Ò³šë+^ÆdJ؈pêä$n„ßD¶ínàéuåjë ¯_R_ž×7xŒôÎ$o³éä¥ý'”绺¦¿¢'gåJÈ@Í €W0†¡ot* ³'`«›„ßD¶£q€æúòíž“Ä <ê2:©7Ð ŽiÜ# àØÉIn×ÔÖv”†B zcæÝ@=Ô×ú,‘xqßúà’¥µ¾ÌcÎ?Ÿ´*[‹jd»åG?˜ÍSä ³^#U›–=_õ±„øXÀ¸Ìß'!‹øÜfvsѫۃ‘™ ?«ªp+€YzO¼EŒ‚õ`N›7ov­\¹RÎK!B—ž¡… ¥ƒfÄs¬x¾£ûTN’ãL7¹~=‚Ø=b ^³¤.½ò¯º u>nôM~ò—于exø¶ÛŒËÚÛ‹¿í!LZÐ|þù~‘çâÚ‚I7L 4#™R{¾6ÚHt·Œht˜¢Ùå*-(kø¹² Š}“¯&€NÙXg¦Ë yðì¶ /sCˆA` þÔŒÛw àõ !AÀYÚ½ M€ÓVöêíÛ°çù|ø²•2™ঋ/6_Ä1RæyÝ Ÿâ@Rûžðe¢è~¥¡¶¤/ç‚:€!|>„ŒÚ=‹m¤Ý0òc†§ž‚ÛçÃF«VÍÀûÿãŠxÖŠÌâ¡“ %£´ 1òî¡Ò’£ù/5X&€^Û§—7‘,€|>\+X`Õ²éXæÄ ¹‰\Ï‚x+rióüò7ó].;È;4L¤¿€ú;Æ«¯bZUþpDjuþã Ö?–Õ(}+±¹£-Y˜¿9ƒ%81‘ª¼i=†âU«Æ?|›>î#B9`îø<‡Ü¡# rsÀk5²zÁ`F€C‚€!"”æÐFRÂØSÀrØB0ˆOû|øg“±|+XSR‚¬A¥S †X³üôÓè!BƒÔù:Ö B€#G ø|xTâãWV ÀœX‘Žø6€·ü³ ;¡i¦Úû|© àÀIšP~€Ï‡KŸPW*«"L$Óœ:¤0À±ÑÊfV|U™»ì”ün¡¦¨¬u`â$úó¥ðξŸÃ( d©„»3+5IN¾wÂݧJ«Ž{²²¤r{>Ê3Þ°drp’’yþ|(»=™â‚ø[Ëá`ôL’¥;<@Z¥f<ÝfÄ8àöœ 3A`J€êj„çH›—Á Ñj0ª½+raS½÷¿ìœÛ?Ô€«Ò*Xýt'I J§5 œÊ½uvÅìþ|”g"À’Ì»JºON|ÛŸã pÚÕYÂUñnïì<úÊ‚“-ÇÑ—diƒEJÅhý³&1çmcðÓ¹d¢Á”Þr¥GËIR7FÇIʼ‘Ó£r´Ø[äµ5ÐŒ|€;Ì¥…~;=ê*9±³;r{H «k=;õ®Ó7Ð÷ >G§R A1˜Á«M^4.Áœ S$œŠ 0ÍŠ“¤Óž€9l}ð°9àÝÜŒœ `‘Ö~fL'УÊöKü`š>zúã§M5MoÛÑÿT€¥NlTކL,9I©¼Œë‡Mঀ÷Šö`¾›¹“€UÏã&º¯aæ”bø´g–itû8€µ6u?%`‰’,…Šdî$éµ§~‡:2[Xƒ’0bø9•퇶Ïp³N¥A]&-gÎ>sÌ^HKX·Öœ$£ëwª$3šU‹Þ0ܲk!]³,ÉÒCÌ\ªS©V-X3ÿÐ@=€n¬Ÿ`02% 4”ÉÞw,@€Ð˜'(¢wÉ|OÁ¿bëÀÜIÒ¼‰ª›ìw¬%Q3ƒ·+-ýû+Z}3#— î`Ò'À}o|žÁfÕ‚¿’IŒUçÕ§¹n¯­+ü%"úVSÀ»ROõïqweäÊaW„Ú»ÐÅ„IEär³‹óþP'°F€˜²í='óF‡[ýN•dðÚÔÌY=xŸl=ˆÿ#ó´Ž­ç5À¦ÌJ5rütš¶g.˜AÚ|}{0üÎe@!¢Ùã©à¥K1Òä6-a‚ ` &ç,7&N’•}~§JjM›Æ?ñ®=•£«ÀhHébß_ƒÃnμ¶@#0ý+n$Ž¥Êmô"X’’ 7Õyß·~ ÁÊA’,di8‹"*Ç’,A’¥´íd:™—ñ?ý½(*t~Óù›©RLº3©GTŽBŠê6ÎÒ_3“¾wÑ¢‹f^q]Õ^~™H¦¹ƒ‘,U FœŒIP²gßÐL½ãÇ–,À²™Ëøõ¾×{ÁXh·=U¥‰ÁsóZ‚ H²t73OŠ«—aþ­÷ÿ;˜ù=D™ALô[0">¿ é níí-©ÂäÅ`$v0sµÂ˜:2¬,`+<}!`y2[ŠIÝ ^Øëÿg˜^? H€gv>ó 0.Õ”mâ¯d4_W_±ô ]Ï^aêaRÎ?½Îû'3ʆ«=TDwínõvÄãïìWñd§åÌ'¬@uí¶§©¼ü3üdÇOÀ£ÌLšŽŸuÇuóªO®ú½‘¬æ€G3Ô›–-,?àXcmvžÕk– rí÷ÿ“à\º‚fúÅ¢ÿàÓš²a­ÿÏàA þ†ÐGö-€Iÿß„þ<êžÂ¦w6U0ó½Fí»…™×ßrÖ-cú¹¹ñ†= à¬ÿ¯>ÎoWÁöàÐ,òõ¦:ϺºÅ¢ÿÎàÔ\ER'µ©<ýþs|Òè£ëˆE{Gý51üvd–—p_{÷ Óžæ€çwÉýëß\¿Œkôü#%ƒ×®?g}ÁC³N4X&ÀwÏøîàc~ì0€G3‚ñã¦ßÿ¿÷Ýü™›MotGǯ\\r1]@ó $¤M K1i#ƒÝ†²u,–*ý†s7¼dõ^|˜`kMsbZ¸ÆJ{ªN«*C003"z'‘"Ÿ] @àÿ^\Wšj£×¾¶öü=`b}ŒûÿÃÌ|½ûða‚-H1)`¹éÓndzãÍ€)ß𻸭+r‚—aà‚Ö=áÉKç—½ñ•‹üF[®û´kúÌ÷=ñÅ'zì܇œX¶ûÿ©mØôˆpÀDÉ{½Rr²©ˆG*ÊÑ›ÔêTªv•MŒßkGŸìY€DW°Øÿ×&†ßžŠ®§›¥ûâÛeÛàò/ŸàVCÙÉŒ°oœõÿó³0À%Ï_ò·þ)S¶Íþ¿Æ5¹èña= ‹îep1ý´ë™^u:\´ù"ƒ7i9~™–ɤÿÿàK—¼dwª#ìê¬Y<Ï3®‡4‚¥õI<õ¥§8*G{%YB4ÕœOÏ\#E‘\G ɤ˜4cå¯V:zK$*Gÿ$KMRL‚K›»ÏõËÃVæÿ÷I²´>óÚ»‚uZ2­¢½;2ugè䊷ƒýÐÑ¢ö=áïÈ1¾+—ë¶ßmN4 ,>íZ]Eãël἟ŸWÍàu&ÍKº>ÚÝÔÞø×7`g×à¹LÂn†ò5‚ëÓ¾fW¯$~ýŒ÷èW¿¹±îïµuE¶‘•M….ïxÂ6’Ž ÚñS§ úÿêãæ:û}û,ËÖ&Æïß¾ìíÍ©cH9à-‰8mÁ\Ìõw@iÑÿƒ‚oÑK`ŒDEÁ Љ!% û@½@ÔFÿ?—I¡3zæ—ë]SÓñË>.¤Gñd¸~NPnŠÌ]m¡ðŠæZg›XA*¬ªÌÊ´“ˆ<º£+öƒÓë+Çås·Fpfà¨ÿ¯>ÎoSæ&fNù+†²“yÙC›:®ìHÿP4ñ5ªSöW,®äÈdï -'æ›@Èzw“/ÚÙ=ÑX_¬þ6sÖ2²Í›áJ® 8óT•jðÄ¥¥3*ÇoU^Ó“M—8ËV7/»ÿñ—LÓ@ŠüD‘L7ˆÂM ž¼8à¬ò[CLr£è2&n c™U€ð°×åyÝ_‡¬§öîÈE‚"DÜJÙ]®~:©¸>Ùp†K¼p¢‡8&€Yÿ߈‰&à€™¬E?Xäeð†,+b¿ÿsßµ}Y¯’7ÕW$_*¹¥½3¼ÀÖP!}ü;Éôö=Ç›EAÜðůè¨L|.»#gpÌ#B,Ʊ-NõpÛxëÒ·"KžZrÀ3Ó«Ng<™~X @TŽÞ`†3©ÛÿWãÍC72|‡š”ç- õ’ù•m;ö„€IFDZ"D`ˆD¤ 7 –cäŽB\%¬À­ö=U9Æ CfŽ(’àô_˜µqVÀ ™•ªköã™™DëQ<ó‰Óç—ÿ¦·7-¦Av† ø gä(¹»zÃc5xäˆ GðSކÄó„¾pwYÝ$Í×þ“26‚Q¤¾¦ƒþÿ#k#ãö¦ßŸÝîñA#0}ž™%e=¬(Ë[[¾²téô‚u$8éÿ§¶ß wyôPyå 1­‚í÷ÿ0¸ÅIù Äka 5ôÁœ"Å}ËT¤ü¨9­|LtqÖĤnÀQÿ?E޾H¨LëÚe÷”1xcë“XË-|ܨ(¢“ÕK•e½6VXZëëkÛép‘пxN¹£ðw¹ 7 ÛýÿÔö¾H¯GçÚרשT«xÀOÍ)Š´£ëÄ›¥Šôº¨cùDCCE?P1¢íÍ&•£û%Y’2gÿF”‘Ô/¦Ä ³ …•ÔOM†#C´è~¯Ã²$ñ4·ð6½ue­ ìgæ/&²¦ $¼u? Æ?óQ‚#È·ËŠÂJof¥ÚÁÑ¡÷Ó@ëè3¾éèb£èp«ÙA ¤­"æ5Mò™¨6…„#$2?DRiL‰Å¿D¸Žær½nç6é’ù¿øVý !§×´;‚‘ÓÌš˜7(¬ÐþÁÞ¤ògär=Û<©µ#Dq[pð†dº9P~SSÀûõ¦@ù= ,"tã šaW0Z~±«g°Æé5 ÌklÄŽŽœ›DCäì>'ÀÞpÈMë–ød­Ð± p·°fÏ“¹Ÿ—¶·~²©©f±KôɇkQ ]Ð$EÆz¨æ€™/lÛ>$¹F¶sÉ”*RæÇŠ\o¥¦_#sŠq%À¾Á^7€»ä,ágÜÂÉoñ ½;²˜e¥Œ]ävNCb(—y/ðŸ9ÊÂ_{†çÊrìS Ó'AÂ?ÆùÇg·ÿLà~€÷E$^½¼¡ÂVPipX€à/ᢠYbÒÈÀñ~ 4W•u1®x}ÿË^Wæx™kÔ̼ŒáÇ4:4 ðÃ;ƒá¿ã5Ä×Ô¯™YÅÖ­«fÉW¸Ä#¤Ä{fäZ»¼¡ÌVåoÝ ±r¦Rr¥Åå*- ÷!jbíî²ù‰ë¨À‰üªã×qKv<Ÿ¶àà½^£u€£þNc Üñ{;º¿ ü8%Čۛ뽶>ÝÚz°L¬ðþ“@˜ ñ0rÄC@)*ön]8³0E;ÜÂaãöÁÃvÐŒÜðÜí0,¿EjÌ¥òàôzÏVðrf¾ ØoΊ*ʦ‘@ïÉ„N…y(™Ï;È1×Þh8\ì϶ç¹~ñ(„ÜÛï\°Š[X3˜Ó®žÁFÕ™ù$Ðê¿çP>„0ˆð’ÂØOàÌÂYž²sÆúI!$šÔ¶Ýáùé P„žæúòWó¡§réyðrÀ³ÜÂÔÛ©È|!€!¿ø6Ç€eYsÊaÈò%uÞ+šÞ»ÊpøoI‘ŸE÷µyaù\‡JÉóNÞô4@>,Àx `µÑ ñ–ÒXôÁäø~ë_Oþ´HTW!oh x¯€ÊÏ Q9š(Sö¿˜¸VÁáØ ZG—O¨¬á¾ßɉ(jhÀG.ŒNÅ& €å8}™ø¸òÓq*àjnaÝÀÌÃr%À^DÉ.žçÓeÓväD€ÄØû{yÒÅ Cn0=êcØB®»fànná±"ÛG§ ºl99œ*¸Ž[ø#·Zg,ë@P`ÌôÌ}÷¾¼ËÛŒ|½rl‚_S 'þóñ+ĵ¸)à5èÉ £H(Æ“çüö ÏJ†CÄ š´ð±y|¾ÎŒmæƒ]°¹®~riMù7æÿ›éâMÅ|Ìöj~ìT!·Y¼\Ï7Åÿæpr`Mé¹GIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz_16.png0000664000175000017500000000151014365252232014424 0ustar00jssjss‰PNG  IHDRóÿasBIT|dˆ pHYs„„—|¦tEXtSoftwarewww.inkscape.org›î<ÅIDAT8m‘Mh\U†Ÿsî9·3;ÕÔ2щÂÜË !’IŠ‹YT(ÝXhÁŸEqaqS¥q£EìB»©ˆàƽ 5KwB E0NM'Hb’+¦ÓĶ&¤3cæçÜ{‹Î ÍàÃ÷Áy߇ïýŽpÝñ]P#BÈS¿-ÿò+ÐT©è†ŽçBÞ•!_ª×ç6¤ÖAèº>ZàPO«ú¦ßÁí÷Zû_kh­ýÙz}n@i„BÈ—A€T©è=Úóë»GÊÅ£õ èär³¯»®ÿ*¨M!ä}¨r]?!œÁBÀâîP¯ÕH—Ë?X­ýkB8€óa­öÚþ µ‚B9,…íWJ¾w à.5´ö/ áàü|ãÆôOOî¥ÁœP­Ô|_ðÎ)}Lëà²Ò€ú P 3ðû€çõؘ˜xœ{y£õÂÔÔèl6ËáL†//~üèþðϨsçŽlzQ6‹j5;£O>Ftpõ*oe2lg³|~wÿ©a?Xki›öF£Ó°µ½w­µbi­ñ]uµ™Zß]_Zy¸b«÷«o[k±ÖÊ^\°°½šÄÄéüØÑ²mÑýè^|ó‚Ù2%“˜[ÓÞ›ÕÛ·÷žÆSÓÓEïæ [ ¡I )™Í³YV*·w²òwåJ”D±‰ÍÌùÓçïôôÌ@e»šØv¼üÌ£3ßÏœ5‰8ß^;1@u½yRGvy|<»ó¿DI„‡òù¯òÇMbÞ‹’èaîpîÓDf ŠÛkÉȱv5üwr2ÈTVwVC-ݼIºßòÙôØg×OWŽÛnke1l7™ÎM²µü'XÙ…&é>œæ¯ŸYüDfêÅô=ÝìFNL Ði·d€°Ö>n®ˆ¿¡ž‘BŠ÷'/raâÒÚоš@¨÷k©èuÿ¹I!E&eIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz_32.png0000664000175000017500000000343114365252232014426 0ustar00jssjss‰PNG  IHDR szzôsBIT|dˆ pHYs ŒP„tEXtSoftwarewww.inkscape.org›î<–IDATX…¥—ml[ÕÇÿçßk×¾NîmÝÔTq§o*Wí<•UÚXТjã˦Y5ñ­|êÚi£Ú€RÑŠ½tk5`Ù†XµUC€”SLhBê$`[…Wj¼–$®“b7iÓ´öµSÛ÷œ³¾×ܸv´#]Å>ç9ÿç÷¼Üã¢(Ñ+Ñ€ W«cÇ •±BfL+9ŸaÆ4|ž }­ i€®#ÄÕ'Ç,ë­']¥z ]ƒ~†@)•±|ºRkÖŒiµ•0f< Ž.2M=æµñ1fdºÃ1!4êYxõØ­üàÍ“º¾w3¥ú÷ Op?šŸÿ­µ€R#ë1°ÀfL³\nå…Kåué3oÎ&‰EŒÏDñ”öôÜÜO_iÞïcLϺΠ¡HO› ´[z‚ù-=‰Esk×ý¥únOô6@´ÚO3²Œ`Ì¥3‚‘Èãk½pG2 %=Y2ÇÆ®…Ûuu=`L?áÕ¤TÿÍììÁt+ûV%@¢®6Äãà]wW| ¥ cÆ£éõD?Ãí€)cÆ%J A©—š1#ê¬7—@¼öbø¤Ù¯w'ÒÖ‡ÝÝ£3~\×ÐÝŒœž~°ÐÀwåʾÚúõ¯|R¯}£Ü>hd ™GpÕ|!pøpÇu¯@•ŠéD AOôïäÏíœu ÔíÝ­ÛmPÊåÖšhøBGz{SƒŒé OícúþÑï &Ç‹‘¶¨“ëY€Þëy\€FÌþàÏÏ|\Ô[‰Äb—cÆsnÕ£'ÏOLÜq9}!\ÁÆ%ŒIÏiå=Œ¼=Àwnϵ¡ÔØGÝæîè5Bèβly€}@©‘õD Ñ¬ÝÆôd©k[ohÖ4±F×;Ž(  ªõÇïÇc££¸ÞnïmŸF”¨*´;±æ/µß(¸¸ûlÆúçîÝÚÓª Ýðûñªâ$|4aÝV´3Ñ(n- +Ù@ .àŠ.EnÆÂ£££ˆ a¯¢Î~©(øÞöíÀ-NM¶£ÑÁ¶:DJ xùeUš+¦(x`Í+lÆ´?yíá¼r7n€¨*ÞSUì¢L@H!ÅI•©/Þ204„¬ßÓ­#ˆèI_¬×1™„¢èÖýR`Àfµgã}ÆÍšzõ¡Š»øwßRü$ª/™¸ö44—­Ha.ؼÆÁ%ÆuˆÇQKeÈw ‘›:…q,=›sÉ!¤u.ù¡]Ý»®ºzçÏC]Ø –¼?4rV.ëDâŠF0þÓ0¤l¿RÆúQyûâôQ!ÅûsBŠßËøFÌØªÕÔÒ~߸˜ÄÆðë+(æ²\:éBŠhŸokÃpk_à2œ:wj“â çõ=û÷}qOO–NÙdÕe Ü~] (m»i€zT=}F}mj ¢míeUí…¼•ÿ5—\¢áüÅ#ƒGÞ€m½¡”«gnêœ\ÎùmnDŽpGA»4 3Lµ Ì=zŸmW¾î‚rÁ‹BŠƒ+q´<€•›â‚K!qA.iã‘/# Óì*íyuÏa!ŽYR<õÆž7f¼‚™ üŸú¦HÌ%ÝÝXX€º†¿1\ÉY¹\®˜ƒûLÆ¿b¹bî‘éât¿gýÂ-'þ’Ê”þ:â9²ËÄXmGÞž¯–ïý\pœd…ëÝWëb`l lÞØ-¤x¬ÑtõúPç¦yÈÚ›ðÜŠ¹Ä •x¦6ü{òBùN¦ˆo³þÒ]wuί€Kþ7ÅÊÇgþ—BЧëGøüdÁ[\[tÍÞÓ®x >œª.HÛ—–òVè\>y+Ÿõ~ÿÄ7!GÉ=öx¦Ë¥lýL•´awqd,‘¨gd{T¿à@ûÿ¨hÓ÷E7+óë<×dótú;Öês™â _E<5÷©ö¼»Ê,|ióŽÒ f î\r¼9;Q:Ýìʪ××0=S~e3ÑG@¶ x/„Èš„`Ä®•dEõX=³ø†ÝØãþ9JîoeèŒûä!ù·dЦ] äó‘…¥n;+‹ˆ€` ÛQyH~óÿqÖj´ªËû S5 …ùýBòÊðW_µRë÷ËèÙ n(: MÏM3¦Uà{Œ ¬y”rIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz_48.png0000664000175000017500000000532614365252232014442 0ustar00jssjss‰PNG  IHDR00Wù‡sBIT|dˆ pHYsŒŒçg™tEXtSoftwarewww.inkscape.org›î< SIDAThÅ™l[ÕÇ¿çúÅó§Ð&YHššÆiŠ›ít l•*†ø¥²¨ÛÓ6AË€1ÖÁ²Ñ•±+Œ_kÅ&~i‘ «Ø†¦A³‰µãGp“”Ð¦Ž“–¶†´³ÓØŽ7ïžýa?÷ùù9±CÑŽôûåÞ{¾Ÿsî=÷½kR”E˜ˆJ_x)™þ ÖïºZ=Î |J¦ª«@»ZqZGê"¢jŽF_‹û(B¨ÇTÂØ5Zø˜gúnëé­^é3@ä¼ Àª´5øI$òrÄÜG¡„pB5s© RÝ>JõÁ Êú‘†š†ÉªînØ>©x—ë†ùB¨èþMšö¡>oÕO!R†¨¯jU]S‹ý=ahŸÉÀ¨v„S.ž<5‰uëÊ´O „º J‹©#ÚogK!R¦é€ ÅÚg2ÐQWp°°­œAØÛû# *–'›"'ýºu֭ˉÔ[,‚€ž…y/_ß„Û`^XÌ}žŽ+ñ#š†…óó¶B} ÅÂÿºw¦ñÓúbÄmj_Š"mUsÕÇ3ý¿²ò¾ë…P/·ˆ<ˆèž±±†f rH#"[6„@:FËÉ€Ñí^¯79S£UU=ì rn`ZƒÞè·³¡„ÃOžZ°`Ó‘Ô|'†òUÀà œ§q¯2¯^õûÑëñ  ½Bõéu†ÓQˆÚ Þ,gHÐ,Ö€ÑòM¡$iÚù4/ªŒû€üó]·ššç ¡Þm¨óÐGDÏ=ú•·fÄp™Å4XfÀëErï|‡Záž?^ˆc!Ô­9,*Ï8@› #@¤ò”°êsÎy®ôرoè{AÞE¼b©ëó="¢½O®,Ù×¶ÔqT¿¿hÑ_.B½>Oåë:|øóÇ‹0–Rˆy/°Ê€žÿœ†™¹o$¶ÙdæQ£¾~—’.›°¸úˆh[¡â-‘†Ðµ‘Û•¾¡H§ôžÄS­­Î1+mç:Þ6~B½ åyvÿ ##mEíê&ãÓ^‘ÈmhŸ•aw’*|vÌælÉ’}•B8ï3–kÃÛ=o@ÿÐÉ+ŽŠão®õx¦ 8|xÍ ·{O òìˆD"/@KƒúœïÀÉ}+›œïÎæ„p>ÐüìÊCD„ˆîΈšN¾µÖ;»ø @J¨¨Í"­F€œE¼²©¢ ñcíDêMÙQÒY¿oh¨"¨·õz+£…Œ™žFmsÓ0ãNœÏšš¢$„ú@¢ò ôø\Ƶ€…·UûŒ®LDêz!¨CQEìvÀfK}Vl|ýõ¹¿Í ïË–%K÷ï·'òŒ‘c}H'4|±­±|Ó5× ¼¹™~¡()Ñv{F8l6¼ôä“xCï×ÝÝm[·n]ñUˆœ"2F%%€¢€æ÷‚¤2*1õGhiA—¢ Fn?¦(ø^z(^»ô³k¯8Œß·Ô#\4€×KCdÌ‘rÐêqG^|K[[q{:Æñ (¸ÿ’KpDï3­Å¤‚ÒãÉñàêk uu ¥£Š©(f‡ŠwÁ#¬­ ¿R”˜"EÁÁ’I)ˆè£dR+)F|@8‘Ê€I¼žwµ=ÿ@Ïì}FH–Oç¼!ÛxáÆ@êiÏññUuq½oKcùó˜Ä–ço\ÙxåØ ý/D™Ùi1Ý0ìŽ\ŸWþ^Gâáxø[k+˜¦,NI–·ûŧ€9÷­®(ÇÃ#’e‹1iQnc!êŽ6 ¦WÕDäá®]m—,ïÏêsº’m}tÍ£þb…Í $d‹añé¢Ü2§l­ Î}ýñÛmí %B[$Ëâ?dæŸ}Zâ-2ë¦nHA¨ÏßøÊ­Ìüm‹ÝòÎ7ì(ª,~b€P"0휺07€œÃ¦p<ü¸„´YÔý×}þÎ7†#×´4”ïsÊÖ™HÚ ßò%e9Ç2sÇ ›Yöœ®Nh“6ãÃÖEÏ^ô%f¾TnØ?NI–e‰¨fÆ+ýñµ­ jÖãÃf@\m5ƒkR[ÜÄûí5(:[–kÀ<}Ò¢h42äºUï6o3ÿRBBJi®<ºíУ£(%c+–/UûÌ~®w š·]B[oK&~Þê)Ÿô˜<§ÄÆWüa³ÇÙ3'€p"<ÊÌ,Y’yNLp©vñð=²Î4(YþÜn$€\ñ>‚ü·ßw=^çE6IFƒñè(JSý‹ØËþDåÖÊcÌ\kÞ †Ç÷»ÀñsÇÉò.sÕIÛ]ÜÅðù£•6µ6Xz€ÇƒÌñI[ƒsWŸrüÄ‘²æ8´|IÇÃF Àh‡"Ã.HL'õ Å¿¸‹ÿ‡Ož%`Û †¯·7¶·ãT!‚Úx i™2auSc-`c“Am¡5®¶ê`ôûãu-õ üDÏX‰ðG/Í'ª7ˆ²žž¥³ÿúi `uóãøÑùËÓç)îâ÷ûýÑ[mGßÁè7){Õ\}zz ôǾÏÀoüÑ'ö NœmÈ‹]»°î‚//éÍ«onÁ؇U€é™:ec~ @‚YÐN„ïhå Í W¯Æ4±Q‰¨ÃëÊú ÌçVJð) œTÊãU³ä;¨²˜Á6qŸ8È ¯ƒqöÊsKY5¶‰Ÿ$ís¶œçÛ•çñÞ^¼b¯„³ãb‹çWÚBŸÌmniÿpwû |fÌh Å~[™Á$€ ¸‹óþýiÛL‹d¤€þOÿ?Å3Öî²7“s]MË¡”H–š]Øå¶Ëþ|e¿?::¿“& WÄôÝxÿ¤ù~«Ç™)ËÿƒNêUˆÃšIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/icons/veusz_64.png0000664000175000017500000000734214365252232014440 0ustar00jssjss‰PNG  IHDR@@ªiqÞsBIT|dˆ pHYsÄ,OætEXtSoftwarewww.inkscape.org›î<_IDATxœÕ[kp×uþÎÅ’Ø%Ò¢d=ø!¤TŠ¥A8:tÝ4ã$“¨êÄM)n&²5IýH+n¬Úžø%[Vë4uó’cËéT:i:q&–j§±Óˆ®J´ø)‹¢LQ¢L߿谅H"¢- ‚fö¨ŒˆêœµÏ" ·å33ç¸]÷ÅÅ»Vn÷M‚H{ ™.³î@b€v…Ã/Xu@B Y8mVæAÌÌœWœUîÆ”ƒS'‡c޶ •p…"HÝ P m§•ý@ÿ45õ£ÿΧG!Ò °dPWäðª…¼ÓøCÓ!%•) •÷¯jÛpeœ¯®þ󫈴s7Óe"úz!] ‘æóÅF<6òYœj½zfìé™Z±mRÅ838§¢€<$؆ªB¨ßèê‘»wrò@Á44¤€í ‚LX!+¶!ít{{õåb@³4³ZÆç*÷Š  ¦f÷f"íK vêNg‘qÀwŠ1@!ÒÎHä°p"Àn(¬²va6»ª«  R¤äIYh×Å‹÷J8üB²ºúó£Dh´OòØÈ/•ø|ˆ•ãÅÜ»jÕ}Ÿ&ÒþÐfœÒ?‡&&öüW±í B i R  D„P!„ÚPS³[XÈ/™€b±zõƒšê£B,Ø–m« !Ô°êÝ¥è@¤†ŒNg”!ݘ "µŒH­µwZœËA×àTS)FYH»‡Hk4;®Û)„"í¾ññ¯M:”ŒòMSŒšäóFÀÉáØ™Jm(ƒckp(úê 'Þz¯¯&\аvíÓ"õ‹2Ýhï)€–ª[Ò)`縩úµI>/2 —{‹L¥\Ñ1‰É ¦TA¤>Z ÷w}f®TÝ™È ³l¼)à÷¯‰uDâ ;½s£×/ÕÀººçoBý¤}ýÔ±RuY)°¨b¨à x¹ìÒóÏl08^ TXÞÓ ”· óùúú#JzÚ3Ú‘3ïGÜYÈ;¿ã¢Z$Ïè !4…|A:=žY  —édhúãr(zsWÊr.’º‹Hm]˜‘4óà "ußÙ³;W¢ßóP …ê0ö¼) <òEÍyÀ2J d €¤ñÂúõ/¯&Òþ&Ïó êhÿR 0 …t,8mn”êë_££Ÿ0–«9Ð;[+œš“×t4»VÈ€6Ÿë˜Õy!Ô‡0¿P“[¦g:èöáá@ÒJ¾XÌ7B¨¡ô\š]Ò \Í\ 䜕U©"AŸ NÖ/ƨ Þ¸†HÛ‘[œ-ÌùBhG†‡¿ÌˆÐ1Cg–c å4€)‘] äŽj#@²iõÈ­òÂëí¥ôBȾާi_Ñe‚CÑÍ+™›às¿ˆ×L)`žÍ ÃÀXgçÐÑì:ÒÕuùWåW9ßßÞ¤½^Š1é¶ÕÏôÞ<‹è¡ÁÁº·t“ëÍžž©sXÄâË<öÅÐÂ1yLò–ƒ` °b À”jŒÏ7V%„úí<Õ( Ñ#&ÑT àY0FÀ ¡7\Äcñ²> ¡~ 5zû6éʒ *;Ì µ&ššB£­·¨q¥ ظqz‘z‡M±£·ÿ³Ó§•_®6ÓÈ)„h}v£YÓŽ'ŸüR@¤>‰ô 4@@Q¾Ì ÝËÕžŽ,2ÅP§õ3Ðú§©¯¯bÑ‹}}ÝI‡zãÅÑãG:;;çàúëqSCƒøcEˆ²×æ…=öù¯G†Ç,×ÞTÑŒü¥TR¯LVýgEäíÈV$ôü–™¿ý+K¢ñh(Oþë‘á±’õ§_NàÑÿxÍóÅ”)$KÉà]G¶¹â[jóÁ’€ýÙaç‹;c ®Ì3g{ì”Þü“›k™ù^4›4zæ¥[^:##PÓ %ÖøŸ¾éÚ©óV5̬“HUû›\'—ìy¶«º™™ Ý¶pÉC@$y˜™]Vd¢hR²ÜÓ34`Níè5Àõ´­‘eØRS½;ÅHø €wŸSþƒ™-«Ák¿wí˜ù»ÞÏèùFð¶à¥ž¡i@Ÿ£¶+tù¹€wÅ”•NWpeÆçOô‡Ïoi©úLÏ ËK@<Ê“ÿú ˜5z·}§M0óSƇ(‹üC²ü.Lóì€*Ê6rJTØ9@”1!Ï’·Cà‹Mî ÐÓÙ(A$Ä KêêhÑJ^¬-öEÌ Î" ÜÊà­FÒLÀÌüå‰;'$dvŒªççôõÄ@ì->×ýBÊ•‚áRQ(8]ªóù 0E€)ÿ!!Õ‰™óe@zÉjå£+W0óƔɑgùÃÙ=³%¿1Ö±¥¹ò„~ÜÛ‹r¡@ÀA„9ý¢V È ×:òG€}þƒ™q&2èZÒ÷Ç#÷3x•9e ˜pñDw(ÒÂ`Þâ­(ÅhhmEp¿ÚÝ)—å³ïÙä¾Tª ?ÃÌÌ &󓛎3áA'Ð>jðWÚú&ïåùðíŒýž ÐÈÉáØÎ¶ •ÁÅ8°Ô7CVûñ=ñxR&Çæä$K«ŹØ}ÀŽ<íü]Ö™ê0à\>ç{{'\yô.…Þ»x>ö–“öÑŸè, çvÞË)èélb[;ZªøýÓ§#+ó ¦œÚ㽃Ñ'[}®Sv÷ô Ly%—ÇËImæØX °nº€=ó(D@ÀuvG"ƒ€G èø1ïåWz¦¼LʺŽÁÓ'£ç]p½¶É&w»£› x ÀóƒácÉðÀî@ wW)Š‹æRO2E5mݳVúì`›ä}ýæä 7€†<·DÜíÍÕ!N·×L@‡¾<7± ïŸëX¾ °ÁáPÿ`å|0ˆJ9‡ÍDH9 ÉòéÍ|ÊB1°ÜÏ{ù¼þƒÀ ü†€k„ƒvmò¹òܤŒ@ðÃHñ¨LIË}¶~?b@åó'†"ï¯HqK‰×»’¼ àI㉤HÞð®˜:ÕëpÌÉ‚;»ý¾Š‹mìßžu¿~ß}¥Õ@Ìö¥4í£5Þ.UiÄ{ùW‹”}×w à½<,êÅÃ?ÿp(<@©»/bþz¶üŸ ˜]^!mÅ*ôU·~ï_>úÛ•ÁÁhÞù½HH¤ÿ‹( ŸB¿óÞã÷¹²r¾~‹¡‚âÚµ×g½úr•¹ñàûž¹ÀíE»hµøÄlÎ{=kðý_]p¬näxÍIEND®B`‚././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677319120.0 veusz-3.6.2/install_data.py0000664000175000017500000001543414376355720014154 0ustar00jssjss""" Code taken from distutils.command.install_data and distutils.util This was removed in setuptools, so we keep a copy here. Original licence: ----- 1. This LICENSE AGREEMENT is between the Python Software Foundation ("PSF"), and the Individual or Organization ("Licensee") accessing and otherwise using Python 3.11.2 software in source or binary form and its associated documentation. 2. Subject to the terms and conditions of this License Agreement, PSF hereby grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, analyze, test, perform and/or display publicly, prepare derivative works, distribute, and otherwise use Python 3.11.2 alone or in any derivative version, provided, however, that PSF's License Agreement and PSF's notice of copyright, i.e., "Copyright © 2001-2023 Python Software Foundation; All Rights Reserved" are retained in Python 3.11.2 alone or in any derivative version prepared by Licensee. 3. In the event Licensee prepares a derivative work that is based on or incorporates Python 3.11.2 or any part thereof, and wants to make the derivative work available to others as provided herein, then Licensee hereby agrees to include in any such work a brief summary of the changes made to Python 3.11.2. 4. PSF is making Python 3.11.2 available to Licensee on an "AS IS" basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 3.11.2 WILL NOT INFRINGE ANY THIRD PARTY RIGHTS. 5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON 3.11.2 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 3.11.2, OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. 6. This License Agreement will automatically terminate upon a material breach of its terms and conditions. 7. Nothing in this License Agreement shall be deemed to create any relationship of agency, partnership, or joint venture between PSF and Licensee. This License Agreement does not grant permission to use PSF trademarks or trade name in a trademark sense to endorse or promote products or services of Licensee, or any third party. 8. By copying, installing or otherwise using Python 3.11.2, Licensee agrees to be bound by the terms and conditions of this License Agreement. ---- """ import os from setuptools import Command def change_root (new_root, pathname): """Return 'pathname' with 'new_root' prepended. If 'pathname' is relative, this is equivalent to "os.path.join(new_root,pathname)". Otherwise, it requires making 'pathname' relative and then joining the two, which is tricky on DOS/Windows and Mac OS. """ if os.name == 'posix': if not os.path.isabs(pathname): return os.path.join(new_root, pathname) else: return os.path.join(new_root, pathname[1:]) elif os.name == 'nt': (drive, path) = os.path.splitdrive(pathname) if path[0] == '\\': path = path[1:] return os.path.join(new_root, path) else: raise RuntimeError("nothing known about platform '%s'" % os.name) def convert_path (pathname): """Return 'pathname' as a name that will work on the native filesystem, i.e. split it on '/' and put it back together again using the current directory separator. Needed because filenames in the setup script are always supplied in Unix style, and have to be converted to the local convention before we can actually use them in the filesystem. Raises ValueError on non-Unix-ish systems if 'pathname' either starts or ends with a slash. """ if os.sep == '/': return pathname if not pathname: return pathname if pathname[0] == '/': raise ValueError("path '%s' cannot be absolute" % pathname) if pathname[-1] == '/': raise ValueError("path '%s' cannot end with '/'" % pathname) paths = pathname.split('/') while '.' in paths: paths.remove('.') if not paths: return os.curdir return os.path.join(*paths) # contributed by Bastian Kleineidam class install_data(Command): description = "install data files" user_options = [ ('install-dir=', 'd', "base directory for installing data files " "(default: installation base dir)"), ('root=', None, "install everything relative to this alternate root directory"), ('force', 'f', "force installation (overwrite existing files)"), ] boolean_options = ['force'] def initialize_options(self): self.install_dir = None self.outfiles = [] self.root = None self.force = 0 self.data_files = self.distribution.data_files self.warn_dir = 1 def finalize_options(self): self.set_undefined_options('install', ('install_data', 'install_dir'), ('root', 'root'), ('force', 'force'), ) def run(self): self.mkpath(self.install_dir) for f in self.data_files: if isinstance(f, str): # it's a simple file, so copy it f = convert_path(f) if self.warn_dir: self.warn("setup script did not provide a directory for " "'%s' -- installing right in '%s'" % (f, self.install_dir)) (out, _) = self.copy_file(f, self.install_dir) self.outfiles.append(out) else: # it's a tuple with path to install to and a list of files dir = convert_path(f[0]) if not os.path.isabs(dir): dir = os.path.join(self.install_dir, dir) elif self.root: dir = change_root(self.root, dir) self.mkpath(dir) if f[1] == []: # If there are no files listed, the user must be # trying to create an empty directory, so add the # directory to the list of output files. self.outfiles.append(dir) else: # Copy files, adding them to the list of output files. for data in f[1]: data = convert_path(data) (out, _) = self.copy_file(data, dir) self.outfiles.append(out) def get_inputs(self): return self.data_files or [] def get_outputs(self): return self.outfiles ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1677318450.0 veusz-3.6.2/pyqt_setuptools.py0000664000175000017500000002305414376354462015012 0ustar00jssjss# Subclasses setuptools.command.build_ext, # replacing it with a SIP version that compiles .sip -> .cpp # before calling the original build_ext command. # Originally written by Giovanni Bajo # Based on Pyrex.Distutils, written by Graham Fawcett and Darrel Gallion. import os import shutil import subprocess import tomli from sysconfig import get_path from setuptools.command.build_ext import build_ext ################################################################## def find_on_path(names, mainname): """From a list of names of executables, find the 1st one on a path. mainname is the generic name to report """ path = os.getenv('PATH', os.path.defpath) pathparts = path.split(os.path.pathsep) for cmd in names: resolved = shutil.which(cmd) if resolved: return resolved raise RuntimeError('Could not find %s executable' % mainname) def read_command_output(cmd): """Get text from a run command.""" p = subprocess.Popen( cmd, stdout=subprocess.PIPE, universal_newlines=True) stdout, stderr = p.communicate() if p.returncode != 0: raise RuntimeError('Command %s returned error' % str(cmd)) return stdout.strip() class sip_build_ext(build_ext): description = ('Compile SIP descriptions, then build C/C++ extensions ' '(compile/link to build directory)') user_options = build_ext.user_options + [ ('qmake-exe=', None, 'override qmake executable'), ('qt-include-dir=', None, 'override Qt include directory'), ('qt-library-dir=', None, 'override Qt library directory'), ('qt-libinfix=', None, 'override Qt infix setting'), ] def initialize_options(self): build_ext.initialize_options(self) self.qmake_exe = None self.qt_include_dir = None self.qt_library_dir = None self.qt_libinfix = None def _get_qmake(self, build_cmd): """Get qmake executable.""" return ( build_cmd.qmake_exe or os.environ.get('QMAKE_EXE') or find_on_path( ('qmake-qt5', 'qmake5', 'qmake', 'qmake5.exe', 'qmake.exe'), 'qmake') ) def _get_qt_inc_dir(self, build_cmd): """Get Qt include directory.""" return ( build_cmd.qt_include_dir or os.environ.get('QT_INCLUDE_DIR') or read_command_output( [self._get_qmake(build_cmd), '-query', 'QT_INSTALL_HEADERS']) ) def _get_qt_library_dir(self, build_cmd): """Get Qt library directory.""" return ( build_cmd.qt_library_dir or os.environ.get('QT_LIBRARY_DIR') or read_command_output( [self._get_qmake(build_cmd), '-query', 'QT_INSTALL_LIBS']) ) def _get_qt_libinfix(self, build_cmd): """Get QT_LIBINFIX setting. This is not much fun, as we have to try to find qconfig.pri, and parse it. """ infix = build_cmd.qt_libinfix if infix is not None: return infix if 'QT_LIBINFIX' in os.environ: return os.environ['QT_LIBINFIX'] # use this to find location of qconfig file archdir = read_command_output( [self._get_qmake(build_cmd), '-query', 'QT_INSTALL_ARCHDATA']) qconfig = os.path.join(archdir, 'mkspecs', 'qconfig.pri') libinfix = '' for line in open(qconfig): p = [x.strip() for x in line.split('=')] if p[0] == 'QT_LIBINFIX': libinfix = p[1] return libinfix def _is_qt_framework(self, build_cmd): """Is the Qt a framework?""" return os.path.exists( os.path.join( self._get_qt_library_dir(build_cmd), 'QtCore.framework')) def _get_cpp_includes(self, build_cmd): """Get list of include directories to add.""" inc_dir = self._get_qt_inc_dir(build_cmd) incdirs = [inc_dir] for mod in ('QtCore', 'QtGui', 'QtWidgets', 'QtXml'): if self._is_qt_framework(build_cmd): incdirs.append( os.path.join( self._get_qt_library_dir(build_cmd), mod+'.framework', 'Headers') ) else: incdirs.append(os.path.join(inc_dir, mod)) return incdirs def swig_sources(self, sources, extension=None): """Compile SIP files and setup Qt compile options.""" if not self.extensions: return build_cmd = self.get_finalized_command('build_ext') # add directory of input files as include path indirs = list(set([os.path.dirname(x) for x in sources])) # Add the SIP and Qt include directories to the include path extension.include_dirs += indirs libinfix = self._get_qt_libinfix(build_cmd) # link against libraries if extension.language == 'c++': extension.include_dirs += self._get_cpp_includes(build_cmd) lib_dir = self._get_qt_library_dir(build_cmd) if self._is_qt_framework(build_cmd): # Mac OS framework extension.extra_link_args = [ '-F', os.path.join(lib_dir), '-framework', 'QtGui'+libinfix, '-framework', 'QtCore'+libinfix, '-framework', 'QtXml'+libinfix, '-framework', 'QtWidgets'+libinfix, '-Wl,-rpath,@executable_path/Frameworks', '-Wl,-rpath,' + lib_dir, ] extension.extra_compile_args = [ '-F', lib_dir, ] else: extension.libraries = [ 'Qt5Gui'+libinfix, 'Qt5Core'+libinfix, 'Qt5Xml'+libinfix, 'Qt5Widgets'+libinfix, ] extension.library_dirs = [lib_dir] # may cause problems with compilers which don't allow this if self.compiler.compiler_type == 'unix': extension.extra_compile_args.append('-std=c++11') depends = extension.depends # Filter dependencies list: we are interested only in .sip files, # since the main .sip files can only depend on additional .sip # files. For instance, if a .h changes, there is no need to # run sip again. depends = [f for f in depends if os.path.splitext(f)[1] == '.sip'] # Create the temporary directory if it does not exist already if not os.path.isdir(self.build_temp): os.makedirs(self.build_temp) # Collect the names of the source (.sip) files sip_sources = [] sip_sources = [source for source in sources if source.endswith('.sip')] other_sources = [ source for source in sources if not source.endswith('.sip')] generated_sources = [] for sip in sip_sources: sip_basename = os.path.basename(sip)[:-4] sip_builddir = os.path.join(self.build_temp, 'sip-' + sip_basename) if not os.path.exists(sip_builddir) or self.force: os.makedirs(sip_builddir, exist_ok=True) self._sip_compile(sip, sip_builddir) # files get put in sip_builddir + modulename modulename = os.path.splitext(os.path.basename(sip))[0] dirname = os.path.join(sip_builddir, 'output', modulename) source_files = [ os.path.join(dirname, fn) for fn in sorted(os.listdir(dirname)) if fn.endswith(".cpp") or fn.endswith(".c") ] generated_sources.extend(source_files) return generated_sources + other_sources def _sip_compile(self, source, sip_builddir): """Compile sip file to sources.""" pyqt5_include_dir = os.path.join( get_path('platlib'), 'PyQt5', 'bindings') pyqt5_toml = os.path.join(pyqt5_include_dir, 'QtCore', 'QtCore.toml') with open(pyqt5_toml, 'rb') as fin: pyqt5_cfg = tomli.load(fin) abi_version = pyqt5_cfg.get('sip-abi-version') modulename = os.path.splitext(os.path.basename(source))[0] srcdir = os.path.abspath(os.path.dirname(source)) # location of sip output files output_dir = os.path.abspath(os.path.join(sip_builddir, 'output')) os.makedirs(output_dir) def toml_esc(s): s = s.replace("\\", "\\\\").replace('"', r'\"') return '"'+s+'"' toml_text=f''' [build-system] requires=["sip >= 5.5.0, <7"] build-backend="sipbuild.api" [tool.sip.metadata] name="{modulename}" [tool.sip.project] sip-include-dirs=[{toml_esc(pyqt5_include_dir)}] abi-version="{abi_version}" build-dir={toml_esc(output_dir)} sip-module="PyQt5.sip" sip-files-dir={toml_esc(srcdir)} [tool.sip.bindings.{modulename}] pep484-pyi=false protected-is-public=false ''' pyproject_fname = os.path.join(sip_builddir, 'pyproject.toml') with open(pyproject_fname, 'w') as fout: fout.write(toml_text) # generate the source files for the bindings build_cmd = shutil.which('sip-build') if not build_cmd: raise RuntimeError('Could not find sip-build command on PATH') subprocess.check_call([build_cmd, '--no-compile'], cwd=sip_builddir) # put sip header in correct location shutil.copyfile( os.path.join(output_dir, 'sip.h'), os.path.join(output_dir, modulename, 'sip.h') ) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/run_veusz_inplace0000775000175000017500000000242414365252232014607 0ustar00jssjss#!/usr/bin/env python3 # Run veusz here without installation, to make development easier # automatically sets the resource directory to be this directory # Copyright (C) 2013 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## import os.path import sys try: import veusz except ImportError: thisdir = os.path.abspath( os.path.dirname(__file__) ) sys.path = [thisdir] + sys.path import veusz import veusz.veusz_main veusz.veusz_main.run() ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.1805212 veusz-3.6.2/scripts/0000775000175000017500000000000014376700261012615 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/scripts/veusz0000664000175000017500000000213614332253347013716 0ustar00jssjss#!/usr/bin/env python3 # Run main veusz python script # # Copyright (C) 2008 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## import sys if sys.version_info[0] < 3: raise RuntimeError('Veusz only supports Python 3') import veusz.veusz_main veusz.veusz_main.run() ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.2565212 veusz-3.6.2/setup.cfg0000664000175000017500000000333514376700261012753 0ustar00jssjss[metadata] name = veusz author = Jeremy Sanders author_email = jeremy@jeremysanders.net description = A scientific plotting package long_description = Veusz is a 2D and 3D scientific plotting package, designed to create publication-ready PDF and SVG output. It features GUI, command-line, and scripting interfaces. Graphs are constructed from parts, allowing complex layouts to be designed. Veusz supports plotting functions, data with errors, keys, labels, stacked plots, multiple plots, and fitting data. url = https://veusz.github.io/ version = file: VERSION classifiers = Programming Language :: Python Programming Language :: Python :: 3 Programming Language :: Python :: 3.3 Programming Language :: Python :: 3.4 Programming Language :: Python :: 3.5 Programming Language :: Python :: 3.6 Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 Programming Language :: Python :: 3.10 Programming Language :: Python :: 3.11 Development Status :: 5 - Production/Stable Environment :: X11 Applications :: Qt Intended Audience :: Science/Research License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+) Topic :: Scientific/Engineering :: Visualization license = GPLv2+ [options] include_package_data = True python_requires > = 3.3 packages = veusz veusz.dataimport veusz.datasets veusz.dialogs veusz.document veusz.helpers veusz.plugins veusz.qtwidgets veusz.setting veusz.utils veusz.widgets veusz.windows install_requires = numpy PyQt5 [options.extras_require] fits = astropy; sampy emf = pyemf3 fitting = iminuit hdf5 = h5py [options.entry_points] gui_scripts = veusz = veusz.veusz_main:run [egg_info] tag_build = tag_date = 0 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1676314613.0 veusz-3.6.2/setup.py0000664000175000017500000001321214372503765012645 0ustar00jssjss#!/usr/bin/env python3 # Copyright (C) 2008 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """ Veusz setuputils script see the file INSTALL.md for details on how to install Veusz """ import glob import os.path import numpy from setuptools import setup, Extension from setuptools.command.install import install as orig_install # code taken from distutils for installing data that was removed in # setuptools from install_data import install_data # setuptools extension for building SIP/PyQt modules from pyqt_setuptools import sip_build_ext class install(orig_install): user_options = orig_install.user_options + [ # tell veusz where to install its data files ( 'veusz-resource-dir=', None, 'override veusz resource directory location' ), ( 'disable-install-examples', None, 'do not install examples files' ), ] boolean_options = orig_install.boolean_options + [ 'disable-install-examples', ] def initialize_options(self): orig_install.initialize_options(self) self.veusz_resource_dir = None self.disable_install_examples = False # Pete Shinner's distutils data file fix... from distutils-sig # data installer with improved intelligence over distutils # data files are copied into the project directory instead # of willy-nilly class smart_install_data(install_data): def run(self): install_cmd = self.get_finalized_command('install') if install_cmd.veusz_resource_dir: # override location with veusz-resource-dir option self.install_dir = install_cmd.veusz_resource_dir else: # change self.install_dir to the library dir + veusz by default self.install_dir = os.path.join(install_cmd.install_lib, 'veusz') # disable examples install if requested if install_cmd.disable_install_examples: self.data_files = [ f for f in self.data_files if f[0][-8:] != 'examples' ] return install_data.run(self) def findData(dirname, extns): """Return tuple for directory name and list of file extensions for data.""" files = [] for extn in extns: files += glob.glob(os.path.join(dirname, '*.'+extn)) files.sort() return (dirname, files) setup( data_files = [ ('', ['VERSION', 'AUTHORS', 'ChangeLog', 'COPYING']), findData('ui', ('ui',)), findData('icons', ('png', 'svg')), findData('examples', ('vsz', 'py', 'csv', 'dat')), ], ext_modules = [ # threed support Extension( 'veusz.helpers.threed', [ 'src/threed/camera.cpp', 'src/threed/mmaths.cpp', 'src/threed/objects.cpp', 'src/threed/scene.cpp', 'src/threed/fragment.cpp', 'src/threed/numpy_helpers.cpp', 'src/threed/clipcontainer.cpp', 'src/threed/bsp.cpp', 'src/threed/twod.cpp', 'src/threed/threed.sip' ], language="c++", include_dirs=[ 'src/threed', numpy.get_include() ], ), # mathml widget Extension( 'veusz.helpers.qtmml', [ 'src/qtmml/qtmmlwidget.cpp', 'src/qtmml/qtmml.sip' ], language="c++", include_dirs=['src/qtmml'], ), # device to record paint commands Extension( 'veusz.helpers.recordpaint', [ 'src/recordpaint/recordpaintdevice.cpp', 'src/recordpaint/recordpaintengine.cpp', 'src/recordpaint/recordpaint.sip' ], language="c++", include_dirs=['src/recordpaint'], ), # contour plotting library Extension( 'veusz.helpers._nc_cntr', [ 'src/nc_cntr/_nc_cntr.c' ], include_dirs=[numpy.get_include()] ), # qt helper module Extension( 'veusz.helpers.qtloops', [ 'src/qtloops/qtloops.cpp', 'src/qtloops/qtloops_helpers.cpp', 'src/qtloops/polygonclip.cpp', 'src/qtloops/polylineclip.cpp', 'src/qtloops/beziers.cpp', 'src/qtloops/beziers_qtwrap.cpp', 'src/qtloops/numpyfuncs.cpp', 'src/qtloops/qtloops.sip' ], language="c++", include_dirs=[ 'src/qtloops', numpy.get_include() ], ), ], # new command options cmdclass = { 'build_ext': sip_build_ext, 'install_data': smart_install_data, 'install': install }, ) ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.1325212 veusz-3.6.2/src/0000775000175000017500000000000014376700261011715 5ustar00jssjss././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.1845212 veusz-3.6.2/src/nc_cntr/0000775000175000017500000000000014376700261013343 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/nc_cntr/LICENSE_MATPLOTLIB0000664000175000017500000000454414126044351016100 0ustar00jssjssLICENSE AGREEMENT FOR MATPLOTLIB 0.84 -------------------------------------- 1. This LICENSE AGREEMENT is between John D. Hunter ("JDH"), and the Individual or Organization ("Licensee") accessing and otherwise using matplotlib software in source or binary form and its associated documentation. 2. Subject to the terms and conditions of this License Agreement, JDH hereby grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, analyze, test, perform and/or display publicly, prepare derivative works, distribute, and otherwise use matplotlib 0.84 alone or in any derivative version, provided, however, that JDH's License Agreement and JDH's notice of copyright, i.e., "Copyright (c) 2002-2005 John D. Hunter; All Rights Reserved" are retained in matplotlib 0.84 alone or in any derivative version prepared by Licensee. 3. In the event Licensee prepares a derivative work that is based on or incorporates matplotlib 0.84 or any part thereof, and wants to make the derivative work available to others as provided herein, then Licensee hereby agrees to include in any such work a brief summary of the changes made to matplotlib 0.84. 4. JDH is making matplotlib 0.84 available to Licensee on an "AS IS" basis. JDH MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, JDH MAKES NO AND DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF MATPLOTLIB 0.84 WILL NOT INFRINGE ANY THIRD PARTY RIGHTS. 5. JDH SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF MATPLOTLIB 0.84 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING MATPLOTLIB 0.84, OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. 6. This License Agreement will automatically terminate upon a material breach of its terms and conditions. 7. Nothing in this License Agreement shall be deemed to create any relationship of agency, partnership, or joint venture between JDH and Licensee. This License Agreement does not grant permission to use JDH trademarks or trade name in a trademark sense to endorse or promote products or services of Licensee, or any third party. 8. By copying, installing or otherwise using matplotlib 0.84, Licensee agrees to be bound by the terms and conditions of this License Agreement. ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/nc_cntr/README0000664000175000017500000000035714126044351014222 0ustar00jssjss_na_cntr.c is taken from matplotlib (currently version 0.84). The licence of this file is in the file LICENSE_MATPLOTLIB or can be read at http://matplotlib.sourceforge.net/license.html Thanks for the matplotlib guys for this nice code. ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/nc_cntr/_nc_cntr.c0000664000175000017500000016676414126044351015312 0ustar00jssjss/* cntr.c General purpose contour tracer for quadrilateral meshes. Handles single level contours, or region between a pair of levels. The routines that do all the work, as well as the explanatory comments, came from gcntr.c, part of the GIST package. The original mpl interface was also based on GIST. The present interface uses parts of the original, but places them in the entirely different framework of a Python type. It was written by following the Python "Extending and Embedding" tutorial. */ /* LICENSE AGREEMENT FOR MATPLOTLIB 0.84 -------------------------------------- 1. This LICENSE AGREEMENT is between John D. Hunter ("JDH"), and the Individual or Organization ("Licensee") accessing and otherwise using matplotlib software in source or binary form and its associated documentation. 2. Subject to the terms and conditions of this License Agreement, JDH hereby grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, analyze, test, perform and/or display publicly, prepare derivative works, distribute, and otherwise use matplotlib 0.84 alone or in any derivative version, provided, however, that JDH's License Agreement and JDH's notice of copyright, i.e., "Copyright (c) 2002-2005 John D. Hunter; All Rights Reserved" are retained in matplotlib 0.84 alone or in any derivative version prepared by Licensee. 3. In the event Licensee prepares a derivative work that is based on or incorporates matplotlib 0.84 or any part thereof, and wants to make the derivative work available to others as provided herein, then Licensee hereby agrees to include in any such work a brief summary of the changes made to matplotlib 0.84. 4. JDH is making matplotlib 0.84 available to Licensee on an "AS IS" basis. JDH MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, JDH MAKES NO AND DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF MATPLOTLIB 0.84 WILL NOT INFRINGE ANY THIRD PARTY RIGHTS. 5. JDH SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF MATPLOTLIB 0.84 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING MATPLOTLIB 0.84, OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. 6. This License Agreement will automatically terminate upon a material breach of its terms and conditions. 7. Nothing in this License Agreement shall be deemed to create any relationship of agency, partnership, or joint venture between JDH and Licensee. This License Agreement does not grant permission to use JDH trademarks or trade name in a trademark sense to endorse or promote products or services of Licensee, or any third party. 8. By copying, installing or otherwise using matplotlib 0.84, Licensee agrees to be bound by the terms and conditions of this License Agreement. */ #include #include "structmember.h" #include #include #define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION #include "numpy/arrayobject.h" /* Note that all arrays in these routines are Fortran-style, in the sense that the "i" index varies fastest; the dimensions of the corresponding C array are z[jmax][imax] in the notation used here. We can identify i and j with the x and y dimensions, respectively. */ /* What is a contour? * * Given a quadrilateral mesh (x,y), and values of a z at the points * of that mesh, we seek a set of polylines connecting points at a * particular value of z. Each point on such a contour curve lies * on an edge of the mesh, at a point linearly interpolated to the * contour level z0 between the given values of z at the endpoints * of the edge. * * Identifying these points is easy. Figuring out how to connect them * into a curve -- or possibly a set of disjoint curves -- is difficult. * Each disjoint curve may be either a closed circuit, or it may begin * and end on a mesh boundary. * * One of the problems with a quadrilateral mesh is that when the z * values at one pair of diagonally opposite points lie below z0, and * the values at the other diagonal pair of the same zone lie above z0, * all four edges of the zone are cut, and there is an ambiguity in * how we should connect the points. I call this a saddle zone. * The problem is that two disjoint curves cut through a saddle zone * (I reject the alternative of connecting the opposite points to make * a single self-intersecting curve, since those make ugly contour plots * -- I've tried it). The real problem with saddle zones is that you * need to communicate the connectivity decision you make back to the * calling routine, since for the next contour level, we need to tell * the contour tracer to make the same decision as on the previous * level. The input/output triangulation array is the solution to this * nasty problem. * * Another complicating factor is that there may be logical holes in * the mesh -- zones which do not exist. We want our contours to stop * if they hit the edge of such a zone, just as if they'd hit the edge * of the whole mesh. The input region array addresses this issue. * * Yet another complication: We may want a list of closed polygons which * outline the region between two contour levels z0 and z1. These may * include sections of the mesh boundary (including edges of logical * holes defined by the region array), in addition to sections of the * contour curves at one or both levels. This introduces a huge * topological problem -- if one of the closed contours (possibly * including an interior logical hole in the mesh, but not any part of * the boundary of the whole mesh) encloses a region which is not * between z0 and z1, that curve must be connected by a slit (or "branch * cut") to the enclosing curve, so that the list of disjoint polygons * we return is each simply connected. * * Okay, one final stunning difficulty: For the two level case, no * individual polygon should have more than a few thousand sides, since * huge filled polygons place an inordinate load on rendering software, * which needs an amount of scratch space proportional to the number * of sides it needs to fill. So in the two level case, we want to * chunk the mesh into rectangular pieces of no more than, say, 30x30 * zones, which keeps each returned polygon to less than a few thousand * sides (the worst case is very very bad -- you can easily write down * a function and two level values which produce a polygon that cuts * every edge of the mesh twice). */ /* * Here is the numbering scheme for points, edges, and zones in * the mesh -- note that each ij corresponds to one point, one zone, * one i-edge (i=constant edge) and one j-edge (j=constant edge): * * (ij-1)-------(ij)-------(ij) * | | * | | * | | * (ij-1) (ij) (ij) * | | * | | * | | * (ij-iX-1)----(ij-iX)----(ij-iX) * * At each point, the function value is either 0, 1, or 2, depending * on whether it is below z0, between z0 and z1, or above z1. * Each zone either exists (1) or not (0). * From these three bits of data, all of the curve connectivity follows. * * The tracing algorithm is naturally edge-based: Either you are at a * point where a level cuts an edge, ready to step across a zone to * another edge, or you are drawing the edge itself, if it happens to * be a boundary with at least one section between z0 and z1. * * In either case, the edge is a directed edge -- either the zone * you are advancing into is to its left or right, or you are actually * drawing it. I always trace curves keeping the region between z0 and * z1 to the left of the curve. If I'm tracing a boundary, I'm always * moving CCW (counter clockwise) around the zone that exists. And if * I'm about to cross a zone, I'll make the direction of the edge I'm * sitting on be such that the zone I'm crossing is to its left. * * I start tracing each curve near its lower left corner (mesh oriented * as above), which is the first point I encounter scanning through the * mesh in order. When I figure the 012 z values and zonal existence, * I also mark the potential starting points: Each edge may harbor a * potential starting point corresponding to either direction, so there * are four start possibilities at each ij point. Only the following * possibilities need to be marked as potential starting edges: * * +-+-+-+ * | | | | * A-0-C-+ One or both levels cut E and have z=1 above them, and * | EZ| | 0A is cut and either 0C is cut or CD is cut. * +-B-D-+ Or, one or both levels cut E and E is a boundary edge. * | | | | (and Z exists) * +-+-+-+ * * +-+-+-+ * | | | | * +-A-0-C One or both levels cut E and have z=1 below them, and * | |ZE | 0A is cut and either 0C is cut or CD is cut. * +-+-B-D Or, one or both levels cut E and E is a boundary edge. * | | | | (and Z exists) * +-+-+-+ * * +-+-+-+ * | | | | * +-+-+-+ E is a boundary edge, Z exists, at some point on E * | |Z| | lies between the levels. * +-+E+-+ * | | | | * +-+-+-+ * * +-+-+-+ * | | | | * +-+E+-+ E is a boundary edge, Z exists, at some point on E * | |Z| | lies between the levels. * +-+-+-+ * | | | | * +-+-+-+ * * During the first tracing pass, the start mark is erased whenever * any non-starting edge is encountered, reducing the number of points * that need to be considered for the second pass. The first pass * makes the basic connectivity decisions. It figures out how many * disjoint curves there will be, and identifies slits for the two level * case or open contours for the single level case, and removes all but * the actual start markers. A second tracing pass can perform the * actual final trace. */ /* ------------------------------------------------------------------------ */ /* the data about edges, zones, and points -- boundary or not, exists * or not, z value 0, 1, or 2 -- is kept in a mesh sized data array */ typedef short Cdata; /* here is the minimum structure required to tell where we are in the * mesh sized data array */ typedef struct Csite Csite; struct Csite { long edge; /* ij of current edge */ long left; /* +-1 or +-imax as the zone is to right, left, below, * or above the edge */ long imax; /* imax for the mesh */ long jmax; /* jmax for the mesh */ long n; /* number of points marked on this curve so far */ long count; /* count of start markers visited */ double zlevel[2]; /* contour levels, zlevel[1]<=zlevel[0] * signals single level case */ short *triangle; /* triangulation array for the mesh */ char *reg; /* region array for the mesh (was int) */ Cdata *data; /* added by EF */ long edge0, left0; /* starting site on this curve for closure */ int level0; /* starting level for closure */ long edge00; /* site needing START_ROW mark */ /* making the actual marks requires a bunch of other stuff */ const double *x, *y, *z; /* mesh coordinates and function values */ double *xcp, *ycp; /* output contour points */ }; #if 0 static void print_Csite(Csite *Csite) { Cdata *data = Csite->data; int i, j, ij; int nd = Csite->imax * (Csite->jmax + 1) + 1; printf("zlevels: %8.2lg %8.2lg\n", Csite->zlevel[0], Csite->zlevel[1]); printf("edge %ld, left %ld, n %ld, count %ld, edge0 %ld, left0 %ld\n", Csite->edge, Csite->left, Csite->n, Csite->count, Csite->edge0, Csite->left0); printf(" level0 %d, edge00 %ld\n", Csite->level0, Csite->edge00); printf("%04x\n", data[nd-1]); for (j = Csite->jmax; j >= 0; j--) { for (i=0; i < Csite->imax; i++) { ij = i + j * Csite->imax; printf("%04x ", data[ij]); } printf("\n"); } printf("\n"); } #endif /* triangle only takes values of -1, 0, 1, so it could be a signed char. */ /* most or all of the longs probably could be converted to ints with no loss */ /* the Cdata array consists of the following bits: * Z_VALUE (2 bits) 0, 1, or 2 function value at point * ZONE_EX 1 zone exists, 0 zone doesn't exist * I_BNDY this i-edge (i=constant edge) is a mesh boundary * J_BNDY this j-edge (i=constant edge) is a mesh boundary * I0_START this i-edge is a start point into zone to left * I1_START this i-edge is a start point into zone to right * J0_START this j-edge is a start point into zone below * J1_START this j-edge is a start point into zone above * START_ROW next start point is in current row (accelerates 2nd pass) * SLIT_UP marks this i-edge as the beginning of a slit upstroke * SLIT_DN marks this i-edge as the beginning of a slit downstroke * OPEN_END marks an i-edge start point whose other endpoint is * on a boundary for the single level case * ALL_DONE marks final start point */ #define Z_VALUE 0x0003 #define ZONE_EX 0x0004 #define I_BNDY 0x0008 #define J_BNDY 0x0010 #define I0_START 0x0020 #define I1_START 0x0040 #define J0_START 0x0080 #define J1_START 0x0100 #define START_ROW 0x0200 #define SLIT_UP 0x0400 #define SLIT_DN 0x0800 #define OPEN_END 0x1000 #define ALL_DONE 0x2000 /* some helpful macros to find points relative to a given directed * edge -- points are designated 0, 1, 2, 3 CCW around zone with 0 and * 1 the endpoints of the current edge */ #define FORWARD(left,ix) ((left)>0?((left)>1?1:-(ix)):((left)<-1?-1:(ix))) #define POINT0(edge,fwd) ((edge)-((fwd)>0?fwd:0)) #define POINT1(edge,fwd) ((edge)+((fwd)<0?fwd:0)) #define IS_JEDGE(edge,left) ((left)>0?((left)>1?1:0):((left)<-1?1:0)) #define ANY_START (I0_START|I1_START|J0_START|J1_START) #define START_MARK(left) \ ((left)>0?((left)>1?J1_START:I1_START):((left)<-1?J0_START:I0_START)) /* ------------------------------------------------------------------------ */ /* these actually mark points */ static int zone_crosser (Csite * site, int level, int pass2); static int edge_walker (Csite * site, int pass2); static int slit_cutter (Csite * site, int up, int pass2); /* this calls the first three to trace the next disjoint curve * -- return value is number of points on this curve, or * 0 if there are no more curves this pass * -(number of points) on first pass if: * this is two level case, and the curve closed on a hole * this is single level case, curve is open, and will start from * a different point on the second pass * -- in both cases, this curve will be combined with another * on the second pass */ static long curve_tracer (Csite * site, int pass2); /* this initializes the data array for curve_tracer */ static void data_init (Csite * site, int region, long nchunk); /* ------------------------------------------------------------------------ */ /* zone_crosser assumes you are sitting at a cut edge about to cross * the current zone. It always marks the initial point, crosses at * least one zone, and marks the final point. On non-boundary i-edges, * it is responsible for removing start markers on the first pass. */ static int zone_crosser (Csite * site, int level, int pass2) { Cdata * data = site->data; long edge = site->edge; long left = site->left; long n = site->n; long fwd = FORWARD (left, site->imax); long p0, p1; int jedge = IS_JEDGE (edge, left); long edge0 = site->edge0; long left0 = site->left0; int level0 = site->level0 == level; int two_levels = site->zlevel[1] > site->zlevel[0]; short *triangle = site->triangle; const double *x = pass2 ? site->x : 0; const double *y = pass2 ? site->y : 0; const double *z = pass2 ? site->z : 0; double zlevel = pass2 ? site->zlevel[level] : 0.0; double *xcp = pass2 ? site->xcp : 0; double *ycp = pass2 ? site->ycp : 0; int z0, z1, z2, z3; int keep_left = 0; /* flag to try to minimize curvature in saddles */ int done = 0; if (level) level = 2; for (;;) { /* set edge endpoints */ p0 = POINT0 (edge, fwd); p1 = POINT1 (edge, fwd); /* always mark cut on current edge */ if (pass2) { /* second pass actually computes and stores the point */ double zcp = (zlevel - z[p0]) / (z[p1] - z[p0]); xcp[n] = zcp * (x[p1] - x[p0]) + x[p0]; ycp[n] = zcp * (y[p1] - y[p0]) + y[p0]; } if (!done && !jedge) { if (n) { /* if this is not the first point on the curve, and we're * not done, and this is an i-edge, check several things */ if (!two_levels && !pass2 && (data[edge] & OPEN_END)) { /* reached an OPEN_END mark, skip the n++ */ done = 4; /* same return value 4 used below */ break; } /* check for curve closure -- if not, erase any start mark */ if (edge == edge0 && left == left0) { /* may signal closure on a downstroke */ if (level0) done = (!pass2 && two_levels && left < 0) ? 5 : 3; } else if (!pass2) { Cdata start = data[edge] & (fwd > 0 ? I0_START : I1_START); if (start) { data[edge] &= ~start; site->count--; } if (!two_levels) { start = data[edge] & (fwd > 0 ? I1_START : I0_START); if (start) { data[edge] &= ~start; site->count--; } } } } } n++; if (done) break; /* cross current zone to another cut edge */ z0 = (data[p0] & Z_VALUE) != level; /* 1 if fill toward p0 */ z1 = !z0; /* know level cuts edge */ z2 = (data[p1 + left] & Z_VALUE) != level; z3 = (data[p0 + left] & Z_VALUE) != level; if (z0 == z2) { if (z1 == z3) { /* this is a saddle zone, need triangle to decide * -- set triangle if not already decided for this zone */ long zone = edge + (left > 0 ? left : 0); if (triangle) { if (!triangle[zone]) { if (keep_left) triangle[zone] = jedge ? -1 : 1; else triangle[zone] = jedge ? 1 : -1; } if (triangle[zone] > 0 ? !jedge : jedge) goto bkwd; } else { if (keep_left) goto bkwd; } } /* bend forward (right along curve) */ keep_left = 1; jedge = !jedge; edge = p1 + (left > 0 ? left : 0); { long tmp = fwd; fwd = -left; left = tmp; } } else if (z1 == z3) { bkwd: /* bend backward (left along curve) */ keep_left = 0; jedge = !jedge; edge = p0 + (left > 0 ? left : 0); { long tmp = fwd; fwd = left; left = -tmp; } } else { /* straight across to opposite edge */ edge += left; } /* after crossing zone, edge/left/fwd is oriented CCW relative to * the next zone, assuming we will step there */ /* now that we've taken a step, check for the downstroke * of a slit on the second pass (upstroke checked above) * -- taking step first avoids a race condition */ if (pass2 && two_levels && !jedge) { if (left > 0) { if (data[edge] & SLIT_UP) done = 6; } else { if (data[edge] & SLIT_DN) done = 5; } } if (!done) { /* finally, check if we are on a boundary */ if (data[edge] & (jedge ? J_BNDY : I_BNDY)) { done = two_levels ? 2 : 4; /* flip back into the zone that exists */ left = -left; fwd = -fwd; if (!pass2 && (edge != edge0 || left != left0)) { Cdata start = data[edge] & START_MARK (left); if (start) { data[edge] &= ~start; site->count--; } } } } } site->edge = edge; site->n = n; site->left = left; return done > 4 ? slit_cutter (site, done - 5, pass2) : done; } /* edge_walker assumes that the current edge is being drawn CCW * around the current zone. Since only boundary edges are drawn * and we always walk around with the filled region to the left, * no edge is ever drawn CW. We attempt to advance to the next * edge on this boundary, but if current second endpoint is not * between the two contour levels, we exit back to zone_crosser. * Note that we may wind up marking no points. * -- edge_walker is never called for single level case */ static int edge_walker (Csite * site, int pass2) { Cdata * data = site->data; long edge = site->edge; long left = site->left; long n = site->n; long fwd = FORWARD (left, site->imax); long p0 = POINT0 (edge, fwd); long p1 = POINT1 (edge, fwd); int jedge = IS_JEDGE (edge, left); long edge0 = site->edge0; long left0 = site->left0; int level0 = site->level0 == 2; int marked; const double *x = pass2 ? site->x : 0; const double *y = pass2 ? site->y : 0; double *xcp = pass2 ? site->xcp : 0; double *ycp = pass2 ? site->ycp : 0; int z0, z1, heads_up = 0; for (;;) { /* mark endpoint 0 only if value is 1 there, and this is a * two level task */ z0 = data[p0] & Z_VALUE; z1 = data[p1] & Z_VALUE; marked = 0; if (z0 == 1) { /* mark current boundary point */ if (pass2) { xcp[n] = x[p0]; ycp[n] = y[p0]; } marked = 1; } else if (!n) { /* if this is the first point is not between the levels * must do the job of the zone_crosser and mark the first cut here, * so that it will be marked again by zone_crosser as it closes */ if (pass2) { double zcp = site->zlevel[(z0 != 0)]; zcp = (zcp - site->z[p0]) / (site->z[p1] - site->z[p0]); xcp[n] = zcp * (x[p1] - x[p0]) + x[p0]; ycp[n] = zcp * (y[p1] - y[p0]) + y[p0]; } marked = 1; } if (n) { /* check for closure */ if (level0 && edge == edge0 && left == left0) { site->edge = edge; site->left = left; site->n = n + marked; /* if the curve is closing on a hole, need to make a downslit */ if (fwd < 0 && !(data[edge] & (jedge ? J_BNDY : I_BNDY))) return slit_cutter (site, 0, pass2); return 3; } else if (pass2) { if (heads_up || (fwd < 0 && (data[edge] & SLIT_DN))) { site->edge = edge; site->left = left; site->n = n + marked; return slit_cutter (site, heads_up, pass2); } } else { /* if this is not first point, clear start mark for this edge */ Cdata start = data[edge] & START_MARK (left); if (start) { data[edge] &= ~start; site->count--; } } } if (marked) n++; /* if next endpoint not between levels, need to exit to zone_crosser */ if (z1 != 1) { site->edge = edge; site->left = left; site->n = n; return (z1 != 0); /* return level closest to p1 */ } /* step to p1 and find next edge * -- turn left if possible, else straight, else right * -- check for upward slit beginning at same time */ edge = p1 + (left > 0 ? left : 0); if (pass2 && jedge && fwd > 0 && (data[edge] & SLIT_UP)) { jedge = !jedge; heads_up = 1; } else if (data[edge] & (jedge ? I_BNDY : J_BNDY)) { long tmp = fwd; fwd = left; left = -tmp; jedge = !jedge; } else { edge = p1 + (fwd > 0 ? fwd : 0); if (pass2 && !jedge && fwd > 0 && (data[edge] & SLIT_UP)) { heads_up = 1; } else if (!(data[edge] & (jedge ? J_BNDY : I_BNDY))) { edge = p1 - (left < 0 ? left : 0); jedge = !jedge; { long tmp = fwd; fwd = -left; left = tmp; } } } p0 = p1; p1 = POINT1 (edge, fwd); } } /* -- slit_cutter is never called for single level case */ static int slit_cutter (Csite * site, int up, int pass2) { Cdata * data = site->data; long imax = site->imax; long n = site->n; const double *x = pass2 ? site->x : 0; const double *y = pass2 ? site->y : 0; double *xcp = pass2 ? site->xcp : 0; double *ycp = pass2 ? site->ycp : 0; if (up) { /* upward stroke of slit proceeds up left side of slit until * it hits a boundary or a point not between the contour levels * -- this never happens on the first pass */ long p1 = site->edge; int z1; for (;;) { z1 = data[p1] & Z_VALUE; if (z1 != 1) { site->edge = p1; site->left = -1; site->n = n; return (z1 != 0); } else if (data[p1] & J_BNDY) { /* this is very unusual case of closing on a mesh hole */ site->edge = p1; site->left = -imax; site->n = n; return 2; } xcp[n] = x[p1]; ycp[n] = y[p1]; n++; p1 += imax; } } else { /* downward stroke proceeds down right side of slit until it * hits a boundary or point not between the contour levels */ long p0 = site->edge; int z0; /* at beginning of first pass, mark first i-edge with SLIT_DN */ data[p0] |= SLIT_DN; p0 -= imax; for (;;) { z0 = data[p0] & Z_VALUE; if (!pass2) { if (z0 != 1 || (data[p0] & I_BNDY) || (data[p0 + 1] & J_BNDY)) { /* at end of first pass, mark final i-edge with SLIT_UP */ data[p0 + imax] |= SLIT_UP; /* one extra count for splicing at outer curve */ site->n = n + 1; return 4; /* return same special value as for OPEN_END */ } } else { if (z0 != 1) { site->edge = p0 + imax; site->left = 1; site->n = n; return (z0 != 0); } else if (data[p0 + 1] & J_BNDY) { site->edge = p0 + 1; site->left = imax; site->n = n; return 2; } else if (data[p0] & I_BNDY) { site->edge = p0; site->left = 1; site->n = n; return 2; } } if (pass2) { xcp[n] = x[p0]; ycp[n] = y[p0]; n++; } else { /* on first pass need to count for upstroke as well */ n += 2; } p0 -= imax; } } } /* ------------------------------------------------------------------------ */ /* curve_tracer finds the next starting point, then traces the curve, * returning the number of points on this curve * -- in a two level trace, the return value is negative on the * first pass if the curve closed on a hole * -- in a single level trace, the return value is negative on the * first pass if the curve is an incomplete open curve * -- a return value of 0 indicates no more curves */ static long curve_tracer (Csite * site, int pass2) { Cdata * data = site->data; long imax = site->imax; long edge0 = site->edge0; long left0 = site->left0; long edge00 = site->edge00; int two_levels = site->zlevel[1] > site->zlevel[0]; int level, level0, mark_row; long n; /* it is possible for a single i-edge to serve as two actual start * points, one to the right and one to the left * -- for the two level case, this happens on the first pass for * a doubly cut edge, or on a chunking boundary * -- for single level case, this is impossible, but a similar * situation involving open curves is handled below * a second two start possibility is when the edge0 zone does not * exist and both the i-edge and j-edge boundaries are cut * yet another possibility is three start points at a junction * of chunk cuts * -- sigh, several other rare possibilities, * allow for general case, just go in order i1, i0, j1, j0 */ int two_starts; /* printf("curve_tracer pass %d\n", pass2); */ /* print_Csite(site); */ if (left0 == 1) two_starts = data[edge0] & (I0_START | J1_START | J0_START); else if (left0 == -1) two_starts = data[edge0] & (J1_START | J0_START); else if (left0 == imax) two_starts = data[edge0] & J0_START; else two_starts = 0; if (pass2 || edge0 == 0) { /* zip up to row marked on first pass (or by data_init if edge0==0) * -- but not for double start case */ if (!two_starts) { /* final start point marked by ALL_DONE marker */ int first = (edge0 == 0 && !pass2); long e0 = edge0; if (data[edge0] & ALL_DONE) return 0; while (!(data[edge0] & START_ROW)) edge0 += imax; if (e0 == edge0) edge0++; /* two starts handled specially */ if (first) /* if this is the very first start point, we want to remove * the START_ROW marker placed by data_init */ data[edge0 - edge0 % imax] &= ~START_ROW; } } else { /* first pass ends when all potential start points visited */ if (site->count <= 0) { /* place ALL_DONE marker for second pass */ data[edge00] |= ALL_DONE; /* reset initial site for second pass */ site->edge0 = site->edge00 = site->left0 = 0; return 0; } if (!two_starts) edge0++; } if (two_starts) { /* trace second curve with this start immediately */ if (left0 == 1 && (data[edge0] & I0_START)) { left0 = -1; level = (data[edge0] & I_BNDY) ? 2 : 0; } else if ((left0 == 1 || left0 == -1) && (data[edge0] & J1_START)) { left0 = imax; level = 2; } else { left0 = -imax; level = 2; } } else { /* usual case is to scan for next start marker * -- on second pass, this is at most one row of mesh, but first * pass hits nearly every point of the mesh, since it can't * know in advance which potential start marks removed */ while (!(data[edge0] & ANY_START)) edge0++; if (data[edge0] & I1_START) left0 = 1; else if (data[edge0] & I0_START) left0 = -1; else if (data[edge0] & J1_START) left0 = imax; else /*data[edge0]&J0_START */ left0 = -imax; if (data[edge0] & (I1_START | I0_START)) level = (data[edge0] & I_BNDY) ? 2 : 0; else level = 2; } /* this start marker will not be unmarked, but it has been visited */ if (!pass2) site->count--; /* if this curve starts on a non-boundary i-edge, we need to * determine the level */ if (!level && two_levels) level = left0 > 0 ? ((data[edge0 - imax] & Z_VALUE) != 0) : ((data[edge0] & Z_VALUE) != 0); /* initialize site for this curve */ site->edge = site->edge0 = edge0; site->left = site->left0 = left0; site->level0 = level0 = level; /* for open curve detection only */ /* single level case just uses zone_crosser */ if (!two_levels) level = 0; /* to generate the curve, alternate between zone_crosser and * edge_walker until closure or first call to edge_walker in * single level case */ site->n = 0; for (;;) { if (level < 2) level = zone_crosser (site, level, pass2); else if (level < 3) level = edge_walker (site, pass2); else break; } n = site->n; /* single level case may have ended at a boundary rather than closing * -- need to recognize this case here in order to place the * OPEN_END mark for zone_crosser, remove this start marker, * and be sure not to make a START_ROW mark for this case * two level case may close with slit_cutter, in which case start * must also be removed and no START_ROW mark made * -- change sign of return n to inform caller */ if (!pass2 && level > 3 && (two_levels || level0 == 0)) { if (!two_levels) data[edge0] |= OPEN_END; data[edge0] &= ~(left0 > 0 ? I1_START : I0_START); mark_row = 0; /* do not mark START_ROW */ n = -n; } else { if (two_levels) mark_row = !two_starts; else mark_row = 1; } /* on first pass, must apply START_ROW mark in column above previous * start marker * -- but skip if we just did second of two start case */ if (!pass2 && mark_row) { data[edge0 - (edge0 - edge00) % imax] |= START_ROW; site->edge00 = edge0; } return n; } /* ------------------------------------------------------------------------ */ /* The sole function of the "region" argument is to specify the value in Csite.reg that denotes a missing zone. We always use zero. */ static void data_init (Csite * site, int region, long nchunk) { Cdata * data = site->data; long imax = site->imax; long jmax = site->jmax; long ijmax = imax * jmax; const double *z = site->z; double zlev0 = site->zlevel[0]; double zlev1 = site->zlevel[1]; int two_levels = zlev1 > zlev0; char *reg = site->reg; long count = 0; int started = 0; int ibndy, jbndy, i_was_chunk; long icsize = imax - 1; long jcsize = jmax - 1; long ichunk, jchunk, irem, jrem, i, j, ij; if (nchunk && two_levels) { /* figure out chunk sizes * -- input nchunk is square root of maximum allowed zones per chunk * -- start points for single level case are wrong, so don't try it */ long inum = (nchunk * nchunk) / (jmax - 1); long jnum = (nchunk * nchunk) / (imax - 1); if (inum < nchunk) inum = nchunk; if (jnum < nchunk) jnum = nchunk; /* ijnum= actual number of chunks, * ijrem= number of those chunks needing one more zone (ijcsize+1) */ inum = (imax - 2) / inum + 1; icsize = (imax - 1) / inum; irem = (imax - 1) % inum; jnum = (jmax - 2) / jnum + 1; jcsize = (jmax - 1) / jnum; jrem = (jmax - 1) % jnum; /* convert ijrem into value of i or j at which to begin adding an * extra zone */ irem = (inum - irem) * icsize; jrem = (jnum - jrem) * jcsize; } else { irem = imax; jrem = jmax; } /* do everything in a single pass through the data array to * minimize cache faulting (z, reg, and data are potentially * very large arrays) * access to the z and reg arrays is strictly sequential, * but we need two rows (+-imax) of the data array at a time */ if (z[0] > zlev0) data[0] = (two_levels && z[0] > zlev1) ? 2 : 1; else data[0] = 0; jchunk = 0; for (j = ij = 0; j < jmax; j++) { ichunk = i_was_chunk = 0; for (i = 0; i < imax; i++, ij++) { /* transfer zonal existence from reg to data array * -- get these for next row so we can figure existence of * points and j-edges for this row */ data[ij + imax + 1] = 0; if (reg) { if (region ? (reg[ij + imax + 1] == region) : (reg[ij + imax + 1] != 0)) data[ij + imax + 1] = ZONE_EX; } else { if (i < imax - 1 && j < jmax - 1) data[ij + imax + 1] = ZONE_EX; } /* translate z values to 0, 1, 2 flags */ if (ij < imax) data[ij + 1] = 0; if (ij < ijmax - 1 && z[ij + 1] > zlev0) data[ij + 1] |= (two_levels && z[ij + 1] > zlev1) ? 2 : 1; /* apply edge boundary marks */ ibndy = i == ichunk || (data[ij] & ZONE_EX) != (data[ij + 1] & ZONE_EX); jbndy = j == jchunk || (data[ij] & ZONE_EX) != (data[ij + imax] & ZONE_EX); if (ibndy) data[ij] |= I_BNDY; if (jbndy) data[ij] |= J_BNDY; /* apply i-edge start marks * -- i-edges are only marked when actually cut * -- no mark is necessary if one of the j-edges which share * the lower endpoint is also cut * -- no I0 mark necessary unless filled region below some cut, * no I1 mark necessary unless filled region above some cut */ if (j) { int v0 = (data[ij] & Z_VALUE); int vb = (data[ij - imax] & Z_VALUE); if (v0 != vb) { /* i-edge is cut */ if (ibndy) { if (data[ij] & ZONE_EX) { data[ij] |= I0_START; count++; } if (data[ij + 1] & ZONE_EX) { data[ij] |= I1_START; count++; } } else { int va = (data[ij - 1] & Z_VALUE); int vc = (data[ij + 1] & Z_VALUE); int vd = (data[ij - imax + 1] & Z_VALUE); if (v0 != 1 && va != v0 && (vc != v0 || vd != v0) && (data[ij] & ZONE_EX)) { data[ij] |= I0_START; count++; } if (vb != 1 && va == vb && (vc == vb || vd == vb) && (data[ij + 1] & ZONE_EX)) { data[ij] |= I1_START; count++; } } } } /* apply j-edge start marks * -- j-edges are only marked when they are boundaries * -- all cut boundary edges marked * -- for two level case, a few uncut edges must be marked */ if (i && jbndy) { int v0 = (data[ij] & Z_VALUE); int vb = (data[ij - 1] & Z_VALUE); if (v0 != vb) { if (data[ij] & ZONE_EX) { data[ij] |= J0_START; count++; } if (data[ij + imax] & ZONE_EX) { data[ij] |= J1_START; count++; } } else if (two_levels && v0 == 1) { if (data[ij + imax] & ZONE_EX) { if (i_was_chunk || !(data[ij + imax - 1] & ZONE_EX)) { /* lower left is a drawn part of boundary */ data[ij] |= J1_START; count++; } } else if (data[ij] & ZONE_EX) { if (data[ij + imax - 1] & ZONE_EX) { /* weird case of open hole at lower left */ data[ij] |= J0_START; count++; } } } } i_was_chunk = (i == ichunk); if (i_was_chunk) ichunk += icsize + (ichunk >= irem); } if (j == jchunk) jchunk += jcsize + (jchunk >= jrem); /* place first START_ROW marker */ if (count && !started) { data[ij - imax] |= START_ROW; started = 1; } } /* place immediate stop mark if nothing found */ if (!count) data[0] |= ALL_DONE; /* initialize site */ site->edge0 = site->edge00 = site->edge = 0; site->left0 = site->left = 0; site->n = 0; site->count = count; } /* ------------------------------------------------------------------------ Original (slightly modified) core contour generation routines are above; below are new routines for interfacing to mpl. ------------------------------------------------------------------------ */ /* Note: index order gets switched in the Python interface; python Z[i,j] -> C z[j,i] so if the array has shape Mi, Nj in python, we have iMax = Nj, jMax = Mi in gcntr.c. On the Python side: Ny, Nx = shape(z), so in C, the x-dimension is the first index, the y-dimension the second. */ /* reg should have the same dimensions as data, which has an extra iMax + 1 points relative to Z. It differs from mask in being the opposite (True where a region exists, versus the mask, which is True where a data point is bad), and in that it marks zones, not points. All four zones sharing a bad point must be marked as not existing. */ static void mask_zones (long iMax, long jMax, char *mask, char *reg) { long i, j, ij; long nreg = iMax * jMax + iMax + 1; for (ij = iMax+1; ij < iMax*jMax; ij++) { reg[ij] = 1; } ij = 0; for (j = 0; j < jMax; j++) { for (i = 0; i < iMax; i++, ij++) { if (i == 0 || j == 0) reg[ij] = 0; if (mask[ij] != 0) { reg[ij] = 0; reg[ij + 1] = 0; reg[ij + iMax] = 0; reg[ij + iMax + 1] = 0; } } } for (; ij < nreg; ij++) { reg[ij] = 0; } } static Csite * cntr_new(void) { Csite *site; site = (Csite *) PyMem_Malloc(sizeof(Csite)); if (site == NULL) return NULL; site->data = NULL; site->reg = NULL; site->triangle = NULL; site->xcp = NULL; site->ycp = NULL; site->x = NULL; site->y = NULL; site->z = NULL; return site; } static int cntr_init(Csite *site, long iMax, long jMax, double *x, double *y, double *z, char *mask) { long ijmax = iMax * jMax; long nreg = iMax * jMax + iMax + 1; long i; site->imax = iMax; site->jmax = jMax; site->data = (Cdata *) PyMem_Malloc(sizeof(Cdata) * nreg); if (site->data == NULL) { PyMem_Free(site); return -1; } site->triangle = (short *) PyMem_Malloc(sizeof(short) * ijmax); if (site->triangle == NULL) { PyMem_Free(site->data); PyMem_Free(site); return -1; } for (i = 0; i < ijmax; i++) site->triangle[i] = 0; site->reg = NULL; if (mask != NULL) { site->reg = (char *) PyMem_Malloc(sizeof(char) * nreg); if (site->reg == NULL) { PyMem_Free(site->triangle); PyMem_Free(site->data); PyMem_Free(site); return -1; } mask_zones(iMax, jMax, mask, site->reg); } /* I don't think we need to initialize site->data. */ site->x = x; site->y = y; site->z = z; site->xcp = NULL; site->ycp = NULL; return 0; } static void cntr_del(Csite *site) { PyMem_Free(site->triangle); PyMem_Free(site->reg); PyMem_Free(site->data); PyMem_Free(site); site = NULL; } /* Build a list of lists of points, where each point is an (x,y) tuple. */ static PyObject * build_cntr_list_p(long *np, double *xp, double *yp, int nparts, long ntotal) { PyObject *point, *contourList, *all_contours; int start = 0, end = 0; int i, j, k; all_contours = PyList_New(nparts); if (all_contours == NULL) return NULL; for (i = 0; i < nparts; i++) { start = end; end += np[i]; contourList = PyList_New(np[i]); if (contourList == NULL) goto error; for (k = 0, j = start; j < end; j++, k++) { point = Py_BuildValue("(dd)", xp[j], yp[j]); if (PyList_SetItem(contourList, k, point)) goto error; } if (PyList_SetItem(all_contours, i, contourList)) goto error; } return all_contours; error: Py_XDECREF(all_contours); return NULL; } /* Build a list of tuples (X, Y), where X and Y are 1-D arrays. */ #if 0 static PyObject * build_cntr_list_v(long *np, double *xp, double *yp, int nparts, long ntotal) { PyObject *point, *all_contours; PyArrayObject *xv, *yv; npy_intp dims[1]; int i; long j, k; all_contours = PyList_New(nparts); k = 0; for (i = 0; i < nparts; i++) { dims[0] = np[i]; xv = (PyArrayObject *) PyArray_SimpleNew(1, dims, NPY_DOUBLE); yv = (PyArrayObject *) PyArray_SimpleNew(1, dims, NPY_DOUBLE); if (xv == NULL || yv == NULL) goto error; for (j = 0; j < dims[0]; j++) { ((double *)xv->data)[j] = xp[k]; ((double *)yv->data)[j] = yp[k]; k++; } point = Py_BuildValue("(NN)", xv, yv); /* "O" increments ref count; "N" does not. */ if (PyList_SetItem(all_contours, i, point)) goto error; } return all_contours; error: Py_XDECREF(all_contours); return NULL; } #endif /* Build a list of XY 2-D arrays, shape (N,2) */ static PyObject * build_cntr_list_v2(long *np, double *xp, double *yp, int nparts, long ntotal) { PyObject *all_contours; PyArrayObject *xyv; npy_intp dims[2]; int i; long j, k; all_contours = PyList_New(nparts); if (all_contours == NULL) return NULL; k = 0; for (i = 0; i < nparts; i++) { double *data; dims[0] = np[i]; dims[1] = 2; xyv = (PyArrayObject *) PyArray_SimpleNew(2, dims, NPY_DOUBLE); if (xyv == NULL) goto error; data = (double*)PyArray_DATA(xyv); for (j = 0; j < dims[0]; j++) { data[2*j] = xp[k]; data[2*j+1] = yp[k]; k++; } if (PyList_SetItem(all_contours, i, (PyObject *)xyv)) goto error; } return all_contours; error: Py_XDECREF(all_contours); return NULL; } /* cntr_trace is called once per contour level or level pair. If nlevels is 1, a set of contour lines will be returned; if nlevels is 2, the set of polygons bounded by the levels will be returned. If points is True, the lines will be returned as a list of list of points; otherwise, as a list of tuples of vectors. */ static PyObject * cntr_trace(Csite *site, double levels[], int nlevels, int points, long nchunk) { PyObject *c_list; double *xp0; double *yp0; long *nseg0; int iseg; /* long nchunk = 30; was hardwired */ long n; long nparts = 0; long ntotal = 0; long nparts2 = 0; long ntotal2 = 0; site->zlevel[0] = levels[0]; site->zlevel[1] = levels[0]; if (nlevels == 2) { site->zlevel[1] = levels[1]; } site->n = site->count = 0; data_init (site, 0, nchunk); /* make first pass to compute required sizes for second pass */ for (;;) { n = curve_tracer (site, 0); if (!n) break; if (n > 0) { nparts++; ntotal += n; } else { ntotal -= n; } } xp0 = (double *) PyMem_Malloc(ntotal * sizeof(double)); yp0 = (double *) PyMem_Malloc(ntotal * sizeof(double)); nseg0 = (long *) PyMem_Malloc(nparts * sizeof(long)); if (xp0 == NULL || yp0 == NULL || nseg0 == NULL) { PyErr_NoMemory(); goto error; } /* second pass */ site->xcp = xp0; site->ycp = yp0; iseg = 0; for (;;iseg++) { n = curve_tracer (site, 1); if (ntotal2 + n > ntotal) { PyErr_SetString(PyExc_RuntimeError, "curve_tracer: ntotal2, pass 2 exceeds ntotal, pass 1"); goto error; } if (n == 0) break; if (n > 0) { /* could add array bounds checking */ nseg0[iseg] = n; site->xcp += n; site->ycp += n; ntotal2 += n; nparts2++; } else { PyErr_SetString(PyExc_RuntimeError, "Negative n from curve_tracer in pass 2"); goto error; } } if (points) { c_list = build_cntr_list_p(nseg0, xp0, yp0, nparts, ntotal); } else { c_list = build_cntr_list_v2(nseg0, xp0, yp0, nparts, ntotal); } PyMem_Free(xp0); PyMem_Free(yp0); PyMem_Free(nseg0); site->xcp = NULL; site->ycp = NULL; return c_list; error: PyMem_Free(xp0); PyMem_Free(yp0); PyMem_Free(nseg0); site->xcp = NULL; site->ycp = NULL; return NULL; } /******* Make an extension type. Based on the tutorial.************/ /* site points to the data arrays in the arrays pointed to by xpa, ypa, zpa, and mpa, so we include them in the structure so we can ensure they are not deleted until we have finished using them. */ typedef struct { PyObject_HEAD PyArrayObject *xpa, *ypa, *zpa, *mpa; Csite *site; } Cntr; static int Cntr_clear(Cntr* self) { PyArrayObject *tmp; cntr_del(self->site); tmp = self->xpa; self->xpa = NULL; Py_XDECREF(tmp); tmp = self->ypa; self->ypa = NULL; Py_XDECREF(tmp); tmp = self->zpa; self->zpa = NULL; Py_XDECREF(tmp); tmp = self->mpa; self->mpa = NULL; Py_XDECREF(tmp); return 0; } static void Cntr_dealloc(Cntr* self) { Cntr_clear(self); Py_TYPE(self)->tp_free((PyObject*)self); } static PyObject * Cntr_new(PyTypeObject *type, PyObject *args, PyObject *kwds) { Cntr *self; self = (Cntr *)type->tp_alloc(type, 0); if (self != NULL) { self->site = cntr_new(); if (self->site == NULL) { PyErr_SetString(PyExc_MemoryError, "Memory allocation failed in cntr_new."); Py_XDECREF(self); return NULL; } self->xpa = NULL; self->ypa = NULL; self->zpa = NULL; self->mpa = NULL; } return (PyObject *)self; } static int Cntr_init(Cntr *self, PyObject *args, PyObject *kwds) { static char *kwlist[] = {"x", "y", "z", "mask", NULL}; PyObject *xarg, *yarg, *zarg, *marg; PyArrayObject *xpa, *ypa, *zpa, *mpa; long iMax, jMax; char *mask; marg = NULL; if (! PyArg_ParseTupleAndKeywords(args, kwds, "OOO|O", kwlist, &xarg, &yarg, &zarg, &marg)) return -1; if (marg == Py_None) marg = NULL; if (!PyArray_Check(xarg) || !PyArray_Check(yarg) || !PyArray_Check(zarg) || (marg && !PyArray_Check(marg))) { PyErr_SetString(PyExc_TypeError, "Arguments x, y, z, (optional) mask must be arrays."); return -1; } xpa = (PyArrayObject *) PyArray_ContiguousFromObject(xarg, NPY_DOUBLE, 2, 2); ypa = (PyArrayObject *) PyArray_ContiguousFromObject(yarg, NPY_DOUBLE, 2, 2); zpa = (PyArrayObject *) PyArray_ContiguousFromObject(zarg, NPY_DOUBLE, 2, 2); if (marg) mpa = (PyArrayObject *) PyArray_ContiguousFromObject(marg, NPY_BYTE, 2, 2); else mpa = NULL; if (xpa == NULL || ypa == NULL || zpa == NULL || (marg && mpa == NULL)) { PyErr_SetString(PyExc_ValueError, "Arguments x, y, z, mask (if present) must be 2D arrays."); goto error; } iMax = PyArray_DIMS(zpa)[1]; jMax = PyArray_DIMS(zpa)[0]; if (PyArray_DIMS(xpa)[0] != jMax || PyArray_DIMS(xpa)[1] != iMax || PyArray_DIMS(ypa)[0] != jMax || PyArray_DIMS(ypa)[1] != iMax || (mpa && (PyArray_DIMS(mpa)[0] != jMax || PyArray_DIMS(mpa)[1] != iMax))) { PyErr_SetString(PyExc_ValueError, "Arguments x, y, z, mask (if present)" " must have the same dimensions."); goto error; } if (mpa) mask = PyArray_DATA(mpa); else mask = NULL; if ( cntr_init(self->site, iMax, jMax, (double *)PyArray_DATA(xpa), (double *)PyArray_DATA(ypa), (double *)PyArray_DATA(zpa), mask)) { PyErr_SetString(PyExc_MemoryError, "Memory allocation failure in cntr_init"); goto error; } self->xpa = xpa; self->ypa = ypa; self->zpa = zpa; self->mpa = mpa; return 0; error: Py_XDECREF(xpa); Py_XDECREF(ypa); Py_XDECREF(zpa); Py_XDECREF(mpa); return -1; } static PyObject * Cntr_trace(Cntr *self, PyObject *args, PyObject *kwds) { double levels[2] = {0.0, -1e100}; int nlevels = 2; int points = 0; long nchunk = 0L; static char *kwlist[] = {"level0", "level1", "points", "nchunk", NULL}; if (! PyArg_ParseTupleAndKeywords(args, kwds, "d|dil", kwlist, levels, levels+1, &points, &nchunk)) { return NULL; } if (levels[1] == -1e100 || levels[1] <= levels[0]) nlevels = 1; return cntr_trace(self->site, levels, nlevels, points, nchunk); } static PyMethodDef Cntr_methods[] = { {"trace", (PyCFunction)Cntr_trace, METH_VARARGS | METH_KEYWORDS, "Return a list of contour line segments or polygons.\n\n" " Required argument: level0, a contour level\n" " Optional argument: level1; if given, and if level1 > level0,\n" " then the contours will be polygons surrounding areas between\n" " the levels.\n" " Optional argument: points; if 0 (default), return a list of\n" " vector pairs; otherwise, return a list of lists of points.\n" " Optional argument: nchunk; approximate number of grid points\n" " per chunk. 0 (default) for no chunking.\n" }, {NULL} /* Sentinel */ }; static PyTypeObject CntrType = { PyVarObject_HEAD_INIT(NULL, 0) "_nc_cntr.Cntr", /*tp_name*/ sizeof(Cntr), /*tp_basicsize*/ 0, /*tp_itemsize*/ (destructor)Cntr_dealloc, /*tp_dealloc*/ 0, /*tp_print*/ 0, /*tp_getattr*/ 0, /*tp_setattr*/ 0, /*tp_compare*/ 0, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/ 0, /*tp_as_mapping*/ 0, /*tp_hash */ 0, /*tp_call*/ 0, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ Py_TPFLAGS_DEFAULT, /*tp_flags*/ "Contour engine", /* tp_doc */ 0, /* tp_traverse */ (inquiry)Cntr_clear, /* tp_clear */ 0, /* tp_richcompare */ 0, /* tp_weaklistoffset */ 0, /* tp_iter */ 0, /* tp_iternext */ Cntr_methods, /* tp_methods */ 0, /* tp_members */ 0, /* tp_getset */ 0, /* tp_base */ 0, /* tp_dict */ 0, /* tp_descr_get */ 0, /* tp_descr_set */ 0, /* tp_dictoffset */ (initproc)Cntr_init, /* tp_init */ 0, /* tp_alloc */ Cntr_new, /* tp_new */ }; static PyMethodDef module_methods[] = { {NULL} /* Sentinel */ }; /* see http://python3porting.com/cextensions.html */ #if PY_MAJOR_VERSION >= 3 # define MOD_ERROR_VAL NULL # define MOD_SUCCESS_VAL(val) val # define MOD_INIT(name) PyMODINIT_FUNC PyInit_##name(void) # define MOD_DEF(ob, name, doc, methods) \ { \ static struct PyModuleDef moduledef = { \ PyModuleDef_HEAD_INIT, name, doc, -1, methods, }; \ ob = PyModule_Create(&moduledef); \ } #else # define MOD_ERROR_VAL # define MOD_SUCCESS_VAL(val) # define MOD_INIT(name) void init##name(void) # define MOD_DEF(ob, name, doc, methods) \ ob = Py_InitModule3(name, methods, doc) #endif /* returns different type depending on python version */ #if PY_MAJOR_VERSION >= 3 static void* donumpyinit(void) { import_array(); return NULL; } #else static void donumpyinit(void) { import_array(); } #endif MOD_INIT(_nc_cntr) { PyObject *m; if( PyType_Ready(&CntrType) < 0 ) return MOD_ERROR_VAL; MOD_DEF(m, "_nc_cntr", "Contour 2D data", module_methods); if( m == NULL ) return MOD_ERROR_VAL; donumpyinit(); Py_INCREF(&CntrType); PyModule_AddObject(m, "Cntr", (PyObject *)&CntrType); return MOD_SUCCESS_VAL(m); } ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.1845212 veusz-3.6.2/src/qtloops/0000775000175000017500000000000014376700261013416 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/qtloops/beziers.cpp0000664000175000017500000007425514126044351015574 0ustar00jssjss#define SP_BEZIERS_C /** \file * Bezier interpolation for inkscape drawing code. */ /* * Original code published in: * An Algorithm for Automatically Fitting Digitized Curves * by Philip J. Schneider * "Graphics Gems", Academic Press, 1990 * * Authors: * Philip J. Schneider * Lauris Kaplinski * Peter Moulder * * Copyright (C) 1990 Philip J. Schneider * Copyright (C) 2001 Lauris Kaplinski * Copyright (C) 2001 Ximian, Inc. * Copyright (C) 2003,2004 Monash University * * Released under GNU GPL, read the file 'COPYING' for more information */ // Modified to be based around QPointF by Jeremy Sanders (2007) #define SP_HUGE 1e5 //#define BEZIER_DEBUG #include #include #include #include #include "beziers.h" #include "isnan.h" #define g_return_val_if_fail(check, val) \ if(!(check)) { \ fprintf(stderr, "Error in check g_return_val_if_fail in " \ __FILE__ "\n"); \ return(val); \ } #define g_return_if_fail(check) \ if(!(check)) { \ fprintf(stderr, "Error in check g_return_if_fail in " \ __FILE__ "\n"); \ return; \ } #define g_assert(check) \ if(!(check)) { \ fprintf(stderr, "Assertion failed in g_assert in " \ __FILE__ "\n"); \ abort(); \ } #define G_N_ELEMENTS(arr) (sizeof (arr) / sizeof ((arr)[0])) static inline bool is_zero(const QPointF& pt) { return pt.isNull(); } static inline QPointF unit_vector(const QPointF& pt) { const double mag = sqrt(pt.x()*pt.x()+pt.y()*pt.y()); return pt / mag; } static inline double dot(const QPointF& a, const QPointF& b) { return a.x()*b.x() + a.y()*b.y(); } /** Compute the L2, or euclidean, norm of \a p. */ static inline double L2(const QPointF &p) { return hypot(p.x(), p.y()); } static inline QPointF rot90(const QPointF& p) { return QPointF(-p.y(), p.x()); } typedef QPointF BezierCurve[]; /* Forward declarations */ static void generate_bezier(QPointF b[], QPointF const d[], double const u[], unsigned len, QPointF const &tHat1, QPointF const &tHat2, double tolerance_sq); static void estimate_lengths(QPointF bezier[], QPointF const data[], double const u[], unsigned len, QPointF const &tHat1, QPointF const &tHat2); static void estimate_bi(QPointF b[4], unsigned ei, QPointF const data[], double const u[], unsigned len); static void reparameterize(QPointF const d[], unsigned len, double u[], BezierCurve const bezCurve); static double NewtonRaphsonRootFind(BezierCurve const Q, QPointF const &P, double u); static QPointF sp_darray_center_tangent(QPointF const d[], unsigned center, unsigned length); static QPointF sp_darray_right_tangent(QPointF const d[], unsigned const len); static unsigned copy_without_nans_or_adjacent_duplicates(QPointF const src[], unsigned src_len, QPointF dest[]); static void chord_length_parameterize(QPointF const d[], double u[], unsigned len); static double compute_max_error_ratio(QPointF const d[], double const u[], unsigned len, BezierCurve const bezCurve, double tolerance, unsigned *splitPoint); static double compute_hook(QPointF const &a, QPointF const &b, double const u, BezierCurve const bezCurve, double const tolerance); static QPointF const unconstrained_tangent(0, 0); /* * B0, B1, B2, B3 : Bezier multipliers */ static inline double B0(double u) { return ( ( 1.0 - u ) * ( 1.0 - u ) * ( 1.0 - u ) ); } static inline double B1(double u) { return ( 3 * u * ( 1.0 - u ) * ( 1.0 - u ) ); } static inline double B2(double u) { return ( 3 * u * u * ( 1.0 - u ) ); } static inline double B3(double u) { return ( u * u * u ); } #ifdef BEZIER_DEBUG # define DOUBLE_ASSERT(x) g_assert( ( (x) > -SP_HUGE ) && ( (x) < SP_HUGE ) ) # define BEZIER_ASSERT(b) do { \ DOUBLE_ASSERT((b)[0].x()); DOUBLE_ASSERT((b)[0].y()); \ DOUBLE_ASSERT((b)[1].x()); DOUBLE_ASSERT((b)[1].y()); \ DOUBLE_ASSERT((b)[2].x()); DOUBLE_ASSERT((b)[2].y()); \ DOUBLE_ASSERT((b)[3].x()); DOUBLE_ASSERT((b)[3].y()); \ } while(0) #else # define DOUBLE_ASSERT(x) do { } while(0) # define BEZIER_ASSERT(b) do { } while(0) #endif /** * Fit a single-segment Bezier curve to a set of digitized points. * * \return Number of segments generated, or -1 on error. */ int sp_bezier_fit_cubic(QPointF *bezier, QPointF const *data, int len, double error) { return sp_bezier_fit_cubic_r(bezier, data, len, error, 1); } /** * Fit a multi-segment Bezier curve to a set of digitized points, with * possible weedout of identical points and NaNs. * * \param max_beziers Maximum number of generated segments * \param Result array, must be large enough for n. segments * 4 elements. * * \return Number of segments generated, or -1 on error. */ int sp_bezier_fit_cubic_r(QPointF bezier[], QPointF const data[], int const len, double const error, unsigned const max_beziers) { g_return_val_if_fail(bezier != NULL, -1); g_return_val_if_fail(data != NULL, -1); g_return_val_if_fail(len > 0, -1); g_return_val_if_fail(max_beziers < (1ul << (31 - 2 - 1 - 3)), -1); QPolygonF uniqued_data(len); unsigned uniqued_len = copy_without_nans_or_adjacent_duplicates(data, len, uniqued_data.data() ); if ( uniqued_len < 2 ) { return 0; } /* Call fit-cubic function with recursion. */ return sp_bezier_fit_cubic_full(bezier, NULL, uniqued_data.data(), uniqued_len, unconstrained_tangent, unconstrained_tangent, error, max_beziers); } /** * Copy points from src to dest, filter out points containing NaN and * adjacent points with equal x and y. * \return length of dest */ static unsigned copy_without_nans_or_adjacent_duplicates(QPointF const src[], unsigned src_len, QPointF dest[]) { unsigned si = 0; for (;;) { if ( si == src_len ) { return 0; } if (!isNaN(src[si].x()) && !isNaN(src[si].y())) { dest[0] = QPointF(src[si]); ++si; break; } } unsigned di = 0; for (; si < src_len; ++si) { QPointF const src_pt = QPointF(src[si]); if ( src_pt != dest[di] && !isNaN(src_pt.x()) && !isNaN(src_pt.y())) { dest[++di] = src_pt; } } unsigned dest_len = di + 1; g_assert( dest_len <= src_len ); return dest_len; } /** * Fit a multi-segment Bezier curve to a set of digitized points, without * possible weedout of identical points and NaNs. * * \pre data is uniqued, i.e. not exist i: data[i] == data[i + 1]. * \param max_beziers Maximum number of generated segments * \param Result array, must be large enough for n. segments * 4 elements. */ int sp_bezier_fit_cubic_full(QPointF bezier[], int split_points[], QPointF const data[], int const len, QPointF const &tHat1, QPointF const &tHat2, double const error, unsigned const max_beziers) { int const maxIterations = 4; /* Max times to try iterating */ g_return_val_if_fail(bezier != NULL, -1); g_return_val_if_fail(data != NULL, -1); g_return_val_if_fail(len > 0, -1); g_return_val_if_fail(max_beziers >= 1, -1); g_return_val_if_fail(error >= 0.0, -1); if ( len < 2 ) return 0; if ( len == 2 ) { /* We have 2 points, which can be fitted trivially. */ bezier[0] = data[0]; bezier[3] = data[len - 1]; double const dist = ( L2( data[len - 1] - data[0] ) *(1./3.) ); if (isNaN(dist)) { /* Numerical problem, fall back to straight line segment. */ bezier[1] = bezier[0]; bezier[2] = bezier[3]; } else { bezier[1] = ( is_zero(tHat1) ? ( 2 * bezier[0] + bezier[3] ) * (1./3.) : bezier[0] + dist * tHat1 ); bezier[2] = ( is_zero(tHat2) ? ( bezier[0] + 2 * bezier[3] ) * (1./3.) : bezier[3] + dist * tHat2 ); } BEZIER_ASSERT(bezier); return 1; } /* Parameterize points, and attempt to fit curve */ unsigned splitPoint; /* Point to split point set at. */ bool is_corner; { QVector u(len); chord_length_parameterize(data, u.data(), len); if ( u[len - 1] == 0.0 ) { /* Zero-length path: every point in data[] is the same. * * (Clients aren't allowed to pass such data; handling the case is defensive * programming.) */ return 0; } generate_bezier(bezier, data, u.data(), len, tHat1, tHat2, error); reparameterize(data, len, u.data(), bezier); /* Find max deviation of points to fitted curve. */ double const tolerance = sqrt(error + 1e-9); double maxErrorRatio = compute_max_error_ratio(data, u.data(), len, bezier, tolerance, &splitPoint); if ( fabs(maxErrorRatio) <= 1.0 ) { BEZIER_ASSERT(bezier); return 1; } /* If error not too large, then try some reparameterization and iteration. */ if ( 0.0 <= maxErrorRatio && maxErrorRatio <= 3.0 ) { for (int i = 0; i < maxIterations; i++) { generate_bezier(bezier, data, u.data(), len, tHat1, tHat2, error); reparameterize(data, len, u.data(), bezier); maxErrorRatio = compute_max_error_ratio(data, u.data(), len, bezier, tolerance, &splitPoint); if ( fabs(maxErrorRatio) <= 1.0 ) { BEZIER_ASSERT(bezier); return 1; } } } is_corner = (maxErrorRatio < 0); } if (is_corner) { g_assert(splitPoint < unsigned(len)); if (splitPoint == 0) { if (is_zero(tHat1)) { /* Got spike even with unconstrained initial tangent. */ ++splitPoint; } else { return sp_bezier_fit_cubic_full(bezier, split_points, data, len, unconstrained_tangent, tHat2, error, max_beziers); } } else if (splitPoint == unsigned(len - 1)) { if (is_zero(tHat2)) { /* Got spike even with unconstrained final tangent. */ --splitPoint; } else { return sp_bezier_fit_cubic_full(bezier, split_points, data, len, tHat1, unconstrained_tangent, error, max_beziers); } } } if ( 1 < max_beziers ) { /* * Fitting failed -- split at max error point and fit recursively */ unsigned const rec_max_beziers1 = max_beziers - 1; QPointF recTHat2, recTHat1; if (is_corner) { g_return_val_if_fail(0 < splitPoint && splitPoint < unsigned(len - 1), -1); recTHat1 = recTHat2 = unconstrained_tangent; } else { /* Unit tangent vector at splitPoint. */ recTHat2 = sp_darray_center_tangent(data, splitPoint, len); recTHat1 = -recTHat2; } int const nsegs1 = sp_bezier_fit_cubic_full(bezier, split_points, data, splitPoint + 1, tHat1, recTHat2, error, rec_max_beziers1); if ( nsegs1 < 0 ) { #ifdef BEZIER_DEBUG fprintf(stderr, "fit_cubic[1]: recursive call failed\n"); #endif return -1; } g_assert( nsegs1 != 0 ); if (split_points != NULL) { split_points[nsegs1 - 1] = splitPoint; } unsigned const rec_max_beziers2 = max_beziers - nsegs1; int const nsegs2 = sp_bezier_fit_cubic_full(bezier + nsegs1*4, ( split_points == NULL ? NULL : split_points + nsegs1 ), data + splitPoint, len - splitPoint, recTHat1, tHat2, error, rec_max_beziers2); if ( nsegs2 < 0 ) { #ifdef BEZIER_DEBUG fprintf(stderr, "fit_cubic[2]: recursive call failed\n"); #endif return -1; } #ifdef BEZIER_DEBUG fprintf(stderr, "fit_cubic: success[nsegs: %d+%d=%d] on max_beziers:%u\n", nsegs1, nsegs2, nsegs1 + nsegs2, max_beziers); #endif return nsegs1 + nsegs2; } else { return -1; } } /** * Fill in \a bezier[] based on the given data and tangent requirements, using * a least-squares fit. * * Each of tHat1 and tHat2 should be either a zero vector or a unit vector. * If it is zero, then bezier[1 or 2] is estimated without constraint; otherwise, * it bezier[1 or 2] is placed in the specified direction from bezier[0 or 3]. * * \param tolerance_sq Used only for an initial guess as to tangent directions * when \a tHat1 or \a tHat2 is zero. */ static void generate_bezier(QPointF bezier[], QPointF const data[], double const u[], unsigned const len, QPointF const &tHat1, QPointF const &tHat2, double const tolerance_sq) { bool const est1 = is_zero(tHat1); bool const est2 = is_zero(tHat2); QPointF est_tHat1( est1 ? sp_darray_left_tangent(data, len, tolerance_sq) : tHat1 ); QPointF est_tHat2( est2 ? sp_darray_right_tangent(data, len, tolerance_sq) : tHat2 ); estimate_lengths(bezier, data, u, len, est_tHat1, est_tHat2); /* We find that sp_darray_right_tangent tends to produce better results for our current freehand tool than full estimation. */ if (est1) { estimate_bi(bezier, 1, data, u, len); if (bezier[1] != bezier[0]) { est_tHat1 = unit_vector(bezier[1] - bezier[0]); } estimate_lengths(bezier, data, u, len, est_tHat1, est_tHat2); } } static void estimate_lengths(QPointF bezier[], QPointF const data[], double const uPrime[], unsigned const len, QPointF const &tHat1, QPointF const &tHat2) { double C[2][2]; /* Matrix C. */ double X[2]; /* Matrix X. */ /* Create the C and X matrices. */ C[0][0] = 0.0; C[0][1] = 0.0; C[1][0] = 0.0; C[1][1] = 0.0; X[0] = 0.0; X[1] = 0.0; /* First and last control points of the Bezier curve are positioned exactly at the first and last data points. */ bezier[0] = data[0]; bezier[3] = data[len - 1]; for (unsigned i = 0; i < len; i++) { /* Bezier control point coefficients. */ double const b0 = B0(uPrime[i]); double const b1 = B1(uPrime[i]); double const b2 = B2(uPrime[i]); double const b3 = B3(uPrime[i]); /* rhs for eqn */ QPointF const a1 = b1 * tHat1; QPointF const a2 = b2 * tHat2; C[0][0] += dot(a1, a1); C[0][1] += dot(a1, a2); C[1][0] = C[0][1]; C[1][1] += dot(a2, a2); /* Additional offset to the data point from the predicted point if we were to set bezier[1] to bezier[0] and bezier[2] to bezier[3]. */ QPointF const shortfall = ( data[i] - ( ( b0 + b1 ) * bezier[0] ) - ( ( b2 + b3 ) * bezier[3] ) ); X[0] += dot(a1, shortfall); X[1] += dot(a2, shortfall); } /* We've constructed a pair of equations in the form of a matrix product C * alpha = X. Now solve for alpha. */ double alpha_l, alpha_r; /* Compute the determinants of C and X. */ double const det_C0_C1 = C[0][0] * C[1][1] - C[1][0] * C[0][1]; if ( det_C0_C1 != 0 ) { /* Apparently Kramer's rule. */ double const det_C0_X = C[0][0] * X[1] - C[0][1] * X[0]; double const det_X_C1 = X[0] * C[1][1] - X[1] * C[0][1]; alpha_l = det_X_C1 / det_C0_C1; alpha_r = det_C0_X / det_C0_C1; } else { /* The matrix is under-determined. Try requiring alpha_l == alpha_r. * * One way of implementing the constraint alpha_l == alpha_r is to treat them as the same * variable in the equations. We can do this by adding the columns of C to form a single * column, to be multiplied by alpha to give the column vector X. * * We try each row in turn. */ double const c0 = C[0][0] + C[0][1]; if (c0 != 0) { alpha_l = alpha_r = X[0] / c0; } else { double const c1 = C[1][0] + C[1][1]; if (c1 != 0) { alpha_l = alpha_r = X[1] / c1; } else { /* Let the below code handle this. */ alpha_l = alpha_r = 0.; } } } /* If alpha negative, use the Wu/Barsky heuristic (see text). (If alpha is 0, you get coincident control points that lead to divide by zero in any subsequent NewtonRaphsonRootFind() call.) */ /// \todo Check whether this special-casing is necessary now that /// NewtonRaphsonRootFind handles non-positive denominator. if ( alpha_l < 1.0e-6 || alpha_r < 1.0e-6 ) { alpha_l = alpha_r = ( L2( data[len - 1] - data[0] ) * (1./3.) ); } /* Control points 1 and 2 are positioned an alpha distance out on the tangent vectors, left and right, respectively. */ bezier[1] = alpha_l * tHat1 + bezier[0]; bezier[2] = alpha_r * tHat2 + bezier[3]; return; } static double lensq(QPointF const p) { return dot(p, p); } static void estimate_bi(QPointF bezier[4], unsigned const ei, QPointF const data[], double const u[], unsigned const len) { g_return_if_fail(1 <= ei && ei <= 2); unsigned const oi = 3 - ei; QPointF num(0., 0.); double den = 0.; for (unsigned i = 0; i < len; ++i) { double const ui = u[i]; double const b[4] = { B0(ui), B1(ui), B2(ui), B3(ui) }; num.rx() += b[ei] * (b[0] * bezier[0].x() + b[oi] * bezier[0].x() + b[3] * bezier[3].x() + - data[i].x()); num.ry() += b[ei] * (b[0] * bezier[0].y() + b[oi] * bezier[0].y() + b[3] * bezier[3].y() + - data[i].y()); den -= b[ei] * b[ei]; } if (den != 0.) { bezier[ei] = num / den; } else { bezier[ei] = ( oi * bezier[0] + ei * bezier[3] ) * (1./3.); } } /** * Given set of points and their parameterization, try to find a better assignment of parameter * values for the points. * * \param d Array of digitized points. * \param u Current parameter values. * \param bezCurve Current fitted curve. * \param len Number of values in both d and u arrays. * Also the size of the array that is allocated for return. */ static void reparameterize(QPointF const d[], unsigned const len, double u[], BezierCurve const bezCurve) { g_assert( 2 <= len ); unsigned const last = len - 1; g_assert( bezCurve[0] == d[0] ); g_assert( bezCurve[3] == d[last] ); g_assert( u[0] == 0.0 ); g_assert( u[last] == 1.0 ); /* Otherwise, consider including 0 and last in the below loop. */ for (unsigned i = 1; i < last; i++) { u[i] = NewtonRaphsonRootFind(bezCurve, d[i], u[i]); } } /** * Use Newton-Raphson iteration to find better root. * * \param Q Current fitted curve * \param P Digitized point * \param u Parameter value for "P" * * \return Improved u */ static double NewtonRaphsonRootFind(BezierCurve const Q, QPointF const &P, double const u) { g_assert( 0.0 <= u ); g_assert( u <= 1.0 ); /* Generate control vertices for Q'. */ QPointF Q1[3]; for (unsigned i = 0; i < 3; i++) { Q1[i] = 3.0 * ( Q[i+1] - Q[i] ); } /* Generate control vertices for Q''. */ QPointF Q2[2]; for (unsigned i = 0; i < 2; i++) { Q2[i] = 2.0 * ( Q1[i+1] - Q1[i] ); } /* Compute Q(u), Q'(u) and Q''(u). */ QPointF const Q_u = bezier_pt(3, Q, u); QPointF const Q1_u = bezier_pt(2, Q1, u); QPointF const Q2_u = bezier_pt(1, Q2, u); /* Compute f(u)/f'(u), where f is the derivative wrt u of distsq(u) = 0.5 * the square of the distance from P to Q(u). Here we're using Newton-Raphson to find a stationary point in the distsq(u), hopefully corresponding to a local minimum in distsq (and hence a local minimum distance from P to Q(u)). */ QPointF const diff = Q_u - P; double numerator = dot(diff, Q1_u); double denominator = dot(Q1_u, Q1_u) + dot(diff, Q2_u); double improved_u; if ( denominator > 0. ) { /* One iteration of Newton-Raphson: improved_u = u - f(u)/f'(u) */ improved_u = u - ( numerator / denominator ); } else { /* Using Newton-Raphson would move in the wrong direction (towards a local maximum rather than local minimum), so we move an arbitrary amount in the right direction. */ if ( numerator > 0. ) { improved_u = u * .98 - .01; } else if ( numerator < 0. ) { /* Deliberately asymmetrical, to reduce the chance of cycling. */ improved_u = .031 + u * .98; } else { improved_u = u; } } if (!isFinite(improved_u)) { improved_u = u; } else if ( improved_u < 0.0 ) { improved_u = 0.0; } else if ( improved_u > 1.0 ) { improved_u = 1.0; } /* Ensure that improved_u isn't actually worse. */ { double const diff_lensq = lensq(diff); for (double proportion = .125; ; proportion += .125) { if ( lensq( bezier_pt(3, Q, improved_u) - P ) > diff_lensq ) { if ( proportion > 1.0 ) { //g_warning("found proportion %g", proportion); improved_u = u; break; } improved_u = ( ( 1 - proportion ) * improved_u + proportion * u ); } else { break; } } } DOUBLE_ASSERT(improved_u); return improved_u; } /** * Evaluate a Bezier curve at parameter value \a t. * * \param degree The degree of the Bezier curve: 3 for cubic, 2 for quadratic etc. * \param V The control points for the Bezier curve. Must have (\a degree+1) * elements. * \param t The "parameter" value, specifying whereabouts along the curve to * evaluate. Typically in the range [0.0, 1.0]. * * Let s = 1 - t. * BezierII(1, V) gives (s, t) * V, i.e. t of the way * from V[0] to V[1]. * BezierII(2, V) gives (s**2, 2*s*t, t**2) * V. * BezierII(3, V) gives (s**3, 3 s**2 t, 3s t**2, t**3) * V. * * The derivative of BezierII(i, V) with respect to t * is i * BezierII(i-1, V'), where for all j, V'[j] = * V[j + 1] - V[j]. */ QPointF bezier_pt(unsigned const degree, QPointF const V[], double const t) { /** Pascal's triangle. */ static int const pascal[4][4] = {{1}, {1, 1}, {1, 2, 1}, {1, 3, 3, 1}}; g_assert( degree < G_N_ELEMENTS(pascal) ); double const s = 1.0 - t; /* Calculate powers of t and s. */ double spow[4]; double tpow[4]; spow[0] = 1.0; spow[1] = s; tpow[0] = 1.0; tpow[1] = t; for (unsigned i = 1; i < degree; ++i) { spow[i + 1] = spow[i] * s; tpow[i + 1] = tpow[i] * t; } QPointF ret = spow[degree] * V[0]; for (unsigned i = 1; i <= degree; ++i) { ret += pascal[degree][i] * spow[degree - i] * tpow[i] * V[i]; } return ret; } /* * ComputeLeftTangent, ComputeRightTangent, ComputeCenterTangent : * Approximate unit tangents at endpoints and "center" of digitized curve */ /** * Estimate the (forward) tangent at point d[first + 0.5]. * * Unlike the center and right versions, this calculates the tangent in * the way one might expect, i.e., wrt increasing index into d. * \pre (2 \<= len) and (d[0] != d[1]). **/ QPointF sp_darray_left_tangent(QPointF const d[], unsigned const len) { g_assert( len >= 2 ); g_assert( d[0] != d[1] ); return unit_vector( d[1] - d[0] ); } /** * Estimates the (backward) tangent at d[last - 0.5]. * * \note The tangent is "backwards", i.e. it is with respect to * decreasing index rather than increasing index. * * \pre 2 \<= len. * \pre d[len - 1] != d[len - 2]. * \pre all[p in d] in_svg_plane(p). */ static QPointF sp_darray_right_tangent(QPointF const d[], unsigned const len) { g_assert( 2 <= len ); unsigned const last = len - 1; unsigned const prev = last - 1; g_assert( d[last] != d[prev] ); return unit_vector( d[prev] - d[last] ); } /** * Estimate the (forward) tangent at point d[0]. * * Unlike the center and right versions, this calculates the tangent in * the way one might expect, i.e., wrt increasing index into d. * * \pre 2 \<= len. * \pre d[0] != d[1]. * \pre all[p in d] in_svg_plane(p). * \post is_unit_vector(ret). **/ QPointF sp_darray_left_tangent(QPointF const d[], unsigned const len, double const tolerance_sq) { g_assert( 2 <= len ); g_assert( 0 <= tolerance_sq ); for (unsigned i = 1;;) { QPointF const pi(d[i]); QPointF const t(pi - d[0]); double const distsq = dot(t, t); if ( tolerance_sq < distsq ) { return unit_vector(t); } ++i; if (i == len) { return ( distsq == 0 ? sp_darray_left_tangent(d, len) : unit_vector(t) ); } } } /** * Estimates the (backward) tangent at d[last]. * * \note The tangent is "backwards", i.e. it is with respect to * decreasing index rather than increasing index. * * \pre 2 \<= len. * \pre d[len - 1] != d[len - 2]. * \pre all[p in d] in_svg_plane(p). */ QPointF sp_darray_right_tangent(QPointF const d[], unsigned const len, double const tolerance_sq) { g_assert( 2 <= len ); g_assert( 0 <= tolerance_sq ); unsigned const last = len - 1; for (unsigned i = last - 1;; i--) { QPointF const pi(d[i]); QPointF const t(pi - d[last]); double const distsq = dot(t, t); if ( tolerance_sq < distsq ) { return unit_vector(t); } if (i == 0) { return ( distsq == 0 ? sp_darray_right_tangent(d, len) : unit_vector(t) ); } } } /** * Estimates the (backward) tangent at d[center], by averaging the two * segments connected to d[center] (and then normalizing the result). * * \note The tangent is "backwards", i.e. it is with respect to * decreasing index rather than increasing index. * * \pre (0 \< center \< len - 1) and d is uniqued (at least in * the immediate vicinity of \a center). */ static QPointF sp_darray_center_tangent(QPointF const d[], unsigned const center, unsigned const len) { g_assert( center != 0 ); g_assert( center < len - 1 ); QPointF ret; if ( d[center + 1] == d[center - 1] ) { /* Rotate 90 degrees in an arbitrary direction. */ QPointF const diff = d[center] - d[center - 1]; ret = rot90(diff); } else { ret = d[center - 1] - d[center + 1]; } return unit_vector(ret); } /** * Assign parameter values to digitized points using relative distances between points. * * \pre Parameter array u must have space for \a len items. */ static void chord_length_parameterize(QPointF const d[], double u[], unsigned const len) { g_return_if_fail( 2 <= len ); /* First let u[i] equal the distance travelled along the path from d[0] to d[i]. */ u[0] = 0.0; for (unsigned i = 1; i < len; i++) { double const dist = L2( d[i] - d[i-1] ); u[i] = u[i-1] + dist; } /* Then scale to [0.0 .. 1.0]. */ double tot_len = u[len - 1]; g_return_if_fail( tot_len != 0 ); if (isFinite(tot_len)) { for (unsigned i = 1; i < len; ++i) { u[i] /= tot_len; } } else { /* We could do better, but this probably never happens anyway. */ for (unsigned i = 1; i < len; ++i) { u[i] = i / (double) ( len - 1 ); } } /** \todo * It's been reported that u[len - 1] can differ from 1.0 on some * systems (amd64), despite it having been calculated as x / x where x * is isFinite and non-zero. */ if (u[len - 1] != 1) { double const diff = u[len - 1] - 1; if (fabs(diff) > 1e-13) { fprintf(stderr, "u[len - 1] = %19g (= 1 + %19g), expecting exactly 1", u[len - 1], diff); } u[len - 1] = 1; } #ifdef BEZIER_DEBUG g_assert( u[0] == 0.0 && u[len - 1] == 1.0 ); for (unsigned i = 1; i < len; i++) { g_assert( u[i] >= u[i-1] ); } #endif } /** * Find the maximum squared distance of digitized points to fitted curve, and (if this maximum * error is non-zero) set \a *splitPoint to the corresponding index. * * \pre 2 \<= len. * \pre u[0] == 0. * \pre u[len - 1] == 1.0. * \post ((ret == 0.0) * || ((*splitPoint \< len - 1) * \&\& (*splitPoint != 0 || ret \< 0.0))). */ static double compute_max_error_ratio(QPointF const d[], double const u[], unsigned const len, BezierCurve const bezCurve, double const tolerance, unsigned *const splitPoint) { g_assert( 2 <= len ); unsigned const last = len - 1; g_assert( bezCurve[0] == d[0] ); g_assert( bezCurve[3] == d[last] ); g_assert( u[0] == 0.0 ); g_assert( u[last] == 1.0 ); /* I.e. assert that the error for the first & last points is zero. * Otherwise we should include those points in the below loop. * The assertion is also necessary to ensure 0 < splitPoint < last. */ double maxDistsq = 0.0; /* Maximum error */ double max_hook_ratio = 0.0; unsigned snap_end = 0; QPointF prev = bezCurve[0]; for (unsigned i = 1; i <= last; i++) { QPointF const curr = bezier_pt(3, bezCurve, u[i]); double const distsq = lensq( curr - d[i] ); if ( distsq > maxDistsq ) { maxDistsq = distsq; *splitPoint = i; } double const hook_ratio = compute_hook(prev, curr, .5 * (u[i - 1] + u[i]), bezCurve, tolerance); if (max_hook_ratio < hook_ratio) { max_hook_ratio = hook_ratio; snap_end = i; } prev = curr; } double const dist_ratio = sqrt(maxDistsq) / tolerance; double ret; if (max_hook_ratio <= dist_ratio) { ret = dist_ratio; } else { g_assert(0 < snap_end); ret = -max_hook_ratio; *splitPoint = snap_end - 1; } g_assert( ret == 0.0 || ( ( *splitPoint < last ) && ( *splitPoint != 0 || ret < 0. ) ) ); return ret; } /** * Whereas compute_max_error_ratio() checks for itself that each data point * is near some point on the curve, this function checks that each point on * the curve is near some data point (or near some point on the polyline * defined by the data points, or something like that: we allow for a * "reasonable curviness" from such a polyline). "Reasonable curviness" * means we draw a circle centred at the midpoint of a..b, of radius * proportional to the length |a - b|, and require that each point on the * segment of bezCurve between the parameters of a and b be within that circle. * If any point P on the bezCurve segment is outside of that allowable * region (circle), then we return some metric that increases with the * distance from P to the circle. * * Given that this is a fairly arbitrary criterion for finding appropriate * places for sharp corners, we test only one point on bezCurve, namely * the point on bezCurve with parameter halfway between our estimated * parameters for a and b. (Alternatives are taking the farthest of a * few parameters between those of a and b, or even using a variant of * NewtonRaphsonFindRoot() for finding the maximum rather than minimum * distance.) */ static double compute_hook(QPointF const &a, QPointF const &b, double const u, BezierCurve const bezCurve, double const tolerance) { QPointF const P = bezier_pt(3, bezCurve, u); QPointF const diff = .5 * (a + b) - P; double const dist = L2(diff); if (dist < tolerance) { return 0; } // factor of 0.2 introduced by JSS to stop more hooks double const allowed = L2(b - a)*0.2 + tolerance; return dist / allowed; /** \todo * effic: Hooks are very rare. We could start by comparing * distsq, only resorting to the more expensive L2 in cases of * uncertainty. */ } ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/qtloops/beziers.h0000664000175000017500000000250114126044351015222 0ustar00jssjss// -*- mode: C++; -*- #ifndef SP_BEZIERS_H #define SP_BEZIERS_H /* * An Algorithm for Automatically Fitting Digitized Curves * by Philip J. Schneider * from "Graphics Gems", Academic Press, 1990 * * Authors: * Philip J. Schneider * Lauris Kaplinski * * Copyright (C) 1990 Philip J. Schneider * Copyright (C) 2001 Lauris Kaplinski and Ximian, Inc. * * Released under GNU GPL */ /* Bezier approximation utils */ // Modified to be based around QPointF by Jeremy Sanders (2007) #include QPointF bezier_pt(unsigned const degree, QPointF const V[], double const t); int sp_bezier_fit_cubic(QPointF bezier[], QPointF const *data, int len, double error); int sp_bezier_fit_cubic_r(QPointF bezier[], QPointF const data[], int len, double error, unsigned max_beziers); int sp_bezier_fit_cubic_full(QPointF bezier[], int split_points[], QPointF const data[], int len, QPointF const &tHat1, QPointF const &tHat2, double error, unsigned max_beziers); QPointF sp_darray_left_tangent(QPointF const d[], unsigned const len); QPointF sp_darray_left_tangent(QPointF const d[], unsigned const len, double const tolerance_sq); QPointF sp_darray_right_tangent(QPointF const d[], unsigned const length, double const tolerance_sq); #endif /* SP_BEZIERS_H */ ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/src/qtloops/beziers_qtwrap.cpp0000664000175000017500000001007014332253347017161 0ustar00jssjss// Copyright (C) 2010 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include "beziers.h" #include "beziers_qtwrap.h" QPolygonF bezier_fit_cubic_single( const QPolygonF& data, double error ) { QPolygonF out(4); const int retn = sp_bezier_fit_cubic(out.data(), data.data(), data.count(), error); if( retn >= 0 ) return out; else return QPolygonF(); } QPolygonF bezier_fit_cubic_multi( const QPolygonF& data, double error, unsigned max_beziers ) { QPolygonF out(4*max_beziers); const int retn = sp_bezier_fit_cubic_r(out.data(), data.data(), data.count(), error, max_beziers); if( retn >= 0 ) { // get rid of unused points if( retn*4 < out.count() ) out.remove( retn*4, out.count()-retn*4 ); return out; } else return QPolygonF(); } QPolygonF bezier_fit_cubic_tight(const QPolygonF& data, double looseness) { /** * MS Excel-like cubic Bezier fitting formulated by Brian Murphy. * (http://www.xlrotor.com/Smooth_curve_bezier_example_file.zip) * * 4 bezier control points (ctrls[0]-ctrl[3]) are created for each line * segment. Positions of ctrls are determined by 4 nearest data points * (pt0-pt3) with following rules: * ctrls[0]: same position as pt0. * ctrls[1]: on a line through pt1 parallel to pt0-pt2, * at a distance from pt1 = f1 * |pt0-pt2| * ctrls[2]: on a line through pt2 parallel to pt1-pt3, * at a distance from pt2 = f2 * |pt1-pt3| * ctrls[3]: same position as pt3 * The magic numbers (f1 and f2) are determined by length ratio of the * 3 line segments and "looseness" with some additional rules. * looseness: artificial parameter to control "tension" of the Bezier * curve. Larger value gives more curved connection. * In MS Excell, this value is set as "0.5". */ const int len = data.size(); if (len < 2) { return QPolygonF(); }else if (len == 2) { QPolygonF bezier_ctrls(4); bezier_ctrls << data[0] << data[0] << data[1] << data[1]; return bezier_ctrls; }else{ QPolygonF bezier_ctrls(4 * (len - 1)); for (int i = 1; i < len; i++) { QPolygonF ctrls(4); QPointF pt0; QPointF pt1 = data[i-1]; QPointF pt2 = data[i]; QPointF pt3; ctrls[0] = pt1; ctrls[3] = pt2; double f1; double f2; if (i == 1) { pt0 = data[i-1]; pt3 = data[i+1]; f1 = looseness / 1.5; f2 = looseness / 3.0; }else if (i == len - 1) { pt0 = data[i-2]; pt3 = data[i]; f1 = looseness / 3.0; f2 = looseness / 1.5; }else{ pt0 = data[i-2]; pt3 = data[i+1]; f1 = looseness / 3.0; f2 = looseness / 3.0; } double d02 = QLineF(pt0, pt2).length(); double d12 = QLineF(pt1, pt2).length(); double d13 = QLineF(pt1, pt3).length(); bool b1 = d02 < d12 * 3.0; bool b2 = d13 < d12 * 3.0; if (!(b1 && b2)) { f1 = d12 / d02 / 2.0; f2 = d12 / d13 / 2.0; if (b1) { f1 = f2; } if (b2) { f2 = f1; } } ctrls[1] = pt1 + (pt2 - pt0) * f1; ctrls[2] = pt2 + (pt1 - pt3) * f2; bezier_ctrls += ctrls; } return bezier_ctrls; } } ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/src/qtloops/beziers_qtwrap.h0000664000175000017500000000242114332253347016627 0ustar00jssjss// -*- mode: C++; -*- // Copyright (C) 2010 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef BEZIERS_QTWRAP_H #define BEZIERS_QTWRAP_H #include #include QPolygonF bezier_fit_cubic_single(const QPolygonF& data, double error); QPolygonF bezier_fit_cubic_multi(const QPolygonF& data, double error, unsigned max_beziers); QPolygonF bezier_fit_cubic_tight(const QPolygonF& data, double looseness); #endif ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/qtloops/isnan.h0000664000175000017500000000420314126044351014670 0ustar00jssjss// -*- mode: C++; -*- #ifndef __ISNAN_H__ #define __ISNAN_H__ /* * Temporary fix for various misdefinitions of isnan(). * isnan() is becoming undef'd in some .h files. * #include this last in your .cpp file to get it right. * * The problem is that isnan and isfinite are part of C99 but aren't part of * the C++ standard (which predates C99). * * Authors: * Inkscape groupies and obsessive-compulsives * * Copyright (C) 2004 authors * * Released under GNU GPL, read the file 'COPYING' for more information * * 2005 modification hereby placed in public domain. Probably supercedes the 2004 copyright * for the code itself. */ #include #include /* You might try changing the above to if you have problems. * Whether you use math.h or cmath, you may need to edit the .cpp file * and/or other .h files to use the same header file. */ #if defined(__isnan) # define isNaN(_a) (__isnan(_a)) /* MacOSX/Darwin definition < 10.4 */ #elif defined(WIN32) || defined(_isnan) || defined(_MSC_VER) # define isNaN(_a) (_isnan(_a)) /* Win32 definition */ #elif defined(isnan) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__osf__) || defined(__APPLE__) # define isNaN(_a) (isnan(_a)) /* GNU definition */ #else # define isNaN(_a) (std::isnan(_a)) #endif /* If the above doesn't work, then try (a != a). * Also, please report a bug as per http://www.inkscape.org/report_bugs.php, * giving information about what platform and compiler version you're using. */ #if defined(__isfinite) # define isFinite(_a) (__isfinite(_a)) /* MacOSX/Darwin definition < 10.4 */ #elif defined(WIN32) || defined(_finite) || defined(_MSC_VER) # define isFinite(_a) (_finite(_a)) /* Win32 definition */ #elif defined(__sgi) # define isFinite(_a) (_isfinite(_a)) #elif defined(isfinite) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__APPLE__) # define isFinite(_a) (isfinite(_a)) #elif defined(__osf__) # define isFinite(_a) (finite(_a) && !isNaN(_a)) #else # define isFinite(_a) (std::isfinite(_a)) #endif /* If the above doesn't work, then try (finite(_a) && !isNaN(_a)) or (!isNaN((_a) - (_a))). */ #endif /* __ISNAN_H__ */ ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/qtloops/numpyfuncs.cpp0000664000175000017500000000557114126044351016333 0ustar00jssjss// Copyright (C) 2011 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include "numpyfuncs.h" #include #include "isnan.h" namespace { template inline T min(T a, T b) { return (a::quiet_NaN(); } else { if( average ) out[i / binning] = sum / ct; else out[i / binning] = sum; } sum = 0; ct = 0; } } } void rollingAverage(const Numpy1DObj& indata, const Numpy1DObj* weights, int width, int* numoutbins, double** outdata) { // round up output size int size = indata.dim; if( weights != 0 ) size = min( weights->dim, size ); // create output array *numoutbins = size; double *out = new double[size]; *outdata = out; for(int i = 0 ; i < size; ++i) { double ct = 0.; double sum = 0.; // iterate over rolling width for(int di = -width; di <= width; ++di) { const int ri = di+i; if ( ri >= 0 && ri < size && isFinite(indata(ri)) ) { if( weights != 0 ) { // weighted average const double w = (*weights)(ri); if( isFinite(w) ) { ct += w; sum += w*indata(ri); } } else { // standard average ct += 1; sum += indata(ri); } } } if( ct != 0. ) out[i] = sum / ct; else out[i] = std::numeric_limits::quiet_NaN(); } } ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/qtloops/numpyfuncs.h0000664000175000017500000000263514126044351015776 0ustar00jssjss// Copyright (C) 2011 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef NUMPYFUNCS_HH #define NUMPYFUNCS_HH #include "qtloops_helpers.h" // bin up data given by factor. If average is True, then divide by number // of elements in bins void binData(const Numpy1DObj& indata, int binning, bool average, int* numoutbins, double** outdata); // rolling average calculation // weights is an optional weighting array void rollingAverage(const Numpy1DObj& indata, const Numpy1DObj* weights, int width, int* numoutbins, double** outdata); #endif ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/qtloops/polygonclip.cpp0000664000175000017500000001243714126044351016462 0ustar00jssjss// Copyright (C) 2010 Jeremy Sanders // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License // as published by the Free Software Foundation; either version 2 // of the License, or (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA // 02110-1301, USA. //////////////////////////////////////////////////////////////////// // This code uses the Sutherland Hodgman algorithm to clip a polygon // It is inspired by another version by Sjaak Priester // see http://www.codeguru.com/Cpp/misc/misc/graphics/article.php/c8965/ #include #include "polygonclip.h" using std::abs; // macro to clip point against edge // - edge: name of edge for clipping // - isinside: test whether point is inside edge // - intercept: function to calculate coordinate where line // crosses edge // - next: function to call next to clip point #define CLIPEDGE(edge, isinside, intercept, next) \ void edge##ClipPoint(const QPointF& pt) \ { \ QPointF& lastpt = edge##last; \ if( edge##is1st ) \ { \ /* do nothing */ \ edge##1st = pt; \ edge##is1st = false; \ } \ else \ { \ if( isinside(pt) ) \ { \ if( ! isinside(lastpt) ) \ /* this point inside and last point outside */ \ next( intercept(clip.edge(), pt, lastpt) ); \ next(pt); \ } \ else \ { \ if( isinside(lastpt) ) \ /* this point outside and last point inside */ \ next( intercept(clip.edge(), pt, lastpt) ); \ /* else do nothing if both outside */ \ } \ } \ \ lastpt = pt; \ } // tolerance for points being the same #define TOL 1e-5 namespace { inline QPointF interceptVert(qreal horzval, const QPointF& pt1, const QPointF& pt2) { const qreal gradient = (pt2.y()-pt1.y()) / (pt2.x()-pt1.x()); return QPointF(horzval, (horzval - pt1.x())*gradient + pt1.y()); } inline QPointF interceptHorz(qreal vertval, const QPointF& pt1, const QPointF& pt2) { const qreal gradient = (pt2.x()-pt1.x()) / (pt2.y()-pt1.y()); return QPointF((vertval - pt1.y())*gradient + pt1.x(), vertval); } // greater than or close inline int gtclose(qreal v1, qreal v2) { return v1 > v2 || abs(v1-v2) < TOL; } // less than or close inline int ltclose(qreal v1, qreal v2) { return v1 < v2 || abs(v1-v2) < TOL; } struct State { State(const QRectF& rect, QPolygonF& out) : clip(rect), output(out), leftis1st(true), rightis1st(true), topis1st(true), bottomis1st(true) { } // tests for whether point is inside of outside of each side inline bool insideBottom(const QPointF& pt) const { return ltclose(pt.y(), clip.bottom()); } inline bool insideTop(const QPointF& pt) const { return gtclose(pt.y(), clip.top()); } inline bool insideRight(const QPointF& pt) const { return ltclose(pt.x(), clip.right()); } inline bool insideLeft(const QPointF& pt) const { return gtclose(pt.x(), clip.left()); } // add functions for clipping to each edge CLIPEDGE(bottom, insideBottom, interceptHorz, writeClipPoint) CLIPEDGE(top, insideTop, interceptHorz, bottomClipPoint) CLIPEDGE(right, insideRight, interceptVert, topClipPoint) CLIPEDGE(left, insideLeft, interceptVert, rightClipPoint) // finally writes to output void writeClipPoint(const QPointF& pt) { // don't add the same point if( output.empty() || abs(pt.x() - output.last().x()) > TOL || abs(pt.y() - output.last().y()) > TOL ) output << pt; } /* location of corners of clip rectangle */ QRectF clip; /* output points are added here */ QPolygonF &output; /* last points added */ QPointF leftlast, rightlast, toplast, bottomlast; /* first point for each stage */ QPointF left1st, right1st, top1st, bottom1st; /* whether this is the 1st point through */ bool leftis1st, rightis1st, topis1st, bottomis1st; }; } void polygonClip(const QPolygonF& inpoly, const QRectF& cliprect, QPolygonF& out) { // construct initial state State state(cliprect, out); // do the clipping for(QPolygonF::const_iterator pt = inpoly.begin(); pt != inpoly.end(); ++pt) { state.leftClipPoint(*pt); } // complete state.leftClipPoint(state.left1st); state.rightClipPoint(state.right1st); state.topClipPoint(state.top1st); state.bottomClipPoint(state.bottom1st); } void plotClippedPolygon(QPainter& painter, QRectF rect, const QPolygonF& inpoly, bool autoexpand) { if ( autoexpand ) { const qreal lw = painter.pen().widthF(); if( painter.pen().style() != Qt::NoPen ) rect.adjust(-lw, -lw, lw, lw); } QPolygonF plt; polygonClip(inpoly, rect, plt); painter.drawPolygon(plt); } ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/qtloops/polygonclip.h0000664000175000017500000000241514126044351016122 0ustar00jssjss// -*- mode: C++; -*- // Copyright (C) 2010 Jeremy Sanders // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License // as published by the Free Software Foundation; either version 2 // of the License, or (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA // 02110-1301, USA. //////////////////////////////////////////////////////////////////// #ifndef POLYGONCLIP_HH #define POLYGONCLIP_HH #include #include #include #include // clip input polygon to clipping rectangle, filling outpoly void polygonClip(const QPolygonF& inpoly, const QRectF& cliprect, QPolygonF& outpoly); // plot a clipped polygon to painter void plotClippedPolygon(QPainter& painter, QRectF rect, const QPolygonF& inpoly, bool autoexpand = true); #endif ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/qtloops/polylineclip.cpp0000664000175000017500000003536614126044351016634 0ustar00jssjss// Copyright (C) 2010 Jeremy Sanders // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License // as published by the Free Software Foundation; either version 2 // of the License, or (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA // 02110-1301, USA. //////////////////////////////////////////////////////////////////// #include #include #include #include #include #include using std::fabs; // Cohen-Sutherland line clipping algorithm // codes used classify endpoints are combinations of these #define LEFT 1 #define RIGHT 2 #define TOP 4 #define BOTTOM 8 namespace { // compute intersection with horizontal line inline QPointF horzIntersection(qreal yval, const QPointF& pt1, const QPointF& pt2) { if( pt1.y() == pt2.y() ) // line is vertical return QPointF( pt1.x(), yval ); else return QPointF( pt1.x() + (yval-pt1.y()) * (pt2.x()-pt1.x()) / (pt2.y()-pt1.y()), yval ); } // compute intersection with vertical line inline QPointF vertIntersection(qreal xval, const QPointF& pt1, const QPointF& pt2) { if( pt1.x() == pt2.x() ) // line is horizontal return QPointF( xval, pt1.y() ); else return QPointF( xval, pt1.y() + (xval-pt1.x()) * (pt2.y()-pt1.y()) / (pt2.x()-pt1.x()) ); } // is difference between points very small? inline bool smallDelta(const QPointF& pt1, const QPointF& pt2) { return fabs(pt1.x() - pt2.x()) < 0.01 && fabs(pt1.y()- pt2.y()) < 0.01; } template T sqr(T v) { return v*v; } // private class for helping clip class _Clipper { public: _Clipper(const QRectF& cliprect); unsigned computeCode(const QPointF& pt) const; void fixPt(QPointF& pt) const; bool clipLine(QPointF& pt1, QPointF& pt2) const; private: QRectF clip; }; // This class is use to separate out the clipping of polylines // overrite emitPolyline to handle the clipped part of the original // polyline class _PolyClipper { public: _PolyClipper(QRectF clip) : _clipper(clip) {} virtual ~_PolyClipper() {}; // override this to draw the output polylines virtual void emitPolyline(const QPolygonF& poly) = 0; // do clipping on the polyline void clipPolyline(const QPolygonF& poly); private: _Clipper _clipper; }; } //////////////////////////////////////////////////////////////////////// _Clipper::_Clipper(const QRectF& cliprect) : clip(cliprect) { } // compute the Cohen-Sutherland code unsigned _Clipper::computeCode(const QPointF& pt) const { unsigned code = 0; if (pt.x() < clip.left()) code |= LEFT; else if (pt.x() > clip.right()) code |= RIGHT; if (pt.y() < clip.top()) code |= TOP; else if (pt.y() > clip.bottom()) code |= BOTTOM; return code; } // get consistent clipping on different platforms by making line // edges meet clipping box if close void _Clipper::fixPt(QPointF& pt) const { if( fabs(pt.x() - clip.left()) < 1e-4 ) pt.setX(clip.left()); if( fabs(pt.x() - clip.right()) < 1e-4 ) pt.setX(clip.right()); if( fabs(pt.y() - clip.top()) < 1e-4 ) pt.setY(clip.top()); if( fabs(pt.y() - clip.bottom()) < 1e-4 ) pt.setY(clip.bottom()); } // modifies points, returning true if okay to accept bool _Clipper::clipLine(QPointF& pt1, QPointF& pt2) const { // fixup ends to meet clip box if close fixPt(pt1); fixPt(pt2); unsigned code1 = computeCode(pt1); unsigned code2 = computeCode(pt2); // repeat until points are at edge of box // bail out if we repeat too many times (avoid numerical issues) for(unsigned count = 0 ; count < 16 ; count++ ) { if( (code1 | code2) == 0 ) { // no more clipping required - inside return true; } else if( (code1 & code2) != 0 ) { // line should not be drawn - outside return false; } else { // compute intersection // which point to compute for? const unsigned code = (code1 != 0) ? code1 : code2; // get intersection new point and new code for line QPointF pt; if( code & LEFT ) pt = vertIntersection(clip.left(), pt1, pt2); else if( code & RIGHT ) pt = vertIntersection(clip.right(), pt1, pt2); else if( code & TOP ) pt = horzIntersection(clip.top(), pt1, pt2); else if ( code & BOTTOM ) pt = horzIntersection(clip.bottom(), pt1, pt2); // update point as intersection if( code == code1 ) { // changed first point pt1 = pt; code1 = computeCode(pt1); } else { // changed second point pt2 = pt; code2 = computeCode(pt2); } } } // loop return false; } bool clipLine(const QRectF& clip, QPointF& pt1, QPointF& pt2) { _Clipper clipper(clip); return clipper.clipLine(pt1, pt2); } ////////////////////////////////////////////////////////////////////// void _PolyClipper::clipPolyline(const QPolygonF& poly) { // exit if fewer than 2 points in polygon if ( poly.size() < 2 ) return; // output goes here QPolygonF pout; QPolygonF::const_iterator polyiter = poly.begin(); QPointF lastpt = *polyiter; polyiter++; for( ; polyiter != poly.end(); ++polyiter ) { QPointF p1 = lastpt; QPointF p2 = *polyiter; bool plotline = _clipper.clipLine(p1, p2); if( plotline ) { if( pout.isEmpty() ) { // add first line pout << p1; if( ! smallDelta(p1, p2) ) pout << p2; } else { if( p1 == pout.last() ) { if( ! smallDelta(p1, p2) ) // extend polyline pout << p2; } else { // paint existing line if( pout.size() >= 2 ) emitPolyline(pout); // start new line pout.clear(); pout << p1; if( ! smallDelta(p1, p2) ) pout << p2; } } } else { // line isn't in region, so ignore results from clip function // paint existing line if( pout.size() >= 2 ) emitPolyline(pout); // cleanup pout.clear(); } lastpt = *polyiter; } if( pout.size() >= 2 ) emitPolyline(pout); } // class used for drawing clipped polylines class PlotDrawCallback : public _PolyClipper { public: PlotDrawCallback(QRectF clip, QPainter& painter) : _PolyClipper(clip), _painter(painter) {} void emitPolyline(const QPolygonF& poly) { _painter.drawPolyline(poly); } private: QPainter& _painter; }; // take polyline and paint to painter, clipping void plotClippedPolyline(QPainter& painter, QRectF clip, const QPolygonF& poly, bool autoexpand) { // if autoexpand, expand rectangle by line width if ( autoexpand ) { const qreal lw = painter.pen().widthF(); clip.adjust(-lw, -lw, lw, lw); } PlotDrawCallback pcb(clip, painter); pcb.clipPolyline(poly); } ////////////////////////////////////////////////////// // clip polyline and add polyines clipped to a vector class PolyAddCallback : public _PolyClipper { public: PolyAddCallback(QRectF clip) : _PolyClipper(clip) {} void emitPolyline(const QPolygonF& poly) { polys.push_back(poly); } public: QVector polys; }; QVector clipPolyline(QRectF clip, const QPolygonF& poly) { PolyAddCallback pcb(clip); pcb.clipPolyline(poly); return pcb.polys; } ////////////////////////////////////////////////////// typedef QVector PolyVector; // clip polygon, adding clipped parts to output vector of polygons class _LineLabClipper : public _PolyClipper { public: _LineLabClipper(QRectF cliprect, PolyVector& polyvec) : _PolyClipper(cliprect), _polyvec(polyvec) { } void emitPolyline(const QPolygonF& poly) { _polyvec.append(poly); } private: PolyVector& _polyvec; }; /////////////////////////////////////////////////////// // Check whether polygons intersect // http://stackoverflow.com/questions/10962379/how-to-check-intersection-between-2-rotated-rectangles // note: requires clockwise polygons bool doPolygonsIntersect(const QPolygonF& a, const QPolygonF& b) { for(auto const& poly : {a, b}) { QPointF prevpt(poly.last()); for(auto const& currpt : poly) { // normal to line segment const double normx = currpt.y()-prevpt.y(); const double normy = prevpt.x()-currpt.x(); double minA = std::numeric_limits::max(); double maxA = std::numeric_limits::lowest(); for(auto const& pt : a) { const double proj = normx*pt.x() + normy*pt.y(); minA = std::min(minA, proj); maxA = std::max(maxA, proj); } double minB = std::numeric_limits::max(); double maxB = std::numeric_limits::lowest(); for(auto const& pt : b) { const double proj = normx*pt.x() + normy*pt.y(); minB = std::min(minB, proj); maxB = std::max(maxB, proj); } if(maxA= totlength*frac) { // interpolate along edge const double fseg = (totlength*frac - length) / seglength; const double xp = poly[i-1].x()*(1-fseg) + poly[i].x()*fseg; const double yp = poly[i-1].y()*(1-fseg) + poly[i].y()*fseg; const double angle = _rotatelabels ? std::atan2( poly[i].y() - poly[i-1].y(), poly[i].x() - poly[i-1].x() ) : 0.; return RotatedRectangle(xp, yp, size.width(), size.height(), angle); } length += seglength; } // shouldn't get here return RotatedRectangle(); } // these are the positions where labels might be placed namespace { #define NUM_LABEL_POSITIONS 7 const double label_positions[NUM_LABEL_POSITIONS] = { 0.5, 1/3., 2/3., 0.4, 0.6, 0.25, 0.75}; } void LineLabeller::process() { RectangleOverlapTester rtest; // iterate over each set of polylines for(int polyseti = 0; polyseti < _polys.size(); ++polyseti) { const PolyVector& pv = _polys[polyseti]; QSizeF size = _textsizes[polyseti]; for(int polyi = 0; polyi < pv.size(); ++polyi) { for(int posi = 0; posi < NUM_LABEL_POSITIONS; ++posi) { const RotatedRectangle r = findLinePosition(pv[polyi], label_positions[posi], size); if( ! r.isValid() ) break; if( ! rtest.willOverlap(r) ) { drawAt(polyseti, r); rtest.addRect(r); break; // only add label once } } // positions } // polylines in set of polylines } // sets of polylines } QVector LineLabeller::getPolySet(int i) const { if( i >= 0 && i < _polys.size() ) return _polys[i]; return QVector(); } ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/qtloops/polylineclip.h0000664000175000017500000000711714126044351016272 0ustar00jssjss// -*- mode: C++; -*- // Copyright (C) 2010 Jeremy Sanders // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License // as published by the Free Software Foundation; either version 2 // of the License, or (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA // 02110-1301, USA. //////////////////////////////////////////////////////////////////// #ifndef POLYLINECLIP_HH #define POLYLINECLIP_HH #include #include #include #include #include // clip a line made up of the points given, returning true // if is in region or false if not bool clipLine(const QRectF& clip, QPointF& pt1, QPointF& pt2); // plot a polyline poly on the painter, clipping by the rectangle given // if autoexpand is true, then the rectangle is expanded by the line width void plotClippedPolyline(QPainter& painter, QRectF clip, const QPolygonF& poly, bool autoexpand = true); // clip polyline to rectangle // return list of lines to plot QVector clipPolyline(QRectF clip, const QPolygonF& poly); // Do the polygons intersect? bool doPolygonsIntersect(const QPolygonF& a, const QPolygonF& b); // class for describing a rectangle with a rotation angle struct RotatedRectangle { // a lot of boilerplate so it can go in QVector RotatedRectangle() : cx(0), cy(0), xw(0), yw(0), angle(0) {} RotatedRectangle(double _cx, double _cy, double _xw, double _yw, double _angle) : cx(_cx), cy(_cy), xw(_xw), yw(_yw), angle(_angle) {} RotatedRectangle(const RotatedRectangle& o) : cx(o.cx), cy(o.cy), xw(o.xw), yw(o.yw), angle(o.angle) {} RotatedRectangle &operator=(const RotatedRectangle& o) { cx = o.cx; cy = o.cy; xw=o.xw; yw=o.yw; angle=o.angle; return *this; } bool isValid() const { return xw > 0 && yw > 0; } void rotate(double dtheta) { angle += dtheta; } void rotateAboutOrigin(double dtheta); void translate(double dx, double dy) { cx+=dx; cy+=dy; } QPolygonF makePolygon() const; double cx, cy, xw, yw, angle; }; // for labelling of sets of contour lines class LineLabeller { public: LineLabeller(QRectF cliprect, bool rotatelabels); virtual ~LineLabeller(); // override this to receive the label to draw virtual void drawAt(int idx, RotatedRectangle r); void addLine(const QPolygonF& poly, QSizeF textsize); void process(); int getNumPolySets() const { return _polys.size(); }; QVector getPolySet(int i) const; private: RotatedRectangle findLinePosition(const QPolygonF& poly, double frac, QSizeF size); private: QRectF _cliprect; bool _rotatelabels; QVector< QVector > _polys; QVector _textsizes; }; class RectangleOverlapTester { public: RectangleOverlapTester(); bool willOverlap(const RotatedRectangle& rect) const; void addRect(const RotatedRectangle& rect) { _rects.append(rect); }; void reset() { _rects.clear(); }; // debug by drawing all the rectangles void debug(QPainter& painter) const; private: QVector _rects; }; #endif ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/src/qtloops/qtloops.cpp0000664000175000017500000003520514332253347015630 0ustar00jssjss// Copyright (C) 2009 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include #include "qtloops.h" #include "isnan.h" #include "polylineclip.h" #include "polygonclip.h" #include #include #include #include #include #include #include namespace { // is difference between points very small? inline bool smallDelta(const QPointF& pt1, const QPointF& pt2) { return fabs(pt1.x() - pt2.x()) < 0.01 && fabs(pt1.y()- pt2.y()) < 0.01; } template inline T min(T a, T b, T c, T d) { return std::min( std::min(a, b), std::min(c, d) ); } template inline T clipval(T val, T minv, T maxv) { if( val < minv ) return minv; if( val > maxv ) return maxv; return val; } template void putinorder(T& a, T& b) { if(a>b) std::swap(a, b); } } void addNumpyToPolygonF(QPolygonF& poly, const Tuple2Ptrs& d) { // iterate over rows until none left const int numcols = d.data.size(); QPointF lastpt(-1e6, -1e6); for(int row=0 ; ; ++row) { bool ifany = false; // the numcols-1 makes sure we don't get odd numbers of columns for(int col=0; col < (numcols-1); col += 2) { // add point if point in two columns if( row < d.dims[col] && row < d.dims[col+1] ) { const QPointF pt(d.data[col][row], d.data[col+1][row]); if( ! smallDelta(pt, lastpt) ) { poly << pt; lastpt = pt; } ifany = true; } } // exit loop if no more columns if(! ifany ) break; } } void addNumpyPolygonToPath(QPainterPath &path, const Tuple2Ptrs& d, const QRectF* clip) { const int numcols = d.data.size(); for(int row=0 ; ; ++row) { bool ifany = false; // output polygon QPolygonF poly; // the numcols-1 makes sure we don't get odd numbers of columns for(int col=0; col < (numcols-1); col += 2) { // add point if point in two columns if( row < d.dims[col] && row < d.dims[col+1] ) { const QPointF pt(d.data[col][row], d.data[col+1][row]); poly << pt; ifany = true; } } if( ifany ) { if( clip != 0 ) { QPolygonF clippedpoly; polygonClip(poly, *clip, clippedpoly); path.addPolygon(clippedpoly); } else { path.addPolygon(poly); } path.closeSubpath(); } else { // exit loop if no more columns break; } } } // Scale path by scale given. Puts output in out. QPainterPath scalePath(const QPainterPath& path, qreal scale) { QPainterPath out; const int count = path.elementCount(); for(int i=0; igetCoords(&x1, &y1, &x2, &y2); cliprect.setCoords(x1, y1, x2, y2); } QRectF pathbox = path.boundingRect(); cliprect.adjust(pathbox.left(), pathbox.top(), pathbox.bottom(), pathbox.right()); // keep track of duplicate points QPointF lastpt(-1e6, -1e6); // keep original transformation for restoration after each iteration QTransform origtrans(painter.worldTransform()); // number of iterations int size = std::min(x.dim, y.dim); // if few color points, trim down number of paths if( colorimg != 0 ) size = std::min(size, colorimg->width()); // too few scaling points if( scaling != 0 ) size = std::min(size, scaling->dim); // draw each path for(int i = 0; i < size; ++i) { const QPointF pt(x(i), y(i)); if( cliprect.contains(pt) && ! smallDelta(lastpt, pt) ) { painter.translate(pt); if( colorimg != 0 ) { // get color from pixel and create a new brush QBrush b( QColor::fromRgba(colorimg->pixel(i, 0)) ); painter.setBrush(b); } if( scaling == 0 ) { painter.drawPath(path); } else { // scale point if requested const qreal s = (*scaling)(i); if( scaleline ) { painter.scale(s, s); painter.drawPath(path); } else { painter.drawPath( scalePath(path, s) ); } } painter.setWorldTransform(origtrans); lastpt = pt; } } } void plotLinesToPainter(QPainter& painter, const Numpy1DObj& x1, const Numpy1DObj& y1, const Numpy1DObj& x2, const Numpy1DObj& y2, const QRectF* clip, bool autoexpand) { const int maxsize = min(x1.dim, x2.dim, y1.dim, y2.dim); // if autoexpand, expand rectangle by line width QRectF clipcopy; if ( clip != 0 && autoexpand ) { const qreal lw = painter.pen().widthF(); qreal x1, y1, x2, y2; clip->getCoords(&x1, &y1, &x2, &y2); clipcopy.setCoords(x1, y1, x2, y2); clipcopy.adjust(-lw, -lw, lw, lw); } if( maxsize != 0 ) { QVector lines; for(int i = 0; i < maxsize; ++i) { QPointF pt1(x1(i), y1(i)); QPointF pt2(x2(i), y2(i)); if( clip != 0 ) { if( clipLine(clipcopy, pt1, pt2) ) lines << QLineF(pt1, pt2); } else lines << QLineF(pt1, pt2); } painter.drawLines(lines); } } void plotBoxesToPainter(QPainter& painter, const Numpy1DObj& x1, const Numpy1DObj& y1, const Numpy1DObj& x2, const Numpy1DObj& y2, const QRectF* clip, bool autoexpand) { // if autoexpand, expand rectangle by line width QRectF clipcopy(QPointF(-32767,-32767), QPointF(32767,32767)); if ( clip != 0 && autoexpand ) { const qreal lw = painter.pen().widthF(); qreal x1, y1, x2, y2; clip->getCoords(&x1, &y1, &x2, &y2); clipcopy.setCoords(x1, y1, x2, y2); clipcopy.adjust(-lw, -lw, lw, lw); } const int maxsize = min(x1.dim, x2.dim, y1.dim, y2.dim); QVector rects; for(int i = 0; i < maxsize; ++i) { QPointF pt1(x1(i), y1(i)); QPointF pt2(x2(i), y2(i)); const QRectF rect(pt1, pt2); if( clipcopy.intersects(rect) ) { rects << clipcopy.intersected(rect); } } if( ! rects.isEmpty() ) painter.drawRects(rects); } void addCubicsToPainterPath(QPainterPath& path, const QPolygonF& poly) { QPointF lastpt(-999999, -999999); for(int i=0; i(img.scanLine(yw-y-1)); for(int x=0; x= QT_VERSION_CHECK(5, 9, 0) // recent qt version // just change the format to the non-transparent version img.reinterpretAsFormat(QImage::Format_RGB32); #else // do slower conversion of data return img.convertToFormat(QImage::Format_RGB32); #endif } return img; } void applyImageTransparancy(QImage& img, const Numpy2DObj& data) { const int xw = std::min(data.dims[1], img.width()); const int yw = std::min(data.dims[0], img.height()); for(int y=0; y(img.scanLine(yw-y-1)); for(int x=0; x(outimg.scanLine(oy)); const QRgb* iscanline = reinterpret_cast(img.scanLine(iy)); int ix=0; for(int ox=0; ox // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include "qtloops_helpers.h" #include #include #include #include #include class QtLoops { public: QtLoops() {}; }; // add sets of points to a QPolygonF void addNumpyToPolygonF(QPolygonF& poly, const Tuple2Ptrs& v); // add sets of polygon points to a path void addNumpyPolygonToPath(QPainterPath &path, const Tuple2Ptrs& d, const QRectF* clip = 0); // Scale path by scale given. Puts output in out. QPainterPath scalePath(const QPainterPath& path, qreal scale); // plot paths to painter // x and y locations are given in x and y // if scaling is not 0, is an array to scale the data points by // if colorimg is not 0, is a Nx1 image containing color points for path fills // clip is a clipping rectangle if set void plotPathsToPainter(QPainter& painter, QPainterPath& path, const Numpy1DObj& x, const Numpy1DObj& y, const Numpy1DObj* scaling = 0, const QRectF* clip = 0, const QImage* colorimg = 0, bool scaleline = false); void plotLinesToPainter(QPainter& painter, const Numpy1DObj& x1, const Numpy1DObj& y1, const Numpy1DObj& x2, const Numpy1DObj& y2, const QRectF* clip = 0, bool autoexpand = true); void plotBoxesToPainter(QPainter& painter, const Numpy1DObj& x1, const Numpy1DObj& y1, const Numpy1DObj& x2, const Numpy1DObj& y2, const QRectF* clip = 0, bool autoexpand = true); // add polygon to painter path as a cubic void addCubicsToPainterPath(QPainterPath& path, const QPolygonF& poly); QImage numpyToQImage(const Numpy2DObj& data, const Numpy2DIntObj &colors, bool forcetrans = false); void applyImageTransparancy(QImage& img, const Numpy2DObj& data); QImage resampleNonlinearImage(const QImage& img, int x0, int y0, int x1, int y1, const Numpy1DObj& xedge, const Numpy1DObj& yedge); // plot image as a set of rectangles void plotImageAsRects(QPainter& painter, const QRectF& bounds, const QImage& img); // plot a non linear image as a set of boxes // the coordinates for each edge are given in xedges/yedges void plotNonlinearImageAsBoxes(QPainter& painter, const QImage& img, const Numpy1DObj& xedges, const Numpy1DObj& yedges); #endif ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/src/qtloops/qtloops.sip0000664000175000017500000001757314332253347015651 0ustar00jssjss// Copyright (C) 2009 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// %Module(name=qtloops) %Import(name=QtCore/QtCoremod.sip) %Import(name=QtGui/QtGuimod.sip) %ModuleHeaderCode #include %End %PostInitialisationCode do_numpy_init_package(); %End class QtLoops { %TypeHeaderCode #include #include #include #include #include %End public: QtLoops(); }; void addNumpyToPolygonF(QPolygonF&, ...); %MethodCode { try { Tuple2Ptrs t(a1); addNumpyToPolygonF(*a0, t); } catch( const char *msg ) { sipIsErr = 1; PyErr_SetString(PyExc_TypeError, msg); } } %End void addNumpyPolygonToPath(QPainterPath&, const QRectF*, ...); %MethodCode { try { Tuple2Ptrs t(a2); addNumpyPolygonToPath(*a0, t, a1); } catch( const char *msg ) { sipIsErr = 1; PyErr_SetString(PyExc_TypeError, msg); } } %End QPainterPath scalePath(const QPainterPath& path, qreal scale); void plotPathsToPainter(QPainter&, QPainterPath&, SIP_PYOBJECT, SIP_PYOBJECT, SIP_PYOBJECT, const QRectF* clip=0, const QImage* colorimg=0, bool scaleline=false); %MethodCode { Numpy1DObj* scaling = 0; try { // x and y coordinates Numpy1DObj x(a2); Numpy1DObj y(a3); // a4 is scaling or None if (a4 != Py_None) { scaling = new Numpy1DObj(a4); } plotPathsToPainter(*a0, *a1, x, y, scaling, a5, a6, a7); } catch( const char *msg ) { sipIsErr = 1; PyErr_SetString(PyExc_TypeError, msg); } delete scaling; } %End void plotLinesToPainter(QPainter& painter, SIP_PYOBJECT, SIP_PYOBJECT, SIP_PYOBJECT, SIP_PYOBJECT, const QRectF* clip = 0, bool autoexpand = true); %MethodCode { try { Numpy1DObj x1(a1); Numpy1DObj y1(a2); Numpy1DObj x2(a3); Numpy1DObj y2(a4); plotLinesToPainter(*a0, x1, y1, x2, y2, a5, a6); } catch( const char *msg ) { sipIsErr = 1; PyErr_SetString(PyExc_TypeError, msg); } } %End void plotBoxesToPainter(QPainter& painter, SIP_PYOBJECT, SIP_PYOBJECT, SIP_PYOBJECT, SIP_PYOBJECT, const QRectF* clip = 0, bool autoexpand = true); %MethodCode { try { Numpy1DObj x1(a1); Numpy1DObj y1(a2); Numpy1DObj x2(a3); Numpy1DObj y2(a4); plotBoxesToPainter(*a0, x1, y1, x2, y2, a5, a6); } catch( const char *msg ) { sipIsErr = 1; PyErr_SetString(PyExc_TypeError, msg); } } %End void addCubicsToPainterPath(QPainterPath& path, const QPolygonF& poly); QImage numpyToQImage(SIP_PYOBJECT, SIP_PYOBJECT, bool forcetrans = false); %MethodCode { try { Numpy2DObj data(a0); Numpy2DIntObj colors(a1); QImage *img = new QImage( numpyToQImage(data, colors, a2) ); sipRes = img; } catch( const char *msg ) { sipIsErr = 1; PyErr_SetString(PyExc_TypeError, msg); } } %End void applyImageTransparancy(QImage& img, SIP_PYOBJECT); %MethodCode { try { Numpy2DObj data(a1); applyImageTransparancy(*a0, data); } catch( const char *msg ) { sipIsErr = 1; PyErr_SetString(PyExc_TypeError, msg); } } %End void polygonClip(const QPolygonF& inpoly, const QRectF& cliprect, QPolygonF& outpoly); void plotClippedPolygon(QPainter& painter, QRectF rect, const QPolygonF& inpoly, bool autoexpand = true); // polyline clipping code void plotClippedPolyline(QPainter& painter, QRectF clip, const QPolygonF& poly, bool autoexpand = true); // clip polyline to rectangle and return polylines QVector clipPolyline(QRectF clip, const QPolygonF& poly); // Do the polygons intersect? bool doPolygonsIntersect(const QPolygonF& a, const QPolygonF& b); // storing rotated rectangles struct RotatedRectangle { %TypeHeaderCode #include %End RotatedRectangle(double _cx, double _cy, double _xw, double _yw, double _angle); bool isValid() const; void rotate(double dtheta); void rotateAboutOrigin(double dtheta); void translate(double dx, double dy); QPolygonF makePolygon() const; double cx; double cy; double xw; double yw; double angle; }; // for labelling of sets of contour lines class LineLabeller { %TypeHeaderCode #include %End public: LineLabeller(QRectF cliprect, bool rotatelabels); virtual ~LineLabeller(); // override this to receive the label to draw virtual void drawAt(int idx, RotatedRectangle r); void addLine(const QPolygonF& poly, QSizeF textsize); void process(); int getNumPolySets() const; QVector getPolySet(int i) const; }; class RectangleOverlapTester { %TypeHeaderCode #include %End public: RectangleOverlapTester(); bool willOverlap(const RotatedRectangle& rect) const; void addRect(const RotatedRectangle& rect); void reset(); void debug(QPainter& painter) const; }; // bezier functions QPolygonF bezier_fit_cubic_single(const QPolygonF& data, double error); QPolygonF bezier_fit_cubic_multi(const QPolygonF& data, double error, unsigned max_beziers); QPolygonF bezier_fit_cubic_tight(const QPolygonF& data, double looseness); SIP_PYOBJECT binData(SIP_PYOBJECT data, int binning, bool average); %MethodCode try { Numpy1DObj d(a0); double* data; int numelem; binData(d, a1, a2, &numelem, &data); sipRes = doubleArrayToNumpy(data, numelem); delete[] data; } catch( const char *msg ) { sipIsErr = 1; PyErr_SetString(PyExc_TypeError, msg); } %End SIP_PYOBJECT rollingAverage(SIP_PYOBJECT data, SIP_PYOBJECT weights, int width); %MethodCode { Numpy1DObj* weightarray = 0; try { Numpy1DObj d(a0); if( a1 != Py_None ) { weightarray = new Numpy1DObj(a1); } double* data; int numelem; rollingAverage(d, weightarray, a2, &numelem, &data); sipRes = doubleArrayToNumpy(data, numelem); delete[] data; } catch( const char *msg ) { sipIsErr = 1; PyErr_SetString(PyExc_TypeError, msg); } delete weightarray; } %End QImage resampleNonlinearImage(const QImage& img, int x0, int y0, int x1, int y1, SIP_PYOBJECT, SIP_PYOBJECT); %MethodCode { try { Numpy1DObj xpts(a5); Numpy1DObj ypts(a6); QImage *oimg = new QImage( resampleNonlinearImage(*a0, a1, a2, a3, a4, xpts, ypts) ); sipRes = oimg; } catch( const char *msg ) { sipIsErr = 1; PyErr_SetString(PyExc_TypeError, msg); } } %End void plotImageAsRects(QPainter& painter, const QRectF& bounds, const QImage& img); void plotNonlinearImageAsBoxes(QPainter& painter, const QImage& img, SIP_PYOBJECT, SIP_PYOBJECT); %MethodCode { try { Numpy1DObj xpts(a2); Numpy1DObj ypts(a3); plotNonlinearImageAsBoxes(*a0, *a1, xpts, ypts); //sipRes = oimg; } catch( const char *msg ) { sipIsErr = 1; PyErr_SetString(PyExc_TypeError, msg); } } %End ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/qtloops/qtloops_helpers.cpp0000664000175000017500000000756114126044351017350 0ustar00jssjss// Copyright (C) 2009 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include "Python.h" #define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION #include "numpy/arrayobject.h" #include "qtloops_helpers.h" namespace { // python3 numpy import_array is a macro with a return (how stupid), // so we have to wrap it up to get it to portably compile #if PY_MAJOR_VERSION >= 3 void* do_import() { import_array(); return 0; } #else void do_import() { import_array(); } #endif } void do_numpy_init_package() { do_import(); } Tuple2Ptrs::Tuple2Ptrs(PyObject* tuple) { const size_t numitems = PyTuple_Size(tuple); for(size_t i=0; i != numitems; ++i) { // access python tuple item PyObject* obj = PyTuple_GetItem(tuple, i); // convert to C array (stored in objdata) PyArrayObject *array = (PyArrayObject*) PyArray_ContiguousFromObject(obj, NPY_DOUBLE, 1, 1); if( array == NULL ) { throw "Cannot covert parameter to 1D numpy array"; } data.push_back( (double*)PyArray_DATA(array) ); dims.push_back( PyArray_DIMS(array)[0] ); _arrays.push_back( (PyObject*)array ); } } Tuple2Ptrs::~Tuple2Ptrs() { // delete array objects for(int i=0; i < _arrays.size(); ++i) { Py_DECREF(_arrays[i]); _arrays[i] = 0; data[i] = 0; } } Numpy1DObj::Numpy1DObj(PyObject* array) : data(0), _array(0) { PyArrayObject *arrayobj = (PyArrayObject*) PyArray_ContiguousFromObject(array, NPY_DOUBLE, 1, 1); if( arrayobj == NULL ) { throw "Cannot covert item to 1D numpy array"; } data = (double*)PyArray_DATA(arrayobj); dim = PyArray_DIMS(arrayobj)[0]; _array = (PyObject*)arrayobj; } Numpy1DObj::~Numpy1DObj() { Py_XDECREF(_array); _array = 0; data = 0; } Numpy2DObj::Numpy2DObj(PyObject* array) : data(0), _array(0) { PyArrayObject *arrayobj = (PyArrayObject*) PyArray_ContiguousFromObject(array, NPY_DOUBLE, 2, 2); if( arrayobj == NULL ) { throw "Cannot convert to 2D numpy array"; } data = (double*)PyArray_DATA(arrayobj); dims[0] = PyArray_DIMS(arrayobj)[0]; dims[1] = PyArray_DIMS(arrayobj)[1]; _array = (PyObject*)arrayobj; } Numpy2DObj::~Numpy2DObj() { Py_XDECREF(_array); _array = 0; data = 0; } Numpy2DIntObj::Numpy2DIntObj(PyObject* array) : data(0), _array(0) { PyArrayObject *arrayobj = (PyArrayObject*) PyArray_ContiguousFromObject(array, NPY_INT, 2, 2); if( arrayobj == NULL ) { throw "Cannot convert to 2D numpy integer array. " "Requires numpy.intc argument."; } data = (int*)PyArray_DATA(arrayobj); dims[0] = PyArray_DIMS(arrayobj)[0]; dims[1] = PyArray_DIMS(arrayobj)[1]; _array = (PyObject*)arrayobj; } Numpy2DIntObj::~Numpy2DIntObj() { Py_XDECREF(_array); _array = 0; data = 0; } PyObject* doubleArrayToNumpy(const double* d, int len) { npy_intp dims[1]; dims[0] = len; PyObject* n = PyArray_SimpleNew(1, dims, NPY_DOUBLE); double* pydata = (double*)PyArray_DATA((PyArrayObject*)(n)); for(int i = 0; i < len; ++i) pydata[i] = d[i]; return n; } ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/qtloops/qtloops_helpers.h0000664000175000017500000000521714126044351017011 0ustar00jssjss// -*- mode: C++; -*- #ifndef QTLOOPS_HELPERS_H #define QTLOOPS_HELPERS_H // Copyright (C) 2009 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include "Python.h" #include #define DEBUG false void do_numpy_init_package(); // class for converting tuples to objects which clean themselves up // throws const char* if conversion failed class Tuple2Ptrs { public: Tuple2Ptrs(PyObject* tuple); ~Tuple2Ptrs(); // data in tuple are stored here QVector data; QVector dims; private: // these are the python objects made by PyArray_AsCArray QVector _arrays; }; // class for converting numpy array to an array class Numpy1DObj { public: Numpy1DObj(PyObject* array); ~Numpy1DObj(); const double* data; int dim; inline double operator()(const int x) const { if( DEBUG && (x < 0 || x >= dim) ) throw "Invalid index in array"; return data[x]; } private: PyObject* _array; }; // class for converting a 2D numpy array to an array class Numpy2DObj { public: Numpy2DObj(PyObject* array); ~Numpy2DObj(); const double* data; int dims[2]; inline double operator()(const int x, const int y) const { if( DEBUG && (x < 0 || x >= dims[0] || y < 0 || y >= dims[1]) ) throw "Invalid index in array"; return data[x+y*dims[1]]; } private: PyObject* _array; }; // class for converting a 2D numpy array to an integer array class Numpy2DIntObj { public: Numpy2DIntObj(PyObject* array); ~Numpy2DIntObj(); const int* data; int dims[2]; inline int operator()(const int x, const int y) const { if( DEBUG && (x < 0 || x >= dims[0] || y < 0 || y >= dims[1]) ) throw "Invalid index in array"; return data[x+y*dims[1]]; } private: PyObject* _array; }; PyObject* doubleArrayToNumpy(const double* d, int len); #endif ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.1845212 veusz-3.6.2/src/qtmml/0000775000175000017500000000000014376700261013047 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/qtmml/QtMmlDocument0000664000175000017500000000003114126044351015507 0ustar00jssjss#include "qtmmlwidget.h" ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/qtmml/QtMmlWidget0000664000175000017500000000003114126044351015154 0ustar00jssjss#include "qtmmlwidget.h" ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/qtmml/qtmml.sip0000664000175000017500000000637414126044351014722 0ustar00jssjss// Copyright (C) 2012 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// %Module(name=qtmml) %Import(name=QtCore/QtCoremod.sip) %Import(name=QtGui/QtGuimod.sip) %Import(name=QtWidgets/QtWidgetsmod.sip) %ModuleHeaderCode // we have to do this twice, so define as a template namespace { template void callSetContent(T* obj, const QString &txt, int *sipIsErr) { QString errormsg; int errorline, errorcol; bool retn; Py_BEGIN_ALLOW_THREADS; retn = obj->setContent(txt, &errormsg, &errorline, &errorcol); Py_END_ALLOW_THREADS; if( ! retn ) { // if fails, create an exception QByteArray extxt( QString("Error on line %1, column %2: \"%3\""). arg(errorline).arg(errorcol).arg(errormsg). toUtf8() ); PyObject *pystr = PyUnicode_DecodeUTF8(extxt.data(), extxt.size(), "ignore"); if( pystr != 0 ) { PyErr_SetObject(PyExc_ValueError, pystr); Py_DECREF(pystr); *sipIsErr = 1; } } } } %End class QtMmlWidget : QFrame { %TypeHeaderCode #include %End public: enum MmlFont { NormalFont, FrakturFont, SansSerifFont, ScriptFont, MonospaceFont, DoublestruckFont }; QtMmlWidget(QWidget *parent = 0); ~QtMmlWidget(); QString fontName(MmlFont type) const; void setFontName(MmlFont type, const QString &name); int baseFontPointSize() const; void setBaseFontPointSize(int size); // bool setContent(const QString &text, QString *errorMsg = 0, // int *errorLine = 0, int *errorColumn = 0); void setContent(const QString &text); %MethodCode callSetContent(sipCpp, *a0, &sipIsErr); %End void dump() const; virtual QSize sizeHint() const; void setDrawFrames(bool b); bool drawFrames() const; void clear(); protected: virtual void paintEvent(QPaintEvent *e); }; class QtMmlDocument { %TypeHeaderCode #include %End public: QtMmlDocument(); ~QtMmlDocument(); void clear(); // bool setContent(QString text, QString *errorMsg = 0, // int *errorLine = 0, int *errorColumn = 0); void setContent(const QString &text); %MethodCode callSetContent(sipCpp, *a0, &sipIsErr); %End void paint(QPainter *p, const QPoint &pos) const; QSize size() const; QString fontName(QtMmlWidget::MmlFont type) const; void setFontName(QtMmlWidget::MmlFont type, const QString &name); int baseFontPointSize() const; void setBaseFontPointSize(int size); }; ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/src/qtmml/qtmmlwidget.cpp0000664000175000017500000071753014126044351016120 0ustar00jssjss/**************************************************************************** ** ** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of a Qt Solutions component. ** ** Commercial Usage ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Solutions Commercial License Agreement provided ** with the Software or, alternatively, in accordance with the terms ** contained in a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain ** additional rights. These rights are described in the Nokia Qt LGPL ** Exception version 1.1, included in the file LGPL_EXCEPTION.txt in this ** package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** Please note Third Party Software included with Qt Solutions may impose ** additional restrictions and it is the user's responsibility to ensure ** that they have met the licensing requirements of the GPL, LGPL, or Qt ** Solutions Commercial license and the relevant license of the Third ** Party Software they are using. ** ** If you are unsure which license is appropriate for your use, please ** contact Nokia at qt-info@nokia.com. ** ****************************************************************************/ #include #include #include #include #include #include #include "qtmmlwidget.h" // ******************************************************************* // Declarations // ******************************************************************* #define ROUND(a) (int)((a)+.5) static bool g_draw_frames = false; static const double g_mfrac_spacing = 0.1; static const double g_mroot_base_margin = 0.1; static const double g_script_size_multiplier = 0.7071; // sqrt(1/2) static const int g_min_font_point_size = 8; static const QChar g_radical_char = QChar(0x1A, 0x22); static const unsigned g_oper_spec_rows = 9; // use unnamed namespace namespace { struct Mml { enum NodeType { NoNode = 0, MiNode, MnNode, MfracNode, MrowNode, MsqrtNode, MrootNode, MsupNode, MsubNode, MsubsupNode, MoNode, MstyleNode, TextNode, MphantomNode, MfencedNode, MtableNode, MtrNode, MtdNode, MoverNode, MunderNode, MunderoverNode, MerrorNode, MtextNode, MpaddedNode, MspaceNode, MalignMarkNode, UnknownNode }; enum MathVariant { NormalMV = 0x0000, BoldMV = 0x0001, ItalicMV = 0x0002, DoubleStruckMV = 0x0004, ScriptMV = 0x0008, FrakturMV = 0x0010, SansSerifMV = 0x0020, MonospaceMV = 0x0040 }; enum FormType { PrefixForm, InfixForm, PostfixForm }; enum ColAlign { ColAlignLeft, ColAlignCenter, ColAlignRight }; enum RowAlign { RowAlignTop, RowAlignCenter, RowAlignBottom, RowAlignAxis, RowAlignBaseline }; enum FrameType { FrameNone, FrameSolid, FrameDashed }; struct FrameSpacing { FrameSpacing(int hor = 0, int ver = 0) : m_hor(hor), m_ver(ver) {} int m_hor, m_ver; }; }; struct OperSpec { enum StretchDir { NoStretch, HStretch, VStretch, HVStretch }; const char *name; Mml::FormType form; const char *attributes[g_oper_spec_rows]; StretchDir stretch_dir; }; struct NodeSpec { Mml::NodeType type; const char *tag; const char *type_str; int child_spec; const char *child_types; const char *attributes; enum ChildSpec { ChildAny = -1, // any number of children allowed ChildIgnore = -2, // do not build subexpression of children ImplicitMrow = -3 // if more than one child, build mrow }; }; struct EntitySpec { const char *name; const char *value; }; typedef QMap MmlAttributeMap; class MmlNode; } // namespace class MmlDocument : public Mml { public: MmlDocument(); ~MmlDocument(); void clear(); bool setContent(QString text, QString *errorMsg = 0, int *errorLine = 0, int *errorColumn = 0); void paint(QPainter *p, const QPoint &pos) const; void dump() const; QSize size() const; void layout(); QString fontName(QtMmlWidget::MmlFont type) const; void setFontName(QtMmlWidget::MmlFont type, const QString &name); int baseFontPointSize() const { return m_base_font_point_size; } void setBaseFontPointSize(int size) { m_base_font_point_size = size; } QColor foregroundColor() const { return m_foreground_color; } void setForegroundColor(const QColor &color) { m_foreground_color = color; } QColor backgroundColor() const { return m_background_color; } void setBackgroundColor(const QColor &color) { m_background_color = color; } private: void _dump(const MmlNode *node, QString &indent) const; bool insertChild(MmlNode *parent, MmlNode *new_node, QString *errorMsg); MmlNode *domToMml(const QDomNode &dom_node, bool *ok, QString *errorMsg); MmlNode *createNode(NodeType type, const MmlAttributeMap &mml_attr, const QString &mml_value, QString *errorMsg); MmlNode *createImplicitMrowNode(const QDomNode &dom_node, bool *ok, QString *errorMsg); void insertOperator(MmlNode *node, const QString &text); MmlNode *m_root_node; QString m_normal_font_name; QString m_fraktur_font_name; QString m_sans_serif_font_name; QString m_script_font_name; QString m_monospace_font_name; QString m_doublestruck_font_name; int m_base_font_point_size; QColor m_foreground_color; QColor m_background_color; }; namespace { class MmlNode : public Mml { friend class ::MmlDocument; public: MmlNode(NodeType type, MmlDocument *document, const MmlAttributeMap &attribute_map); virtual ~MmlNode(); // Mml stuff NodeType nodeType() const { return m_node_type; } virtual QString toStr() const; void setRelOrigin(const QPoint &rel_origin); QPoint relOrigin() const { return m_rel_origin; } void stretchTo(const QRect &rect); bool isStretched() const { return m_stretched; } QPoint devicePoint(const QPoint &p) const; QRect myRect() const { return m_my_rect; } QRect parentRect() const; virtual QRect deviceRect() const; void updateMyRect(); virtual void setMyRect(const QRect &rect) { m_my_rect = rect; } virtual void stretch(); virtual void layout(); virtual void paint(QPainter *p); int basePos() const; int overlinePos() const; int underlinePos() const; int em() const; int ex() const; QString explicitAttribute(const QString &name, const QString &def = QString()) const; QString inheritAttributeFromMrow(const QString &name, const QString &def = QString()) const; virtual QFont font() const; virtual QColor color() const; virtual QColor background() const; virtual int scriptlevel(const MmlNode *child = 0) const; // Node stuff MmlDocument *document() const { return m_document; } MmlNode *parent() const { return m_parent; } MmlNode *firstChild() const { return m_first_child; } MmlNode *nextSibling() const { return m_next_sibling; } MmlNode *previousSibling() const { return m_previous_sibling; } MmlNode *lastSibling() const; MmlNode *firstSibling() const; bool isLastSibling() const { return m_next_sibling == 0; } bool isFirstSibling() const { return m_previous_sibling == 0; } bool hasChildNodes() const { return m_first_child != 0; } protected: virtual void layoutSymbol(); virtual void paintSymbol(QPainter *p) const; virtual QRect symbolRect() const { return QRect(0, 0, 0, 0); } MmlNode *parentWithExplicitAttribute(const QString &name, NodeType type = NoNode); int interpretSpacing(const QString &value, bool *ok) const; private: MmlAttributeMap m_attribute_map; bool m_stretched; QRect m_my_rect, m_parent_rect; QPoint m_rel_origin; NodeType m_node_type; MmlDocument *m_document; MmlNode *m_parent, *m_first_child, *m_next_sibling, *m_previous_sibling; }; class MmlTokenNode : public MmlNode { public: MmlTokenNode(NodeType type, MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(type, document, attribute_map) {} QString text() const; }; class MmlMphantomNode : public MmlNode { public: MmlMphantomNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(MphantomNode, document, attribute_map) {} virtual void paint(QPainter *) {} }; class MmlUnknownNode : public MmlNode { public: MmlUnknownNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(UnknownNode, document, attribute_map) {} }; class MmlMfencedNode : public MmlNode { public: MmlMfencedNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(MfencedNode, document, attribute_map) {} }; class MmlMalignMarkNode : public MmlNode { public: MmlMalignMarkNode(MmlDocument *document) : MmlNode(MalignMarkNode, document, MmlAttributeMap()) {} }; class MmlMfracNode : public MmlNode { public: MmlMfracNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(MfracNode, document, attribute_map) {} MmlNode *numerator() const; MmlNode *denominator() const; protected: virtual void layoutSymbol(); virtual void paintSymbol(QPainter *p) const; virtual QRect symbolRect() const; }; class MmlMrowNode : public MmlNode { public: MmlMrowNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(MrowNode, document, attribute_map) {} }; class MmlRootBaseNode : public MmlNode { public: MmlRootBaseNode(NodeType type, MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(type, document, attribute_map) {} MmlNode *base() const; MmlNode *index() const; virtual int scriptlevel(const MmlNode *child = 0) const; protected: virtual void layoutSymbol(); virtual void paintSymbol(QPainter *p) const; virtual QRect symbolRect() const; int tailWidth() const; }; class MmlMrootNode : public MmlRootBaseNode { public: MmlMrootNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlRootBaseNode(MrootNode, document, attribute_map) {} }; class MmlMsqrtNode : public MmlRootBaseNode { public: MmlMsqrtNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlRootBaseNode(MsqrtNode, document, attribute_map) {} }; class MmlTextNode : public MmlNode { public: MmlTextNode(const QString &text, MmlDocument *document); virtual QString toStr() const; QString text() const { return m_text; } // TextNodes are not xml elements, so they can't have attributes of // their own. Everything is taken from the parent. virtual QFont font() const { return parent()->font(); } virtual int scriptlevel(const MmlNode* = 0) const { return parent()->scriptlevel(this); } virtual QColor color() const { return parent()->color(); } virtual QColor background() const { return parent()->background(); } protected: virtual void paintSymbol(QPainter *p) const; virtual QRect symbolRect() const; QString m_text; }; class MmlMiNode : public MmlTokenNode { public: MmlMiNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlTokenNode(MiNode, document, attribute_map) {} }; class MmlMnNode : public MmlTokenNode { public: MmlMnNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlTokenNode(MnNode, document, attribute_map) {} }; class MmlSubsupBaseNode : public MmlNode { public: MmlSubsupBaseNode(NodeType type, MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(type, document, attribute_map) {} MmlNode *base() const; MmlNode *sscript() const; virtual int scriptlevel(const MmlNode *child = 0) const; }; class MmlMsupNode : public MmlSubsupBaseNode { public: MmlMsupNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlSubsupBaseNode(MsupNode, document, attribute_map) {} protected: virtual void layoutSymbol(); }; class MmlMsubNode : public MmlSubsupBaseNode { public: MmlMsubNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlSubsupBaseNode(MsubNode, document, attribute_map) {} protected: virtual void layoutSymbol(); }; class MmlMsubsupNode : public MmlNode { public: MmlMsubsupNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(MsubsupNode, document, attribute_map) {} MmlNode *base() const; MmlNode *superscript() const; MmlNode *subscript() const; virtual int scriptlevel(const MmlNode *child = 0) const; protected: virtual void layoutSymbol(); }; class MmlMoNode : public MmlTokenNode { public: MmlMoNode(MmlDocument *document, const MmlAttributeMap &attribute_map); QString dictionaryAttribute(const QString &name) const; virtual void stretch(); virtual int lspace() const; virtual int rspace() const; virtual QString toStr() const; protected: virtual void layoutSymbol(); virtual QRect symbolRect() const; virtual FormType form() const; private: const OperSpec *m_oper_spec; }; class MmlMstyleNode : public MmlNode { public: MmlMstyleNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(MstyleNode, document, attribute_map) {} }; class MmlTableBaseNode : public MmlNode { public: MmlTableBaseNode(NodeType type, MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(type, document, attribute_map) {} }; class MmlMtableNode : public MmlTableBaseNode { public: MmlMtableNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlTableBaseNode(MtableNode, document, attribute_map) {} int rowspacing() const; int columnspacing() const; int framespacing_hor() const; int framespacing_ver() const; FrameType frame() const; FrameType columnlines(int idx) const; FrameType rowlines(int idx) const; protected: virtual void layoutSymbol(); virtual QRect symbolRect() const; virtual void paintSymbol(QPainter *p) const; private: struct CellSizeData { void init(const MmlNode *first_row); QList col_widths, row_heights; int numCols() const { return col_widths.count(); } int numRows() const { return row_heights.count(); } uint colWidthSum() const; uint rowHeightSum() const; }; CellSizeData m_cell_size_data; int m_content_width, m_content_height; }; class MmlMtrNode : public MmlTableBaseNode { public: MmlMtrNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlTableBaseNode(MtrNode, document, attribute_map) {} void layoutCells(const QList &col_widths, int col_spc); }; class MmlMtdNode : public MmlTableBaseNode { public: MmlMtdNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlTableBaseNode(MtdNode, document, attribute_map) { m_scriptlevel_adjust = 0; } virtual void setMyRect(const QRect &rect); ColAlign columnalign(); RowAlign rowalign(); uint colNum(); uint rowNum(); virtual int scriptlevel(const MmlNode *child = 0) const; private: int m_scriptlevel_adjust; // added or subtracted to scriptlevel to // make contents fit the cell }; class MmlMoverNode : public MmlNode { public: MmlMoverNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(MoverNode, document, attribute_map) {} virtual int scriptlevel(const MmlNode *node = 0) const; protected: virtual void layoutSymbol(); }; class MmlMunderNode : public MmlNode { public: MmlMunderNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(MunderNode, document, attribute_map) {} virtual int scriptlevel(const MmlNode *node = 0) const; protected: virtual void layoutSymbol(); }; class MmlMunderoverNode : public MmlNode { public: MmlMunderoverNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(MunderoverNode, document, attribute_map) {} virtual int scriptlevel(const MmlNode *node = 0) const; protected: virtual void layoutSymbol(); }; class MmlMerrorNode : public MmlNode { public: MmlMerrorNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(MerrorNode, document, attribute_map) {} }; class MmlMtextNode : public MmlNode { public: MmlMtextNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(MtextNode, document, attribute_map) {} }; class MmlMpaddedNode : public MmlNode { public: MmlMpaddedNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(MpaddedNode, document, attribute_map) {} public: int lspace() const; int width() const; int height() const; int depth() const; protected: int interpretSpacing(QString value, int base_value, bool *ok) const; virtual void layoutSymbol(); virtual QRect symbolRect() const; }; class MmlMspaceNode : public MmlNode { public: MmlMspaceNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlNode(MspaceNode, document, attribute_map) {} }; } static const NodeSpec *mmlFindNodeSpec(Mml::NodeType type); static const NodeSpec *mmlFindNodeSpec(const QString &tag); static bool mmlCheckChildType(Mml::NodeType parent_type, Mml::NodeType child_type, QString *error_str); static bool mmlCheckAttributes(Mml::NodeType child_type, const MmlAttributeMap &attr, QString *error_str); static QString mmlDictAttribute(const QString &name, const OperSpec *spec); static const OperSpec *mmlFindOperSpec(const QString &name, Mml::FormType form); static int interpretSpacing(QString name, int em, int ex, bool *ok); static int interpretPercentSpacing(QString value, int base, bool *ok); static uint interpretMathVariant(const QString &value, bool *ok); static Mml::FormType interpretForm(const QString &value, bool *ok); static Mml::FrameType interpretFrameType(const QString &value_list, uint idx, bool *ok); static Mml::FrameSpacing interpretFrameSpacing(const QString &value_list, int em, int ex, bool *ok); static Mml::ColAlign interpretColAlign(const QString &value_list, uint colnum, bool *ok); static Mml::RowAlign interpretRowAlign(const QString &value_list, uint rownum, bool *ok); static Mml::FrameType interpretFrameType(const QString &value_list, uint idx, bool *ok); static QFont interpretDepreciatedFontAttr(const MmlAttributeMap &font_attr, QFont &fn, int em, int ex); static QFont interpretMathSize(QString value, QFont &fn, int em, int ex, bool *ok); static QString interpretListAttr(const QString &value_list, int idx, const QString &def); static QString rectToStr(const QRect &rect); static QString entityDeclarations(); #define MML_ATT_COMMON " class style id xref actiontype " #define MML_ATT_FONTSIZE " fontsize fontweight fontstyle fontfamily color " #define MML_ATT_MATHVARIANT " mathvariant mathsize mathcolor mathbackground " #define MML_ATT_FONTINFO MML_ATT_FONTSIZE MML_ATT_MATHVARIANT #define MML_ATT_OPINFO " form fence separator lspace rspace stretchy symmetric " \ " maxsize minsize largeop movablelimits accent " #define MML_ATT_SIZEINFO " width height depth " #define MML_ATT_TABLEINFO " align rowalign columnalign columnwidth groupalign " \ " alignmentscope side rowspacing columnspacing rowlines " \ " columnlines width frame framespacing equalrows " \ " equalcolumns displaystyle " #define MML_ATT_MFRAC " bevelled numalign denomalign linethickness " #define MML_ATT_MSTYLE MML_ATT_FONTINFO MML_ATT_OPINFO \ " scriptlevel lquote rquote linethickness displaystyle " \ " scriptsizemultiplier scriptminsize background " \ " veryverythinmathspace verythinmathspace thinmathspace " \ " mediummathspace thickmathspace verythickmathspace " \ " veryverythickmathspace open close separators " \ " subscriptshift superscriptshift accentunder tableinfo " \ " rowspan columnspan edge selection bevelled " #define MML_ATT_MTABLE " align rowalign columnalign groupalign alignmentscope " \ " columnwidth width rowspacing columnspacing rowlines columnlines " \ " frame framespacing equalrows equalcolumns displaystyle side " \ " minlabelspacing " static const NodeSpec g_node_spec_data[] = { // type tag type_str child_spec child_types attributes ""=none, 0=any // ----------------------- --------------- ------------------- ----------------------- ------------------------ ------------------------------------ { Mml::MiNode, "mi", "MiNode", NodeSpec::ChildAny, " TextNode MalignMark ", MML_ATT_COMMON MML_ATT_FONTINFO }, { Mml::MnNode, "mn", "MnNode", NodeSpec::ChildAny, " TextNode MalignMark ", MML_ATT_COMMON MML_ATT_FONTINFO }, { Mml::MfracNode, "mfrac", "MfracNode", 2, 0, MML_ATT_COMMON MML_ATT_MFRAC }, { Mml::MrowNode, "mrow", "MrowNode", NodeSpec::ChildAny, 0, MML_ATT_COMMON " display mode " }, { Mml::MsqrtNode, "msqrt", "MsqrtNode", NodeSpec::ImplicitMrow, 0, MML_ATT_COMMON }, { Mml::MrootNode, "mroot", "MrootNode", 2, 0, MML_ATT_COMMON }, { Mml::MsupNode, "msup", "MsupNode", 2, 0, MML_ATT_COMMON " subscriptshift " }, { Mml::MsubNode, "msub", "MsubNode", 2, 0, MML_ATT_COMMON " superscriptshift " }, { Mml::MsubsupNode, "msubsup", "MsubsupNode", 3, 0, MML_ATT_COMMON " subscriptshift superscriptshift " }, { Mml::MoNode, "mo", "MoNode", NodeSpec::ChildAny, " TextNode MalignMark ", MML_ATT_COMMON MML_ATT_FONTINFO MML_ATT_OPINFO }, { Mml::MstyleNode, "mstyle", "MstyleNode", NodeSpec::ImplicitMrow, 0, MML_ATT_COMMON MML_ATT_MSTYLE }, { Mml::MphantomNode, "mphantom", "MphantomNode", NodeSpec::ImplicitMrow, 0, MML_ATT_COMMON }, { Mml::MalignMarkNode, "malignmark", "MalignMarkNode", 0, 0, "" }, { Mml::MfencedNode, "mfenced", "MfencedNode", NodeSpec::ChildAny, 0, MML_ATT_COMMON " open close separators " }, { Mml::MtableNode, "mtable", "MtableNode", NodeSpec::ChildAny, " MtrNode ", MML_ATT_COMMON MML_ATT_MTABLE }, { Mml::MtrNode, "mtr", "MtrNode", NodeSpec::ChildAny, " MtdNode ", MML_ATT_COMMON " rowalign columnalign groupalign " }, { Mml::MtdNode, "mtd", "MtdNode", NodeSpec::ImplicitMrow, 0, MML_ATT_COMMON " rowspan columnspan rowalign columnalign groupalign " }, { Mml::MoverNode, "mover", "MoverNode", 2, 0, MML_ATT_COMMON " accent " }, { Mml::MunderNode, "munder", "MunderNode", 2, 0, MML_ATT_COMMON " accentunder " }, { Mml::MunderoverNode, "munderover", "MunderoverNode", 3, 0, MML_ATT_COMMON " accentunder accent " }, { Mml::MerrorNode, "merror", "MerrorNode", NodeSpec::ImplicitMrow, 0, MML_ATT_COMMON }, { Mml::MtextNode, "mtext", "MtextNode", 1, " TextNode ", MML_ATT_COMMON " width height depth linebreak " }, { Mml::MpaddedNode, "mpadded", "MpaddedNode", NodeSpec::ImplicitMrow, 0, MML_ATT_COMMON " width height depth lspace " }, { Mml::MspaceNode, "mspace", "MspaceNode", NodeSpec::ImplicitMrow, 0, MML_ATT_COMMON " width height depth linebreak " }, { Mml::TextNode, 0, "TextNode", NodeSpec::ChildIgnore, 0, "" }, { Mml::UnknownNode, 0, "UnknownNode", NodeSpec::ChildAny, 0, 0 }, { Mml::NoNode, 0, 0, 0, 0, 0 } }; static const char *g_oper_spec_names[g_oper_spec_rows] = { "accent", "fence", "largeop", "lspace", "minsize", "movablelimits", "rspace", "separator", "stretchy" /* stretchdir */ }; static const OperSpec g_oper_spec_data[] = { { "!!" , Mml::PostfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "!!" { "!" , Mml::PostfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "!" { "!=" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "!=" { "⩓" , Mml::InfixForm, { 0, 0, 0, "mediummathspace", 0, 0, "mediummathspace", 0, "true" }, OperSpec::VStretch }, // "⩓" { "⁡" , Mml::InfixForm, { 0, 0, 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "⁡" { "≔" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≔" { "∖" , Mml::InfixForm, { 0, 0, 0, "thinmathspace", 0, 0, "thinmathspace", 0, "true" }, OperSpec::HVStretch }, // "∖" { "∵" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∵" { "˘" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "˘" { "⋒" , Mml::InfixForm, { 0, 0, 0, "thinmathspace", 0, 0, "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "⋒" { "ⅅ" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // ⅅ" { "¸" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "¸" { "·" , Mml::InfixForm, { 0, 0, 0, "thinmathspace", 0, 0, "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "·" { "⊙" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊙" { "⊖" , Mml::InfixForm, { 0, 0, 0, "thinmathspace", 0, 0, "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊖" { "⊕" , Mml::InfixForm, { 0, 0, 0, "thinmathspace", 0, 0, "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊕" { "⊗" , Mml::InfixForm, { 0, 0, 0, "thinmathspace", 0, 0, "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊗" { "∲" , Mml::PrefixForm, { 0, 0, "true", "0em", 0, 0, "0em", 0, "true"}, OperSpec::VStretch }, // ∲" { "”" , Mml::PostfixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // ”" { "’" , Mml::PostfixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "’" { "∷" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∷" { "≡" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≡" { "∮" , Mml::PrefixForm, { 0, 0, "true", "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "∮" { "∐" , Mml::InfixForm, { 0, 0, 0, "thinmathspace", 0, 0, "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "∐" { "∳", Mml::PrefixForm, { 0, 0, "true", "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // &CounterClockwiseContourInteg { "⨯" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "⨯" { "⋓" , Mml::InfixForm, { 0, 0, 0, "thinmathspace", 0, 0, "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "⋓" { "≍" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≍" { "∇" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "∇" { "´" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "´" { "˙" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "˙" { "˝" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // ˝" { "`" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "`" { "&DiacriticalLeftArrow;" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // &DiacriticalLeftArrow;" { "&DiacriticalLeftRightArrow;" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // &DiacriticalLeftRightArrow;" { "&DiacriticalLeftRightVector;" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // &DiacriticalLeftRightVector;" { "&DiacriticalLeftVector;" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // &DiacriticalLeftVector;" { "&DiacriticalRightArrow;" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // &DiacriticalRightArrow;" { "&DiacriticalRightVector;" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // &DiacriticalRightVector;" { "˜" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::NoStretch }, // "˜" { "⋄" , Mml::InfixForm, { 0, 0, 0, "thinmathspace", 0, 0, "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "⋄" { "ⅆ" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "ⅆ" { "≐" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≐" { "∯" , Mml::PrefixForm, { 0, 0, "true", "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // ∯" { "¨" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "¨" { "⇓" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::VStretch }, // "⇓" { "⇐" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "⇐" { "⇔" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // ⇔" { "⫤" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⫤" { "⟸" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HStretch }, // "⟸" { "⟺" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HStretch }, // ⟺" { "⟹" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HStretch }, // ⟹" { "⇒" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "⇒" { "⊨" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊨" { "⇑" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::VStretch }, // "⇑" { "⇕" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::VStretch }, // "⇕" { "∥" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∥" { "↓" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::VStretch }, // "↓" { "⤓" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::VStretch }, // "⤓" { "⇵" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::VStretch }, // "⇵" { "̑" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "̑" { "⥐" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HVStretch }, // "⥐" { "⥞" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HVStretch }, // "⥞" { "↽" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HVStretch }, // "↽" { "⥖" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HVStretch }, // "⥖" { "⥟" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HVStretch }, // "⥟" { "⇁" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HVStretch }, // "⇁" { "⥗" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HVStretch }, // "⥗" { "⊤" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊤" { "↧" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::VStretch }, // "↧" { "∈" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∈" { "⩵" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⩵" { "≂" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≂" { "⇌" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "⇌" { "∃" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∃" { "∀" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∀" { "≥" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≥" { "⋛" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⋛" { "≧" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≧" { "⪢" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⪢" { "≷" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≷" { "⩾" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⩾" { "≳" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≳" { "ˇ" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::NoStretch }, // "ˇ" { "^" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // "^" { "─" , Mml::InfixForm, { 0, 0, 0, "0em", "0", 0, "0em", 0, "true" }, OperSpec::HStretch }, // "─" { "≎" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≎" { "≏" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≏" { "⇒" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "⇒" { "∫" , Mml::PrefixForm, { 0, 0, "true", "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "∫" { "⋂" , Mml::PrefixForm, { 0, 0, "true", "0em", 0, "true", "thinmathspace", 0, "true" }, OperSpec::HVStretch }, // "⋂" { "⁣" , Mml::InfixForm, { 0, 0, 0, "0em", 0, 0, "0em", "true", 0 }, OperSpec::NoStretch }, // "⁣" { "⁢" , Mml::InfixForm, { 0, 0, 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "⁢" { "⟨" , Mml::PrefixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "⟨" { "←" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "←" { "⇤" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "⇤" { "⇆" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "⇆" { "&LeftBracketingBar;" , Mml::PrefixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "&LeftBracketingBar;" { "⌈" , Mml::PrefixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "⌈" { "⟦" , Mml::PrefixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // "⟦" { "&LeftDoubleBracketingBar;" , Mml::PrefixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // &LeftDoubleBracketingBar;" { "⥡" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HVStretch }, // "⥡" { "⇃" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HVStretch }, // "⇃" { "⥙" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HVStretch }, // "⥙" { "⌊" , Mml::PrefixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "⌊" { "↔" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "↔" { "⥎" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "⥎" { "&LeftSkeleton;" , Mml::PrefixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "&LeftSkeleton;" { "⊣" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊣" { "↤" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "↤" { "⥚" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "⥚" { "⊲" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊲" { "⧏" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⧏" { "⊴" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊴" { "⥑" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HVStretch }, // "⥑" { "⥠" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HVStretch }, // "⥠" { "↿" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HVStretch }, // "↿" { "⥘" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HVStretch }, // "⥘" { "↼" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "↼" { "⥒" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::VStretch }, // "⥒" { "⋚" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⋚" { "≦" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≦" { "≶" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≶" { "⪡" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⪡" { "⩽" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⩽" { "≲" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≲" { "⟵" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HStretch }, // "⟵" { "⟷" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HStretch }, // "⟷" { "⟶" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HStretch }, // "⟶" { "↙" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HVStretch }, // "↙" { "↘" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HVStretch }, // "↘" { "∓" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "veryverythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "∓" { "≫" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // ≫" { "≪" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≪" { "⫬" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⫬" { "≢" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≢" { "≭" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≭" { "∦" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // ∦" { "∉" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∉" { "≠" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≠" { "≂̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≂̸" { "∄" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∄" { "≯" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≯" { "≱" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≱" { "≧̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≧̸" { "≫̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≫̸" { "≹" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≹" { "⩾̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // ⩾̸" { "≵" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≵" { "≎̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≎̸" { "≏̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≏̸" { "⋪" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⋪" { "⧏̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⧏̸" { "⋬" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // ⋬" { "≮" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≮" { "≰" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≰" { "&NotLessFullEqual;" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "&NotLessFullEqual;" { "≸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≸" { "≪̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≪̸" { "⩽̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⩽̸" { "≴" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≴" { "⪢̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // ⪢̸" { "⪡̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⪡̸" { "⊀" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊀" { "⪯̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⪯̸" { "⋠" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // ⋠" { "&NotPrecedesTilde;" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "&NotPrecedesTilde;" { "∌" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∌" { "⋫" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⋫" { "⧐̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⧐̸" { "⋭" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // ⋭" { "⊏̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊏̸" { "⋢" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // ⋢" { "⊐̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊐̸" { "⋣" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // ⋣" { "⊂⃒" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊂⃒" { "⊈" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊈" { "⊁" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊁" { "⪰̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⪰̸" { "⋡" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // ⋡" { "≿̸" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≿̸" { "⊃⃒" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊃⃒" { "⊉" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊉" { "≁" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≁" { "≄" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≄" { "≇" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≇" { "≉" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≉" { "∤" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∤" { "“" , Mml::PrefixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // “" { "‘" , Mml::PrefixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "‘" { "⩔" , Mml::InfixForm, { 0, 0, 0, "mediummathspace", 0, 0, "mediummathspace", 0, "true" }, OperSpec::VStretch }, // "⩔" { "‾" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // "‾" { "⏞" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // "⏞" { "⎴" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // "⎴" { "⏜" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "⏜" { "∂" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "∂" { "±" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "veryverythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "±" { "≺" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≺" { "⪯" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⪯" { "≼" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≼" { "≾" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≾" { "∏" , Mml::PrefixForm, { 0, 0, "true", "0em", 0, "true", "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "∏" { "∷" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∷" { "∝" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∝" { "∋" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∋" { "⇋" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "⇋" { "⥯" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HStretch }, // ⥯" { "⟩" , Mml::PostfixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "⟩" { "→" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "→" { "⇥" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "⇥" { "⇄" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "⇄" { "&RightBracketingBar;" , Mml::PostfixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "&RightBracketingBar;" { "⌉" , Mml::PostfixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "⌉" { "⟧" , Mml::PostfixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "⟧" { "&RightDoubleBracketingBar;" , Mml::PostfixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // &RightDoubleBracketingBar;" { "⥝" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HVStretch }, // "⥝" { "⇂" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HVStretch }, // "⇂" { "⥕" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HVStretch }, // "⥕" { "⌋" , Mml::PostfixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "⌋" { "&RightSkeleton;" , Mml::PostfixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "&RightSkeleton;" { "⊢" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊢" { "↦" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "↦" { "⥛" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "⥛" { "⊳" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊳" { "⧐" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⧐" { "⊵" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊵" { "⥏" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::VStretch }, // "⥏" { "⥜" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HVStretch }, // "⥜" { "↾" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HVStretch }, // "↾" { "⥔" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::HVStretch }, // "⥔" { "⇀" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "⇀" { "⥓" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HStretch }, // "⥓" { "⥰" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⥰" { "↓" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "↓" { "←" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::HStretch }, // "←" { "→" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::HStretch }, // "→" { "↑" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::VStretch }, // "↑" { "∘" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "∘" { "√" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::VStretch }, // "√" { "□" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "□" { "⊓" , Mml::InfixForm, { 0, 0, 0, "mediummathspace", 0, 0, "mediummathspace", 0, "true" }, OperSpec::HVStretch }, // "⊓" { "⊏" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊏" { "⊑" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊑" { "⊐" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊐" { "⊒" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊒" { "⊔" , Mml::InfixForm, { 0, 0, 0, "mediummathspace", 0, 0, "mediummathspace", 0, "true" }, OperSpec::HVStretch }, // "⊔" { "⋆" , Mml::InfixForm, { 0, 0, 0, "thinmathspace", 0, 0, "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "⋆" { "⋐" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⋐" { "⊆" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊆" { "≻" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≻" { "⪰" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⪰" { "≽" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≽" { "≿" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≿" { "∋" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∋" { "∑" , Mml::PrefixForm, { 0, 0, "true", "0em", 0, "true", "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "∑" { "⊃" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊃" { "⊇" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊇" { "∴" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∴" { "∼" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∼" { "≃" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≃" { "≅" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≅" { "≈" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≈" { "⃛" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "⃛" { "_" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // "_" { "⏟" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // "⏟" { "⎵" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // "⎵" { "⏝" , Mml::PostfixForm, { "true", 0, 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::HStretch }, // "⏝" { "⋃" , Mml::PrefixForm, { 0, 0, "true", "0em", 0, "true", "thinmathspace", 0, "true" }, OperSpec::HVStretch }, // "⋃" { "⊎" , Mml::PrefixForm, { 0, 0, "true", "0em", 0, "true", "thinmathspace", 0, "true" }, OperSpec::HVStretch }, // "⊎" { "↑" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::VStretch }, // "↑" { "⤒" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::VStretch }, // "⤒" { "⇅" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::VStretch }, // "⇅" { "↕" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::VStretch }, // "↕" { "⥮" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::VStretch }, // "⥮" { "⊥" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "⊥" { "↥" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, "true" }, OperSpec::VStretch }, // "↥" { "↖" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HVStretch }, // "↖" { "↗" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::HVStretch }, // "↗" { "⋁" , Mml::InfixForm, { 0, 0, 0, "thinmathspace", 0, 0, "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "⋁" { "∣" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "∣" { "|" , Mml::InfixForm, { 0, 0, 0, "0em", "0", 0, "0em", 0, "true" }, OperSpec::VStretch }, // "|" { "❘" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::VStretch }, // "❘" { "≀" , Mml::InfixForm, { 0, 0, 0, "thinmathspace", 0, 0, "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "≀" { "⋀" , Mml::InfixForm, { 0, 0, 0, "thinmathspace", 0, 0, "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "⋀" { "&" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "&" { "&&" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "&&" { "≤" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "≤" { "<" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "<" { "<=" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "<=" { "<>" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "<>" { "'" , Mml::PostfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "'" { "(" , Mml::PrefixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "(" { ")" , Mml::PostfixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // ")" { "*" , Mml::InfixForm, { 0, 0, 0, "thinmathspace", 0, 0, "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "*" { "**" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "**" { "*=" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "*=" { "+" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "+" { "+" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "veryverythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "+" { "++" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "++" { "+=" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "+=" { "," , Mml::InfixForm, { 0, 0, 0, "0em", 0, 0, "verythickmathspace", "true", 0 }, OperSpec::NoStretch }, // "," { "-" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "-" { "-" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "veryverythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "-" { "--" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "--" { "-=" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "-=" { "->" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "->" { "." , Mml::InfixForm, { 0, 0, 0, "0em", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "." { ".." , Mml::PostfixForm, { 0, 0, 0, "mediummathspace", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // ".." { "..." , Mml::PostfixForm, { 0, 0, 0, "mediummathspace", 0, 0, "0em", 0, 0 }, OperSpec::NoStretch }, // "..." { "/" , Mml::InfixForm, { 0, 0, 0, "thinmathspace", 0, 0, "thinmathspace", 0, "true" }, OperSpec::VStretch }, // "/" { "//" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "//" { "/=" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "/=" { ":" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // ":" { ":=" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // ":=" { ";" , Mml::InfixForm, { 0, 0, 0, "0em", 0, 0, "verythickmathspace", "true", 0 }, OperSpec::NoStretch }, // ";" { ";" , Mml::PostfixForm, { 0, 0, 0, "0em", 0, 0, "0em", "true", 0 }, OperSpec::NoStretch }, // ";" { "=" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "=" { "==" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // "==" { ">" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // ">" { ">=" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, 0 }, OperSpec::NoStretch }, // ">=" { "?" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "?" { "@" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "@" { "[" , Mml::PrefixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "[" { "]" , Mml::PostfixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "]" { "^" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "^" { "_" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "_" { "lim" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, "true", "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "lim" { "max" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, "true", "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "max" { "min" , Mml::PrefixForm, { 0, 0, 0, "0em", 0, "true", "thinmathspace", 0, 0 }, OperSpec::NoStretch }, // "min" { "{" , Mml::PrefixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "{" { "|" , Mml::InfixForm, { 0, 0, 0, "thickmathspace", 0, 0, "thickmathspace", 0, "true" }, OperSpec::VStretch }, // "|" { "||" , Mml::InfixForm, { 0, 0, 0, "mediummathspace", 0, 0, "mediummathspace", 0, 0 }, OperSpec::NoStretch }, // "||" { "}" , Mml::PostfixForm, { 0, "true", 0, "0em", 0, 0, "0em", 0, "true" }, OperSpec::VStretch }, // "}" { "~" , Mml::InfixForm, { 0, 0, 0, "verythinmathspace", 0, 0, "verythinmathspace", 0, 0 }, OperSpec::NoStretch }, // "~" { 0 , Mml::InfixForm, { 0, 0, 0, 0, 0, 0, 0, 0, 0 }, OperSpec::NoStretch } }; static const OperSpec g_oper_spec_defaults = { 0 , Mml::InfixForm, { "false", "false", "false", "thickmathspace", "1", "false", "thickmathspace", "false", "false" }, OperSpec::NoStretch }; static const uint g_oper_spec_count = sizeof(g_oper_spec_data)/sizeof(OperSpec) - 1; static const EntitySpec g_xml_entity_data[] = { { "angzarr", "⍼" }, { "cirmid", "⫯" }, { "cudarrl", "⤸" }, { "cudarrr", "⤵" }, { "cularr", "↶" }, { "cularrp", "⤽" }, { "curarr", "↷" }, { "curarrm", "⤼" }, { "Darr", "↡" }, { "dArr", "⇓" }, { "ddarr", "⇊" }, { "DDotrahd", "⤑" }, { "dfisht", "⥿" }, { "dHar", "⥥" }, { "dharl", "⇃" }, { "dharr", "⇂" }, { "duarr", "⇵" }, { "duhar", "⥯" }, { "dzigrarr", "⟿" }, { "erarr", "⥱" }, { "hArr", "⇔" }, { "harr", "↔" }, { "harrcir", "⥈" }, { "harrw", "↭" }, { "hoarr", "⇿" }, { "imof", "⊷" }, { "lAarr", "⇚" }, { "Larr", "↞" }, { "larrbfs", "⤟" }, { "larrfs", "⤝" }, { "larrhk", "↩" }, { "larrlp", "↫" }, { "larrpl", "⤹" }, { "larrsim", "⥳" }, { "larrtl", "↢" }, { "lAtail", "⤛" }, { "latail", "⤙" }, { "lBarr", "⤎" }, { "lbarr", "⤌" }, { "ldca", "⤶" }, { "ldrdhar", "⥧" }, { "ldrushar", "⥋" }, { "ldsh", "↲" }, { "lfisht", "⥼" }, { "lHar", "⥢" }, { "lhard", "↽" }, { "lharu", "↼" }, { "lharul", "⥪" }, { "llarr", "⇇" }, { "llhard", "⥫" }, { "loarr", "⇽" }, { "lrarr", "⇆" }, { "lrhar", "⇋" }, { "lrhard", "⥭" }, { "lsh", "↰" }, { "lurdshar", "⥊" }, { "luruhar", "⥦" }, { "Map", "⤅" }, { "map", "↦" }, { "midcir", "⫰" }, { "mumap", "⊸" }, { "nearhk", "⤤" }, { "neArr", "⇗" }, { "nearr", "↗" }, { "nesear", "⤨" }, { "nhArr", "⇎" }, { "nharr", "↮" }, { "nlArr", "⇍" }, { "nlarr", "↚" }, { "nrArr", "⇏" }, { "nrarr", "↛" }, { "nrarrc", "⤳̸" }, { "nrarrw", "↝̸" }, { "nvHarr", "⤄" }, { "nvlArr", "⤂" }, { "nvrArr", "⤃" }, { "nwarhk", "⤣" }, { "nwArr", "⇖" }, { "nwarr", "↖" }, { "nwnear", "⤧" }, { "olarr", "↺" }, { "orarr", "↻" }, { "origof", "⊶" }, { "rAarr", "⇛" }, { "Rarr", "↠" }, { "rarrap", "⥵" }, { "rarrbfs", "⤠" }, { "rarrc", "⤳" }, { "rarrfs", "⤞" }, { "rarrhk", "↪" }, { "rarrlp", "↬" }, { "rarrpl", "⥅" }, { "rarrsim", "⥴" }, { "Rarrtl", "⤖" }, { "rarrtl", "↣" }, { "rarrw", "↝" }, { "rAtail", "⤜" }, { "ratail", "⤚" }, { "RBarr", "⤐" }, { "rBarr", "⤏" }, { "rbarr", "⤍" }, { "rdca", "⤷" }, { "rdldhar", "⥩" }, { "rdsh", "↳" }, { "rfisht", "⥽" }, { "rHar", "⥤" }, { "rhard", "⇁" }, { "rharu", "⇀" }, { "rharul", "⥬" }, { "rlarr", "⇄" }, { "rlhar", "⇌" }, { "roarr", "⇾" }, { "rrarr", "⇉" }, { "rsh", "↱" }, { "ruluhar", "⥨" }, { "searhk", "⤥" }, { "seArr", "⇘" }, { "searr", "↘" }, { "seswar", "⤩" }, { "simrarr", "⥲" }, { "slarr", "←" }, { "srarr", "→" }, { "swarhk", "⤦" }, { "swArr", "⇙" }, { "swarr", "↙" }, { "swnwar", "⤪" }, { "Uarr", "↟" }, { "uArr", "⇑" }, { "Uarrocir", "⥉" }, { "udarr", "⇅" }, { "udhar", "⥮" }, { "ufisht", "⥾" }, { "uHar", "⥣" }, { "uharl", "↿" }, { "uharr", "↾" }, { "uuarr", "⇈" }, { "vArr", "⇕" }, { "varr", "↕" }, { "xhArr", "⟺" }, { "xharr", "⟷" }, { "xlArr", "⟸" }, { "xlarr", "⟵" }, { "xmap", "⟼" }, { "xrArr", "⟹" }, { "xrarr", "⟶" }, { "zigrarr", "⇝" }, { "ac", "∾" }, { "acE", "∾̳" }, { "amalg", "⨿" }, { "barvee", "⊽" }, { "Barwed", "⌆" }, { "barwed", "⌅" }, { "bsolb", "⧅" }, { "Cap", "⋒" }, { "capand", "⩄" }, { "capbrcup", "⩉" }, { "capcap", "⩋" }, { "capcup", "⩇" }, { "capdot", "⩀" }, { "caps", "∩︀" }, { "ccaps", "⩍" }, { "ccups", "⩌" }, { "ccupssm", "⩐" }, { "coprod", "∐" }, { "Cup", "⋓" }, { "cupbrcap", "⩈" }, { "cupcap", "⩆" }, { "cupcup", "⩊" }, { "cupdot", "⊍" }, { "cupor", "⩅" }, { "cups", "∪︀" }, { "cuvee", "⋎" }, { "cuwed", "⋏" }, { "Dagger", "‡" }, { "dagger", "†" }, { "diam", "⋄" }, { "divonx", "⋇" }, { "eplus", "⩱" }, { "hercon", "⊹" }, { "intcal", "⊺" }, { "iprod", "⨼" }, { "loplus", "⨭" }, { "lotimes", "⨴" }, { "lthree", "⋋" }, { "ltimes", "⋉" }, { "midast", "*" }, { "minusb", "⊟" }, { "minusd", "∸" }, { "minusdu", "⨪" }, { "ncap", "⩃" }, { "ncup", "⩂" }, { "oast", "⊛" }, { "ocir", "⊚" }, { "odash", "⊝" }, { "odiv", "⨸" }, { "odot", "⊙" }, { "odsold", "⦼" }, { "ofcir", "⦿" }, { "ogt", "⧁" }, { "ohbar", "⦵" }, { "olcir", "⦾" }, { "olt", "⧀" }, { "omid", "⦶" }, { "ominus", "⊖" }, { "opar", "⦷" }, { "operp", "⦹" }, { "oplus", "⊕" }, { "osol", "⊘" }, { "Otimes", "⨷" }, { "otimes", "⊗" }, { "otimesas", "⨶" }, { "ovbar", "⌽" }, { "plusacir", "⨣" }, { "plusb", "⊞" }, { "pluscir", "⨢" }, { "plusdo", "∔" }, { "plusdu", "⨥" }, { "pluse", "⩲" }, { "plussim", "⨦" }, { "plustwo", "⨧" }, { "prod", "∏" }, { "race", "⧚" }, { "roplus", "⨮" }, { "rotimes", "⨵" }, { "rthree", "⋌" }, { "rtimes", "⋊" }, { "sdot", "⋅" }, { "sdotb", "⊡" }, { "setmn", "∖" }, { "simplus", "⨤" }, { "smashp", "⨳" }, { "solb", "⧄" }, { "sqcap", "⊓" }, { "sqcaps", "⊓︀" }, { "sqcup", "⊔" }, { "sqcups", "⊔︀" }, { "ssetmn", "∖" }, { "sstarf", "⋆" }, { "subdot", "⪽" }, { "sum", "∑" }, { "supdot", "⪾" }, { "timesb", "⊠" }, { "timesbar", "⨱" }, { "timesd", "⨰" }, { "tridot", "◬" }, { "triminus", "⨺" }, { "triplus", "⨹" }, { "trisb", "⧍" }, { "tritime", "⨻" }, { "uplus", "⊎" }, { "veebar", "⊻" }, { "wedbar", "⩟" }, { "wreath", "≀" }, { "xcap", "⋂" }, { "xcirc", "◯" }, { "xcup", "⋃" }, { "xdtri", "▽" }, { "xodot", "⨀" }, { "xoplus", "⨁" }, { "xotime", "⨂" }, { "xsqcup", "⨆" }, { "xuplus", "⨄" }, { "xutri", "△" }, { "xvee", "⋁" }, { "xwedge", "⋀" }, { "dlcorn", "⌞" }, { "drcorn", "⌟" }, { "gtlPar", "⦕" }, { "langd", "⦑" }, { "lbrke", "⦋" }, { "lbrksld", "⦏" }, { "lbrkslu", "⦍" }, { "lceil", "⌈" }, { "lfloor", "⌊" }, { "lmoust", "⎰" }, { "lparlt", "⦓" }, { "ltrPar", "⦖" }, { "rangd", "⦒" }, { "rbrke", "⦌" }, { "rbrksld", "⦎" }, { "rbrkslu", "⦐" }, { "rceil", "⌉" }, { "rfloor", "⌋" }, { "rmoust", "⎱" }, { "rpargt", "⦔" }, { "ulcorn", "⌜" }, { "urcorn", "⌝" }, { "gnap", "⪊" }, { "gnE", "≩" }, { "gne", "⪈" }, { "gnsim", "⋧" }, { "gvnE", "≩︀" }, { "lnap", "⪉" }, { "lnE", "≨" }, { "lne", "⪇" }, { "lnsim", "⋦" }, { "lvnE", "≨︀" }, { "nap", "≉" }, { "napE", "⩰̸" }, { "napid", "≋̸" }, { "ncong", "≇" }, { "ncongdot", "⩭̸" }, { "nequiv", "≢" }, { "ngE", "≧̸" }, { "nge", "≱" }, { "nges", "⩾̸" }, { "nGg", "⋙̸" }, { "ngsim", "≵" }, { "nGt", "≫⃒" }, { "ngt", "≯" }, { "nGtv", "≫̸" }, { "nlE", "≦̸" }, { "nle", "≰" }, { "nles", "⩽̸" }, { "nLl", "⋘̸" }, { "nlsim", "≴" }, { "nLt", "≪⃒" }, { "nlt", "≮" }, { "nltri", "⋪" }, { "nltrie", "⋬" }, { "nLtv", "≪̸" }, { "nmid", "∤" }, { "npar", "∦" }, { "npr", "⊀" }, { "nprcue", "⋠" }, { "npre", "⪯̸" }, { "nrtri", "⋫" }, { "nrtrie", "⋭" }, { "nsc", "⊁" }, { "nsccue", "⋡" }, { "nsce", "⪰̸" }, { "nsim", "≁" }, { "nsime", "≄" }, { "nsmid", "∤" }, { "nspar", "∦" }, { "nsqsube", "⋢" }, { "nsqsupe", "⋣" }, { "nsub", "⊄" }, { "nsubE", "⫅̸" }, { "nsube", "⊈" }, { "nsup", "⊅" }, { "nsupE", "⫆̸" }, { "nsupe", "⊉" }, { "ntgl", "≹" }, { "ntlg", "≸" }, { "nvap", "≍⃒" }, { "nVDash", "⊯" }, { "nVdash", "⊮" }, { "nvDash", "⊭" }, { "nvdash", "⊬" }, { "nvge", "≥⃒" }, { "nvgt", ">⃒" }, { "nvle", "≤⃒" }, { "nvlt", "<⃒" }, { "nvltrie", "⊴⃒" }, { "nvrtrie", "⊵⃒" }, { "nvsim", "∼⃒" }, { "parsim", "⫳" }, { "prnap", "⪹" }, { "prnE", "⪵" }, { "prnsim", "⋨" }, { "rnmid", "⫮" }, { "scnap", "⪺" }, { "scnE", "⪶" }, { "scnsim", "⋩" }, { "simne", "≆" }, { "solbar", "⌿" }, { "subnE", "⫋" }, { "subne", "⊊" }, { "supnE", "⫌" }, { "supne", "⊋" }, { "vnsub", "⊂⃒" }, { "vnsup", "⊃⃒" }, { "vsubnE", "⫋︀" }, { "vsubne", "⊊︀" }, { "vsupnE", "⫌︀" }, { "vsupne", "⊋︀" }, { "ang", "∠" }, { "ange", "⦤" }, { "angmsd", "∡" }, { "angmsdaa", "⦨" }, { "angmsdab", "⦩" }, { "angmsdac", "⦪" }, { "angmsdad", "⦫" }, { "angmsdae", "⦬" }, { "angmsdaf", "⦭" }, { "angmsdag", "⦮" }, { "angmsdah", "⦯" }, { "angrtvb", "⊾" }, { "angrtvbd", "⦝" }, { "bbrk", "⎵" }, { "bemptyv", "⦰" }, { "beth", "ℶ" }, { "boxbox", "⧉" }, { "bprime", "‵" }, { "bsemi", "⁏" }, { "cemptyv", "⦲" }, { "cirE", "⧃" }, { "cirscir", "⧂" }, { "comp", "∁" }, { "daleth", "ℸ" }, { "demptyv", "⦱" }, { "ell", "ℓ" }, { "empty", "∅" }, { "emptyv", "∅" }, { "gimel", "ℷ" }, { "iiota", "℩" }, { "image", "ℑ" }, { "imath", "ı" }, { "jmath", "j" }, { "laemptyv", "⦴" }, { "lltri", "◺" }, { "lrtri", "⊿" }, { "mho", "℧" }, { "nang", "∠⃒" }, { "nexist", "∄" }, { "oS", "Ⓢ" }, { "planck", "ℏ" }, { "plankv", "ℏ" }, { "raemptyv", "⦳" }, { "range", "⦥" }, { "real", "ℜ" }, { "tbrk", "⎴" }, { "ultri", "◸" }, { "urtri", "◹" }, { "vzigzag", "⦚" }, { "weierp", "℘" }, { "apE", "⩰" }, { "ape", "≊" }, { "apid", "≋" }, { "asymp", "≈" }, { "Barv", "⫧" }, { "bcong", "≌" }, { "bepsi", "϶" }, { "bowtie", "⋈" }, { "bsim", "∽" }, { "bsime", "⋍" }, { "bsolhsub", "\⊂" }, { "bump", "≎" }, { "bumpE", "⪮" }, { "bumpe", "≏" }, { "cire", "≗" }, { "Colon", "∷" }, { "Colone", "⩴" }, { "colone", "≔" }, { "congdot", "⩭" }, { "csub", "⫏" }, { "csube", "⫑" }, { "csup", "⫐" }, { "csupe", "⫒" }, { "cuepr", "⋞" }, { "cuesc", "⋟" }, { "Dashv", "⫤" }, { "dashv", "⊣" }, { "easter", "⩮" }, { "ecir", "≖" }, { "ecolon", "≕" }, { "eDDot", "⩷" }, { "eDot", "≑" }, { "efDot", "≒" }, { "eg", "⪚" }, { "egs", "⪖" }, { "egsdot", "⪘" }, { "el", "⪙" }, { "els", "⪕" }, { "elsdot", "⪗" }, { "equest", "≟" }, { "equivDD", "⩸" }, { "erDot", "≓" }, { "esdot", "≐" }, { "Esim", "⩳" }, { "esim", "≂" }, { "fork", "⋔" }, { "forkv", "⫙" }, { "frown", "⌢" }, { "gap", "⪆" }, { "gE", "≧" }, { "gEl", "⪌" }, { "gel", "⋛" }, { "ges", "⩾" }, { "gescc", "⪩" }, { "gesdot", "⪀" }, { "gesdoto", "⪂" }, { "gesdotol", "⪄" }, { "gesl", "⋛︀" }, { "gesles", "⪔" }, { "Gg", "⋙" }, { "gl", "≷" }, { "gla", "⪥" }, { "glE", "⪒" }, { "glj", "⪤" }, { "gsim", "≳" }, { "gsime", "⪎" }, { "gsiml", "⪐" }, { "Gt", "≫" }, { "gtcc", "⪧" }, { "gtcir", "⩺" }, { "gtdot", "⋗" }, { "gtquest", "⩼" }, { "gtrarr", "⥸" }, { "homtht", "∻" }, { "lap", "⪅" }, { "lat", "⪫" }, { "late", "⪭" }, { "lates", "⪭︀" }, { "lE", "≦" }, { "lEg", "⪋" }, { "leg", "⋚" }, { "les", "⩽" }, { "lescc", "⪨" }, { "lesdot", "⩿" }, { "lesdoto", "⪁" }, { "lesdotor", "⪃" }, { "lesg", "⋚︀" }, { "lesges", "⪓" }, { "lg", "≶" }, { "lgE", "⪑" }, { "Ll", "⋘" }, { "lsim", "≲" }, { "lsime", "⪍" }, { "lsimg", "⪏" }, { "Lt", "≪" }, { "ltcc", "⪦" }, { "ltcir", "⩹" }, { "ltdot", "⋖" }, { "ltlarr", "⥶" }, { "ltquest", "⩻" }, { "ltrie", "⊴" }, { "mcomma", "⨩" }, { "mDDot", "∺" }, { "mid", "∣" }, { "mlcp", "⫛" }, { "models", "⊧" }, { "mstpos", "∾" }, { "Pr", "⪻" }, { "pr", "≺" }, { "prap", "⪷" }, { "prcue", "≼" }, { "prE", "⪳" }, { "pre", "⪯" }, { "prsim", "≾" }, { "prurel", "⊰" }, { "ratio", "∶" }, { "rtrie", "⊵" }, { "rtriltri", "⧎" }, { "Sc", "⪼" }, { "sc", "≻" }, { "scap", "⪸" }, { "sccue", "≽" }, { "scE", "⪴" }, { "sce", "⪰" }, { "scsim", "≿" }, { "sdote", "⩦" }, { "simg", "⪞" }, { "simgE", "⪠" }, { "siml", "⪝" }, { "simlE", "⪟" }, { "smid", "∣" }, { "smile", "⌣" }, { "smt", "⪪" }, { "smte", "⪬" }, { "smtes", "⪬︀" }, { "spar", "∥" }, { "sqsub", "⊏" }, { "sqsube", "⊑" }, { "sqsup", "⊐" }, { "sqsupe", "⊒" }, { "Sub", "⋐" }, { "subE", "⫅" }, { "subedot", "⫃" }, { "submult", "⫁" }, { "subplus", "⪿" }, { "subrarr", "⥹" }, { "subsim", "⫇" }, { "subsub", "⫕" }, { "subsup", "⫓" }, { "Sup", "⋑" }, { "supdsub", "⫘" }, { "supE", "⫆" }, { "supedot", "⫄" }, { "suphsol", "⊅" }, { "suphsub", "⫗" }, { "suplarr", "⥻" }, { "supmult", "⫂" }, { "supplus", "⫀" }, { "supsim", "⫈" }, { "supsub", "⫔" }, { "supsup", "⫖" }, { "thkap", "≈" }, { "topfork", "⫚" }, { "trie", "≜" }, { "twixt", "≬" }, { "Vbar", "⫫" }, { "vBar", "⫨" }, { "vBarv", "⫩" }, { "VDash", "⊫" }, { "Vdash", "⊩" }, { "vDash", "⊨" }, { "vdash", "⊢" }, { "Vdashl", "⫦" }, { "vltri", "⊲" }, { "vprop", "∝" }, { "vrtri", "⊳" }, { "Vvdash", "⊪" }, { "alpha", "α" }, { "beta", "β" }, { "chi", "χ" }, { "Delta", "Δ" }, { "delta", "δ" }, { "epsi", "ε" }, { "epsiv", "ɛ" }, { "eta", "η" }, { "Gamma", "Γ" }, { "gamma", "γ" }, { "Gammad", "Ϝ" }, { "gammad", "ϝ" }, { "iota", "ι" }, { "kappa", "κ" }, { "kappav", "ϰ" }, { "Lambda", "Λ" }, { "lambda", "λ" }, { "mu", "μ" }, { "nu", "ν" }, { "Omega", "Ω" }, { "omega", "ω" }, { "Phi", "Φ" }, { "phi", "ϕ" }, { "phiv", "φ" }, { "Pi", "Π" }, { "pi", "π" }, { "piv", "ϖ" }, { "Psi", "Ψ" }, { "psi", "ψ" }, { "rho", "ρ" }, { "rhov", "ϱ" }, { "Sigma", "Σ" }, { "sigma", "σ" }, { "sigmav", "ς" }, { "tau", "τ" }, { "Theta", "Θ" }, { "theta", "θ" }, { "thetav", "ϑ" }, { "Upsi", "ϒ" }, { "upsi", "υ" }, { "Xi", "Ξ" }, { "xi", "ξ" }, { "zeta", "ζ" }, { "Cfr", "ℭ" }, { "Hfr", "ℌ" }, { "Ifr", "ℑ" }, { "Rfr", "ℜ" }, { "Zfr", "ℨ" }, { "Copf", "ℂ" }, { "Hopf", "ℍ" }, { "Nopf", "ℕ" }, { "Popf", "ℙ" }, { "Qopf", "ℚ" }, { "Ropf", "ℝ" }, { "Zopf", "ℤ" }, { "Bscr", "ℬ" }, { "Escr", "ℰ" }, { "escr", "ℯ" }, { "Fscr", "ℱ" }, { "gscr", "ℊ" }, { "Hscr", "ℋ" }, { "Iscr", "ℐ" }, { "Lscr", "ℒ" }, { "Mscr", "ℳ" }, { "oscr", "ℴ" }, { "pscr", "𝓅" }, { "Rscr", "ℛ" }, { "acd", "∿" }, { "aleph", "ℵ" }, { "And", "⩓" }, { "and", "∧" }, { "andand", "⩕" }, { "andd", "⩜" }, { "andslope", "⩘" }, { "andv", "⩚" }, { "angrt", "∟" }, { "angsph", "∢" }, { "angst", "Å" }, { "ap", "≈" }, { "apacir", "⩯" }, { "awconint", "∳" }, { "awint", "⨑" }, { "becaus", "∵" }, { "bernou", "ℬ" }, { "bne", "=⃥" }, { "bnequiv", "≡⃥" }, { "bNot", "⫭" }, { "bnot", "⌐" }, { "bottom", "⊥" }, { "cap", "∩" }, { "Cconint", "∰" }, { "cirfnint", "⨐" }, { "compfn", "∘" }, { "cong", "≅" }, { "Conint", "∯" }, { "conint", "∮" }, { "ctdot", "⋯" }, { "cup", "∪" }, { "cwconint", "∲" }, { "cwint", "∱" }, { "cylcty", "⌭" }, { "disin", "⋲" }, { "Dot", "¨" }, { "DotDot", "⃜" }, { "dsol", "⧶" }, { "dtdot", "⋱" }, { "dwangle", "⦦" }, { "epar", "⋕" }, { "eparsl", "⧣" }, { "equiv", "≡" }, { "eqvparsl", "⧥" }, { "exist", "∃" }, { "fnof", "ƒ" }, { "forall", "∀" }, { "fpartint", "⨍" }, { "ge", "≥" }, { "hamilt", "ℋ" }, { "iff", "⇔" }, { "iinfin", "⧜" }, { "infin", "∞" }, { "Int", "∬" }, { "int", "∫" }, { "intlarhk", "⨗" }, { "isin", "∈" }, { "isindot", "⋵" }, { "isinE", "⋹" }, { "isins", "⋴" }, { "isinsv", "⋳" }, { "isinv", "∈" }, { "lagran", "ℒ" }, { "Lang", "《" }, { "lang", "〈" }, { "lArr", "⇐" }, { "lbbrk", "〔" }, { "le", "≤" }, { "loang", "〘" }, { "lobrk", "〚" }, { "lopar", "⦅" }, { "lowast", "∗" }, { "minus", "−" }, { "mnplus", "∓" }, { "nabla", "∇" }, { "ne", "≠" }, { "nedot", "≐̸" }, { "nhpar", "⫲" }, { "ni", "∋" }, { "nis", "⋼" }, { "nisd", "⋺" }, { "niv", "∋" }, { "Not", "⫬" }, { "notin", "∉" }, { "notindot", "⋵̸" }, { "notinva", "∉" }, { "notinvb", "⋷" }, { "notinvc", "⋶" }, { "notni", "∌" }, { "notniva", "∌" }, { "notnivb", "⋾" }, { "notnivc", "⋽" }, { "nparsl", "⫽⃥" }, { "npart", "∂̸" }, { "npolint", "⨔" }, { "nvinfin", "⧞" }, { "olcross", "⦻" }, { "Or", "⩔" }, { "or", "∨" }, { "ord", "⩝" }, { "order", "ℴ" }, { "oror", "⩖" }, { "orslope", "⩗" }, { "orv", "⩛" }, { "par", "∥" }, { "parsl", "⫽" }, { "part", "∂" }, { "permil", "‰" }, { "perp", "⊥" }, { "pertenk", "‱" }, { "phmmat", "ℳ" }, { "pointint", "⨕" }, { "Prime", "″" }, { "prime", "′" }, { "profalar", "⌮" }, { "profline", "⌒" }, { "profsurf", "⌓" }, { "prop", "∝" }, { "qint", "⨌" }, { "qprime", "⁗" }, { "quatint", "⨖" }, { "radic", "√" }, { "Rang", "》" }, { "rang", "〉" }, { "rArr", "⇒" }, { "rbbrk", "〕" }, { "roang", "〙" }, { "robrk", "〛" }, { "ropar", "⦆" }, { "rppolint", "⨒" }, { "scpolint", "⨓" }, { "sim", "∼" }, { "simdot", "⩪" }, { "sime", "≃" }, { "smeparsl", "⧤" }, { "square", "□" }, { "squarf", "▪" }, { "sub", "⊂" }, { "sube", "⊆" }, { "sup", "⊃" }, { "supe", "⊇" }, { "tdot", "⃛" }, { "there4", "∴" }, { "tint", "∭" }, { "top", "⊤" }, { "topbot", "⌶" }, { "topcir", "⫱" }, { "tprime", "‴" }, { "utdot", "⋰" }, { "uwangle", "⦧" }, { "vangrt", "⦜" }, { "veeeq", "≚" }, { "Verbar", "‖" }, { "wedgeq", "≙" }, { "xnis", "⋻" }, { "boxDL", "╗" }, { "boxDl", "╖" }, { "boxdL", "╕" }, { "boxdl", "┐" }, { "boxDR", "╔" }, { "boxDr", "╓" }, { "boxdR", "╒" }, { "boxdr", "┌" }, { "boxH", "═" }, { "boxh", "─" }, { "boxHD", "╦" }, { "boxHd", "╤" }, { "boxhD", "╥" }, { "boxhd", "┬" }, { "boxHU", "╩" }, { "boxHu", "╧" }, { "boxhU", "╨" }, { "boxhu", "┴" }, { "boxUL", "╝" }, { "boxUl", "╜" }, { "boxuL", "╛" }, { "boxul", "┘" }, { "boxUR", "╚" }, { "boxUr", "╙" }, { "boxuR", "╘" }, { "boxur", "└" }, { "boxV", "║" }, { "boxv", "│" }, { "boxVH", "╬" }, { "boxVh", "╫" }, { "boxvH", "╪" }, { "boxvh", "┼" }, { "boxVL", "╣" }, { "boxVl", "╢" }, { "boxvL", "╡" }, { "boxvl", "┤" }, { "boxVR", "╠" }, { "boxVr", "╟" }, { "boxvR", "╞" }, { "boxvr", "├" }, { "Acy", "А" }, { "acy", "а" }, { "Bcy", "Б" }, { "bcy", "б" }, { "CHcy", "Ч" }, { "chcy", "ч" }, { "Dcy", "Д" }, { "dcy", "д" }, { "Ecy", "Э" }, { "ecy", "э" }, { "Fcy", "Ф" }, { "fcy", "ф" }, { "Gcy", "Г" }, { "gcy", "г" }, { "HARDcy", "Ъ" }, { "hardcy", "ъ" }, { "Icy", "И" }, { "icy", "и" }, { "IEcy", "Е" }, { "iecy", "е" }, { "IOcy", "Ё" }, { "iocy", "ё" }, { "Jcy", "Й" }, { "jcy", "й" }, { "Kcy", "К" }, { "kcy", "к" }, { "KHcy", "Х" }, { "khcy", "х" }, { "Lcy", "Л" }, { "lcy", "л" }, { "Mcy", "М" }, { "mcy", "м" }, { "Ncy", "Н" }, { "ncy", "н" }, { "numero", "№" }, { "Ocy", "О" }, { "ocy", "о" }, { "Pcy", "П" }, { "pcy", "п" }, { "Rcy", "Р" }, { "rcy", "р" }, { "Scy", "С" }, { "scy", "с" }, { "SHCHcy", "Щ" }, { "shchcy", "щ" }, { "SHcy", "Ш" }, { "shcy", "ш" }, { "SOFTcy", "Ь" }, { "softcy", "ь" }, { "Tcy", "Т" }, { "tcy", "т" }, { "TScy", "Ц" }, { "tscy", "ц" }, { "Ucy", "У" }, { "ucy", "у" }, { "Vcy", "В" }, { "vcy", "в" }, { "YAcy", "Я" }, { "yacy", "я" }, { "Ycy", "Ы" }, { "ycy", "ы" }, { "YUcy", "Ю" }, { "yucy", "ю" }, { "Zcy", "З" }, { "zcy", "з" }, { "ZHcy", "Ж" }, { "zhcy", "ж" }, { "DJcy", "Ђ" }, { "djcy", "ђ" }, { "DScy", "Ѕ" }, { "dscy", "ѕ" }, { "DZcy", "Џ" }, { "dzcy", "џ" }, { "GJcy", "Ѓ" }, { "gjcy", "ѓ" }, { "Iukcy", "І" }, { "iukcy", "і" }, { "Jsercy", "Ј" }, { "jsercy", "ј" }, { "Jukcy", "Є" }, { "jukcy", "є" }, { "KJcy", "Ќ" }, { "kjcy", "ќ" }, { "LJcy", "Љ" }, { "ljcy", "љ" }, { "NJcy", "Њ" }, { "njcy", "њ" }, { "TSHcy", "Ћ" }, { "tshcy", "ћ" }, { "Ubrcy", "Ў" }, { "ubrcy", "ў" }, { "YIcy", "Ї" }, { "yicy", "ї" }, { "acute", "´" }, { "breve", "˘" }, { "caron", "ˇ" }, { "cedil", "¸" }, { "circ", "ˆ" }, { "dblac", "˝" }, { "die", "¨" }, { "dot", "˙" }, { "grave", "`" }, { "macr", "¯" }, { "ogon", "˛" }, { "ring", "˚" }, { "tilde", "˜" }, { "uml", "¨" }, { "Aacute", "Á" }, { "aacute", "á" }, { "Acirc", "Â" }, { "acirc", "â" }, { "AElig", "Æ" }, { "aelig", "æ" }, { "Agrave", "À" }, { "agrave", "à" }, { "Aring", "Å" }, { "aring", "å" }, { "Atilde", "Ã" }, { "atilde", "ã" }, { "Auml", "Ä" }, { "auml", "ä" }, { "Ccedil", "Ç" }, { "ccedil", "ç" }, { "Eacute", "É" }, { "eacute", "é" }, { "Ecirc", "Ê" }, { "ecirc", "ê" }, { "Egrave", "È" }, { "egrave", "è" }, { "ETH", "Ð" }, { "eth", "ð" }, { "Euml", "Ë" }, { "euml", "ë" }, { "Iacute", "Í" }, { "iacute", "í" }, { "Icirc", "Î" }, { "icirc", "î" }, { "Igrave", "Ì" }, { "igrave", "ì" }, { "Iuml", "Ï" }, { "iuml", "ï" }, { "Ntilde", "Ñ" }, { "ntilde", "ñ" }, { "Oacute", "Ó" }, { "oacute", "ó" }, { "Ocirc", "Ô" }, { "ocirc", "ô" }, { "Ograve", "Ò" }, { "ograve", "ò" }, { "Oslash", "Ø" }, { "oslash", "ø" }, { "Otilde", "Õ" }, { "otilde", "õ" }, { "Ouml", "Ö" }, { "ouml", "ö" }, { "szlig", "ß" }, { "THORN", "Þ" }, { "thorn", "þ" }, { "Uacute", "Ú" }, { "uacute", "ú" }, { "Ucirc", "Û" }, { "ucirc", "û" }, { "Ugrave", "Ù" }, { "ugrave", "ù" }, { "Uuml", "Ü" }, { "uuml", "ü" }, { "Yacute", "Ý" }, { "yacute", "ý" }, { "yuml", "ÿ" }, { "Abreve", "Ă" }, { "abreve", "ă" }, { "Amacr", "Ā" }, { "amacr", "ā" }, { "Aogon", "Ą" }, { "aogon", "ą" }, { "Cacute", "Ć" }, { "cacute", "ć" }, { "Ccaron", "Č" }, { "ccaron", "č" }, { "Ccirc", "Ĉ" }, { "ccirc", "ĉ" }, { "Cdot", "Ċ" }, { "cdot", "ċ" }, { "Dcaron", "Ď" }, { "dcaron", "ď" }, { "Dstrok", "Đ" }, { "dstrok", "đ" }, { "Ecaron", "Ě" }, { "ecaron", "ě" }, { "Edot", "Ė" }, { "edot", "ė" }, { "Emacr", "Ē" }, { "emacr", "ē" }, { "ENG", "Ŋ" }, { "eng", "ŋ" }, { "Eogon", "Ę" }, { "eogon", "ę" }, { "gacute", "ǵ" }, { "Gbreve", "Ğ" }, { "gbreve", "ğ" }, { "Gcedil", "Ģ" }, { "Gcirc", "Ĝ" }, { "gcirc", "ĝ" }, { "Gdot", "Ġ" }, { "gdot", "ġ" }, { "Hcirc", "Ĥ" }, { "hcirc", "ĥ" }, { "Hstrok", "Ħ" }, { "hstrok", "ħ" }, { "Idot", "İ" }, { "IJlig", "IJ" }, { "ijlig", "ij" }, { "Imacr", "Ī" }, { "imacr", "ī" }, { "inodot", "ı" }, { "Iogon", "Į" }, { "iogon", "į" }, { "Itilde", "Ĩ" }, { "itilde", "ĩ" }, { "Jcirc", "Ĵ" }, { "jcirc", "ĵ" }, { "Kcedil", "Ķ" }, { "kcedil", "ķ" }, { "kgreen", "ĸ" }, { "Lacute", "Ĺ" }, { "lacute", "ĺ" }, { "Lcaron", "Ľ" }, { "lcaron", "ľ" }, { "Lcedil", "Ļ" }, { "lcedil", "ļ" }, { "Lmidot", "Ŀ" }, { "lmidot", "ŀ" }, { "Lstrok", "Ł" }, { "lstrok", "ł" }, { "Nacute", "Ń" }, { "nacute", "ń" }, { "napos", "ʼn" }, { "Ncaron", "Ň" }, { "ncaron", "ň" }, { "Ncedil", "Ņ" }, { "ncedil", "ņ" }, { "Odblac", "Ő" }, { "odblac", "ő" }, { "OElig", "Œ" }, { "oelig", "œ" }, { "Omacr", "Ō" }, { "omacr", "ō" }, { "Racute", "Ŕ" }, { "racute", "ŕ" }, { "Rcaron", "Ř" }, { "rcaron", "ř" }, { "Rcedil", "Ŗ" }, { "rcedil", "ŗ" }, { "Sacute", "Ś" }, { "sacute", "ś" }, { "Scaron", "Š" }, { "scaron", "š" }, { "Scedil", "Ş" }, { "scedil", "ş" }, { "Scirc", "Ŝ" }, { "scirc", "ŝ" }, { "Tcaron", "Ť" }, { "tcaron", "ť" }, { "Tcedil", "Ţ" }, { "tcedil", "ţ" }, { "Tstrok", "Ŧ" }, { "tstrok", "ŧ" }, { "Ubreve", "Ŭ" }, { "ubreve", "ŭ" }, { "Udblac", "Ű" }, { "udblac", "ű" }, { "Umacr", "Ū" }, { "umacr", "ū" }, { "Uogon", "Ų" }, { "uogon", "ų" }, { "Uring", "Ů" }, { "uring", "ů" }, { "Utilde", "Ũ" }, { "utilde", "ũ" }, { "Wcirc", "Ŵ" }, { "wcirc", "ŵ" }, { "Ycirc", "Ŷ" }, { "ycirc", "ŷ" }, { "Yuml", "Ÿ" }, { "Zacute", "Ź" }, { "zacute", "ź" }, { "Zcaron", "Ž" }, { "zcaron", "ž" }, { "Zdot", "Ż" }, { "zdot", "ż" }, { "apos", "'" }, { "ast", "*" }, { "brvbar", "¦" }, { "bsol", "\" }, { "cent", "¢" }, { "colon", ":" }, { "comma", "," }, { "commat", "@" }, { "copy", "©" }, { "curren", "¤" }, { "darr", "↓" }, { "deg", "°" }, { "divide", "÷" }, { "dollar", "$" }, { "equals", "=" }, { "excl", "!" }, { "frac12", "½" }, { "frac14", "¼" }, { "frac18", "⅛" }, { "frac34", "¾" }, { "frac38", "⅜" }, { "frac58", "⅝" }, { "frac78", "⅞" }, { "gt", ">" }, { "half", "½" }, { "horbar", "―" }, { "hyphen", "‐" }, { "iexcl", "¡" }, { "iquest", "¿" }, { "laquo", "«" }, { "larr", "←" }, { "lcub", "{" }, { "ldquo", "“" }, { "lowbar", "_" }, { "lpar", "(" }, { "lsqb", "[" }, { "lsquo", "‘" }, { "lt", "<" }, { "micro", "µ" }, { "middot", "·" }, { "nbsp", " " }, { "not", "¬" }, { "num", "#" }, { "ohm", "Ω" }, { "ordf", "ª" }, { "ordm", "º" }, { "para", "¶" }, { "percnt", "%" }, { "period", "." }, { "plus", "+" }, { "plusmn", "±" }, { "pound", "£" }, { "quest", "?" }, { "quot", """ }, { "raquo", "»" }, { "rarr", "→" }, { "rcub", "}" }, { "rdquo", "”" }, { "reg", "®" }, { "rpar", ")" }, { "rsqb", "]" }, { "rsquo", "’" }, { "sect", "§" }, { "semi", ";" }, { "shy", "­" }, { "sol", "/" }, { "sung", "♪" }, { "sup1", "¹" }, { "sup2", "²" }, { "sup3", "³" }, { "times", "×" }, { "trade", "™" }, { "uarr", "↑" }, { "verbar", "|" }, { "yen", "¥" }, { "blank", "␣" }, { "blk12", "▒" }, { "blk14", "░" }, { "blk34", "▓" }, { "block", "█" }, { "bull", "•" }, { "caret", "⁁" }, { "check", "✓" }, { "cir", "○" }, { "clubs", "♣" }, { "copysr", "℗" }, { "cross", "✗" }, { "Dagger", "‡" }, { "dagger", "†" }, { "dash", "‐" }, { "diams", "♦" }, { "dlcrop", "⌍" }, { "drcrop", "⌌" }, { "dtri", "▿" }, { "dtrif", "▾" }, { "emsp", " " }, { "emsp13", " " }, { "emsp14", " " }, { "ensp", " " }, { "female", "♀" }, { "ffilig", "ffi" }, { "fflig", "ff" }, { "ffllig", "ffl" }, { "filig", "fi" }, { "flat", "♭" }, { "fllig", "fl" }, { "frac13", "⅓" }, { "frac15", "⅕" }, { "frac16", "⅙" }, { "frac23", "⅔" }, { "frac25", "⅖" }, { "frac35", "⅗" }, { "frac45", "⅘" }, { "frac56", "⅚" }, { "hairsp", " " }, { "hearts", "♥" }, { "hellip", "…" }, { "hybull", "⁃" }, { "incare", "℅" }, { "ldquor", "„" }, { "lhblk", "▄" }, { "loz", "◊" }, { "lozf", "⧫" }, { "lsquor", "‚" }, { "ltri", "◃" }, { "ltrif", "◂" }, { "male", "♂" }, { "malt", "✠" }, { "marker", "▮" }, { "mdash", "—" }, { "mldr", "…" }, { "natur", "♮" }, { "ndash", "–" }, { "nldr", "‥" }, { "numsp", " " }, { "phone", "☎" }, { "puncsp", " " }, { "rdquor", "”" }, { "rect", "▭" }, { "rsquor", "’" }, { "rtri", "▹" }, { "rtrif", "▸" }, { "rx", "℞" }, { "sext", "✶" }, { "sharp", "♯" }, { "spades", "♠" }, { "squ", "□" }, { "squf", "▪" }, { "star", "☆" }, { "starf", "★" }, { "target", "⌖" }, { "telrec", "⌕" }, { "thinsp", " " }, { "uhblk", "▀" }, { "ulcrop", "⌏" }, { "urcrop", "⌎" }, { "utri", "▵" }, { "utrif", "▴" }, { "vellip", "⋮" }, { "af", "⁡" }, { "asympeq", "≍" }, { "Cross", "⨯" }, { "DD", "ⅅ" }, { "dd", "ⅆ" }, { "DownArrowBar", "⤓" }, { "DownBreve", "̑" }, { "DownLeftRightVector", "⥐" }, { "DownLeftTeeVector", "⥞" }, { "DownLeftVectorBar", "⥖" }, { "DownRightTeeVector", "⥟" }, { "DownRightVectorBar", "⥗" }, { "ee", "ⅇ" }, { "EmptySmallSquare", "◻" }, { "EmptyVerySmallSquare", "▫" }, { "Equal", "⩵" }, { "FilledSmallSquare", "◼" }, { "FilledVerySmallSquare", "▪" }, { "GreaterGreater", "⪢" }, { "Hat", "^" }, { "HorizontalLine", "─" }, { "ic", "⁣" }, { "ii", "ⅈ" }, { "it", "⁢" }, { "larrb", "⇤" }, { "LeftDownTeeVector", "⥡" }, { "LeftDownVectorBar", "⥙" }, { "LeftRightVector", "⥎" }, { "LeftTeeVector", "⥚" }, { "LeftTriangleBar", "⧏" }, { "LeftUpDownVector", "⥑" }, { "LeftUpTeeVector", "⥠" }, { "LeftUpVectorBar", "⥘" }, { "LeftVectorBar", "⥒" }, { "LessLess", "⪡" }, { "mapstodown", "↧" }, { "mapstoleft", "↤" }, { "mapstoup", "↥" }, { "MediumSpace", " " }, { "nbump", "≎̸" }, { "nbumpe", "≏̸" }, { "nesim", "≂̸" }, { "NewLine", " " }, { "NoBreak", "⁠" }, { "NotCupCap", "≭" }, { "NotHumpEqual", "≏̸" }, { "NotLeftTriangleBar", "⧏̸" }, { "NotNestedGreaterGreater", "⪢̸" }, { "NotNestedLessLess", "⪡̸" }, { "NotRightTriangleBar", "⧐̸" }, { "NotSquareSubset", "⊏̸" }, { "NotSquareSuperset", "⊐̸" }, { "NotSucceedsTilde", "≿̸" }, { "OverBar", "¯" }, { "OverBrace", "︷" }, { "OverBracket", "⎴" }, { "OverParenthesis", "︵" }, { "planckh", "ℎ" }, { "Product", "∏" }, { "rarrb", "⇥" }, { "RightDownTeeVector", "⥝" }, { "RightDownVectorBar", "⥕" }, { "RightTeeVector", "⥛" }, { "RightTriangleBar", "⧐" }, { "RightUpDownVector", "⥏" }, { "RightUpTeeVector", "⥜" }, { "RightUpVectorBar", "⥔" }, { "RightVectorBar", "⥓" }, { "RoundImplies", "⥰" }, { "RuleDelayed", "⧴" }, { "Tab", " " }, { "ThickSpace", "   " }, { "UnderBar", "̲" }, { "UnderBrace", "︸" }, { "UnderBracket", "⎵" }, { "UnderParenthesis", "︶" }, { "UpArrowBar", "⤒" }, { "Upsilon", "Υ" }, { "VerticalLine", "|" }, { "VerticalSeparator", "❘" }, { "ZeroWidthSpace", "​" }, { "angle", "∠" }, { "ApplyFunction", "⁡" }, { "approx", "≈" }, { "approxeq", "≊" }, { "Assign", "≔" }, { "backcong", "≌" }, { "backepsilon", "϶" }, { "backprime", "‵" }, { "backsim", "∽" }, { "backsimeq", "⋍" }, { "Backslash", "∖" }, { "barwedge", "⌅" }, { "Because", "∵" }, { "because", "∵" }, { "Bernoullis", "ℬ" }, { "between", "≬" }, { "bigcap", "⋂" }, { "bigcirc", "◯" }, { "bigcup", "⋃" }, { "bigodot", "⨀" }, { "bigoplus", "⨁" }, { "bigotimes", "⨂" }, { "bigsqcup", "⨆" }, { "bigstar", "★" }, { "bigtriangledown", "▽" }, { "bigtriangleup", "△" }, { "biguplus", "⨄" }, { "bigvee", "⋁" }, { "bigwedge", "⋀" }, { "bkarow", "⤍" }, { "blacklozenge", "⧫" }, { "blacksquare", "▪" }, { "blacktriangle", "▴" }, { "blacktriangledown", "▾" }, { "blacktriangleleft", "◂" }, { "blacktriangleright", "▸" }, { "bot", "⊥" }, { "boxminus", "⊟" }, { "boxplus", "⊞" }, { "boxtimes", "⊠" }, { "Breve", "˘" }, { "bullet", "•" }, { "Bumpeq", "≎" }, { "bumpeq", "≏" }, { "CapitalDifferentialD", "ⅅ" }, { "Cayleys", "ℭ" }, { "Cedilla", "¸" }, { "CenterDot", "·" }, { "centerdot", "·" }, { "checkmark", "✓" }, { "circeq", "≗" }, { "circlearrowleft", "↺" }, { "circlearrowright", "↻" }, { "circledast", "⊛" }, { "circledcirc", "⊚" }, { "circleddash", "⊝" }, { "CircleDot", "⊙" }, { "circledR", "®" }, { "circledS", "Ⓢ" }, { "CircleMinus", "⊖" }, { "CirclePlus", "⊕" }, { "CircleTimes", "⊗" }, { "ClockwiseContourIntegral", "∲" }, { "CloseCurlyDoubleQuote", "”" }, { "CloseCurlyQuote", "’" }, { "clubsuit", "♣" }, { "coloneq", "≔" }, { "complement", "∁" }, { "complexes", "ℂ" }, { "Congruent", "≡" }, { "ContourIntegral", "∮" }, { "Coproduct", "∐" }, { "CounterClockwiseContourIntegral", "∳" }, { "CupCap", "≍" }, { "curlyeqprec", "⋞" }, { "curlyeqsucc", "⋟" }, { "curlyvee", "⋎" }, { "curlywedge", "⋏" }, { "curvearrowleft", "↶" }, { "curvearrowright", "↷" }, { "dbkarow", "⤏" }, { "ddagger", "‡" }, { "ddotseq", "⩷" }, { "Del", "∇" }, { "DiacriticalAcute", "´" }, { "DiacriticalDot", "˙" }, { "DiacriticalDoubleAcute", "˝" }, { "DiacriticalGrave", "`" }, { "DiacriticalTilde", "˜" }, { "Diamond", "⋄" }, { "diamond", "⋄" }, { "diamondsuit", "♦" }, { "DifferentialD", "ⅆ" }, { "digamma", "ϝ" }, { "div", "÷" }, { "divideontimes", "⋇" }, { "doteq", "≐" }, { "doteqdot", "≑" }, { "DotEqual", "≐" }, { "dotminus", "∸" }, { "dotplus", "∔" }, { "dotsquare", "⊡" }, { "doublebarwedge", "⌆" }, { "DoubleContourIntegral", "∯" }, { "DoubleDot", "¨" }, { "DoubleDownArrow", "⇓" }, { "DoubleLeftArrow", "⇐" }, { "DoubleLeftRightArrow", "⇔" }, { "DoubleLeftTee", "⫤" }, { "DoubleLongLeftArrow", "⟸" }, { "DoubleLongLeftRightArrow", "⟺" }, { "DoubleLongRightArrow", "⟹" }, { "DoubleRightArrow", "⇒" }, { "DoubleRightTee", "⊨" }, { "DoubleUpArrow", "⇑" }, { "DoubleUpDownArrow", "⇕" }, { "DoubleVerticalBar", "∥" }, { "DownArrow", "↓" }, { "Downarrow", "⇓" }, { "downarrow", "↓" }, { "DownArrowUpArrow", "⇵" }, { "downdownarrows", "⇊" }, { "downharpoonleft", "⇃" }, { "downharpoonright", "⇂" }, { "DownLeftVector", "↽" }, { "DownRightVector", "⇁" }, { "DownTee", "⊤" }, { "DownTeeArrow", "↧" }, { "drbkarow", "⤐" }, { "Element", "∈" }, { "emptyset", "∅" }, { "eqcirc", "≖" }, { "eqcolon", "≕" }, { "eqsim", "≂" }, { "eqslantgtr", "⪖" }, { "eqslantless", "⪕" }, { "EqualTilde", "≂" }, { "Equilibrium", "⇌" }, { "Exists", "∃" }, { "expectation", "ℰ" }, { "ExponentialE", "ⅇ" }, { "exponentiale", "ⅇ" }, { "fallingdotseq", "≒" }, { "ForAll", "∀" }, { "Fouriertrf", "ℱ" }, { "geq", "≥" }, { "geqq", "≧" }, { "geqslant", "⩾" }, { "gg", "≫" }, { "ggg", "⋙" }, { "gnapprox", "⪊" }, { "gneq", "⪈" }, { "gneqq", "≩" }, { "GreaterEqual", "≥" }, { "GreaterEqualLess", "⋛" }, { "GreaterFullEqual", "≧" }, { "GreaterLess", "≷" }, { "GreaterSlantEqual", "⩾" }, { "GreaterTilde", "≳" }, { "gtrapprox", "⪆" }, { "gtrdot", "⋗" }, { "gtreqless", "⋛" }, { "gtreqqless", "⪌" }, { "gtrless", "≷" }, { "gtrsim", "≳" }, { "gvertneqq", "≩︀" }, { "Hacek", "ˇ" }, { "hbar", "ℏ" }, { "heartsuit", "♥" }, { "HilbertSpace", "ℋ" }, { "hksearow", "⤥" }, { "hkswarow", "⤦" }, { "hookleftarrow", "↩" }, { "hookrightarrow", "↪" }, { "hslash", "ℏ" }, { "HumpDownHump", "≎" }, { "HumpEqual", "≏" }, { "iiiint", "⨌" }, { "iiint", "∭" }, { "Im", "ℑ" }, { "ImaginaryI", "ⅈ" }, { "imagline", "ℐ" }, { "imagpart", "ℑ" }, { "Implies", "⇒" }, { "in", "∈" }, { "integers", "ℤ" }, { "Integral", "∫" }, { "intercal", "⊺" }, { "Intersection", "⋂" }, { "intprod", "⨼" }, { "InvisibleComma", "⁣" }, { "InvisibleTimes", "⁢" }, { "langle", "〈" }, { "Laplacetrf", "ℒ" }, { "lbrace", "{" }, { "lbrack", "[" }, { "LeftAngleBracket", "〈" }, { "LeftArrow", "←" }, { "Leftarrow", "⇐" }, { "leftarrow", "←" }, { "LeftArrowBar", "⇤" }, { "LeftArrowRightArrow", "⇆" }, { "leftarrowtail", "↢" }, { "LeftCeiling", "⌈" }, { "LeftDoubleBracket", "〚" }, { "LeftDownVector", "⇃" }, { "LeftFloor", "⌊" }, { "leftharpoondown", "↽" }, { "leftharpoonup", "↼" }, { "leftleftarrows", "⇇" }, { "LeftRightArrow", "↔" }, { "Leftrightarrow", "⇔" }, { "leftrightarrow", "↔" }, { "leftrightarrows", "⇆" }, { "leftrightharpoons", "⇋" }, { "leftrightsquigarrow", "↭" }, { "LeftTee", "⊣" }, { "LeftTeeArrow", "↤" }, { "leftthreetimes", "⋋" }, { "LeftTriangle", "⊲" }, { "LeftTriangleEqual", "⊴" }, { "LeftUpVector", "↿" }, { "LeftVector", "↼" }, { "leq", "≤" }, { "leqq", "≦" }, { "leqslant", "⩽" }, { "lessapprox", "⪅" }, { "lessdot", "⋖" }, { "lesseqgtr", "⋚" }, { "lesseqqgtr", "⪋" }, { "LessEqualGreater", "⋚" }, { "LessFullEqual", "≦" }, { "LessGreater", "≶" }, { "lessgtr", "≶" }, { "lesssim", "≲" }, { "LessSlantEqual", "⩽" }, { "LessTilde", "≲" }, { "ll", "≪" }, { "llcorner", "⌞" }, { "Lleftarrow", "⇚" }, { "lmoustache", "⎰" }, { "lnapprox", "⪉" }, { "lneq", "⪇" }, { "lneqq", "≨" }, { "LongLeftArrow", "⟵" }, { "Longleftarrow", "⟸" }, { "longleftarrow", "⟵" }, { "LongLeftRightArrow", "⟷" }, { "Longleftrightarrow", "⟺" }, { "longleftrightarrow", "⟷" }, { "longmapsto", "⟼" }, { "LongRightArrow", "⟶" }, { "Longrightarrow", "⟹" }, { "longrightarrow", "⟶" }, { "looparrowleft", "↫" }, { "looparrowright", "↬" }, { "LowerLeftArrow", "↙" }, { "LowerRightArrow", "↘" }, { "lozenge", "◊" }, { "lrcorner", "⌟" }, { "Lsh", "↰" }, { "lvertneqq", "≨︀" }, { "maltese", "✠" }, { "mapsto", "↦" }, { "measuredangle", "∡" }, { "Mellintrf", "ℳ" }, { "MinusPlus", "∓" }, { "mp", "∓" }, { "multimap", "⊸" }, { "napprox", "≉" }, { "natural", "♮" }, { "naturals", "ℕ" }, { "nearrow", "↗" }, { "NegativeMediumSpace", "​" }, { "NegativeThickSpace", "​" }, { "NegativeThinSpace", "​" }, { "NegativeVeryThinSpace", "​" }, { "NestedGreaterGreater", "≫" }, { "NestedLessLess", "≪" }, { "nexists", "∄" }, { "ngeq", "≱" }, { "ngeqq", "≧̸" }, { "ngeqslant", "⩾̸" }, { "ngtr", "≯" }, { "nLeftarrow", "⇍" }, { "nleftarrow", "↚" }, { "nLeftrightarrow", "⇎" }, { "nleftrightarrow", "↮" }, { "nleq", "≰" }, { "nleqq", "≦̸" }, { "nleqslant", "⩽̸" }, { "nless", "≮" }, { "NonBreakingSpace", " " }, { "NotCongruent", "≢" }, { "NotDoubleVerticalBar", "∦" }, { "NotElement", "∉" }, { "NotEqual", "≠" }, { "NotEqualTilde", "≂̸" }, { "NotExists", "∄" }, { "NotGreater", "≯" }, { "NotGreaterEqual", "≱" }, { "NotGreaterFullEqual", "≦̸" }, { "NotGreaterGreater", "≫̸" }, { "NotGreaterLess", "≹" }, { "NotGreaterSlantEqual", "⩾̸" }, { "NotGreaterTilde", "≵" }, { "NotHumpDownHump", "≎̸" }, { "NotLeftTriangle", "⋪" }, { "NotLeftTriangleEqual", "⋬" }, { "NotLess", "≮" }, { "NotLessEqual", "≰" }, { "NotLessGreater", "≸" }, { "NotLessLess", "≪̸" }, { "NotLessSlantEqual", "⩽̸" }, { "NotLessTilde", "≴" }, { "NotPrecedes", "⊀" }, { "NotPrecedesEqual", "⪯̸" }, { "NotPrecedesSlantEqual", "⋠" }, { "NotReverseElement", "∌" }, { "NotRightTriangle", "⋫" }, { "NotRightTriangleEqual", "⋭" }, { "NotSquareSubsetEqual", "⋢" }, { "NotSquareSupersetEqual", "⋣" }, { "NotSubset", "⊂⃒" }, { "NotSubsetEqual", "⊈" }, { "NotSucceeds", "⊁" }, { "NotSucceedsEqual", "⪰̸" }, { "NotSucceedsSlantEqual", "⋡" }, { "NotSuperset", "⊃⃒" }, { "NotSupersetEqual", "⊉" }, { "NotTilde", "≁" }, { "NotTildeEqual", "≄" }, { "NotTildeFullEqual", "≇" }, { "NotTildeTilde", "≉" }, { "NotVerticalBar", "∤" }, { "nparallel", "∦" }, { "nprec", "⊀" }, { "npreceq", "⪯̸" }, { "nRightarrow", "⇏" }, { "nrightarrow", "↛" }, { "nshortmid", "∤" }, { "nshortparallel", "∦" }, { "nsimeq", "≄" }, { "nsubset", "⊂⃒" }, { "nsubseteq", "⊈" }, { "nsubseteqq", "⫅̸" }, { "nsucc", "⊁" }, { "nsucceq", "⪰̸" }, { "nsupset", "⊃⃒" }, { "nsupseteq", "⊉" }, { "nsupseteqq", "⫆̸" }, { "ntriangleleft", "⋪" }, { "ntrianglelefteq", "⋬" }, { "ntriangleright", "⋫" }, { "ntrianglerighteq", "⋭" }, { "nwarrow", "↖" }, { "oint", "∮" }, { "OpenCurlyDoubleQuote", "“" }, { "OpenCurlyQuote", "‘" }, { "orderof", "ℴ" }, { "parallel", "∥" }, { "PartialD", "∂" }, { "pitchfork", "⋔" }, { "PlusMinus", "±" }, { "pm", "±" }, { "Poincareplane", "ℌ" }, { "prec", "≺" }, { "precapprox", "⪷" }, { "preccurlyeq", "≼" }, { "Precedes", "≺" }, { "PrecedesEqual", "⪯" }, { "PrecedesSlantEqual", "≼" }, { "PrecedesTilde", "≾" }, { "preceq", "⪯" }, { "precnapprox", "⪹" }, { "precneqq", "⪵" }, { "precnsim", "⋨" }, { "precsim", "≾" }, { "primes", "ℙ" }, { "Proportion", "∷" }, { "Proportional", "∝" }, { "propto", "∝" }, { "quaternions", "ℍ" }, { "questeq", "≟" }, { "rangle", "〉" }, { "rationals", "ℚ" }, { "rbrace", "}" }, { "rbrack", "]" }, { "Re", "ℜ" }, { "realine", "ℛ" }, { "realpart", "ℜ" }, { "reals", "ℝ" }, { "ReverseElement", "∋" }, { "ReverseEquilibrium", "⇋" }, { "ReverseUpEquilibrium", "⥯" }, { "RightAngleBracket", "〉" }, { "RightArrow", "→" }, { "Rightarrow", "⇒" }, { "rightarrow", "→" }, { "RightArrowBar", "⇥" }, { "RightArrowLeftArrow", "⇄" }, { "rightarrowtail", "↣" }, { "RightCeiling", "⌉" }, { "RightDoubleBracket", "〛" }, { "RightDownVector", "⇂" }, { "RightFloor", "⌋" }, { "rightharpoondown", "⇁" }, { "rightharpoonup", "⇀" }, { "rightleftarrows", "⇄" }, { "rightleftharpoons", "⇌" }, { "rightrightarrows", "⇉" }, { "rightsquigarrow", "↝" }, { "RightTee", "⊢" }, { "RightTeeArrow", "↦" }, { "rightthreetimes", "⋌" }, { "RightTriangle", "⊳" }, { "RightTriangleEqual", "⊵" }, { "RightUpVector", "↾" }, { "RightVector", "⇀" }, { "risingdotseq", "≓" }, { "rmoustache", "⎱" }, { "Rrightarrow", "⇛" }, { "Rsh", "↱" }, { "searrow", "↘" }, { "setminus", "∖" }, { "ShortDownArrow", "↓" }, { "ShortLeftArrow", "←" }, { "shortmid", "∣" }, { "shortparallel", "∥" }, { "ShortRightArrow", "→" }, { "ShortUpArrow", "↑" }, { "simeq", "≃" }, { "SmallCircle", "∘" }, { "smallsetminus", "∖" }, { "spadesuit", "♠" }, { "Sqrt", "√" }, { "sqsubset", "⊏" }, { "sqsubseteq", "⊑" }, { "sqsupset", "⊐" }, { "sqsupseteq", "⊒" }, { "Square", "□" }, { "SquareIntersection", "⊓" }, { "SquareSubset", "⊏" }, { "SquareSubsetEqual", "⊑" }, { "SquareSuperset", "⊐" }, { "SquareSupersetEqual", "⊒" }, { "SquareUnion", "⊔" }, { "Star", "⋆" }, { "straightepsilon", "ε" }, { "straightphi", "ϕ" }, { "Subset", "⋐" }, { "subset", "⊂" }, { "subseteq", "⊆" }, { "subseteqq", "⫅" }, { "SubsetEqual", "⊆" }, { "subsetneq", "⊊" }, { "subsetneqq", "⫋" }, { "succ", "≻" }, { "succapprox", "⪸" }, { "succcurlyeq", "≽" }, { "Succeeds", "≻" }, { "SucceedsEqual", "⪰" }, { "SucceedsSlantEqual", "≽" }, { "SucceedsTilde", "≿" }, { "succeq", "⪰" }, { "succnapprox", "⪺" }, { "succneqq", "⪶" }, { "succnsim", "⋩" }, { "succsim", "≿" }, { "SuchThat", "∋" }, { "Sum", "∑" }, { "Superset", "⊃" }, { "SupersetEqual", "⊇" }, { "Supset", "⋑" }, { "supset", "⊃" }, { "supseteq", "⊇" }, { "supseteqq", "⫆" }, { "supsetneq", "⊋" }, { "supsetneqq", "⫌" }, { "swarrow", "↙" }, { "Therefore", "∴" }, { "therefore", "∴" }, { "thickapprox", "≈" }, { "thicksim", "∼" }, { "ThinSpace", " " }, { "Tilde", "∼" }, { "TildeEqual", "≃" }, { "TildeFullEqual", "≅" }, { "TildeTilde", "≈" }, { "toea", "⤨" }, { "tosa", "⤩" }, { "triangle", "▵" }, { "triangledown", "▿" }, { "triangleleft", "◃" }, { "trianglelefteq", "⊴" }, { "triangleq", "≜" }, { "triangleright", "▹" }, { "trianglerighteq", "⊵" }, { "TripleDot", "⃛" }, { "twoheadleftarrow", "↞" }, { "twoheadrightarrow", "↠" }, { "ulcorner", "⌜" }, { "Union", "⋃" }, { "UnionPlus", "⊎" }, { "UpArrow", "↑" }, { "Uparrow", "⇑" }, { "uparrow", "↑" }, { "UpArrowDownArrow", "⇅" }, { "UpDownArrow", "↕" }, { "Updownarrow", "⇕" }, { "updownarrow", "↕" }, { "UpEquilibrium", "⥮" }, { "upharpoonleft", "↿" }, { "upharpoonright", "↾" }, { "UpperLeftArrow", "↖" }, { "UpperRightArrow", "↗" }, { "upsilon", "υ" }, { "UpTee", "⊥" }, { "UpTeeArrow", "↥" }, { "upuparrows", "⇈" }, { "urcorner", "⌝" }, { "varepsilon", "ɛ" }, { "varkappa", "ϰ" }, { "varnothing", "∅" }, { "varphi", "φ" }, { "varpi", "ϖ" }, { "varpropto", "∝" }, { "varrho", "ϱ" }, { "varsigma", "ς" }, { "varsubsetneq", "⊊︀" }, { "varsubsetneqq", "⫋︀" }, { "varsupsetneq", "⊋︀" }, { "varsupsetneqq", "⫌︀" }, { "vartheta", "ϑ" }, { "vartriangleleft", "⊲" }, { "vartriangleright", "⊳" }, { "Vee", "⋁" }, { "vee", "∨" }, { "Vert", "‖" }, { "vert", "|" }, { "VerticalBar", "∣" }, { "VerticalTilde", "≀" }, { "VeryThinSpace", " " }, { "Wedge", "⋀" }, { "wedge", "∧" }, { "wp", "℘" }, { "wr", "≀" }, { "zeetrf", "ℨ" }, { 0, 0 } }; // ******************************************************************* // MmlDocument // ******************************************************************* QString MmlDocument::fontName(QtMmlWidget::MmlFont type) const { switch (type) { case QtMmlWidget::NormalFont: return m_normal_font_name; case QtMmlWidget::FrakturFont: return m_fraktur_font_name; case QtMmlWidget::SansSerifFont: return m_sans_serif_font_name; case QtMmlWidget::ScriptFont: return m_script_font_name; case QtMmlWidget::MonospaceFont: return m_monospace_font_name; case QtMmlWidget::DoublestruckFont: return m_doublestruck_font_name; }; return QString(); } void MmlDocument::setFontName(QtMmlWidget::MmlFont type, const QString &name) { switch (type) { case QtMmlWidget::NormalFont: m_normal_font_name = name; break; case QtMmlWidget::FrakturFont: m_fraktur_font_name = name; break; case QtMmlWidget::SansSerifFont: m_sans_serif_font_name = name; break; case QtMmlWidget::ScriptFont: m_script_font_name = name; break; case QtMmlWidget::MonospaceFont: m_monospace_font_name = name; break; case QtMmlWidget::DoublestruckFont: m_doublestruck_font_name = name; break; }; } Mml::NodeType domToMmlNodeType(const QDomNode &dom_node) { Mml::NodeType mml_type = Mml::NoNode; switch (dom_node.nodeType()) { case QDomNode::ElementNode: { QString tag = dom_node.nodeName(); const NodeSpec *spec = mmlFindNodeSpec(tag); // treat urecognised tags as mrow if (spec == 0) mml_type = Mml::UnknownNode; else mml_type = spec->type; break; } case QDomNode::TextNode: mml_type = Mml::TextNode; break; case QDomNode::DocumentNode: mml_type = Mml::MrowNode; break; case QDomNode::EntityReferenceNode: // qWarning("EntityReferenceNode: name=\"" + dom_node.nodeName() + "\" value=\"" + dom_node.nodeValue() + "\""); break; case QDomNode::AttributeNode: case QDomNode::CDATASectionNode: case QDomNode::EntityNode: case QDomNode::ProcessingInstructionNode: case QDomNode::CommentNode: case QDomNode::DocumentTypeNode: case QDomNode::DocumentFragmentNode: case QDomNode::NotationNode: case QDomNode::BaseNode: case QDomNode::CharacterDataNode: break; } return mml_type; } MmlDocument::MmlDocument() { m_root_node = 0; // Some defaults which happen to work on my computer, // but probably won't work on other's #if defined(Q_WS_WIN) m_normal_font_name = "Times New Roman"; #else m_normal_font_name = "Century Schoolbook L"; #endif m_fraktur_font_name = "Fraktur"; m_sans_serif_font_name = "Luxi Sans"; m_script_font_name = "Urw Chancery L"; m_monospace_font_name = "Luxi Mono"; m_doublestruck_font_name = "Doublestruck"; m_base_font_point_size = 16; m_foreground_color = Qt::black; m_background_color = Qt::white; } MmlDocument::~MmlDocument() { clear(); } void MmlDocument::clear() { delete m_root_node; m_root_node = 0; } void MmlDocument::dump() const { if (m_root_node == 0) return; QString indent; _dump(m_root_node, indent); } void MmlDocument::_dump(const MmlNode *node, QString &indent) const { if (node == 0) return; qWarning("%s", (indent + node->toStr()).toLatin1().data()); indent += " "; const MmlNode *child = node->firstChild(); for (; child != 0; child = child->nextSibling()) _dump(child, indent); indent.truncate(indent.length() - 2); } bool MmlDocument::setContent(QString text, QString *errorMsg, int *errorLine, int *errorColumn) { clear(); QString prefix = "\n"; prefix.append(entityDeclarations()); uint prefix_lines = 0; for (int i = 0; i < prefix.length(); ++i) { if (prefix.at(i) == '\n') ++prefix_lines; } QDomDocument dom; if (!dom.setContent(prefix + text, false, errorMsg, errorLine, errorColumn)) { if (errorLine != 0) *errorLine -= prefix_lines; return false; } // we don't have access to line info from now on if (errorLine != 0) *errorLine = -1; if (errorColumn != 0) *errorColumn = -1; bool ok; MmlNode *root_node = domToMml(dom, &ok, errorMsg); if (!ok) return false; if (root_node == 0) { if (errorMsg != 0) *errorMsg = "empty document"; return false; } insertChild(0, root_node, 0); layout(); /* QFile of("/tmp/dump.xml"); of.open(IO_WriteOnly); QTextStream os(&of); os.setEncoding(QTextStream::UnicodeUTF8); os << dom.toString(); */ return true; } void MmlDocument::layout() { if (m_root_node == 0) return; m_root_node->layout(); m_root_node->stretch(); // dump(); } bool MmlDocument::insertChild(MmlNode *parent, MmlNode *new_node, QString *errorMsg) { if (new_node == 0) return true; Q_ASSERT(new_node->parent() == 0 && new_node->nextSibling() == 0 && new_node->previousSibling() == 0); if (parent != 0) { if (!mmlCheckChildType(parent->nodeType(), new_node->nodeType(), errorMsg)) return false; } if (parent == 0) { if (m_root_node == 0) m_root_node = new_node; else { MmlNode *n = m_root_node->lastSibling(); n->m_next_sibling = new_node; new_node->m_previous_sibling = n; } } else { new_node->m_parent = parent; if (parent->hasChildNodes()) { MmlNode *n = parent->firstChild()->lastSibling(); n->m_next_sibling = new_node; new_node->m_previous_sibling = n; } else parent->m_first_child = new_node; } return true; } MmlNode *MmlDocument::createNode(NodeType type, const MmlAttributeMap &mml_attr, const QString &mml_value, QString *errorMsg) { Q_ASSERT(type != NoNode); MmlNode *mml_node = 0; if (!mmlCheckAttributes(type, mml_attr, errorMsg)) return 0; switch (type) { case MiNode: mml_node = new MmlMiNode(this, mml_attr); break; case MnNode: mml_node = new MmlMnNode(this, mml_attr); break; case MfracNode: mml_node = new MmlMfracNode(this, mml_attr); break; case MrowNode: mml_node = new MmlMrowNode(this, mml_attr); break; case MsqrtNode: mml_node = new MmlMsqrtNode(this, mml_attr); break; case MrootNode: mml_node = new MmlMrootNode(this, mml_attr); break; case MsupNode: mml_node = new MmlMsupNode(this, mml_attr); break; case MsubNode: mml_node = new MmlMsubNode(this, mml_attr); break; case MsubsupNode: mml_node = new MmlMsubsupNode(this, mml_attr); break; case MoNode: mml_node = new MmlMoNode(this, mml_attr); break; case MstyleNode: mml_node = new MmlMstyleNode(this, mml_attr); break; case TextNode: mml_node = new MmlTextNode(mml_value, this); break; case MphantomNode: mml_node = new MmlMphantomNode(this, mml_attr); break; case MfencedNode: mml_node = new MmlMfencedNode(this, mml_attr); break; case MtableNode: mml_node = new MmlMtableNode(this, mml_attr); break; case MtrNode: mml_node = new MmlMtrNode(this, mml_attr); break; case MtdNode: mml_node = new MmlMtdNode(this, mml_attr); break; case MoverNode: mml_node = new MmlMoverNode(this, mml_attr); break; case MunderNode: mml_node = new MmlMunderNode(this, mml_attr); break; case MunderoverNode: mml_node = new MmlMunderoverNode(this, mml_attr); break; case MalignMarkNode: mml_node = new MmlMalignMarkNode(this); break; case MerrorNode: mml_node = new MmlMerrorNode(this, mml_attr); break; case MtextNode: mml_node = new MmlMtextNode(this, mml_attr); break; case MpaddedNode: mml_node = new MmlMpaddedNode(this, mml_attr); break; case MspaceNode: mml_node = new MmlMspaceNode(this, mml_attr); break; case UnknownNode: mml_node = new MmlUnknownNode(this, mml_attr); break; case NoNode: mml_node = 0; break; } return mml_node; } void MmlDocument::insertOperator(MmlNode *node, const QString &text) { MmlNode *text_node = createNode(TextNode, MmlAttributeMap(), text, 0); MmlNode *mo_node = createNode(MoNode, MmlAttributeMap(), QString(), 0); bool ok = insertChild(node, mo_node, 0); Q_ASSERT( ok ); ok = insertChild(mo_node, text_node, 0); Q_ASSERT( ok ); } MmlNode *MmlDocument::domToMml(const QDomNode &dom_node, bool *ok, QString *errorMsg) { // create the node Q_ASSERT(ok != 0); NodeType mml_type = domToMmlNodeType(dom_node); if (mml_type == NoNode) { *ok = true; return 0; } QDomNamedNodeMap dom_attr = dom_node.attributes(); MmlAttributeMap mml_attr; for (int i = 0; i < int(dom_attr.length()); ++i) { QDomNode attr_node = dom_attr.item(i); Q_ASSERT(!attr_node.nodeName().isNull()); Q_ASSERT(!attr_node.nodeValue().isNull()); mml_attr[attr_node.nodeName()] = attr_node.nodeValue(); } QString mml_value; if (mml_type == TextNode) mml_value = dom_node.nodeValue(); MmlNode *mml_node = createNode(mml_type, mml_attr, mml_value, errorMsg); if (mml_node == 0) { *ok = false; return 0; } // create the node's children according to the child_spec const NodeSpec *spec = mmlFindNodeSpec(mml_type); QDomNodeList dom_child_list = dom_node.childNodes(); int child_cnt = dom_child_list.count(); MmlNode *mml_child = 0; QString separator_list; if (mml_type == MfencedNode) separator_list = mml_node->explicitAttribute("separators", ","); switch (spec->child_spec) { case NodeSpec::ChildIgnore: break; case NodeSpec::ImplicitMrow: if (child_cnt > 0) { mml_child = createImplicitMrowNode(dom_node, ok, errorMsg); if (!*ok) { delete mml_node; return 0; } if (!insertChild(mml_node, mml_child, errorMsg)) { delete mml_node; delete mml_child; *ok = false; return 0; } } break; default: // exact ammount of children specified - check... if (spec->child_spec != child_cnt) { if (errorMsg != 0) *errorMsg = QString("element ") + spec->tag + " requires exactly " + QString::number(spec->child_spec) + " arguments, got " + QString::number(child_cnt); delete mml_node; *ok = false; return 0; } // ...and continue just as in ChildAny case NodeSpec::ChildAny: if (mml_type == MfencedNode) insertOperator(mml_node, mml_node->explicitAttribute("open", "(")); for (int i = 0; i < child_cnt; ++i) { QDomNode dom_child = dom_child_list.item(i); MmlNode *mml_child = domToMml(dom_child, ok, errorMsg); if (!*ok) { delete mml_node; return 0; } if (mml_type == MtableNode && mml_child->nodeType() != MtrNode) { MmlNode *mtr_node = createNode(MtrNode, MmlAttributeMap(), QString(), 0); insertChild(mml_node, mtr_node, 0); if (!insertChild(mtr_node, mml_child, errorMsg)) { delete mml_node; delete mml_child; *ok = false; return 0; } } else if (mml_type == MtrNode && mml_child->nodeType() != MtdNode) { MmlNode *mtd_node = createNode(MtdNode, MmlAttributeMap(), QString(), 0); insertChild(mml_node, mtd_node, 0); if (!insertChild(mtd_node, mml_child, errorMsg)) { delete mml_node; delete mml_child; *ok = false; return 0; } } else { if (!insertChild(mml_node, mml_child, errorMsg)) { delete mml_node; delete mml_child; *ok = false; return 0; } } if (i < child_cnt - 1 && mml_type == MfencedNode && !separator_list.isEmpty()) { QChar separator; if (i >= (int)separator_list.length()) separator = separator_list.at(separator_list.length() - 1); else separator = separator_list[i]; insertOperator(mml_node, QString(separator)); } } if (mml_type == MfencedNode) insertOperator(mml_node, mml_node->explicitAttribute("close", ")")); break; } *ok = true; return mml_node; } MmlNode *MmlDocument::createImplicitMrowNode(const QDomNode &dom_node, bool *ok, QString *errorMsg) { QDomNodeList dom_child_list = dom_node.childNodes(); int child_cnt = dom_child_list.count(); if (child_cnt == 0) { *ok = true; return 0; } if (child_cnt == 1) return domToMml(dom_child_list.item(0), ok, errorMsg); MmlNode *mml_node = createNode(MrowNode, MmlAttributeMap(), QString(), errorMsg); Q_ASSERT(mml_node != 0); // there is no reason in heaven or hell for this to fail for (int i = 0; i < child_cnt; ++i) { QDomNode dom_child = dom_child_list.item(i); MmlNode *mml_child = domToMml(dom_child, ok, errorMsg); if (!*ok) { delete mml_node; return 0; } if (!insertChild(mml_node, mml_child, errorMsg)) { delete mml_node; delete mml_child; *ok = false; return 0; } } return mml_node; } void MmlDocument::paint(QPainter *p, const QPoint &pos) const { if (m_root_node == 0) return; /* p->save(); p->setPen(Qt::blue); p->drawLine(pos.x() - 5, pos.y(), pos.x() + 5, pos.y()); p->drawLine(pos.x(), pos.y() - 5, pos.x(), pos.y() + 5); p->restore(); */ QRect mr = m_root_node->myRect(); m_root_node->setRelOrigin(pos - mr.topLeft()); m_root_node->paint(p); } QSize MmlDocument::size() const { if (m_root_node == 0) return QSize(0, 0); return m_root_node->deviceRect().size(); } // ******************************************************************* // MmlNode // ******************************************************************* MmlNode::MmlNode(NodeType type, MmlDocument *document, const MmlAttributeMap &attribute_map) { m_parent = 0; m_first_child = 0; m_next_sibling = 0; m_previous_sibling = 0; m_node_type = type; m_document = document; m_attribute_map = attribute_map; m_my_rect = m_parent_rect = QRect(0, 0, 0, 0); m_rel_origin = QPoint(0, 0); m_stretched = false; } MmlNode::~MmlNode() { MmlNode *n = firstChild(); while (n != 0) { MmlNode *tmp = n->nextSibling(); delete n; n = tmp; } } static QString rectToStr(const QRect &rect) { return QString("[(%1, %2), %3x%4]") .arg(rect.x()) .arg(rect.y()) .arg(rect.width()) .arg(rect.height()); } QString MmlNode::toStr() const { const NodeSpec *spec = mmlFindNodeSpec(nodeType()); Q_ASSERT(spec != 0); return QString("%1 %2 mr=%3 pr=%4 dr=%5 ro=(%7, %8) str=%9") .arg(spec->type_str) .arg((unsigned long)this, 0, 16) .arg(rectToStr(myRect())) .arg(rectToStr(parentRect())) .arg(rectToStr(deviceRect())) .arg(m_rel_origin.x()) .arg(m_rel_origin.y()) .arg((int)isStretched()); } int MmlNode::interpretSpacing(const QString &value, bool *ok) const { return ::interpretSpacing(value, em(), ex(), ok); } int MmlNode::basePos() const { QFontMetrics fm(font()); return fm.strikeOutPos(); } int MmlNode::underlinePos() const { QFontMetrics fm(font()); return basePos() + fm.underlinePos(); } int MmlNode::overlinePos() const { QFontMetrics fm(font()); return basePos() - fm.overlinePos(); } MmlNode *MmlNode::lastSibling() const { const MmlNode *n = this; while (!n->isLastSibling()) n = n->nextSibling(); return const_cast(n); } MmlNode *MmlNode::firstSibling() const { const MmlNode *n = this; while (!n->isFirstSibling()) n = n->previousSibling(); return const_cast(n); } int MmlNode::em() const { return QFontMetrics(font()).boundingRect('m').width(); } int MmlNode::ex() const { return QFontMetrics(font()).boundingRect('x').height(); } int MmlNode::scriptlevel(const MmlNode *) const { int parent_sl; const MmlNode *p = parent(); if (p == 0) parent_sl = 0; else parent_sl = p->scriptlevel(this); QString expl_sl_str = explicitAttribute("scriptlevel"); if (expl_sl_str.isNull()) return parent_sl; if (expl_sl_str.startsWith("+") || expl_sl_str.startsWith("-")) { bool ok; int expl_sl = expl_sl_str.toInt(&ok); if (ok) { return parent_sl + expl_sl; } else { qWarning("MmlNode::scriptlevel(): bad value %s", expl_sl_str.toLatin1().data()); return parent_sl; } } bool ok; int expl_sl = expl_sl_str.toInt(&ok); if (ok) return expl_sl; if (expl_sl_str == "+") return parent_sl + 1; else if (expl_sl_str == "-") return parent_sl - 1; else { qWarning("MmlNode::scriptlevel(): could not parse value: \"%s\"", expl_sl_str.toLatin1().data()); return parent_sl; } } QPoint MmlNode::devicePoint(const QPoint &p) const { QRect mr = myRect(); QRect dr = deviceRect(); if (isStretched()) return dr.topLeft() + QPoint((p.x() - mr.left())*dr.width()/mr.width(), (p.y() - mr.top())*dr.height()/mr.height()); else return dr.topLeft() + p - mr.topLeft(); } QString MmlNode::inheritAttributeFromMrow(const QString &name, const QString &def) const { const MmlNode *p = this; for (; p != 0; p = p->parent()) { if (p == this || p->nodeType() == MstyleNode) { QString value = p->explicitAttribute(name); if (!value.isNull()) return value; } } return def; } QColor MmlNode::color() const { // If we are child of return red const MmlNode *p = this; for (; p != 0; p = p->parent()) { if (p->nodeType() == MerrorNode) return QColor("red"); } QString value_str = inheritAttributeFromMrow("mathcolor"); if (value_str.isNull()) value_str = inheritAttributeFromMrow("color"); if (value_str.isNull()) return QColor(); return QColor(value_str); } QColor MmlNode::background() const { QString value_str = inheritAttributeFromMrow("mathbackground"); if (value_str.isNull()) value_str = inheritAttributeFromMrow("background"); if (value_str.isNull()) return QColor(); return QColor(value_str); } static void updateFontAttr(MmlAttributeMap &font_attr, const MmlNode *n, const QString &name, const QString &preferred_name = QString()) { if (font_attr.contains(preferred_name) || font_attr.contains(name)) return; QString value = n->explicitAttribute(name); if (!value.isNull()) font_attr[name] = value; } static MmlAttributeMap collectFontAttributes(const MmlNode *node) { MmlAttributeMap font_attr; for (const MmlNode *n = node; n != 0; n = n->parent()) { if (n == node || n->nodeType() == Mml::MstyleNode) { updateFontAttr(font_attr, n, "mathvariant"); updateFontAttr(font_attr, n, "mathsize"); // depreciated attributes updateFontAttr(font_attr, n, "fontsize", "mathsize"); updateFontAttr(font_attr, n, "fontweight", "mathvariant"); updateFontAttr(font_attr, n, "fontstyle", "mathvariant"); updateFontAttr(font_attr, n, "fontfamily", "mathvariant"); } } return font_attr; } QFont MmlNode::font() const { QFont fn(document()->fontName(QtMmlWidget::NormalFont), document()->baseFontPointSize()); int ps = fn.pointSize(); int sl = scriptlevel(); if (sl >= 0) { for (int i = 0; i < sl; ++i) ps = (int)(ps*g_script_size_multiplier); } else { for (int i = 0; i > sl; --i) ps = (int)(ps/g_script_size_multiplier); } if (ps < g_min_font_point_size) ps = g_min_font_point_size; fn.setPointSize(ps); int em = QFontMetrics(fn).boundingRect('m').width(); int ex = QFontMetrics(fn).boundingRect('x').height(); MmlAttributeMap font_attr = collectFontAttributes(this); if (font_attr.contains("mathvariant")) { QString value = font_attr["mathvariant"]; bool ok; uint mv = interpretMathVariant(value, &ok); if (ok) { if (mv & ScriptMV) fn.setFamily(document()->fontName(QtMmlWidget::ScriptFont)); if (mv & FrakturMV) fn.setFamily(document()->fontName(QtMmlWidget::FrakturFont)); if (mv & SansSerifMV) fn.setFamily(document()->fontName(QtMmlWidget::SansSerifFont)); if (mv & MonospaceMV) fn.setFamily(document()->fontName(QtMmlWidget::MonospaceFont)); if (mv & DoubleStruckMV) fn.setFamily(document()->fontName(QtMmlWidget::DoublestruckFont)); if (mv & BoldMV) fn.setBold(true); if (mv & ItalicMV) fn.setItalic(true); } } if (font_attr.contains("mathsize")) { QString value = font_attr["mathsize"]; fn = interpretMathSize(value, fn, em, ex, 0); } fn = interpretDepreciatedFontAttr(font_attr, fn, em, ex); if (nodeType() == MiNode && !font_attr.contains("mathvariant") && !font_attr.contains("fontstyle")) { const MmlMiNode *mi_node = (const MmlMiNode*) this; if (mi_node->text().length() == 1) fn.setItalic(true); } if (nodeType() == MoNode) { fn.setItalic(false); fn.setBold(false); } return fn; } QString MmlNode::explicitAttribute(const QString &name, const QString &def) const { MmlAttributeMap::const_iterator it = m_attribute_map.find(name); if (it != m_attribute_map.end()) return *it; return def; } QRect MmlNode::parentRect() const { if (isStretched()) return m_parent_rect; QRect mr = myRect(); QPoint ro = relOrigin(); return QRect(ro + mr.topLeft(), mr.size()); } void MmlNode::stretchTo(const QRect &rect) { m_parent_rect = rect; m_stretched = true; } void MmlNode::setRelOrigin(const QPoint &rel_origin) { m_rel_origin = rel_origin + QPoint(-myRect().left(), 0); m_stretched = false; } void MmlNode::updateMyRect() { m_my_rect = symbolRect(); MmlNode *child = firstChild(); for (; child != 0; child = child->nextSibling()) m_my_rect |= child->parentRect(); } void MmlNode::layout() { m_parent_rect = QRect(0, 0, 0, 0); m_stretched = false; m_rel_origin = QPoint(0, 0); MmlNode *child = firstChild(); for (; child != 0; child = child->nextSibling()) child->layout(); layoutSymbol(); updateMyRect(); if (parent() == 0) m_rel_origin = QPoint(0, 0); } QRect MmlNode::deviceRect() const { if (parent() == 0) return QRect(relOrigin() + myRect().topLeft(), myRect().size()); /* if (!isStretched()) { QRect pdr = parent()->deviceRect(); QRect pmr = parent()->myRect(); QRect pr = parentRect(); QRect mr = myRect(); return QRect(pdr.left() + pr.left() - pmr.left(), pdr.top() + pr.top() - pmr.top(), mr.width(), mr.height()); } */ QRect pdr = parent()->deviceRect(); QRect pr = parentRect(); QRect pmr = parent()->myRect(); float scale_w = 0; if (pmr.width() != 0) scale_w = (float)pdr.width()/pmr.width(); float scale_h = 0; if (pmr.height() != 0) scale_h = (float)pdr.height()/pmr.height(); return QRect(pdr.left() + ROUND((pr.left() - pmr.left())*scale_w), pdr.top() + ROUND((pr.top() - pmr.top())*scale_h), ROUND((pr.width()*scale_w)), ROUND((pr.height()*scale_h))); } void MmlNode::layoutSymbol() { // default behaves like an mrow // now lay them out in a neat row, aligning their origins to my origin int w = 0; MmlNode *child = firstChild(); for (; child != 0; child = child->nextSibling()) { child->setRelOrigin(QPoint(w, 0)); w += child->parentRect().width() + 1; } } void MmlNode::paint(QPainter *p) { if (!myRect().isValid()) return; p->save(); p->setViewport(deviceRect()); p->setWindow(myRect()); QColor fg = color(); QColor bg = background(); if (bg.isValid()) p->fillRect(myRect(), bg); if (fg.isValid()) p->setPen(color()); MmlNode *child = firstChild(); for (; child != 0; child = child->nextSibling()) child->paint(p); paintSymbol(p); p->restore(); } void MmlNode::paintSymbol(QPainter *p) const { if (g_draw_frames && myRect().isValid()) { p->save(); p->setPen(Qt::red); p->drawRect(m_my_rect); QPen pen = p->pen(); pen.setStyle(Qt::DotLine); p->setPen(pen); p->drawLine(myRect().left(), 0, myRect().right(), 0); p->restore(); } } void MmlNode::stretch() { MmlNode *child = firstChild(); for (; child != 0; child = child->nextSibling()) child->stretch(); } QString MmlTokenNode::text() const { QString result; const MmlNode *child = firstChild(); for (; child != 0; child = child->nextSibling()) { if (child->nodeType() != TextNode) continue; if (!result.isEmpty()) result += ' '; result += ((MmlTextNode*)child)->text(); } return result; } MmlNode *MmlMfracNode::numerator() const { MmlNode *node = firstChild(); Q_ASSERT(node != 0); return node; } MmlNode *MmlMfracNode::denominator() const { MmlNode *node = numerator()->nextSibling(); Q_ASSERT(node != 0); return node; } QRect MmlMfracNode::symbolRect() const { int num_width = numerator()->myRect().width(); int denom_width = denominator()->myRect().width(); int my_width = qMax(num_width, denom_width) + 4; return QRect(-my_width/2, 0, my_width, 1); } void MmlMfracNode::layoutSymbol() { MmlNode *num = numerator(); MmlNode *denom = denominator(); QRect num_rect = num->myRect(); QRect denom_rect = denom->myRect(); int spacing = (int)(g_mfrac_spacing*(num_rect.height() + denom_rect.height())); num->setRelOrigin(QPoint(-num_rect.width()/2, - spacing - num_rect.bottom())); denom->setRelOrigin(QPoint(-denom_rect.width()/2, spacing - denom_rect.top())); } static bool zeroLineThickness(const QString &s) { if (s.length() == 0 || !s[0].isDigit()) return false; for (int i = 0; i < s.length(); ++i) { QChar c = s.at(i); if (c.isDigit() && c != '0') return false; } return true; } void MmlMfracNode::paintSymbol(QPainter *p) const { QString linethickness_str = inheritAttributeFromMrow("linethickness", "1"); /* InterpretSpacing returns an int, which might be 0 even if the thickness is > 0, though very very small. That's ok, because the painter then paints a line of thickness 1. However, we have to run this check if the line thickness really is zero */ if (!zeroLineThickness(linethickness_str)) { bool ok; int linethickness = interpretSpacing(linethickness_str, &ok); if (!ok) linethickness = 1; p->save(); QPen pen = p->pen(); pen.setWidth(linethickness); p->setPen(pen); QSize s = myRect().size(); p->drawLine(-s.width()/2, 0, s.width()/2, 0); p->restore(); } } MmlNode *MmlRootBaseNode::base() const { MmlNode *node = firstChild(); // Q_ASSERT(node != 0); return node; } MmlNode *MmlRootBaseNode::index() const { MmlNode *b = base(); if (b == 0) return 0; return b->nextSibling(); } int MmlRootBaseNode::scriptlevel(const MmlNode *child) const { int sl = MmlNode::scriptlevel(); MmlNode *i = index(); if (child != 0 && child == i) return sl + 1; else return sl; } QRect MmlRootBaseNode::symbolRect() const { MmlNode *b = base(); QRect base_rect; if (b == 0) base_rect = QRect(0, 0, 1, 1); else base_rect = base()->myRect(); int margin = (int)(g_mroot_base_margin*base_rect.height()); int tw = tailWidth(); return QRect(-tw, base_rect.top() - margin, tw, base_rect.height() + 2*margin); } int MmlRootBaseNode::tailWidth() const { QFontMetrics fm(font()); return fm.boundingRect(g_radical_char).width(); } void MmlRootBaseNode::layoutSymbol() { MmlNode *b = base(); QSize base_size; if (b != 0) { b->setRelOrigin(QPoint(0, 0)); base_size = base()->myRect().size(); } else base_size = QSize(1, 1); MmlNode *i = index(); if (i != 0) { int tw = tailWidth(); QRect i_rect = i->myRect(); i->setRelOrigin(QPoint(-tw/2 - i_rect.width(), -i_rect.bottom() - 4)); } } void MmlRootBaseNode::paintSymbol(QPainter *p) const { QFont fn = font(); p->save(); QRect sr = symbolRect(); QRect r = sr; r.moveTopLeft(devicePoint(sr.topLeft())); p->setViewport(r); p->setWindow(QFontMetrics(fn).boundingRect(g_radical_char)); p->setFont(font()); p->drawText(0, 0, QString(g_radical_char)); p->restore(); p->drawLine(sr.right(), sr.top(), myRect().right(), sr.top()); } MmlTextNode::MmlTextNode(const QString &text, MmlDocument *document) : MmlNode(TextNode, document, MmlAttributeMap()) { m_text = text; // Trim whitespace from ends, but keep nbsp and thinsp m_text.remove(QRegExp("^[^\\S\\x00a0\\x2009]+")); m_text.remove(QRegExp("[^\\S\\x00a0\\x2009]+$")); if (m_text == QString(QChar(0x62, 0x20)) // ⁢ || m_text == QString(QChar(0x63, 0x20)) // ⁣ || m_text == QString(QChar(0x61, 0x20))) // ⁡ m_text = ""; } QString MmlTextNode::toStr() const { return MmlNode::toStr() + ", text=\"" + m_text + "\""; } void MmlTextNode::paintSymbol(QPainter *p) const { MmlNode::paintSymbol(p); QFont fn = font(); QFontInfo fi(fn); // qWarning("MmlTextNode::paintSymbol(): requested: %s, used: %s, size=%d, italic=%d, bold=%d, text=\"%s\" sl=%d", // fn.family().latin1(), fi.family().latin1(), fi.pointSize(), (int)fi.italic(), (int)fi.bold(), m_text.latin1(), scriptlevel()); QFontMetrics fm(fn); p->save(); p->setFont(fn); p->drawText(0, fm.strikeOutPos(), m_text); p->restore(); } QRect MmlTextNode::symbolRect() const { QFontMetrics fm(font()); QRect br = fm.tightBoundingRect(m_text); br.translate(0, fm.strikeOutPos()); return br; } MmlNode *MmlSubsupBaseNode::base() const { MmlNode *b = firstChild(); Q_ASSERT(b != 0); return b; } MmlNode *MmlSubsupBaseNode::sscript() const { MmlNode *s = base()->nextSibling(); Q_ASSERT(s != 0); return s; } int MmlSubsupBaseNode::scriptlevel(const MmlNode *child) const { int sl = MmlNode::scriptlevel(); MmlNode *s = sscript(); if (child != 0 && child == s) return sl + 1; else return sl; } void MmlMsupNode::layoutSymbol() { MmlNode *b = base(); MmlNode *s = sscript(); b->setRelOrigin(QPoint(-b->myRect().width(), 0)); s->setRelOrigin(QPoint(0, b->myRect().top())); } void MmlMsubNode::layoutSymbol() { MmlNode *b = base(); MmlNode *s = sscript(); b->setRelOrigin(QPoint(-b->myRect().width(), 0)); s->setRelOrigin(QPoint(0, b->myRect().bottom())); } MmlNode *MmlMsubsupNode::base() const { MmlNode *b = firstChild(); Q_ASSERT(b != 0); return b; } MmlNode *MmlMsubsupNode::subscript() const { MmlNode *sub = base()->nextSibling(); Q_ASSERT(sub != 0); return sub; } MmlNode *MmlMsubsupNode::superscript() const { MmlNode *sup = subscript()->nextSibling(); Q_ASSERT(sup != 0); return sup; } void MmlMsubsupNode::layoutSymbol() { MmlNode *b = base(); MmlNode *sub = subscript(); MmlNode *sup = superscript(); b->setRelOrigin(QPoint(-b->myRect().width(), 0)); sub->setRelOrigin(QPoint(0, b->myRect().bottom())); sup->setRelOrigin(QPoint(0, b->myRect().top())); } int MmlMsubsupNode::scriptlevel(const MmlNode *child) const { int sl = MmlNode::scriptlevel(); MmlNode *sub = subscript(); MmlNode *sup = superscript(); if (child != 0 && (child == sup || child == sub)) return sl + 1; else return sl; } QString MmlMoNode::toStr() const { return MmlNode::toStr() + QString(" form=%1").arg((int)form()); } void MmlMoNode::layoutSymbol() { MmlNode *child = firstChild(); if (child == 0) return; child->setRelOrigin(QPoint(0, 0)); if (m_oper_spec == 0) m_oper_spec = mmlFindOperSpec(text(), form()); } MmlMoNode::MmlMoNode(MmlDocument *document, const MmlAttributeMap &attribute_map) : MmlTokenNode(MoNode, document, attribute_map) { m_oper_spec = 0; } QString MmlMoNode::dictionaryAttribute(const QString &name) const { const MmlNode *p = this; for (; p != 0; p = p->parent()) { if (p == this || p->nodeType() == MstyleNode) { QString expl_attr = p->explicitAttribute(name); if (!expl_attr.isNull()) return expl_attr; } } return mmlDictAttribute(name, m_oper_spec); } Mml::FormType MmlMoNode::form() const { QString value_str = inheritAttributeFromMrow("form"); if (!value_str.isNull()) { bool ok; FormType value = interpretForm(value_str, &ok); if (ok) return value; else qWarning("Could not convert %s to form", value_str.toLatin1().data()); } // Default heuristic. if (firstSibling() == (MmlNode*)this && lastSibling() != (MmlNode*)this) return PrefixForm; else if (lastSibling() == (MmlNode*)this && firstSibling() != (MmlNode*)this) return PostfixForm; else return InfixForm; } void MmlMoNode::stretch() { if (parent() == 0) return; if (m_oper_spec == 0) return; if (m_oper_spec->stretch_dir == OperSpec::HStretch && parent()->nodeType() == MrowNode && (nextSibling() != 0 || previousSibling() != 0)) return; QRect pmr = parent()->myRect(); QRect pr = parentRect(); switch (m_oper_spec->stretch_dir) { case OperSpec::VStretch: stretchTo(QRect(pr.left(), pmr.top(), pr.width(), pmr.height())); break; case OperSpec::HStretch: stretchTo(QRect(pmr.left(), pr.top(), pmr.width(), pr.height())); break; case OperSpec::HVStretch: stretchTo(pmr); break; case OperSpec::NoStretch: break; } } int MmlMoNode::lspace() const { Q_ASSERT(m_oper_spec != 0); if (parent() == 0 || (parent()->nodeType() != MrowNode && parent()->nodeType() != MfencedNode && parent()->nodeType() != UnknownNode) || (previousSibling() == 0 && nextSibling() == 0)) return 0; else return interpretSpacing(dictionaryAttribute("lspace"), 0); } int MmlMoNode::rspace() const { Q_ASSERT(m_oper_spec != 0); if (parent() == 0 || (parent()->nodeType() != MrowNode && parent()->nodeType() != MfencedNode && parent()->nodeType() != UnknownNode) || (previousSibling() == 0 && nextSibling() == 0)) return 0; else return interpretSpacing(dictionaryAttribute("rspace"), 0); } QRect MmlMoNode::symbolRect() const { const MmlNode *child = firstChild(); if (child == 0) return QRect(0, 0, 0, 0); QRect cmr = child->myRect(); return QRect(-lspace(), cmr.top(), cmr.width() + lspace() + rspace(), cmr.height()); } int MmlMtableNode::rowspacing() const { QString value = explicitAttribute("rowspacing"); if (value.isNull()) return ex(); bool ok; int r = interpretSpacing(value, &ok); if (ok) return r; else return ex(); } int MmlMtableNode::columnspacing() const { QString value = explicitAttribute("columnspacing"); if (value.isNull()) return (int)(0.8*em()); bool ok; int r = interpretSpacing(value, &ok); if (ok) return r; else return (int)(0.8*em()); } uint MmlMtableNode::CellSizeData::colWidthSum() const { uint w = 0; for (int i = 0; i < col_widths.count(); ++i) w += col_widths[i]; return w; } uint MmlMtableNode::CellSizeData::rowHeightSum() const { uint h = 0; for (int i = 0; i < row_heights.count(); ++i) h += row_heights[i]; return h; } void MmlMtableNode::CellSizeData::init(const MmlNode *first_row) { col_widths.clear(); row_heights.clear(); const MmlNode *mtr = first_row; for (; mtr != 0; mtr = mtr->nextSibling()) { Q_ASSERT(mtr->nodeType() == MtrNode); int col_cnt = 0; const MmlNode *mtd = mtr->firstChild(); for (; mtd != 0; mtd = mtd->nextSibling(), ++col_cnt) { Q_ASSERT(mtd->nodeType() == MtdNode); QRect mtdmr = mtd->myRect(); if (col_cnt == col_widths.count()) col_widths.append(mtdmr.width()); else col_widths[col_cnt] = qMax(col_widths[col_cnt], mtdmr.width()); } row_heights.append(mtr->myRect().height()); } } void MmlMtableNode::layoutSymbol() { // Obtain natural widths of columns m_cell_size_data.init(firstChild()); int col_spc = columnspacing(); int row_spc = rowspacing(); int frame_spc_hor = framespacing_hor(); QString columnwidth_attr = explicitAttribute("columnwidth", "auto"); // Is table width set by user? If so, set col_width_sum and never ever change it. int col_width_sum = m_cell_size_data.colWidthSum(); bool width_set_by_user = false; QString width_str = explicitAttribute("width", "auto"); if (width_str != "auto") { bool ok; int w = interpretSpacing(width_str, &ok); if (ok) { col_width_sum = w - col_spc*(m_cell_size_data.numCols() - 1) - frame_spc_hor*2; width_set_by_user = true; } } // Find out what kind of columns we are dealing with and set the widths of // statically sized columns. int fixed_width_sum = 0; // sum of widths of statically sized set columns int auto_width_sum = 0; // sum of natural widths of auto sized columns int relative_width_sum = 0; // sum of natural widths of relatively sized columns double relative_fraction_sum = 0; // total fraction of width taken by relatively // sized columns int i; for (i = 0; i < m_cell_size_data.numCols(); ++i) { QString value = interpretListAttr(columnwidth_attr, i, "auto"); // Is it an auto sized column? if (value == "auto" || value == "fit") { auto_width_sum += m_cell_size_data.col_widths[i]; continue; } // Is it a statically sized column? bool ok; int w = interpretSpacing(value, &ok); if (ok) { // Yup, sets its width to the user specified value m_cell_size_data.col_widths[i] = w; fixed_width_sum += w; continue; } // Is it a relatively sized column? if (value.endsWith("%")) { value.truncate(value.length() - 1); double factor = value.toFloat(&ok); if (ok && !value.isEmpty()) { factor /= 100.0; relative_width_sum += m_cell_size_data.col_widths[i]; relative_fraction_sum += factor; if (!width_set_by_user) { // If the table width was not set by the user, we are free to increase // it so that the width of this column will be >= than its natural width int min_col_width_sum = ROUND(m_cell_size_data.col_widths[i]/factor); if (min_col_width_sum > col_width_sum) col_width_sum = min_col_width_sum; } continue; } else qWarning("MmlMtableNode::layoutSymbol(): could not parse value %s%%", value.toLatin1().data()); } // Relatively sized column, but we failed to parse the factor. Treat is like an auto // column. auto_width_sum += m_cell_size_data.col_widths[i]; } // Work out how much space remains for the auto olumns, after allocating // the statically sized and the relatively sized columns. int required_auto_width_sum = col_width_sum - ROUND(relative_fraction_sum*col_width_sum) - fixed_width_sum; if (!width_set_by_user && required_auto_width_sum < auto_width_sum) { if (relative_fraction_sum < 1) col_width_sum = ROUND((fixed_width_sum + auto_width_sum)/(1 - relative_fraction_sum)); else col_width_sum = fixed_width_sum + auto_width_sum + relative_width_sum; required_auto_width_sum = auto_width_sum; } // Ratio by which we have to shring/grow all auto sized columns to make it all fit double auto_width_scale = 1; if (auto_width_sum > 0) auto_width_scale = (float)required_auto_width_sum/auto_width_sum; // Set correct sizes for the auto sized and the relatively sized columns. for (i = 0; i < m_cell_size_data.numCols(); ++i) { QString value = interpretListAttr(columnwidth_attr, i, "auto"); // Is it a relatively sized column? if (value.endsWith("%")) { bool ok; int w = interpretPercentSpacing(value, col_width_sum, &ok); if (ok) m_cell_size_data.col_widths[i] = w; else // We're treating parsing errors here as auto sized columns m_cell_size_data.col_widths[i] = ROUND(auto_width_scale*m_cell_size_data.col_widths[i]); } // Is it an auto sized column? else if (value == "auto") { m_cell_size_data.col_widths[i] = ROUND(auto_width_scale*m_cell_size_data.col_widths[i]); } } QString s; QList &col_widths = m_cell_size_data.col_widths; for (i = 0; i < col_widths.count(); ++i) { s += QString("[w=%1 %2%%]") .arg(col_widths[i]) .arg(100*col_widths[i]/m_cell_size_data.colWidthSum()); } // qWarning(s); m_content_width = m_cell_size_data.colWidthSum() + col_spc*(m_cell_size_data.numCols() - 1); m_content_height = m_cell_size_data.rowHeightSum() + row_spc*(m_cell_size_data.numRows() - 1); int bottom = -m_content_height/2; MmlNode *child = firstChild(); for (; child != 0; child = child->nextSibling()) { Q_ASSERT(child->nodeType() == MtrNode); MmlMtrNode *row = (MmlMtrNode*) child; row->layoutCells(m_cell_size_data.col_widths, col_spc); QRect rmr = row->myRect(); row->setRelOrigin(QPoint(0, bottom - rmr.top())); bottom += rmr.height() + row_spc; } } QRect MmlMtableNode::symbolRect() const { int frame_spc_hor = framespacing_hor(); int frame_spc_ver = framespacing_ver(); return QRect(-frame_spc_hor, -m_content_height/2 - frame_spc_ver, m_content_width + 2*frame_spc_hor, m_content_height + 2*frame_spc_ver); } Mml::FrameType MmlMtableNode::frame() const { QString value = explicitAttribute("frame", "none"); return interpretFrameType(value, 0, 0); } Mml::FrameType MmlMtableNode::columnlines(int idx) const { QString value = explicitAttribute("columnlines", "none"); return interpretFrameType(value, idx, 0); } Mml::FrameType MmlMtableNode::rowlines(int idx) const { QString value = explicitAttribute("rowlines", "none"); return interpretFrameType(value, idx, 0); } void MmlMtableNode::paintSymbol(QPainter *p) const { FrameType f = frame(); if (f != FrameNone) { p->save(); QPen pen = p->pen(); if (f == FrameDashed) pen.setStyle(Qt::DashLine); else pen.setStyle(Qt::SolidLine); p->setPen(pen); p->drawRect(myRect()); p->restore(); } p->save(); int col_spc = columnspacing(); int row_spc = rowspacing(); QPen pen = p->pen(); int col_offset = 0; int i; for (i = 0; i < m_cell_size_data.numCols() - 1; ++i) { FrameType f = columnlines(i); col_offset += m_cell_size_data.col_widths[i]; if (f != FrameNone) { if (f == FrameDashed) pen.setStyle(Qt::DashLine); else if (f == FrameSolid) pen.setStyle(Qt::SolidLine); p->setPen(pen); int x = col_offset + col_spc/2; p->drawLine(x, -m_content_height/2, x, m_content_height/2 ); } col_offset += col_spc; } int row_offset = 0; for (i = 0; i < m_cell_size_data.numRows() - 1; ++i) { FrameType f = rowlines(i); row_offset += m_cell_size_data.row_heights[i]; if (f != FrameNone) { if (f == FrameDashed) pen.setStyle(Qt::DashLine); else if (f == FrameSolid) pen.setStyle(Qt::SolidLine); p->setPen(pen); int y = row_offset + row_spc/2 - m_content_height/2; p->drawLine(0, y, m_content_width, y); } row_offset += row_spc; } p->restore(); } int MmlMtableNode::framespacing_ver() const { if (frame() == FrameNone) return (int)(0.2*em()); QString value = explicitAttribute("framespacing", "0.4em 0.5ex"); bool ok; FrameSpacing fs = interpretFrameSpacing(value, em(), ex(), &ok); if (ok) return fs.m_ver; else return (int)(0.5*ex()); } int MmlMtableNode::framespacing_hor() const { if (frame() == FrameNone) return (int)(0.2*em()); QString value = explicitAttribute("framespacing", "0.4em 0.5ex"); bool ok; FrameSpacing fs = interpretFrameSpacing(value, em(), ex(), &ok); if (ok) return fs.m_hor; else return (int)(0.4*em()); } void MmlMtrNode::layoutCells(const QList &col_widths, int col_spc) { QRect mr = myRect(); MmlNode *child = firstChild(); int col_offset = 0; uint colnum = 0; for (; child != 0; child = child->nextSibling(), ++colnum) { Q_ASSERT(child->nodeType() == MtdNode); MmlMtdNode *mtd = (MmlMtdNode*) child; QRect r = QRect(0, mr.top(), col_widths[colnum], mr.height()); mtd->setMyRect(r); mtd->setRelOrigin(QPoint(col_offset, 0)); col_offset += col_widths[colnum] + col_spc; } updateMyRect(); } int MmlMtdNode::scriptlevel(const MmlNode *child) const { int sl = MmlNode::scriptlevel(); if (child != 0 && child == firstChild()) return sl + m_scriptlevel_adjust; else return sl; } void MmlMtdNode::setMyRect(const QRect &rect) { MmlNode::setMyRect(rect); MmlNode *child = firstChild(); if (child == 0) return; if (rect.width() < child->myRect().width()) { while (rect.width() < child->myRect().width() && child->font().pointSize() > g_min_font_point_size) { // qWarning("MmlMtdNode::setMyRect(): rect.width()=%d, child()->myRect().width=%d sl=%d", // rect.width(), child->myRect().width(), m_scriptlevel_adjust); ++m_scriptlevel_adjust; child->layout(); } // qWarning("MmlMtdNode::setMyRect(): rect.width()=%d, child()->myRect().width=%d sl=%d", // rect.width(), child->myRect().width(), m_scriptlevel_adjust); } QRect mr = myRect(); QRect cmr = child->myRect(); QPoint child_rel_origin; switch (columnalign()) { case ColAlignLeft: child_rel_origin.setX(0); break; case ColAlignCenter: child_rel_origin.setX(mr.left() + (mr.width() - cmr.width())/2); break; case ColAlignRight: child_rel_origin.setX(mr.right() - cmr.width()); break; } switch (rowalign()) { case RowAlignTop: child_rel_origin.setY(mr.top() - cmr.top()); break; case RowAlignCenter: case RowAlignBaseline: child_rel_origin.setY(mr.top() -cmr.top() + (mr.height() - cmr.height())/2); break; case RowAlignBottom: child_rel_origin.setY(mr.bottom() - cmr.bottom()); break; case RowAlignAxis: child_rel_origin.setY(0); break; } child->setRelOrigin(child_rel_origin); } uint MmlMtdNode::colNum() { MmlNode *syb = previousSibling(); uint i = 0; for (; syb != 0; syb = syb->previousSibling()) ++i; return i; } uint MmlMtdNode::rowNum() { MmlNode *row = parent()->previousSibling(); uint i = 0; for (; row != 0; row = row->previousSibling()) ++i; return i; } MmlMtdNode::ColAlign MmlMtdNode::columnalign() { QString val = explicitAttribute("columnalign"); if (!val.isNull()) return interpretColAlign(val, 0, 0); MmlNode *node = parent(); // if (node == 0) return ColAlignCenter; uint colnum = colNum(); val = node->explicitAttribute("columnalign"); if (!val.isNull()) return interpretColAlign(val, colnum, 0); node = node->parent(); // if (node == 0) return ColAlignCenter; val = node->explicitAttribute("columnalign"); if (!val.isNull()) return interpretColAlign(val, colnum, 0); return ColAlignCenter; } MmlMtdNode::RowAlign MmlMtdNode::rowalign() { QString val = explicitAttribute("rowalign"); if (!val.isNull()) return interpretRowAlign(val, 0, 0); MmlNode *node = parent(); // if (node == 0) return RowAlignAxis; uint rownum = rowNum(); val = node->explicitAttribute("rowalign"); if (!val.isNull()) return interpretRowAlign(val, rownum, 0); node = node->parent(); // if (node == 0) return RowAlignAxis; val = node->explicitAttribute("rowalign"); if (!val.isNull()) return interpretRowAlign(val, rownum, 0); return RowAlignAxis; } void MmlMoverNode::layoutSymbol() { MmlNode *base = firstChild(); Q_ASSERT(base != 0); MmlNode *over = base->nextSibling(); Q_ASSERT(over != 0); QRect base_rect = base->myRect(); QRect over_rect = over->myRect(); int spacing = (int)(g_mfrac_spacing*(over_rect.height() + base_rect.height())); base->setRelOrigin(QPoint(-base_rect.width()/2, 0)); over->setRelOrigin(QPoint(-over_rect.width()/2, base_rect.top() - spacing - over_rect.bottom())); } int MmlMoverNode::scriptlevel(const MmlNode *node) const { MmlNode *base = firstChild(); Q_ASSERT(base != 0); MmlNode *over = base->nextSibling(); Q_ASSERT(over != 0); int sl = MmlNode::scriptlevel(); if (node != 0 && node == over) return sl + 1; else return sl; } void MmlMunderNode::layoutSymbol() { MmlNode *base = firstChild(); Q_ASSERT(base != 0); MmlNode *under = base->nextSibling(); Q_ASSERT(under != 0); QRect base_rect = base->myRect(); QRect under_rect = under->myRect(); int spacing = (int)(g_mfrac_spacing*(under_rect.height() + base_rect.height())); base->setRelOrigin(QPoint(-base_rect.width()/2, 0)); under->setRelOrigin(QPoint(-under_rect.width()/2, base_rect.bottom() + spacing - under_rect.top())); } int MmlMunderNode::scriptlevel(const MmlNode *node) const { MmlNode *base = firstChild(); Q_ASSERT(base != 0); MmlNode *under = base->nextSibling(); Q_ASSERT(under != 0); int sl = MmlNode::scriptlevel(); if (node != 0 && node == under) return sl + 1; else return sl; } void MmlMunderoverNode::layoutSymbol() { MmlNode *base = firstChild(); Q_ASSERT(base != 0); MmlNode *under = base->nextSibling(); Q_ASSERT(under != 0); MmlNode *over = under->nextSibling(); Q_ASSERT(over != 0); QRect base_rect = base->myRect(); QRect under_rect = under->myRect(); QRect over_rect = over->myRect(); int spacing = (int)(g_mfrac_spacing*( base_rect.height() + under_rect.height() + over_rect.height()) ); base->setRelOrigin(QPoint(-base_rect.width()/2, 0)); under->setRelOrigin(QPoint(-under_rect.width()/2, base_rect.bottom() + spacing - under_rect.top())); over->setRelOrigin(QPoint(-over_rect.width()/2, base_rect.top() - spacing - under_rect.bottom())); } int MmlMunderoverNode::scriptlevel(const MmlNode *node) const { MmlNode *base = firstChild(); Q_ASSERT(base != 0); MmlNode *under = base->nextSibling(); Q_ASSERT(under != 0); MmlNode *over = under->nextSibling(); Q_ASSERT(over != 0); int sl = MmlNode::scriptlevel(); if (node != 0 && (node == under || node == over)) return sl + 1; else return sl; } int MmlMpaddedNode::interpretSpacing(QString value, int base_value, bool *ok) const { if (ok != 0) *ok = false; value.replace(' ', ""); QString sign, factor_str, pseudo_unit; bool percent = false; // extract the sign int idx = 0; if (idx < value.length() && (value.at(idx) == '+' || value.at(idx) == '-')) sign = value.at(idx++); // extract the factor while (idx < value.length() && (value.at(idx).isDigit() || value.at(idx) == '.')) factor_str.append(value.at(idx++)); // extract the % sign if (idx < value.length() && value.at(idx) == '%') { percent = true; ++idx; } // extract the pseudo-unit pseudo_unit = value.mid(idx); bool float_ok; double factor = factor_str.toFloat(&float_ok); if (!float_ok || factor < 0) { qWarning("MmlMpaddedNode::interpretSpacing(): could not parse \"%s\"", value.toLatin1().data()); return 0; } if (percent) factor /= 100.0; QRect cr; if (firstChild() == 0) cr = QRect(0, 0, 0, 0); else cr = firstChild()->myRect(); int unit_size; if (pseudo_unit.isEmpty()) unit_size = base_value; else if (pseudo_unit == "width") unit_size = cr.width(); else if (pseudo_unit == "height") unit_size = -cr.top(); else if (pseudo_unit == "depth") unit_size = cr.bottom(); else { bool unit_ok; unit_size = MmlNode::interpretSpacing("1" + pseudo_unit, &unit_ok); if (!unit_ok) { qWarning("MmlMpaddedNode::interpretSpacing(): could not parse \"%s\"", value.toLatin1().data()); return 0; } } if (ok != 0) *ok = true; if (sign.isNull()) return (int)(factor*unit_size); else if (sign == "+") return base_value + (int)(factor*unit_size); else // sign == "-" return base_value - (int)(factor*unit_size); } int MmlMpaddedNode::lspace() const { QString value = explicitAttribute("lspace"); if (value.isNull()) return 0; bool ok; int lspace = interpretSpacing(value, 0, &ok); if (ok) return lspace; return 0; } int MmlMpaddedNode::width() const { int child_width = 0; if (firstChild() != 0) child_width = firstChild()->myRect().width(); QString value = explicitAttribute("width"); if (value.isNull()) return child_width; bool ok; int w = interpretSpacing(value, child_width, &ok); if (ok) return w; return child_width; } int MmlMpaddedNode::height() const { QRect cr; if (firstChild() == 0) cr = QRect(0, 0, 0, 0); else cr = firstChild()->myRect(); QString value = explicitAttribute("height"); if (value.isNull()) return -cr.top(); bool ok; int h = interpretSpacing(value, -cr.top(), &ok); if (ok) return h; return -cr.top(); } int MmlMpaddedNode::depth() const { QRect cr; if (firstChild() == 0) cr = QRect(0, 0, 0, 0); else cr = firstChild()->myRect(); QString value = explicitAttribute("depth"); if (value.isNull()) return cr.bottom(); bool ok; int h = interpretSpacing(value, cr.bottom(), &ok); if (ok) return h; return cr.bottom(); } void MmlMpaddedNode::layoutSymbol() { MmlNode *child = firstChild(); if (child == 0) return; child->setRelOrigin(QPoint(0, 0)); } QRect MmlMpaddedNode::symbolRect() const { return QRect(-lspace(), -height(), lspace() + width(), height() + depth()); } // ******************************************************************* // QtMmlWidget // ******************************************************************* /*! \class QtMmlWidget \brief The QtMmlWidget class renders mathematical formulas written in MathML 2.0. QtMmlWidget implements the Presentation Markup subset of the MathML 2.0 specification, with a few \link overview.html exceptions\endlink. \code QtMmlWidget *mmlWidget = new QtMmlWidget(this); QString errorMsg; int errorLine; int errorColumn; bool ok = mmlWidget->setContent(mmlText, &errorMsg, &errorLine, &errorColumn); if (!ok) { qWarning("MathML error: %s, Line: %d, Column: %d", errorMsg.latin1(), errorLine, errorColumn); } \endcode */ /*! \enum QtMmlWidget::MmlFont This ennumerated type is used in fontName() and setFontName() to specify a font type. \value NormalFont The default font type, used to render expressions for which no mathvariant or fontfamily is specified, or for which the "normal" mathvariant is specified. \value FrakturFont The font type used to render expressions for which the "fraktur" mathvariant is specified. \value SansSerifFont The font type used to render expressions for which the "sans-serif" mathvariant is specified. \value ScriptFont The font type used to render expressions for which the "script" mathvariant is specified. \value MonospaceFont The font type used to render expressions for which the "monospace" mathvariant is specified. \value DoublestruckFont The font type used to render expressions for which the "doublestruck" mathvariant is specified. \sa setFontName() fontName() setBaseFontPointSize() baseFontPointSize() */ /*! Constructs a QtMmlWidget object. The \a parent parameter is passed to QFrame's constructor. */ QtMmlWidget::QtMmlWidget(QWidget *parent) : QFrame(parent) { m_doc = new MmlDocument; } /*! Destructs a QtMmlWidget object. */ QtMmlWidget::~QtMmlWidget() { delete m_doc; } /*! Returns the name of the font used to render the font \a type. \sa setFontName() setBaseFontPointSize() baseFontPointSize() QtMmlWidget::MmlFont */ QString QtMmlWidget::fontName(MmlFont type) const { return m_doc->fontName(type); } /*! Sets the name of the font used to render the font \a type to \a name. \sa fontName() setBaseFontPointSize() baseFontPointSize() QtMmlWidget::MmlFont */ void QtMmlWidget::setFontName(MmlFont type, const QString &name) { m_doc->setFontName(type, name); m_doc->layout(); update(); } /*! If \a b is true, draws a red bounding rectangle around each expression; if \a b is false, no such rectangle is drawn. This is mostly useful for debugging MathML expressions. \sa drawFrames() */ void QtMmlWidget::setDrawFrames(bool b) { g_draw_frames = b; update(); } /*! Returns true if each expression should be drawn with a red bounding rectangle; otherwise returns false. This is mostly useful for debugging MathML expressions. \sa setDrawFrames() */ bool QtMmlWidget::drawFrames() const { return g_draw_frames; } /*! Clears the contents of this widget. */ void QtMmlWidget::clear() { m_doc->clear(); } /*! Returns the point size of the font used to render expressions whose scriptlevel is 0. \sa setBaseFontPointSize() fontName() setFontName() */ int QtMmlWidget::baseFontPointSize() const { return m_doc->baseFontPointSize(); } /*! Sets the point \a size of the font used to render expressions whose scriptlevel is 0. \sa baseFontPointSize() fontName() setFontName() */ void QtMmlWidget::setBaseFontPointSize(int size) { if (size < g_min_font_point_size) return; m_doc->setBaseFontPointSize(size); m_doc->layout(); update(); } /*! Returns the size of the formula in pixels. */ QSize QtMmlWidget::sizeHint() const { QSize size = m_doc->size(); if (size == QSize(0, 0)) return QSize(100, 50); return m_doc->size(); } /*! Sets the MathML expression to be rendered. The expression is given in the string \a text. If the expression is successfully parsed, this method returns true; otherwise it returns false. If an error occured \a errorMsg is set to a diagnostic message, while \a errorLine and \a errorColumn contain the location of the error. Any of \a errorMsg, \a errorLine and \a errorColumn may be 0, in which case they are not set. \a text should contain MathML 2.0 presentation markup elements enclosed in a element. */ bool QtMmlWidget::setContent(const QString &text, QString *errorMsg, int *errorLine, int *errorColumn) { bool result = m_doc->setContent(text, errorMsg, errorLine, errorColumn); if (result) update(); return result; } /*! \internal */ void QtMmlWidget::paintEvent(QPaintEvent *e) { QFrame::paintEvent(e); QPainter p(this); if (e->rect().intersects(contentsRect())) p.setClipRegion(e->region().intersected(contentsRect())); QSize s = m_doc->size(); int x = (width() - s.width())/2; int y = (height() - s.height())/2; m_doc->paint(&p, QPoint(x, y)); } /*! \internal */ void QtMmlWidget::dump() const { m_doc->dump(); } // ******************************************************************* // Static helper functions // ******************************************************************* static QString entityDeclarations() { QString result = "name != 0; ++ent) { result += "\tname) + " \"" + ent->value + "\">\n"; } result += "]>\n"; return result; } static int interpretSpacing(QString value, int em, int ex, bool *ok) { if (ok != 0) *ok = true; if (value == "thin") return 1; if (value == "medium") return 2; if (value == "thick") return 3; struct HSpacingValue { const char *name; float factor; }; static const HSpacingValue g_h_spacing_data[] = { { "veryverythinmathspace", (float) 0.0555556 }, { "verythinmathspace", (float) 0.111111 }, { "thinmathspace", (float) 0.166667 }, { "mediummathspace", (float) 0.222222 }, { "thickmathspace", (float) 0.277778 }, { "verythickmathspace", (float) 0.333333 }, { "veryverythickmathspace", (float) 0.388889 }, { 0, (float) 0 } }; const HSpacingValue *v = g_h_spacing_data; for (; v->name != 0; ++v) { if (value == v->name) return (int)(em*v->factor); } if (value.endsWith("em")) { value.truncate(value.length() - 2); bool float_ok; float factor = value.toFloat(&float_ok); if (float_ok && factor >= 0) return (int)(em*factor); else { qWarning("interpretSpacing(): could not parse \"%sem\"", value.toLatin1().data()); if (ok != 0) *ok = false; return 0; } } if (value.endsWith("ex")) { value.truncate(value.length() - 2); bool float_ok; float factor = value.toFloat(&float_ok); if (float_ok && factor >= 0) return (int)(ex*factor); else { qWarning("interpretSpacing(): could not parse \"%sex\"", value.toLatin1().data()); if (ok != 0) *ok = false; return 0; } } if (value.endsWith("cm")) { value.truncate(value.length() - 2); bool float_ok; float factor = value.toFloat(&float_ok); if (float_ok && factor >= 0) { Q_ASSERT(qApp->desktop() != 0); QDesktopWidget *dw = qApp->desktop(); Q_ASSERT(dw->width() != 0); Q_ASSERT(dw->widthMM() != 0); return (int)(factor*10*dw->width()/dw->widthMM()); } else { qWarning("interpretSpacing(): could not parse \"%scm\"", value.toLatin1().data()); if (ok != 0) *ok = false; return 0; } } if (value.endsWith("mm")) { value.truncate(value.length() - 2); bool float_ok; float factor = value.toFloat(&float_ok); if (float_ok && factor >= 0) { Q_ASSERT(qApp->desktop() != 0); QDesktopWidget *dw = qApp->desktop(); Q_ASSERT(dw->width() != 0); Q_ASSERT(dw->widthMM() != 0); return (int)(factor*dw->width()/dw->widthMM()); } else { qWarning("interpretSpacing(): could not parse \"%smm\"", value.toLatin1().data()); if (ok != 0) *ok = false; return 0; } } if (value.endsWith("in")) { value.truncate(value.length() - 2); bool float_ok; float factor = value.toFloat(&float_ok); if (float_ok && factor >= 0) { Q_ASSERT(qApp->desktop() != 0); QDesktopWidget *dw = qApp->desktop(); Q_ASSERT(dw->width() != 0); Q_ASSERT(dw->widthMM() != 0); return (int)(factor*10*dw->width()/(2.54*dw->widthMM())); } else { qWarning("interpretSpacing(): could not parse \"%sin\"", value.toLatin1().data()); if (ok != 0) *ok = false; return 0; } } if (value.endsWith("px")) { value.truncate(value.length() - 2); bool float_ok; int i = (int) value.toFloat(&float_ok); if (float_ok && i >= 0) return i; else { qWarning("interpretSpacing(): could not parse \"%spx\"", value.toLatin1().data()); if (ok != 0) *ok = false; return 0; } } bool float_ok; int i = (int)value.toFloat(&float_ok); if (float_ok && i >= 0) return i; qWarning("interpretSpacing(): could not parse \"%s\"", value.toLatin1().data()); if (ok != 0) *ok = false; return 0; } static int interpretPercentSpacing(QString value, int base, bool *ok) { if (!value.endsWith("%")) { if (ok != 0) *ok = false; return 0; } value.truncate(value.length() - 1); bool float_ok; float factor = value.toFloat(&float_ok); if (float_ok && factor >= 0) { if (ok != 0) *ok = true; return (int)(base*factor/100.0); } qWarning("interpretPercentSpacing(): could not parse \"%s%%\"", value.toLatin1().data()); if (ok != 0) *ok = false; return 0; } static int interpretPointSize(QString value, bool *ok) { if (!value.endsWith("pt")) { if (ok != 0) *ok = false; return 0; } value.truncate(value.length() - 2); bool float_ok; int pt_size = (int) value.toFloat(&float_ok); if (float_ok && pt_size > 0) { if (ok != 0) *ok = true; return pt_size; } qWarning("interpretPointSize(): could not parse \"%spt\"", value.toLatin1().data()); if (ok != 0) *ok = false; return 0; } static const NodeSpec *mmlFindNodeSpec(Mml::NodeType type) { const NodeSpec *spec = g_node_spec_data; for (; spec->type != Mml::NoNode; ++spec) { if (type == spec->type) return spec; } return 0; } static const NodeSpec *mmlFindNodeSpec(const QString &tag) { const NodeSpec *spec = g_node_spec_data; for (; spec->type != Mml::NoNode; ++spec) { if (tag == spec->tag) return spec; } return 0; } static bool mmlCheckChildType(Mml::NodeType parent_type, Mml::NodeType child_type, QString *error_str) { if (parent_type == Mml::UnknownNode || child_type == Mml::UnknownNode) return true; const NodeSpec *child_spec = mmlFindNodeSpec(child_type); const NodeSpec *parent_spec = mmlFindNodeSpec(parent_type); Q_ASSERT(parent_spec != 0); Q_ASSERT(child_spec != 0); QString allowed_child_types(parent_spec->child_types); // null list means any child type is valid if (allowed_child_types.isNull()) return true; QString child_type_str = QString(" ") + child_spec->type_str + " "; if (!allowed_child_types.contains(child_type_str)) { if (error_str != 0) *error_str = QString("illegal child ") + child_spec->type_str + " for parent " + parent_spec->type_str; return false; } return true; } static bool mmlCheckAttributes(Mml::NodeType child_type, const MmlAttributeMap &attr, QString *error_str) { const NodeSpec *spec = mmlFindNodeSpec(child_type); Q_ASSERT(spec != 0); QString allowed_attr(spec->attributes); // empty list means any attr is valid if (allowed_attr.isEmpty()) return true; MmlAttributeMap::const_iterator it = attr.begin(), end = attr.end(); for (; it != end; ++it) { QString name = it.key(); if (name.indexOf(':') != -1) continue; QString padded_name = " " + name + " "; if (!allowed_attr.contains(padded_name)) { if (error_str != 0) *error_str = QString("illegal attribute ") + name + " in " + spec->type_str; return false; } } return true; } static int attributeIndex(const QString &name) { for (unsigned i = 0; i < g_oper_spec_rows; ++i) { if (name == g_oper_spec_names[i]) return i; } return -1; } static QString decodeEntityValue(QString literal) { QString result; while (!literal.isEmpty()) { if (!literal.startsWith("&#")) { qWarning("decodeEntityValue(): bad entity literal: \"%s\"", literal.toLatin1().data()); return QString(); } literal = literal.right(literal.length() - 2); int i = literal.indexOf(';'); if (i == -1) { qWarning("decodeEntityValue(): bad entity literal: \"%s\"", literal.toLatin1().data()); return QString(); } QString char_code = literal.left(i); literal = literal.right(literal.length() - i - 1); if (char_code.isEmpty()) { qWarning("decodeEntityValue(): bad entity literal: \"%s\"", literal.toLatin1().data()); return QString(); } if (char_code.at(0) == 'x') { char_code = char_code.right(char_code.length() - 1); bool ok; unsigned c = char_code.toUInt(&ok, 16); if (!ok) { qWarning("decodeEntityValue(): bad entity literal: \"%s\"", literal.toLatin1().data()); return QString(); } result += QChar(c); } else { bool ok; unsigned c = char_code.toUInt(&ok, 10); if (!ok) { qWarning("decodeEntityValue(): bad entity literal: \"%s\"", literal.toLatin1().data()); return QString(); } result += QChar(c); } } return result; } static const EntitySpec *searchEntitySpecData(const QString &value, const EntitySpec *from = 0) { const EntitySpec *ent = from; if (ent == 0) ent = g_xml_entity_data; for (; ent->name != 0; ++ent) { QString ent_value = decodeEntityValue(ent->value); if (value == ent_value) return ent; } return 0; } struct OperSpecSearchResult { OperSpecSearchResult() { prefix_form = infix_form = postfix_form = 0; } const OperSpec *prefix_form, *infix_form, *postfix_form; const OperSpec *&getForm(Mml::FormType f); bool haveForm(Mml::FormType f) { return getForm(f) != 0; } void addForm(const OperSpec *spec) { getForm(spec->form) = spec; } }; const OperSpec *&OperSpecSearchResult::getForm(Mml::FormType f) { switch (f) { case Mml::PrefixForm: return prefix_form; case Mml::InfixForm: return infix_form; case Mml::PostfixForm: return postfix_form; } return postfix_form; // just to avoid warning } /* Searches g_oper_spec_data and returns any instance of operator name. There may be more instances, but since the list is sorted, they will be next to each other. */ static const OperSpec *searchOperSpecData(const QString &name) { const char *name_latin1 = name.toLatin1().data(); // binary search // establish invariant g_oper_spec_data[begin].name < name < g_oper_spec_data[end].name int cmp = qstrcmp(name_latin1, g_oper_spec_data[0].name); if (cmp < 0) return 0; if (cmp == 0) return g_oper_spec_data; uint begin = 0; uint end = g_oper_spec_count; // invariant holds while (end - begin > 1) { uint mid = (begin + end)/2; const OperSpec *spec = g_oper_spec_data + mid; int cmp = qstrcmp(name_latin1, spec->name); if (cmp < 0) end = mid; else if (cmp > 0) begin = mid; else return spec; } return 0; } /* This searches g_oper_spec_data until at least one name in name_list is found with FormType form, or until name_list is exhausted. The idea here is that if we don't find the operator in the specified form, we still want to use some other available form of that operator. */ static OperSpecSearchResult _mmlFindOperSpec(const QStringList &name_list, Mml::FormType form) { OperSpecSearchResult result; QStringList::const_iterator it = name_list.begin(); for (; it != name_list.end(); ++it) { const QString &name = *it; const OperSpec *spec = searchOperSpecData(name); if (spec == 0) continue; const char *name_latin1 = name.toLatin1().data(); // backtrack to the first instance of name while (spec > g_oper_spec_data && qstrcmp((spec - 1)->name, name_latin1) == 0) --spec; // iterate over instances of name until the instances are exhausted or until we // find an instance in the specified form. do { result.addForm(spec++); if (result.haveForm(form)) break; } while (qstrcmp(spec->name, name_latin1) == 0); if (result.haveForm(form)) break; } return result; } /* text is a string between and . It can be a character ('+'), an entity reference ("∞") or a character reference ("∞"). Our job is to find an operator spec in the operator dictionary (g_oper_spec_data) that matches text. Things are further complicated by the fact, that many operators come in several forms (prefix, infix, postfix). If available, this function returns an operator spec matching text in the specified form. If such operator is not available, returns an operator spec that matches text, but of some other form in the preference order specified by the MathML spec. If that's not available either, returns the default operator spec. */ static const OperSpec *mmlFindOperSpec(const QString &text, Mml::FormType form) { QStringList name_list; name_list.append(text); // First, just try to find text in the operator dictionary. OperSpecSearchResult result = _mmlFindOperSpec(name_list, form); if (!result.haveForm(form)) { // Try to find other names for the operator represented by text. const EntitySpec *ent = 0; for (;;) { ent = searchEntitySpecData(text, ent); if (ent == 0) break; name_list.append('&' + QString(ent->name) + ';'); ++ent; } result = _mmlFindOperSpec(name_list, form); } const OperSpec *spec = result.getForm(form); if (spec != 0) return spec; spec = result.getForm(Mml::InfixForm); if (spec != 0) return spec; spec = result.getForm(Mml::PostfixForm); if (spec != 0) return spec; spec = result.getForm(Mml::PrefixForm); if (spec != 0) return spec; return &g_oper_spec_defaults; } static QString mmlDictAttribute(const QString &name, const OperSpec *spec) { int i = attributeIndex(name); if (i == -1) return QString(); else return spec->attributes[i]; } static uint interpretMathVariant(const QString &value, bool *ok) { struct MathVariantValue { const char *value; uint mv; }; static const MathVariantValue g_mv_data[] = { { "normal", Mml::NormalMV }, { "bold", Mml::BoldMV }, { "italic", Mml::ItalicMV }, { "bold-italic", Mml::BoldMV | Mml::ItalicMV }, { "double-struck", Mml::DoubleStruckMV }, { "bold-fraktur", Mml::BoldMV | Mml::FrakturMV }, { "script", Mml::ScriptMV }, { "bold-script", Mml::BoldMV | Mml::ScriptMV }, { "fraktur", Mml::FrakturMV }, { "sans-serif", Mml::SansSerifMV }, { "bold-sans-serif", Mml::BoldMV | Mml::SansSerifMV }, { "sans-serif-italic", Mml::SansSerifMV | Mml::ItalicMV }, { "sans-serif-bold-italic", Mml::SansSerifMV | Mml::ItalicMV | Mml::BoldMV }, { "monospace", Mml::MonospaceMV }, { 0, 0 } }; const MathVariantValue *v = g_mv_data; for (; v->value != 0; ++v) { if (value == v->value) { if (ok != 0) *ok = true; return v->mv; } } if (ok != 0) *ok = false; qWarning("interpretMathVariant(): could not parse value: \"%s\"", value.toLatin1().data()); return Mml::NormalMV; } static Mml::FormType interpretForm(const QString &value, bool *ok) { if (ok != 0) *ok = true; if (value == "prefix") return Mml::PrefixForm; if (value == "infix") return Mml::InfixForm; if (value == "postfix") return Mml::PostfixForm; if (ok != 0) *ok = false; qWarning("interpretForm(): could not parse value \"%s\"", value.toLatin1().data()); return Mml::InfixForm; } static Mml::ColAlign interpretColAlign(const QString &value_list, uint colnum, bool *ok) { QString value = interpretListAttr(value_list, colnum, "center"); if (ok != 0) *ok = true; if (value == "left") return Mml::ColAlignLeft; if (value == "right") return Mml::ColAlignRight; if (value == "center") return Mml::ColAlignCenter; if (ok != 0) *ok = false; qWarning("interpretColAlign(): could not parse value \"%s\"", value.toLatin1().data()); return Mml::ColAlignCenter; } static Mml::RowAlign interpretRowAlign(const QString &value_list, uint rownum, bool *ok) { QString value = interpretListAttr(value_list, rownum, "axis"); if (ok != 0) *ok = true; if (value == "top") return Mml::RowAlignTop; if (value == "center") return Mml::RowAlignCenter; if (value == "bottom") return Mml::RowAlignBottom; if (value == "baseline") return Mml::RowAlignBaseline; if (value == "axis") return Mml::RowAlignAxis; if (ok != 0) *ok = false; qWarning("interpretRowAlign(): could not parse value \"%s\"", value.toLatin1().data()); return Mml::RowAlignAxis; } static QString interpretListAttr(const QString &value_list, int idx, const QString &def) { QStringList l = value_list.split(' '); if (l.count() == 0) return def; if (l.count() <= idx) return l[l.count() - 1]; else return l[idx]; } static Mml::FrameType interpretFrameType(const QString &value_list, uint idx, bool *ok) { if (ok != 0) *ok = true; QString value = interpretListAttr(value_list, idx, "none"); if (value == "none") return Mml::FrameNone; if (value == "solid") return Mml::FrameSolid; if (value == "dashed") return Mml::FrameDashed; if (ok != 0) *ok = false; qWarning("interpretFrameType(): could not parse value \"%s\"", value.toLatin1().data()); return Mml::FrameNone; } static Mml::FrameSpacing interpretFrameSpacing(const QString &value_list, int em, int ex, bool *ok) { Mml::FrameSpacing fs; QStringList l = value_list.split(' '); if (l.count() != 2) { qWarning("interpretFrameSpacing: could not parse value \"%s\"", value_list.toLatin1().data()); if (ok != 0) *ok = false; return Mml::FrameSpacing((int)(0.4*em), (int)(0.5*ex)); } bool hor_ok, ver_ok; fs.m_hor = interpretSpacing(l[0], em, ex, &hor_ok); fs.m_ver = interpretSpacing(l[1], em, ex, &ver_ok); if (ok != 0) *ok = hor_ok && ver_ok; return fs; } static QFont interpretDepreciatedFontAttr(const MmlAttributeMap &font_attr, QFont &fn, int em, int ex) { if (font_attr.contains("fontsize")) { QString value = font_attr["fontsize"]; for (;;) { bool ok; int ptsize = interpretPointSize(value, &ok); if (ok) { fn.setPointSize(ptsize); break; } ptsize = interpretPercentSpacing(value, fn.pointSize(), &ok); if (ok) { fn.setPointSize(ptsize); break; } int size = interpretSpacing(value, em, ex, &ok); if (ok) { fn.setPixelSize(size); break; } break; } } if (font_attr.contains("fontweight")) { QString value = font_attr["fontweight"]; if (value == "normal") fn.setBold(false); else if (value == "bold") fn.setBold(true); else qWarning("interpretDepreciatedFontAttr(): could not parse fontweight \"%s\"", value.toLatin1().data()); } if (font_attr.contains("fontstyle")) { QString value = font_attr["fontstyle"]; if (value == "normal") fn.setItalic(false); else if (value == "italic") fn.setItalic(true); else qWarning("interpretDepreciatedFontAttr(): could not parse fontstyle \"%s\"", value.toLatin1().data()); } if (font_attr.contains("fontfamily")) { QString value = font_attr["fontfamily"]; fn.setFamily(value); } return fn; } static QFont interpretMathSize(QString value, QFont &fn, int em, int ex, bool *ok) { if (ok != 0) *ok = true; if (value == "small") { fn.setPointSize((int)(fn.pointSize()*0.7)); return fn; } if (value == "normal") return fn; if (value == "big") { fn.setPointSize((int)(fn.pointSize()*1.5)); return fn; } bool size_ok; int ptsize = interpretPointSize(value, &size_ok); if (size_ok) { fn.setPointSize(ptsize); return fn; } int size = interpretSpacing(value, em, ex, &size_ok); if (size_ok) { fn.setPixelSize(size); return fn; } if (ok != 0) *ok = false; qWarning("interpretMathSize(): could not parse mathsize \"%s\"", value.toLatin1().data()); return fn; } /*! \class QtMmlDocument \brief The QtMmlDocument class renders mathematical formulas written in MathML 2.0. This class provides a direct API to the rendering engine used by QtMmlWidget. It can be used to paint MathML inside other widgets. All methods work the same as the corresponding methods in QtMmlWidget. */ /*! Constructs an empty MML document. */ QtMmlDocument::QtMmlDocument() { m_doc = new MmlDocument; } /*! Destroys the MML document. */ QtMmlDocument::~QtMmlDocument() { delete m_doc; } /*! Clears the contents of this MML document. */ void QtMmlDocument::clear() { m_doc->clear(); } /*! Sets the MathML expression to be rendered. The expression is given in the string \a text. If the expression is successfully parsed, this method returns true; otherwise it returns false. If an error occured \a errorMsg is set to a diagnostic message, while \a errorLine and \a errorColumn contain the location of the error. Any of \a errorMsg, \a errorLine and \a errorColumn may be 0, in which case they are not set. \a text should contain MathML 2.0 presentation markup elements enclosed in a element. */ bool QtMmlDocument::setContent(QString text, QString *errorMsg, int *errorLine, int *errorColumn) { return m_doc->setContent(text, errorMsg, errorLine, errorColumn); } /*! Renders this MML document with the painter \a p at position \a pos. */ void QtMmlDocument::paint(QPainter *p, const QPoint &pos) const { m_doc->paint(p, pos); } /*! Returns the size of this MML document, as rendered, in pixels. */ QSize QtMmlDocument::size() const { return m_doc->size(); } /*! Returns the name of the font used to render the font \a type. \sa setFontName() setBaseFontPointSize() baseFontPointSize() QtMmlWidget::MmlFont */ QString QtMmlDocument::fontName(QtMmlWidget::MmlFont type) const { return m_doc->fontName(type); } /*! Sets the name of the font used to render the font \a type to \a name. \sa fontName() setBaseFontPointSize() baseFontPointSize() QtMmlWidget::MmlFont */ void QtMmlDocument::setFontName(QtMmlWidget::MmlFont type, const QString &name) { m_doc->setFontName(type, name); m_doc->layout(); } /*! Returns the point size of the font used to render expressions whose scriptlevel is 0. \sa setBaseFontPointSize() fontName() setFontName() */ int QtMmlDocument::baseFontPointSize() const { return m_doc->baseFontPointSize(); } /*! Sets the point \a size of the font used to render expressions whose scriptlevel is 0. \sa baseFontPointSize() fontName() setFontName() */ void QtMmlDocument::setBaseFontPointSize(int size) { m_doc->setBaseFontPointSize(size); m_doc->layout(); } ������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/qtmml/qtmmlwidget.h�����������������������������������������������������������������0000664�0001750�0001750�00000010060�14126044351�015545� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������/**************************************************************************** ** ** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of a Qt Solutions component. ** ** Commercial Usage ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Solutions Commercial License Agreement provided ** with the Software or, alternatively, in accordance with the terms ** contained in a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain ** additional rights. These rights are described in the Nokia Qt LGPL ** Exception version 1.1, included in the file LGPL_EXCEPTION.txt in this ** package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** Please note Third Party Software included with Qt Solutions may impose ** additional restrictions and it is the user's responsibility to ensure ** that they have met the licensing requirements of the GPL, LGPL, or Qt ** Solutions Commercial license and the relevant license of the Third ** Party Software they are using. ** ** If you are unsure which license is appropriate for your use, please ** contact Nokia at qt-info@nokia.com. ** ****************************************************************************/ #ifndef QTMMLWIDGET_H #define QTMMLWIDGET_H #include #include class MmlDocument; #if defined(Q_WS_WIN) # if !defined(QT_QTMMLWIDGET_EXPORT) && !defined(QT_QTMMLWIDGET_IMPORT) # define QT_QTMMLWIDGET_EXPORT # elif defined(QT_QTMMLWIDGET_IMPORT) # if defined(QT_QTMMLWIDGET_EXPORT) # undef QT_QTMMLWIDGET_EXPORT # endif # define QT_QTMMLWIDGET_EXPORT __declspec(dllimport) # elif defined(QT_QTMMLWIDGET_EXPORT) # undef QT_QTMMLWIDGET_EXPORT # define QT_QTMMLWIDGET_EXPORT __declspec(dllexport) # endif #else # define QT_QTMMLWIDGET_EXPORT #endif class QT_QTMMLWIDGET_EXPORT QtMmlWidget : public QFrame { public: enum MmlFont { NormalFont, FrakturFont, SansSerifFont, ScriptFont, MonospaceFont, DoublestruckFont }; QtMmlWidget(QWidget *parent = 0); ~QtMmlWidget(); QString fontName(MmlFont type) const; void setFontName(MmlFont type, const QString &name); int baseFontPointSize() const; void setBaseFontPointSize(int size); bool setContent(const QString &text, QString *errorMsg = 0, int *errorLine = 0, int *errorColumn = 0); void dump() const; virtual QSize sizeHint() const; void setDrawFrames(bool b); bool drawFrames() const; void clear(); protected: virtual void paintEvent(QPaintEvent *e); private: MmlDocument *m_doc; }; class QT_QTMMLWIDGET_EXPORT QtMmlDocument { public: QtMmlDocument(); ~QtMmlDocument(); void clear(); bool setContent(QString text, QString *errorMsg = 0, int *errorLine = 0, int *errorColumn = 0); void paint(QPainter *p, const QPoint &pos) const; QSize size() const; QString fontName(QtMmlWidget::MmlFont type) const; void setFontName(QtMmlWidget::MmlFont type, const QString &name); int baseFontPointSize() const; void setBaseFontPointSize(int size); private: MmlDocument *m_doc; }; #endif ��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000034�00000000000�010212� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������28 mtime=1677426865.1845212 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/recordpaint/������������������������������������������������������������������������0000775�0001750�0001750�00000000000�14376700261�014227� 5����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/recordpaint/paintelement.h����������������������������������������������������������0000664�0001750�0001750�00000002210�14126044351�017052� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// Copyright (C) 2011 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef PAINTELEMENT_H #define PAINTELEMENT_H class QPainter; class QTransform; class PaintElement { public: virtual ~PaintElement() {}; virtual void paint(QPainter& painter, const QTransform& origtransform) = 0; }; #endif ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/recordpaint/recordpaint.sip���������������������������������������������������������0000664�0001750�0001750�00000002545�14126044351�017256� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// Copyright (C) 2009 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// %Module(name=recordpaint) %Import(name=QtCore/QtCoremod.sip) %Import(name=QtGui/QtGuimod.sip) class RecordPaintDevice : QPaintDevice { %TypeHeaderCode #include %End public: RecordPaintDevice(int width, int height, int dpix, int dpiy); ~RecordPaintDevice(); void play(QPainter& painter); QPaintEngine* paintEngine() const; int metric(QPaintDevice::PaintDeviceMetric metric) const; int drawItemCount() const; }; �����������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/recordpaint/recordpaintdevice.cpp���������������������������������������������������0000664�0001750�0001750�00000004523�14126044351�020423� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// Copyright (C) 2011 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include #include #include "recordpaintdevice.h" #include "recordpaintengine.h" #define INCH_MM 25.4 RecordPaintDevice::RecordPaintDevice(int width, int height, int dpix, int dpiy) :_width(width), _height(height), _dpix(dpix), _dpiy(dpiy), _engine(new RecordPaintEngine) { } RecordPaintDevice::~RecordPaintDevice() { delete _engine; qDeleteAll(_elements); } QPaintEngine* RecordPaintDevice::paintEngine() const { return _engine; } int RecordPaintDevice::metric(QPaintDevice::PaintDeviceMetric metric) const { switch(metric) { case QPaintDevice::PdmWidth: return _width; case QPaintDevice::PdmHeight: return _height; case QPaintDevice::PdmWidthMM: return int(_width * INCH_MM / _dpix); case QPaintDevice::PdmHeightMM: return int(_height * INCH_MM / _dpiy); case QPaintDevice::PdmNumColors: return std::numeric_limits::max(); case QPaintDevice::PdmDepth: return 24; case QPaintDevice::PdmDpiX: case QPaintDevice::PdmPhysicalDpiX: return _dpix; case QPaintDevice::PdmDpiY: case QPaintDevice::PdmPhysicalDpiY: return _dpiy; case QPaintDevice::PdmDevicePixelRatio: return 1; default: // fallback return QPaintDevice::metric(metric); } } void RecordPaintDevice::play(QPainter& painter) { QTransform origtransform(painter.worldTransform()); foreach(PaintElement* el, _elements) { el->paint(painter, origtransform); } } �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/recordpaint/recordpaintdevice.h�����������������������������������������������������0000664�0001750�0001750�00000003340�14126044351�020064� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// Copyright (C) 2011 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef RECORD_PAINT_DEVICE__H #define RECORD_PAINT_DEVICE__H #include #include #include "paintelement.h" #include "recordpaintengine.h" class RecordPaintDevice : public QPaintDevice { public: RecordPaintDevice(int width, int height, int dpix, int dpiy); ~RecordPaintDevice(); QPaintEngine* paintEngine() const; // play back all void play(QPainter& painter); int metric(QPaintDevice::PaintDeviceMetric metric) const; int drawItemCount() const { return _engine->drawItemCount(); } public: friend class RecordPaintEngine; private: // add an element to the list of maintained elements void addElement(PaintElement* el) { _elements.push_back(el); } private: int _width, _height, _dpix, _dpiy; RecordPaintEngine* _engine; QVector _elements; }; #endif ������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/recordpaint/recordpaintengine.cpp���������������������������������������������������0000664�0001750�0001750�00000035074�14126044351�020436� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// Copyright (C) 2011 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include #include #include #include #include #include #include "paintelement.h" #include "recordpaintengine.h" #include "recordpaintdevice.h" namespace { ////////////////////////////////////////////////////////////// // Drawing Elements // these are defined for each type of painting // the QPaintEngine does // draw an ellipse (QRect and QRectF) template class ellipseElement : public PaintElement { public: ellipseElement(const T &rect) : _ellipse(rect) {} void paint(QPainter& painter, const QTransform&) { painter.drawEllipse(_ellipse); } private: T _ellipse; }; typedef ellipseElement EllipseElement; typedef ellipseElement EllipseFElement; // draw QImage class ImageElement : public PaintElement { public: ImageElement(const QRectF& rect, const QImage& image, const QRectF& sr, Qt::ImageConversionFlags flags) : _image(image), _rect(rect), _sr(sr), _flags(flags) {} void paint(QPainter& painter, const QTransform&) { painter.drawImage(_rect, _image, _sr, _flags); } private: QImage _image; QRectF _rect, _sr; Qt::ImageConversionFlags _flags; }; // draw lines // this is for painting QLine and QLineF template class lineElement : public PaintElement { public: lineElement(const T *lines, int linecount) { for(int i = 0; i < linecount; i++) _lines << lines[i]; } void paint(QPainter& painter, const QTransform&) { painter.drawLines(_lines); } private: QVector _lines; }; // specific Line and LineF variants typedef lineElement LineElement; typedef lineElement LineFElement; // draw QPainterPath class PathElement : public PaintElement { public: PathElement(const QPainterPath& path) : _path(path) {} void paint(QPainter& painter, const QTransform&) { painter.drawPath(_path); } private: QPainterPath _path; }; // draw Pixmap class PixmapElement : public PaintElement { public: PixmapElement(const QRectF& r, const QPixmap& pm, const QRectF& sr) : _r(r), _pm(pm), _sr(sr) {} void paint(QPainter& painter, const QTransform&) { painter.drawPixmap(_r, _pm, _sr); } private: QRectF _r; QPixmap _pm; QRectF _sr; }; // draw points (QPoint and QPointF) template class pointElement : public PaintElement { public: pointElement(const T* points, int pointcount) { for(int i=0; i PointElement; typedef pointElement PointFElement; // for QPolygon and QPolygonF template class polyElement: public PaintElement { public: polyElement(const T* points, int pointcount, QPaintEngine::PolygonDrawMode mode) : _mode(mode) { for(int i=0; i PolygonElement; typedef polyElement PolygonFElement; // for QRect and QRectF template class rectElement : public PaintElement { public: rectElement(const T* rects, int rectcount) { for(int i=0; i _rects; }; typedef rectElement RectElement; typedef rectElement RectFElement; // draw Text class TextElement : public PaintElement { public: TextElement(const QPointF& pt, const QTextItem& txt) : _pt(pt), _text(txt.text()) {} void paint(QPainter& painter, const QTransform&) { painter.drawText(_pt, _text); } private: QPointF _pt; QString _text; }; class TiledPixmapElement : public PaintElement { public: TiledPixmapElement(const QRectF& rect, const QPixmap& pixmap, const QPointF& pt) : _rect(rect), _pixmap(pixmap), _pt(pt) {} void paint(QPainter& painter, const QTransform&) { painter.drawTiledPixmap(_rect, _pixmap, _pt); } private: QRectF _rect; QPixmap _pixmap; QPointF _pt; }; /////////////////////////////////////////////////////////////////// // State paint elements // these define and change the state of the painter class BackgroundBrushElement : public PaintElement { public: BackgroundBrushElement(const QBrush& brush) : _brush(brush) {} void paint(QPainter& painter, const QTransform&) { painter.setBackground(_brush); } private: QBrush _brush; }; class BackgroundModeElement : public PaintElement { public: BackgroundModeElement(Qt::BGMode mode) : _mode(mode) {} void paint(QPainter& painter, const QTransform&) { painter.setBackgroundMode(_mode); } private: Qt::BGMode _mode; }; class BrushElement : public PaintElement { public: BrushElement(const QBrush& brush) : _brush(brush) {} void paint(QPainter& painter, const QTransform&) { painter.setBrush(_brush); } private: QBrush _brush; }; class BrushOriginElement : public PaintElement { public: BrushOriginElement(const QPointF& origin) : _origin(origin) {} void paint(QPainter& painter, const QTransform&) { painter.setBrushOrigin(_origin); } private: QPointF _origin; }; class ClipRegionElement : public PaintElement { public: ClipRegionElement(Qt::ClipOperation op, const QRegion& region) : _op(op), _region(region) {} void paint(QPainter& painter, const QTransform&) { painter.setClipRegion(_region, _op); } private: Qt::ClipOperation _op; QRegion _region; }; class ClipPathElement : public PaintElement { public: ClipPathElement(Qt::ClipOperation op, const QPainterPath& region) : _op(op), _region(region) {} void paint(QPainter& painter, const QTransform&) { painter.setClipPath(_region, _op); } private: Qt::ClipOperation _op; QPainterPath _region; }; class CompositionElement : public PaintElement { public: CompositionElement(QPainter::CompositionMode mode) : _mode(mode) {} void paint(QPainter& painter, const QTransform&) { painter.setCompositionMode(_mode); } private: QPainter::CompositionMode _mode; }; class FontElement : public PaintElement { public: FontElement(const QFont& font, int dpi) : _dpi(dpi), _font(font) {} void paint(QPainter& painter, const QTransform&) { QFont tempfont(_font); if( tempfont.pointSizeF() > 0. ) { // scale font sizes in points using dpi ratio int thisdpi = painter.device()->logicalDpiY(); double scale = tempfont.pointSizeF() / thisdpi * _dpi; tempfont.setPointSizeF(scale); } painter.setFont(tempfont); } private: int _dpi; QFont _font; }; class TransformElement : public PaintElement { public: TransformElement(const QTransform& t) : _t(t) {} void paint(QPainter& painter, const QTransform& origtransform) { painter.setWorldTransform(origtransform); painter.setWorldTransform(_t, true); } private: QTransform _t; }; class ClipEnabledElement : public PaintElement { public: ClipEnabledElement(bool enabled) : _enabled(enabled) {} void paint(QPainter& painter, const QTransform&) { painter.setClipping(_enabled); } private: bool _enabled; }; class PenElement : public PaintElement { public: PenElement(const QPen& pen) : _pen(pen) {} void paint(QPainter& painter, const QTransform&) { painter.setPen(_pen); } private: QPen _pen; }; class HintsElement : public PaintElement { public: HintsElement(QPainter::RenderHints hints) : _hints(hints) {} void paint(QPainter& painter, const QTransform&) { painter.setRenderHints(_hints); } private: QPainter::RenderHints _hints; }; // end anonymous block } /////////////////////////////////////////////////////////////////// // Paint engine follows RecordPaintEngine::RecordPaintEngine() : QPaintEngine(QPaintEngine::AllFeatures), _drawitemcount(0), _pdev(0) { } bool RecordPaintEngine::begin(QPaintDevice* pdev) { // old style C cast - probably should use dynamic_cast _pdev = (RecordPaintDevice*)(pdev); // signal started ok return 1; } // for each type of drawing command we add a new element // to the list maintained by the device void RecordPaintEngine::drawEllipse(const QRectF& rect) { _pdev->addElement( new EllipseFElement(rect) ); _drawitemcount++; } void RecordPaintEngine::drawEllipse(const QRect& rect) { _pdev->addElement( new EllipseElement(rect) ); _drawitemcount++; } void RecordPaintEngine::drawImage(const QRectF& rectangle, const QImage& image, const QRectF& sr, Qt::ImageConversionFlags flags) { _pdev->addElement( new ImageElement(rectangle, image, sr, flags) ); _drawitemcount++; } void RecordPaintEngine::drawLines(const QLineF* lines, int lineCount) { _pdev->addElement( new LineFElement(lines, lineCount) ); _drawitemcount += lineCount; } void RecordPaintEngine::drawLines(const QLine* lines, int lineCount) { _pdev->addElement( new LineElement(lines, lineCount) ); _drawitemcount += lineCount; } void RecordPaintEngine::drawPath(const QPainterPath& path) { _pdev->addElement( new PathElement(path) ); _drawitemcount++; } void RecordPaintEngine::drawPixmap(const QRectF& r, const QPixmap& pm, const QRectF& sr) { _pdev->addElement( new PixmapElement(r, pm, sr) ); _drawitemcount++; } void RecordPaintEngine::drawPoints(const QPointF* points, int pointCount) { _pdev->addElement( new PointFElement(points, pointCount) ); _drawitemcount += pointCount; } void RecordPaintEngine::drawPoints(const QPoint* points, int pointCount) { _pdev->addElement( new PointElement(points, pointCount) ); _drawitemcount += pointCount; } void RecordPaintEngine::drawPolygon(const QPointF* points, int pointCount, QPaintEngine::PolygonDrawMode mode) { _pdev->addElement( new PolygonFElement(points, pointCount, mode) ); _drawitemcount += pointCount; } void RecordPaintEngine::drawPolygon(const QPoint* points, int pointCount, QPaintEngine::PolygonDrawMode mode) { _pdev->addElement( new PolygonElement(points, pointCount, mode) ); _drawitemcount += pointCount; } void RecordPaintEngine::drawRects(const QRectF* rects, int rectCount) { _pdev->addElement( new RectFElement( rects, rectCount ) ); _drawitemcount += rectCount; } void RecordPaintEngine::drawRects(const QRect* rects, int rectCount) { _pdev->addElement( new RectElement( rects, rectCount ) ); _drawitemcount += rectCount; } void RecordPaintEngine::drawTextItem(const QPointF& p, const QTextItem& textItem) { _pdev->addElement( new TextElement(p, textItem) ); _drawitemcount += textItem.text().length(); } void RecordPaintEngine::drawTiledPixmap(const QRectF& rect, const QPixmap& pixmap, const QPointF& p) { _pdev->addElement( new TiledPixmapElement(rect, pixmap, p) ); _drawitemcount += 1; } bool RecordPaintEngine::end() { // signal finished ok return 1; } QPaintEngine::Type RecordPaintEngine::type () const { // some sort of random number for the ID of the engine type return QPaintEngine::Type(int(QPaintEngine::User)+34); } void RecordPaintEngine::updateState(const QPaintEngineState& state) { // we add a new element for each change of state // these are replayed later const int flags = state.state(); if( flags & QPaintEngine::DirtyPen ) _pdev->addElement( new PenElement( state.pen() ) ); if( flags & QPaintEngine::DirtyBrush ) _pdev->addElement( new BrushElement( state.brush() ) ); if( flags & QPaintEngine::DirtyBrushOrigin ) _pdev->addElement( new BrushOriginElement( state.brushOrigin() ) ); if( flags & QPaintEngine::DirtyFont ) _pdev->addElement( new FontElement( state.font(), _pdev->_dpiy ) ); if( flags & QPaintEngine::DirtyBackground ) _pdev->addElement( new BackgroundBrushElement( state.backgroundBrush() ) ); if( flags & QPaintEngine::DirtyBackgroundMode ) _pdev->addElement( new BackgroundModeElement( state.backgroundMode() ) ); if( flags & QPaintEngine::DirtyTransform ) _pdev->addElement( new TransformElement( state.transform() ) ); if( flags & QPaintEngine::DirtyClipRegion ) _pdev->addElement( new ClipRegionElement( state.clipOperation(), state.clipRegion() ) ); if( flags & QPaintEngine::DirtyClipPath ) _pdev->addElement( new ClipPathElement( state.clipOperation(), state.clipPath() ) ); if( flags & QPaintEngine::DirtyHints ) _pdev->addElement( new HintsElement( state.renderHints() ) ); if( flags & QPaintEngine::DirtyCompositionMode ) _pdev->addElement( new CompositionElement( state.compositionMode() ) ); if( flags & QPaintEngine::DirtyClipEnabled ) _pdev->addElement( new ClipEnabledElement( state.isClipEnabled() ) ); } ��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/recordpaint/recordpaintengine.h�����������������������������������������������������0000664�0001750�0001750�00000005162�14126044351�020076� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// Copyright (C) 2011 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef RECORD_PAINT_ENGINE__H #define RECORD_PAINT_ENGINE__H #include #include #include #include #include #include #include #include #include #include class RecordPaintDevice; class RecordPaintEngine : public QPaintEngine { public: RecordPaintEngine(); // standard methods to be overridden in engine bool begin(QPaintDevice* pdev); void drawEllipse(const QRectF& rect); void drawEllipse(const QRect& rect); void drawImage(const QRectF& rectangle, const QImage& image, const QRectF& sr, Qt::ImageConversionFlags flags = Qt::AutoColor); void drawLines(const QLineF* lines, int lineCount); void drawLines(const QLine* lines, int lineCount); void drawPath(const QPainterPath& path); void drawPixmap(const QRectF& r, const QPixmap& pm, const QRectF& sr); void drawPoints(const QPointF* points, int pointCount); void drawPoints(const QPoint* points, int pointCount); void drawPolygon(const QPointF* points, int pointCount, QPaintEngine::PolygonDrawMode mode); void drawPolygon(const QPoint* points, int pointCount, QPaintEngine::PolygonDrawMode mode); void drawRects(const QRectF* rects, int rectCount); void drawRects(const QRect* rects, int rectCount); void drawTextItem(const QPointF& p, const QTextItem& textItem); void drawTiledPixmap(const QRectF& rect, const QPixmap& pixmap, const QPointF& p); bool end (); QPaintEngine::Type type () const; void updateState(const QPaintEngineState& state); // return an estimate of number of items drawn int drawItemCount() const { return _drawitemcount; } private: int _drawitemcount; RecordPaintDevice* _pdev; }; #endif ��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000034�00000000000�010212� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������28 mtime=1677426865.1885211 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/�����������������������������������������������������������������������������0000775�0001750�0001750�00000000000�14376700261�013170� 5����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/bsp.cpp����������������������������������������������������������������������0000664�0001750�0001750�00000037613�14126044351�014464� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������#include #include #include #include #include "fragment.h" #include "bsp.h" #define EPS 1e-6 namespace { // 2d triangle area squared (only considering X/Y) inline double triAreaSqd2D(const Vec3* pts) { double a = (pts[0](0)*pts[1](1)-pts[0](1)*pts[1](0)+ pts[1](0)*pts[2](1)-pts[1](1)*pts[2](0)+ pts[2](0)*pts[0](1)-pts[2](1)*pts[0](0)); return a*a; } // Find set of three points to define a plane (pts). // Needs to find points which are not the same return true if ok bool findPlane(const IdxVector& idxs, unsigned startidx, const FragmentVector& frags, Vec3* pts) { double maxtriarea2 = -1; unsigned besttri = EMPTY_BSP_IDX; Vec3 temppts[3]; unsigned ptct = 0; double maxptsarea2 = -1; // Algorithm is to find the biggest triangle on the plane of the // image (X/Y), then if none, the set of 3 points with the largest // area. We prefer triangles as splitting them is expensive in // terms of numbers of fragments. // Plane of image triangles are preferred as splitting in the // opposite directions gives a weird viewing order for points // Using larger triangles is a heuristic to prevent lots of split // triangles. Empirically it seems to reduce the number of final // fragments by quite a lot. const unsigned endidx = idxs.size(); for(unsigned i=startidx; i maxtriarea2) { maxtriarea2 = areasqd; besttri = i; } } else if(besttri == EMPTY_BSP_IDX) // only bother looking at other points if we haven't found a // triangle yet { // this is a crude rotating buffer looking for larger triangles // in the plane of the image if(f.type == Fragment::FR_LINESEG || f.type == Fragment::FR_PATH) temppts[(ptct++)%3] = f.points[0]; if(f.type == Fragment::FR_LINESEG) temppts[(ptct++)%3] = f.points[1]; if(ptct >= 3) { double areasqd = triAreaSqd2D(temppts); if(areasqd > maxptsarea2) { for(unsigned j=0; j<3; ++j) pts[j] = temppts[j]; maxptsarea2 = areasqd; } } } } // return triangle if(besttri != EMPTY_BSP_IDX) { for(unsigned i=0; i<3; ++i) pts[i] = frags[idxs[besttri]].points[i]; return 1; } else { // is the returned triangle valid? return maxptsarea2 > EPS; } } // sign of calculated dot inline int dotsign(double dot) { return dot > EPS ? 1 : dot < -EPS ? -1 : 0; } // is path in front, on or behind plane? void handlePath(const Vec3& norm, const Vec3& plane0, FragmentVector& v, unsigned fidx, IdxVector& idxsame, IdxVector& idxfront, IdxVector& idxback) { int sign = dotsign(dot(norm, v[fidx].points[0]-plane0)); switch(sign) { case 1: idxfront.push_back(fidx); break; case -1: idxback.push_back(fidx); break; default: idxsame.push_back(fidx); break; } } // is line in front, on or behind plane void handleLine(const Vec3& norm, const Vec3& plane0, FragmentVector& fragvec, unsigned fidx, IdxVector& idxsame, IdxVector& idxfront, IdxVector& idxback) { Fragment& f = fragvec[fidx]; double dot0 = dot(norm, f.points[0]-plane0); int sign0 = dotsign(dot0); int sign1 = dotsign(dot(norm, f.points[1]-plane0)); int signsum = sign0+sign1; // first cases are that the line is simply on one side if(sign0==0 && sign1==0) idxsame.push_back(fidx); else if(signsum > 0) idxfront.push_back(fidx); else if(signsum < 0) idxback.push_back(fidx); else { // split line. Note: we change original, then push a copy, as // a push invalidates the original reference Vec3 linevec = f.points[1]-f.points[0]; double d = -dot0 / dot(linevec, norm); Vec3 newpt = f.points[0] + linevec*d; Fragment fcpy(f); // overwrite original with +ve part f.points[sign0 < 0 ? 0 : 1] = newpt; idxfront.push_back(fidx); // write copy with -ve part fcpy.points[sign0 < 0 ? 1 : 0] = newpt; idxback.push_back(fragvec.size()); fragvec.push_back(fcpy); } } // is triangle in front, behind or on plane? void handleTriangle(const Vec3& norm, const Vec3& plane0, FragmentVector& fragvec, unsigned fidx, IdxVector& idxsame, IdxVector& idxfront, IdxVector& idxback) { Fragment& f = fragvec[fidx]; double dots[3]; int signs[3]; for(unsigned i=0; i<3; ++i) { dots[i] = dot(norm, f.points[i]-plane0); signs[i] = dotsign(dots[i]); } int signsum = signs[0]+signs[1]+signs[2]; int nzero = (signs[0]==0)+(signs[1]==0)+(signs[2]==0); if(nzero == 3) // all on plane idxsame.push_back(fidx); else if(signsum+nzero == 3) // all +ve or on plane idxfront.push_back(fidx); else if(signsum-nzero == -3) // all -ve or on plane idxback.push_back(fidx); else if(nzero == 1) { // split triangle into two as one point is on the plane and // the other two are either side // index of point on plane unsigned idx0 = signs[0]==0 ? 0 : signs[1]==0 ? 1 : 2; Vec3 linevec = f.points[(idx0+2)%3]-f.points[(idx0+1)%3]; double d = -dots[(idx0+1)%3] / dot(linevec, norm); Vec3 newpt = f.points[(idx0+1)%3] + linevec*d; Fragment fcpy(f); // modify original f.points[(idx0+2)%3] = newpt; (dots[(idx0+1)%3]>0 ? idxfront : idxback).push_back(fidx); // then make a copy for the other side fcpy.points[(idx0+1)%3] = newpt; (dots[(idx0+2)%3]>0 ? idxfront : idxback).push_back(fragvec.size()); fragvec.push_back(fcpy); } else { // nzero==0 // split triangle into three, as no points are on the plane // point index by itself on one side of plane unsigned diffidx = signs[1]==signs[2] ? 0 : signs[0]==signs[2] ? 1 : 2; // new points on plane Vec3 linevec_p1 = f.points[(diffidx+1)%3]-f.points[diffidx]; double d_p1 = -dots[diffidx] / dot(linevec_p1, norm); Vec3 newpt_p1 = f.points[diffidx] + linevec_p1*d_p1; Vec3 linevec_p2 = f.points[(diffidx+2)%3]-f.points[diffidx]; double d_p2 = -dots[diffidx] / dot(linevec_p2, norm); Vec3 newpt_p2 = f.points[diffidx] + linevec_p2*d_p2; // now make one triangle on one side and two on the other Fragment fcpy1(f); Fragment fcpy2(f); // modify original: triangle by itself on one side f.points[(diffidx+1)%3] = newpt_p1; f.points[(diffidx+2)%3] = newpt_p2; (dots[diffidx] > 0 ? idxfront : idxback).push_back(fidx); // then add the other two on the other side fcpy1.points[diffidx] = newpt_p1; fcpy1.points[(diffidx+2)%3] = newpt_p2; (dots[diffidx] < 0 ? idxfront : idxback).push_back(fragvec.size()); fragvec.push_back(fcpy1); fcpy2.points[diffidx] = newpt_p2; (dots[diffidx] < 0 ? idxfront : idxback).push_back(fragvec.size()); fragvec.push_back(fcpy2); } } struct BSPStackItem { BSPStackItem(unsigned _bspidx, unsigned _nidxs) : bspidx(_bspidx), nidxs(_nidxs) {} unsigned bspidx; // BSPRecord we are working on here unsigned nidxs; // Number of fragment indices in to_process }; // get Z component of fragment, nudging points and lines forward // Z decreases away from viewer double fragZ(const Fragment& f) { switch(f.type) { case Fragment::FR_TRIANGLE: return std::min(f.points[0](2), std::min(f.points[1](2), f.points[2](2))); case Fragment::FR_LINESEG: return std::min(f.points[0](2), f.points[1](2)) + 1e-5; case Fragment::FR_PATH: return f.points[0](2) + 2e-5; default: return std::numeric_limits::infinity(); } } struct FragZCompare { FragZCompare(const FragmentVector& _v) : v(_v) {} bool operator()(unsigned a, unsigned b) { return fragZ(v[a]) stack; stack.reserve(128); stack.push_back( BSPStackItem(0, to_process.size()) ); while( !stack.empty() ) { BSPStackItem stackitem(stack.back()); stack.pop_back(); // this is the bsp record with which the items are associated BSPRecord& rec = bsp_recs[stackitem.bspidx]; rec.minfragidxidx = frag_idxs.size(); // where the items get added // if more than item to process then choose a plane, then split if( stackitem.nidxs > 1 && findPlane(to_process, to_process.size()-stackitem.nidxs, fragvec, planepts) ) { // norm of plane (making sure it points to observer) Vec3 norm = cross(planepts[1]-planepts[0], planepts[2]-planepts[0]); if(dot(norm, viewdirn) < 0) norm = -norm; // approximately normalise norm *= 1./(std::abs(norm(0))+std::abs(norm(1))+std::abs(norm(2))); unsigned to_process_size = to_process.size(); for(unsigned i=to_process_size-stackitem.nidxs; i stack; stack.reserve(128); stack.push_back(WalkStackItem(0, 0)); IdxVector temp; while( !stack.empty() ) { WalkStackItem stackitem(stack.back()); stack.pop_back(); const BSPRecord &rec = bsp_recs[stackitem.bsp_idx]; if(stackitem.stage == 0) { if(rec.frontidx != EMPTY_BSP_IDX) stack.push_back( WalkStackItem(rec.frontidx, 0) ); stack.push_back( WalkStackItem(stackitem.bsp_idx, 1) ); if(rec.backidx != EMPTY_BSP_IDX) stack.push_back( WalkStackItem(rec.backidx, 0) ); } else { // Sort images in plane by Z. This is helpful for points // which may overlap. temp.resize(0); temp.insert(temp.end(), frag_idxs.begin()+rec.minfragidxidx, frag_idxs.begin()+(rec.minfragidxidx+rec.nfrags)); std::sort(temp.begin(), temp.end(), FragZCompare(fragvec)); for(int type=Fragment::FR_TRIANGLE; type<=Fragment::FR_PATH; ++type) { for(unsigned i : temp) if(fragvec[i].type == type) retn.push_back(i); } } } return retn; } #if 0 #include int main() { FragmentVector v; for(unsigned i=0; i<10; ++i) { Fragment f; f.type =Fragment::FR_TRIANGLE; for(unsigned j=0;j<3;j++) f.points[j] = Vec3(rand()*1./RAND_MAX, rand()*1./RAND_MAX, rand()*1./RAND_MAX); v.push_back(f); } BSPBuilder builder(v); std::cout << "BSP recs size " << builder.bsp_recs.size() << '\n'; std::cout << "Fragment size " << v.size() << '\n'; IdxVector out = builder.getFragmentIdxs(); for(unsigned i=0; i // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef BSP_H #define BSP_H #include #include "fragment.h" typedef std::vector IdxVector; #define EMPTY_BSP_IDX (std::numeric_limits::max()) struct BSPRecord { BSPRecord() : minfragidxidx(0), nfrags(0), frontidx(EMPTY_BSP_IDX), backidx(EMPTY_BSP_IDX) { } // fragments stored in this node, in terms of the index to an array // of indexes, frag_idxs unsigned minfragidxidx, nfrags; // indices in bsp_recs to the BSPRecord items in front and behind unsigned frontidx, backidx; }; // This class defines a specialised Binary Space Paritioning (BSP) // buliding routine. 3D space is split recursively by planes to // separate objects into front and back entries. The idea is to only // use the BSP tree _once_, which is unlike normal uses of BSP. It is // used to create a robust back->front ordering for a particular // viewing direction. To avoid lots of dynamic memory allocation and // to reduce overheads, the nodes in the BSP tree are stored in a // vector. class BSPBuilder { public: // construct the BSP tree from the fragments given and a particular // viewing direction BSPBuilder(FragmentVector& fragvec, Vec3 viewdirn); // return a vector of fragment indexes in drawing order IdxVector getFragmentIdxs(const FragmentVector& fragvec) const; // the nodes in the tree std::vector bsp_recs; // vector of indices to the fragments vector IdxVector frag_idxs; }; #endif ��������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1676400456.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/camera.cpp�������������������������������������������������������������������0000664�0001750�0001750�00000004632�14372753510�015132� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include #include "camera.h" Camera::Camera() { setPointing(Vec3(0,0,0), Vec3(0,0,1), Vec3(0,1,0)); setPerspective(); } void Camera::setPointing(const Vec3 &_eye, const Vec3 &target, const Vec3 &up) { // is it this one or the one below? // http://3dgep.com/?p=1700 eye = _eye; Vec3 f = target - eye; f.normalise(); Vec3 u = up; u.normalise(); Vec3 s = cross(f, u); s.normalise(); u = cross(s, f); viewM(0,0) = s(0); viewM(0,1) = s(1); viewM(0,2) = s(2); viewM(0,3) = -dot(s, eye); viewM(1,0) = u(0); viewM(1,1) = u(1); viewM(1,2) = u(2); viewM(1,3) = -dot(u, eye); viewM(2,0) = -f(0); viewM(2,1) = -f(1); viewM(2,2) = -f(2); viewM(2,3) = dot(f, eye); viewM(3,0) = 0; viewM(3,1) = 0; viewM(3,2) = 0; viewM(3,3) = 1; combM = perspM * viewM; } void Camera::setPerspective(double fov_degrees, double znear, double zfar) { // matrix from Scratchapixel 2 // https://www.scratchapixel.com/lessons/3d-basic-rendering/perspective-and-orthographic-projection-matrix/building-basic-perspective-projection-matrix double scale = 1/std::tan(fov_degrees*(PI/180/2)); perspM(0,0) = scale; perspM(1,0) = 0; perspM(2,0) = 0; perspM(3,0) = 0; perspM(0,1) = 0; perspM(1,1) = scale; perspM(2,1) = 0; perspM(3,1) = 0; perspM(0,2) = 0; perspM(1,2) = 0; perspM(2,2) = -zfar/(zfar-znear); perspM(3,2) = -1; perspM(0,3) = 0; perspM(1,3) = 0; perspM(2,3) = -zfar*znear/(zfar-znear); perspM(3,3) = 0; combM = perspM * viewM; } ������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/camera.h���������������������������������������������������������������������0000664�0001750�0001750�00000003124�14126044351�014563� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// -*-c++-*- // Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef CAMERA_H #define CAMERA_H #include "mmaths.h" class Camera { public: Camera(); // Look at target position from eye, given up vector. // See glm code lookAt void setPointing(const Vec3 &eye, const Vec3 &target, const Vec3 &up); // fovy_degrees: total field of view in degrees // znear: clip things nearer than this (should be as big as // possible for precision) // zfar: far clipping plane. void setPerspective(double fov_degrees=90, double znear=0.1, double zfar=100); public: Mat4 viewM; // view matrix Mat4 perspM; // perspective matrix Mat4 combM; // combined matrix Vec3 eye; // location of eye }; #endif ��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/clipcontainer.cpp������������������������������������������������������������0000664�0001750�0001750�00000013776�14126044351�016536� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include "clipcontainer.h" #define EPS 1e-8 namespace { // clip line by plane void clipLine(Fragment& f, const Vec3& onplane, const Vec3& normal) { double dot0 = dot(f.points[0]-onplane, normal); bool bad0 = dot0 < -EPS; double dot1 = dot(f.points[1]-onplane, normal); bool bad1 = dot1 < -EPS; if(!bad0 && !bad1) // both points on good side of plane ; else if(bad0 && bad1) // both line points on bad side of plane f.type = Fragment::FR_NONE; else { // clip line to plane (bad1 or bad2, not both) Vec3 linevec = f.points[1]-f.points[0]; double d = -dot0 / dot(linevec, normal); f.points[bad0 ? 0 : 1] = f.points[0] + linevec*d; } } // clip triangle by plane void clipTriangle(FragmentVector& v, unsigned idx, const Vec3& onplane, const Vec3& normal) { Fragment& f = v[idx]; double dotv[3]; unsigned bad[3]; for(unsigned i=0; i<3; ++i) { dotv[i] = dot(f.points[i]-onplane, normal); bad[i] = dotv[i] < -EPS; } unsigned badsum = bad[0]+bad[1]+bad[2]; switch(badsum) { case 0: // all points ok break; case 1: // two points are good, one is bad { unsigned badidx = bad[0] ? 0 : bad[1] ? 1 : 2; // calculate where vectors from good to bad points // intercept plane Vec3 good1 = f.points[(badidx+1)%3]; Vec3 linevec1 = good1 - f.points[badidx]; double d1 = -dotv[badidx] / dot(linevec1, normal); Vec3 icept1 = f.points[badidx] + linevec1*d1; Vec3 good2 = f.points[(badidx+2)%3]; Vec3 linevec2 = good2 - f.points[badidx]; double d2 = -dotv[badidx] / dot(linevec2, normal); Vec3 icept2 = f.points[badidx] + linevec2*d2; // break into two triangles from good points to intercepts // note: the push back invalidates the original, so we have // to make a copy f.points[0] = good2; f.points[1] = icept2; f.points[2] = good1; Fragment fcpy(f); fcpy.points[0] = good1; fcpy.points[1] = icept1; fcpy.points[2] = icept2; v.push_back(fcpy); } break; case 2: // one point is ok, the other two are bad { unsigned goodidx = !bad[0] ? 0 : !bad[1] ? 1 : 2; // work out where vectors from ok point intercept with plane Vec3 linevec1 = f.points[(goodidx+1)%3] - f.points[goodidx]; double d1 = -dotv[goodidx] / dot(linevec1, normal); f.points[(goodidx+1)%3] = f.points[goodidx] + linevec1*d1; Vec3 linevec2 = f.points[(goodidx+2)%3] - f.points[goodidx]; double d2 = -dotv[goodidx] / dot(linevec2, normal); f.points[(goodidx+2)%3] = f.points[goodidx] + linevec2*d2; } break; case 3: // all points are bad f.type = Fragment::FR_NONE; break; } } // clip all fragments to the plane given void clipFragments(FragmentVector& v, unsigned start, const Vec3& onplane, const Vec3& normal) { unsigned nfrags = v.size(); for(unsigned i=start; igetFragments(perspM, outerM, v); // these are the points defining the clipping cube Vec3 pts[8]; pts[0] = minpt; pts[1] = Vec3(minpt(0), minpt(1), maxpt(2)); pts[2] = Vec3(minpt(0), maxpt(1), minpt(2)); pts[3] = Vec3(minpt(0), maxpt(1), maxpt(2)); pts[4] = Vec3(maxpt(0), minpt(1), minpt(2)); pts[5] = Vec3(maxpt(0), minpt(1), maxpt(2)); pts[6] = Vec3(maxpt(0), maxpt(1), minpt(2)); pts[7] = maxpt; // convert cube coordinates to outer coordinates for(unsigned i=0; i<8; ++i) pts[i] = vec4to3(outerM*vec3to4(pts[i])); // clip with plane point and normal // dotting points with plane with these will give all >= 0 if in cube clipFragments(v, fragstart, pts[0], cross(pts[2]-pts[0], pts[1]-pts[0])); clipFragments(v, fragstart, pts[0], cross(pts[1]-pts[0], pts[4]-pts[0])); clipFragments(v, fragstart, pts[0], cross(pts[4]-pts[0], pts[2]-pts[0])); clipFragments(v, fragstart, pts[7], cross(pts[5]-pts[7], pts[3]-pts[7])); clipFragments(v, fragstart, pts[7], cross(pts[3]-pts[7], pts[6]-pts[7])); clipFragments(v, fragstart, pts[7], cross(pts[6]-pts[7], pts[5]-pts[7])); } ��././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/clipcontainer.h��������������������������������������������������������������0000664�0001750�0001750�00000003027�14126044351�016167� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// -*-c++-*- // Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef CLIPCONTAINER_H #define CLIPCONTAINER_H #include "objects.h" #include "fragment.h" // container which clips children in a 3D box class ClipContainer : public ObjectContainer { public: ClipContainer(Vec3 _minpt, Vec3 _maxpt) : ObjectContainer(), minpt(_minpt), maxpt(_maxpt) { } void getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); bool pointInBounds(Vec3 pt) const { return (pt(0) >= minpt(0) && pt(1) >= minpt(1) && pt(2) >= minpt(2) && pt(0) <= maxpt(0) && pt(1) <= maxpt(1) && pt(2) <= maxpt(2)); } public: Vec3 minpt, maxpt; }; #endif ���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/fixedvector.h����������������������������������������������������������������0000664�0001750�0001750�00000004150�14126044351�015655� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// -*-c++-*- // Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef FIXEDVECTOR_H #define FIXEDVECTOR_H // fixed sized vector with no dynamic allocations // warning: no checks for invalid indices! // class T needs a default constructor template class FixedVector { public: typedef T* iterator; typedef const T* const_iterator; FixedVector() : _size(0) {} void push_back(const T& v) { _data[_size++] = v; } unsigned short size() const { return _size; } bool empty() const { return _size==0; } unsigned short max_size() const { return N; } const T& operator[](unsigned short idx) const { return _data[idx]; } T& operator[](unsigned short idx) { return _data[idx]; } iterator begin() { return &_data[0]; } const_iterator begin() const { return &_data[0]; } const_iterator cbegin() const { return &_data[0]; } iterator end() { return &_data[_size]; } const_iterator end() const { return &_data[_size]; } const_iterator cend() const { return &_data[_size]; } T& front() { return _data[0]; } const T& front() const { return _data[0]; } T& back() { return _data[_size-1]; } const T& back() const { return _data[_size-1]; } private: unsigned short _size; T _data[N]; }; #endif ������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/fragment.cpp�����������������������������������������������������������������0000664�0001750�0001750�00000002303�14126044351�015467� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include "fragment.h" FragmentParameters::~FragmentParameters() { } void FragmentPathParameters::callback(QPainter* painter, QPointF pt1, QPointF pt2, QPointF pt3, int index, double scale, double linescale) { } �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/fragment.h�������������������������������������������������������������������0000664�0001750�0001750�00000011723�14126044351�015142� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// -*-c++-*- // Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef FRAGMENT_H #define FRAGMENT_H #include #include #include #include #include #include "properties.h" #include "mmaths.h" #define LINE_DELTA_DEPTH 1e-6 // from objects.h class Object; // this is passed to the renderer to get the parameters for painting // the path struct FragmentParameters { virtual ~FragmentParameters(); }; struct FragmentPathParameters : public FragmentParameters { QPainterPath* path; bool scaleline; bool scalepersp; bool runcallback; // optional callback function if runcallback is set virtual void callback(QPainter* painter, QPointF pt1, QPointF pt2, QPointF pt3, int index, double scale, double linescale); }; // created by drawing Objects to draw to screen struct Fragment { enum FragmentType {FR_NONE, FR_TRIANGLE, FR_LINESEG, FR_PATH}; // 3D points Vec3 points[3]; // projected points associated with fragment Vec3 proj[3]; // pointer to object, to avoid self-comparison. Object* object; // optional pointer to a parameters object FragmentParameters* params; // drawing style SurfaceProp const* surfaceprop; LineProp const* lineprop; // for path float pathsize; // calculated color from lighting QRgb calccolor; // number of times this has been split unsigned splitcount; // passed to path plotting or as index to color bar unsigned index; // type of fragment FragmentType type; // use calculated color bool usecalccolor; // zero on creation Fragment() : object(0), params(0), surfaceprop(0), lineprop(0), pathsize(0), calccolor(0), splitcount(0), index(0), type(FR_NONE), usecalccolor(0) { } // number of (visible) points used by fragment type unsigned nPointsVisible() const { switch(type) { case FR_TRIANGLE: return 3; case FR_LINESEG: return 2; case FR_PATH: return 1; default: return 0; } } // number of points used by fragment, including hidden ones // FR_PATH has an optional 2nd point for keeping track of a baseline unsigned nPointsTotal() const { switch(type) { case FR_TRIANGLE: return 3; case FR_LINESEG: return 2; case FR_PATH: return 3; default: return 0; } } double minDepth() const { switch(type) { case FR_TRIANGLE: return std::min(proj[0](2), std::min(proj[1](2), proj[2](2))); case FR_LINESEG: return std::min(proj[0](2), proj[1](2)) - LINE_DELTA_DEPTH; case FR_PATH: return proj[0](2) - 2*LINE_DELTA_DEPTH; default: return std::numeric_limits::infinity(); } } double maxDepth() const { switch(type) { case FR_TRIANGLE: return std::max(proj[0](2), std::max(proj[1](2), proj[2](2))); case FR_LINESEG: return std::max(proj[0](2), proj[1](2)) - LINE_DELTA_DEPTH; case FR_PATH: return proj[0](2) - 2*LINE_DELTA_DEPTH; default: return std::numeric_limits::infinity(); } } double meanDepth() const { switch(type) { case FR_TRIANGLE: return (proj[0](2) + proj[1](2) + proj[2](2))*(1/3.f); case FR_LINESEG: return (proj[0](2) + proj[1](2))*0.5f - LINE_DELTA_DEPTH; case FR_PATH: return proj[0](2) - 2*LINE_DELTA_DEPTH; default: return std::numeric_limits::infinity(); } } // recalculate projected coordinates void updateProjCoords(const Mat4& projM) { unsigned n=nPointsTotal(); for(unsigned i=0; icolor(index).alpha() > 0) vis = true; } if((type==FR_LINESEG || type==FR_PATH) && lineprop!=0) { if(lineprop->color(index).alpha() > 0) vis = true; } return vis; } }; typedef std::vector FragmentVector; #endif ���������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1672594800.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/mmaths.cpp�������������������������������������������������������������������0000664�0001750�0001750�00000003257�14354342560�015174� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include #include #include #include "mmaths.h" Mat4 rotateM4(double angle, Vec3 vec) { double c = std::cos(angle); double s = std::sin(angle); Vec3 a(vec); a.normalise(); Vec3 t(a*(1-c)); Mat4 m; m(0,0) = c+t(0)*a(0); m(0,1) = 0+t(1)*a(0)-s*a(2); m(0,2) = 0+t(2)*a(0)+s*a(1); m(0,3) = 0; m(1,0) = 0+t(0)*a(1)+s*a(2); m(1,1) = c+t(1)*a(1); m(1,2) = 0+t(2)*a(1)-s*a(0); m(1,3) = 0; m(2,0) = 0+t(0)*a(2)-s*a(1); m(2,1) = 0+t(1)*a(2)+s*a(0); m(2,2) = c+t(2)*a(2); m(2,3) = 0; m(3,0) = 0; m(3,1) = 0; m(3,2) = 0; m(3,3) = 1; return m; } Mat4 translationM4(Vec3 vec) { Mat4 m; m(0,0) = 1; m(0,3) = vec(0); m(1,1) = 1; m(1,3) = vec(1); m(2,2) = 1; m(2,3) = vec(2); m(3,3) = 1; return m; } �������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1672594809.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/mmaths.h���������������������������������������������������������������������0000664�0001750�0001750�00000032075�14354342571�014643� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// -*-c++-*- // Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef MATHS_H #define MATHS_H #include #include #define PI 3.14159265358979323846 #define DEG2RAD (PI/180.) ////////////////////////////////////////////////////////////////////////////// // 4-vector struct Vec4 { Vec4() { v[0] = v[1] = v[2] = v[3] = 0; } Vec4(double a, double b, double c, double d=1) { v[0] = a; v[1] = b; v[2] = c; v[3] = d; } inline double& operator()(unsigned i) { return v[i]; } inline double operator()(unsigned i) const { return v[i]; } inline void operator*=(double f) { v[0] *= f; v[1] *= f; v[2] *= f; v[3] *= f; } inline Vec4 operator+(const Vec4& o) const { return Vec4(v[0]+o.v[0], v[1]+o.v[1], v[2]+o.v[2], v[3]+o.v[3]); } inline Vec4 operator-(const Vec4& o) const { return Vec4(v[0]-o.v[0], v[1]-o.v[1], v[2]-o.v[2], v[3]-o.v[3]); } inline Vec4 operator*(double f) const { return Vec4(v[0]*f, v[1]*f, v[2]*f, v[3]*f); } Vec4& operator+=(const Vec4& o) { v[0]+=o.v[0]; v[1]+=o.v[1]; v[2]+=o.v[2]; v[3]+=o.v[3]; return *this; } Vec4& operator-=(const Vec4& o) { v[0]-=o.v[0]; v[1]-=o.v[1]; v[2]-=o.v[2]; v[3]-=o.v[3]; return *this; } inline bool operator==(const Vec4& o) const { return v[0]==o.v[0] && v[1]==o.v[1] && v[2]==o.v[2] && v[3]==o.v[3]; } inline bool operator!=(const Vec4& o) const { return !(operator==(o)); } // radius inline double rad2() const { return v[0]*v[0]+v[1]*v[1]+v[2]*v[2]+v[3]*v[3]; } inline double rad() const { return std::sqrt(rad2()); } inline void normalise() { operator*=(1/rad()); } inline bool isfinite() const { return std::isfinite(v[0]+v[1]+v[2]+v[3]); } private: double v[4]; }; ////////////////////////////////////////////////////////////////////////////// // 3-vector struct Vec3 { Vec3() { v[0] = v[1] = v[2] = 0; } Vec3(double a, double b, double c) { v[0] = a; v[1] = b; v[2] = c; } inline double& operator()(unsigned i) { return v[i]; } inline double operator()(unsigned i) const { return v[i]; } inline void operator*=(double f) { v[0] *= f; v[1] *= f; v[2] *= f; } inline Vec3 operator+(const Vec3& o) const { return Vec3(v[0]+o.v[0], v[1]+o.v[1], v[2]+o.v[2]); } inline Vec3 operator-() const { return Vec3(-v[0], -v[1], -v[2]); } inline Vec3 operator-(const Vec3& o) const { return Vec3(v[0]-o.v[0], v[1]-o.v[1], v[2]-o.v[2]); } inline Vec3 operator*(double f) const { return Vec3(v[0]*f, v[1]*f, v[2]*f); } Vec3& operator+=(const Vec3& o) { v[0]+=o.v[0]; v[1]+=o.v[1]; v[2]+=o.v[2]; return *this; } Vec3& operator-=(const Vec3& o) { v[0]-=o.v[0]; v[1]-=o.v[1]; v[2]-=o.v[2]; return *this; } inline bool operator==(const Vec3& o) const { return v[0]==o.v[0] && v[1]==o.v[1] && v[2]==o.v[2]; } inline bool operator!=(const Vec3& o) const { return !(operator==(o)); } // radius inline double rad2() const { return v[0]*v[0]+v[1]*v[1]+v[2]*v[2]; } inline double rad() const { return std::sqrt(rad2()); } inline void normalise() { operator*=(1/rad()); } inline bool isfinite() const { return std::isfinite(v[0]+v[1]+v[2]); } private: double v[3]; }; inline Vec3 cross(const Vec3& a, const Vec3& b) { return Vec3(a(1)*b(2)-a(2)*b(1), a(2)*b(0)-a(0)*b(2), a(0)*b(1)-a(1)*b(0)); } inline double dot(const Vec3& a, const Vec3& b) { return a(0)*b(0)+a(1)*b(1)+a(2)*b(2); } ////////////////////////////////////////////////////////////////////////////// // 4x4 matrix struct Mat4 { Mat4(bool zero=true) { if(zero) for(unsigned y=0; y<4; ++y) for(unsigned x=0; x<4; ++x) m[y][x] = 0; } inline double& operator()(unsigned y, unsigned x) { return m[y][x]; } inline double operator()(unsigned y, unsigned x) const { return m[y][x]; } // matrix multiply inline Mat4 operator*(const Mat4& o) const { Mat4 ret(false); for(unsigned y=0; y<4; ++y) for(unsigned x=0; x<4; ++x) ret.m[y][x] = m[y][0]*o.m[0][x] + m[y][1]*o.m[1][x] + m[y][2]*o.m[2][x] + m[y][3]*o.m[3][x]; return ret; } inline Vec4 operator*(const Vec4& v) const { return Vec4(v(0)*m[0][0]+v(1)*m[0][1]+v(2)*m[0][2]+v(3)*m[0][3], v(0)*m[1][0]+v(1)*m[1][1]+v(2)*m[1][2]+v(3)*m[1][3], v(0)*m[2][0]+v(1)*m[2][1]+v(2)*m[2][2]+v(3)*m[2][3], v(0)*m[3][0]+v(1)*m[3][1]+v(2)*m[3][2]+v(3)*m[3][3]); } inline Mat4 transpose() const { Mat4 r(false); for(unsigned y=0; y<4; ++y) for(unsigned x=0; y screen coordinates inline Vec2 projVecToScreen(const Mat3& screenM, const Vec3& vec) { Vec3 mult(screenM*Vec3(vec(0), vec(1), 1)); double inv = 1/mult(2); return Vec2(mult(0)*inv, mult(1)*inv); } // do 2d lines overlap? inline bool line2DOverlap(Vec2 A1, Vec2 A2, Vec2 B1, Vec2 B2) { double d = cross(A2-A1, B2-B1); double u = cross(B2-B1, A1-B1); double v = cross(A2-A1, A1-B1); if(d>=0) return 0<=u && u<=d && 0<=v && v<=d; else return 0>=u && u>=d && 0>=v && v>=d; } ////////////////////////////////////////////////////////////////////////////// // Helper types typedef std::vector Vec2Vector; typedef std::vector Vec3Vector; typedef std::vector Vec4Vector; typedef std::vector ValVector; ////////////////////////////////////////////////////////////////////////////// #if 0 // debug: #include using std::printf; inline void print(const Mat4& m) { printf("% 7.3f % 7.3f % 7.3f % 7.3f\n", m(0,0), m(0,1), m(0,2), m(0,3)); printf("% 7.3f % 7.3f % 7.3f % 7.3f\n", m(1,0), m(1,1), m(1,2), m(1,3)); printf("% 7.3f % 7.3f % 7.3f % 7.3f\n", m(2,0), m(2,1), m(2,2), m(2,3)); printf("% 7.3f % 7.3f % 7.3f % 7.3f\n", m(3,0), m(3,1), m(3,2), m(3,3)); } inline void print(const Mat3& m) { printf("% 7.3f % 7.3f % 7.3f\n", m(0,0), m(0,1), m(0,2)); printf("% 7.3f % 7.3f % 7.3f\n", m(1,0), m(1,1), m(1,2)); printf("% 7.3f % 7.3f % 7.3f\n", m(2,0), m(2,1), m(2,2)); } inline void print(const Vec4& v) { printf("% 7.3f % 7.3f % 7.3f % 7.3f\n", v(0), v(1), v(2), v(3)); } inline void print(const Vec3& v) { printf("% 7.3f % 7.3f % 7.3f\n", v(0), v(1), v(2)); } #endif #endif �������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/numpy_helpers.cpp������������������������������������������������������������0000664�0001750�0001750�00000003501�14126044351�016557� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include "numpy_helpers.h" #define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION #include "numpy/arrayobject.h" namespace { // python3 numpy import_array is a macro with a return (how stupid), // so we have to wrap it up to get it to portably compile #if PY_MAJOR_VERSION >= 3 void* doImport() { import_array(); return 0; } #else void doImport() { import_array(); } #endif } void doNumpyInitPackage() { doImport(); } ValVector numpyToValVector(PyObject* obj) { PyArrayObject *arrayobj = (PyArrayObject*) PyArray_ContiguousFromAny(obj, NPY_DOUBLE, 1, 1); if(arrayobj == NULL) { throw "Cannot covert item to 1D numpy array"; } const double* data = (double*)PyArray_DATA(arrayobj); unsigned dim = PyArray_DIMS(arrayobj)[0]; ValVector out; out.reserve(dim); for(unsigned i=0; i // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef NUMPY_HELPERS_H #define NUMPY_HELPERS_H #include "Python.h" #include "mmaths.h" void doNumpyInitPackage(); ValVector numpyToValVector(PyObject* obj); #endif ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/objects.cpp������������������������������������������������������������������0000664�0001750�0001750�00000066650�14126044351�015334� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include #include #include #include #include "objects.h" #include "twod.h" Object::~Object() { } void Object::getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v) { } void Object::assignWidgetId(unsigned long long id) { widgetid = id; } // Triangle /////////// void Triangle::getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v) { Fragment f; f.type = Fragment::FR_TRIANGLE; f.surfaceprop = surfaceprop.ptr(); f.lineprop = 0; for(unsigned i=0; i<3; ++i) f.points[i] = vec4to3(outerM*vec3to4(points[i])); f.object = this; v.push_back(f); } // PolyLine /////////// void PolyLine::addPoints(const ValVector& x, const ValVector& y, const ValVector& z) { unsigned size = std::min(x.size(), std::min(y.size(), z.size())); points.reserve(points.size()+size); for(unsigned i=0; i 0 && (f.points[0]+f.points[1]).isfinite()) v.push_back(f); } } // LineSegments /////////////// LineSegments::LineSegments(const ValVector& x1, const ValVector& y1, const ValVector& z1, const ValVector& x2, const ValVector& y2, const ValVector& z2, const LineProp* prop) : Object(), lineprop(prop) { unsigned size = std::min( std::min(x1.size(), std::min(y1.size(), z1.size())), std::min(x2.size(), std::min(y2.size(), z2.size())) ); points.reserve(size*2); for(unsigned i=0; i 0 && (fl.points[0]+fl.points[1]).isfinite()) v.push_back(fl); ++fl.index; } } } } void Mesh::getSurfaceFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v) { if(surfaceprop.ptr() == 0) return; unsigned vidx_h, vidx_1, vidx_2; getVecIdxs(vidx_h, vidx_1, vidx_2); Fragment fs; fs.type = Fragment::FR_TRIANGLE; fs.surfaceprop = surfaceprop.ptr(); fs.lineprop = 0; fs.object = this; // for each grid point we alternatively draw one of two sets of // triangles, to make a symmetric diamond pattern, which looks // better when striped static const unsigned tidxs[2][2][3] = { {{0,1,2},{3,1,2}}, {{1,0,3},{2,0,3}} }; const unsigned n1 = pos1.size(); const unsigned n2 = pos2.size(); Vec4 p[4]; Vec3 pproj[4]; p[0](3) = p[1](3) = p[2](3) = p[3](3) = 1; for(unsigned i1=0; (i1+1) data; }; }; void DataMesh::getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v) { // check indices bool found[3] = {0, 0, 0}; unsigned idxs[3] = {idxval, idxedge1, idxedge2}; for(unsigned i=0; i<3; ++i) if(idxs[i]<=2) found[idxs[i]]=1; if(!found[0] || !found[1] || !found[2]) { std::fprintf(stderr, "DataMesh: invalid indices\n"); return; } // check that data sizes agree if( (int(edges1.size())-1)*(int(edges2.size())-1) != int(vals.size()) ) { std::fprintf(stderr, "DataMesh: invalid size\n"); return; } // nothing to draw if( lineprop.ptr()==0 && surfaceprop.ptr()==0 ) return; // used to draw the grid and surface Fragment ft; ft.type = Fragment::FR_TRIANGLE; ft.surfaceprop = surfaceprop.ptr(); ft.lineprop = 0; ft.object = this; Fragment fl; fl.type = Fragment::FR_LINESEG; fl.surfaceprop = 0; fl.lineprop = lineprop.ptr(); fl.object = this; // these are the corner indices used for drawing low and high resolution surfaces static const unsigned trilist_highres[8][3] = { {8,0,1},{8,1,2},{8,2,3},{8,3,4},{8,4,5},{8,5,6},{8,6,7},{8,7,0}}; // there are two low resolution triangle lists, as we want to // alternate them in each grid point to make a symmetric pattern static const unsigned trilist_lowres1[2][3] = {{0,2,4},{0,6,4}}; static const unsigned trilist_lowres2[2][3] = {{2,0,6},{2,4,6}}; static const unsigned linelist_lowres[4][2] = { {0,2},{0,6},{4,2},{4,6}}; static const unsigned linelist_highres[8][2] = { {0,1},{1,2},{2,3},{3,4},{4,5},{5,6},{6,7},{7,0}}; // This is to avoid double-drawing lines. Lines are given an x/yindex to say which // side of the grid cell is being drawn and a lineidx which is unique for sub-lines // xidx, yidx, lineidx static const unsigned linecell_lowres[4][3] = { {0,0,0}, {0,0,1}, {0,1,0}, {1,0,1} }; static const unsigned linecell_highres[8][3] = { {0,0,0}, {0,0,1}, {1,0,2}, {1,0,3}, {0,1,1}, {0,1,0}, {0,0,3}, {0,0,2} }; // whether lines are vertical or horizontal static const unsigned dirn_lowres[4] = {0, 1, 0, 1}; static const unsigned dirn_highres[8] = {1, 1, 0, 0, 1, 1, 0, 0}; // select list above depending on high or low resolution const unsigned (*lines)[2] = highres ? linelist_highres : linelist_lowres; const unsigned (*linecells)[3] = highres ? linecell_highres : linecell_lowres; const unsigned *linedirn = highres ? dirn_highres : dirn_lowres; const unsigned ntris = highres ? 8 : 2; const unsigned nlines = highres ? 8 : 4; // store corners and neighbouring cell values double neigh[9]; Vec4 corners[9]; // 4d corners for(unsigned i=0; i<9; ++i) corners[i](3) = 1; Vec3 corners3[9]; // 3d version of above // don't draw lines twice by keeping track if which edges of which // cells have been drawn already LineCellTracker linetracker(edges1.size(), edges2.size()); const int n1=int(edges1.size())-1; const int n2=int(edges2.size())-1; // loop over 2d array for(int i1=0; i1hide) { ft.index = i; // iterate over triangles in cube for(int tri=0; tri<12; ++tri) { // points for triangle for(int pt=0; pt<3; ++pt) { ft.points[pt] = vec4to3(outerM* Vec4(x[triidx[tri][pt][0]], y[triidx[tri][pt][1]], z[triidx[tri][pt][2]])); } if(ft.isVisible()) v.push_back(ft); } } if(fl.lineprop !=0 && !fl.lineprop->hide) { fl.index = i; // iterate over edges for(int edge=0; edge<12; ++edge) { // points for line for(int pt=0; pt<2; ++pt) { fl.points[pt] = vec4to3(outerM* Vec4(x[edgeidx[edge][pt][0]], y[edgeidx[edge][pt][1]], z[edgeidx[edge][pt][2]])); } if(fl.isVisible()) v.push_back(fl); } } } // loop over cuboids } // Points ///////// void Points::getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v) { fragparams.path = &path; fragparams.scaleline = scaleline; fragparams.scalepersp = scalepersp; fragparams.runcallback = false; Fragment fp; fp.type = Fragment::FR_PATH; fp.object = this; fp.params = &fragparams; fp.surfaceprop = surfacefill.ptr(); fp.lineprop = lineedge.ptr(); fp.pathsize = 1; unsigned size = std::min(x.size(), std::min(y.size(), z.size())); bool hassizes = !sizes.empty(); if(hassizes) size = std::min(size, unsigned(sizes.size())); for(unsigned i=0; idraw(painter, pt1, pt2, pt3, index, scale, linescale); } void Text::getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v) { Fragment fp; fp.type = Fragment::FR_PATH; fp.object = this; fp.params = &fragparams; fp.surfaceprop = 0; fp.lineprop = 0; fp.pathsize = 1; unsigned numitems = std::min(pos1.size(), pos2.size()) / 3; for(unsigned i=0; i torigin(2)) Triangle::getFragments(perspM, outerM, v); } // ObjectContainer ////////////////// ObjectContainer::~ObjectContainer() { for(unsigned i=0, s=objects.size(); igetFragments(perspM, totM, v); } void ObjectContainer::assignWidgetId(unsigned long long id) { for(auto &object : objects) object->assignWidgetId(id); } // FacingContainer void FacingContainer::getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v) { const Vec3 origin = vec4to3(outerM*Vec4(0,0,0,1)); const Vec3 tnorm = vec4to3(outerM*vec3to4(norm)); // norm points towards +z if(tnorm(2) > origin(2)) ObjectContainer::getFragments(perspM, outerM, v); } // AxisLabels AxisLabels::AxisLabels(const Vec3& _box1, const Vec3& _box2, const ValVector& _tickfracs, double _labelfrac) : box1(_box1), box2(_box2), tickfracs(_tickfracs), labelfrac(_labelfrac) { } void AxisLabels::addAxisChoice(const Vec3& _start, const Vec3& _end) { starts.push_back(_start); ends.push_back(_end); } void AxisLabels::PathParameters::callback(QPainter* painter, QPointF pt, QPointF ax1, QPointF ax2, int index, double scale, double linescale) { painter->save(); tl->drawLabel(painter, index, pt, ax1, ax2, axangle); painter->restore(); } void AxisLabels::drawLabel(QPainter* painter, int index, QPointF pt, QPointF ax1, QPointF ax2, double axangle) { } void AxisLabels::getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& fragvec) { // algorithm: // Take possible axis positions // Find those which do not overlap on the screen with body of cube // - make cube faces // - look for endpoints which are somewhere on a face (not edge) // Prefer those axes to bottom left // Determine from faces, which side of the axis is inside and which outside // Setup drawLabel for the right axis const unsigned numentries = std::min(starts.size(), ends.size()); if(numentries == 0) return; const Vec3 boxpts[2] = {box1, box2}; // compute corners of cube in projected coordinates // (0,0,0),(0,0,1),(0,1,0),(0,1,1),(1,0,0),(1,0,1),(1,1,0),(1,1,1) Vec3 proj_corners[8]; for(unsigned i0=0; i0<2; ++i0) for(unsigned i1=0; i1<2; ++i1) for(unsigned i2=0; i2<2; ++i2) { const Vec3 pt(boxpts[i0](0), boxpts[i1](1), boxpts[i2](2)); proj_corners[i2+i1*2+i0*4] = calcProjVec(perspM, outerM*vec3to4(pt)); } // point indices for faces of cube static const unsigned faces[6][4] = { {0,1,3,2} /* x==0 */, {4,5,7,6} /* x==1 */, {0,1,5,4} /* y==0 */, {2,3,7,6} /* y==1 */, {0,4,6,2} /* z==0 */, {1,5,7,3} /* z==1 */ }; // scene and projected coords of axis ends std::vector proj_starts, proj_ends; for(unsigned axis=0; axis!=numentries; ++axis) { // ends shifted slightly inwards for overlap checks // (fixes issues in ends exactly overlapping with // face edges causing overlap to fail) const Vec3 delta(ends[axis]-starts[axis]); const Vec4 start_in = vec3to4(starts[axis]+delta*0.001); const Vec4 end_in = vec3to4(starts[axis]+delta*0.999); proj_starts.push_back(calcProjVec(perspM, outerM*start_in)); proj_ends.push_back(calcProjVec(perspM, outerM*end_in)); } // find axes which don't overlap with faces in 2D std::vector axchoices; std::vector facepts; for(unsigned axis=0; axis!=numentries; ++axis) { const Vec2 linept1 = vec3to2(proj_starts[axis]); const Vec2 linept2 = vec3to2(proj_ends[axis]); bool overlap=0; // does this overlap with any faces? for(unsigned face=0; face<6 && !overlap; ++face) { facepts.resize(0); for(unsigned i=0; i<4; ++i) facepts.push_back(vec3to2(proj_corners[faces[face][i]])); twodPolyMakeClockwise(&facepts); if( twodLineIntersectPolygon(linept1, linept2, facepts) ) overlap=1; } if(!overlap) axchoices.push_back(axis); } // if none are suitable, prefer all if(axchoices.empty()) { for(unsigned axis=0; axis!=numentries; ++axis) axchoices.push_back(axis); } // get projected cube centre const Vec3 proj_cent(calcProjVec(perspM,outerM*vec3to4((box1+box2)*0.5))); // currently-prefered axis number unsigned bestaxis = 0; // axes are scored to prefer front, bottom, left axes int bestscore = -1; for(unsigned choice : axchoices) { const Vec3 av((proj_starts[choice]+proj_ends[choice])*0.5); // score is weighted towards front, then bottom, then left const int score = ((av(0) <= proj_cent(0))*10 + (av(1) > proj_cent(1))*11 + (av(2) < proj_cent(2))*12 ); if(score > bestscore) { bestscore = score; bestaxis = choice; } } // initialise PathParameters with best axis fragparams.tl = this; fragparams.path = 0; fragparams.scaleline = false; fragparams.scalepersp = false; fragparams.runcallback = true; fragparams.axangle = (180/PI) * std::atan2 ((proj_starts[bestaxis](1)+proj_ends[bestaxis](1))*0.5 - proj_cent(1), (proj_starts[bestaxis](0)+proj_ends[bestaxis](0))*0.5 - proj_cent(0)); const Vec3 axstart = starts[bestaxis]; const Vec3 delta = ends[bestaxis]-axstart; // scene coordinates of axis ends const Vec3 axstart_scene = vec4to3(outerM*vec3to4(axstart)); const Vec3 axend_scene = vec4to3(outerM*vec3to4(ends[bestaxis])); // ok, now we add the number fragments for the best choice of axis Fragment fp; fp.type = Fragment::FR_PATH; fp.object = this; fp.params = &fragparams; fp.surfaceprop = 0; fp.lineprop = 0; fp.pathsize = 1; fp.points[1] = axstart_scene; fp.points[2] = axend_scene; // add tick labels for(unsigned i=0; i= 0) { fp.index = -1; const Vec3 pt = axstart + delta*labelfrac; fp.points[0] = vec4to3(outerM*vec3to4(pt)); fragvec.push_back(fp); } } ����������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/objects.h��������������������������������������������������������������������0000664�0001750�0001750�00000023407�14126044351�014772� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// -*-c++-*- // Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef SHAPES_H #define SHAPES_H #include #include #include #include #include "mmaths.h" #include "fragment.h" #include "properties.h" class Object { public: Object() : widgetid(0) {} virtual ~Object(); virtual void getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); // recursive set id of child objects virtual void assignWidgetId(unsigned long long id); // id of widget which generated object unsigned long long widgetid; }; class Triangle : public Object { public: Triangle() : Object(), surfaceprop(0) { } Triangle(const Vec3& a, const Vec3& b, const Vec3& c, const SurfaceProp* prop=0) : surfaceprop(prop) { points[0] = a; points[1] = b; points[2] = c; } void getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); public: Vec3 points[3]; PropSmartPtr surfaceprop; }; class PolyLine : public Object { public: PolyLine(const LineProp* prop=0) : Object(), lineprop(prop) { } PolyLine(const ValVector& x, const ValVector& y, const ValVector& z, const LineProp* prop=0) : Object(), lineprop(prop) { addPoints(x, y, z); } void addPoint(const Vec3& v) { points.push_back(v); } void addPoints(const ValVector& x, const ValVector& y, const ValVector& z); void getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); public: Vec3Vector points; PropSmartPtr lineprop; }; class LineSegments : public Object { public: LineSegments(const ValVector& x1, const ValVector& y1, const ValVector& z1, const ValVector& x2, const ValVector& y2, const ValVector& z2, const LineProp* prop); LineSegments(const ValVector& pts1, const ValVector& pts2, const LineProp* prop); void getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); public: Vec3Vector points; PropSmartPtr lineprop; }; // a grid of height values on a regular mesh with grid points given // heights has M*N elements where M and N are the length of pos1 & pos2 class Mesh : public Object { public: // X_DIRN: heights is X, a is Y, b is Z // Y_DIRN: heights is Y, a is Z. b is X // Z_DIRN: heights is Z, a is X, b is Y enum Direction {X_DIRN, Y_DIRN, Z_DIRN}; public: Mesh(const ValVector& _pos1, const ValVector& _pos2, const ValVector& _heights, Direction _dirn, const LineProp* lprop=0, const SurfaceProp* sprop=0, bool _hidehorzline=0, bool _hidevertline=0) : pos1(_pos1), pos2(_pos2), heights(_heights), dirn(_dirn), lineprop(lprop), surfaceprop(sprop), hidehorzline(_hidehorzline), hidevertline(_hidevertline) { } void getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); private: void getSurfaceFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); void getLineFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); void getVecIdxs(unsigned &vidx_h, unsigned &vidx_1, unsigned &vidx_2) const; public: ValVector pos1, pos2, heights; Direction dirn; PropSmartPtr lineprop; PropSmartPtr surfaceprop; bool hidehorzline, hidevertline; }; // Grid of data values, where the centres of the bins are specified. // There should be 1 more values along edges than values in array. // idxval, edge1, edge2 give the index of the axis (x=0,y=1,z=2) for // that direction. class DataMesh : public Object { public: DataMesh(const ValVector& _edges1, const ValVector& _edges2, const ValVector& _vals, unsigned _idxval, unsigned _idxedge1, unsigned _idxedge2, bool _highres, const LineProp* lprop=0, const SurfaceProp* sprop=0, bool _hidehorzline=0, bool _hidevertline=0) : edges1(_edges1), edges2(_edges2), vals(_vals), idxval(_idxval), idxedge1(_idxedge1), idxedge2(_idxedge2), highres(_highres), lineprop(lprop), surfaceprop(sprop), hidehorzline(_hidehorzline), hidevertline(_hidevertline) { } void getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); public: ValVector edges1, edges2, vals; unsigned idxval, idxedge1, idxedge2; bool highres; PropSmartPtr lineprop; PropSmartPtr surfaceprop; bool hidehorzline, hidevertline; }; // multiple cuboids class MultiCuboid : public Object { public: MultiCuboid(const ValVector& _xmin, const ValVector& _xmax, const ValVector& _ymin, const ValVector& _ymax, const ValVector& _zmin, const ValVector& _zmax, const LineProp* lprop=0, const SurfaceProp* sprop=0) : xmin(_xmin), xmax(_xmax), ymin(_ymin), ymax(_ymax), zmin(_zmin), zmax(_zmax), lineprop(lprop), surfaceprop(sprop) { } void getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); public: ValVector xmin, xmax, ymin, ymax, zmin, zmax; PropSmartPtr lineprop; PropSmartPtr surfaceprop; }; // a set of points to plot class Points : public Object { public: Points(const ValVector& px, const ValVector& py, const ValVector& pz, QPainterPath pp, const LineProp* pointedge=0, const SurfaceProp* pointfill=0) : x(px), y(py), z(pz), path(pp), scaleline(true), scalepersp(true), lineedge(pointedge), surfacefill(pointfill) { } void setSizes(const ValVector& _sizes) { sizes = _sizes; } void getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); private: FragmentPathParameters fragparams; public: ValVector x, y, z; ValVector sizes; QPainterPath path; bool scaleline, scalepersp; PropSmartPtr lineedge; PropSmartPtr surfacefill; }; // a "text" class which calls back draw() when drawing is requested class Text : public Object { public: // pos1 and pos2 contain a list of x,y,z values Text(const ValVector& _pos1, const ValVector& _pos2); void getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); virtual void draw(QPainter* painter, QPointF pt1, QPointF pt2, QPointF pt3, unsigned index, double scale, double linescale); private: class TextPathParameters : public FragmentPathParameters { public: void callback(QPainter* painter, QPointF pt1, QPointF pt2, QPointF pt3, int index, double scale, double linescale); Text* text; }; TextPathParameters fragparams; public: ValVector pos1, pos2; }; // A triangle only visible if its norm (translated to viewing space) is +ve class TriangleFacing : public Triangle { public: TriangleFacing(const Vec3& a, const Vec3& b, const Vec3& c, const SurfaceProp* prop=0) : Triangle(a, b, c, prop) {} void getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); }; // container of objects with transformation matrix of children // Note: object pointers passed to object will be deleted when this // container is deleted class ObjectContainer : public Object { public: ObjectContainer() : objM(identityM4()) {} ~ObjectContainer(); void getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); void addObject(Object* obj) { objects.push_back(obj); } // recursive set id of child objects void assignWidgetId(unsigned long long id); public: Mat4 objM; std::vector objects; }; // container which only draws contents if the norm is pointing in +ve // z direction class FacingContainer : public ObjectContainer { public: FacingContainer(Vec3 _norm) : ObjectContainer(), norm(_norm) { } void getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); public: Vec3 norm; }; // This class draws tick labels with correct choice of axis class AxisLabels : public Object { public: // cube defined to be between these corners AxisLabels(const Vec3& _box1, const Vec3& _box2, const ValVector& _tickfracs, double _labelfrac); void addAxisChoice(const Vec3& start, const Vec3& end); // override this: draw reqested label at origin, with alignment // given // (if index==-1, then draw axis label) virtual void drawLabel(QPainter* painter, int index, QPointF pt, QPointF ax1, QPointF ax2, double axangle); void getFragments(const Mat4& perspM, const Mat4& outerM, FragmentVector& v); private: Vec3 box1, box2; ValVector tickfracs; double labelfrac; std::vector starts, ends; private: struct PathParameters : public FragmentPathParameters { void callback(QPainter* painter, QPointF pt, QPointF ax1, QPointF ax2, int index, double scale, double linescale); AxisLabels* tl; double axangle; }; PathParameters fragparams; }; #endif ���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/properties.h�����������������������������������������������������������������0000664�0001750�0001750�00000010410�14126044351�015523� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// -*-c++-*- // Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef PROPERTIES_H #define PROPERTIES_H #include #include #include #include #include #include "mmaths.h" // These classes describe the color and properties of a surface or line // A reference counting scheme (PropSmartPtr) is used to keep track of // when to delete them. PropSmartPtr is an intrusive pointer, which // uses a reference count in the object to keep track of how many // copies are used. typedef std::vector RGBVec; // helper to convert images to list of rgbs inline void _qimage2rgbvec(const QImage& img, RGBVec& vec) { unsigned size=unsigned(img.width()); vec.resize(size); const QRgb* row = (const QRgb*)(img.scanLine(0)); std::copy(row, row+size, &vec[0]); } struct SurfaceProp { SurfaceProp(double _r=0.5, double _g=0.5, double _b=0.5, double _refl=0.5, double _trans=0, bool _hide=0) : r(_r), g(_g), b(_b), refl(_refl), trans(_trans), hide(_hide), _ref_cnt(0) { } bool hasRGBs() const { return !rgbs.empty(); }; void setRGBs(const QImage& img) { _qimage2rgbvec(img, rgbs); } QColor color(unsigned idx) const { if(rgbs.empty()) return QColor(int(r*255), int(g*255), int(b*255), int((1-trans)*255)); else return QColor::fromRgba ( rgbs[std::min(unsigned(rgbs.size())-1,idx)] ); } double r, g, b; double refl, trans; RGBVec rgbs; bool hide; // used to reference count usages by Object() instances mutable unsigned _ref_cnt; }; struct LineProp { LineProp(double _r=0, double _g=0, double _b=0, double _trans=0, double _refl=0, double _width=1, bool _hide=0, Qt::PenStyle _style=Qt::SolidLine) : r(_r), g(_g), b(_b), trans(_trans), refl(_refl), width(_width), hide(_hide), style(_style), _ref_cnt(0) { } bool hasRGBs() const { return !rgbs.empty(); }; void setRGBs(const QImage& img) { _qimage2rgbvec(img, rgbs); } void setDashPattern(const ValVector& vec) { dashpattern.clear(); for(auto v : vec) dashpattern << v; } QColor color(unsigned idx) const { if(rgbs.empty()) return QColor(int(r*255), int(g*255), int(b*255), int((1-trans)*255)); else return QColor::fromRgba ( rgbs[std::min(unsigned(rgbs.size())-1,idx)] ); } double r, g, b; double trans; double refl; double width; RGBVec rgbs; bool hide; Qt::PenStyle style; QVector dashpattern; // used to reference count usages by Object() instances mutable unsigned _ref_cnt; }; //#include // intrusive pointer class is for automatically deleting the // Surface/LineProp instances when the reference count drops back to 0 template class PropSmartPtr { public: PropSmartPtr(T* p) : p_(p) { if(p_ != 0) { ++p_->_ref_cnt; //printf("prop: %p +1 -> %i\n", p_, p_->_ref_cnt); } } ~PropSmartPtr() { if(p_ != 0) { --p_->_ref_cnt; //printf("prop: %p -1 -> %i\n", p_, p_->_ref_cnt); if(p_->_ref_cnt == 0) delete p_; } } PropSmartPtr(const PropSmartPtr &r) : p_(r.p_) { if(p_ != 0) { ++p_->_ref_cnt; //printf("prop: %p +1 -> %i\n", p_, p_->_ref_cnt); } } T* operator->() { return p_; } const T* ptr() const { return p_; } private: T* p_; }; #endif ��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/scene.cpp��������������������������������������������������������������������0000664�0001750�0001750�00000043022�14126044351�014764� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include #include #include #include #include #include #include #include #include #include #include "scene.h" #include "fragment.h" #include "bsp.h" namespace { // Make scaling matrix to move points to correct output range Mat3 makeScreenM(const FragmentVector& frags, double x1, double y1, double x2, double y2) { // get range of projected points in x and y double minx, miny, maxx, maxy; minx = miny = std::numeric_limits::infinity(); maxx = maxy = -std::numeric_limits::infinity(); for(auto const& f : frags) { for(unsigned p=0, np=f.nPointsVisible(); px2,y1->y2 double minscale = std::min((x2-x1)/(maxx-minx), (y2-y1)/(maxy-miny)); return translateM3(0.5*(x1+x2), 0.5*(y1+y2)) * scaleM3(minscale) * translateM3(-0.5*(minx+maxx), -0.5*(miny+maxy)); } // screen matrix for a fixed view Mat3 makeScreenMFixed(double x1, double y1, double x2, double y2, double scale) { double scaling = 0.5*std::min(x2-x1, y2-y1)*scale; return translateM3(0.5*(x1+x2), 0.5*(y1+y2)) * scaleM3(scaling); } template T clip(const T& val, const T& minval, const T& maxval) { return std::min(std::max(val, minval), maxval); } unsigned init_fragments_size = 512; // This is a bit of a hack to avoid problems with the painter's // algorithm. This idea is to just break up lines with a length over // the maximum into pieces smaller than maxlen. void breakLongLines(FragmentVector& fragments, double maxlen) { const double maxlen2 = maxlen*maxlen; const int size = fragments.size(); for(int ifrag=0; ifrag maxlen2) { const int nbits = int(std::sqrt(len2/maxlen2))+1; const Vec3 delta = (f.points[1]-f.points[0])*(1./nbits); // set original to be first segment f.points[1] = f.points[0]+delta; // add nbits-1 copies for next segments Fragment tempf(f); for(int ic=1; ichide) return QPen(Qt::NoPen); QColor col; if(frag.usecalccolor) col = QColor::fromRgba(frag.calccolor); else col = p->color(frag.index); QPen pen( QPen(QBrush(col), p->width*linescale, p->style) ); if(!p->dashpattern.empty()) pen.setDashPattern(p->dashpattern); return pen; } // calculate color, including reflection QColor Scene::surfaceProp2QColor(const Fragment& frag) const { if(frag.usecalccolor) return QColor::fromRgba(frag.calccolor); return frag.surfaceprop->color(frag.index); } QBrush Scene::surfaceProp2QBrush(const Fragment& frag) const { if(frag.surfaceprop==0 || frag.surfaceprop->hide) return QBrush(); else return QBrush(surfaceProp2QColor(frag)); } QPen Scene::surfaceProp2QPen(const Fragment& frag) const { if(frag.surfaceprop==0 || frag.surfaceprop->hide) return QPen(Qt::NoPen); else return QPen(surfaceProp2QColor(frag)); } void Scene::drawPath(QPainter* painter, const Fragment& frag, QPointF pt1, QPointF pt2, QPointF pt3, double linescale, double distscale) { FragmentPathParameters* pars = static_cast(frag.params); double scale = frag.pathsize*linescale; if(pars->scalepersp) scale *= distscale; // hook into drawing routine if(pars->runcallback) { pars->callback(painter, pt1, pt2, pt3, frag.index, scale, linescale); return; } if(pars->scaleline) { painter->save(); painter->translate(pt1.x(), pt1.y()); painter->scale(scale, scale); painter->drawPath(*(pars->path)); painter->restore(); } else { // scale point and relocate QPainterPath path(*(pars->path)); int elementct = path.elementCount(); for(int i=0; idrawPath(path); } } void Scene::doDrawing(QPainter* painter, const Mat3& screenM, double linescale, const Camera& cam, Scene::DrawCallback* callback) { // draw fragments LineProp const* lline = 0; SurfaceProp const* lsurf = 0; Fragment::FragmentType ltype = Fragment::FR_NONE; // distance to centre of plot const double dist0 = vec4to3(cam.viewM*Vec4(0,0,0)).rad(); QPen no_pen(Qt::NoPen); QBrush no_brush(Qt::NoBrush); painter->setPen(no_pen); painter->setBrush(no_brush); QPointF projpts[3]; for(unsigned i=0, s=draworder.size(); ihide) { if(ltype != frag.type || lsurf != frag.surfaceprop || (frag.surfaceprop!=0 && (frag.surfaceprop->hasRGBs() || frag.usecalccolor))) { lsurf = frag.surfaceprop; painter->setBrush(surfaceProp2QBrush(frag)); // use a pen if the surface is not transparent, to // fill up the gaps between triangles when there is // anti-aliasing if(frag.surfaceprop->trans == 0) painter->setPen(surfaceProp2QPen(frag)); else painter->setPen(no_pen); } painter->drawPolygon(projpts, 3); } break; case Fragment::FR_LINESEG: if(frag.lineprop != 0 && !frag.lineprop->hide) { if(ltype != frag.type || lsurf != 0) { painter->setBrush(no_brush); lsurf = 0; } if(ltype != frag.type || lline != frag.lineprop || (frag.lineprop!=0 && (frag.lineprop->hasRGBs() || frag.usecalccolor))) { lline = frag.lineprop; painter->setPen(lineProp2QPen(frag, linescale)); } painter->drawLine(projpts[0], projpts[1]); } break; case Fragment::FR_PATH: { if(ltype != frag.type || lline != frag.lineprop || ((frag.lineprop!=0 && frag.lineprop->hasRGBs()))) { lline = frag.lineprop; painter->setPen(lineProp2QPen(frag, linescale)); } if(ltype != frag.type || lsurf != frag.surfaceprop || (frag.surfaceprop!=0 && (frag.surfaceprop->hasRGBs() || frag.usecalccolor))) { lsurf = frag.surfaceprop; painter->setBrush(surfaceProp2QBrush(frag)); } // ratio of distance for size scaling const double distinvratio = dist0 / frag.points[0].rad(); drawPath(painter, frag, projpts[0], projpts[1], projpts[2], linescale, distinvratio); } break; default: break; } if(callback != 0) callback->drawnFragment(frag); ltype = frag.type; } } void Scene::calcLightingTriangle(Fragment& frag) { // Calculate triangle norm. Make sure norm points towards // the viewer @ (0,0,0) Vec3 tripos = (frag.points[0] + frag.points[1] + frag.points[2]) * (1./3.); Vec3 norm = cross(frag.points[1] - frag.points[0], frag.points[2] - frag.points[0]); if(dot(tripos, norm)<0) norm = -norm; norm.normalise(); // get color of surface const SurfaceProp* prop = frag.surfaceprop; if(prop->refl==0.) return; double r, g, b, a; if(prop->hasRGBs()) { QRgb rgb = prop-> rgbs[std::min(frag.index, unsigned(prop->rgbs.size())-1)]; r=qRed(rgb)*(1./255.); g=qGreen(rgb)*(1./255.); b=qBlue(rgb)*(1./255.); a=qAlpha(rgb)*(1./255.); } else { r=prop->r; g=prop->g; b=prop->b; a=1-prop->trans; } // add lighting contributions for(auto const& light : lights) { // Now dot vector from light source to triangle with norm Vec3 light2tri = tripos-light.posn; light2tri.normalise(); // add new lighting index double dotprod = std::max(0., dot(light2tri, norm)); double delta = prop->refl * dotprod; r += delta*light.r; g += delta*light.g; b += delta*light.b; } frag.calccolor = qRgba( clip(int(r*255), 0, 255), clip(int(g*255), 0, 255), clip(int(b*255), 0, 255), clip(int(a*255), 0, 255) ); frag.usecalccolor = 1; } void Scene::calcLightingLine(Fragment& frag) { const LineProp* prop = frag.lineprop; if(prop->refl==0.) return; double r, g, b, a; if(prop->hasRGBs()) { QRgb rgb = prop-> rgbs[std::min(frag.index, unsigned(prop->rgbs.size())-1)]; r=qRed(rgb)*(1./255.); g=qGreen(rgb)*(1./255.); b=qBlue(rgb)*(1./255.); a=qAlpha(rgb)*(1./255.); } else { r=prop->r; g=prop->g; b=prop->b; a=1-prop->trans; } Vec3 pmid = (frag.points[0]+frag.points[1])*0.5; Vec3 linevec(frag.points[1]-frag.points[0]); linevec.normalise(); // add lighting contributions for(auto const& light : lights) { Vec3 light_to_pmid(light.posn-pmid); light_to_pmid.normalise(); // this is sin of angle between line segment and light double sintheta = cross(linevec, light_to_pmid).rad(); double delta = prop->refl * sintheta; r += delta*light.r; g += delta*light.g; b += delta*light.b; } frag.calccolor = qRgba( clip(int(r*255), 0, 255), clip(int(g*255), 0, 255), clip(int(b*255), 0, 255), clip(int(a*255), 0, 255) ); frag.usecalccolor = 1; } void Scene::calcLighting() { // lighting is full on if(lights.empty()) return; for(auto &frag : fragments) { switch(frag.type) { case Fragment::FR_TRIANGLE: if(frag.surfaceprop != 0) calcLightingTriangle(frag); break; case Fragment::FR_LINESEG: if(frag.lineprop != 0) calcLightingLine(frag); break; default: break; } } } void Scene::projectFragments(const Camera& cam) { // convert 3d to 2d coordinates using the Camera for(auto& f : fragments) for(unsigned pi=0, np=f.nPointsTotal(); pi fragments[j].maxDepth(); } ); } void Scene::renderBSP(const Camera& cam) { calcLighting(); //std::cout << "\nFragment size 1 " << fragments.size() << '\n'; // This is a hack to force lines to be rendered in front of // triangles and paths to be rendered in front of lines. Suggestions // to fix this are welcome. for(auto& f : fragments) { switch(f.type) { case Fragment::FR_LINESEG: f.points[0](2) += LINE_DELTA_DEPTH; f.points[1](2) += LINE_DELTA_DEPTH; break; case Fragment::FR_PATH: f.points[0](2) += 2*LINE_DELTA_DEPTH; f.points[1](2) += 2*LINE_DELTA_DEPTH; break; default: break; } } BSPBuilder bsp(fragments, Vec3(0,0,1)); draworder = bsp.getFragmentIdxs(fragments); //std::cout << "BSP recs size " << bsp.bsp_recs.size() << '\n'; //std::cout << "Fragment size 2 " << fragments.size() << '\n'; projectFragments(cam); } void Scene::render(Object* root, QPainter* painter, const Camera& cam, double x1, double y1, double x2, double y2, double scale) { render_internal(root, painter, cam, x1, y1, x2, y2, scale); } Scene::DrawCallback::~DrawCallback() { } unsigned long long Scene::idPixel(Object* root, QPainter* painter, const Camera& cam, double x1, double y1, double x2, double y2, double scale, double scaling, int x, int y) { constexpr int box = 3; // class to keep a small pixmap of the image and keep looking for // changes class IdDrawCallback : public Scene::DrawCallback { public: IdDrawCallback() : lastwidgetid(0), pixrender(2*box+1,2*box+1) { pixrender.fill(QColor(254,254,254)); lastimage = pixrender.toImage(); } void drawnFragment(const Fragment& frag) { // has the image changed since the last time? QImage image = pixrender.toImage(); // Should only be a relatively small number of // comparisons. Alternatively, it could use a checksum. if(image != lastimage) { if(frag.object != 0) lastwidgetid = frag.object->widgetid; lastimage = image; } } unsigned long long lastwidgetid; QPixmap pixrender; QImage lastimage; }; IdDrawCallback callback; painter->begin(&callback.pixrender); painter->scale(scaling, scaling); painter->setWindow(x-box, y-box, box*2+1, box*2+1); render_internal(root, painter, cam, x1, y1, x2, y2, scale, &callback); painter->end(); return callback.lastwidgetid; } void Scene::render_internal(Object* root, QPainter* painter, const Camera& cam, double x1, double y1, double x2, double y2, double scale, Scene::DrawCallback* callback) { fragments.reserve(init_fragments_size); fragments.resize(0); draworder.resize(0); // get fragments for whole scene root->getFragments(cam.perspM, cam.viewM, fragments); switch(mode) { case RENDER_BSP: renderBSP(cam); break; case RENDER_PAINTERS: renderPainters(cam); break; default: break; } // how to transform projected points to screen (screenM is member) screenM = scale<=0 ? makeScreenM(fragments, x1, y1, x2, y2) : makeScreenMFixed(x1, y1, x2, y2, scale); double linescale = std::max(std::abs(x2-x1), std::abs(y2-y1)) * (1./1000); // finally draw items doDrawing(painter, screenM, linescale, cam, callback); // don't decrease size of fragments unnecessarily, unless it is large init_fragments_size = fragments.size(); if(init_fragments_size > 65536) init_fragments_size /= 2; } ��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/scene.h����������������������������������������������������������������������0000664�0001750�0001750�00000007037�14126044351�014437� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// -*-c++-*- // Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef SCENE_H #define SCENE_H #include #include #include "mmaths.h" #include "objects.h" #include "camera.h" class Scene { public: enum RenderMode {RENDER_PAINTERS, RENDER_BSP}; private: // internal light color and position struct Light { Vec3 posn; double r, g, b; }; // if passed to drawing routine, this is called after drawing each // fragment class DrawCallback { public: DrawCallback() {}; virtual void drawnFragment(const Fragment& frag) = 0; virtual ~DrawCallback(); }; public: Scene(RenderMode _mode) : mode(_mode) { } // add a light to a list void addLight(Vec3 posn, QColor col, double intensity); // render scene to painter in coordinate range given // (if scale<=0 then automatic scaling) void render(Object* root, QPainter* painter, const Camera& cam, double x1, double y1, double x2, double y2, double scale); // find widget id of pixel painted by drawing scene at (x, y) unsigned long long idPixel(Object* root, QPainter* painter, const Camera& cam, double x1, double y1, double x2, double y2, double scale, double scaling, int x, int y); public: // last screen matrix Mat3 screenM; private: // calculate lighting norms for triangles void calcLighting(); void calcLightingTriangle(Fragment& frag); void calcLightingLine(Fragment& frag); // compute projected coordinates void projectFragments(const Camera& cam); void doDrawing(QPainter* painter, const Mat3& screenM, double linescale, const Camera& cam, DrawCallback* callback=0); void drawPath(QPainter* painter, const Fragment& frag, QPointF pt1, QPointF pt2, QPointF pt3, double linescale, double distscale); // different rendering modes void renderPainters(const Camera& cam); void renderBSP(const Camera& cam); // render scene to painter in coordinate range given // (if scale<=0 then automatic scaling) void render_internal(Object* root, QPainter* painter, const Camera& cam, double x1, double y1, double x2, double y2, double scale, DrawCallback* callback=0); // create pens/brushes QPen lineProp2QPen(const Fragment& frag, double linescale) const; QColor surfaceProp2QColor(const Fragment& frag) const; QBrush surfaceProp2QBrush(const Fragment& frag) const; QPen surfaceProp2QPen(const Fragment& frag) const; private: RenderMode mode; FragmentVector fragments; std::vector draworder; std::vector lights; }; #endif �������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1672594817.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/threed.sip�������������������������������������������������������������������0000664�0001750�0001750�00000030107�14354342601�015155� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// -*- mode: C++; -*- // Copyright (C) 2014 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// %Module(name=threed) %Import(name=QtCore/QtCoremod.sip) %Import(name=QtGui/QtGuimod.sip) %ModuleHeaderCode #include %End %PostInitialisationCode doNumpyInitPackage(); %End struct Vec4 { %TypeHeaderCode #include %End Vec4(); Vec4(double, double, double, double); void set(unsigned, double); %MethodCode if(a0 > 3) { sipIsErr = 1; PyErr_SetString(PyExc_ValueError, "Index should be 0<=i<=3"); } else sipCpp->operator()(a0) = a1; %End double get(unsigned) const; %MethodCode if(a0 > 3) { sipIsErr = 1; PyErr_SetString(PyExc_ValueError, "Index should be 0<=i<=3"); } else sipRes = sipCpp->operator()(a0); %End void operator*=(double); Vec4 operator+(const Vec4&) const; Vec4 operator-(const Vec4&) const; Vec4 operator*(double) const; bool operator==(const Vec4&) const; bool operator!=(const Vec4&) const; double rad2() const; double rad() const; void normalise(); }; struct Vec3 { %TypeHeaderCode #include %End Vec3(); Vec3(double, double, double); void set(unsigned, double); %MethodCode if(a0 > 2) { sipIsErr = 1; PyErr_SetString(PyExc_ValueError, "Index should be 0<=i<=2"); } else sipCpp->operator()(a0) = a1; %End double get(unsigned) const; %MethodCode if(a0 > 2) { sipIsErr = 1; PyErr_SetString(PyExc_ValueError, "Index should be 0<=i<=2"); } else sipRes = sipCpp->operator()(a0); %End void operator*=(double); Vec3 operator+(const Vec3&) const; Vec3 operator-(const Vec3&) const; Vec3 operator*(double) const; bool operator==(const Vec3&) const; bool operator!=(const Vec3&) const; double rad2() const; double rad() const; void normalise(); }; struct Vec2 { %TypeHeaderCode #include %End Vec2(); Vec2(double, double); void set(unsigned, double); %MethodCode if(a0 > 1) { sipIsErr = 1; PyErr_SetString(PyExc_ValueError, "Index should be 0<=i<=1"); } else sipCpp->operator()(a0) = a1; %End double get(unsigned) const; %MethodCode if(a0 > 1) { sipIsErr = 1; PyErr_SetString(PyExc_ValueError, "Index should be 0<=i<=1"); } else sipRes = sipCpp->operator()(a0); %End void operator*=(double); Vec2 operator+(const Vec2&) const; Vec2 operator-(const Vec2&) const; Vec2 operator*(double) const; bool operator==(const Vec2&) const; bool operator!=(const Vec2&) const; double rad2() const; double rad() const; void normalise(); }; struct Mat4 { %TypeHeaderCode #include %End Mat4(); void set(unsigned, unsigned, double); %MethodCode if(a0 > 3 || a1 > 3) { sipIsErr = 1; PyErr_SetString(PyExc_ValueError, "Index should be 0<=i<=3"); } else sipCpp->operator()(a0, a1) = a2; %End double get(unsigned, unsigned) const; %MethodCode if(a0 > 3 || a1 > 3) { sipIsErr = 1; PyErr_SetString(PyExc_ValueError, "Index should be 0<=i<=3"); } else sipRes = sipCpp->operator()(a0, a1); %End Mat4 operator*(const Mat4& o) const; Vec4 operator*(const Vec4& v) const; Mat4 transpose() const; }; Vec4 operator*(const Vec4& v, const Mat4& o); Mat4 identityM4(); Mat4 rotateM4(double angle, Vec3 vec); Mat4 rotate3M4(double ax, double ay, double az); Mat4 translationM4(Vec3 vec); Mat4 scaleM4(Vec3 scalevec); struct Mat3 { %TypeHeaderCode #include %End Mat3(); void set(unsigned, unsigned, double); %MethodCode if(a0 > 2 || a1 > 2) { sipIsErr = 1; PyErr_SetString(PyExc_ValueError, "Index should be 0<=i<=2"); } else sipCpp->operator()(a0, a1) = a2; %End double get(unsigned, unsigned) const; %MethodCode if(a0 > 2 || a1 > 2) { sipIsErr = 1; PyErr_SetString(PyExc_ValueError, "Index should be 0<=i<=2"); } else sipRes = sipCpp->operator()(a0, a1); %End Mat3 operator*(const Mat3& o) const; Vec3 operator*(const Vec3& v) const; Mat3 transpose() const; }; Vec3 operator*(const Vec3& v, const Mat3& o); Mat3 identityM3(); // this is actually std::vector class ValVector { %TypeHeaderCode #include %End public: ValVector(); ValVector(SIP_PYOBJECT obj); %MethodCode try { sipCpp = new ValVector(numpyToValVector(a0)); } catch(const char *msg) { sipIsErr = 1; PyErr_SetString(PyExc_TypeError, msg); } %End void push_back(double d); double operator[](unsigned i) const; %MethodCode if(a0 >= sipCpp->size()) { sipIsErr = 1; PyErr_SetString(PyExc_ValueError, "Index out of range"); } else sipRes = sipCpp->operator[](a0); %End unsigned size() const; bool empty() const; }; // helper functions Vec3 vec4to3(const Vec4& v); Vec4 vec3to4(const Vec3& v); Vec2 vec3to2(const Vec3& v); Vec3 calcProjVec(const Mat4& projM, const Vec3& v); Vec3 calcProjVec(const Mat4& projM, const Vec4& v); Vec2 projVecToScreen(const Mat3& screenM, const Vec3& vec); ///////////////////////////////////////////////// // Properties struct SurfaceProp /NoDefaultCtors/ { %TypeHeaderCode #include %End SurfaceProp(double r=0.5, double g=0.5, double b=0.5, double refl=0.5, double trans=0, bool hide=0) /KeywordArgs="All"/; void setRGBs(const QImage& img); double r; double g; double b; double refl; double trans; bool hide; }; struct LineProp /NoDefaultCtors/ { %TypeHeaderCode #include %End LineProp(double r=0, double g=0, double b=0, double trans=0, double refl=0, double width=1, bool hide=0, Qt::PenStyle style=Qt::SolidLine) /KeywordArgs="All"/; void setRGBs(const QImage& img); void setDashPattern(const ValVector& vec); double r; double g; double b; double trans; double refl; double width; bool hide; }; /////////////////////////////////////////////////////////////// // Objects class Object /NoDefaultCtors/ { %TypeHeaderCode #include %End public: virtual ~Object(); virtual void assignWidgetId(unsigned long long id); unsigned long long widgetid; }; class Triangle : public Object /NoDefaultCtors/ { %TypeHeaderCode #include %End public: Triangle(const Vec3&, const Vec3&, const Vec3&, const SurfaceProp* surfaceprop /Transfer/); }; class PolyLine : public Object /NoDefaultCtors/ { %TypeHeaderCode #include %End public: PolyLine(const LineProp* prop /Transfer/); void addPoint(const Vec3& v); void addPoints(const ValVector& x, const ValVector& y, const ValVector& z); }; class LineSegments : public Object { %TypeHeaderCode #include %End public: LineSegments(const ValVector& x1, const ValVector& y1, const ValVector& z1, const ValVector& x2, const ValVector& y2, const ValVector& z2, const LineProp* prop /Transfer/); LineSegments(const ValVector& pts1, const ValVector& pts2, const LineProp* prop /Transfer/); }; class Mesh : public Object /NoDefaultCtors/ { %TypeHeaderCode #include %End public: enum Direction {X_DIRN, Y_DIRN, Z_DIRN}; Mesh(const ValVector& pos1, const ValVector& pos2, const ValVector& heights, Direction dir, const LineProp* lprop /Transfer/, const SurfaceProp* sprop /Transfer/, bool hidehorzline=0, bool hidevertline=0); }; class DataMesh : public Object /NoDefaultCtors/ { %TypeHeaderCode #include %End public: DataMesh(const ValVector& edges1, const ValVector& edges2, const ValVector& vals, unsigned idxval, unsigned idxedge1, unsigned idxedge2, bool highres, const LineProp* lprop /Transfer/, const SurfaceProp* sprop /Transfer/, bool hidehorzline=0, bool hidevertline=0); }; class MultiCuboid : public Object { %TypeHeaderCode #include %End public: MultiCuboid(const ValVector& _xmin, const ValVector& _xmax, const ValVector& _ymin, const ValVector& _ymax, const ValVector& _zmin, const ValVector& _zmax, const LineProp* lprop /Transfer/, const SurfaceProp* sprop /Transfer/); }; class Points : public Object /NoDefaultCtors/ { %TypeHeaderCode #include %End public: Points(const ValVector& px, const ValVector& py, const ValVector& pz, QPainterPath pp, const LineProp* pointedge /Transfer/, const SurfaceProp* pointfill /Transfer/); void setSizes(const ValVector& _sizes); bool scaleline; bool scalepersp; }; // a "text" class which calls back draw() when drawing is requested class Text : public Object { %TypeHeaderCode #include %End public: // pos1 and pos2 contain a list of x,y,z values Text(const ValVector& _pos1, const ValVector& _pos2); virtual void draw(QPainter* painter, QPointF pt1, QPointF pt2, QPointF pt3, unsigned index, double scale, double linescale); }; class ObjectContainer : public Object { %TypeHeaderCode #include %End public: ObjectContainer(); void addObject(Object* obj /Transfer/); void assignWidgetId(unsigned long long id); Mat4 objM; }; class TriangleFacing : public Triangle { %TypeHeaderCode #include %End public: TriangleFacing(const Vec3& a, const Vec3& b, const Vec3& c, const SurfaceProp* prop /Transfer/); }; class FacingContainer : public ObjectContainer { %TypeHeaderCode #include %End public: FacingContainer(Vec3 _norm); Vec3 norm; }; class AxisLabels : public Object { %TypeHeaderCode #include %End public: AxisLabels(const Vec3& _box1, const Vec3& _box2, const ValVector& _tickfracs, double _labelfrac); void addAxisChoice(const Vec3& start, const Vec3& end); virtual void drawLabel(QPainter* painter, int index, QPointF pt, QPointF ax1, QPointF ax2, double axangle); }; class ClipContainer : public ObjectContainer { %TypeHeaderCode #include %End public: ClipContainer(Vec3 minpt, Vec3 maxpt); }; //////////////////////////////////////////////////////////////// // Camera class Camera { %TypeHeaderCode #include %End public: Camera(); void setPointing(const Vec3 &eye, const Vec3 &target, const Vec3 &up); void setPerspective(double fov_degrees=45, double znear=0.1, double zfar=100.); public: Mat4 viewM; // view matrix Mat4 perspM; // perspective matrix Mat4 combM; // combined matrix Vec3 eye; // location of eye }; //////////////////////////////////////////////////////////////// // Scene class Scene { %TypeHeaderCode #include %End public: enum RenderMode {RENDER_PAINTERS, RENDER_BSP}; public: Scene(RenderMode mode); void addLight(Vec3 posn, QColor col, double intensity); void render(Object* root, QPainter* painter, const Camera& cam, double x1, double y1, double x2, double y2, double scale); unsigned long long idPixel(Object* root, QPainter* painter, const Camera& cam, double x1, double y1, double x2, double y2, double scale, double scaling, int x, int y); public: Mat3 screenM; }; ���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1633175785.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/src/threed/twod.cpp���������������������������������������������������������������������0000664�0001750�0001750�00000012547�14126044351�014654� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������// Copyright (C) 2015 Jeremy S. Sanders // Email: Jeremy Sanders // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #include #include #include "twod.h" #define EPS 1e-8 ISect twodLineIntersect(Vec2 p1, Vec2 p2, Vec2 q1, Vec2 q2, Vec2* posn, Vec2* posn2) { Vec2 dp = p2-p1; Vec2 dq = q2-q1; Vec2 dpq = p1-q1; double denom = cross(dp, dq); // parallel vectors or points below if(std::abs(denom) < EPS) { if( std::abs(cross(dp, dpq)) > EPS || std::abs(cross(dq, dpq)) > EPS ) return LINE_NOOVERLAP; // colinear segments - do they overlap? double u0, u1; Vec2 dpq2 = p2-q1; if(std::abs(dq(0)) > std::abs(dq(1))) { u0 = dpq(0)*(1/dq(0)); u1 = dpq2(0)*(1/dq(0)); } else { u0 = dpq(1)*(1/dq(1)); u1 = dpq2(1)*(1/dq(1)); } if(u0 > u1) std::swap(u0, u1); if( u0>(1+EPS) || u1<-EPS ) return LINE_NOOVERLAP; u0 = std::max(u0, 0.); u1 = std::min(u1, 1.); if(posn != 0) *posn = q1 + dq*u0; if( std::abs(u0-u1) < EPS ) return LINE_CROSS; if(posn2 != 0) *posn2 = q1 + dq*u1; return LINE_OVERLAP; } double s = cross(dq, dpq)*(1/denom); if(s < -EPS || s > (1+EPS)) return LINE_NOOVERLAP; double t = cross(dp, dpq)*(1/denom); if(t < -EPS || t > (1+EPS)) return LINE_NOOVERLAP; if(posn != 0) *posn = p1 + dp * std::max(std::min(s, 1.), 0.); return LINE_CROSS; } namespace { // is a to the left of p1->p2? inline bool ptInside(Vec2 p, Vec2 cp0, Vec2 cp1) { return (cp1(0)-cp0(0))*(p(1)-cp0(1)) > (cp1(1)-cp0(1))*(p(0)-cp0(0)); }; // version of above with tolerence of points on line // 0: on line, -1: outside, +1: inside inline int ptInsideTol(Vec2 p, Vec2 cp0, Vec2 cp1) { double del = (cp1(0)-cp0(0))*(p(1)-cp0(1)) - (cp1(1)-cp0(1))*(p(0)-cp0(0)); return del>EPS ? 1 : del<-EPS ? -1 : 0; } // return whether lines intersect and return intersection point bool SHlineIntersection(Vec2 a0, Vec2 a1, Vec2 b0, Vec2 b1, Vec2* res) { Vec2 da = a0-a1; Vec2 db = b0-b1; double n1 = cross(a0, a1); double n2 = cross(b0, b1); double denom = cross(da, db); if(denom == 0) return 0; double idenom = 1/denom; *res = db*(n1*idenom) - da*(n2*idenom); return 1; } } // Sutherland–Hodgman algorithm for clipping polygon against // 2nd polygon. Requires clockwise orientation of points. Vec2Vector twodPolyEdgeClip(Vec2Vector inPoly, const Vec2Vector& clipPoly) { if(clipPoly.empty()) return inPoly; Vec2 cp1 = clipPoly[clipPoly.size()-1]; for(unsigned ci=0; ci != clipPoly.size() && !inPoly.empty(); ++ci) { Vec2 cp2 = clipPoly[ci]; Vec2Vector outPoly; Vec2 S = inPoly[inPoly.size()-1]; for(unsigned si=0; si != inPoly.size(); ++si) { Vec2 E = inPoly[si]; if(ptInside(E, cp1, cp2)) { if(!ptInside(S, cp1, cp2)) { Vec2 isect; if(SHlineIntersection(S, E, cp1, cp2, &isect)) outPoly.push_back(isect); } outPoly.push_back(E); } else if(ptInside(S, cp1, cp2)) { Vec2 isect; if(SHlineIntersection(S, E, cp1, cp2, &isect)) outPoly.push_back(isect); } S = E; } inPoly = outPoly; cp1 = cp2; } return inPoly; } double twodPolyArea(const Vec2Vector& poly) { const unsigned s=poly.size(); double tot=0; for(unsigned i=0; ibegin(), poly->end()); } bool twodLineIntersectPolygon(Vec2 p1, Vec2 p2, const Vec2Vector& poly) { const unsigned s=poly.size(); bool inside1=1; bool inside2=1; for(unsigned i=0; i // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ///////////////////////////////////////////////////////////////////////////// #ifndef TWOD_H #define TWOD_H #include "mmaths.h" enum ISect { LINE_NOOVERLAP, LINE_CROSS, LINE_OVERLAP }; // Do the two line segments p1->p2, q1->q2 cross or overlap? // return LINE_NOOVERLAP if no overlap // LINE_CROSS if they cross somewhere // LINE_OVERLAP if they lie on top of each other partially // if posn != 0, return crossing position if LINE_CROSS // if LINE_OVERLAP the two end points of overlap are returned in posn and posn2 // Assumes that the line segments are finite. ISect twodLineIntersect(Vec2 p1, Vec2 p2, Vec2 q1, Vec2 q2, Vec2* posn=0, Vec2* posn2=0); // clip 2D polygon by a 2nd polygon (must be clockwise polygons) Vec2Vector twodPolyEdgeClip(Vec2Vector inPoly, const Vec2Vector& clipPoly); // area of polygon (+ve -> clockwise) double twodPolyArea(const Vec2Vector& poly); // ensure polygon is clockwise void twodPolyMakeClockwise(Vec2Vector* poly); // does line cross polygon? (make sure poly is defined clockwise) bool twodLineIntersectPolygon(Vec2 p1, Vec2 p2, const Vec2Vector& poly); #endif ���������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000034�00000000000�010212� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������28 mtime=1677426865.1885211 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/support/��������������������������������������������������������������������������������0000775�0001750�0001750�00000000000�14376700261�012642� 5����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������././@PaxHeader��������������������������������������������������������������������������������������0000000�0000000�0000000�00000000026�00000000000�010213� x����������������������������������������������������������������������������������������������������ustar�00�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������22 mtime=1677426651.0 ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������veusz-3.6.2/support/veusz.appdata.xml���������������������������������������������������������������0000664�0001750�0001750�00000005332�14376677733�016175� 0����������������������������������������������������������������������������������������������������ustar�00jss�����������������������������jss�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������� io.github.veusz.Veusz Veusz.desktop CC0-1.0 GPL-2.0+ Veusz Scientific plotting package

    Veusz is an interactive graphical scientific plotting and graphing package. It is designed to produce publication-ready PDF output. SVG, EMF and bitmap export formats are also supported. Data can be read from text, CSV, HDF5 or FITS files. In addition, you can also enter, manipulate or examine data from within the application. The program also provides a command line and scripting interface (based on Python) to its plotting facilities. It can also act as a Python plotting module.

    In Veusz plots are created by building up plotting widgets with a consistent object-based interface. Plotting types support by Veusz include the following: x-y, function, contour, image, stepped, date, vector field, box, polar, ternary, nested and stacked. Plots can also include multiple axes.

    https://veusz.github.io/screenshots/appdata-screenshot-0.png https://veusz.github.io/screenshots/multiwins.png https://veusz.github.io/screenshots/3d.png https://veusz.github.io/screenshots/linux_mainwin.png https://veusz.github.io/screenshots/import.png https://veusz.github.io/screenshots/histogram.png https://veusz.github.io/ https://veusz.github.io/help-support/ https://github.com/veusz/veusz/issues jeremy@jeremysanders.net ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/support/veusz.desktop0000664000175000017500000000300414126044351015400 0ustar00jssjss[Desktop Entry] Name=Veusz GenericName=Scientific plotting GenericName[ca]=Traçador científic GenericName[de]=Wissenschaftliches Plotten GenericName[it]=Stampa scientifica GenericName[ja]=ç§‘å­¦ç”¨ã‚°ãƒ©ãƒ•ä½œæˆ GenericName[nl]=Wetenschappelijk plotten GenericName[pt_BR]=Gerador de gráficos científicos GenericName[ru]=ГрафопоÑтроитель GenericName[uk]=Побудова наукових графіків GenericName[zh_CN]=科学绘图 Comment=Scientific plotting and graphing package Comment[ca]=Paquet de traçament i grafisme científic Comment[de]=Wissenschaftliches Plott- und Darstellungspaket Comment[it]=Pacchetto di disegno e stampa scientifico Comment[ja]=科学用グラフ作æˆãƒ‘ッケージ Comment[nl]=Pakket voor wetenschappelijk plotten en grafieken maken Comment[pt_BR]=Programa para gerar gráficos científicos Comment[ru]=Пакет Ð´Ð»Ñ Ð½Ð°ÑƒÑ‡Ð½Ñ‹Ñ… графиков и чертежей Comment[uk]=Пакунок Ð´Ð»Ñ Ð½Ð°ÑƒÐºÐ¾Ð²Ð¸Ñ… графіків та креÑлень Comment[zh_CN]=科学绘图和æˆåƒè½¯ä»¶åŒ… Comment[gl]=Paquete de representación gráfica de datos científicos Comment[ms]=Pakej memplot dan membina graf saintifik Comment[es]=Paquete de gráficas y diagramas científicos Comment[sv]=Vetenskapligt plottnings- och grafritningspaket MimeType=application/x-veusz; Exec=veusz %F Icon=veusz Terminal=false Type=Application Categories=DataVisualization;Science; Keywords=graphing;plotting;graph;plot;visualization;visualisation;science;math;maths;mathematics;data; ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/support/veusz.xml0000664000175000017500000000065414126044351014537 0ustar00jssjss Veusz saved document ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.1885211 veusz-3.6.2/tests/0000775000175000017500000000000014376700261012270 5ustar00jssjss././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.2245212 veusz-3.6.2/tests/comparison/0000775000175000017500000000000014376700261014442 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/1dto2d.vsz.selftest0000664000175000017500000002102114332253347020127 0ustar00jssjss Veusz output document 0 2 4 6 8 0 2 4 6 8 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/2d_irregular.vsz.selftest0000664000175000017500000004044614332253347021427 0ustar00jssjss Veusz output document Y coordinate 1 10 100 1000 X coordinate 1 10 100 1000 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1647171493.0 veusz-3.6.2/tests/comparison/FDR_example.vsz.selftest0000664000175000017500000750534214213353645021204 0ustar00jssjss Veusz output document φ [deg] −20 −10 0 10 20 30 HDG [deg] 0 100 Wheel Pos [in] −6 −2 2 Rudder Pos [in] −7.5 −5 −2.5 0 2.5 5 θ [deg] −5 0 5 10 15 E1/E2RPM [%] 2300 2500 2700 2900 Column Pos [in] 2 3 4 5 6 7 Altitude [ft] 7000 7500 8000 8500 9000 IAS [KIAS] 110 120 130 140 150 160 Time UTC (hh:mm) 15:40 15:41 15:42 15:43 15:44 15:45 15:46 LOG/AND CG: AFT / W: 5200lbs RC700 Flight 190530 - preTPS Example FDR Style Graph ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/autodetect.vsz.selftest0000664000175000017500000001733514332253347021210 0ustar00jssjss Veusz output document hello foo bar xxx aaa 2010-01-01 2010-01-15 2010-01-29 2010-02-12 2010-02-26 2010-03-12 2010-03-26 2010-04-09 1 2 3 4 5 xxx aaa 4 4.2 4.4 4.6 4.8 5 1000 10 4 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/axis_function.vsz.selftest0000664000175000017500000002136714332253347021720 0ustar00jssjss Veusz output document x 1 x 3 x 2 Squared axis 0 2 4 6 8 Linear axis 0 0.5 1 1.5 2 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/axis_function_linked.vsz.selftest0000664000175000017500000014634314332253347023250 0ustar00jssjss Veusz output document Supernova colour −0.3 −0.2 −0.1 0 0.1 0.2 0.3 Data taken from Kowalski et al. (2008) Time since big bang (Gyr) 10 5 Maximum B magnitude 12.5 15 17.5 20 22.5 25 27.5 30 Redshift 0 0.2 0.4 0.6 0.8 1 1.2 1.4 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/axisautoranges.vsz.selftest0000664000175000017500000011501214332253347022073 0ustar00jssjss Veusz output document 1 3 5 1 3 5 1 3 5 1.5 3 4 2 3 4 1 2.5 3.5 3.5 4.5 1 2 3 4 5 1 2 5 1 2 5 1 2 5 2 2 1 2 5 1 2 3 4 5 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/bar_labels.vsz.selftest0000664000175000017500000002224614332253347021132 0ustar00jssjss Veusz output document Spring Summer Number of balloons 0 1 2 3 4 5 6 Colour Red Green Blue Red Green Blue Red Green Blue Summer 2.5 3 3.5 4 4.5 Spring 2 3 4 5 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/bar_options.vsz.selftest0000664000175000017500000003263514332253347021366 0ustar00jssjss Veusz output document Stacked area Balloons Slinkys Jigsaws 0 2 4 6 8 10 Stacked 0 2 4 6 8 10 Grouped Sales 0 2 4 6 8 Area 1 2 3 4 5 6 7 8 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/barplots.vsz.selftest0000664000175000017500000005304414332253347020672 0ustar00jssjss Veusz output document a b stacked mode −1.5 −1 −0.5 0 0.5 1 1.5 0 5 10 15 20 grouped mode −1 −0.5 0 0.5 1 0 5 10 15 20 error bars −1 −0.5 0 0.5 1 0 5 10 15 20 horizontal with values 1 1000 10 6 10 9 −1 0 0.5 1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/blockeddata.vsz.selftest0000664000175000017500000001052214332253347021273 0ustar00jssjss Veusz output document 2 4 6 8 10 0 2 4 6 8 10 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/boxplot.vsz.selftest0000664000175000017500000001413614332253347020532 0ustar00jssjss Veusz output document Number of insects 0 5 10 15 20 Bees Butterflys ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/broken_axis.vsz.selftest0000664000175000017500000002700714332253347021350 0ustar00jssjss Veusz output document An axis with a break in it 0 5 10 15 20 25 80 90 100 110 120 Axis without breaks 0 2 4 6 8 10 12 14 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/broken_axis_rng.vsz.selftest0000664000175000017500000001655714332253347022226 0ustar00jssjss Veusz output document 0 0.05 0.1 0.15 0.2 0.6 0.7 0.8 0.9 1 0 0.05 0.1 0.15 0.2 0.6 0.7 0.8 0.9 1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/coloredpoints.vsz.selftest0000664000175000017500000005241514332253347021731 0ustar00jssjss Veusz output document Power (W) 10 100 1k Offset (m) −3 −2 −1 0 1 2 3 Time (yr) 0 0.2 0.4 0.6 0.8 1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/contour.vsz.selftest0000664000175000017500000022715114332253347020537 0ustar00jssjss Veusz output document 0 20 40 60 80 100 0 20 40 60 80 100 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/contour_labels.vsz.selftest0000664000175000017500000014603614332253347022063 0ustar00jssjss Veusz output document 1.89 1.89 1.89 2.78 2.78 2.78 2.78 2.78 2.78 2.78 3.67 3.67 3.67 3.67 3.67 3.67 4.56 4.56 4.56 4.56 4.56 5.44 5.44 5.44 5.44 6.33 6.33 6.33 7.22 7.22 7.22 8.11 8.11 0 b 1 b 2 b 3 b 4 b 5 b 6 b 7 b 8 b 9 b 10 b 0 a 1 a 2 a 3 a 4 a 5 a 6 a 7 a 8 a 9 a 10 a ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/csv1.vsz.selftest0000664000175000017500000001246714332253347017724 0ustar00jssjss Veusz output document fdfd dsfh bgtr RR ZZ AA 1 2 3 4 5 6 2 3 4 5 6 7 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/csv_locale.vsz.selftest0000664000175000017500000001406214332253347021153 0ustar00jssjss Veusz output document 2012-12-06 2011-03-01 2011-04-05 2012-01-01 1,23 100,3 1.001,2 10 2008-07 2009-01 2009-07 2010-01 2010-07 2011-01 2011-07 2012-01 2012-07 2013-01 0 250 500 750 1000 1250 1500 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/csv_missing.vsz.selftest0000664000175000017500000001212314332253347021361 0ustar00jssjss Veusz output document hello foo 0 1 2 3 4 5 6 0 2 4 6 8 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/csv_renaming.vsz.selftest0000664000175000017500000001246714332253347021523 0ustar00jssjss Veusz output document fdfd dsfh bgtr RR ZZ AA 1 2 3 4 5 6 2 3 4 5 6 7 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/custom.vsz.selftest0000664000175000017500000001202514332253347020350 0ustar00jssjss Veusz output document 0 10 20 30 40 0 0.2 0.4 0.6 0.8 1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/custom_definitions.vsz.selftest0000664000175000017500000004261214332253347022750 0ustar00jssjss Veusz output document Imaginary value of FFT function −7.5 0 2.5 5 7.5 x −4 −2 0 2 4 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/customcolormap.vsz.selftest0000664000175000017500000004375214332253347022120 0ustar00jssjss Veusz output document 0 0.2 0.4 0.6 0.8 1 0 0.25 0.5 0.75 1 0 0.25 0.5 0.75 1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/dataset_operations.vsz.selftest0000664000175000017500000004646214332253347022742 0ustar00jssjss Veusz output document data add plus mean sub scale extremes thin Using data operations to combine datasets −2 0 2 4 0 5 10 15 20 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/datebar.vsz.selftest0000664000175000017500000001454514332253347020451 0ustar00jssjss Veusz output document A graph title Look! Crazy bar value 0 1 2 3 4 Date 2009-03-10 2009-03-11 2009-03-12 2009-03-13 2009-03-14 2009-03-15 2009-03-16 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/dsexpressions.vsz.selftest0000664000175000017500000002502314332253347021751 0ustar00jssjss Veusz output document Using expressions of datasets y −2 −1 0 1 2 x 0 1 2 3 4 5 6 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/embed_test.py.selftest0000664000175000017500000001046614332253347020766 0ustar00jssjss Veusz output document ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/example_csv.vsz.selftest0000664000175000017500000001667014332253347021356 0ustar00jssjss Veusz output document Line plot Histogram Data read into from CSV 0 1 2 3 4 5 6 7 Imported CSV file example 0 2 4 6 8 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/example_import.vsz.selftest0000664000175000017500000005671614332253347022102 0ustar00jssjss Veusz output document y 1 0 1 2 3 4 5 6 This is an x-axis 0 2.5 5 7.5 10 12.5 15 y 2 −1 0 1 2 3 Another x-axis 0 2.5 5 7.5 10 12.5 15 y 3 0 0.5 1 1.5 2 2.5 Final \underline x axis 0 5 10 15 20 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/filtered.vsz.selftest0000664000175000017500000002433414332253347020642 0ustar00jssjss Veusz output document Filtered Data Y axis 0 1 2 3 4 5 X axis 0 2 4 6 8 10 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/fit.vsz.selftest0000664000175000017500000001446314332253347017630 0ustar00jssjss Veusz output document data fit A dubious y axis 0 5 10 15 20 A wonderful x axis 1 10 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/fits_keywords1.vsz.selftest0000664000175000017500000001443614332253347022023 0ustar00jssjss Veusz output document 0 5 10 15 20 25 0 2 4 6 8 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/fits_test.vsz.selftest0000664000175000017500000002354314332253347021051 0ustar00jssjss Veusz output document NGC1001 NGC1002 NGC1003 10 11 12 13 14 15 16 0 1 2 3 4 0 1 2 3 4 5 0 1 2 3 4 5 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/fits_wcs1.vsz.selftest0000664000175000017500000002710314332253347020743 0ustar00jssjss Veusz output document 18.5 19 19.5 20 20.5 21 21.5 22 3 3.25 3.5 3.75 4 4.25 4.5 4.75 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/fixed_aspect.vsz.selftest0000664000175000017500000007040514332253347021502 0ustar00jssjss Veusz output document 0 0.2 0.4 0.6 0.8 1 0 0.4 0.8 0 0.2 0.4 0.6 0.8 1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1647171489.0 veusz-3.6.2/tests/comparison/functions.vsz.selftest0000664000175000017500000002215014213353641021042 0ustar00jssjss Veusz output document δ Another axis 10 −2 10 0 Left axis 0 5 10 15 20 25 30 x axis −1.5 −0.5 0 0.5 1 1.5 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/gnuplot_2d.vsz.selftest0000664000175000017500000001424014332253347021114 0ustar00jssjss Veusz output document 0 1 2 3 4 5 0.5 1 1.5 2 2.5 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/hatching.vsz.selftest0000664000175000017500000005025214332253347020627 0ustar00jssjss Veusz output document Hatch ing 0 2 4 6 8 10 12 1 2 3 4 5 6 7 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/hdf5_compound.vsz.selftest0000664000175000017500000001041314332253347021567 0ustar00jssjss Veusz output document silver ho hi 0 0.5 1 1.5 2 0 0.5 1 1.5 2 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/hdf5_date.vsz.selftest0000664000175000017500000001656114332253347020672 0ustar00jssjss Veusz output document 00:00 00:15 00:30 00:45 01:00 01:15 01:30 2001-01 2001-05 2001-09 2002-01 2002-05 2002-09 2003-01 2003-05 1 1.5 2 2.5 3 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/hdf5_doc.vszh5.selftest0000664000175000017500000003310614332253347020751 0ustar00jssjss Veusz output document a b c d é ƒ g h i j k l m n ö p sin x −1 −0.5 0 0.5 1 1990 1995 2000 2005 2010 2015 0 1 2 3 4 5 6 x 0 1 2 3 4 5 6 7 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/hdf5_group.vsz.selftest0000664000175000017500000001103114332253347021074 0ustar00jssjss Veusz output document 0 20 40 60 80 0 2 4 6 8 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/hdf5_nd.vsz.selftest0000664000175000017500000002421214332253347020346 0ustar00jssjss Veusz output document 0 20 40 60 80 0 20 40 60 80 0 1 2 3 4 0 1 2 3 4 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/hdf5_text.vsz.selftest0000664000175000017500000001141314332253347020730 0ustar00jssjss Veusz output document a b c 0 1 2 3 4 5 0 1 2 3 4 5 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/hdf5_twod.vsz.selftest0000664000175000017500000001340514332253347020724 0ustar00jssjss Veusz output document 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/hdf5_twod_as_oned.vsz.selftest0000664000175000017500000001111314332253347022406 0ustar00jssjss Veusz output document 1.5 2 2.5 3 3.5 1 1.5 2 2.5 3 3.5 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/histo.vsz.selftest0000664000175000017500000004645314332253347020200 0ustar00jssjss Veusz output document Example histogram Fit to histogram Histogram Dragons 0 100 200 300 400 500 Wingspan (m) 0 50 100 150 200 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/histo_widget.vsz.selftest0000664000175000017500000004735514332253347021545 0ustar00jssjss Veusz output document 2 3 4 5 6 7 8 0.25 0.15 0.05 0 0.05 0.1 0.15 1 2 3 4 5 6 7 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1647171494.0 veusz-3.6.2/tests/comparison/histogramming.vsz.selftest0000664000175000017500000002432014213353646021710 0ustar00jssjss Veusz output document X histogram 0 0.2 0.4 0.6 0.8 1 Y histogram 0 0.2 0.4 0.6 0.8 1 Y value −2 −1 0 1 2 X value −2 −1 0 1 2 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/inside.vsz.selftest0000664000175000017500000007040214332253347020314 0ustar00jssjss Veusz output document All the cheese in the world −50 −25 0 25 50 75 100 Random axis, maybe something interesting 2 ... 0 50 100 150 200 −8 −4 0 −1 0 1 2 0 2 4 6 8 10 sin 2 π x −1 −0.5 0 0.5 1 an x-axis 0 0.2 0.4 0.6 0.8 1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/irregular_data.vsz.selftest0000664000175000017500000001040714332253347022025 0ustar00jssjss Veusz output document 0 2 4 6 8 0 1 2 3 4 5 6 7 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1647171487.0 veusz-3.6.2/tests/comparison/isolatedaxes.vsz.selftest0000664000175000017500000000706514213353637021534 0ustar00jssjss Veusz output document y -axis (cm -3 ) 0 0.2 0.4 0.6 0.8 1 x -axis (erg) 0.01 0.1 1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/label_functions.vsz.selftest0000664000175000017500000001027714332253347022214 0ustar00jssjss Veusz output document Page width: 15cm <> is basename Escaped text: \ \2 % ^ _ [] {} Loss: 24.0% vs 42.0 mAh/g 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/labels.vsz.selftest0000664000175000017500000001243414332253347020304 0ustar00jssjss Veusz output document dataset 2 dataset 2 dataset 2 A test test2 A 200 α β γ Y axis 0 2 4 6 8 X axis 0 1 2 3 4 5 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/linked_datasets.vsz.selftest0000664000175000017500000006463214332253347022207 0ustar00jssjss Veusz output document Another axis −0.8 −0.6 −0.4 0 0.2 0.4 0.6 0.8 Experiments with linked datasets −0.8 −0.4 0 0.2 0.4 0.6 0.8 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/mandelbrot.vsz.selftest0000664000175000017500000072645314332253347021206 0ustar00jssjss Veusz output document 1 10 The Mandelbrot Set 0.5 0.75 1 1.25 1.5 1.75 −2 −1 0 0.5 1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/markerspolygon.vsz.selftest0000664000175000017500000010024114332253347022110 0ustar00jssjss Veusz output document Outward ticks on this y axis −2 0 1 2 Outward ticks on this x axis −2 −1 0 1 2 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1647171486.0 veusz-3.6.2/tests/comparison/multiaxes.vsz.selftest0000664000175000017500000003034014213353636021051 0ustar00jssjss Veusz output document Optical surface brightness Electron density Iron Chandra Western Iron Chandra Eastern Iron XMM Iron metallicity (solar units) 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 Electron density (cm -3 ) 10 −3 0.01 Optical surface brightness (mag arcsec -2 ) 22 24 26 28 30 Radius (kpc) 10 100 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/multixy.vsz.selftest0000664000175000017500000002656014332253347020562 0ustar00jssjss Veusz output document The joy of plots Datasets Valkyries Swindon Discworld Model Death rate −5 −2.5 0 2.5 5 7.5 Winged warriors 0 5 10 15 20 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/nd.vsz.selftest0000664000175000017500000003265614332253347017453 0ustar00jssjss Veusz output document 1 1.25 1.5 1.75 2 2.25 2.5 2.75 1 1.25 1.5 1.75 2 2.25 2.5 2.75 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/noheader.vsz.selftest0000664000175000017500000001152614332253347020630 0ustar00jssjss Veusz output document hello 5 2 foo 1 2 3 4 5 2009-01-01 00:00 2009-01-01 06:00 2009-01-01 12:00 2009-01-01 18:00 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/numberstotext.vsz.selftest0000664000175000017500000001154414332253347021766 0ustar00jssjss Veusz output document 1 2 3 1 2×10 5 2×10 −5 10 −6 10 −3 1 1000 10 6 10 −6 10 −3 1 1000 10 6 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1647171486.0 veusz-3.6.2/tests/comparison/polar.vsz.selftest0000664000175000017500000002634014213353636020160 0ustar00jssjss Veusz output document 0.5 1 1.5 2 2.5 3 330° 300° 270° 240° 210° 180° 150° 120° 90° 60° 30° 0.1 1 10 330° 300° 270° 240° 210° 180° 150° 120° 90° 60° 30° ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1647171494.0 veusz-3.6.2/tests/comparison/polar_units.vsz.selftest0000664000175000017500000002561314213353646021405 0ustar00jssjss Veusz output document 1 2 3 4 5 0 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 1 2 3 4 5 0 90 80 70 60 50 40 30 20 10 1 2 3 4 5 0 π/6 5π/3 3π/2 4π/3 7π/6 π 5π/6 2π/3 π/2 π/3 π/6 1 2 3 4 5 30° 60° 90° 120° 150° 180° 210° 240° 270° 300° 330° ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/profile.vsz.selftest0000664000175000017500000005415314332253347020506 0ustar00jssjss Veusz output document Chandra deprojected Chandra projected XMM projected Temperature (keV) 10 5 Density Cooling time Cooling time (yr) 10 8 10 9 10 10 10 11 10 12 Electron density (cm -3 ) 0.01 0.1 Radius (kpc) 10 100 1000 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/qdp_1d.vsz.selftest0000664000175000017500000001242314332253347020210 0ustar00jssjss Veusz output document 0 2 4 6 8 1 2 3 4 5 6 7 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/qdp_2d.vsz.selftest0000664000175000017500000001323014332253347020206 0ustar00jssjss Veusz output document 0.8 1 1.2 1.4 1.6 1.6 1.8 2 2.2 2.4 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/rangeds.vsz.selftest0000664000175000017500000001760414332253347020471 0ustar00jssjss Veusz output document −2.5 0 2.5 5 7.5 10 12.5 0 2 4 6 8 10 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/reverseaxis.vsz.selftest0000664000175000017500000001664214332253347021407 0ustar00jssjss Veusz output document −1 −0.5 0 0.5 1 −1 0 0.5 1 0 2 4 6 8 10 1 10 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/reversed_broken_axis.vsz.selftest0000664000175000017500000004660414332253347023253 0ustar00jssjss Veusz output document 0 0.4 0.8 3 3.4 3.8 7 8 9 10 0 0.2 0.4 0.6 0.8 1 7 8 9 10 3 3.4 3.8 0 0.4 0.8 0 0.2 0.4 0.6 0.8 1 7 8 9 10 3 3.4 3.8 0 0.4 0.8 0 0.2 0.4 0.6 0.8 1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/shapes.vsz.selftest0000664000175000017500000001621314332253347020324 0ustar00jssjss Veusz output document Some shapes α 0 0.25 0.5 0.75 1 1.25 1.5 0 0.2 0.4 0.6 0.8 1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/sin.vsz.selftest0000664000175000017500000001326114332253347017632 0ustar00jssjss Veusz output document sin x −1 −0.5 0 0.5 1 x 0 1 2 3 4 5 6 7 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/sin_byhand.vsz.selftest0000664000175000017500000001326114332253347021157 0ustar00jssjss Veusz output document sin x −1 −0.5 0 0.5 1 x 0 1 2 3 4 5 6 7 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/sizetest.vsz.selftest0000664000175000017500000001573514332253347020723 0ustar00jssjss Veusz output document 0.5 1 1.5 2 2.5 3 3.5 4 0.5 1 1.5 2 2.5 3 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/spectrum.vsz.selftest0000664000175000017500000064721014332253347020712 0ustar00jssjss Veusz output document Fe XXI Fe XXIII - XXIV Fe XXIV Mg XII Ne X Fe XXIV Fe XXII - XXIII Ne X , Fe XVII - XVIII Fe XVIII Fe XVIII Fe XVII Fe XVII Fe XX - XXII Fe XIX Si XIII Si XIV 99% PSF 90% PSF 99% - 90% Mg XII N VII Fe XVII Fe XVII O VIII Fe XVIII O VIII Flux (10 -3 photon cm -2 s -1 -1 ) 0 0.5 1 1.5 2 2.5 0.5 keV model spectrum 0.7 keV model spectrum 1.0 keV model spectrum Arbitrary units 0 0.1 0.2 0.3 0.4 0.5 0.6 Wavelength (Å) 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/stackedxy.vsz.selftest0000664000175000017500000003423114332253347021040 0ustar00jssjss Veusz output document Valkyries −2 0 1 2 3 Swindon −1 1 2 3 4 Discworld −5 0 2.5 5 7.5 Traffic police 0 5 10 15 20 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/starchart.vsz.selftest0000664000175000017500000011035314332253347021034 0ustar00jssjss Veusz output document ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1647171490.0 veusz-3.6.2/tests/comparison/ternary.vsz.selftest0000664000175000017500000004266514213353642020534 0ustar00jssjss Veusz output document 0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100 Earth Air Fire Nougat Chocolate ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/test_npy_npz.vsz.selftest0000664000175000017500000001306614332253347021600 0ustar00jssjss Veusz output document 0 25 50 75 100 125 0 2 4 6 8 10 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/testcontour.vsz.selftest0000664000175000017500000004251114332253347021432 0ustar00jssjss Veusz output document 0 2.5 5 7.5 10 12.5 0 2 4 6 8 10 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/testcsverr.vsz.selftest0000664000175000017500000001623214332253347021246 0ustar00jssjss Veusz output document 1 2 3 4 5 6 0 2 4 6 8 10 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/twod_expr.vsz.selftest0000664000175000017500000001613714332253347021061 0ustar00jssjss Veusz output document 0 20 40 60 80 100 0 5 10 15 20 25 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/twod_xyzexpr.vsz.selftest0000664000175000017500000000766514332253347021642 0ustar00jssjss Veusz output document 0 0.5 1 1.5 2 2.5 3 1 1.5 2 2.5 3 3.5 4 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/tests/comparison/vectorfield.vsz.selftest0000664000175000017500000061364014332253347021356 0ustar00jssjss Veusz output document −1 −0.5 0 0.5 1 −1 −0.5 0 0.5 1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674930111.0 veusz-3.6.2/tests/runselftest.py0000775000175000017500000002416614365263677015251 0ustar00jssjss#!/usr/bin/env python3 # Copyright (C) 2011 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """A program to self test the Veusz installation. This code compares the output of example + self test input files with expected output. It returns 0 if the tests succeeded, otherwise the number of tests failed. If you use an argument "regenerate" to the program, the comparison files will be recreated. This program requires the veusz module to be on the PYTHONPATH. On Unix/Linux, Qt requires the DISPLAY environment to be set to an X11 server for the self test to run. In a non graphical environment Xvfb can be used to create a hidden X11 server. Alternatively, set the environment variable QT_QPA_PLATFORM=minimal to avoid the X11 dependency. The comparison files are close to being SVG files, but use XPM for any images and use a fixed (hacked) font metric to give the same results on each platform. In addition Unicode characters are expanded to their Unicode code to work around different font handling on platforms. If VEUSZ_INPLACE_TEST is set then tests are run assuming that we are running from the source directory. """ import glob import os import os.path import sys import subprocess import optparse if sys.version_info[0] < 3: raise RuntimeError('Veusz only supports Python 3') # this needs to be set before main imports os.environ['LC_ALL'] = 'C' try: import h5py except ImportError: h5py = None if 'VEUSZ_INPLACE_TEST' in os.environ: sys.path.append(os.getcwd()) os.environ['PYTHONPATH'] = ('%s:%s' % ( os.getcwd(), os.environ.get('PYTHONPATH', ''))).rstrip(':') # workaround for CI tests - delete environment variable removeenv = os.environ.get('VEUSZ_REMOVE_FROM_ENV', '') for remove in removeenv.split(): del os.environ[remove] import veusz.qtall as qt import veusz.utils as utils import veusz.document as document import veusz.setting as setting import veusz.dataimport import veusz.document.svg_export as svg_export # required to get structures initialised import veusz.windows.mainwindow try: from astropy.io import fits as pyfits except ImportError: try: import pyfits except ImportError: pyfits = None # these tests fail for some reason which haven't been debugged # it appears the failures aren't important however excluded_tests = set([ # fails on Linux Arm 'spectrum.vsz', 'hatching.vsz', # fails on suse / fedora 'contour_labels.vsz', # new arm self test failures 'example_import.vsz', 'profile.vsz', '1dto2d.vsz', # don't expect this to work 'mathml.vsz', # 3d rendering needs more work '3d_errors.vsz', '3d_function.vsz', '3d_points.vsz', '3d_surface.vsz', '3d_volume.vsz', ]) class StupidFontMetrics: """This is a fake font metrics device which should return the same results on all systems with any font.""" def __init__(self, font, device): self.font = font self.device = device def height(self): return self.device.logicalDpiY() * (self.font.pointSizeF()/72.) def width(self, text): return len(text)*self.height()*0.5 def ascent(self): return 0.1*self.height() def descent(self): return 0.1*self.height() def leading(self): return 0.1*self.height() def boundingRect(self, c): return qt.QRectF(0, 0, self.height()*0.5, self.height()) def boundingRectChar(self, c): return qt.QRectF(0, 0, self.height()*0.5, self.height()) def lineSpacing(self): return 0.1*self.height() _pt = utils.textrender.PartText class PartTextAscii(_pt): """Text renderer which converts text to ascii.""" def __init__(self, text): text = text.encode('ascii', 'xmlcharrefreplace').decode('ascii') _pt.__init__(self, text) def render(self, state): _pt.render(self, state) def addText(self, text): self.text += text.encode('ascii', 'xmlcharrefreplace').decode('ascii') def renderVszTest(invsz, outfile, test_saves=False, test_unlink=False): """Render vsz document to create outfile.""" doc = document.Document() mode = 'hdf5' if os.path.splitext(invsz)[1] == '.vszh5' else 'vsz' doc.load(invsz, mode=mode) if test_unlink: for d in doc.data: doc.data[d].linked = None if test_saves and h5py is not None: tempfilename = 'self-test-temporary.vszh5' doc.save(tempfilename, mode='hdf5') doc = document.Document() doc.load(tempfilename, mode='hdf5') os.unlink(tempfilename) if test_saves: tempfilename = 'self-test-temporary.vsz' doc.save(tempfilename, mode='vsz') doc = document.Document() doc.load(tempfilename, mode='vsz') os.unlink(tempfilename) ifc = document.CommandInterface(doc) ifc.Export(outfile) def renderPyTest(inpy, outfile): """Render py embedded script to create outfile.""" retn = subprocess.call([sys.executable, inpy, outfile]) return retn == 0 class Dirs: """Directories and files object.""" def __init__(self): self.thisdir = os.path.dirname(__file__) self.exampledir = utils.exampleDirectory self.testdir = os.path.join(self.thisdir, 'selftests') self.comparisondir = os.path.join(self.thisdir, 'comparison') self.infiles = ( glob.glob( os.path.join(self.exampledir, '*.vsz') ) + glob.glob( os.path.join(self.testdir, '*.vsz') ) + glob.glob( os.path.join(self.testdir, '*.vszh5') ) ) self.infiles += glob.glob(os.path.join(self.testdir, '*.py')) def renderAllTests(): """Check documents produce same output as in comparison directory.""" print("Regenerating all test output") d = Dirs() for infile in d.infiles: base = os.path.basename(infile) print(base) outfile = os.path.join(d.comparisondir, base + '.selftest') ext = os.path.splitext(base)[1] if ext == '.vsz' or ext == '.vszh5': renderVszTest(infile, outfile) elif ext == '.py': renderPyTest(infile, outfile) def runTests(test_saves=False, test_unlink=False): print("Testing output") fails = 0 passes = 0 skipped_support = 0 skipped_wip = 0 d = Dirs() for infile in sorted(d.infiles): base = os.path.basename(infile) print(base) ext = os.path.splitext(infile)[1] if ( (base[:5] == 'hdf5_' and h5py is None) or (base[:5] == 'fits_' and pyfits is None) or (ext == '.vszh5' and h5py is None) ): print(" SKIPPED: missing support module") skipped_support += 1 continue outfile = os.path.join(d.thisdir, base + '.temp.selftest') if ext == '.vsz' or ext == '.vszh5': renderVszTest(infile, outfile, test_saves=test_saves, test_unlink=test_unlink) elif ext == '.py': if not renderPyTest(infile, outfile): print(" FAIL: did not execute cleanly") fails += 1 continue else: raise RuntimeError('Invalid input file') if base in excluded_tests: print(" SKIPWIP: rendered, but comparison skipped") skipped_wip += 1 os.unlink(outfile) continue comparfile = os.path.join(d.thisdir, 'comparison', base + '.selftest') with open(outfile) as f1: with open(comparfile) as f2: comp = f1.read() == f2.read() if not comp: print(" FAIL: results differed") fails += 1 else: print(" PASS") passes += 1 os.unlink(outfile) print() if skipped_support != 0: print('Skipped %i tests (missing support)' % skipped_support) if skipped_wip != 0: print('Skipped %i comparisons (work in progress)' % skipped_wip) if fails == 0: print("All tests %i/%i PASSED" % (passes, passes)) sys.exit(0) else: print("%i/%i tests FAILED" % (fails, passes+fails)) sys.exit(fails) oldflt = svg_export.fltStr def fltStr(v, prec=1): """Only output floats to 1 dp.""" return oldflt(v, prec=prec) if __name__ == '__main__': app = qt.QApplication([]) setting.transient_settings['unsafe_mode'] = True # hack metrics object to always return same metrics # and replace text renderer with one that encodes unicode symbols utils.textrender.FontMetrics = StupidFontMetrics utils.FontMetrics = StupidFontMetrics utils.textrender.PartText = PartTextAscii # nasty hack to remove underlining del utils.textrender.part_commands[r'\underline'] # dpi (use old values) svg_export.fltStr = fltStr parser = optparse.OptionParser() parser.add_option( "", "--test-saves", action="store_true", help="tests saving documents and reloading them") parser.add_option( "", "--test-unlink", action="store_true", help="unlinks data from files before --test-saves") options, args = parser.parse_args() if len(args) == 0: runTests( test_saves=options.test_saves, test_unlink=options.test_unlink) elif args == ['regenerate']: renderAllTests() else: parser.error("argument must be empty or 'regenerate'") ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.2365212 veusz-3.6.2/tests/selftests/0000775000175000017500000000000014376700261014304 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/1dto2d.vsz0000664000175000017500000000146314126044351016143 0ustar00jssjss# Veusz saved document (version 1.12.99) # Saved at 2011-08-16T14:20:29.340311 xv = [] yv = [] zv = [] for x in range(10): for y in range(10): z = sqrt((x-5.)**2 + (y-5.)**2) xv.append(x) yv.append(y) zv.append( round(z, 3) ) SetData("x", xv) SetData("y", yv) SetData("z", zv) SetData2DExpressionXYZ(u'data2d', u'x', u'y', u'z', linked=True) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('autoRange', 'exact') To('..') Add('axis', name='y', autoadd=False) To('y') Set('autoRange', 'exact') Set('direction', 'vertical') To('..') Add('contour', name='contour1', autoadd=False) To('contour1') Set('data', u'data2d') Set('SubLines/hide', False) To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/autodetect.csv0000664000175000017500000000030314126044351017150 0ustar00jssjssa,b,c,,d,e (text) 1,01/01/10,hello,,1.00E+001,01/01/10 2,01/02/10,foo,,1.00E+002,02/01/11 3,20/02/10,bar,,1.00E+003,03/02/12 4,15/03/10,xxx,,1.00E+004,01/11/11 5,10/04/10,aaa,,1.00E+003,11/11/11 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/autodetect.vsz0000664000175000017500000000226414126044351017207 0ustar00jssjss# Veusz saved document (version 1.13) # Saved at 2011-10-29T16:58:13.552813 ImportFileCSV(u'autodetect.csv', linked=True, blanksaredata=True, dateformat=u'DD/MM/YY| |hh:mm:ss', headermode='1st', numericlocale='en_GB') ImportFileCSV(u'autodetect.csv', linked=True, blanksaredata=True, dateformat=u'DD/MM/YY| |hh:mm:ss', dsprefix=u'p_', headerignore=1, headermode='1st', numericlocale='en_GB', rowsignore=2) Add('page', name='page1', autoadd=False) To('page1') Add('grid', name='grid1', autoadd=False) To('grid1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('mode', u'datetime') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'a') Set('yData', u'b') Set('labels', u'c') To('..') To('..') Add('graph', name='graph2', autoadd=False) To('graph2') Add('axis', name='x', autoadd=False) To('x') Set('log', True) To('..') Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('xData', u'p_1.00E+002') Set('yData', u'p_2') Set('labels', u'p_foo') To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/axisautoranges.vsz0000664000175000017500000001141414126044351020100 0ustar00jssjss# Veusz saved document (version 1.25.1) # Saved at 2017-04-02T10:45:47.723302 AddImportPath(u'/home/jss/code/veusz/tests/selftests') SetDataExpression(u'data', u'1+arange(5)*1.1', linked=True) Set('StyleSheet/graph/leftMargin', u'0cm') Set('StyleSheet/graph/rightMargin', u'0cm') Set('StyleSheet/graph/topMargin', u'0cm') Set('StyleSheet/graph/bottomMargin', u'0cm') Add('page', name='page1', autoadd=False) To('page1') Add('grid', name=u'outergrid', autoadd=False) To(u'outergrid') Set('rows', 1) Set('leftMargin', u'0cm') Set('rightMargin', u'0cm') Set('topMargin', u'0cm') Set('bottomMargin', u'0cm') Add('grid', name=u'linear', autoadd=False) To(u'linear') Set('columns', 1) Add('axis', name='x', autoadd=False) To('x') Set('autoRange', u'exact') To('..') Add('graph', name=u'ticks', autoadd=False) To(u'ticks') Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'data') Set('yData', u'data') To('..') To('..') Add('graph', name=u'exact', autoadd=False) To(u'exact') Add('axis', name='y', autoadd=False) To('y') Set('autoRange', u'exact') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'data') Set('yData', u'data') To('..') To('..') Add('graph', name=u'plus10', autoadd=False) To(u'plus10') Add('axis', name='y', autoadd=False) To('y') Set('autoRange', u'+10%') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'data') Set('yData', u'data') To('..') To('..') Add('graph', name=u'minus10', autoadd=False) To(u'minus10') Add('axis', name='y', autoadd=False) To('y') Set('autoRange', u'-10%') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'data') Set('yData', u'data') To('..') To('..') Add('graph', name=u'20to70', autoadd=False) To(u'20to70') Add('axis', name='y', autoadd=False) To('y') Set('autoRange', u'20-70%') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'data') Set('yData', u'data') To('..') To('..') Add('graph', name=u'less80', autoadd=False) To(u'less80') Add('axis', name='y', autoadd=False) To('y') Set('autoRange', u'<80%') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'data') Set('yData', u'data') To('..') To('..') Add('graph', name=u'gtr50', autoadd=False) To(u'gtr50') Add('axis', name='y', autoadd=False) To('y') Set('autoRange', u'>50%') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'data') Set('yData', u'data') To('..') To('..') To('..') Add('grid', name=u'log', autoadd=False) To(u'log') Set('columns', 1) Add('axis', name='x', autoadd=False) To('x') Set('autoRange', u'exact') To('..') Add('graph', name=u'ticks', autoadd=False) To(u'ticks') Add('axis', name='y', autoadd=False) To('y') Set('log', True) Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'data') Set('yData', u'data') To('..') To('..') Add('graph', name=u'exact', autoadd=False) To(u'exact') Add('axis', name='y', autoadd=False) To('y') Set('log', True) Set('autoRange', u'exact') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'data') Set('yData', u'data') To('..') To('..') Add('graph', name=u'plus10', autoadd=False) To(u'plus10') Add('axis', name='y', autoadd=False) To('y') Set('log', True) Set('autoRange', u'+10%') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'data') Set('yData', u'data') To('..') To('..') Add('graph', name=u'minus10', autoadd=False) To(u'minus10') Add('axis', name='y', autoadd=False) To('y') Set('log', True) Set('autoRange', u'-10%') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'data') Set('yData', u'data') To('..') To('..') Add('graph', name=u'20to70', autoadd=False) To(u'20to70') Add('axis', name='y', autoadd=False) To('y') Set('log', True) Set('autoRange', u'20-70%') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'data') Set('yData', u'data') To('..') To('..') Add('graph', name=u'less80', autoadd=False) To(u'less80') Add('axis', name='y', autoadd=False) To('y') Set('log', True) Set('autoRange', u'<80%') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'data') Set('yData', u'data') To('..') To('..') Add('graph', name=u'gtr50', autoadd=False) To(u'gtr50') Add('axis', name='y', autoadd=False) To('y') Set('log', True) Set('autoRange', u'>50%') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'data') Set('yData', u'data') To('..') To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/blockeddata.dat0000664000175000017500000000003614126044351017224 0ustar00jssjss1 2 4 5 6 7 8 9 10 2 1 3 3 6 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/blockeddata.vsz0000664000175000017500000000113514126044351017277 0ustar00jssjss# Veusz saved document (version 1.13) # Saved at 2011-11-06T14:18:14.450714 ImportFile(u'blockeddata.dat', u'x y', linked=True, ignoretext=True, useblocks=True) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'x_1') Set('yData', u'y_1') To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('xData', u'x_2') Set('yData', u'y_2') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/broken_axis_rng.vsz0000664000175000017500000000144314126044351020216 0ustar00jssjss# Veusz saved document (version 2.2.1) # Saved at 2018-04-07T15:33:48.436591 AddImportPath(u'/home/jss/code/veusz') Add('page', name=u'page1', autoadd=False) To(u'page1') Set('hide', False) Set('width', u'32cm') Add('graph', name=u'graph1', autoadd=False) To(u'graph1') Set('Border/hide', True) Add('axis-broken', name=u'x', autoadd=False) To(u'x') Set('min', 0.0) Set('max', 1.0) Set('breakPoints', [0.2, 0.6]) Set('lowerPosition', 0.151) Set('upperPosition', 0.769) Set('breakPosns', [0.5]) To('..') Add('axis-broken', name=u'y', autoadd=False) To(u'y') Set('min', 0.0) Set('max', 1.0) Set('breakPoints', [0.2, 0.5]) Set('direction', u'vertical') Set('lowerPosition', 0.1) Set('upperPosition', 0.8) Set('breakPosns', [0.5]) To('..') Add('function', name='function1', autoadd=False) To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/csv1.csv0000664000175000017500000000015514126044351015670 0ustar00jssjss"test","foo","+-","aerg" 1,7,0.1,"fdfd" 2,4,0.1,"dsfh" 3,3,0.1,"bgtr" 4,2,0.1,"RR" 5,3,0.2,"ZZ" 6,4,0.2,"AA" ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/csv1.vsz0000664000175000017500000000076414126044351015725 0ustar00jssjss# Veusz saved document (version 1.12) # User: jss # Date: Sat, 06 Aug 2011 10:31:14 +0000 ImportFileCSV(u'csv1.csv', linked=True) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'foo') Set('yData', u'test') Set('labels', u'aerg') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/csv_locale.csv0000664000175000017500000000020514126044351017122 0ustar00jssjssa b c d 1,23 3.21 01/01/10 2012-12-06 100,3 200.1 02/02/11 2011-03-01 1.001,2 1,500.30 23/03/09 2011-04-05 10 66 05/05/10 2012-01-01 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/csv_locale.vsz0000664000175000017500000000144314126044351017156 0ustar00jssjss# Veusz saved document (version 1.13) # Saved at 2011-10-29T17:11:42.391345 ImportFileCSV(u'csv_locale.csv', linked=True, delimiter='\t', dsprefix=u'a_') ImportFileCSV(u'csv_locale.csv', linked=True, dateformat=u'DD/MM/YY| |hh:mm:ss', delimiter='\t', dsprefix=u'b_', numericlocale='de_DE') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('mode', u'datetime') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'a_b') Set('yData', u'a_d') Set('labels', u'a_a') To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('xData', u'b_a') Set('yData', u'b_c') Set('labels', u'b_d') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/csv_missing.csv0000664000175000017500000000013414126044351017335 0ustar00jssjssa,b,c,d,e (numeric) ,,,6, 2,,00:02:33.40,,nan 3,hello,01:32:44,4,3 4,foo,01:01:01,8,invalid ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/csv_missing.vsz0000664000175000017500000000177014126044351017373 0ustar00jssjss# Veusz saved document (version 1.13) # Saved at 2011-10-29T18:48:52.635479 ImportFileCSV(u'csv_missing.csv', linked=True, blanksaredata=True, dateformat=u'DD/MM/YY| |hh:mm:ss', headermode='1st', numericlocale='en_GB') SetDataExpression(u'cdiv', u'c/1000.', linked=True) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'a') Set('yData', []) Set('labels', u'b') To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('xData', u'd') Set('yData', []) Set('marker', u'diamond') To('..') Add('xy', name='xy3', autoadd=False) To('xy3') Set('xData', u'e') Set('yData', []) Set('markerSize', u'30pt') Set('MarkerFill/hide', True) To('..') Add('xy', name='xy4', autoadd=False) To('xy4') Set('xData', []) Set('yData', u'cdiv') Set('marker', u'cross') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/csv_renaming.vsz0000664000175000017500000000102614126044351017514 0ustar00jssjss# Veusz saved document (version 1.19.1) # Saved at 2013-12-30T15:31:37.518893 ImportFileCSV(u'csv1.csv', linked=True, renames={u'aerg': u'b', u'foo': u'a', u'test': u'c'}) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'a') Set('yData', u'c') Set('labels', u'b') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/custom.vsz0000664000175000017500000000156714126044351016365 0ustar00jssjss# Veusz saved document (version 1.13) # Saved at 2011-09-06T18:47:34.442485 AddImportPath(u'/home/jss/code/veusz/veusz/tests/selftests') AddCustom('constant', u'myconst', u'10') AddCustom('constant', 'myconst', '41', mode='replace') AddCustom('constant', 'myconst', '42', mode='append') AddCustom('function', 'myfunc(x)', 'myconst*x**2') AddCustom(u'import', u'numpy.linalg', u'inv') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('function', name='function1', autoadd=False) To('function1') Set('function', u'inv([[1,0],[0,1]])[0,0] * x') To('..') Add('function', name='function2', autoadd=False) To('function2') Set('function', u'myfunc(x)') Set('Line/color', u'red') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/customcolormap.vsz0000664000175000017500000000134314126044351020112 0ustar00jssjss# Veusz saved document (version 1.15.99) # Saved at 2012-06-10T09:45:52.827597 AddCustom('colormap', 'xyzzy', ((0,0,0,255), (255,255,0), (0,0,0))) SetData2DXYFunc(u'img', (0.0, 1.0, 0.1), (0.0, 1.0, 0.1), u'x*y', linked=True) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('colorbar', name='colorbar1', autoadd=False) To('colorbar1') Set('widgetName', u'image1') Set('horzPosn', u'centre') Set('vertPosn', u'top') To('..') Add('image', name='image1', autoadd=False) To('image1') Set('data', u'img') Set('colorMap', u'xyzzy') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/embed_test.py0000664000175000017500000000111214126044351016756 0ustar00jssjssimport sys import numpy as N import veusz.embed as veusz def main(outfile): # note - avoid putting text in here to avoid font issues embed = veusz.Embedded(hidden=True) x = N.arange(5) y = x**2 embed.SetData('a', x) embed.SetData('b', y) page = embed.Root.Add('page') graph = page.Add('graph') xy = graph.Add('xy', xData='a', yData='b', marker='square') graph.x.TickLabels.hide.val = True graph.y.TickLabels.hide.val = True xy.MarkerFill.color.val = 'blue' embed.Export(outfile) if __name__ == '__main__': main(sys.argv[1]) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/fits_keywords1.vsz0000664000175000017500000000142714126044351020023 0ustar00jssjss# Veusz saved document (version 1.26.1) # Saved at 2017-06-04T08:37:32.610697 ImportFileFITS(u'fits_test.fits', ['/'], linked=True, namemap={'/primary': u'testslice'}, slices={'/primary': ((None, None, None), 2)}) Set('colorTheme', 'default-latest') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('autoRange', u'+4%') To('..') Add('axis', name='y', autoadd=False) To('y') Set('autoRange', u'0-105%') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) Add('xy', name='xy2', autoadd=False) To('xy2') Set('yData', u'ycomb') To('..') Add('xy', name='xy3', autoadd=False) To('xy3') Set('xData', u'x[::2]') Set('yData', u'testslice') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/fits_test.fits0000664000175000017500000005500014126044351017171 0ustar00jssjssSIMPLE = T / conforms to FITS standard BITPIX = -64 / array data type NAXIS = 2 / number of array dimensions NAXIS1 = 5 NAXIS2 = 5 EXTEND = T END ?ð@@@@@@@@@@@@@ @@@ @"@$@ @"@$@&@(XTENSION= 'BINTABLE' / binary table extension BITPIX = 8 / array data type NAXIS = 2 / number of array dimensions NAXIS1 = 24 / length of dimension 1 NAXIS2 = 3 / length of dimension 2 PCOUNT = 0 / number of group parameters GCOUNT = 1 / number of groups TFIELDS = 2 / number of table fields TTYPE1 = 'target ' TFORM1 = '20A ' TTYPE2 = 'V_mag ' TFORM2 = 'E ' END NGC1001A1™šNGC1002ADÌÍNGC1003As33XTENSION= 'BINTABLE' / binary table extension BITPIX = 8 / array data type NAXIS = 2 / number of array dimensions NAXIS1 = 20 / length of dimension 1 NAXIS2 = 10 / length of dimension 2 PCOUNT = 0 / number of group parameters GCOUNT = 1 / number of groups TFIELDS = 4 / number of table fields TTYPE1 = 'x ' TFORM1 = 'E ' TTYPE2 = 'y ' TFORM2 = 'E ' TTYPE3 = 'yerr ' TFORM3 = 'E ' TTYPE4 = 'ycomb ' TFORM4 = '2E ' VEUSZ = 'yerr: NAME=y (+-)' VEUSZ = 'ycomb: twod_as_oned=1' END ?€?€=ÌÌÍ?€=ÌÌÍ@?µó>ÐÃ@(å£>‡@@?ݳ×>1\¬@”ú(>î] @€@>LÌÍ@ÞÜg?2Iì@ @½>dù.AJÕ?sªï@À@Äq>zÓçAD“š?Bá@à@)Sý>‡vdAsìï?Ã#òA@5ó>ÐÃA“Œ?ë@àA@@>™™šA­df@ ¶¸XTENSION= 'IMAGE ' / Image extension BITPIX = -64 / array data type NAXIS = 2 / number of array dimensions NAXIS1 = 8 NAXIS2 = 8 PCOUNT = 0 / number of parameters GCOUNT = 1 / number of groups CDELT1 = 0.25 CDELT2 = 0.5 CRPIX1 = 3 CRPIX2 = 4 CRVAL2 = 20 CRVAL1 = 3.5 EXTNAME = 'WCSTEST ' EXTVER = 42 CTYPE1 = 'LINEAR ' CTYPE2 = 'LINEAR ' END ¿ë/ñðÐ&Õ¿ß$â’Ñ3?Øu—úK\¿ÝäCBr¤y?ñfåܺn?û9 ð„š£?Û ‰¬)Ç?Ýd“ÛP¿î=¤ýËÃí¿ñòh[™Œ¢?ó¸C€¥¿ðWE!'í®?Úw1žè …?ñÑíima¬¿ÔnÆ0Ú¿â{ª¹ð^Àâç8åu¡¿ÏÅ’Ï '¿ç9ª@Ì?ê–麿åFIJeT¿ã¡,b<²·?ð4Áz‰°?ë2èA€’B?¸=bcL¿©»ïÉI8?ùµa¸‹®?ááå:aŽB?óvÒÏÛV¿‰ßn·=ú0¿°L…¿ðŸŒî󿸬6|p¿â^Z~Y·C@زÃ>ª ?â7¢²hl¨¿¸jP·Ñ?¤©ä1T?ï9Îï\ó„?üh懲›¿ÜÌß*Â@¿ö³ÿÆ%¿Ð+ÀS±¿ö¼Wü¶ö¿ëç*Â;V`?ì, 0Çzh¿ù/$ìZ!d?ðªyà|?LT…R±]¿è¸ø©·è¿ûI¬\‹2?®†üÕeN¿Ý…W¡Ë?Ù6H­±P¿ô‚ÑÛU¶?ãOUKCg–¿è¸Ø‰/Ø*?êÇ©Ä]:?Ñ«Ö Z?Þ¾ƒ‚?Óå“‘¸ë?賑š¿ønÏb6¿Ü¿„>d§•././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/fits_test.vsz0000664000175000017500000000220214126044351017042 0ustar00jssjss# Veusz saved document (version 1.26.1) # Saved at 2017-06-04T08:23:25.425218 ImportFileFITS(u'fits_test.fits', ['/primary', '/hdu1'], linked=True, namemap={'/hdu1/v_mag': u'mag', '/primary': u'img'}) Add('page', name='page1', autoadd=False) To('page1') Add('grid', name='grid1', autoadd=False) To('grid1') Set('leftMargin', u'0cm') Set('rightMargin', u'0cm') Set('topMargin', u'0cm') Set('bottomMargin', u'0cm') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('min', 0.0) Set('max', 4.0) To('..') Add('axis', name='y', autoadd=False) To('y') Set('min', 10.0) Set('max', 16.0) Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', []) Set('yData', u'mag') Set('labels', u'target') To('..') To('..') Add('graph', name='graph2', autoadd=False) To('graph2') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('image', name='image1', autoadd=False) To('image1') Set('data', u'img') Set('min', -0.1) Set('max', 12.1) Set('colorMap', u'grey-step6') To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/fits_wcs1.vsz0000664000175000017500000000132214126044351016742 0ustar00jssjss# Veusz saved document (version 1.26.1) # Saved at 2017-06-04T09:01:38.276617 ImportFileFITS(u'fits_test.fits', ['/wcstest42'], linked=True) Set('colorTheme', 'default1') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('autoRange', u'exact') To('..') Add('axis', name='y', autoadd=False) To('y') Set('autoRange', u'exact') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', [3.5, 4.5]) Set('yData', [20.0, 21.5]) To('..') Add('image', name='image1', autoadd=False) To('image1') Set('data', u'wcstest42') Set('min', -2.0) Set('max', 2.0) To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/gnuplot_2d.dat0000664000175000017500000015765514126044351017070 0ustar00jssjss0.4000 0.2500 226.2408 0.4000 0.3450 162.4517 0.4000 0.4400 116.6186 0.4000 0.5350 83.6955 0.4000 0.6300 60.0478 0.4000 0.7250 43.0592 0.4000 0.8200 30.8519 0.4000 0.9150 22.0733 0.4000 1.0100 15.7508 0.4000 1.1050 11.1868 0.4000 1.2000 7.8816 0.4000 1.2950 5.4779 0.4000 1.3900 3.7218 0.4000 1.4850 2.4349 0.4000 1.5800 1.4878 0.4000 1.6750 0.7879 0.4000 1.7700 0.2699 0.4000 1.8650 -0.0659 0.4000 1.9600 -0.1769 0.4000 2.0550 -0.2296 0.4000 2.1500 -0.3208 0.4000 2.2450 -0.3607 0.4000 2.3400 -0.1850 0.4000 2.4350 0.0203 0.4000 2.5300 0.0748 0.4000 2.6250 0.0770 0.4000 2.7200 0.0781 0.4000 2.8150 0.0780 0.4000 2.9100 0.0782 0.4000 3.0050 0.0784 0.4000 3.1000 0.0780 0.4000 3.1950 0.0767 0.4000 3.2900 0.0761 0.4000 3.3850 0.0764 0.4000 3.4800 0.0773 0.4000 3.5750 0.0785 0.4000 3.6700 0.0798 0.4000 3.7650 0.0811 0.4000 3.8600 0.0824 0.4000 3.9550 0.0837 0.4000 4.0500 0.0849 0.4000 4.1450 0.0860 0.4000 4.2400 0.0870 0.4000 4.3350 0.0880 0.4000 4.4300 0.0888 0.4000 4.5250 0.0896 0.4000 4.6200 0.0904 0.4000 4.7150 0.0910 0.4000 4.8100 0.0916 0.4000 4.9050 0.0922 0.4000 5.0000 0.0927 0.4380 0.2500 233.7782 0.4380 0.3450 167.3656 0.4380 0.4400 119.6578 0.4380 0.5350 85.3995 0.4380 0.6300 60.8053 0.4380 0.7250 43.1497 0.4380 0.8200 30.4754 0.4380 0.9150 21.3739 0.4380 1.0100 14.8314 0.4380 1.1050 10.1203 0.4380 1.2000 6.7192 0.4380 1.2950 4.2549 0.4380 1.3900 2.4633 0.4380 1.4850 1.1570 0.4380 1.5800 0.2007 0.4380 1.6750 -0.5021 0.4380 1.7700 -1.0198 0.4380 1.8650 -1.3234 0.4380 1.9600 -1.4210 0.4380 2.0550 -1.4896 0.4380 2.1500 -1.5928 0.4380 2.2450 -1.6554 0.4380 2.3400 -1.5078 0.4380 2.4350 -1.2843 0.4380 2.5300 -1.1973 0.4380 2.6250 -1.1953 0.4380 2.7200 -1.1944 0.4380 2.8150 -1.1944 0.4380 2.9100 -1.1939 0.4380 3.0050 -1.1934 0.4380 3.1000 -1.1934 0.4380 3.1950 -1.1945 0.4380 3.2900 -1.1954 0.4380 3.3850 -1.1952 0.4380 3.4800 -1.1944 0.4380 3.5750 -1.1933 0.4380 3.6700 -1.1920 0.4380 3.7650 -1.1907 0.4380 3.8600 -1.1894 0.4380 3.9550 -1.1881 0.4380 4.0500 -1.1869 0.4380 4.1450 -1.1858 0.4380 4.2400 -1.1848 0.4380 4.3350 -1.1839 0.4380 4.4300 -1.1830 0.4380 4.5250 -1.1822 0.4380 4.6200 -1.1815 0.4380 4.7150 -1.1808 0.4380 4.8100 -1.1802 0.4380 4.9050 -1.1796 0.4380 5.0000 -1.1791 0.4760 0.2500 242.6544 0.4760 0.3450 173.3256 0.4760 0.4400 123.5310 0.4760 0.5350 87.7836 0.4760 0.6300 62.1311 0.4760 0.7250 43.7273 0.4760 0.8200 30.5266 0.4760 0.9150 21.0590 0.4760 1.0100 14.2649 0.4760 1.1050 9.3837 0.4760 1.2000 5.8700 0.4760 1.2950 3.3333 0.4760 1.3900 1.4978 0.4760 1.4850 0.1662 0.4760 1.5800 -0.8032 0.4760 1.6750 -1.5114 0.4760 1.7700 -2.0295 0.4760 1.8650 -2.2958 0.4760 1.9600 -2.3886 0.4760 2.0550 -2.4779 0.4760 2.1500 -2.5882 0.4760 2.2450 -2.6627 0.4760 2.3400 -2.5533 0.4760 2.4350 -2.3177 0.4760 2.5300 -2.1921 0.4760 2.6250 -2.1896 0.4760 2.7200 -2.1889 0.4760 2.8150 -2.1888 0.4760 2.9100 -2.1880 0.4760 3.0050 -2.1872 0.4760 3.1000 -2.1870 0.4760 3.1950 -2.1877 0.4760 3.2900 -2.1888 0.4760 3.3850 -2.1888 0.4760 3.4800 -2.1881 0.4760 3.5750 -2.1870 0.4760 3.6700 -2.1858 0.4760 3.7650 -2.1845 0.4760 3.8600 -2.1832 0.4760 3.9550 -2.1819 0.4760 4.0500 -2.1808 0.4760 4.1450 -2.1796 0.4760 4.2400 -2.1786 0.4760 4.3350 -2.1777 0.4760 4.4300 -2.1768 0.4760 4.5250 -2.1760 0.4760 4.6200 -2.1753 0.4760 4.7150 -2.1746 0.4760 4.8100 -2.1740 0.4760 4.9050 -2.1734 0.4760 5.0000 -2.1729 0.5140 0.2500 242.5944 0.5140 0.3450 180.3165 0.5140 0.4400 128.2140 0.5140 0.5350 90.8173 0.5140 0.6300 63.9901 0.5140 0.7250 44.7536 0.5140 0.8200 30.9651 0.5140 0.9150 21.0863 0.5140 1.0100 14.0077 0.5140 1.1050 8.9324 0.5140 1.2000 5.2887 0.5140 1.2950 2.6673 0.5140 1.3900 0.7789 0.5140 1.4850 -0.5842 0.5140 1.5800 -1.5709 0.5140 1.6750 -2.2874 0.5140 1.7700 -2.7998 0.5140 1.8650 -3.0325 0.5140 1.9600 -3.1289 0.5140 2.0550 -3.2418 0.5140 2.1500 -3.3545 0.5140 2.2450 -3.4312 0.5140 2.3400 -3.3673 0.5140 2.4350 -3.1271 0.5140 2.5300 -2.9645 0.5140 2.6250 -2.9535 0.5140 2.7200 -2.9531 0.5140 2.8150 -2.9527 0.5140 2.9100 -2.9516 0.5140 3.0050 -2.9506 0.5140 3.1000 -2.9501 0.5140 3.1950 -2.9506 0.5140 3.2900 -2.9517 0.5140 3.3850 -2.9519 0.5140 3.4800 -2.9513 0.5140 3.5750 -2.9503 0.5140 3.6700 -2.9491 0.5140 3.7650 -2.9478 0.5140 3.8600 -2.9466 0.5140 3.9550 -2.9453 0.5140 4.0500 -2.9441 0.5140 4.1450 -2.9430 0.5140 4.2400 -2.9420 0.5140 4.3350 -2.9410 0.5140 4.4300 -2.9402 0.5140 4.5250 -2.9394 0.5140 4.6200 -2.9386 0.5140 4.7150 -2.9380 0.5140 4.8100 -2.9374 0.5140 4.9050 -2.9368 0.5140 5.0000 -2.9363 0.5520 0.2500 225.5812 0.5520 0.3450 188.3340 0.5520 0.4400 133.6927 0.5520 0.5350 94.4794 0.5520 0.6300 66.3561 0.5520 0.7250 46.1985 0.5520 0.8200 31.7582 0.5520 0.9150 21.4213 0.5520 1.0100 14.0241 0.5520 1.1050 8.7297 0.5520 1.2000 4.9378 0.5520 1.2950 2.2186 0.5520 1.3900 0.2680 0.5520 1.4850 -1.1333 0.5520 1.5800 -2.1420 0.5520 1.6750 -2.8699 0.5520 1.7700 -3.3685 0.5520 1.8650 -3.5755 0.5520 1.9600 -3.6832 0.5520 2.0550 -3.8175 0.5520 2.1500 -3.9320 0.5520 2.2450 -4.0098 0.5520 2.3400 -3.9877 0.5520 2.4350 -3.7520 0.5520 2.5300 -3.5556 0.5520 2.6250 -3.5271 0.5520 2.7200 -3.5269 0.5520 2.8150 -3.5262 0.5520 2.9100 -3.5248 0.5520 3.0050 -3.5236 0.5520 3.1000 -3.5228 0.5520 3.1950 -3.5231 0.5520 3.2900 -3.5243 0.5520 3.3850 -3.5246 0.5520 3.4800 -3.5241 0.5520 3.5750 -3.5232 0.5520 3.6700 -3.5221 0.5520 3.7650 -3.5208 0.5520 3.8600 -3.5195 0.5520 3.9550 -3.5183 0.5520 4.0500 -3.5171 0.5520 4.1450 -3.5160 0.5520 4.2400 -3.5150 0.5520 4.3350 -3.5140 0.5520 4.4300 -3.5132 0.5520 4.5250 -3.5124 0.5520 4.6200 -3.5116 0.5520 4.7150 -3.5110 0.5520 4.8100 -3.5103 0.5520 4.9050 -3.5098 0.5520 5.0000 -3.5093 0.5900 0.2500 209.7791 0.5900 0.3450 197.3835 0.5900 0.4400 139.9615 0.5900 0.5350 98.7565 0.5900 0.6300 69.2103 0.5900 0.7250 48.0395 0.5900 0.8200 32.8805 0.5900 0.9150 22.0366 0.5900 1.0100 14.2849 0.5900 1.1050 8.7454 0.5900 1.2000 4.7862 0.5900 1.2950 1.9556 0.5900 1.3900 -0.0672 0.5900 1.4850 -1.5138 0.5900 1.5800 -2.5495 0.5900 1.6750 -3.2920 0.5900 1.7700 -3.7693 0.5900 1.8650 -3.9603 0.5900 1.9600 -4.0861 0.5900 2.0550 -4.2382 0.5900 2.1500 -4.3546 0.5900 2.2450 -4.4332 0.5900 2.3400 -4.4459 0.5900 2.4350 -4.2253 0.5900 2.5300 -3.9988 0.5900 2.6250 -3.9440 0.5900 2.7200 -3.9439 0.5900 2.8150 -3.9430 0.5900 2.9100 -3.9414 0.5900 3.0050 -3.9399 0.5900 3.1000 -3.9390 0.5900 3.1950 -3.9389 0.5900 3.2900 -3.9400 0.5900 3.3850 -3.9406 0.5900 3.4800 -3.9403 0.5900 3.5750 -3.9394 0.5900 3.6700 -3.9383 0.5900 3.7650 -3.9371 0.5900 3.8600 -3.9359 0.5900 3.9550 -3.9346 0.5900 4.0500 -3.9335 0.5900 4.1450 -3.9324 0.5900 4.2400 -3.9313 0.5900 4.3350 -3.9304 0.5900 4.4300 -3.9295 0.5900 4.5250 -3.9287 0.5900 4.6200 -3.9279 0.5900 4.7150 -3.9273 0.5900 4.8100 -3.9266 0.5900 4.9050 -3.9261 0.5900 5.0000 -3.9256 0.6280 0.2500 195.0929 0.6280 0.3450 207.4792 0.6280 0.4400 147.0230 0.6280 0.5350 103.6428 0.6280 0.6300 72.5406 0.6280 0.7250 50.2600 0.6280 0.8200 34.3125 0.6280 0.9150 22.9103 0.6280 1.0100 14.7668 0.6280 1.1050 8.9548 0.6280 1.2000 4.8084 0.6280 1.2950 1.8521 0.6280 1.3900 -0.2534 0.6280 1.4850 -1.7529 0.6280 1.5800 -2.8208 0.6280 1.6750 -3.5817 0.6280 1.7700 -4.0310 0.6280 1.8650 -4.2173 0.6280 1.9600 -4.3667 0.6280 2.0550 -4.5325 0.6280 2.1500 -4.6505 0.6280 2.2450 -4.7299 0.6280 2.3400 -4.7675 0.6280 2.4350 -4.5742 0.6280 2.5300 -4.3221 0.6280 2.6250 -4.2326 0.6280 2.7200 -4.2326 0.6280 2.8150 -4.2314 0.6280 2.9100 -4.2297 0.6280 3.0050 -4.2280 0.6280 3.1000 -4.2268 0.6280 3.1950 -4.2265 0.6280 3.2900 -4.2274 0.6280 3.3850 -4.2282 0.6280 3.4800 -4.2280 0.6280 3.5750 -4.2273 0.6280 3.6700 -4.2263 0.6280 3.7650 -4.2251 0.6280 3.8600 -4.2238 0.6280 3.9550 -4.2226 0.6280 4.0500 -4.2215 0.6280 4.1450 -4.2203 0.6280 4.2400 -4.2193 0.6280 4.3350 -4.2184 0.6280 4.4300 -4.2175 0.6280 4.5250 -4.2167 0.6280 4.6200 -4.2159 0.6280 4.7150 -4.2152 0.6280 4.8100 -4.2146 0.6280 4.9050 -4.2141 0.6280 5.0000 -4.2135 0.6660 0.2500 181.4361 0.6660 0.3450 218.6440 0.6660 0.4400 154.8870 0.6660 0.5350 109.1388 0.6660 0.6300 76.3409 0.6660 0.7250 52.8493 0.6660 0.8200 36.0397 0.6660 0.9150 24.0258 0.6660 1.0100 15.4513 0.6660 1.1050 9.3383 0.6660 1.2000 4.9838 0.6660 1.2950 1.8867 0.6660 1.3900 -0.3127 0.6660 1.4850 -1.8730 0.6660 1.5800 -2.9788 0.6660 1.6750 -3.7610 0.6660 1.7700 -4.1787 0.6660 1.8650 -4.3717 0.6660 1.9600 -4.5494 0.6660 2.0550 -4.7239 0.6660 2.1500 -4.8437 0.6660 2.2450 -4.9237 0.6660 2.3400 -4.9738 0.6660 2.4350 -4.8209 0.6660 2.5300 -4.5491 0.6660 2.6250 -4.4176 0.6660 2.7200 -4.4166 0.6660 2.8150 -4.4152 0.6660 2.9100 -4.4133 0.6660 3.0050 -4.4115 0.6660 3.1000 -4.4101 0.6660 3.1950 -4.4096 0.6660 3.2900 -4.4102 0.6660 3.3850 -4.4112 0.6660 3.4800 -4.4112 0.6660 3.5750 -4.4106 0.6660 3.6700 -4.4096 0.6660 3.7650 -4.4084 0.6660 3.8600 -4.4072 0.6660 3.9550 -4.4060 0.6660 4.0500 -4.4049 0.6660 4.1450 -4.4038 0.6660 4.2400 -4.4027 0.6660 4.3350 -4.4018 0.6660 4.4300 -4.4009 0.6660 4.5250 -4.4001 0.6660 4.6200 -4.3993 0.6660 4.7150 -4.3986 0.6660 4.8100 -4.3980 0.6660 4.9050 -4.3974 0.6660 5.0000 -4.3969 0.7040 0.2500 168.7300 0.7040 0.3450 220.6207 0.7040 0.4400 163.5698 0.7040 0.5350 115.2507 0.7040 0.6300 80.6102 0.7040 0.7250 55.8012 0.7040 0.8200 38.0524 0.7040 0.9150 25.3705 0.7040 1.0100 16.3241 0.7040 1.1050 9.8800 0.7040 1.2000 5.2958 0.7040 1.2950 2.0418 0.7040 1.3900 -0.2630 0.7040 1.4850 -1.8926 0.7040 1.5800 -3.0424 0.7040 1.6750 -3.8405 0.7040 1.7700 -4.2340 0.7040 1.8650 -4.4445 0.7040 1.9600 -4.6532 0.7040 2.0550 -4.8324 0.7040 2.1500 -4.9541 0.7040 2.2450 -5.0346 0.7040 2.3400 -5.0856 0.7040 2.4350 -4.9830 0.7040 2.5300 -4.6995 0.7040 2.6250 -4.5260 0.7040 2.7200 -4.5158 0.7040 2.8150 -4.5143 0.7040 2.9100 -4.5123 0.7040 3.0050 -4.5103 0.7040 3.1000 -4.5087 0.7040 3.1950 -4.5080 0.7040 3.2900 -4.5083 0.7040 3.3850 -4.5095 0.7040 3.4800 -4.5097 0.7040 3.5750 -4.5092 0.7040 3.6700 -4.5082 0.7040 3.7650 -4.5071 0.7040 3.8600 -4.5060 0.7040 3.9550 -4.5048 0.7040 4.0500 -4.5036 0.7040 4.1450 -4.5025 0.7040 4.2400 -4.5015 0.7040 4.3350 -4.5005 0.7040 4.4300 -4.4996 0.7040 4.5250 -4.4988 0.7040 4.6200 -4.4980 0.7040 4.7150 -4.4973 0.7040 4.8100 -4.4967 0.7040 4.9050 -4.4961 0.7040 5.0000 -4.4956 0.7420 0.2500 156.9031 0.7420 0.3450 205.4838 0.7420 0.4400 173.0944 0.7420 0.5350 121.9904 0.7420 0.6300 85.3527 0.7420 0.7250 59.1140 0.7420 0.8200 40.3447 0.7420 0.9150 26.9361 0.7420 1.0100 17.3746 0.7420 1.1050 10.5680 0.7420 1.2000 5.7312 0.7420 1.2950 2.3036 0.7420 1.3900 -0.1191 0.7420 1.4850 -1.8268 0.7420 1.5800 -3.0271 0.7420 1.6750 -3.8336 0.7420 1.7700 -4.2153 0.7420 1.8650 -4.4530 0.7420 1.9600 -4.6906 0.7420 2.0550 -4.8745 0.7420 2.1500 -4.9982 0.7420 2.2450 -5.0793 0.7420 2.3400 -5.1301 0.7420 2.4350 -5.0744 0.7420 2.5300 -4.7899 0.7420 2.6250 -4.5760 0.7420 2.7200 -4.5470 0.7420 2.8150 -4.5454 0.7420 2.9100 -4.5433 0.7420 3.0050 -4.5411 0.7420 3.1000 -4.5394 0.7420 3.1950 -4.5384 0.7420 3.2900 -4.5385 0.7420 3.3850 -4.5397 0.7420 3.4800 -4.5401 0.7420 3.5750 -4.5397 0.7420 3.6700 -4.5389 0.7420 3.7650 -4.5378 0.7420 3.8600 -4.5366 0.7420 3.9550 -4.5355 0.7420 4.0500 -4.5343 0.7420 4.1450 -4.5332 0.7420 4.2400 -4.5322 0.7420 4.3350 -4.5312 0.7420 4.4300 -4.5303 0.7420 4.5250 -4.5295 0.7420 4.6200 -4.5287 0.7420 4.7150 -4.5280 0.7420 4.8100 -4.5274 0.7420 4.9050 -4.5268 0.7420 5.0000 -4.5263 0.7800 0.2500 145.8900 0.7800 0.3450 191.3707 0.7800 0.4400 183.4894 0.7800 0.5350 129.3747 0.7800 0.6300 90.5764 0.7800 0.7250 62.7899 0.7800 0.8200 42.9144 0.7800 0.9150 28.7170 0.7800 1.0100 18.5952 0.7800 1.1050 11.3930 0.7800 1.2000 6.2797 0.7800 1.2950 2.6608 0.7800 1.3900 0.1074 0.7800 1.4850 -1.6880 0.7800 1.5800 -2.9455 0.7800 1.6750 -3.7537 0.7800 1.7700 -4.1384 0.7800 1.8650 -4.4116 0.7800 1.9600 -4.6745 0.7800 2.0550 -4.8639 0.7800 2.1500 -4.9901 0.7800 2.2450 -5.0718 0.7800 2.3400 -5.1222 0.7800 2.4350 -5.1057 0.7800 2.5300 -4.8335 0.7800 2.6250 -4.5813 0.7800 2.7200 -4.5240 0.7800 2.8150 -4.5223 0.7800 2.9100 -4.5201 0.7800 3.0050 -4.5178 0.7800 3.1000 -4.5159 0.7800 3.1950 -4.5147 0.7800 3.2900 -4.5146 0.7800 3.3850 -4.5157 0.7800 3.4800 -4.5163 0.7800 3.5750 -4.5161 0.7800 3.6700 -4.5153 0.7800 3.7650 -4.5143 0.7800 3.8600 -4.5132 0.7800 3.9550 -4.5120 0.7800 4.0500 -4.5109 0.7800 4.1450 -4.5098 0.7800 4.2400 -4.5087 0.7800 4.3350 -4.5077 0.7800 4.4300 -4.5069 0.7800 4.5250 -4.5060 0.7800 4.6200 -4.5053 0.7800 4.7150 -4.5046 0.7800 4.8100 -4.5039 0.7800 4.9050 -4.5034 0.7800 5.0000 -4.5028 0.8180 0.2500 135.6308 0.8180 0.3450 178.2083 0.8180 0.4400 194.7894 0.8180 0.5350 137.4253 0.8180 0.6300 96.2939 0.8180 0.7250 66.8348 0.8180 0.8200 45.7625 0.8180 0.9150 30.7111 0.8180 1.0100 19.9811 0.8180 1.1050 12.3486 0.8180 1.2000 6.9335 0.8180 1.2950 3.1047 0.8180 1.3900 0.4071 0.8180 1.4850 -1.4859 0.8180 1.5800 -2.8078 0.8180 1.6750 -3.6128 0.8180 1.7700 -4.0164 0.8180 1.8650 -4.3317 0.8180 1.9600 -4.6163 0.8180 2.0550 -4.8121 0.8180 2.1500 -4.9411 0.8180 2.2450 -5.0235 0.8180 2.3400 -5.0735 0.8180 2.4350 -5.0851 0.8180 2.5300 -4.8404 0.8180 2.6250 -4.5535 0.8180 2.7200 -4.4584 0.8180 2.8150 -4.4566 0.8180 2.9100 -4.4543 0.8180 3.0050 -4.4519 0.8180 3.1000 -4.4498 0.8180 3.1950 -4.4485 0.8180 3.2900 -4.4481 0.8180 3.3850 -4.4491 0.8180 3.4800 -4.4499 0.8180 3.5750 -4.4498 0.8180 3.6700 -4.4492 0.8180 3.7650 -4.4482 0.8180 3.8600 -4.4471 0.8180 3.9550 -4.4460 0.8180 4.0500 -4.4448 0.8180 4.1450 -4.4437 0.8180 4.2400 -4.4427 0.8180 4.3350 -4.4417 0.8180 4.4300 -4.4408 0.8180 4.5250 -4.4400 0.8180 4.6200 -4.4392 0.8180 4.7150 -4.4385 0.8180 4.8100 -4.4379 0.8180 4.9050 -4.4373 0.8180 5.0000 -4.4368 0.8560 0.2500 126.0708 0.8560 0.3450 165.9292 0.8560 0.4400 207.0345 0.8560 0.5350 146.1683 0.8560 0.6300 102.5214 0.8560 0.7250 71.2576 0.8560 0.8200 48.8931 0.8560 0.9150 32.9185 0.8560 1.0100 21.5300 0.8560 1.1050 13.4305 0.8560 1.2000 7.6872 0.8560 1.2950 3.6289 0.8560 1.3900 0.7726 0.8560 1.4850 -1.2283 0.8560 1.5800 -2.6212 0.8560 1.6750 -3.4216 0.8560 1.7700 -3.8601 0.8560 1.8650 -4.2227 0.8560 1.9600 -4.5252 0.8560 2.0550 -4.7282 0.8560 2.1500 -4.8606 0.8560 2.2450 -4.9441 0.8560 2.3400 -4.9937 0.8560 2.4350 -5.0189 0.8560 2.5300 -4.8183 0.8560 2.6250 -4.5026 0.8560 2.7200 -4.3606 0.8560 2.8150 -4.3579 0.8560 2.9100 -4.3555 0.8560 3.0050 -4.3530 0.8560 3.1000 -4.3508 0.8560 3.1950 -4.3493 0.8560 3.2900 -4.3487 0.8560 3.3850 -4.3494 0.8560 3.4800 -4.3505 0.8560 3.5750 -4.3506 0.8560 3.6700 -4.3500 0.8560 3.7650 -4.3491 0.8560 3.8600 -4.3480 0.8560 3.9550 -4.3469 0.8560 4.0500 -4.3458 0.8560 4.1450 -4.3447 0.8560 4.2400 -4.3437 0.8560 4.3350 -4.3427 0.8560 4.4300 -4.3418 0.8560 4.5250 -4.3410 0.8560 4.6200 -4.3402 0.8560 4.7150 -4.3395 0.8560 4.8100 -4.3388 0.8560 4.9050 -4.3382 0.8560 5.0000 -4.3377 0.8940 0.2500 117.1596 0.8940 0.3450 154.4715 0.8940 0.4400 209.9760 0.8940 0.5350 155.6344 0.8940 0.6300 109.2785 0.8940 0.7250 76.0704 0.8940 0.8200 52.3125 0.8940 0.9150 35.3416 0.8940 1.0100 23.2417 0.8940 1.1050 14.6367 0.8940 1.2000 8.5369 0.8940 1.2950 4.2286 0.8940 1.3900 1.1986 0.8940 1.4850 -0.9214 0.8940 1.5800 -2.3814 0.8940 1.6750 -3.1897 0.8940 1.7700 -3.6779 0.8940 1.8650 -4.0912 0.8940 1.9600 -4.4085 0.8940 2.0550 -4.6201 0.8940 2.1500 -4.7566 0.8940 2.2450 -4.8413 0.8940 2.3400 -4.8907 0.8940 2.4350 -4.9161 0.8940 2.5300 -4.7721 0.8940 2.6250 -4.4369 0.8940 2.7200 -4.2462 0.8940 2.8150 -4.2341 0.8940 2.9100 -4.2316 0.8940 3.0050 -4.2291 0.8940 3.1000 -4.2268 0.8940 3.1950 -4.2251 0.8940 3.2900 -4.2243 0.8940 3.3850 -4.2247 0.8940 3.4800 -4.2260 0.8940 3.5750 -4.2262 0.8940 3.6700 -4.2258 0.8940 3.7650 -4.2249 0.8940 3.8600 -4.2239 0.8940 3.9550 -4.2228 0.8940 4.0500 -4.2217 0.8940 4.1450 -4.2206 0.8940 4.2400 -4.2196 0.8940 4.3350 -4.2186 0.8940 4.4300 -4.2177 0.8940 4.5250 -4.2169 0.8940 4.6200 -4.2161 0.8940 4.7150 -4.2154 0.8940 4.8100 -4.2147 0.8940 4.9050 -4.2141 0.8940 5.0000 -4.2136 0.9320 0.2500 108.8511 0.9320 0.3450 143.7780 0.9320 0.4400 195.7379 0.9320 0.5350 165.8583 0.9320 0.6300 116.5887 0.9320 0.7250 81.2881 0.9320 0.8200 56.0299 0.9320 0.9150 37.9851 0.9320 1.0100 25.1177 0.9320 1.1050 15.9667 0.9320 1.2000 9.4805 0.9320 1.2950 4.9005 0.9320 1.3900 1.6810 0.9320 1.4850 -0.5697 0.9320 1.5800 -2.0911 0.9320 1.6750 -2.9253 0.9320 1.7700 -3.4763 0.9320 1.8650 -3.9388 0.9320 1.9600 -4.2724 0.9320 2.0550 -4.4937 0.9320 2.1500 -4.6351 0.9320 2.2450 -4.7217 0.9320 2.3400 -4.7711 0.9320 2.4350 -4.7953 0.9320 2.5300 -4.7047 0.9320 2.6250 -4.3629 0.9320 2.7200 -4.1234 0.9320 2.8150 -4.0917 0.9320 2.9100 -4.0893 0.9320 3.0050 -4.0866 0.9320 3.1000 -4.0843 0.9320 3.1950 -4.0824 0.9320 3.2900 -4.0814 0.9320 3.3850 -4.0816 0.9320 3.4800 -4.0829 0.9320 3.5750 -4.0833 0.9320 3.6700 -4.0830 0.9320 3.7650 -4.0823 0.9320 3.8600 -4.0813 0.9320 3.9550 -4.0802 0.9320 4.0500 -4.0791 0.9320 4.1450 -4.0780 0.9320 4.2400 -4.0770 0.9320 4.3350 -4.0760 0.9320 4.4300 -4.0751 0.9320 4.5250 -4.0743 0.9320 4.6200 -4.0735 0.9320 4.7150 -4.0728 0.9320 4.8100 -4.0721 0.9320 4.9050 -4.0715 0.9320 5.0000 -4.0710 0.9700 0.2500 101.1026 0.9700 0.3450 133.7960 0.9700 0.4400 182.4362 0.9700 0.5350 176.8794 0.9700 0.6300 124.4786 0.9700 0.7250 86.9286 0.9700 0.8200 60.0564 0.9700 0.9150 40.8557 0.9700 1.0100 27.1616 0.9700 1.1050 17.4214 0.9700 1.2000 10.5176 0.9700 1.2950 5.6429 0.9700 1.3900 2.2172 0.9700 1.4850 -0.1765 0.9700 1.5800 -1.7550 0.9700 1.6750 -2.6355 0.9700 1.7700 -3.2602 0.9700 1.8650 -3.7696 0.9700 1.9600 -4.1218 0.9700 2.0550 -4.3541 0.9700 2.1500 -4.5015 0.9700 2.2450 -4.5905 0.9700 2.3400 -4.6400 0.9700 2.4350 -4.6633 0.9700 2.5300 -4.6171 0.9700 2.6250 -4.2854 0.9700 2.7200 -3.9979 0.9700 2.8150 -3.9362 0.9700 2.9100 -3.9337 0.9700 3.0050 -3.9311 0.9700 3.1000 -3.9286 0.9700 3.1950 -3.9266 0.9700 3.2900 -3.9255 0.9700 3.3850 -3.9254 0.9700 3.4800 -3.9266 0.9700 3.5750 -3.9273 0.9700 3.6700 -3.9271 0.9700 3.7650 -3.9264 0.9700 3.8600 -3.9255 0.9700 3.9550 -3.9245 0.9700 4.0500 -3.9234 0.9700 4.1450 -3.9223 0.9700 4.2400 -3.9213 0.9700 4.3350 -3.9203 0.9700 4.4300 -3.9194 0.9700 4.5250 -3.9185 0.9700 4.6200 -3.9177 0.9700 4.7150 -3.9170 0.9700 4.8100 -3.9164 0.9700 4.9050 -3.9158 0.9700 5.0000 -3.9152 1.0080 0.2500 93.8751 1.0080 0.3450 124.4767 1.0080 0.4400 170.0079 1.0080 0.5350 188.7411 1.0080 0.6300 132.9782 1.0080 0.7250 93.0122 1.0080 0.8200 64.4056 1.0080 0.9150 43.9618 1.0080 1.0100 29.3783 1.0080 1.1050 19.0034 1.0080 1.2000 11.6486 1.0080 1.2950 6.4551 1.0080 1.3900 2.8054 1.0080 1.4850 0.2559 1.0080 1.5800 -1.3776 1.0080 1.6750 -2.3262 1.0080 1.7700 -3.0331 1.0080 1.8650 -3.5873 1.0080 1.9600 -3.9604 1.0080 2.0550 -4.2053 1.0080 2.1500 -4.3597 1.0080 2.2450 -4.4517 1.0080 2.3400 -4.5018 1.0080 2.4350 -4.5243 1.0080 2.5300 -4.5098 1.0080 2.6250 -4.2070 1.0080 2.7200 -3.8747 1.0080 2.8150 -3.7719 1.0080 2.9100 -3.7695 1.0080 3.0050 -3.7668 1.0080 3.1000 -3.7642 1.0080 3.1950 -3.7621 1.0080 3.2900 -3.7608 1.0080 3.3850 -3.7605 1.0080 3.4800 -3.7615 1.0080 3.5750 -3.7624 1.0080 3.6700 -3.7624 1.0080 3.7650 -3.7618 1.0080 3.8600 -3.7610 1.0080 3.9550 -3.7600 1.0080 4.0500 -3.7589 1.0080 4.1450 -3.7578 1.0080 4.2400 -3.7568 1.0080 4.3350 -3.7558 1.0080 4.4300 -3.7549 1.0080 4.5250 -3.7540 1.0080 4.6200 -3.7533 1.0080 4.7150 -3.7525 1.0080 4.8100 -3.7519 1.0080 4.9050 -3.7513 1.0080 5.0000 -3.7507 1.0460 0.2500 87.1324 1.0460 0.3450 115.7750 1.0460 0.4400 158.3945 1.0460 0.5350 201.4913 1.0460 0.6300 142.1211 1.0460 0.7250 99.5619 1.0460 0.8200 69.0932 1.0460 0.9150 47.3138 1.0460 1.0100 31.7743 1.0460 1.1050 20.7163 1.0460 1.2000 12.8754 1.0460 1.2950 7.3375 1.0460 1.3900 3.4452 1.0460 1.4850 0.7277 1.0460 1.5800 -0.9635 1.0460 1.6750 -2.0018 1.0460 1.7700 -2.7975 1.0460 1.8650 -3.3944 1.0460 1.9600 -3.7912 1.0460 2.0550 -4.0502 1.0460 2.1500 -4.2129 1.0460 2.2450 -4.3088 1.0460 2.3400 -4.3600 1.0460 2.4350 -4.3818 1.0460 2.5300 -4.3823 1.0460 2.6250 -4.1285 1.0460 2.7200 -3.7583 1.0460 2.8150 -3.6034 1.0460 2.9100 -3.6000 1.0460 3.0050 -3.5973 1.0460 3.1000 -3.5947 1.0460 3.1950 -3.5925 1.0460 3.2900 -3.5910 1.0460 3.3850 -3.5905 1.0460 3.4800 -3.5912 1.0460 3.5750 -3.5924 1.0460 3.6700 -3.5925 1.0460 3.7650 -3.5921 1.0460 3.8600 -3.5913 1.0460 3.9550 -3.5903 1.0460 4.0500 -3.5892 1.0460 4.1450 -3.5882 1.0460 4.2400 -3.5871 1.0460 4.3350 -3.5861 1.0460 4.4300 -3.5852 1.0460 4.5250 -3.5844 1.0460 4.6200 -3.5836 1.0460 4.7150 -3.5829 1.0460 4.8100 -3.5822 1.0460 4.9050 -3.5816 1.0460 5.0000 -3.5810 1.0840 0.2500 80.8409 1.0840 0.3450 107.6489 1.0840 0.4400 147.5415 1.0840 0.5350 204.8862 1.0840 0.6300 151.9440 1.0840 0.7250 106.6035 1.0840 0.8200 74.1367 1.0840 0.9150 50.9236 1.0840 1.0100 34.3573 1.0840 1.1050 22.5651 1.0840 1.2000 14.2008 1.0840 1.2950 8.2913 1.0840 1.3900 4.1367 1.0840 1.4850 1.2506 1.0840 1.5800 -0.5171 1.0840 1.6750 -1.6654 1.0840 1.7700 -2.5543 1.0840 1.8650 -3.1931 1.0840 1.9600 -3.6164 1.0840 2.0550 -3.8913 1.0840 2.1500 -4.0637 1.0840 2.2450 -4.1644 1.0840 2.3400 -4.2172 1.0840 2.4350 -4.2386 1.0840 2.5300 -4.2386 1.0840 2.6250 -4.0489 1.0840 2.7200 -3.6524 1.0840 2.8150 -3.4413 1.0840 2.9100 -3.4282 1.0840 3.0050 -3.4255 1.0840 3.1000 -3.4229 1.0840 3.1950 -3.4205 1.0840 3.2900 -3.4189 1.0840 3.3850 -3.4182 1.0840 3.4800 -3.4187 1.0840 3.5750 -3.4200 1.0840 3.6700 -3.4203 1.0840 3.7650 -3.4200 1.0840 3.8600 -3.4192 1.0840 3.9550 -3.4183 1.0840 4.0500 -3.4172 1.0840 4.1450 -3.4162 1.0840 4.2400 -3.4152 1.0840 4.3350 -3.4142 1.0840 4.4300 -3.4133 1.0840 4.5250 -3.4124 1.0840 4.6200 -3.4116 1.0840 4.7150 -3.4109 1.0840 4.8100 -3.4102 1.0840 4.9050 -3.4096 1.0840 5.0000 -3.4090 1.1220 0.2500 74.9572 1.1220 0.3450 100.0469 1.1220 0.4400 137.3854 1.1220 0.5350 191.0633 1.1220 0.6300 162.4750 1.1220 0.7250 114.1550 1.1220 0.8200 79.5475 1.1220 0.9150 54.7983 1.1220 1.0100 37.1317 1.1220 1.1050 24.5527 1.1220 1.2000 15.6272 1.1220 1.2950 9.3191 1.1220 1.3900 4.8829 1.1220 1.4850 1.8310 1.1220 1.5800 -0.0353 1.1220 1.6750 -1.3082 1.1220 1.7700 -2.2884 1.1220 1.8650 -2.9720 1.1220 1.9600 -3.4239 1.1220 2.0550 -3.7162 1.1220 2.1500 -3.8988 1.1220 2.2450 -4.0046 1.1220 2.3400 -4.0590 1.1220 2.4350 -4.0796 1.1220 2.5300 -4.0771 1.1220 2.6250 -3.9468 1.1220 2.7200 -3.5380 1.1220 2.8150 -3.2663 1.1220 2.9100 -3.2324 1.1220 3.0050 -3.2297 1.1220 3.1000 -3.2270 1.1220 3.1950 -3.2246 1.1220 3.2900 -3.2228 1.1220 3.3850 -3.2219 1.1220 3.4800 -3.2221 1.1220 3.5750 -3.2235 1.1220 3.6700 -3.2240 1.1220 3.7650 -3.2238 1.1220 3.8600 -3.2231 1.1220 3.9550 -3.2222 1.1220 4.0500 -3.2212 1.1220 4.1450 -3.2202 1.1220 4.2400 -3.2192 1.1220 4.3350 -3.2182 1.1220 4.4300 -3.2173 1.1220 4.5250 -3.2164 1.1220 4.6200 -3.2156 1.1220 4.7150 -3.2149 1.1220 4.8100 -3.2142 1.1220 4.9050 -3.2135 1.1220 5.0000 -3.2130 1.1600 0.2500 69.3968 1.1600 0.3450 92.8777 1.1600 0.4400 127.8226 1.1600 0.5350 178.0645 1.1600 0.6300 173.7019 1.1600 0.7250 122.1997 1.1600 0.8200 85.3078 1.1600 0.9150 58.9210 1.1600 1.0100 40.0834 1.1600 1.1050 26.6689 1.1600 1.2000 17.1487 1.1600 1.2950 10.4200 1.1600 1.3900 5.6882 1.1600 1.4850 2.4801 1.1600 1.5800 0.5047 1.1600 1.6750 -0.8913 1.1600 1.7700 -1.9567 1.1600 1.8650 -2.6853 1.1600 1.9600 -3.1651 1.1600 2.0550 -3.4731 1.1600 2.1500 -3.6635 1.1600 2.2450 -3.7717 1.1600 2.3400 -3.8247 1.1600 2.4350 -3.8413 1.1600 2.5300 -3.8331 1.1600 2.6250 -3.7484 1.1600 2.7200 -3.3367 1.1600 2.8150 -2.9903 1.1600 2.9100 -2.9197 1.1600 3.0050 -2.9171 1.1600 3.1000 -2.9143 1.1600 3.1950 -2.9118 1.1600 3.2900 -2.9099 1.1600 3.3850 -2.9088 1.1600 3.4800 -2.9088 1.1600 3.5750 -2.9101 1.1600 3.6700 -2.9109 1.1600 3.7650 -2.9108 1.1600 3.8600 -2.9102 1.1600 3.9550 -2.9094 1.1600 4.0500 -2.9084 1.1600 4.1450 -2.9074 1.1600 4.2400 -2.9064 1.1600 4.3350 -2.9054 1.1600 4.4300 -2.9044 1.1600 4.5250 -2.9036 1.1600 4.6200 -2.9028 1.1600 4.7150 -2.9020 1.1600 4.8100 -2.9013 1.1600 4.9050 -2.9007 1.1600 5.0000 -2.9001 1.1980 0.2500 64.1101 1.1980 0.3450 86.1010 1.1980 0.4400 118.8024 1.1980 0.5350 165.8239 1.1980 0.6300 185.6575 1.1980 0.7250 130.7565 1.1980 0.8200 91.4264 1.1980 0.9150 63.2934 1.1980 1.0100 43.2090 1.1980 1.1050 28.9063 1.1980 1.2000 18.7554 1.1980 1.2950 11.5818 1.1980 1.3900 6.5387 1.1980 1.4850 3.1843 1.1980 1.5800 1.0898 1.1980 1.6750 -0.4303 1.1980 1.7700 -1.5790 1.1980 1.8650 -2.3534 1.1980 1.9600 -2.8605 1.1980 2.0550 -3.1829 1.1980 2.1500 -3.3792 1.1980 2.2450 -3.4875 1.1980 2.3400 -3.5365 1.1980 2.4350 -3.5463 1.1980 2.5300 -3.5294 1.1980 2.6250 -3.4738 1.1980 2.7200 -3.0758 1.1980 2.8150 -2.6435 1.1980 2.9100 -2.5121 1.1980 3.0050 -2.5094 1.1980 3.1000 -2.5067 1.1980 3.1950 -2.5041 1.1980 3.2900 -2.5021 1.1980 3.3850 -2.5008 1.1980 3.4800 -2.5006 1.1980 3.5750 -2.5017 1.1980 3.6700 -2.5027 1.1980 3.7650 -2.5028 1.1980 3.8600 -2.5023 1.1980 3.9550 -2.5015 1.1980 4.0500 -2.5006 1.1980 4.1450 -2.4996 1.1980 4.2400 -2.4986 1.1980 4.3350 -2.4976 1.1980 4.4300 -2.4966 1.1980 4.5250 -2.4958 1.1980 4.6200 -2.4950 1.1980 4.7150 -2.4942 1.1980 4.8100 -2.4935 1.1980 4.9050 -2.4929 1.1980 5.0000 -2.4923 1.2360 0.2500 59.0666 1.2360 0.3450 79.6776 1.2360 0.4400 110.2758 1.2360 0.5350 154.2790 1.2360 0.6300 198.3780 1.2360 0.7250 139.8459 1.2360 0.8200 97.9121 1.2360 0.9150 67.9157 1.2360 1.0100 46.5018 1.2360 1.1050 31.2536 1.2360 1.2000 20.4319 1.2360 1.2950 12.7862 1.2360 1.3900 7.4156 1.2360 1.4850 3.9233 1.2360 1.5800 1.6973 1.2360 1.6750 0.0439 1.2360 1.7700 -1.1867 1.2360 1.8650 -2.0083 1.2360 1.9600 -2.5432 1.2360 2.0550 -2.8795 1.2360 2.1500 -3.0802 1.2360 2.2450 -3.1871 1.2360 2.3400 -3.2302 1.2360 2.4350 -3.2309 1.2360 2.5300 -3.2031 1.2360 2.6250 -3.1563 1.2360 2.7200 -2.7954 1.2360 2.8150 -2.2758 1.2360 2.9100 -2.0513 1.2360 3.0050 -2.0474 1.2360 3.1000 -2.0446 1.2360 3.1950 -2.0420 1.2360 3.2900 -2.0399 1.2360 3.3850 -2.0385 1.2360 3.4800 -2.0380 1.2360 3.5750 -2.0388 1.2360 3.6700 -2.0401 1.2360 3.7650 -2.0404 1.2360 3.8600 -2.0400 1.2360 3.9550 -2.0392 1.2360 4.0500 -2.0383 1.2360 4.1450 -2.0373 1.2360 4.2400 -2.0363 1.2360 4.3350 -2.0353 1.2360 4.4300 -2.0344 1.2360 4.5250 -2.0335 1.2360 4.6200 -2.0327 1.2360 4.7150 -2.0320 1.2360 4.8100 -2.0313 1.2360 4.9050 -2.0306 1.2360 5.0000 -2.0300 1.2740 0.2500 54.2427 1.2740 0.3450 73.5629 1.2740 0.4400 102.1899 1.2740 0.5350 143.3643 1.2740 0.6300 201.6035 1.2740 0.7250 149.4867 1.2740 0.8200 104.7711 1.2740 0.9150 72.7849 1.2740 1.0100 49.9520 1.2740 1.1050 33.6951 1.2740 1.2000 22.1589 1.2740 1.2950 14.0109 1.2740 1.3900 8.3115 1.2740 1.4850 4.6725 1.2740 1.5800 2.2989 1.2740 1.6750 0.4958 1.2740 1.7700 -0.8139 1.2740 1.8650 -1.6847 1.2740 1.9600 -2.2481 1.2740 2.0550 -2.5983 1.2740 2.1500 -2.8026 1.2740 2.2450 -2.9070 1.2740 2.3400 -2.9430 1.2740 2.4350 -2.9328 1.2740 2.5300 -2.8925 1.2740 2.6250 -2.8339 1.2740 2.7200 -2.5325 1.2740 2.8150 -1.9364 1.2740 2.9100 -1.5924 1.2740 3.0050 -1.5722 1.2740 3.1000 -1.5694 1.2740 3.1950 -1.5668 1.2740 3.2900 -1.5646 1.2740 3.3850 -1.5630 1.2740 3.4800 -1.5624 1.2740 3.5750 -1.5629 1.2740 3.6700 -1.5643 1.2740 3.7650 -1.5648 1.2740 3.8600 -1.5645 1.2740 3.9550 -1.5638 1.2740 4.0500 -1.5629 1.2740 4.1450 -1.5620 1.2740 4.2400 -1.5610 1.2740 4.3350 -1.5600 1.2740 4.4300 -1.5591 1.2740 4.5250 -1.5582 1.2740 4.6200 -1.5574 1.2740 4.7150 -1.5566 1.2740 4.8100 -1.5559 1.2740 4.9050 -1.5552 1.2740 5.0000 -1.5547 1.3120 0.2500 49.6210 1.3120 0.3450 67.7094 1.3120 0.4400 94.4898 1.3120 0.5350 133.0144 1.3120 0.6300 187.5144 1.3120 0.7250 159.7013 1.3120 0.8200 112.0115 1.3120 0.9150 77.8983 1.3120 1.0100 53.5488 1.3120 1.1050 36.2143 1.3120 1.2000 23.9155 1.3120 1.2950 15.2314 1.3120 1.3900 9.2072 1.3120 1.4850 5.4050 1.3120 1.5800 2.8625 1.3120 1.6750 0.8972 1.3120 1.7700 -0.4952 1.3120 1.8650 -1.4177 1.3120 1.9600 -2.0107 1.3120 2.0550 -2.3749 1.3120 2.1500 -2.5825 1.3120 2.2450 -2.6834 1.3120 2.3400 -2.7109 1.3120 2.4350 -2.6886 1.3120 2.5300 -2.6343 1.3120 2.6250 -2.5606 1.3120 2.7200 -2.3196 1.3120 2.8150 -1.6676 1.3120 2.9100 -1.1844 1.3120 3.0050 -1.1219 1.3120 3.1000 -1.1192 1.3120 3.1950 -1.1165 1.3120 3.2900 -1.1142 1.3120 3.3850 -1.1125 1.3120 3.4800 -1.1116 1.3120 3.5750 -1.1120 1.3120 3.6700 -1.1134 1.3120 3.7650 -1.1140 1.3120 3.8600 -1.1139 1.3120 3.9550 -1.1133 1.3120 4.0500 -1.1124 1.3120 4.1450 -1.1115 1.3120 4.2400 -1.1105 1.3120 4.3350 -1.1095 1.3120 4.4300 -1.1086 1.3120 4.5250 -1.1077 1.3120 4.6200 -1.1069 1.3120 4.7150 -1.1061 1.3120 4.8100 -1.1054 1.3120 4.9050 -1.1048 1.3120 5.0000 -1.1042 1.3500 0.2500 45.1973 1.3500 0.3450 62.0743 1.3500 0.4400 87.1265 1.3500 0.5350 123.1714 1.3500 0.6300 174.1717 1.3500 0.7250 170.5248 1.3500 0.8200 119.6515 1.3500 0.9150 83.2614 1.3500 1.0100 57.2879 1.3500 1.1050 38.7992 1.3500 1.2000 25.6836 1.3500 1.2950 16.4252 1.3500 1.3900 10.0819 1.3500 1.4850 6.0957 1.3500 1.5800 3.3559 1.3500 1.6750 1.2179 1.3500 1.7700 -0.2629 1.3500 1.8650 -1.2404 1.3500 1.9600 -1.8648 1.3500 2.0550 -2.2438 1.3500 2.1500 -2.4544 1.3500 2.2450 -2.5510 1.3500 2.3400 -2.5690 1.3500 2.4350 -2.5333 1.3500 2.5300 -2.4634 1.3500 2.6250 -2.3733 1.3500 2.7200 -2.1843 1.3500 2.8150 -1.5040 1.3500 2.9100 -0.8697 1.3500 3.0050 -0.7280 1.3500 3.1000 -0.7253 1.3500 3.1950 -0.7226 1.3500 3.2900 -0.7202 1.3500 3.3850 -0.7184 1.3500 3.4800 -0.7174 1.3500 3.5750 -0.7175 1.3500 3.6700 -0.7188 1.3500 3.7650 -0.7197 1.3500 3.8600 -0.7197 1.3500 3.9550 -0.7191 1.3500 4.0500 -0.7184 1.3500 4.1450 -0.7174 1.3500 4.2400 -0.7165 1.3500 4.3350 -0.7155 1.3500 4.4300 -0.7146 1.3500 4.5250 -0.7137 1.3500 4.6200 -0.7128 1.3500 4.7150 -0.7121 1.3500 4.8100 -0.7114 1.3500 4.9050 -0.7107 1.3500 5.0000 -0.7101 1.3880 0.2500 40.9864 1.3880 0.3450 56.6569 1.3880 0.4400 80.0750 1.3880 0.5350 113.8029 1.3880 0.6300 161.5316 1.3880 0.7250 182.0234 1.3880 0.8200 127.7375 1.3880 0.9150 88.9048 1.3880 1.0100 61.1872 1.3880 1.1050 41.4574 1.3880 1.2000 27.4625 1.3880 1.2950 17.5844 1.3880 1.3900 10.9295 1.3880 1.4850 6.7338 1.3880 1.5800 3.7583 1.3880 1.6750 1.4395 1.3880 1.7700 -0.1383 1.3880 1.8650 -1.1768 1.3880 1.9600 -1.8366 1.3880 2.0550 -2.2327 1.3880 2.1500 -2.4477 1.3880 2.2450 -2.5403 1.3880 2.3400 -2.5484 1.3880 2.4350 -2.4987 1.3880 2.5300 -2.4123 1.3880 2.6250 -2.3043 1.3880 2.7200 -2.1515 1.3880 2.8150 -1.4738 1.3880 2.9100 -0.6833 1.3880 3.0050 -0.4132 1.3880 3.1000 -0.4106 1.3880 3.1950 -0.4079 1.3880 3.2900 -0.4055 1.3880 3.3850 -0.4035 1.3880 3.4800 -0.4023 1.3880 3.5750 -0.4022 1.3880 3.6700 -0.4034 1.3880 3.7650 -0.4045 1.3880 3.8600 -0.4046 1.3880 3.9550 -0.4042 1.3880 4.0500 -0.4035 1.3880 4.1450 -0.4026 1.3880 4.2400 -0.4016 1.3880 4.3350 -0.4007 1.3880 4.4300 -0.3997 1.3880 4.5250 -0.3988 1.3880 4.6200 -0.3980 1.3880 4.7150 -0.3972 1.3880 4.8100 -0.3965 1.3880 4.9050 -0.3958 1.3880 5.0000 -0.3952 1.4260 0.2500 37.0316 1.4260 0.3450 51.5575 1.4260 0.4400 73.3783 1.4260 0.5350 104.9422 1.4260 0.6300 149.6139 1.4260 0.7250 194.3262 1.4260 0.8200 136.3756 1.4260 0.9150 94.9158 1.4260 1.0100 65.3183 1.4260 1.1050 44.2470 1.4260 1.2000 29.2986 1.4260 1.2950 18.7484 1.4260 1.3900 11.7900 1.4260 1.4850 7.3514 1.4260 1.5800 4.0882 1.4260 1.6750 1.5827 1.4260 1.7700 -0.1072 1.4260 1.8650 -1.2186 1.4260 1.9600 -1.9232 1.4260 2.0550 -2.3439 1.4260 2.1500 -2.5692 1.4260 2.2450 -2.6621 1.4260 2.3400 -2.6638 1.4260 2.4350 -2.6026 1.4260 2.5300 -2.5016 1.4260 2.6250 -2.3768 1.4260 2.7200 -2.2366 1.4260 2.8150 -1.5996 1.4260 2.9100 -0.6525 1.4260 3.0050 -0.1936 1.4260 3.1000 -0.1882 1.4260 3.1950 -0.1855 1.4260 3.2900 -0.1830 1.4260 3.3850 -0.1809 1.4260 3.4800 -0.1796 1.4260 3.5750 -0.1793 1.4260 3.6700 -0.1802 1.4260 3.7650 -0.1815 1.4260 3.8600 -0.1818 1.4260 3.9550 -0.1815 1.4260 4.0500 -0.1808 1.4260 4.1450 -0.1800 1.4260 4.2400 -0.1790 1.4260 4.3350 -0.1781 1.4260 4.4300 -0.1771 1.4260 4.5250 -0.1762 1.4260 4.6200 -0.1754 1.4260 4.7150 -0.1746 1.4260 4.8100 -0.1739 1.4260 4.9050 -0.1732 1.4260 5.0000 -0.1726 1.4640 0.2500 33.4282 1.4640 0.3450 46.9834 1.4640 0.4400 67.2137 1.4640 0.5350 96.7515 1.4640 0.6300 138.5609 1.4640 0.7250 197.2372 1.4640 0.8200 145.7823 1.4640 0.9150 101.4919 1.4640 1.0100 69.8626 1.4640 1.1050 47.3353 1.4640 1.2000 31.3459 1.4640 1.2950 20.0904 1.4640 1.3900 12.8020 1.4640 1.4850 8.0641 1.4640 1.5800 4.4478 1.4640 1.6750 1.7490 1.4640 1.7700 -0.0740 1.4640 1.8650 -1.2766 1.4640 1.9600 -2.0419 1.4640 2.0550 -2.5018 1.4640 2.1500 -2.7504 1.4640 2.2450 -2.8554 1.4640 2.3400 -2.8614 1.4640 2.4350 -2.7988 1.4640 2.5300 -2.6922 1.4640 2.6250 -2.5589 1.4640 2.7200 -2.4110 1.4640 2.8150 -1.8676 1.4640 2.9100 -0.7878 1.4640 3.0050 -0.1011 1.4640 3.1000 -0.0613 1.4640 3.1950 -0.0587 1.4640 3.2900 -0.0561 1.4640 3.3850 -0.0539 1.4640 3.4800 -0.0525 1.4640 3.5750 -0.0519 1.4640 3.6700 -0.0526 1.4640 3.7650 -0.0540 1.4640 3.8600 -0.0545 1.4640 3.9550 -0.0543 1.4640 4.0500 -0.0537 1.4640 4.1450 -0.0529 1.4640 4.2400 -0.0520 1.4640 4.3350 -0.0510 1.4640 4.4300 -0.0501 1.4640 4.5250 -0.0492 1.4640 4.6200 -0.0484 1.4640 4.7150 -0.0476 1.4640 4.8100 -0.0468 1.4640 4.9050 -0.0462 1.4640 5.0000 -0.0455 1.5020 0.2500 30.3154 1.5020 0.3450 43.1416 1.5020 0.4400 61.8717 1.5020 0.5350 89.5086 1.5020 0.6300 128.6334 1.5020 0.7250 183.5498 1.5020 0.8200 156.2969 1.5020 0.9150 108.9646 1.5020 1.0100 75.1465 1.5020 1.1050 51.0451 1.5020 1.2000 33.9247 1.5020 1.2950 21.9383 1.5020 1.3900 14.2167 1.5020 1.4850 9.0420 1.5020 1.5800 5.0160 1.5020 1.6750 2.1043 1.5020 1.7700 0.1303 1.5020 1.8650 -1.1787 1.5020 1.9600 -2.0186 1.5020 2.0550 -2.5300 1.5020 2.1500 -2.8138 1.5020 2.2450 -2.9421 1.5020 2.3400 -2.9634 1.5020 2.4350 -2.9103 1.5020 2.5300 -2.8090 1.5020 2.6250 -2.6780 1.5020 2.7200 -2.5303 1.5020 2.8150 -2.1209 1.5020 2.9100 -1.0196 1.5020 3.0050 -0.1424 1.5020 3.1000 -0.0243 1.5020 3.1950 -0.0217 1.5020 3.2900 -0.0191 1.5020 3.3850 -0.0168 1.5020 3.4800 -0.0152 1.5020 3.5750 -0.0145 1.5020 3.6700 -0.0149 1.5020 3.7650 -0.0164 1.5020 3.8600 -0.0171 1.5020 3.9550 -0.0170 1.5020 4.0500 -0.0165 1.5020 4.1450 -0.0157 1.5020 4.2400 -0.0148 1.5020 4.3350 -0.0139 1.5020 4.4300 -0.0129 1.5020 4.5250 -0.0121 1.5020 4.6200 -0.0112 1.5020 4.7150 -0.0104 1.5020 4.8100 -0.0097 1.5020 4.9050 -0.0090 1.5020 5.0000 -0.0084 1.5400 0.2500 27.5333 1.5400 0.3450 39.7632 1.5400 0.4400 57.1484 1.5400 0.5350 82.9994 1.5400 0.6300 119.6093 1.5400 0.7250 171.0037 1.5400 0.8200 167.8156 1.5400 0.9150 117.2301 1.5400 1.0100 81.0700 1.5400 1.1050 55.2834 1.5400 1.2000 36.9511 1.5400 1.2950 24.2070 1.5400 1.3900 15.9272 1.5400 1.4850 10.1918 1.5400 1.5800 5.7427 1.5400 1.6750 2.6021 1.5400 1.7700 0.4653 1.5400 1.8650 -0.9591 1.5400 1.9600 -1.8803 1.5400 2.0550 -2.4487 1.5400 2.1500 -2.7719 1.5400 2.2450 -2.9270 1.5400 2.3400 -2.9663 1.5400 2.4350 -2.9255 1.5400 2.5300 -2.8320 1.5400 2.6250 -2.7056 1.5400 2.7200 -2.5603 1.5400 2.8150 -2.2762 1.5400 2.9100 -1.2541 1.5400 3.0050 -0.2568 1.5400 3.1000 -0.0245 1.5400 3.1950 -0.0219 1.5400 3.2900 -0.0193 1.5400 3.3850 -0.0170 1.5400 3.4800 -0.0152 1.5400 3.5750 -0.0143 1.5400 3.6700 -0.0145 1.5400 3.7650 -0.0159 1.5400 3.8600 -0.0169 1.5400 3.9550 -0.0169 1.5400 4.0500 -0.0165 1.5400 4.1450 -0.0157 1.5400 4.2400 -0.0149 1.5400 4.3350 -0.0139 1.5400 4.4300 -0.0130 1.5400 4.5250 -0.0121 1.5400 4.6200 -0.0112 1.5400 4.7150 -0.0104 1.5400 4.8100 -0.0097 1.5400 4.9050 -0.0090 1.5400 5.0000 -0.0084 1.5780 0.2500 24.9012 1.5780 0.3450 36.5734 1.5780 0.4400 52.7949 1.5780 0.5350 76.9168 1.5780 0.6300 111.1717 1.5780 0.7250 159.2680 1.5780 0.8200 180.1293 1.5780 0.9150 126.0676 1.5780 1.0100 87.4049 1.5780 1.1050 59.8173 1.5780 1.2000 40.1897 1.5780 1.2950 26.6565 1.5780 1.3900 17.7365 1.5780 1.4850 11.3847 1.5780 1.5800 6.5254 1.5780 1.6750 3.1398 1.5780 1.7700 0.8286 1.5780 1.8650 -0.7195 1.5780 1.9600 -1.7280 1.5780 2.0550 -2.3575 1.5780 2.1500 -2.7232 1.5780 2.2450 -2.9071 1.5780 2.3400 -2.9660 1.5780 2.4350 -2.9385 1.5780 2.5300 -2.8535 1.5780 2.6250 -2.7324 1.5780 2.7200 -2.5900 1.5780 2.8150 -2.3923 1.5780 2.9100 -1.4901 1.5780 3.0050 -0.4066 1.5780 3.1000 -0.0246 1.5780 3.1950 -0.0221 1.5780 3.2900 -0.0195 1.5780 3.3850 -0.0171 1.5780 3.4800 -0.0152 1.5780 3.5750 -0.0141 1.5780 3.6700 -0.0141 1.5780 3.7650 -0.0153 1.5780 3.8600 -0.0165 1.5780 3.9550 -0.0167 1.5780 4.0500 -0.0163 1.5780 4.1450 -0.0157 1.5780 4.2400 -0.0148 1.5780 4.3350 -0.0139 1.5780 4.4300 -0.0130 1.5780 4.5250 -0.0121 1.5780 4.6200 -0.0112 1.5780 4.7150 -0.0104 1.5780 4.8100 -0.0097 1.5780 4.9050 -0.0090 1.5780 5.0000 -0.0083 1.6160 0.2500 22.4162 1.6160 0.3450 33.5503 1.6160 0.4400 48.7901 1.6160 0.5350 71.2335 1.6160 0.6300 103.2831 1.6160 0.7250 148.2908 1.6160 0.8200 193.2916 1.6160 0.9150 135.5157 1.6160 1.0100 94.1789 1.6160 1.1050 64.6669 1.6160 1.2000 43.6587 1.6160 1.2950 29.2902 1.6160 1.3900 19.6451 1.6160 1.4850 12.6252 1.6160 1.5800 7.3679 1.6160 1.6750 3.7202 1.6160 1.7700 1.2222 1.6160 1.8650 -0.4584 1.6160 1.9600 -1.5606 1.6160 2.0550 -2.2559 1.6160 2.1500 -2.6674 1.6160 2.2450 -2.8823 1.6160 2.3400 -2.9621 1.6160 2.4350 -2.9491 1.6160 2.5300 -2.8736 1.6160 2.6250 -2.7583 1.6160 2.7200 -2.6192 1.6160 2.8150 -2.4641 1.6160 2.9100 -1.7187 1.6160 3.0050 -0.5873 1.6160 3.1000 -0.0281 1.6160 3.1950 -0.0221 1.6160 3.2900 -0.0195 1.6160 3.3850 -0.0171 1.6160 3.4800 -0.0151 1.6160 3.5750 -0.0139 1.6160 3.6700 -0.0136 1.6160 3.7650 -0.0146 1.6160 3.8600 -0.0160 1.6160 3.9550 -0.0164 1.6160 4.0500 -0.0161 1.6160 4.1450 -0.0155 1.6160 4.2400 -0.0147 1.6160 4.3350 -0.0138 1.6160 4.4300 -0.0129 1.6160 4.5250 -0.0120 1.6160 4.6200 -0.0111 1.6160 4.7150 -0.0103 1.6160 4.8100 -0.0096 1.6160 4.9050 -0.0089 1.6160 5.0000 -0.0082 1.6540 0.2500 20.0760 1.6540 0.3450 30.6803 1.6540 0.4400 45.0868 1.6540 0.5350 65.9240 1.6540 0.6300 95.9086 1.6540 0.7250 138.0242 1.6540 0.8200 196.9099 1.6540 0.9150 145.6157 1.6540 1.0100 101.4219 1.6540 1.1050 69.8535 1.6540 1.2000 47.4051 1.6540 1.2950 32.1111 1.6540 1.3900 21.6548 1.6540 1.4850 13.9265 1.6540 1.5800 8.2743 1.6540 1.6750 4.3461 1.6540 1.7700 1.6483 1.6540 1.8650 -0.1744 1.6540 1.9600 -1.3770 1.6540 2.0550 -2.1429 1.6540 2.1500 -2.6037 1.6540 2.2450 -2.8520 1.6540 2.3400 -2.9545 1.6540 2.4350 -2.9573 1.6540 2.5300 -2.8921 1.6540 2.6250 -2.7832 1.6540 2.7200 -2.6478 1.6540 2.8150 -2.4978 1.6540 2.9100 -1.9310 1.6540 3.0050 -0.7932 1.6540 3.1000 -0.0643 1.6540 3.1950 -0.0222 1.6540 3.2900 -0.0196 1.6540 3.3850 -0.0171 1.6540 3.4800 -0.0150 1.6540 3.5750 -0.0136 1.6540 3.6700 -0.0132 1.6540 3.7650 -0.0139 1.6540 3.8600 -0.0154 1.6540 3.9550 -0.0160 1.6540 4.0500 -0.0159 1.6540 4.1450 -0.0153 1.6540 4.2400 -0.0145 1.6540 4.3350 -0.0136 1.6540 4.4300 -0.0127 1.6540 4.5250 -0.0118 1.6540 4.6200 -0.0110 1.6540 4.7150 -0.0102 1.6540 4.8100 -0.0094 1.6540 4.9050 -0.0087 1.6540 5.0000 -0.0080 1.6920 0.2500 17.8785 1.6920 0.3450 27.9549 1.6920 0.4400 41.6361 1.6920 0.5350 60.9643 1.6920 0.6300 89.0152 1.6920 0.7250 128.4228 1.6920 0.8200 183.5323 1.6920 0.9150 156.4117 1.6920 1.0100 109.1655 1.6920 1.1050 75.4000 1.6920 1.2000 51.4491 1.6920 1.2950 35.1230 1.6920 1.3900 23.7690 1.6920 1.4850 15.3211 1.6920 1.5800 9.2492 1.6920 1.6750 5.0209 1.6920 1.7700 2.1091 1.6920 1.8650 0.1343 1.6920 1.9600 -1.1761 1.6920 2.0550 -2.0178 1.6920 2.1500 -2.5315 1.6920 2.2450 -2.8160 1.6920 2.3400 -2.9428 1.6920 2.4350 -2.9626 1.6920 2.5300 -2.9087 1.6920 2.6250 -2.8070 1.6920 2.7200 -2.6757 1.6920 2.8150 -2.5279 1.6920 2.9100 -2.1185 1.6920 3.0050 -1.0172 1.6920 3.1000 -0.1401 1.6920 3.1950 -0.0221 1.6920 3.2900 -0.0196 1.6920 3.3850 -0.0171 1.6920 3.4800 -0.0149 1.6920 3.5750 -0.0134 1.6920 3.6700 -0.0127 1.6920 3.7650 -0.0132 1.6920 3.8600 -0.0148 1.6920 3.9550 -0.0155 1.6920 4.0500 -0.0155 1.6920 4.1450 -0.0150 1.6920 4.2400 -0.0143 1.6920 4.3350 -0.0134 1.6920 4.4300 -0.0125 1.6920 4.5250 -0.0116 1.6920 4.6200 -0.0108 1.6920 4.7150 -0.0099 1.6920 4.8100 -0.0092 1.6920 4.9050 -0.0085 1.6920 5.0000 -0.0078 1.7300 0.2500 15.8213 1.7300 0.3450 25.3693 1.7300 0.4400 38.3958 1.7300 0.5350 56.3373 1.7300 0.6300 82.5723 1.7300 0.7250 119.4442 1.7300 0.8200 171.0175 1.7300 0.9150 167.9506 1.7300 1.0100 117.4436 1.7300 1.1050 81.3309 1.7300 1.2000 55.8036 1.7300 1.2950 38.3306 1.7300 1.3900 25.9934 1.7300 1.4850 16.8179 1.7300 1.5800 10.2972 1.7300 1.6750 5.7480 1.7300 1.7700 2.6071 1.7300 1.8650 0.4693 1.7300 1.9600 -0.9565 1.7300 2.0550 -1.8797 1.7300 2.1500 -2.4502 1.7300 2.2450 -2.7736 1.7300 2.3400 -2.9270 1.7300 2.4350 -2.9651 1.7300 2.5300 -2.9235 1.7300 2.6250 -2.8295 1.7300 2.7200 -2.7030 1.7300 2.8150 -2.5577 1.7300 2.9100 -2.2735 1.7300 3.0050 -1.2514 1.7300 3.1000 -0.2542 1.7300 3.1950 -0.0220 1.7300 3.2900 -0.0195 1.7300 3.3850 -0.0170 1.7300 3.4800 -0.0148 1.7300 3.5750 -0.0131 1.7300 3.6700 -0.0123 1.7300 3.7650 -0.0125 1.7300 3.8600 -0.0140 1.7300 3.9550 -0.0150 1.7300 4.0500 -0.0151 1.7300 4.1450 -0.0147 1.7300 4.2400 -0.0140 1.7300 4.3350 -0.0132 1.7300 4.4300 -0.0123 1.7300 4.5250 -0.0114 1.7300 4.6200 -0.0105 1.7300 4.7150 -0.0097 1.7300 4.8100 -0.0089 1.7300 4.9050 -0.0082 1.7300 5.0000 -0.0075 1.7680 0.2500 13.9020 1.7680 0.3450 22.9204 1.7680 0.4400 35.3345 1.7680 0.5350 52.0732 1.7680 0.6300 76.5510 1.7680 0.7250 111.0488 1.7680 0.8200 159.3107 1.7680 0.9150 180.2829 1.7680 1.0100 126.2925 1.7680 1.1050 87.6723 1.7680 1.2000 60.4811 1.7680 1.2950 41.7396 1.7680 1.3900 28.3352 1.7680 1.4850 18.4239 1.7680 1.5800 11.4234 1.7680 1.6750 6.5309 1.7680 1.7700 3.1449 1.7680 1.8650 0.8326 1.7680 1.9600 -0.7170 1.7680 2.0550 -1.7275 1.7680 2.1500 -2.3590 1.7680 2.2450 -2.7245 1.7680 2.3400 -2.9066 1.7680 2.4350 -2.9643 1.7680 2.5300 -2.9361 1.7680 2.6250 -2.8508 1.7680 2.7200 -2.7295 1.7680 2.8150 -2.5870 1.7680 2.9100 -2.3893 1.7680 3.0050 -1.4872 1.7680 3.1000 -0.4037 1.7680 3.1950 -0.0219 1.7680 3.2900 -0.0194 1.7680 3.3850 -0.0169 1.7680 3.4800 -0.0146 1.7680 3.5750 -0.0128 1.7680 3.6700 -0.0118 1.7680 3.7650 -0.0118 1.7680 3.8600 -0.0131 1.7680 3.9550 -0.0144 1.7680 4.0500 -0.0146 1.7680 4.1450 -0.0143 1.7680 4.2400 -0.0137 1.7680 4.3350 -0.0129 1.7680 4.4300 -0.0120 1.7680 4.5250 -0.0111 1.7680 4.6200 -0.0102 1.7680 4.7150 -0.0094 1.7680 4.8100 -0.0086 1.7680 4.9050 -0.0079 1.7680 5.0000 -0.0072 1.8060 0.2500 12.1181 1.8060 0.3450 20.6061 1.8060 0.4400 32.4310 1.8060 0.5350 48.1513 1.8060 0.6300 70.9245 1.8060 0.7250 103.1993 1.8060 0.8200 148.3603 1.8060 0.9150 193.4620 1.8060 1.0100 135.7509 1.8060 1.1050 94.4557 1.8060 1.2000 65.4946 1.8060 1.2950 45.3575 1.8060 1.3900 30.8041 1.8060 1.4850 20.1466 1.8060 1.5800 12.6332 1.8060 1.6750 7.3736 1.8060 1.7700 3.7253 1.8060 1.8650 1.2262 1.8060 1.9600 -0.4561 1.8060 2.0550 -1.5604 1.8060 2.1500 -2.2572 1.8060 2.2450 -2.6681 1.8060 2.3400 -2.8812 1.8060 2.4350 -2.9600 1.8060 2.5300 -2.9464 1.8060 2.6250 -2.8706 1.8060 2.7200 -2.7552 1.8060 2.8150 -2.6160 1.8060 2.9100 -2.4609 1.8060 3.0050 -1.7156 1.8060 3.1000 -0.5843 1.8060 3.1950 -0.0251 1.8060 3.2900 -0.0193 1.8060 3.3850 -0.0168 1.8060 3.4800 -0.0144 1.8060 3.5750 -0.0125 1.8060 3.6700 -0.0114 1.8060 3.7650 -0.0112 1.8060 3.8600 -0.0122 1.8060 3.9550 -0.0137 1.8060 4.0500 -0.0141 1.8060 4.1450 -0.0139 1.8060 4.2400 -0.0133 1.8060 4.3350 -0.0125 1.8060 4.4300 -0.0117 1.8060 4.5250 -0.0108 1.8060 4.6200 -0.0099 1.8060 4.7150 -0.0091 1.8060 4.8100 -0.0083 1.8060 4.9050 -0.0076 1.8060 5.0000 -0.0069 1.8440 0.2500 10.4664 1.8440 0.3450 18.4249 1.8440 0.4400 29.6721 1.8440 0.5350 44.5249 1.8440 0.6300 65.6677 1.8440 0.7250 95.8610 1.8440 0.8200 138.1182 1.8440 0.9150 197.0958 1.8440 1.0100 145.8601 1.8440 1.1050 101.7421 1.8440 1.2000 70.8580 1.8440 1.2950 49.1937 1.8440 1.3900 33.4185 1.8440 1.4850 21.9942 1.8440 1.5800 13.9324 1.8440 1.6750 8.2801 1.8440 1.7700 4.3513 1.8440 1.8650 1.6522 1.8440 1.9600 -0.1722 1.8440 2.0550 -1.3771 1.8440 2.1500 -2.1441 1.8440 2.2450 -2.6038 1.8440 2.3400 -2.8505 1.8440 2.4350 -2.9520 1.8440 2.5300 -2.9543 1.8440 2.6250 -2.8888 1.8440 2.7200 -2.7798 1.8440 2.8150 -2.6444 1.8440 2.9100 -2.4944 1.8440 3.0050 -1.9277 1.8440 3.1000 -0.7900 1.8440 3.1950 -0.0612 1.8440 3.2900 -0.0192 1.8440 3.3850 -0.0167 1.8440 3.4800 -0.0143 1.8440 3.5750 -0.0123 1.8440 3.6700 -0.0109 1.8440 3.7650 -0.0105 1.8440 3.8600 -0.0113 1.8440 3.9550 -0.0129 1.8440 4.0500 -0.0135 1.8440 4.1450 -0.0134 1.8440 4.2400 -0.0129 1.8440 4.3350 -0.0122 1.8440 4.4300 -0.0113 1.8440 4.5250 -0.0105 1.8440 4.6200 -0.0096 1.8440 4.7150 -0.0088 1.8440 4.8100 -0.0080 1.8440 4.9050 -0.0072 1.8440 5.0000 -0.0065 1.8820 0.2500 8.9434 1.8820 0.3450 16.3754 1.8820 0.4400 27.0502 1.8820 0.5350 41.1455 1.8820 0.6300 60.7568 1.8820 0.7250 89.0011 1.8820 0.8200 128.5393 1.8820 0.9150 183.7325 1.8820 1.0100 156.6641 1.8820 1.1050 109.5670 1.8820 1.2000 76.5860 1.8820 1.2950 53.2599 1.8820 1.3900 36.2160 1.8820 1.4850 23.9751 1.8820 1.5800 15.3271 1.8820 1.6750 9.2550 1.8820 1.7700 5.0260 1.8820 1.8650 2.1128 1.8820 1.9600 0.1362 1.8820 2.0550 -1.1764 1.8820 2.1500 -2.0188 1.8820 2.2450 -2.5311 1.8820 2.3400 -2.8141 1.8820 2.4350 -2.9401 1.8820 2.5300 -2.9595 1.8820 2.6250 -2.9053 1.8820 2.7200 -2.8035 1.8820 2.8150 -2.6722 1.8820 2.9100 -2.5244 1.8820 3.0050 -2.1151 1.8820 3.1000 -1.0139 1.8820 3.1950 -0.1369 1.8820 3.2900 -0.0190 1.8820 3.3850 -0.0165 1.8820 3.4800 -0.0141 1.8820 3.5750 -0.0120 1.8820 3.6700 -0.0105 1.8820 3.7650 -0.0100 1.8820 3.8600 -0.0105 1.8820 3.9550 -0.0121 1.8820 4.0500 -0.0129 1.8820 4.1450 -0.0130 1.8820 4.2400 -0.0125 1.8820 4.3350 -0.0118 1.8820 4.4300 -0.0110 1.8820 4.5250 -0.0101 1.8820 4.6200 -0.0093 1.8820 4.7150 -0.0084 1.8820 4.8100 -0.0076 1.8820 4.9050 -0.0069 1.8820 5.0000 -0.0062 1.9200 0.2500 7.5454 1.9200 0.3450 14.4561 1.9200 0.4400 24.5605 1.9200 0.5350 37.9713 1.9200 0.6300 56.1751 1.9200 0.7250 82.5892 1.9200 0.8200 119.5814 1.9200 0.9150 171.2308 1.9200 1.0100 168.2102 1.9200 1.1050 117.9595 1.9200 1.2000 82.6953 1.9200 1.2950 57.5699 1.9200 1.3900 39.2119 1.9200 1.4850 26.0985 1.9200 1.5800 16.8240 1.9200 1.6750 10.3030 1.9200 1.7700 5.7530 1.9200 1.8650 2.6106 1.9200 1.9600 0.4709 1.9200 2.0550 -0.9571 1.9200 2.1500 -1.8805 1.9200 2.2450 -2.4493 1.9200 2.3400 -2.7714 1.9200 2.4350 -2.9241 1.9200 2.5300 -2.9617 1.9200 2.6250 -2.9199 1.9200 2.7200 -2.8259 1.9200 2.8150 -2.6994 1.9200 2.9100 -2.5541 1.9200 3.0050 -2.2700 1.9200 3.1000 -1.2480 1.9200 3.1950 -0.2509 1.9200 3.2900 -0.0188 1.9200 3.3850 -0.0164 1.9200 3.4800 -0.0139 1.9200 3.5750 -0.0118 1.9200 3.6700 -0.0102 1.9200 3.7650 -0.0094 1.9200 3.8600 -0.0097 1.9200 3.9550 -0.0112 1.9200 4.0500 -0.0123 1.9200 4.1450 -0.0124 1.9200 4.2400 -0.0121 1.9200 4.3350 -0.0114 1.9200 4.4300 -0.0106 1.9200 4.5250 -0.0098 1.9200 4.6200 -0.0089 1.9200 4.7150 -0.0081 1.9200 4.8100 -0.0073 1.9200 4.9050 -0.0065 1.9200 5.0000 -0.0058 1.9580 0.2500 6.2679 1.9580 0.3450 12.6651 1.9580 0.4400 22.2007 1.9580 0.5350 34.9711 1.9580 0.6300 51.9529 1.9580 0.7250 76.5967 1.9580 0.8200 111.2047 1.9580 0.9150 159.5356 1.9580 1.0100 180.5486 1.9580 1.1050 126.9498 1.9580 1.2000 89.2044 1.9580 1.2950 62.1403 1.9580 1.3900 42.4196 1.9580 1.4850 28.3742 1.9580 1.5800 18.4301 1.9580 1.6750 11.4292 1.9580 1.7700 6.5357 1.9580 1.8650 3.1481 1.9580 1.9600 0.8338 1.9580 2.0550 -0.7177 1.9580 2.1500 -1.7280 1.9580 2.2450 -2.3577 1.9580 2.3400 -2.7220 1.9580 2.4350 -2.9035 1.9580 2.5300 -2.9608 1.9580 2.6250 -2.9325 1.9580 2.7200 -2.8471 1.9580 2.8150 -2.7258 1.9580 2.9100 -2.5834 1.9580 3.0050 -2.3858 1.9580 3.1000 -1.4837 1.9580 3.1950 -0.4004 1.9580 3.2900 -0.0186 1.9580 3.3850 -0.0162 1.9580 3.4800 -0.0138 1.9580 3.5750 -0.0116 1.9580 3.6700 -0.0098 1.9580 3.7650 -0.0089 1.9580 3.8600 -0.0090 1.9580 3.9550 -0.0103 1.9580 4.0500 -0.0116 1.9580 4.1450 -0.0119 1.9580 4.2400 -0.0116 1.9580 4.3350 -0.0110 1.9580 4.4300 -0.0103 1.9580 4.5250 -0.0094 1.9580 4.6200 -0.0086 1.9580 4.7150 -0.0077 1.9580 4.8100 -0.0069 1.9580 4.9050 -0.0061 1.9580 5.0000 -0.0054 1.9960 0.2500 5.1014 1.9960 0.3450 11.0006 1.9960 0.4400 19.9692 1.9960 0.5350 32.1241 1.9960 0.6300 48.0699 1.9960 0.7250 70.9967 1.9960 0.8200 103.3724 1.9960 0.9150 148.5958 1.9960 1.0100 193.7368 1.9960 1.1050 136.5696 1.9960 1.2000 96.1342 1.9960 1.2950 66.9906 1.9960 1.3900 45.8536 1.9960 1.4850 30.8126 1.9960 1.5800 20.1529 1.9960 1.6750 12.6389 1.9960 1.7700 7.3781 1.9960 1.8650 3.7282 1.9960 1.9600 1.2270 1.9960 2.0550 -0.4569 1.9960 2.1500 -1.5605 1.9960 2.2450 -2.2556 1.9960 2.3400 -2.6654 1.9960 2.4350 -2.8780 1.9960 2.5300 -2.9565 1.9960 2.6250 -2.9427 1.9960 2.7200 -2.8669 1.9960 2.8150 -2.7514 1.9960 2.9100 -2.6123 1.9960 3.0050 -2.4573 1.9960 3.1000 -1.7121 1.9960 3.1950 -0.5809 1.9960 3.2900 -0.0218 1.9960 3.3850 -0.0161 1.9960 3.4800 -0.0136 1.9960 3.5750 -0.0114 1.9960 3.6700 -0.0095 1.9960 3.7650 -0.0084 1.9960 3.8600 -0.0083 1.9960 3.9550 -0.0094 1.9960 4.0500 -0.0109 1.9960 4.1450 -0.0114 1.9960 4.2400 -0.0112 1.9960 4.3350 -0.0106 1.9960 4.4300 -0.0099 1.9960 4.5250 -0.0091 1.9960 4.6200 -0.0082 1.9960 4.7150 -0.0074 1.9960 4.8100 -0.0066 1.9960 4.9050 -0.0058 1.9960 5.0000 -0.0051 2.0340 0.2500 4.0191 2.0340 0.3450 9.4598 2.0340 0.4400 17.8647 2.0340 0.5350 29.4177 2.0340 0.6300 44.4795 2.0340 0.7250 65.7642 2.0340 0.8200 96.0496 2.0340 0.9150 138.3631 2.0340 1.0100 197.4135 2.0340 1.1050 146.8527 2.0340 1.2000 103.5086 2.0340 1.2950 72.1494 2.0340 1.3900 49.5294 2.0340 1.4850 33.4247 2.0340 1.5800 22.0004 2.0340 1.6750 13.9379 2.0340 1.7700 8.2844 2.0340 1.8650 4.3538 2.0340 1.9600 1.6524 2.0340 2.0550 -0.1731 2.0340 2.1500 -1.3768 2.0340 2.2450 -2.1423 2.0340 2.3400 -2.6010 2.0340 2.4350 -2.8472 2.0340 2.5300 -2.9484 2.0340 2.6250 -2.9506 2.0340 2.7200 -2.8851 2.0340 2.8150 -2.7761 2.0340 2.9100 -2.6408 2.0340 3.0050 -2.4909 2.0340 3.1000 -1.9243 2.0340 3.1950 -0.7866 2.0340 3.2900 -0.0579 2.0340 3.3850 -0.0159 2.0340 3.4800 -0.0135 2.0340 3.5750 -0.0112 2.0340 3.6700 -0.0093 2.0340 3.7650 -0.0080 2.0340 3.8600 -0.0077 2.0340 3.9550 -0.0085 2.0340 4.0500 -0.0102 2.0340 4.1450 -0.0108 2.0340 4.2400 -0.0107 2.0340 4.3350 -0.0103 2.0340 4.4300 -0.0096 2.0340 4.5250 -0.0087 2.0340 4.6200 -0.0079 2.0340 4.7150 -0.0070 2.0340 4.8100 -0.0062 2.0340 4.9050 -0.0055 2.0340 5.0000 -0.0047 2.0720 0.2500 3.0130 2.0720 0.3450 8.0400 2.0720 0.4400 15.8863 2.0720 0.5350 26.8444 2.0720 0.6300 41.1334 2.0720 0.7250 60.8756 2.0720 0.8200 89.2039 2.0720 0.9150 128.7926 2.0720 1.0100 184.1311 2.0720 1.1050 157.8353 2.0720 1.2000 111.3546 2.0720 1.2950 77.6654 2.0720 1.3900 53.4636 2.0720 1.4850 36.2223 2.0720 1.5800 23.9811 2.0720 1.6750 15.3324 2.0720 1.7700 9.2590 2.0720 1.8650 5.0281 2.0720 1.9600 2.1126 2.0720 2.0550 0.1353 2.0720 2.1500 -1.1758 2.0720 2.2450 -2.0168 2.0720 2.3400 -2.5282 2.0720 2.4350 -2.8107 2.0720 2.5300 -2.9366 2.0720 2.6250 -2.9558 2.0720 2.7200 -2.9016 2.0720 2.8150 -2.7998 2.0720 2.9100 -2.6686 2.0720 3.0050 -2.5209 2.0720 3.1000 -2.1117 2.0720 3.1950 -1.0106 2.0720 3.2900 -0.1337 2.0720 3.3850 -0.0158 2.0720 3.4800 -0.0134 2.0720 3.5750 -0.0111 2.0720 3.6700 -0.0091 2.0720 3.7650 -0.0077 2.0720 3.8600 -0.0071 2.0720 3.9550 -0.0077 2.0720 4.0500 -0.0094 2.0720 4.1450 -0.0103 2.0720 4.2400 -0.0103 2.0720 4.3350 -0.0099 2.0720 4.4300 -0.0092 2.0720 4.5250 -0.0084 2.0720 4.6200 -0.0076 2.0720 4.7150 -0.0068 2.0720 4.8100 -0.0059 2.0720 4.9050 -0.0052 2.0720 5.0000 -0.0044 2.1100 0.2500 2.0782 2.1100 0.3450 6.7378 2.1100 0.4400 14.0328 2.1100 0.5350 24.3998 2.1100 0.6300 37.9899 2.1100 0.7250 56.3142 2.1100 0.8200 82.8047 2.1100 0.9150 119.8420 2.1100 1.0100 171.7435 2.1100 1.1050 169.5568 2.1100 1.2000 119.7026 2.1100 1.2950 83.5653 2.1100 1.3900 57.6738 2.1100 1.4850 39.2180 2.1100 1.5800 26.1044 2.1100 1.6750 16.8290 2.1100 1.7700 10.3066 2.1100 1.8650 5.7545 2.1100 1.9600 2.6100 2.1100 2.0550 0.4701 2.1100 2.1500 -0.9562 2.1100 2.2450 -1.8783 2.1100 2.3400 -2.4464 2.1100 2.4350 -2.7681 2.1100 2.5300 -2.9205 2.1100 2.6250 -2.9581 2.1100 2.7200 -2.9163 2.1100 2.8150 -2.8224 2.1100 2.9100 -2.6959 2.1100 3.0050 -2.5507 2.1100 3.1000 -2.2667 2.1100 3.1950 -1.2448 2.1100 3.2900 -0.2478 2.1100 3.3850 -0.0157 2.1100 3.4800 -0.0134 2.1100 3.5750 -0.0110 2.1100 3.6700 -0.0089 2.1100 3.7650 -0.0074 2.1100 3.8600 -0.0067 2.1100 3.9550 -0.0070 2.1100 4.0500 -0.0086 2.1100 4.1450 -0.0097 2.1100 4.2400 -0.0099 2.1100 4.3350 -0.0096 2.1100 4.4300 -0.0089 2.1100 4.5250 -0.0082 2.1100 4.6200 -0.0073 2.1100 4.7150 -0.0065 2.1100 4.8100 -0.0057 2.1100 4.9050 -0.0049 2.1100 5.0000 -0.0041 2.1480 0.2500 1.2101 2.1480 0.3450 5.5492 2.1480 0.4400 12.3028 2.1480 0.5350 22.0817 2.1480 0.6300 35.0182 2.1480 0.7250 52.1106 2.1480 0.8200 76.8237 2.1480 0.9150 111.4719 2.1480 1.0100 160.1901 2.1480 1.1050 182.0600 2.1480 1.2000 128.5867 2.1480 1.2950 89.8753 2.1480 1.3900 62.1787 2.1480 1.4850 42.4256 2.1480 1.5800 28.3798 2.1480 1.6750 18.4347 2.1480 1.7700 11.4322 2.1480 1.8650 6.5367 2.1480 1.9600 3.1472 2.1480 2.0550 0.8332 2.1480 2.1500 -0.7166 2.1480 2.2450 -1.7258 2.1480 2.3400 -2.3548 2.1480 2.4350 -2.7188 2.1480 2.5300 -2.9001 2.1480 2.6250 -2.9573 2.1480 2.7200 -2.9290 2.1480 2.8150 -2.8437 2.1480 2.9100 -2.7225 2.1480 3.0050 -2.5802 2.1480 3.1000 -2.3826 2.1480 3.1950 -1.4807 2.1480 3.2900 -0.3974 2.1480 3.3850 -0.0157 2.1480 3.4800 -0.0134 2.1480 3.5750 -0.0110 2.1480 3.6700 -0.0088 2.1480 3.7650 -0.0072 2.1480 3.8600 -0.0063 2.1480 3.9550 -0.0064 2.1480 4.0500 -0.0078 2.1480 4.1450 -0.0091 2.1480 4.2400 -0.0095 2.1480 4.3350 -0.0092 2.1480 4.4300 -0.0087 2.1480 4.5250 -0.0079 2.1480 4.6200 -0.0071 2.1480 4.7150 -0.0063 2.1480 4.8100 -0.0054 2.1480 4.9050 -0.0046 2.1480 5.0000 -0.0039 2.1860 0.2500 0.4045 2.1860 0.3450 4.4652 2.1860 0.4400 10.6946 2.1860 0.5350 19.8888 2.1860 0.6300 32.1976 2.1860 0.7250 48.2445 2.1860 0.8200 71.2340 2.1860 0.9150 103.6491 2.1860 1.0100 149.4128 2.1860 1.1050 195.3919 2.1860 1.2000 138.0448 2.1860 1.2950 96.6233 2.1860 1.3900 66.9987 2.1860 1.4850 45.8594 2.1860 1.5800 30.8179 2.1860 1.6750 20.1570 2.1860 1.7700 12.6414 2.1860 1.8650 7.3785 2.1860 1.9600 3.7270 2.1860 2.0550 1.2264 2.1860 2.1500 -0.4557 2.1860 2.2450 -1.5583 2.1860 2.3400 -2.2528 2.1860 2.4350 -2.6623 2.1860 2.5300 -2.8747 2.1860 2.6250 -2.9531 2.1860 2.7200 -2.9394 2.1860 2.8150 -2.8636 2.1860 2.9100 -2.7483 2.1860 3.0050 -2.6092 2.1860 3.1000 -2.4543 2.1860 3.1950 -1.7092 2.1860 3.2900 -0.5780 2.1860 3.3850 -0.0191 2.1860 3.4800 -0.0134 2.1860 3.5750 -0.0110 2.1860 3.6700 -0.0088 2.1860 3.7650 -0.0070 2.1860 3.8600 -0.0060 2.1860 3.9550 -0.0059 2.1860 4.0500 -0.0070 2.1860 4.1450 -0.0086 2.1860 4.2400 -0.0091 2.1860 4.3350 -0.0089 2.1860 4.4300 -0.0084 2.1860 4.5250 -0.0077 2.1860 4.6200 -0.0069 2.1860 4.7150 -0.0061 2.1860 4.8100 -0.0053 2.1860 4.9050 -0.0045 2.1860 5.0000 -0.0037 2.2240 0.2500 -0.3427 2.2240 0.3450 3.4594 2.2240 0.4400 9.2061 2.2240 0.5350 17.8201 2.2240 0.6300 29.5153 2.2240 0.7250 44.6695 2.2240 0.8200 66.0106 2.2240 0.9150 96.3698 2.2240 1.0100 139.3561 2.2240 1.1050 199.1566 2.2240 1.2000 148.1257 2.2240 1.2950 103.8392 2.2240 1.3900 72.1551 2.2240 1.4850 49.5350 2.2240 1.5800 33.4296 2.2240 1.6750 22.0040 2.2240 1.7700 13.9398 2.2240 1.8650 8.2841 2.2240 1.9600 4.3524 2.2240 2.0550 1.6521 2.2240 2.1500 -0.1718 2.2240 2.2450 -1.3746 2.2240 2.3400 -2.1396 2.2240 2.4350 -2.5980 2.2240 2.5300 -2.8441 2.2240 2.6250 -2.9453 2.2240 2.7200 -2.9475 2.2240 2.8150 -2.8821 2.2240 2.9100 -2.7732 2.2240 3.0050 -2.6379 2.2240 3.1000 -2.4881 2.2240 3.1950 -1.9216 2.2240 3.2900 -0.7840 2.2240 3.3850 -0.0554 2.2240 3.4800 -0.0135 2.2240 3.5750 -0.0111 2.2240 3.6700 -0.0089 2.2240 3.7650 -0.0070 2.2240 3.8600 -0.0058 2.2240 3.9550 -0.0055 2.2240 4.0500 -0.0064 2.2240 4.1450 -0.0081 2.2240 4.2400 -0.0087 2.2240 4.3350 -0.0087 2.2240 4.4300 -0.0083 2.2240 4.5250 -0.0076 2.2240 4.6200 -0.0068 2.2240 4.7150 -0.0060 2.2240 4.8100 -0.0051 2.2240 4.9050 -0.0043 2.2240 5.0000 -0.0036 2.2620 0.2500 -1.0354 2.2620 0.3450 2.5242 2.2620 0.4400 7.8347 2.2620 0.5350 15.8748 2.2620 0.6300 26.9640 2.2620 0.7250 41.3373 2.2620 0.8200 61.1302 2.2620 0.9150 89.6058 2.2620 1.0100 129.9673 2.2620 1.1050 185.8997 2.2620 1.2000 158.8988 2.2620 1.2950 111.5548 2.2620 1.3900 77.6708 2.2620 1.4850 53.4689 2.2620 1.5800 36.2267 2.2620 1.6750 23.9843 2.2620 1.7700 15.3337 2.2620 1.8650 9.2580 2.2620 1.9600 5.0265 2.2620 2.0550 2.1125 2.2620 2.1500 0.1366 2.2620 2.2450 -1.1737 2.2620 2.3400 -2.0142 2.2620 2.4350 -2.5254 2.2620 2.5300 -2.8079 2.2620 2.6250 -2.9337 2.2620 2.7200 -2.9529 2.2620 2.8150 -2.8988 2.2620 2.9100 -2.7971 2.2620 3.0050 -2.6660 2.2620 3.1000 -2.5184 2.2620 3.1950 -2.1092 2.2620 3.2900 -1.0082 2.2620 3.3850 -0.1314 2.2620 3.4800 -0.0136 2.2620 3.5750 -0.0113 2.2620 3.6700 -0.0090 2.2620 3.7650 -0.0070 2.2620 3.8600 -0.0057 2.2620 3.9550 -0.0052 2.2620 4.0500 -0.0058 2.2620 4.1450 -0.0075 2.2620 4.2400 -0.0084 2.2620 4.3350 -0.0085 2.2620 4.4300 -0.0081 2.2620 4.5250 -0.0075 2.2620 4.6200 -0.0067 2.2620 4.7150 -0.0059 2.2620 4.8100 -0.0051 2.2620 4.9050 -0.0043 2.2620 5.0000 -0.0035 2.3000 0.2500 -1.6769 2.3000 0.3450 1.6550 2.3000 0.4400 6.5773 2.3000 0.5350 14.0519 2.3000 0.6300 24.5396 2.3000 0.7250 38.2063 2.3000 0.8200 56.5761 2.3000 0.9150 83.3222 2.3000 1.0100 121.1963 2.3000 1.1050 173.4726 2.3000 1.2000 170.4134 2.3000 1.2950 119.8041 2.3000 1.3900 83.5705 2.3000 1.4850 57.6786 2.3000 1.5800 39.2220 2.3000 1.6750 26.1069 2.3000 1.7700 16.8296 2.3000 1.8650 10.3050 2.3000 1.9600 5.7528 2.3000 2.0550 2.6099 2.3000 2.1500 0.4713 2.3000 2.2450 -0.9542 2.3000 2.3400 -1.8759 2.3000 2.4350 -2.4438 2.3000 2.5300 -2.7655 2.3000 2.6250 -2.9179 2.3000 2.7200 -2.9555 2.3000 2.8150 -2.9138 2.3000 2.9100 -2.8199 2.3000 3.0050 -2.6936 2.3000 3.1000 -2.5484 2.3000 3.1950 -2.2645 2.3000 3.2900 -1.2427 2.3000 3.3850 -0.2458 2.3000 3.4800 -0.0138 2.3000 3.5750 -0.0115 2.3000 3.6700 -0.0092 2.3000 3.7650 -0.0072 2.3000 3.8600 -0.0057 2.3000 3.9550 -0.0050 2.3000 4.0500 -0.0054 2.3000 4.1450 -0.0070 2.3000 4.2400 -0.0081 2.3000 4.3350 -0.0084 2.3000 4.4300 -0.0081 2.3000 4.5250 -0.0075 2.3000 4.6200 -0.0067 2.3000 4.7150 -0.0059 2.3000 4.8100 -0.0051 2.3000 4.9050 -0.0043 2.3000 5.0000 -0.0035 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/gnuplot_2d.vsz0000664000175000017500000000105514126044351017120 0ustar00jssjss# Veusz saved document (version 1.23) # Saved at 2015-06-12T19:04:07.152029 ImportFilePlugin(u'Gnuplot 2D data import plugin', u'gnuplot_2d.dat', linked=True, name=u'name') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('contour', name='contour1', autoadd=False) To('contour1') Set('data', u'name') Set('numLevels', 4) Set('scaling', u'sqrt') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/hdf5_compound.vsz0000664000175000017500000000136414126044351017600 0ustar00jssjss# Veusz saved document (version 1.19.1) ImportFileHDF5(u'hdftest.hdf5', [u'/compound'], slices={'/compound/xval': ((None, None, -1),)}, linked=True) ImportFileHDF5(u'hdftest.hdf5', [u'/compound/text'], namemap={u'/compound/text': u'label'}, slices={u'/compound/text': ((None, None, -1),)}, linked=True) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('min', 0.0) Set('max', 2.0) To('..') Add('axis', name='y', autoadd=False) To('y') Set('min', 0.0) Set('max', 2.0) Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'xval') Set('yData', u'yval') Set('labels', u'label') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/hdf5_date.vsz0000664000175000017500000000215014126044351016663 0ustar00jssjss# Veusz saved document (version 1.19.1) # Saved at 2013-12-25T13:38:10.275226 ImportFileHDF5(u'hdftest.hdf5', [u'dategrp'], convert_datetime={u'/dategrp/numdate': 'veusz'}, linked=True) Add('page', name='page1', autoadd=False) To('page1') Add('grid', name='grid1', autoadd=False) To('grid1') Set('columns', 1) Add('axis', name='x', autoadd=False) Add('graph', name='graph1', autoadd=False) To('graph1') Set('leftMargin', '0cm') Set('rightMargin', '0cm') Set('topMargin', '0cm') Set('bottomMargin', '0cm') Add('axis', name='y', autoadd=False) To('y') Set('mode', u'datetime') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'idxdate') Set('yData', u'numdate') To('..') To('..') Add('graph', name='graph2', autoadd=False) To('graph2') Set('leftMargin', '0cm') Set('rightMargin', '0cm') Set('topMargin', '0cm') Set('bottomMargin', '0cm') Add('axis', name='y', autoadd=False) To('y') Set('mode', u'datetime') Set('direction', 'vertical') To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('xData', u'idxdate') Set('yData', u'txtdate') To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/hdf5_group.vsz0000664000175000017500000000104514126044351017104 0ustar00jssjss# Veusz saved document (version 1.19.1) # Saved at 2013-12-25T13:30:42.256782 ImportFileHDF5(u'hdftest.hdf5', [u'group'], namemap={u'/group/a': u'z'}, linked=True) Set('StyleSheet/axis/autoRange', u'exact') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'z') Set('yData', u'b') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/hdf5_nd.vsz0000664000175000017500000000217714126044351016360 0ustar00jssjss# Veusz saved document (version 1.24) # Saved at 2016-11-20T10:17:54.552211 ImportFileHDF5(u'hdftest.hdf5', [u'/nd'], linked=True) Add('page', name='page1', autoadd=False) To('page1') Add('grid', name='grid1', autoadd=False) To('grid1') Set('leftMargin', u'0.2cm') Set('bottomMargin', u'0.2cm') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'nd[0,1,:]') Set('yData', u'nd[0,2,:]') To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('xData', u'nd[1,1,:]') Set('yData', u'nd[:,2,0]') To('..') Add('xy', name='xy3', autoadd=False) To('xy3') Set('xData', u'ravel(nd[:,:,0])') Set('yData', u'ravel(nd[2:,:])') To('..') To('..') Add('graph', name='graph2', autoadd=False) To('graph2') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('image', name='image1', autoadd=False) To('image1') Set('data', u'nd[:,:,0]') Set('min', 0.0) Set('max', 70.0) To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/hdf5_text.vsz0000664000175000017500000000103614126044351016734 0ustar00jssjss# Veusz saved document (version 1.19.1) # Saved at 2013-12-25T13:35:14.985621 ImportFileHDF5(u'hdftest.hdf5', [u'text'], linked=True) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('min', 0.0) Set('max', 5.0) To('..') Add('axis', name='y', autoadd=False) To('y') Set('min', 0.0) Set('max', 5.0) Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('labels', u'text') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/hdf5_twod.vsz0000664000175000017500000000140114126044351016721 0ustar00jssjss# Veusz saved document (version 1.19.1) # Saved at 2013-12-31T09:54:51.600445 ImportFileHDF5(u'hdftest.hdf5', [u'/threed_slice_1', u'/threed_slice_2'], linked=True, slices={u'/threed_slice_2': ((None, None, None), (None, None, -1), 3)}, twodranges={u'/threed_slice_2': (0.0, 0.0, 1.0, 1.0)}) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('contour', name='contour1', autoadd=False) To('contour1') Set('data', u'threed_slice_2') To('..') Add('image', name='image1', autoadd=False) To('image1') Set('data', u'threed_slice_1') Set('colorMap', u'grey-step6') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/hdf5_twod_as_oned.vsz0000664000175000017500000000106714126044351020421 0ustar00jssjss# Veusz saved document (version 1.19.1) ImportFileHDF5('hdftest.hdf5', ['/twod_as_1d/grp/twod_as_1d_1', u'/twod_as_1d/grp/twod_as_1d_2'], twod_as_oned=set(['/twod_as_1d/grp/twod_as_1d_2']), linked=True) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'twod_as_1d_1') Set('yData', u'twod_as_1d_2') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/hdftest.hdf50000664000175000017500000004712014126044351016513 0ustar00jssjss‰HDF  ÿÿÿÿÿÿÿÿPNÿÿÿÿÿÿÿÿ`ˆ¨ˆ¨TREEÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿàXø:pHEAP°` ˆ(¨*HhTREEÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ`HEAPX ˆabc8SNOD`¨0P8x!˜# HhPDXȈ(¨* @`P@ÚºR€x!˜#  $1@Qð?d%îû%@ÒÌÂõuÉ @u溆a@§€„Š ~@´‚ý¤µ@+¢¾ä!@*ƒÿ{IJ#@‚ÀîTl&@ð?š™™™™™¹?š™™™™™¹¿@š™™™™™É?š™™™™™É¿@š™™™™™É?š™™™™™É¿ø?š™™™™™¹?š™™™™™@š™™™™™É?š™™™™™ @š™™™™™Ù?ð?@@@@@@@@@@@@ @@@ @"@$@ @"@$@&@(@ @"@$@&@(@$@&@(@*@,@(@*@,@.@0@,@.@0@1@2@0@1@2@3@4@0@1@2@3@4@2@3@4@5@6@4@5@6@7@8@6@7@8@9@:@8@9@:@;@<@8@9@:@;@<@:@;@<@=@>@<@=@>@?@@@>@?@@@€@@A@@@€@@A@€A@B@@@€@@A@€A@B@A@€A@B@€B@C@B@€B@C@€C@D@C@€C@D@€D@E@D@€D@E@€E@F@2001-01-012002-02-022003-03-03T12:12:00 ¬@µ@abcSNOD(¨¸ @°PHÚºR€  ?@4 4ÿ PÛÚºR 0 vsz_nameb (+-)@( ?@4 4ÿP HA0ÔR @ vsz_twod_as_oned  ( ?@4 4ÿ˜ 0 ÛºRh 8 ?@4 4ÿÈ è`ܺR 0 vsz_slice1,:4,:!h8 ?@4 4ÿ`èܺRXà?ð?ø?@ð?ø?@@@@@@ @@@ @@@@@@@@@@@@ @@@ @@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@ @@@ @!@"@ @!@"@#@$@@@@@ @@@ @!@"@ @!@"@#@$@"@#@$@%@&@$@%@&@'@(@ @!@"@#@$@"@#@$@%@&@$@%@&@'@(@&@'@(@)@*@(@)@*@+@,@groupnd€1d_2threed_slice_1threed_slice_2dategrptextcompoundtwod_as_1d0 ` vsz_range@TREEÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ %HEAPX ¸#txtdatenumdateidxdate8° 9zݺR 8vsz_convert_datetimeisoHSNODx'h&$ ?@4 4ÿé èܺRx@ñܺR€TREEÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ0,HEAPX È*xytext8@7ݺR€SNODˆ. +x-@1>ݺR€IIݺRˆà7X°xval  yval  text˜7HúøºR€?€?hiš™™?33³?ho33³?ÍÌÌ?silver 0vsz_slice_yval::-1`8€:TREEÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÀAø:pHEAPX :grpHSNOD0è@øp88`8€:(?HATREEÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿCø:pHEAPX(hAtwod_as_1d_1twod_as_1d_20SNOD?(?HASNODÈØ8 ?@4 4ÿPLõhXXð?@@@@@ @$@&@(@*@.@0@1@2@4@5@6@7@9@:@;@<@>@?@@@€@@€A@B@€B@C@D@€D@E@€E@€F@G@€G@H@I@€I@J@€J@€K@L@€L@M@N@€N@O@€O@@P@€P@ÀP@Q@€Q@ÀQ@R@@R@ÀR@S@@S@€S@././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/irregular_data.dat0000664000175000017500000000017714126044351017762 0ustar00jssjssxedge 1 2 4 6 7 yedge 0 2 3 6 7 1 2 3 4 2 3 4 5 3 4 5 6 2 3 4 5 xcent 1 2 4 5 ycent 2 3 5 6 1 2 3 4 4 5 6 7 6 7 8 9 7 8 9 10 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/irregular_data.vsz0000664000175000017500000000122514126044351020027 0ustar00jssjss# Veusz saved document (version 1.19.1.99) # Saved at 2014-01-11T11:18:50.693253 ImportFile2D(u'irregular_data.dat', [u'data', u'data2'], csvlocale=u'en_US', linked=True) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('contour', name='contour1', autoadd=False) To('contour1') Set('data', u'data') To('..') Add('contour', name='contour2', autoadd=False) To('contour2') Set('data', u'data2') Set('Lines/lines', [('solid', '1pt', '#ff0000', False)]) To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/label_functions.vsz0000664000175000017500000000207214126044351020212 0ustar00jssjss# Veusz saved document (version 1.25.1) # Saved at 2016-12-20T12:31:21.275724 AddCustom('constant', u'Crate', u'42.') SetDataRange(u'CumLoss', 100, (1.0, 10.0), linked=True) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('label', name='label1', autoadd=False) To('label1') Set('label', u"Loss: %{{ round(100*max(DATA('CumLoss'))/Crate, 0) }}%% vs %{{Crate}}% mAh/g") Set('xPos', [0.101]) Set('yPos', [0.44]) To('..') Add('label', name='label2', autoadd=False) To('label2') Set('label', u"Escaped text: %{{ ESCAPE(r'\\\\2 % ^ _ [] {}') }}%") Set('xPos', [0.241]) Set('yPos', [0.578]) To('..') Add('label', name='label3', autoadd=False) To('label3') Set('label', u'<<%{{ BASENAME() }}%>> is basename') Set('xPos', [0.526]) Set('yPos', [0.637]) To('..') Add('label', name='label4', autoadd=False) To('label4') Set('label', u"Page width: %{{ SETTING('/page1/width') }}%") To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/noheader.csv0000664000175000017500000000010614126044351016575 0ustar00jssjss1,hello,10:20:30 2,5,20:30:10 3,2.2, 4,2,04:20:10.1010 5,foo,10:10:10 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/noheader.vsz0000664000175000017500000000112314126044351016624 0ustar00jssjss# Veusz saved document (version 1.13) # Saved at 2011-10-29T19:22:19.911232 ImportFileCSV(u'noheader.csv', linked=True, blanksaredata=True, headermode='none', numericlocale='en_GB') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('mode', u'datetime') To('..') Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'col3') Set('yData', u'col1') Set('labels', u'col2') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/numberstotext.vsz0000664000175000017500000000171414126044351017770 0ustar00jssjss# Veusz saved document (version 1.18) # Saved at 2013-10-03T14:25:30.785711 AddImportPath(u'/home/jss/code/veusz-git/veusz/tests/selftests') DatasetPlugin('NumbersToText', {'ds_out': u'text', 'ds_in': u'x', 'format': u'%Vg'}) ImportString(u'x(numeric)',''' 1.000000e+00 2.000000e+05 2.000000e-05 ''') ImportString(u'y(numeric)',''' 1.000000e+00 2.000000e+00 3.000000e+00 ''') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('log', True) To('..') Add('axis', name='y', autoadd=False) To('y') Set('log', True) Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('labels', u'text') Set('PlotLine/hide', True) Set('Label/angle', 90.0) To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('xData', u'y') Set('yData', u'x') Set('labels', u'y') Set('PlotLine/hide', True) Set('Label/angle', 90.0) To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/polar_units.vsz0000664000175000017500000000305614126044351017405 0ustar00jssjss# Veusz saved document (version 2.2.2) # Saved at 2018-04-07T16:21:10.124292 AddImportPath(u'/home/jss/code/veusz') Set('colorTheme', 'default-latest') Add('page', name='page1', autoadd=False) To('page1') Add('grid', name='grid1', autoadd=False) To('grid1') Set('leftMargin', u'0cm') Set('rightMargin', u'0cm') Set('topMargin', u'0cm') Set('bottomMargin', u'0cm') Add('polar', name=u'frac', autoadd=False) To(u'frac') Set('units', u'fractions') Set('SpokeLine/number', 10) Add('nonorthpoint', name='nonorthpoint1', autoadd=False) To('nonorthpoint1') Set('data1', [1.0, 2.0, 3.0, 4.0, 5.0]) Set('data2', [0.2, 0.3, 0.4, 0.5, 0.8]) To('..') To('..') Add('polar', name=u'perc', autoadd=False) To(u'perc') Set('units', u'percentages') Set('SpokeLine/number', 10) Add('nonorthpoint', name='nonorthpoint1', autoadd=False) To('nonorthpoint1') Set('data1', [1.0, 2.0, 3.0, 4.0, 5.0]) Set('data2', [20.0, 40.0, 60.0, 70.0, 80.0]) To('..') To('..') Add('polar', name=u'rad', autoadd=False) To(u'rad') Set('units', u'radians') Set('SpokeLine/number', 12) Add('nonorthpoint', name='nonorthpoint1', autoadd=False) To('nonorthpoint1') Set('data1', [1.0, 2.0, 3.0, 4.0, 5.0]) Set('data2', [0.0, 1.04719733, 2.09439467, 3.141592, 4.18878933]) To('..') To('..') Add('polar', name=u'deg', autoadd=False) To(u'deg') Set('units', u'degrees') Set('direction', u'clockwise') Set('SpokeLine/number', 12) Add('nonorthpoint', name='nonorthpoint1', autoadd=False) To('nonorthpoint1') Set('data1', [1.0, 2.0, 3.0, 4.0, 5.0]) Set('data2', [30.0, 60.0, 90.0, 150.0, 210.0]) To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/qdp_1d.vsz0000664000175000017500000000155514126044351016220 0ustar00jssjss# Veusz saved document (version 1.14) # Saved at 2011-12-10T15:40:10.998898 ImportFilePlugin(u'QDP import', u'qdp_1d_2.qdp', linked=True, names=(u'a', u'b')) ImportFilePlugin(u'QDP import', u'qdp_1d_1.qdp', linked=True, names=('',)) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'vec1') Set('yData', u'vec2') To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('xData', u'vec1') Set('yData', u'vec3') To('..') Add('xy', name='xy3', autoadd=False) To('xy3') Set('xData', u'a_1') Set('yData', u'b_1') To('..') Add('xy', name='xy4', autoadd=False) To('xy4') Set('xData', u'a_2') Set('yData', u'b_2') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/qdp_1d_1.qdp0000664000175000017500000000010214126044351016365 0ustar00jssjss! example qdp file (no skipping) 1 2 3 2 6 4 no no no 5 6 8 7 2 1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/qdp_1d_2.qdp0000664000175000017500000000015214126044351016373 0ustar00jssjss! example qdp file (no skipping) skip single read serr 2 1 5 0.1 2 3 0.2 3 4 0.1 no no no 5 3 0.2 6 4 0.1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/qdp_2d.pco0000664000175000017500000000122414126044351016151 0ustar00jssjssLWIDTH 2. COL OFF 1..41 DG 1 1 1 31 41 LIne ON 1 LW 1.0 ON 1 LIne ON 2 LW 1.0 ON 2 CONT 1 LEVEL 197.9456 200.2556 204.85561 CONT 1 COLOR 1 2 3 CONT 1 LSTYL 1 1 1 CONT 1 LWID 1 1 1 XAX LIN 1.5 3.33333015E-2 YAX LIN 0.69999999 2.49999762E-2 LOC 0 0 1 1 LAB 1 POS 2.0544801 1.11201 "+" LAB 10 CS 0.75 CEN Top JUS Lef LAB 10 POS 1.52 1.6799999 "min = 1.956456e+02; Levels = 1.979456e+02 2.002556e+02 2.048556e+02" LAB F LAB T Confidence contours: Chi-Squared LAB X Parameter: kT (keV) LAB Y Parameter: Abundanc R X1 1.5 2.5 R Y1 0.69999999 1.7 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/qdp_2d.qdp0000664000175000017500000001211214126044351016152 0ustar00jssjss@qdp_2d.pco ! 40.4e1 408 412 416 420 424 427 431 434 438 441 444 448 451 454 457 460 463 466 468 471 474 476 479 481- 484 486 488 490 493 495 497 499 501 503 505 507 509 511 513 514 377 381 384 388 392 395 399 403 406 410 413 416 420 423 426 429 432 435 438 441 443 446 449 451 454 456- 459 461 463 466 468 470 472 474 476 478 480 482 484 486 488 350 354 357 361 364 368 371 375 378 382 385 389 392 395 398 401 404 407 410 413 416 419 422 424 427- 429 432 434 437 439 441 444 446 448 450 452 454 457 459 460 462 324 327 331 334 338 341 345 348 351 355 358 362 365 368 371 374 378 381 384 387 390 392 395 398 401- 403 406 408 411 413 416 418 421 423 425 427 429 432 434 436 438 300 302 306 309 312 315 318 322 325 329 332 335 338 342 345 348 351 355 358 361 364 367 370 372 375 378- 381 383 386 389 391 394 396 398 401 403 405 408 410 412 414 277 280 282 285 288 291 294 297 300 304 307 310 313 317 320 323 326 329 333 336 339 342 345 348 351 354- 357 359 362 365 368 370 373 375 378 380 383 385 388 390 392 258 259 262 264 266 269 272 275 278 281 284 287 290 293 297 300 303 306 310 313 316 319 322 325 328- 331 334 337 340 343 346 349 351 354 357 360 362 365 367 370 372 244 245 247 248 251 253 255 258 260 263 266 269 272 275 278 281 284 288 291 294 297 300 303 306 309- 312 315 319 321 324 327 330 333 336 339 341 344 347 350 352 355 234 235 236 238 239 241 243 245 247 250 252 255 258 261 263 266 269 272 275 278 281 284 287 290 293- 296 299 302 305 308 310 313 316 319 322 324 327 330 332 335 337 227 227 227 228 229 230 232 234 236 238 240 242 245 247 250 252 255 258 260 263 266 269 272 274 277- 280 283 286 288 291 294 297 300 302 305 308 310 313 315 318 321 220 220 220 220 221 221 222 224 225 227 229 231 233 235 237 239 242 244 247 249 252 254 257 260 262- 265 268 270 273 276 278 281 284 286 289 292 294 297 299 302 304 216 215 214 214 214 214 214 215 216 217 219 220 222 224 226 228 230 232 234 236 239 241 244 246 249- 251 254 256 259 261 264 266 269 271 274 276 279 281 284 286 289 213 211 210 209 209 208 208 208 209 210 211 212 213 214 216 218 219 221 223 225 227 229 231 234 236 238- 240 243 245 247 250 252 255 257 259 262 264 267 269 271 274 213 210 208 207 205 204 204 204 204 204 204 205 206 207 208 209 210 212 214 215 217 219 221 223 225 227- 229 231 233 235 237 239 242 244 246 248 251 253 255 257 260 214 211 208 206 204 203 202 201 200 200 200 200 200 201 202 202 203 204 206 207 208 210 211 213 215 217- 218 220 222 224 226 228 230 232 234 236 238 241 243 245 247 218 214 211 208 205 203 201 200 199 198 198 197 197 197 197 198 198 199 200 201 202 203 204 206 207 208- 210 212 213 215 217 218 220 222 224 226 228 230 232 234 235 224 219 215 212 209 206 204 202 200 199 198 197 196 196 195 195 196 196 196 197 198 198 199 200 201- 202 204 205 206 208 209 211 212 214 215 217 219 221 222 224 226 232 227 223 219 215 212 209 206 204 202 200 199 198 197 196 196 195 195 195 195 196 196 197 197 198 199- 200 201 202 203 204 205 207 208 209 211 212 214 215 217 218 244 238 233 228 224 220 216 213 211 208 206 204 203 201 200 199 198 198 197 197 197 197 197 197 198- 198 199 199 200 201 202 203 204 205 206 207 208 209 211 212 213 258 251 246 240 236 231 227 224 220 217 215 212 210 208 207 205 204 203 202 202 201 201 200 200 200 200- 201 201 201 202 202 203 204 205 205 206 207 208 209 211 212 274 267 261 255 250 245 241 237 233 230 226 224 221 219 217 215 213 212 211 209 209 208 207 207 206- 206 206 206 206 206 207 207 207 208 208 209 210 211 211 212 213 281 274 268 262 256 251 246 242 238 234 231 228 225 223 220 218 217 215 213 212 211 210 209 209 208 208- 207 207 207 207 207 207 208 208 208 209 209 210 211 211 212 289 282 275 269 263 258 253 248 244 240 237 233 230 227 225 223 221 219 217 216 214 213 212 211 210- 210 209 209 209 209 208 209 209 209 209 209 210 210 211 211 212 298 290 283 277 271 265 260 255 251 247 243 239 236 233 230 228 225 223 221 220 218 217 216 215 214- 213 212 212 211 211 211 210 210 210 211 211 211 211 212 212 213 307 299 292 286 279 273 268 263 258 254 250 246 243 239 236 234 231 229 227 225 223 221 220 219 218 217- 216 215 214 214 214 213 213 213 213 213 213 213 214 214 214 317 309 302 295 288 282 277 271 267 262 258 254 250 246 243 240 238 235 233 231 229 227 225 224 222 221- 220 219 219 218 217 217 217 216 216 216 216 216 216 216 216 328 320 312 305 298 292 286 281 276 271 266 262 258 254 251 248 245 242 240 237 235 233 231 230 228 227- 226 225 224 223 222 221 221 220 220 220 220 219 219 219 220 339 331 323 316 309 303 296 291 285 280 276 271 267 263 260 256 253 250 247 245 242 240 238 236 235- 233 232 231 229 228 228 227 226 225 225 224 224 224 224 224 224 352 343 335 328 321 314 308 302 296 291 286 281 277 273 269 265 262 259 256 253 251 248 246 244 242 241- 239 238 236 235 234 233 232 231 231 230 230 229 229 229 228 365 356 348 340 333 326 319 313 307 302 297 292 287 283 279 275 272 269 265 262 260 257 255 253 251 249- 247 245 244 243 241 240 239 238 237 237 236 235 235 235 234 378 369 361 353 346 339 332 326 320 314 309 304 299 294 290 286 283 279 276 273 270 267 265 262 260 258- 256 254 253 251 250 248 247 246 245 244 243 243 242 241 241 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/qdp_2d.vsz0000664000175000017500000000117314126044351016215 0ustar00jssjss# Veusz saved document (version 1.14) # Saved at 2011-12-10T15:32:18.271490 ImportFilePlugin(u'QDP import', u'qdp_2d.qdp', linked=True, names=('',)) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('autoRange', 'exact') To('..') Add('axis', name='y', autoadd=False) To('y') Set('autoRange', 'exact') Set('direction', 'vertical') To('..') Add('contour', name='contour1', autoadd=False) To('contour1') Set('data', u'vec2d1') Set('scaling', u'manual') Set('manualLevels', [197.946, 200.256, 204.856]) To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/rangeds.vsz0000664000175000017500000000173214126044351016470 0ustar00jssjss# Veusz saved document (version 1.11) # User: jss # Date: Fri, 10 Jun 2011 19:21:55 +0000 AddImportPath(u'/home/jss/code/veusz/veusz/tests/selftests') SetDataExpression(u'para', u't**2', parametric=(0.0, 1.0, 10), linked=True) SetDataRange(u'x', 10, (0.0, 10.0), linked=True) SetDataRange(u'x2', 10, (2.0, 5.0), poserr=(0.1, 0.1), negerr=(-0.1, -0.1), linked=True) SetDataExpression(u'y', u'(para**2 + x**3)/100', symerr=u'2', linked=True) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('yData', u'para') To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('marker', u'plus') Set('errorStyle', u'linevertbar') To('..') Add('xy', name='xy3', autoadd=False) To('xy3') Set('xData', u'x2') Set('errorStyle', u'fillvert') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/reverseaxis.vsz0000664000175000017500000000152314126044351017403 0ustar00jssjss# Veusz saved document (version 1.16) # Saved at 2013-01-19T16:49:34.677582 AddImportPath(u'/home/jss/code/veusz-git/veusz/tests/selftests') Add('page', name='page1', autoadd=False) To('page1') Add('grid', name='grid1', autoadd=False) To('grid1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) To('x') Set('min', 1.0) Set('max', -1.0) To('..') Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('function', name='function1', autoadd=False) To('..') Add('graph', name='graph2', autoadd=False) To('graph2') Add('axis', name='x', autoadd=False) To('x') Set('min', 10.0) Set('max', 1.0) Set('log', True) To('..') Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('function', name='function1', autoadd=False) To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/reversed_broken_axis.vsz0000664000175000017500000000331414126044351021246 0ustar00jssjss# Veusz saved document (version 1.17.1) # Saved at 2013-06-01T09:15:46.507768 AddImportPath(u'/home/jss/code/veusz-git/veusz') Set('StyleSheet/Line/width', u'0.25pt') Set('StyleSheet/Font/font', u'Simplex Enhanced') Set('StyleSheet/Font/size', u'10pt') Set('StyleSheet/grid/leftMargin', u'0.2cm') Set('StyleSheet/grid/bottomMargin', u'0.2cm') Add('page', name='page1', autoadd=False) To('page1') Set('width', u'20cm') Set('height', u'7cm') Add('grid', name='grid1', autoadd=False) To('grid1') Set('columns', 4) Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis-broken', name=u'a', autoadd=False) To(u'a') Set('min', 0.0) Set('max', 10.0) Set('breakPoints', [1.0, 3.0, 4.0, 7.0]) Set('direction', u'vertical') To('..') Add('function', name='function1', autoadd=False) To('function1') Set('function', u'x*10') Set('yAxis', u'a') To('..') To('..') Add('graph', name='graph2', autoadd=False) To('graph2') Add('axis', name='x', autoadd=False) Add('axis-broken', name=u'b', autoadd=False) To(u'b') Set('min', 10.0) Set('max', 0.0) Set('breakPoints', [1.0, 3.0, 4.0, 7.0]) Set('direction', u'vertical') To('..') Add('function', name='function2', autoadd=False) To('function2') Set('function', u'x*10') Set('yAxis', u'b') To('..') To('..') Add('graph', name='graph3', autoadd=False) To('graph3') Add('axis', name='x', autoadd=False) To('x') Set('min', 1.0) Set('max', 0.0) To('..') Add('axis-broken', name=u'c', autoadd=False) To(u'c') Set('min', 10.0) Set('max', 0.0) Set('breakPoints', [7.0, 4.0, 3.0, 1.0]) Set('direction', u'vertical') To('..') Add('function', name='function1', autoadd=False) To('function1') Set('function', u'x*10') Set('yAxis', u'c') To('..') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/sizetest.vsz0000664000175000017500000000311414126044351016713 0ustar00jssjss# Veusz saved document (version 1.12.999) # Saved at 2011-08-17T21:59:29.985354 AddImportPath(u'/home/jss/code/veusz-git/veusz/tests/selftests') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name=u'pt', autoadd=False) To(u'pt') Set('xData', [1.0, 2.1, 2.5]) Set('yData', [3.0, 2.0, 1.0]) Set('markerSize', u'5pt') Set('MarkerFill/color', u'blue') To('..') Add('xy', name=u'perc', autoadd=False) To(u'perc') Set('xData', [1.0, 2.0, 3.0]) Set('yData', [1.0, 3.0, 2.0]) Set('markerSize', u'10%') Set('MarkerFill/color', u'magenta') To('..') Add('xy', name=u'ratio', autoadd=False) To(u'ratio') Set('xData', [0.5, 1.5, 2.5]) Set('yData', [2.5, 0.8, 4.0]) Set('markerSize', u'1/20') To('..') Add('xy', name=u'frac', autoadd=False) To(u'frac') Set('xData', [1.4, 1.7, 2.5]) Set('yData', [3.2, 1.5, 3.0]) Set('markerSize', u'0.04') Set('MarkerFill/color', u'cyan') To('..') Add('xy', name=u'cm', autoadd=False) To(u'cm') Set('xData', [0.4, 1.5, 3.0]) Set('yData', [3.0, 2.5, 1.0]) Set('markerSize', u'0.5cm') Set('MarkerFill/color', u'yellow') To('..') Add('xy', name=u'mm', autoadd=False) To(u'mm') Set('xData', [1.9, 1.5, 1.7]) Set('yData', [1.3, 1.7, 1.2]) Set('markerSize', u'3mm') Set('MarkerFill/color', u'red') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', [1.9, 1.5, 1.7]) Set('yData', [1.5, 2.7, 2.2]) Set('markerSize', u'0.2in') Set('MarkerFill/color', u'#aaaaff') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/test_npy_npz.vsz0000664000175000017500000000176214126044351017604 0ustar00jssjss# Veusz saved document (version 1.13) # Saved at 2011-09-09T18:43:18.107056 ImportFilePlugin(u'Numpy NPZ import', u'testdat.npz', linked=True, errorsin2d=True) ImportFilePlugin(u'Numpy NPY import', u'testdat.npy', linked=True, errorsin2d=True, name=u'c') Set('StyleSheet/xy/marker', u'none') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'a') Set('yData', u'b') To('..') Add('xy', name='xy2', autoadd=False) To('xy2') Set('xData', u'a') Set('yData', u'c') Set('PlotLine/color', u'green') To('..') Add('xy', name='xy3', autoadd=False) To('xy3') Set('xData', u'a') Set('yData', u'd') Set('PlotLine/color', u'blue') To('..') Add('xy', name='xy4', autoadd=False) To('xy4') Set('xData', u'a') Set('yData', u'e') Set('PlotLine/color', u'cyan') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/testcontour.vsz0000664000175000017500000000436314126044351017441 0ustar00jssjss# Veusz saved document (version 0.99.0) # User: jss # Date: Fri, 21 Sep 2007 19:00:30 +0000 # A test to make sure 2d arrays are working with different dimensions # in x and y ImportString2D(u'test', ''' xrange 0.000000e+00 1.000000e+01 yrange 0.000000e+00 1.200000e+01 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 1.000000e+00 2.000000e+00 3.000000e+00 4.000000e+00 5.000000e+00 6.000000e+00 7.000000e+00 8.000000e+00 9.000000e+00 0.000000e+00 2.000000e+00 4.000000e+00 6.000000e+00 8.000000e+00 1.000000e+01 1.200000e+01 1.400000e+01 1.600000e+01 1.800000e+01 0.000000e+00 3.000000e+00 6.000000e+00 9.000000e+00 1.200000e+01 1.500000e+01 1.800000e+01 2.100000e+01 2.400000e+01 2.700000e+01 0.000000e+00 4.000000e+00 8.000000e+00 1.200000e+01 1.600000e+01 2.000000e+01 2.400000e+01 2.800000e+01 3.200000e+01 3.600000e+01 0.000000e+00 5.000000e+00 1.000000e+01 1.500000e+01 2.000000e+01 2.500000e+01 3.000000e+01 3.500000e+01 4.000000e+01 4.500000e+01 0.000000e+00 6.000000e+00 1.200000e+01 1.800000e+01 2.400000e+01 3.000000e+01 3.600000e+01 4.200000e+01 4.800000e+01 5.400000e+01 0.000000e+00 7.000000e+00 1.400000e+01 2.100000e+01 2.800000e+01 3.500000e+01 4.200000e+01 4.900000e+01 5.600000e+01 6.300000e+01 0.000000e+00 8.000000e+00 1.600000e+01 2.400000e+01 3.200000e+01 4.000000e+01 4.800000e+01 5.600000e+01 6.400000e+01 7.200000e+01 0.000000e+00 9.000000e+00 1.800000e+01 2.700000e+01 3.600000e+01 4.500000e+01 5.400000e+01 6.300000e+01 7.200000e+01 8.100000e+01 0.000000e+00 1.000000e+01 2.000000e+01 3.000000e+01 4.000000e+01 5.000000e+01 6.000000e+01 7.000000e+01 8.000000e+01 9.000000e+01 0.000000e+00 1.100000e+01 2.200000e+01 3.300000e+01 4.400000e+01 5.500000e+01 6.600000e+01 7.700000e+01 8.800000e+01 9.900000e+01 ''') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('contour', name='contour1', autoadd=False) To('contour1') Set('data', u'test') To('..') Add('image', name='image1', autoadd=False) To('image1') Set('data', u'test') Set('colorMap', u'spectrum2') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/testcsverr.csv0000664000175000017500000000034714126044351017223 0ustar00jssjss"test","test+","test-","foo","+-","foo2ððð","+","-" 1,0.1,2,3,0.3,6,0.6,-0.1 2,0.2,3,3,0.2,7,0.8,-0.3 3,0.3,4,4,0.3,4,0.2,-0.4 4,0.2,5,5,0.2,2,0.1,-0.1 ,,,"a","b","+",,"c" ,,,5,4,0.1,,9 ,,,6,4,0.3,,8 ,,,6,3,0.2,,4 ,,,5,3,0.1,,1 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/testcsverr.vsz0000664000175000017500000000267414126044351017257 0ustar00jssjss# Veusz saved document (version 1.12.99) # Saved at 2011-08-14T14:43:33.721297 AddImportPath(u'/home/jss/code/veusz-git/veusz') ImportFileCSV(u'testcsverr.csv', linked=True, blanksaredata=True) Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name=u'footest', autoadd=False) To(u'footest') Set('xData', u'foo') Set('yData', u'test') To('..') Add('xy', name=u'foo2foo', autoadd=False) To(u'foo2foo') Set('xData', u'foo2\xf0\xf0\xf0') Set('yData', u'foo') Set('marker', u'diamond') Set('MarkerFill/color', u'red') To('..') Add('xy', name=u'testplusminus', autoadd=False) To(u'testplusminus') Set('xData', u'test+') Set('yData', u'test-') Set('marker', u'lineplus') Set('MarkerFill/color', u'blue') To('..') Add('xy', name=u'testplustest', autoadd=False) To(u'testplustest') Set('xData', u'test+') Set('yData', u'test') Set('marker', u'barvert') Set('MarkerFill/color', u'cyan') To('..') Add('xy', name=u'ab', autoadd=False) To(u'ab') Set('xData', u'a') Set('yData', u'b') Set('marker', u'pentagon') Set('errorStyle', u'barends') Set('MarkerFill/color', u'darkred') To('..') Add('xy', name=u'ac', autoadd=False) To(u'ac') Set('xData', u'c') Set('yData', u'a') Set('PlotLine/steps', u'centre') Set('PlotLine/color', u'red') Set('PlotLine/width', u'1pt') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/testdat.npy0000664000175000017500000000036014126044351016475 0ustar00jssjss“NUMPYF{'descr': '@Zd;ß @ôýÔxéf$@././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/selftests/testdat.npz0000664000175000017500000000233614126044351016503 0ustar00jssjssPK[)?ÖÔ\C  a.npy“NUMPYF{'descr': '©–­õEB‹?ÛUHùIµ·?ã¯ÉõÓ?çoB!æ?D½Œb9õ?ï1%’(@ßJvl¢ @5$î±ôA@…ˆ)‘$@PK[)?1‚Ýl@@d.npy“NUMPYF{'descr': ' # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## # load all the example documents in this directory # generate an image for each example # run with veusz --unsafe-mode testallexamples.vsz import glob import os import os.path thisdir = os.path.abspath(os.path.dirname(__file__)) exampledir = os.path.join(thisdir, '..', 'examples') examples = glob.glob(os.path.join(exampledir, '*.vsz')) for filename in examples: To('/') for child in GetChildren(): Remove(child) Set('width', '15cm') Set('height', '15cm') if filename == 'testall.vsz': continue __file__ = filename execfile(filename) Export(os.path.join(thisdir, 'test_%s.png' % os.path.basename(filename))) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/tests/test_badpy_expr_link.vsz0000664000175000017500000000121414126044351017235 0ustar00jssjss# Veusz saved document (version 0.99.0) # User: jss # Date: Tue, 09 Oct 2007 11:04:05 +0000 SetDataExpression(u'y', u'x_0.5**2', linked=True) ImportString(u'x_0.5(numeric)',''' 0.000000e+00 1.000000e+00 2.000000e+00 3.000000e+00 4.000000e+00 5.000000e+00 6.000000e+00 7.000000e+00 8.000000e+00 9.000000e+00 1.000000e+01 ''') Add('page', name='page1', autoadd=False) To('page1') Add('graph', name='graph1', autoadd=False) To('graph1') Add('axis', name='x', autoadd=False) Add('axis', name='y', autoadd=False) To('y') Set('direction', 'vertical') To('..') Add('xy', name='xy1', autoadd=False) To('xy1') Set('xData', u'x_0.5') To('..') To('..') To('..') ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.2405212 veusz-3.6.2/ui/0000775000175000017500000000000014376700261011543 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/about.ui0000664000175000017500000001133414365252232013214 0ustar00jssjss AboutDialog 0 0 525 586 About Veusz 6 9 9 9 9 QFrame::StyledPanel QFrame::Raised 9 9 9 9 <html><head/><body><p><span style=" font-weight:600; color:#800080;">Veusz %(version)s</span><br/>Copyright © 2003-2023 Jeremy Sanders and contributors<br/><a href="https://veusz.github.io/"><span style=" text-decoration: underline; color:#0057ae;">https://veusz.github.io/</span></a><br/><br/>Main author:<br/>Jeremy Sanders<br/><br/>Other authors and contributors:<br/>Graham Bell<br/>James Graham<br/>Bryan Harris<br/>Dave Hughes<br/>Valerio Mussi<br/>Benjamin K. Stuhl</p><p><br/>Contains the following external code and resources: Danny Allen (icons), John D. Hunter (contouring), Nokia Corporation (MathML), Philip J. Schneider (bezier fitting)</p><p><br/>Veusz comes with ABSOLUTELY NO WARRANTY. Veusz is Free Software and you are entitled to distribute it under the terms of the GNU Public License (GPL). See the file COPYING for details, or click &quot;Show license&quot;. </p></body></html> Qt::AlignCenter true true 6 0 0 0 0 Qt::Horizontal 131 31 Show license false Software versions OK true okButton clicked() AboutDialog accept() 278 253 96 254 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/capture.ui0000664000175000017500000002036214365252232013546 0ustar00jssjss CaptureDialog 0 0 392 507 Capture data - Veusz &Datasets: descriptorEdit Enter a descriptor to describe the format of the incoming data, e.g. "x,+,- y,+-" (see the Data->Import dialog box for details) true Capture method &File or named pipe true Filename: filenameEdit 0 0 Browse for file ... false Connect to &socket Host: hostEdit Port: TCP port to connect to E&xternal program Command line: commandLineEdit Stop after Clicking fi&nish button true Number of input &lines Total &time period (s) 0 0 Update document at intervals (s) 0 0 Only retain latest N values Maximum number of values to retain QDialogButtonBox::Close HistoryCombo QComboBox
    historycombo.h
    HistoryCheck QCheckBox
    historycheck.h
    buttonBox rejected() CaptureDialog close() 195 461 180 243
    ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/capturing.ui0000664000175000017500000000400414365252232014072 0ustar00jssjss CapturingDialog 0 0 400 300 Capturing data - Veusz Reading from: %s %i bytes read in %i seconds false true Dataset Items Qt::Horizontal 40 20 &Finish &Cancel ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/custom.ui0000664000175000017500000002041114365252232013410 0ustar00jssjss CustomDialog 0 0 621 644 Custom definitions 0 Definitions Define constants and functions for use in expressions. Functions should be specified as f(x,y) to specify arguments. Functions and constants are evaluated in order. true QAbstractItemView::SingleSelection QAbstractItemView::SelectItems true Imports Add external Python functions and constants using an import. Enter a module name and list of symbols to import (comma-separated or "*" for all symbols). A blank list of symbols will import the module with its name. true QAbstractItemView::SingleSelection QAbstractItemView::SelectItems true Colors Add user-defined colors. The definition of a color is an RGB value, e.g. #102030 or another color name. true QAbstractItemView::SingleSelection QAbstractItemView::SelectItems true Colormaps Define colormaps as (C1, C2, ...) where CX is a color specified as (R,G,B) or (R,G,B,A), where R,G,B and A are integers between 0 and 255 (red, green, blue and alpha). Specify a stepped colormap using (-1,0,0,0) as the first entry. true QAbstractItemView::SingleSelection QAbstractItemView::SelectItems true Qt::Horizontal 40 20 Move up Move down &Remove Save definitions to a vsz script file Save... Load definitions from a vsz script file Load... Recent false Qt::Horizontal 40 18 Qt::Horizontal QDialogButtonBox::Close RecentFilesButton QPushButton
    recentfilesbutton.h
    buttonBox_2 accepted() CustomDialog accept() 531 620 310 321 buttonBox_2 rejected() CustomDialog reject() 531 620 310 321
    ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/datacreate.ui0000664000175000017500000002050014365252232014172 0ustar00jssjss DataCreateDialog 0 0 567 534 Create dataset - Veusz 6 0 &Name nameedit 0 0 Method of creating dataset 6 9 &Value or range 6 0 Number of steps &Parametric (as an expression of t) 6 0 t = to in steps (inclusive) &Expression using existing datasets Dataset values or expressions Enter expressions as a function of t, or leave blank Enter constant values here, leave blank if appropriate, or enter an inclusive range, e.g. 1:10 true Enter expressions as a function of other datasets. Append suffixes _data, _serr, _nerr and _perr to access different parts of datasets. If a dataset name contains punctuation or spaces, surround the name with backticks (`). true &Symmetric error symerroredit P&ositive error poserroredit Ne&gative error negerroredit V&alue valueedit &Link this dataset to these expressions true QDialogButtonBox::Close|QDialogButtonBox::Reset HistoryCombo QComboBox
    historycombo.h
    HistoryGroupBox QGroupBox
    historygroupbox.h
    1
    buttonBox rejected() DataCreateDialog close() 283 498 283 257
    ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/datacreate2d.ui0000664000175000017500000001327214365252232014430 0ustar00jssjss DataCreate2D 0 0 638 396 Create 2D dataset &Name namecombo 0 0 true Method of creating dataset From x, y and z values based on &1D datasets or expressions From expression based on existing &2D dataset(s) From &function of x and y Values Enter range of values in form min:max:step or expression &X expression or range xexprcombo 0 0 true &Y expression or range yexprcombo 0 0 true &Z expression zexprcombo 0 0 true &Link this dataset to these expressions true QDialogButtonBox::Close buttonBox rejected() DataCreate2D close() 318 383 318 199 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/dataedit.ui0000664000175000017500000001233214365252232013660 0ustar00jssjss Jeremy Sanders DataEditDialog 0 0 749 439 Dataset editor - Veusz 6 9 Qt::Horizontal false 6 0 6 0 0 0 true Linked file: None 0 0 Edit 0 0 Unlink 6 0 Qt::Horizontal 35 31 &Delete D&uplicate New false Crea&te... &Import... Qt::Horizontal QSizePolicy::Fixed 10 20 &Close closebutton clicked() DataEditDialog close() 369 253 179 282 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/errorloading.ui0000664000175000017500000000407214365252232014572 0ustar00jssjss ErrorLoadingDialog Qt::WindowModal 0 0 488 229 Error opening file icon Veusz could not open the file '%s'. The following error occured: true 75 true TextLabel true Qt::Horizontal QDialogButtonBox::Ok true buttonBox accepted() ErrorLoadingDialog accept() ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/exceptionlist.ui0000664000175000017500000000715014365252232014775 0ustar00jssjss exceptiondialog 0 0 576 431 Problem occured - Veusz erroricon A problem occured within Veusz. This means you have encountered a bug. You can help improve Veusz by sending a bug report to the developers. It doesn't take very long to submit a problem! true TextLabel true Details true Qt::Horizontal 131 31 &Send report Save report &Ignore this time Ignore in sessio&n okButton clicked() exceptiondialog accept() 278 253 96 254 cancelButton clicked() exceptiondialog reject() 369 253 179 282 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/exceptionsend.ui0000664000175000017500000000552714365252232014761 0ustar00jssjss ExceptSendDialog 0 0 469 509 Send problem - Veusz <b>Email address</b> (optional). If provided you can be notified about the bug status or to get further details. true <b>What you were doing when the problem occured</b> (optional). This is very helpful for trying to reproduce the bug. true This is what Veusz will send: true No personal details will be sent other than those listed here and the IP address. You will need an internet connection to send the error report. true QDialogButtonBox::Cancel|QDialogButtonBox::Ok buttonBox accepted() ExceptSendDialog accept() 234 487 234 254 buttonBox rejected() ExceptSendDialog reject() 234 487 234 254 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/export.ui0000664000175000017500000003665114365252232013434 0ustar00jssjss Dialog 0 0 540 680 Export Filename <html><head/><body><p>Name of file to export. When exporting multiple pages to multiple files %PAGE% is the number of the page and %PAGENAME% is the name of the page. %PAGE00% and %PAGE000% are the page numbers prefixed with zeros to make two or three characters.</p></body></html> Browse... Pages <html><head/><body><p>Export the current page</p></body></html> S&ingle <html><head/><body><p>Export all pages</p></body></html> A&ll <html><head/><body><p>Export given pages</p></body></html> P&ages 0 0 <html><head/><body><p>Enter a comma-separated list of pages or page ranges (e.g. 1-2,4,5)</p></body></html> <html><head/><body><p>Write multiple pages to the output file, if supported by the file format</p></body></html> Multiple pages per file Format Vector Single page encapsulated Postscript for embedding EPS Single page scalable vector graphics SV&G Single or multi-page PDF PDF Multi-page Postscript PS Windows embedded metafile E&MF Bitmap P&NG BMP &JPG &TIFF &XPM Options Overwrite without confirmation <html><head/><body><p>Overwrite any files with the same name without confirmation</p></body></html> Bitmap DPI <html><head/><body><p>Dots Per Inch is used to convert from the physical size of the plot to the number of pixels in output bitmaps. Increase this to make output bitmap files have more pixels.</p></body></html> true Appy antialiasing, or smoothing, to output bitmap images. This is recommended for most purposes. Antialias PDF/EPS DPI <html><head/><body><p>The number of dots per inch used for writing PDF and EPS files. As these are vector formats, this does not make much difference to the output, but larger values improve the placement of characters.</p></body></html> true SVG DPI <html><head/><body><p>The number of dots per inch used for writing SVG files. Modern inkscape uses 96.</p></body></html> true Bitmap background <html><head/><body><p>The background color for bitmap files. Use alpha channel values of 0 for transparency</p></body></html> Jpeg quality <html><head/><body><p>Choose Jpeg quality setting. Lower values give poorer quality results and are more compressed, but have smaller file sizes.</p></body></html> 0 100 85 Color <html><head/><body><p>Output Postscript or PDF as full color, or convert to greyscale</p></body></html> Color Greyscale Editable text in SVG <html><head/><body><p>Exports text in SVG files as text, rather than curves. Curves mean that the file will display the same on any system, but text can be edited easily in other programs.</p></body></html> Qt::Vertical 20 40 label Qt::Horizontal QDialogButtonBox::Close|QDialogButtonBox::Save buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/filter.ui0000664000175000017500000001461214365252232013371 0ustar00jssjss FilterDialog 0 0 468 528 Filter data Filtering Filter &expression exprcombo 0 0 <html><head/><body><p>Expression to filter datasets, e.g. ((x&lt;3) | (x&gt;10)) &amp; (y&gt;2)</p></body></html> true &Invert filter invertcheck <html><head/><body><p>Logical not of filter expression</p></body></html> &Replace filtered replaceblankscheck <html><head/><body><p>Do not remove filtered values, but replace with blanks or NaN (not a number) values</p></body></html> Output &prefix prefixcombo 0 0 <html><head/><body><p>Prefix to prepend to each output dataset name</p></body></html> true Output &suffix suffixcombo 0 0 <html><head/><body><p>Suffix to add to each output dataset name</p></body></html> true Datasets to filter Qt::Horizontal QDialogButtonBox::Apply|QDialogButtonBox::Close|QDialogButtonBox::Reset HistoryCombo QComboBox
    historycombo.h
    HistoryCheck QCheckBox
    historycheck.h
    buttonBox accepted() FilterDialog accept() 248 254 157 274 buttonBox rejected() FilterDialog reject() 316 260 286 274
    ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/histodata.ui0000664000175000017500000002305514365252232014065 0ustar00jssjss HistogramDialog 0 0 472 558 Histogram data Count data values in bins to calculate a histogram Datasets &Input dataset expression indataset true &Output bin height dataset name outdataset Output &bin position dataset name outbins Automatic bin parameters &Number of bins numbins 1 999999 10 &Minimum value minval Minimum value of lowest value bin or "Auto" to get from dataset Ma&ximum value maxval Maximum value of highest value bin or " Auto" to get from dataset &Logarithmic Manual bin boundaries Add Remove Generate bin boundaries from parameters Generate Calculate Count number of items in bin &Counts true Compute probability density in bins &Density Compute fraction of items in bin &Fractions Cumulative Not cumulative true Small to large Large to small Compute error bars (Gehrels Poisson approximation) Qt::Horizontal QDialogButtonBox::Apply|QDialogButtonBox::Close|QDialogButtonBox::Reset HistoryCombo QComboBox
    historycombo.h
    HistoryGroupBox QGroupBox
    historygroupbox.h
    1
    HistoryCheck QCheckBox
    historycheck.h
    buttonBox accepted() HistogramDialog accept() 248 254 157 274 buttonBox rejected() HistogramDialog reject() 316 260 286 274
    ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/import.ui0000664000175000017500000001540514365252232013417 0ustar00jssjss importdialog 0 0 645 640 Import data - Veusz 6 0 &Filename filenameedit Enter the filename to be imported here &Browse... Read in data from clipboard rather than file -1 General options 0 0 Data imported are not stored in the Veusz saved file, but are reloaded each time the Veusz file is opened, or Data-&gt;Reload is selected on the menu &Link datasets to file true &Prefix prefixcombo 0 0 Prefix to prepend to each dataset name imported, or enter $FILENAME to have filename prepended true Character encoding Character encoding of input file Suffi&x suffixcombo 0 0 Suffix to append to each dataset name imported, or enter $FILENAME to have filename appended true Tag Enter a list of tags to apply to the imported datasets true QDialogButtonBox::Close|QDialogButtonBox::Reset qPixmapFromMimeSource HistoryCombo QComboBox
    historycombo.h
    HistoryCheck QCheckBox
    historycheck.h
    HistoryValueCombo QComboBox
    historyvaluecombo.h
    buttonBox rejected() importdialog close() 322 623 322 319
    ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/import_2d.ui0000664000175000017500000002121514365252232014000 0ustar00jssjss tab2d 0 0 623 646 File preview: QTextEdit::NoWrap true Options true Invert &rows true CSV text delimeter <html><head/><body><p>Use text mode, with space-separated values or CSV mode. When using CSV mode, the delimiters and numeric locale are given below.</p></body></html> Invert &columns Mode Transpose rows and columns Trans&pose CSV delimeter CSV locale Numerical format of numbers in file: System - what this computer is set to use English - format 123,456.78 European - format 123.456,78 X, Y Ranges The centres of the pixels are given in the top row and the left column Grid points at edges Range of X: twod_xminedit Enter a number for the minimum coordinate of the X axis (default 0) to Enter a value for a maximum coordinate of the X axis (default is number of columns in file) Range of Y: twod_yminedit Enter a number for the minimum coordinate of the Y axis (default 0) to Enter a number for the maximum coordinate of the Y axis (default number of rows in file) Qt::Vertical 20 40 Datasets: A space separated list of dataset names to import from the file HistoryCombo QComboBox
    historycombo.h
    HistoryCheck QCheckBox
    historycheck.h
    HistoryValueCombo QComboBox
    historyvaluecombo.h
    ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/import_csv.ui0000664000175000017500000001701114365252232014265 0ustar00jssjss csvtab 0 0 548 491 File preview: QAbstractItemView::NoEditTriggers false Behaviour Header mode 'Multiple': allow multiple headers in file 'Single': 1st non-blank row is header 'None': no headers, guess data types &Direction csvdirectioncombo Are the data arranged in columns or rows? Ignore rows at top Ignore N row at the top of the file. If data are arranged in rows, ignores columns instead. Ignore rows after headers After reading a header, ignore N rows in that column. If Direction is set to Rows, ignore N columns instead. Treat blanks as data values Help on how CSV files should be formatted Help Locale Numerics Numerical format of numbers in file: System - what this computer is set to use English - format 123,456.78 European - format 123.456,78 Dates Format for dates and times in file. This will be combination of YYYY, YY, MM, M, DD, D, hh, h, mm, m, ss and s separated by | true Delimiters Column Delimiter between fields. This is usually a comma. true Skip initial white space Text Character to delimit text, usually a quote ("). true HistoryCombo QComboBox
    historycombo.h
    HistoryCheck QCheckBox
    historycheck.h
    HistorySpinBox QSpinBox
    historyspinbox.h
    HistoryValueCombo QComboBox
    historyvaluecombo.h
    ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/import_fits.ui0000664000175000017500000000756514365252232014454 0ustar00jssjss Form 0 0 773 524 Form 2D options Import as 1D dataset with error bars Image WCS mode Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Linear (WCS) Pixel (simple) Pixel (WCS) Fractional Range: x = → y = → ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/import_hdf5.ui0000664000175000017500000001162014365252232014320 0ustar00jssjss Form 0 0 596 447 Form Text options Import as date/time <html><head/><body><p>If you want to treat this dataset as date/times, choose a text format for this.</p></body></html> true 1D options Import as date/time No Veusz format (seconds since start of 2009) Unix format (seconds since start of 1970) 2D options Import as 1D dataset with error bars Range: Qt::Horizontal 40 20 x = → Qt::Horizontal 40 20 y = → ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/import_nd.ui0000664000175000017500000002125714365252232014102 0ustar00jssjss tabnd 0 0 623 646 File preview: QTextEdit::NoWrap true Options Shape <html><head/><body><p>List of numerical entries (separated by space or comma), giving the dimensions of each axis. Use -1 to automatically detect axis length (only one axis can be -1). Auto means autodetect shape, based on number of blank lines.</p></body></html> Numerical format of numbers in file: System - what this computer is set to use English - format 123,456.78 European - format 123.456,78 CSV text delimeter <html><head/><body><p>Use text mode, with space-separated values or CSV mode. When using CSV mode, the delimiters and numeric locale are given below.</p></body></html> Mode CSV delimeter CSV locale true true <html><head/><body><p>Transpose dimensions. Normally data are in 'C' order, with last axis changing fastest. Setting this will change to 'Fortran' order, with 1st axis changing fastest.</p></body></html> Trans&pose true <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Oxygen-Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">File should consist of either:</p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">1. A set of numbers, in free-form style, and the shape specified above or using the command &quot;shape A B C...&quot; in the file. Shapes should be positive integers, though one dimension can be -1 to automatically detect the length.</p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">2. A set of numbers arranged in rows and columns. 1D datasets are on a single row, 2D datasets are a set of 1D rows, 3D as a set of 2D datasets separated by blank rows, 4D as a set of 3D datasets separated by two blank rows, etc.</p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Data are ordered in C format, with the rightmost index increasing most rapidly. The transpose option can be used to change the option. This can also be included in the file with a single row containing &quot;transpose&quot;.</p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p></body></html> Qt::Vertical 20 40 Dataset: <html><head/><body><p>Dataset name to import</p></body></html> HistoryCombo QComboBox
    historycombo.h
    HistoryCheck QCheckBox
    historycheck.h
    HistoryValueCombo QComboBox
    historyvaluecombo.h
    ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/import_plugins.ui0000664000175000017500000000323514365252232015156 0ustar00jssjss plugintab 0 0 282 346 Plugin: Description goes here true Preview true Parameters ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/import_standard.ui0000664000175000017500000000674314365252232015304 0ustar00jssjss standardtab 0 0 265 277 File preview: QTextEdit::NoWrap true 6 0 Dataset &names descriptoredit The import descriptor, consisting of the dataset names used during import, e.g. "x y" or "a[:]" Help 0 0 <html><head/><body><p>Ignores lines consisting of text when importing the data. This option only works if a list of datasets is given.</p></body></html> I&gnore text lines true 0 0 If this is selected, blank lines or the word "no" are used to separate the file into blocks. An underscore followed by the block number is added to the dataset names Read data in bloc&ks HistoryCombo QComboBox
    historycombo.h
    HistoryCheck QCheckBox
    historycheck.h
    ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/importhelp.ui0000664000175000017500000002671114365252232014272 0ustar00jssjss ImportHelpDialog 0 0 581 368 Import data help true <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Arial'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:10pt;">Veusz assumes that data are stored as columns in a text file separated by tabs or spaces. Names should be entered for the datasets read from each column, separated by spaces or commas (in the dataset names or descriptor box). If you leave the descriptor blank, automatic dataset names will be used (prefix + column + suffix, or &quot;colX&quot; if the prefix and suffix are blank).</span></p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:10pt;"></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:10pt;">If you want to supply errors or uncertainties on the data, these can be given in the columns following the dataset column (one column for symmetric errors or two for asymmetric errors). To tell Veusz that a dataset has errors, add &quot;</span><span style=" font-family:'Courier New,courier'; font-size:10pt;">+-</span><span style=" font-size:10pt;">&quot; or &quot;</span><span style=" font-family:'Courier New,courier'; font-size:10pt;">+,-</span><span style=" font-size:10pt;">&quot; to the dataset name to specify symmetric or asymmetric errors, respectively.</span></p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:10pt;"></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:10pt;">Commas or spaces separate the dataset name and the error bars. They are interchangable, except multiple commas will skip an input columns. </span></p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:10pt;"></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:10pt; font-weight:600;">Examples</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:10pt;">x y</span><span style=" font-size:10pt;"> x and y with no errors (2 columns for 2 datasets)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:10pt;">x,+-</span><span style=" font-size:10pt;"> x with symmetric errors (2 columns for single dataset)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:10pt;">y + -</span><span style=" font-size:10pt;"> y with asymmetric errors (3 columns for dataset)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:10pt;">x[1:5]+,-</span><span style=" font-size:10pt;"> x_1 to x_5, each with asymmetric errors (15 columns in total)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:10pt;">x y +-</span><span style=" font-size:10pt;"> x with no errors, y with symmetric errors (3 columns in total)</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Courier New,courier'; font-size:10pt;">,x,y,-,+</span><span style=" font-size:10pt;"> skip first column, x with no errors, y followed by negative then postive error bars</span></p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:10pt;"></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:10pt; font-weight:600;">Data types</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:10pt;">A file can contain different types of data. This type is specified immediately after the dataset name in round brackets, e.g. &quot;x(float)&quot;, &quot;labels(text)&quot; or &quot;y(float),+-&quot;.</span></p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:10pt;"></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:10pt;">Only numerical (use float, number or numeric) and text (using text or string) data are supported. If a text column has spaces it should be surrounded by quotation marks.</span></p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:10pt; font-weight:600;"></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:10pt; font-weight:600;">Comments</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:10pt;">If any of the &quot;</span><span style=" font-family:'Courier New,courier'; font-size:10pt;">#</span><span style=" font-size:10pt;">&quot;, &quot;</span><span style=" font-family:'Courier New,courier'; font-size:10pt;">!</span><span style=" font-size:10pt;">&quot;, &quot;</span><span style=" font-family:'Courier New,courier'; font-size:10pt;">;</span><span style=" font-size:10pt;">&quot; or &quot;</span><span style=" font-family:'Courier New,courier'; font-size:10pt;">%</span><span style=" font-size:10pt;">&quot; characters are found without being inside quotation marks, the rest of a line is ignored. Use these characters to add comments to a file.</span></p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:10pt; font-weight:600;"></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:10pt; font-weight:600;">Further notes</span></p> <ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li style=" font-size:10pt;" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Extra tabs or spaces between columns are ignored</li> <li style=" font-size:10pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Extra data at the end of a line are ignored</li> <li style=" font-size:10pt;" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The text <span style=" font-family:'Courier New,courier';">nan</span> or <span style=" font-family:'Courier New,courier';">inf</span> translates to the usual numerical values. These values aren't plotted in a plot, giving a break in the line.</li> <li style=" font-size:10pt;" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">You can encode the descriptor describing the data in the file itself with a line <span style=" font-family:'Courier New,courier';">descriptor XXX</span> before the data. Leave the descriptor blank in the import dialog if you do this. Multiple descriptors can be placed in the file to store multiple sets of data. </li></ol> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:10pt; font-weight:600;"></p></body></html> Qt::Horizontal QDialogButtonBox::Close buttonBox clicked(QAbstractButton*) ImportHelpDialog close() 248 254 157 274 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/importhelpcsv.ui0000664000175000017500000001001614365252232014775 0ustar00jssjss ImportCSVHelpDialog 0 0 457 400 CSV import help true <html><head/><body><p><span style=" font-size:xx-large; font-weight:600;">CSV (Comma Separated Value)</span></p><p>CSV files are often used to export data from applications such as Excel and OpenOffice.</p><p><span style=" font-size:x-large; font-weight:600;">Headers</span></p><p>Place a dataset name at the top of each column. To import error bars, columns with the names "+", "-" or "+-" should be given in columns immediately to the right of the dataset, for positive, negative or symmetric errors, respectively.</p><p>In the standard Multiple header mode, multiple datasets can be placed below each other if new names are given. If your data only consist of a single header, you can choose the Single header mode, which will prevent Veusz from starting new datasets if it sees text. If your data have no header, choose None and your columns will be named automatically.</p><p>Veusz can also read data organised in rows rather than columns (choose the rows option under Directions). Veusz can also ignore the specified number of lines in columns which follow header items.</p><p><span style=" font-size:x-large; font-weight:600;">Data types</span></p><p>Veusz will try to guss the data type (numeric, text or date) depending on what values it sees. You can override this by putting the datatype name in brackets in the column header. If you want to read in text use (text) after the name of the dataset in the top column, e.g. "name (text)". Date-times can have " (date)" after the column name. Veusz uses ISO dates by default YYYY-MM-DDThh:mm:ss, but this can be changed.</p><p><span style=" font-size:x-large; font-weight:600;">Options</span></p><p>There are several variants of CSV files used. You may wish to change the delimiter to be a tab (TSV) or space. Your file may also use European or English numerical values e.g. (1,23 or 1.23), so you may wish to override your computer's default format.</p><p>There are many different date and time formats. You can enter your own format in the box given [a combination of YYYY (or YY), MM (or M), DD (or D), HH, MM and SS].</p><p>The "Treat blanks as data values" option will insert NaN values or empty strings into datasets, if blank data values are encountered.</p><p>If you are using non-ASCII characters in your text you need to encode the text in your file with a Unicode encoding (e.g. UTF-8) and choose the correct encoding in the encoding drop down box. </p></body></html> Qt::Horizontal QDialogButtonBox::Close buttonBox clicked(QAbstractButton*) ImportCSVHelpDialog close() 248 254 157 274 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/license.ui0000664000175000017500000000425514365252232013530 0ustar00jssjss LicenseDialog 0 0 609 373 License - Veusz 9 6 Veusz license 9 6 QTextEdit::NoWrap true 0 6 Qt::Horizontal 131 31 OK okButton clicked() LicenseDialog accept() 542 347 294 186 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/plugin.ui0000664000175000017500000000327314365252232013403 0ustar00jssjss WorkerPluginDialog Dialog 0 0 TextLabel Options Qt::Horizontal QDialogButtonBox::Apply|QDialogButtonBox::Close|QDialogButtonBox::Reset buttonBox rejected() WorkerPluginDialog close() 316 260 286 274 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/preferences.ui0000664000175000017500000004776214365252232014421 0ustar00jssjss PrefsDialog 0 0 763 389 Preferences 0 View Use antialiasing to smooth jagged edges Antialiasing Please restart Veusz after changing this option Override system locale settings to show Veusz in US/English Update interval How often Veusz will update the plot if it has changed Toolbar icon size 8 16 24 32 48 64 Number of drawing threads Maximum number of parallel threads to use for drawing plots. Set to 0 to disable threads. 16 Translation <html><head/><body><p>Load an externally-provided translation file on startup</p></body></html> Browse... File Document default directory Previous session Current working directory <html><head/><body><p>If set, the document location is recorded when saved, so linked data can be loaded using relative paths later if the document is moved.</p></body></html> Add import paths Export filename templates Multiple files <html><head/><body><p>Template filename when exorting to multiple files. This can include %DOCNAME% for the document name, %PAGENAME% for the page name and %PAGE% for the page number. %PAGE00% and %PAGE000% force two and three-character page numbers. An extension is automatically added.</p></body></html> <html><head/><body><p>Template filename when written to a single file. This can include %DOCNAME% for the document name. A filename extension is automatically added.</p></body></html> Single file Export default directory Document director&y Previous session Curren&t working directory New documents 0 0 Default stylesheet and custom definition files to load in new documents true Stylesheet A stylesheet file name specified here will be automatically loaded when creating a new document. Leave blank for no stylesheet to be loaded. Browse... Custom definitons A custom definiton file name specified here will be automatically loaded when creating a new document. Leave blank for no file to be loaded. Browse... Colors Document color theme Default Colors used by the Veusz user interface Picker Print picked points to internal console Copy picked points to clipboard Number of significant figures to show 1 20 Plugins Qt::Horizontal 40 20 Add... Add entries here to load Veusz import plugins. Entries should consist of a Python file to load. true 0 0 Remove External Python path <html><head/><body><p>Enter a colon-separated list of directories to be added to the beginning of the Python path. This can be used to find Python modules located in non-default locations. Changing this setting requires a restart.</p></body></html> Ghostscript location <html><head/><body><p>Location of the Ghostscript executable. Used for creating EPS files. On Linux/Unix the PATH will be searched if this is not set. Requires a restart after changing.</p></body></html> Browse... Disable new version checks Disable sending automatic feedback Security Trust contents of documents in these directories or folders. Documents stored here or in subdirectories will be able to contain arbitrary Python code without warnings. true Add... false Remove Qt::Horizontal 40 20 QDialogButtonBox::Cancel|QDialogButtonBox::Ok buttonBox accepted() PrefsDialog accept() 169 236 169 126 buttonBox rejected() PrefsDialog reject() 169 236 169 126 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/reloaddata.ui0000664000175000017500000000613214365252232014202 0ustar00jssjss ReloadDialog 0 0 587 381 Reload data - Veusz Results of reload data Qt::Horizontal 0 0 Reload if files change every false s 1 99999 5 Sans Serif 9 50 false false false false QTextEdit::NoWrap true QDialogButtonBox::Close buttonBox rejected() ReloadDialog close() 20 20 20 20 intervalCheck toggled(bool) intervalTime setEnabled(bool) 20 20 20 20 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/softwareversions.ui0000664000175000017500000000302314365252232015521 0ustar00jssjss Dialog 0 0 541 344 Software versions true Qt::Horizontal QDialogButtonBox::Ok buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674925210.0 veusz-3.6.2/ui/stylesheet.ui0000664000175000017500000001227614365252232014301 0ustar00jssjss StylesheetDialog 0 0 489 526 Default styles - Veusz 1 0 2 0 Qt::Vertical 0 0 &Properties true 0 0 195 301 0 0 &Formatting Save definitions to a vsz script file Save... false Load definitions from a vsz script file Load... false Recent false Qt::Horizontal 40 20 Qt::Horizontal QDialogButtonBox::Close RecentFilesButton QPushButton
    recentfilesbutton.h
    buttonBox accepted() StylesheetDialog accept() 248 254 157 274 buttonBox rejected() StylesheetDialog reject() 316 260 286 274
    ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.2405212 veusz-3.6.2/veusz/0000775000175000017500000000000014376700261012302 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/veusz/__init__.py0000664000175000017500000000165414126044351014413 0ustar00jssjss# Copyright (C) 2008 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Main veusz module.""" ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.2445211 veusz-3.6.2/veusz/dataimport/0000775000175000017500000000000014376700261014446 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/veusz/dataimport/__init__.py0000664000175000017500000000232214126044351016550 0ustar00jssjss# Copyright (C) 2013 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### # hooks to allow different datatypes to be imported from . import defn_standard, dialog_standard from . import defn_csv, dialog_csv from . import defn_twod, dialog_twod from . import defn_nd, dialog_nd from . import defn_hdf5, dialog_hdf5 from . import dialog_fits, defn_fits from . import defn_plugin, dialog_plugin ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/base.py0000664000175000017500000002375214332253347015743 0ustar00jssjss# Copyright (C) 2011 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Parameters for import routines.""" import sys import copy from .. import utils class ImportingError(RuntimeError): """Common error when import fails.""" class ImportParamsBase: """Import parameters for the various imports. Parameters: filename: filename to import from linked: whether to link to file encoding: encoding for file prefix: prefix for output dataset names suffix: suffix for output dataset names tags: list of tags to apply to output datasets renames: dict map of names to renamed datasets """ defaults = { 'filename': None, 'linked': False, 'encoding': 'utf_8', 'prefix': '', 'suffix': '', 'tags': None, 'renames': None, } def __init__(self, **argsv): """Initialise the reader to import data from filename. """ # set defaults for k, v in self.defaults.items(): setattr(self, k, v) # set parameters for k, v in argsv.items(): if k not in self.defaults: raise ValueError("Invalid parameter %s" % k) setattr(self, k, v) # extra parameters to copy besides defaults self._extras = [] def copy(self): """Make a copy of the parameters object.""" newp = {} for k in list(self.defaults.keys()) + self._extras: newp[k] = getattr(self, k) return self.__class__(**newp) class LinkedFileBase: """A base class for linked files containing common routines.""" def __init__(self, params): """Save parameters.""" self.params = params def createOperation(self): """Return operation to recreate self.""" return None @property def filename(self): """Get filename.""" return self.params.filename def _saveHelper(self, fileobj, cmd, fixedparams, renameparams={}, relpath=None, extraargs={}): """Helper to write command to reload data. fileobj: file object to write to cmd: name of command to write fixedparams: list of parameters to list at start of command lines renameparams: optional map of params to command line params relpath: relative path for writing filename extraargs: other options to add to command line """ p = self.params args = [] # arguments without names at command start for par in fixedparams: if par == 'filename': v = self._getSaveFilename(relpath) else: v = getattr(p, par) args.append(utils.rrepr(v)) # parameters key, values to put in command line plist = sorted( [(par, getattr(p, par)) for par in p.defaults] + list(extraargs.items()) ) for par, val in plist: if ( val and (par not in p.defaults or p.defaults[par] != val) and par not in fixedparams and par != 'tags' ): if par in renameparams: par = renameparams[par] args.append('%s=%s' % (par, utils.rrepr(val))) # write command using comma-separated list fileobj.write('%s(%s)\n' % (cmd, ', '.join(args))) def saveToFile(self, fileobj, relpath=None): """Save the link to the document file.""" pass def _getSaveFilename(self, relpath): """Get filename to write to save file. If relpath is a string, write relative to path given """ if relpath: f = utils.relpath(self.params.filename, relpath) else: f = self.filename # Here we convert backslashes in Windows to forward slashes # This is compatible, but also works on Unix/Mac if sys.platform == 'win32': f = f.replace('\\', '/') return f def _deleteLinkedDatasets(self, document): """Delete linked datasets from document linking to self. Returns tags for deleted datasets. """ tags = {} for name, ds in list(document.data.items()): if ds.linked == self: tags[name] = document.data[name].tags document.deleteData(name) return tags def _moveReadDatasets(self, tempdoc, document, tags): """Move datasets from tempdoc to document if they do not exist in the destination. tags is a dict of tags for each dataset """ read = [] for name, ds in list(tempdoc.data.items()): if name not in document.data: ds.linked = self if name in tags: ds.tags = tags[name] document.setData(name, ds) read.append(name) return read def reloadLinks(self, document): """Reload links using an operation""" # get the operation for reloading op = self.createOperation()(self.params) # load data into a temporary document tempdoc = document.__class__() try: tempdoc.applyOperation(op) except Exception as ex: # if something breaks, record an error and return nothing document.log(str(ex)) # find datasets which are linked using this link object # return errors for them errors = dict( [(name, 1) for name, ds in document.data.items() if ds.linked is self]) return ([], errors) # delete datasets which are linked and imported here tags = self._deleteLinkedDatasets(document) # move datasets into document read = self._moveReadDatasets(tempdoc, document, tags) # return errors (if any) errors = op.outinvalids return (read, errors) class OperationDataImportBase: """Default useful import class.""" def __init__(self, params): self.params = params def doImport(self, document): """Do import, override this. Set outdatasets """ def addCustoms(self, document, customs): """Optionally, add the customs return by plugins to document.""" type_attrs = { 'import': 'def_imports', 'color': 'def_colors', 'colormap': 'def_colormaps', 'constant': 'def_definitions', 'function': 'def_definitions', 'definition': 'def_definitions', } if len(customs) > 0: doceval = document.evaluate self.oldcustoms = [ copy.deepcopy(doceval.def_imports), copy.deepcopy(doceval.def_definitions), copy.deepcopy(doceval.def_colors), copy.deepcopy(doceval.def_colormaps)] # FIXME: inefficient for large number of definitions for item in customs: ctype, name, val = item clist = getattr(doceval, type_attrs[ctype]) for idx, (cname, cval) in enumerate(clist): if cname == name: clist[idx][1] = val break else: clist.append([name, val]) doceval.update() def do(self, document): """Do import.""" # list of returned dataset names self.outnames = [] # map of names to datasets self.outdatasets = {} # list of returned custom variables self.outcustoms = [] # invalid conversions self.outinvalids = {} # remember datasets in document for undo self.oldcustoms = None # do actual import retn = self.doImport() # these are custom values returned from the plugin if self.outcustoms: self.addCustoms(document, self.outcustoms) # handle tagging/renaming for name, ds in list(self.outdatasets.items()): if self.params.tags: ds.tags.update(self.params.tags) if self.params.renames and name in self.params.renames: del self.outdatasets[name] self.outdatasets[self.params.renames[name]] = ds # only remember the parts we need self.olddatasets = [ (n, document.data.get(n)) for n in self.outdatasets ] self.olddatasets = [] for name, ds in self.outdatasets.items(): self.olddatasets.append( (name, document.data.get(name)) ) document.setData(name, ds) self.outnames = sorted(self.outdatasets) return retn def undo(self, document): """Undo import.""" # put back old datasets for name, ds in self.olddatasets: if ds is None: document.deleteData(name) else: document.setData(name, ds) # for custom definitions if self.oldcustoms is not None: doceval = document.evaluate doceval.def_imports = self.oldcustoms[0] doceval.def_definitions = self.oldcustoms[1] doceval.def_colors = self.oldcustoms[2] doceval.def_colormaps = self.oldcustoms[3] doceval.update() ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1676190322.0 veusz-3.6.2/veusz/dataimport/capture.py0000664000175000017500000002106614372121162016461 0ustar00jssjss# Copyright (C) 2009 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## import select import subprocess import os import socket import platform import signal from .. import qtall as qt from .. import utils from . import simpleread def _(text, disambiguation=None, context="Capture"): return qt.QCoreApplication.translate(context, text, disambiguation) class CaptureFinishException(Exception): """An exception to say when a stream has been finished.""" class CaptureStream(simpleread.Stream): """A special stream for capturing data.""" def __init__(self): """Initialise the stream.""" simpleread.Stream.__init__(self) self.buffer = '' self.continuousreads = 0 self.bytesread = 0 self.linesread = 0 self.maxlines = None self.timedout = False def _setTimeout(self, timeout): """Setter for setting timeout property.""" if timeout: self.timer = qt.QTimer.singleShot( timeout*1000, self._timedOut) timeout = property( None, _setTimeout, None, "Time interval to stop in (seconds) or None") def _timedOut(self): self.timedout = True def getMoreData(self): """Override this to return more data from the source without blocking.""" return '' def readLine(self): """Return a new line of data. Either returns new line or Raises StopIteration if there is no data, or more than 100 lines have been read.""" while True: # we've reached the limit of lines or a timeout has occurred if self.linesread == self.maxlines: raise CaptureFinishException("Maximum number of lines read") if self.timedout: raise CaptureFinishException("Maximum time period occurred") # stop reading continous data greater than this many lines if self.continuousreads == 100: self.continuousreads = 0 raise StopIteration index = self.buffer.find('\n') if index >= 0: # is there a line in the buffer? retn = self.buffer[:index] self.buffer = self.buffer[index+1:] self.linesread += 1 self.continuousreads += 1 return retn else: # if not, then read some more data data = self.getMoreData() if not data: self.continuousreads = 0 raise StopIteration self.bytesread += len(data) self.buffer += data def close(self): """Close any allocated object.""" pass class FileCaptureStream(CaptureStream): """Capture from a file or named pipe.""" def __init__(self, filename): CaptureStream.__init__(self) # open file self.fileobj = open(filename) # make new thread to read file self.readerthread = utils.NonBlockingReaderThread( self.fileobj, exiteof=False) self.readerthread.start() self.name = filename def getMoreData(self): """Read data from the file.""" try: data, done = self.readerthread.getNewData() if len(data) == 0 and done: raise CaptureFinishException("End of file") return data except OSError as e: raise CaptureFinishException("OSError: %s" % str(e)) def close(self): """Close file.""" self.fileobj.close() class CommandCaptureStream(CaptureStream): """Capture from an external program.""" def __init__(self, commandline): """Capture from commandline - this is passed to the shell.""" CaptureStream.__init__(self) self.name = commandline self.popen = subprocess.Popen( commandline, shell=True, bufsize=0, stdout=subprocess.PIPE, universal_newlines=True) # make new thread to read stdout self.readerthread = utils.NonBlockingReaderThread(self.popen.stdout) self.readerthread.start() def getMoreData(self): """Read data from the command.""" retn, done = self.readerthread.getNewData() if not retn: poll = self.popen.poll() if poll is not None: # process has ended raise CaptureFinishException( "Process ended (status code %i)" % poll) return retn def close(self): """Close file.""" if self.popen.poll() is None: # need to kill process if it is still running if platform.system() == 'Windows': # awful code (for windows) # use this to not have a ctypes dependency os.system('TASKKILL /PID %i /F' % self.popen.pid) else: # unix os.kill(self.popen.pid, signal.SIGTERM) try: self.popen.stdout.close() except EnvironmentError: # problems closing stdout for some reason pass class SocketCaptureStream(CaptureStream): """Capture from an internet host.""" def __init__(self, host, port): """Connect to host and port specified.""" CaptureStream.__init__(self) self.name = '%s:%i' % (host, port) try: self.socket = socket.socket( socket.AF_INET, socket.SOCK_STREAM ) self.socket.connect( (host, port) ) except socket.error as e: self._handleSocketError(e) def _handleSocketError(self, e): """Special function to reraise exceptions because socket exceptions have changed in python 2.6 and behave differently on some platforms. """ # clean up self.socket.close() # re-raise raise e def getMoreData(self): """Read data from the socket.""" # see whether there is data to be read i, o, e = select.select([self.socket], [], [], 0) if i: try: retn = self.socket.recv(1024) except socket.error as e: self._handleSocketError(e) if len(retn) == 0: raise CaptureFinishException("Remote socket closed") return retn.decode('utf-8', errors='ignore') else: return '' def close(self): """Close the socket.""" self.socket.close() class OperationDataCaptureSet: """An operation for setting the results from a SimpleRead into the document's data from a data capture. This is a bit primative, but it is not obvious how to isolate the capturing functionality elsewhere.""" descr = _('data capture') def __init__(self, simplereadobject): """Takes a simpleread object containing the data to be set.""" self.simplereadobject = simplereadobject def do(self, doc): """Set the data in the document.""" # set the data to the document and keep a list of what's changed readdata = {} self.simplereadobject.setOutput(readdata) # keep a copy of datasets which have changed from backup self.nameschanged = list(readdata) self.olddata = {} for name in self.nameschanged: if name in doc.data: self.olddata[name] = doc.data[name] doc.setData(name, readdata[name]) def undo(self, doc): """Undo the results of the capture.""" for name in self.nameschanged: if name in self.olddata: # replace datasets with what was there previously doc.setData(name, self.olddata[name]) else: # or delete datasets that weren't there before doc.deleteData(name) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/defn_csv.py0000664000175000017500000001362714332253347016620 0ustar00jssjss# Copyright (C) 2013 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## import re from .. import qtall as qt from .. import document from . import readcsv from . import base def _(text, disambiguation=None, context="Import_CSV"): return qt.QCoreApplication.translate(context, text, disambiguation) class ImportParamsCSV(base.ImportParamsBase): """CSV import parameters. additional parameters: readrows: read data in rows delimiter: CSV delimiter skipwhitespace: whether to ignore white space following CSV delimiter textdelimiter: delimiter for text headerignore: number of lines to ignore after headers rowsignore: number of lines to ignore at top of file blanksaredata: treat blank entries as nans numericlocale: name of local for numbers dateformat: date format string headermode: 'multi', '1st' or 'none' """ defaults = { 'readrows': False, 'delimiter': ',', 'skipwhitespace' : False, 'textdelimiter': '"', 'headerignore': 0, 'rowsignore': 0, 'blanksaredata': False, 'numericlocale': 'en_US', 'dateformat': 'YYYY-MM-DD|T|hh:mm:ss', 'headermode': 'multi', } defaults.update(base.ImportParamsBase.defaults) def __init__(self, **argsv): base.ImportParamsBase.__init__(self, **argsv) if self.headermode not in ('multi', '1st', 'none'): raise ValueError("Invalid headermode") class OperationDataImportCSV(base.OperationDataImportBase): """Import data from a CSV file.""" descr = _('import CSV data') def doImport(self): """Do the data import.""" try: csvr = readcsv.ReadCSV(self.params) except re.error: # invalid date RE raise base.ImportingError(_('Invalid date regular expression')) csvr.readData() LF = None if self.params.linked: LF = LinkedFileCSV(self.params) # set the data in the output structure csvr.setData(self.outdatasets, linkedfile=LF) class LinkedFileCSV(base.LinkedFileBase): """A CSV file linked to datasets.""" def createOperation(self): """Return operation to recreate self.""" return OperationDataImportCSV def saveToFile(self, fileobj, relpath=None): """Save the link to the document file.""" self._saveHelper( fileobj, 'ImportFileCSV', ('filename',), renameparams={'prefix': 'dsprefix', 'suffix': 'dssuffix'}, relpath=relpath) def ImportFileCSV(comm, filename, readrows=False, delimiter=',', skipwhitespace=False, textdelimiter='"', encoding='utf_8', headerignore=0, rowsignore=0, blanksaredata=False, numericlocale='en_US', dateformat='YYYY-MM-DD|T|hh:mm:ss', headermode='multi', dsprefix='', dssuffix='', prefix=None, renames=None, linked=False): """Read data from a comma separated file (CSV). Data are read from filename readrows: if true, data are read across rather than down delimiter: character for delimiting data (usually ',') skipwhitespace: if true, white space following delimiter is ignored textdelimiter: character surrounding text (usually '"') encoding: encoding used in file headerignore: number of lines to ignore after header text rowsignore: number of rows to ignore at top of file blanksaredata: treats blank lines in csv files as blank data values numericlocale: format to use for reading numbers dateformat: format for interpreting dates headermode: 'multi': multiple headers allowed in file '1st': first text found are headers 'none': no headers, guess data and use default names Dataset names are prepended and appended, by dsprefix and dssuffix, respectively (prefix is backware compatibility only, it adds an underscore relative to dsprefix) renames is a map of old names to new names to rename on import If linked is True the data are linked with the file. Returns: list of imported datasets """ # backward compatibility if prefix: dsprefix = prefix + '_' # lookup filename realfilename = comm.findFileOnImportPath(filename) params = ImportParamsCSV( filename=realfilename, readrows=readrows, delimiter=delimiter, skipwhitespace=skipwhitespace, textdelimiter=textdelimiter, encoding=encoding, headerignore=headerignore, rowsignore=rowsignore, blanksaredata=blanksaredata, numericlocale=numericlocale, dateformat=dateformat, headermode=headermode, prefix=dsprefix, suffix=dssuffix, renames=renames, linked=linked, ) op = OperationDataImportCSV(params) comm.document.applyOperation(op) if comm.verbose: print("Imported datasets %s" % ' '.join(op.outnames)) return op.outnames document.registerImportCommand('ImportFileCSV', ImportFileCSV) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/defn_fits.py0000664000175000017500000004745014332253347016773 0ustar00jssjss# Copyright (C) 2017 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## import collections import numpy as N from .. import qtall as qt from .. import document from .. import datasets from . import base from . import fits_hdf5_helpers def _(text, disambiguation=None, context="Import_FITS"): return qt.QCoreApplication.translate(context, text, disambiguation) # lazily imported fits = None def loadFITSModule(): global fits try: from astropy.io import fits except ImportError: try: import pyfits as fits except ImportError: raise RuntimeError( "Cannot load astropy.io.fits or pyfits module. " "Please install before loading documents with FITS data.") class ImportParamsFITS(base.ImportParamsBase): """HDF5 file import parameters. Additional parameters: items: list of datasets and items to import namemap: map hdf datasets to veusz names slices: dict to map hdf names to slices twodranges: map hdf names to 2d range (minx, miny, maxx, maxy) twod_as_oned: set of hdf names to read 2d dataset as 1d dataset wcsmodes: how to treat wcs when importing """ defaults = { 'items': None, 'namemap': None, 'slices': None, 'twodranges': None, 'twod_as_oned': None, 'wcsmodes': None, } defaults.update(base.ImportParamsBase.defaults) class LinkedFileFITS(base.LinkedFileBase): """Links a HDF5 file to the data.""" def createOperation(self): """Return operation to recreate self.""" return OperationDataImportFITS def saveToFile(self, fileobj, relpath=None): """Save the link to the document file.""" self._saveHelper( fileobj, 'ImportFileFITS', ('filename', 'items'), relpath=relpath) class _DataRead: """Data read from file during import. This is so we can store the original name and options stored in attributes from the file. """ def __init__(self, origname, data, options): self.origname = origname self.data = data self.options = options class OperationDataImportFITS(base.OperationDataImportBase): """Import 1d, 2d, text or nd data from a fits file.""" descr = _("import FITS file") def convertDataset(self, data, options, dsname, dsread): """Given some data read from a file, its attributes and name, get data and set it in dict dsread. dsread maps names to _DataRead object """ # find name for dataset if (self.params.namemap is not None and dsname in self.params.namemap ): name = self.params.namemap[dsname] else: if "name" in options: # override name using attribute name = options["name"] else: name = dsname.split("/")[-1].strip() # use full path if dataset already exists if name in dsread: name = dsname.strip() try: # implement slicing aslice = None if "slice" in options: s = fits_hdf5_helpers.convertTextToSlice( options["slice"], len(data.shape)) if s != -1: aslice = s if self.params.slices and dsname in self.params.slices: aslice = self.params.slices[dsname] # finally return data objdata = fits_hdf5_helpers.convertDatasetToObject( data, aslice) dsread[name] = _DataRead(dsname, objdata, options) except fits_hdf5_helpers.ConvertError: pass def getImageWCS(self, hdu, dsname, attr): """Get WCS values for rangex, rangey, applying appropriate mode.""" # WCS only supported for 2D datasets if len(hdu.shape) != 2: return # mode is None for default mode = "linear_wcs" if self.params.wcsmodes: mode = self.params.wcsmodes.get(dsname, "linear_wcs") if 'wcsmode' in attr: mode = attr['wcsmode'] # standard linear wcs keywords wcs = [ hdu.header.get(x, None) for x in ( 'CRVAL1', 'CRPIX1', 'CDELT1', 'CRVAL2', 'CRPIX2', 'CDELT2') ] if mode == "pixel" or (None in wcs and "wcs" in mode): rangex = rangey = None elif mode == "fraction": rangex = rangey = (0., 1.) elif mode == "pixel_wcs": rangex = (hdu.shape[1]-wcs[1], 0-wcs[1]) rangey = (0-wcs[4], hdu.shape[0]-wcs[4]) elif mode == "linear_wcs": rangex = ( (0.5-wcs[1])*wcs[2] + wcs[0], (hdu.shape[1]+0.5-wcs[1])*wcs[2] + wcs[0]) rangey = ( (0.5-wcs[4])*wcs[5] + wcs[3], (hdu.shape[0]+0.5-wcs[4])*wcs[5] + wcs[3]) else: raise RuntimeError("Invalid WCS mode") if rangex and "xrange" not in attr: attr["xrange"] = rangex if rangey and "yrange" not in attr: attr["yrange"] = rangey def readHduImage(self, hdu, dsname, dsread): """Read an image in a HDU.""" attr, colattr = fits_hdf5_helpers.hduVeuszAttrs(hdu) self.getImageWCS(hdu, dsname, attr) self.convertDataset(hdu.data, attr, dsname, dsread) def readTableColumn(self, hdu, dsname, dsread): """Read a specific column from a FITS file.""" # dsname is /hduname/colname colname = dsname.split('/')[-1].strip().lower() # get attributes for column attr, colattr = fits_hdf5_helpers.hduVeuszAttrs(hdu) if colname in colattr: attr.update(colattr[colname]) data = hdu.data.field(colname) self.convertDataset(data, attr, dsname, dsread) def walkHdu(self, hdu, dsname, dsread): """Import everything from a table HDU.""" if hdu.data is None: # ignore empty HDU pass elif hdu.is_image: # Primary or Image HDU self.readHduImage(hdu, dsname, dsread) else: # Table HDU for col in hdu.data.columns: self.readTableColumn( hdu, '%s/%s' % (dsname, col.name.lower()), dsread) def walkFile(self, fitsf, hdunames, dsread): """Import everything from a fits file.""" for hdu, name in zip(fitsf, hdunames): self.walkHdu(hdu, '/%s' % name, dsread) def readDataFromFile(self): """Read data from fits file and return a dict of names to data.""" dsread = {} with fits.open(self.params.filename, 'readonly') as fitsf: hdunames = fits_hdf5_helpers.getFITSHduNames(fitsf) for item in self.params.items: parts = [p.strip() for p in item.split('/') if p.strip()] if not parts: # / or empty self.walkFile(fitsf, hdunames, dsread) elif len(parts) >= 1: try: idx = hdunames.index(parts[0]) except ValueError: raise RuntimeError( "Cannot find HDU '%s' in FITS file" % parts[0]) hdu = fitsf[idx] if len(parts) == 1: # read whole HDU self.walkHdu(hdu, '/%s' % parts[0], dsread) elif len(parts) == 2: # column of table self.readTableColumn( hdu, '/%s/%s' % (parts[0], parts[1]), dsread) else: raise RuntimeError( 'Too many parts in FITS dataset name') return dsread def collectErrorBarDatasets(self, dsread): """Identify error bar datasets and separate out. Returns error bar datasets.""" # separate out datasets with error bars # this a defaultdict of defaultdict with None as default errordatasets = collections.defaultdict( lambda: collections.defaultdict(lambda: None)) for name in list(dsread): dr = dsread[name] ds = dr.data if not isinstance(ds, N.ndarray) or len(ds.shape) != 1: # skip non-numeric or 2d datasets continue for err in ('+', '-', '+-'): ln = len(err)+3 if name[-ln:] == (' (%s)' % err): refname = name[:-ln].strip() if refname in dsread: errordatasets[refname][err] = ds del dsread[name] break return errordatasets def numericDataToDataset(self, name, dread, errordatasets): """Convert numeric data to a veusz dataset.""" data = dread.data ds = None if data.ndim == 1: # Standard 1D Import # handle any possible error bars args = { 'data': data, 'serr': errordatasets[name]['+-'], 'nerr': errordatasets[name]['-'], 'perr': errordatasets[name]['+'] } # find minimum length and cut down if necessary minlen = min([len(d) for d in args.values() if d is not None]) for a in list(args): if args[a] is not None and len(args[a]) > minlen: args[a] = args[a][:minlen] ds = datasets.Dataset(**args) elif data.ndim == 2: # 2D dataset if ( ((self.params.twod_as_oned and dread.origname in self.params.twod_as_oned) or dread.options.get("twod_as_oned") ) and data.shape[1] in (2,3) ): # actually a 1D dataset in disguise if data.shape[1] == 2: ds = datasets.Dataset(data=data[:,0], serr=data[:,1]) else: ds = datasets.Dataset( data=data[:,0], perr=data[:,1], nerr=data[:,2]) else: # this really is a 2D dataset attrs = {} # find any ranges if "range" in dread.options: r = dread.options["range"] attrs["xrange"] = (r[0], r[2]) attrs["yrange"] = (r[1], r[3]) for attr in ( "xrange", "yrange", "xcent", "ycent", "xedge", "yedge" ): if attr in dread.options: attrs[attr] = dread.options.get(attr) if ( self.params.twodranges and dread.origname in self.params.twodranges ): r = self.params.twodranges[dread.origname] attrs["xrange"] = (r[0], r[2]) attrs["yrange"] = (r[1], r[3]) # create the object ds = datasets.Dataset2D(data, **attrs) else: # N-dimensional dataset ds = datasets.DatasetND(data) return ds def textDataToDataset(self, name, dread): """Convert textual data to a veusz dataset.""" tdata = list(dread.data) return datasets.DatasetText(tdata) def doImport(self): """Do the import.""" loadFITSModule() par = self.params dsread = self.readDataFromFile() # find datasets which are error bars errordatasets = self.collectErrorBarDatasets(dsread) if par.linked: linkedfile = LinkedFileFITS(par) else: linkedfile = None # create the veusz output datasets for name, dread in dsread.items(): if isinstance(dread.data, N.ndarray): # numeric ds = self.numericDataToDataset(name, dread, errordatasets) else: # text ds = self.textDataToDataset(name, dread) if ds is None: # error above continue ds.linked = linkedfile # finally set dataset in document fullname = par.prefix + name + par.suffix self.outdatasets[fullname] = ds def ImportFileFITS( comm, filename, items, namemap=None, slices=None, twodranges=None, twod_as_oned=None, wcsmodes=None, prefix='', suffix='', renames=None, linked=False): """Import data from a FITS file items is a list of datasets to be imported. items are formatted like the following: '/': import whole file '/hduname': import whole HDU (image or table) '/hduname/column': import column from table HDU all values in items should be lower case. HDU names have to follow a Veusz-specific naming. If the HDU has a standard name (e.g. primary or events), then this is used. If the HDU has a EXTVER keyword then this number is appended to this name. An extra number is appended if this name is not unique. If the HDU has no name, then the name used should be 'hduX', where X is the HDU number (0 is the primary HDU). namemap maps an input dataset (using the scheme above for items) to a Veusz dataset name. Special suffixes can be used on the Veusz dataset name to indicate that the dataset should be imported specially. 'foo (+)': import as +ve error for dataset foo 'foo (-)': import as -ve error for dataset foo 'foo (+-)': import as symmetric error for dataset foo slices is an optional dict specifying slices to be selected when importing. For each dataset to be sliced, provide a tuple of values, one for each dimension. The values should be a single integer to select that index, or a tuple (start, stop, step), where the entries are integers or None. twodranges is an optional dict giving data ranges for 2D datasets. It maps names to (minx, miny, maxx, maxy). twod_as_oned: optional set containing 2D datasets to attempt to read as 1D, treating extra columns as error bars wcsmodes is an optional dict specfying the WCS import mode for 2D datasets in HDUs. The keys are '/hduname' and the values can be 'pixel': number pixel range from 0 to maximum (default) 'pixel_wcs': pixel number relative to WCS reference pixel 'linear_wcs': linear coordinate system from the WCS keywords 'fraction': fractional values from 0 to 1. renames is an optional dict mapping old to new dataset names, to be renamed after importing linked specifies that the dataset is linked to the file. Values under the VEUSZ header keyword can be used to override defaults: 'name': override name for dataset 'slice': slice on importing (use format "start:stop:step,...") 'range': should be 4 item array to specify x and y ranges: [minx, miny, maxx, maxy] 'xrange' / 'yrange': individual ranges for x and y 'xcent' / 'ycent': arrays giving the centres of pixels 'xedge' / 'yedge': arrays giving the edges of pixels 'twod_as_oned': treat 2d dataset as 1d dataset with errors 'wcsmode': use specific WCS mode for dataset (see values above) These are specified under the VEUSZ header keyword in the form KEY=VALUE or for column-specific values COLUMNNAME: KEY=VALUE Returns: list of imported datasets """ # lookup filename realfilename = comm.findFileOnImportPath(filename) params = ImportParamsFITS( filename=realfilename, items=items, namemap=namemap, slices=slices, twodranges=twodranges, twod_as_oned=twod_as_oned, wcsmodes=wcsmodes, prefix=prefix, suffix=suffix, renames=renames, linked=linked) op = OperationDataImportFITS(params) comm.document.applyOperation(op) if comm.verbose: print("Imported datasets %s" % ', '.join(op.outnames)) return op.outnames def ImportFITSFile(comm, dsname, filename, hdu, datacol = None, symerrcol = None, poserrcol = None, negerrcol = None, wcsmode = None, renames = None, linked = False): """Compatibility wrapper for ImportFileFITS. Do not use this in new code. Import data from a FITS file dsname is the name of the dataset filename is name of the fits file to open hdu is the number/name of the hdu to access if the hdu is a table, datacol, symerrcol, poserrcol and negerrcol specify the columns containing the data, symmetric error, positive and negative errors. wcsmode is one of ('pixel', 'pixel_wcs' or 'linear_wcs'). None gives 'linear_wcs'. 'pixel' mode just gives pixel values from 0 to maximum. 'pixel_wcs' is the pixel number relative to the wcs reference pixel. 'linear_wcs' takes the wcs coordinate, assuming a linear coordinate system. 'fraction' assumes fractional values from 0 to 1. renames: dict mapping old to new names if datasets are to be renamed after import linked specfies that the dataset is linked to the file Returns: list of imported datasets """ # lookup filename realfilename = comm.findFileOnImportPath(filename) # work out new HDU name by looking up what would have been chosen # before loadFITSModule() with fits.open(realfilename, 'readonly') as fitsf: hdunames = fits_hdf5_helpers.getFITSHduNames(fitsf) hdu = fitsf[hdu] idx = list(fitsf).index(hdu) hduname = hdunames[idx] if datacol is None: # default is pixel here if wcsmode is None: wcsmode = 'pixel' # image mode fullname = '/'+hduname return ImportFileFITS( comm, filename, [fullname], namemap={fullname: dsname}, renames=renames, wcsmodes={fullname: wcsmode}, linked=linked, ) else: # handle tables dsnames = [] namemap = {} name = '/%s/%s' % (hduname, datacol) namemap[name] = dsname dsnames.append(name) # handle conversion of errors if symerrcol: name = '/%s/%s' % (hduname, symerrcol) namemap[name] = '%s (+-)' % dsname dsnames.append(name) if poserrcol: name = '/%s/%s' % (hduname, poserrcol) namemap[name] = '%s (+)' % dsname dsnames.append(name) if negerrcol: name = '/%s/%s' % (hduname, negerrcol) namemap[name] = '%s (-)' % dsname dsnames.append(name) return ImportFileFITS( comm, filename, dsnames, namemap=namemap, renames=renames, linked=linked, ) # new import command document.registerImportCommand("ImportFileFITS", ImportFileFITS) # compatibility with old fits import document.registerImportCommand("ImportFITSFile", ImportFITSFile, filenamearg=1) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/defn_hdf5.py0000664000175000017500000004262214332253347016650 0ustar00jssjss# Copyright (C) 2013 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## import collections import re import numpy as N from .. import qtall as qt from .. import document from .. import datasets from .. import utils from . import base from . import fits_hdf5_helpers def _(text, disambiguation=None, context="Import_HDF5"): return qt.QCoreApplication.translate(context, text, disambiguation) h5py = None def inith5py(): global h5py try: import h5py except ImportError: raise RuntimeError( "Cannot load Python h5py module. " "Please install before loading documents using HDF5 data.") def bconv(s): """Hack for h5py byte problem with python3. https://github.com/h5py/h5py/issues/379 Byte string attributes are not converted to normal strings.""" if isinstance(s, bytes): return s.decode('utf-8', 'replace') return s def auto_deref_attr(attr, attrs, grp): """Automatic dereference any attributes which are references.""" val = attrs[attr] # convert reference to a dataset if isinstance(val, h5py.Reference): # have to find root to dereference reference root = grp while root.name != '/': root = root.parent val = root[val] # convert dataset to an array if isinstance(val, h5py.Dataset): val = N.array(val) return bconv(val) class ImportParamsHDF5(base.ImportParamsBase): """HDF5 file import parameters. Additional parameters: items: list of datasets and items to import namemap: map hdf datasets to veusz names slices: dict to map hdf names to slices twodranges: map hdf names to 2d range (minx, miny, maxx, maxy) twod_as_oned: set of hdf names to read 2d dataset as 1d dataset convert_datetime: map float or strings to datetime """ defaults = { 'items': None, 'namemap': None, 'slices': None, 'twodranges': None, 'twod_as_oned': None, 'convert_datetime': None, } defaults.update(base.ImportParamsBase.defaults) class LinkedFileHDF5(base.LinkedFileBase): """Links a HDF5 file to the data.""" def createOperation(self): """Return operation to recreate self.""" return OperationDataImportHDF5 def saveToFile(self, fileobj, relpath=None): """Save the link to the document file.""" self._saveHelper( fileobj, 'ImportFileHDF5', ('filename', 'items'), relpath=relpath) class _DataRead: """Data read from file during import. This is so we can store the original name and options stored in attributes from the file. """ def __init__(self, origname, data, options): self.origname = origname self.data = data self.options = options class OperationDataImportHDF5(base.OperationDataImportBase): """Import 1d, 2d, text or nd data from a HDF5 file.""" descr = _("import HDF5 file") def readDataset(self, dataset, dsattrs, dsname, dsread): """Given hdf5 dataset, its attributes and name, get data and set it in dict dsread. dsread maps names to _DataRead object """ # store options associated with dataset options = {} for a in dsattrs: if a[:4] == "vsz_": options[a] = auto_deref_attr(a, dsattrs, dataset) elif a in ('_FillValue', 'missing_data'): # NetCDF support try: options['__MissingData__'] = float(dsattrs[a]) except (TypeError, ValueError): pass # find name for dataset if (self.params.namemap is not None and dsname in self.params.namemap ): name = self.params.namemap[dsname] else: if "vsz_name" in options: # override name using attribute name = options["vsz_name"] else: name = dsname.split("/")[-1].strip() # use full path if dataset already exists if name in dsread: name = dsname.strip() try: # implement slicing aslice = None if "vsz_slice" in options: s = fits_hdf5_helpers.convertTextToSlice( options["vsz_slice"], len(dataset.shape)) if s != -1: aslice = s if self.params.slices and dsname in self.params.slices: aslice = self.params.slices[dsname] # for NetCDF fill_value = options.get('__MissingData__') # return dataset objdata = fits_hdf5_helpers.convertDatasetToObject( dataset, aslice, fill_value=fill_value) dsread[name] = _DataRead(dsname, objdata, options) except fits_hdf5_helpers.ConvertError: pass def walkFile(self, item, dsread, names=None): """Walk an hdf file, adding datasets to dsread. If names is set to a list, only read names from list given """ if isinstance(item, h5py.Dataset): try: dtype = item.dtype except TypeError: # not supported by h5py return if dtype.kind == 'V': # compound dataset - walk columns if not names: names = item.dtype.names for name in names: attrs = fits_hdf5_helpers.filterAttrsByName(item.attrs, name) self.readDataset( item[name], attrs, item.name+"/"+name, dsread) else: self.readDataset(item, item.attrs, item.name, dsread) elif isinstance(item, h5py.Group): if not names: names = sorted(item.keys()) for dsname in names: try: child = item[dsname] except KeyError: # this does happen! continue self.walkFile(child, dsread) def readDataFromFile(self): """Read data from hdf5 file and return a dict of names to data.""" dsread = {} with h5py.File(self.params.filename, "r") as hdff: for hi in self.params.items: # lookup group/dataset in file names = [x for x in hi.split("/") if x != ""] node = hdff # Repeat until we get a dataset. Note: if we get a # dataset which names is not empty, this is a table # column, so we pass the remainder of names to # walkFile while names and not isinstance(node, h5py.Dataset): node = node[names[0]] names.pop(0) self.walkFile(node, dsread, names=names) return dsread def collectErrorBarDatasets(self, dsread): """Identify error bar datasets and separate out. Returns error bar datasets.""" # separate out datasets with error bars # this a defaultdict of defaultdict with None as default errordatasets = collections.defaultdict( lambda: collections.defaultdict(lambda: None)) for name in list(dsread): dr = dsread[name] ds = dr.data if not isinstance(ds, N.ndarray) or len(ds.shape) != 1: # skip non-numeric or 2d datasets continue for err in ('+', '-', '+-'): ln = len(err)+3 if name[-ln:] == (' (%s)' % err): refname = name[:-ln].strip() if refname in dsread: errordatasets[refname][err] = ds del dsread[name] break return errordatasets def numericDataToDataset(self, name, dread, errordatasets): """Convert numeric data to a veusz dataset.""" data = dread.data ds = None if data.ndim == 1: if ( (self.params.convert_datetime and dread.origname in self.params.convert_datetime) or "vsz_convert_datetime" in dread.options ): try: mode = self.params.convert_datetime[dread.origname] except (TypeError, KeyError): mode = dread.options["vsz_convert_datetime"] if mode == 'unix': data = utils.floatUnixToVeusz(data) ds = datasets.DatasetDateTime(data) else: # Standard 1D Import # handle any possible error bars args = { 'data': data, 'serr': errordatasets[name]['+-'], 'nerr': errordatasets[name]['-'], 'perr': errordatasets[name]['+'] } # find minimum length and cut down if necessary minlen = min( [len(d) for d in args.values() if d is not None]) for a in list(args): if args[a] is not None and len(args[a]) > minlen: args[a] = args[a][:minlen] ds = datasets.Dataset(**args) elif data.ndim == 2: # 2D dataset if ( ((self.params.twod_as_oned and dread.origname in self.params.twod_as_oned) or dread.options.get("vsz_twod_as_oned") ) and data.shape[1] in (2,3) ): # actually a 1D dataset in disguise if data.shape[1] == 2: ds = datasets.Dataset(data=data[:,0], serr=data[:,1]) else: ds = datasets.Dataset( data=data[:,0], perr=data[:,1], nerr=data[:,2]) else: # this really is a 2D dataset attrs = {} # find any ranges if "vsz_range" in dread.options: r = dread.options["vsz_range"] attrs["xrange"] = (r[0], r[2]) attrs["yrange"] = (r[1], r[3]) for attr in ( "xrange", "yrange", "xcent", "ycent", "xedge", "yedge"): if "vsz_"+attr in dread.options: attrs[attr] = dread.options.get("vsz_"+attr) if ( self.params.twodranges and dread.origname in self.params.twodranges ): r = self.params.twodranges[dread.origname] attrs["xrange"] = (r[0], r[2]) attrs["yrange"] = (r[1], r[3]) # create the object ds = datasets.Dataset2D(data, **attrs) else: # N-dimensional dataset ds = datasets.DatasetND(data) return ds def textDataToDataset(self, name, dread): """Convert textual data to a veusz dataset.""" data = dread.data if ( (self.params.convert_datetime and dread.origname in self.params.convert_datetime) or "vsz_convert_datetime" in dread.options ): try: fmt = self.params.convert_datetime[dread.origname] except (TypeError, KeyError): fmt = dread.options["vsz_convert_datetime"] if fmt.strip() == 'iso': fmt = 'YYYY-MM-DD|T|hh:mm:ss' try: datere = re.compile(utils.dateStrToRegularExpression(fmt)) except Exception: raise base.ImportingError( _("Could not interpret date-time syntax '%s'") % fmt) dout = N.empty(len(data), dtype=N.float64) for i, ditem in enumerate(data): ditem = bconv(ditem) try: match = datere.match(ditem) val = utils.dateREMatchToDate(match) except ValueError: val = N.nan dout[i] = val ds = datasets.DatasetDateTime(dout) else: # unfortunately byte strings are returned in py3 tdata = [bconv(d) for d in dread.data] # standard text dataset ds = datasets.DatasetText(tdata) return ds def doImport(self): """Do the import.""" inith5py() par = self.params dsread = self.readDataFromFile() # find datasets which are error bars errordatasets = self.collectErrorBarDatasets(dsread) if par.linked: linkedfile = LinkedFileHDF5(par) else: linkedfile = None # create the veusz output datasets for name, dread in dsread.items(): if isinstance(dread.data, N.ndarray): # numeric ds = self.numericDataToDataset(name, dread, errordatasets) else: # text ds = self.textDataToDataset(name, dread) if ds is None: # error above continue ds.linked = linkedfile # finally set dataset in document fullname = par.prefix + name + par.suffix self.outdatasets[fullname] = ds def ImportFileHDF5(comm, filename, items, namemap=None, slices=None, twodranges=None, twod_as_oned=None, convert_datetime=None, prefix='', suffix='', renames=None, linked=False): """Import data from a HDF5 file items is a list of groups and datasets which can be imported. If a group is imported, all child datasets are imported. namemap maps an input dataset to a veusz dataset name. Special suffixes can be used on the veusz dataset name to indicate that the dataset should be imported specially. 'foo (+)': import as +ve error for dataset foo 'foo (-)': import as -ve error for dataset foo 'foo (+-)': import as symmetric error for dataset foo slices is an optional dict specifying slices to be selected when importing. For each dataset to be sliced, provide a tuple of values, one for each dimension. The values should be a single integer to select that index, or a tuple (start, stop, step), where the entries are integers or None. twodranges is an optional dict giving data ranges for 2d datasets. It maps names to (minx, miny, maxx, maxy). twod_as_oned: optional set containing 2d datasets to attempt to read as 1d convert_datetime should be a dict mapping hdf name to specify date/time importing for a 1d numeric dataset if this is set to 'veusz', this is the number of seconds since 2009-01-01 if this is set to 'unix', this is the number of seconds since 1970-01-01 for a text dataset, this should give the format of the date/time, e.g. 'YYYY-MM-DD|T|hh:mm:ss' or 'iso' for iso format renames is a dict mapping old to new dataset names, to be renamed after importing linked specifies that the dataset is linked to the file. Attributes can be used in datasets to override defaults: 'vsz_name': set to override name for dataset in veusz 'vsz_slice': slice on importing (use format "start:stop:step,...") 'vsz_range': should be 4 item array to specify x and y ranges: [minx, miny, maxx, maxy] 'vsz_xrange' / 'vsz_yrange': individual ranges for x and y 'vsz_xcent' / 'vsz_ycent': arrays giving the centres of pixels 'vsz_xedge' / 'vsz_yedge': arrays giving the edges of pixels 'vsz_twod_as_oned': treat 2d dataset as 1d dataset with errors 'vsz_convert_datetime': treat as date/time, set to one of the values above. References to other datasets can be provided in thes attributes. For compound datasets these attributes can be given on a per-column basis using attribute names vsz_attributename_columnname. Returns: list of imported datasets """ # lookup filename realfilename = comm.findFileOnImportPath(filename) params = ImportParamsHDF5( filename=realfilename, items=items, namemap=namemap, slices=slices, twodranges=twodranges, twod_as_oned=twod_as_oned, convert_datetime=convert_datetime, prefix=prefix, suffix=suffix, renames=renames, linked=linked) op = OperationDataImportHDF5(params) comm.document.applyOperation(op) if comm.verbose: print("Imported datasets %s" % ', '.join(op.outnames)) return op.outnames document.registerImportCommand("ImportFileHDF5", ImportFileHDF5) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/defn_nd.py0000664000175000017500000001253014332253347016416 0ustar00jssjss# Copyright (C) 2016 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## from .. import qtall as qt from .. import utils from .. import document from . import simpleread from . import base def _(text, disambiguation=None, context="Import_ND"): return qt.QCoreApplication.translate(context, text, disambiguation) class ImportParamsND(base.ImportParamsBase): """nD import parameters. transpose: transpose array mode: text or csv csvdelimiter/csvtextdelimiter: csv text delimiters csvlocale: locale when importing csv """ defaults = { 'dataset': None, 'datastr': None, 'shape': None, 'transpose': False, 'mode': 'text', 'csvdelimiter': ',', 'csvtextdelimiter': '"', 'csvlocale': 'en_US', } defaults.update(base.ImportParamsBase.defaults) class LinkedFileND(base.LinkedFileBase): """Class representing a file linked to an nD dataset.""" def createOperation(self): """Return operation to recreate self.""" return OperationDataImportND def saveToFile(self, fileobj, relpath=None): """Save the link to the document file.""" self._saveHelper( fileobj, 'ImportFileND', ('filename', 'dataset'), relpath=relpath) class OperationDataImportND(base.OperationDataImportBase): """Import an n-D matrix from a file.""" descr = _('import nD data') def doImport(self): """Import data.""" p = self.params # get stream if p.mode == 'csv': stream = simpleread.CSVStream( p.filename, p.csvdelimiter, p.csvtextdelimiter, p.csvlocale, p.encoding) elif p.filename is not None: stream = simpleread.FileStream( utils.openEncoding(p.filename, p.encoding) ) elif p.datastr is not None: stream = simpleread.StringStream(p.datastr) else: raise RuntimeError("Invalid combination of parameters") # linked file LF = None if p.linked: assert p.filename LF = LinkedFileND(p) sr = simpleread.SimpleReadND(p.dataset, p) sr.readData(stream) sr.setOutput(self.outdatasets, linkedfile=LF) def ImportFileND( comm, filename, dataset, shape=None, transpose=False, mode='text', csvdelimiter=',', csvtextdelimiter='"', csvlocale='en_US', prefix="", suffix="", encoding='utf_8', linked=False): """Import n-dimensional data from a file. filename is the name of the file to read dataset is the dataset to read if shape is set, the dataset is reshaped to these dimensions after loading if transpose=True, then rows and columns, etc, are swapped mode is either 'text' or 'csv' csvdelimiter is the csv delimiter for csv csvtextdelimiter is the csv text delimiter for csv csvlocale is locale to use when reading csv data prefix and suffix are prepended and appended to dataset names encoding is encoding character set if linked=True then the dataset is linked to the file Returns: list of imported datasets """ # look up filename on path realfilename = comm.findFileOnImportPath(filename) params = ImportParamsND( dataset=dataset, filename=realfilename, transpose=transpose, mode=mode, csvdelimiter=csvdelimiter, csvtextdelimiter=csvtextdelimiter, csvlocale=csvlocale, prefix=prefix, suffix=suffix, linked=linked) op = OperationDataImportND(params) comm.document.applyOperation(op) if comm.verbose: print("Imported datasets %s" % ', '.join(op.outnames)) return op.outnames def ImportStringND(comm, dataset, dstring, shape=None, transpose=False): """Read n-dimensional data from the string specified. dataset is a dataset to read from the string if shape is set, then the array is reshaped to these dimensions if transpose=True, then rows and columns, etc, are swapped Returns: list of imported datasets """ params = ImportParamsND( dataset=dataset, datastr=dstring, shape=shape, transpose=transpose) op = OperationDataImportND(params) comm.document.applyOperation(op) if comm.verbose: print("Imported datasets %s" % ', '.join(op.outnames)) return op.outnames document.registerImportCommand('ImportFileND', ImportFileND) document.registerImportCommand( 'ImportStringND', ImportStringND, filenamearg=-1) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/defn_plugin.py0000664000175000017500000001151614332253347017316 0ustar00jssjss# Copyright (C) 2013 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## from .. import document from .. import plugins from .. import qtall as qt from . import base def _(text, disambiguation=None, context="Import_Plugin"): return qt.QCoreApplication.translate(context, text, disambiguation) class ImportParamsPlugin(base.ImportParamsBase): """Parameters for import plugins. Additional parameter: plugin: name of plugin Plugins have their own parameters.""" defaults = { 'plugin': None, } defaults.update(base.ImportParamsBase.defaults) def __init__(self, **argsv): """Initialise plugin parameters, splitting up default parameters and plugin parameters.""" pluginpars = {} upvars = {} for n, v in argsv.items(): if n in self.defaults: upvars[n] = v else: pluginpars[n] = v base.ImportParamsBase.__init__(self, **upvars) self.pluginpars = pluginpars self._extras.append('pluginpars') class LinkedFilePlugin(base.LinkedFileBase): """Represent a file linked using an import plugin.""" def createOperation(self): """Return operation to recreate self.""" return OperationDataImportPlugin def saveToFile(self, fileobj, relpath=None): """Save the link to the vsz document file.""" self._saveHelper( fileobj, 'ImportFilePlugin', ('plugin', 'filename'), relpath=relpath, extraargs=self.params.pluginpars) class OperationDataImportPlugin(base.OperationDataImportBase): """Import data using a plugin.""" descr = _('import using plugin') def doImport(self): """Do import.""" pluginnames = [p.name for p in plugins.importpluginregistry] plugin = plugins.importpluginregistry[ pluginnames.index(self.params.plugin)] # if the plugin is a class, make an instance # the old API is for the plugin to be instances if isinstance(plugin, type): plugin = plugin() # strip out parameters for plugin itself p = self.params # set defaults for import plugins pparams = dict(p.pluginpars) for field in plugin.fields: if field.name not in pparams: pparams[field.name] = field.default # stick back together the plugin parameter object plugparams = plugins.ImportPluginParams( p.filename, p.encoding, pparams) results = plugin.doImport(plugparams) # make link for file LF = None if p.linked: LF = LinkedFilePlugin(p) # convert results to real datasets for pluginds in results: # get list of custom definitions to add to results self.outcustoms += pluginds._customs() # convert plugin dataset to real one ds = pluginds._unlinkedVeuszDataset() if ds is not None: if p.linked: ds.linked = LF # construct name name = p.prefix + pluginds.name + p.suffix # actually make dataset self.outdatasets[name] = ds def ImportFilePlugin(comm, plugin, filename, **args): """Import file using a plugin. optional arguments: prefix: add to start of dataset name (default '') suffix: add to end of dataset name (default '') linked: link import to file (default False) encoding: file encoding (may not be used, default 'utf_8') renames: renamed datasets after import plus arguments to plugin returns: list of imported datasets, list of imported customs """ realfilename = comm.findFileOnImportPath(filename) params = ImportParamsPlugin( plugin=plugin, filename=realfilename, **args) op = OperationDataImportPlugin(params) comm.document.applyOperation(op) return op.outnames, op.outcustoms document.registerImportCommand( 'ImportFilePlugin', ImportFilePlugin, filenamearg=1) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/defn_standard.py0000664000175000017500000001445214332253347017622 0ustar00jssjss# Copyright (C) 2013 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## from .. import qtall as qt from .. import utils from .. import document from . import simpleread from . import base def _(text, disambiguation=None, context="Import_Standard"): return qt.QCoreApplication.translate(context, text, disambiguation) class ImportParamsSimple(base.ImportParamsBase): """simpleread import parameters. additional parameters: descriptor: data descriptor useblocks: read datasets as blocks datastr: text to read from instead of file ignoretext: whether to ignore lines of text """ defaults = { 'descriptor': '', 'useblocks': False, 'datastr': None, 'ignoretext': False, } defaults.update(base.ImportParamsBase.defaults) class LinkedFile(base.LinkedFileBase): """Instead of reading data from a string, data can be read from a "linked file". This means the same document can be reloaded, and the data would be reread from the file. This class is used to store a link filename with the descriptor """ def createOperation(self): """Return operation to recreate self.""" return OperationDataImport def saveToFile(self, fileobj, relpath=None): """Save the link to the document file. If relpath is set, save links relative to path given """ self._saveHelper( fileobj, 'ImportFile', ('filename', 'descriptor'), relpath=relpath) class OperationDataImport(base.OperationDataImportBase): """Import 1D data from text files.""" descr = _('import data') def __init__(self, params): """Setup operation. """ base.OperationDataImportBase.__init__(self, params) self.simpleread = simpleread.SimpleRead(params.descriptor) def doImport(self): """Import data. Returns a list of datasets which were imported. """ p = self.params # open stream to import data from if p.filename is not None: stream = simpleread.FileStream( utils.openEncoding(p.filename, p.encoding)) elif p.datastr is not None: stream = simpleread.StringStream(p.datastr) else: raise RuntimeError("No filename or string") # do the import self.simpleread.clearState() self.simpleread.readData( stream, useblocks=p.useblocks, ignoretext=p.ignoretext) # associate linked file LF = None if p.linked: assert p.filename LF = LinkedFile(p) # actually set the data in the document self.simpleread.setOutput( self.outdatasets, linkedfile=LF, prefix=p.prefix, suffix=p.suffix) self.outinvalids = self.simpleread.getInvalidConversions() def ImportFile(comm, filename, descriptor, useblocks=False, linked=False, prefix='', suffix='', ignoretext=False, encoding='utf_8', renames=None): """Read data from file with filename using descriptor. If linked is True, the data won't be saved in a saved document, the data will be reread from the file. If useblocks is set, then blank lines or the word 'no' are used to split the data into blocks. Dataset names are appended with an underscore and the block number (starting from 1). If prefix is set, prefix is prepended to each dataset name Suffix is added to each dataset name ignoretext ignores lines of text in the file encoding is name of text file encoding renames is a dict mapping existing to new names after import Returned is a tuple (datasets, errors) where datasets is a list of datasets read errors is a dict of the datasets with the number of errors while converting the data """ realfilename = comm.findFileOnImportPath(filename) params = ImportParamsSimple( descriptor=descriptor, filename=realfilename, useblocks=useblocks, linked=linked, prefix=prefix, suffix=suffix, ignoretext=ignoretext, encoding=encoding, renames=renames) op = OperationDataImport(params) comm.document.applyOperation(op) if comm.verbose: print("Imported datasets %s" % ' '.join(op.outnames)) for name, num in op.outinvalids.items(): print("%i errors encountered reading dataset %s" % (num, name)) return (op.outnames, op.outinvalids) def ImportString(comm, descriptor, dstring, useblocks=False): """Read data from the string using a descriptor. If useblocks is set, then blank lines or the word 'no' are used to split the data into blocks. Dataset names are appended with an underscore and the block number (starting from 1). Returned is a tuple (datasets, errors) where datasets is a list of datasets read errors is a dict of the datasets with the number of errors while converting the data """ params = ImportParamsSimple( descriptor=descriptor, datastr=dstring, useblocks=useblocks) op = OperationDataImport(params) comm.document.applyOperation(op) if comm.verbose: print("Imported datasets %s" % ' '.join(op.outnames)) for name, num in op.outinvalids.items(): print("%i errors encountered reading dataset %s" % (num, name)) return (op.outnames, op.outinvalids) document.registerImportCommand('ImportFile', ImportFile) document.registerImportCommand('ImportString', ImportString, filenamearg=-1) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/defn_twod.py0000664000175000017500000001600214332253347016770 0ustar00jssjss# Copyright (C) 2013 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## from .. import qtall as qt from .. import utils from .. import document from . import simpleread from . import base def _(text, disambiguation=None, context="Import_2D"): return qt.QCoreApplication.translate(context, text, disambiguation) class ImportParams2D(base.ImportParamsBase): """2D import parameters. additional parameters: datastr: text to read from instead of file xrange: tuple with range of x data coordinates yrange: tuple with range of y data coordinates invertrows: invert rows when reading invertcols: invert columns when reading transpose: swap rows and columns gridatedge: use left column and top row for pixel centres mode: text or csv csvdelimiter/csvtextdelimiter: csv text delimiters csvlocale: locale when importing csv """ defaults = { 'datasetnames': None, 'datastr': None, 'xrange': None, 'yrange': None, 'invertrows': False, 'invertcols': False, 'transpose': False, 'gridatedge': False, 'mode': 'text', 'csvdelimiter': ',', 'csvtextdelimiter': '"', 'csvlocale': 'en_US', } defaults.update(base.ImportParamsBase.defaults) class LinkedFile2D(base.LinkedFileBase): """Class representing a file linked to a 2d dataset.""" def createOperation(self): """Return operation to recreate self.""" return OperationDataImport2D def saveToFile(self, fileobj, relpath=None): """Save the link to the document file.""" self._saveHelper( fileobj, 'ImportFile2D', ('filename', 'datasetnames'), relpath=relpath) class OperationDataImport2D(base.OperationDataImportBase): """Import a 2D matrix from a file.""" descr = _('import 2D data') def doImport(self): """Import data.""" p = self.params # get stream if p.mode == 'csv': stream = simpleread.CSVStream( p.filename, p.csvdelimiter, p.csvtextdelimiter, p.csvlocale, p.encoding) elif p.filename is not None: stream = simpleread.FileStream( utils.openEncoding(p.filename, p.encoding) ) elif p.datastr is not None: stream = simpleread.StringStream(p.datastr) else: raise RuntimeError("Invalid combination of parameters") # linked file LF = None if p.linked: assert p.filename LF = LinkedFile2D(p) for name in p.datasetnames: sr = simpleread.SimpleRead2D(name, p) sr.readData(stream) sr.setOutput(self.outdatasets, linkedfile=LF) def ImportFile2D(comm, filename, datasetnames, xrange=None, yrange=None, invertrows=None, invertcols=None, transpose=None, gridatedge=None, mode='text', csvdelimiter=',', csvtextdelimiter='"', csvlocale='en_US', prefix="", suffix="", encoding='utf_8', renames=None, linked=False): """Import two-dimensional data from a file. filename is the name of the file to read datasetnames is a list of datasets to read from the file, or a single dataset name xrange is a tuple containing the range of data in x coordinates yrange is a tuple containing the range of data in y coordinates if invertrows=True, then rows are inverted when read if invertcols=True, then cols are inverted when read if transpose=True, then rows and columns are swapped if gridatedge=True, use top row and left column for pixel positions mode is either 'text' or 'csv' csvdelimiter is the csv delimiter for csv csvtextdelimiter is the csv text delimiter for csv csvlocale is locale to use when reading csv data prefix and suffix are prepended and appended to dataset names encoding is encoding character set renames is an optional dict mapping old to new dataset names, to be renamed after importing if linked=True then the dataset is linked to the file Returns: list of imported datasets """ # look up filename on path realfilename = comm.findFileOnImportPath(filename) if isinstance(datasetnames, str): datasetnames = [datasetnames] params = ImportParams2D( datasetnames=datasetnames, filename=realfilename, xrange=xrange, yrange=yrange, invertrows=invertrows, invertcols=invertcols, transpose=transpose, gridatedge=gridatedge, mode=mode, csvdelimiter=csvdelimiter, csvtextdelimiter=csvtextdelimiter, csvlocale=csvlocale, prefix=prefix, suffix=suffix, renames=renames, linked=linked) op = OperationDataImport2D(params) comm.document.applyOperation(op) if comm.verbose: print("Imported datasets %s" % ', '.join(op.outnames)) return op.outnames def ImportString2D(comm, datasetnames, dstring, xrange=None, yrange=None, invertrows=None, invertcols=None, transpose=None): """Read two dimensional data from the string specified. datasetnames is a list of datasets to read from the string or a single dataset name xrange is a tuple containing the range of data in x coordinates yrange is a tuple containing the range of data in y coordinates if invertrows=True, then rows are inverted when read if invertcols=True, then cols are inverted when read if transpose=True, then rows and columns are swapped Returns: list of imported datasets """ if isinstance(datasetnames, str): datasetnames = [datasetnames] params = ImportParams2D( datasetnames=datasetnames, datastr=dstring, xrange=xrange, yrange=yrange, invertrows=invertrows, invertcols=invertcols, transpose=transpose) op = OperationDataImport2D(params) comm.document.applyOperation(op) if comm.verbose: print("Imported datasets %s" % ', '.join(op.outnames)) return op.outnames document.registerImportCommand('ImportFile2D', ImportFile2D) document.registerImportCommand( 'ImportString2D', ImportString2D, filenamearg=-1) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/dialog_csv.py0000664000175000017500000001752214332253347017141 0ustar00jssjss# Copyright (C) 2013 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## import csv from .. import qtall as qt from ..dialogs import importdialog, veuszdialog from .. import utils from . import defn_csv from . import base def _(text, disambiguation=None, context="Import_CSV"): return qt.QCoreApplication.translate(context, text, disambiguation) csv_delimiters = [',', '{tab}', '{space}', '|', ':', ';'] csv_text_delimiters = ['"', "'"] csv_locales = [_('System'), _('English'), _('European')] csv_delimiter_map = { '{tab}': '\t', '{space}': ' ' } def csvLocaleIndexToLocale(idx): """Convert index to text locale.""" return (qt.QLocale().name(), 'en_US', 'de_DE')[idx] class ImportTabCSV(importdialog.ImportTab): """For importing data from CSV files.""" resource = 'import_csv.ui' filetypes = ('.csv', '.tsv') filefilter = _('CSV files') def loadUi(self): """Load user interface and setup panel.""" importdialog.ImportTab.loadUi(self) self.csvhelpbutton.clicked.connect(self.slotHelp) self.csvdelimitercombo.editTextChanged.connect( self.dialog.slotUpdatePreview) self.csvskipwhitespacecheck.stateChanged.connect( self.dialog.slotUpdatePreview) self.csvtextdelimitercombo.editTextChanged.connect( self.dialog.slotUpdatePreview) self.csvdelimitercombo.default = csv_delimiters self.csvtextdelimitercombo.default = csv_text_delimiters self.csvdatefmtcombo.default = [ 'YYYY-MM-DD|T|hh:mm:ss', 'DD/MM/YY| |hh:mm:ss', 'M/D/YY| |hh:mm:ss' ] self.csvnumfmtcombo.defaultlist = csv_locales self.csvheadermodecombo.defaultlist = [_('Multiple'), _('1st row'), _('None')] self.csvdirectioncombo.defaultlist = [_('Columns'), _('Rows')] def reset(self): """Reset controls.""" self.csvdelimitercombo.setEditText(",") self.csvskipwhitespacecheck.setChecked(False) self.csvtextdelimitercombo.setEditText('"') self.csvdirectioncombo.setCurrentIndex(0) self.csvignorehdrspin.setValue(0) self.csvignoretopspin.setValue(0) self.csvblanksdatacheck.setChecked(False) self.csvnumfmtcombo.setCurrentIndex(0) self.csvdatefmtcombo.setEditText( defn_csv.ImportParamsCSV.defaults['dateformat']) self.csvheadermodecombo.setCurrentIndex(0) def slotHelp(self): """Asked for help.""" d = veuszdialog.VeuszDialog(self.dialog.mainwindow, 'importhelpcsv.ui') self.dialog.mainwindow.showDialog(d) def getCSVDelimiter(self): """Get CSV delimiter, converting friendly names.""" delim = str( self.csvdelimitercombo.text() ) if delim in csv_delimiter_map: delim = csv_delimiter_map[delim] return delim def doPreview(self, filename, encoding): """CSV preview - show first few rows""" t = self.previewtablecsv t.verticalHeader().show() # restore from a previous import t.horizontalHeader().show() t.horizontalHeader().setStretchLastSection(False) t.clear() t.setColumnCount(0) t.setRowCount(0) try: delimiter = self.getCSVDelimiter() textdelimiter = str(self.csvtextdelimitercombo.currentText()) except UnicodeEncodeError: # need to be real str not unicode return False # need to be single character if len(delimiter) != 1 or len(textdelimiter) != 1: return False skipwhitespace = self.csvskipwhitespacecheck.isChecked() try: reader = utils.get_unicode_csv_reader( filename, delimiter=delimiter, quotechar=textdelimiter, skipinitialspace=skipwhitespace, encoding=encoding ) # construct list of rows rows = [] numcols = 0 try: for i in range(10): row = next(reader) rows.append(row) numcols = max(numcols, len(row)) rows.append(['...']) numcols = max(numcols, 1) except StopIteration: pass numrows = len(rows) except (EnvironmentError, UnicodeError, csv.Error): return False # fill up table t.setColumnCount(numcols) t.setRowCount(numrows) for r in range(numrows): for c in range(numcols): if c < len(rows[r]): item = qt.QTableWidgetItem(rows[r][c]) t.setItem(r, c, item) return True def doImport(self, doc, filename, linked, encoding, prefix, suffix, tags): """Import from CSV file.""" # get various values inrows = self.csvdirectioncombo.currentIndex() == 1 try: delimiter = self.getCSVDelimiter() textdelimiter = str(self.csvtextdelimitercombo.currentText()) except UnicodeEncodeError: return skipwhitespace = self.csvskipwhitespacecheck.isChecked() numericlocale = csvLocaleIndexToLocale( self.csvnumfmtcombo.currentIndex() ) headerignore = self.csvignorehdrspin.value() rowsignore = self.csvignoretopspin.value() blanksaredata = self.csvblanksdatacheck.isChecked() dateformat = self.csvdatefmtcombo.currentText() headermode = ('multi', '1st', 'none')[ self.csvheadermodecombo.currentIndex()] # create import parameters and operation objects params = defn_csv.ImportParamsCSV( filename=filename, readrows=inrows, encoding=encoding, delimiter=delimiter, skipwhitespace=skipwhitespace, textdelimiter=textdelimiter, headerignore=headerignore, rowsignore=rowsignore, blanksaredata=blanksaredata, numericlocale=numericlocale, dateformat=dateformat, headermode=headermode, prefix=prefix, suffix=suffix, tags=tags, linked=linked, ) try: op = defn_csv.OperationDataImportCSV(params) # actually import the data doc.applyOperation(op) # feature feedback utils.feedback.importcts['csv'] += 1 except (base.ImportingError, csv.Error) as e: qt.QMessageBox.warning(self, _("Veusz"), str(e)) return # update output, showing what datasets were imported lines = self.dialog.retnDatasetInfo(op.outnames, linked, filename) t = self.previewtablecsv t.verticalHeader().hide() t.horizontalHeader().hide() t.horizontalHeader().setStretchLastSection(True) t.clear() t.setColumnCount(1) t.setRowCount(len(lines)) for i, l in enumerate(lines): item = qt.QTableWidgetItem(l) t.setItem(i, 0, item) importdialog.registerImportTab(_('CS&V'), ImportTabCSV) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/dialog_fits.py0000664000175000017500000002515614332253347017315 0ustar00jssjss# Copyright (C) 2017 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## from .. import qtall as qt from .. import setting from .. import utils from ..dialogs import importdialog from . import base from . import defn_fits from . import fits_hdf5_tree from . import fits_hdf5_helpers def _(text, disambiguation=None, context="Import_FITS"): return qt.QCoreApplication.translate(context, text, disambiguation) # lazily imported fits = None def loadFITSModule(): global fits try: from astropy.io import fits except ImportError: try: import pyfits as fits except ImportError: pass def makeimagenode(parent, hdu, idx, name, dispname, datanodes): """Node for image-like HDUs.""" if hdu.data is None: return fits_hdf5_tree.EmptyDataNode(parent, name, dispname) attrs, colattrs = fits_hdf5_helpers.hduVeuszAttrs(hdu) datatype = 'numeric' shape = hdu.shape node = fits_hdf5_tree.FileDataNode( parent, name, attrs, datatype, str(hdu.header.get('BITPIX', '')), shape, dispname) datanodes.append(node) parent.children.append(node) def constructTree(fitsfile): """Turn fits file into a tree of nodes. Returns root and list of nodes showing datasets """ hdunames = fits_hdf5_helpers.getFITSHduNames(fitsfile) root = fits_hdf5_tree.FileGroupNode(None, '/', '/') # now iterate over file datanodes = [] for idx, hdu in enumerate(fitsfile): hduname = hdunames[idx] dispname = '%s [%i]' % (hduname, idx) if hdu.is_image: # image hdu makeimagenode(root, hdu, idx, '/%s' % hduname, dispname, datanodes) elif hasattr(hdu, 'columns'): # parent for table tabshape = hdu.data.shape childnode = fits_hdf5_tree.FileCompoundNode( root, '/%s' % hduname, dispname, tabshape) root.children.append(childnode) attrs, colattrs = fits_hdf5_helpers.hduVeuszAttrs(hdu) # create new nodes for each column in table for col in hdu.columns: cname = col.name.lower() cdatatype, clen = fits_hdf5_helpers.convertFITSDataFormat( col.format.strip()) cshape = tabshape if clen==1 else tuple(list(tabshape)+[clen]) # attributes specific to column cattrs = colattrs.get(cname, {}) cnode = fits_hdf5_tree.FileDataNode( childnode, '/%s/%s' % (hduname, cname), cattrs, cdatatype, col.format, cshape, cname) childnode.children.append(cnode) datanodes.append(cnode) return root, datanodes class ImportTabFITS(importdialog.ImportTab): """Tab for importing FITS file.""" resource = "import_fits.ui" filetypes = ('.fits', '.fit', '.FITS', '.FIT') filefilter = _('FITS files') def showError(self, err): node = fits_hdf5_tree.ErrorNode(None, err) model = fits_hdf5_tree.GenericTreeModel(self, node, ['']) self.fitstreeview.setModel(model) self.oldselection = (None, None) self.newCurrentSel(None, None) def loadUi(self): importdialog.ImportTab.loadUi(self) self.datanodes = [] valid = qt.QDoubleValidator(self) valid.setNotation(qt.QDoubleValidator.ScientificNotation) for w in (self.fitstwodminx, self.fitstwodminy, self.fitstwodmaxx, self.fitstwodmaxy): w.setValidator(valid) def doPreview(self, filename, encoding): """Show file as tree.""" loadFITSModule() if fits is None: self.showError(_("Cannot load fits module")) return False if not filename: self.showError(_("Cannot open file")) return False try: # check can be opened first with open(filename, "r") as f: pass with fits.open(filename, "readonly") as f: self.rootnode, self.datanodes = constructTree(f) except IOError: self.showError(_("Cannot open file")) return False fits_hdf5_tree.setupTreeView( self.fitstreeview, self.rootnode, self.datanodes) self.fitstreeview.selectionModel().currentChanged.connect( self.newCurrentSel) # update widgets for options at bottom self.oldselection = (None, None) self.newCurrentSel(None, None) return True def showOptionsTwoD(self, node): """Update options for 2d datasets on dialog.""" ranges = node.options.get('twodranges') if ranges is None: ranges = [None]*4 for w, v in zip((self.fitstwodminx, self.fitstwodminy, self.fitstwodmaxx, self.fitstwodmaxy), ranges): if v is None: w.clear() else: w.setText(setting.uilocale.toString(v)) readas1d = node.options.get('twod_as_oned') self.fitstwodimport1d.setChecked(bool(readas1d)) wcsmode = node.options.get('wcsmode', 'linear_wcs') idx = { 'linear_wcs': 0, 'pixel': 1, 'pixel_wcs': 2, 'fraction': 3, }[wcsmode] self.fitswcsmode.setCurrentIndex(idx) def updateOptionsTwoD(self, node): """Read options for 2d datasets on dialog.""" rangeout = [] for w in ( self.fitstwodminx, self.fitstwodminy, self.fitstwodmaxx, self.fitstwodmaxy): txt = w.text() val, ok = setting.uilocale.toDouble(txt) if not ok: val = None rangeout.append(val) if rangeout == [None, None, None, None]: try: del node.options['twodranges'] except KeyError: pass elif None not in rangeout: # update node.options['twodranges'] = tuple(rangeout) readas1d = self.fitstwodimport1d.isChecked() if readas1d: node.options['twod_as_oned'] = True else: try: del node.options['twod_as_oned'] except KeyError: pass wcsmode = ['linear_wcs', 'pixel', 'pixel_wcs', 'fraction'][ self.fitswcsmode.currentIndex()] node.options['wcsmode'] = wcsmode def updateOptions(self): """Update options for nodes from dialog.""" if self.oldselection[0] is not None: node, name = self.oldselection # update node options if name == 'twod': self.updateOptionsTwoD(node) def newCurrentSel(self, new, old): """New item selected in the tree.""" self.updateOptions() # show appropriate widgets at bottom for editing options toshow = node = None if new is not None and new.isValid(): node = new.internalPointer() if isinstance(node, fits_hdf5_tree.FileDataNode): if node.getDims() == 2 and node.numeric: toshow = 'twod' self.showOptionsTwoD(node) # so we know which options to update next self.oldselection = (node, toshow) for widget, name in ( (self.fitstwodgrp, 'twod'), ): if name == toshow: widget.show() else: widget.hide() def doImport(self, doc, filename, linked, encoding, prefix, suffix, tags): """Import file.""" self.updateOptions() namemap = {} slices = {} twodranges = {} twod_as_oned = set() wcsmodes = {} for node in self.datanodes: inname = node.importname.strip() if inname: namemap[node.fullname] = inname if node.slice: slices[node.fullname] = node.slice if 'twodranges' in node.options: twodranges[node.fullname]= node.options['twodranges'] if 'twod_as_oned' in node.options: twod_as_oned.add(node.fullname) if ('wcsmode' in node.options and node.options['wcsmode'] != 'linear_wcs'): wcsmodes[node.fullname] = node.options['wcsmode'] items = [] def recursiveitems(node): if isinstance(node, fits_hdf5_tree.FileGroupNode): if node.grpimport: items.append(node.fullname) else: for c in node.children: recursiveitems(c) else: if node.toimport: items.append(node.fullname) recursiveitems(self.rootnode) prefix, suffix = self.dialog.getPrefixSuffix(filename) params = defn_fits.ImportParamsFITS( filename=filename, items=items, namemap=namemap, slices=slices, twodranges=twodranges, twod_as_oned=twod_as_oned, wcsmodes=wcsmodes, tags=tags, prefix=prefix, suffix=suffix, linked=linked, ) op = defn_fits.OperationDataImportFITS(params) try: # actually do the import doc.applyOperation(op) # inform user self.fitsimportstatus.setText( _("Import complete (%i datasets)") % len(op.outnames)) # feature feedback utils.feedback.importcts['fits'] += 1 except base.ImportingError as e: self.fitsimportstatus.setText(_("Error: %s") % str(e)) qt.QTimer.singleShot(4000, self.fitsimportstatus.clear) importdialog.registerImportTab(_('FI&TS'), ImportTabFITS) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/dialog_hdf5.py0000664000175000017500000003244014332253347017170 0ustar00jssjss# Copyright (C) 2013 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## from .. import qtall as qt from .. import setting from .. import utils from ..dialogs import importdialog from . import base from . import defn_hdf5 from . import fits_hdf5_tree from . import fits_hdf5_helpers def _(text, disambiguation=None, context="Import_HDF5"): return qt.QCoreApplication.translate(context, text, disambiguation) # lazily imported h5py = None def dispname(child): """Get display name for HDF5 group/dataset.""" return child.name.split('/')[-1] def computedatatype(dtype): """Compute 'simple' datatype for tree widget from dtype.""" datatype = 'invalid' k = dtype.kind if k in ('b', 'i', 'u', 'f'): datatype = 'numeric' elif k in ('S', 'a'): datatype = 'text' elif k == 'O': # FIXME: only supporting variable length strings so far typ = h5py.check_dtype(vlen=dtype) if typ is str: datatype = 'text' return datatype def makedatanode(parent, ds): """Make a node in the tree for importable data.""" # combine shape from dataset and column (if any) shape = tuple(list(ds.shape)+list(ds.dtype.shape)) dtype = computedatatype(ds.dtype) vszattrs = {} for attr in ds.attrs: if attr[:4] == 'vsz_': vszattrs[attr] = defn_hdf5.bconv(ds.attrs[attr]) return fits_hdf5_tree.FileDataNode( parent, ds.name, vszattrs, dtype, ds.dtype, shape, dispname(ds)) def addsub(parent, grp, datanodes): """Recursively descend through groups in the hdf5 file.""" for child in sorted(grp.keys()): try: hchild = grp[child] except KeyError: continue if isinstance(hchild, h5py.Group): childnode = fits_hdf5_tree.FileGroupNode( parent, hchild.name, dispname(hchild)) addsub(childnode, hchild, datanodes) elif isinstance(hchild, h5py.Dataset): try: dtype = hchild.dtype except TypeError: # raised if datatype not supported by h5py continue if dtype.kind == 'V': # compound data type - add a special group for # the compound, then its children childnode = fits_hdf5_tree.FileCompoundNode( parent, hchild.name, dispname(hchild), hchild.shape) for field in sorted(hchild.dtype.fields.keys()): # get types and shape for individual sub-parts fdtype = hchild.dtype[field] fdatatype = computedatatype(fdtype) fshape = tuple( list(hchild[field].shape)+list(fdtype.shape)) fattrs = fits_hdf5_helpers.filterAttrsByName( hchild.attrs, field) fnode = fits_hdf5_tree.FileDataNode( childnode, hchild.name+'/'+field, fattrs, fdatatype, fdtype, fshape, field, ) childnode.children.append(fnode) datanodes.append(fnode) else: # normal dataset childnode = makedatanode(parent, hchild) datanodes.append(childnode) parent.children.append(childnode) def constructTree(hdf5file): """Turn hdf5 file into a tree of nodes. Returns root and list of nodes showing datasets """ datanodes = [] root = fits_hdf5_tree.FileGroupNode(None, '', '/') addsub(root, hdf5file, datanodes) return root, datanodes class ImportTabHDF5(importdialog.ImportTab): """Tab for importing HDF5 file.""" resource = "import_hdf5.ui" filetypes = ('.hdf', '.hdf5', '.h5', '.he5') filefilter = _('HDF5 files') def __init__(self, *args): importdialog.ImportTab.__init__(self, *args) self.oldselection = (None, None) def showError(self, err): node = fits_hdf5_tree.ErrorNode(None, err) model = fits_hdf5_tree.GenericTreeModel(self, node, ['']) self.hdftreeview.setModel(model) self.oldselection = (None, None) self.newCurrentSel(None, None) def loadUi(self): importdialog.ImportTab.loadUi(self) self.datanodes = [] valid = qt.QDoubleValidator(self) valid.setNotation(qt.QDoubleValidator.ScientificNotation) for w in (self.hdftwodminx, self.hdftwodminy, self.hdftwodmaxx, self.hdftwodmaxy): w.setValidator(valid) self.hdftextdate.addItems([ _('No'), 'YYYY-MM-DD|T|hh:mm:ss', 'DD/MM/YY| |hh:mm:ss', 'M/D/YY| |hh:mm:ss', ]) def doPreview(self, filename, encoding): """Show file as tree.""" global h5py if h5py is None: try: import h5py except ImportError: self.showError(_("Cannot load h5py module")) return False if not filename: self.showError(_("Cannot open file")) return False try: # check can be opened first with open(filename, "r") as f: pass with h5py.File(filename, "r") as f: self.rootnode, self.datanodes = constructTree(f) except IOError: self.showError(_("Cannot open file")) return False fits_hdf5_tree.setupTreeView( self.hdftreeview, self.rootnode, self.datanodes) self.hdftreeview.selectionModel().currentChanged.connect( self.newCurrentSel) # update widgets for options at bottom self.oldselection = (None, None) self.newCurrentSel(None, None) return True def showOptionsOneD(self, node): """Show options for 1d datasets on dialog.""" dt = node.options.get('convert_datetime') self.hdfoneddate.setCurrentIndex({ None: 0, 'veusz': 1, 'unix': 2}[dt]) def showOptionsTwoD(self, node): """Update options for 2d datasets on dialog.""" ranges = node.options.get('twodranges') if ranges is None: ranges = [None]*4 for w, v in zip((self.hdftwodminx, self.hdftwodminy, self.hdftwodmaxx, self.hdftwodmaxy), ranges): if v is None: w.clear() else: w.setText(setting.uilocale.toString(v)) readas1d = node.options.get('twod_as_oned') self.hdftwodimport1d.setChecked(bool(readas1d)) def showOptionsText(self, node): """Update options for text datasets on dialog.""" text = node.options.get('convert_datetime') if not text: self.hdftextdate.setCurrentIndex(0) else: if self.hdftextdate.findText(text) == -1: self.hdftextdate.addItem(text) self.hdftextdate.lineEdit().setText(text) def updateOptionsOneD(self, node): """Read options for 1d datasets on dialog.""" idx = self.hdfoneddate.currentIndex() if idx == 0: try: del node.options['convert_datetime'] except KeyError: pass else: node.options['convert_datetime'] = { 1: 'veusz', 2: 'unix'}[idx] def updateOptionsTwoD(self, node): """Read options for 2d datasets on dialog.""" rangeout = [] for w in (self.hdftwodminx, self.hdftwodminy, self.hdftwodmaxx, self.hdftwodmaxy): txt = w.text() val, ok = setting.uilocale.toDouble(txt) if not ok: val = None rangeout.append(val) if rangeout == [None, None, None, None]: try: del node.options['twodranges'] except KeyError: pass elif None not in rangeout: # update node.options['twodranges'] = tuple(rangeout) readas1d = self.hdftwodimport1d.isChecked() if readas1d: node.options['twod_as_oned'] = True else: try: del node.options['twod_as_oned'] except KeyError: pass def updateOptionsText(self, node): """Read options for text datasets on dialog.""" dtext = self.hdftextdate.currentText().strip() if self.hdftextdate.currentIndex() == 0 or dtext == '': try: del node.options['convert_datetime'] except KeyError: pass else: node.options['convert_datetime'] = dtext def updateOptions(self): """Update options for nodes from dialog.""" if self.oldselection[0] is not None: node, name = self.oldselection # update node options if name == 'oned': self.updateOptionsOneD(node) elif name == 'twod': self.updateOptionsTwoD(node) elif name == 'text': self.updateOptionsText(node) def newCurrentSel(self, new, old): """New item selected in the tree.""" self.updateOptions() # show appropriate widgets at bottom for editing options toshow = node = None if new is not None and new.isValid(): node = new.internalPointer() if isinstance(node, fits_hdf5_tree.FileDataNode): if node.getDims() == 2 and node.numeric: toshow = 'twod' self.showOptionsTwoD(node) elif node.getDims() == 1 and node.numeric: toshow = 'oned' self.showOptionsOneD(node) elif node.text: toshow = 'text' self.showOptionsText(node) # so we know which options to update next self.oldselection = (node, toshow) for widget, name in ( (self.hdfonedgrp, 'oned'), (self.hdftwodgrp, 'twod'), (self.hdftextgrp, 'text'), ): if name == toshow: widget.show() else: widget.hide() def doImport(self, doc, filename, linked, encoding, prefix, suffix, tags): """Import file.""" self.updateOptions() namemap = {} slices = {} twodranges = {} twod_as_oned = set() convert_datetime = {} for node in self.datanodes: inname = node.importname.strip() if inname: namemap[node.fullname] = inname if node.slice: slices[node.fullname] = node.slice if 'twodranges' in node.options: twodranges[node.fullname]= node.options['twodranges'] if 'twod_as_oned' in node.options: twod_as_oned.add(node.fullname) if 'convert_datetime' in node.options: convert_datetime[node.fullname] = node.options['convert_datetime'] items = [] def recursiveitems(node): if isinstance(node, fits_hdf5_tree.FileGroupNode): if node.grpimport: items.append(node.fullname) else: for c in node.children: recursiveitems(c) else: if node.toimport: items.append(node.fullname) recursiveitems(self.rootnode) prefix, suffix = self.dialog.getPrefixSuffix(filename) params = defn_hdf5.ImportParamsHDF5( filename=filename, items=items, namemap=namemap, slices=slices, twodranges=twodranges, twod_as_oned=twod_as_oned, convert_datetime=convert_datetime, tags=tags, prefix=prefix, suffix=suffix, linked=linked, ) op = defn_hdf5.OperationDataImportHDF5(params) try: # actually do the import doc.applyOperation(op) # inform user self.hdfimportstatus.setText( _("Import complete (%i datasets)") % len(op.outnames)) # feature feedback utils.feedback.importcts['hdf5'] += 1 except base.ImportingError as e: self.hdfimportstatus.setText(_("Error: %s") % str(e)) qt.QTimer.singleShot(4000, self.hdfimportstatus.clear) importdialog.registerImportTab(_('HDF&5'), ImportTabHDF5) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/dialog_nd.py0000664000175000017500000001310114332253347016734 0ustar00jssjss# Copyright (C) 2016 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## import csv import re from .. import qtall as qt from .. import utils from ..dialogs import importdialog from . import defn_nd from . import simpleread from . import dialog_csv def _(text, disambiguation=None, context="Import_ND"): return qt.QCoreApplication.translate(context, text, disambiguation) class ImportTabND(importdialog.ImportTab): """Tab for importing from a ND data file.""" resource = "import_nd.ui" def loadUi(self): """Load user interface and set up validators.""" importdialog.ImportTab.loadUi(self) self.nd_mode.defaultlist = [_("Text"), _("CSV")] self.nd_shapeedit.default = [_("Auto")] self.nd_csvdelim.default = dialog_csv.csv_delimiters self.nd_csvtextdelim.default = dialog_csv.csv_text_delimiters self.nd_csvlocale.defaultlist = dialog_csv.csv_locales self.nd_mode.currentIndexChanged.connect(self.slotNewMode) def slotNewMode(self, index): """Change other widgets depending on mode.""" csv = index == 1 self.nd_csvdelim.setEnabled(csv) self.nd_csvtextdelim.setEnabled(csv) self.nd_csvlocale.setEnabled(csv) def reset(self): """Reset controls.""" self.nd_datasetedit.setEditText("") self.nd_shapeedit.setEditText(_("Auto")) self.nd_transposecheck.setChecked(False) self.nd_mode.setCurrentIndex(0) self.nd_csvdelim.setEditText(dialog_csv.csv_delimiters[0]) self.nd_csvtextdelim.setEditText(dialog_csv.csv_text_delimiters[0]) self.nd_csvlocale.setCurrentIndex(0) def doPreview(self, filename, encoding): """Preview nD dataset files.""" try: ifile = utils.openEncoding(filename, encoding) text = ifile.read(4096) + "\n" if len(ifile.read(1)) != 0: # if there is remaining data add ... text += "...\n" self.nd_previewedit.setPlainText(text) return True except (UnicodeError, EnvironmentError): self.nd_previewedit.setPlainText("") return False def doImport(self, doc, filename, linked, encoding, prefix, suffix, tags): """Import from ND file.""" class error(RuntimeError): pass try: dataset = self.nd_datasetedit.text().strip() if not dataset: raise error(_("A dataset name should be given")) transpose = self.nd_transposecheck.isChecked() mode = ("text", "csv")[self.nd_mode.currentIndex()] # this needs to be a str for the csv module (py2) csvdelimiter = str(self.nd_csvdelim.text()) if csvdelimiter in dialog_csv.csv_delimiter_map: csvdelimiter = dialog_csv.csv_delimiter_map[csvdelimiter] csvtextdelimiter = str(self.nd_csvtextdelim.text()) csvlocale = dialog_csv.csvLocaleIndexToLocale( self.nd_csvlocale.currentIndex()) shapetxt = self.nd_shapeedit.text().strip() if shapetxt == _("Auto"): shape = None else: shapesplit = re.split("[,;x* ]+", shapetxt) try: shape = tuple([int(x) for x in shapesplit]) except ValueError: raise error(_("Shape entries should be integers")) if len(shape) == 0: raise error(_("No shape entries given")) params = defn_nd.ImportParamsND( dataset=dataset, filename=filename, shape=shape, transpose=transpose, mode=mode, csvdelimiter=csvdelimiter, csvtextdelimiter=csvtextdelimiter, csvlocale=csvlocale, prefix=prefix, suffix=suffix, tags=tags, linked=linked, encoding=encoding ) # do the importing op = defn_nd.OperationDataImportND(params) doc.applyOperation(op) # show result output = [_("Successfully read:")] for ds in op.outnames: output.append("%s: %s" % ( ds, doc.data[ds].description()) ) output = "\n".join(output) # feature feedback utils.feedback.importcts['nd'] += 1 except error as e: output = e.args[0] except (simpleread.ReadNDError, csv.Error) as e: output = _("Error importing datasets:\n %s") % str(e) # show status in preview box self.nd_previewedit.setPlainText(output) importdialog.registerImportTab(_("&ND"), ImportTabND) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/dialog_plugin.py0000664000175000017500000001732214332253347017642 0ustar00jssjss# Copyright (C) 2013 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## from .. import qtall as qt from .. import setting from .. import plugins from .. import utils from ..dialogs import importdialog from . import defn_plugin def _(text, disambiguation=None, context="Import_Plugin"): return qt.QCoreApplication.translate(context, text, disambiguation) class ImportTabPlugins(importdialog.ImportTab): """Tab for importing using a plugin.""" resource = 'import_plugins.ui' def __init__(self, dialog, promote=None): """Initialise dialog. importdialog is the import dialog itself. If promote is set to a name of a plugin, it is promoted to its own tab """ importdialog.ImportTab.__init__(self, dialog) self.promote = promote self.plugininstance = None def loadUi(self): """Load the user interface.""" importdialog.ImportTab.loadUi(self) # fill plugin combo names = sorted([p.name for p in plugins.importpluginregistry]) self.pluginType.addItems(names) self.pluginType.currentIndexChanged[int].connect(self.pluginChanged) self.fields = [] # load previous plugin idx = -1 if self.promote is None: if 'import_plugin' in setting.settingdb: try: idx = names.index(setting.settingdb['import_plugin']) except ValueError: pass else: # set the correct entry for the plugin idx = names.index(self.promote) # then hide the widget so it can't be changed self.pluginchoicewidget.hide() if idx >= 0: self.pluginType.setCurrentIndex(idx) self.pluginChanged(-1) def getPluginFields(self): """Return a dict of the fields given.""" results = {} plugin = self.getSelectedPlugin() for field, cntrls in zip(plugin.fields, self.fields): results[field.name] = field.getControlResults(cntrls) return results def getSelectedPlugin(self): """Get instance selected plugin or none.""" selname = self.pluginType.currentText() names = [p.name for p in plugins.importpluginregistry] try: idx = names.index(selname) except ValueError: return None p = plugins.importpluginregistry[idx] if isinstance(p, type): # this is a class, rather than an object if not isinstance(self.plugininstance, p): # create new instance, if required self.plugininstance = p() return self.plugininstance else: # backward compatibility with old API return p def pluginChanged(self, index): """Update controls based on index.""" plugin = self.getSelectedPlugin() if self.promote is None: setting.settingdb['import_plugin'] = plugin.name # delete old controls layout = self.pluginParams.layout() for line in self.fields: for cntrl in line: layout.removeWidget(cntrl) cntrl.deleteLater() del self.fields[:] # requires a document to make controls below import veusz.document tempdoc = veusz.document.Document() # make new controls for row, field in enumerate(plugin.fields): cntrls = field.makeControl(tempdoc, None) layout.addWidget(cntrls[0], row, 0) layout.addWidget(cntrls[1], row, 1) self.fields.append(cntrls) # update label self.pluginDescr.setText( "%s (%s)\n%s" % (plugin.name, plugin.author, plugin.description)) self.dialog.slotUpdatePreview() def doPreview(self, filename, encoding): """Preview using plugin.""" # check file exists if filename != '{clipboard}': try: f = open(filename, 'r') f.close() except EnvironmentError: self.pluginPreview.setPlainText('') return False # get the plugin selected plugin = self.getSelectedPlugin() if plugin is None: self.pluginPreview.setPlainText('') return False # ask the plugin for text params = plugins.ImportPluginParams( filename, encoding, self.getPluginFields()) try: text, ok = plugin.getPreview(params) except plugins.ImportPluginException as ex: text = str(ex) ok = False self.pluginPreview.setPlainText(text) return bool(ok) def doImport(self, doc, filename, linked, encoding, prefix, suffix, tags): """Import using plugin.""" fields = self.getPluginFields() plugin = self.pluginType.currentText() params = defn_plugin.ImportParamsPlugin( plugin=plugin, filename=filename, linked=linked, encoding=encoding, prefix=prefix, suffix=suffix, tags=tags, **fields) op = defn_plugin.OperationDataImportPlugin(params) try: doc.applyOperation(op) except plugins.ImportPluginException as ex: self.pluginPreview.setPlainText( str(ex) ) return # feature feedback utils.feedback.importcts['plugin'] += 1 out = [_('Imported data for datasets:')] for ds in op.outnames: out.append( '%s: %s' % ( ds, doc.data[ds].description()) ) if op.outcustoms: out.append('') out.append(_('Set custom definitions:')) # format custom definitions out += ['%s %s=%s' % tuple(c) for c in op.outcustoms] self.pluginPreview.setPlainText('\n'.join(out)) def isFiletypeSupported(self, ftype): """Is the filetype supported by this tab?""" if self.promote is None: # look through list of supported plugins to check filetypes inany = False for p in plugins.importpluginregistry: if ftype in p.file_extensions: inany = True return inany else: # find plugin class and check filetype for p in plugins.importpluginregistry: if p.name == self.promote: return ftype in p.file_extensions def useFiletype(self, ftype): """Select the plugin corresponding to the filetype.""" if self.promote is None: plugin = None for p in plugins.importpluginregistry: if ftype in p.file_extensions: plugin = p.name idx = self.pluginType.findText(plugin, qt.Qt.MatchExactly) self.pluginType.setCurrentIndex(idx) self.pluginChanged(-1) importdialog.registerImportTab(_('Plugins'), ImportTabPlugins) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/dialog_standard.py0000664000175000017500000001012214332253347020133 0ustar00jssjss# Copyright (C) 2013 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## from .. import qtall as qt from .. import utils from ..dialogs import importdialog, veuszdialog from . import defn_standard from . import simpleread def _(text, disambiguation=None, context="Import_Standard"): return qt.QCoreApplication.translate(context, text, disambiguation) class ImportTabStandard(importdialog.ImportTab): """Standard import format tab.""" resource = 'import_standard.ui' filetypes = ('.dat', '.txt') filefilter = _('Text data') def loadUi(self): """Load widget and setup controls.""" importdialog.ImportTab.loadUi(self) self.helpbutton.clicked.connect(self.slotHelp) self.blockcheckbox.default = False self.ignoretextcheckbox.default = True def reset(self): """Reset controls.""" self.blockcheckbox.setChecked(False) self.ignoretextcheckbox.setChecked(True) self.descriptoredit.setEditText("") def slotHelp(self): """Asked for help.""" d = veuszdialog.VeuszDialog(self.dialog.mainwindow, 'importhelp.ui') self.dialog.mainwindow.showDialog(d) def doPreview(self, filename, encoding): """Standard preview - show start of text.""" try: ifile = utils.openEncoding(filename, encoding) text = ifile.read(4096)+'\n' if len(ifile.read(1)) != 0: # if there is remaining data add ... text += '...\n' self.previewedit.setPlainText(text) return True except (UnicodeError, EnvironmentError): self.previewedit.setPlainText('') return False def doImport(self, doc, filename, linked, encoding, prefix, suffix, tags): """Standard Veusz importing.""" # convert controls to values descriptor = self.descriptoredit.text() useblocks = self.blockcheckbox.isChecked() ignoretext = self.ignoretextcheckbox.isChecked() params = defn_standard.ImportParamsSimple( descriptor=descriptor, filename=filename, useblocks=useblocks, linked=linked, prefix=prefix, suffix=suffix, tags=tags, ignoretext=ignoretext, encoding=encoding, ) try: # construct operation. this checks the descriptor. op = defn_standard.OperationDataImport(params) except simpleread.DescriptorError: qt.QMessageBox.warning( self, _("Veusz"), _("Cannot interpret descriptor")) return # actually import the data doc.applyOperation(op) # tell the user what happened # failures in conversion lines = [] for var, count in op.outinvalids.items(): if count != 0: lines.append( _('%i conversions failed for dataset "%s"') % (count, var)) if len(lines) != 0: lines.append('') lines += self.dialog.retnDatasetInfo(op.outnames, linked, filename) self.previewedit.setPlainText( '\n'.join(lines) ) # feature feedback utils.feedback.importcts['std'] += 1 importdialog.registerImportTab(_('&Standard'), ImportTabStandard) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/dialog_twod.py0000664000175000017500000001607214332253347017322 0ustar00jssjss# Copyright (C) 2013 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## import csv import re from .. import qtall as qt from .. import utils from ..dialogs import importdialog from . import defn_twod from . import simpleread from . import dialog_csv def _(text, disambiguation=None, context="Import_2D"): return qt.QCoreApplication.translate(context, text, disambiguation) class ImportTab2D(importdialog.ImportTab): """Tab for importing from a 2D data file.""" resource = 'import_2d.ui' def loadUi(self): """Load user interface and set up validators.""" importdialog.ImportTab.loadUi(self) self.rangeedits = [ self.twod_xminedit, self.twod_xmaxedit, self.twod_yminedit, self.twod_ymaxedit ] # set up some validators for 2d edits dval = qt.QDoubleValidator(self) for w in self.rangeedits: w.setValidator(dval) self.twod_mode.defaultlist = [_('Text'), _('CSV')] self.twod_csvdelim.default = dialog_csv.csv_delimiters self.twod_csvtextdelim.default = dialog_csv.csv_text_delimiters self.twod_csvlocale.defaultlist = dialog_csv.csv_locales self.twod_mode.currentIndexChanged.connect(self.slotNewMode) self.twod_gridatedge.stateChanged.connect(self.slotGridAtEdgeChanged) def slotNewMode(self, index): """Change other widgets depending on mode.""" csv = index == 1 self.twod_csvdelim.setEnabled(csv) self.twod_csvtextdelim.setEnabled(csv) self.twod_csvlocale.setEnabled(csv) def slotGridAtEdgeChanged(self, state): """Enable/disable widgets depending on grid at edge.""" nogridatedge = state == qt.Qt.Unchecked for w in self.rangeedits: w.setEnabled(nogridatedge) if not nogridatedge: w.setEditText("") def reset(self): """Reset controls.""" for combo in self.rangeedits + [self.twod_datasetsedit]: combo.setEditText("") for check in ( self.twod_invertrowscheck, self.twod_invertcolscheck, self.twod_transposecheck, self.twod_gridatedge, self.twod_gridatedge ): check.setChecked(False) self.twod_mode.setCurrentIndex(0) self.twod_csvdelim.setEditText(dialog_csv.csv_delimiters[0]) self.twod_csvtextdelim.setEditText(dialog_csv.csv_text_delimiters[0]) self.twod_csvlocale.setCurrentIndex(0) def doPreview(self, filename, encoding): """Preview 2d dataset files.""" try: ifile = utils.openEncoding(filename, encoding) text = ifile.read(4096)+'\n' if len(ifile.read(1)) != 0: # if there is remaining data add ... text += '...\n' self.twod_previewedit.setPlainText(text) return True except (UnicodeError, EnvironmentError): self.twod_previewedit.setPlainText('') return False def doImport(self, doc, filename, linked, encoding, prefix, suffix, tags): """Import from 2D file.""" # this really needs improvement... # get datasets and split into a list datasets = self.twod_datasetsedit.text() datasets = re.split('[, ]+', datasets) # strip out blank items datasets = [d for d in datasets if d != ''] # an obvious error... if len(datasets) == 0: self.twod_previewedit.setPlainText( _('At least one dataset needs to be given')) return # convert range parameters ranges = [] for e in self.rangeedits: f = e.text() r = None try: r = float(f) except ValueError: pass ranges.append(r) # propagate settings from dialog to reader rangex = None rangey = None if ranges[0] is not None and ranges[1] is not None: rangex = (ranges[0], ranges[1]) if ranges[2] is not None and ranges[3] is not None: rangey = (ranges[2], ranges[3]) invertrows = self.twod_invertrowscheck.isChecked() invertcols = self.twod_invertcolscheck.isChecked() transpose = self.twod_transposecheck.isChecked() gridatedge = self.twod_gridatedge.isChecked() mode = ('text', 'csv')[self.twod_mode.currentIndex()] # this needs to be a str for the csv module (py2) csvdelimiter = str(self.twod_csvdelim.text()) if csvdelimiter in dialog_csv.csv_delimiter_map: csvdelimiter = dialog_csv.csv_delimiter_map[csvdelimiter] csvtextdelimiter = str(self.twod_csvtextdelim.text()) csvlocale = dialog_csv.csvLocaleIndexToLocale( self.twod_csvlocale.currentIndex()) if len(csvdelimiter) != 1 or len(csvtextdelimiter) != 1: self.twod_previewedit.setPlainText( _('Delimiters must be single characters')) return # loop over datasets and read... params = defn_twod.ImportParams2D( datasetnames=datasets, filename=filename, xrange=rangex, yrange=rangey, invertrows=invertrows, invertcols=invertcols, transpose=transpose, gridatedge=gridatedge, mode=mode, csvdelimiter=csvdelimiter, csvtextdelimiter=csvtextdelimiter, csvlocale=csvlocale, prefix=prefix, suffix=suffix, tags=tags, linked=linked, encoding=encoding ) try: op = defn_twod.OperationDataImport2D(params) doc.applyOperation(op) output = [_('Successfully read datasets:')] for ds in op.outnames: output.append('%s: %s' % ( ds, doc.data[ds].description()) ) output = '\n'.join(output) # feature feedback utils.feedback.importcts['twod'] += 1 except (simpleread.Read2DError, csv.Error) as e: output = _('Error importing datasets:\n %s') % str(e) # show status in preview box self.twod_previewedit.setPlainText(output) importdialog.registerImportTab(_('&2D'), ImportTab2D) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/fits_hdf5_helpers.py0000664000175000017500000002103614332253347020417 0ustar00jssjss# Copyright (C) 2017 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## import sys import ast import re import numpy as N from .. import qtall as qt def _(text, disambiguation=None, context="Import_FITS_HDF5"): return qt.QCoreApplication.translate(context, text, disambiguation) def filterAttrsByName(attrs, name): """For compound datasets, attributes can be given on a per-column basis. This filters the attributes by the column name.""" name = name.strip() attrsout = {} for a in attrs: # attributes with _dsname suffixes are copied if a[:4] == "vsz_" and a[-len(name)-1:] == "_"+name: attrsout[a[:-len(name)-1]] = attrs[a] return attrsout def convertTextToSlice(slicetxt, numdims): """Convert a value like 0:1:3,:,::-1 to a tuple slice ((0,1,3), (None, None, None), (None, None, -1)) or reduce dimensions such as :,3 -> ((None,None,None),3) Also checks number of dimensions (including reduced) is numdims. Return -1 on error """ if slicetxt.strip() == '': return None slicearray = slicetxt.split(',') if len(slicearray) != numdims: # slice needs same dimensions as data return -1 allsliceout = [] for sliceap_idx, sliceap in enumerate(slicearray): sliceparts = sliceap.strip().split(':') if len(sliceparts) == 1: # reduce dimensions with single index try: allsliceout.append(int(sliceparts[0])) except ValueError: # invalid index return -1 elif len(sliceparts) not in (2, 3): return -1 else: sliceout = [] for p in sliceparts: p = p.strip() if not p: sliceout.append(None) else: try: sliceout.append(int(p)) except ValueError: return -1 if len(sliceout) == 2: sliceout.append(None) allsliceout.append(tuple(sliceout)) allempty = True for s in allsliceout: if s != (None, None, None): allempty = False if allempty: return None return tuple(allsliceout) def convertSliceToText(slice): """Convert tuple slice into text.""" if slice is None: return '' out = [] for spart in slice: if isinstance(spart, int): # single index out.append(str(spart)) continue sparttxt = [] for p in spart: if p is not None: sparttxt.append(str(p)) else: sparttxt.append('') if sparttxt[-1] == '': del sparttxt[-1] out.append(':'.join(sparttxt)) return ', '.join(out) def applySlices(data, slices): """Given hdf/numpy dataset, apply slicing tuple to it and return data.""" slist = [] for s in slices: if isinstance(s, int): slist.append(s) else: slist.append(slice(*s)) if s[2] is not None and s[2] < 0: # negative slicing doesn't work in h5py, so we # make a copy data = N.array(data) try: data = data[tuple(slist)] except (ValueError, IndexError): data = N.array([], dtype=N.float64) return data class ConvertError(RuntimeError): pass def convertFromBytes(s): """h5py often returns bytes instead of unicode. This decodes if in bytes """ if sys.version_info[0] == 3: if isinstance(s, bytes): return s.decode('utf-8') return s def convertDatasetToObject(data, slices, fill_value=None): """Convert numpy/hdf dataset to suitable data for veusz. Raise ConvertError if cannot.""" # lazily-loaded h5py try: from h5py import check_dtype except ImportError: # fallback if no h5py, e.g. only installed fits def check_dtype(vlen=None): return False if slices: data = applySlices(data, slices) try: kind = data.dtype.kind except TypeError: raise ConvertError(_("Could not get data type of dataset")) if kind in ('b', 'i', 'u', 'f'): data = N.array(data, dtype=N.float64) if data.ndim == 0: raise ConvertError(_("Dataset has no dimensions")) if fill_value is not None: # support NetCDF _FillValue data[data == fill_value] = N.nan return data elif kind in ('S', 'a', 'U') or ( kind == 'O' and check_dtype(vlen=data.dtype) is str): if hasattr(data, 'ndim') and data.ndim != 1: raise ConvertError(_("Text datasets must have 1 dimension")) strcnv = list(data) return strcnv raise ConvertError(_("Dataset has an invalid type")) def getFITSHduNames(fitsfile): """Return list of names to give HDUs given a FITS file.""" nameset = set() names = [] for i, hdu in enumerate(fitsfile): name = hdu.name if not name: name = 'hdu%i' % i # just in case people start naming HDUs hduX... while name in nameset: name += '~' else: name = name.lower() # EXTVER distinguishes identical names if 'EXTVER' in hdu.header: name = '%s%i' % (name, hdu.header['EXTVER']) # prevent duplicates if name in nameset: i = 2 while name+str(i) in nameset: i += 1 name += str(i) nameset.add(name) names.append(name) return names def convertFITSDataFormat(fmt): """Convert FITS TFORM codes into: (code, nlen) code is 'invalid', 'numeric' or 'text' nlen is number of entries for column """ # match the fits format text code [r]F[w[.d]] m = re.match(r'^([0-9]*)([A-Za-z])([0-9]*)(\.[0-9]+)?$', fmt) if not m: return (None, 'invalid', ()) grps = m.groups() # length of array try: nlen = int(grps[0]) except ValueError: nlen = 1 fcode = grps[1].upper() width = grps[2] if fcode == 'A' and not width: # note: we can't handle 2d text arrays, so we handle as invalid code = 'text' # even though strings are N characters, they are handled as singles nlen = 1 elif fcode in 'LXBIJKED': code = 'numeric' else: code = 'invalid' return code, nlen def hduVeuszAttrs(hdu): """Get veusz-specific attributes from a HDU header. These use the VEUSZ keyword and have the format of KEY=VALUE or COLUMN: KEY=VALUE Returns (attrs, colattrs) Where attrs is HDU-specific and colattrs is column specific (dict of dicts) """ attrs = {} colattrs = {} for k, v in hdu.header.items(): if k.lower() == 'veusz': # match syntax [OPTIONAL COLUMN:] KEY=VALUE match = re.match( r'^(?:([a-zA-Z0-9_]+)[ ]*:)?[ ]*([a-zA-Z0-9_]+)[ ]*=[ ]*(.*)$', v) if not match: continue col, key, tval = match.groups() key = key.lower() tval = tval.strip() # convert to python type if possible try: val = ast.literal_eval(tval) except Exception: val = tval if col: col = col.lower() # column-specific key value if col not in colattrs: colattrs[col] = {key: val} else: colattrs[col][key] = val else: # hdu-specific key value attrs[key] = val return attrs, colattrs ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/fits_hdf5_tree.py0000664000175000017500000004055414332253347017722 0ustar00jssjss# Copyright (C) 2017 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## from .. import qtall as qt from . import fits_hdf5_helpers def _(text, disambiguation=None, context="ImportTree"): return qt.QCoreApplication.translate(context, text, disambiguation) class GenericTreeModel(qt.QAbstractItemModel): """A generic tree model, operating on Node objects.""" def __init__(self, parent, root, columnheads): qt.QAbstractItemModel.__init__(self, parent) self.rootnode = root self.columnheads = columnheads def index(self, row, column, parent): if not parent.isValid(): return self.createIndex(row, column, self.rootnode) parentnode = parent.internalPointer() return self.createIndex(row, column, parentnode.children[row]) def parent(self, index): if not index.isValid(): return qt.QModelIndex() node = index.internalPointer() if node.parent is None: return qt.QModelIndex() else: parent = node.parent if parent.parent is None: row = 0 else: # find row of parent's parent for parent row = parent.parent.children.index(parent) return self.createIndex(row, 0, parent) def rowCount(self, parent): if not parent.isValid(): return 1 return len(parent.internalPointer().children) def data(self, index, role): if not index.isValid(): return None node = index.internalPointer() return node.data(index.column(), role) def setData(self, index, value, role): if not index.isValid(): return False node = index.internalPointer() return node.setData(self, index, value, role) def flags(self, index): defflags = qt.QAbstractItemModel.flags(self, index) if not index.isValid(): return defflags else: node = index.internalPointer() return node.flags(index.column(), defflags) def columnCount(self, parent): return len(self.columnheads) def headerData(self, section, orientation, role): if ( orientation == qt.Qt.Horizontal and role == qt.Qt.DisplayRole and section < len(self.columnheads) ): return self.columnheads[section] return None class Node: """Generic Node used by tree model.""" def __init__(self, parent): self.parent = parent self.children = [] def data(self, column, role): return None def flags(self, column, defflags): return defflags def setData(self, model, index, value, role): return False class ErrorNode(Node): """Node for showing error messages.""" def __init__(self, parent, name): Node.__init__(self, parent) self.name = name def data(self, column, role): if column == 0 and role == qt.Qt.DisplayRole: return self.name return None class ImportNameDeligate(qt.QItemDelegate): """This class is for choosing the import name.""" def __init__(self, parent, datanodes): qt.QItemDelegate.__init__(self, parent) self.datanodes = datanodes def createEditor(self, parent, option, index): """Create combobox for editing type.""" w = qt.QComboBox(parent) w.setEditable(True) node = index.internalPointer() out = [] for dn in (n for n in self.datanodes if n.toimport): name = dn.name out.append( (name, '') ) if ( len(dn.shape) == 1 and node is not dn and dn.shape == node.shape and node.numeric and dn.numeric and name[-4:] != ' (+)' and name[-4:] != ' (-)' and name[-5:] != ' (+-)' ): # add error bars for other datasets out.append( ('%s (+-)' % name, _("Import as symmetric error bar for '%s'") % name) ) out.append( ('%s (+)' % name, _("Import as positive error bar for '%s'") % name) ) out.append( ('%s (-)' % name, _("Import as negative error bar for '%s'") % name) ) out.sort() # remove duplicates last = None i = 0 while i < len(out): if out[i] == last: del out[i] else: last = out[i] i += 1 w.addItems([x[0] for x in out]) for v, item in enumerate(out): w.setItemData(v, item[1], qt.Qt.ToolTipRole) return w def setEditorData(self, editor, index): """Update data in editor.""" text = index.data(qt.Qt.EditRole) i = editor.findText(text) if i != -1: editor.setCurrentIndex(i) else: editor.setEditText(text) def setModelData(self, editor, model, index): """Update data in model.""" model.setData( index, editor.currentText(), qt.Qt.EditRole) def updateEditorGeometry(self, editor, option, index): """Update editor geometry.""" editor.setGeometry(option.rect) # name for the columns _ColName = 0 _ColDataType = 1 _ColShape = 2 _ColToImport = 3 _ColImportName = 4 _ColSlice = 5 class FileNode(Node): def grpImport(self): """Is this disabled because of a group import?""" p = self.parent while p is not None: if p.grpimport: return True p = p.parent return False def _updateRow(self, model, index): """This is messy - inform view that this row has changed.""" par = model.parent(index) row = index.row() idx1 = model.index(row, 0, par) idx2 = model.index(row, model.columnCount(index)-1, par) model.dataChanged.emit(idx1, idx2) class FileGroupNode(FileNode): def __init__(self, parent, name, dispname): Node.__init__(self, parent) self.fullname = name self.name = dispname self.grpimport = False def data(self, column, role): if column == _ColName and role == qt.Qt.DisplayRole: return self.name elif role == qt.Qt.CheckStateRole and column == _ColToImport: return ( qt.Qt.Checked if self.grpimport or self.grpImport() else qt.Qt.Unchecked ) elif role == qt.Qt.ToolTipRole: if column == _ColToImport: return _("Check to import all datasets under this group") elif column == _ColName: return self.fullname return None def setData(self, model, index, value, role): """Enable selection of group for importing. This prevents importing child items individually.""" column = index.column() if column == _ColToImport and role == qt.Qt.CheckStateRole: # import check has changed self.grpimport = value == qt.Qt.Checked # disable importing of child nodes def recursivedisable(node): if isinstance(node, FileDataNode): node.toimport = False else: if node is not self: node.grpimport = False for c in node.children: recursivedisable(c) if self.grpimport: recursivedisable(self) self._updateRow(model, index) return True return False def flags(self, column, defflags): if self.grpImport(): defflags &= ~qt.Qt.ItemIsEnabled return defflags if column == _ColToImport: defflags |= qt.Qt.ItemIsUserCheckable return defflags class EmptyDataNode(FileNode): """Empty dataset.""" def __init__(self, parent, dsname, dispname): Node.__init__(self, parent) self.name = dispname self.fullname = dsname def data(self, column, role): """Return data for column""" if role == qt.Qt.DisplayRole: if column == _ColName: return self.name elif column == _ColShape: return _('Empty') elif role == qt.Qt.ToolTipRole: if column == _ColName: return self.fullname class FileDataNode(FileNode): """Represent an File dataset.""" def __init__(self, parent, dsname, dsattrs, dtype, rawdtype, shape, dispname): """Node arguments: parent: parent node dsname: dataset name (used as tooltip for node) dsattrs: attributes of dataset dtype: dtype of datatype ('numeric', 'text', 'invalid') rawdtype: internal dtype for tooltip shape: shape of dataset dispname: display name (text shown for node) """ Node.__init__(self, parent) self.name = dispname self.fullname = dsname self.rawdatatype = str(rawdtype) self.shape = shape self.toimport = False self.importname = "" self.slice = None self.options = {} self.attrs = dsattrs self.text = self.numeric = False if dtype == 'numeric': self.datatype = _('Numeric') self.numeric = True self.datatypevalid = True elif dtype == 'text': self.datatype = _('Text') self.text = True self.datatypevalid = True else: self.datatype = _('Unsupported') self.datatypevalid = False def getDims(self): """Return dimensions after slice.""" shape = list(self.shape) slice = None if "vsz_slice" in self.attrs: slice = fits_hdf5_helpers.convertTextToSlice( fits_hdf5_helpers.convertFromBytes(self.attrs["vsz_slice"]), len(self.shape)) if self.slice: slice = self.slice if slice and slice != -1: shapei = 0 for s in slice: if isinstance(s, int): del shape[shapei] else: shapei += 1 return len(shape) def dimsOkForImport(self): """Are dimensions ok to import? Need to count dimensions where slice is not fixed """ return self.getDims() >= 1 def data(self, column, role): """Return data for column""" if role in (qt.Qt.DisplayRole, qt.Qt.EditRole): if column == _ColName: return self.name elif column == _ColDataType: return self.datatype elif column == _ColShape: return '\u00d7'.join([str(x) for x in self.shape]) elif column == _ColImportName: if role == qt.Qt.EditRole and not self.importname: return self.name else: if self.importname: return self.importname elif "vsz_name" in self.attrs: # needs to be converted to unicode to work! return fits_hdf5_helpers.convertFromBytes( self.attrs["vsz_name"]) return None elif column == _ColSlice: if self.slice: return fits_hdf5_helpers.convertSliceToText(self.slice) elif "vsz_slice" in self.attrs: return fits_hdf5_helpers.convertFromBytes( self.attrs["vsz_slice"]) return None elif role == qt.Qt.ToolTipRole: if column == _ColName: return self.fullname elif column == _ColDataType: return self.rawdatatype elif column == _ColToImport and not self.grpImport(): return _( 'Check to import this dataset') elif column == _ColImportName and not self.grpImport(): return _( 'Name to assign after import.\n' 'Special suffixes (+), (-) and (+-) can be used to\n' 'assign error bars to datasets with the same name.') elif column == _ColSlice: return _( 'Slice data to create a subset to import.\n' 'This should be ranges for each dimension\n' 'separated by commas.\n' 'Ranges can be empty (:), half (:10),\n' ' full (4:10), with steps (1:10:2)\n' ' or negative steps (::-1).\n' 'Example syntax: 2:20\n' ' :10,:,2:20\n' ' 1:10:5,::5') elif role == qt.Qt.CheckStateRole and column == _ColToImport: if ( (self.toimport or self.grpImport()) and self.dimsOkForImport() ): return qt.Qt.Checked return qt.Qt.Unchecked return None def setData(self, model, index, value, role): # enable selection of dataset for importing column = index.column() if column == _ColToImport and role == qt.Qt.CheckStateRole: # import check has changed self.toimport = value == qt.Qt.Checked if not self.toimport: self.importname = '' self._updateRow(model, index) return True elif column == _ColImportName and (self.toimport or self.grpImport()): # update name if changed self.importname = value return True elif column == _ColSlice: slice = fits_hdf5_helpers.convertTextToSlice(value, len(self.shape)) if slice != -1: self.slice = slice self._updateRow(model, index) return True return False def flags(self, column, defflags): if ( column == _ColToImport and self.datatypevalid and not self.grpImport() and self.dimsOkForImport() ): # allow import column to be clicked defflags |= qt.Qt.ItemIsUserCheckable elif ( column == _ColImportName and (self.toimport or self.grpImport()) and self.dimsOkForImport() ): defflags |= qt.Qt.ItemIsEditable elif column == _ColSlice and self.datatypevalid: # allow name to be edited defflags |= qt.Qt.ItemIsEditable return defflags class FileCompoundNode(FileGroupNode): """Node representing a table (Compound data type).""" def __init__(self, parent, name, dispname, shape): FileGroupNode.__init__(self, parent, name, dispname) self.shape = shape def data(self, column, role): """Return data for column""" if role == qt.Qt.DisplayRole: if column == _ColDataType: return _("Table") elif column == _ColShape: return '\u00d7'.join([str(x) for x in self.shape]) return FileGroupNode.data(self, column, role) ############################################################################## def setupTreeView(view, rootnode, datanodes): """Setup view for nodes.""" view._importnamedeligate = ImportNameDeligate( view, datanodes) view.setItemDelegateForColumn(_ColImportName, view._importnamedeligate) mod = GenericTreeModel( view, rootnode, [ _('Name'), _('Type'), _('Size'), _('Import'), _('Import as'), _('Slice') ]) view.setModel(mod) view.expandAll() for c in _ColName, _ColDataType, _ColShape: view.resizeColumnToContents(c) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/readcsv.py0000664000175000017500000003253414332253347016456 0ustar00jssjss# Copyright (C) 2006 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """This module contains routines for importing CSV data files in an easy-to-use manner.""" import re import csv import numpy as N from .base import ImportingError from .. import datasets from .. import utils from .. import qtall as qt class _FileReaderCols: """Read a CSV file in rows. This acts as an iterator. This is a very simple wrapper around the csv module """ def __init__(self, csvreader): self.csvreader = csvreader self.maxlen = 0 self.line = 1 def __iter__(self): return self def __next__(self): """Return next row.""" try: row = next(self.csvreader) except csv.Error as e: raise ImportingError("Error in line %i: %s" % (self.line, str(e))) self.line += 1 # add blank columns up to maximum previously read self.maxlen = max(self.maxlen, len(row)) row = row + ['']*(self.maxlen - len(row)) return row class _FileReaderRows: """Read a CSV file in columns. This acts as an iterator. This means we have to read the whole file in, then return cols :-( """ def __init__(self, csvreader): self.data = [] self.maxlength = 0 lineno = 1 try: for line in csvreader: self.maxlength = max(self.maxlength, len(line)) self.data.append(line) lineno += 1 except csv.Error as e: raise ImportingError("Error in line %i: %s" % (lineno, str(e))) self.counter = 0 def __iter__(self): return self def __next__(self): """Return the next column.""" if self.counter == self.maxlength: raise StopIteration # probably is a better way to do this retn = [] for row in self.data: if self.counter >= len(row): retn.append('') else: retn.append(row[self.counter]) self.counter += 1 return retn # list of codes which can be added to column descriptors typecodes = ( ('(string)', 'string'), ('(text)', 'string'), ('(date)', 'date'), ('(time)', 'date'), ('(float)', 'float'), ('(numeric)', 'float'), ('(number)', 'float'), ) class _NextValue(Exception): """A class to be raised to move to next value.""" class ReadCSV: """A class to import data from CSV files.""" def __init__(self, params): """Initialise the reader. params is a ParamsCSV object """ self.params = params self.numericlocale = qt.QLocale(params.numericlocale) self.datere = re.compile( utils.dateStrToRegularExpression(params.dateformat)) # created datasets. Each name is associated with a list self.data = {} def _generateName(self, column): """Generate a name for a column.""" if self.params.readrows: prefix = 'row' else: prefix = 'col' name = '%s%s%i%s' % ( self.params.prefix, prefix, column+1, self.params.suffix) return name def _getNameAndColType(self, colnum, colval): """Get column name and type.""" name = colval.strip() if name in ('+', '-', '+-'): # loop to find previous valid column prevcol = colnum - 1 while prevcol >= 0: if prevcol not in self.colnames: break n = self.colnames[prevcol] if len(n) > 0 and n[-1] not in "+-": # we add a \0 here so that there's no chance of the user # using this as a column name name = n + '\0' + name if self.coltypes[prevcol] == 'unknown': # force previous column to float if this # column is an error bar self.coltypes[prevcol] = 'float' elif self.coltypes[prevcol] != 'float': # we can't treat this as an error bar if the # previous column is not numeric break return 'float', name prevcol -= 1 # did not find anything name = self._generateName(colnum) # examine whether object type is at end of name # convert, and remove, if is dtype = 'unknown' for codename, codetype in typecodes: if name[-len(codename):] == codename: dtype = codetype name = name[:-len(codename)].strip() break return dtype, self.params.prefix + name + self.params.suffix def _setNameAndType(self, colnum, colname, coltype): """Set a name for column number given column name and type.""" while colnum >= len(self.coltypes): self.coltypes.append('') if colname in self.nametypes: # if there is an existing dataset with the same name, # ensure there is consistency of type coltype = self.nametypes[colname] else: self.nametypes[colname] = coltype self.coltypes[colnum] = coltype self.colnames[colnum] = colname self.colignore[colnum] = self.params.headerignore self.colblanks[colnum] = 0 if colname not in self.data: self.data[colname] = [] def _guessType(self, val): """Guess type for new dataset.""" v, ok = self.numericlocale.toDouble(val) if ok: return 'float' m = self.datere.match(val) try: utils.dateREMatchToDate(m) return 'date' except ValueError: return 'string' def _newValueInBlankColumn(self, colnum, col): """Handle occurance of new data value in previously blank column. """ if self.params.headermode == '1st': # just use name of column as title in 1st header mode coltype, name = self._getNameAndColType(colnum, col) self._setNameAndType(colnum, name.strip(), coltype) raise _NextValue() elif self.params.headermode == 'none': # no header, so just start a new data set dtype = self._guessType(col) self._setNameAndType( colnum, self._generateName(colnum), dtype) else: # see whether it looks like data, not a header dtype = self._guessType(col) if dtype == 'string': # use text as dataset name coltype, name = self._getNameAndColType(colnum, col) self._setNameAndType(colnum, name.strip(), coltype) raise _NextValue() else: # use guessed data type and generated name self._setNameAndType( colnum, self._generateName(colnum), dtype) def _newUnknownDataValue(self, colnum, col): """Process data value if data type is unknown. """ # blank value if col.strip() == '': if self.params.blanksaredata: # keep track of blanks above autodetected data self.colblanks[colnum] += 1 # skip back to next value raise _NextValue() # guess type from data value dtype = self._guessType(col) self.nametypes[self.colnames[colnum]] = dtype self.coltypes[colnum] = dtype # add back on blanks if necessary with correct format for i in range(self.colblanks[colnum]): d = (N.nan, '')[dtype == 'string'] self.data[self.colnames[colnum]].append(d) self.colblanks[colnum] = 0 def _handleFailedConversion(self, colnum, col): """If conversion from text to data type fails.""" if col.strip() == '': # skip blanks unless blanksaredata is set if self.params.blanksaredata: # assumes a numeric data type self.data[self.colnames[colnum]].append(N.nan) else: if self.params.headermode == '1st': # no more headers, so fill with invalid number self.data[self.colnames[colnum]].append(N.nan) else: # start a new dataset if conversion failed coltype, name = self._getNameAndColType(colnum, col) self._setNameAndType(colnum, name.strip(), coltype) def _handleVal(self, colnum, col): """Handle a value from the file. colnum: number of column col: data value """ if colnum not in self.colnames: # ignore blanks if col.strip() == '': return # process value self._newValueInBlankColumn(colnum, col) # ignore lines after headers if self.colignore[colnum] > 0: self.colignore[colnum] -= 1 return # process value if data type unknown if self.coltypes[colnum] == 'unknown': self._newUnknownDataValue(colnum, col) ctype = self.coltypes[colnum] try: # convert text to data type of column if ctype == 'float': v, ok = self.numericlocale.toDouble(col) if not ok: raise ValueError elif ctype == 'date': m = self.datere.match(col) v = utils.dateREMatchToDate(m) elif ctype == 'string': v = col else: raise RuntimeError("Invalid type in CSV reader") except ValueError: self._handleFailedConversion(colnum, col) else: # conversion succeeded - append number to data self.data[self.colnames[colnum]].append(v) def readData(self): """Read the data into the document.""" par = self.params # open the csv file csvf = utils.get_unicode_csv_reader( par.filename, delimiter=par.delimiter, quotechar=par.textdelimiter, skipinitialspace=par.skipwhitespace, encoding=par.encoding ) # make in iterator for the file if par.readrows: it = _FileReaderRows(csvf) else: it = _FileReaderCols(csvf) # ignore rows (at top), if requested for i in range(par.rowsignore): try: next(it) except StopIteration: return # dataset names for each column self.colnames = {} # type of column (float, string or date) self.coltypes = [] # type of names of columns self.nametypes = {} # ignore lines after headers self.colignore = {} # keep track of how many blank values before 1st data for auto # type detection self.colblanks = {} # iterate over each line (or column) while True: try: line = next(it) except StopIteration: break # iterate over items on line for colnum, col in enumerate(line): try: self._handleVal(colnum, col) except _NextValue: pass def setData(self, outmap, linkedfile=None): """Set the read-in datasets in the dict outmap.""" for name in self.data: # skip error data here, they are used below # error data name contains \0 if name.find('\0') >= 0: continue # get data and errors (if any) data = [] for k in (name, name+'\0+-', name+'\0+', name+'\0-'): data.append( self.data.get(k, None) ) # make them have a maximum length by adding NaNs maxlen = max([len(x) for x in data if x is not None]) for i in range(len(data)): if data[i] is not None and len(data[i]) < maxlen: data[i] = N.concatenate( ( data[i], N.zeros(maxlen-len(data[i]))*N.nan ) ) # create dataset dstype = self.nametypes[name] if dstype == 'string': ds = datasets.DatasetText(data=data[0], linked=linkedfile) elif dstype == 'date': ds = datasets.DatasetDateTime(data=data[0], linked=linkedfile) else: ds = datasets.Dataset( data=data[0], serr=data[1], perr=data[2], nerr=data[3], linked=linkedfile) outmap[name] = ds return sorted(outmap) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dataimport/simpleread.py0000664000175000017500000007750514332253347017163 0ustar00jssjss# Copyright (C) 2004 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """SimpleRead: a class for the reading of data formatted in a simple way To read the data it takes a descriptor which takes the form of varname<[repeater]> where <> marks optional arguments, e.g. x+- y+,- z+-[1:5] x(text) y(date) z(number),+- +- means symmetric error bars +,- means asymmetric error bars , is a separator (text) or (date) specifies datatype z+-[1:5] means read z_1+- z_2+- ... z_5+- Indicices can be unspecified, [:], [1:], [:5] The first 3 mean the same thing, the last means read from 1 to 5 Commas are now optional in 1.6, so descriptors can look like x +- y + - """ import re import ast import io import numpy as N from .. import utils from .. import datasets from .. import qtall as qt from .import base # a regular expression for splitting descriptor into tokens descrtokens_split_re = re.compile(r''' ( `[^`]*` | # quoted name [ ,] | # comma or space \([a-z]+?\) | # data type \+- | \+ | - | # error bars \[.*?\] # indices ) ''', re.VERBOSE) range_re = re.compile(r'''^ \[ (-?[0-9]+)? : (-?[0-9]+)? \] $''', re.VERBOSE) def interpretDescriptor(descr): """Get a descriptor and create a set of descriptor objects.""" parts = [] split = descrtokens_split_re.split(descr.strip()) tokens = [x for x in split if x != ''] # make sure that last dataset is added tokens += ['DUMMY'] name = datatype = idxrange = None columns = [] for tokenindex, token in enumerate(tokens): # skip spaces if token == ' ': if tokenindex > 0 and tokens[tokenindex-1] == ',': columns.append(',') continue # ignore column if token == ',': if tokenindex == 0 or ( tokens[tokenindex-1] == ',' or tokens[tokenindex-1] == ' ' ): columns.append(',') continue # does token match datatype name? if ( token[0] == '(' and token[-1] == ')' and token[1:-1] in datatype_name_convert ): datatype = datatype_name_convert[token[1:-1]] continue # match error bars if token in ('+', '-', '+-'): columns.append(token) continue # does token match a range? m = range_re.match(token) if m: if m.group(1): startindex = int(m.group(1)) else: startindex = 1 if m.group(2): stopindex = int(m.group(2)) else: stopindex = 999999999 idxrange = (startindex, stopindex) continue # quoted dataset name, so remove quotes if token[0] == '`' and token[-1] == '`': token = token[1:-1] # add previous entry if name is not None: parts.append( DescriptorPart(name, datatype, columns, idxrange) ) name = datatype = idxrange = None columns = [] columns.append('D') name = token return parts class DescriptorError(ValueError): """Used to indicate an error with the descriptor.""" pass # this is a regular expression to match properly quoted strings # hopefully a matching expression can be passed to eval string_re = re.compile( r''' ^ u?"" | # match empty double-quoted string u?".*?[^\\]" | # match double-quoted string, ignoring escaped quotes u?'' | # match empty single-quoted string u?'.*?[^\\]' # match single-quoted string, ignoring escaped quotes $ ''', re.VERBOSE ) # a line starting with text text_start_re = re.compile( r'^[A-Za-z]' ) # convert data type strings in descriptor to internal datatype datatype_name_convert = { 'float': 'float', 'numeric': 'float', 'number': 'float', 'text': 'string', 'string': 'string', 'date': 'date', 'time': 'date' } def guessDataType(val): """Try to work out data type from sample value (val) Return values are one of float, string, or date """ # if the dataset type is specified # check for identifiers in dataset name # guess the type: # obvious float try: float(val) return 'float' except ValueError: pass # do all libcs check for these? if val.lower() in ('inf', '+inf', '-inf', 'nan'): return 'float' # obvious string if string_re.match(val): return 'string' # date if utils.isDateTime(val): return 'date' # assume string otherwise return 'string' class DescriptorPart: """Represents part of a descriptor.""" def __init__(self, name, datatype, columns, idxrange): """Construct DescriptorPart name is dataset name datatype is None or one of the possible options columns is a list of the columns '+', '-', '+-', ',' or 'D' for errors, ignoring a column or a data column idxrange is None or a tuple (minidx, maxidx) """ self.name = name self.datatype = datatype self.columns = tuple(columns) self.errorcount = 0 self.single = idxrange is None if self.single: self.startindex = self.stopindex = 1 else: self.startindex, self.stopindex = idxrange def readFromStream(self, stream, thedatasets, block=None): """Read data from stream, and write to thedatasets.""" # loop over column range for index in range(self.startindex, self.stopindex+1): # name for variable if self.single: name = self.name else: name = '%s_%i' % (self.name, index) # if we're reading multiple blocks if block is not None: name += '_%i' % block # loop over columns until we run out, or we don't need any for col in self.columns: # get next column and return if we run out of data val = stream.nextColumn() if val is None: return # append a suffix to specify whether error or value # \0 is used as the user cannot enter it fullname = '%s\0%s' % (name, col) # get dataset (or get new one) try: dataset = thedatasets[fullname] except KeyError: dataset = thedatasets[fullname] = [] if not self.datatype: # try to guess type of data self.datatype = guessDataType(val) # convert according to datatype if self.datatype == 'float': try: # do conversion dat = float(val) except ValueError: dat = N.nan self.errorcount += 1 elif self.datatype == 'string': if string_re.match(val): conv = val if conv[0:1] != 'u': # a hack for python2 conv = 'u' + val try: dat = ast.literal_eval(conv) except: dat = val else: dat = val elif self.datatype == 'date': dat = utils.dateStringToDate(val) # add data into dataset dataset.append(dat) def setOutput(self, thedatasets, outmap, block=None, linkedfile=None, prefix="", suffix="", tail=None): """Set the read-in data in the document.""" # we didn't read any data if self.datatype is None: return for index in range(self.startindex, self.stopindex+1): # name for variable if self.single: name = '%s' % (self.name,) else: name = '%s_%i' % (self.name, index) if block is not None: name += '_%i' % block # does the dataset exist? if name+'\0D' in thedatasets: vals = thedatasets[name+'\0D'] pos = neg = sym = None # retrieve the data for this dataset if name+'\0+' in thedatasets: pos = thedatasets[name+'\0+'] if name+'\0-' in thedatasets: neg = thedatasets[name+'\0-'] if name+'\0+-' in thedatasets: sym = thedatasets[name+'\0+-'] # make sure components are the same length minlength = 99999999999999 for ds in vals, pos, neg, sym: if ds is not None and len(ds) < minlength: minlength = len(ds) for ds in vals, pos, neg, sym: if ds is not None and len(ds) != minlength: del ds[minlength:] # only remember last N values if tail is not None: vals = vals[-tail:] if sym is not None: sym = sym[-tail:] if pos is not None: pos = pos[-tail:] if neg is not None: neg = neg[-tail:] # create the dataset if self.datatype == 'float': ds = datasets.Dataset( data = vals, serr = sym, nerr = neg, perr = pos, linked = linkedfile ) elif self.datatype == 'date': ds = datasets.DatasetDateTime( data=vals, linked=linkedfile ) elif self.datatype == 'string': ds = datasets.DatasetText( data=vals, linked = linkedfile ) else: raise RuntimeError("Invalid data type") finalname = prefix + name + suffix outmap[finalname] = ds else: break class Stream: """This object reads through an input data source (override readLine) and interprets data from the source.""" # this is a regular expression for finding data items in data stream # I'll try to explain this bit-by-bit (these are ORd, and matched in order) find_re = re.compile( r''' `.+?`[^ \t\n\r#!%;]* | # match dataset name quoted in back-ticks # we also need to match following characters to catch # corner cases in the descriptor u?"" | # match empty double-quoted string u?".*?[^\\]" | # match double-quoted string, ignoring escaped quotes u?'' | # match empty single-quoted string u?'.*?[^\\]' | # match single-quoted string, ignoring escaped quotes [#!%;](?=descriptor) | # match separately comment char before descriptor [#!%;].* | # match comment to end of line [^ \t\n\r#!%;]+ # match normal space/tab separated items ''', re.VERBOSE ) def __init__(self): """Initialise stream object.""" self.remainingline = [] def nextColumn(self): """Return value of next column of line.""" try: return self.remainingline.pop(0) except IndexError: return None def allColumns(self): """Get all columns of current line (none are discarded).""" return self.remainingline def flushLine(self): """Forget the rest of the line.""" self.remainingline = [] def readLine(self): """Read the next line of the data source. StopIteration is raised if there is no more data.""" pass def newLine(self): """Read in, and split the next line.""" while True: # get next line from data source try: line = self.readLine() except StopIteration: # end of file return False # break up and append to buffer (removing comments) cmpts = self.find_re.findall(line) self.remainingline += [ x for x in cmpts if x[0] not in '#!%;'] if self.remainingline and self.remainingline[-1] == '\\': # this is a continuation: drop this item and read next line self.remainingline.pop() else: return True class FileStream(Stream): """A stream based on a python-style file (or iterable).""" def __init__(self, file): """File can be any iterator-like object.""" Stream.__init__(self) self.file = file def readLine(self): """Read the next line of the data source. StopIteration is raised if there is no more data.""" return next(self.file) class StringStream(FileStream): '''For reading data from a string.''' def __init__(self, text): """A stream which reads in from a text string.""" FileStream.__init__( self, io.StringIO(text) ) class CSVStream(Stream): """Read text from csv file.""" def __init__(self, filename, delim, textdelim, locale, encoding): Stream.__init__(self) self.csvfile = utils.get_unicode_csv_reader( filename, delimiter=delim, quotechar=textdelim, encoding=encoding ) self.localename = locale self.locale = qt.QLocale(locale) def newLine(self): """Get next line from CSV file.""" try: line = next(self.csvfile) except StopIteration: return False # delete empty cells on left, to make compatible with normal # text stream i = 0 while i < len(line) and not line[i]: i += 1 line = line[i:] if self.localename == 'en_US': # no conversion self.remainingline += line else: for t in line: v, ok = self.locale.toDouble(t) if ok: # add on converted text - yuck - double conversion self.remainingline.append('%e' % v) else: self.remainingline.append(t) return True class SimpleRead: '''Class to read in datasets from a stream. The descriptor specifies the format of data to read from the stream Read the docstring for this module for information tail attribute if set says to only use last tail data points when setting ''' def __init__(self, descriptor): # convert descriptor to part objects descriptor = descriptor.strip() self._parseDescriptor(descriptor) # construct data names automatically self.autodescr = (descriptor == '') # get read for reading data self.clearState() def clearState(self): """Start reading from scratch.""" self.datasets = {} self.blocks = None self.tail = None def _parseDescriptor(self, descriptor): """Take a descriptor, and parse it into its individual parts.""" self.parts = interpretDescriptor(descriptor) def readData(self, stream, useblocks=False, ignoretext=False): """Read in the data from the stream. If useblocks is True, data are read as separate blocks. Dataset names are appending with an underscore and a block number if set. """ self.ignoretext = ignoretext if useblocks: self._readDataBlocked(stream, ignoretext) else: self._readDataUnblocked(stream, ignoretext) def _readDataUnblocked(self, stream, ignoretext): """Read in that data from the stream.""" allparts = list(self.parts) # loop over lines while stream.newLine(): if stream.remainingline[:1] == ['descriptor']: # a change descriptor statement descriptor = ' '.join(stream.remainingline[1:]) self._parseDescriptor(descriptor) allparts += self.parts self.autodescr = False elif ( self.ignoretext and len(stream.remainingline) > 0 and text_start_re.match(stream.remainingline[0]) and len(self.parts) > 0 and self.parts[0].datatype != 'string' and stream.remainingline[0] not in ('inf', 'nan') ): # ignore the line if it is text and ignore text is on # and first column is not text pass else: # normal text for p in self.parts: p.readFromStream(stream, self.datasets) # automatically create parts if data are remaining if self.autodescr: while len(stream.remainingline) > 0: p = DescriptorPart( str(len(self.parts)+1), None, 'D', None ) p.readFromStream(stream, self.datasets) self.parts.append(p) allparts.append(p) stream.flushLine() self.parts = allparts self.blocks = None def _readDataBlocked(self, stream, ignoretext): """Read in the data, using blocks.""" allparts = list(self.parts) blocks = {} block = 1 while stream.newLine(): line = stream.remainingline # if this is a blank line, separating data then advance to a new # block if len(line) == 0 or line[0].lower() == 'no': # blank lines separate blocks if block in blocks: block += 1 else: # read in data for p in self.parts: p.readFromStream(stream, self.datasets, block=block) # automatically create parts if data are remaining if self.autodescr: while len(stream.remainingline) > 0: p = DescriptorPart( str(len(self.parts)+1), None, 'D', None ) p.readFromStream(stream, self.datasets, block=block) self.parts.append(p) allparts.append(p) blocks[block] = True # lose remaining data stream.flushLine() self.parts = allparts self.blocks = list(blocks.keys()) def getInvalidConversions(self): """Return the number of invalid conversions after reading data. Returns a dict of dataset, number values.""" out = {} for p in self.parts: out[p.name] = p.errorcount return out def getDatasetCounts(self): """Get a dict of the datasets read (main data part) and number of entries read.""" out = {} for name in self.datasets: if name[-2:] == '\0D': out[name[:-2]] = len(self.datasets[name]) return out def setOutput(self, out, linkedfile=None, prefix='', suffix=''): """Set the data in the out dict. """ # iterate over blocks used if self.blocks is None: blocks = [None] else: blocks = self.blocks # if automatically making parts, use a prefix/suffix if not set if self.autodescr and prefix == '' and suffix == '': prefix = 'col' for block in blocks: for part in self.parts: part.setOutput( self.datasets, out, block=block, linkedfile=linkedfile, prefix=prefix, suffix=suffix, tail=self.tail) ##################################################################### # 2D data reading class Read2DError(base.ImportingError): pass class SimpleRead2D: def __init__(self, name, params): """Read dataset with name given. params is a ImportParams2D object """ self.name = name self.params = params.copy() # not present in ImportParams2D self.xedge = self.yedge = self.xcent = self.ycent = None #################################################################### # Follow functions are for setting parameters during reading of data def _paramXRange(self, cols): try: self.params.xrange = ( float(cols[1]), float(cols[2]) ) except ValueError: raise Read2DError("xrange is not two numerical values") def _paramYRange(self, cols): try: self.params.yrange = ( float(cols[1]), float(cols[2]) ) except ValueError: raise Read2DError("yrange is not two numerical values") def _getNumList(self, attr, cols): """Generic conversion of a list of numbers.""" try: g = [float(v) for v in cols[1:]] except ValueError: raise Read2DError("%s is not a list of numerical values" % attr) if utils.checkOrder(g) == 0: raise Read2DError("%s are not ascending or descending" % attr) setattr(self, attr, g) def _paramInvertRows(self, cols): self.params.invertrows = True def _paramInvertCols(self, cols): self.params.invertcols = True def _paramTranspose(self, cols): self.params.transpose = True def _paramGridAtEdge(self, cols): self.params.gridatedge = True #################################################################### def readData(self, stream): """Read data from stream given stream consists of: optional: xrange A B - set the range of x from A to B yrange A B - set the range of y from A to B xedge A B... - list of x values (instead of xrange) yedge A B... - list of y values (instead of yrange) xcent A B... - list of x centres (instead of xrange) ycent A B... - list of y centres (instead of yrange) invertrows - invert order of the rows invertcols - invert order of the columns transpose - swap rows and columns gridatedge - positions of pixels are given at top and left then: matrix of columns and rows, separated by line endings the rows are in reverse-y order (highest y first) blank line stops reading for further datasets """ settings = { 'xrange': self._paramXRange, 'yrange': self._paramYRange, 'xedge': lambda cols: self._getNumList('xedge', cols), 'yedge': lambda cols: self._getNumList('yedge', cols), 'xcent': lambda cols: self._getNumList('xcent', cols), 'ycent': lambda cols: self._getNumList('ycent', cols), 'invertrows': self._paramInvertRows, 'invertcols': self._paramInvertCols, 'transpose': self._paramTranspose, 'gridatedge': self._paramGridAtEdge, } rows = [] # loop over lines while stream.newLine(): cols = stream.allColumns() if len(cols) == 0: if len(rows) != 0: # end of data break continue # check to see whether parameter is set c = cols[0].lower() if c in settings: settings[c](cols) stream.flushLine() continue # read columns line = [] while True: v = stream.nextColumn() if v is None: break try: line.append( float(v) ) except ValueError: raise Read2DError("Could not interpret number '%s'" % v) rows.insert(0, line) if self.params.gridatedge: if any( [getattr(self, x) is not None for x in ("xedge", "yedge", "xcent", "ycent")] ): raise Read2DError( "x|y grid|cent are incompatible with gridatedge") if len(rows) > 0: self.xcent = N.array(rows[-1]) else: self.xcent = N.array([]) self.ycent = N.array([r[0] for r in rows[:-1]]) # chop out grid rows = [ r[1:] for r in rows[:-1] ] # dodgy formatting probably... if len(rows) == 0: raise Read2DError("No data could be imported for dataset") try: self.data = N.array(rows, dtype=N.float64) except ValueError: raise Read2DError("Could not convert data to 2D matrix") # obvious check if len(self.data.shape) != 2: raise Read2DError("Dataset was not 2D") if self.params.invertcols: self.data = self.data[:,::-1] if self.params.invertrows: self.data = self.data[::-1,:] # transpose matrix if requested if self.params.transpose: self.data = N.transpose(self.data).copy() self.xedge, self.yedge = self.xedge, self.yedge # check orders of coords - flip if wrong for attr in 'xedge', 'xcent', 'yedge', 'ycent': v = getattr(self, attr) if v is not None: order = utils.checkOrder(v) if order == 0: raise Read2DError( '%s must be ascending or descending' % attr) elif order == -1: # flip direction of coord and data setattr(self, attr, v[::-1]) if attr[0] == 'x': self.data = self.data[:,::-1] else: self.data = self.data[::-1,:] # more sanity checks if ( (self.xedge is not None and len(self.xedge) != self.data.shape[1]+1) or (self.yedge is not None and len(self.yedge) != self.data.shape[0]+1) ): raise Read2DError("xedge and yedge lengths must be data shape+1") if ( (self.xcent is not None and len(self.xcent) != self.data.shape[1]) or (self.ycent is not None and len(self.ycent) != self.data.shape[0]) ): raise Read2DError("xcent and ycent lengths must be data shape") def setOutput(self, out, linkedfile=None): """Set the data in the output dict out """ ds = datasets.Dataset2D( self.data, xrange=self.params.xrange, yrange=self.params.yrange, xedge=self.xedge, yedge=self.yedge, xcent=self.xcent, ycent=self.ycent ) ds.linked = linkedfile fullname = self.params.prefix + self.name + self.params.suffix out[fullname] = ds ##################################################################### # n-dimensional data reading class ReadNDError(base.ImportingError): pass class SimpleReadND: def __init__(self, name, params): """Read dataset with name given. params is a ImportParamsND object """ self.name = name self.params = params.copy() #################################################################### def _paramTranspose(self, cols): self.params.transpose = True def _paramShape(self, cols): sizes = [int(x) for x in cols[1:]] self.params.shape = tuple(sizes) #################################################################### def readData(self, stream): """Read data from stream given stream consists of: optional: transpose - swap rows and columns shape size1 size2 ... - give dimensions of dataset then: Matrix of columns and rows, separated by line endings. A single line is a single dimension Higher orders are given by using increasing numbers of separating newlines """ settings = { 'transpose': self._paramTranspose, 'shape': self._paramShape, } vals = [] # keep track of where we are in terms of index dimstack = [] dimidx = 0 # loop over lines while stream.newLine(): cols = stream.allColumns() # check to see whether parameter is set if len(cols) > 0: c = cols[0].lower() if c in settings: settings[c](cols) stream.flushLine() continue # read columns line = [] while True: v = stream.nextColumn() if v is None: break try: line.append(float(v)) except ValueError: raise ReadNDError("Could not interpret number '%s'" % v) if len(line) > 0: # previous blank lines if dimidx != len(dimstack): # insert new dimensions, if required while dimidx < 0: dimstack.insert(0, 0) dimidx += 1 vals = [vals] # move to next value at current level dimstack[dimidx] += 1 for i in range(dimidx+1, len(dimstack)): dimstack[i] = 0 dimidx = len(dimstack) # lookup correct place in hierarchy and append v = vals for s in dimstack: while s >= len(v): v.append([]) v = v[s] v.append(N.array(line, dtype=N.float64)) else: if len(vals) > 0: dimidx -= 1 if self.params.shape is not None: # flatten so we can reshape properly later (this is to # allow free form input with the shape option) fdata = [] def flatten(d): for x in d: if isinstance(x, list): flatten(x) else: fdata.append(x) flatten(vals) vals = N.hstack((fdata)) try: self.data = N.array(vals, dtype=N.float64) except ValueError: raise ReadNDError("Could not convert data to n-D matrix") # obvious check if self.data.ndim < 1: raise ReadNDError("Needs at least a 1D dataset") # for 1d data, an extra dimension is sometimes added if self.data.ndim == 2 and self.data.shape[0] == 1: self.data = self.data.reshape(self.data.shape[-1]) # reshape if requested if self.params.shape is not None: self.data = self.data.reshape(self.params.shape) # transpose matrix if requested if self.params.transpose: self.data = N.transpose(self.data).copy() def setOutput(self, out, linkedfile=None): """Set the data in the output dict out """ ds = datasets.DatasetND(self.data) ds.linked = linkedfile fullname = self.params.prefix + self.name + self.params.suffix out[fullname] = ds ././@PaxHeader0000000000000000000000000000003400000000000010212 xustar0028 mtime=1677426865.2445211 veusz-3.6.2/veusz/datasets/0000775000175000017500000000000014376700261014112 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/veusz/datasets/__init__.py0000664000175000017500000000222714126044351016220 0ustar00jssjss# Copyright (C) 2016 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### from .base import * from .oned import * from .twod import * from .nd import * from .text import * from .date import * from .filtered import * from .histo import * from .expression import * from .plugin import * from .commonfn import * from .helpers import * ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/datasets/base.py0000664000175000017500000001403114332253347015375 0ustar00jssjss# Copyright (C) 2016 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### """Base class for all Datasets.""" from .commonfn import _ class DatasetException(Exception): """Raised with dataset errors.""" pass class DatasetExpressionException(DatasetException): """Raised if there is an error evaluating a dataset expression.""" pass class DatasetBase: """Base class for all datasets.""" class DatasetConcreteBase(DatasetBase): """A base dataset class for datasets which are real, and not proxies, etc.""" # number of dimensions the dataset holds dimensions = 0 # datatype is fundamental type of data # displaytype is formatting suggestion for data datatype = displaytype = 'numeric' # dataset type to show to user dstype = 'Dataset' # list of columns in dataset (if any) columns = () # use descriptions for columns column_descriptions = () # can values be edited editable = False # class for representing part of this dataset subsetclass = None def __init__(self, linked=None): """Initialise commonfn members.""" # document member set when this dataset is set in document self.document = None # file this dataset is linked to self.linked = linked # tags applied to dataset self.tags = set() def saveLinksToSavedDoc(self, fileobj, savedlinks, relpath=None): '''Save the link to the saved document, if this dataset is linked. savedlinks is a dict containing any linked files which have already been written relpath is a directory to save linked files relative to ''' # links should only be saved once if self.linked is not None and self.linked not in savedlinks: savedlinks[self.linked] = True self.linked.saveToFile(fileobj, relpath=relpath) def saveToFile(self, fileobj, name, mode='text', hdfgroup=None): """Save dataset to file.""" self.saveDataRelationToText(fileobj, name) if self.linked is None: if mode == 'text': self.saveDataDumpToText(fileobj, name) elif mode == 'hdf5': self.saveDataDumpToHDF5(hdfgroup, name) def saveDataRelationToText(self, fileobj, name): """Save a dataset relation to a text stream fileobj. Not for datasets which are raw data.""" def saveDataDumpToText(self, fileobj, name): """Save dataset to file if file is text and data is actually a set of data and not a relation """ def saveDataDumpToHDF5(self, group, name): """Save dumped dataset to HDF5. group is the group to save it in (h5py group) """ def userSize(self): """Return dimensions of dataset for user.""" return "" def userPreview(self): """Return a small preview of the dataset for the user, e.g. 1, 2, 3, ..., 4, 5, 6.""" return None def description(self): """Get description of dataset.""" return "" def uiConvertToDataItem(self, val): """Return a value cast to this dataset data type. We assume here it is a float, so override if not """ from .. import setting if isinstance(val, str): val, ok = setting.uilocale.toDouble(val) if ok: return val raise ValueError("Invalid floating point number") return float(val) def uiDataItemToData(self, val): """Return val converted to data.""" return float(val) def _getItemHelper(self, key): """Help get arguments to constructor.""" args = {} for col in self.columns: array = getattr(self, col) if array is not None: args[col] = array[key] return args def __getitem__(self, key): """Return a dataset based on this dataset e.g. dataset[5:100] - make a dataset based on items 5 to 99 inclusive """ return self.returnCopyWithNewData(**self._getItemHelper(key)) def __len__(self): """Return length of dataset.""" return len(self.data) def deleteRows(self, row, numrows): """Delete numrows rows starting from row. Returns deleted rows as a dict of {column:data, ...} """ pass def insertRows(self, row, numrows, rowdata): """Insert numrows rows starting from row. rowdata is a dict of {column: data}. """ pass def canUnlink(self): """Can dataset be unlinked?""" return self.linked is not None def linkedInformation(self): """Return information about any linking for the user.""" if self.linked is None: return _('Linked file: None') else: return _('Linked file: %s') % self.linked.filename def returnCopy(self): """Return an unlinked copy of self.""" pass def returnCopyWithNewData(self, **args): """Return copy with new data given.""" pass def renameable(self): """Is it possible to rename this dataset?""" return self.linked is None def datasetAsText(self, fmt='%g', join='\t'): """Return dataset as text (for use by user).""" return '' ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/datasets/commonfn.py0000664000175000017500000000631314332253347016303 0ustar00jssjss# Copyright (C) 2016 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### import re import numpy as N from .. import qtall as qt def _(text, disambiguation=None, context="Datasets"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) def convertNumpy(a, dims=1): """Convert to a numpy double if possible. dims is number of dimensions to check for """ if a is None: # leave as None return None elif isinstance(a, N.ndarray): # make conversion if numpy type is not correct if a.dtype != N.float64: a = a.astype(N.float64) else: # convert to numpy array a = N.array(a, dtype=N.float64) if a.ndim != dims: if a.ndim == 0: if dims == 1: a = a.reshape((1,)) elif dims == 2: a = a.reshape((1,1)) else: raise RuntimeError() else: raise ValueError("Only %i-dimensional arrays or lists allowed" % dims) return a def convertNumpyAbs(a): """Convert to numpy 64 bit positive values, if possible.""" if a is None: return None else: return N.abs( convertNumpy(a) ) def convertNumpyNegAbs(a): """Convert to numpy 64 bit negative values, if possible.""" if a is None: return None else: return -N.abs( convertNumpy(a) ) def copyOrNone(a): """Return a copy if not None, or None.""" if a is None: return None elif isinstance(a, N.ndarray): return N.array(a) elif isinstance(a, list): return list(a) def datasetNameToDescriptorName(name): """Return descriptor name for dataset.""" if re.match('^[0-9A-Za-z_]+$', name): return name else: return '`%s`' % name def dsPreviewHelper(d): """Get preview of numpy data d.""" if d.shape[0] <= 6: line1 = ', '.join( ['%.3g' % x for x in d] ) else: line1 = ', '.join( ['%.3g' % x for x in d[:3]] + [ '...' ] + ['%.3g' % x for x in d[-3:]] ) try: line2 = _('mean: %.3g, min: %.3g, max: %.3g') % ( N.nansum(d) / N.isfinite(d).sum(), N.nanmin(d), N.nanmax(d)) except (ValueError, ZeroDivisionError): # nanXXX returns error if no valid data points return line1 return line1 + '\n' + line2 ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/datasets/date.py0000664000175000017500000001061514332253347015404 0ustar00jssjss# Copyright (C) 2016 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### """Date time datasets.""" import numpy as N from .. import utils from .commonfn import _, convertNumpy, datasetNameToDescriptorName from .oned import Dataset1DBase class DatasetDateTimeBase(Dataset1DBase): """Dataset holding dates and times.""" columns = ('data',) column_descriptions = (_('Data'),) dstype = _('Date') displaytype = 'date' def description(self): return _('Date/time (length %i)') % len(self.data) def returnCopy(self): """Returns version of dataset with no linking.""" return DatasetDateTime(data=N.array(self.data)) def returnCopyWithNewData(self, **args): """Return dataset of same type using the column data given.""" return DatasetDateTime(**args) def uiConvertToDataItem(self, val): """Return a value cast to this dataset data type.""" if isinstance(val, str): v = utils.dateStringToDate( str(val) ) if not N.isfinite(v): try: v = float(val) except ValueError: pass return v else: return N.nan def uiDataItemToData(self, val): """Return val converted to data.""" return utils.dateFloatToString(val) def datasetAsText(self, fmt=None, join=None): """Return data as text.""" lines = [ utils.dateFloatToString(val) for val in self.data ] lines.append('') return '\n'.join(lines) class DatasetDateTime(DatasetDateTimeBase): """Standard date/time class for use by humans.""" editable = True def __init__(self, data=None, linked=None): DatasetDateTimeBase.__init__(self, linked=linked) self.data = convertNumpy(data) self.perr = self.nerr = self.serr = None def saveDataDumpToText(self, fileobj, name): '''Save data to file. ''' descriptor = datasetNameToDescriptorName(name) + '(date)' fileobj.write( "ImportString(%s,'''\n" % repr(descriptor) ) fileobj.write( self.datasetAsText() ) fileobj.write( "''')\n" ) def saveDataDumpToHDF5(self, group, name): """Save date data to hdf5 file.""" dgrp = group.create_group(utils.escapeHDFDataName(name)) dgrp.attrs['vsz_datatype'] = 'date' dgrp['data'] = self.data data = dgrp['data'] data.attrs['vsz_convert_datetime'] = 1 data.attrs['vsz_name'] = name.encode('utf-8') def deleteRows(self, row, numrows): """Delete numrows rows starting from row. Returns deleted rows as a dict of {column:data, ...} """ retn = { 'data': self.data[row:row+numrows], } self.data = N.delete(self.data, N.s_[row:row+numrows]) self.document.modifiedData(self) return retn def insertRows(self, row, numrows, rowdata): """Insert numrows rows starting from row. rowdata is a dict of {column: data}. """ data = N.zeros(numrows) if 'data' in rowdata: data[:len(rowdata['data'])] = N.array(rowdata['data']) self.data = N.insert(self.data, [row]*numrows, data) self.document.modifiedData(self) def changeValues(self, thetype, vals): """Change the requested part of the dataset to vals. thetype == data """ if thetype != 'data': raise ValueError('invalid column %s' % thetype) self.data = N.array(vals) # tell the document that we've changed self.document.modifiedData(self) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/datasets/expression.py0000664000175000017500000005322414332253347016671 0ustar00jssjss# Copyright (C) 2016 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### """For evaluating dataset expressions and dataset classes using expressions.""" import re import numpy as N from .commonfn import _ from .base import DatasetExpressionException from .oned import Dataset1DBase, Dataset from .twod import Dataset2DBase, Dataset2D from .text import DatasetText from .. import utils # split expression on python operators or quoted `DATASET` dataexpr_split_re = re.compile(r'(`.*?`|[\.+\-*/\(\)\[\],<>=!|%^~& ])') # identify whether string is a quoted identifier dataexpr_quote_re = re.compile(r'^`.*`$') dataexpr_columns = {'data':True, 'serr':True, 'perr':True, 'nerr':True} def substituteDatasets(datasets, expression, thispart): """Substitute the names of datasets with calls to a function which will evaluate them. Returns (new expression, list of substituted datasets) """ # split apart the expression to look for dataset names bits = dataexpr_split_re.split(expression) dslist = [] for i, bit in enumerate(bits): # test whether there's an _data, _serr or such at the end of the name part = thispart if dataexpr_quote_re.match(bit): # quoted text, so remove backtick-"quotes" bit = bit[1:-1] # replace name with a function to call bits[i] = "_DS_(%s, %s)" % (repr(bit), repr(part)) dslist.append(bit) else: bitbits = bit.split('_') if len(bitbits) > 1: if bitbits[-1] in dataexpr_columns: part = bitbits.pop(-1) bit = '_'.join(bitbits) if bit in datasets: # replace name with a function to call bits[i] = "_DS_(%s, %s)" % (repr(bit), repr(part)) dslist.append(bit) return ''.join(bits), dslist def _evaluateDataset(datasets, dsname, dspart): """Return the dataset given. dsname is the name of the dataset dspart is the part to get (e.g. data, serr) """ if dspart not in dataexpr_columns: raise DatasetExpressionException( 'Internal error - invalid dataset part') if dsname not in datasets: raise DatasetExpressionException( _("Dataset '%s' is not defined") % (dsname, )) val = getattr(datasets[dsname], dspart) if val is None: raise DatasetExpressionException( _("Dataset '%s' does not have part '%s'") % (dsname, dspart)) return val def _returnNumericDataset(doc, vals, dimensions, subdatasets): """Used internally to convert a set of values (which needs to be numeric) into a Dataset. subdatasets is list of datasets substituted into expression """ err = None # try to convert array to a numpy array try: vals = N.array(vals, dtype=N.float64) except (ValueError, TypeError) as e: err = _('Could not convert to array') # if error on first time, try to sanitize input arrays if err and dimensions == 1: try: vals = list(vals) vals[0] = N.array(vals[0]) minlen = len(vals[0]) if len(vals) in (2,3): # expand/convert error bars for i in range(1, len(vals)): if N.isscalar(vals[i]): # convert to scalar vals[i] = N.zeros(minlen) + vals[i] else: # convert to array vals[i] = N.array(vals[i]) if vals[i].ndim != 1: raise ValueError minlen = min(minlen, len(vals[i])) # chop to minimum length for i in range(len(vals)): vals[i] = vals[i][:minlen] vals = N.array(vals, dtype=N.float64) err = None except (ValueError, IndexError, TypeError): pass if not err: if dimensions == 1: # see whether data values suitable for a 1d dataset if vals.ndim == 1: # 1d, so ok return Dataset(data=vals) elif vals.ndim == 0: # single value return Dataset(data=[vals]) elif vals.ndim == 2: # 2d, see whether data are error bars if vals.shape[0] == 2: return Dataset( data=vals[0,:], serr=vals[1,:]) elif vals.shape[0] == 3: return Dataset( data=vals[0,:], perr=vals[1,:], nerr=vals[2,:]) else: err = _('Expression has wrong dimensions') elif dimensions == 2 and vals.ndim == 2: # try to use dimensions of first-substituted dataset dsrange = {} for ds in subdatasets: d = doc.data[ds] if d.dimensions == 2: for p in ( 'xrange', 'yrange', 'xedge', 'yedge', 'xcent', 'ycent' ): dsrange[p] = getattr(d, p) break return Dataset2D(vals, **dsrange) else: err = _('Expression has wrong dimensions') raise DatasetExpressionException(err) def evalDatasetExpression(doc, origexpr, datatype='numeric', dimensions=1, part='data'): """Evaluate expression and return an appropriate Dataset. part is 'data', 'serr', 'perr' or 'nerr' - these are the dataset parts which are evaluated by the expression Returns None if error """ if not origexpr: # ignore blank names return None d = doc.data.get(origexpr) if ( d is not None and d.datatype == datatype and d.dimensions == dimensions ): return d # support nD datasets by converting to requested shape if d is not None and d.dimensions == -1 and d.data.ndim == dimensions: if dimensions == 1: return Dataset(d.data) elif dimensions == 2: return Dataset2D(d.data) if utils.id_re.match(origexpr): # if name is a python identifier, then it has to be a dataset # name. As it wasn't there, just return with nothing rather # than print error message. return None # replace dataset names by calls to _DS_(name,part) expr, subdatasets = substituteDatasets(doc.data, origexpr, part) comp = doc.evaluate.compileCheckedExpression(expr, origexpr=origexpr) if comp is None: return # set up environment for evaluation env = doc.evaluate.context.copy() def doeval(dsname, dspart): return _evaluateDataset(doc.data, dsname, dspart) env['_DS_'] = doeval # do evaluation try: evalout = eval(comp, env) except Exception as ex: doc.log(_("Error evaluating '%s': '%s'" % (origexpr, str(ex)))) return None # return correct dataset for data type try: if datatype == 'numeric': return _returnNumericDataset(doc, evalout, dimensions, subdatasets) elif datatype == 'text': return DatasetText([str(x) for x in evalout]) else: raise RuntimeError('Invalid data type') except DatasetExpressionException as ex: doc.log(_("Error evaluating '%s': %s\n") % (origexpr, str(ex))) return None class DatasetExpression(Dataset1DBase): """A dataset which is linked to another dataset by an expression.""" dstype = _('Expression') def __init__(self, data=None, serr=None, nerr=None, perr=None, parametric=None): """Initialise the dataset with the expressions given. parametric is option and can be (minval, maxval, steps) or None """ Dataset1DBase.__init__(self) # store the expressions to use to generate the dataset self.expr = {} self.expr['data'] = data self.expr['serr'] = serr self.expr['nerr'] = nerr self.expr['perr'] = perr self.parametric = parametric self.docchangeset = -1 self.evaluated = {} def evaluateDataset(self, dsname, dspart): """Return the dataset given. dsname is the name of the dataset dspart is the part to get (e.g. data, serr) """ return _evaluateDataset(self.document.data, dsname, dspart) def _evaluatePart(self, expr, part): """Evaluate expression expr for part part. Returns True if succeeded """ # replace dataset names with calls newexpr = substituteDatasets(self.document.data, expr, part)[0] comp = self.document.evaluate.compileCheckedExpression( newexpr, origexpr=expr) if comp is None: return False # set up environment to evaluate expressions in environment = self.document.evaluate.context.copy() # create dataset using parametric expression if self.parametric: p = self.parametric if p[2] >= 2: deltat = (p[1]-p[0]) / (p[2]-1) t = N.arange(p[2])*deltat + p[0] else: t = N.array([p[0]]) environment['t'] = t # this fn gets called to return the value of a dataset environment['_DS_'] = self.evaluateDataset # actually evaluate the expression try: result = eval(comp, environment) evalout = N.array(result, N.float64) if len(evalout.shape) > 1: raise RuntimeError("Number of dimensions is not 1") except Exception as ex: self.document.log(_( "Error evaluating expression: %s\n" "Error: %s") % (self.expr[part], str(ex)) ) return False # make evaluated error expression have same shape as data if part != 'data': data = self.evaluated['data'] if evalout.shape == (): # zero dimensional - expand to data shape evalout = N.resize(evalout, data.shape) else: # 1-dimensional - make it right size and trim oldsize = evalout.shape[0] evalout = N.resize(evalout, data.shape) evalout[oldsize:] = N.nan else: if evalout.shape == (): # zero dimensional - make a single point evalout = N.resize(evalout, 1) self.evaluated[part] = evalout return True def updateEvaluation(self): """Update evaluation of parts of dataset. Returns False if problem with any evaluation """ ok = True if self.docchangeset != self.document.changeset: # avoid infinite recursion! self.docchangeset = self.document.changeset # zero out previous values for part in self.columns: self.evaluated[part] = None # update all parts for part in self.columns: expr = self.expr[part] if expr is not None and expr.strip() != '': ok = ok and self._evaluatePart(expr, part) return ok def _propValues(self, part): """Check whether expressions need reevaluating, and recalculate if necessary.""" self.updateEvaluation() # catch case where error in setting data, need to return "real" data if self.evaluated['data'] is None: self.evaluated['data'] = N.array([]) return self.evaluated[part] # expose evaluated data as properties # this allows us to recalculate the expressions on the fly data = property(lambda self: self._propValues('data')) serr = property(lambda self: self._propValues('serr')) perr = property(lambda self: self._propValues('perr')) nerr = property(lambda self: self._propValues('nerr')) def saveDataRelationToText(self, fileobj, name): '''Save data to file. ''' parts = [repr(name), repr(self.expr['data'])] if self.expr['serr']: parts.append('symerr=%s' % repr(self.expr['serr'])) if self.expr['nerr']: parts.append('negerr=%s' % repr(self.expr['nerr'])) if self.expr['perr']: parts.append('poserr=%s' % repr(self.expr['perr'])) if self.parametric is not None: parts.append('parametric=%s' % repr(self.parametric)) parts.append('linked=True') s = 'SetDataExpression(%s)\n' % ', '.join(parts) fileobj.write(s) def __getitem__(self, key): """Return a dataset based on this dataset We override this from DatasetConcreteBase as it would return a DatsetExpression otherwise, not chopped sets of data. """ return Dataset(**self._getItemHelper(key)) def canUnlink(self): """Whether dataset can be unlinked.""" return True def linkedInformation(self): """Return information about linking.""" text = [] if self.parametric: text.append(_('Linked parametric dataset')) else: text.append(_('Linked expression dataset')) for label, part in zip(self.column_descriptions, self.columns): if self.expr[part]: text.append('%s: %s' % (label, self.expr[part])) if self.parametric: text.append(_("where t goes from %g:%g in %i steps") % self.parametric) return '\n'.join(text) def getSpacing(data): """Given a set of values, get minimum, maximum, step size and number of steps. Function allows that values may be missing Function assumes that at least one of the steps is the minimum step size (i.e. steps are not all multiples of some mininimum) """ try: data = N.array(data) + 0 except ValueError: raise DatasetExpressionException('Expression is not an array') if len(data.shape) != 1: raise DatasetExpressionException('Array is not 1D') if len(data) < 2: raise DatasetExpressionException('Two values required to convert to 2D') uniquesorted = N.unique(data) sigfactor = (uniquesorted[-1]-uniquesorted[0])*1e-13 # differences between elements deltas = N.unique( N.ediff1d(uniquesorted) ) mindelta = None for delta in deltas: if delta > sigfactor: if mindelta is None: # first delta mindelta = delta elif N.fabs(mindelta-delta) > sigfactor: # new delta - check is multiple of old delta ratio = delta/mindelta if N.fabs(int(ratio)-ratio) > 1e-3: raise DatasetExpressionException( 'Variable spacings not yet supported ' 'in constructing 2D datasets') if mindelta is None or mindelta == 0: raise DatasetExpressionException('Could not identify delta') return ( uniquesorted[0], uniquesorted[-1], mindelta, int((uniquesorted[-1]-uniquesorted[0])/mindelta)+1 ) class Dataset2DXYZExpression(Dataset2DBase): '''A 2d dataset with expressions for x, y and z.''' dstype = _('2D XYZ') def __init__(self, exprx, expry, exprz): """Initialise dataset. Parameters are mathematical expressions based on datasets.""" Dataset2DBase.__init__(self) self.lastchangeset = -1 self.cacheddata = None self.xedge = self.yedge = self.xcent = self.ycent = None # copy parameters self.exprx = exprx self.expry = expry self.exprz = exprz def evaluateDataset(self, dsname, dspart): """Return the dataset given. dsname is the name of the dataset dspart is the part to get (e.g. data, serr) """ return _evaluateDataset(self.document.data, dsname, dspart) def evalDataset(self): """Return the evaluated dataset.""" # FIXME: handle irregular grids # return cached data if document unchanged if self.document.changeset == self.lastchangeset: return self.cacheddata self.lastchangeset = self.document.changeset self.cacheddata = None evaluated = {} environment = self.document.evaluate.context.copy() environment['_DS_'] = self.evaluateDataset # evaluate the x, y and z expressions for name in ('exprx', 'expry', 'exprz'): origexpr = getattr(self, name) expr = substituteDatasets(self.document.data, origexpr, 'data')[0] comp = self.document.evaluate.compileCheckedExpression( expr, origexpr=origexpr) if comp is None: return None try: evaluated[name] = eval(comp, environment) except Exception as e: self.document.log( _("Error evaluating expression: %s\nError: %s") % (expr, str(e)) ) return None minx, maxx, stepx, stepsx = getSpacing(evaluated['exprx']) miny, maxy, stepy, stepsy = getSpacing(evaluated['expry']) # update cached x and y ranges self._xrange = (minx-stepx*0.5, maxx+stepx*0.5) self._yrange = (miny-stepy*0.5, maxy+stepy*0.5) self.cacheddata = N.empty( (stepsy, stepsx) ) self.cacheddata[:,:] = N.nan xpts = ((1./stepx)*(evaluated['exprx']-minx)).astype('int32') ypts = ((1./stepy)*(evaluated['expry']-miny)).astype('int32') # this is ugly - is this really the way to do it? try: self.cacheddata.flat [ xpts + ypts*stepsx ] = evaluated['exprz'] except Exception as e: self.document.log( _("Shape mismatch when constructing dataset\nError: %s") % str(e) ) return None return self.cacheddata @property def xrange(self): """Get x range of data as a tuple (min, max).""" return self.getDataRanges()[0] @property def yrange(self): """Get y range of data as a tuple (min, max).""" return self.getDataRanges()[1] def getDataRanges(self): """Get both ranges of axis.""" ds = self.evalDataset() if ds is None: return ( (0., 1.), (0., 1.) ) return (self._xrange, self._yrange) @property def data(self): """Get data, or none if error.""" ds = self.evalDataset() if ds is None: return N.array( [[]] ) return ds def saveDataRelationToText(self, fileobj, name): '''Save expressions to file. ''' s = 'SetData2DExpressionXYZ(%s, %s, %s, %s, linked=True)\n' % ( repr(name), repr(self.exprx), repr(self.expry), repr(self.exprz) ) fileobj.write(s) def canUnlink(self): """Can relationship be unlinked?""" return True def linkedInformation(self): """Return linking information.""" return _('Linked 2D function: x=%s, y=%s, z=%s') % ( self.exprx, self.expry, self.exprz) class Dataset2DExpression(Dataset2DBase): """Evaluate an expression of 2d datasets.""" dstype = _('2D Expr') def __init__(self, expr): """Create 2d expression dataset.""" Dataset2DBase.__init__(self) self.expr = expr self.lastchangeset = -1 @property def data(self): """Return data, or empty array if error.""" ds = self.evalDataset() return ds.data if ds is not None else N.array([[]]) @property def xrange(self): """Return x range.""" ds = self.evalDataset() return ds.xrange if ds is not None else [0., 1.] @property def yrange(self): """Return y range.""" ds = self.evalDataset() return ds.yrange if ds is not None else [0., 1.] @property def xedge(self): """Return x grid points.""" ds = self.evalDataset() return ds.xedge if ds is not None else None @property def yedge(self): """Return y grid points.""" ds = self.evalDataset() return ds.yedge if ds is not None else None @property def xcent(self): """Return x cent points.""" ds = self.evalDataset() return ds.xcent if ds is not None else None @property def ycent(self): """Return y cent points.""" ds = self.evalDataset() return ds.ycent if ds is not None else None def evalDataset(self): """Do actual evaluation.""" return evalDatasetExpression(self.document, self.expr, dimensions=2) def saveDataRelationToText(self, fileobj, name): '''Save expression to file.''' s = 'SetData2DExpression(%s, %s, linked=True)\n' % ( repr(name), repr(self.expr) ) fileobj.write(s) def canUnlink(self): """Can relationship be unlinked?""" return True def linkedInformation(self): """Return linking information.""" return _('Linked 2D expression: %s') % self.expr ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1671713496.0 veusz-3.6.2/veusz/datasets/filtered.py0000664000175000017500000001645614351051330016263 0ustar00jssjss# Copyright (C) 2015 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### import numpy as N from .commonfn import _ from .base import DatasetBase from .oned import Dataset from .expression import evalDatasetExpression class DatasetFilterGenerator: """This object is shared by all DatasetFiltered datasets, to calculate the filter expression.""" def __init__(self, inexpr, indatasets, prefix="", suffix="", invert=False, replaceblanks=False): """ inexpr = filter expression indatasets = list of input datasets prefix = output prefix suffix = output suffix invert = invert filter replaceblanks = replace filtered values by nans """ self.changeset = -1 self.inexpr = inexpr self.indatasets = indatasets self.prefix = prefix self.suffix = suffix self.invert = invert self.replaceblanks = replaceblanks self.outdatasets = {} def filterNumeric(self, ds, filterarr): """Filter a numeric dataset.""" outdata = {} minlen = len(filterarr) for attr in ds.columns: data = getattr(ds, attr) if data is None: filtered = None else: filtered = N.array(data[:minlen]) if self.replaceblanks: filtered[N.logical_not(filterarr)] = N.nan else: filtered = filtered[filterarr] outdata[attr] = filtered return ds.returnCopyWithNewData(**outdata) def filterText(self, ds, filterarr): """Filter a text dataset.""" data = ds.data if self.replaceblanks: filtered = [(d if f else "") for f, d in zip(filterarr, data)] else: filtered = [d for f, d in zip(filterarr, data) if f] return ds.returnCopyWithNewData(data=filtered) def checkUpdate(self, doc): """Check whether datasets need to be updated.""" if doc.changeset != self.changeset: self.changeset = doc.changeset log = self.evaluateFilter(doc) if log: doc.log('\n'.join(log)+'\n') def evaluateFilter(self, doc): """Update filtering calculation if doc changed. Returns log of errors """ # this is populated by output self.outdatasets = {} # evaluate filter expression d = evalDatasetExpression(doc, self.inexpr) if d is None: return ["Invalid filter expression: '%s'" % self.inexpr] if d.dimensions != 1: return [ _("Invalid number of dimensions in filter expression '%s'") % self.inexpr] if d.datatype != "numeric": return [ _("Input filter expression non-numeric: '%s'") % self.inexpr] filterarr = d.data.astype(N.bool_) if self.invert: filterarr = N.logical_not(filterarr) # do filtering of datasets log = [] for name in self.indatasets: ds = doc.data.get(name) if ds is None: continue if ds.dimensions != 1: log.append( _("Filtered dataset '%s' has more than 1 dimension") % name) continue minlen = min(len(ds.data), len(filterarr)) filterarrchop = filterarr[:minlen] if ds.datatype == "numeric": filtered = self.filterNumeric(ds, filterarrchop) elif ds.datatype == "text": filtered = self.filterText(ds, filterarrchop) else: log.append(_("Could not filter dataset '%s'") % name) continue self.outdatasets[name] = filtered return log def saveToFile(self, doc, fileobj): """Save datasets to file.""" # find current datasets in document which use this generator # (some may have been deleted) names = [] for name, ds in sorted(doc.data.items()): if getattr(ds, "generator", None) is self: names.append(ds.namein) args = [ repr(self.inexpr), repr(names), ] if self.prefix: args.append("prefix="+repr(self.prefix)) if self.suffix: args.append("suffix="+repr(self.suffix)) if self.invert: args.append("invert=True") if self.replaceblanks: args.append("replaceblanks=True") fileobj.write("FilterDatasets(%s)\n" % ", ".join(args)) class DatasetFiltered(DatasetBase): """A dataset which is another dataset filtered by an expression.""" dstype = "Filtered" editable = False def __init__(self, gen, name, doc): DatasetBase.__init__(self) self.generator = gen self.namein = name self.document = doc self.changeset = -1 self._internalds = None self.tags = set() def _checkUpdate(self): """Recalculate if document has changed.""" if self.document.changeset != self.changeset: self.generator.checkUpdate(self.document) self.changeset = self.document.changeset ds = self.generator.outdatasets.get(self.namein) if ds is None: self._internalds = Dataset(data=[]) else: self._internalds = ds def linkedInformation(self): return _("Filtered '%s' using '%s'") % ( self.namein, self.generator.inexpr) def canUnlink(self): return True def saveToFile(self, fileobj, name, **args): """Save plugin to file, if this is the first one.""" # Am I the first dataset in the document with this generator? am1st = False for ds in sorted(self.document.data): data = self.document.data[ds] if data is self: am1st = True break elif getattr(data, "generator", None) is self.generator: # not 1st break if am1st: self.generator.saveToFile(self.document, fileobj) def __getattr__(self, attr): """Lookup attribute from internal dataset.""" self._checkUpdate() return getattr(self._internalds, attr) # these have to be overridden manually def __getitem__(self, key): self._checkUpdate() return self._internalds[key] def __len__(self): self._checkUpdate() return len(self._internalds) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/datasets/helpers.py0000664000175000017500000000705714332253347016137 0ustar00jssjss# Copyright (C) 2004 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Functions to be used by module users as helpers.""" import numpy as N from .base import DatasetBase from .oned import Dataset from .twod import Dataset2D from .text import DatasetText def valsToDataset(vals, datatype, dimensions): """Return a dataset given a numpy array of values.""" if datatype == 'numeric': try: nvals = N.array(vals, dtype=N.float64) if nvals.ndim == dimensions: if nvals.ndim == 1: return Dataset(data=nvals) elif nvals.ndim == 2: return Dataset2D(nvals) except ValueError: pass elif datatype == 'text': try: return DatasetText([str(x) for x in vals]) except ValueError: pass raise RuntimeError('Invalid array') def generateValidDatasetParts(datasets, breakds=True): """Generator to return array of valid parts of datasets. if breakds is True: Yields new datasets between rows which are invalid else: Yields single, filtered dataset """ # find NaNs and INFs in input dataset invalid = datasets[0].invalidDataPoints() minlen = invalid.shape[0] for ds in datasets[1:]: if isinstance(ds, DatasetBase) and not ds.empty(): nextinvalid = ds.invalidDataPoints() minlen = min(nextinvalid.shape[0], minlen) invalid = N.logical_or(invalid[:minlen], nextinvalid[:minlen]) if breakds: # return multiple datasets, breaking at invalid values # get indexes of invalid points indexes = invalid.nonzero()[0].tolist() # no bad points: optimisation if not indexes: yield datasets return # add on shortest length of datasets indexes.append(minlen) lastindex = 0 for index in indexes: if index != lastindex: retn = [] for ds in datasets: if ds is not None and ( not isinstance(ds, DatasetBase) or not ds.empty()): retn.append(ds[lastindex:index]) else: retn.append(None) yield retn lastindex = index+1 else: # in this mode we return single datasets where the invalid # values are masked out if not N.any(invalid): yield datasets return valid = N.logical_not(invalid) retn = [] for ds in datasets: if ds is None: retn.append(None) else: retn.append(ds[valid]) yield retn ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/datasets/histo.py0000664000175000017500000002301514332253347015613 0ustar00jssjss# Copyright (C) 2010 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### import numpy as N from .. import utils from .commonfn import _ from .oned import Dataset1DBase from .expression import evalDatasetExpression class DatasetHistoGenerator: def __init__(self, document, inexpr, binmanual = None, binparams = None, method = 'counts', cumulative = 'none', errors=False): """ inexpr = ds expression binmanual = None / [1,2,3,4,5] binparams = None / (num, minval, maxval, islog) method = ('counts', 'density', or 'fractions') cumulative = ('none', 'smalltolarge', 'largetosmall') errors = True/False """ self.changeset = -1 self.document = document self.inexpr = inexpr self.binmanual = binmanual if binparams is None: self.binparams = (10, 'Auto', 'Auto', False) else: self.binparams = binparams self.method = method self.cumulative = cumulative self.errors = errors self.bindataset = self.valuedataset = None def getData(self): """Get data from input expression, caching result.""" if self.document.changeset != self.changeset: d = evalDatasetExpression(self.document, self.inexpr) if d is not None: d = d.data # only use finite data d = d[N.isfinite(d)] if len(d) == 0: d = None self._cacheddata = d self.changeset = self.document.changeset return self._cacheddata def binLocations(self): """Compute locations of bins edges, giving N+1 items.""" if self.binmanual is not None: return N.array(self.binmanual) else: numbins, minval, maxval, islog = self.binparams if minval == 'Auto' or maxval == 'Auto': data = self.getData() if data is None: return N.array([]) if minval == 'Auto': minval = N.min(data) if maxval == 'Auto': maxval = N.max(data) if not islog: delta = (maxval - minval) / numbins return N.arange(numbins+1)*delta + minval else: if minval <= 0: minval = 1e-99 if maxval <= 0: maxval = 1e99 lmin, lmax = N.log(minval), N.log(maxval) delta = (lmax - lmin) / numbins return N.exp( N.arange(numbins+1)*delta + lmin ) def getBinLocations(self): """Return bin centre, -ve bin width, +ve bin width.""" if self.getData() is None: return (N.array([]), None, None) binlocs = self.binLocations() if self.binparams and self.binparams[3]: # log bins lbin = N.log(binlocs) data = N.exp( 0.5*(lbin[:-1] + lbin[1:]) ) else: # otherwise linear bins data = 0.5*(binlocs[:-1] + binlocs[1:]) # error bars nerr = binlocs[:-1] - data perr = binlocs[1:] - data return data, nerr, perr def getErrors(self, data, binlocs): """Compute error bars if requried.""" hist, edges = N.histogram(data, bins=binlocs) hist = hist.astype(N.float64) # integers can break plots (github#49) # calculate scaling values for error bars if self.method == 'density': ratio = 1. / (hist.size*(edges[1]-edges[0])) elif self.method == 'fractions': ratio = 1. / data.size else: ratio = 1. # compute cumulative values (errors correlated) if self.cumulative == 'smalltolarge': hist = N.cumsum(hist) elif self.cumulative == 'largetosmall': hist = N.cumsum(hist[::-1])[::-1] # Gehrels 1986 ApJ 303 336 perr = 1. + N.sqrt(hist + 0.75) nerr = N.where(hist > 0, N.sqrt(hist - 0.25), 0.) return -nerr*ratio, perr*ratio def getBinVals(self): """Return results for each bin.""" data = self.getData() if data is None: return (N.array([]), None, None) density = self.method == 'density' binlocs = self.binLocations() hist, edges = N.histogram(data, bins=binlocs, density=density) hist = hist.astype(N.float64) # integers can break plots (github#49) if self.method == 'fractions': hist = hist * (1./data.size) # if cumulative wanted if self.cumulative == 'smalltolarge': hist = N.cumsum(hist) elif self.cumulative == 'largetosmall': hist = N.cumsum(hist[::-1])[::-1] if self.errors: nerr, perr = self.getErrors(data, binlocs) else: nerr, perr = None, None return hist, nerr, perr def generateBinDataset(self): self.bindataset = DatasetHistoBins(self, self.document) return self.bindataset def generateValueDataset(self): self.valuedataset = DatasetHistoValues(self, self.document) return self.valuedataset def saveToFile(self, fileobj): """Save two datasets to file.""" # lookup names of datasets in document bindsname = valuedsname = '' for name, ds in self.document.data.items(): if ds is self.bindataset: bindsname = name elif ds is self.valuedataset: valuedsname = name fileobj.write( "CreateHistogram(%s, %s, %s, binparams=%s, " "binmanual=%s, method=%s, " "cumulative=%s, errors=%s)\n" % ( utils.rrepr(self.inexpr), utils.rrepr(bindsname), utils.rrepr(valuedsname), utils.rrepr(self.binparams), utils.rrepr(self.binmanual), utils.rrepr(self.method), utils.rrepr(self.cumulative), utils.rrepr(self.errors)) ) def linkedInformation(self): """Informating about linking.""" if self.binmanual is not None: bins = _('manual bins') else: bins = _('%i bins from %s to %s') % ( self.binparams[0], self.binparams[1], self.binparams[2]) return _("Histogram of '%s' with %s") % (self.inexpr, bins) class DatasetHistoBins(Dataset1DBase): """A dataset for getting the bin positions for the histogram.""" dstype = _('Histogram') def __init__(self, generator, document): Dataset1DBase.__init__(self) self.generator = generator self.document = document self.linked = None self._invalidpoints = None self.changeset = -1 def getData(self): """Get bin positions, caching results.""" if self.changeset != self.generator.document.changeset: self.datacache = self.generator.getBinLocations() self.changeset = self.generator.document.changeset return self.datacache def linkedInformation(self): """Informating about linking.""" return self.generator.linkedInformation() + _(" (bin positions)") def saveDataDumpToText(self, fileobj, name): pass def saveDataDumpToHDF5(self, group, name): pass data = property(lambda self: self.getData()[0]) nerr = property(lambda self: self.getData()[1]) perr = property(lambda self: self.getData()[2]) serr = None class DatasetHistoValues(Dataset1DBase): """A dataset for getting the height of the bins in a histogram.""" dstype = _('Histogram') def __init__(self, generator, document): Dataset1DBase.__init__(self) self.generator = generator self.document = document self.linked = None self._invalidpoints = None self.changeset = -1 def getData(self): """Get bin heights, caching results.""" if self.changeset != self.generator.document.changeset: self.datacache = self.generator.getBinVals() self.changeset = self.generator.document.changeset return self.datacache def saveDataRelationToText(self, fileobj, name): """Save dataset and its counterpart to a file.""" self.generator.saveToFile(fileobj) def saveDataDumpToText(self, fileobj, name): pass def saveDataDumpToHDF5(self, group, name): pass def linkedInformation(self): """Informating about linking.""" return self.generator.linkedInformation() + _(" (bin values)") data = property(lambda self: self.getData()[0]) nerr = property(lambda self: self.getData()[1]) perr = property(lambda self: self.getData()[2]) serr = None ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/datasets/nd.py0000664000175000017500000000665314332253347015077 0ustar00jssjss# Copyright (C) 2016 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### """N dimensional datasets.""" import numpy as N from .. import utils from .commonfn import _, dsPreviewHelper from .base import DatasetConcreteBase class DatasetNDBase(DatasetConcreteBase): """N-dimensional datasets.""" dimensions = -1 dstype = _('nD') editable = False def userSize(self): return '×'.join(str(x) for x in self.data.shape) def userPreview(self): return dsPreviewHelper(N.ravel(self.data)) def description(self): return _('ND (%s), numeric') % self.userSize() def returnCopy(self): return DatasetND(data=self.data) def returnCopyWithNewData(self, **args): return DatasetND(**args) def empty(self): """Is the data defined?""" return len(self.data) == 0 def datasetAsText(self, fmt='%g', join='\t'): """Dataset as text for copy, paste, etc.""" def fmtrecurse(arr): if arr.ndim == 0: return fmt % arr + '\n' elif arr.ndim == 1: out = [fmt % v for v in arr] return join.join(out) else: out = [] for v in arr: out.append(fmtrecurse(v)) out.append('') return '\n'.join(out) return fmtrecurse(self.data) class DatasetND(DatasetNDBase): def __init__(self, data=None): """data is a numpy array of N dimensions.""" DatasetNDBase.__init__(self) if isinstance(data, N.ndarray): self.data = data.astype(N.float64) elif isinstance(data, list) or isinstance(data, tuple): self.data = N.array(dtype=N.float64) else: raise ValueError("Could not convert data to nD numpy array.") def saveDataDumpToText(self, fileobj, name): """Save data to vsz in form of text.""" fileobj.write("ImportStringND(%s, '''\n" % repr(name)) if self.data.shape[0] == 1: # unfortunately it's hard to decode a single dimension # here so we record this unambiguously shape = ' '.join((str(d) for d in self.data.shape)) fileobj.write("shape %s\n" % shape) fileobj.write(self.datasetAsText(fmt='%e', join=' ')) fileobj.write("''')\n") def saveDataDumpToHDF5(self, group, name): """Save dataset to VSZ HDF5 format.""" escname = utils.escapeHDFDataName(name) group[escname] = self.data group[escname].attrs['vsz_datatype'] = 'nd' group[escname].attrs['vsz_name'] = name.encode('utf-8') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/datasets/oned.py0000664000175000017500000002637114332253347015422 0ustar00jssjss# Copyright (C) 2016 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### """One dimensional datasets.""" import numpy as N from .commonfn import ( _, dsPreviewHelper, copyOrNone, convertNumpy, convertNumpyAbs, convertNumpyNegAbs, datasetNameToDescriptorName) from .base import DatasetConcreteBase, DatasetException from .. import utils class Dataset1DBase(DatasetConcreteBase): """Base for 1D datasets.""" # number of dimensions the dataset holds dimensions = 1 columns = ('data', 'serr', 'nerr', 'perr') column_descriptions = ( _('Data'), _('Sym. errors'), _('Neg. errors'), _('Pos. errors') ) dstype = _('1D') # subclasses must define .data, .serr, .perr, .nerr def userSize(self): """Size of dataset.""" return str( self.data.shape[0] ) def userPreview(self): """Preview of data.""" return dsPreviewHelper(self.data) def description(self): """Get description of dataset.""" if self.serr is not None: templ = _("1D (length %i, symmetric errors)") elif self.perr is not None or self.nerr is not None: templ = _("1D (length %i, asymmetric errors)") else: templ = _("1D (length %i)") return templ % len(self.data) def invalidDataPoints(self): """Return a numpy bool detailing which datapoints are invalid.""" valid = N.isfinite(self.data) for error in self.serr, self.perr, self.nerr: if error is not None: valid = N.logical_and(valid, N.isfinite(error)) return N.logical_not(valid) def hasErrors(self): '''Whether errors on dataset''' return (self.serr is not None or self.nerr is not None or self.perr is not None) def getPointRanges(self): '''Get range of coordinates for each point in the form (minima, maxima).''' minvals = self.data.copy() maxvals = self.data.copy() if self.serr is not None: minvals -= self.serr maxvals += self.serr if self.nerr is not None: minvals += self.nerr if self.perr is not None: maxvals += self.perr return ( minvals[N.isfinite(minvals)], maxvals[N.isfinite(maxvals)] ) def getRange(self): '''Get total range of coordinates. Returns None if empty.''' minvals, maxvals = self.getPointRanges() if len(minvals) > 0 and len(maxvals) > 0: return ( minvals.min(), maxvals.max() ) else: return None def updateRangeAuto(self, axrange, noneg): val = pos = neg = self.data if self.serr is not None: pos = pos + self.serr neg = neg - self.serr if self.perr is not None: pos = pos + self.perr if self.nerr is not None: neg = neg + self.nerr for v in val, pos, neg: if noneg: v = v[v>0] if len(v) > 0: axrange[0] = min(axrange[0], N.nanmin(v)) axrange[1] = max(axrange[1], N.nanmax(v)) def rangeVisit(self, fn): '''Call fn on data points and error values, in order to get range.''' fn(self.data) if self.serr is not None: fn(self.data - self.serr) fn(self.data + self.serr) if self.nerr is not None: fn(self.data + self.nerr) if self.perr is not None: fn(self.data + self.perr) def empty(self): '''Is the data defined?''' return self.data is None or len(self.data) == 0 def datasetAsText(self, fmt='%g', join='\t'): """Return data as text.""" # work out which columns to write cols = [] for c in (self.data, self.serr, self.perr, self.nerr): if c is not None: cols.append(c) # format statement format = (fmt + join) * (len(cols)-1) + fmt + '\n' # do the conversion lines = [] for line in zip(*cols): lines.append( format % line ) return ''.join(lines) def returnCopy(self): """Return version of dataset with no linking.""" return Dataset( data=copyOrNone(self.data), serr=copyOrNone(self.serr), perr=copyOrNone(self.perr), nerr=copyOrNone(self.nerr) ) def returnCopyWithNewData(self, **args): """Return dataset of same type using the column data given.""" return Dataset(**args) class Dataset(Dataset1DBase): '''Represents a dataset.''' editable = True def __init__(self, data = None, serr = None, nerr = None, perr = None, linked = None): '''Initialise dataset with the sets of values given. The values can be given as numpy 1d arrays or lists of numbers linked optionally specifies a LinkedFile to link the dataset to ''' Dataset1DBase.__init__(self, linked=linked) # convert data to numpy arrays self.data = convertNumpy(data) self.serr = convertNumpyAbs(serr) self.perr = convertNumpyAbs(perr) self.nerr = convertNumpyNegAbs(nerr) # check the sizes of things match up s = self.data.shape for x in self.serr, self.nerr, self.perr: if x is not None and x.shape != s: raise DatasetException('Lengths of error data do not match data') def changeValues(self, thetype, vals): """Change the requested part of the dataset to vals. thetype == data | serr | perr | nerr """ if thetype in self.columns: setattr(self, thetype, vals) else: raise ValueError('thetype does not contain an allowed value') # just a check... s = self.data.shape for x in (self.serr, self.nerr, self.perr): assert x is None or x.shape == s # tell the document that we've changed self.document.modifiedData(self) def saveDataDumpToText(self, fileobj, name): '''Save data to file. ''' # build up descriptor descriptor = datasetNameToDescriptorName(name) + '(numeric)' if self.serr is not None: descriptor += ',+-' if self.perr is not None: descriptor += ',+' if self.nerr is not None: descriptor += ',-' fileobj.write( "ImportString(%s,'''\n" % repr(descriptor) ) fileobj.write( self.datasetAsText(fmt='%e', join=' ') ) fileobj.write( "''')\n" ) def saveDataDumpToHDF5(self, group, name): """Save dataset to HDF5.""" # store as a group to simplify things odgrp = group.create_group(utils.escapeHDFDataName(name)) odgrp.attrs['vsz_datatype'] = '1d' for key, suffix in ( ('data', ''), ('serr', ' (+-)'), ('perr', ' (+)'), ('nerr', ' (-)')): if getattr(self, key) is not None: odgrp[key] = getattr(self, key) odgrp[key].attrs['vsz_name'] = (name + suffix).encode('utf-8') def deleteRows(self, row, numrows): """Delete numrows rows starting from row. Returns deleted rows as a dict of {column:data, ...} """ retn = {} for col in self.columns: coldata = getattr(self, col) if coldata is not None: retn[col] = coldata[row:row+numrows] setattr(self, col, N.delete( coldata, N.s_[row:row+numrows] )) self.document.modifiedData(self) return retn def insertRows(self, row, numrows, rowdata): """Insert numrows rows starting from row. rowdata is a dict of {column: data}. """ for col in self.columns: coldata = getattr(self, col) data = N.zeros(numrows) if col in rowdata: data[:len(rowdata[col])] = N.array(rowdata[col]) if coldata is not None: newdata = N.insert(coldata, [row]*numrows, data) setattr(self, col, newdata) self.document.modifiedData(self) class DatasetRange(Dataset1DBase): """Dataset consisting of a range of values e.g. 1 to 10 in 10 steps.""" dstype = _('Range') def __init__(self, numsteps, data, serr=None, perr=None, nerr=None): """Construct dataset. numsteps: number of steps in range data, serr, perr and nerr are tuples containing (start, stop) values.""" Dataset1DBase.__init__(self) self.range_data = data self.range_serr = serr self.range_perr = perr self.range_nerr = nerr self.numsteps = numsteps for name in ('data', 'serr', 'perr', 'nerr'): val = getattr(self, 'range_%s' % name) if val is not None: minval, maxval = val if numsteps == 1: vals = N.array( [minval] ) else: delta = (maxval - minval) / (numsteps-1) vals = N.arange(numsteps)*delta + minval else: vals = None setattr(self, name, vals) def __getitem__(self, key): """Return a dataset based on this dataset We override this from DatasetConcreteBase as it would return a DatsetExpression otherwise, not chopped sets of data. """ return Dataset(**self._getItemHelper(key)) def userSize(self): """Size of dataset.""" return str( self.numsteps ) def saveDataRelationToText(self, fileobj, name): """Save dataset to file.""" parts = [repr(name), repr(self.numsteps), repr(self.range_data)] if self.range_serr is not None: parts.append('symerr=%s' % repr(self.range_serr)) if self.range_perr is not None: parts.append('poserr=%s' % repr(self.range_perr)) if self.range_nerr is not None: parts.append('negerr=%s' % repr(self.range_nerr)) parts.append('linked=True') s = 'SetDataRange(%s)\n' % ', '.join(parts) fileobj.write(s) def canUnlink(self): return True def linkedInformation(self): """Return information about linking.""" text = [_('Linked range dataset')] for label, part in zip(self.column_descriptions, self.columns): val = getattr(self, 'range_%s' % part) if val: text.append('%s: %g:%g' % (label, val[0], val[1])) return '\n'.join(text) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/datasets/plugin.py0000664000175000017500000001474314332253347015773 0ustar00jssjss# Copyright (C) 2016 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### from .oned import Dataset1DBase, Dataset from .twod import Dataset2DBase, Dataset2D from .nd import DatasetNDBase, DatasetND from .text import DatasetText from .date import DatasetDateTimeBase, DatasetDateTime class _DatasetPlugin: """Shared methods for dataset plugins.""" def __init__(self, manager, ds): self.pluginmanager = manager self.pluginds = ds def getPluginData(self, attr): self.pluginmanager.update() return getattr(self.pluginds, attr) def linkedInformation(self): """Return information about how this dataset was created.""" fields = [] for name, val in self.pluginmanager.fields.items(): fields.append('%s: %s' % (str(name), str(val))) try: shape = [str(x) for x in self.data.shape] except AttributeError: shape = [str(len(self.data))] shape = '\u00d7'.join(shape) return '%s plugin dataset (fields %s), size %s' % ( self.pluginmanager.plugin.name, ', '.join(fields), shape) def canUnlink(self): """Can relationship be unlinked?""" return True def deleteRows(self, row, numrows): pass def insertRows(self, row, numrows, rowdata): pass def saveDataRelationToText(self, fileobj, name): """Save plugin to file, if this is the first one.""" # only try to save if this is the 1st dataset of this plugin # manager in the document, so that we don't save more than once docdatasets = set( self.document.data.values() ) for ds in self.pluginmanager.veuszdatasets: if ds in docdatasets: if ds is self: # is 1st dataset self.pluginmanager.saveToFile(fileobj) return def saveDataDumpToText(self, fileobj, name): """Save data to text: not used.""" def saveDataDumpToHDF5(self, group, name): """Save data to HDF5: not used.""" @property def dstype(self): """Return type of plugin.""" return self.pluginmanager.plugin.name class Dataset1DPlugin(_DatasetPlugin, Dataset1DBase): """Return 1D dataset from a plugin.""" def __init__(self, manager, ds): _DatasetPlugin.__init__(self, manager, ds) Dataset1DBase.__init__(self) def userSize(self): """Size of dataset.""" return str( self.data.shape[0] ) def __getitem__(self, key): """Return a dataset based on this dataset We override this from DatasetConcreteBase as it would return a DatsetExpression otherwise, not chopped sets of data. """ return Dataset(**self._getItemHelper(key)) # parent class sets these attributes, so override setattr to do nothing data = property( lambda self: self.getPluginData('data'), lambda self, val: None ) serr = property( lambda self: self.getPluginData('serr'), lambda self, val: None ) nerr = property( lambda self: self.getPluginData('nerr'), lambda self, val: None ) perr = property( lambda self: self.getPluginData('perr'), lambda self, val: None ) class Dataset2DPlugin(_DatasetPlugin, Dataset2DBase): """Return 2D dataset from a plugin.""" def __init__(self, manager, ds): _DatasetPlugin.__init__(self, manager, ds) Dataset2DBase.__init__(self) def __getitem__(self, key): return Dataset2D( self.data[key], xrange=self.xrange, yrange=self.yrange, xedge=self.xedge, yedge=self.yedge, xcent=self.xcent, ycent=self.ycent) data = property( lambda self: self.getPluginData('data'), lambda self, val: None ) xrange = property( lambda self: self.getPluginData('rangex'), lambda self, val: None ) yrange = property( lambda self: self.getPluginData('rangey'), lambda self, val: None ) xedge = property( lambda self: self.getPluginData('xedge'), lambda self, val: None ) yedge = property( lambda self: self.getPluginData('yedge'), lambda self, val: None ) xcent = property( lambda self: self.getPluginData('xcent'), lambda self, val: None ) ycent = property( lambda self: self.getPluginData('ycent'), lambda self, val: None ) class DatasetNDPlugin(_DatasetPlugin, DatasetNDBase): """Return N-dimensional dataset from plugin.""" def __init__(self, manager, ds): _DatasetPlugin.__init__(self, manager, ds) DatasetNDBase.__init__(self) def __getitem__(self, key): return DatasetND(self.data[key]) data = property( lambda self: self.getPluginData('data'), lambda self, val: None ) class DatasetTextPlugin(_DatasetPlugin, DatasetText): """Return text dataset from a plugin.""" def __init__(self, manager, ds): _DatasetPlugin.__init__(self, manager, ds) DatasetText.__init__(self, []) def __getitem__(self, key): return DatasetText(self.data[key]) data = property( lambda self: self.getPluginData('data'), lambda self, val: None ) class DatasetDateTimePlugin(_DatasetPlugin, DatasetDateTimeBase): """Return date dataset from plugin.""" def __init__(self, manager, ds): _DatasetPlugin.__init__(self, manager, ds) DatasetDateTimeBase.__init__(self) self.serr = self.perr = self.nerr = None def __getitem__(self, key): return DatasetDateTime(self.data[key]) data = property( lambda self: self.getPluginData('data'), lambda self, val: None ) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/datasets/text.py0000664000175000017500000000751514332253347015460 0ustar00jssjss# Copyright (C) 2016 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### """Text datasets.""" from .commonfn import _ from .base import DatasetConcreteBase from .. import utils class DatasetText(DatasetConcreteBase): """Represents a text dataset: holding an array of strings.""" dimensions = 1 datatype = displaytype = 'text' columns = ('data',) column_descriptions = (_('Data'),) dstype = _('Text') editable = True def __init__(self, data=None, linked=None): """Initialise dataset with data given. Data are a list of strings.""" DatasetConcreteBase.__init__(self, linked=linked) self.data = list(data) def description(self): return _('Text (length %i)') % len(self.data) def userSize(self): """Size of dataset.""" return str( len(self.data) ) def changeValues(self, type, vals): if type == 'data': self.data = list(vals) else: raise ValueError('type does not contain an allowed value') self.document.modifiedData(self) def uiConvertToDataItem(self, val): """Return a value cast to this dataset data type.""" return str(val) def uiDataItemToData(self, val): """Return val converted to data.""" return val def saveDataDumpToText(self, fileobj, name): '''Save data to file. ''' fileobj.write("SetDataText(%s, [\n" % repr(name)) for line in self.data: fileobj.write(" %s,\n" % repr(line)) fileobj.write("])\n") def saveDataDumpToHDF5(self, group, name): """Save text data to hdf5 file.""" tgrp = group.create_group(utils.escapeHDFDataName(name)) tgrp.attrs['vsz_datatype'] = 'text' # make sure data are encoded encdata = [x.encode('utf-8') for x in self.data] tgrp['data'] = encdata tgrp['data'].attrs['vsz_name'] = name.encode('utf-8') def datasetAsText(self, fmt=None, join=None): """Return data as text.""" lines = list(self.data) lines.append('') return '\n'.join(lines) def deleteRows(self, row, numrows): """Delete numrows rows starting from row. Returns deleted rows as a dict of {column:data, ...} """ retn = {'data': self.data[row:row+numrows]} del self.data[row:row+numrows] self.document.modifiedData(self) return retn def insertRows(self, row, numrows, rowdata): """Insert numrows rows starting from row. rowdata is a dict of {column: data}. """ data = rowdata.get('data', []) insdata = data + (['']*(numrows-len(data))) for d in insdata[::-1]: self.data.insert(row, d) self.document.modifiedData(self) def returnCopy(self): """Returns version of dataset with no linking.""" return DatasetText(self.data) def returnCopyWithNewData(self, **args): """Return dataset of same type using the column data given.""" return DatasetText(**args) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/datasets/twod.py0000664000175000017500000003070514332253347015446 0ustar00jssjss# Copyright (C) 2016 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### """Two dimensional datasets.""" import numpy as N from .. import utils from .commonfn import _, dsPreviewHelper, convertNumpy from .base import ( DatasetConcreteBase, DatasetException, DatasetExpressionException) def regularGrid(vals): '''Are the values equally spaced?''' if len(vals) < 2: return False vals = N.array(vals) deltas = vals[1:] - vals[:-1] return N.all(N.abs(deltas - deltas[0]) < (deltas[0]*1e-5)) class Dataset2DBase(DatasetConcreteBase): """Ancestor for 2D datasets.""" # number of dimensions the dataset holds dimensions = 2 # dataset type dstype = _('2D') # subclasses must define data, x/yrange, x/yedge, x/ycent as # attributes or properties def isLinearImage(self): """Are these simple linear pixels?""" return ( self.xedge is None and self.yedge is None and self.xcent is None and self.ycent is None ) def getPixelEdges(self, scalefnx=None, scalefny=None): """Return edges for x and y pixels. scalefnx/y: function to convert values to plotted pixel scale (used to calculate edges from centres on screen) """ def fromcentres(vals, scalefn): """Calculate edges from centres.""" if scalefn: vals = scalefn(vals) if len(vals) == 0: e = [] elif len(vals) == 1: if vals[0] != 0: e = [0, vals[0]*2] else: e = [0, 1] else: e = N.concatenate(( [vals[0] - 0.5*(vals[1]-vals[0])], 0.5*(vals[:-1] + vals[1:]), [vals[-1] + 0.5*(vals[-1]-vals[-2])] )) return N.array(e) if self.xedge is not None: xg = self.xedge if scalefnx: xg = scalefnx(xg) elif self.xcent is not None: xg = fromcentres(self.xcent, scalefnx) else: xg = N.linspace( self.xrange[0], self.xrange[1], self.data.shape[1]+1) if scalefnx: xg = scalefnx(xg) if self.yedge is not None: yg = self.yedge if scalefny: yg = scalefny(yg) elif self.ycent is not None: yg = fromcentres(self.ycent, scalefny) else: yg = N.linspace( self.yrange[0], self.yrange[1], self.data.shape[0]+1) if scalefny: yg = scalefny(yg) return xg, yg def getPixelCentres(self): """Return lists of pixel centres in x and y.""" yw, xw = self.data.shape if self.xcent is not None: xc = self.xcent elif self.xedge is not None: xc = 0.5*(self.xedge[:-1]+self.xedge[1:]) else: try: xc = (N.arange(xw) + 0.5) * ( (self.xrange[1]-self.xrange[0])/xw) + self.xrange[0] except ZeroDivisionError: xc = 0. if self.ycent is not None: yc = self.ycent elif self.yedge is not None: yc = 0.5*(self.yedge[:-1]+self.yedge[1:]) else: try: yc = (N.arange(yw) + 0.5) * ( (self.yrange[1]-self.yrange[0])/yw) + self.yrange[0] except ZeroDivisionError: yc = 0. return xc, yc def getDataRanges(self): """Return ranges of x and y data (as tuples).""" xe, ye = self.getPixelEdges() return (xe[0], xe[-1]), (ye[0], ye[-1]) def datasetAsText(self, fmt='%g', join='\t'): """Return dataset as text. fmt is the format specifier to use join is the string to separate the items """ format = ((fmt+join) * (self.data.shape[1]-1)) + fmt + '\n' # write rows backwards, so lowest y comes first lines = [] for row in self.data[::-1]: line = format % tuple(row) lines.append(line) return ''.join(lines) def userSize(self): """Return dimensions of dataset for user.""" return '%i×%i' % self.data.shape def userPreview(self): """Return preview of data.""" return dsPreviewHelper(self.data.flatten()) def description(self): """Get description of dataset.""" xr, yr = self.getDataRanges() text = _("2D (%i×%i), numeric, x=%.4g->%.4g, y=%.4g->%.4g") % ( self.data.shape[0], self.data.shape[1], xr[0], xr[1], yr[0], yr[1] ) return text def returnCopy(self): return Dataset2D( N.array(self.data), xrange=self.xrange, yrange=self.yrange, xedge=self.xedge, yedge=self.yedge, xcent=self.xcent, ycent=self.ycent ) def returnCopyWithNewData(self, **args): return Dataset2D(**args) class Dataset2D(Dataset2DBase): '''Represents a two-dimensional dataset.''' editable = True def __init__(self, data=None, xrange=None, yrange=None, xedge=None, yedge=None, xcent=None, ycent=None): '''Create a two dimensional dataset based on data. data: 2d numpy of imaging data Range specfied by: xrange: a tuple of (start, end) coordinates for x yrange: a tuple of (start, end) coordinates for y _or_ xedge: list of values start..end (npix+1 values) yedge: list of values start..end (npix+1 values) _or_ xcent: list of values (npix values) ycent: list of values (npix values) ''' Dataset2DBase.__init__(self) self.data = convertNumpy(data, dims=2) # try to regularise data if possible # by converting regular grids to ranges if xedge is not None and regularGrid(xedge): xrange = (xedge[0], xedge[-1]) xedge = None if yedge is not None and regularGrid(yedge): yrange = (yedge[0], yedge[-1]) yedge = None if xcent is not None and regularGrid(xcent): delta = 0.5*(xcent[1]-xcent[0]) xrange = (xcent[0]-delta, xcent[-1]+delta) xcent = None if ycent is not None and regularGrid(ycent): delta = 0.5*(ycent[1]-ycent[0]) yrange = (ycent[0]-delta, ycent[-1]+delta) ycent = None self.xrange = self.yrange = None self.xedge = self.yedge = self.xcent = self.ycent = None if xrange is not None: self.xrange = tuple(xrange) elif xedge is not None: self.xedge = N.array(xedge) elif xcent is not None: self.xcent = N.array(xcent) elif self.data is not None: self.xrange = (0, self.data.shape[1]) else: self.xrange = (0., 1.) if yrange is not None: self.yrange = tuple(yrange) elif yedge is not None: self.yedge = N.array(yedge) elif ycent is not None: self.ycent = N.array(ycent) elif self.data is not None: self.yrange = (0, self.data.shape[0]) else: self.yrange = (0., 1.) def saveDataDumpToText(self, fileobj, name): """Write the 2d dataset to the file given.""" fileobj.write("ImportString2D(%s, '''\n" % repr(name)) if self.xcent is not None: fileobj.write( "xcent %s\n" % " ".join(("%e" % v for v in self.xcent)) ) elif self.xedge is not None: fileobj.write( "xedge %s\n" % " ".join(("%e" % v for v in self.xedge)) ) else: fileobj.write("xrange %e %e\n" % tuple(self.xrange)) if self.ycent is not None: fileobj.write( "ycent %s\n" % " ".join(("%e" % v for v in self.ycent)) ) elif self.yedge is not None: fileobj.write( "yedge %s\n" % " ".join(("%e" % v for v in self.yedge)) ) else: fileobj.write("yrange %e %e\n" % tuple(self.yrange)) fileobj.write(self.datasetAsText(fmt='%e', join=' ')) fileobj.write("''')\n") def saveDataDumpToHDF5(self, group, name): """Save 2D data in hdf5 file.""" tdgrp = group.create_group(utils.escapeHDFDataName(name)) tdgrp.attrs['vsz_datatype'] = '2d' for v in ( 'data', 'xcent', 'xedge', 'ycent', 'yedge', 'xrange', 'yrange' ): if getattr(self, v) is not None: tdgrp[v] = getattr(self, v) # map attributes for importing if v != 'data': tdgrp['data'].attrs['vsz_' + v] = tdgrp[v].ref # unicode text not stored properly unless encoded tdgrp['data'].attrs['vsz_name'] = name.encode('utf-8') class Dataset2DXYFunc(Dataset2DBase): """Given a range of x and y, this is a dataset which is a function of this. """ dstype = _('2D f(x,y)') def __init__(self, xstep, ystep, expr): """Create 2d dataset: xstep: tuple(xmin, xmax, step) ystep: tuple(ymin, ymax, step) expr: expression of x and y """ Dataset2DBase.__init__(self) if xstep is None or ystep is None: raise DatasetException('Steps are not set') self.xstep = xstep self.ystep = ystep self.expr = expr self.xrange = ( self.xstep[0] - self.xstep[2]*0.5, self.xstep[1] + self.xstep[2]*0.5) self.yrange = ( self.ystep[0] - self.ystep[2]*0.5, self.ystep[1] + self.ystep[2]*0.5) self.xedge = self.yedge = self.xcent = self.ycent = None self.cacheddata = None self.lastchangeset = -1 @property def data(self): """Return data, or empty array if error.""" try: return self.evalDataset() except DatasetExpressionException as ex: self.document.log(str(ex)) return N.array([[]]) def evalDataset(self): """Evaluate the 2d dataset.""" if self.document.changeset == self.lastchangeset: return self.cacheddata env = self.document.evaluate.context.copy() xarange = N.arange( self.xstep[0], self.xstep[1]+self.xstep[2], self.xstep[2]) yarange = N.arange( self.ystep[0], self.ystep[1]+self.ystep[2], self.ystep[2]) ystep, xstep = N.indices( (len(yarange), len(xarange)) ) xstep = xarange[xstep] ystep = yarange[ystep] env['x'] = xstep env['y'] = ystep try: data = eval(self.expr, env) except Exception as e: raise DatasetExpressionException(_( "Error evaluating expression: %s\n" "Error: %s") % (self.expr, str(e)) ) # ensure we get an array out of this (in case expr is scalar) data = data + xstep*0 self.cacheddata = data self.lastchangeset = self.document.changeset return data def saveDataRelationToText(self, fileobj, name): '''Save expressions to file. ''' s = 'SetData2DXYFunc(%s, %s, %s, %s, linked=True)\n' % ( repr(name), repr(self.xstep), repr(self.ystep), repr(self.expr) ) fileobj.write(s) def canUnlink(self): """Can relationship be unlinked?""" return True def linkedInformation(self): """Return linking information.""" return _('Linked 2D function: x=%g:%g:%g, y=%g:%g:%g, z=%s') % tuple( list(self.xstep) + list(self.ystep) + [self.expr]) ././@PaxHeader0000000000000000000000000000003300000000000010211 xustar0027 mtime=1677426865.248521 veusz-3.6.2/veusz/dialogs/0000775000175000017500000000000014376700261013724 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/veusz/dialogs/__init__.py0000664000175000017500000000461114126044351016031 0ustar00jssjss# Copyright (C) 2008 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Veusz dialogs module.""" # load custom widgets from .. import qtwidgets from .. import datasets from .veuszdialog import recreate_register # lazy loading recreation routines def _lazy_recreate_1d(*args): from .datacreate import recreateDataset recreateDataset(*args) def _lazy_recreate_2d(*args): from .datacreate2d import recreateDataset recreateDataset(*args) def _lazy_recreate_histo(*args): from .histodata import recreateDataset recreateDataset(*args) def _lazy_recreate_filtered(*args): from .filterdialog import recreateDataset recreateDataset(*args) def _lazy_recreate_plugin(*args): from .plugin import recreateDataset recreateDataset(*args) for kls, fn in ( (datasets.DatasetExpression, _lazy_recreate_1d), (datasets.DatasetRange, _lazy_recreate_1d), (datasets.Dataset2DXYZExpression, _lazy_recreate_2d), (datasets.Dataset2DExpression, _lazy_recreate_2d), (datasets.Dataset2DXYFunc, _lazy_recreate_2d), (datasets.DatasetHistoValues, _lazy_recreate_histo), (datasets.DatasetHistoBins, _lazy_recreate_histo), (datasets.DatasetFiltered, _lazy_recreate_filtered), (datasets.Dataset1DPlugin, _lazy_recreate_plugin), (datasets.Dataset2DPlugin, _lazy_recreate_plugin), (datasets.DatasetNDPlugin, _lazy_recreate_plugin), (datasets.DatasetTextPlugin, _lazy_recreate_plugin), (datasets.DatasetDateTimePlugin, _lazy_recreate_plugin), ): recreate_register[kls] = fn ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674294710.0 veusz-3.6.2/veusz/dialogs/aboutdialog.py0000664000175000017500000000500214362732666016576 0ustar00jssjss# about dialog box # aboutdialog.py # Copyright (C) 2006 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """About dialog module.""" import os.path from .. import qtall as qt from .. import utils from .veuszdialog import VeuszDialog from .exceptiondialog import versionHeader class AboutDialog(VeuszDialog): """About dialog.""" def __init__(self, mainwindow): VeuszDialog.__init__(self, mainwindow, 'about.ui', modal=True) # draw logo in dialog logo = utils.SvgWidgetFixedAspect(os.path.join(utils.imagedir, 'logo.svg')) self.logolayout.addWidget(logo) self.logoframe.setBackgroundRole(qt.QPalette.Base) self.logoframe.setAutoFillBackground(True) # add version to copyright text copyrighttext = self.copyrightlabel.text() copyrighttext = copyrighttext % {'version': utils.version()} self.copyrightlabel.setText(copyrighttext) self.licenseButton.clicked.connect(self.licenseClicked) self.versionsButton.clicked.connect(self.versionsClicked) def licenseClicked(self): """Show the license.""" LicenseDialog(self).exec_() def versionsClicked(self): """Show software versions.""" SoftwareVersionsDialog(self).exec_() class LicenseDialog(VeuszDialog): """About license dialog.""" def __init__(self, parent): VeuszDialog.__init__(self, parent, 'license.ui') self.licenseEdit.setPlainText(utils.getLicense()) class SoftwareVersionsDialog(VeuszDialog): """Software versions lists.""" def __init__(self, parent): VeuszDialog.__init__(self, parent, 'softwareversions.ui') self.versionInfoText.setPlainText(versionHeader()) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dialogs/capturedialog.py0000664000175000017500000002745514332253347017136 0ustar00jssjss# Copyright (C) 2009 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Veusz data capture dialog.""" from .. import qtall as qt from .. import setting from ..dataimport import capture, simpleread from .veuszdialog import VeuszDialog def _(text, disambiguation=None, context="CaptureDialog"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) class CaptureDialog(VeuszDialog): """Capture dialog. This allows the user to set the various capture options.""" def __init__(self, document, mainwindow): VeuszDialog.__init__(self, mainwindow, 'capture.ui') self.document = document # set values of edit controls from previous invocation (if any) d = setting.settingdb # Validate edit controls validator = qt.QIntValidator(1, 65535, self) self.portEdit.setValidator(validator) validator = qt.QIntValidator(1, 1000000000, self) self.numLinesStopEdit.setValidator(validator) self.timeStopEdit.setValidator(validator) self.tailEdit.setValidator(validator) # floating point values for interval self.updateIntervalsEdit.setValidator( qt.QDoubleValidator(1e-2, 10000000, 2, self)) # add completion for filenames c = self.filenamecompleter = qt.QCompleter(self) model = qt.QDirModel(c) c.setModel(model) self.filenameEdit.setCompleter(c) # get notification of change of capture method self.methodBG = qt.QButtonGroup(self) self.methodBG.addButton( self.captureFileButton, 0 ) self.methodBG.addButton( self.captureInternetButton, 1 ) self.methodBG.addButton( self.captureProgramButton, 2 ) self.methodBG.buttonClicked[int].connect(self.slotMethodChanged) # restore previously clicked button self.methodBG.button( d.get('CaptureDialog_method', 0) ).click() # get notification of change of stop method self.stopBG = qt.QButtonGroup(self) self.stopBG.addButton( self.clickingStopButton, 0 ) self.stopBG.addButton( self.numLinesStopButton, 1 ) self.stopBG.addButton( self.timeStopButton, 2 ) self.stopBG.buttonClicked[int].connect(self.slotStopChanged) self.stopBG.button( d.get('CaptureDialog_stop', 0) ).click() # update interval self.updateIntervalsCheck.toggled.connect( self.updateIntervalsEdit.setEnabled) # tail data self.tailCheck.toggled.connect(self.tailEdit.setEnabled) # user starts capture self.captureButton = self.buttonBox.addButton( _("Ca&pture"), qt.QDialogButtonBox.ApplyRole ) self.captureButton.clicked.connect(self.slotCaptureClicked) # filename browse button clicked self.browseButton.clicked.connect(self.slotBrowseClicked) def done(self, r): """Dialog is closed.""" VeuszDialog.done(self, r) # record values for next time dialog is opened d = setting.settingdb d['CaptureDialog_method'] = self.methodBG.checkedId() d['CaptureDialog_stop'] = self.stopBG.checkedId() def slotMethodChanged(self, buttonid): """Enable/disable correct controls in methodBG.""" # enable correct buttons fc = buttonid==0 self.filenameEdit.setEnabled(fc) self.browseButton.setEnabled(fc) ic = buttonid==1 self.hostEdit.setEnabled(ic) self.portEdit.setEnabled(ic) xc = buttonid==2 self.commandLineEdit.setEnabled(xc) def slotStopChanged(self, buttonid): """Enable/disable correct controls in stopBG.""" ns = buttonid == 1 self.numLinesStopEdit.setEnabled(ns) ts = buttonid == 2 self.timeStopEdit.setEnabled(ts) def slotBrowseClicked(self): """Browse for a data file.""" fd = qt.QFileDialog(self, 'Browse data file or socket') fd.setFileMode( qt.QFileDialog.ExistingFile ) # update filename if changed if fd.exec_() == qt.QDialog.Accepted: self.filenameEdit.replaceAndAddHistory( fd.selectedFiles()[0] ) def slotCaptureClicked(self): """User requested capture.""" # object to interpret data from stream descriptor = self.descriptorEdit.text() simprd = simpleread.SimpleRead(descriptor) maxlines = None timeout = None updateinterval = None tail = None try: stop = self.stopBG.checkedId() if stop == 1: # number of lines to read before stopping maxlines = int( self.numLinesStopEdit.text() ) elif stop == 2: # maximum time period before stopping timeout = int( self.timeStopEdit.text() ) # whether to do an update periodically if self.updateIntervalsCheck.isChecked(): updateinterval = float( self.updateIntervalsEdit.text() ) # whether to only retain N values if self.tailCheck.isChecked(): tail = int( self.tailEdit.text() ) except ValueError: qt.QMessageBox.critical(self, _("Invalid number"), _("Invalid number")) return # get method of getting data method = self.methodBG.checkedId() try: # create stream if method == 0: # file/socket stream = capture.FileCaptureStream(self.filenameEdit.text()) elif method == 1: # internet socket stream = capture.SocketCaptureStream( self.hostEdit.text(), int(self.portEdit.text()) ) elif method == 2: # external program stream = capture.CommandCaptureStream( self.commandLineEdit.text()) except EnvironmentError as e: # problem opening stream qt.QMessageBox.critical( self, _("Cannot open input"), _("Cannot open input:\n %s (error %i)") % ( e.strerror, e.errno) ) return stream.maxlines = maxlines stream.timeout = timeout simprd.tail = tail cd = CapturingDialog( self.document, simprd, stream, self, updateinterval=updateinterval) self.mainwindow.showDialog(cd) ######################################################################## class CapturingDialog(VeuszDialog): """Capturing data dialog. Shows progress to user.""" def __init__(self, document, simprd, stream, parent, updateinterval = None): """Initialse capture dialog: document: document to send data to simprd: object to interpret data stream: capturestream to read data from parent: parent widget updateinterval: if set, interval of seconds to update data in doc """ VeuszDialog.__init__(self, parent, 'capturing.ui') self.document = document self.simpleread = simprd self.stream = stream # connect buttons self.finishButton.clicked.connect(self.slotFinish) self.cancelButton.clicked.connect(self.slotCancel) # timer which governs reading from source self.readtimer = qt.QTimer(self) self.readtimer.timeout.connect(self.slotReadTimer) # record time capture started self.starttime = qt.QTime() self.starttime.start() # sort tree by dataset name self.datasetTreeWidget.sortItems(0, qt.Qt.AscendingOrder) # timer for updating display self.displaytimer = qt.QTimer(self) self.displaytimer.timeout.connect(self.slotDisplayTimer) self.sourceLabel.setText( self.sourceLabel.text() % stream.name ) self.txt_statusLabel = self.statusLabel.text() self.slotDisplayTimer() # initialise label # timer to update document self.updatetimer = qt.QTimer(self) self.updateoperation = None if updateinterval: self.updatetimer.timeout.connect(self.slotUpdateTimer) self.updatetimer.start( int(updateinterval*1000) ) # start display and read timers self.displaytimer.start(1000) self.readtimer.start(10) def slotReadTimer(self): """Time to read more data.""" try: self.simpleread.readData(self.stream) except capture.CaptureFinishException as e: # stream tells us it's time to finish self.streamCaptureFinished( str(e) ) def slotDisplayTimer(self): """Time to update information about data source.""" self.statusLabel.setText( self.txt_statusLabel % (self.stream.bytesread, self.starttime.elapsed() // 1000) ) tree = self.datasetTreeWidget cts = self.simpleread.getDatasetCounts() # iterate over each dataset for name, length in cts.items(): find = tree.findItems(name, qt.Qt.MatchExactly, 0) if find: # if already in tree, update number of counts find[0].setText(1, str(length)) else: # add new item tree.addTopLevelItem( qt.QTreeWidgetItem([name, str(length)])) def slotUpdateTimer(self): """Called to update document while data is being captured.""" # undo any previous update if self.updateoperation: self.updateoperation.undo(self.document) # create new one self.updateoperation = capture.OperationDataCaptureSet( self.simpleread) # apply it (bypass history here - urgh) self.updateoperation.do(self.document) self.document.setModified() def streamCaptureFinished(self, message): """Stop timers, close stream and display message about finished stream.""" # stop reading / displaying self.readtimer.stop() self.displaytimer.stop() self.updatetimer.stop() if self.stream: # update stats self.slotDisplayTimer() # close stream self.stream.close() self.stream = None # show message from stream self.statusLabel.setText(message) def slotFinish(self): """Finish capturing and save the results.""" # close down timers self.streamCaptureFinished('') # undo any in-progress update if self.updateoperation: self.updateoperation.undo(self.document) # apply real document operation update op = capture.OperationDataCaptureSet(self.simpleread) self.document.applyOperation(op) # close dialog self.close() def slotCancel(self): """Cancel capturing.""" # close down timers self.streamCaptureFinished('') # undo any in-progress update if self.updateoperation: self.updateoperation.undo(self.document) self.document.setModified() # close dialog self.close() ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dialogs/custom.py0000664000175000017500000002611214332253347015612 0ustar00jssjss# Copyright (C) 2009 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## import ast import copy from .. import qtall as qt from .. import document from .veuszdialog import VeuszDialog def _(text, disambiguation=None, context="CustomDialog"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) class CustomItemModel(qt.QAbstractTableModel): """A model for editing custom items.""" # headers for type of widget headers = { 'definition': (_('Name'), _('Definition')), 'import': (_('Module'), _('Symbol list')), 'color': (_('Name'), _('Definition')), 'colormap': (_('Name'), _('Definition')), } # tooltips for columns tooltips = { 'definition': ( _('Name for constant, or function name and arguments, e.g. "f(x,y)"'), _('Python expression defining constant or function, e.g. "x+y"')), 'import': ( _('Module to import symbols from, e.g. "scipy.special"'), _('Comma-separated list of symbols to import or "*" to import everything')), 'color': ( _('Name of color'), _('Definition of color ("#RRGGBB", "#RRGGBBAA" or "red")')), 'colormap': ( _('Name of colormap'), _('Definition of colormap, defined as lists of RGB tuples, e.g. "((0,0,0),(255,255,255))"')), } def __init__(self, parent, doc, ctype): """ ctype is 'definition', 'import', 'color' or 'colormap' """ qt.QAbstractTableModel.__init__(self, parent) self.doc = doc self.ctype = ctype self.attr = document.OperationSetCustom.type_to_attr[ctype] # connect notification of document change doc.signalModified.connect(self.doUpdate) # do not inform qt model has changed on document change self.moddocupignore = False def _getCustoms(self): return getattr(self.doc.evaluate, self.attr) def _getCustomsCopy(self): return copy.deepcopy(self._getCustoms()) def rowCount(self, parent): return 0 if parent.isValid() else len(self._getCustoms())+1 def columnCount(self, parent): return 0 if parent.isValid() else 2 def data(self, index, role): """Lookup data in document.evaluate.customs list.""" if role in (qt.Qt.DisplayRole, qt.Qt.EditRole): try: defn = self._getCustoms()[index.row()] except IndexError: # empty row beyond end return '' col = index.column() if self.ctype=='colormap' and col==1: return repr(defn[col]) else: return defn[col] elif role == qt.Qt.ToolTipRole: # tooltip on row for new entries on last row if index.row() == len(self._getCustoms()): return self.tooltips[self.ctype][index.column()] return None def flags(self, index): """Items are editable""" return ( qt.Qt.ItemIsSelectable | qt.Qt.ItemIsEditable | qt.Qt.ItemIsEnabled ) def headerData(self, section, orientation, role): """Return the headers at the top of the view.""" if role == qt.Qt.DisplayRole: if orientation == qt.Qt.Horizontal: # columns defined in headers return self.headers[self.ctype][section] else: # number rows return str(section+1) return None def doUpdate(self): """Document changed.""" if not self.moddocupignore: self.layoutChanged.emit() def validateName(self, val): if self.ctype == 'import': return document.module_re.match(val) elif self.ctype == 'definition': return ( document.identifier_re.match(val) or document.function_re.match(val)) else: # color or colormap return val.strip() != '' def validateDefn(self, value): if self.ctype == 'colormap': try: tmp = ast.literal_eval(value) except (ValueError, SyntaxError): return False return value.strip() != '' def setData(self, index, value, role): """Edit an item.""" if index.isValid() and role == qt.Qt.EditRole: col = index.column() row = index.row() if col == 0: ok = self.validateName(value) elif col == 1: ok = self.validateDefn(value) if not ok: return False # extend if necessary newcustom = self._getCustomsCopy() while len(newcustom) < row+1: if self.ctype == 'colormap': newcustom.append(['', ((0,0,0),(255,255,255))]) else: newcustom.append(['', '']) if self.ctype=='colormap' and col==1: newcustom[row][col] = eval(value) else: newcustom[row][col] = value self.doc.applyOperation( document.OperationSetCustom(self.ctype, newcustom) ) self.dataChanged.emit(index, index) return True return False def deleteEntry(self, num): """Delete row num. True if success.""" newcustoms = self._getCustomsCopy() if num >= len(newcustoms): return False self.beginRemoveRows(qt.QModelIndex(), num, num) del newcustoms[num] self.moddocupignore = True self.doc.applyOperation( document.OperationSetCustom(self.ctype, newcustoms)) self.moddocupignore = False self.endRemoveRows() return True def moveUpEntry(self, num): """Move up entry.""" newcustoms = self._getCustomsCopy() if num == 0 or num >= len(newcustoms): return False row = newcustoms[num] del newcustoms[num] newcustoms.insert(num-1, row) self.doc.applyOperation( document.OperationSetCustom(self.ctype, newcustoms)) return True def moveDownEntry(self, num): """Move down entry.""" newcustoms = self._getCustomsCopy() if num >= len(newcustoms)-1: return False row = newcustoms[num] del newcustoms[num] newcustoms.insert(num+1, row) self.doc.applyOperation( document.OperationSetCustom(self.ctype, newcustoms)) return True class CustomDialog(VeuszDialog): """A dialog to create or edit custom constant and function definitions.""" def __init__(self, parent, document): VeuszDialog.__init__(self, parent, 'custom.ui') self.document = document # model/view self.defnModel = CustomItemModel(self, document, 'definition') self.defnView.setModel(self.defnModel) self.importModel = CustomItemModel(self, document, 'import') self.importView.setModel(self.importModel) self.colorModel = CustomItemModel(self, document, 'color') self.colorView.setModel(self.colorModel) self.colormapModel = CustomItemModel(self, document, 'colormap') self.colormapView.setModel(self.colormapModel) # buttons self.removeButton.clicked.connect(self.slotRemove) self.upButton.clicked.connect(self.slotUp) self.downButton.clicked.connect(self.slotDown) self.saveButton.clicked.connect(self.slotSave) self.loadButton.clicked.connect(self.slotLoad) # recent button shows list of recently used files for loading self.recentButton.filechosen.connect(self.loadFile) self.recentButton.setSetting('customdialog_recent') def loadFile(self, filename): """Load the given file.""" self.document.applyOperation( document.OperationLoadCustom(filename) ) def getTabViewAndModel(self): """Get view and model for currently selected tab.""" return { 0: (self.defnView, self.defnModel), 1: (self.importView, self.importModel), 2: (self.colorView, self.colorModel), 3: (self.colormapView, self.colormapModel) }[self.viewsTab.currentIndex()] def slotRemove(self): """Remove an entry.""" view, model = self.getTabViewAndModel() selected = view.selectedIndexes() if selected: model.deleteEntry(selected[0].row()) def slotUp(self): """Move item up list.""" view, model = self.getTabViewAndModel() selected = view.selectedIndexes() if selected: row = selected[0].row() if model.moveUpEntry(row): idx = model.index(row-1, selected[0].column()) view.setCurrentIndex(idx) def slotDown(self): """Move item down list.""" view, model = self.getTabViewAndModel() selected = view.selectedIndexes() if selected: row = selected[0].row() if model.moveDownEntry(row): idx = model.index(row+1, selected[0].column()) view.setCurrentIndex(idx) def slotSave(self): """Save entries.""" filename = self.parent().fileSaveDialog( [_('Veusz document (*.vsz)')], _('Save custom definitions')) if filename: try: with open(filename, 'w') as f: self.document.evaluate.saveCustomFile(f) self.recentButton.addFile(filename) except EnvironmentError as e: qt.QMessageBox.critical( self, _("Error - Veusz"), _("Unable to save '%s'\n\n%s") % ( filename, e.strerror)) def slotLoad(self): """Load entries.""" filename = self.parent().fileOpenDialog( [_('Veusz document (*.vsz)')], _('Load custom definitions')) if filename: try: self.loadFile(filename) except EnvironmentError as e: qt.QMessageBox.critical( self, _("Error - Veusz"), _("Unable to load '%s'\n\n%s") % ( filename, e.strerror)) else: # add to recent file list self.recentButton.addFile(filename) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dialogs/datacreate.py0000664000175000017500000002726314332253347016405 0ustar00jssjss# Copyright (C) 2006 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Dataset creation dialog.""" from .. import qtall as qt from .. import utils from .. import document from .. import datasets from .. import setting from .veuszdialog import VeuszDialog def _(text, disambiguation=None, context="DataCreateDialog"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) class _DSException(RuntimeError): """A class to handle errors while trying to create datasets.""" pass class DataCreateDialog(VeuszDialog): """Dialog to create datasets. They can be created from numerical ranges, parametrically or from expressions involving other dataset.""" def __init__(self, parent, document): """Initialise dialog with document.""" VeuszDialog.__init__(self, parent, 'datacreate.ui') self.document = document # create button group to get notification of changes self.methodGroup.radioClicked.connect(self.slotMethodChanged) # connect create button self.createbutton = self.buttonBox.addButton( _("C&reate"), qt.QDialogButtonBox.ApplyRole ) self.replacebutton = self.buttonBox.addButton( _("&Replace"), qt.QDialogButtonBox.ApplyRole ) self.buttonBox.button( qt.QDialogButtonBox.Reset).clicked.connect(self.resetButtonClicked) self.createbutton.clicked.connect(self.createButtonClicked) self.replacebutton.clicked.connect(self.createButtonClicked) # connect notification of document change self.document.signalModified.connect(self.modifiedDocSlot) # set validators for edit controls self.numstepsedit.setValidator( qt.QIntValidator(1, 99999999, self) ) self.tstartedit.setValidator( qt.QDoubleValidator(self) ) self.tendedit.setValidator( qt.QDoubleValidator(self) ) self.tstepsedit.setValidator( qt.QIntValidator(1, 99999999, self) ) # connect up edit control to update create button status for edit in ( self.numstepsedit, self.tstartedit, self.tendedit, self.tstepsedit, self.nameedit, self.valueedit ): edit.editTextChanged.connect(self.editsEditSlot) self.nameedit.currentIndexChanged[int].connect(self.datasetSelected) # edit controls for dataset self.dsedits = { 'data': self.valueedit, 'serr': self.symerroredit, 'perr': self.poserroredit, 'nerr': self.negerroredit } # update button state self.editsEditSlot('') def slotMethodChanged(self, button): """Called when a new data creation method is used.""" # enable and disable correct widgets depending on method isvalue = button is self.valueradio self.valuehelperlabel.setVisible(isvalue) self.numstepsedit.setEnabled(isvalue) isparametric = button is self.parametricradio self.parametrichelperlabel.setVisible(isparametric) self.tstartedit.setEnabled(isparametric) self.tendedit.setEnabled(isparametric) self.tstepsedit.setEnabled(isparametric) isfunction = button is self.expressionradio self.expressionhelperlabel.setVisible(isfunction) # enable/disable create button self.editsEditSlot('') def modifiedDocSlot(self): """Update create button if document changes.""" self.editsEditSlot('') def datasetSelected(self, index): """If dataset is selected from drop down box, reload entries for editing.""" if index >= 0: dsname = self.nameedit.text() if dsname in self.document.data: self.reEditDataset(self.document.data[dsname], dsname) def reEditDataset(self, ds, dsname): """Given a dataset name, allow it to be edited again (if it is editable).""" if isinstance(ds, datasets.DatasetExpression): # change selected method if ds.parametric is None: # standard expression self.expressionradio.click() else: # parametric dataset self.parametricradio.click() p = ds.parametric self.tstartedit.setText( '%g' % p[0] ) self.tendedit.setText( '%g' % p[1] ) self.tstepsedit.setText( str(p[2]) ) # make sure name is set self.nameedit.setText(dsname) # set expressions for part in self.dsedits: text = ds.expr[part] if text is None: text = '' self.dsedits[part].setText(text) elif isinstance(ds, datasets.DatasetRange): # change selected method self.valueradio.click() # make sure name is set self.nameedit.setText(dsname) # set expressions for part in self.dsedits: data = getattr(ds, 'range_%s' % part) if data is None: text = '' else: text = '%g:%g' % data self.dsedits[part].setText(text) def editsEditSlot(self, dummytext): """Enable/disable createbutton.""" # dataset name checks dstext = self.nameedit.text() dsvalid = utils.validateDatasetName(dstext) dsexists = dstext in self.document.data # check other edit controls method = self.methodGroup.getRadioChecked() if method is self.valueradio: # value editsokay = self.numstepsedit.hasAcceptableInput() elif method is self.parametricradio: # parametric editsokay = ( self.tstartedit.hasAcceptableInput() and self.tendedit.hasAcceptableInput() and self.tstepsedit.hasAcceptableInput() ) else: # function editsokay = True # we needs some input on the value if not self.valueedit.text(): editsokay = False # hide / show create button depending whether dataset exists self.createbutton.setVisible(not dsexists) self.replacebutton.setVisible(dsexists) # enable buttons if expressions valid enabled = dsvalid and editsokay self.createbutton.setEnabled(enabled) self.replacebutton.setEnabled(enabled) def resetButtonClicked(self): """Reset button clicked - reset dialog.""" for cntrl in ( self.valueedit, self.symerroredit, self.poserroredit, self.negerroredit, self.numstepsedit, self.tstartedit, self.tendedit, self.tstepsedit, self.nameedit ): cntrl.setEditText("") self.linkcheckbox.setChecked(True) self.valueradio.click() def createButtonClicked(self): """Create button pressed.""" dsname = self.nameedit.text() dsexists = dsname in self.document.data try: # select function to create dataset with createfn = { self.valueradio: self.createFromRange, self.parametricradio: self.createParametric, self.expressionradio: self.createFromExpression, }[self.methodGroup.getRadioChecked()] # make a new dataset using method op = createfn(dsname) self.document.applyOperation(op) if dsexists: status = _("Replaced dataset '%s'") % dsname else: status = _("Created dataset '%s'") % dsname self.statuslabel.setText(status) except (document.CreateDatasetException, datasets.DatasetException, _DSException) as e: # all bad roads lead here - take exception string and tell user if dsexists: status = _("Replacement failed") else: status = _("Creation failed") if str(e) != '': status += ': %s' % str(e) self.statuslabel.setText(status) def createFromRange(self, name): """Make dataset from a range or constant. name is the name of the dataset Raises _DSException if error """ numsteps = int(self.numstepsedit.text()) # go over each of the ranges / values vals = {} for key, cntrl in self.dsedits.items(): text = cntrl.text().strip() if not text: continue if text.find(':') != -1: # an actual range parts = text.split(':') if len(parts) != 2: raise _DSException(_("Incorrect range format, use form 1:10")) try: minval, maxval = float(parts[0]), float(parts[1]) except ValueError: raise _DSException(_("Invalid number in range")) else: try: minval = float(text) except ValueError: raise _DSException(_("Invalid number")) maxval = minval vals[key] = (minval, maxval) linked = self.linkcheckbox.checkState() == qt.Qt.Checked return document.OperationDatasetCreateRange( name, numsteps, vals, linked=linked) def createParametric(self, name): """Use a parametric form to create the dataset. Raises _DSException if error """ t0, ok0 = setting.uilocale.toDouble(self.tstartedit.text()) t1, ok1 = setting.uilocale.toDouble(self.tendedit.text()) if not ok0 or not ok1: raise _DSException() numsteps = int(self.tstepsedit.text()) # get expressions vals = {} for key, cntrl in self.dsedits.items(): text = cntrl.text().strip() if text: vals[key] = text linked = self.linkcheckbox.checkState() == qt.Qt.Checked return document.OperationDatasetCreateParameteric( name, t0, t1, numsteps, vals, linked=linked) def createFromExpression(self, name): """Create a dataset based on the expressions given.""" # get expression for each part of the dataset vals = {} for key, cntrl in self.dsedits.items(): text = cntrl.text().strip() if text: vals[key] = text link = self.linkcheckbox.checkState() == qt.Qt.Checked op = document.OperationDatasetCreateExpression(name, vals, link) if not op.validateExpression(self.document): raise _DSException() return op def recreateDataset(mainwindow, document, dataset, datasetname): """Open dialog to recreate a DatasetExpression / DatasetRange.""" dialog = DataCreateDialog(mainwindow, document) mainwindow.showDialog(dialog) dialog.reEditDataset(dataset, datasetname) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dialogs/datacreate2d.py0000664000175000017500000002105414332253347016623 0ustar00jssjss# Copyright (C) 2007 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Dataset creation dialog for 2d data.""" from .. import qtall as qt from .. import utils from .. import document from .. import datasets from .veuszdialog import VeuszDialog def _(text, disambiguation=None, context="DataCreate2D"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) def checkGetStep(text): """Check step syntax is okay. Syntax is min:max:stepsize Returns None if fails """ parts = text.split(':') if len(parts) == 3: try: return tuple([float(x) for x in parts]) except ValueError: pass return None class DataCreate2DDialog(VeuszDialog): def __init__(self, parent, document): """Initialise dialog with document.""" VeuszDialog.__init__(self, parent, 'datacreate2d.ui') self.document = document self.createbutton = self.buttonBox.addButton( _("C&reate"), qt.QDialogButtonBox.ApplyRole ) self.createbutton.clicked.connect(self.createButtonClickedSlot) self.fromxyfunc.toggled.connect(self.fromxyfuncSlot) self.fromxyzexpr.toggled.connect(self.fromxyzexprSlot) self.from2dexpr.toggled.connect(self.from2dexprSlot) document.signalModified.connect(self.updateDatasetLists) for combo in ( self.namecombo, self.xexprcombo, self.yexprcombo, self.zexprcombo ): combo.editTextChanged.connect(self.enableDisableCreate) self.fromxyzexpr.toggle() self.enableDisableCreate() # change mode according to radio pressed def fromxyfuncSlot(self, checked): self.mode = 'xyfunc' if checked: self.updateDatasetLists() def fromxyzexprSlot(self, checked): self.mode = 'xyzexpr' if checked: self.updateDatasetLists() def from2dexprSlot(self, checked): self.mode = '2dexpr' if checked: self.updateDatasetLists() def escapeDatasets(self, dsnames): """Escape dataset names if they are not typical python ones.""" for i in range(len(dsnames)): if not utils.validPythonIdentifier(dsnames[i]): dsnames[i] = '`%s`' % dsnames[i] def updateDatasetLists(self): """Update controls depending on selected mode.""" # get list of 1d and 2d numeric datasets datasets = [[],[]] for name, ds in self.document.data.items(): if ds.datatype == 'numeric': datasets[ds.dimensions-1].append(name) datasets[0].sort() datasets[1].sort() # make sure names are escaped if they have funny characters self.escapeDatasets(datasets[0]) self.escapeDatasets(datasets[1]) # help the user by listing existing datasets utils.populateCombo(self.namecombo, datasets[0]) if self.mode == 'xyzexpr': # enable everything for combo in self.xexprcombo, self.yexprcombo, self.zexprcombo: combo.setDisabled(False) utils.populateCombo(combo, datasets[0]) elif self.mode == '2dexpr': # only enable the z expression button self.xexprcombo.setDisabled(True) self.yexprcombo.setDisabled(True) self.zexprcombo.setDisabled(False) utils.populateCombo(self.zexprcombo, datasets[1]) else: # enable everything for combo in self.xexprcombo, self.yexprcombo, self.zexprcombo: combo.setDisabled(False) # put in some examples to help the the user utils.populateCombo(self.xexprcombo, ['0:10:0.1']) utils.populateCombo(self.yexprcombo, ['0:10:0.1']) utils.populateCombo(self.zexprcombo, ['x+y']) def reEditDataset(self, ds, dsname): """Allow dataset to be edited again.""" self.namecombo.setEditText(dsname) self.linkcheckbox.setChecked(True) if isinstance(ds, datasets.Dataset2DXYZExpression): self.fromxyzexpr.click() self.xexprcombo.setEditText(ds.exprx) self.yexprcombo.setEditText(ds.expry) self.zexprcombo.setEditText(ds.exprz) elif isinstance(ds, datasets.Dataset2DExpression): self.from2dexpr.click() self.xexprcombo.clearEditText() self.yexprcombo.clearEditText() self.zexprcombo.setEditText(ds.expr) elif isinstance(ds, datasets.Dataset2DXYFunc): self.fromxyfunc.click() self.xexprcombo.setEditText('%g:%g:%g' % tuple(ds.xstep)) self.yexprcombo.setEditText('%g:%g:%g' % tuple(ds.ystep)) self.zexprcombo.setEditText(ds.expr) else: raise RuntimeError('Invalid dataset type') def enableDisableCreate(self): """Enable or disable create button.""" # get contents of combo boxes text = {} for name in ('xexpr', 'yexpr', 'zexpr', 'name'): text[name] = getattr(self, name+'combo').currentText().strip() disable = False # need name and zexpr disable = disable or not text['name'] or not text['zexpr'] if self.mode == 'xyzexpr': # need x and yexpr disable = disable or not text['xexpr'] or not text['yexpr'] elif self.mode == '2dexpr': # nothing else pass elif self.mode == 'xyfunc': # need x and yexpr in special step format min:max:step disable = disable or ( checkGetStep(text['xexpr']) is None or checkGetStep(text['yexpr']) is None ) # finally check button self.createbutton.setDisabled(disable) def createButtonClickedSlot(self): """Create button pressed.""" text = {} for name in ('xexpr', 'yexpr', 'zexpr', 'name'): text[name] = getattr(self, name+'combo').currentText().strip() link = self.linkcheckbox.checkState() == qt.Qt.Checked # create and apply operation, catching evaluation errors try: if self.mode == 'xyzexpr': # build operation op = document.OperationDataset2DCreateExpressionXYZ( text['name'], text['xexpr'], text['yexpr'], text['zexpr'], link) elif self.mode == '2dexpr': op = document.OperationDataset2DCreateExpression( text['name'], text['zexpr'], link) elif self.mode == 'xyfunc': xstep = checkGetStep(text['xexpr']) ystep = checkGetStep(text['yexpr']) # build operation op = document.OperationDataset2DXYFunc( text['name'], xstep, ystep, text['zexpr'], link) # check expression is okay op.validateExpression(self.document) # try to make dataset self.document.applyOperation(op) # forces an evaluation self.document.data[text['name']].data except (document.CreateDatasetException, datasets.DatasetException) as e: msg = _("Failed to create dataset '%s'") % text['name'] s = str(e) if s: msg += ' (%s)' % s else: msg = _("Created dataset '%s'") % text['name'] self.notifylabel.setText(msg) qt.QTimer.singleShot(4000, self.notifylabel.clear) def recreateDataset(mainwindow, document, dataset, datasetname): """Open dialog to recreate a DatasetExpression / DatasetRange.""" dialog = DataCreate2DDialog(mainwindow, document) mainwindow.showDialog(dialog) dialog.reEditDataset(dataset, datasetname) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dialogs/dataeditdialog.py0000664000175000017500000006370414332253347017247 0ustar00jssjss# data editting dialog # Copyright (C) 2005 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Module for implementing dialog box for viewing/editing data.""" import numpy as N from .. import qtall as qt from .. import document from .. import datasets from .. import setting from ..qtwidgets.datasetbrowser import DatasetBrowser from .veuszdialog import VeuszDialog, recreate_register def _(text, disambiguation=None, context="DataEditDialog"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) class DatasetTableModel1D(qt.QAbstractTableModel): """Provides access to editing and viewing of datasets.""" def __init__(self, parent, document, datasetname): qt.QAbstractTableModel.__init__(self, parent) self.document = document self.dsname = datasetname document.signalModified.connect(self.slotDocumentModified) def rowCount(self, parent): """Return number of rows.""" if parent.isValid(): # docs say we should return zero return 0 try: return len(self.document.data[self.dsname].data)+1 except (KeyError, AttributeError): return 0 def slotDocumentModified(self): """Called when document modified.""" self.layoutChanged.emit() def columnCount(self, parent): """Return number of columns.""" if parent.isValid(): return 0 try: ds = self.document.data[self.dsname] except KeyError: return 0 return len( ds.column_descriptions ) def data(self, index, role): """Return data for index.""" # get dataset ds = self.document.data[self.dsname] if ds is not None: # select correct part of dataset data = getattr(ds, ds.columns[index.column()]) if ds is not None and data is not None and role in ( qt.Qt.DisplayRole, qt.Qt.EditRole): # blank row at end of data if index.row() == len(data): return None # convert data to data d = data[index.row()] return ds.uiDataItemToData(d) # empty entry return None def headerData(self, section, orientation, role): """Return row numbers or column names.""" try: ds = self.document.data[self.dsname] except KeyError: return None if role == qt.Qt.DisplayRole: if orientation == qt.Qt.Horizontal: # column names return ds.column_descriptions[section] else: if section == len(ds.data): return "+" # return row numbers return section+1 return None def flags(self, index): """Update flags to say that items are editable.""" if index.isValid(): f = qt.QAbstractTableModel.flags(self, index) ds = self.document.data.get(self.dsname) if ds is not None and ds.editable: f |= qt.Qt.ItemIsEditable return f return qt.Qt.ItemIsEnabled def removeRows(self, row, count): """Remove rows.""" self.document.applyOperation( document.OperationDatasetDeleteRow(self.dsname, row, count)) def insertRows(self, row, count): """Remove rows.""" self.document.applyOperation( document.OperationDatasetInsertRow(self.dsname, row, count)) def setData(self, index, value, role): """Called to set the data.""" if not index.isValid() or role != qt.Qt.EditRole: return False row = index.row() column = index.column() ds = self.document.data[self.dsname] data = getattr(ds, ds.columns[index.column()]) # add new column if necessary ops = document.OperationMultiple([], descr=_('set value')) if data is None: ops.addOperation( document.OperationDatasetAddColumn( self.dsname, ds.columns[column])) # add a row if necessary if row == len(ds.data): ops.addOperation( document.OperationDatasetInsertRow(self.dsname, row, 1)) # update if conversion okay try: val = ds.uiConvertToDataItem(value) except ValueError: return False ops.addOperation( document.OperationDatasetSetVal( self.dsname, ds.columns[column], row, val)) try: self.document.applyOperation(ops) except RuntimeError: return False return True class DatasetTableModelMulti(qt.QAbstractTableModel): """Edit multiple datasets simultaneously with a spreadsheet-like style.""" def __init__(self, parent, document, datasetnames): qt.QAbstractTableModel.__init__(self, parent) self.document = document self.dsnames = datasetnames document.signalModified.connect(self.slotDocumentModified) self.changeset = -1 self.rows = 0 def updateCounts(self): """Count rows and columns.""" self.changeset = self.document.changeset rows = 0 rowcounts = self.rowcounts = [] colcounts = self.colcounts = [] colattrs = self.colattrs = [] for dsidx, name in enumerate(self.dsnames): if name not in self.document.data: continue dataset = self.document.data[name] if (not hasattr(dataset, 'data') or not hasattr(dataset, 'columns') or dataset.dimensions != 1): continue r = len(dataset.data)+1 rowcounts.append(r) rows = max(rows, r) attr = [] for colidx, col in enumerate(dataset.columns): data = getattr(dataset, col) if data is not None: attr.append( (name, col, dsidx, colidx) ) colcounts.append( len(attr) ) colattrs += attr self.rows = rows def rowCount(self, parent): if parent.isValid(): return 0 if self.changeset != self.document.changeset: self.updateCounts() return self.rows def columnCount(self, parent): if parent.isValid(): return 0 if self.changeset != self.document.changeset: self.updateCounts() return len(self.colattrs) def slotDocumentModified(self): self.updateCounts() self.layoutChanged.emit() def data(self, index, role): """Return data for index.""" dsname, colname, dsidx, colidx = self.colattrs[index.column()] ds = self.document.data[dsname] data = getattr(ds, colname) if role == qt.Qt.DisplayRole: if index.row() < self.rowcounts[dsidx]-1: # convert data to Data d = data[index.row()] return ds.uiDataItemToData(d) # empty entry return None def headerData(self, section, orientation, role): """Return row numbers or column names.""" if role == qt.Qt.DisplayRole: if orientation == qt.Qt.Horizontal: # column names dsname, colname, dsidx, colidx = self.colattrs[section] ds = self.document.data[dsname] descr = ds.column_descriptions[colidx] header = dsname + '\n' + descr return header else: # return row numbers if section == self.rows-1: return "+" return section+1 return None def flags(self, index): """Update flags to say that items are editable.""" if index.isValid(): f = qt.QAbstractTableModel.flags(self, index) dsname, colname, dsidx, colidx = self.colattrs[index.column()] ds = self.document.data.get(dsname) if ds is not None and ds.editable: f |= qt.Qt.ItemIsEditable return f return qt.Qt.ItemIsEnabled def setData(self, index, value, role): """Validate and set data in dataset.""" if not index.isValid() or role != qt.Qt.EditRole: return False row = index.row() column = index.column() dsname, colname, dsidx, colidx = self.colattrs[column] ds = self.document.data[dsname] ops = document.OperationMultiple([], descr=_('set value')) if row >= self.rowcounts[dsidx]-1: # add number of rows required to add new value below ops.addOperation( document.OperationDatasetInsertRow( dsname, self.rowcounts[dsidx]-1, row+1-self.rowcounts[dsidx]+1)) # convert text to value try: val = ds.uiConvertToDataItem(value) except ValueError: return False ops.addOperation( document.OperationDatasetSetVal(dsname, colname, row, val)) try: self.document.applyOperation(ops) return True except RuntimeError: return False def insertRows(self, row, count): ops = [] for i, name in enumerate(self.dsnames): if self.rowcounts[i]-1 >= row: ops.append( document.OperationDatasetInsertRow(name, row, count)) self.document.applyOperation( document.OperationMultiple(ops, _('insert row(s)'))) def removeRows(self, row, count): ops = [] for i, name in enumerate(self.dsnames): if self.rowcounts[i]-1 >= row: ops.append( document.OperationDatasetDeleteRow(name, row, count)) self.document.applyOperation( document.OperationMultiple(ops, _('delete row(s)'))) class DatasetTableModel2D(qt.QAbstractTableModel): """A 2D dataset model.""" def __init__(self, parent, document, datasetname): qt.QAbstractTableModel.__init__(self, parent) self.document = document self.dsname = datasetname self.updatePixelCoords() document.signalModified.connect(self.slotDocumentModified) def updatePixelCoords(self): """Get coordinates at edge of grid.""" self.xedge = self.yedge = self.xcent = self.ycent = [] ds = self.document.data.get(self.dsname) if ds and ds.dimensions==2: self.xcent, self.ycent = ds.getPixelCentres() self.xedge, self.yedge = ds.getPixelEdges() def rowCount(self, parent): if parent.isValid(): return 0 try: data = self.document.data[self.dsname].data except KeyError: return 0 if data is not None and data.ndim==2: return data.shape[0] else: return 0 def columnCount(self, parent): if parent.isValid(): return 0 try: data = self.document.data[self.dsname].data except KeyError: return 0 if data is not None and data.ndim==2: return data.shape[1] else: return 0 def data(self, index, role): if role == qt.Qt.DisplayRole: # get data (note y is reversed, sigh) try: data = self.document.data[self.dsname].data except KeyError: return None if data is not None and data.ndim==2: try: num = data[data.shape[0]-index.row()-1, index.column()] return float(num) except IndexError: pass return None def headerData(self, section, orientation, role): """Return headers at top.""" ds = self.document.data.get(self.dsname) if ds.dimensions != 2: return None xaxis = orientation == qt.Qt.Horizontal # note: y coordinates are upside down (high y is at top) if ds is not None and role == qt.Qt.DisplayRole: v = self.xcent[section] if xaxis else self.ycent[ len(self.ycent)-section-1] return '%i (%s)' % ( len(self.ycent)-section, setting.ui_floattostring(v, maxdp=4)) elif ds is not None and role == qt.Qt.ToolTipRole: v1 = self.xedge[section] if xaxis else self.yedge[ len(self.yedge)-section-2] v2 = self.xedge[section+1] if xaxis else self.yedge[ len(self.yedge)-section-1] return '%s\u2013%s' % ( setting.ui_floattostring(v1), setting.ui_floattostring(v2)) return None def flags(self, index): """Update flags to say that items are editable.""" if not index.isValid(): return qt.Qt.ItemIsEnabled else: f = qt.QAbstractTableModel.flags(self, index) ds = self.document.data.get(self.dsname) if ds is not None and ds.editable: f |= qt.Qt.ItemIsEditable return f def slotDocumentModified(self): """Called when document modified.""" self.updatePixelCoords() self.layoutChanged.emit() def setData(self, index, value, role): """Called to set the data.""" if not index.isValid() or role != qt.Qt.EditRole: return False ds = self.document.data[self.dsname] row = ds.data.shape[0]-index.row()-1 col = index.column() # update if conversion okay try: val = ds.uiConvertToDataItem(value) except ValueError: return False op = document.OperationDatasetSetVal2D( self.dsname, row, col, val) self.document.applyOperation(op) return True class DatasetTableModelND(qt.QAbstractTableModel): """An ND dataset model.""" def __init__(self, parent, document, datasetname): qt.QAbstractTableModel.__init__(self, parent) self.document = document self.dsname = datasetname document.signalModified.connect(self.slotDocumentModified) def rowCount(self, parent): if parent.isValid(): return 0 try: data = self.document.data[self.dsname].data except KeyError: return 0 return 0 if data is None else data.size def columnCount(self, parent): if parent.isValid(): return 0 try: data = self.document.data[self.dsname].data except KeyError: return 0 return 1 if data is not None else 0 def data(self, index, role): """Items in array.""" if role == qt.Qt.DisplayRole: try: data = self.document.data[self.dsname].data except KeyError: return None if data is not None: try: num = N.ravel(data)[index.row()] return float(num) except IndexError: pass return None def headerData(self, section, orientation, role): """Return headers at top.""" ds = self.document.data.get(self.dsname) if ds is None: return None if ds is not None and role == qt.Qt.DisplayRole: if orientation == qt.Qt.Horizontal: return _('Value') else: idx = N.unravel_index(section, ds.data.shape) txt = ','.join( [str(v+1) for v in idx] ) return txt return None def slotDocumentModified(self): """Called when document modified.""" self.layoutChanged.emit() class ViewDelegate(qt.QStyledItemDelegate): """Delegate for fixing double editing. Normal editing uses double spin box, which is inappropriate """ def createEditor(self, parent, option, index): if type(index.data()) is float: return qt.QLineEdit(parent) else: return qt.QStyledItemDelegate.createEditor( self, parent, option, index) def setEditorData(self, editor, index): """Override setData to use correct formatting.""" if type(index.data()) is float: txt = setting.ui_floattostring(index.data()) editor.setText(txt) else: qt.QStyledItemDelegate.setEditorData(self, editor, index) class DataEditDialog(VeuszDialog): """Dialog for editing and rearranging data sets.""" def __init__(self, parent, document): VeuszDialog.__init__(self, parent, 'dataedit.ui') self.document = document # set up dataset list self.dsbrowser = DatasetBrowser(document, parent, parent) self.dsbrowser.setToolTip( _('Select multiple datasets to edit simultaneously')) self.splitter.insertWidget(0, self.dsbrowser) self.deligate = ViewDelegate() self.datatableview.setItemDelegate(self.deligate) # actions for data table for text, slot in ( (_('Copy'), self.slotCopy), (_('Delete row'), self.slotDeleteRow), (_('Insert row'), self.slotInsertRow), ): act = qt.QAction(text, self) act.triggered.connect(slot) self.datatableview.addAction(act) self.datatableview.setContextMenuPolicy( qt.Qt.ActionsContextMenu ) # layout edit dialog improvement self.splitter.setStretchFactor(0, 3) self.splitter.setStretchFactor(1, 4) # don't want text to look editable or special self.linkedlabel.setFrameShape(qt.QFrame.NoFrame) self.linkedlabel.viewport().setBackgroundRole(qt.QPalette.Window) # document changes document.signalModified.connect(self.slotDocumentModified) # select first item, if any or initialise if none if len(self.document.data) > 0: self.selectDataset( sorted(self.document.data)[0] ) else: self.slotDatasetsSelected([]) self.dsbrowser.navtree.selecteddatasets.connect( self.slotDatasetsSelected) # connect buttons for btn, slot in ( (self.deletebutton, self.slotDatasetDelete), (self.unlinkbutton, self.slotDatasetUnlink), (self.duplicatebutton, self.slotDatasetDuplicate), (self.importbutton, self.slotDatasetImport), (self.createbutton, self.slotDatasetCreate), (self.editbutton, self.slotDatasetEdit), ): btn.clicked.connect(slot) # menu for new button self.newmenu = qt.QMenu() for text, slot in ( (_('Numerical dataset'), self.slotNewNumericalDataset), (_('Text dataset'), self.slotNewTextDataset), (_('Date/time dataset'), self.slotNewDateDataset) ): a = self.newmenu.addAction(text) a.triggered.connect(slot) self.newbutton.setMenu(self.newmenu) def slotDatasetsSelected(self, names): """Called when a new dataset is selected.""" # FIXME: Make readonly models readonly!! model = None if len(names) == 1: # get selected dataset ds = self.document.data[names[0]] # make model for dataset if ds.dimensions == 1: model = DatasetTableModel1D(self, self.document, names[0]) elif ds.dimensions == 2: model = DatasetTableModel2D(self, self.document, names[0]) elif ds.dimensions == -1: model = DatasetTableModelND(self, self.document, names[0]) elif len(names) > 1: model = DatasetTableModelMulti(self, self.document, names) # disable context menu if no menu for a in self.datatableview.actions(): a.setEnabled(model is not None) self.datatableview.setModel(model) self.setUnlinkState() def setUnlinkState(self): """Enable the unlink button correctly.""" linkinfo = [] canunlink = [] canedit = [] names = self.dsbrowser.navtree.getSelectedDatasets() for name in names: ds = self.document.data[name] canunlink.append(ds.canUnlink()) if len(names) > 1: linkinfo.append(name) linkinfo.append(ds.linkedInformation()) canedit.append(type(ds) in recreate_register) self.editbutton.setVisible(any(canedit)) self.unlinkbutton.setEnabled(any(canunlink)) self.linkedlabel.setText('\n'.join(linkinfo)) self.deletebutton.setEnabled(bool(names)) self.duplicatebutton.setEnabled(bool(names)) def slotDocumentModified(self): """Set unlink status when document modified.""" self.setUnlinkState() def selectDataset(self, dsname): """Select dataset with name given.""" self.dsbrowser.navtree.selectDataset(dsname) self.slotDatasetsSelected([dsname]) def slotDatasetDelete(self): """Delete selected dataset.""" dsnames = self.dsbrowser.navtree.getSelectedDatasets() self.document.applyOperation( document.OperationMultiple( [document.OperationDatasetDelete(n) for n in dsnames], descr=_('delete dataset(s)'))) def slotDatasetUnlink(self): """Allow user to remove link to file or other datasets.""" ops = [] for name in self.dsbrowser.navtree.getSelectedDatasets(): d = self.document.data[name] if d.linked is not None: ops.append(document.OperationDatasetUnlinkFile(name)) elif d.canUnlink(): ops.append(document.OperationDatasetUnlinkRelation(name)) if ops: self.document.applyOperation( document.OperationMultiple(ops, _('unlink dataset(s)'))) def slotDatasetDuplicate(self): """Duplicate selected datasets.""" ops = [] for name in self.dsbrowser.navtree.getSelectedDatasets(): # generate new name for dataset newname = name + '_copy' index = 2 while newname in self.document.data: newname = '%s_copy_%i' % (name, index) index += 1 ops.append( document.OperationDatasetDuplicate(name, newname)) if ops: self.document.applyOperation( document.OperationMultiple(ops, _('duplicate dataset(s)'))) def slotDatasetImport(self): """Show import dialog.""" self.mainwindow.slotDataImport() def slotDatasetCreate(self): """Show dataset creation dialog.""" self.mainwindow.slotDataCreate() def slotDatasetEdit(self): """Reload dataset into dataset creation dialog.""" for name in self.dsbrowser.navtree.getSelectedDatasets(): dataset = self.document.data[name] try: recreate_register[type(dataset)]( self.mainwindow, self.document, dataset, name) except KeyError: pass def slotCopy(self): """Copy text from selection.""" # get list of selected rows and columns selmodel = self.datatableview.selectionModel() model = self.datatableview.model() indices = [] for index in selmodel.selectedIndexes(): indices.append( (index.row(), index.column()) ) indices.sort() # build up text stream for copying to clipboard lines = [] rowitems = [] lastrow = -1 for row, column in indices: if row != lastrow: if rowitems: # items are tab separated lines.append( '\t'.join(rowitems) ) rowitems = [] lastrow = row rowitems.append( str(model.createIndex(row, column).data()) ) if rowitems: lines.append( '\t'.join(rowitems) ) lines.append('') # blank line at end lines = '\n'.join(lines) # put text on clipboard qt.QApplication.clipboard().setText(lines) def slotDeleteRow(self): """Delete the current row.""" self.datatableview.model().removeRows( self.datatableview.currentIndex().row(), 1) def slotInsertRow(self): """Insert a new row.""" self.datatableview.model().insertRows( self.datatableview.currentIndex().row(), 1) def slotNewNumericalDataset(self): """Add new value dataset.""" self.newDataset( datasets.Dataset(data=[0.]) ) def slotNewTextDataset(self): """Add new text dataset.""" self.newDataset( datasets.DatasetText(data=['']) ) def slotNewDateDataset(self): """Add new date dataset.""" self.newDataset( datasets.DatasetDateTime(data=[]) ) def newDataset(self, ds): """Add new dataset to document.""" # get a name for dataset name = _('new dataset') if name in self.document.data: count = 1 while name in self.document.data: name = _('new dataset %i') % count count += 1 # add new dataset self.document.applyOperation( document.OperationDatasetSet(name, ds)) self.dsbrowser.selectDataset(name) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dialogs/errorloading.py0000664000175000017500000000326514332253347016773 0ustar00jssjss# Copyright (C) 2006 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Dialog to show if there is an error loading.""" from .. import qtall as qt from .veuszdialog import VeuszDialog class ErrorLoadingDialog(VeuszDialog): """Dialog when error loading.""" def __init__(self, parent, filename, error, traceback): VeuszDialog.__init__(self, parent, 'errorloading.ui') # insert filename into label text = self.errorlabel.text() text = text % filename self.errorlabel.setText(text) self.errormessagelabel.setText(error) # put backtrace into error edit box self.errortextedit.setPlainText(traceback) # set warning pixmap to left of dialog icon = qt.qApp.style().standardIcon( qt.QStyle.SP_MessageBoxWarning, None, self) self.iconlabel.setPixmap(icon.pixmap(32)) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1674294549.0 veusz-3.6.2/veusz/dialogs/exceptiondialog.py0000664000175000017500000001721514362732425017464 0ustar00jssjss# Copyright (C) 2006 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## '''Dialog to pop up if an exception occurs in Veusz. This allows the user to send a bug report.''' import sys import time import traceback import base64 from urllib import request import numpy from .. import qtall as qt from .. import utils from .veuszdialog import VeuszDialog def _(text, disambiguation=None, context="ExceptionDialog"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) _emailUrl ='https://barmag.net/veusz-mail.php' _sendformat = \ '''Email: %s Error report ------------ %s What the user was doing before the crash ---------------------------------------- %s ''' def versionHeader(): """Get software versions""" return f'''Veusz version: {utils.version()} Python version: {sys.version} Python platform: {sys.platform} Numpy version: {numpy.__version__} Qt version: {qt.qVersion()} PyQt version: {qt.PYQT_VERSION_STR} sip version: {qt.sip.SIP_VERSION_STR}''' def createReportText(exception): timehdr = time.strftime('%a, %d %b %Y %H:%M:%S +0000', time.gmtime()) return f'''{versionHeader()} Date: {timehdr} {str(exception)}''' class ExceptionSendDialog(VeuszDialog): """Dialog to send debugging report.""" def __init__(self, exception, parent): VeuszDialog.__init__(self, parent, 'exceptionsend.ui') # debugging report text self.text = createReportText(exception) self.detailstosend.setPlainText(self.text) def accept(self): """Send text.""" # build up the text of the message text = ( _sendformat % ( self.emailedit.text(), self.text, self.detailsedit.toPlainText() )) # send the message as base-64 encoded utf-8 text = base64.b64encode(text.encode('utf8')) try: # send the message request.urlopen(_emailUrl, b'message='+text) except: # something went wrong... qt.QMessageBox.critical( None, _("Veusz"), _("Failed to connect to error server " "to send report. Is your internet connected?")) return qt.QMessageBox.information( self, _("Submitted"), _("Thank you for submitting an error report")) VeuszDialog.accept(self) def _raiseIgnoreException(): """Ignore this exception to clear out stack frame of previous exception.""" raise utils.IgnoreException() def formatLocals(exception): """Return local variables.""" alreadyself = set() tb = exception[2] outlines = [] while tb: frame = tb.tb_frame tb = tb.tb_next outlines.append('') outlines.append( 'Frame %s (File %s, line %s)' % (frame.f_code.co_name, frame.f_code.co_filename, frame.f_lineno)) # get local variables for frame for key, value in frame.f_locals.items(): # print out variables in frame try: v = repr(value) except: v = '' if len(v) > 128: v = v[:120] + '...' outlines.append(' %s = %s' % (key, v)) # print out attributes if item is self if key == 'self' and id(value) not in alreadyself: alreadyself.add(id(value)) for attr in sorted( dir(value) ): try: v = getattr(value, attr) except: # can sometimes get type error continue if hasattr(v, '__call__'): # skip callables, to cut down output continue try: sv = repr(v) except: sv = '' if len(sv) > 128: sv = sv[:120] + '...' outlines.append(' self.%s = %s' % (attr, sv)) return '\n'.join(outlines) class ExceptionDialog(VeuszDialog): """Choose an exception to send to developers.""" ignore_exceptions = set() def __init__(self, exception, parent): VeuszDialog.__init__(self, parent, 'exceptionlist.ui') # get text for traceback and locals self.fmtexcept = ''.join(traceback.format_exception(*exception)) self.backtrace = self.fmtexcept + formatLocals(exception) self.errortextedit.setPlainText(self.backtrace) # set critical pixmap to left of dialog icon = qt.qApp.style().standardIcon( qt.QStyle.SP_MessageBoxCritical, None, self) self.erroriconlabel.setPixmap(icon.pixmap(32)) self.ignoreSessionButton.clicked.connect(self.ignoreSessionSlot) self.saveButton.clicked.connect(self.saveButtonSlot) self.checkVeuszVersion() if not _emailUrl: self.okButton.hide() def checkVeuszVersion(self): """See whether there is a later version of veusz and inform the user.""" newver = utils.latestVersion() thisver = utils.version() if not newver: msg = _('Could not check the latest Veusz version') else: # convert to tuples for comparison newver_tup = utils.versionToTuple(newver) thisver_tup = utils.versionToTuple(thisver) if thisver_tup == newver_tup: msg = _('You are running the latest released Veusz version') elif thisver_tup > newver_tup: msg = _('You are running an unreleased Veusz version') else: msg = (_( 'Your current version of Veusz is old. ' 'Veusz %s is available.') % newver) self.veuszversionlabel.setText(msg) def accept(self): """Accept by opening send dialog.""" d = ExceptionSendDialog(self.backtrace, self) if d.exec_() == qt.QDialog.Accepted: VeuszDialog.accept(self) def ignoreSessionSlot(self): """Ignore exception for session.""" ExceptionDialog.ignore_exceptions.add(self.fmtexcept) self.reject() def saveButtonSlot(self): filename = qt.QFileDialog.getSaveFileName(self, 'Save File') if filename[0]: f = open(filename[0], 'w') f.write(createReportText(self.backtrace)) f.close() self.close() def exec_(self): """Exec dialog if exception is not ignored.""" if self.fmtexcept not in ExceptionDialog.ignore_exceptions: VeuszDialog.exec_(self) # send another exception shortly - this clears out the current one # so the stack frame of the current exception is released qt.QTimer.singleShot(0, _raiseIgnoreException) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dialogs/export.py0000664000175000017500000004467214332253347015634 0ustar00jssjss# Copyright (C) 2014 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## import os import os.path from .. import qtall as qt from .. import setting from .. import utils from .. import document from .veuszdialog import VeuszDialog def _(text, disambiguation=None, context='ExportDialog'): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) # formats which can have multiple pages multipageformats = set(('ps', 'pdf')) bitmapformats = set(('png', 'bmp', 'jpg', 'tiff', 'xpm')) # map formats to names of radio buttons formatradio = ( ('pdf', 'radioFormatPDF'), ('eps', 'radioFormatEPS'), ('ps', 'radioFormatPS' ), ('svg', 'radioFormatSVG'), ('emf', 'radioFormatEMF'), ('png', 'radioFormatPNG'), ('bmp', 'radioFormatBMP'), ('jpg', 'radioFormatJPG'), ('tiff', 'radioFormatTIFF'), ('xpm', 'radioFormatXPM'), ) class ExportDialog(VeuszDialog): """Export dialog.""" def __init__(self, mainwindow, doc, docfilename): """Setup dialog.""" VeuszDialog.__init__(self, mainwindow, 'export.ui') self.document = doc doc.signalModified.connect(self.updatePagePages) self.updatePagePages() # change 'Save' button to 'Export' self.buttonBox.button(qt.QDialogButtonBox.Save).setText(_('Export')) # these are mappings between filetypes and radio buttons self.fmtradios = dict([(f, getattr(self, r)) for f, r in formatradio]) self.radiofmts = dict([(getattr(self, r), f) for f, r in formatradio]) # get allowed types (some formats are disabled if no helper) docfmts = set() for types, descr in document.AsyncExport.getFormats(): docfmts.update(types) # disable type if not allowed for fmt, radio in self.fmtradios.items(): if fmt not in docfmts: radio.setEnabled(False) # connect format radio buttons def fmtclicked(f): return lambda: self.formatClicked(f) for r, f in self.radiofmts.items(): r.clicked.connect(fmtclicked(f)) # connect page radio buttons self.radioPageSingle.clicked.connect(lambda: self.pageClicked('single')) self.radioPageAll.clicked.connect(lambda: self.pageClicked('all')) self.radioPagePages.clicked.connect(lambda: self.pageClicked('pages')) # other controls self.checkMultiPage.clicked.connect(self.updateSingleMulti) self.buttonBrowse.clicked.connect(self.browseClicked) setdb = setting.settingdb eloc = setdb['dirname_export_location'] # where to export file if eloc == 'doc': self.dirname = os.path.dirname(os.path.abspath(docfilename)) elif eloc == 'cwd': self.dirname = os.getcwd() else: # 'prev' self.dirname = setdb.get('dirname_export', qt.QDir.homePath()) # set default filename ext = setdb.get('export_format', 'pdf') if not docfilename: docfilename = 'export' self.docname = os.path.splitext(os.path.basename(docfilename))[0] self.formatselected = ext self.pageselected = setdb.get('export_page', 'single') self.checkMultiPage.setChecked(setdb.get('export_multipage', True)) self.updateSingleMulti() self.checkOverwrite.setChecked(setdb.get('export_overwrite', False)) self.exportSVGTextAsText.setChecked(setdb['export_SVG_text_as_text']) self.exportAntialias.setChecked(setdb['export_antialias']) self.exportQuality.setValue(setdb['export_quality']) # validate and set DPIs dpis = ('72', '75', '90', '96', '100', '150', '200', '300') for cntrl in self.exportDPI, self.exportDPISVG, self.exportDPIPDF: cntrl.addItems(dpis) cntrl.setValidator(qt.QIntValidator(10, 10000, self)) self.exportDPI.setEditText(str(setdb['export_DPI'])) self.exportDPISVG.setEditText(str(setdb['export_DPI_SVG'])) self.exportDPIPDF.setEditText(str(setdb['export_DPI_PDF'])) # button to change bitmap background self.exportBackgroundButton.clicked.connect( self.slotExportBackgroundClicked) self.updateExportBackground(setdb['export_background']) # set correct format self.fmtradios[ext].click() # regexp for comma separated ranges valre = qt.QRegExp( r'^[0-9]+(\s*-\s*[0-9]+)?(\s*,\s*[0-9]+(\s*-\s*[0-9]+)?)*$') valid = qt.QRegExpValidator(valre, self) self.editPagePages.setValidator(valid) # set page mode { 'range': self.radioPageSingle, # compatibility 'single': self.radioPageSingle, 'all': self.radioPageAll, 'pages': self.radioPagePages, }[self.pageselected].click() # label showing success/failure self.labelStatus.clear() # fix height as widgets are hidden width = self.size().width() self.adjustSize() self.resize(width, self.size().height()) def formatClicked(self, fmt): """If the format is changed.""" setting.settingdb['export_format'] = fmt self.formatselected = fmt self.checkMultiPage.setEnabled(fmt in multipageformats) for c in (self.exportAntialias, self.exportDPI, self.labelDPI, self.exportBackgroundButton, self.labelBackgroundButton): c.setVisible(fmt in bitmapformats) for c in (self.exportDPIPDF, self.labelDPIPDF, self.exportColor, self.labelColor): c.setVisible(fmt in ('pdf', 'ps', 'eps')) for c in (self.exportQuality, self.labelQuality): c.setVisible(fmt == 'jpg') for c in (self.exportSVGTextAsText, self.labelSVGTextAsText, self.exportDPISVG, self.labelDPISVG): c.setVisible(fmt == 'svg') self.updateSingleMulti() filename = os.path.splitext(self.editFileName.text())[0] + '.' + fmt self.editFileName.setText(filename) def pageClicked(self, page): """If page type is set.""" setting.settingdb['export_page'] = page self.pageselected = page self.updateSingleMulti() self.editPagePages.setEnabled(page=='pages') def browseClicked(self): """Browse for file.""" setdb = setting.settingdb # File types we can export to in the form ([extensions], Name) fd = qt.QFileDialog(self, _('Export page')) filename = self.editFileName.text() dirname = os.path.dirname(self.editFileName.text()) fd.setDirectory(dirname if dirname else self.dirname) fd.setFileMode(qt.QFileDialog.AnyFile) fd.setAcceptMode(qt.QFileDialog.AcceptSave) fd.setOptions(qt.QFileDialog.DontConfirmOverwrite) # Create a mapping between a format string and extensions filtertoext = {} # convert extensions to filter exttofilter = {} filters = [] # a list of extensions which are allowed validextns = [] formats = document.AsyncExport.getFormats() for extns, name in formats: extensions = " ".join(["*." + item for item in extns]) # join eveything together to make a filter string filterstr = '%s (%s)' % (name, extensions) filtertoext[filterstr] = extns for e in extns: exttofilter[e] = filterstr filters.append(filterstr) validextns += extns fd.setNameFilters(filters) fd.selectNameFilter(exttofilter[setdb['export_format']]) filename = self.editFileName.text() dirname = os.path.dirname(os.path.abspath(filename)) if os.path.isdir(dirname): fd.selectFile(filename) if fd.exec_() == qt.QDialog.Accepted: # convert filter to extension filterused = str(fd.selectedNameFilter()) chosenext = filtertoext[filterused][0] filename = fd.selectedFiles()[0] fileext = os.path.splitext(filename)[1][1:] if fileext not in validextns or fileext != chosenext: filename += "." + chosenext self.editFileName.setText(filename) self.fmtradios[chosenext].click() def isMultiFile(self): """Is output going to be multiple pages?""" multifile = self.pageselected != 'single' if (self.formatselected in multipageformats and self.checkMultiPage.isChecked()): multifile = False return multifile def updateSingleMulti(self, _oldmulti=[None]): """Change filename according to selected single or multi button.""" setting.settingdb['export_multipage'] = self.checkMultiPage.isChecked() multifile = self.isMultiFile() if multifile: templ = setting.settingdb['export_template_multi'] else: templ = setting.settingdb['export_template_single'] newfilename = os.path.join( self.dirname, templ.replace('%DOCNAME%', self.docname) + '.' + self.formatselected) # only change if multi format status has changed or is # uninitialised if multifile is not getattr(self, '_oldsinglemulti', None): self.editFileName.setText(newfilename) self._oldsinglemulti = multifile def updatePagePages(self): """Update widgets allowing user to set ranges of pages.""" npages = self.document.getNumberPages() if npages == 0: return text = '%i-%i' % (1, npages) self.editPagePages.setText(text) @qt.pyqtSlot() def clearLabel(self): """Clear label. Defined as a slot to work around PyQt C++ object deleted bug. """ self.labelStatus.clear() def showMessage(self, text): """Show a message in a label, clearing after a time.""" self.labelStatus.setText(text) qt.QTimer.singleShot(3000, self.clearLabel) def updateExportBackground(self, colorname): """Update color on export background.""" pixmap = qt.QPixmap(16, 16) col = self.document.evaluate.colors.get(colorname) pixmap.fill(col) # update button (storing color in button itself - what fun!) self.exportBackgroundButton.setIcon(qt.QIcon(pixmap)) self.exportBackgroundButton.iconcolor = colorname def slotExportBackgroundClicked(self): """Button clicked to change background.""" qcolor = self.document.evaluate.colors.get( self.exportBackgroundButton.iconcolor) color = qt.QColorDialog.getColor( qcolor, self, "Choose color", qt.QColorDialog.ShowAlphaChannel ) if color.isValid(): self.updateExportBackground(utils.extendedColorFromQColor(color)) def getPagePages(self): """Get list of entered pages.""" visible = set(self.document.getVisiblePages()) txt = self.editPagePages.text() parts = txt.split(',') pages = [] for p in parts: p = p.replace(' ', '') try: if p.find('-')>=0: rng = p.split('-') for pg in range(int(rng[0])-1, int(rng[1])): if pg in visible: pages.append(pg) else: pg = int(p)-1 if pg in visible: pages.append(pg) except ValueError: # convertsion error raise RuntimeError(_('Error: invalid list of pages')) # check in range for pg in pages: if pg<0 or pg>=self.document.getNumberPages(): raise RuntimeError(_('Error: pages out of range')) return pages def accept(self): """Do the export""" if not self.document.getVisiblePages(): self.showMessage(_('Error: no visible pages in document')) return filename = self.editFileName.text() if (self.isMultiFile() and '%PAGENAME%' not in filename and '%PAGE%' not in filename and '%PAGE00%' not in filename and '%PAGE000%' not in filename): self.showMessage( _('Error: page name or number must be in filename')) return # add extension to filename if missing if not os.path.splitext(filename)[1]: filename += '.' + self.formatselected if self.pageselected == 'single': pages = [self.mainwindow.plot.getPageNumber()] elif self.pageselected == 'all': pages = self.document.getVisiblePages() elif self.pageselected == 'pages': try: pages = self.getPagePages() except RuntimeError as e: self.showMessage(str(e)) return setdb = setting.settingdb # update settings from controls setdb['export_overwrite'] = self.checkOverwrite.isChecked() setdb['export_antialias'] = self.exportAntialias.isChecked() setdb['export_quality'] = self.exportQuality.value() setdb['export_color'] = self.exportColor.currentIndex() == 0 setdb['export_background'] = self.exportBackgroundButton.iconcolor setdb['export_SVG_text_as_text'] = self.exportSVGTextAsText.isChecked() # update dpi if possible # FIXME: requires some sort of visual notification of validator for cntrl, setn in ( (self.exportDPI, 'export_DPI'), (self.exportDPIPDF, 'export_DPI_PDF'), (self.exportDPISVG, 'export_DPI_SVG')): try: text = cntrl.currentText() valid = cntrl.validator().validate(text, 0)[0] if valid == qt.QValidator.Acceptable: setdb[setn] = int(text) except ValueError: pass export = document.AsyncExport( self.document, bitmapdpi=setdb['export_DPI'], pdfdpi=setdb['export_DPI_PDF'], antialias=setdb['export_antialias'], color=setdb['export_color'], quality=setdb['export_quality'], backcolor=setdb['export_background'], svgtextastext=setdb['export_SVG_text_as_text'], svgdpi=setdb['export_DPI_SVG'], ) def _overwriteQuestion(filename): """Ask user whether file can be overwritten.""" retn = qt.QMessageBox.question( self, _("Overwrite file?"), _("The file %s already exists") % os.path.basename(filename), qt.QMessageBox.Save | qt.QMessageBox.Cancel, qt.QMessageBox.Cancel) return retn == qt.QMessageBox.Save # count exported pages (in list so can be modified in function) pagecount = [0] def _checkAndExport(fname, pages): """Check whether file exists and export if ok.""" if os.path.exists(fname): if not setdb['export_overwrite']: if not _overwriteQuestion(fname): return # delete file if already exists try: os.unlink(fname) except EnvironmentError: pass # actually do the export export.add(fname, pages) pagecount[0] += len(pages) ext = os.path.splitext(fname)[1] if ext: utils.feedback.exportcts[ext] += 1 if self.isMultiFile() or len(pages)==1: # write pages to multiple files for page in pages: pagename = self.document.getPage(page).name pg = page+1 fname = filename.replace('%PAGE%', str(pg)) fname = fname.replace('%PAGE00%', '%02i' % pg) fname = fname.replace('%PAGE000%', '%03i' % pg) fname = fname.replace('%PAGENAME%', pagename) _checkAndExport(fname, [page]) else: # write page/pages to single file fname = filename.replace('%PAGE%', _('none')) fname = fname.replace('%PAGE00%', _('none')) fname = fname.replace('%PAGE000%', _('none')) fname = fname.replace('%PAGENAME%', _('none')) _checkAndExport(fname, pages) dirname = os.path.dirname(filename) if dirname: setting.settingdb['dirname_export'] = dirname # format feedback self.showMessage(_('Processing...')) self.buttonBox.button(qt.QDialogButtonBox.Close).setEnabled(False) self.buttonBox.button(qt.QDialogButtonBox.Save).setEnabled(False) def checkDone(): """Check whether exporting has finished.""" if not export.haveDone(): return try: export.finish() except (RuntimeError, EnvironmentError) as e: # errors from the export if isinstance(e, EnvironmentError): msg = e.strerror else: msg = str(e) qt.QMessageBox.critical( self, _("Error - Veusz"), _("Error exporting to file '%s'\n\n%s") % (fname, msg)) else: if pagecount[0] > 0: self.showMessage(_('Exported %i page(s)') % pagecount[0]) self.buttonBox.button(qt.QDialogButtonBox.Close).setEnabled(True) self.buttonBox.button(qt.QDialogButtonBox.Save).setEnabled(True) self.checktimer.stop() self.checktimer = qt.QTimer(self) self.checktimer.timeout.connect(checkDone) self.checktimer.start(20) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dialogs/filterdialog.py0000664000175000017500000001036314332253347016746 0ustar00jssjss# Copyright (C) 2015 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Dialog for filtering data.""" from .. import qtall as qt from .. import document from ..qtwidgets.datasetbrowser import DatasetBrowser from .veuszdialog import VeuszDialog def _(text, disambiguation=None, context="FilterDialog"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) class FilterDialog(VeuszDialog): """Preferences dialog.""" def __init__(self, parent, doc): """Setup dialog.""" VeuszDialog.__init__(self, parent, "filter.ui") self.document = doc self.dsbrowser = DatasetBrowser(doc, parent, None, checkable=True) grplayout = qt.QVBoxLayout() grplayout.addWidget(self.dsbrowser) self.filtergroup.setLayout(grplayout) self.buttonBox.button(qt.QDialogButtonBox.Apply).clicked.connect( self.applyClicked) self.buttonBox.button(qt.QDialogButtonBox.Reset).clicked.connect( self.resetClicked) def updateStatus(self, text): """Show message in dialog.""" qt.QTimer.singleShot(4000, self.statuslabel.clear) self.statuslabel.setText(text) def applyClicked(self): """Do the filtering.""" prefix = self.prefixcombo.currentText().strip() suffix = self.suffixcombo.currentText().strip() if not prefix and not suffix: self.updateStatus(_("Prefix and/or suffix must be entered")) return expr = self.exprcombo.currentText().strip() if not expr: self.updateStatus(_("Enter a valid filter expression")) return tofilter = self.dsbrowser.checkedDatasets() if not tofilter: self.updateStatus(_("Choose at least one dataset to filter")) return invert = self.invertcheck.isChecked() replaceblanks = self.replaceblankscheck.isChecked() op = document.OperationDatasetsFilter( expr, tofilter, prefix=prefix, suffix=suffix, invert=invert, replaceblanks=replaceblanks) ok, log = op.check(self.document) if not ok: self.updateStatus("\n".join(log)) return self.document.applyOperation(op) self.updateStatus(_("Filtered %i datasets") % len(tofilter)) def resetClicked(self): """Reset controls to defaults.""" for cntrl in self.exprcombo, self.prefixcombo, self.suffixcombo: cntrl.setEditText("") self.dsbrowser.reset() self.invertcheck.setChecked(False) self.replaceblankscheck.setChecked(False) self.updateStatus(_("Dialog reset")) def reEditDialog(self, dataset): """Load controls with settings from dataset.""" gen = dataset.generator self.exprcombo.setEditText(gen.inexpr) self.prefixcombo.setEditText(gen.prefix) self.suffixcombo.setEditText(gen.suffix) self.invertcheck.setChecked(gen.invert) self.replaceblankscheck.setChecked(gen.replaceblanks) datasets = [ d for d in gen.indatasets if d in self.document.data ] self.dsbrowser.setCheckedDatasets(datasets) def recreateDataset(mainwindow, document, dataset, datasetname): """Open dialog to recreate filter.""" dialog = FilterDialog(mainwindow, document) mainwindow.showDialog(dialog) dialog.reEditDialog(dataset) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dialogs/histodata.py0000664000175000017500000002555414332253347016271 0ustar00jssjss# Copyright (C) 2010 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## from .. import qtall as qt from .. import utils from .. import datasets from .. import document from .veuszdialog import VeuszDialog def _(text, disambiguation=None, context="HistogramDialog"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) def checkValidator(combo): """Is this validator ok?""" valid = combo.validator() state, s, x = valid.validate(combo.currentText(), 0) return state == qt.QValidator.Acceptable class ManualBinModel(qt.QAbstractListModel): """Model to store a list of floating point values in a list.""" def __init__(self, thedata): qt.QAbstractListModel.__init__(self) self.thedata = thedata def data(self, index, role): if role == qt.Qt.DisplayRole and index.isValid(): return float(self.thedata[index.row()]) return None def rowCount(self, parent): return len(self.thedata) def flags(self, index): return ( qt.Qt.ItemIsSelectable | qt.Qt.ItemIsEnabled | qt.Qt.ItemIsEditable ) def setData(self, index, value, role): if role == qt.Qt.EditRole: try: val = float(value) except ValueError: return False self.thedata[ index.row() ] = val self.dataChanged.emit(index, index) return True return False class HistoDataDialog(VeuszDialog): """Preferences dialog.""" def __init__(self, parent, document): """Setup dialog.""" VeuszDialog.__init__(self, parent, 'histodata.ui') self.document = document self.minval.default = self.maxval.default = ['Auto'] regexp = qt.QRegExp(r"^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?|Auto$") validator = qt.QRegExpValidator(regexp, self) self.minval.setValidator(validator) self.maxval.setValidator(validator) self.buttonBox.button(qt.QDialogButtonBox.Apply).clicked.connect( self.applyClicked ) self.buttonBox.button(qt.QDialogButtonBox.Reset).clicked.connect( self.resetClicked ) self.bingenerate.clicked.connect(self.generateManualBins) self.binadd.clicked.connect(self.addManualBins) self.binremove.clicked.connect(self.removeManualBins) self.bindata = [] self.binmodel = ManualBinModel(self.bindata) self.binmanuals.setModel(self.binmodel) document.signalModified.connect(self.updateDatasetLists) self.updateDatasetLists() def escapeDatasets(self, dsnames): """Escape dataset names if they are not typical python ones.""" for i in range(len(dsnames)): if not utils.validPythonIdentifier(dsnames[i]): dsnames[i] = '`%s`' % dsnames[i] def updateDatasetLists(self): """Update list of datasets.""" datasets = [] for name, ds in self.document.data.items(): if ds.datatype == 'numeric' and ds.dimensions == 1: datasets.append(name) datasets.sort() # make sure names are escaped if they have funny characters self.escapeDatasets(datasets) # help the user by listing existing datasets utils.populateCombo(self.indataset, datasets) def datasetExprChanged(self): """Validate expression.""" text = self.indataset.text() datasets.evalDatasetExpression(self.document, text) class Params: """Parameters to creation of histogram.""" def __init__(self, dialog): """Initialise parameters from dialog.""" numbins = dialog.numbins.value() if not checkValidator(dialog.minval): raise RuntimeError(_("Invalid minimum value")) minval = dialog.minval.text() if minval != 'Auto': minval = float(minval) if not checkValidator(dialog.maxval): raise RuntimeError(_("Invalid maximum value")) maxval = dialog.maxval.text() if maxval != 'Auto': maxval = float(maxval) islog = dialog.logarithmic.isChecked() self.binparams = (numbins, minval, maxval, islog) self.expr = dialog.indataset.currentText().strip() self.outdataset = dialog.outdataset.currentText().strip() self.outbins = dialog.outbins.currentText().strip() if self.expr == self.outdataset or self.expr == self.outbins: raise RuntimeError(_("Output datasets cannot be the same as input datasets")) self.method = dialog.methodGroup.getRadioChecked().objectName() self.manualbins = list( dialog.bindata ) self.manualbins.sort() if len(self.manualbins) == 0: self.manualbins = None self.errors = dialog.errorBars.isChecked() cuml = dialog.cumlGroup.getRadioChecked().objectName() self.cumulative = 'none' if cuml == 'cumlStoL': self.cumulative = 'smalltolarge' elif cuml == 'cumlLtoS': self.cumulative = 'largetosmall' def getGenerator(self, doc): """Return dataset generator.""" return datasets.DatasetHistoGenerator( doc, self.expr, binparams = self.binparams, binmanual = self.manualbins, method = self.method, cumulative = self.cumulative, errors = self.errors) def getOperation(self): """Get operation to make histogram.""" return document.OperationDatasetHistogram( self.expr, self.outbins, self.outdataset, binparams = self.binparams, binmanual = self.manualbins, method = self.method, cumulative = self.cumulative, errors = self.errors) def generateManualBins(self): """Generate manual bins.""" try: p = HistoDataDialog.Params(self) except RuntimeError as ex: qt.QMessageBox.warning(self, _("Invalid parameters"), str(ex)) return self.binmodel.beginRemoveRows(qt.QModelIndex(), 0, len(self.bindata)-1) del self.bindata[:] self.binmodel.endRemoveRows() if p.expr != '': p.manualbins = [] gen = p.getGenerator(self.document) locs = list(gen.binLocations()) self.binmodel.beginInsertRows(qt.QModelIndex(), 0, len(locs)-1) self.bindata += locs self.binmodel.endInsertRows() def addManualBins(self): """Add an extra bin to the manual list.""" self.binmodel.beginInsertRows(qt.QModelIndex(), 0, 0) self.bindata.insert(0, 0.) self.binmodel.endInsertRows() def removeManualBins(self): """Remove selected bins.""" indexes = self.binmanuals.selectionModel().selectedIndexes() if indexes: row = indexes[0].row() self.binmodel.beginRemoveRows(qt.QModelIndex(), row, row) del self.bindata[row] self.binmodel.endRemoveRows() def resetClicked(self): """Reset button clicked.""" for cntrl in (self.indataset, self.outdataset, self.outbins): cntrl.setEditText("") self.numbins.setValue(10) self.minval.setEditText("Auto") self.maxval.setEditText("Auto") self.logarithmic.setChecked(False) self.binmodel.beginRemoveRows(qt.QModelIndex(), 0, len(self.bindata)-1) del self.bindata[:] self.binmodel.endRemoveRows() self.errorBars.setChecked(False) self.counts.click() self.cumlOff.click() def reEditDataset(self, ds, dsname): """Re-edit dataset.""" gen = ds.generator self.indataset.setEditText(gen.inexpr) # need to map backwards to get dataset names revds = dict( (a,b) for b,a in self.document.data.items() ) self.outdataset.setEditText(revds.get(gen.valuedataset, '')) self.outbins.setEditText(revds.get(gen.bindataset, '')) # if there are parameters if gen.binparams: p = gen.binparams self.numbins.setValue( p[0] ) self.minval.setEditText( str(p[1]) ) self.maxval.setEditText( str(p[2]) ) self.logarithmic.setChecked( bool(p[3]) ) else: self.numbins.setValue(10) self.minval.setEditText("Auto") self.maxval.setEditText("Auto") self.logarithmic.setChecked(False) # if there is a manual list of bins if gen.binmanual is not None: self.binmodel.beginResetModel() self.bindata[:] = list(gen.binmanual) self.binmodel.endResetModel() # select correct method { 'counts': self.counts, 'density': self.density, 'fractions': self.fractions }[gen.method].click() # select if cumulative { 'none': self.cumlOff, 'smalltolarge': self.cumlStoL, 'largetosmall': self.cumlLtoS }[gen.cumulative].click() # if error bars self.errorBars.setChecked( bool(gen.errors) ) def applyClicked(self): """Create histogram.""" qt.QTimer.singleShot(4000, self.statuslabel.clear) try: p = HistoDataDialog.Params(self) except RuntimeError as ex: self.statuslabel.setText(_("Invalid parameters: %s") % str(ex)) return exprresult = datasets.evalDatasetExpression(self.document, p.expr) if exprresult is None: self.statuslabel.setText(_("Invalid expression")) return op = p.getOperation() self.document.applyOperation(op) self.statuslabel.setText( _('Created datasets "%s" and "%s"') % (p.outbins, p.outdataset)) def recreateDataset(mainwindow, document, dataset, datasetname): """Open dialog to recreate histogram.""" dialog = HistoDataDialog(mainwindow, document) mainwindow.showDialog(dialog) dialog.reEditDataset(dataset, datasetname) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dialogs/importdialog.py0000664000175000017500000002661114332253347016776 0ustar00jssjss# data import dialog # Copyright (C) 2004 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Module for implementing dialog boxes for importing data in Veusz.""" import os.path import sys from .. import qtall as qt from .. import setting from .. import utils from .. import plugins from . import exceptiondialog from .veuszdialog import VeuszDialog def _(text, disambiguation=None, context="ImportDialog"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) class ImportTab(qt.QWidget): """Tab for a particular import type.""" resource = '' filetypes = () # list of file types handled filefilter = None # name of filter for types for open dialog def __init__(self, importdialog, *args): """Initialise dialog. importdialog is the import dialog itself.""" qt.QWidget.__init__(self, *args) self.dialog = importdialog self.uiloaded = False def loadUi(self): """Load up UI file.""" qt.loadUi(os.path.join( utils.resourceDirectory, 'ui', self.resource), self) self.uiloaded = True def reset(self): """Reset controls to initial conditions.""" pass def doPreview(self, filename, encoding): """Update the preview window, returning whether import should be attempted.""" pass def doImport(self, doc, filename, linked, encoding, prefix, suffix, tags): """Do the import iteself.""" pass def okToImport(self): """Secondary check (after preview) for enabling import button.""" return True def isFiletypeSupported(self, ftype): """Is the filetype supported by this tab?""" return ftype in self.filetypes def useFiletype(self, ftype): """If the tab can do something with the selected filetype, update itself.""" pass importtabs = [] def registerImportTab(name, klass): """Register an import tab for the dialog.""" importtabs.append((name, klass)) class ImportDialog(VeuszDialog): """Dialog box for importing data. See ImportTab classes above which actually do the work of importing """ dirname = '.' def __init__(self, parent, document): VeuszDialog.__init__(self, parent, 'import.ui') self.document = document # whether file import looks likely to work self.filepreviewokay = False # tabs loaded currently in dialog self.tabs = {} for tabname, tabclass in importtabs: w = tabclass(self) self.methodtab.addTab(w, tabname) # add promoted plugins for p in plugins.importpluginregistry: if p.promote_tab is not None: from ..dataimport.dialog_plugin import ImportTabPlugins w = ImportTabPlugins(self, promote=p.name) self.methodtab.addTab(w, p.name) self.methodtab.currentChanged.connect(self.slotTabChanged) self.browsebutton.clicked.connect(self.slotBrowseClicked) self.filenameedit.editTextChanged.connect(self.slotUpdatePreview) self.importbutton = self.buttonBox.addButton( _("&Import"), qt.QDialogButtonBox.ApplyRole) self.importbutton.clicked.connect(self.slotImport) self.buttonBox.button(qt.QDialogButtonBox.Reset).clicked.connect( self.slotReset) self.encodingcombo.currentIndexChanged.connect(self.slotUpdatePreview) # add completion for filename c = self.filenamecompleter = qt.QCompleter(self) self.filenameedit.setCompleter(c) # change to tab last used self.methodtab.setCurrentIndex( setting.settingdb.get('import_lasttab', 0)) # defaults for prefix and suffix self.prefixcombo.default = self.suffixcombo.default = ['', '$FILENAME'] # default state for check boxes self.linkcheckbox.default = True # further defaults self.encodingcombo.defaultlist = utils.encodings self.encodingcombo.defaultval = 'utf_8' # load icon for clipboard self.clipbutton.setIcon( utils.getIcon('kde-clipboard') ) qt.QApplication.clipboard().dataChanged.connect( self.updateClipPreview) self.clipbutton.clicked.connect(self.slotClipButtonClicked) self.updateClipPreview() def slotBrowseClicked(self): """Browse for a data file.""" fd = qt.QFileDialog(self, _('Browse data file')) fd.setFileMode( qt.QFileDialog.ExistingFile ) # collect filters from tabs filters = [_('All files (*)')] for i in range(self.methodtab.count()): w = self.methodtab.widget(i) if w.filefilter: ftypes = ' '.join(['*'+t for t in w.filetypes]) f = '%s (%s)' % (w.filefilter, ftypes) filters.append(f) fd.setNameFilters(filters) lastfilt = setting.settingdb.get('import_filterbrowse') if lastfilt in filters: fd.selectNameFilter(lastfilt) # use filename to guess a path if possible filename = self.filenameedit.text() if os.path.isdir(filename): ImportDialog.dirname = filename elif os.path.isdir( os.path.dirname(filename) ): ImportDialog.dirname = os.path.dirname(filename) fd.setDirectory(ImportDialog.dirname) # update filename if changed if fd.exec_() == qt.QDialog.Accepted: ImportDialog.dirname = fd.directory().absolutePath() self.filenameedit.replaceAndAddHistory( fd.selectedFiles()[0] ) setting.settingdb['import_filterbrowse'] = fd.selectedNameFilter() self.guessImportTab() def guessImportTab(self): """Guess import tab based on filename.""" filename = self.filenameedit.text() ftype = os.path.splitext(filename)[1] # strip off any gz, bz2 extensions to get real extension while ftype.lower() in ('.gz', '.bz2'): ftype = os.path.splitext(filename)[1] ftype = ftype.lower() # examine from left to right # promoted plugins come after plugins idx = -1 for i in range(self.methodtab.count()): w = self.methodtab.widget(i) if w.isFiletypeSupported(ftype): idx = i if idx >= 0: self.methodtab.setCurrentIndex(idx) self.methodtab.widget(idx).useFiletype(ftype) def slotUpdatePreview(self, *args): """Update preview window when filename or tab changed.""" # save so we can restore later tab = self.methodtab.currentIndex() setting.settingdb['import_lasttab'] = tab filename = self.filenameedit.text() encoding = str(self.encodingcombo.currentText()) importtab = self.methodtab.currentWidget() if encoding == '': return if isinstance(importtab, ImportTab): if not importtab.uiloaded: importtab.loadUi() self.filepreviewokay = importtab.doPreview( filename, encoding) # enable or disable import button self.enableDisableImport() def slotTabChanged(self, tabindex): """Change completer depending on tab.""" self.slotUpdatePreview() w = self.methodtab.widget(tabindex) if w.filetypes is None: filters = ['*.*'] else: filters = ['*'+t for t in w.filetypes] model = qt.QDirModel( filters, qt.QDir.AllDirs | qt.QDir.Files, qt.QDir.Name) self.filenamecompleter.setModel(model) def enableDisableImport(self, *args): """Disable or enable import button if allowed.""" importtab = self.methodtab.currentWidget() enabled = self.filepreviewokay and importtab.okToImport() # actually enable or disable import button self.importbutton.setEnabled( enabled ) def slotImport(self): """Do the importing""" filename = self.filenameedit.text() linked = self.linkcheckbox.isChecked() encoding = str(self.encodingcombo.currentText()) if filename == '{clipboard}': linked = False else: # normalise filename filename = os.path.abspath(filename) # import according to tab selected importtab = self.methodtab.currentWidget() prefix, suffix = self.getPrefixSuffix(filename) tags = self.tagcombo.currentText().split() try: with utils.OverrideCursor(): with self.document.suspend(): importtab.doImport( self.document, filename, linked, encoding, prefix, suffix, tags) except IOError: qt.QMessageBox.warning( self, _("Veusz"), _("Could not read file")) except Exception: # show exception dialog d = exceptiondialog.ExceptionDialog(sys.exc_info(), self) d.exec_() def retnDatasetInfo(self, dsnames, linked, filename): """Return a list of information for the dataset names given.""" lines = [_('Imported data for datasets:')] dsnames.sort() for name in dsnames: ds = self.document.getData(name) # build up description lines.append(_('%s: %s') % (name, ds.description())) # whether the data were linked if linked: lines.append('') lines.append(_('Datasets were linked to file "%s"') % filename) return lines def getPrefixSuffix(self, filename): """Get prefix and suffix values.""" f = utils.cleanDatasetName( os.path.basename(filename) ) prefix = self.prefixcombo.lineEdit().text() prefix = prefix.replace('$FILENAME', f) suffix = self.suffixcombo.lineEdit().text() suffix = suffix.replace('$FILENAME', f) return prefix, suffix def slotReset(self): """Reset input fields.""" self.filenameedit.setText("") self.encodingcombo.setCurrentIndex( self.encodingcombo.findText("utf_8")) self.linkcheckbox.setChecked(True) self.prefixcombo.setEditText("") self.suffixcombo.setEditText("") importtab = self.methodtab.currentWidget() importtab.reset() def slotClipButtonClicked(self): """Clicked clipboard button.""" self.filenameedit.setText("{clipboard}") def updateClipPreview(self): """Clipboard contents changed, so update preview if showing clipboard.""" filename = self.filenameedit.text() if filename == '{clipboard}': self.slotUpdatePreview() ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dialogs/plugin.py0000664000175000017500000001622014332253347015575 0ustar00jssjss# Copyright (C) 2010 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Dialog boxes for tools and dataset plugins.""" import sys from .. import qtall as qt from .. import document from .. import plugins from .. import utils from . import exceptiondialog from .veuszdialog import VeuszDialog def _(text, disambiguation=None, context="PluginDialog"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) def handlePlugin(mainwindow, doc, pluginkls): """Show plugin dialog or directly execute (if it takes no parameters).""" plugin = pluginkls() if plugin.has_parameters: d = PluginDialog(mainwindow, doc, plugin, pluginkls) mainwindow.showDialog(d) else: fields = {'currentwidget': '/'} if mainwindow.treeedit.selwidgets: fields = {'currentwidget': mainwindow.treeedit.selwidgets[0].path} runPlugin(mainwindow, doc, plugin, fields) def wordwrap(text, linelength=80): """Wrap on a word boundary.""" out = [] l = 0 for w in text.split(' '): if w.find('\n') >= 0: l = 0 if l + len(w) > linelength: out.append('\n') l = 0 out.append(w) l += len(w) return ' '.join(out) class PluginDialog(VeuszDialog): """Dialog box class for plugins.""" def __init__(self, mainwindow, doc, plugininst, pluginkls): VeuszDialog.__init__(self, mainwindow, 'plugin.ui') reset = self.buttonBox.button(qt.QDialogButtonBox.Reset) reset.setAutoDefault(False) reset.setDefault(False) reset.clicked.connect( self.slotReset) self.buttonBox.button( qt.QDialogButtonBox.Apply).clicked.connect(self.slotApply) self.pluginkls = pluginkls self.plugininst = plugininst self.document = doc title = ': '.join(list(plugininst.menu)) self.setWindowTitle(title) descr = plugininst.description_full if plugininst.author: descr += '\n ' + _('Author: %s') % plugininst.author self.descriptionLabel.setText( wordwrap(descr) ) self.fieldcntrls = [] self.fields = [] self.addFields() def addFields(self): """Add any fields, removing existing ones if required.""" layout = self.fieldGroup.layout() for line in self.fieldcntrls: for cntrl in line: layout.removeWidget(cntrl) cntrl.deleteLater() del self.fieldcntrls[:] currentwidget = '/' if self.mainwindow.treeedit.selwidgets: currentwidget = self.mainwindow.treeedit.selwidgets[0].path for row, field in enumerate(self.plugininst.fields): if isinstance(field, list) or isinstance(field, tuple): for c, f in enumerate(field): cntrls = f.makeControl(self.document, currentwidget) layout.addWidget(cntrls[0], row, c*2) layout.addWidget(cntrls[1], row, c*2+1) self.fieldcntrls.append(cntrls) self.fields.append(f) else: cntrls = field.makeControl(self.document, currentwidget) layout.addWidget(cntrls[0], row, 0) layout.addWidget(cntrls[1], row, 1) self.fieldcntrls.append(cntrls) self.fields.append(field) def slotReset(self): """Reset fields to defaults.""" self.addFields() def reEditDataset(self, ds, dsname): """Open up dataset in dialog for editing.""" oldfields = ds.pluginmanager.fields for field, cntrl in zip(self.fields, self.fieldcntrls): field.setControlVal(cntrl, oldfields[field.name]) def slotApply(self): """Use the plugin with the inputted data.""" # default field fields = {'currentwidget': '/'} if self.mainwindow.treeedit.selwidgets: fields = { 'currentwidget': self.mainwindow.treeedit.selwidgets[0].path } # read values from controls for field, cntrls in zip(self.fields, self.fieldcntrls): fields[field.name] = field.getControlResults(cntrls) # run plugin plugin = self.pluginkls() statustext = runPlugin(self, self.document, plugin, fields) # show any results self.notifyLabel.setText(statustext) qt.QTimer.singleShot(3000, self.notifyLabel.clear) def runPlugin(window, doc, plugin, fields): """Execute a plugin. window - parent window doc - veusz document plugin - plugin object.""" if isinstance(plugin, plugins.ToolsPlugin): mode = 'tools' elif isinstance(plugin, plugins.DatasetPlugin): mode = 'dataset' else: raise RuntimeError("Invalid plugin class") resultstext = '' try: with utils.OverrideCursor(): # use correct operation class for different plugin types if mode == 'tools': op = document.OperationToolsPlugin(plugin, fields) elif mode == 'dataset': # a bit of a hack as we don't give currentwidget to this plugin del fields['currentwidget'] op = document.OperationDatasetPlugin( plugin, fields, raiseerrors=True) results = doc.applyOperation(op) # evaluate datasets using plugin to check it works if mode == 'dataset': op.validate() resultstext = _('Created datasets: ') + ', '.join(results) else: resultstext = _('Done') except (plugins.ToolsPluginException, plugins.DatasetPluginException) as ex: # unwind operations op.undo(doc) qt.QMessageBox.warning( window, _("Error in %s") % plugin.name, str(ex)) except Exception: op.undo(doc) # show exception dialog exceptiondialog.ExceptionDialog(sys.exc_info(), window).exec_() return resultstext def recreateDataset(mainwindow, document, dataset, datasetname): """Open dialog to recreate plugin dataset(s).""" # make a new instance of the plugin class kls = dataset.pluginmanager.plugin.__class__ newplugin = kls() dialog = PluginDialog(mainwindow, document, newplugin, kls) mainwindow.showDialog(dialog) dialog.reEditDataset(dataset, datasetname) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dialogs/preferences.py0000664000175000017500000003223714332253347016606 0ustar00jssjss# Copyright (C) 2006 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## from .. import qtall as qt from .. import setting from .. import utils from .. import document from .veuszdialog import VeuszDialog def _(text, disambiguation=None, context="PrefsDialog"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) # names for display of colors and a longer description color_names = { 'page': ( _('Page'), _('Page background color')), 'error': ( _('Error'), _('Color for errors')), 'command': ( _('Console command'), _('Commands in the console window color')), 'cntrlline': ( _('Control line'), _('Color of lines controlling widgets')), 'cntrlcorner': ( _('Control corner'), _('Color of corners controlling widgets')), } class PreferencesDialog(VeuszDialog): """Preferences dialog.""" def __init__(self, mainwindow): """Setup dialog.""" VeuszDialog.__init__(self, mainwindow, 'preferences.ui', modal=True) self.plotwindow = mainwindow.plot # for ease of use setdb = setting.settingdb # view settings self.antialiasCheck.setChecked( setdb['plot_antialias'] ) self.englishCheck.setChecked( setdb['ui_english'] ) for intv in self.plotwindow.updateintervals: self.intervalCombo.addItem(intv[1]) index = [i[0] for i in self.plotwindow.updateintervals].index( setdb['plot_updatepolicy']) self.intervalCombo.setCurrentIndex(index) self.threadSpinBox.setValue( setdb['plot_numthreads'] ) self.translationEdit.setText( setdb['translation_file'] ) self.translationBrowseButton.clicked.connect( self.translationBrowseClicked) # disable thread option if not supported if not qt.QFontDatabase.supportsThreadedFontRendering(): self.threadSpinBox.setEnabled(False) self.threadSpinBox.setToolTip( _("Disabled because of lack of threaded drawing support")) # use cwd for file dialogs (self.dirDocCWDRadio if setdb['dirname_usecwd'] else self.dirDocPrevRadio).click() # add import paths self.docFileAddImportPaths.setChecked( setdb['docfile_addimportpaths'] ) # exporting documents { 'doc': self.dirExportDocRadio, 'cwd': self.dirExportCWDRadio, 'prev': self.dirExportPrevRadio, }[setdb.get('dirname_export_location')].click() # templates when exporting self.exportTemplSingleEdit.setText(setdb['export_template_single']) self.exportTemplMultiEdit.setText(setdb['export_template_multi']) # set icon size self.iconSizeCombo.setCurrentIndex( self.iconSizeCombo.findText( str(setdb['toolbar_size']))) # default stylesheet self.styleLineEdit.setText(setdb['stylesheet_default']) self.styleBrowseButton.clicked.connect(self.styleBrowseClicked) # default custom settings self.customLineEdit.setText(setdb['custom_default']) self.customBrowseButton.clicked.connect(self.customBrowseClicked) # for plugins plugins = list( setdb.get('plugins', []) ) self.pluginmodel = qt.QStringListModel(plugins) self.pluginList.setModel(self.pluginmodel) self.pluginAddButton.clicked.connect(self.pluginAddClicked) self.pluginRemoveButton.clicked.connect(self.pluginRemoveClicked) # specifics for color tab self.setupColorTab() # for point picker self.pickerToConsoleCheck.setChecked( setdb['picker_to_console'] ) self.pickerToClipboardCheck.setChecked( setdb['picker_to_clipboard'] ) self.pickerSigFigs.setValue( setdb['picker_sig_figs'] ) # python path self.externalPythonPath.setText(setdb['external_pythonpath']) self.externalGhostscript.setText(setdb['external_ghostscript']) self.externalGhostscriptBrowse.clicked.connect( self.externalGhostscriptBrowseClicked) self.externalNewVerCheck.setChecked(setdb['vercheck_disabled']) if utils.disableVersionChecks: self.externalNewVerCheck.setEnabled(False) self.externalNewVerCheck.setChecked(setdb['feedback_disabled']) if utils.disableFeedback: self.externalFeedbackCheck.setEnabled(False) # security self.securityDirList.addItems(setdb['secure_dirs']) self.securityDirList.itemSelectionChanged.connect( self.securityDirListSelection) self.securityDirAdd.clicked.connect(self.securityDirAddClicked) self.securityDirRemove.clicked.connect(self.securityDirRemoveClicked) def setupColorTab(self): """Initialise color tab this makes a grid of controls for each color consisting of label, isdefault check and change color button.""" setdb = setting.settingdb # theme themes = sorted(list(document.colors.colorthemes)) self.colorThemeDefCombo.addItems(themes) self.colorThemeDefCombo.setCurrentIndex( themes.index(setdb['colortheme_default'])) # UI colors self.chosencolors = {} self.colorbutton = {} self.colordefaultcheck = {} layout = qt.QGridLayout() for row, colname in enumerate(setdb.colors): isdefault, colval = setting.settingdb['color_%s' % colname] self.chosencolors[colname] = qt.QColor(colval) # label name, tooltip = color_names[colname] label = qt.QLabel(name) label.setToolTip(tooltip) layout.addWidget(label, row, 0) # is default check defcheck = qt.QCheckBox(_("Default")) defcheck.setToolTip( _("Use the default color instead of the one chosen here")) layout.addWidget(defcheck, row, 1) self.colordefaultcheck[colname] = defcheck defcheck.setChecked(isdefault) # connect button to method to change color button = self.colorbutton[colname] = qt.QPushButton() def getcolclick(cname): # double function to get around colname changing return lambda: self.colorButtonClicked(cname) button.clicked.connect(getcolclick(colname)) layout.addWidget(button, row, 2) self.colorGroup.setLayout(layout) self.updateButtonColors() def colorButtonClicked(self, cname): """Open color dialog if color button clicked.""" retcolor = qt.QColorDialog.getColor( self.chosencolors[cname], self ) if retcolor.isValid(): self.chosencolors[cname] = retcolor self.updateButtonColors() def updateButtonColors(self): """Update color icons on color buttons.""" for name, val in self.chosencolors.items(): pixmap = qt.QPixmap(16, 16) pixmap.fill(val) self.colorbutton[name].setIcon( qt.QIcon(pixmap) ) def accept(self): """Keep settings if okay pressed.""" qt.QDialog.accept(self) # view settings setdb = setting.settingdb setdb['plot_updatepolicy'] = ( self.plotwindow.updateintervals[self.intervalCombo.currentIndex()][0] ) setdb['plot_antialias'] = self.antialiasCheck.isChecked() setdb['ui_english'] = self.englishCheck.isChecked() setdb['plot_numthreads'] = self.threadSpinBox.value() setdb['translation_file'] = self.translationEdit.text() # use cwd setdb['dirname_usecwd'] = self.dirDocCWDRadio.isChecked() setdb['docfile_addimportpaths'] = self.docFileAddImportPaths.isChecked() # add import paths setdb['docfile_addimportpaths'] = self.docFileAddImportPaths.isChecked() for radio, val in ( (self.dirExportDocRadio, 'doc'), (self.dirExportCWDRadio, 'cwd'), (self.dirExportPrevRadio, 'prev'), ): if radio.isChecked(): setdb['dirname_export_location'] = val # templates for exporting setdb['export_template_single'] = self.exportTemplSingleEdit.text().strip() setdb['export_template_multi'] = self.exportTemplMultiEdit.text().strip() # update icon size if necessary iconsize = int( self.iconSizeCombo.currentText() ) if iconsize != setdb['toolbar_size']: setdb['toolbar_size'] = iconsize for widget in self.parent().children(): # find toolbars if isinstance(widget, qt.QToolBar): widget.setIconSize( qt.QSize(iconsize, iconsize) ) # new document settings setdb['stylesheet_default'] = self.styleLineEdit.text() setdb['custom_default'] = self.customLineEdit.text() # color theme setdb['colortheme_default'] = self.colorThemeDefCombo.currentText() # UI colors for name, color in self.chosencolors.items(): isdefault = self.colordefaultcheck[name].isChecked() colorname = color.name() setdb['color_' + name] = (isdefault, colorname) # plugins plugins = self.pluginmodel.stringList() setdb['plugins'] = plugins # picker setdb['picker_to_clipboard'] = self.pickerToClipboardCheck.isChecked() setdb['picker_to_console'] = self.pickerToConsoleCheck.isChecked() setdb['picker_sig_figs'] = self.pickerSigFigs.value() # python path setdb['external_pythonpath'] = self.externalPythonPath.text() # where to find ghostscript setdb['external_ghostscript'] = self.externalGhostscript.text() # version updates setdb['vercheck_disabled'] = self.externalNewVerCheck.isChecked() # feedback setdb['feedback_disabled'] = self.externalFeedbackCheck.isChecked() # security setdb['secure_dirs'] = [ self.securityDirList.item(i).text() for i in range(self.securityDirList.count()) ] self.plotwindow.updatePlotSettings() # write settings out now, rather than wait until the end setdb.writeSettings() def translationBrowseClicked(self): """Browse for a translation.""" filename = self.parent().fileOpenDialog( [_('Translation file (*.qm)')], _('Choose translation file')) if filename: self.translationEdit.setText(filename) def styleBrowseClicked(self): """Browse for a stylesheet.""" filename = self.parent().fileOpenDialog( [_('Veusz stylesheet (*.vst)')], _('Choose stylesheet')) if filename: self.styleLineEdit.setText(filename) def customBrowseClicked(self): """Browse for a custom definitons.""" filename = self.parent().fileOpenDialog( [_('Veusz document (*.vsz)')], _('Choose custom definitons')) if filename: self.customLineEdit.setText(filename) def pluginAddClicked(self): """Add a new plugin.""" filename = self.parent().fileOpenDialog( [_('Python scripts (*.py)')], _('Choose plugin')) if filename: self.pluginmodel.insertRows(0, 1) self.pluginmodel.setData( self.pluginmodel.index(0), filename) def pluginRemoveClicked(self): """Remove selected plugin.""" sel = self.pluginList.selectionModel().currentIndex() if sel.isValid(): self.pluginmodel.removeRow( sel.row() ) def externalGhostscriptBrowseClicked(self): """Choose a ghostscript executable.""" filename = self.parent().fileOpenDialog( [_('All files (*)')], _('Choose ghostscript executable')) if filename: self.externalGhostscript.setText(filename) def securityDirListSelection(self): """Hide or show remove button.""" self.securityDirRemove.setEnabled( len(self.securityDirList.selectedItems())>0) def securityDirAddClicked(self): """Add a secure directory.""" dirname = qt.QFileDialog.getExistingDirectory( self, _('Choose secure directory to add')) if dirname: self.securityDirList.addItem(dirname) def securityDirRemoveClicked(self): """Remove a secure directory.""" for item in self.securityDirList.selectedItems(): self.securityDirList.takeItem(self.securityDirList.row(item)) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dialogs/reloaddata.py0000664000175000017500000001175414332253347016406 0ustar00jssjss# data reload dialog # Copyright (C) 2005 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Dialog for reloading linked data.""" import os from .. import qtall as qt from .veuszdialog import VeuszDialog def _(text, disambiguation=None, context="ReloadDialog"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) class ReloadData(VeuszDialog): """Dialog for reloading linked datasets.""" def __init__(self, document, parent, filenames=None): """Initialise the dialog. document: veusz document parent: parent window filenames: if a set() only reload from these filenames """ VeuszDialog.__init__(self, parent, 'reloaddata.ui') self.document = document self.filenames = filenames # update on reloading self.reloadct = 1 # get a record of names, dates and sizes of files linked self.filestats = self.statLinkedFiles() # actually reload the data (and show the user) self.reloadData() # if interval changed or enabled update timer self.intervalCheck.clicked.connect(self.intervalUpdate) self.intervalTime.valueChanged[int].connect(self.intervalUpdate) # timer to reload data self.intervalTimer = qt.QTimer() self.intervalTimer.timeout.connect(self.reloadIfChanged) # manual reload self.reloadbutton = self.buttonBox.addButton( "&Reload again", qt.QDialogButtonBox.ApplyRole) self.reloadbutton.clicked.connect(self.reloadData) # close by default, not reload self.buttonBox.button(qt.QDialogButtonBox.Close).setDefault(True) def statLinkedFiles(self): """Stat linked files. Returns a list of (filename, mtime, size) """ files = [] for lf in self.document.getLinkedFiles(): filename = lf.filename try: s = os.stat(filename) files.append( (filename, s.st_mtime, s.st_size) ) except OSError: pass files.sort() return files def intervalUpdate(self, *args): """Reload at intervals option toggled.""" if self.intervalCheck.isChecked(): self.intervalTimer.start( self.intervalTime.value()*1000 ) else: self.intervalTimer.stop() def reloadIfChanged(self): """Reload linked data if it has changed.""" newstat = self.statLinkedFiles() if newstat != self.filestats: self.filestats = newstat self.reloadData() def reloadData(self): """Reload linked data. Show the user what was done.""" lines = [] datasets = [] errors = {} try: # try to reload the datasets datasets, errors = self.document.reloadLinkedDatasets( self.filenames) except EnvironmentError as e: lines.append(_("Error reading file: %s") % str(e)) # header showing count if len(datasets) > 0: lines.append(_("Reloaded (%i)") % self.reloadct) self.reloadct += 1 # show errors in read data for var, count in errors.items(): if count: lines.append( _('%i conversions failed for dataset "%s"') % (count, var) ) # show successes # group datasets by linked file linked = set() for var in datasets: ds = self.document.data[var] linked.add(ds.linked) linked = [(l.filename, l) for l in linked] linked.sort(key=lambda x: x[0]) # list datasets for each linked file for lname, link in linked: lines.append('') lines.append(_('Linked to %s') % lname) for var in sorted(datasets): ds = self.document.data[var] if ds.linked is link: lines.append( ' %s: %s' % ( var, ds.description()) ) if len(datasets) == 0: lines.append(_('Nothing to do. No linked datasets.')) self.outputedit.setPlainText('\n'.join(lines)) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dialogs/stylesheet.py0000664000175000017500000001166714332253347016502 0ustar00jssjss# Copyright (C) 2009 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### from .. import utils from .. import qtall as qt from .. import document from ..windows.treeeditwindow import TabbedFormatting, PropertyList, \ SettingsProxySingle from .veuszdialog import VeuszDialog def _(text, disambiguation=None, context="StylesheetDialog"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) class StylesheetDialog(VeuszDialog): """This is a dialog box to edit stylesheets. Most of the work is done elsewhere, so this doesn't do a great deal """ def __init__(self, parent, document): VeuszDialog.__init__(self, parent, 'stylesheet.ui') self.document = document self.stylesheet = document.basewidget.settings.StyleSheet self.stylesListWidget.setMinimumWidth(100) # initial properties widget self.tabformat = None self.properties = None self.fillStyleList() self.stylesListWidget.currentItemChanged.connect( self.slotStyleItemChanged) self.stylesListWidget.setCurrentRow(0) # we disable default buttons as they keep grabbing the enter key close = self.buttonBox.button(qt.QDialogButtonBox.Close) close.setDefault(False) close.setAutoDefault(False) self.saveButton.clicked.connect(self.slotSaveStyleSheet) self.loadButton.clicked.connect(self.slotLoadStyleSheet) # recent button shows list of recently used files for loading self.recentButton.filechosen.connect(self.loadStyleSheet) self.recentButton.setSetting('stylesheetdialog_recent') def loadStyleSheet(self, filename): """Load the given stylesheet.""" self.document.applyOperation( document.OperationLoadStyleSheet(filename) ) def fillStyleList(self): """Fill list of styles.""" for stns in self.stylesheet.getSettingsList(): item = qt.QListWidgetItem( utils.getIcon(stns.pixmap), stns.usertext) item.VZsettings = stns self.stylesListWidget.addItem(item) def slotStyleItemChanged(self, current, previous): """Item changed in list of styles.""" if current is None: return if self.tabformat: self.tabformat.deleteLater() if self.properties: self.properties.deleteLater() settings = current.VZsettings # update formatting properties setnsproxy = SettingsProxySingle(self.document, settings) self.tabformat = TabbedFormatting(self.document, setnsproxy) self.formattingGroup.layout().addWidget(self.tabformat) # update properties self.properties = PropertyList(self.document, showformatsettings=False) self.properties.updateProperties(setnsproxy, showformatting=False) self.propertiesScrollArea.setWidget(self.properties) def slotSaveStyleSheet(self): """Save stylesheet as a file.""" filename = self.parent().fileSaveDialog( [_('Veusz stylesheet (*.vst)')], _('Save stylesheet')) if filename: try: f = open(filename, 'w') self.document.exportStyleSheet(f) f.close() self.recentButton.addFile(filename) except EnvironmentError as e: qt.QMessageBox.critical( self, _("Error - Veusz"), _("Unable to save '%s'\n\n%s") % ( filename, e.strerror)) def slotLoadStyleSheet(self): """Load a style sheet.""" filename = self.parent().fileOpenDialog( [_('Veusz stylesheet (*.vst)')], _('Load stylesheet')) if filename: try: self.loadStyleSheet(filename) except EnvironmentError as e: qt.QMessageBox.critical( self, _("Error - Veusz"), _("Unable to load '%s'\n\n%s") % ( filename, e.strerror)) else: # add to recent file list self.recentButton.addFile(filename) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/dialogs/veuszdialog.py0000664000175000017500000000437414332253347016642 0ustar00jssjss# Copyright (C) 2010 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Define a base dialog class cleans up self after being hidden.""" import os.path from .. import qtall as qt from .. import utils # register functions to open up dialogs to recreate a dataset recreate_register = {} class VeuszDialog(qt.QDialog): """Base dialog class. - Loads self from ui file. - Deletes self on closing. - Emits dialogFinished when dialog is done """ dialogFinished = qt.pyqtSignal(qt.QDialog) def __init__(self, mainwindow, uifile, modal=False): """Initialise dialog given Veusz mainwindow and uifile for dialog. If modal is False, base on a top level window instead """ flag = qt.Qt.Dialog if not modal: flag |= ( qt.Qt.CustomizeWindowHint | qt.Qt.WindowMinimizeButtonHint | qt.Qt.WindowMaximizeButtonHint | qt.Qt.WindowCloseButtonHint | qt.Qt.WindowTitleHint | qt.Qt.WindowSystemMenuHint ) qt.QDialog.__init__(self, mainwindow, flag) self.setAttribute(qt.Qt.WA_DeleteOnClose) qt.loadUi(os.path.join(utils.resourceDirectory, 'ui', uifile), self) self.mainwindow = mainwindow def hideEvent(self, event): """Emits dialogFinished if hidden.""" if not event.spontaneous(): self.dialogFinished.emit(self) return qt.QDialog.hideEvent(self, event) ././@PaxHeader0000000000000000000000000000003300000000000010211 xustar0027 mtime=1677426865.248521 veusz-3.6.2/veusz/document/0000775000175000017500000000000014376700261014120 5ustar00jssjss././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1633175785.0 veusz-3.6.2/veusz/document/__init__.py0000664000175000017500000000240314126044351016222 0ustar00jssjss# document __init__.py # Copyright (C) 2004 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## from .widgetfactory import * from .doc import * from .evaluate import * from .commandinterface import * from .commandinterpreter import * from .operations import * from .mime import * from .painthelper import * from .export import AsyncExport, printDialog from .dbusinterface import * from .loader import loadDocument, executeScript, LoadError ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/document/colors.py0000664000175000017500000003230214332253347015773 0ustar00jssjss# Copyright (C) 2017 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Store document colors.""" import re from .. import qtall as qt # match name of color themecolor_re = re.compile(r'^theme([1-9][0-9]*)$') # match extended color extendedcolor_re = re.compile('^#[0-9A-Fa-f]{8}$') def makeColor(name): """Make a new color, allowing extended hex format with extra two digits.""" m = extendedcolor_re.match(name) if m: col = qt.QColor(name[:7]) col.setAlpha( int(name[7:], 16) ) return col else: return qt.QColor(name) # Default color themes colorthemes = { # backward compatibility with old documents 'black': [ 'black', ], # black and colorbrewer sets 1 and 2 (minus yellow, as it doesn't show) 'default1': [ '#e41a1c', '#377eb8', '#4daf4a', '#984ea3', '#ff7f00', #'#ffff33', '#a65628', '#f781bf', '#999999', '#66c2a5', '#fc8d62', '#8da0cb', '#e78ac3', '#a6d854', '#ffd92f', '#e5c494', '#b3b3b3', ], # colorbrewer set 1 'colorbrewer1': [ '#e41a1c', '#377eb8', '#4daf4a', '#984ea3', '#ff7f00', '#ffff33', '#a65628', '#f781bf', '#999999', ], # colorbrewer set 2 'colorbrewer2': [ '#66c2a5', '#fc8d62', '#8da0cb', '#e78ac3', '#a6d854', '#ffd92f', '#e5c494', '#b3b3b3', ], # rgb 'rgb6': [ '#ff0000', '#00ff00', '#0000ff', '#ffff00', '#00ffff', '#ff00ff', ], # maximum dissimilar colors # taken from http://stackoverflow.com/questions/33295120/how-to-generate-gif-256-colors-palette 'max128': [ "#000000", "#FFFF00", "#1CE6FF", "#FF34FF", "#FF4A46", "#008941", "#006FA6", "#A30059", "#FFDBE5", "#7A4900", "#0000A6", "#63FFAC", "#B79762", "#004D43", "#8FB0FF", "#997D87", "#5A0007", "#809693", "#FEFFE6", "#1B4400", "#4FC601", "#3B5DFF", "#4A3B53", "#FF2F80", "#61615A", "#BA0900", "#6B7900", "#00C2A0", "#FFAA92", "#FF90C9", "#B903AA", "#D16100", "#DDEFFF", "#000035", "#7B4F4B", "#A1C299", "#300018", "#0AA6D8", "#013349", "#00846F", "#372101", "#FFB500", "#C2FFED", "#A079BF", "#CC0744", "#C0B9B2", "#C2FF99", "#001E09", "#00489C", "#6F0062", "#0CBD66", "#EEC3FF", "#456D75", "#B77B68", "#7A87A1", "#788D66", "#885578", "#FAD09F", "#FF8A9A", "#D157A0", "#BEC459", "#456648", "#0086ED", "#886F4C", "#34362D", "#B4A8BD", "#00A6AA", "#452C2C", "#636375", "#A3C8C9", "#FF913F", "#938A81", "#575329", "#00FECF", "#B05B6F", "#8CD0FF", "#3B9700", "#04F757", "#C8A1A1", "#1E6E00", "#7900D7", "#A77500", "#6367A9", "#A05837", "#6B002C", "#772600", "#D790FF", "#9B9700", "#549E79", "#FFF69F", "#201625", "#72418F", "#BC23FF", "#99ADC0", "#3A2465", "#922329", "#5B4534", "#FDE8DC", "#404E55", "#0089A3", "#CB7E98", "#A4E804", "#324E72", "#6A3A4C", "#83AB58", "#001C1E", "#D1F7CE", "#004B28", "#C8D0F6", "#A3A489", "#806C66", "#222800", "#BF5650", "#E83000", "#66796D", "#DA007C", "#FF1A59", "#8ADBB4", "#1E0200", "#5B4E51", "#C895C5", "#320033", "#FF6832", "#66E1D3", "#CFCDAC", "#D0AC94", "#7ED379", "#012C58", ], } # most up-to-date theme colorthemes['default-latest'] = colorthemes['default1'] class Colors(qt.QObject): """Document colors.""" sigColorsModified = qt.pyqtSignal() def __init__(self): qt.QObject.__init__(self) self.defaultnames = [ 'auto', 'foreground', 'background', 'transparent', 'white', 'black', 'red', 'green', 'blue', 'cyan', 'magenta', 'yellow', 'grey', 'darkred', 'darkgreen', 'darkblue', 'darkcyan', 'darkmagenta' ] # model for UI for choosing colors self.model = None # maximum index of colors in the current theme self.maxthemeidx = 1 # current theme self.colortheme = 'black' # names of colors in theme self.themenames = [] # setup default colors from theme self.wipe() # model for colors to use in qt widgets self.model = ColorModel(self, self) def wipe(self): self.colors = { # line and background colors 'foreground': '#000000', 'background': '#ffffff', 'transparent': '#ffffff00', # this is a special color with a special (fake) value 'auto': '#31323334', } # maximum color index used self.maxthemeidx = 1 # colors defined by user in custom definition self.definednames = [] # update the theme self.setColorTheme(self.colortheme) def addColor(self, color, val): """Add color to defined list.""" self.colors[color] = val self.definednames.append(color) # keep track of maximum theme index m = themecolor_re.match(color) if m: self.maxthemeidx = max(self.maxthemeidx, int(m.group(1))) def setColorTheme(self, theme): """Set color theme to name given. """ try: themecolors = colorthemes[theme] except KeyError: raise ValueError('Unknown color theme') self.colortheme = theme # delete old theme colors from dict defnset = set(self.definednames) for col in list(self.colors): if themecolor_re.match(col) and col not in defnset: del self.colors[col] # now add colors from theme (excluding defined colors) self.themenames = [] for i, col in enumerate(themecolors): key = 'theme%i' % (i+1) if key not in defnset: self.colors[key] = col self.themenames.append(key) # keep track of maximum theme index self.maxthemeidx = len(themecolors) for color in self.definednames: m = themecolor_re.match(color) if m: self.maxthemeidx = max(self.maxthemeidx, int(m.group(1))) self.updateModel() def updateModel(self): """Update user color model. Call after using addColor.""" if self.model is not None: self.model.updateColorList() def get(self, name): """Get QColor given name.""" if name in self.colors: name = self.colors[name] # special colors themeXXX, where XXX is a number from 1 # requires wrapping number according to the maximum definition m = themecolor_re.match(name) if m: idx = int(m.group(1)) name = self.getIndex(idx) # standard colors return makeColor(name) def getIndex(self, idx): """Get name of color by index given.""" try: # wrap index to maximum number of colors defined in theme wrapidx = (idx-1) % self.maxthemeidx + 1 return self.colors['theme%i' % wrapidx] except (ZeroDivisionError, KeyError): return 'foreground' class ColorModel(qt.QAbstractListModel): """This is a Qt model to get access to the complete list of colors.""" def __init__(self, parent, colors): qt.QAbstractListModel.__init__(self, parent) self.colors = colors # cache of icons for colors indexed by rgba value self.iconcache = {} # list of extra colors added during operation by user self.xtranames = [] # initialise list of colors self.colorlist = [] self.updateColorList() def rowCount(self, index): if index.isValid(): return 0 return len(self.colorlist) def makeIcon(self, color): """Make icon for color in cache.""" xw, yw = 16, 12 qcolor = self.colors.get(color) if color.lower() in ('auto', 'transparent'): # make a checkerboard pattern for special colors image = qt.QImage(xw, yw, qt.QImage.Format_RGB32) if color.lower() == 'auto': cnames = ['orange', 'skyblue', 'green'] else: cnames = ['lightgrey', 'darkgrey'] cols = [qt.QColor(c).rgba() for c in cnames] for x in range(xw): for y in range(yw): idx = (x//4 + y//4) % len(cols) image.setPixel(x, y, cols[idx]) pixmap = qt.QPixmap.fromImage(image) else: # solid color pixmap = qt.QPixmap(xw, yw) pixmap.fill(qcolor) icon = qt.QIcon(pixmap) self.iconcache[qcolor.rgba()] = icon def data(self, index, role): row = index.row() if row<0 or row>=len(self.colorlist): return None color = self.colorlist[index.row()] if role == qt.Qt.DisplayRole or role == qt.Qt.EditRole: return color elif role == qt.Qt.DecorationRole: # icons are cached using rgba as index rgba = self.colors.get(color).rgba() if rgba not in self.iconcache: self.makeIcon(color) return self.iconcache[rgba] return None def flags(self, index): if not index.isValid(): return qt.Qt.ItemIsEnabled return ( qt.QAbstractListModel.flags(self, index) | qt.Qt.ItemIsEditable) def setData(self, index, value, role): if role == qt.Qt.EditRole or role == qt.Qt.DisplayRole: row = index.row() if row>=0 and rowlen(self.colorlist): return False self.beginInsertRows(qt.QModelIndex(), row, row+count-1) self.colorlist = ( self.colorlist[:row] + ['']*count + self.colorlist[row:]) self.endInsertRows() return True def removeRows(self, row, count, parent): if count<=0 or row<0 or (row+count)>len(self.colorlist): return False self.beginRemoveRows(qt.QModelIndex(), row, row+count-1) self.colorlist = ( self.colorlist[:row] + self.colorlist[row+count:]) self.endRemoveRows() return True def updateColorList(self): """Update internal set of colors with updated set from Colors.""" curcols = self.colorlist oldset = set(curcols) # make list + set of new colors newcols = ( self.colors.defaultnames + self.colors.definednames + self.colors.themenames + self.xtranames) newset = set(newcols) # prune any duplicates if len(newcols) > len(newset): seen = set() out = [] for c in newcols: if c not in seen: out.append(c) seen.add(c) newcols = out # delete missing entries first i = 0 while i < len(curcols): col = curcols[i] if col not in newset: self.beginRemoveRows(qt.QModelIndex(), i, i) del curcols[i] self.endRemoveRows() else: i += 1 # add new entries for i, ncol in enumerate(newcols): if i == len(curcols) or curcols[i] != ncol: # maybe swap if i # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """ Definitions for command line interface """ import os.path import numpy as N from .. import qtall as qt from .. import setting from .. import embed from .. import plugins from .. import utils from .. import datasets from . import operations from . import mime from . import export def _(text, disambiguation=None, context='CommandInterface'): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) def registerImportCommand(name, method, filenamearg=0): """Add command to command interface.""" setattr(CommandInterface, name, method) CommandInterface.import_commands.append(name) CommandInterface.import_filenamearg[name] = filenamearg class CommandInterface(qt.QObject): """Class provides command interface.""" # commands which are safe in any script (excluding import commands) safe_commands = [ 'Action', 'Add', 'AddCustom', 'AddImportPath', 'CurrentPath', 'CloneWidget', 'SetCompatLevel', 'CreateHistogram', 'DatasetPlugin', 'FilterDatasets', 'Get', 'GetChildren', 'GetColormap', 'GetData', 'GetDataType', 'GetDatasets', 'ImportFITSFile', 'List', 'NodeChildren', 'NodeType', 'ReloadData', 'Remove', 'RemoveCustom', 'Rename', 'ResolveReference', 'Set', 'SetData', 'SetData2D', 'SetData2DExpression', 'SetData2DExpressionXYZ', 'SetData2DXYFunc', 'SetDataDateTime', 'SetDataExpression', 'SetDataND', 'SetDataRange', 'SetDataText', 'SetToReference', 'SetVerbose', 'SettingType', 'TagDatasets', 'To', 'WidgetType', ] # commands for importing data import_commands = [] # number of argument which contains filename import_filenamearg = {} # commands which can modify disk, etc unsafe_commands = [ 'Export', 'Print', 'Save', ] def __init__(self, document): """Initialise the interface.""" qt.QObject.__init__(self) self.document = document self.currentwidget = self.document.basewidget self.verbose = False self.importpath = [] self.document.sigWiped.connect(self.slotWipedDoc) self.Root = embed.WidgetNode(self, 'widget', '/') @qt.pyqtSlot() def slotWipedDoc(self): """When the document is wiped, we change to the root widget.""" self.To('/') def findFileOnImportPath(self, filename): """Find file on path, returning filename, or original if not found.""" for path in self.importpath: fname = os.path.join(path, filename) try: # try to open file to make sure we have access to it and # it exists opened = open(fname) opened.close() return fname except EnvironmentError: pass return filename def SetVerbose(self, v=True): """Specify whether we want verbose output after operations.""" self.verbose = v def Add(self, widgettype, **args_opt): """Add a widget to the widget with the type given. optional arguments: widget: widget path to place widget in autoadd: if True (default), any subwidgets associated with widget are created automatically setting names, e.g. leftMargin='1cm', Border_color='red' """ at = self.currentwidget if 'widget' in args_opt: at = self.document.resolveWidgetPath( self.currentwidget, args_opt['widget']) del args_opt['widget'] op = operations.OperationWidgetAdd(at, widgettype, **args_opt) w = self.document.applyOperation(op) if self.verbose: print(_("Added a widget of type '%s' (%s)") % (type, w.userdescription)) return w.name def AddCustom(self, ctype, name, val, mode='appendalways'): """Add a custom definition for evaluation of expressions. This can define a constant (can be in terms of other constants), a function of 1 or more variables, or a function imported from an external python module. ctype is "constant", "function", "definition" (either constant or function), "import", "color" or "colormap". name is name of constant, color or colormap, "function(x, y, ...)" or module name. val is definition for constant or function (both are _strings_), or is a list of symbols for a module (comma separated items in a string). For a colormap, val is a list of 4-item tuples containing R,G,B,alpha values from 0 to 255. For a color this is a string with the format '#RRGGBB' or '#RRGGBBAA'. if mode is 'appendalways', the custom value is appended to the end of the list even if there is one with the same name. If mode is 'replace', it replaces any existing definition in the same place in the list or is appended otherwise. If mode is 'append', then an existing definition is deleted, and the new one appended to the end. """ if ctype == 'colormap': self.document.evaluate.validateProcessColormap(val) else: if not isinstance(val, str): raise RuntimeError('Value should be string') if mode not in ('appendalways', 'append', 'replace'): raise RuntimeError('Invalid mode') try: attr = operations.OperationSetCustom.type_to_attr[ctype] except KeyError: raise RuntimeError('Invalid type') vals = list(getattr(self.document.evaluate, attr)) item = [name.strip(), val] if mode == 'appendalways': vals.append(item) else: # find any existing item for i, (n, v) in enumerate(vals): if n == name: if mode == 'append': del vals[i] vals.append(item) else: # replace vals[i] = item break else: # no existing item, so append vals.append(item) op = operations.OperationSetCustom(ctype, vals) self.document.applyOperation(op) def AddImportPath(self, directory): """Add directory to import file path.""" assert isinstance(directory, str) self.importpath.append(directory) def CloneWidget(self, widget, newparent, newname=None): """Clone the widget given, placing the copy in newparent and the name given. newname is an optional new name to give it Returns new widget path """ widget = self.document.resolveWidgetPath(self.currentwidget, widget) newparent = self.document.resolveWidgetPath(self.currentwidget, newparent) op = mime.OperationWidgetClone(widget, newparent, newname) w = self.document.applyOperation(op) return w.path def CreateHistogram(self, inexpr, outbinsds, outvalsds, binparams=None, binmanual=None, method='counts', cumulative = 'none', errors=False): """Histogram an input expression. inexpr is input expression outbinds is the name of the dataset to create giving bin positions outvalsds is name of dataset for bin values binparams is None or (numbins, minval, maxval, islogbins) binmanual is None or a list of bin values method is 'counts', 'density', or 'fractions' cumulative is to calculate cumulative distributions which is 'none', 'smalltolarge' or 'largetosmall' errors is to calculate Poisson error bars """ op = operations.OperationDatasetHistogram( inexpr, outbinsds, outvalsds, binparams=binparams, binmanual=binmanual, method=method, cumulative=cumulative, errors=errors) self.document.applyOperation(op) if self.verbose: print(_( 'Constructed histogram of "%s", creating datasets' ' "%s" and "%s"') % (inexpr, outbinsds, outvalsds) ) def CurrentPath(self): """Return the current path (set by To()).""" return self.currentwidget.path def DatasetPlugin(self, pluginname, fields, datasetnames={}): """Use a dataset plugin. pluginname: name of plugin to use fields: dict of input values to plugin datasetnames: dict mapping old names to new names of datasets if they are renamed. The new name None means dataset is deleted.""" # lookup plugin (urgh) plugin = None for pkls in plugins.datasetpluginregistry: if pkls.name == pluginname: plugin = pkls() break if plugin is None: raise RuntimeError("Cannot find dataset plugin '%s'" % pluginname) # do the work op = operations.OperationDatasetPlugin( plugin, fields, datasetnames=datasetnames) outdatasets = self.document.applyOperation(op) if self.verbose: print(_( "Used dataset plugin %s to make datasets %s") % ( pluginname, ', '.join(outdatasets)) ) def Remove(self, name): """Remove a widget from the dataset.""" w = self.document.resolveWidgetPath(self.currentwidget, name) op = operations.OperationWidgetDelete(w) self.document.applyOperation(op) if self.verbose: print(_("Removed widget '%s'") % name) def RemoveCustom(self, name): """Removes a custom-defined constant, function or import.""" # look for definiton and delete if found for ctype, attr in ( ('import', 'def_imports'), ('definition', 'def_definitions'), ('color', 'def_colors'), ('colormap', 'def_colormaps')): vals = list(getattr(self.document.evaluate, attr)) for i, (cname, cval) in enumerate(vals): if name == cname: del vals[i] op = operations.OperationSetCustom(ctype, vals) self.document.applyOperation(op) return else: raise ValueError('Custom variable not defined') def To(self, where): """Change to a widget within the current widget. where is a path to the widget relative to the current widget """ self.currentwidget = self.document.resolveWidgetPath( self.currentwidget, where) if self.verbose: print(_("Changed to widget '%s'") % self.currentwidget.path) def List(self, where='.'): """List the contents of a widget, by default the current widget.""" widget = self.document.resolveWidgetPath(self.currentwidget, where) children = widget.childnames if len(children) == 0: print('%30s' % _('No children found')) else: # output format name, type for name in children: w = widget.getChild(name) print('%10s %10s %30s' % (name, w.typename, w.userdescription)) def Get(self, var): """Get the value of a setting.""" return self.document.resolveSettingPath(self.currentwidget, var).val def GetChildren(self, where='.'): """Return a list of widgets which are children of the widget of the path given.""" return list( self.document.resolveWidgetPath(self.currentwidget, where).childnames ) def GetColormap(self, name, invert=False, nvals=256): """Return an array of [red,green,blue,alpha] values representing the colormap with the name given. Each return value is between 0 and 255. The number of values to return is given by nvals """ cmap = self.document.evaluate.getColormap(name, invert) return utils.getColormapArray(cmap, nvals) def GetDatasets(self): """Return a list of names of datasets.""" return sorted(self.document.data) def ResolveReference(self, setn): """If the setting is set to a reference, follow the chain of references to return the absolute path to the real setting. If it is not a reference return None. """ setn = self.document.resolveSettingPath(self.currentwidget, setn) if setn.isReference(): real = setn.getReference().resolve(setn) return real.path else: return None def Save(self, filename, mode='vsz'): """Save the state to a file. mode can be: 'vsz': standard veusz text format 'hdf5': HDF5 format """ self.document.save(filename, mode) def Set(self, setting_path, val): """Set the value of a setting.""" setn = self.document.resolveSettingPath(self.currentwidget, setting_path) op = operations.OperationSettingSet(setn, val) self.document.applyOperation(op) if self.verbose: print( _("Set setting '%s' to %s") % (setting_path, repr(setn.get())) ) def SetToReference(self, setting_path, val): """Set setting to a reference value.""" setn = self.document.resolveSettingPath(self.currentwidget, setting_path) op = operations.OperationSettingSet(setn, setting.Reference(val)) self.document.applyOperation(op) if self.verbose: print( _( "Set setting '%s' to %s") % (setting_path, repr(setn.get())) ) def SetCompatLevel(self, level): """Set the compatibility level. As a side effect, this wipes any widgets in the document and resets all settings. If level<0, then choose the latest version """ self.document.setCompatLevel(level) def SetData(self, name, val, symerr=None, negerr=None, poserr=None): """Create/set dataset name with values (and optionally errors).""" data = datasets.Dataset(val, symerr, negerr, poserr) op = operations.OperationDatasetSet(name, data) self.document.applyOperation(op) if self.verbose: print( _( "Set dataset '%s':\n" " Values = %s\n" " Symmetric errors = %s\n" " Negative errors = %s\n" " Positive errors = %s" ) % ( name, str(data.data), str(data.serr), str(data.nerr), str(data.perr) ) ) def SetDataDateTime(self, name, vals): """Set datetime dataset to be values given. vals is a list of python datetime objects """ v = [utils.datetimeToFloat(x) for x in vals] ds = datasets.DatasetDateTime(v) op = operations.OperationDatasetSet(name, ds) self.document.applyOperation(op) if self.verbose: print( _("Set dataset '%s':\n" " Values = %s") % ( name, str(ds.data)) ) def SetDataExpression(self, name, val, symerr=None, negerr=None, poserr=None, linked=False, parametric=None): """Create a dataset based on text expressions. Expressions are functions of existing datasets. If evaluating the expression 'y*10' in negerr, then the negerrs of dataset y are used, and so on. To access a specific part of the dataset y, the suffixes _data, _serr, _perr, and _nerr can be appended. If linked is True then the expressions are reevaluated if the document is modified parametric: tuple of (minval, maxval, numitems) for creating parametric datasets. t set to this range when evaluating expressions. """ expr = {'data': val, 'serr': symerr, 'nerr': negerr, 'perr': poserr} op = operations.OperationDatasetCreateExpression(name, expr, linked, parametric=parametric) data = self.document.applyOperation(op) if self.verbose: print( _( "Set dataset '%s' based on expression:\n" " Values = %s\n" " Symmetric errors = %s\n" " Negative errors = %s\n" " Positive errors = %s" ) % ( name, str(data.data), str(data.serr), str(data.nerr), str(data.perr)) ) if parametric: print(_(" Where t goes form %g:%g in %i steps") % parametric) print(_(" linked to expression = %s") % repr(linked)) def SetDataND(self, name, val): """Set n-dimensional dataset name with values.""" data = datasets.DatasetND(val) op = operations.OperationDatasetSet(name, data) self.document.applyOperation(op) if self.verbose: print( _("Set dataset (nD) '%s':\n" " Values = %s\n") % ( name, str(data.data)) ) def SetDataRange(self, name, numsteps, val, symerr=None, negerr=None, poserr=None, linked=False): """Create dataset based on ranges of values, e.g. 1 to 10 in 10 steps name: name of dataset numsteps: number of steps to create val: range in form of tuple (minval, maxval) symerr, negerr & poserr: ranges for errors (optional) """ parts = {'data': val, 'serr': symerr, 'nerr': negerr, 'perr': poserr} op = operations.OperationDatasetCreateRange( name, numsteps, parts, linked) self.document.applyOperation(op) if self.verbose: print( _( "Set dataset '%s' based on range:\n" " Number of steps = %i\n" " Range of data = %s\n" " Range of symmetric error = %s\n" " Range of positive error = %s\n" " Range of negative error = %s" ) % ( name, numsteps, repr(val), repr(symerr), repr(poserr), repr(negerr)) ) def SetData2DExpression(self, name, expr, linked=False): """Create a 2D dataset based on expressions name is the new dataset name expr is an expression which should return a 2D array linked specifies whether to permanently link the dataset to the expressions """ op = operations.OperationDataset2DCreateExpression(name, expr, linked) data = self.document.applyOperation(op) if self.verbose: print( _( "Set 2D dataset '%s' based on expressions\n" " expression = %s\n" " linked to expression = %s\n" " Made a dataset (%i x %i)" ) % ( name, repr(expr), repr(linked), data.data.shape[0], data.data.shape[1]) ) def SetData2DExpressionXYZ(self, name, xexpr, yexpr, zexpr, linked=False): """Create a 2D dataset based on expressions in x, y and z xexpr is an expression which expands to an equally-spaced grid of x coordinates yexpr expands to equally spaced y coordinates zexpr expands to z coordinates. linked specifies whether to permanently link the dataset to the expressions """ op = operations.OperationDataset2DCreateExpressionXYZ(name, xexpr, yexpr, zexpr, linked) data = self.document.applyOperation(op) if self.verbose: print( _( "Made 2D dataset '%s' based on expressions:\n" " X expression = %s\n" " Y expression = %s\n" " Z expression = %s\n" " is linked to expression = %s\n" " Shape (%i x %i)" ) % ( name, repr(xexpr), repr(yexpr), repr(zexpr), repr(linked), data.data.shape[0], data.data.shape[1]) ) def SetData2DXYFunc(self, name, xstep, ystep, expr, linked=False): """Create a 2D dataset based on expressions of a range of x and y xstep is a tuple(min, max, step) ystep is a tuple(min, max, step) expr is an expression of x and y linked specifies whether to permanently link the dataset to the expressions """ op = operations.OperationDataset2DXYFunc(name, xstep, ystep, expr, linked) data = self.document.applyOperation(op) if self.verbose: print( _( "Set 2D dataset '%s' based on function of x and y\n" " X steps = %s\n" " Y steps = %s\n" " Expression = %s\n" " linked to expression = %s\n" " Made a dataset (%i x %i)" ) % ( name, repr(xstep), repr(ystep), repr(expr), repr(linked), data.data.shape[0], data.data.shape[1]) ) def SetData2D(self, name, data, xrange=None, yrange=None, xedge=None, yedge=None, xcent=None, ycent=None): """Create a 2D dataset. name: name of dataset data: 2d array xrange: optional tuple with X range of data (min, max) yrange: optional tuple with Y range of data (min, max) xedge: x values for grid (instead of rangex) yedge: y values for grid (instead of rangey) xcent: x values for pixel centres (instead of rangex) ycent: y values for pixel centres (instead of rangey) """ data = N.array(data) if ( (xedge is not None and not utils.checkAscending(xedge)) or (yedge is not None and not utils.checkAscending(yedge)) ): raise ValueError("xedge and yedge must be ascending, if given") if ( (xcent is not None and not utils.checkAscending(xcent)) or (ycent is not None and not utils.checkAscending(ycent)) ): raise ValueError("xcent and ycent must be ascending, if given") if ( (xedge is not None and len(xedge) != data.shape[1]+1) or (yedge is not None and len(yedge) != data.shape[0]+1) ): raise ValueError("xedge and yedge lengths must be data shape+1") if ( (xcent is not None and len(xcent) != data.shape[1]) or (ycent is not None and len(ycent) != data.shape[0]) ): raise ValueError("xcent and ycent lengths must be data shape") data = datasets.Dataset2D( data, xrange=xrange, yrange=yrange, xedge=xedge, yedge=yedge, xcent=xcent, ycent=ycent) op = operations.OperationDatasetSet(name, data) self.document.applyOperation(op) if self.verbose: print(_("Set 2d dataset '%s'") % name) def SetDataText(self, name, val): """Create a text dataset.""" data = datasets.DatasetText(val) op = operations.OperationDatasetSet(name, data) self.document.applyOperation(op) if self.verbose: print( _("Set text dataset '%s'\nValues = %s") % ( name, repr(data.data)) ) def GetData(self, name): """Return the data with the name. For a 1D dataset, returns a tuple (None if not defined) (data, serr, nerr, perr) For a 2D dataset, returns (data, xrange, yrange) For an nD dataset returns data array For a text dataset, return a list of text For a date dataset, return a list of python datetime objects Return copies, so that the original data can't be indirectly modified """ d = self.document.getData(name) if d.displaytype == 'text': return d.data[:] elif d.displaytype == 'date': return [utils.floatToDateTime(x) for x in d.data] elif d.dimensions == 2: return (d.data.copy(), d.xrange, d.yrange) elif d.dimensions == -1: return d.data.copy() else: data = serr = nerr = perr = None if d.data is not None: data = d.data.copy() if d.serr is not None: serr = d.serr.copy() if d.nerr is not None: nerr = d.nerr.copy() if d.perr is not None: perr = d.perr.copy() return (data, serr, nerr, perr) def GetDataType(self, name): """Return the type of dataset. Returns None if no dataset. For a 1D dataset, returns '1d' For a 2D dataset, returns '2d' For a text dataset, returns 'text' For a datetime dataset, returns 'datetime' """ try: d = self.document.getData(name) except KeyError: return None if d.displaytype == 'text': return 'text' elif d.displaytype == 'date': return 'datetime' elif d.dimensions == 2: return '2d' else: return '1d' def ReloadData(self): """Reload any linked datasets. Returned is a tuple (datasets, errors) where datasets is a list of datasets read errors is a dict of the datasets with the number of errors while converting the data """ return self.document.reloadLinkedDatasets() def Action(self, action, widget='.'): """Performs action on current widget.""" w = self.document.resolveWidgetPath(self.currentwidget, widget) # run action w.getAction(action).function() def Print(self): """Print document.""" export.printDialog(None, self.document) def Export(self, filename, color=True, page=[0], dpi=100, antialias=True, quality=85, backcolor='#ffffff00', pdfdpi=150, svgdpi=96, svgtextastext=False): """Export plot to filename. color is True or False if color is requested in output file page is a list of page numbers to export dpi is the number of dots per inch for bitmap output files antialias antialiases output if True quality is a quality parameter for jpeg output backcolor is the background color for bitmap files, which is a name or a #RRGGBBAA value (red, green, blue, alpha) pdfdpi is the dpi to use when exporting eps or pdf files svgdpi is the dpi to use when exporting svg files svgtextastext: write text in SVG as text, rather than curves """ # compatibility where page was a single number try: pages = [p for p in page] except TypeError: pages = [page] e = export.AsyncExport( self.document, color=color, bitmapdpi=dpi, antialias=antialias, quality=quality, backcolor=backcolor, pdfdpi=pdfdpi, svgdpi=svgdpi, svgtextastext=svgtextastext ) e.add(filename, pages) e.finish() def Rename(self, widget, newname): """Rename the widget with the path given to the new name. eg Rename('graph1/xy1', 'scatter') This function does not move widgets.""" w = self.document.resolveWidgetPath(self.currentwidget, widget) op = operations.OperationWidgetRename(w, newname) self.document.applyOperation(op) def NodeType(self, path): """This function treats the set of objects in the widget and setting tree as a set of nodes. Returns type of node given. Return values are: 'widget', 'settings' or 'setting' """ item = self.document.resolvePath(self.currentwidget, path) if item.iswidget: return 'widget' elif item.issettings: return 'settinggroup' else: return 'setting' def NodeChildren(self, path, types='all'): """This function treats the set of objects in the widget and setting tree as a set of nodes. Returns a list of the names of the children of this node.""" item = self.document.resolvePath(self.currentwidget, path) out = [] if item.iswidget: if types == 'all' or types == 'widget': out += item.childnames if types == 'all' or types == 'settinggroup': out += [s.name for s in item.settings.getSettingsList()] if types == 'all' or types == 'setting': out += [s.name for s in item.settings.getSettingList()] elif item.issettings: if types == 'all' or types == 'settinggroup': out += [s.name for s in item.getSettingsList()] if types == 'all' or types == 'setting': out += [s.name for s in item.getSettingList()] return out def WidgetType(self, path): """Get the Veusz widget type for a widget with path given. Raises a ValueError if the path doesn't point to a widget.""" item = self.document.resolvePath(self.currentwidget, path) if item.iswidget: return item.typename else: raise ValueError("Path '%s' is not a widget" % path) def SettingType(self, setting_path): """Get the type of setting (a string) for the path given. Raise a ValueError if path is not a setting """ setn = self.document.resolveSettingPath(self.currentwidget, setting_path) return setn.typename def TagDatasets(self, tag, datasets): """Apply tag to list of datasets.""" op = operations.OperationDataTag(tag, datasets) self.document.applyOperation(op) if self.verbose: print(_("Applied tag %s to datasets %s") % ( tag, ' '.join(datasets))) def FilterDatasets(self, filterexpr, dataset_list, prefix="", suffix="", invert=False, replaceblanks=False): """Apply filter expression to list of datasets. filterexpr: input filter expression dataset_list: list of input dataset names prefix, suffix: output prefix/suffix to add to names (one must be set) invert: invert results of filter expression replaceblanks: replace filtered values with nan/blank in output. """ op = operations.OperationDatasetsFilter( filterexpr, dataset_list, prefix=prefix, suffix=suffix, invert=invert, replaceblanks=replaceblanks) self.document.applyOperation(op) if self.verbose: print( _( 'Filtered datasets %s using expression %s. ' 'Output prefix=%s, suffix=%s' ) % ( dataset_list, filterexpr, prefix, suffix) ) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/document/commandinterpreter.py0000664000175000017500000002137514332253347020404 0ustar00jssjss# commandinterpreter.py # this module handles the command line interface interpreter # Copyright (C) 2004 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """ A module for the execution of user 'macro' code inside a special environment. That way the commandline can be used to interact with the app without worrying about the app internals. The way this works is to create an evironment specific to the class consisting of globals & locals. Commands can be run inside the environment. Python errors are trapped and dumped out to stderr. stderr and stdout can be reassigned in the environment to point to an alternative interface. They should point to objects providing a write() interface. This class is modelled on the one described in 'GUI Programming in Python: QT Edition' (Boudewijn Rempt) """ # get globals before things are imported _globals = globals() import sys import traceback import io import os.path import pickle from .commandinterface import CommandInterface from .. import utils class CommandInterpreter: """Class for executing commands in the Veusz command line language.""" def __init__(self, document): """ Initialise object with the document it interfaces.""" self.document = document # set up interface to document self.interface = CommandInterface(document) # initialise environment (make a copy from inital globals) self.globals = _globals.copy() # save the stdout & stderr self.write_stdout = sys.stdout self.write_stderr = sys.stderr self.read_stdin = sys.stdin # import numpy into the environment exec("from numpy import *", self.globals) # define root object self.globals['Root'] = self.interface.Root # shortcut ifc = self.interface # define commands for interface self.cmds = {} for cmd in ( CommandInterface.safe_commands + CommandInterface.unsafe_commands + CommandInterface.import_commands): self.cmds[cmd] = getattr(ifc, cmd) self.cmds['GPL'] = self.GPL self.cmds['Load'] = self.Load self.globals.update( self.cmds ) def addCommand(self, name, command): """Add the given command to the list of available commands.""" self.cmds[name] = command self.globals[name] = command def setFiles(self, stdout, stderr, stdin): """Assign the environment input/output files.""" self.write_stdout = stdout self.write_stderr = stderr self.read_stdin = stdin def _pythonise(self, text): """Internal routine to convert commands in the form Cmd a b c into Cmd(a,b,c).""" out = '' # iterate over lines for line in text.split('\n'): parts = line.split() # turn Cmd a b c into Cmd(a,b,c) if len(parts) != 0 and parts[0] in self.cmds: line = utils.pythonise(line) out += line + '\n' return out def run(self, inputcmds, filename = None): """ Run a set of commands inside the preserved environment. inputcmds: a string with the commands to run filename: a filename to report if there are errors """ if filename is None: filename = '' # pythonise! inputcmds = self._pythonise(inputcmds) # ignore if blank if len(inputcmds.strip()) == 0: return # preserve output streams saved = sys.stdout, sys.stderr, sys.stdin sys.stdout, sys.stderr, sys.stdin = ( self.write_stdout, self.write_stderr, self.read_stdin) # count number of newlines in expression # If it's 2, then execute as a single statement (print out result) if inputcmds.count('\n') == 2: stattype = 'single' else: stattype = 'exec' # first compile the code to check for syntax errors try: c = compile(inputcmds, filename, stattype) except (OverflowError, ValueError, SyntaxError): info = sys.exc_info() backtrace = traceback.format_exception(*info) for line in backtrace: sys.stderr.write(line) else: # block update signals from document while updating with self.document.suspend(): try: # execute the code exec(c, self.globals) except: # print out the backtrace to stderr info = sys.exc_info() backtrace = traceback.format_exception(*info) for line in backtrace: sys.stderr.write(line) # return output streams sys.stdout, sys.stderr, sys.stdin = saved def Load(self, filename): """Replace the document with a new one from the filename.""" with io.open(filename, 'r', encoding='utf8') as f: self.document.wipe() self.interface.To('/') oldfile = self.globals['__file__'] absfname = os.path.abspath(filename) self.globals['__file__'] = absfname self.interface.importpath.append( os.path.dirname(os.path.abspath(filename))) self.runFile(f) self.interface.importpath.pop() self.globals['__file__'] = oldfile self.document.filename = absfname self.document.setModified() self.document.setModified(False) self.document.clearHistory() def runFile(self, fileobject): """ Run a file in the preserved environment.""" # preserve output streams temp_stdout = sys.stdout temp_stderr = sys.stderr sys.stdout = self.write_stdout sys.stderr = self.write_stderr with self.document.suspend(): # actually run the code try: exec(fileobject.read(), self.globals) except Exception: # print out the backtrace to stderr info = sys.exc_info() backtrace = traceback.format_exception(*info) for line in backtrace: sys.stderr.write(line) # return output streams sys.stdout = temp_stdout sys.stderr = temp_stderr def evaluate(self, expression): """Evaluate an expression in the environment.""" # preserve output streams temp_stdout = sys.stdout temp_stderr = sys.stderr sys.stdout = self.write_stdout sys.stderr = self.write_stderr # actually run the code try: retn = eval(expression, self.globals) except Exception: # print out the backtrace to stderr info = sys.exc_info() backtrace = traceback.format_exception(*info) for line in backtrace: sys.stderr.write(line) retn = None # return output streams sys.stdout = temp_stdout sys.stderr = temp_stderr return retn def GPL(self): """Write the GPL to the console window.""" sys.stdout.write( utils.getLicense() ) def runPickle(self, command): """Run a pickled command given as arguments. command should consist of following: dumps( (name, args, namedargs) ) name is name of function to execute in environment args are the arguments (list) namedargs are the named arguments (dict). """ name, args, namedargs = pickle.loads(command) self.globals['_tmp_args0'] = args self.globals['_tmp_args1'] = namedargs #print(name, args, namedargs) try: retn = eval('%s(*_tmp_args0, **_tmp_args1)' % name) except Exception as e: # return exception picked if exception retn = e del self.globals['_tmp_args0'] del self.globals['_tmp_args1'] return pickle.dumps(retn) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/document/dbusinterface.py0000664000175000017500000002466714332253347017327 0ustar00jssjss# Copyright (C) 2011 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """DBus interface to Veusz document.""" import numpy as N from ..utils import vzdbus from . import commandinterpreter class DBusInterface(vzdbus.Object): """DBus interface to Veusz document command interface.""" _ctr = 1 interface = 'org.veusz.document' def __init__(self, doc): root = '/Windows/%i/Document' % DBusInterface._ctr # possible exception in dbus means we have to check sessionbus if vzdbus.sessionbus is not None: vzdbus.Object.__init__(self, vzdbus.sessionbus, root) self.index = DBusInterface._ctr DBusInterface._ctr += 1 self.cmdinter = commandinterpreter.CommandInterpreter(doc) self.ci = self.cmdinter.interface @vzdbus.method(dbus_interface=interface, in_signature='s') def RunPython(self, cmdstr): return self.cmdinter.run(cmdstr) @vzdbus.method(dbus_interface=interface, in_signature='sa{sv}') def Action(self, action, optargs): return self.ci.Action(action, **optargs) @vzdbus.method(dbus_interface=interface, in_signature='sa{sv}', out_signature='s') def Add(self, wtype, optargs): return self.ci.Add(wtype, **optargs) @vzdbus.method(dbus_interface=interface, in_signature='sssa{sv}') def AddCustom(self, thetype, name, val, argsv): self.ci.AddCustom(thetype, name, val, **argsv) @vzdbus.method(dbus_interface=interface, in_signature='s') def AddImportPath(self, dirname): self.ci.AddImportPath(str(dirname)) @vzdbus.method(dbus_interface=interface, in_signature='ssa{sv}', out_signature='s') def CloneWidget(self, widget, newparent, optargs): return self.ci.CloneWidget(str(widget), str(newparent), **optargs) @vzdbus.method(dbus_interface=interface, in_signature='sssa{sv}') def CreateHistogram(self, inexpr, outbinsds, outvalsds, optargs): self.ci.CreateHistogram(str(inexpr), str(outbinsds), str(outvalsds), **optargs) @vzdbus.method(dbus_interface=interface, in_signature='sa{sv}a{sv}') def DatasetPlugin(self, pluginname, fields, datasetnames): self.ci.DatasetPlugin(str(pluginname), fields, datasetnames) @vzdbus.method(dbus_interface=interface, in_signature='sa{sv}') def Export(self, filename, optargs): self.ci.Export(filename, **optargs) @vzdbus.method(dbus_interface=interface, in_signature='s', out_signature='v') def Get(self, val): return self.ci.Get(val) @vzdbus.method(dbus_interface=interface, in_signature='s', out_signature='as') def GetChildren(self, where): return self.ci.GetChildren(where=where) @vzdbus.method(dbus_interface=interface, in_signature='s', out_signature='adadadad') def GetData1D(self, datasetname): """Get a numeric dataset. Returns lists of numeric values for data, symmetric error, negative error and positive error.""" def lornull(l): """Get blank list if None or convert to list otherwise.""" if l is None: return [] return list(l) data, serr, nerr, perr = self.ci.GetData(str(datasetname)) return lornull(data), lornull(serr), lornull(nerr), lornull(perr) @vzdbus.method(dbus_interface=interface, in_signature='s', out_signature='iiddddad') def GetData2D(self, datasetname): """Get a 2D dataset. Returns (X dim, Y dim, rangex min, rangex max, rangey min, rangey max, data (as 1d numeric array)) """ data = self.ci.GetData(str(datasetname)) return ( data[0].shape[1], data[0].shape[0], data[1][0], data[1][1], data[2][0], data[2][1], list(data[0].flat) ) @vzdbus.method(dbus_interface=interface, in_signature='s', out_signature='as') def GetDataText(self, datasetname): """Get a text dataset as an array of strings.""" return self.ci.GetData(str(datasetname)) @vzdbus.method(dbus_interface=interface, out_signature='as') def GetDatasets(self): return self.ci.GetDatasets() @vzdbus.method(dbus_interface=interface, in_signature='ssa{sv}') def ImportFile(self, filename, descriptor, optargs): self.ci.ImportFile(filename, descriptor, **optargs) @vzdbus.method(dbus_interface=interface, in_signature='sasa{sv}') def ImportFile2D(self, filename, datasetnames, optargs): self.ci.ImportFile2D(filename, datasetnames, **optargs) @vzdbus.method(dbus_interface=interface, in_signature='sa{sv}') def ImportFileCSV(self, filename, optargs): self.ci.ImportFileCSV(filename, **optargs) @vzdbus.method(dbus_interface=interface, in_signature='sssa{sv}') def ImportFITSFile(self, dsname, filename, hdu, optargs): self.ci.ImportFITSFile(filename, **optargs) @vzdbus.method(dbus_interface=interface, in_signature='ssa{sv}') def ImportFilePlugin(self, plugin, filename, optargs): self.ci.ImportFilePlugin(plugin, filename, **optargs) @vzdbus.method(dbus_interface=interface, in_signature='ssa{sv}') def ImportString(self, descriptor, string, optargs): self.ci.ImportString(str(descriptor), str(string), **optargs) @vzdbus.method(dbus_interface=interface, in_signature='s') def Load(self, filename): self.cmdinter.Load(filename) @vzdbus.method(dbus_interface=interface) def Print(self): self.ci.Print() @vzdbus.method(dbus_interface=interface) def ReloadData(self): self.ci.ReloadData() @vzdbus.method(dbus_interface=interface, in_signature='ss') def Rename(self, widget, newname): self.ci.Rename( str(widget), str(newname) ) @vzdbus.method(dbus_interface=interface, in_signature='s') def Remove(self, name): self.ci.Remove(str(name)) @vzdbus.method(dbus_interface=interface, in_signature='s') def RemoveCustom(self, name): self.ci.RemoveCustom(str(name)) @vzdbus.method(dbus_interface=interface, in_signature='s', out_signature='s') def ResolveReference(self, name): return self.ci.ResolveReference(str(name)) @vzdbus.method(dbus_interface=interface, in_signature='s') def Save(self, filename): self.ci.Save(str(filename)) @vzdbus.method(dbus_interface=interface, in_signature='sv') def Set(self, name, val): return self.ci.Set(str(name), val) @vzdbus.method(dbus_interface=interface, in_signature='ss') def SetToReference(self, name, val): return self.ci.SetToReference(str(name), str(val)) @vzdbus.method(dbus_interface=interface, in_signature='sadadadad') def SetData(self, name, data, symerr, negerr, poserr): if not symerr: symerr = None if not negerr: negerr = None if not poserr: poserr = None self.ci.SetData(str(name), data, symerr, negerr, poserr) @vzdbus.method(dbus_interface=interface, in_signature='ssssa{sv}') def SetData2DExpressionXYZ(self, name, xexpr, yexpr, zexpr, optargs): self.ci.SetData2DExpressionXYZ(str(name), xexpr, yexpr, zexpr, **optargs) @vzdbus.method(dbus_interface=interface, in_signature='s(ddd)(ddd)sa{sv}') def SetData2DXYFunc(self, name, xstep, ystep, expr, optargs): self.ci.SetData2DXYFunc(str(name), xstep, ystep, expr, **optargs) @vzdbus.method(dbus_interface=interface, in_signature='sadii(dd)(dd)') def SetData2D(self, name, data, nx, ny, xrange, yrange): data = N.array(data).reshape(nx, ny) self.ci.SetData2D(str(name), data, xrange=xrange, yrange=yrange) @vzdbus.method(dbus_interface=interface, in_signature='ssa{sv}') def SetDataExpression(self, name, val, optargs): self.ci.SetDataExpression(str(name), val, **optargs) @vzdbus.method(dbus_interface=interface, in_signature='sas') def SetDataText(self, name, val): val = [str(x) for x in val] self.ci.SetDataText(str(name), val) @vzdbus.method(dbus_interface=interface, in_signature='sas') def TagDatasets(self, tag, datasets): self.ci.TagDatasets(str(tag), datasets) @vzdbus.method(dbus_interface=interface, in_signature='s') def To(self, path): self.ci.To(path) # node interface @vzdbus.method(dbus_interface=interface, in_signature='ss', out_signature='as') def NodeChildren(self, path, types): return self.ci.NodeChildren(path, types) @vzdbus.method(dbus_interface=interface, in_signature='s', out_signature='s') def NodeType(self, path): return self.ci.NodeType(path) @vzdbus.method(dbus_interface=interface, in_signature='s', out_signature='s') def SettingType(self, path): return self.ci.SettingType(path) @vzdbus.method(dbus_interface=interface, in_signature='s', out_signature='s') def WidgetType(self, path): return self.ci.WidgetType(path) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/document/doc.py0000664000175000017500000005503314332253347015245 0ustar00jssjss# document.py # A module to handle documents # Copyright (C) 2004 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """A class to represent Veusz documents, with dataset classes.""" import codecs import os.path import traceback import datetime from io import StringIO from collections import defaultdict try: import h5py except ImportError: h5py = None from .. import qtall as qt from . import widgetfactory from . import painthelper from . import evaluate from .. import datasets from .. import utils from .. import setting def _(text, disambiguation=None, context="Document"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) def getSuitableParent(widgettype, initialwidget): """Find the nearest relevant parent for the widgettype given.""" # find the parent to add the child to, we go up the tree looking # for possible parents parent = initialwidget wc = widgetfactory.thefactory.getWidgetClass(widgettype) while parent is not None and not wc.willAllowParent(parent): parent = parent.parent return parent class DocSuspend: """Handle document updates/suspensions.""" def __init__(self, doc): self.doc = doc def __enter__(self): self.doc.suspendUpdates() return self def __exit__(self, type, value, traceback): self.doc.enableUpdates() class Document(qt.QObject): """Document class for holding the graph data. """ pluginsloaded = False # this is emitted when the document is modified signalModified = qt.pyqtSignal(int) # emited to log a message sigLog = qt.pyqtSignal(str) # emitted when document wiped sigWiped = qt.pyqtSignal() # to ask whether an import is allowed sigAllowedImports = qt.pyqtSignal() # security value set sigSecuritySet = qt.pyqtSignal(bool) # compatibility level maxcompatlevel = 1 def __init__(self): """Initialise the document.""" qt.QObject.__init__( self ) if not Document.pluginsloaded: Document.loadPlugins() Document.pluginsloaded = True # change tracking of document as a whole self.changeset = 0 # increased when the document changes self.compatlevel = 0 # for non-backward compatible changes # map tags to dataset names self.datasettags = defaultdict(list) # if set, do not notify listeners of updates # wait under enableUpdates self.suspendupdates = [] # default document locale self.locale = qt.QLocale() # evaluation context self.evaluate = evaluate.Evaluate(self) self.clearHistory() self.wipe() def wipe(self): """Wipe out any stored data.""" self.data = {} self.basewidget = widgetfactory.thefactory.makeWidget( 'document', None, self) self.setModified(False) self.filename = "" self.evaluate.wipe() self.sigWiped.emit() def clearHistory(self): """Clear any history.""" self.historybatch = [] self.historyundo = [] self.historyredo = [] def suspendUpdates(self): """Holds sending update messages. This speeds up modification of the document and prevents the document from being updated on the screen.""" self.suspendupdates.append(self.changeset) def enableUpdates(self): """Reenables document updates.""" changeset = self.suspendupdates.pop() if not self.suspendupdates and changeset != self.changeset: # bump this up as some watchers might ignore this otherwise self.changeset += 1 self.setModified() def suspend(self): """Return context manager for suspending updates.""" return DocSuspend(self) def setCompatLevel(self, level): """Update the compatiblity level. If level<0, then use latest version """ if level < 0: level = self.maxcompatlevel elif level > self.maxcompatlevel: raise ValueError( "Compatibility level greater than supported by this Veusz version") self.compatlevel = level self.basewidget.makeStylesheet(compatlevel=self.compatlevel) def makeDefaultDoc(self, mode='graph', compatlevel=-1): """Add default widgets to create document. mode == 'graph', 'polar', 'ternary' or 'graph3d' """ self.setCompatLevel(compatlevel) page = widgetfactory.thefactory.makeWidget( 'page', self.basewidget, self) if mode == 'graph3d': scene = widgetfactory.thefactory.makeWidget('scene3d', page, self) widgetfactory.thefactory.makeWidget('graph3d', scene, self) else: assert mode in ('graph', 'polar', 'ternary') widgetfactory.thefactory.makeWidget(mode, page, self) self.setModified() self.setModified(False) self.changeset = 0 self.evaluate.setSecurity(True) def log(self, message): """Log a message - this is emitted as a signal.""" self.sigLog.emit(message) def applyOperation(self, operation, redoing=False): """Apply operation to the document. Operations represent atomic actions which can be done to the document and undone. Updates are suspended during the operation. If redoing is not True, the redo stack is cleared """ with DocSuspend(self): retn = operation.do(self) self.changeset += 1 if self.historybatch: # in batch mode, create an OperationMultiple for all changes self.historybatch[-1].addOperation(operation) else: # standard mode self.historyundo = self.historyundo[-9:] + [operation] if not redoing: self.historyredo = [] return retn def batchHistory(self, batch): """Enable/disable batch history mode. In this mode further operations are added to the OperationMultiple specified, until batchHistory is called with None. The objects are pushed into a list and popped off This allows multiple operations to be batched up for simple undo. """ if batch: self.historybatch.append(batch) else: self.historybatch.pop() def undoOperation(self): """Undo the previous operation.""" operation = self.historyundo.pop() with DocSuspend(self): operation.undo(self) self.changeset += 1 self.historyredo.append(operation) def canUndo(self): """Returns True if previous operation can be removed.""" return len(self.historyundo) != 0 def redoOperation(self): """Redo undone operations.""" operation = self.historyredo.pop() return self.applyOperation(operation, redoing=True) def canRedo(self): """Returns True if previous operation can be redone.""" return len(self.historyredo) != 0 def isBlank(self): """Is the document unchanged?""" return self.changeset == 0 def setData(self, name, dataset): """Set dataset in document.""" self.data[name] = dataset dataset.document = self # update the change tracking self.setModified() def deleteData(self, name): """Remove a dataset""" del self.data[name] self.setModified() def modifiedData(self, dataset): """Notify dataset was modified""" assert dataset in self.data.values() self.setModified() def getLinkedFiles(self, filenames=None): """Get a list of LinkedFile objects used by the document. if filenames is a set, only get the objects with filenames given """ links = set() for ds in self.data.values(): if ds.linked and ( filenames is None or ds.linked.filename in filenames): links.add(ds.linked) return list(links) def reloadLinkedDatasets(self, filenames=None): """Reload linked datasets from their files. If filenames is a set(), only reload from these filenames Returns a tuple of - List of datasets read - Dict of tuples containing dataset names and number of errors """ links = self.getLinkedFiles(filenames=filenames) read = [] errors = {} # load in the files, merging the vars read and errors if links: with self.suspend(): for lf in links: nread, nerrors = lf.reloadLinks(self) read += nread errors.update(nerrors) self.setModified() read.sort() return (read, errors) def datasetName(self, dataset): """Find name for given dataset, raising ValueError if missing.""" for name, ds in self.data.items(): if ds is dataset: return name raise ValueError("Cannot find dataset") def renameDataset(self, oldname, newname): """Rename the dataset.""" d = self.data[oldname] del self.data[oldname] self.data[newname] = d self.setModified() def getData(self, name): """Get data with name""" return self.data[name] def setModified(self, ismodified=True): """Set the modified flag on the data, and inform views.""" # useful for tracking back modifications # import traceback # traceback.print_stack() self.modified = ismodified self.changeset += 1 if len(self.suspendupdates) == 0: self.signalModified.emit(ismodified) def isModified(self): """Return whether modified flag set.""" return self.modified @classmethod def loadPlugins(kls, pluginlist=None): """Load plugins and catch exceptions.""" if pluginlist is None: pluginlist = setting.settingdb.get('plugins', []) for plugin in pluginlist: try: with open(plugin) as f: exec(f.read(), {}) except Exception: err = _('Error loading plugin %s\n\n%s') % ( plugin, traceback.format_exc()) raise RuntimeError(err) def paintTo(self, painthelper, page): """Paint page specified to the paint helper.""" self.basewidget.draw(painthelper, page) def getNumberPages(self): """Return the number of pages in the document.""" return len(self.basewidget.children) def getVisiblePages(self): """Return list of 0-indexed numbers of visible pages.""" return [ i for i, pg in enumerate(self.basewidget.children) if not pg.settings.hide ] def getPage(self, pagenumber): """Return widget for page.""" return self.basewidget.children[pagenumber] def datasetTags(self): """Get list of all tags in datasets.""" tags = set() for dataset in self.data.values(): tags.update(dataset.tags) return sorted(tags) def _writeFileHeader(self, fileobj, type): """Write a header to a saved file of type.""" fileobj.write('# Veusz %s (version %s)\n' % (type, utils.version())) fileobj.write( '# Saved at %s\n\n' % datetime.datetime.utcnow().isoformat()) def saveDatasetTags(self, fileobj): """Write dataset tags to output file""" # get a list of all tags and which datasets have them bytag = defaultdict(list) for name, dataset in sorted(self.data.items()): for t in dataset.tags: bytag[t].append(name) # write out tags for tag, val in sorted(bytag.items()): fileobj.write( 'TagDatasets(%s, %s)\n' % (utils.rrepr(tag), utils.rrepr(val))) def saveToFile(self, fileobj): """Save the text representing a document to a file. The ordering can be important, as some things override previous steps: - Tagging doesn't work if the dataset isn't already defined. - Loading from files may bring in new datasets which override defined datasets, so save links first """ self._writeFileHeader(fileobj, 'saved document') # write compatibility level fileobj.write('SetCompatLevel(%s)\n' % self.compatlevel) # add file directory to import path if we know it reldirname = None if getattr(fileobj, 'name', False): reldirname = os.path.dirname( os.path.abspath(fileobj.name) ) if setting.settingdb['docfile_addimportpaths']: fileobj.write('AddImportPath(%s)\n' % utils.rrepr(reldirname)) # save those datasets which are linked # we do this first in case the datasets are overridden below savedlinks = {} for name, dataset in sorted(self.data.items()): dataset.saveLinksToSavedDoc(fileobj, savedlinks, relpath=reldirname) # save the remaining datasets for name, dataset in sorted(self.data.items()): dataset.saveToFile(fileobj, name) # save tags of datasets self.saveDatasetTags(fileobj) # add custom definitions self.evaluate.saveCustomDefinitions(fileobj) # save the actual tree structure fileobj.write(self.basewidget.getSaveText()) self.setModified(False) def saveToHDF5File(self, fileobj): """Save to HDF5 (h5py) output file given.""" # groups in output hdf5 vszgrp = fileobj.create_group('Veusz') vszgrp.attrs['vsz_version'] = utils.version() vszgrp.attrs['vsz_saved_at'] = datetime.datetime.utcnow().isoformat() vszgrp.attrs['vsz_format'] = 1 # version number (currently unused) datagrp = vszgrp.create_group('Data') docgrp = vszgrp.create_group('Document') textstream = StringIO() self._writeFileHeader(textstream, 'saved document') # add file directory to import path if we know it reldirname = None if getattr(fileobj, 'filename', False): reldirname = os.path.dirname( os.path.abspath(fileobj.filename) ) textstream.write('AddImportPath(%s)\n' % utils.rrepr(reldirname)) # add custom definitions self.evaluate.saveCustomDefinitions(textstream) # save those datasets which are linked # we do this first in case the datasets are overridden below savedlinks = {} for name, dataset in sorted(self.data.items()): dataset.saveLinksToSavedDoc( textstream, savedlinks, relpath=reldirname) # save the remaining datasets for name, dataset in sorted(self.data.items()): dataset.saveToFile(textstream, name, mode='hdf5', hdfgroup=datagrp) # handle tagging # get a list of all tags and which datasets have them bytag = defaultdict(list) for name, dataset in sorted(self.data.items()): for t in dataset.tags: bytag[t].append(name) # write out tags as datasets tagsgrp = docgrp.create_group('Tags') for tag, dsnames in sorted(bytag.items()): tagsgrp[tag] = [v.encode('utf-8') for v in sorted(dsnames)] # save the actual tree structure textstream.write(self.basewidget.getSaveText()) # create single dataset contains document docgrp['document'] = [ textstream.getvalue().encode('utf-8') ] self.setModified(False) def save(self, filename, mode='vsz'): """Save to output file. mode is 'vsz' or 'hdf5' """ if mode == 'vsz': with codecs.open(filename, 'w', 'utf-8') as f: self.saveToFile(f) elif mode == 'hdf5': if h5py is None: raise RuntimeError('Missing h5py module') with h5py.File(filename, 'w') as f: self.saveToHDF5File(f) else: raise RuntimeError('Invalid save mode') self.filename = filename def load(self, filename, mode='vsz', callbackunsafe=None, callbackimporterror=None): """Load document from file. mode is 'vsz' or 'hdf5' """ from . import loader loader.loadDocument( self, filename, mode=mode, callbackunsafe=callbackunsafe, callbackimporterror=callbackimporterror) def exportStyleSheet(self, fileobj): """Export the StyleSheet to a file.""" self._writeFileHeader(fileobj, 'exported stylesheet') stylesheet = self.basewidget.settings.StyleSheet fileobj.write( stylesheet.saveText(True, rootname='') ) def _pagedocsize(self, widget, dpi, scaling, integer): """Helper for page or doc size.""" if dpi is None: p = qt.QPixmap(1, 1) dpi = (p.logicalDpiX(), p.logicalDpiY()) helper = painthelper.PaintHelper(self, (1,1), dpi=dpi) w = widget.settings.get('width').convert(helper) * scaling h = widget.settings.get('height').convert(helper) * scaling if integer: return int(w), int(h) else: return w, h def pageSize(self, pagenum, dpi=None, scaling=1., integer=True): """Get the size of a particular page in pixels. If dpi is None, use the default Qt screen dpi Use dpi if given.""" page = self.basewidget.getPage(pagenum) if page is None: return self.docSize(dpi=dpi, scaling=scaling, integer=integer) return self._pagedocsize( page, dpi=dpi, scaling=scaling, integer=integer) def docSize(self, dpi=None, scaling=1., integer=True): """Get size for document.""" return self._pagedocsize( self.basewidget, dpi=dpi, scaling=scaling, integer=integer) def resolvePath(self, fromobj, path): """Resolve item relative to fromobj. If fromobj is None, then an absolute path is assumed. Returns a widget, setting or settings as appropriate. """ # where to search from obj = self.basewidget if (path[:1]=='/' or fromobj is None) else fromobj # iterate over path parts for p in path.split('/'): if p == '..': p = obj.parent if p is None: raise ValueError("Base graph has no parent") obj = p elif p == '.' or len(p) == 0: pass elif obj.iswidget: if p in obj.settings: obj = obj.settings.get(p) else: widget = obj.getChild(p) if widget is None: raise ValueError("Widget has no child %s" % p) obj = widget elif obj.issettings: try: obj = obj.get(p) except KeyError: raise ValueError("Settings has no child %s" % p) else: raise ValueError("Item has no children") return obj def resolveWidgetPath(self, fromobj, path): """Resolve path to Widget. If fromobj is None, then is resolved to root widget. Raises ValueError if path is invalid or not to widget. """ obj = self.resolvePath(fromobj, path) if not obj.iswidget: raise ValueError("Not path to widget") return obj def resolveSettingPath(self, fromobj, path): """Resolve path to Setting. If fromobj is None, then is resolved to root widget. Raises ValueError if path is invalid or not to Setting. """ obj = self.resolvePath(fromobj, path) if not obj.issetting: raise ValueError("Not path to setting") return obj def walkNodes(self, tocall, root=None, nodetypes=('widget', 'setting', 'settings'), _path=None): """Walk the widget/settings/setting nodes in the document. For each one call tocall(path, node). nodetypes is tuple of possible node types """ if root is None: root = self.basewidget if _path is None: _path = root.path if root.nodetype in nodetypes: tocall(_path, root) if root.nodetype == 'widget': # get rid of // at start of path if _path == '/': _path = '' # do the widget's children for w in root.children: self.walkNodes( tocall, root=w, nodetypes=nodetypes, _path=_path+'/'+w.name) # then do the widget's settings self.walkNodes( tocall, root=root.settings, nodetypes=nodetypes, _path=_path) elif root.nodetype == 'settings': # do the settings of the settings for name, s in sorted(root.setdict.items()): self.walkNodes( tocall, root=s, nodetypes=nodetypes, _path=_path+'/'+s.name) # elif root.nodetype == 'setting': pass def formatValsWithDatatypeToText(self, vals, displaydatatype): """Given a set of values, datatype, return a list of strings corresponding to these data.""" if displaydatatype == 'text': return vals elif displaydatatype == 'numeric': return [ utils.formatNumber(val, '%Vg', locale=self.locale) for val in vals ] elif displaydatatype == 'date': return [ utils.dateFloatToString(val) for val in vals ] else: raise RuntimeError('Invalid data type') ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/document/emf_export.py0000664000175000017500000003056614332253347016654 0ustar00jssjss# Copyright (C) 2009 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """A paint engine to produce EMF exports. Requires: PyQt-x11-gpl-4.6-snapshot-20090906.tar.gz sip-4.9-snapshot-20090906.tar.gz pyemf """ import struct import pyemf3 import pyemf3.emr from .. import qtall as qt inch_mm = 25.4 scale = 100 def isStockObject(obj): """Is this a stock windows object.""" return (obj & 0x80000000) != 0 class EMFPaintEngine(qt.QPaintEngine): """Custom EMF paint engine.""" def __init__(self, width_in, height_in, dpi=75): qt.QPaintEngine.__init__( self, qt.QPaintEngine.Antialiasing | qt.QPaintEngine.PainterPaths | qt.QPaintEngine.PrimitiveTransform | qt.QPaintEngine.PaintOutsidePaintEvent | qt.QPaintEngine.PatternBrush ) self.width = width_in self.height = height_in self.dpi = dpi def begin(self, paintdevice): self.emf = pyemf3.EMF(self.width, self.height, int(self.dpi*scale)) self.pen = self.emf.GetStockObject(pyemf3.BLACK_PEN) self.pencolor = (0, 0, 0) self.brush = self.emf.GetStockObject(pyemf3.NULL_BRUSH) self.paintdevice = paintdevice return True def drawLines(self, lines): """Draw lines to emf output.""" for line in lines: self.emf.Polyline( [ (int(line.x1()*scale), int(line.y1()*scale)), (int(line.x2()*scale), int(line.y2()*scale)) ] ) def drawPolygon(self, points, mode): """Draw polygon on output.""" # print "Polygon" pts = [(int(p.x()*scale), int(p.y()*scale)) for p in points] if mode == qt.QPaintEngine.PolylineMode: self.emf.Polyline(pts) else: self.emf.SetPolyFillMode({ qt.QPaintEngine.WindingMode: pyemf3.WINDING, qt.QPaintEngine.OddEvenMode: pyemf3.ALTERNATE, qt.QPaintEngine.ConvexMode: pyemf3.WINDING }) self.emf.Polygon(pts) def drawEllipse(self, rect): """Draw an ellipse.""" # print "ellipse" args = ( int(rect.left()*scale), int(rect.top()*scale), int(rect.right()*scale), int(rect.bottom()*scale), int(rect.left()*scale), int(rect.top()*scale), int(rect.left()*scale), int(rect.top()*scale), ) self.emf.Pie(*args) self.emf.Arc(*args) def drawPoints(self, points): """Draw points.""" # print "points" for pt in points: x, y = (pt.x()-0.5)*scale, (pt.y()-0.5)*scale self.emf.Pie( int(x), int(y), int((pt.x()+0.5)*scale), int((pt.y()+0.5)*scale), int(x), int(y), int(x), int(y) ) def drawPixmap(self, r, pixmap, sr): """Draw pixmap to display.""" # convert pixmap to BMP format bytearr = qt.QByteArray() buf = qt.QBuffer(bytearr) buf.open(qt.QIODevice.WriteOnly) pixmap.save(buf, "BMP") bmp = bytes(buf.data()) self.emf.BitmapOut( int(r.left()*scale), int(r.top()*scale), int(r.width()*scale), int(r.bottom()*scale), int(sr.left()), int(sr.top()), int(sr.width()), int(sr.height()), bmp, ) def _createPath(self, path): """Convert qt path to emf path""" self.emf.BeginPath() count = path.elementCount() i = 0 #print "Start path" while i < count: e = path.elementAt(i) if e.type == qt.QPainterPath.MoveToElement: self.emf.MoveTo( int(e.x*scale), int(e.y*scale) ) #print "M", e.x*scale, e.y*scale elif e.type == qt.QPainterPath.LineToElement: self.emf.LineTo( int(e.x*scale), int(e.y*scale) ) #print "L", e.x*scale, e.y*scale elif e.type == qt.QPainterPath.CurveToElement: e1 = path.elementAt(i+1) e2 = path.elementAt(i+2) params = ( ( int(e.x*scale), int(e.y*scale) ), ( int(e1.x*scale), int(e1.y*scale) ), ( int(e2.x*scale), int(e2.y*scale) ), ) self.emf.PolyBezierTo(params) #print "C", params i += 2 else: assert False i += 1 ef = path.elementAt(0) el = path.elementAt(count-1) if ef.x == el.x and ef.y == el.y: self.emf.CloseFigure() #print "closing" self.emf.EndPath() def drawPath(self, path): """Draw a path on the output.""" # print "path" self._createPath(path) self.emf.StrokeAndFillPath() def drawTextItem(self, pt, textitem): """Convert text to a path and draw it. """ # print "text", pt, textitem.text() path = qt.QPainterPath() path.addText(pt, textitem.font(), textitem.text()) fill = self.emf.CreateSolidBrush(self.pencolor) self.emf.SelectObject(fill) self._createPath(path) self.emf.FillPath() self.emf.SelectObject(self.brush) self.emf.DeleteObject(fill) def end(self): return True def saveFile(self, filename): self.emf.save(filename) def _updatePen(self, pen): """Update the pen to the currently selected one.""" # line style style = { qt.Qt.NoPen: pyemf3.PS_NULL, qt.Qt.SolidLine: pyemf3.PS_SOLID, qt.Qt.DashLine: pyemf3.PS_DASH, qt.Qt.DotLine: pyemf3.PS_DOT, qt.Qt.DashDotLine: pyemf3.PS_DASHDOT, qt.Qt.DashDotDotLine: pyemf3.PS_DASHDOTDOT, qt.Qt.CustomDashLine: pyemf3.PS_USERSTYLE, }[pen.style()] if style != pyemf3.PS_NULL: # set cap style style |= { qt.Qt.FlatCap: pyemf3.PS_ENDCAP_FLAT, qt.Qt.SquareCap: pyemf3.PS_ENDCAP_SQUARE, qt.Qt.RoundCap: pyemf3.PS_ENDCAP_ROUND, }[pen.capStyle()] # set join style style |= { qt.Qt.MiterJoin: pyemf3.PS_JOIN_MITER, qt.Qt.BevelJoin: pyemf3.PS_JOIN_BEVEL, qt.Qt.RoundJoin: pyemf3.PS_JOIN_ROUND, qt.Qt.SvgMiterJoin: pyemf3.PS_JOIN_MITER, }[pen.joinStyle()] # use proper widths of lines style |= pyemf3.PS_GEOMETRIC width = int(pen.widthF()*scale) qc = pen.color() color = (qc.red(), qc.green(), qc.blue()) self.pencolor = color if pen.style() == qt.Qt.CustomDashLine: # custom dash pattern dash = [int(pen.widthF()*scale*f) for f in pen.dashPattern()] else: dash = None newpen = self.emf.CreatePen(style, width, color, styleentries=dash) self.emf.SelectObject(newpen) # delete old pen if it is not a stock object if not isStockObject(self.pen): self.emf.DeleteObject(self.pen) self.pen = newpen def _updateBrush(self, brush): """Update to selected brush.""" style = brush.style() qc = brush.color() color = (qc.red(), qc.green(), qc.blue()) # print "brush", color if style == qt.Qt.SolidPattern: newbrush = self.emf.CreateSolidBrush(color) elif style == qt.Qt.NoBrush: newbrush = self.emf.GetStockObject(pyemf3.NULL_BRUSH) else: try: hatch = { qt.Qt.HorPattern: pyemf3.HS_HORIZONTAL, qt.Qt.VerPattern: pyemf3.HS_VERTICAL, qt.Qt.CrossPattern: pyemf3.HS_CROSS, qt.Qt.BDiagPattern: pyemf3.HS_BDIAGONAL, qt.Qt.FDiagPattern: pyemf3.HS_FDIAGONAL, qt.Qt.DiagCrossPattern: pyemf3.HS_DIAGCROSS }[brush.style()] except KeyError: newbrush = self.emf.CreateSolidBrush(color) else: newbrush = self.emf.CreateHatchBrush(hatch, color) self.emf.SelectObject(newbrush) if not isStockObject(self.brush): self.emf.DeleteObject(self.brush) self.brush = newbrush def _updateClipPath(self, path, operation): """Update clipping path.""" # print "clip" if operation != qt.Qt.NoClip: self._createPath(path) clipmode = { qt.Qt.ReplaceClip: pyemf3.RGN_COPY, qt.Qt.IntersectClip: pyemf3.RGN_AND, }[operation] else: # is this the only wave to get rid of clipping? self.emf.BeginPath() self.emf.MoveTo(0,0) w = int(self.width*self.dpi*scale) h = int(self.height*self.dpi*scale) self.emf.LineTo(w, 0) self.emf.LineTo(w, h) self.emf.LineTo(0, h) self.emf.CloseFigure() self.emf.EndPath() clipmode = pyemf3.RGN_COPY self.emf.SelectClipPath(mode=clipmode) def _updateTransform(self, m): """Update transformation.""" self.emf.SetWorldTransform( m.m11(), m.m12(), m.m21(), m.m22(), m.dx()*scale, m.dy()*scale) def updateState(self, state): """Examine what has changed in state and call apropriate function.""" ss = state.state() if ss & qt.QPaintEngine.DirtyPen: self._updatePen(state.pen()) if ss & qt.QPaintEngine.DirtyBrush: self._updateBrush(state.brush()) if ss & qt.QPaintEngine.DirtyTransform: self._updateTransform(state.transform()) if ss & qt.QPaintEngine.DirtyClipPath: self._updateClipPath(state.clipPath(), state.clipOperation()) if ss & qt.QPaintEngine.DirtyClipRegion: path = qt.QPainterPath() path.addRegion(state.clipRegion()) self._updateClipPath(path, state.clipOperation()) def type(self): return qt.QPaintEngine.PostScript class EMFPaintDevice(qt.QPaintDevice): """Paint device for EMF paint engine.""" def __init__(self, width_in, height_in, dpi=75): qt.QPaintDevice.__init__(self) self.engine = EMFPaintEngine(width_in, height_in, dpi=dpi) def paintEngine(self): return self.engine def metric(self, m): """Return the metrics of the painter.""" if m == qt.QPaintDevice.PdmWidth: return int(self.engine.width * self.engine.dpi) elif m == qt.QPaintDevice.PdmHeight: return int(self.engine.height * self.engine.dpi) elif m == qt.QPaintDevice.PdmWidthMM: return int(self.engine.width * inch_mm) elif m == qt.QPaintDevice.PdmHeightMM: return int(self.engine.height * inch_mm) elif m == qt.QPaintDevice.PdmNumColors: return 2147483647 elif m == qt.QPaintDevice.PdmDepth: return 24 elif m == qt.QPaintDevice.PdmDpiX: return int(self.engine.dpi) elif m == qt.QPaintDevice.PdmDpiY: return int(self.engine.dpi) elif m == qt.QPaintDevice.PdmPhysicalDpiX: return int(self.engine.dpi) elif m == qt.QPaintDevice.PdmPhysicalDpiY: return int(self.engine.dpi) elif m == qt.QPaintDevice.PdmDevicePixelRatio: return 1 # Qt >= 5.6 elif m == getattr(qt.QPaintDevice, 'PdmDevicePixelRatioScaled', -1): return 1 else: # fall back return qt.QPaintDevice.metric(self, m) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/document/evaluate.py0000664000175000017500000003625014332253347016306 0ustar00jssjss# Copyright (C) 2016 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## import os.path import re import datetime import numpy as N from . import colors from .. import setting from .. import utils from .. import datasets from .. import qtall as qt # python identifier identifier_re = re.compile(r'^[A-Za-z_][A-Za-z0-9_]*$') # for splitting identifier_split_re = re.compile(r'[A-Za-z_][A-Za-z0-9_]*') # python module module_re = re.compile(r'^[A-Za-z_\.]+$') # function(arg1, arg2...) for custom functions # not quite correct as doesn't check for commas in correct places function_re = re.compile(r''' ^([A-Za-z_][A-Za-z0-9_]*)[ ]* # identifier \(( # begin args (?: [ ]* ,? [ ]* [A-Za-z_][A-Za-z0-9_]* )* # named args (?: [ ]* ,? [ ]* \*[A-Za-z_][A-Za-z0-9_]* )? # *args (?: [ ]* ,? [ ]* \*\*[A-Za-z_][A-Za-z0-9_]* )? # **kwargs )\)$ # endargs''', re.VERBOSE) def _(text, disambiguation=None, context="Evaluate"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) # Notes on Security # ----------------- # Security states: # * Secure # - if new document # - if loaded from secure location # - or allow set in dialog # * Insecure (skip in dialog) # Security context: # * Executing statements when loading # * Importing functions # * Evaluating expressions (non checking Python) class Evaluate: """Class to manage evaluation of expressions in a special environment.""" def __init__(self, doc): self.doc = doc # directories to examine when importing self.importpath = [] self.wipe() def wipe(self): """Clear current customs.""" # store custom functions and constants # consists of tuples of (name, type, value) # type is constant or function # we use this format to preserve evaluation order self.def_imports = [] self.def_definitions = [] self.def_colors = [] self.def_colormaps = [] # this is the context used to evaluate expressions self.context = {} # copy default colormaps self.colormaps = utils.ColorMaps() self.colors = colors.Colors() self.update() # copies of validated compiled expressions self.compiled = {} self.compfailed = set() self.compfailedchangeset = -1 # cached expressions which have been already evaluated as datasets self.exprdscache = {} self.exprdscachechangeset = None # whether we hit security tests self.setSecurity(False) def update(self): """To be called after custom constants or functions are changed. This sets up a safe environment where things can be evaluated """ c = self.context c.clear() # add numpy things # we try to avoid various bits and pieces for safety for name, val in N.__dict__.items(): if ( (callable(val) or type(val)==float) and name not in __builtins__ and name[:1] != '_' and name[-1:] != '_' ): c[name] = val # safe functions c['os_path_join'] = os.path.join c['os_path_dirname'] = os.path.dirname c['veusz_markercodes'] = tuple(utils.MarkerCodes) # helpful functions for expansion c['ENVIRON'] = dict(os.environ) c['DATE'] = self._evalformatdate c['TIME'] = self._evalformattime c['DATA'] = self._evaldata c['FILENAME'] = self._evalfilename c['BASENAME'] = self._evalbasename c['ESCAPE'] = utils.latexEscape c['SETTING'] = self._evalsetting c['LANG'] = self._evallang for name, val in self.def_imports: self._updateImport(name, val) for name, val in self.def_definitions: self._updateDefinition(name, val) self.colors.wipe() for name, val in self.def_colors: self.colors.addColor(name, val) self.colors.updateModel() self.colormaps.wipe() for name, val in self.def_colormaps: self._updateColormap(name, val) def setSecurity(self, secure): """Updated the security context.""" oldsecure = getattr(self, 'secure_document', False) self.secure_document = secure self.doc.sigSecuritySet.emit(secure) if not oldsecure and secure: # if we're now secure, and were not previously, update # context self.exprdscache = {} self.exprdscachechangeset = None self.update() def updateSecurityFromPath(self): """Make document secure if in a secure location.""" filename = self.doc.filename absfilename = os.path.abspath(filename) paths = setting.settingdb['secure_dirs'] + [ utils.exampleDirectory] for dirname in paths: absdirname = os.path.abspath(dirname) if absfilename.startswith(absdirname + os.sep): self.setSecurity(True) def inSecureMode(self): """Is the document in a safe location?""" return ( setting.transient_settings['unsafe_mode'] or self.secure_document ) def _updateImport(self, module, val): """Add an import statement to the eval function context.""" if module_re.match(module): # work out what is safe to import symbols = identifier_split_re.findall(val) if self._checkImportsSafe(): if symbols: defn = 'from %s import %s' % ( module, ', '.join(symbols)) try: exec(defn, self.context) except Exception: self.doc.log(_( "Failed to import '%s' from module '%s'") % ( ', '.join(symbols), module)) return else: defn = 'import %s' % module try: exec(defn, self.context) except Exception: self.doc.log(_( "Failed to import module '%s'") % module) return else: if not symbols: self.doc.log(_("Did not import module '%s'") % module) else: self.doc.log(_( "Did not import '%s' from module '%s'") % ( ', '.join(list(symbols)), module)) else: self.doc.log( _("Invalid module name '%s'") % module ) def validateProcessColormap(self, colormap): """Validate and process a colormap value. Returns a list of B,G,R,alpha tuples or raises ValueError if a problem.""" try: if len(colormap) < 2: raise ValueError( _("Need at least two entries in colormap") ) except TypeError: raise ValueError( _("Invalid type for colormap") ) out = [] for entry in colormap: if entry == (-1,0,0,0): out.append(entry) continue for v in entry: try: v - 0 except TypeError: raise ValueError( _("Colormap entries should be numerical") ) if v < 0 or v > 255: raise ValueError( _("Colormap entries should be between 0 and 255") ) if len(entry) == 3: out.append( (int(entry[2]), int(entry[1]), int(entry[0]), 255) ) elif len(entry) == 4: out.append( (int(entry[2]), int(entry[1]), int(entry[0]), int(entry[3])) ) else: raise ValueError( _( "Each colormap entry consists of R,G,B " "and optionally alpha values") ) return tuple(out) def _updateColormap(self, name, val): """Add a colormap entry.""" try: cmap = self.validateProcessColormap(val) except ValueError as e: self.doc.log( str(e) ) else: self.colormaps[ str(name) ] = cmap def _updateDefinition(self, name, val): """Update a function or constant in eval function context.""" if identifier_re.match(name): defn = val else: m = function_re.match(name) if not m: self.doc.log( _("Invalid function or constant specification '%s'") % name) return name = m.group(1) args = m.group(2) defn = 'lambda %s: %s' % (args, val) # evaluate, but we ignore any unsafe commands or exceptions comp = self.compileCheckedExpression(defn) if comp is None: return try: self.context[name] = eval(comp, self.context) except Exception as e: self.doc.log( _( "Error evaluating '%s': '%s'") % (name, str(e)) ) def compileCheckedExpression(self, expr, origexpr=None, log=True): """Compile expression and check for errors. origexpr is an expression to show in error messages. This is used if replacements have been done, etc. """ try: return self.compiled[expr] except KeyError: pass # track failed compilations, so we only print them once if self.compfailedchangeset != self.doc.changeset: self.compfailedchangeset = self.doc.changeset self.compfailed.clear() elif expr in self.compfailed: return None if origexpr is None: origexpr = expr try: checked = utils.compileChecked( expr, ignoresecurity=self.inSecureMode(), ) except utils.SafeEvalException as e: if log: self.doc.log( _("Unsafe expression '%s': %s") % (origexpr, str(e))) self.compfailed.add(expr) return None except Exception as e: if log: self.doc.log( _("Error in expression '%s': %s") % (origexpr, str(e))) return None else: self.compiled[expr] = checked return checked @staticmethod def _evalformatdate(fmt=None): """DATE() eval: return date with optional format.""" d = datetime.date.today() return d.isoformat() if fmt is None else d.strftime(fmt) @staticmethod def _evalformattime(fmt=None): """TIME() eval: return time with optional format.""" t = datetime.datetime.now() return t.isoformat() if fmt is None else t.strftime(fmt) def _evaldata(self, name, part='data'): """DATA(name, [part]) eval: return dataset as array.""" if part not in ('data', 'perr', 'serr', 'nerr'): raise RuntimeError("Invalid dataset part '%s'" % part) if name not in self.doc.data: raise RuntimeError("Dataset '%s' does not exist" % name) data = getattr(self.doc.data[name], part) if isinstance(data, N.ndarray): return N.array(data) elif isinstance(data, list): return list(data) return data def _evalfilename(self): """FILENAME() eval: returns filename.""" return utils.latexEscape(self.doc.filename) def _evalbasename(self): """BASENAME() eval: returns base filename.""" return utils.latexEscape(os.path.basename(self.doc.filename)) def _evalsetting(self, path): """SETTING() eval: return setting given full path.""" return self.doc.resolveSettingPath(None, path).get() @staticmethod def _evallang(opts): lang = qt.QLocale().name() if lang in opts: return opts[lang] majorl = lang.split('_')[0] if majorl in opts: return opts[majorl] if 'default' in opts: return opts['default'] return utils.latexEscape('NOLANG:%s' % str(lang)) def evalDatasetExpression(self, expr, part='data', datatype='numeric', dimensions=1): """Return dataset after evaluating a dataset expression. part is 'data', 'serr', 'perr' or 'nerr' - these are the dataset parts which are evaluated by the expression None is returned on error """ key = (expr, part, datatype, dimensions) if self.exprdscachechangeset != self.doc.changeset: self.exprdscachechangeset = self.doc.changeset self.exprdscache.clear() elif key in self.exprdscache: return self.exprdscache[key] self.exprdscache[key] = ds = datasets.evalDatasetExpression( self.doc, expr, part=part, datatype=datatype, dimensions=dimensions) return ds def _checkImportsSafe(self): """Check whether symbols are safe to import.""" # do import anyway if self.inSecureMode(): return True self.doc.sigAllowedImports.emit() return self.inSecureMode() def getColormap(self, name, invert): """Get colormap with name given (returning grey if does not exist).""" cmap = self.colormaps.get(name, self.colormaps['grey']) if invert: if cmap[0][0] >= 0: return cmap[::-1] else: # ignore marker at beginning for stepped maps return tuple([cmap[0]] + list(cmap[-1:0:-1])) return cmap def saveCustomDefinitions(self, fileobj): """Save custom constants and functions.""" for ctype, defns in ( ('import', self.def_imports), ('definition', self.def_definitions), ('color', self.def_colors), ('colormap', self.def_colormaps)): for val in defns: fileobj.write( 'AddCustom(%s, %s, %s)\n' % ( utils.rrepr(ctype), utils.rrepr(val[0]), utils.rrepr(val[1]))) def saveCustomFile(self, fileobj): """Export the custom settings to a file.""" self.doc._writeFileHeader(fileobj, 'custom definitions') self.saveCustomDefinitions(fileobj) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/document/export.py0000664000175000017500000004510314332253347016016 0ustar00jssjss# Copyright (C) 2011 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Routines to export the document.""" import os.path import random import codecs import re import sys import subprocess from .. import qtall as qt from .. import setting from .. import utils try: from . import emf_export hasemf = True except ImportError: hasemf = False from . import svg_export from . import selftest_export from . import painthelper # 1m in inch m_inch = 39.370079 # scale factor for svg dpi svg_dpi_scale = 0.1 def _(text, disambiguation=None, context="Export"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) def getSinglePage(pagenumbers): """Check single number of pages or throw exception, else return page number.""" if len(pagenumbers) != 1: raise RuntimeError( 'Can only export a single page in this format') return pagenumbers[0] class ExportRunnable(qt.QRunnable): """For running export in thread.""" def __init__(self, aexport, filename, phelpers): qt.QRunnable.__init__(self) self.aexport = aexport self.filename = filename self.phelpers = phelpers def run(self): """Do export. Exceptions are returned to AsyncExport class.""" try: self.doExport() except (RuntimeError, EnvironmentError) as e: self.aexport.exception = e def renderPage(self, dev, phelper): """Render page, clipping.""" painter = qt.QPainter(dev) painter.setClipRect(qt.QRectF( qt.QPointF(0,0), qt.QPointF(*phelper.pagesize))) painter.save() phelper.renderToPainter(painter) painter.restore() painter.end() class ExportBitmapRunnable(ExportRunnable): """Runnable task to export a bitmap.""" def doExport(self): """Do the export.""" ext = os.path.splitext(self.filename)[1].lower() fmt = ext.lstrip('.') # setFormat() doesn't want the leading '.' if fmt == 'jpeg': fmt = 'jpg' # create real output image size = self.phelpers[0].pagesize backqcolor = self.aexport.backqcolor if fmt == 'png': # transparent output image = qt.QImage( int(size[0]), int(size[1]), qt.QImage.Format_ARGB32_Premultiplied) else: # non transparent output image = qt.QImage( int(size[0]), int(size[1]), qt.QImage.Format_RGB32) backqcolor.setAlpha(255) image.setDotsPerMeterX(int(self.phelpers[0].dpi[0]*m_inch)) image.setDotsPerMeterY(int(self.phelpers[0].dpi[1]*m_inch)) if backqcolor.alpha() == 0: image.fill(qt.qRgba(0,0,0,0)) else: image.fill(backqcolor.rgb()) # paint to the image painter = qt.QPainter(image) painter.setRenderHint(qt.QPainter.Antialiasing, self.aexport.antialias) painter.setRenderHint(qt.QPainter.TextAntialiasing, self.aexport.antialias) self.phelpers[0].renderToPainter(painter) painter.end() # write image to disk writer = qt.QImageWriter() writer.setFormat(fmt.encode('ascii')) writer.setFileName(self.filename) if fmt == 'png': # max compression for PNGs (this number comes from the # source code) writer.setCompression(100) writer.setQuality(0) elif fmt == 'tiff': # enable LZW compression for TIFFs writer.setCompression(1) elif fmt == 'jpg': # enable optimal JPEG compression using new Qt 5.5 options writer.setOptimizedWrite(True) writer.setProgressiveScanWrite(True) if fmt != 'png': writer.setQuality(self.aexport.quality) writer.write(image) class ExportPDFRunnable(ExportRunnable): """Runnable task to export a PDF file.""" def doExport(self): """Do the export.""" printer = qt.QPrinter() printer.setResolution(self.aexport.pdfdpi) printer.setFullPage(True) printer.setColorMode( qt.QPrinter.Color if self.aexport.color else qt.QPrinter.GrayScale) printer.setOutputFormat(qt.QPrinter.PdfFormat) printer.setOutputFileName(self.filename) printer.setCreator('Veusz %s' % utils.version()) def updateSize(ph): """Update page size in QPrinter""" sizeinchx, sizeinchy = ph.pagesize[0]/ph.dpi[0], ph.pagesize[1]/ph.dpi[1] pagesize = qt.QPageSize( qt.QSizeF(sizeinchx, sizeinchy), qt.QPageSize.Inch) layout = qt.QPageLayout( pagesize, qt.QPageLayout.Portrait, qt.QMarginsF()) printer.setPageLayout(layout) updateSize(self.phelpers[0]) painter = qt.QPainter(printer) for i, phelper in enumerate(self.phelpers): if i>0: updateSize(phelper) printer.newPage() phelper.renderToPainter(painter) painter.end() class ExportPostscriptRunnable(ExportRunnable): """Task to export .ps/.eps files.""" # whether ghostscript has been searched for gs_searched = False # its path if it exists gs_exe = None # map extensions to ghostscript devices gs_dev = None @classmethod def searchGhostscript(klass): """Find location of Ghostscript executable.""" if klass.gs_searched: return gs_exe = None gs = setting.settingdb["external_ghostscript"] if gs: if os.path.isfile(gs) and os.access(gs, os.X_OK): gs_exe = gs else: if sys.platform == "win32": # look for ghostscript as 64 and 32 bit versions gs_exe = utils.findOnPath("gswin64c.exe") if not gs_exe: gs_exe = utils.findOnPath("gswin32c.exe") else: # unix tends to call it just gs gs_exe = utils.findOnPath("gs") klass.gs_dev = dev = {} if gs_exe: try: # check output devices contain # ps2write/eps2write or pswrite/epswrite popen = subprocess.Popen( [gs_exe, '-h'], stdout=subprocess.PIPE, universal_newlines=True) text = popen.stdout.read() if re.search(r'\beps2write\b', text): dev['.eps'] = 'eps2write' elif re.search(r'\bepswrite\b', text): dev['.eps'] = 'epswrite' if re.search(r'\bps2write\b', text): dev['.ps'] = 'ps2write' elif re.search(r'\bpswrite\b', text): dev['.ps'] = 'pswrite' except Exception as e: pass else: klass.gs_exe = gs_exe klass.gs_searched = True def doExport(self): """Do the export.""" self.searchGhostscript() if not self.gs_exe: raise RuntimeError("Cannot write Postscript without Ghostscript available") # write to pdf file first ext = os.path.splitext(self.filename)[1].lower() tmpfilepdf = "%s.tmp.%i.pdf" % ( self.filename, random.randint(0,1000000)) tmpfileps = "%s.tmp.%i%s" % ( self.filename, random.randint(0,1000000), ext) pdfrunnable = ExportPDFRunnable(self.aexport, tmpfilepdf, self.phelpers) pdfrunnable.run() # run ghostscript to covert from pdf to postscript cmd = [ self.gs_exe, '-q', '-dNOCACHE', '-dNOPAUSE', '-dBATCH', '-dSAFER', '-sDEVICE=%s' % self.gs_dev[ext], '-sOutputFile=%s' % tmpfileps, tmpfilepdf ] try: subprocess.check_call(cmd) except Exception as e: raise RuntimeError("Could not run ghostscript: %s" % str(e)) if not os.path.isfile(tmpfileps): raise RuntimeError("Ghostscript failed to create %s" % tmpfileps) os.remove(tmpfilepdf) try: os.remove(self.filename) except OSError: pass os.rename(tmpfileps, self.filename) class ExportSVGRunnable(ExportRunnable): """Runnable task to export an SVG file.""" def doExport(self): sdpi = self.phelpers[0].dpi size = self.phelpers[0].pagesize with codecs.open(self.filename, 'w', 'utf-8') as f: paintdev = svg_export.SVGPaintDevice( f, size[0]/sdpi[0], size[1]/sdpi[1], writetextastext=self.aexport.svgtextastext, dpi=sdpi[1]*svg_dpi_scale, scale=svg_dpi_scale) self.renderPage(paintdev, self.phelpers[0]) class ExportSelfTestRunnable(ExportRunnable): """Runnable task to export a self-test output.""" def doExport(self): sdpi = self.phelpers[0].dpi size = self.phelpers[0].pagesize with codecs.open(self.filename, 'w', 'utf-8') as f: paintdev = selftest_export.SelfTestPaintDevice( f, size[0]/sdpi[0], size[1]/sdpi[1], dpi=sdpi[1]) self.renderPage(paintdev, self.phelpers[0]) class ExportPICRunnable(ExportRunnable): """Runnable task to export Qt PIC output.""" def doExport(self): paintdev = qt.QPicture() self.renderPage(paintdev, self.phelpers[0]) paintdev.save(self.filename) class ExportEMFRunnable(ExportRunnable): """Runnable task to export EMF output.""" def doExport(self): dpi = self.phelpers[0].dpi size = self.phelpers[0].pagesize paintdev = emf_export.EMFPaintDevice( size[0]/dpi[0], size[1]/dpi[1], dpi=dpi[1]) self.renderPage(paintdev, self.phelpers[0]) paintdev.paintEngine().saveFile(self.filename) class AsyncExport(qt.QObject): """Asynchronous export. Add export tasks with add() and wait with finish(). """ @classmethod def getFormats(klass): """Return list of formats in form of tuples of extension and description.""" formats = [ (["bmp"], _("Windows bitmap")), (["jpg"], _("Jpeg bitmap")), (["pdf"], _("Portable Document Format")), (["png"], _("Portable Network Graphics")), (["svg"], _("Scalable Vector Graphics")), (["tiff"], _("Tagged Image File Format bitmap")), (["xpm"], _("X Pixmap")), ] if hasemf: formats.append( (["emf"], _("Windows Enhanced Metafile")) ) ExportPostscriptRunnable.searchGhostscript() if '.eps' in ExportPostscriptRunnable.gs_dev: formats.append((["eps"], _("Encapsulated Postscript"))) if '.ps' in ExportPostscriptRunnable.gs_dev: formats.append((["ps"], _("Postscript"))) formats.sort() return formats def __init__(self, doc, color=True, bitmapdpi=100, antialias=True, quality=85, backcolor='#ffffff00', pdfdpi=150, svgdpi=96, svgtextastext=False): """Initialise export class. Parameters are: doc: document to write color: use color or try to use monochrome bitmapdpi: assume this dpi value when writing images antialias: antialias text and lines when writing bitmaps quality: compression factor for bitmaps backcolor: background color default for bitmaps (default transparent). pdfdpi: dpi for pdf and eps files svgdpi: dpi for svg files svgtextastext: write text in SVG as text, rather than curves """ qt.QObject.__init__(self) self.doc = doc self.color = color self.bitmapdpi = bitmapdpi self.antialias = antialias self.quality = quality self.backcolor = backcolor self.pdfdpi = pdfdpi self.svgdpi = svgdpi self.svgtextastext = svgtextastext self.backqcolor = self.doc.evaluate.colors.get(self.backcolor) # any exceptions in runnables should set this to be reported # in main thread for UI self.exception = None # pool that export threads use to execute self.pool = qt.QThreadPool(self) self.pool.setMaxThreadCount( max(setting.settingdb['plot_numthreads'], 1) ) def finish(self): self.pool.waitForDone() if self.exception is not None: exception = self.exception self.exception = None raise exception def haveDone(self): """Have all the threads finished? Note: call finish afterwards for cleanup """ return self.pool.waitForDone(0) def getDPI(self, ext): """Get DPI to use for filename extension.""" if ext in {'.pdf', '.eps', '.ps'}: return (self.pdfdpi, self.pdfdpi) elif ext in {'.png', '.jpg', '.jpeg', '.bmp', '.tiff', '.xpm'}: return (self.bitmapdpi, self.bitmapdpi) elif ext == '.svg': dpi = self.svgdpi / svg_dpi_scale return (dpi, dpi) elif ext == '.selftest': return (90, 90) elif ext == '.pic': pic = qt.QPicture() return (pic.logicalDpiX(), pic.logicalDpiY()) elif ext == '.emf': return (90, 90) else: raise RuntimeError('Unknown export file type') def add(self, filename, pages): """Add export to list to be processed. filename: output filename pages: list of pages (0-indexed) to be added. sync: if True, then do not execute in different thread.""" ext = os.path.splitext(filename)[1].lower() dpi = self.getDPI(ext) # render each page to a PaintHelper phelpers = [] for page in pages: size = self.doc.pageSize(page, dpi=dpi, integer=False) phelper = painthelper.PaintHelper(self.doc, size, dpi=dpi) self.doc.paintTo(phelper, page) phelpers.append(phelper) # single page only formats if len(phelpers) != 1 and ext not in ('.ps', '.pdf'): raise RuntimeError('Only single page allowed for format') # make a runnable task for the right file type runnable = { '.png': ExportBitmapRunnable, '.jpg': ExportBitmapRunnable, '.jpeg': ExportBitmapRunnable, '.bmp': ExportBitmapRunnable, '.tiff': ExportBitmapRunnable, '.xpm': ExportBitmapRunnable, '.pdf': ExportPDFRunnable, '.ps': ExportPostscriptRunnable, '.eps': ExportPostscriptRunnable, '.svg': ExportSVGRunnable, '.selftest': ExportSelfTestRunnable, '.pic': ExportPICRunnable, '.emf': ExportEMFRunnable, }[ext](self, filename, phelpers) self.pool.start(runnable) def printPages(doc, printer, pages, scaling=1., antialias=False, setsizes=False): """Print onto printing device. Returns list of page sizes setsizes: Set page size on printer to page sizes """ if not pages: return dpi = (printer.logicalDpiX(), printer.logicalDpiY()) def getUpdateSize(page): size = doc.pageSize(page, dpi=dpi, integer=False) if setsizes: # update paper size on printer sizeinchx, sizeinchy = size[0]/dpi[0], size[1]/dpi[1] pagesize = qt.QPageSize( qt.QSizeF(sizeinchx, sizeinchy), qt.QPageSize.Inch) layout = qt.QPageLayout( pagesize, qt.QPageLayout.Portrait, qt.QMarginsF()) printer.setPageLayout(layout) return size size = getUpdateSize(pages[0]) painter = painthelper.DirectPainter(printer) if antialias: painter.setRenderHint(qt.QPainter.Antialiasing, True) painter.setRenderHint(qt.QPainter.TextAntialiasing, True) # This all assumes that only pages can go into the root widget visible = set(doc.getVisiblePages()) filtpages = [page for page in pages if page in visible] for count, page in enumerate(filtpages): psize = doc.pageSize(page, dpi=dpi, integer=False, scaling=scaling) phelper = painthelper.PaintHelper(doc, psize, dpi=dpi, scaling=scaling) doc.paintTo(phelper, page) phelper.renderToPainter(painter) # start new pages between each page if count < len(filtpages)-1: # set page size before newPage! size = getUpdateSize(pages[count+1]) printer.newPage() painter.end() def printDialog(parentwindow, document, filename=None): """Open a print dialog and print document.""" if not document.getVisiblePages(): qt.QMessageBox.warning( parentwindow, _("Error - Veusz"), _("No pages to print")) return prnt = qt.QPrinter(qt.QPrinter.HighResolution) prnt.setColorMode(qt.QPrinter.Color) prnt.setCreator(_('Veusz %s') % utils.version()) if filename: prnt.setDocName(filename) dialog = qt.QPrintDialog(prnt, parentwindow) dialog.setMinMax(1, document.getNumberPages()) if dialog.exec_(): # get page range if dialog.printRange() == qt.QAbstractPrintDialog.PageRange: # page range minval, maxval = dialog.fromPage(), dialog.toPage() else: # all pages minval, maxval = 1, document.getNumberPages() # pages are relative to zero minval -= 1 maxval -= 1 # reverse or forward order if prnt.pageOrder() == qt.QPrinter.FirstPageFirst: pages = list(range(minval, maxval+1)) else: pages = list(range(maxval, minval-1, -1)) # if more copies are requested pages *= prnt.copyCount() # do the printing printPages(document, prnt, pages) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/document/loader.py0000664000175000017500000002413414332253347015744 0ustar00jssjss# Copyright (C) 2014 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## # note: no future statements here for backward compatibility import sys import os.path import traceback import io import numpy as N from .. import qtall as qt from .. import utils from .commandinterface import CommandInterface from . import datasets # loaded lazily h5py = None def _(text, disambiguation=None, context='DocumentLoader'): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) class LoadError(RuntimeError): """Error when loading document.""" def __init__(self, text, backtrace=''): RuntimeError.__init__(self, text) self.backtrace = backtrace def bconv(s): """Sometimes h5py returns non-unicode strings, so hack to decode strings if in wrong format.""" if isinstance(s, bytes): return s.decode('utf-8') return s def _importcaller(interface, name, callbackimporterror): """Wrap an import statement to check for IOError.""" def wrapped(*args, **argsk): while True: try: getattr(interface, name)(*args, **argsk) except IOError as e: errmsg = str(e) fnameidx = interface.import_filenamearg[name] assert fnameidx >= 0 filename = args[fnameidx] raiseerror = True if callbackimporterror: # used by mainwindow to show dialog and get new filename fname = callbackimporterror(filename, errmsg) if fname: # put new filename into function argument list args = list(args) args[fnameidx] = fname raiseerror = False if raiseerror: # send error message back to UI raise LoadError( _("Error reading file '%s':\n\n%s") % (filename, errmsg)) else: # imported ok break return wrapped def executeScript(thedoc, filename, script, callbackunsafe=None, callbackimporterror=None): """Execute a script for the document. This handles setting up the environment and checking for unsafe commands in the execution. filename: filename to supply in __filename__ script: text to execute callbackunsafe: should be set to a function to ask the user whether it is ok to execute any unsafe commands found. Return True if ok. callbackimporterror(filename, error): should be set to function to return new filename in case of import error, or False if none User should wipe docment before calling this. """ def genexception(exc): info = sys.exc_info() backtrace = ''.join(traceback.format_exception(*info)) return LoadError(str(exc), backtrace=backtrace) # compile script and check for security (if reqd) while True: try: compiled = utils.compileChecked( script, mode='exec', filename=filename, ignoresecurity=thedoc.evaluate.inSecureMode(), ) break except utils.SafeEvalException: if callbackunsafe is None or not callbackunsafe(): raise LoadError(_("Unsafe command in script")) # repeat with unsafe mode switched on thedoc.evaluate.setSecurity(True) except Exception as e: raise genexception(e) env = thedoc.evaluate.context.copy() interface = CommandInterface(thedoc) # allow safe commands as-is for cmd in interface.safe_commands: env[cmd] = getattr(interface, cmd) # define root node env['Root'] = interface.Root # wrap unsafe calls with a function to check whether ok def _unsafecaller(func): def wrapped(*args, **argsk): if not thedoc.evaluate.inSecureMode(): if callbackunsafe is None or not callbackunsafe(): raise LoadError(_("Unsafe command in script")) thedoc.evaluate.setSecurity(True) func(*args, **argsk) return wrapped for name in interface.unsafe_commands: env[name] = _unsafecaller(getattr(interface, name)) # override import commands with wrapper for name in interface.import_commands: env[name] = _importcaller(interface, name, callbackimporterror) # get ready for loading document env['__file__'] = filename # allow import to happen relative to loaded file interface.AddImportPath( os.path.dirname(os.path.abspath(filename)) ) with thedoc.suspend(): try: # actually run script text exec(compiled, env) except LoadError: raise except Exception as e: raise genexception(e) def loadHDF5Dataset1D(datagrp): args = {} # this weird usage of sets is to work around some sort of weird # error where h5py gives an error when doing 'a' in datagrp # this gives error: 'perr' in datagrp parts = set(datagrp) & set(('data', 'serr', 'perr', 'nerr')) for v in parts: args[v] = N.array(datagrp[v]) return datasets.Dataset(**args) def loadHDF5Dataset2D(datagrp): args = {} parts = set(datagrp) & set( ('data', 'xcent', 'xedge', 'ycent', 'yedge', 'xrange', 'yrange')) for v in parts: args[v] = N.array(datagrp[v]) return datasets.Dataset2D(**args) def loadHDF5DatasetDate(datagrp): return datasets.DatasetDateTime(data=datagrp['data']) def loadHDF5DatasetText(datagrp): data = [d.decode('utf-8') for d in datagrp['data']] return datasets.DatasetText(data=data) def loadHDF5Datasets(thedoc, hdffile): """Load all the Veusz datasets in the HDF5 file.""" alldatagrp = hdffile['Veusz']['Data'] datafuncs = { '1d': loadHDF5Dataset1D, '2d': loadHDF5Dataset2D, 'date': loadHDF5DatasetDate, 'text': loadHDF5DatasetText, } for name in alldatagrp: datagrp = alldatagrp[name] datatype = bconv(datagrp.attrs['vsz_datatype']) veuszname = utils.unescapeHDFDataName(bconv(name)) dataset = datafuncs[datatype](datagrp) thedoc.setData(veuszname, dataset) def tagHDF5Datasets(thedoc, hdffile): """Tag datasets loaded from HDF5 file.""" tags = hdffile['Veusz']['Document']['Tags'] for tag in tags: vsztag = bconv(tag) datasets = tags[tag] for name in datasets: dsname = name.decode('utf-8') thedoc.data[dsname].tags.add(vsztag) def loadHDF5Doc(thedoc, filename, callbackunsafe=None, callbackimporterror=None): """Load an HDF5 of the name given.""" try: global h5py import h5py except ImportError: raise LoadError(_("No HDF5 support as h5py module is missing")) with thedoc.suspend(): thedoc.wipe() thedoc.filename = filename thedoc.evaluate.updateSecurityFromPath() hdffile = h5py.File(filename, 'r') try: vszformat = hdffile['Veusz'].attrs['vsz_format'] vszversion = hdffile['Veusz'].attrs['vsz_version'] except KeyError: raise LoadError( _("HDF5 file '%s' is not a Veusz saved document") % os.path.basename(filename)) maxformat = 1 if vszformat > maxformat: raise LoadError( _( "This document version (%i) is not supported. " "It was written by Veusz %s.\n" "This Veusz only supports document version %i." ) % (vszformat, vszversion, maxformat)) # load document script = hdffile['Veusz']['Document']['document'][0].decode('utf-8') executeScript( thedoc, filename, script, callbackunsafe=callbackunsafe, callbackimporterror=callbackimporterror) # then load datasets loadHDF5Datasets(thedoc, hdffile) # and then tag tagHDF5Datasets(thedoc, hdffile) hdffile.close() def loadDocument(thedoc, filename, mode='vsz', callbackunsafe=None, callbackimporterror=None): """Load document from file. mode is 'vsz' or 'hdf5' """ if mode == 'vsz': try: with io.open(filename, 'r', encoding='utf-8') as f: script = f.read() except EnvironmentError as e: raise LoadError( _("Cannot open document '%s'\n\n%s") % (os.path.basename(filename), e.strerror) ) except UnicodeDecodeError: raise LoadError( _("File '%s' is not a valid Veusz document") % os.path.basename(filename) ) thedoc.wipe() thedoc.filename = filename thedoc.evaluate.updateSecurityFromPath() executeScript( thedoc, filename, script, callbackunsafe=callbackunsafe, callbackimporterror=callbackimporterror) elif mode == 'hdf5': loadHDF5Doc( thedoc, filename, callbackunsafe=callbackunsafe, callbackimporterror=callbackimporterror) else: raise RuntimeError('Invalid load mode') thedoc.setModified(False) thedoc.clearHistory() ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/document/mime.py0000664000175000017500000002465514332253347015435 0ustar00jssjss# Copyright (C) 2010 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### from itertools import count import base64 from io import StringIO from .. import qtall as qt from . import doc from . import operations from . import widgetfactory # mime type for copy and paste widgetmime = 'text/x-vnd.veusz-widget-3' # dataset mime datamime = 'text/x-vnd.veusz-data-1' # svg mime (convertable to `svgfile` widget) svgmime = 'image/svg+xml' def generateWidgetsMime(widgets): """Create mime data describing widget and children. format is: numberofwidgets widgettype1 widgetname1 widgetpath1 numberoflines1 ... texttoreproducewidget """ header = [str(len(widgets))] savetext = [] for widget in widgets: header.append(widget.typename) header.append(repr(widget.name)) header.append(repr(widget.path)) save = widget.getSaveText() header.append( str(save.count('\n')) ) savetext.append(save) header.append('') text = ('\n'.join(header) + ''.join(savetext)).encode('utf-8') mimedata = qt.QMimeData() mimedata.setData(widgetmime, qt.QByteArray(text)) return mimedata def generateDatasetsMime(datasets, document): """Generate mime for the list of dataset names given in the document. Format is: repr of names text to recreate dataset 1 ... """ mimedata = qt.QMimeData() # just plain text format output = [] for name in datasets: output.append( document.data[name].datasetAsText() ) text = ('\n'.join(output)).encode('utf-8') mimedata.setData('text/plain', qt.QByteArray(text)) textfile = StringIO() for name in datasets: # get unlinked copy of dataset ds = document.data[name].returnCopy() # write into a string file ds.saveToFile(textfile, name) rawdata = textfile.getvalue().encode('utf-8') mimedata.setData(datamime, rawdata) return mimedata def isClipboardDataMime(): """Returns whether data available on clipboard.""" mimedata = qt.QApplication.clipboard().mimeData() return datamime in mimedata.formats() def getWidgetMime(mimedata): """Given mime data, return decoded python string.""" if widgetmime in mimedata.formats(): return mimedata.data(widgetmime).data().decode('utf-8') else: return None def getClipboardWidgetMime(): """Returns widget mime data if mimedata contains correct mimetype or None If mimedata is set, use this rather than clipboard directly """ clipboard = qt.QApplication.clipboard() mimedata = clipboard.mimeData() formats = mimedata.formats() widgetmime = getWidgetMime(mimedata) if widgetmime is not None: return widgetmime elif svgmime in formats: ba = mimedata.data(svgmime).data() return convertImgtoWidgetMime(ba, svgmime) else: qimage = clipboard.image() if qimage.isNull(): return None else: ba = qt.QByteArray() buffer = qt.QBuffer(ba) buffer.open(qt.QIODevice.WriteOnly) qimage.save(buffer, 'png') return convertImgtoWidgetMime(ba, 'image/png') def getMimeWidgetTypes(data): """Get list of widget types in the mime data.""" lines = data.split('\n') try: numwidgets = int(lines[0]) except ValueError: return [] types = lines[1:1+4*numwidgets:4] return types def getMimeWidgetPaths(data): """Get list of widget paths in the mime data.""" lines = data.split('\n') numwidgets = int(lines[0]) paths = [eval(x) for x in lines[3:3+4*numwidgets:4]] return paths def isWidgetMimePastable(parentwidget, mimedata): """Is widget mime data suitable to paste at parentwidget?""" if mimedata is None: return False types = getMimeWidgetTypes(mimedata) for type in types: if doc.getSuitableParent(type, parentwidget) is None: return False return True def isMimeDropable(parentwidget, mimedata): """Can parent have this data pasted directly inside?""" if mimedata is None or parentwidget is None: return False types = getMimeWidgetTypes(mimedata) for type in types: wc = widgetfactory.thefactory.getWidgetClass(type) if not wc.willAllowParent(parentwidget): return False return True def getMimeWidgetCount(mimedata): """Get number of widgets in mimedata.""" return int( mimedata[:mimedata.find('\n')] ) def convertImgtoWidgetMime(ba, mimetype): """Given image bite array and mimetype, return decoded python string.""" if mimetype == svgmime: typename = 'svgfile' name = 'svgfile1' path = '/page1/svgfile1' key = 'embeddedSVGData' else: typename = 'imagefile' name = 'imagefile1' path = '/page1/imagefile1' key = 'embeddedImageData' encoded = base64.b64encode(ba).decode('ascii') settings = {'filename': "'{embedded}'", key: "'{}'".format(encoded), } head = ['1', typename, "'{}'".format(name), "'{}'".format(path), '2'] body = ["Set('{}', {})".format(s,v) for (s,v) in settings.items()] return '\n'.join(head) + '\n' + '\n'.join(body) + '\n' class OperationWidgetPaste(operations.OperationMultiple): """Paste a widget from mime data.""" descr= 'paste widget' def __init__(self, parent, mimedata, index=-1, newnames=None): """Paste widget into parent widget from mimedata. newnames is a list of new names for pasting, if given.""" operations.OperationMultiple.__init__(self, [], descr=None) self.parentpath = parent.path self.mimedata = mimedata self.index = index self.newnames = newnames def do(self, document): """Do the import.""" from . import commandinterpreter index = self.index # get document to keep track of changes for undo/redo document.batchHistory(self) # fire up interpreter to read file interpreter = commandinterpreter.CommandInterpreter(document) parentwidget = document.resolveWidgetPath(None, self.parentpath) lines = self.mimedata.split('\n') numwidgets = int(lines[0]) # get types, names and number of lines for widgets types = lines[1:1+4*numwidgets:4] names = lines[2:2+4*numwidgets:4] names = [eval(name) for name in names] if self.newnames is not None: names = self.newnames # paths = lines[3:3+4*numwidgets:4] (not required here) widgetslines = lines[4:4+4*numwidgets:4] widgetslines = [int(x) for x in widgetslines] newwidgets = [] widgetline = 1+4*numwidgets try: for wtype, name, numline in zip(types, names, widgetslines): thisparent = doc.getSuitableParent(wtype, parentwidget) if thisparent is None: raise RuntimeError("Cannot find suitable parent for pasting") # override name if it exists already if name in thisparent.childnames: name = None # make new widget widget = document.applyOperation( operations.OperationWidgetAdd( thisparent, wtype, autoadd=False, name=name, index=index) ) newwidgets.append(widget) # run generating commands interpreter.interface.currentwidget = widget for line in lines[widgetline:widgetline+numline]: interpreter.run(line) if index >= 0: index += 1 # move to next widget widgetline += numline except Exception: document.batchHistory(None) raise # stop batching changes document.batchHistory(None) return newwidgets class OperationWidgetClone(OperationWidgetPaste): """Clone a widget.""" descr = 'clone widget' def __init__(self, widget, newparent, newname): mime = generateWidgetsMime([widget]) mimedec = mime.data(widgetmime).data().decode('utf-8') OperationWidgetPaste.__init__( self, newparent, mimedec, newnames=[newname]) def do(self, document): """Do the import.""" widgets = OperationWidgetPaste.do(self, document) return widgets[0] class OperationDataPaste(operations.Operation): """Paste dataset from mime data.""" descr = 'paste data' def __init__(self, mimedata): """Paste datasets into document.""" self.data = mimedata.data(datamime).data().decode('utf-8') def do(self, thisdoc): """Do the data paste.""" from . import commandinterpreter # write data into a temporary document tempdoc = doc.Document() # interpreter to create datasets interpreter = commandinterpreter.CommandInterpreter(tempdoc) interpreter.runFile(StringIO(self.data)) # list of pasted datasets self.newds = [] # now transfer datasets to existing document for name, ds in sorted(tempdoc.data.items()): # get new name if name not in thisdoc.data: newname = name else: for idx in count(2): newname = '%s_%s' % (name, idx) if newname not in thisdoc.data: break thisdoc.setData(newname, ds) self.newds.append(newname) def undo(self, thisdoc): """Undo pasting datasets.""" for n in self.newds: thisdoc.deleteData(n) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/document/operations.py0000664000175000017500000012226714332253347016667 0ustar00jssjss# Copyright (C) 2006 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################### """Represents atomic operations to take place on a document which can be undone. Rather than the document modified directly, this interface should be used. Operations should be passed to the document to be enacted with applyOperation Each operation provides do(document) and undo(document) methods. Operations store paths to objects to be modified rather than object references because some operations cannot restore references (e.g. add object) """ import os.path import io import numpy as N from . import widgetfactory from .. import datasets from .. import plugins from .. import qtall as qt def _(text, disambiguation=None, context="Operations"): """Translate text.""" return qt.QCoreApplication.translate(context, text, disambiguation) ############################################################################### # Setting operations class Operation: """Root class for operations.""" descr = 'REPLACE THIS' def do(self, document): """Apply operation to document.""" def undo(self, document): """Undo operation.""" class OperationSettingSet(Operation): """Set a variable to a value.""" descr = _('change setting') def __init__(self, setting, value): """Set the setting to value. Setting may be a widget path """ if isinstance(setting, str): self.settingpath = setting else: self.settingpath = setting.path self.value = value def do(self, document): """Apply setting variable.""" setting = document.resolveSettingPath(None, self.settingpath) if setting.isReference(): self.oldvalue = setting.getReference() else: self.oldvalue = setting.get() setting.set(self.value) def undo(self, document): """Return old value back...""" setting = document.resolveSettingPath(None, self.settingpath) setting.set(self.oldvalue) class OperationSettingPropagate(Operation): """Propagate setting to other widgets.""" descr = _('propagate setting') def __init__(self, setting, widgetname = None, root = None, maxlevels = -1): """Take the setting given, and propagate it to other widgets, according to the parameters here. If widgetname is given then only propagate it to widgets with the name given. widgets are located from the widget given (root if not set) Up to maxlevels levels of widgets are changed (<0 means infinite) """ self.val = setting.val self.widgetname = widgetname if root: self.rootpath = root.path else: self.rootpath = None self.maxlevels = maxlevels # work out path of setting relative to widget path = [] s = setting while not s.iswidget: path.insert(0, s.name) s = s.parent self.setpath = path[1:] self.widgettype = s.typename def do(self, document): """Apply the setting propagation.""" # default is root widget if not self.rootpath: root = document.basewidget else: root = document.resolveWidgetPath(None, self.rootpath) # get a list of matching widgets widgetlist = [] self._recursiveGet(root, self.widgetname, self.widgettype, widgetlist, self.maxlevels) self.restorevals = {} # set the settings for the widgets for w in widgetlist: # lookup the setting s = w.settings for i in self.setpath: s = s.get(i) self.restorevals[s.path] = s.val s.set(self.val) def undo(self, document): """Undo all those changes.""" for setpath, setval in self.restorevals.items(): setting = document.resolveSettingPath(None, setpath) setting.set(setval) @staticmethod def _recursiveGet(root, name, typename, outlist, maxlevels): """Add those widgets in root with name and type to outlist. If name or typename are None, then ignore the criterion. maxlevels is the maximum number of levels to check """ if maxlevels != 0: # if levels is not zero, add the children of this root newmaxlevels = maxlevels - 1 for w in root.children: if ( (w.name == name or name is None) and (w.typename == typename or typename is None) ): outlist.append(w) OperationSettingPropagate._recursiveGet( w, name, typename, outlist, newmaxlevels) ############################################################################### # Widget operations class OperationWidgetRename(Operation): """Rename widget.""" descr = _('rename') def __init__(self, widget, newname): """Rename the widget to newname.""" self.widgetpath = widget.path self.newname = newname def do(self, document): """Rename widget.""" widget = document.resolveWidgetPath(None, self.widgetpath) self.oldname = widget.name widget.rename(self.newname) self.newpath = widget.path def undo(self, document): """Undo rename.""" widget = document.resolveWidgetPath(None, self.newpath) widget.rename(self.oldname) class OperationWidgetDelete(Operation): """Delete widget.""" descr = _('delete') def __init__(self, widget): """Delete the widget.""" self.widgetpath = widget.path def do(self, document): """Delete widget.""" self.oldwidget = document.resolveWidgetPath(None, self.widgetpath) oldparent = self.oldwidget.parent self.oldwidget.parent = None self.oldparentpath = oldparent.path self.oldindex = oldparent.children.index(self.oldwidget) oldparent.removeChild(self.oldwidget.name) def undo(self, document): """Restore deleted widget.""" oldparent = document.resolveWidgetPath(None, self.oldparentpath) self.oldwidget.parent = oldparent oldparent.addChild(self.oldwidget, index=self.oldindex) class OperationWidgetsDelete(Operation): """Delete mutliple widget.""" descr = _('delete') def __init__(self, widgets): """Delete the widget.""" self.widgetpaths = [w.path for w in widgets] def do(self, document): """Delete widget.""" # ignore widgets which share ancestry # as deleting the parent deletes the child widgetpaths = list(self.widgetpaths) widgetpaths.sort(key=len) i = 0 while i < len(widgetpaths): wp = widgetpaths[i] for j in range(i): if wp[:len(widgetpaths[j])+1] == widgetpaths[j]+'/': del widgetpaths[i] break else: i += 1 self.oldwidgets = [] self.oldparentpaths = [] self.oldindexes = [] # delete each widget keeping track of details for path in widgetpaths: self.oldwidgets.append( document.resolveWidgetPath(None, path) ) oldparent = self.oldwidgets[-1].parent self.oldparentpaths.append( oldparent.path ) self.oldindexes.append( oldparent.children.index(self.oldwidgets[-1]) ) oldparent.removeChild(self.oldwidgets[-1].name) def undo(self, document): """Restore deleted widget.""" # put back widgets in reverse order so that indexes are corrent for i in range(len(self.oldwidgets)-1,-1,-1): oldparent = document.resolveWidgetPath(None, self.oldparentpaths[i]) oldparent.addChild(self.oldwidgets[i], index=self.oldindexes[i]) class OperationWidgetMoveUpDown(Operation): """Move a widget up or down in the hierarchy.""" descr = _('move') def __init__(self, widget, direction): """Move the widget specified up or down in the hierarchy. direction is -1 for 'up' or +1 for 'down' """ self.widgetpath = widget.path self.direction = direction def do(self, document): """Move the widget.""" widget = document.resolveWidgetPath(None, self.widgetpath) parent = widget.parent self.suceeded = parent.moveChild(widget, self.direction) self.newpath = widget.path def undo(self, document): """Move it back.""" if self.suceeded: widget = document.resolveWidgetPath(None, self.newpath) parent = widget.parent parent.moveChild(widget, -self.direction) class OperationWidgetMove(Operation): """Move a widget arbitrarily in the hierarchy.""" descr = _('move') def __init__(self, oldchildpath, newparentpath, newindex): """Move widget with path oldchildpath to be a child of newparentpath and with index newindex.""" self.oldchildpath = oldchildpath self.newparentpath = newparentpath self.newindex = newindex def do(self, document): """Move widget.""" child = document.resolveWidgetPath(None, self.oldchildpath) oldparent = child.parent newparent = document.resolveWidgetPath(None, self.newparentpath) self.oldchildindex = oldparent.children.index(child) self.oldparentpath = oldparent.path self.oldname = None if self.newindex < 0: # convert negative index to normal index self.newindex = len(newparent.children) if oldparent is newparent: # moving within same parent self.movemode = 'sameparent' del oldparent.children[self.oldchildindex] if self.newindex > self.oldchildindex: self.newindex -= 1 oldparent.children.insert(self.newindex, child) else: # moving to different parent self.movemode = 'differentparent' # remove from old parent del oldparent.children[self.oldchildindex] # current names of children childnames = newparent.childnames # record previous parent and position newparent.children.insert(self.newindex, child) child.parent = newparent # set a new name, if required if child.name in childnames: self.oldname = child.name child.name = child.chooseName() self.newchildpath = child.path def undo(self, document): """Undo move.""" newparent = document.resolveWidgetPath(None, self.newparentpath) child = document.resolveWidgetPath(None, self.newchildpath) oldparent = document.resolveWidgetPath(None, self.oldparentpath) # remove from new parent del newparent.children[self.newindex] # restore parent oldparent.children.insert(self.oldchildindex, child) child.parent = oldparent # restore name if self.oldname is not None: child.name = self.oldname class OperationWidgetAdd(Operation): """Add a widget of specified type to parent.""" descr = _('add') def __init__(self, parent, type, autoadd=True, name=None, index=-1, **defaultvals): """Add a widget of type given parent is the parent widget type is the type to add (string) autoadd adds children automatically for some widgets name is the (optional) name of the new widget index is position in parent to add the widget settings can be passed to the created widgets as optional arguments """ self.parentpath = parent.path self.wtype = type self.autoadd = autoadd self.name = name self.index = index self.defaultvals = defaultvals def do(self, document): """Create the new widget. Returns the new widget """ parent = document.resolveWidgetPath(None, self.parentpath) w = widgetfactory.thefactory.makeWidget( self.wtype, parent, document, autoadd=self.autoadd, name=self.name, index=self.index, **self.defaultvals) self.createdname = w.name return w def undo(self, document): """Remove the added widget.""" parent = document.resolveWidgetPath(None, self.parentpath) parent.removeChild(self.createdname) ############################################################################### # Dataset operations class OperationDatasetSet(Operation): """Set a dataset to that specified.""" descr = _('set dataset') def __init__(self, datasetname, dataset): self.datasetname = datasetname self.dataset = dataset def do(self, document): """Set dataset, backing up existing one.""" self.olddata = document.data.get(self.datasetname) document.setData(self.datasetname, self.dataset) def undo(self, document): """Undo the data setting.""" if self.olddata is None: document.deleteData(self.datasetname) else: document.setData(self.datasetname, self.olddata) class OperationDatasetDelete(Operation): """Delete a dateset.""" descr = _('delete dataset') def __init__(self, datasetname): self.datasetname = datasetname def do(self, document): """Remove dataset from document, but preserve for undo.""" self.olddata = document.data[self.datasetname] document.deleteData(self.datasetname) def undo(self, document): """Put dataset back""" document.setData(self.datasetname, self.olddata) class OperationDatasetRename(Operation): """Rename the dataset. Assumes newname doesn't already exist """ descr = _('rename dataset') def __init__(self, oldname, newname): self.oldname = oldname self.newname = newname def do(self, document): """Rename dataset from oldname to newname.""" ds = document.data[self.oldname] self.origname = self.origrename = None if ds.linked: p = ds.linked.params if p.renames is None: p.renames = {} # dataset might have been renamed before, so we have to # remove that entry and remember how to put it back origname = self.oldname for o, n in list(p.renames.items()): if n == self.oldname: origname = o # store in case of undo self.origrename = (o, n) break p.renames[origname] = self.newname self.origname = origname document.renameDataset(self.oldname, self.newname) def undo(self, document): """Change name back.""" ds = document.data[self.newname] if ds.linked: p = ds.linked.params del p.renames[self.origname] if self.origrename: p.renames[self.origrename[0]] = self.origrename[1] document.renameDataset(self.newname, self.oldname) class OperationDatasetDuplicate(Operation): """Duplicate a dataset. Assumes duplicate name doesn't already exist """ descr = _('duplicate dataset') def __init__(self, origname, duplname): self.origname = origname self.duplname = duplname def do(self, document): """Make the duplicate""" self.olddata = document.data.get(self.duplname) dataset = document.data[self.origname] duplicate = dataset.returnCopy() document.setData(self.duplname, duplicate) def undo(self, document): """Delete the duplicate""" if self.olddata is None: document.deleteData(self.duplname) else: document.setData(self.duplname, self.olddata) class OperationDatasetUnlinkFile(Operation): """Remove association between dataset and file.""" descr = _('unlink dataset') def __init__(self, datasetname): self.datasetname = datasetname def do(self, document): dataset = document.data[self.datasetname] self.oldfilelink = dataset.linked dataset.linked = None def undo(self, document): dataset = document.data[self.datasetname] dataset.linked = self.oldfilelink class OperationDatasetUnlinkRelation(Operation): """Remove association between dataset and another dataset. """ descr = _('unlink dataset') def __init__(self, datasetname): self.datasetname = datasetname def do(self, document): dataset = document.data[self.datasetname] self.olddataset = dataset ds = dataset.returnCopy() document.setData(self.datasetname, ds) def undo(self, document): document.setData(self.datasetname, self.olddataset) class OperationDatasetCreate(Operation): """Create dataset base class.""" def __init__(self, datasetname): self.datasetname = datasetname self.parts = {} def setPart(self, part, val): self.parts[part] = val def do(self, document): """Record old dataset if it exists.""" self.olddataset = document.data.get(self.datasetname) def undo(self, document): """Delete the created dataset.""" document.deleteData(self.datasetname) if self.olddataset is not None: document.setData(self.datasetname, self.olddataset) class OperationDatasetCreateRange(OperationDatasetCreate): """Create a dataset in a specfied range.""" descr = _('create dataset from range') def __init__(self, datasetname, numsteps, parts, linked=False): """Create a dataset with numsteps values. parts is a dict containing keys 'data', 'serr', 'perr' and/or 'nerr'. The values are tuples with (start, stop) values for each range. """ OperationDatasetCreate.__init__(self, datasetname) self.numsteps = numsteps self.parts = parts self.linked = linked def do(self, document): """Create dataset using range.""" OperationDatasetCreate.do(self, document) data = self.parts['data'] serr = self.parts.get('serr', None) perr = self.parts.get('perr', None) nerr = self.parts.get('nerr', None) ds = datasets.DatasetRange( self.numsteps, data, serr=serr, perr=perr, nerr=nerr) if not self.linked: # copy these values if we don't want to link ds = datasets.Dataset( data=ds.data, serr=ds.serr, perr=ds.perr, nerr=ds.nerr) document.setData(self.datasetname, ds) return ds class CreateDatasetException(Exception): """Thrown by dataset creation routines.""" pass class OperationDatasetCreateParameteric(OperationDatasetCreate): """Create a dataset using expressions dependent on t.""" descr = _('create parametric dataset') def __init__(self, datasetname, t0, t1, numsteps, parts, linked=False): """Create a parametric dataset. Variable t goes from t0 to t1 in numsteps. parts is a dict with keys 'data', 'serr', 'perr' and/or 'nerr' The values are expressions for evaluating.""" OperationDatasetCreate.__init__(self, datasetname) self.numsteps = numsteps self.t0 = t0 self.t1 = t1 self.parts = parts self.linked = linked def do(self, document): """Create the dataset.""" OperationDatasetCreate.do(self, document) p = self.parts.copy() p['parametric'] = (self.t0, self.t1, self.numsteps) ds = datasets.DatasetExpression(**p) ds.document = document if not self.linked: # copy these values if we don't want to link ds = datasets.Dataset( data=ds.data, serr=ds.serr, perr=ds.perr, nerr=ds.nerr) document.setData(self.datasetname, ds) return ds class OperationDatasetCreateExpression(OperationDatasetCreate): descr = _('create dataset from expression') def __init__(self, datasetname, parts, link, parametric=None): """Create a dataset from existing dataset using expressions. parts is a dict with keys 'data', 'serr', 'perr' and/or 'nerr' The values are expressions for evaluating. If link is True, then the dataset is linked to the expressions Parametric is a tuple (min, max, numitems) if creating parametric datasets. """ OperationDatasetCreate.__init__(self, datasetname) self.parts = parts self.link = link self.parametric = parametric def validateExpression(self, document): """Validate the expression is okay. Returns True if ok """ p = self.parts.copy() p['parametric'] = self.parametric ds = datasets.DatasetExpression(**p) ds.document = document return ds.updateEvaluation() def do(self, document): """Create the dataset.""" OperationDatasetCreate.do(self, document) p = self.parts.copy() p['parametric'] = self.parametric ds = datasets.DatasetExpression(**p) ds.document = document if not self.link: # copy these values if we don't want to link ds = datasets.Dataset( data=ds.data, serr=ds.serr, perr=ds.perr, nerr=ds.nerr) document.setData(self.datasetname, ds) return ds class OperationDatasetsFilter(Operation): """Operation to filter datasets.""" descr = _("filter datasets") def __init__(self, inexpr, indatasets, prefix="", suffix="", invert=False, replaceblanks=False): """Initialise operation: inexpr: input expression indatasets: list of dataset names prefix, suffix: output prefix/suffix invert: invert filter expression replaceblanks: replace output with blank/nan values. """ if not prefix and not suffix: raise ValueError("Prefix and/or suffix must be given") self.inexpr = inexpr self.indatasets = indatasets self.prefix = prefix self.suffix = suffix self.invert = invert self.replaceblanks = replaceblanks def makeGen(self): """Return generator object.""" return datasets.DatasetFilterGenerator( self.inexpr, self.indatasets, prefix=self.prefix, suffix=self.suffix, invert=self.invert, replaceblanks=self.replaceblanks) def check(self, doc): """Check the filter is ok. Return (ok, [list of errors]) """ log = self.makeGen().evaluateFilter(doc) if log: return (False, log) return (True, []) def do(self, doc): """Do the operation.""" gen = self.makeGen() self.olddatasets = {} for name in self.indatasets: outname = self.prefix + name + self.suffix self.olddatasets[outname] = doc.data.get(outname) doc.setData(outname, datasets.DatasetFiltered(gen, name, doc)) def undo(self, doc): """Undo operation.""" for name, val in self.olddatasets.items(): if val is None: doc.deleteData(name) else: doc.setData(name, val) class OperationDataset2DBase(Operation): """Operation as base for 2D dataset creation operations.""" def __init__(self, name, link): """Setup operation.""" self.datasetname = name self.link = link def validateExpression(self, document): """Validate expression is okay.""" ds = self.makeDSClass() ds.document = document ds.evalDataset() if 0 in ds.data.shape: raise CreateDatasetException() def do(self, document): """Make new dataset.""" # keep backup of old if exists self.olddataset = document.data.get(self.datasetname, None) # make new dataset ds = self.makeDSClass() ds.document = document if not self.link: # unlink if necessary ds = datasets.Dataset2D( ds.data, xrange=ds.xrange, yrange=ds.yrange, xedge=ds.xedge, yedge=ds.yedge, xcent=ds.xcent, ycent=ds.ycent) document.setData(self.datasetname, ds) return ds def undo(self, document): """Undo dataset creation.""" document.deleteData(self.datasetname) if self.olddataset: document.setData(self.datasetname, self.olddataset) class OperationDataset2DCreateExpressionXYZ(OperationDataset2DBase): descr = _('create 2D dataset from x, y and z expressions') def __init__(self, datasetname, xexpr, yexpr, zexpr, link): OperationDataset2DBase.__init__(self, datasetname, link) self.xexpr = xexpr self.yexpr = yexpr self.zexpr = zexpr def makeDSClass(self): return datasets.Dataset2DXYZExpression( self.xexpr, self.yexpr, self.zexpr) class OperationDataset2DCreateExpression(OperationDataset2DBase): descr = _('create 2D dataset from expression') def __init__(self, datasetname, expr, link): OperationDataset2DBase.__init__(self, datasetname, link) self.expr = expr def makeDSClass(self): return datasets.Dataset2DExpression(self.expr) class OperationDataset2DXYFunc(OperationDataset2DBase): descr = _('create 2D dataset from function of x and y') def __init__(self, datasetname, xstep, ystep, expr, link): """Create 2d dataset: xstep: tuple(xmin, xmax, step) ystep: tuple(ymin, ymax, step) expr: expression of x and y link: whether to link to this expression """ OperationDataset2DBase.__init__(self, datasetname, link) self.xstep = xstep self.ystep = ystep self.expr = expr def makeDSClass(self): return datasets.Dataset2DXYFunc(self.xstep, self.ystep, self.expr) class OperationDatasetUnlinkByFile(Operation): """Unlink all datasets associated with file.""" descr = _('unlink datasets') def __init__(self, filename): """Unlink all datasets associated with filename.""" self.filename = filename def do(self, document): """Remove links.""" self.oldlinks = {} for name, ds in document.data.items(): if ds.linked is not None and ds.linked.filename == self.filename: self.oldlinks[name] = ds.linked ds.linked = None def undo(self, document): """Restore links.""" for name, link in self.oldlinks.items(): try: document.data[name].linked = link except KeyError: pass class OperationDatasetDeleteByFile(Operation): """Delete all datasets associated with file.""" descr = _('delete datasets') def __init__(self, filename): """Delete all datasets associated with filename.""" self.filename = filename def do(self, document): """Remove datasets.""" self.olddatasets = {} for name, ds in list(document.data.items()): if ds.linked is not None and ds.linked.filename == self.filename: self.olddatasets[name] = ds document.deleteData(name) def undo(self, document): """Restore datasets.""" for name, ds in self.olddatasets.items(): document.setData(name, ds) ############################################################################### # Import datasets class OperationDataTag(Operation): """Add a tag to a list of datasets.""" descr = _('add dataset tags') def __init__(self, tag, datasetnames): """Add tag to datasets listed.""" self.tag = tag self.datasetnames = datasetnames def do(self, document): """Add new tags, if required.""" self.removetags = [] for name in self.datasetnames: existing = document.data[name].tags if self.tag not in existing: existing.add(self.tag) self.removetags.append(name) def undo(self, document): """Remove tags, if not previously present.""" for name in self.removetags: document.data[name].tags.remove(self.tag) class OperationDataUntag(Operation): """Add a tag to a list of datasets.""" descr = _('remove dataset tags') def __init__(self, tag, datasetnames): """Remove tag to datasets listed.""" self.tag = tag self.datasetnames = datasetnames def do(self, document): """Add new tags, if required.""" for name in self.datasetnames: document.data[name].tags.remove(self.tag) def undo(self, document): """Remove tags, if not previously present.""" for name in self.datasetnames: document.data[name].tags.add(self.tag) ############################################################################### # Alter dataset class OperationDatasetAddColumn(Operation): """Add a column to a dataset, blanked to zero.""" descr = _('add dataset column') def __init__(self, datasetname, columnname): """Initialise column columnname in datasetname. columnname can be one of 'data', 'serr', 'perr' or 'nerr' """ self.datasetname = datasetname self.columnname = columnname def do(self, document): """Zero the column.""" ds = document.data[self.datasetname] datacol = ds.data try: setattr(ds, self.columnname, N.zeros(datacol.shape, dtype='float64')) except AttributeError: raise RuntimeError("Invalid column name for dataset") document.setData(self.datasetname, ds) def undo(self, document): """Remove the column.""" ds = document.data[self.datasetname] setattr(ds, self.columnname, None) document.setData(self.datasetname, ds) class OperationDatasetSetVal(Operation): """Set a value in the dataset.""" descr = _('change dataset value') def __init__(self, datasetname, columnname, row, val): """Set row in column columnname to val.""" self.datasetname = datasetname self.columnname = columnname self.row = row self.val = val def do(self, document): """Set the value.""" ds = document.data[self.datasetname] datacol = getattr(ds, self.columnname) self.oldval = datacol[self.row] datacol[self.row] = self.val ds.changeValues(self.columnname, datacol) def undo(self, document): """Restore the value.""" ds = document.data[self.datasetname] datacol = getattr(ds, self.columnname) datacol[self.row] = self.oldval ds.changeValues(self.columnname, datacol) class OperationDatasetSetVal2D(Operation): """Set a value in a 2D dataset.""" descr = _('change 2D dataset value') def __init__(self, datasetname, row, col, val): """Set row in column columnname to val.""" self.datasetname = datasetname self.row = row self.col = col self.val = val def do(self, document): """Set the value.""" ds = document.data[self.datasetname] self.oldval = ds.data[self.row, self.col] ds.data[self.row, self.col] = self.val document.modifiedData(ds) def undo(self, document): """Restore the value.""" ds = document.data[self.datasetname] ds.data[self.row, self.col] = self.oldval document.modifiedData(ds) class OperationDatasetDeleteRow(Operation): """Delete a row or several in the dataset.""" descr = _('delete dataset row') def __init__(self, datasetname, row, numrows=1): """Delete a row in a dataset.""" self.datasetname = datasetname self.row = row self.numrows = numrows def do(self, document): """Set the value.""" ds = document.data[self.datasetname] self.saveddata = ds.deleteRows(self.row, self.numrows) def undo(self, document): """Restore the value.""" ds = document.data[self.datasetname] ds.insertRows(self.row, self.numrows, self.saveddata) class OperationDatasetInsertRow(Operation): """Insert a row or several in the dataset.""" descr = _('insert dataset row') def __init__(self, datasetname, row, numrows=1): """Delete a row in a dataset.""" self.datasetname = datasetname self.row = row self.numrows = numrows def do(self, document): """Set the value.""" ds = document.data[self.datasetname] ds.insertRows(self.row, self.numrows, {}) def undo(self, document): """Restore the value.""" ds = document.data[self.datasetname] ds.deleteRows(self.row, self.numrows) ############################################################################### # Custom setting operations class OperationSetCustom(Operation): """Set custom objects, such as constants.""" descr = _('set a custom definition') # translate ctype below into attribute of evaluate type_to_attr = { 'definition': 'def_definitions', 'function': 'def_definitions', 'constant': 'def_definitions', 'import': 'def_imports', 'color': 'def_colors', 'colormap': 'def_colormaps', } def __init__(self, ctype, vals): """Set custom values to be the list given. ctype is one of 'definition', 'function', 'constant', 'import', 'color' or 'colormap' """ self.ctype = ctype self.customvals = list(vals) def _getlist(self, document): return getattr(document.evaluate, self.type_to_attr[self.ctype]) def do(self, document): """Set the custom object.""" lst = self._getlist(document) self.oldval = list(lst) lst[:] = self.customvals document.evaluate.update() def undo(self, document): """Restore custom object.""" self._getlist(document)[:] = self.oldval document.evaluate.update() ############################################################################### # Misc operations class OperationMultiple(Operation): """Multiple operations batched into one.""" def __init__(self, operations, descr='change'): """A batch operation made up of the operations in list. Optional argument descr gives a description of the combined operation """ self.operations = operations if descr: self.descr = descr def addOperation(self, op): """Add an operation to the list of operations.""" self.operations.append(op) def do(self, document): """Do the multiple operations.""" for op in self.operations: op.do(document) def undo(self, document): """Undo the multiple operations.""" # operations need to undone in reverse order for op in self.operations[::-1]: op.undo(document) class OperationLoadStyleSheet(OperationMultiple): """An operation to load a stylesheet.""" descr = _('load stylesheet') def __init__(self, filename): """Load stylesheet with filename.""" OperationMultiple.__init__(self, [], descr=None) self.filename = os.path.abspath(filename) def do(self, document): """Do the import.""" from . import commandinterpreter # get document to keep track of changes for undo/redo document.batchHistory(self) # fire up interpreter to read file interpreter = commandinterpreter.CommandInterpreter(document) try: interpreter.runFile( io.open( self.filename, 'r', encoding='utf8') ) except: document.batchHistory(None) raise document.batchHistory(None) class OperationLoadCustom(OperationLoadStyleSheet): descr = _('load custom definitions') class OperationToolsPlugin(OperationMultiple): """An operation to represent what a tools plugin does.""" def __init__(self, plugin, fields): """Use tools plugin, passing fields.""" OperationMultiple.__init__(self, [], descr=None) self.plugin = plugin self.fields = fields self.descr = plugin.name def do(self, document): """Use the plugin.""" from . import commandinterface # get document to keep track of changes for undo/redo document.batchHistory(self) # fire up interpreter to read file ifc = commandinterface.CommandInterface(document) try: self.plugin.apply(ifc, self.fields) except: document.batchHistory(None) raise document.batchHistory(None) class OperationDatasetPlugin(Operation): """An operation to activate a dataset plugin.""" def __init__(self, plugin, fields, datasetnames={}, raiseerrors=False): """Use dataset plugin, passing fields.""" self.plugin = plugin self.fields = fields self.descr = plugin.name self.names = datasetnames self.raiseerrors = raiseerrors def do(self, document): """Use the plugin. """ self.datasetnames = [] self.olddata = {} manager = self.manager = plugins.DatasetPluginManager( self.plugin, document, self.fields, raiseerrors=self.raiseerrors) names = self.datasetnames = list(manager.datasetnames) # rename if requested for i in range(len(names)): if names[i] in self.names: names[i] = self.names[names[i]] # preserve old datasets for name in names: if name in document.data: self.olddata[name] = document.data[name] # add new datasets to document for name, ds in zip(names, manager.veuszdatasets): if name is not None: document.setData(name, ds) return names def validate(self): """Check that the plugin works the first time.""" self.manager.update(raiseerrors=True) def undo(self, document): """Undo dataset plugin.""" # delete datasets which were created for name in self.datasetnames: if name is not None: document.deleteData(name) # put back old datasets for name, ds in self.olddata.items(): document.setData(name, ds) class OperationDatasetHistogram(Operation): """Operation to make histogram from data.""" descr = _("make histogram") def __init__(self, expr, outposns, outvalues, binparams=None, binmanual=None, method='counts', cumulative = 'none', errors=False): """ inexpr = input dataset expression outposns = name of dataset for bin positions outvalues = name of dataset for bin values binparams = None / (num, minval, maxval, islog) binmanual = None / [1,2,3,4,5] method = ('counts', 'density', or 'fractions') cumulative = ('none', 'smalltolarge', 'largetosmall') errors = True/False """ self.expr = expr self.outposns = outposns self.outvalues = outvalues self.binparams = binparams self.binmanual = binmanual self.method = method self.cumulative = cumulative self.errors = errors def do(self, document): """Create histogram datasets.""" gen = datasets.DatasetHistoGenerator( document, self.expr, binparams=self.binparams, binmanual=self.binmanual, method=self.method, cumulative=self.cumulative, errors=self.errors) self.oldposnsds = self.oldvaluesds = None if self.outvalues != '': self.oldvaluesds = document.data.get(self.outvalues, None) document.setData(self.outvalues, gen.generateValueDataset()) if self.outposns != '': self.oldposnsds = document.data.get(self.outposns, None) document.setData(self.outposns, gen.generateBinDataset()) def undo(self, document): """Undo creation of datasets.""" if self.oldposnsds is not None: if self.outposns != '': document.setData(self.outposns, self.oldposnsds) else: document.deleteData(self.outposns) if self.oldvaluesds is not None: if self.outvalues != '': document.setData(self.outvalues, self.oldvaluesds) else: document.deleteData(self.outvalues) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/document/painthelper.py0000664000175000017500000002774414332253347017023 0ustar00jssjss# Copyright (C) 2011 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """Helper for doing the plotting of the document. """ from .. import qtall as qt from .. import utils try: from ..helpers.recordpaint import RecordPaintDevice except ImportError: # fallback to this if we don't get the native recorded def RecordPaintDevice(width, height, dpix, dpiy): return qt.QPicture() class DrawState: """Each widget plotted has a recorded state in this object.""" def __init__(self, widget, bounds, clip, helper): """Initialise state for widget. bounds: tuple of (x1, y1, x2, y2) clip: if clipping should be done, another tuple.""" self.widget = widget self.record = RecordPaintDevice( int(helper.pagesize[0]), int(helper.pagesize[1]), int(helper.dpi[0]), int(helper.dpi[1])) self.bounds = bounds self.clip = clip # controlgraphs belonging to widget self.cgis = [] # list of child widgets states self.children = [] class PainterRoot(qt.QPainter): """Base class for painting of widgets.""" def updateMetaData(self, helper): """Update metadeta from helper These values are used during plotting.""" self.helper = helper self.document = helper.document self.colors = self.document.evaluate.colors self.scaling = helper.scaling self.pixperpt = helper.pixperpt self.dpi = helper.dpi[1] self.pagesize = helper.pagesize self.maxdim = max(*self.pagesize) self.textrects = helper.textrects def docColor(self, name): """Return color from document.""" return self.colors.get(name) def docColorAuto(self, index): """Return automatic doc color given index.""" return self.colors.getIndex(index+1) def __enter__(self): pass def __exit__(self, exc_type, exc_value, traceback): pass class DirectPainter(PainterRoot): """Painter class for direct painting with PaintHelper below. """ class RecordPainter(PainterRoot): """This is the painter subclass for rendering in Veusz, which keeps track of which widget is being painted.""" def __init__(self, widget, outdev): PainterRoot.__init__(self, outdev) self.widget = widget def __enter__(self): #print ' '*len(self.helper.widgetstack), self.widget self.helper.widgetstack.append(self.widget) def __exit__(self, exc_type, exc_value, traceback): self.helper.widgetstack.pop() class PaintHelper: """Helper used when painting widgets. Designed to be used for a particular page. Provides a QPainter/RecordPainter to each widget for plotting. Records the controlgraphs for each widget. Holds the scaling, dpi and size of the page. """ def __init__(self, document, pagesize, scaling=1, devicepixelratio=1, dpi=(100, 100), directpaint=None): """ pagesize: tuple (pixelw, pixelh), which can be float. This is the page size in the coordinates presented to graph drawing. scaling: scaling from graph coordinates to native coordinates devicepixelratio: high DPI scaling factor from logical to native pixels dpi: tuple of X and Y dpi for graph coordinates directpaint: use this painter directly, rather than using RecordPainter to store each widget painting """ self.document = document self.dpi = dpi self.scaling = scaling # scaling factor, excluding high-DPI factor (for controlgraphs) self.cgscale = scaling / devicepixelratio self.devicepixelratio = devicepixelratio self.pixperpt = self.dpi[1] / 72. # page size in native pixels (without default zoom) self.rawpagesize = max(pagesize[0], 1), max(pagesize[1], 1) # page size in graph pixels self.pagesize = self.rawpagesize[0]/scaling, self.rawpagesize[1]/scaling # keep track of states of all widgets # maps (widget, layer) to DrawState self.states = {} # axis to plotter mappings self.axisplottermap = {} self.plotteraxismap = {} # whether to directly render to a painter or make new layers self.directpaint = directpaint # state for root widget self.rootstate = None # keep track of last widget being plotted self.widgetstack = [] # current index for each plotter (if wanting automatic colors) self.autoplottercount = 0 self.autoplottermap = {} # to avoid overlapping text self.textrects = utils.RectangleOverlapTester() @property def maxdim(self): """Return maximum page dimension (using PaintHelper's DPI).""" return max(*self.pagesize) def sizeAtDpi(self, dpi): """Return a tuple size for the page given an output device dpi.""" return ( int(self.pagesize[0]/self.dpi[0] * dpi), int(self.pagesize[1]/self.dpi[1] * dpi) ) def painter(self, widget, bounds, clip=None, layer=None): """Return a painter for use when drawing the widget. widget: widget object bounds: tuple (x1, y1, x2, y2) of widget bounds clip: a QRectF, if set layer: layer to plot widget, or None to get next automatically """ # automatically add a layer if not given if layer is None: layer = 0 while (widget, layer) in self.states: layer += 1 s = self.states[(widget, layer)] = DrawState(widget, bounds, clip, self) if self.widgetstack: self.states[(self.widgetstack[-1], 0)].children.append(s) else: self.rootstate = s if self.directpaint is None: # save to multiple recorded layers p = RecordPainter(widget, s.record) else: # only paint to one output painter p = self.directpaint # make sure we get the same state each time p.restore() p.save() if clip is not None: # have to clip before scaling, avoiding a qt bug where the clipping # seems to happen in the wrong place p.setClipRect(qt.QRectF( clip.topLeft()*self.scaling, clip.bottomRight()*self.scaling)) # scale (used for zooming) if self.scaling != 1: p.scale(self.scaling, self.scaling) p.updateMetaData(self) return p def setControlGraph(self, widget, cgis): """Records the control graph list for the widget given.""" self.states[(widget,0)].cgis = cgis def getControlGraph(self, widget): """Return control graph for widget (or None).""" try: return self.states[(widget,0)].cgis except KeyError: return None def renderToPainter(self, painter): """Render saved output to painter. """ self._renderState(self.rootstate, painter) def _renderState(self, state, painter, indent=0): """Render state to painter.""" painter.save() state.record.play(painter) painter.restore() for child in state.children: #print ' '*indent, child.widget self._renderState(child, painter, indent=indent+1) def identifyWidgetAtPoint(self, x, y, antialias=True): """What widget has drawn at the point x,y? Returns the widget drawn last on the point, or None if it is an empty part of the page. root is the root widget to recurse from if antialias is true, do test for antialiased drawing """ # reset text rectangles for painting so not to lose text self.textrects.reset() # convert screen to bitmap coordinates x *= self.devicepixelratio y *= self.devicepixelratio # make a small image filled with a specific color box = 3 specialcolor = qt.QColor(254, 255, 254) origpix = qt.QPixmap(2*box+1, 2*box+1) origpix.fill(specialcolor) origimg = origpix.toImage() # store most recent widget here lastwidget = [None] def rendernextstate(state): """Recursively draw painter. Checks whether drawing a widgetchanges the small image around the point given. """ pixmap = qt.QPixmap(origpix) painter = qt.QPainter(pixmap) painter.setRenderHint(qt.QPainter.Antialiasing, antialias) painter.setRenderHint(qt.QPainter.TextAntialiasing, antialias) # this makes the small image draw from x-box->x+box, y-box->y+box # translate would get overriden by coordinate system playback painter.setWindow(int(x-box), int(y-box), int(box*2+1), int(box*2+1)) state.record.play(painter) painter.end() newimg = pixmap.toImage() if newimg != origimg: lastwidget[0] = state.widget for child in state.children: rendernextstate(child) rendernextstate(self.rootstate) widget = lastwidget[0] # need to re-render 3d scene to look for clicks if widget and widget.typename == 'scene3d': bounds = [0,0,100,100] for w in self.states: if w[0] is widget: bounds = self.states[w].bounds return widget.identifyWidgetAtPoint(self, bounds, self.scaling, x, y) else: return widget def pointInWidgetBounds(self, x, y, widgettype): """Which graph widget plots at point x,y? Recurse from widget root widgettype is the class of widget to get """ widget = [None] def recursestate(state): if isinstance(state.widget, widgettype): b = state.bounds if x >= b[0] and y >= b[1] and x <= b[2] and y <= b[3]: # most recent widget drawing on point widget[0] = state.widget for child in state.children: recursestate(child) recursestate(self.rootstate) return widget[0] def widgetBounds(self, widget): """Return bounds of widget.""" return self.states[(widget,0)].bounds def widgetBoundsIterator(self, widgettype=None): """Returns bounds for each widget. Set widgettype to be a widget type to filter returns Yields (widget, bounds) """ # this is a recursive algorithm turned into an iterative one # which makes creation of a generator easier stack = [self.rootstate] while stack: state = stack[0] if widgettype is None or isinstance(state.widget, widgettype): yield state.widget, state.bounds # remove the widget itself from the stack and insert children stack = state.children + stack[1:] def autoColorIndex(self, key): """Return automatic color index for key given.""" if key not in self.autoplottermap: self.autoplottermap[key] = self.autoplottercount self.autoplottercount += 1 return self.autoplottermap[key] ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/document/selftest_export.py0000664000175000017500000000440414332253347017726 0ustar00jssjss# Copyright (C) 2010 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """A paint engine for doing self-tests.""" from . import svg_export class SelfTestPaintEngine(svg_export.SVGPaintEngine): """Paint engine class for self testing output.""" def __init__(self): svg_export.SVGPaintEngine.__init__(self) # ppm images are simple and should be same on all platforms self.imageformat = 'ppm' def drawTextItem(self, pt, textitem): """Write text directly in self test mode.""" text = textitem.text().encode('ascii', 'xmlcharrefreplace').decode( 'ascii') svg_export.SVGElement( self.celement, 'text', 'x="%s" y="%s" font-size="%gpt" fill="%s"' % ( svg_export.fltStr(pt.x()), svg_export.fltStr(pt.y()), textitem.font().pointSize(), self.pen.color().name() ), text=text ) class SelfTestPaintDevice(svg_export.SVGPaintDevice): """Paint device for SVG paint engine. Note: this device is different to SVGPaintDevice because it switches scaling to 1 by default. """ def __init__(self, fileobj, width_in, height_in, dpi=90): """Initialise with output file, and dimensions in inches.""" svg_export.SVGPaintDevice.__init__( self, fileobj, width_in, height_in, dpi=dpi, scale=1) self.engine = SelfTestPaintEngine() ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/document/svg_export.py0000664000175000017500000005233614332253347016703 0ustar00jssjss# Copyright (C) 2010 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """A home-brewed SVG paint engine for doing svg with clipping and exporting text as paths for WYSIWYG.""" import re from .. import qtall as qt # physical sizes inch_mm = 25.4 inch_pt = 72.0 def printpath(path): """Debugging print path.""" print("Contents of", path) for i in range(path.elementCount()): el = path.elementAt(i) print(" ", el.type, el.x, el.y) def fltStr(v, prec=2): """Change a float to a string, using a maximum number of decimal places but removing trailing zeros.""" # ensures consistent rounding behaviour on different platforms v = round(v, prec+2) val = ('% 20.10f' % v)[:10+prec] # drop any trailing zeros val = val.rstrip('0').lstrip(' ').rstrip('.') # get rid of -0s (platform differences here) if val == '-0': val = '0' return val def escapeXML(text): """Escape special characters in XML.""" # we have swap & with an unused character, so we can replace it later text = text.replace('&', '\ue001') text = text.replace('<', '<') text = text.replace('>', '>') text = text.replace('"', '"') text = text.replace("'", ''') text = text.replace('\ue001', '&') return text def createPath(path, scale): """Convert qt path to svg path. We use relative coordinates to make the file size smaller and help compression """ p = [] count = path.elementCount() i = 0 ox, oy = 0, 0 while i < count: e = path.elementAt(i) nx, ny = e.x*scale, e.y*scale if e.type == qt.QPainterPath.MoveToElement: p.append( 'm%s,%s' % (fltStr(nx-ox), fltStr(ny-oy)) ) ox, oy = nx, ny elif e.type == qt.QPainterPath.LineToElement: p.append( 'l%s,%s' % (fltStr(nx-ox), fltStr(ny-oy)) ) ox, oy = nx, ny elif e.type == qt.QPainterPath.CurveToElement: e1 = path.elementAt(i+1) e2 = path.elementAt(i+2) p.append( 'c%s,%s,%s,%s,%s,%s' % ( fltStr(nx-ox), fltStr(ny-oy), fltStr(e1.x*scale-ox), fltStr(e1.y*scale-oy), fltStr(e2.x*scale-ox), fltStr(e2.y*scale-oy)) ) ox, oy = e2.x*scale, e2.y*scale i += 2 else: assert False i += 1 return ''.join(p) class SVGElement: """SVG element in output. This represents the XML tree in memory """ def __init__(self, parent, eltype, attrb, text=None): """Intialise element. parent: parent element or None eltype: type (e.g. 'polyline') attrb: attribute string appended to output text: text to output between this and closing element. """ self.eltype = eltype self.attrb = attrb self.children = [] self.parent = parent self.text = text if parent: parent.children.append(self) def write(self, fileobj): """Write element and its children to the output file.""" fileobj.write('<%s' % self.eltype) if self.attrb: fileobj.write(' ' + self.attrb) if self.text: fileobj.write('>%s\n' % (self.text, self.eltype)) elif self.children: fileobj.write('>\n') for c in self.children: c.write(fileobj) fileobj.write('\n' % self.eltype) else: # simple close tag if not children or text fileobj.write('/>\n') class SVGPaintEngine(qt.QPaintEngine): """Paint engine class for writing to svg files.""" def __init__(self, writetextastext=False): qt.QPaintEngine.__init__( self, qt.QPaintEngine.Antialiasing | qt.QPaintEngine.PainterPaths | qt.QPaintEngine.PrimitiveTransform | qt.QPaintEngine.PaintOutsidePaintEvent | qt.QPaintEngine.PixmapTransform | qt.QPaintEngine.AlphaBlend ) self.imageformat = 'png' self.writetextastext = writetextastext def begin(self, paintdevice): """Start painting.""" self.device = paintdevice self.scale = paintdevice.scale self.pen = qt.QPen() self.brush = qt.QBrush() self.clippath = None self.clipnum = 0 self.existingclips = {} self.transform = qt.QTransform() # svg root element for qt defaults self.rootelement = SVGElement( None, 'svg', ( 'width="%spx" height="%spx" version="1.1"\n' ' xmlns="http://www.w3.org/2000/svg"\n' ' xmlns:xlink="http://www.w3.org/1999/xlink"') % ( fltStr(self.device.width*self.device.sdpi*self.scale), fltStr(self.device.height*self.device.sdpi*self.scale), ) ) SVGElement(self.rootelement, 'desc', '', 'Veusz output document') # definitions, for clips, etc. self.defs = SVGElement(self.rootelement, 'defs', '') # this is where all the drawing goes self.celement = SVGElement( self.rootelement, 'g', 'stroke-linejoin="bevel" stroke-linecap="square" ' 'stroke="#000000" fill-rule="evenodd"') # previous transform, stroke and clip states self.oldstate = [None, None, None] # cache paths to avoid duplication self.pathcache = {} self.pathcacheidx = 0 return True def pruneEmptyGroups(self): """Take the element tree and remove any empty group entries.""" def recursive(root): children = list(root.children) # remove any empty children first for c in children: recursive(c) if root.eltype == 'g' and len(root.children) == 0: # safe to remove index = root.parent.children.index(root) del root.parent.children[index] # merge equal groups last = None i = 0 while i < len(root.children): this = root.children[i] if ( last is not None and last.eltype == this.eltype and last.attrb == this.attrb and last.text == this.text ): last.children += this.children del root.children[i] else: last = this i += 1 recursive(self.rootelement) def end(self): self.pruneEmptyGroups() fileobj = self.device.fileobj fileobj.write( '\n' '\n' ) # write all the elements self.rootelement.write(fileobj) return True def _updateClipPath(self, clippath, clipoperation): """Update clip path given state change.""" clippath = self.transform.map(clippath) if clipoperation == qt.Qt.NoClip: self.clippath = None elif clipoperation == qt.Qt.ReplaceClip: self.clippath = clippath elif clipoperation == qt.Qt.IntersectClip: self.clippath = self.clippath.intersected(clippath) elif clipoperation == qt.Qt.UniteClip: self.clippath = self.clippath.united(clippath) else: assert False def updateState(self, state): """Examine what has changed in state and call apropriate function.""" ss = state.state() # state is a list of transform, stroke/fill and clip states statevec = list(self.oldstate) if ss & qt.QPaintEngine.DirtyTransform: self.transform = state.transform() statevec[0] = self.transformState() if ss & qt.QPaintEngine.DirtyPen: self.pen = state.pen() statevec[1] = self.strokeFillState() if ss & qt.QPaintEngine.DirtyBrush: self.brush = state.brush() statevec[1] = self.strokeFillState() if ss & qt.QPaintEngine.DirtyClipPath: self._updateClipPath(state.clipPath(), state.clipOperation()) statevec[2] = self.clipState() if ss & qt.QPaintEngine.DirtyClipRegion: path = qt.QPainterPath() path.addRegion(state.clipRegion()) self._updateClipPath(path, state.clipOperation()) statevec[2] = self.clipState() # work out which state differs first pop = 0 for i in range(2, -1, -1): if statevec[i] != self.oldstate[i]: pop = i+1 break # go back up the tree the required number of times for i in range(pop): if self.oldstate[i]: self.celement = self.celement.parent # create new elements for changed states for i in range(pop-1, -1, -1): if statevec[i]: self.celement = SVGElement( self.celement, 'g', ' '.join(statevec[i])) self.oldstate = statevec def clipState(self): """Get SVG clipping state. This is in the form of an svg group""" if self.clippath is None: return () path = createPath(self.clippath, self.scale) if path in self.existingclips: url = 'url(#c%i)' % self.existingclips[path] else: clippath = SVGElement( self.defs, 'clipPath', 'id="c%i"' % self.clipnum) SVGElement(clippath, 'path', 'd="%s"' % path) url = 'url(#c%i)' % self.clipnum self.existingclips[path] = self.clipnum self.clipnum += 1 return ('clip-path="%s"' % url,) def strokeFillState(self): """Return stroke-fill state.""" vals = {} p = self.pen # - color color = p.color().name() if color != '#000000': vals['stroke'] = p.color().name() # - opacity if p.color().alphaF() != 1.: vals['stroke-opacity'] = '%.3g' % p.color().alphaF() # - join style if p.joinStyle() != qt.Qt.BevelJoin: vals['stroke-linejoin'] = { qt.Qt.MiterJoin: 'miter', qt.Qt.SvgMiterJoin: 'miter', qt.Qt.RoundJoin: 'round', qt.Qt.BevelJoin: 'bevel' }[p.joinStyle()] # - cap style if p.capStyle() != qt.Qt.SquareCap: vals['stroke-linecap'] = { qt.Qt.FlatCap: 'butt', qt.Qt.SquareCap: 'square', qt.Qt.RoundCap: 'round' }[p.capStyle()] # - width w = p.widthF() # width 0 is device width for qt if w == 0.: w = 1./self.scale vals['stroke-width'] = fltStr(w*self.scale) # - line style if p.style() == qt.Qt.NoPen: vals['stroke'] = 'none' elif p.style() not in (qt.Qt.SolidLine, qt.Qt.NoPen): # convert from pen width fractions to pts nums = [fltStr(self.scale*w*x) for x in p.dashPattern()] vals['stroke-dasharray'] = ','.join(nums) # BRUSH STYLES b = self.brush if b.style() == qt.Qt.NoBrush: vals['fill'] = 'none' else: vals['fill'] = b.color().name() if b.color().alphaF() != 1.0: vals['fill-opacity'] = '%.3g' % b.color().alphaF() items = ['%s="%s"' % x for x in sorted(vals.items())] return tuple(items) def transformState(self): if not self.transform.isIdentity(): m = self.transform dx, dy = m.dx(), m.dy() if (m.m11(), m.m12(), m.m21(), m.m22()) == (1., 0., 0., 1): out = ( 'transform="translate(%s,%s)"' % ( fltStr(dx*self.scale), fltStr(dy*self.scale)), ) else: out = ( 'transform="matrix(%s %s %s %s %s %s)"' % ( fltStr(m.m11(), 4), fltStr(m.m12(), 4), fltStr(m.m21(), 4), fltStr(m.m22(), 4), fltStr(dx*self.scale), fltStr(dy*self.scale) ), ) else: out = () return out def drawPath(self, path): """Draw a path on the output.""" p = createPath(path, self.scale) attrb = 'd="%s"' % p if path.fillRule() == qt.Qt.WindingFill: attrb += ' fill-rule="nonzero"' if attrb in self.pathcache: element, num = self.pathcache[attrb] if num is None: # this is the first time an element has been referenced again # assign it an id for use below num = self.pathcacheidx self.pathcacheidx += 1 self.pathcache[attrb] = element, num # add an id attribute element.attrb += ' id="p%i"' % num # if the parent is a translation, swallow this into the use element m = re.match( r'transform="translate\(([-0-9.]+),([-0-9.]+)\)"', self.celement.attrb) if m: SVGElement( self.celement.parent, 'use', 'xlink:href="#p%i" x="%s" y="%s"' % ( num, m.group(1), m.group(2))) else: SVGElement(self.celement, 'use', 'xlink:href="#p%i"' % num) else: pathel = SVGElement(self.celement, 'path', attrb) self.pathcache[attrb] = [pathel, None] def drawTextItem(self, pt, textitem): """Convert text to a path and draw it. """ if self.writetextastext: # size f = textitem.font() if f.pixelSize() > 0: size = f.pixelSize()*self.scale else: size = f.pointSizeF()*self.scale*self.device.sdpi/inch_pt # get qfont for item font = textitem.font() # get font family, removing any optional bracketed foundry name font_family = re.sub(r'\s+\[.*\]', '', font.family()) # attributes for text item grpattrb = [ 'stroke="none"', 'fill="%s"' % self.pen.color().name(), 'fill-opacity="%.3g"' % self.pen.color().alphaF(), 'font-family="%s"' % escapeXML(font_family), 'font-size="%s"' % size, ] if font.italic(): grpattrb.append('font-style="italic"') if font.bold(): grpattrb.append('font-weight="bold"') grp = SVGElement( self.celement, 'g', ' '.join(grpattrb) ) text = escapeXML( textitem.text() ) textattrb = [ 'x="%s"' % fltStr(pt.x()*self.scale), 'y="%s"' % fltStr(pt.y()*self.scale), 'textLength="%s"' % fltStr(textitem.width()*self.scale), ] # spaces get lost without this if text.find(' ') >= 0 or text[:1] == ' ' or text[-1:] == ' ': textattrb.append('xml:space="preserve"') # write as an SVG text element SVGElement( grp, 'text', ' '.join(textattrb), text=text ) else: # convert to a path path = qt.QPainterPath() path.addText(pt, textitem.font(), textitem.text()) p = createPath(path, self.scale) SVGElement( self.celement, 'path', 'd="%s" fill="%s" stroke="none" fill-opacity="%.3g"' % ( p, self.pen.color().name(), self.pen.color().alphaF()) ) def drawLines(self, lines): """Draw multiple lines.""" paths = [] for line in lines: path = 'M%s,%sl%s,%s' % ( fltStr(line.x1()*self.scale), fltStr(line.y1()*self.scale), fltStr((line.x2()-line.x1())*self.scale), fltStr((line.y2()-line.y1())*self.scale)) paths.append(path) SVGElement(self.celement, 'path', 'd="%s"' % ''.join(paths)) def drawPolygon(self, points, mode): """Draw polygon on output.""" pts = [] for p in points: pts.append( '%s,%s' % (fltStr(p.x()*self.scale), fltStr(p.y()*self.scale)) ) if mode == qt.QPaintEngine.PolylineMode: SVGElement( self.celement, 'polyline', 'fill="none" points="%s"' % ' '.join(pts)) else: attrb = 'points="%s"' % ' '.join(pts) if mode == qt.Qt.WindingFill: attrb += ' fill-rule="nonzero"' SVGElement(self.celement, 'polygon', attrb) def drawEllipse(self, rect): """Draw an ellipse to the svg file.""" SVGElement( self.celement, 'ellipse', 'cx="%s" cy="%s" rx="%s" ry="%s"' % ( fltStr(rect.center().x()*self.scale), fltStr(rect.center().y()*self.scale), fltStr(rect.width()*0.5*self.scale), fltStr(rect.height()*0.5*self.scale) ) ) def drawPoints(self, points): """Draw points.""" for pt in points: x, y = fltStr(pt.x()*self.scale), fltStr(pt.y()*self.scale) SVGElement( self.celement, 'line', ( 'x1="%s" y1="%s" x2="%s" y2="%s" ' 'stroke-linecap="round"' ) % (x, y, x, y) ) def drawImage(self, r, img, sr, flags): """Draw image. As the pixmap method uses the same code, just call this.""" self.drawPixmap(r, img, sr) def drawPixmap(self, r, pixmap, sr): """Draw pixmap svg item. This is converted to a bitmap and embedded in the output """ # convert pixmap to textual data data = qt.QByteArray() buf = qt.QBuffer(data) buf.open(qt.QBuffer.ReadWrite) pixmap.save(buf, self.imageformat.upper(), 0) buf.close() attrb = [ 'x="%s" y="%s" ' % (fltStr(r.x()*self.scale), fltStr(r.y()*self.scale)), 'width="%s" ' % fltStr(r.width()*self.scale), 'height="%s" ' % fltStr(r.height()*self.scale), 'xlink:href="data:image/%s;base64,' % self.imageformat, bytes(data.toBase64()).decode('ascii'), '" preserveAspectRatio="none"' ] SVGElement(self.celement, 'image', ''.join(attrb)) def type(self): """A random number for the engine.""" return qt.QPaintEngine.User + 11 class SVGPaintDevice(qt.QPaintDevice): """Paint device for SVG paint engine. dpi is the real output DPI (unscaled) scale is a scaling value to apply to outputted values """ def __init__(self, fileobj, width_in, height_in, writetextastext=False, dpi=90, scale=0.1): qt.QPaintDevice.__init__(self) self.fileobj = fileobj self.width = width_in self.height = height_in self.scale = scale self.sdpi = dpi/scale self.engine = SVGPaintEngine(writetextastext=writetextastext) def paintEngine(self): return self.engine def metric(self, m): """Return the metrics of the painter.""" if m == qt.QPaintDevice.PdmWidth: return int(self.width*self.sdpi) elif m == qt.QPaintDevice.PdmHeight: return int(self.height*self.sdpi) elif m == qt.QPaintDevice.PdmWidthMM: return int(self.engine.width*inch_mm) elif m == qt.QPaintDevice.PdmHeightMM: return int(self.engine.height*inch_mm) elif m == qt.QPaintDevice.PdmNumColors: return 2147483647 elif m == qt.QPaintDevice.PdmDepth: return 24 elif m == qt.QPaintDevice.PdmDpiX: return int(self.sdpi) elif m == qt.QPaintDevice.PdmDpiY: return int(self.sdpi) elif m == qt.QPaintDevice.PdmPhysicalDpiX: return int(self.sdpi) elif m == qt.QPaintDevice.PdmPhysicalDpiY: return int(self.sdpi) elif m == qt.QPaintDevice.PdmDevicePixelRatio: return 1 # Qt >= 5.6 elif m == getattr(qt.QPaintDevice, 'PdmDevicePixelRatioScaled', -1): return 1 else: # fall back return qt.QPaintDevice.metric(self, m) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/document/widgetfactory.py0000664000175000017500000000524114332253347017347 0ustar00jssjss# widget factory # tools to generate any type of plot widget you want # Copyright (C) 2004 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## class WidgetFactory: """Class to help produce any type of widget you want by name.""" def __init__(self): """Initialise the class.""" self.regwidgets = {} def register(self, classobj): """Register a class with the factory.""" self.regwidgets[classobj.typename] = classobj def makeWidget(self, widgettype, parent, document, name=None, autoadd=True, index=-1, **optargs): """Make a new widget of the appropriate type.""" # check for / in name of widget if name is not None and name.find('/') != -1: raise ValueError('name cannot contain "/"') w = self.regwidgets[widgettype](parent, name=name) w.document = document w.addSettingsCompatLevel(w.settings, document.compatlevel) w.linkToStylesheet() # set all the passed default settings for name, val in optargs.items(): # allow subsettings to be set using __ -> syntax name = name.replace('__', '/') document.resolveSettingPath(w, name).set(val) if autoadd: w.addDefaultSubWidgets() # move around child afterwards, yuck if index != -1: del parent.children[-1] parent.children.insert(index, w) return w def getWidgetClass(self, name): """Get the class for the widget.""" return self.regwidgets[name] def listWidgets(self): """Return an array of the widgets the factory can make.""" return sorted(self.regwidgets) def listWidgetClasses(self): """Return list of allowed classes.""" return list(self.regwidgets.values()) # singleton thefactory = WidgetFactory() ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/embed.py0000664000175000017500000004630614332253347013741 0ustar00jssjss# A module for embedding Veusz within another python program # Copyright (C) 2005 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## """This module allows veusz to be embedded within other Python programs. For example: import time import numpy import veusz.embed as veusz g = veusz.Embedded('new win') g.To( g.Add('page') ) g.To( g.Add('graph') ) g.SetData('x', numpy.arange(20)) g.SetData('y', numpy.arange(20)**2) g.Add('xy') g.Zoom(0.5) time.sleep(60) g.Close() More than one embedded window can be opened at once """ import atexit import sys import os import os.path import struct import socket import subprocess import time import uuid import functools import types import pickle # check remote process has this API version API_VERSION = 2 def findOnPath(cmd): """Find a command on the system path, or None if does not exist.""" path = os.getenv('PATH', os.path.defpath) pathparts = path.split(os.path.pathsep) for dirname in pathparts: dirname = dirname.strip('"') cmdtry = os.path.join(dirname, cmd) if os.path.isfile(cmdtry) and os.access(cmdtry, os.X_OK): return cmdtry return None class Embedded: """An embedded instance of Veusz. This embedded instance supports all the normal veusz functions """ remote = None def __init__(self, name='Veusz', copyof=None, hidden=False, compatlevel=0): """Initialse the embedded veusz window. name is the name of the window to show. copyof duplicates a view of the document in the Embedded instance given hidden makes a hidden window (useful for batch scripting) compatlevel is the compatibility level to use (-1 is latest) """ if not Embedded.remote: Embedded.startRemote() if not copyof: retval = self.sendCommand( (-1, '_NewWindow', (name,), { 'hidden': hidden, }) ) else: retval = self.sendCommand( (-1, '_NewWindowCopy', (name, copyof.winno), { 'hidden': hidden, }) ) self.winno, cmds = retval # add methods corresponding to Veusz commands for name, doc in cmds: func = functools.partial(self.runCommand, name) func.__doc__ = doc # set docstring func.__name__ = name # make name match what it calls method = types.MethodType(func, self) setattr(self, name, method) # assign to self # check API version is same try: remotever = self._apiVersion() except AttributeError: remotever = 0 if remotever != API_VERSION: raise RuntimeError( "Remote Veusz instance reports version %i of" " API. This embed.py supports version %i." % (remotever, API_VERSION) ) # increase compatibility level (if requested) if compatlevel != 0: self.SetCompatLevel(compatlevel) # define root object self.Root = WidgetNode(self, 'widget', '/') def StartSecondView(self, name = 'Veusz'): """Provides a second view onto the document of this window. Returns an Embedded instance """ return Embedded(name=name, copyof=self) def WaitForClose(self): """Wait for the window to close.""" # this is messy, polling for closure, but cleaner than doing # it in the remote client while not self.IsClosed(): time.sleep(0.1) @classmethod def makeSockets(cls): """Make socket(s) to communicate with remote process. Returns string to send to remote process """ if ( hasattr(socket, 'AF_UNIX') and hasattr(socket, 'socketpair') ): # convenient interface cls.sockfamily = socket.AF_UNIX sock, socket2 = socket.socketpair(cls.sockfamily, socket.SOCK_STREAM) # socket is closed on popen in Python 3.4+ without this (PEP 446) try: os.set_inheritable(socket2.fileno(), True) except AttributeError: pass sendtext = 'unix %i\n' % socket2.fileno() cls.socket2 = socket2 # prevent socket being destroyed waitaccept = False else: # otherwise mess around with internet sockets # * This is required for windows, which doesn't have AF_UNIX # * It is required where socketpair is not supported cls.sockfamily = socket.AF_INET sock = socket.socket(cls.sockfamily, socket.SOCK_STREAM) sock.bind( ('localhost', 0) ) interface, port = sock.getsockname() sock.listen(1) sendtext = 'internet %s %i\n' % (interface, port) waitaccept = True return (sock, sendtext.encode('ascii'), waitaccept) @classmethod def makeRemoteProcess(cls): """Try to find veusz process for remote program.""" # here's where to look for embed_remote.py thisdir = os.path.dirname(os.path.abspath(__file__)) # build up a list of possible command lines to start the remote veusz if sys.platform == 'win32': # windows is a special case # we need to run embed_remote.py under pythonw.exe, not python.exe # look for the python windows interpreter on path findpython = findOnPath('pythonw.exe') if not findpython: # if it wasn't on the path, use sys.prefix instead findpython = os.path.join(sys.prefix, 'pythonw.exe') # look for veusz executable on path findexe = findOnPath('veusz.exe') if not findexe: try: # add the usual place as a guess :-( findexe = os.path.join( os.environ['ProgramFiles'], 'Veusz', 'veusz.exe') except KeyError: pass # here is the list of commands to try possiblecommands = [ [ findpython, os.path.join(thisdir, 'veusz_main.py') ], [ findexe ], ] else: executable = sys.executable # try embed_remote.py in this directory, veusz in this directory # or veusz on the path in order possiblecommands = [ [ executable, os.path.join(thisdir, 'veusz_main.py') ], [ os.path.join(thisdir, 'veusz') ], [ findOnPath('veusz') ], ] # cheat and look for Veusz app for MacOS under the standard application # directory. I don't know how else to find it :-( if sys.platform == 'darwin': findbundle = findOnPath('Veusz.app') if findbundle: possiblecommands += [ [findbundle+'/Contents/MacOS/Veusz'] ] else: possiblecommands += [[ '/Applications/Veusz.app/Contents/MacOS/Veusz' ]] possiblecommands += [[ os.path.expanduser('~/Applications/Veusz.app/Contents/MacOS/Veusz')]] for cmd in possiblecommands: # only try to run commands that exist as error handling # does not work well when interfacing with OS (especially Windows) if ( None not in cmd and False not in [os.path.isfile(c) for c in cmd] ): try: # we don't use stdout below, but works around windows bug # http://bugs.python.org/issue1124861 cls.remote = subprocess.Popen( cmd + ['--embed-remote'], shell=False, bufsize=0, close_fds=False, stdin=subprocess.PIPE, stdout=subprocess.PIPE, ) return except OSError: pass raise RuntimeError('Unable to find a veusz executable on system path') @classmethod def startRemote(cls): """Start remote process.""" cls.serv_socket, sendtext, waitaccept = cls.makeSockets() cls.makeRemoteProcess() stdin = cls.remote.stdin # send socket number over pipe stdin.write( sendtext ) # accept connection if necessary if waitaccept: cls.serv_socket, address = cls.serv_socket.accept() # Send a secret to the remote program by secure route and # check it comes back. This is to check that no program has # secretly connected on our port, which isn't really useful # for AF_UNIX sockets. secret = (str(uuid.uuid4()) + '\n').encode('ascii') stdin.write(secret) secretback = cls.readLenFromSocket(cls.serv_socket, len(secret)) if secret != secretback: raise RuntimeError("Security between client and server broken") # packet length for command bytes cls.cmdlen = struct.calcsize('" % ( self.__class__.__name__, repr(self._path), self._type) def fromPath(self, path): """Return a new Node for the path given.""" wtype = self._ci.NodeType(path) if wtype == 'widget': return WidgetNode(self._ci, wtype, path) elif wtype == 'setting': return SettingNode(self._ci, wtype, path) else: return SettingGroupNode(self._ci, wtype, path) @property def path(self): """Veusz full path to node""" return self._path @property def type(self): """Type of node: 'widget', 'settinggroup', or 'setting'""" return self._type def _joinPath(self, child): """Return new path of child.""" if self._path == '/': return '/' + child else: return self._path + '/' + child def __getitem__(self, key): """Return a child widget, settinggroup or setting.""" if self._type != 'setting': try: return self.fromPath(self._joinPath(key)) except ValueError: pass raise KeyError("%s does not have key or child '%s'" % ( self.__class__.__name__, key)) def __getattr__(self, attr): """Return a child widget, settinggroup or setting.""" if self._type == 'setting': pass elif attr[:2] != '__': try: return self.fromPath(self._joinPath(attr)) except ValueError: pass raise AttributeError("%s does not have attribute or child '%s'" % ( self.__class__.__name__, attr)) # boring ways to get children of nodes @property def children(self): """Generator to get children as Nodes.""" for c in self._ci.NodeChildren(self._path): yield self.fromPath(self._joinPath(c)) @property def children_widgets(self): """Generator to get child widgets as Nodes.""" for c in self._ci.NodeChildren(self._path, types='widget'): yield self.fromPath(self._joinPath(c)) @property def children_settings(self): """Generator to get child settings as Nodes.""" for c in self._ci.NodeChildren(self._path, types='setting'): yield self.fromPath(self._joinPath(c)) @property def children_settinggroups(self): """Generator to get child settingsgroups as Nodes.""" for c in self._ci.NodeChildren(self._path, types='settinggroup'): yield self.fromPath(self._joinPath(c)) @property def childnames(self): """Get names of children.""" return self._ci.NodeChildren(self._path) @property def childnames_widgets(self): """Get names of children widgets.""" return self._ci.NodeChildren(self._path, types='widget') @property def childnames_settings(self): """Get names of child settings.""" return self._ci.NodeChildren(self._path, types='setting') @property def childnames_settinggroups(self): """Get names of child setting groups""" return self._ci.NodeChildren(self._path, types='settinggroup') @property def parent(self): """Return parent of node.""" if self._path == '/': raise TypeError("Cannot get parent node of root node""") p = self._path.split('/')[:-1] if p == ['']: newpath = '/' else: newpath = '/'.join(p) return self.fromPath(newpath) @property def name(self): """Get name of node.""" if self._path == '/': return self._path else: return self._path.split('/')[-1] class SettingNode(Node): """A node which is a setting.""" def _getVal(self): """The value of a setting.""" if self._type == 'setting': return self._ci.Get(self._path) raise TypeError("Cannot get value unless is a setting""") def _setVal(self, val): if self._type == 'setting': self._ci.Set(self._path, val) else: raise TypeError("Cannot set value unless is a setting.""") val = property(_getVal, _setVal) @property def isreference(self): """Is this setting set to a reference to another setting?.""" ref = self._ci.ResolveReference(self._path) return bool(ref) def resolveReference(self): """If this is set to a reference to a setting, return a new SettingNode to the original setting. If there are a chain of references, follow them to the target. Returns None if this setting is not set to a reference. """ real = self._ci.ResolveReference(self._path) if not real: return None return self.fromPath(real) def setToReference(self, othernode): """Make this setting point to another setting, by creating a reference. References can be chained. Note that the absolute path is used to specify a reference, so moving affected widgets around will destroy the link.""" if not isinstance(othernode, SettingNode): raise ValueError("othernode is not a SettingNode") self._ci.SetToReference(self._path, othernode._path) @property def settingtype(self): """Get the type of setting, which is a string.""" return self._ci.SettingType(self._path) class SettingGroupNode(Node): """A node containing a group of settings.""" pass class WidgetNode(Node): """A node pointing to a widget.""" @property def widgettype(self): """Get Veusz type of widget.""" return self._ci.WidgetType(self.path) def WalkWidgets(self, widgettype=None): """Generator to walk widget tree and get this widget and the widgets below this WidgetNode of type given. widgettype is a Veusz widget type name or None to get all widgets.""" if widgettype is None or self._ci.WidgetType(self._path) == widgettype: yield self for child in self.children_widgets: for w in child.WalkWidgets(widgettype=widgettype): yield w def Add(self, widgettype, *args, **args_opt): """Add a widget of the type given, returning the Node instance. """ args_opt['widget'] = self._path name = self._ci.Add(widgettype, *args, **args_opt) return WidgetNode( self._ci, 'widget', self._joinPath(name) ) def Rename(self, newname): """Renames widget to name given.""" if self._path == '/': raise RuntimeError("Cannot rename root widget") self._ci.Rename(self._path, newname) self._path = '/'.join( self._path.split('/')[:-1] + [newname] ) def Action(self, action): """Applies action on widget.""" self._ci.Action(action, widget=self._path) def Remove(self): """Removes a widget and its children.""" self._ci.Remove(self._path) def Clone(self, newparent, newname=None): """Clone widget, placing at newparent. Uses newname if given. Returns new node.""" path = self._ci.CloneWidget( self._path, newparent._path, newname=newname) return WidgetNode( self._ci, 'widget', path ) ././@PaxHeader0000000000000000000000000000002600000000000010213 xustar0022 mtime=1667847911.0 veusz-3.6.2/veusz/embed_remote.py0000664000175000017500000002411414332253347015305 0ustar00jssjss# Copyright (C) 2008 Jeremy S. Sanders # Email: Jeremy Sanders # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ############################################################################## import sys import struct import socket import pickle from . import qtall as qt from .windows.simplewindow import SimpleWindow from . import document from . import setting """Program to be run by embedding interface to run Veusz commands.""" # embed.py module checks this is the same as its version number API_VERSION = 2 class EmbeddedClient: """An object for each instance of embedded window with document.""" def __init__(self, title, doc=None, hidden=False): """Construct window with title given.""" self.window = SimpleWindow(title, doc=doc) if not hidden: self.window.show() self.document = self.window.document self.plot = self.window.plot # use time based checking by default self.plot.setTimeout(250) self.ci = document.CommandInterpreter(self.document) self.ci.addCommand('Close', self.cmdClose) self.ci.addCommand('Zoom', self.cmdZoom) self.ci.addCommand('EnableToolbar', self.cmdEnableToolbar) self.ci.addCommand('ForceUpdate', self.cmdForceUpdate) self.ci.addCommand('GetClick', self.cmdGetClick) self.ci.addCommand('ResizeWindow', self.cmdResizeWindow) self.ci.addCommand('SetUpdateInterval', self.cmdSetUpdateInterval) self.ci.addCommand('MoveToPage', self.cmdMoveToPage) self.ci.addCommand('IsClosed', self.cmdIsClosed) self.ci.addCommand('SetAntiAliasing', self.cmdSetAntiAliasing) self.ci.addCommand('Wipe', self.cmdWipe) self.ci.addCommand('_apiVersion', self.cmd_apiVersion) setting.transient_settings['unsafe_mode'] = True self.document.sigLog.connect(self.logEmitted) def logEmitted(self, msg): """Write anything logged to stderr.""" sys.stderr.write(msg + '\n') def cmdClose(self): """Close() Close this window.""" self.window.close() self.document = None self.window = None self.plot = None self.ci = None def cmdIsClosed(self): """IsClosed() Return whether window is still open.""" return not self.window.isVisible() def cmd_apiVersion(self): """Get internal API version.""" return API_VERSION def cmdZoom(self, zoom): """Zoom(zoom) Set the plot zoom level: This is a number to for the zoom from 1:1 or 'page': zoom to page 'width': zoom to fit width 'height': zoom to fit height """ self.window.setZoom(zoom) def cmdSetAntiAliasing(self, ison): """SetAntiAliasing(zoom) Enables or disables anti aliasing. """ self.window.setAntiAliasing(ison) def cmdEnableToolbar(self, enable=True): """EnableToolbar(enable=True) Enable the toolbar in this plotwindow. if enable is False, disable it. """ self.window.enableToolbar(enable) def cmdForceUpdate(self): """ForceUpdate() Forces an update of the plot window. """ self.plot.actionForceUpdate() def cmdGetClick(self): """GetClick() Return a clicked point. The user can click a point on the graph This returns a list of tuples containing items for each axis in the clicked region: (axisname, valonaxis) where axisname is the full name of an axis valonaxis is value clicked along the axis [] is returned if no axes span the clicked region """ return self.plot.getClick() def cmdResizeWindow(self, width, height): """ResizeWindow(width, height) Resize the window to be width x height pixels.""" self.window.resize(width, height) def cmdSetUpdateInterval(self, interval): """SetUpdateInterval(interval) Set graph update interval. interval is in milliseconds (ms) set to zero to disable updates set to -1 to update when document changes default interval is 250ms """ self.plot.setTimeout(interval) def cmdMoveToPage(self, pagenum): """MoveToPage(pagenum) Tell window to show specified pagenumber (starting from 1). """ self.plot.setPageNumber(pagenum-1) def cmdWipe(self): """Wipe the current document.""" self.document.wipe() class EmbedApplication(qt.QApplication): """Application to run remote end of embed connection. Commands are sent over stdin, with responses sent to stdout """ # lengths of lengths sent to application cmdlenlen = struct.calcsize('